߅ቴ᭽ฦ ⾗ᢱਛߩޟᣣ┙ᚲޔޠ ޟᣣ┙::╬ޠฬ⒓ߩᩣᑼળ␠࡞ࡀࠨࠬ࠹ࠢࡁࡠࠫ߳ߩᄌᦝߦߟߡ ޓᐕᣣࠍએߞߡਃ⪉㔚ᯏᩣᑼળ␠߮ᩣᑼળ␠ᣣ┙ᚲߩࡑࠗࠦࡦޔࠢ࠶ࠫࡠޔ ࠕ࠽ࡠࠣ࠻ࠢࠬࠖ࠺ޔඨዉޔ߮&4#/ࠍ㒰ߊࡔࡕ㧔ࡈ࠶ࠪࡘࡔࡕ54#/╬㧕ࠍ ඨዉᬺߪᩣᑼળ␠࡞ࡀࠨࠬ࠹ࠢࡁࡠࠫߦᛚ⛮ߐࠇ߹ߒߚޕᓥ߹ߒߡ⾗ᧄޔᢱਛߦߪ ޟᣣ┙ᚲޔޠ ޟᩣᑼળ␠ᣣ┙ᚲޔޠ ޟᣣ┙ඨዉޔޠ ޟᣣ┙::߇⸥ߚߞߣޠᱷߞߡ߅ࠅ߹ ߔ߇ޟߡోߪ⸥ߩࠄࠇߎޔᩣᑼળ␠࡞ࡀࠨࠬ࠹ࠢࡁࡠࠫߦޠᄌᦝߐࠇߡ߅ࠅ߹ߔߩߢߏℂ ⸃ߩ⒟߅㗿⥌ߒ߹ߔޕዏޔળ␠ᮡࡠࠧࠦࡐ࠻ࠬ࠹࠻ࡔࡦ࠻એᄖߩౝኈߦߟ ߡߪ৻ಾᄌᦝߒߡ߅ࠅ߹ߖࠎߩߢ⾗ᢱߣߒߡߩౝኈᦝᣂߢߪࠅ߹ߖࠎޕ ࡞ࡀࠨࠬ࠹ࠢࡁࡠࠫࡎࡓࡍࠫ㧔JVVRYYYTGPGUCUEQO㧕 ᐕᣣ ᩣᑼળ␠࡞ࡀࠨࠬ࠹ࠢࡁࡠࠫ ࠞࠬ࠲ࡑࠨࡐ࠻ㇱ ご注意 安全設計に関するお願い 1. 弊社は品質、信頼性の向上に努めておりますが、半導体製品は故障が発生したり、誤動作する場合があり ます。弊社の半導体製品の故障又は誤動作によって結果として、人身事故、火災事故、社会的損害などを 生じさせないような安全性を考慮した冗長設計、延焼対策設計、誤動作防止設計などの安全設計に十分ご 留意ください。 本資料ご利用に際しての留意事項 1. 本資料は、お客様が用途に応じた適切なルネサス テクノロジ製品をご購入いただくための参考資料であ り、本資料中に記載の技術情報についてルネサス テクノロジが所有する知的財産権その他の権利の実施、 使用を許諾するものではありません。 2. 本資料に記載の製品データ、図、表、プログラム、アルゴリズムその他応用回路例の使用に起因する損害、 第三者所有の権利に対する侵害に関し、ルネサス テクノロジは責任を負いません。 3. 本資料に記載の製品データ、図、表、プログラム、アルゴリズムその他全ての情報は本資料発行時点のも のであり、ルネサス テクノロジは、予告なしに、本資料に記載した製品または仕様を変更することがあ ります。ルネサス テクノロジ半導体製品のご購入に当たりましては、事前にルネサス テクノロジ、ルネ サス販売または特約店へ最新の情報をご確認頂きますとともに、ルネサス テクノロジホームページ (http://www.renesas.com)などを通じて公開される情報に常にご注意ください。 4. 本資料に記載した情報は、正確を期すため、慎重に制作したものですが万一本資料の記述誤りに起因する 損害がお客様に生じた場合には、ルネサス テクノロジはその責任を負いません。 5. 本資料に記載の製品データ、図、表に示す技術的な内容、プログラム及びアルゴリズムを流用する場合は、 技術内容、プログラム、アルゴリズム単位で評価するだけでなく、システム全体で十分に評価し、お客様 の責任において適用可否を判断してください。ルネサス テクノロジは、適用可否に対する責任は負いま せん。 6. 本資料に記載された製品は、人命にかかわるような状況の下で使用される機器あるいはシステムに用いら れることを目的として設計、製造されたものではありません。本資料に記載の製品を運輸、移動体用、医 療用、航空宇宙用、原子力制御用、海底中継用機器あるいはシステムなど、特殊用途へのご利用をご検討 の際には、ルネサス テクノロジ、ルネサス販売または特約店へご照会ください。 7. 本資料の転載、複製については、文書によるルネサス テクノロジの事前の承諾が必要です。 8. 本資料に関し詳細についてのお問い合わせ、その他お気付きの点がございましたらルネサス テクノロジ、 ルネサス販売または特約店までご照会ください。 改訂一覧は表紙をクリックして直接ご覧になれます。 改訂一覧は改訂箇所をまとめたものであり、 詳細については必ず本文の内容をご確認ください。 ADJ-602-155C(H) 日立シングルチップマイクロコンピュータ H8S/2148 シリーズ、H8S/2144 シリーズ、 H8S/2148F-ZTATTM、H8S/2147N F-ZTATTM、 H8S/2144F-ZTATTM、H8S/2142F-ZTATTM ハードウェアマニュアル H8S/2148 H8S/2147 H8S/2147N H8S/2144 HD6432148SW, HD6432148S, HD64F2148, HD64F2148V, HD64F2148A, HD64F2148AV HD6432147SW, HD6432147S, HD64F2147A, HD64F2147AV HD64F2147N, HD64F2147NV HD6432144S, HD64F2144, HD64F2144V, HD64F2144A, HD64F2144AV HD6432143S HD6432142, HD64F2142R, HD64F2142RV H8S/2143 H8S/2142 H8S/2148 シリーズ、H8S/2144 シリーズ、H8S/2148F-ZTATTM 、H8S/2147N F-ZTATTM 、 H8S/2144F-ZTATTM 、H8S/2142F-ZTATTM ハードウェアマニュアル 発行年月日 1997 年 7 月 2001 年 11 月 発行 株式会社 第1版 第4版 日立製作所 半導体グループ 編集 株式会社 ビジネス企画本部 日立小平セミコン 技術ドキュメントグループ 株式会社 日立製作所 1997 ご注意 1. 本書に記載の製品及び技術のうち「外国為替及び外国貿易法」に基づき安全保障貿易管理関連貨物・技術に該当する ものを輸出する場合,または国外に持ち出す場合は日本国政府の許可が必要です。 2. 本書に記載された情報の使用に際して,弊社もしくは第三者の特許権,著作権,商標権,その他の知的所有権等の権 利に対する保証または実施権の許諾を行うものではありません。また本書に記載された情報を使用した事により第三 者の知的所有権等の権利に関わる問題が生じた場合,弊社はその責を負いませんので予めご了承ください。 3. 製品及び製品仕様は予告無く変更する場合がありますので,最終的な設計,ご購入,ご使用に際しましては,事前に 最新の製品規格または仕様書をお求めになりご確認ください。 4. 弊社は品質・信頼性の向上に努めておりますが,宇宙,航空,原子力,燃焼制御,運輸,交通,各種安全装置, ライ フサポート関連の医療機器等のように,特別な品質・信頼性が要求され,その故障や誤動作が直接人命を脅かしたり, 人体に危害を及ぼす恐れのある用途にご使用をお考えのお客様は,事前に弊社営業担当迄ご相談をお願い致します。 5. 設計に際しては,特に最大定格,動作電源電圧範囲,放熱特性,実装条件及びその他諸条件につきましては,弊社保 証範囲内でご使用いただきますようお願い致します。 保証値を越えてご使用された場合の故障及び事故につきましては,弊社はその責を負いません。 また保証値内のご使用であっても半導体製品について通常予測される故障発生率,故障モードをご考慮の上,弊社製 品の動作が原因でご使用機器が人身事故,火災事故,その他の拡大損害を生じないようにフェールセーフ等のシステ ム上の対策を講じて頂きますようお願い致します。 6. 本製品は耐放射線設計をしておりません。 7. 本書の一部または全部を弊社の文書による承認なしに転載または複製することを堅くお断り致します。 8. 本書をはじめ弊社半導体についてのお問い合わせ,ご相談は弊社営業担当迄お願い致します。 はじめに 本 LSI は、内部 32 ビット構成の H8S/2000 CPU を核に、システム構成に必要な周辺機能 を集積したシングルチップマイクロコンピュータです。 本 LSI は、ROM、RAM、16 ビットフリーランニングタイマ(FRT)、8 ビットタイマ(TMR)、 ウォッチドックタイマ(WD T)、2 種類の P WM タイマ(P WM、P WMX)、シリアルコ ミュニケーションインタフェース(SCI、IrDA)、PS/2 対応のキーボードバッファコント ローラ、ホストインタフェース(HIF)、D/A 変換器(DAC)、A/D 変換器(ADC)、I/O ポートなどの周辺機能を内蔵しています。内蔵 R OM はフラッシュメモリ(F -ZTAT™*) で、仕様流動性の高い応用機器、量産初期から本格量産の各状況に応じた迅速かつ柔軟な 対応が可能です。 【注】 * F-ZTAT™は(株)日立製作所の商標です。 対象者 このマニュアルは、H8S/2148 シリーズ、H8S/2144 シリーズ、H8S/2147N を用い た応用システムを設計するユーザーを対象としています。 このマニュ アルを使用される 読者には、電気回路 、論理回路、およ びマイクロ コンピュータに関する基本的な知識を必要とします。 目的 このマニュアルは、H8S/2148 シリーズ、H8S/2144 シリーズ、H8S/2147N のハー ドウェア機 能と電気的特性を ユーザーに理解して いただくことを目 的にしてい ます。 なお、実行命令の詳細については、 「H8S/2600 シリーズ、H8S/2000 シリーズ プ ログラミングマニュアル」に記載しておりますので、あわせてご覧ください。 読み方 ・機能全体を理解しようとするとき。 → 目次にしたがって読んでください。 本書は、大きく分類すると、C PU、シス テム制御機能、周辺機能、電気的特性の 順に構成されています。 ・CPU 機能の詳細を理解したいとき。 → 別冊の「H8 S/2 60 0 シリーズ、H8 S/2 00 0 シリーズ を参照してください。 プログラミングマニュアル」 ・レジスタ名がわかっていて、詳細機能を知りたいとき。 → 「付録 B . 内部 I/O レジスタ」にアドレス、ビット内容、初期化についてまとめ ています。 凡例 ビット表記順:左側が上位ビット、右側が下位ビット 関連資料一覧 ウェブ・サイトに最新資料を掲載しています。ご入手の資料が最新版であ るかを確認してください。 (http://www.hitachisemiconductor.com/jp/) ・H8S/2148 シリーズ、H8S/2144 シリーズ、H8S/2147N に関するユーザーズマニュアル 資料名 資料番号 H8S/2148 シリーズ、H8S/2144 シリーズ、H8S/2147N 本マニュアル ハードウェアマニュアル H8S/2600 シリーズ、H8S/2000 シリーズ プログラミングマニュアル ADJ-602-112 ・開発ツール関連ユーザーズマニュアル 資料名 C/C++ コンパイラ、アセンブラ、最適化リンケージエディタ 資料番号 ADJ-702-303 ユーザーズマニュアル シミュレータ・デバッガ(Windows 版)ユーザーズマニュアル ADJ-702-163 シミュレータ・デバッガ(UNIX 版)ユーザーズマニュアル ADJ-702-109 Hitachi Embedded Workshop ユーザーズマニュアル ADJ-702-275 ・アプリケーションノート 資料名 資料番号 C/C++ コンパイラ編 ADJ-502-051 H8S シリーズマイコンテクニカル Q&A ADJ-502-065 F-ZTAT マイコンテクニカル Q&A ADJ-502-055 本マニュアルは、H8S /2148 シリーズ、H8S /2144 シリーズ、H8S /2147N のハードウェア について説明しています。命令の詳 細については、「H8 S/2 60 0 シリーズ、H8 S/2 00 0 シ リーズ プログラミングマニュアル」を併せてご覧ください。 【注】 * F-ZTATTM (Flexible-ZTAT)は(株)日立製作所の商標です。 ■内蔵周辺機能一覧 シリーズ名 H8S/2148 シリーズ H8S/2147N H8S/2144 シリーズ 製品名 H8S/2148、2147 H8S/2147N H8S/2144、 2143、2142 バスコントローラ(BSC) ○(16 ビット) ○(16 ビット) ○(16 ビット) ○ − − 8 ビット PWM タイマ(PWM) ×16 ×16 − 14 ビット PWM タイマ(PWMX) ×2 ×2 ×2 16 ビットフリーランニングタイマ ×1 ×1 ×1 ×4 ×3 ×3 ○ − − ウォッチドッグタイマ(WDT) ×2 ×2 ×2 シリアルコミュニケーション ×3 ×3 ×3 ×2(オプション) ×2 − ×3 ×3 − ホストインタフェース(HIF) ×4 ×4 − D/A 変換器 ×2 ×2 ×2 アナログ入力 ×8 ×8 ×8 拡張 A/D 入力 ×16 ×16 ×16 データトランスファコントローラ (DTC) (FRT) 8 ビットタイマ(TMR) タイマコネクション インタフェース(SCI) I 2C バスインタフェース(IIC) キーボードバッファコントローラ (PS/2 対応) A/D 変換器 本版で改訂または追加された 主な箇所 章 1. 概要 節/項 タイトル ページ 変更内容(詳細はマニュアル参照) 1.1 概要 7 製品ラインアップ修正 1.2 内部ブロック図 8 内部ブロック図修正 1.3.3 端子機能 26〜32 表 1.5 端子機能 VCL、SCK0〜SCK2、P52 〜P50、P97〜P90 の名称および機能修正と注 修正 2. CPU 2.6.1 概要 52 表 2.1 命令分類 表中の*4、*5 追加と 注追加 2.6.2 命令とアドレッシングモードの 54 組み合わせ 2.6.3 命令機能別一覧 表 2.2 命令とアドレッシングモードの組み 合わせ 56 表 2.3 表中*2、*3 追加と注追加 データ転送命令 表中の*追加と 注追加 3. MCU 動作モード 58 表 2.4 算術演算命令 表中の*追加と注追加 2.10 使用上の注意 82 追加 3.2.2 システムコントロール 88 ビット 7 の説明追加とビット 6 の注追加 90 ビット 1〜0 の注追加 91 ビット 7〜5 とビット 1、0 の説明修正 レジスタ(SYSCR) 3.2.3 バスコントロールレジスタ (BCR) 3.2.4 シリアルタイマコントロール レジスタ(STCR) 3.5 各動作モードのアドレスマップ 95〜105 説明修正と H8S/2148F-ZTAT A マスク品の各 動作モードのアドレスマップと H8S/2147FZTAT A マスク品の各動作モードのアドレス マップ追加 4. 例外処理 4.3 割込み 115 説明修正 4.6 スタック使用上の注意 118 図 4.6 SP を奇数に設定したときの動作 中のアドレス修正 図 章 5. 節/項 割込みコントローラ 5.1.1 タイトル 特長 ページ 変更内容(詳細はマニュアル参照) 121 ICR により、優先順位を設定可能部分の説明 修正 5.1.2 ブロック図 122 図 5.1 割込みコントローラのブロック図で 内部割込み要因修正 5.1.4 レジスタ構成 123 表 5.2 割込みコントローラのレジスタ構成 *3 修正 5.2.2 インタラプトコントロール 125 説明修正 レジスタ A〜C(ICRA〜ICRC) 5.2.5 IRQ ステータスレジスタ(ISR) 128 ビット 7〜0 の注追加 5.2.6 キーボードマトリクス割込み 130 説明修正と注修正 131 ビット 7〜0 の説明修正 135 (2)IRQ7〜IRQ0 割込み レジスタ(KMIMR) 5.2.7 キーボードマトリクス割込み マスクレジスタ(KMIMRA) 5.3.1 外部割込み 説明追加「IRQ6 端子を……0 にクリアしてください」 5.3.2 内部割込み 136 説明修正 PC ブレークをアドレスブレーク に修正 5.3.3 割込み例外処理ベクタテーブル 137 表 5.4 割込み要因とベクタアドレスおよび 割込み優先順位一覧(1)PC ブレークをアド レスブレーク(PC ブレーク)に修正 5.5.1 割込み制御モードと割込み動作 142 説明修正 143 表 5.6 み 割込み制御モードと選択される割込 修正 5.5.2 割込み制御モード 0 145 (3)説明修正 5.5.3 割込み制御モード 1 147 説明修正と図 5.9 割込み制御モード 1 の状態 遷移例修正 6. バスコントローラ 6.2.2 ウェイトステートコントロール 164 ビット 7 説明追加 I/O セレクト信号 168 表 6.4 IOS 信号出力範囲の設定 DTC ベクタテーブル 205 表 7.4 割込み要因と DTC ベクタアドレスお レジスタ(WSCR) 6.3.4 7. データトランスファ 7.3.3 コントローラ(DTC) 8. I/O ポート 注追加 よび対応する DTCE 修正 8.1 概要 220 表 8.1 H8S/2148 シリーズポートの機能一覧 ポート 2 の拡張モード 2、3 説明修正 223 表 8.2 H8S/2147N ポートの機能一覧 ト 2 の拡張モード 2、3 説明修正 ポー 章 8. I/O ポート 節/項 タイトル ページ 変更内容(詳細はマニュアル参照) ポート 7 258 図 8.15 ポート 7 の端子機能 修正 8.12.3 端子機能 279 表 8.26 ポート B の端子機能 PB3/D3/CS4 8.8 〜PB0/D0/HIRQ3 の説明修正 9. 8 ビット PWM レジスタ構成 285 表 9.2 10.1.4 レジスタ構成 300 表 10.2 11.3.9 ICRD と OCRDM のマスク信号 343 図 11.16 9.1.4 レジスタ構成 注追加 タイマ(PWM) 10. 14 ビット PWM レジスタ構成 注*2 修正 タイマ(PWMX) 11 16 ビットフリー ランニングタイマ (FRT) 生成タイミング 11.6 使用上の注意 インプットキャプチャマスク信号 のクリアタイミング図修正 349 図 11.21 OCRAR/OCRAF のライトとコンペ アマッチ競合 12. 8 ビットタイマ 12.2.6 シリアルタイマコントロール (TMR) タイマコネク ビット 7〜4 とビット 3 の説明修正 レジスタ(STCR) 12.3.6 インプットキャプチャ動作 13. 369 追加 13.3.1 PWM デコード ション 380、381 追加 407 (PDC 信号生成) 13.3.3 8 ビットタイマ分周波形期測定 図 13.2 PWM デコードタイミングチャート 修正 408 説明修正 409 表 13.5 TCR と TCSR の設定例 TMR1 の TCR ビット 4、3 説明修正 14. ウォッチドック 14.2.2 タイマコントロール/ 426 ビット 7 注追加 437 追加 442 送受信クロックを出力可能の項目追加 15.3.5 IrDA 動作 502 図 15.22 16.2.5 I 2C バスコントロールレジスタ 528 ビット 1 表中の IRIC1 の I 2Cバスフォーマット タイマ(WDT) ステータスレジスタ(TCSR) 14.5.6 OVF フラグのクリア 15. シリアルコミュニ 15.1.1 特長 ケーションインタフェ IrDA の送信/受信動作 修正 ース(SCI、IrDA) 16 I 2C バスインタ フェース(IIC) (ICCR) 16.2.7 シリアルタイマコントロール でマスタモードの説明(3)修正 537 ビット 3 の説明修正 571 表 17.2 577 追加 レジスタ(STCR) 17. キーボードバッフ 17.1.4 レジスタ構成 ァコントローラ 17.2.4 モジュールストップコントロー レジスタ構成修正 ルレジスタ(MSTPCR) 18. ホストインタ 18.5 使用上の注意 612 修正 19.3 動作説明 620 図 19.2 フェース 19. D/A 変換 D/A 変換器の動作例 修正 章 20. A/D 変換器 節/項 タイトル 20.2.3 A/D コントロールレジスタ ページ 変更内容(詳細はマニュアル参照) 631 ビット 5〜0 説明修正 (ADCR) 21. RAM 21.3.2 シングルチップモード 651 説明修正 22. ROM 22.4.3 フラッシュメモリの動作モード 660 図 22.3 フラッシュメモリに関する状態遷移 修正 22.6.1 ブートモード 676 (3)ブートモード使用時の注意事項(e) 説明修正 22.10.1 ライタモードの設定 22.11 フラッシュメモリの書き込み/ 688 注追加 700 (1)説明修正 702 追加 709 図 23.2 消去時の注意 22.12 F-ZTAT マイコンのマスク ROM 化時の注意事項 23. ROM 23.4.2 ブロック図 フラッシュメモリのブロック図 注 追加 23.4.3 フラッシュメモリの動作モード 710 図 23.3 フラッシュメモリに関する状態遷移 修正 24. クロック発振器 24.1.1 ブロック図 753 図 24.1 763 追加 25.1.1 レジスタ構成 771 表 25.3 レジスタ構成 25.5.1 モジュールストップモード 781 表 25.4 MSTP ビットと内蔵周辺機能の対応 24.9 25. 低消費電力状態 クロック選択回路 クロック発振器のブロック図 MSTP2 ビット 26. 電気的特性 修正 注追加 モジュール追加 25.10.1 サブアクティブモード 788 説明修正 26.3.3 AC 特性 844 表 26.25 I 2C バスタイミング SCL、SDA 出 力立下がり時間追加 A. 命令 A.1 命令セット一覧 925 表 A.1 命令セット一覧 表中の*追加と注の 追加 A.2 命令コード一覧 934 表中の*と注追加 A.4 命令実行ステート数 950 表 A.5 命令実行状態(サイクル数)表中の* と注追加 B. 内部 I/O レジスタ A.5 命令実行中のバス状態 958 表 A.6 命令の実行状態 表中の*と注追加 B.2 レジスタ選択条件 975 PCSR、SYSCR2 の H8S/2144 シリーズ レジスタ選択条件修正 975 アドレス H'FF94、H'FF95 のレジスタ選択条 件修正 章 B. 内部 I/O レジスタ 節/項 B.2 タイトル レジスタ選択条件 ページ 変更内容(詳細はマニュアル参照) 976 アドレス H'FF98、H'FF99、H'FF9A、H'FF9B、 H'FF9C、H'FF9D のレジスタ選択条件修正 B.3 機能一覧 992 アドレス H'FEEB 説明追加 1004 アドレス H'FF86、H'FF87 の MSTP2 ビットの モジュール追加 1034 C. I/O ポート C.2 ポート 2 ブロック図 アドレス H'FFC4 IOS イネーブル 注追加 1061〜 図 C.2、C.3、C.4 ポート 2 ブロック図修正 1063 C.4 ポート 4 ブロック図 1065〜 図 C.6、C.7、C.8、C.9、C.10、C.11、C.12 1071 C.5 ポート 5 ブロック図 1072〜 図 C.13、C.14、C.15 ポート 5 ブロック図 1074 C.8 ポート 8 ブロック図 ポート 9 ブロック図 修正 1081〜 図 C.23、C.24、C.25、C.26、C.27、C.28、 1086 C.9 ポート 4 ブロック図修正 ポート 8 ブロック図修正 1087〜 図 C.29、C.30、C.31、C.33 ポート 9 1089、 ブロック図修正 1091 C.10 ポート A ブロック図 1092〜 図 C.34、C.35、C.36 ポート A ブロック図 1094 C.11 G. 型名一覧 ポート B ブロック図 修正 1095〜 図 C.37、C.38、C.39 ポート B ブロック図 1097 修正 1103 表 G.1 H8S/2148 シリーズ、H8S/2144 シリ ーズ型名一覧 備考の開発中削除 目次 第1章 概要 1.1 概要 ...........................................................................................................................................3 1.2 内部ブロック図...........................................................................................................................8 1.3 端子説明................................................................................................................................... 11 第2章 2.1 1.3.1 ピン配置図 .............................................................................................. 11 1.3.2 動作モード別端子機能一覧 ....................................................................... 14 1.3.3 端子機能.................................................................................................. 26 CPU 概要 ......................................................................................................................................... 35 2.1.1 特長 ........................................................................................................ 35 2.1.2 H8S/2600 CPU と H8S/2000 CPU との相違点................................................ 36 2.1.3 H8/300 CPU との相違点............................................................................. 37 2.1.4 H8/300H CPU との相違点 .......................................................................... 37 2.2 CPU 動作モード ........................................................................................................................ 38 2.3 アドレス空間 ............................................................................................................................ 43 2.4 レジスタ構成 ............................................................................................................................ 44 2.5 2.6 2.4.1 概要 ........................................................................................................ 44 2.4.2 汎用レジスタ ........................................................................................... 45 2.4.3 コントロールレジスタ.............................................................................. 46 2.4.4 CPU 内部レジスタの初期値....................................................................... 48 データ構成 ............................................................................................................................... 49 2.5.1 汎用レジスタのデータ構成 ....................................................................... 49 2.5.2 メモリ上でのデータ構成 .......................................................................... 51 命令セット ............................................................................................................................... 52 2.6.1 概要 ........................................................................................................ 52 2.6.2 命令とアドレッシングモードの組み合わせ................................................ 54 2.7 2.8 2.9 2.10 3.2 3.3 命令の機能別一覧 .................................................................................... 55 2.6.4 命令の基本フォーマット .......................................................................... 64 2.6.5 ビット操作命令使用上の注意.................................................................... 65 アドレッシングモードと実効アドレスの計算方法....................................................................... 66 2.7.1 アドレッシングモード.............................................................................. 66 2.7.2 実効アドレスの計算方法 .......................................................................... 70 処理状態................................................................................................................................... 74 2.8.1 概要 ........................................................................................................ 74 2.8.2 リセット状態 ........................................................................................... 75 2.8.3 例外処理状態 ........................................................................................... 76 2.8.4 プログラム実行状態 ................................................................................. 77 2.8.5 バス権解放状態........................................................................................ 78 2.8.6 低消費電力状態........................................................................................ 78 基本動作タイミング .................................................................................................................. 79 2.9.1 概要 ........................................................................................................ 79 2.9.2 内蔵メモリ(ROM、RAM) ..................................................................... 79 2.9.3 内蔵周辺モジュールアクセスタイミング ................................................... 80 2.9.4 外部アドレス空間アクセスタイミング ...................................................... 81 使用上の注意 ............................................................................................................................ 82 第3章 3.1 2.6.3 2.10.1 TAS 命令 ................................................................................................. 82 2.10.2 STM/LDM 命令 ........................................................................................ 82 MCU 動作モード 概要 ......................................................................................................................................... 85 3.1.1 動作モードの選択 .................................................................................... 85 3.1.2 レジスタ構成 ........................................................................................... 86 各レジスタの説明 ..................................................................................................................... 87 3.2.1 モードコントロールレジスタ(MDCR) ................................................... 87 3.2.2 システムコントロールレジスタ(SYSCR) ............................................... 88 3.2.3 バスコントロールレジスタ(BCR).......................................................... 90 3.2.4 シリアルタイマコントロールレジスタ(STCR) ....................................... 91 各動作モードの説明 .................................................................................................................. 93 3.3.1 モード 1................................................................................................... 93 3.3.2 モード 2................................................................................................... 93 3.3.3 モード 3................................................................................................... 93 3.4 各動作モードにおける端子機能 ................................................................................................. 94 3.5 各動作モードのアドレスマップ ................................................................................................. 95 第4章 4.1 4.2 例外処理 概要 ....................................................................................................................................... 109 4.1.1 例外処理の種類と優先度 ........................................................................ 109 4.1.2 例外処理の動作...................................................................................... 110 4.1.3 例外処理要因とベクタテーブル .............................................................. 110 リセット................................................................................................................................. 112 4.2.1 概要 ...................................................................................................... 112 4.2.2 リセットシーケンス ............................................................................... 112 4.2.3 リセット直後の割込み............................................................................ 114 4.3 割込み .................................................................................................................................... 115 4.4 トラップ命令 .......................................................................................................................... 116 4.5 例外処理後のスタックの状態................................................................................................... 117 4.6 スタック使用上の注意............................................................................................................. 118 第5章 5.1 5.2 5.3 5.4 割込みコントローラ 概要 ....................................................................................................................................... 121 5.1.1 特長 ...................................................................................................... 121 5.1.2 ブロック図 ............................................................................................ 122 5.1.3 端子構成................................................................................................ 122 5.1.4 レジスタ構成 ......................................................................................... 123 各レジスタの説明 ................................................................................................................... 124 5.2.1 システムコントロールレジスタ(SYSCR) ............................................. 124 5.2.2 インタラプトコントロールレジスタ A〜C(ICRA〜ICRC) ..................... 125 5.2.3 IRQ イネーブルレジスタ(IER)............................................................. 126 5.2.4 IRQ センスコントロールレジスタ H、L(ISCRH、ISCRL) ...................... 127 5.2.5 IRQ ステータスレジスタ(ISR)............................................................. 128 5.2.6 キーボードマトリクス割込みマスクレジスタ(KMIMR) ........................ 130 5.2.7 キーボードマトリクス割込みマスクレジスタ(KMIMRA)...................... 130 5.2.8 アドレスブレークコントロールレジスタ(ABRKCR)............................. 132 5.2.9 ブレークアドレスレジスタ A、B、C(BARA、BARB、BARC) .............. 133 割込み要因 ............................................................................................................................. 134 5.3.1 外部割込み ............................................................................................ 134 5.3.2 内部割込み ............................................................................................ 136 5.3.3 割込み例外処理ベクタテーブル .............................................................. 137 アドレスブレーク ................................................................................................................... 139 5.4.1 特長 ...................................................................................................... 139 5.4.2 ブロック図 ............................................................................................ 139 5.5 5.6 5.7 6.2 6.3 6.4 動作説明................................................................................................ 140 5.4.4 使用上の注意 ......................................................................................... 140 割込み動作 ............................................................................................................................. 142 5.5.1 割込み制御モードと割込み動作 .............................................................. 142 5.5.2 割込み制御モード 0 ................................................................................ 145 5.5.3 割込み制御モード 1 ................................................................................ 147 5.5.4 割込み例外処理シーケンス ..................................................................... 150 5.5.5 割込み応答時間...................................................................................... 151 使用上の注意 .......................................................................................................................... 152 5.6.1 割込みの発生とディスエーブルとの競合 ................................................. 152 5.6.2 割込みを禁止している命令 ..................................................................... 153 5.6.3 EEPMOV 命令実行中の割込み................................................................. 153 割込みによる DTC の起動 ........................................................................................................ 154 第6章 6.1 5.4.3 5.7.1 概要 ...................................................................................................... 154 5.7.2 ブロック図 ............................................................................................ 154 5.7.3 動作説明................................................................................................ 155 バスコントローラ 概要 ....................................................................................................................................... 159 6.1.1 特長 ...................................................................................................... 159 6.1.2 ブロック図 ............................................................................................ 160 6.1.3 端子構成................................................................................................ 161 6.1.4 レジスタ構成 ......................................................................................... 161 各レジスタの説明 ................................................................................................................... 162 6.2.1 バスコントロールレジスタ(BCR)........................................................ 162 6.2.2 ウェイトステートコントロールレジスタ(WSCR) ................................. 163 バス制御の概要....................................................................................................................... 166 6.3.1 バス仕様................................................................................................ 166 6.3.2 アドバンストモード ............................................................................... 167 6.3.3 ノーマルモード...................................................................................... 167 6.3.4 I/O セレクト信号 .................................................................................... 168 基本バスインタフェース ......................................................................................................... 169 6.4.1 概要 ...................................................................................................... 169 6.4.2 データサイズとデータアライメント........................................................ 169 6.4.3 有効ストローブ...................................................................................... 171 6.4.4 基本タイミング...................................................................................... 172 6.4.5 ウェイト制御 ......................................................................................... 180 6.5 6.6 6.7 バースト ROM インタフェース ................................................................................................ 182 7.2 7.3 概要 ...................................................................................................... 182 6.5.2 基本タイミング...................................................................................... 182 6.5.3 ウェイト制御 ......................................................................................... 183 アイドルサイクル ................................................................................................................... 184 6.6.1 動作説明................................................................................................ 184 6.6.2 アイドルサイクルでの端子状態 .............................................................. 185 バスアービトレーション ......................................................................................................... 186 第7章 7.1 6.5.1 6.7.1 概要 ...................................................................................................... 186 6.7.2 動作説明................................................................................................ 186 6.7.3 バス権移行タイミング............................................................................ 187 データトランスファコントローラ(DTC)【H8S/2148 シリーズに内蔵】 概要 ....................................................................................................................................... 191 7.1.1 特長 ...................................................................................................... 191 7.1.2 ブロック図 ............................................................................................ 191 7.1.3 レジスタ構成 ......................................................................................... 193 各レジスタの説明 ................................................................................................................... 194 7.2.1 DTC モードレジスタ A(MRA) ............................................................. 194 7.2.2 DTC モードレジスタ B(MRB) ............................................................. 196 7.2.3 DTC ソースアドレスレジスタ(SAR) .................................................... 197 7.2.4 DTC デスティネーションアドレスレジスタ(DAR) ............................... 197 7.2.5 DTC 転送カウントレジスタ A(CRA).................................................... 197 7.2.6 DTC 転送カウントレジスタ B(CRB) .................................................... 198 7.2.7 DTC イネーブルレジスタ(DTCER) ...................................................... 198 7.2.8 DTC ベクタレジスタ(DTVECR) .......................................................... 199 7.2.9 モジュールストップコントロールレジスタ(MSTPCR) .......................... 200 動作説明................................................................................................................................. 201 7.3.1 概要 ...................................................................................................... 201 7.3.2 起動要因................................................................................................ 202 7.3.3 DTC ベクタテーブル .............................................................................. 204 7.3.4 アドレス空間上でのレジスタ情報の配置 ................................................. 206 7.3.5 ノーマルモード...................................................................................... 207 7.3.6 リピートモード...................................................................................... 208 7.3.7 ブロック転送モード ............................................................................... 209 7.3.8 チェイン転送 ......................................................................................... 210 7.3.9 動作タイミング...................................................................................... 211 7.3.10 DTC 実行ステート数 .............................................................................. 212 7.3.11 DTC 使用手順 ........................................................................................ 213 7.3.12 DTC 使用例............................................................................................ 214 7.4 割込み .................................................................................................................................... 216 7.5 使用上の注意 .......................................................................................................................... 216 第8章 I/O ポート 8.1 概要 ....................................................................................................................................... 219 8.2 ポート 1.................................................................................................................................. 227 8.3 8.4 8.5 8.6 8.7 8.8 8.2.1 概要 ...................................................................................................... 227 8.2.2 レジスタ構成 ......................................................................................... 228 8.2.3 モード別端子機能 .................................................................................. 230 8.2.4 入力プルアップ MOS.............................................................................. 231 ポート 2.................................................................................................................................. 232 8.3.1 概要 ...................................................................................................... 232 8.3.2 レジスタ構成 ......................................................................................... 233 8.3.3 モード別端子機能 .................................................................................. 235 8.3.4 入力プルアップ MOS.............................................................................. 237 ポート 3.................................................................................................................................. 238 8.4.1 概要 ...................................................................................................... 238 8.4.2 レジスタ構成 ......................................................................................... 239 8.4.3 モード別端子機能 .................................................................................. 241 8.4.4 入力プルアップ MOS.............................................................................. 242 ポート 4.................................................................................................................................. 243 8.5.1 概要 ...................................................................................................... 243 8.5.2 レジスタ構成 ......................................................................................... 243 8.5.3 端子機能................................................................................................ 244 ポート 5.................................................................................................................................. 248 8.6.1 概要 ...................................................................................................... 248 8.6.2 レジスタ構成 ......................................................................................... 248 8.6.3 端子機能................................................................................................ 250 ポート 6.................................................................................................................................. 251 8.7.1 概要 ...................................................................................................... 251 8.7.2 レジスタ構成 ......................................................................................... 252 8.7.3 端子機能................................................................................................ 254 8.7.4 入力プルアップ MOS.............................................................................. 257 ポート 7.................................................................................................................................. 258 8.9 8.10 8.11 8.12 9.2 概要 ...................................................................................................... 258 8.8.2 レジスタ構成 ......................................................................................... 258 8.8.3 端子機能................................................................................................ 259 ポート 8.................................................................................................................................. 260 8.9.1 概要 ...................................................................................................... 260 8.9.2 レジスタ構成 ......................................................................................... 260 8.9.3 端子機能................................................................................................ 261 ポート 9.................................................................................................................................. 264 8.10.1 概要 ...................................................................................................... 264 8.10.2 レジスタ構成 ......................................................................................... 265 8.10.3 端子機能................................................................................................ 266 ポート A ................................................................................................................................. 269 8.11.1 概要 ...................................................................................................... 269 8.11.2 レジスタ構成 ......................................................................................... 269 8.11.3 端子機能................................................................................................ 271 8.11.4 入力プルアップ MOS.............................................................................. 274 ポート B ................................................................................................................................. 275 第9章 9.1 8.8.1 8.12.1 概要 ...................................................................................................... 275 8.12.2 レジスタ構成 ......................................................................................... 276 8.12.3 端子機能................................................................................................ 278 8.12.4 入力プルアップ MOS.............................................................................. 280 8 ビット PWM タイマ(PWM) 【H8S/2148 シリーズ、H8S/2147N に内蔵】 概要 ....................................................................................................................................... 283 9.1.1 特長 ...................................................................................................... 283 9.1.2 ブロック図 ............................................................................................ 284 9.1.3 端子構成................................................................................................ 285 9.1.4 レジスタ構成 ......................................................................................... 285 各レジスタの説明 ................................................................................................................... 286 9.2.1 PWM レジスタセレクト(PWSL) .......................................................... 286 9.2.2 PWM データレジスタ(PWDR0〜PWDR15)........................................... 289 9.2.3 PWM データポラリティレジスタ(PWDPRA、PWDPRB)....................... 289 9.2.4 PWM アウトプットイネーブルレジスタ(PWOERA、PWOERB) ............ 290 9.2.5 周辺クロックセレクトレジスタ(PCSR)................................................ 291 9.2.6 ポート 1 データディレクションレジスタ(P1DDR) ................................ 292 9.2.7 ポート 2 データディレクションレジスタ(P2DDR) ................................ 292 9.3 9.2.8 ポート 1 データレジスタ(P1DR) .......................................................... 292 9.2.9 ポート 2 データレジスタ(P2DR) .......................................................... 293 9.2.10 モジュールストップコントロールレジスタ(MSTPCR) .......................... 293 PWM タイマの動作 ................................................................................................................. 294 9.3.1 第 10 章 10.1 10.2 PWM データレジスタの内容と出力波形の対応 ........................................ 294 14 ビット PWM タイマ(PWMX) 概要 ....................................................................................................................................... 299 10.1.1 特長 ...................................................................................................... 299 10.1.2 ブロック図 ............................................................................................ 299 10.1.3 端子構成................................................................................................ 300 10.1.4 レジスタ構成 ......................................................................................... 300 各レジスタの説明 ................................................................................................................... 301 10.2.1 PWM(D/A)カウンタ(DACNT) ......................................................... 301 10.2.2 D/A データレジスタ A、B(DADRA、B) .............................................. 302 10.2.3 PWM(D/A)コントロールレジスタ(DACR) ....................................... 303 10.2.4 モジュールストップコントロールレジスタ(MSTPCR) .......................... 305 10.3 バスマスタとのインタフェース ............................................................................................... 307 10.4 動作説明................................................................................................................................. 310 第 11 章 11.1 11.2 16 ビットフリーランニングタイマ(FRT) 概要 ....................................................................................................................................... 315 11.1.1 特長 ...................................................................................................... 315 11.1.2 ブロック図 ............................................................................................ 316 11.1.3 端子構成................................................................................................ 317 11.1.4 レジスタ構成 ......................................................................................... 318 各レジスタの説明 ................................................................................................................... 319 11.2.1 フリーランニングカウンタ(FRC) ........................................................ 319 11.2.2 アウトプットコンペアレジスタ A、B(OCRA、OCRB) ......................... 319 11.2.3 インプットキャプチャレジスタ A〜D(ICRA〜ICRD)............................ 320 11.2.4 アウトプットコンペアレジスタ AR、AF(OCRAR、OCRAF) ................. 321 11.2.5 アウトプットコンペアレジスタ DM(OCRDM) ..................................... 322 11.2.6 タイマインタラプトイネーブルレジスタ(TIER) ................................... 322 11.2.7 タイマコントロール/ステータスレジスタ(TCSR)............................... 325 11.2.8 タイマコントロールレジスタ(TCR)..................................................... 329 11.2.9 タイマアウトプットコンペアコントロールレジスタ(TOCR)................. 332 11.2.10 11.3 モジュールストップコントロールレジスタ(MSTPCR) .......................... 335 動作説明................................................................................................................................. 336 11.3.1 FRC のカウントタイミング..................................................................... 336 11.3.2 アウトプットコンペア出力タイミング .................................................... 337 11.3.3 FRC のクリアタイミング ........................................................................ 338 11.3.4 インプットキャプチャ入力タイミング .................................................... 338 11.3.5 インプットキャプチャフラグ(ICFA〜D)のセットタイミング................ 341 11.3.6 アウトプットコンペアフラグ(OCFA、B)のセットタイミング .............. 341 11.3.7 タイマオーバフローフラグ(OVF)のセットタイミング.......................... 342 11.3.8 OCRA と OCRAR/OCRAF の自動加算タイミング ................................... 342 11.3.9 ICRD と OCRDM のマスク信号生成タイミング ........................................ 343 11.4 割込み要因 ............................................................................................................................. 344 11.5 FRT の使用例 .......................................................................................................................... 345 11.6 使用上の注意 .......................................................................................................................... 346 第 12 章 12.1 12.2 8 ビットタイマ(TMR) 概要 ....................................................................................................................................... 355 12.1.1 特長 ...................................................................................................... 355 12.1.2 ブロック図 ............................................................................................ 356 12.1.3 端子構成................................................................................................ 357 12.1.4 レジスタ構成 ......................................................................................... 358 各レジスタの説明 ................................................................................................................... 359 12.2.1 タイマカウンタ(TCNT) ...................................................................... 359 12.2.2 タイムコンスタントレジスタ A(TCORA)............................................. 360 12.2.3 タイムコンスタントレジスタ B(TCORB) ............................................. 361 12.2.4 タイマコントロールレジスタ(TCR)..................................................... 362 12.2.5 タイマコントロール/ステータスレジスタ(TCSR)............................... 365 12.2.6 シリアルタイマコントロールレジスタ(STCR) ..................................... 369 12.2.7 システムコントロールレジスタ(SYSCR) ............................................. 370 12.2.8 タイマコネクションレジスタ S(TCONRS) ........................................... 371 12.2.9 インプットキャプチャレジスタ(TICR)【TMRX 追加機能】.................. 371 12.2.10 タイムコンスタントレジスタ C(TCORC)【TMRX 追加機能】............... 372 12.2.11 インプットキャプチャレジスタ R、F(TICRR、TICRF) 【TMRX 追加機能】............................................................................... 372 12.3 12.2.12 タイマインプットセレクトレジスタ(TISR)【TMRY 追加機能】 ........... 373 12.2.13 モジュールストップコントロールレジスタ(MSTPCR) .......................... 374 動作説明................................................................................................................................. 375 12.3.1 TCNT のカウントタイミング .................................................................. 375 12.3.2 コンペアマッチタイミング ..................................................................... 376 12.3.3 TCNT の外部リセットタイミング............................................................ 378 12.3.4 オーバフローフラグ(OVF)のセットタイミング.................................... 378 12.3.5 カスケード接続時の動作 ........................................................................ 378 12.3.6 インプットキャプチャ動作 ..................................................................... 380 12.4 割込み要因 ............................................................................................................................. 382 12.5 8 ビットタイマの使用例 .......................................................................................................... 383 12.6 使用上の注意 .......................................................................................................................... 384 第 13 章 13.1 13.2 13.3 12.6.1 TCNT のライトとカウンタクリアの競合.................................................. 384 12.6.2 TCNT のライトとカウントアップの競合.................................................. 385 12.6.3 TCOR のライトとコンペアマッチの競合 ................................................. 385 12.6.4 コンペアマッチ A、B の競合 .................................................................. 386 12.6.5 内部クロックの切り替えと TCNT の動作 ................................................. 387 タイマコネクション【H8S/2148 シリーズに内蔵】 概要 ....................................................................................................................................... 391 13.1.1 特長 ...................................................................................................... 391 13.1.2 ブロック図 ............................................................................................ 392 13.1.3 端子構成................................................................................................ 393 13.1.4 レジスタ構成 ......................................................................................... 394 各レジスタの説明 ................................................................................................................... 395 13.2.1 タイマコネクションレジスタ I(TCONRI) ............................................. 395 13.2.2 タイマコネクションレジスタ O(TCONRO) .......................................... 397 13.2.3 タイマコネクションレジスタ S(TCONRS) ........................................... 399 13.2.4 エッジセンスレジスタ(SEDGR) .......................................................... 401 13.2.5 モジュールストップコントロールレジスタ(MSTPCR) .......................... 404 動作説明................................................................................................................................. 406 13.3.1 PWM デコード(PDC 信号生成) ............................................................ 406 13.3.2 クランプ波形生成(CL1・CL2・CL3 信号生成) ..................................... 407 13.3.3 8 ビットタイマ分周波形周期測定 ............................................................ 408 13.3.4 IHI 信号の 2fH モディファイ ................................................................... 410 13.3.5 IVI 信号の立ち下がりモディファイ・IHI 同期.......................................... 411 13.3.6 内部同期信号の生成(IHG 信号、IVG 信号、CL4 信号の生成)................ 413 13.3.7 HSYNCO 出力 ........................................................................................ 415 13.3.8 VSYNCO 出力 ........................................................................................ 416 13.3.9 CBLANK 出力 ........................................................................................ 417 第 14 章 14.1 14.2 14.3 ウォッチドッグタイマ(WDT) 概要 ....................................................................................................................................... 421 14.1.1 特長 ...................................................................................................... 421 14.1.2 ブロック図 ............................................................................................ 422 14.1.3 端子構成................................................................................................ 424 14.1.4 レジスタ構成 ......................................................................................... 424 各レジスタの説明 ................................................................................................................... 425 14.2.1 タイマカウンタ(TCNT) ...................................................................... 425 14.2.2 タイマコントロール/ステータスレジスタ(TCSR)............................... 425 14.2.3 システムコントロールレジスタ(SYSCR) ............................................. 429 14.2.4 レジスタアクセス時の注意 ..................................................................... 429 動作説明................................................................................................................................. 431 14.3.1 ウォッチドッグタイマモード時の動作 .................................................... 431 14.3.2 インターバルタイマモード時の動作........................................................ 433 14.3.3 オーバフローフラグ(OVF)のセットタイミング.................................... 433 14.3.4 RESO 信号出力タイミング...................................................................... 434 14.4 割込み .................................................................................................................................... 435 14.5 使用上の注意 .......................................................................................................................... 435 14.5.1 タイマカウンタ(TCNT)のライトとカウントアップの競合 .................... 435 14.5.2 CKS2〜CKS0 ビットの書き換え .............................................................. 435 14.5.3 ウォッチドッグタイマモードとインターバルタイマモードの切り替え...... 436 14.5.4 RESO 信号によるシステムのリセット ..................................................... 436 14.5.5 高速モード、サブアクティブモード、ウォッチモード間遷移時の カウンタ値 ............................................................................................ 436 14.5.6 第 15 章 15.1 15.2 OVF フラグのクリア .............................................................................. 437 シリアルコミュニケーションインタフェース(SCI、IrDA) 概要 ....................................................................................................................................... 441 15.1.1 特長 ...................................................................................................... 441 15.1.2 ブロック図 ............................................................................................ 442 15.1.3 端子構成................................................................................................ 444 15.1.4 レジスタ構成 ......................................................................................... 445 各レジスタの説明 ................................................................................................................... 446 15.2.1 レシーブシフトレジスタ(RSR) ........................................................... 446 15.2.2 レシーブデータレジスタ(RDR)........................................................... 446 15.2.3 トランスミットシフトレジスタ(TSR).................................................. 447 15.2.4 トランスミットデータレジスタ(TDR) ................................................. 447 15.3 15.2.5 シリアルモードレジスタ(SMR)........................................................... 448 15.2.6 シリアルコントロールレジスタ(SCR) ................................................. 451 15.2.7 シリアルステータスレジスタ(SSR) ..................................................... 455 15.2.8 ビットレートレジスタ(BRR) .............................................................. 459 15.2.9 シリアルインタフェースモードレジスタ(SCMR) ................................. 468 15.2.10 モジュールストップコントロールレジスタ(MSTPCR) .......................... 469 15.2.11 キーボードコンパレータコントロールレジスタ(KBCOMP) .................. 470 動作説明................................................................................................................................. 472 15.3.1 概要 ...................................................................................................... 472 15.3.2 調歩同期式モード時の動作 ..................................................................... 474 15.3.3 マルチプロセッサ通信機能 ..................................................................... 485 15.3.4 クロック同期式モード時の動作 .............................................................. 492 15.3.5 IrDA 動作............................................................................................... 501 15.4 SCI 割込み .............................................................................................................................. 504 15.5 使用上の注意 .......................................................................................................................... 505 第 16 章 16.1 16.2 16.3 I2C バスインタフェース(IIC)【オプション】 【H8S/2148 シリーズ、H8S/2147N に内蔵】 概要 ....................................................................................................................................... 511 16.1.1 特長 ...................................................................................................... 511 16.1.2 ブロック図 ............................................................................................ 512 16.1.3 端子構成................................................................................................ 514 16.1.4 レジスタ構成 ......................................................................................... 515 各レジスタの説明 ................................................................................................................... 516 16.2.1 I2C バスデータレジスタ(ICDR) ........................................................... 516 16.2.2 スレーブアドレスレジスタ(SAR) ........................................................ 518 16.2.3 第 2 スレーブアドレスレジスタ(SARX) ............................................... 520 16.2.4 I2C バスモードレジスタ(ICMR)........................................................... 521 16.2.5 I2C バスコントロールレジスタ(ICCR).................................................. 524 16.2.6 I2C バスステータスレジスタ(ICSR) ..................................................... 530 16.2.7 シリアルタイマコントロールレジスタ(STCR) ..................................... 536 16.2.8 DDC スイッチレジスタ(DDCSWR)...................................................... 537 16.2.9 モジュールストップコントロールレジスタ(MSTPCR) .......................... 540 動作説明................................................................................................................................. 541 16.3.1 I2C バスデータフォーマット ................................................................... 541 16.3.2 マスタ送信動作...................................................................................... 543 16.3.3 マスタ受信動作...................................................................................... 545 16.4 17.2 17.3 16.3.5 スレーブ送信動作 .................................................................................. 549 16.3.6 IRIC セットタイミングと SCL 制御.......................................................... 551 16.3.7 フォーマットレスから I2C バスフォーマットへの自動切り替え ................ 552 16.3.8 DTC による動作 ..................................................................................... 553 16.3.9 ノイズ除去回路...................................................................................... 554 16.3.10 使用例 ................................................................................................... 555 16.3.11 内部状態の初期化 .................................................................................. 558 キーボードバッファコントローラ 【H8S/2148 シリーズ、H8S/2147N に内蔵】 概要 ....................................................................................................................................... 569 17.1.1 特長 ...................................................................................................... 569 17.1.2 ブロック図 ............................................................................................ 570 17.1.3 端子構成................................................................................................ 571 17.1.4 レジスタ構成 ......................................................................................... 571 各レジスタの説明 ................................................................................................................... 572 17.2.1 キーボードコントロールレジスタ H(KBCRH) ...................................... 572 17.2.2 キーボードコントロールレジスタ L(KBCRL)....................................... 575 17.2.3 キーボードデータバッファレジスタ(KBBR) ........................................ 576 17.2.4 モジュールストップコントロールレジスタ(MSTPCR) .......................... 577 動作説明................................................................................................................................. 578 第 18 章 18.1 スレーブ受信動作 .................................................................................. 547 使用上の注意 .......................................................................................................................... 560 第 17 章 17.1 16.3.4 17.3.1 受信動作................................................................................................ 578 17.3.2 送信動作................................................................................................ 579 17.3.3 受信中断動作 ......................................................................................... 582 17.3.4 KCLKI、KDI リードタイミング .............................................................. 584 17.3.5 KCLKO、KDO ライトタイミング............................................................ 584 17.3.6 KBF セットタイミングと KCLK 制御 ....................................................... 585 17.3.7 受信タイミング...................................................................................... 586 17.3.8 KCLK 立ち下がり割込みの動作............................................................... 587 17.3.9 使用上の注意 ......................................................................................... 588 ホストインタフェース【H8S/2148 シリーズ、H8S/2147N に内蔵】 概要 ....................................................................................................................................... 591 18.1.1 特長 ...................................................................................................... 591 18.2 18.3 18.4 18.5 19.2 19.3 18.1.3 端子構成................................................................................................ 593 18.1.4 レジスタ構成 ......................................................................................... 594 18.2.1 システムコントロールレジスタ(SYSCR) ............................................. 595 18.2.2 システムコントロールレジスタ 2(SYSCR2) ......................................... 596 18.2.3 ホストインタフェースコントロールレジスタ(HICR)............................ 598 18.2.4 入力データレジスタ(IDR)................................................................... 599 18.2.5 出力データレジスタ 1(ODR) ............................................................... 599 18.2.6 ステータスレジスタ(STR) .................................................................. 600 18.2.7 モジュールストップコントロールレジスタ(MSTPCR) .......................... 602 動作説明................................................................................................................................. 603 18.3.1 ホストインタフェースの起動.................................................................. 603 18.3.2 コントロール状態 .................................................................................. 605 18.3.3 GATE 18.3.4 ホストインタフェース端子シャットダウン機能 ....................................... 608 A20 ........................................................................................... 606 割込み要因 ............................................................................................................................. 610 18.4.1 IBF1、IBF2、IBF3、IBF4 ....................................................................... 610 18.4.2 HIRQ11、HIRQ1、HIRQ12、HIRQ3、HIRQ4............................................ 610 使用上の注意 .......................................................................................................................... 612 D/A 変換器 概要 ....................................................................................................................................... 615 19.1.1 特長 ...................................................................................................... 615 19.1.2 ブロック図 ............................................................................................ 615 19.1.3 端子構成................................................................................................ 616 19.1.4 レジスタ構成 ......................................................................................... 616 各レジスタの説明 ................................................................................................................... 617 19.2.1 D/A データレジスタ 0、1(DADR0、DADR1) ........................................ 617 19.2.2 D/A コントロールレジスタ(DACR) ..................................................... 617 19.2.3 モジュールストップコントロールレジスタ(MSTPCR) .......................... 619 動作説明................................................................................................................................. 620 第 20 章 20.1 ブロック図 ............................................................................................ 592 各レジスタの説明 ................................................................................................................... 595 第 19 章 19.1 18.1.2 A/D 変換器 概要 ....................................................................................................................................... 623 20.1.1 特長 ...................................................................................................... 623 20.2 20.1.2 ブロック図 ............................................................................................ 624 20.1.3 端子構成................................................................................................ 625 20.1.4 レジスタ構成 ......................................................................................... 626 各レジスタの説明 ................................................................................................................... 627 20.2.1 A/D データレジスタ A〜D(ADDRA〜ADDRD)..................................... 627 20.2.2 A/D コントロール/ステータスレジスタ(ADCSR)................................ 628 20.2.3 A/D コントロールレジスタ(ADCR) ..................................................... 630 20.2.4 キーボードコンパレータコントロールレジスタ(KBCOMP) .................. 631 20.2.5 モジュールストップコントロールレジスタ(MSTPCR) .......................... 633 20.3 バスマスタとのインタフェース ............................................................................................... 634 20.4 動作説明................................................................................................................................. 635 20.4.1 シングルモード(SCAN=0) ................................................................. 635 20.4.2 スキャンモード(SCAN=1) ................................................................. 637 20.4.3 入力サンプリングと A/D 変換時間........................................................... 639 20.4.4 外部トリガ入力タイミング ..................................................................... 640 20.5 割込み .................................................................................................................................... 641 20.6 使用上の注意 .......................................................................................................................... 641 第 21 章 21.1 RAM 概要 ....................................................................................................................................... 649 21.1.1 ブロック図 ............................................................................................ 649 21.1.2 レジスタ構成 ......................................................................................... 649 21.2 システムコントロールレジスタ(SYSCR) .............................................................................. 650 21.3 動作説明................................................................................................................................. 651 第 22 章 22.1 22.2 21.3.1 拡張モード(モード 1、2、3(EXPE=1)) ........................................... 651 21.3.2 シングルチップモード(モード 2、3(EXPE=0))................................ 651 ROM マスク ROM 版 H8S/2148 F-ZTAT H8S/2147N F-ZTAT H8S/2144 F-ZTAT H8S/2142 F-ZTAT 概要 ....................................................................................................................................... 655 22.1.1 ブロック図 ............................................................................................ 655 22.1.2 レジスタ構成 ......................................................................................... 655 レジスタの説明....................................................................................................................... 656 22.2.1 モードコントロールレジスタ(MDCR) ................................................. 656 22.3 動作説明................................................................................................................................. 657 22.4 フラッシュメモリの概要 ......................................................................................................... 658 22.5 22.6 22.7 22.8 22.4.1 特長 ...................................................................................................... 658 22.4.2 ブロック図 ............................................................................................ 659 22.4.3 フラッシュメモリの動作モード .............................................................. 660 22.4.4 端子構成................................................................................................ 664 22.4.5 レジスタ構成 ......................................................................................... 664 フラッシュメモリのレジスタの説明......................................................................................... 665 22.5.1 フラッシュメモリコントロールレジスタ 1(FLMCR1) ........................... 665 22.5.2 フラッシュメモリコントロールレジスタ 2(FLMCR2) ........................... 667 22.5.3 消去ブロック指定レジスタ 1、2(EBR1、EBR2).................................... 669 22.5.4 シリアルタイマコントロールレジスタ(STCR) ..................................... 670 オンボードプログラミングモード ............................................................................................ 671 22.6.1 ブートモード ......................................................................................... 672 22.6.2 ユーザプログラムモード ........................................................................ 678 フラッシュメモリの書き込み/消去......................................................................................... 679 22.7.1 プログラムモード .................................................................................. 679 22.7.2 プログラムベリファイモード.................................................................. 680 22.7.3 イレースモード...................................................................................... 682 22.7.4 イレースベリファイモード ..................................................................... 682 フラッシュメモリのプロテクト ............................................................................................... 685 22.8.1 ハードウェアプロテクト ........................................................................ 685 22.8.2 ソフトウェアプロテクト ........................................................................ 685 22.8.3 エラープロテクト .................................................................................. 686 22.9 フラッシュメモリの書き込み/消去時の割込み処理 ................................................................. 687 22.10 フラッシュメモリのライタモード ............................................................................................ 688 22.10.1 ライタモードの設定 ............................................................................... 688 22.10.2 ソケットアダプタとメモリマップ ........................................................... 688 22.10.3 ライタモードの動作 ............................................................................... 689 22.10.4 メモリ読み出しモード............................................................................ 691 22.10.5 自動書き込みモード ............................................................................... 694 22.10.6 自動消去モード...................................................................................... 696 22.10.7 ステータス読み出しモード ..................................................................... 697 22.10.8 ステータスポーリング............................................................................ 698 22.10.9 ライタモードへの遷移時間 ..................................................................... 699 22.10.10 メモリ書き込み注意事項 ........................................................................ 699 22.11 フラッシュメモリの書き込み/消去時の注意 ........................................................................... 700 22.12 F-ZTAT マイコンのマスク ROM 化時の注意事項 ....................................................................... 702 第 23 章 23.1 23.2 ROM H8S/2148 F-ZTAT A マスク品 H8S/2147 F-ZTAT A マスク品 H8S/2144 F-ZTAT A マスク品 概要 ....................................................................................................................................... 705 23.1.1 ブロック図 ............................................................................................ 705 23.1.2 レジスタ構成 ......................................................................................... 705 レジスタの説明....................................................................................................................... 706 23.2.1 モードコントロールレジスタ(MDCR) ................................................. 706 23.3 動作説明................................................................................................................................. 707 23.4 フラッシュメモリの概要 ......................................................................................................... 708 23.5 23.6 23.7 23.8 23.4.1 特長 ...................................................................................................... 708 23.4.2 ブロック図 ............................................................................................ 709 23.4.3 フラッシュメモリの動作モード .............................................................. 710 23.4.4 端子構成................................................................................................ 714 23.4.5 レジスタ構成 ......................................................................................... 714 フラッシュメモリのレジスタの説明......................................................................................... 715 23.5.1 フラッシュメモリコントロールレジスタ 1(FLMCR1) ........................... 715 23.5.2 フラッシュメモリコントロールレジスタ 2(FLMCR2) ........................... 717 23.5.3 消去ブロック指定レジスタ 1、2(EBR1、EBR2).................................... 719 23.5.4 シリアルタイマコントロールレジスタ(STCR) ..................................... 720 オンボードプログラミングモード ............................................................................................ 721 23.6.1 ブートモード ......................................................................................... 722 23.6.2 ユーザプログラムモード ........................................................................ 728 フラッシュメモリの書き込み/消去......................................................................................... 729 23.7.1 プログラムモード .................................................................................. 729 23.7.2 プログラムベリファイモード.................................................................. 730 23.7.3 イレースモード...................................................................................... 732 23.7.4 イレースベリファイモード ..................................................................... 732 フラッシュメモリのプロテクト ............................................................................................... 734 23.8.1 ハードウェアプロテクト ........................................................................ 734 23.8.2 ソフトウェアプロテクト ........................................................................ 734 23.8.3 エラープロテクト .................................................................................. 735 23.9 フラッシュメモリの書き込み/消去時の割込み処理 ................................................................. 736 23.10 フラッシュメモリのライタモード ............................................................................................ 737 23.10.1 ライタモードの設定 ............................................................................... 737 23.10.2 ソケットアダプタとメモリマップ ........................................................... 737 23.10.3 ライタモードの動作 ............................................................................... 738 23.10.4 メモリ読み出しモード............................................................................ 740 23.10.5 自動書き込みモード ............................................................................... 743 23.10.6 自動消去モード...................................................................................... 745 23.10.7 ステータス読み出しモード ..................................................................... 746 23.10.8 ステータスポーリング............................................................................ 747 23.10.9 ライタモードへの遷移時間 ..................................................................... 748 23.10.10 メモリ書き込み注意事項 ........................................................................ 748 23.11 フラッシュメモリの書き込み/消去時の注意 ........................................................................... 749 23.12 F-ZTAT マイコンのマスク ROM 化時の注意事項 ....................................................................... 750 第 24 章 24.1 24.2 24.3 クロック発振器 概要 ....................................................................................................................................... 753 24.1.1 ブロック図 ............................................................................................ 753 24.1.2 レジスタ構成 ......................................................................................... 753 各レジスタの説明 ................................................................................................................... 754 24.2.1 スタンバイコントロールレジスタ(SBYCR) ......................................... 754 24.2.2 ローパワーコントロールレジスタ(LPWRCR)....................................... 755 発振器 .................................................................................................................................... 756 24.3.1 水晶発振子を接続する方法 ..................................................................... 756 24.3.2 外部クロックを入力する方法.................................................................. 758 24.4 デューティ補正回路 ................................................................................................................ 761 24.5 中速クロック分周器 ................................................................................................................ 761 24.6 バスマスタクロック選択回路................................................................................................... 761 24.7 サブクロック入力回路............................................................................................................. 761 24.8 サブクロック波形成形回路 ...................................................................................................... 762 24.9 クロック選択回路 ................................................................................................................... 763 第 25 章 25.1 低消費電力状態 概要 ....................................................................................................................................... 767 25.1.1 25.2 レジスタ構成 ......................................................................................... 771 各レジスタの説明 ................................................................................................................... 772 25.2.1 スタンバイコントロールレジスタ(SBYCR) ......................................... 772 25.2.2 ローパワーコントロールレジスタ(LPWRCR)....................................... 774 25.2.3 タイマコントロール/ステータスレジスタ(TCSR)............................... 776 25.2.4 モジュールストップコントロールレジスタ(MSTPCR) .......................... 777 25.3 中速モード ............................................................................................................................. 778 25.4 スリープモード....................................................................................................................... 779 25.5 25.6 25.7 25.8 25.9 25.10 25.11 25.4.1 スリープモード...................................................................................... 779 25.4.2 スリープモードの解除............................................................................ 779 モジュールストップモード ...................................................................................................... 780 25.5.1 モジュールストップモード ..................................................................... 780 25.5.2 使用上の注意 ......................................................................................... 781 ソフトウェアスタンバイモード ............................................................................................... 782 25.6.1 ソフトウェアスタンバイモード .............................................................. 782 25.6.2 ソフトウェアスタンバイモードの解除 .................................................... 782 25.6.3 ソフトウェアスタンバイモード解除後の発振安定時間の設定 ................... 783 25.6.4 ソフトウェアスタンバイモードの応用例 ................................................. 783 25.6.5 使用上の注意 ......................................................................................... 784 ハードウェアスタンバイモード ............................................................................................... 785 25.7.1 ハードウェアスタンバイモード .............................................................. 785 25.7.2 ハードウェアスタンバイモードのタイミング .......................................... 785 ウォッチモード....................................................................................................................... 786 25.8.1 ウォッチモード...................................................................................... 786 25.8.2 ウォッチモードの解除............................................................................ 786 サブスリープモード ................................................................................................................ 787 25.9.1 サブスリープモード ............................................................................... 787 25.9.2 サブスリープモードの解除 ..................................................................... 787 サブアクティブモード............................................................................................................. 788 25.10.1 サブアクティブモード............................................................................ 788 25.10.2 サブアクティブモードの解除.................................................................. 788 直接遷移................................................................................................................................. 789 25.11.1 第 26 章 直接遷移の概要...................................................................................... 789 電気的特性 26.1 電源電圧と動作範囲 ................................................................................................................ 793 26.2 H8S/2148 F-ZTAT の電気的特性 ............................................................................................... 796 26.3 26.2.1 絶対最大定格 ......................................................................................... 796 26.2.2 DC 特性 ................................................................................................. 797 26.2.3 AC 特性 ................................................................................................. 810 26.2.4 A/D 変換特性 ......................................................................................... 817 26.2.5 D/A 変換特性 ......................................................................................... 819 26.2.6 フラッシュメモリ特性............................................................................ 820 26.2.7 使用上の注意 ......................................................................................... 822 H8S/2148 F-ZTAT (A マスク品)、H8S/2147 F-ZTAT (A マスク品)、H8S/2148 マスク ROM 品、 H8S/2147 マスク ROM 品の電気的特性 ..................................................................................... 823 26.4 26.5 26.6 26.3.1 絶対最大定格 ......................................................................................... 823 26.3.2 DC 特性 ................................................................................................. 825 26.3.3 AC 特性 ................................................................................................. 837 26.3.4 A/D 変換特性 ......................................................................................... 845 26.3.5 D/A 変換特性 ......................................................................................... 847 26.3.6 フラッシュメモリ特性............................................................................ 848 26.3.7 使用上の注意 ......................................................................................... 850 H8S/2147N F-ZTAT の電気的特性 ............................................................................................. 851 26.4.1 絶対最大定格 ......................................................................................... 851 26.4.2 DC 特性 ................................................................................................. 852 26.4.3 AC 特性 ................................................................................................. 860 26.4.4 A/D 変換特性 ......................................................................................... 868 26.4.5 D/A 変換特性 ......................................................................................... 870 26.4.6 フラッシュメモリ特性............................................................................ 871 26.4.7 使用上の注意 ......................................................................................... 873 H8S/2144 F-ZTAT、H8S/2142 F-ZTAT、H8S/2142 マスク ROM 品の電気的特性 ........................... 874 26.5.1 絶対最大定格 ......................................................................................... 874 26.5.2 DC 特性 ................................................................................................. 875 26.5.3 AC 特性 ................................................................................................. 882 26.5.4 A/D 変換特性 ......................................................................................... 886 26.5.5 D/A 変換特性 ......................................................................................... 888 26.5.6 フラッシュメモリ特性............................................................................ 889 26.5.7 使用上の注意 ......................................................................................... 891 H8S/2144 F-ZTAT (A マスク品)、H8S/2144 マスク ROM 品、H8S/2143 マスク ROM 品の 電気的特性 ............................................................................................................................. 892 26.7 26.6.1 絶対最大定格 ......................................................................................... 892 26.6.2 DC 特性 ................................................................................................. 893 26.6.3 AC 特性 ................................................................................................. 901 26.6.4 A/D 変換特性 ......................................................................................... 905 26.6.5 D/A 変換特性 ......................................................................................... 907 26.6.6 フラッシュメモリ特性............................................................................ 908 26.6.7 使用上の注意 ......................................................................................... 910 動作タイミング....................................................................................................................... 911 26.7.1 AC 特性測定条件.................................................................................... 911 26.7.2 クロックタイミング ............................................................................... 911 26.7.3 制御信号タイミング ............................................................................... 912 26.7.4 バスタイミング...................................................................................... 913 26.7.5 内蔵周辺モジュールタイミング .............................................................. 916 付録 A. B. C. D. 命令 ....................................................................................................................................... 923 A.1 命令セット一覧...................................................................................... 923 A.2 命令コード一覧...................................................................................... 934 A.3 オペレーションコードマップ.................................................................. 944 A.4 命令実行ステート数 ............................................................................... 948 A.5 命令実行中のバス状態............................................................................ 958 内部 I/O レジスタ .................................................................................................................... 968 B.1 アドレス一覧 ......................................................................................... 968 B.2 レジスタ選択条件 .................................................................................. 974 B.3 機能一覧................................................................................................ 981 I/O ポートのブロック図 ..........................................................................................................1060 C.1 ポート 1 ブロック図 ..............................................................................1060 C.2 ポート 2 ブロック図 ..............................................................................1061 C.3 ポート 3 ブロック図 ..............................................................................1064 C.4 ポート 4 ブロック図 ..............................................................................1065 C.5 ポート 5 ブロック図 ..............................................................................1072 C.6 ポート 6 ブロック図 ..............................................................................1075 C.7 ポート 7 ブロック図 ..............................................................................1080 C.8 ポート 8 ブロック図 ..............................................................................1081 C.9 ポート 9 ブロック図 ..............................................................................1087 C.10 ポート A ブロック図..............................................................................1092 C.11 ポート B ブロック図..............................................................................1095 端子状態................................................................................................................................1098 D.1 E. F. 各処理状態におけるポートの状態 ..........................................................1098 ハードウェアスタンバイモード遷移/復帰時のタイミングについて .........................................1100 E.1 ハードウェアスタンバイモードの遷移タイミング...................................1100 E.2 ハードウェアスタンバイモードからの復帰タイミング ............................1100 ROM 発注手順 .......................................................................................................................1101 F.1 ROM 書き換え品開発の流れ(発注手順) ..............................................1101 F.2 ROM 発注時の注意事項 .........................................................................1102 G. 型名一覧................................................................................................................................1103 H. 外形寸法図 ............................................................................................................................1105 1. 概要 第1章 目次 1.1 概要 ...........................................................................................................................................3 1.2 内部ブロック図...........................................................................................................................8 1.3 端子説明................................................................................................................................... 11 1.3.1 ピン配置図 .............................................................................................. 11 1.3.2 動作モード別端子機能一覧 ....................................................................... 14 1.3.3 端子機能.................................................................................................. 26 1. 2 概要 1. 概要 1.1 概要 H8S /2148 シリーズ、H8S /2144 シリーズ、H8S /2147N は、日立オリジナルアーキテクチ ャを採用した H8S /2000 C PU を核にして、システム構成に必要な周辺機能を集積したマイ クロコンピュータ(MCU)です。 H8S /2000 C PU は、内部 32 ビット構成で、16 ビット×16 本の汎用レジスタと高速動作 を指向した簡潔で最適化された命令セットを備えており、16M バイトのリニアなアドレス 空間を扱うことができます。また、H8/300 および H8/300H C PU の命令に対し、オブジェ クトレベルで上位互換を保っていますので、H8/300、H8/300L、H8/300H の各シリーズか ら容易に移行することができます。 システム構成に必要な機能としては、データトランスファコントローラ(DTC)のバス マスタ、R OM、R AM のメモリ、16 ビットフリーランニングタイマ(F RT)、8 ビットタ イマ(TMR)、ウォッチドッグタイマ(WDT)、2 種類の PWM タイマ(PWM、PWMX)、 シリアルコミュニケーションインタフェース(S CI )、P S/2 対応のキーボードバッファコ ントローラ、ホストインタフェース(HIF)、D/A 変換器(DAC)、A/D 変換器(ADC)、 I/O ポートの周辺機能などを内蔵しています。さらに、オプションとして、I2C バスインタ フェース(IIC)を内蔵することができます。 内蔵 ROM は、フラッシュメモリ(F-ZTAT™ *1)またはマスク ROM であり、128k/96k /64k バイトの容量を持っています。ROM は、CPU と 16 ビット幅のデータバスで接続さ れており、バイトデータ、ワードデータにかかわらず、1 ステートでアクセスできます。 命令フェッチを高速化し、処理速度を向上しています。 動作モードとしては、モード 1〜3 があり、アドレス空間やシングルチップモード/外 部拡張モードの選択ができます。 H8S/2148 シリーズ、H8S/2144 シリーズ、H8S/2147N の特長を表 1.1 に示します。 【注】 *1 F-ZTAT は(株)日立製作所の商標です。 3 1. 概要 表 1.1 概要(1) 項 目 CPU 仕 様 ■汎用レジスタマシン ・16 ビット×16 本の汎用レジスタ (8 ビット×16 本、32 ビット×8 本としても使用可能) ■リアルタイム制御向きの高速動作 ・最高動作周波数:20MHz/5V、10MHz/3V ・高速演算 8/16/32 ビットレジスタ間加減算:50ns(20MHz 動作時) 16×16 ビットレジスタ間乗算:1000ns(20MHz 動作時) 32÷16 ビットレジスタ間除算:1000ns(20MHz 動作時) ■高速動作に適した命令セット ・65 種類の基本命令 ・8/16/32 ビット転送/演算命令 ・符号なし/符号付き乗除算命令 ・強力なビット操作命令 ■2 種類の CPU 動作モード ・ノーマルモード:アドレス空間 64k バイト ・アドバンストモード:アドレス空間 16M バイト 動作モード ・3 種類の MCU 動作モード モード 1 2 3 バスコントローラ CPU 動作モード 内蔵 ROM 内蔵ROM無効拡張モード 無効 ノーマル アドバンスト 内蔵ROM有効拡張モード 有効 シングルチップモード ノーマル 内蔵ROM有効拡張モード 有効 シングルチップモード 内 容 外部データバス 初期値 最大値 8ビット 16ビット 8ビット 16ビット なし 8ビット 16ビット なし ・外部拡張エリアを 2 ステートまたは 3 ステートアクセス空間に設定可能 ・外部拡張エリアにプログラムウェイトのステート数を設定可能 データトランスファ コントローラ(DTC) 【H8S/2148 シリーズに 内蔵】 4 ・内部割込み/ソフトウェアによる起動 ・1 つの起動要因に対して、複数回・複数種類の転送が可能 ・リピートモード/ブロック転送モードなどの転送可能 ・DTC を起動した割込みを CPU に要求可能 1. 表 1.1 概要 概要(2) 項 目 仕 様 16 ビットフリーランニ ・16 ビットフリーランニングカウンタ×1(外部イベントカウント可能) ングタイマ(FRT) ・アウトプットコンペア出力×2 ×1 チャネル ・インプットキャプチャ入力×4(バッファ動作可能) 8 ビットタイマ(TMR)1 チャネル当たり ×2 チャネル ・8 ビットアップカウンタ(外部イベントカウント可能) (TMR0、TMR1) ・タイムコンスタントレジスタ×2 ・2 チャネルの接続が可能 タイマコネクション および 入出力および FRT、TMR1、TMRX、TMRY を相互に接続可能 ・入力信号またはその分周波形のパルス幅や周期を測定(FRT、TMR1) 8 ビットタイマ(TMR) ・入力信号のエッジをモディファイした波形の出力が可能(FRT、TMR1) ×2 チャネル ・入力信号のデューティの判定が可能(TMRX) (TMRX、TMRY) 【タイマコネクションと ・入力信号に同期した波形の出力が可能(FRT、TMRX、TMRY) TMRX は、H8S/2148 シ ・周期的波形の自動生成が可能(FRT、TMRY) リーズに内蔵】 ウォッチドッグタイマ ・ウォッチドッグタイマ/インターバルタイマの選択が可能 (WDT)×2 チャネル ・サブクロックによる動作が可能(1 チャネルのみ) 8 ビットPWMタイマ ・最大 16 出力 (PWM) ・デューティ:0〜100%デューティのパルスを設定可能 【H8S/2148 シリーズ、 ・分解能:1/256 H8S/2147N に内蔵】 ・最大キャリア周波数:1.25MHz(20MHz 動作時) 14 ビットPWMタイマ ・最大 2 出力 (PWMX) ・分解能:1/16384 ・最大キャリア周波数:312.5kHz(20MHz 動作時) シリアルコミュニケー ・調歩同期式モード/クロック同期式モードの選択が可能 ションインタフェース ・マルチプロセッサ通信機能 (SCI)×2 チャネル (SCI0、SCI1) IrDA 付き SCI ・調歩同期式モード/クロック同期式モードの選択が可能 ×1 チャネル ・マルチプロセッサ通信機能 (SCI2) ・IrDA 規格バージョン 1.0 に対応 ・TxD、RxD を IrDA フォーマットにエンコード/デコード 5 1. 概要 表 1.1 概要(3) 項 目 キーボード バッファ コントローラ(PS2) ×3 チャネル 【H8S/2148 シリーズ、 仕 様 ・PS/2 インタフェースに準拠 ・送信出力をソフトウェアで直接操作 ・データ受信は 8 ビットシフトレジスタに入力 ・データ受信完了割込み、パリティエラー検出、ストップビットモニタ H8S/2147N に内蔵】 ホストインタフェース ・8 ビットホストインタフェース(ISA)ポート (HIF) ・5 つのホスト割込み要求(HIRQ11、HIRQ1、HIRQ12、HIRQ3、HIRQ4) 【H8S/2148 シリーズ、 H8S/2147N に内蔵】 ・通常および高速 GATE A20 出力 ・4 つのレジスタセット (それぞれ 2 つのデータレジスタとステータスレジスタから構成) キーボード コントローラ A/D 変換器 ・マトリクスキーボードを、ウェイクアップ割込み付きキーボードスキャ ンおよびセンスポートの構成で制御 ・分解能:10 ビット ・入力:8 チャネル(アナログ専用端子) 16 チャネル(キーボードセンスポートと同一端子) ・高速変換:最小変換時間 6.7 μ s(20MHz 動作時) ・シングル/スキャンモードの選択が可能 ・サンプル&ホールド機能 ・外部トリガ/タイマトリガによる A/D 変換の起動が可能 D/A 変換器 ・分解能 8 ビット ・出力:2 チャネル I/O ポート ・入出力端子 74 本(内 24 本は、LED 駆動可能) ・入力専用端子 8本 ・入出力端子中 VCCB(別電源)駆動端子 8 本(H8S/2148 シリーズ、 H8S/2147N) メモリ ・フラッシュメモリまたはマスク ROM ・高速スタティック RAM 割込みコントローラ 製品名 ROM RAM H8S/2144、H8S/2148 128kバイト 4kバイト H8S/2143 96kバイト 4kバイト H8S/2142、H8S/2147、 64kバイト H8S/2147N 2kバイト ・外部割込み端子 9 本(NMI、IRQ0〜IRQ7) ・内部割込み要因 44 要因 ・3 レベルの優先順位設定が可能 6 1. 表 1.1 概要 概要(4) 項 目 低消費電力状態 仕 様 ・中速モード ・スリープモード ・モジュールストップモード ・ソフトウェアスタンバイモード ・ハードウェアスタンバイモード ・サブクロック動作 クロック発振器 ・デューティ補正回路内蔵 パッケージ ・100 ピンプラスチック QFP(FP-100B) ・100 ピンプラスチック TQFP(TFP-100B) I2C バスインタフェース ・Philips 社提唱の I 2C バスインタフェース方式準拠 (IIC)×2 チャネル ・シングルマスタモード/スレーブモード内蔵 【オプション】 ・アビトレーションロスト条件の判定が可能 【H8S/2148 シリーズ、 ・2 つのスレーブアドレスをサポート H8S/2147N に内蔵】 製品ラインアップ 【暫定】 製品型名*2 シリーズ名 マスクROM版 H8S/2148 HD6432148S HD6432148SW*1 HD6432147S HD6432147SW*1 H8S/2147N − H8S/2144 HD6432144S HD6432143S HD6432142 F-ZTAT™版 HD64F2148 HD64F2148A HD64F2147A ROM/RAM パッケージ (バイト) 128/4k FP-100B、 TFP-100B 64k/2k HD64F2147N 64k/2k HD64F2144 128k/4k HD64F2144A 96k/4k − HD64F2142R 64k/2k 【注】*1 WはI2Cバスオプションを表わします。 *2 3V品は型名に"V"が付加されています。 「付録G. 型名一覧」を参照してください。 7 1. 概要 1.2 内部ブロック図 H8S /2148 シリーズの内部ブロック図を図 1 .1 (a )に、H8S /2147N の内部ブロック図を図 VSS VSS VSS VSS VSS VCC1 VCC2 (VCL) 1.1 (b)に、H8S/2144 シリーズの内部ブロック図を図 1.1 (c)に示します。 PA7/A23/KIN15/CIN15/PS2CD PA6/A22/KIN14/CIN14/PS2CC RES XTAL ク ロ ッ ク 発 振 器 EXTAL VCCB MD1 MD0 NMI STBY RESO H8S/2000 CPU 内 内 部 部 ア デ | タ バ ス P97/WAIT/SDA0 P96/φ/EXCL P95/AS/IOS/CS1 P94/HWR/IOW P93/RD/IOR P92/IRQ0 P91/IRQ1 P90/LWR/IRQ2/ADTRG/ECS2 P67/TMOX/CIN7/KIN7/IRQ7 P66/FTOB/CIN6/KIN6/IRQ6 P65/FTID/CIN5/KIN5 P64/FTIC/CIN4/KIN4/CLAMPO P63/FTIB/CIN3/KIN3/VFBACKI P62/FTIA/CIN2/KIN2/VSYNCI/TMIY P61/FTOA/CIN1/KIN1/VSYNCO P60/FTCI/CIN0/KIN0/HFBACKI/TMIX P47/PWX1 P46/PWX0 P45/TMRI1/HIRQ12/CSYNCI P44/TMO1/HIRQ1/HSYNCO P43/TMCI1/HIRQ11/HSYNCI P42/TMRI0/SCK2/SDA1 割込みコントローラ ポ | ト 9 ド レ ス バ ス DTC バ ス コ ン ト ロ | ラ ポ | ト A P27/A15/PW15/CBLANK P26/A14/PW14 P25/A13/PW13 P24/A12/PW12 P23/A11/PW11 P22/A10/PW10 P21/A9/PW9 P20/A8/PW8 ポ | ト 1 P17/A7/PW7 P16/A6/PW6 P15/A5/PW5 P14/A4/PW4 P13/A3/PW3 P12/A2/PW2 P11/A1/PW1 P10/A0/PW0 ポ | ト 3 P37/D15/HDB7 P36/D14/HDB6 P35/D13/HDB5 P34/D12/HDB4 P33/D11/HDB3 P32/D10/HDB2 P31/D9/HDB1 P30/D8/HDB0 ROM キーボードバッファ コントローラ ×3チャネル RAM 8ビットPWM 16ビットFRT 14ビットPWM ポ | ト 4 8ビットタイマ×4チャネル (TMR0、TMR1、 TMRX、TMRY) タイマコネクション ホストインタフェース 10ビットA/D P41/TMO0/RxD2/IrRxD P40/TMCI0/TxD2/IrTxD SCI×3チャネル P51/RxD0 P50/TxD0 8ビットD/A (IrDA×1チャネル) IIC×2チャネル 【オプション】 ポート7 AVref AVCC AVSS P86/IRQ5/SCK1/SCL1 P85/IRQ4/RxD1 P84/IRQ3/TxD1 P83 P82/HIFSD P81/CS2/GA20 P80/HA0 ポート8 図 1.1 (a) H8S/2148 シリーズの内部ブロック図 8 ポ | ト B PB7/D7 PB6/D6 PB5/D5 PB4/D4 PB3/D3/CS4 PB2/D2/CS3 PB1/D1/HIRQ4 PB0/D0/HIRQ3 P77/AN7/DA1 P76/AN6/DA0 P75/AN5 P74/AN4 P73/AN3 P72/AN2 P71/AN1 P70/AN0 P52/SCK0/SCL0 ポ | ト 5 PA2/A18/KIN10/CIN10/PS2AC PA1/A17/KIN9/CIN9 PA0/A16/KIN8/CIN8 ポ | ト 2 WDT0、WDT1 ポ | ト 6 PA5/A21/KIN13/CIN13/PS2BD PA4/A20/KIN12/CIN12/PS2BC PA3/A19/KIN11/CIN11/PS2AD PA7/A23/KIN15/CIN15/PS2CD PA6/A22/KIN14/CIN14/PS2CC RES XTAL ク ロ ッ ク 発 振 器 EXTAL VCCB MD1 MD0 NMI STBY RESO H8S/2000 CPU 内 内 部 部 ア デ | タ バ ス P97/WAIT/SDA0 P96/φ/EXCL ポ | ト 9 P52/SCK0/SCL0 P51/RxD0 P50/TxD0 キーボードバッファ コントローラ ×3チャネル RAM ポ | ト 6 ポ | ト 5 PA2/A18/KIN10/CIN10/PS2AC PA1/A17/KIN9/CIN9 PA0/A16/KIN8/CIN8 P27/A15/PW15 P26/A14/PW14 ポ | ト 2 P25/A13/PW13 P24/A12/PW12 P23/A11/PW11 P22/A10/PW10 P21/A9/PW9 P20/A8/PW8 P17/A7/PW7 P16/A6/PW6 ポ | ト 1 P15/A5/PW5 P14/A4/PW4 P13/A3/PW3 ポ | ト 3 P37/D15/HDB7 P36/D14/HDB6 P35/D13/HDB5 P34/D12/HDB4 P33/D11/HDB3 P32/D10/HDB2 P31/D9/HDB1 P30/D8/HDB0 ポ | ト B PB7/D7 PB6/D6 PB5/D5 PB4/D4 PB3/D3/CS4 PB2/D2/CS3 PB1/D1/HIRQ4 PB0/D0/HIRQ3 8ビットPWM 16ビットFRT 14ビットPWM ポ | ト 4 PA5/A21/KIN13/CIN13/PS2BD PA4/A20/KIN12/CIN12/PS2BC PA3/A19/KIN11/CIN11/PS2AD ROM 8ビットタイマ×3チャネル (TMR0、TMR1、TMRY) ホストインタフェース 10ビットA/D SCI×3チャネル (IrDA×1チャネル) 8ビットD/A IIC×2チャネル 【オプション】 ポート8 P86/IRQ5/SCK1/SCL1 P85/IRQ4/RxD1 P84/IRQ3/TxD1 P83 P82/HIFSD P81/CS2/GA20 P80/HA0 P47/PWX1 P46/PWX0 P45/TMRI1/HIRQ12 P44/TMO1/HIRQ1 P43/TMCI1/HIRQ11 P42/TMRI0/SCK2/SDA1 P41/TMO0/RxD2/IrRxD P40/TMCI0/TxD2/IrTxD バ ス WDT0、WDT1 P67/CIN7/KIN7/IRQ7 P66/FTOB/CIN6/KIN6/IRQ6 P65/FTID/CIN5/KIN5 P64/FTIC/CIN4/KIN4 P63/FTIB/CIN3/KIN3 P62/FTIA/CIN2/KIN2/TMIY P61/FTOA/CIN1/KIN1 P60/FTCI/CIN0/KIN0 ス バ ス コ ン ト ロ | ラ ポ | ト A P12/A2/PW2 P11/A1/PW1 P10/A0/PW0 ポート7 P77/AN7/DA1 P76/AN6/DA0 P75/AN5 P74/AN4 P73/AN3 P72/AN2 P71/AN1 P70/AN0 P92/IRQ0 P91/IRQ1 P90/LWR/IRQ2/ADTRG/ECS2 ド レ 割込みコントローラ AVref AVCC AVSS P95/AS/IOS/CS1 P94/HWR/IOW P93/RD/IOR 概要 VSS VSS VSS VSS VSS VCC1 VCC2 1. 図 1.1 (b) H8S/2147N の内部ブロック図 9 概要 VCC1 VCC2 (VCL) VSS VSS VSS VSS VSS 1. PA7/A23/KIN15/CIN15 RES XTAL EXTAL ク ロ MD1 ッ ク 発 MD0 NMI STBY RESO 内 H8S/2000 CPU 部 デ 振 器 | タ バ ス P97/WAIT P96/φ/EXCL P95/AS/IOS P94/HWR P93/RD P92/IRQ0 P65/FTID/CIN5/KIN5 P64/FTIC/CIN4/KIN4 P63/FTIB/CIN3/KIN3 P62/FTIA/CIN2/KIN2/TMIY ド レ ス バ ス 割込みコントローラ ポ | ト 9 バ ス コ ン ト ロ | ラ P27/A15 ポ | ト 2 ポ | ト 1 RAM P23/A11 P22/A10 P16/A6 P15/A5 P14/A4 P13/A3 P12/A2 P11/A1 P10/A0 P37/D15 P36/D14 ポ | ト 3 14ビットPWM ポ | ト 4 8ビットタイマ×3チャネル (TMR0、TMR1、TMRY) 10ビットA/D PB7/D7 PB6/D6 PB5/D5 PB4/D4 PB3/D3 PB2/D2 PB1/D1 PB0/D0 H8S/2144 シリーズの内部ブロック図 P71/AN1 P70/AN0 P77/AN7/DA1 P76/AN6/DA0 AVSS AVref AVCC ポート7 P80 P86/IRQ5/SCK1 P85/IRQ4/RxD1 P84/IRQ3/TxD1 P83 P82 P81 ポート8 図 1.1 (c) ポ | ト B 8ビットD/A (IrDA×1チャネル) P75/AN5 P74/AN4 P73/AN3 P72/AN2 ポ | ト 5 P35/D13 P34/D12 P33/D11 P32/D10 P31/D9 P30/D8 SCI×3チャネル 10 P24/A12 16ビットFRT P41/TMO0/RxD2/IrRxD P40/TMCI0/TxD2/IrTxD P50/TxD0 P26/A14 P25/A13 P17/A7 P47/PWX1 P46/PWX0 P52/SCK0 P51/RxD0 PA3/A19/KIN11/CIN11 PA2/A18/KIN10/CIN10 ROM P61/FTOA/CIN1/KIN1 P60/FTCI/CIN0/KIN0 P45/TMRI1 P44/TMO1 P43/TMCI1 P42/TMRI0/SCK2 PA4/A20/KIN12/CIN12 PA1/A17/KIN9/CIN9 PA0/A16/KIN8/CIN8 WDT0、WDT1 ポ | ト 6 PA6/A22/KIN14/CIN14 PA5/A21/KIN13/CIN13 P21/A9 P20/A8 P91/IRQ1 P90/LWR/IRQ2/ADTRG P67/CIN7/KIN7/IRQ7 P66/FTOB/CIN6/KIN6/IRQ6 内 部 ア ポ | ト A 1. 概要 1.3 端子説明 1.3.1 ピン配置図 H8S/2148 シリーズのピン配置図を図 1.2(a)に、H8S/2147N のピン配置図を図 1.2(b)に、 P42/TMRI0/SCK2/SDA1 P43/TMCI1/HIRQ11/HSYNCI P44/TMO1/HIRQ1/HSYNCO P45/TMRI1/HIRQ12/CSYNCI P46/PWX0 P47/PWX1 PB7/D7 PB6/D6 VCC1 P27/A15/PW15/CBLANK P26/A14/PW14 P25/A13/PW13 P24/A12/PW12 P23/A11/PW11 P22/A10/PW10 P21/A9/PW9 P20/A8/PW8 PB5/D5 PB4/D4 VSS VSS P17/A7/PW7 P16/A6/PW6 P15/A5/PW5 P14/A4/PW4 H8S/2144 シリーズのピン配置図を図 1.2(c)に示します。 PW3/A3/P13 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 76 P41/TMO0/RxD2/IrRxD PW2/A2/P12 77 49 P40/TMCI0/TxD2/IrTxD PW1/A1/P11 78 48 PA0/A16/CIN8/KIN8 PW0/A0/P10 79 47 PA1/A17/CIN9/KIN9 CS4/D3/PB3 80 46 AVSS CS3/D2/PB2 81 45 P77/AN7/DA1 HDB0/D8 /P30 82 44 P76/AN6/DA0 HDB1/D9 /P31 83 43 P75/AN5 HDB2/D10/P32 84 42 P74/AN4 HDB3/D11/P33 85 41 P73/AN3 HDB4/D12/P34 86 40 P72/AN2 HDB5/D13/P35 87 39 P71/AN1 HDB6/D14/P36 88 38 P70/AN0 HDB7/D15/P37 89 37 AVCC HIRQ4/D1/PB1 90 36 AVref HIRQ3/D0/PB0 91 35 P67/TMOX/CIN7/KIN7/IRQ7 VSS 92 34 P66/FTOB/CIN6/KIN6/IRQ6 HA0/P80 93 33 P65/FTID/CIN5/KIN5 GA20/CS2/P81 94 32 P64/FTIC/CIN4/KIN4/CLAMPO HIFSD/P82 95 31 PA2/A18/CIN10/KIN10/PS2AC P83 96 30 PA3/A19/CIN11/KIN11/PS2AD TxD1/IRQ3/P84 97 29 P63/FTIB/CIN3/KIN3/VFBACKI RxD1/IRQ4/P85 98 28 P62/FTIA/CIN2/KIN2/VSYNCI/TMIY SCL1/SCK1/IRQ5/P86 99 27 P61/FTOA/CIN1/KIN1/VSYNCO RESO 100 26 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 P60/FTCI/CIN0/KIN0/HFBACKI/TMIX ADTRG/IRQ2/ECS2/LWR/P90 IRQ1/P91 IRQ0/P92 IOR/ RD/P93 PS2BC/KIN12/CIN12/A20/PA4 PS2BD/KIN13/CIN13/A21/PA5 NMI IOW/ HWR/P94 MD0 CS1/ IOS/ AS/P95 MD1 EXCL/φ/P96 VCCB SDA0/WAIT/P97 EXTAL VSS RES TxD0/P50 7 RxD0/P51 6 SCL0/SCK0/P52 5 PS2CC/KIN14/CIN14/A22/PA6 4 PS2CD/KIN15/CIN15/A23/PA7 3 VCC2 (VCL) 2 STBY 1 XTAL FP-100B TFP-100B (上面図) 図 1.2 (a) H8S/2148 シリーズのピン配置図(FP-100B、TFP-100B:上面図) 11 P42/TMRI0/SCK2/SDA1 P43/TMCI1/HIRQ11 P44/TMO1/HIRQ1 P45/TMRI1/HIRQ12 P46/PWX0 P47/PWX1 PB7/D7 PB6/D6 VCC1 P27/A15/PW15 P26/A14/PW14 P25/A13/PW13 P24/A12/PW12 P23/A11/PW11 P22/A10/PW10 P21/A9/PW9 P20/A8/PW8 PB5/D5 PB4/D4 VSS VSS P17/A7/PW7 P16/A6/PW6 P15/A5/PW5 概要 P14/A4/PW4 PW3/A3/P13 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 76 P41/TMO0/RxD2/IrRxD PW2/A2/P12 77 49 P40/TMCI0/TxD2/IrTxD PW1/A1/P11 78 48 PA0/A16/CIN8/KIN8 PW0/A0/P10 79 47 PA1/A17/CIN9/KIN9 CS4/D3/PB3 80 46 AVSS CS3/D2/PB2 81 45 P77/AN7/DA1 HDB0/D8 /P30 82 44 P76/AN6/DA0 HDB1/D9 /P31 83 43 P75/AN5 HDB2/D10/P32 84 42 P74/AN4 HDB3/D11/P33 85 41 P73/AN3 HDB4/D12/P34 86 40 P72/AN2 HDB5/D13/P35 87 39 P71/AN1 HDB6/D14/P36 88 38 P70/AN0 HDB7/D15/P37 89 37 AVCC HIRQ4/D1/PB1 90 36 AVref HIRQ3/D0/PB0 91 35 P67/CIN7/KIN7/IRQ7 VSS 92 34 P66/FTOB/CIN6/KIN6/IRQ6 FP-100B TFP-100B (上面図) 3 4 5 6 7 P60/FTCI/CIN0/KIN0 ADTRG/IRQ2/ECS2/LWR/P90 2 IRQ1/P91 1 IRQ0/P92 26 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 IOR/ RD/P93 100 PS2BC/KIN12/CIN12/A20/PA4 P61/FTOA/CIN1/KIN1 RESO PS2BD/KIN13/CIN13/A21/PA5 27 IOW/ HWR/P94 99 CS1/ IOS/ AS/P95 P62/FTIA/CIN2/KIN2/TMIY SCL1/SCK1/IRQ5/P86 EXCL/φ/P96 28 SDA0/WAIT/P97 98 VSS P63/FTIB/CIN3/KIN3 RxD1/IRQ4/P85 TxD0/P50 29 RxD0/P51 97 SCL0/SCK0/P52 PA3/A19/CIN11/KIN11/PS2AD TxD1/IRQ3/P84 PS2CC/KIN14/CIN14/A22/PA6 30 PS2CD/KIN15/CIN15/A23/PA7 96 VCC2 PA2/A18/CIN10/KIN10/PS2AC P83 NMI 31 MD0 95 MD1 P64/FTIC/CIN4/KIN4 HIFSD/P82 VCCB P65/FTID/CIN5/KIN5 32 EXTAL 33 94 RES 93 XTAL HA0/P80 GA20/CS2/P81 STBY 1. 図 1.2 (b) H8S/2147N のピン配置図(FP-100B、TFP-100B:上面図) 12 概要 P42/TMRI0/SCK2 P43/TMCI1 P44/TMO1 P45/TMRI1 P46/PWX0 P47/PWX1 PB7/D7 PB6/D6 VCC1 P27/A15 P26/A14 P25/A13 P24/A12 P23/A11 P22/A10 P21/A9 P20/A8 PB5/D5 PB4/D4 VSS VSS P17/A7 P16/A6 P15/A5 P14/A4 1. A3/P13 75 74 73 72 71 70 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 76 50 P41/TMO0/RxD2/IrRxD A2/P12 77 49 P40/TMCI0/TxD2/IrTxD A1/P11 78 48 PA0/A16/CIN8/KIN8 A0/P10 79 47 PA1/A17/CIN9/KIN9 D3/PB3 80 46 AVSS D2/PB2 81 45 P77/AN7/DA1 D8/P30 82 44 P76/AN6/DA0 D9/P31 83 43 P75/AN5 D10/P32 84 42 P74/AN4 D11/P33 85 41 P73/AN3 D12/P34 86 40 P72/AN2 D13/P35 87 39 P71/AN1 D14/P36 88 38 P70/AN0 D15/P37 89 37 AVCC D1/PB1 90 36 AVref D0/PB0 91 35 P67/CIN7/KIN7/IRQ7 VSS 92 34 P66/FTOB/CIN6/KIN6/IRQ6 P80 93 33 P65/FTID/CIN5/KIN5 P81 94 32 P64/FTIC/CIN4/KIN4 P82 95 31 PA2/A18/CIN10/KIN10 P83 96 30 PA3/A19/CIN11/KIN11 TxD1/IRQ3/P84 97 29 P63/FTIB/CIN3/KIN3 RxD1/IRQ4/P85 98 28 P62/FTIA/CIN2/KIN2/TMIY SCK1/IRQ5/P86 99 27 P61/FTOA/CIN1/KIN1 RESO 100 26 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 IRQ1/P91 P60/FTCI/CIN0/KIN0 ADTRG/IRQ2/LWR/P90 IRQ0/P92 RD/P93 KIN12/CIN12/A20/PA4 KIN13/CIN13/A21/PA5 HWR/P94 IOS/ AS/P95 EXCL/φ/P96 WAIT/P97 VSS TxD0/P50 RxD0/P51 SCK0/P52 8 KIN14/CIN14/A22/PA6 MD1 7 KIN15/CIN15/A23/PA7 VCC1 図 1.2 (c) 6 VCC2 (VCL) 5 STBY 4 NMI 3 MD0 2 EXTAL RES 1 XTAL FP-100B TFP-100B (上面図) H8S/2144 シリーズのピン配置図(FP-100B、TFP-100B:上面図) 13 1. 概要 1.3.2 動作モード別端子機能一覧 動作モード別端子機能を表 1.2、表 1.3、表 1.4 に示します。 表 1.2 H8S/2148 シリーズ動作モード別端子機能一覧 ピン番号 端子名 拡張モード モード 1 FP-100B TFP-100B フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 1 RES RES RES RES 2 XTAL XTAL XTAL XTAL 3 EXTAL EXTAL EXTAL EXTAL 4 VCCB VCCB VCCB VCC 5 MD1 MD1 MD1 VSS 6 MD0 MD0 MD0 VSS 7 NMI NMI NMI FA9 8 STBY STBY STBY VCC 9 VCC2 (VCL) VCC2 (VCL) VCC2 (VCL) VCC 10 PA7/ CIN15/ KIN15/ A23/PA7/ CIN15/ KIN15/ PA7/ CIN15/ KIN15/ PS2CD PS2CD PA6/ CIN14/ KIN14/ A22/ PA6/ CIN14/ KIN14/ PA6/ CIN14/ KIN14/ PS2CC PS2CC PS2CC 12 P52/ SCK0/ SCL0 P52/ SCK0/ SCL0 P52/ SCK0/ SCL0 13 P51/ RxD0 P51/ RxD0 P51/ RxD0 FA17 14 P50/ TxD0 P50/ TxD0 P50/ TxD0 NC 15 VSS VSS VSS VSS 16 P97/ WAIT/ SDA0 P97/ WAIT/ SDA0 P97/ SDA0 VCC 17 φ/ P96/ EXCL φ/ P96/ EXCL P96/φ/ EXCL NC 18 AS/ IOS AS/ IOS P95/ CS1 FA16 19 HWR HWR P94/ IOW FA15 20 PA5/ CIN13/ KIN13/ A21/ PA5/ CIN13/ KIN13/ PA5/ CIN13/ KIN13/ PS2BD PS2BD PA4/ CIN12/ KIN12/ A20/ PA4/ CIN12/ KIN12/ PA4/ CIN12/ KIN12/ PS2BC PS2BC PS2BC 22 RD RD P93/ IOR WE 23 P92/ IRQ0 P92/ IRQ0 P92/ IRQ0 VSS 24 P91/ IRQ1 P91/ IRQ1 P91/ IRQ1 VCC 11 21 14 シングルチップモード NC PS2CD NC NC NC PS2BD NC 1. ピン番号 端子名 拡張モード モード 1 シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ TFP-100B モード 3(EXPE=1) モード 3(EXPE=0) モード 25 LWR/P90/IRQ2/ADTRG LWR/P90/IRQ2/ADTRG P90/IRQ2/ADTRG/ECS2 VCC 26 P60/ FTCI/ CIN0/ KIN0/ P60/ FTCI/ CIN0/ KIN0/ P60/ FTCI/ CIN0/ KIN0/ NC FP-100B TMIX/ HFBACKI 27 30 31 TMIX/ HFBACKI VSYNCO TMIY / VSYNCI P63/ FTIB/ CIN3/ KIN3/ P63/ FTIB/ CIN3/ KIN3/ P63/ FTIB/ CIN3/ KIN3/ VFBACKI VFBACKI PA3/ CIN11/ KIN11/ A19/PA3/ CIN11/ KIN11/ PA3/ CIN11/ KIN11/ PS2AD PS2AD PA2/ CIN10/ KIN10/ A18/PA2/ CIN10/ KIN10/ PA2/ CIN10/ KIN10/ PS2AC PS2AC NC PS2AC CLAMPO CLAMPO 33 P65/ FTID/ CIN5/ KIN5 P65/ FTID/ CIN5/ KIN5 P65/ FTID/ CIN5/ KIN5 34 P66/ FTOB/ CIN6/ KIN6/ P66/ FTOB/ CIN6/ KIN6/ P66/ FTOB/ CIN6/ KIN6/ 35 NC PS2AD CLAMPO IRQ6 NC VFBACKI P64 /FTIC/ CIN4/ KIN4/ IRQ6 NC TMIY / VSYNCI P64 / FTIC/ CIN4/ KIN4/ P64 /FTIC/ CIN4/ KIN4/ 32 NC VSYNCO P62/ FTIA/ CIN2/ KIN2/ P62/ FTIA/ CIN2/ KIN2/ P62/ FTIA/ CIN2/ KIN2/ TMIY / VSYNCI 29 TMIX/ HFBACKI P61/ FTOA/ CIN1/ KIN1/ P61/ FTOA/ CIN1/ KIN1/ P61/ FTOA/ CIN1/ KIN1/ VSYNCO 28 概要 NC NC NC IRQ6 P67/ TMOX/ CIN7/ KIN7/ P67/ TMOX/ CIN7/ KIN7/ P67/ TMOX/ CIN7/ KIN7/ VSS IRQ7 IRQ7 IRQ7 36 AVref AVref AVref VCC 37 AVCC AVCC AVCC VCC 38 P70/ AN0 P70/ AN0 P70/ AN0 NC 39 P71/ AN1 P71/ AN1 P71/ AN1 NC 40 P72/ AN2 P72/ AN2 P72/ AN2 NC 41 P73/ AN3 P73/ AN3 P73/ AN3 NC 42 P74/ AN4 P74/ AN4 P74/ AN4 NC 43 P75/ AN5 P75/ AN5 P75/ AN5 NC 44 P76/ AN6/ DA0 P76/ AN6/ DA0 P76/ AN6/ DA0 NC 45 P77/ AN7/ DA1 P77/ AN7/ DA1 P77/ AN7/ DA1 NC 15 1. 概要 ピン番号 端子名 拡張モード モード 1 FP-100B TFP-100B シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 46 AVSS AVSS AVSS VSS 47 PA1/ CIN9/ KIN9 A17/PA1/ CIN9/ KIN9 PA1/ CIN9/ KIN9 NC 48 PA0/ CIN8/ KIN8 A16/PA0/ CIN8/ KIN8 PA0/ CIN8/ KIN8 NC 49 P40/TMCI0/TxD2/IrTxD P40/TMCI0/TxD2/IrTxD P40/TMCI0/TxD2/IrTxD NC 50 P41/TMO0/RxD2/IrRxD P41/TMO0/RxD2/IrRxD P41/TMO0/RxD2/IrRxD NC 51 P42/TMRI0/SCK2/SDA1 P42/TMRI0/SCK2/SDA1 P42/TMRI0/SCK2/SDA1 NC 52 P43/TMCI1/HSYNCI NC P43/TMCI1/HSYNCI P43/TMCI1/HIRQ11/ HSYNCI 53 P44/TMO1/HSYNCO P44/TMO1/HSYNCO P44/TMO1/HIRQ1/ NC HSYNCO 54 P45/TMRI1/CSYNCI P45/TMRI1/CSYNCI P45/TMRI1/HIRQ12/ NC CSYNCI 55 P46/PWX0 P46/PWX0 P46/PWX0 NC 56 P47/PWX1 P47/PWX1 P47/PWX1 NC 57 PB7/D7 PB7/D7 PB7 NC 58 PB6/D6 PB6/D6 PB6 NC 59 VCC1 VCC1 VCC1 VCC 60 A15 A15/P27/PW15/ P27/PW15/CBLANK CE CBLANK 16 61 A14 A14/P26/PW14 P26/PW14 FA14 62 A13 A13/P25/PW13 P25/PW13 FA13 63 A12 A12/P24/PW12 P24/PW12 FA12 64 A11 A11/P23/PW11 P23/PW11 FA11 65 A10 A10/P22/PW10 P22/PW10 FA10 66 A9 A9/P21/PW9 P21/PW9 OE 67 A8 A8/P20/PW8 P20/PW8 FA8 68 PB5/D5 PB5/D5 PB5 NC 69 PB4/D4 PB4/D4 PB4 NC 70 VSS VSS VSS VSS 71 VSS VSS VSS VSS 72 A7 A7/P17/PW7 P17/PW7 FA7 73 A6 A6/P16/PW6 P16/PW6 FA6 1. ピン番号 概要 端子名 拡張モード モード 1 FP-100B TFP-100B シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 74 A5 A5/P15/PW5 P15/PW5 FA5 75 A4 A4/P14/PW4 P14/PW4 FA4 76 A3 A3/P13/PW3 P13/PW3 FA3 77 A2 A2/P12/PW2 P12/PW2 FA2 78 A1 A1/P11/PW1 P11/PW1 FA1 79 A0 A0/P10/PW0 P10/PW0 FA0 80 PB3/D3 PB3/D3 PB3/CS4 NC 81 PB2/D2 PB2/D2 PB2/CS3 NC 82 D8 D8 P30/HDB0 FO0 83 D9 D9 P31/HDB1 FO1 84 D10 D10 P32/HDB2 FO2 85 D11 D11 P33/HDB3 FO3 86 D12 D12 P34/HDB4 FO4 87 D13 D13 P35/HDB5 FO5 88 D14 D14 P36/HDB6 FO6 89 D15 D15 P37/HDB7 FO7 90 PB1/D1 PB1/D1 PB1/HIRQ4 NC 91 PB0/D0 PB0/D0 PB0/HIRQ3 NC 92 VSS VSS VSS VSS 93 P80 P80 P80/HA0 NC 94 P81 P81 P81/CS2/GA20 NC 95 P82 P82 P82/HIFSD NC 96 P83 P83 P83 NC 97 P84/IRQ3/TxD1 P84/IRQ3/TxD1 P84/IRQ3/TxD1 NC 98 P85/IRQ4/RxD1 P85/IRQ4/RxD1 P85/IRQ4/RxD1 NC 99 P86/IRQ5/SCK1/SCL1 P86/IRQ5/SCK1/SCL1 P86/IRQ5/SCK1/SCL1 NC 100 RESO RESO RESO NC 17 1. 概要 表 1.3 H8S/2147N 動作モード別端子機能一覧 ピン番号 端子名 拡張モード モード 1 FP-100B TFP-100B フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 1 RES RES RES RES 2 XTAL XTAL XTAL XTAL 3 EXTAL EXTAL EXTAL EXTAL 4 VCCB VCCB VCCB VCC 5 MD1 MD1 MD1 VSS 6 MD0 MD0 MD0 VSS 7 NMI NMI NMI FA9 8 STBY STBY STBY VCC 9 VCC2 VCC2 VCC2 VCC 10 PA7/ CIN15/ KIN15/ A23/PA7/ CIN15/ KIN15/ PA7/ CIN15/ KIN15/ PS2CD PS2CD PA6/ CIN14/ KIN14/ A22/ PA6/ CIN14/ KIN14/ PA6/ CIN14/ KIN14/ PS2CC PS2CC PS2CC 12 P52/ SCK0/ SCL0 P52/ SCK0/ SCL0 P52/ SCK0/ SCL0 13 P51/ RxD0 P51/ RxD0 P51/ RxD0 FA17 14 P50/ TxD0 P50/ TxD0 P50/ TxD0 NC 15 VSS VSS VSS VSS 16 P97/ WAIT/ SDA0 P97/ WAIT/ SDA0 P97/ SDA0 VCC 17 φ/ P96/ EXCL φ/ P96/ EXCL P96/φ/ EXCL NC 18 AS/ IOS AS/ IOS P95/ CS1 FA16 19 HWR HWR P94/ IOW FA15 20 PA5/ CIN13/ KIN13/ A21/ PA5/ CIN13/ KIN13/ PA5/ CIN13/ KIN13/ PS2BD PS2BD PA4/ CIN12/ KIN12/ A20/ PA4/ CIN12/ KIN12/ PA4/ CIN12/ KIN12/ PS2BC PS2BC PS2BC 22 RD RD P93/ IOR WE 23 P92/ IRQ0 P92/ IRQ0 P92/ IRQ0 VSS 24 P91/ IRQ1 P91/ IRQ1 P91/ IRQ1 VCC 11 21 18 シングルチップモード NC PS2CD NC NC NC PS2BD NC 1. ピン番号 端子名 拡張モード モード 1 シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ TFP-100B モード 3(EXPE=1) モード 3(EXPE=0) モード 25 LWR/P90/IRQ2/ADTRG LWR/P90/IRQ2/ADTRG P90/IRQ2/ADTRG/ECS2 VCC 26 P60/ FTCI/ CIN0/ KIN0 NC 27 P61/ FTOA/ CIN1/ KIN1 P61/ FTOA/ CIN1/ KIN1 P61/ FTOA/ CIN1/ KIN1 NC 28 P62/ FTIA/ CIN2/ KIN2/ P62/ FTIA/ CIN2/ KIN2/ P62/ FTIA/ CIN2/ KIN2/ NC FP-100B P60/ FTCI/ CIN0/ KIN0 P60/ FTCI/ CIN0/ KIN0 TMIY TMIY TMIY 29 P63/ FTIB/ CIN3/ KIN3 P63/ FTIB/ CIN3/ KIN3 P63/ FTIB/ CIN3/ KIN3 30 PA3/ CIN11/ KIN11/ A19/PA3/ CIN11/ KIN11/ PA3/ CIN11/ KIN11/ PS2AD PS2AD PA2/ CIN10/ KIN10/ A18/PA2/ CIN10/ KIN10/ PA2/ CIN10/ KIN10/ PS2AC PS2AC 31 概要 NC NC PS2AD NC PS2AC 32 P64 / FTIC/ CIN4/ KIN4 P64 /FTIC/ CIN4/ KIN4 P64 /FTIC/ CIN4/ KIN4 NC 33 P65/ FTID/ CIN5/ KIN5 P65/ FTID/ CIN5/ KIN5 NC 34 P66/ FTOB/ CIN6/ KIN6/ P66/ FTOB/ CIN6/ KIN6/ P66/ FTOB/ CIN6/ KIN6/ IRQ6 P65/ FTID/ CIN5/ KIN5 IRQ6 NC IRQ6 35 P67/ CIN7/ KIN7/ IRQ7 P67/ CIN7/ KIN7/ IRQ7 P67/ CIN7/ KIN7/ IRQ7 VSS 36 AVref AVref AVref VCC 37 AVCC AVCC AVCC VCC 38 P70/ AN0 P70/ AN0 P70/ AN0 NC 39 P71/ AN1 P71/ AN1 P71/ AN1 NC 40 P72/ AN2 P72/ AN2 P72/ AN2 NC 41 P73/ AN3 P73/ AN3 P73/ AN3 NC 42 P74/ AN4 P74/ AN4 P74/ AN4 NC 43 P75/ AN5 P75/ AN5 P75/ AN5 NC 44 P76/ AN6/ DA0 P76/ AN6/ DA0 P76/ AN6/ DA0 NC 45 P77/ AN7/ DA1 P77/ AN7/ DA1 P77/ AN7/ DA1 NC 46 AVSS AVSS AVSS VSS 47 PA1/ CIN9/ KIN9 A17/PA1/ CIN9/ KIN9 PA1/ CIN9/ KIN9 NC 48 PA0/ CIN8/ KIN8 A16/PA0/ CIN8/ KIN8 PA0/ CIN8/ KIN8 NC 49 P40/TMCI0/TxD2/IrTxD P40/TMCI0/TxD2/IrTxD P40/TMCI0/TxD2/IrTxD NC 50 P41/TMO0/RxD2/IrRxD P41/TMO0/RxD2/IrRxD P41/TMO0/RxD2/IrRxD NC 51 P42/TMRI0/SCK2/SDA1 P42/TMRI0/SCK2/SDA1 P42/TMRI0/SCK2/SDA1 NC 19 1. 概要 ピン番号 端子名 拡張モード モード 1 FP-100B TFP-100B 20 シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 52 P43/TMCI1 P43/TMCI1 P43/TMCI1/HIRQ11 NC 53 P44/TMO1 P44/TMO1 P44/TMO1/HIRQ1 NC 54 P45/TMRI1 P45/TMRI1 P45/TMRI1/HIRQ12 NC 55 P46/PWX0 P46/PWX0 P46/PWX0 NC 56 P47/PWX1 P47/PWX1 P47/PWX1 NC 57 PB7/D7 PB7/D7 PB7 NC 58 PB6/D6 PB6/D6 PB6 NC 59 VCC1 VCC1 VCC1 VCC 60 A15 A15/P27/PW15 P27/PW15 CE 61 A14 A14/P26/PW14 P26/PW14 FA14 62 A13 A13/P25/PW13 P25/PW13 FA13 63 A12 A12/P24/PW12 P24/PW12 FA12 64 A11 A11/P23/PW11 P23/PW11 FA11 65 A10 A10/P22/PW10 P22/PW10 FA10 66 A9 A9/P21/PW9 P21/PW9 OE 67 A8 A8/P20/PW8 P20/PW8 FA8 68 PB5/D5 PB5/D5 PB5 NC 69 PB4/D4 PB4/D4 PB4 NC 70 VSS VSS VSS VSS 71 VSS VSS VSS VSS 72 A7 A7/P17/PW7 P17/PW7 FA7 73 A6 A6/P16/PW6 P16/PW6 FA6 74 A5 A5/P15/PW5 P15/PW5 FA5 75 A4 A4/P14/PW4 P14/PW4 FA4 76 A3 A3/P13/PW3 P13/PW3 FA3 77 A2 A2/P12/PW2 P12/PW2 FA2 78 A1 A1/P11/PW1 P11/PW1 FA1 79 A0 A0/P10/PW0 P10/PW0 FA0 80 PB3/D3 PB3/D3 PB3/CS4 NC 1. ピン番号 概要 端子名 拡張モード モード 1 FP-100B TFP-100B シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 81 PB2/D2 PB2/D2 PB2/CS3 NC 82 D8 D8 P30/HDB0 FO0 83 D9 D9 P31/HDB1 FO1 84 D10 D10 P32/HDB2 FO2 85 D11 D11 P33/HDB3 FO3 86 D12 D12 P34/HDB4 FO4 87 D13 D13 P35/HDB5 FO5 88 D14 D14 P36/HDB6 FO6 89 D15 D15 P37/HDB7 FO7 90 PB1/D1 PB1/D1 PB1/HIRQ4 NC 91 PB0/D0 PB0/D0 PB0/HIRQ3 NC 92 VSS VSS VSS VSS 93 P80 P80 P80/HA0 NC 94 P81 P81 P81/CS2/GA20 NC 95 P82 P82 P82/HIFSD NC 96 P83 P83 P83 NC 97 P84/IRQ3/TxD1 P84/IRQ3/TxD1 P84/IRQ3/TxD1 NC 98 P85/IRQ4/RxD1 P85/IRQ4/RxD1 P85/IRQ4/RxD1 NC 99 P86/IRQ5/SCK1/SCL1 P86/IRQ5/SCK1/SCL1 P86/IRQ5/SCK1/SCL1 NC 100 RESO RESO RESO NC 21 1. 概要 表 1.4 H8S/2144 シリーズ動作モード別端子機能一覧 ピン番号 端子名 拡張モード モード 1 FP-100B TFP-100B フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 1 RES RES RES RES 2 XTAL XTAL XTAL XTAL 3 EXTAL EXTAL EXTAL EXTAL 4 VCC1 VCC1 VCC1 VCC 5 MD1 MD1 MD1 VSS 6 MD0 MD0 MD0 VSS 7 NMI NMI NMI FA9 8 STBY STBY STBY VCC 9 VCC2 (VCL) VCC2 (VCL) VCC2 (VCL) VCC 10 PA7/ CIN15/ KIN15 A23/PA7/ CIN15/ KIN15 PA7/ CIN15/ KIN15 NC 11 PA6/ CIN14/ KIN14 A22/PA6/ CIN14/ KIN14 PA6/ CIN14/ KIN14 NC 12 P52/SCK0 P52/SCK0 P52/SCK0 NC 13 P51/RxD0 P51/RxD0 P51/RxD0 FA17 14 P50/TxD0 P50/TxD0 P50/TxD0 NC 15 VSS VSS VSS VSS 16 P97/WAIT P97/WAIT P97 VCC 17 φ/P96/EXCL φ/P96/EXCL P96/φ/EXCL 18 AS/IOS AS/IOS P95 FA16 19 HWR HWR P94 FA15 20 PA5/ CIN13/ KIN13 A21/PA5/ CIN13/ KIN13 PA5/ CIN13/ KIN13 NC 21 PA4/ CIN12/ KIN12 A20/PA4/ CIN12/ KIN12 PA4/ CIN12/ KIN12 NC 22 RD RD P93 WE 23 P92/ IRQ0 P92/ IRQ0 P92/ IRQ0 VSS 24 P91/ IRQ1 P91/ IRQ1 P91/ IRQ1 VCC 25 LWR/P90/IRQ2/ADTRG LWR/P90/IRQ2/ADTRG P90/ IRQ2/ ADTRG 26 P60/ FTCI/ CIN0/ KIN0 27 P61/ FTOA/ CIN1/ KIN1 P61/ FTOA/ CIN1/ KIN1 P61/ FTOA/CIN1/ KIN1 NC 28 P62/ FTIA/ CIN2/ KIN2/ P62/ FTIA/ CIN2/ KIN2/ P62/ FTIA/CIN2/ KIN2/ NC 29 22 シングルチップモード P60/ FTCI/ CIN0/ KIN0 P60/ FTCI/CIN0/ KIN0 TMIY TMIY TMIY P63/ FTIB/ CIN3/ KIN3 P63/ FTIB/ CIN3/ KIN3 P63/ FTIB/ CIN3/ KIN3 NC VCC NC NC 1. ピン番号 概要 端子名 拡張モード モード 1 FP-100B TFP-100B シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 30 PA3/ CIN11/ KIN11 A19/PA3/ CIN11/ KIN11 PA3/ CIN11/ KIN11 NC 31 PA2/ CIN10/ KIN10 A18/PA2/ CIN10/ KIN10 PA2/ CIN10/ KIN10 NC 32 P64 /FTIC/ CIN4/ KIN4 P64 /FTIC/ CIN4/ KIN4 P64 /FTIC/ CIN4/ KIN4 NC 33 P65/FTID/ CIN5/ KIN5 P65/FTID/ CIN5/ KIN5 P65/FTID/ CIN5/ KIN5 NC 34 P66/ FTOB/ CIN6/ KIN6/ P66/ FTOB/ CIN6/ KIN6/ P66/ FTOB/ CIN6/ KIN6/ IRQ6 IRQ6 NC IRQ6 35 P67/ CIN7/ KIN7/ IRQ7 P67 / CIN7/ KIN7/ IRQ7 P67 / CIN7/ KIN7/ IRQ7 VSS 36 AVref AVref AVref VCC 37 AVCC AVCC AVCC VCC 38 P70/AN0 P70/AN0 P70/AN0 NC 39 P71/AN1 P71/AN1 P71/AN1 NC 40 P72/AN2 P72/AN2 P72/AN2 NC 41 P73/AN3 P73/AN3 P73/AN3 NC 42 P74/AN4 P74/AN4 P74/AN4 NC 43 P75/AN5 P75/AN5 P75/AN5 NC 44 P76/AN6/DA0 P76/AN6/DA0 P76/AN6/DA0 NC 45 P77/AN7/DA1 P77/AN7/DA1 P77/AN7/DA1 NC 46 AVSS AVSS AVSS VSS 47 PA1/CIN9/KIN9 A17/PA1/CIN9/ KIN9 PA1/CIN9/KIN9 NC 48 PA0/CIN8/KIN8 A16/PA0/CIN8/ KIN8 PA0/CIN8/KIN8 NC 49 P40/TMCI0/TxD2/IrTxD P40/TMCI0/TxD2/IrTxD P40/TMCI0/TxD2/IrTxD NC 50 P41/TMO0/RxD2/IrRxD P41/TMO0/RxD2/IrRxD P41/TMO0/RxD2/IrRxD NC 51 P42/TMRI0/SCK2 P42/TMRI0/SCK2 P42/TMRI0/SCK2 NC 52 P43/TMCI1 P43/TMCI1 P43/TMCI1 NC 53 P44/TMO1 P44/TMO1 P44/TMO1 NC 54 P45/TMRI1 P45/TMRI1 P45/TMRI1 NC 55 P46/PWX0 P46/PWX0 P46/PWX0 NC 56 P47/PWX1 P47/PWX1 P47/PWX1 NC 57 PB7/D7 PB7/D7 PB7 NC 58 PB6/D6 PB6/D6 PB6 NC 59 VCC1 VCC1 VCC1 60 A15 A15/P27 P27 VCC CE 23 1. 概要 ピン番号 端子名 拡張モード モード 1 FP-100B TFP-100B 24 シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 61 A14 A14/P26 P26 FA14 62 A13 A13/P25 P25 FA13 63 A12 A12/P24 P24 FA12 64 A11 A11/P23 P23 FA11 65 A10 A10/P22 P22 FA10 66 A9 A9/P21 P21 OE 67 A8 A8/P20 P20 FA8 68 PB5/D5 PB5/D5 PB5 NC 69 PB4/D4 PB4/D4 PB4 NC 70 VSS VSS VSS VSS 71 VSS VSS VSS VSS 72 A7 A7/P17 P17 FA7 73 A6 A6/P16 P16 FA6 74 A5 A5/P15 P15 FA5 75 A4 A4/P14 P14 FA4 76 A3 A3/P13 P13 FA3 77 A2 A2/P12 P12 FA2 78 A1 A1/P11 P11 FA1 79 A0 A0/P10 P10 FA0 80 PB3/D3 PB3/D3 PB3 NC 81 PB2/D2 PB2/D2 PB2 NC 82 D8 D8 P30 FO0 83 D9 D9 P31 FO1 84 D10 D10 P32 FO2 85 D11 D11 P33 FO3 86 D12 D12 P34 FO4 87 D13 D13 P35 FO5 88 D14 D14 P36 FO6 89 D15 D15 P37 FO7 90 PB1/D1 PB1/D1 PB1 NC 91 PB0/D0 PB0/D0 PB0 NC 92 VSS VSS VSS VSS 1. ピン番号 概要 端子名 拡張モード モード 1 FP-100B TFP-100B シングルチップモード フラッシュメモリ モード 2(EXPE=1) モード 2(EXPE=0) ライタ モード 3(EXPE=1) モード 3(EXPE=0) モード 93 P80 P80 P80 NC 94 P81 P81 P81 NC 95 P82 P82 P82 NC 96 P83 P83 P83 NC 97 P84/IRQ3/TxD1 P84/IRQ3/TxD1 P84/IRQ3/TxD1 NC 98 P85/IRQ4/RxD1 P85/IRQ4/RxD1 P85/IRQ4/RxD1 NC 99 P86/IRQ5/SCK1 P86/IRQ5/SCK1 P86/IRQ5/SCK1 NC 100 RESO RESO RESO NC 25 1. 概要 1.3.3 端子機能 各端子の機能について表 1.5 に示します。 表 1.5 端子機能 分類 記号 ピン番号 入出力 名称および機能 FP-100B TFP-100B 電源 VCC1 4[H8S/2144 入力 システムの電源に接続してください。 59 VCC2 9*1 VCL 9*1 電源 電源に接続します。VCC1、VCC2*1 端子は、全端子を シリーズのみ]、 入力 内部降圧端子 内部降圧対応品の電源端子です。5V、4V 品は、本端子 と VSS 端子との間に内部降圧安定化のための外付けコ ンデンサを接続し、Vcc と接続しないでください。3V 品は、本端子を VCC1 端子とともにシステムの電源に 接続してください。 詳細は「第 26 章 VCCB 4[H8S/2148 入力 シリーズ、 電気的特性」を参照してください。 入出力バッファ用電源 ポート A の入出力バッファ用電源です。 H8S/2147N のみ] VSS 15、70、71、92 入力 グランド 電源(0V)に接続します。VSS 端子は、全端子をシス テムの電源(0V)に接続してください。 クロック XTAL 2 入力 水晶発振子を接続します。水晶発振子を接続する場合、 および外部クロック入力の場合の接続例については、 「第 24 章 EXTAL 3 入力 クロック発振器」を参照してください。 水晶発振子を接続します。また、EXTAL 端子は外部クロ ックを入力することもできます。水晶発振子を接続する 場合、および外部クロック入力の場合の接続例について は、「第 24 章 φ 17 出力 EXCL 17 入力 動作モード MD1 5 入力 コントロール MD0 6 クロック発振器」を参照してください。 システムクロック 外部デバイスにシステムクロックを供給します。 外部サブクロック入力 32.768kHz の外部サブクロックを入力してください。 モード端子 動作モードを設定します。MD1、MD0 端子と動作モー ドの関係は次のとおりです。これらの端子は動作中には 変化させないでください。 MD1 MD0 動作モード 26 0 1 1 0 1 1 内 容 ノーマル モード1 内蔵ROM無効拡張モード アドバンスト 内蔵ROM有効拡張モード モード2 シングルチップモード ノーマル 内蔵ROM有効拡張モード モード3 シングルチップモード 1. 分類 記号 ピン番号 入出力 概要 名称および機能 FP-100B TFP-100B システム制御 RES 1 入力 リセット入力 この端子が Low レベルになると、リセット状態となり ます。 RESO 100 出力 リセット出力 外部デバイスに対し、リセット信号を出力します。 STBY 8 入力 スタンバイ この端子が Low レベルになると、ハードウェアスタン バイモードに遷移します。 アドレスバス A23〜A16 10、11、20、21、 出力 A15〜A0 60〜67、72〜79 アドレスバス(アドバンスト) 16M バイト空間使用時にアドレスを出力します。 30、31、47、48 出力 アドレスバス アドレスを出力します。 データバス D15〜D8 89〜82 入出力 データバス(上位) 双方向データバスです。 8 ビットデータおよび 16 ビットデータ上位バイトとし て動作します。 D7〜D0 57、58、68、69、入出力 データバス(下位) 双方向データバスです。 80、81、90、91 16 ビットデータ下位バイトとして動作します。 バス制御 WAIT 16 入力 ウェイト 外部 3 ステートアドレス空間をアクセスするときに、バ スサイクルにウェイトステートの挿入を要求します。 RD 22 出力 リード この端子が Low レベルのとき、外部アドレス空間のリ ード状態であることを示します。 HWR 19 出力 ハイライト この端子が Low レベルのとき、外部アドレス空間のラ イト状態であることを示します。データバスの上位側が 有効です。 LWR 25 出力 ロウライト この端子が Low レベルのとき、外部アドレス空間のラ イト状態であることを示します。データバスの下位側が 有効です。 AS 18 出力 アドレスストローブ この端子が Low レベルのとき、アドレスバス上のアド /IOS レス出力が有効であることを示します。 割込み NMI 7 入力 ノンマスカブル割込み マスク不可能な割込みを要求します。 IRQ0〜 IRQ7 23〜25、97〜 99、34、35 入力 割込み要求 0〜7 マスク可能な割込みを要求します。 27 1. 概要 分類 記号 ピン番号 入出力 名称および機能 FP-100B TFP-100B 16 ビット FTCI 26 入力 フリーランニング フリーランニングカウンタ(FRC)に入力する外部クロ タイマ (FRT) FRT カウンタクロック入力 ック入力端子です。 FTOA 27 出力 FRT アウトプットコンペア A 出力 アウトプットコンペア A の出力端子です。 FTOB 34 出力 FRT アウトプットコンペア B 出力 アウトプットコンペア B の出力端子です。 FTIA 28 入力 FTIB 29 入力 FTIC 32 入力 FRT インプットキャプチャ A 入力 インプットキャプチャ A の入力端子です。 FRT インプットキャプチャ B 入力 インプットキャプチャ B の入力端子です。 FRT インプットキャプチャ C 入力 インプットキャプチャ C の入力端子です。 FTID 33 入力 FRT インプットキャプチャ D 入力 インプットキャプチャ D の入力端子です。 8 ビットタイマ TMO0 50 (TMR0、TMR1 TMO1 53 TMR0、TMR1 および TMRX の TMOX 35 コンペアマッチ出力端子です。 TMCI0 49 TMCI1 52 TMRX、TMRY) 出力 入力 コンペアマッチ出力 カウンタ外部クロック入力 TMR0 および TMR1 の カウンタに入力する外部クロックの入力端子です。 TMRI0 51 TMRI1 54 TMIX 26 TMIY 28 PWM タイマ PW15〜 60〜67、 (PWM) PW0 入力 カウンタ外部リセット入力 TMR0 および TMR1 のカウンタリセット入力端子です。 入力 カウンタ外部クロック入力兼リセット入力 TMRX および TMRY の カウンタクロック入力端子兼リセット入力端子です。 出力 PWM タイマ出力 PWM タイマのパルス出力端子です。 72〜79 14 ビット PWX0 55 出力 PWM タイマ PWX1 56 PWMX タイマ出力 シリアル TxD0 14 コミュニケーション TxD1 97 インタフェース TxD2 49 (SCI0、SCI1、 RxD0 13 SCI2) RxD1 98 RxD2 50 SCK0 12 SCK1 99 クロック入出力端子です。 SCK2 51 SCK0 の出力形式は、H8S/2148 シリーズ、H8S/2147N PWM D/A のパルス出力端子です。 (PWMX) 出力 トランスミットデータ データ出力端子です。 入力 レシーブデータ データ入力端子です。 入出力 シリアルクロック では NMOS プッシュプル、H8S/2144 シリーズでは CMOS 出力となります。 28 IrDA 付き SCI IrTxD 49 出力 IrDA トランスミットデータ/レシーブデータ (SCI2) IrRxD 50 入力 IrDA 用にエンコードされたデータの入出力端子です。 1. 分類 記号 ピン番号 入出力 概要 名称および機能 FP-100B TFP-100B キーボードバッファ PS2AC 31 コントローラ PS2BC 21 (PS2) PS2CC 11 端子です。 PS2AD 30 入出力 PS2 データ PS2BD 20 ホスト インタフェース PS2CD 10 HDB7〜 89〜82 入出力 PS2 クロック キーボードバッファコントローラの同期クロック入出力 キーボードバッファコントローラのデータ入出力端子で す。 入出力 ホストインタフェースデータバス ホストがホストインタフェースをアクセスするための双 HDB0 (HIF) 方向 8 ビットバスです。 CS1、CS2 18、94 ECS2、 25、81、80 入力 ホストインタフェースのチャネル1〜4 を選択するため CS3、CS4 IOR チップセレクト 1、2、3、4 の入力端子です。 22 入力 I/O リード ホストインタフェースからのリードを許可する入力端子 です。 IOW 19 入力 I/O ライト ホストインタフェースへのライトを許可する入力端子で す。 HA0 93 入力 コマンド/データ データアクセスかコマンドアクセスかを示すための入力 端子です。 GA20 94 出力 GATE A20 GATE A20 コントロール信号出力端子です。 HIRQ11 52 HIRQ1 53 HIRQ12 54 HIRQ3 91 HIRQ4 90 HIFSD 95 出力 ホスト割込み 11、1、12、3、4 ホストへの割込み要求出力端子です。 入力 ホストインタフェースシャットダウン ホストインタフェースの入出力端子をハイインピーダン ス/カットオフ状態にするための制御入力端子です。 キーボード KIN0〜 26〜29、 コントロール KIN15 32〜35、 マトリクスキーボードのための入力端子です。通常は 48、47、 P10〜P17 と P20〜P27 をキースキャン用出力として使 31、30、 用します。これにより、最大 16 出力×16 入力、256 キ 21、20、 ーのマトリクスが構成できます。 入力 キーボード入力 11、10 29 1. 概要 分類 記号 ピン番号 入出力 名称および機能 FP-100B TFP-100B A/D 変換器 AN7〜 (ADC) AN0 45〜38 入力 アナログ入力 A/D 変換器のアナログ入力端子です。 入力 拡張 A/D 入力 CIN0〜 26〜29、 CIN15 32〜35、 拡張 A/D 入力端子を A/D 変換器に接続可能です。ただ 48、47、 し、デジタル入出力端子と兼用であるため、精度が低下 31、30、 します。 21、20、 11、10 ADTRG 25 入力 DA0 44 出力 DA1 45 AVCC 37 A/D 変換外部トリガ入力 A/D 変換開始のための外部トリガ入力端子です。 D/A 変換器 (DAC) A/D 変換器 アナログ出力 D/A 変換器のアナログ出力端子です。 入力 D/A 変換器 アナログ電源 A/D 変換器、D/A 変換器のアナログ電源端子です。 A/D 変換器、D/A 変換器を使用しない場合、システムの 電源(+5V または+3V)に接続してください。 AVref 36 入力 アナログレファレンス電圧 A/D 変換器、D/A 変換器の基準電源端子です。 A/D 変換器、D/A 変換器を使用しない場合、システムの 電源(+5V または+3V)に接続してください。 AVSS 46 入力 アナロググランド A/D 変換器、D/A 変換器のグランド端子です。 システムの電源(0V)に接続してください。 タイマコネクション 入力 タイマコネクション入力 VSYNCI 28 HSYNCI 52 CSYNCI 54 VFBACKI 29 HFBACKI 26 VSYNCO 27 HSYNCO 53 CLAMPO 32 CBLANK 60 I2C バス SCL0 12 入出力 I2C クロック入出力(チャネル 0、1) インタフェース SCL1 99 I2C クロック入出力端子です。 タイマコネクションの同期信号入力端子です。 出力 タイマコネクション出力 タイマコネクションの同期信号出力端子です。 (IIC) バス駆動機能をもっています。 【オプション】 SCL0 の出力形式は NMOS オープンドレインです。 SDA0 16 SDA1 51 入出力 I2C データ入出力(チャネル 0、1) I2C のデータ入出力端子です。 バス駆動機能をもっています。 SDA0 の出力形式は NMOS オープンドレインです。 30 1. 分類 記号 ピン番号 入出力 概要 名称および機能 FP-100B TFP-100B I/O ポート P17〜P10 72〜79 入出力 ポート1 8 ビットの入出力端子です。P1DDR によって 1 ビットご とに入出力を指定できます。入力プルアップ MOS が内 蔵されています。また、LED 駆動が可能です。 P27〜P20 60〜67 入出力 ポート2 8 ビットの入出力端子です。P2DDR によって 1 ビットご とに入出力を指定できます。入力プルアップ MOS が内 蔵されています。また、LED 駆動が可能です。 P37〜P30 89〜82 入出力 ポート3 8 ビットの入出力端子です。P3DDR によって 1 ビットご とに入出力を指定できます。入力プルアップ MOS が内 蔵されています。また、LED 駆動が可能です。 P47〜P40 56〜49 入出力 ポート4 8 ビットの入出力端子です。P4DDR によって 1 ビットご とに入出力を指定できます。 P52〜P50 12〜14 入出力 ポート5 3 ビットの入出力端子です。P5DDR によって 1 ビットご とに入出力を指定できます。P52 は H8S/2148 シリー ズ、H8S/2147N では NMOS プッシュプル、H8S/2144 シリーズでは CMOS 出力です。 P67〜P60 35〜32 入出力 ポート6 8 ビットの入出力端子です。P6DDR によって 1 ビットご 29〜26 とに入出力を指定できます。入力プルアップ MOS が内 蔵されています。 P77〜P70 45〜38 P86〜P80 99〜93 入力 ポート7 8 ビットの入力端子です。 入出力 ポート8 7 ビットの入出力端子です。P8DDR によって 1 ビットご とに入出力を指定できます。 P97〜P90 16〜19 22〜25 入出力 ポート9 8 ビットの入出力端子です。P9DDR によって 1 ビットご とに入出力を指定できます(P96 を除く)。P97 は H8S/2148 シリーズ、H8S/2147N では NMOS プッシュプ ル、H8S/2144 シリーズでは CMOS 出力です。 PA7〜PA0 10、11、 入出力 ポートA 20、21、 8 ビットの入出力端子です。PADDR によって 1 ビットご 30、31、 とに入出力を指定できます。入力プルアップ MOS が内 47、48 蔵されています。 VCCB 駆動端子です。[H8S/2148 シリーズ、H8S/2147N のみ] PB7〜PB0 57、58、 入出力 ポートB 68、69、 8 ビットの入出力端子です。PBDDR によって 1 ビットご 80、81、 とに入出力を指定できます。入力プルアップ MOS が内 90、91 蔵されています。 31 1. 概要 【注】 * 1 HD 64F2 148A 、 HD 64F2 147A 、 HD 64F2 144A 、 HD 6432148S 、 HD 6432148SW 、 HD6432147S、HD6432147SW、HD6432144S、HD6432143S の各 F-ZTAT 版および各 マスク ROM 版では、VCC2 端子(9 ピン)は、VCL 端子となります。 32 2. CPU 第2章 2.1 目次 概要 ......................................................................................................................................... 35 2.1.1 特長 ........................................................................................................ 35 2.1.2 H8S/2600 CPU と H8S/2000 CPU との相違点................................................ 36 2.1.3 H8/300 CPU との相違点............................................................................. 37 2.1.4 H8/300H CPU との相違点 .......................................................................... 37 2.2 CPU 動作モード ........................................................................................................................ 38 2.3 アドレス空間 ............................................................................................................................ 43 2.4 レジスタ構成 ............................................................................................................................ 44 2.5 2.6 2.7 2.8 2.4.1 概要 ........................................................................................................ 44 2.4.2 汎用レジスタ ........................................................................................... 45 2.4.3 コントロールレジスタ.............................................................................. 46 2.4.4 CPU 内部レジスタの初期値....................................................................... 48 データ構成 ............................................................................................................................... 49 2.5.1 汎用レジスタのデータ構成 ....................................................................... 49 2.5.2 メモリ上でのデータ構成 .......................................................................... 51 命令セット ............................................................................................................................... 52 2.6.1 概要 ........................................................................................................ 52 2.6.2 命令とアドレッシングモードの組み合わせ................................................ 54 2.6.3 命令の機能別一覧 .................................................................................... 55 2.6.4 命令の基本フォーマット .......................................................................... 64 2.6.5 ビット操作命令使用上の注意.................................................................... 65 アドレッシングモードと実効アドレスの計算方法....................................................................... 66 2.7.1 アドレッシングモード.............................................................................. 66 2.7.2 実効アドレスの計算方法 .......................................................................... 70 処理状態................................................................................................................................... 74 2.8.1 概要 ........................................................................................................ 74 2.8.2 リセット状態 ........................................................................................... 75 2. CPU 2.9 2.10 34 2.8.3 例外処理状態 ........................................................................................... 76 2.8.4 プログラム実行状態 ................................................................................. 77 2.8.5 バス権解放状態........................................................................................ 78 2.8.6 低消費電力状態........................................................................................ 78 基本動作タイミング .................................................................................................................. 79 2.9.1 概要 ........................................................................................................ 79 2.9.2 内蔵メモリ(ROM、RAM) ..................................................................... 79 2.9.3 内蔵周辺モジュールアクセスタイミング ................................................... 80 2.9.4 外部アドレス空間アクセスタイミング ...................................................... 81 使用上の注意 ............................................................................................................................ 82 2.10.1 TAS 命令 ................................................................................................. 82 2.10.2 STM/LDM 命令 ........................................................................................ 82 2. CPU 2.1 概要 H8S/2000 CPU は、H8/300 CPU および H8/300H CPU の上位互換のアーキテクチャを持つ 内部 32 ビット構成の高速 CPU です。 本 CPU は、16 ビット×16 本の汎用レジスタを持ち、16M バイト(アーキテクチャ上は 4G バイト)のリニアなアドレス空間を扱うことができ、リアルタイム制御に最適です。 2.1.1 特長 本 CPU には、次の特長があります。 ■H8/300 CPU および H8/300H CPU の上位互換 ・H8/300 および H8/300H CPU オブジェクトプログラムを実行可能 ■汎用レジスタ方式 ・16 ビット×16 本(8 ビット×16 本、32 ビット×8 本としても使用可能) ■65 種類の基本命令 ・8/16/32 ビット演算命令 ・乗除算命令 ・強力なビット操作命令 ■8 種類のアドレッシングモード ・レジスタ直接(Rn) ・レジスタ間接(@ERn) ・ディスプレースメント付レジスタ間接(@(d:16,ERn)/@(d:32,ERn)) ・ポストインクリメント/プリデクリメントレジスタ間接(@ERn+/@-ERn) ・絶対アドレス(@aa:8/@aa:16/@aa:24/@aa:32) ・イミディエイト(#xx:8/#xx:16/#xx:32) ・プログラムカウンタ相対(@(d:8,PC)/@(d:16,PC)) ・メモリ間接(@@aa:8) ■16M バイトのアドレス空間 ・プログラム:16M バイト ・データ :16M バイト(アーキテクチャ上は 4G バイト) 35 2. CPU ■高速動作 ・頻出命令をすべて 1〜2 ステートで実行 ・最高動作周波数 :20MHz ・8/16/32 ビットレジスタ間加減算 :50ns ・8×8 ビットレジスタ間乗算 :600ns ・16÷8 ビットレジスタ間除算 :600ns ・16×16 ビットレジスタ間乗算 :1000ns ・32÷16 ビットレジスタ間除算 :1000ns ■2 種類の CPU 動作モード ・ノーマルモード/アドバンストモード ■低消費電力状態 ・SLEEP 命令により低消費電力状態に遷移 ・CPU 動作クロックを選択可能 2.1.2 H8S/2600 CPU と H8S/2000 CPU との相違点 H8S/2600 CPU および H8S/2000 CPU の相違点は、以下の通りです。 ■レジスタ構成 ・MAC レジスタは、H8S/2600 CPU のみサポートしています。 ■基本命令 ・MAC 、C LRMA C、LDMAC 、S TMAC の 4 命令は、H8S /2600 C PU のみサポートし ています。 ■実行ステート数 ・MULXU、MULXS 命令の実行ステート数 命令 MULXU MULXS ニーモニック 実行ステート数 H8S/2600 H8S/2000 MULXU.B Rs, Rd 3 12 MULXU.W Rs, ERd 4 20 MULXS.B Rs, Rd 4 13 MULXS.W Rs, ERd 5 21 そのほか、製品によって、アドレス空間や EXR レジスタの機能、低消費電力状態など が異なる場合があります。 36 2. CPU 2.1.3 H8/300 CPU との相違点 本 CPU は、H8/300 CPU に対して、次の点が追加、拡張されています。 ■汎用レジスタ、コントロールレジスタを拡張 ・16 ビット×8 本の拡張レジスタ、および 8 ビット×1 本のコントロールレジスタを 追加 ■アドレス空間を拡張 ・ノーマルモードのとき、H8/300 C PU と同一の 64k バイトのアドレス空間を使用可 能 ・アドバンストモードのとき、最大 16M バイトのアドレス空間を使用可能 ■アドレッシングモードを強化 ・16M バイトのアドレス空間を有効に使用可能 ■命令強化 ・ビット操作命令のアドレッシングモードを強化 ・符号付き乗除算命令などを追加 ・2 ビットシフト命令を追加 ・複数レジスタの退避/復帰命令を追加 ・テストアンドセット命令を追加 ■高速化 基本的な命令を 2 倍に高速化 2.1.4 H8/300H CPU との相違点 本 CPU は、H8/300H CPU に対して、次の点が追加、拡張されています。 ■コントロールレジスタを拡張 ・8 ビット×1 本のコントロールレジスタを追加 ■命令強化 ・ビット操作命令のアドレッシングモードを強化 ・2 ビットシフト命令を追加 ・複数レジスタの退避/復帰命令を追加 ・テストアンドセット命令を追加 ■高速化 ・基本的な命令を 2 倍に高速化 37 2. CPU 2.2 CPU 動作モード 本 C PU は、ノーマルモードおよびアドバンストモードの 2 つの C PU 動作モードをもっ ています。サポートするアドレス空間は、ノーマルモードの場合最大 64k バイト、アドバ ンストモードの場合 16M バイト(アーキテクチャ上はプログラム領域最大 16M バイト、 データ領域最大 4G バイト、合計で最大 4G バイト)となります。 各モードは LSI のモード端子によって選択されます。 ノーマルモード プログラム領域、データ領域合計 で最大64kバイトまでサポート アドバンストモード プログラム領域、データ領域合計 で最大16Mバイトまでサポート CPU動作モード 図 2.1 CPU 動作モード (1)ノーマルモード ノーマルモードでは例外処理ベクタ、スタックの構造が H8/300 CPU と同一になります。 (a)アドレス空間 最大 64k バイトをアクセス可能です。 (b)拡張レジスタ(En) 拡張レジスタ(E0〜E7)は、16 ビットレジスタとして、または 32 ビットレジスタの上 位 16 ビットとして使用できます。 拡張レジスタ En は、対応する汎用レジスタ Rn をアドレスレジスタとして使用している 場合でも、16 ビットレジスタとして任意の値を設定することができます(ただし、プリデ クリメントレジスタ間接(@-Rn)、ポストインクリメントレジスタ間接(@Rn+)により 汎用レジスタ R n が参照された場合、キャリ/ボローが発生すると、対応する拡張レジス タ En の内容に伝播しますので注意してください)。 38 2. CPU (c)命令セット 命令およびアドレシングモードはすべて使用できます。実効アドレス(EA)の下位 16 ビットのみが有効となります。 (d)例外処理ベクタテーブルおよびメモリ間接の分岐アドレス ノーマルモードでは、H'0000 から始まる先頭領域に例外処理ベクタテーブル領域が割り 当てられており、各 16 ビットの分岐先アドレスを格納します。ノーマルモードの例外処 理ベクタテーブルの構造を図 2.2 に示します。例外処理ベクタテーブルは「第 4 章 例外 処理」を参照してください。 H'0000 H'0001 H'0002 H'0003 H'0004 H'0005 H'0006 H'0007 H'0008 H'0009 H'000A H'000B 図 2.2 リセット例外処理ベクタ (システム予約領域) 例外処理ベクタテーブル 例外処理ベクタ1 例外処理ベクタ2 例外処理ベクタテーブル(ノーマルモード) メモリ間接(@@a a:8)は、JMP および JSR 命令で使用されます。命令コードに含まれ る 8 ビット絶対アドレスによりメモリ上のオペランドを指定し、この内容が分岐先アドレ スとなります。 ノーマルモードでは、オペランドは 16 ビット(ワード)となり、この 16 ビットが分岐 先アドレスとなります。なお、分岐先アドレスを格納できるのは、H'0000〜H'00FF の領域 であり、この範囲の先頭領域は例外処理ベクタテーブルと共通となっていますので注意し てください。 (e)スタック構造 サブルーチン分岐時の P C のスタック構造と、例外処理時の P C と C CR のスタックの構 造を図 2.3 に示します。EXR はスタックされません。詳細は「第 4 章 例外処理」を参照 してください。 39 2. CPU SP PC (16ビット) SP CCR CCR*1 PC (16ビット) (a)サブルーチン分岐時 (b)例外処理時 【注】*1 リターン時には無視されます。 図 2.3 ノーマルモードのスタック構造 (2)アドバンストモード (a)アドレス空間 最大 16M バイト(アーキテクチャ上はプログラム領域最大 16M バイト、データ領域最 大 4G バイト、合計最大 4G バイト)をリニアにアクセス可能です。 (b)拡張レジスタ(En) 拡張レジスタ(E0〜E7)は、16 ビットレジスタとして、または 32 ビットレジスタ・ア ドレスレジスタの上位 16 ビットとして使用できます。 (c)命令セット 命令およびアドレシングモードはすべて使用できます。 (d)例外処理ベクタテーブル、メモリ間接の分岐アドレス アドバンストモードでは、H'00000000 から始まる先頭領域に 32 ビット単位で例外処理 ベクタテーブル領域が割り当てられており、上位 8 ビットは無視され 24 ビットの分岐先 アドレスを格納します(図 2 .4 参照)。例外処理ベクタテーブルは「第 4 章 を参照してください。 40 例外処理」 2. H'00000000 CPU 予約 リセット例外処理ベクタ H'00000003 H'00000004 予約 H'00000007 H'00000008 例外処理ベクタテーブル H'0000000B H'0000000C H'00000010 (システム予約領域) 予約 例外処理ベクタ1 図 2.4 例外処理ベクタテーブル(アドバンストモード) メモリ間接(@@a a:8)は、JMP および JSR 命令で使用されます。命令コードに含まれ る 8 ビット絶対アドレスによりメモリ上のオペランドを指定し、この内容が分岐先アドレ スとなります。 アドバンストモードでは、オペランドは 32 ビット(ロングワード)となり、この 32 ビ ットが分岐先アドレスとなります。このうち、上位 8 ビットは予約領域となっており H'00 と見なされます。なお、分岐先アドレスを格納できるのは、H'00000000〜H'000000FF の領 域であり、この範囲の先頭領域は例外処理ベクタテーブルと共通となっていますので注意 してください。 (e)スタック構造 アドバンストモード時のサブルーチン分岐時の PC のスタック構造と、例外処理時の PC と CCR のスタックの構造を図 2.5 に示します。EXR はスタックされません。詳細は「第 4 章 例外処理」を参照してください。 41 2. CPU SP 図 2.5 42 予約 SP CCR PC (24ビット) PC (24ビット) (a)サブルーチン分岐時 (b)例外処理時 アドバンストモードのスタック構造 2. CPU 2.3 アドレス空間 本 CPU のメモリマップを図 2.6 に示します。本 CPU は、ノーマルモードのとき最大 64k バイト、またアドバンストモードのとき最大 16M バイト(アーキテクチャ上は 4G バイト) のアドレス空間をリニアに使用することができます。 H'0000 H'00000000 H'FFFF プログラム領域 H'00FFFFFF データ領域 本LSIでは 使用できません。 H'FFFFFFFF (a)ノーマルモード 図 2.6 (b)アドバンストモード メモリマップ 43 2. CPU 2.4 レジスタ構成 2.4.1 概要 本 CPU の内部レジスタ構成を図 2.7 に示します。これらのレジスタは、汎用レジスタと コントロールレジスタの 2 つに分類することができます。 汎用レジスタ(Rn)と拡張レジスタ(En) 15 0 7 0 7 0 ER0 E0 R0H R0L ER1 E1 R1H R1L ER2 E2 R2H R2L ER3 E3 R3H R3L ER4 E4 R4H R4L ER5 E5 R5H R5L ER6 E6 R6H R6L ER7 (SP) E7 R7H R7L コントロールレジスタ(CR) 23 0 PC 7 6 5 4 3 2 1 0 EXR* T − − − − I2 I1 I0 7 6 5 4 3 2 1 0 CCR I UI H U N Z V C 【記号説明】 :スタックポインタ SP :プログラムカウンタ PC EXR :エクステンドレジスタ :トレースビット T I2 〜I0 :割込みマスクビット CCR :コンディションコードレジスタ :割込みマスクビット I :ユーザビット/割込みマスクビット UI 【注】* 本LSIでは動作に影響を与えません。 図 2.7 44 CPU 内部レジスタ構成 H U N Z V C :ハーフキャリフラグ :ユーザビット :ネガティブフラグ :ゼロフラグ :オーバフローフラグ :キャリフラグ 2. CPU 2.4.2 汎用レジスタ 本 C PU は、32 ビット長の汎用レジスタを 8 本持っています。汎用レジスタは、すべて 同じ機能を持っており、アドレスレジスタもしくはデータレジスタとして使用することが できます。データレジスタとしては 32 ビット、16 ビット、および 8 ビットレジスタとし て使用できます。 アドレスレジスタおよび 32 ビットレジスタの場合、一括して汎用レジスタ ER (ER 0〜 ER7)として使用します。 16 ビットレジスタの場合は、汎用レジスタ ER を分割して汎用レジスタ E(E0〜E7)、 汎用レジスタ R (R 0〜R 7)として使用します。これらは同等の機能を持っており、16 ビ ットレジスタを最大 16 本まで使用することができます。なお、汎用レジスタ E(E0〜E7) を、特に拡張レジスタと呼ぶ場合があります。 8 ビットレジスタの場合は、汎用レジスタ R を分割して汎用レジスタ RH(R0H〜R7H)、 汎用レジスタ R L(R 0L〜R 7L)として使用します。これらは同等の機能を持っており、8 ビットレジスタを最大 16 本まで使用することができます。 汎用レジスタの使用方法を図 2.8 に示します。各レジスタ独立に使用方法を選択するこ とができます。 ● アドレスレジスタ ● 32ビットレジスタ ● 16ビットレジスタ ● 8ビットレジスタ 汎用レジスタE(拡張レジスタ) (E0〜E7) 汎用レジスタRH (R0H〜R7H) 汎用レジスタER (ER0〜ER7) 汎用レジスタR (R0〜R7) 汎用レジスタRL (R0L〜R7L) 図 2.8 汎用レジスタの使用方法 汎用レジスタ ER7 には、汎用レジスタとしての機能に加えて、スタックポインタ(SP) としての機能が割り当てられており、例外処理やサブルーチン分岐などで暗黙的に使用さ れます。スタックの状態を図 2.9 に示します。 45 2. CPU 空 領 域 SP (ER7) ス タ ッ ク 領 域 図 2.9 スタックの状態 2.4.3 コントロールレジスタ コントロールレジスタには、24 ビットのプログラムカウンタ(PC)、8 ビットのエクス テンドレジスタ(EXR)、8 ビットのコンディションコードレジスタ(CCR)があります。 (1)プログラムカウンタ(PC) 24 ビットのカウンタで、C PU が次に実行する命令のアドレスを示しています。C PU の 命令は、すべて 2 バイト(ワード)を単位としているため、最下位ビットは無効です(命 令コードのリード時には最下位ビットは 0 とみなされます)。 (2)エクステンドレジスタ(EXR) 8 ビットのレジスタです。本 LSI では動作に影響を与えません。 ビット 7:トレースビット(T) リザーブビットです。本 LSI では動作に影響を与えません。 ビット 6〜3:リザーブビット リザーブビットです。リードすると常に 1 が読み出されます。 ビット 2〜0:割込みマスクビット(I2〜I0) リザーブビットです。本 LSI では動作に影響を与えません。 46 2. CPU (3)コンディションコードレジスタ(CCR) 8 ビットのレジスタで、CPU の内部状態を示しています。割込みマスクビット(I)とハ ーフキャリ(H )、ネガティブ(N)、ゼロ (Z)、オーバフロー(V)、 キャリ(C )の 各フラグを含む 8 ビットで構成されています。 ビット 7:割込みマスクビット(I) 本ビットが 1 にセットされると、割込みがマスクされます。ただし、NMI およびアドレ スブレーク割込みは I ビットに関係なく受け付けられます。例外処理の実行が開始された ときに 1 にセットされます。詳細は「第 5 章 割込みコントローラ」を参照してください。 ビット 6:ユーザビット/割込みマスクビット(UI) ソフトウェア(LDC 、S TC、AND C、OR C 、XOR C 命令)でリード/ライトできます。 割込みマスクビットとしても使用可能です。詳細は「第 5 章 割込みコントローラ」を参 照してください。 ビット 5:ハーフキャリフラグ(H) ADD .B 、ADD X.B 、S UB. B 、S UBX .B 、C MP. B、NEG .B 命令の実行により、ビット 3 に キャリまたはボローが生じたとき 1 にセットされ、生じなかったとき 0 にクリアされます。 また、ADD .W 、S UB. W、C MP. W、NEG .W 命令の実行により、ビット 11 にキャリまたは ボローが生じたとき、もしくは ADD.L、SUB.L、CMP.L、NEG.L 命令の実行により、ビッ ト 27 にキャリまたはボローが生じたとき 1 にセットされ、生じなかったとき 0 にクリアさ れます。 ビット 4:ユーザビット(U) ソフトウェア(LDC、STC、ANDC、ORC、XORC 命令)でリード/ライトできます。 47 2. CPU ビット 3:ネガティブフラグ(N) データの最上位ビットを符号ビットとみなし、最上位ビットの値を格納します。 ビット 2:ゼロフラグ(Z) データがゼロのとき 1 にセットされ、ゼロ以外のとき 0 にクリアされます。 ビット 1:オーバフローフラグ(V) 算術演算命令の実行により、オーバフローが生じたとき 1 にセットされます。それ以外 のとき 0 にクリアされます。 ビット 0:キャリフラグ(C) 演算の実行により、キャリが生じたとき 1 にセットされ、生じなかったとき 0 にクリア されます。キャリには次の種類があります。 (a)加算結果のキャリ (b)減算結果のボロー (c)シフト/ローテートのキャリ また、キャリフラグには、ビットアキュムレータ機能があり、ビット操作命令で使用さ れます。 なお、命令によってはフラグが変化しない場合があります。 各命令ごとのフラグの変化については、「付録 A.1 命令セット一覧」を参照してくだ さい。 CCR は、LDC、STC、ANDC、ORC、XORC 命令で操作することができます。また、N、 Z、V、C の各フラグは、条件分岐命令(Bcc)で使用されます。 2.4.4 CPU 内部レジスタの初期値 リセット例外処理によって、C PU 内部レジスタのうち、P C はベクタからロードするこ とにより初期化されます。また EXR の T ビットは 0 にクリアされ、EXR 、C CR の I ビッ トは 1 にセットされますが、汎用レジスタと C CR の他のビットは初期化されません。S P (ER 7)の初期 値も不定です。したがって 、リセット直後に、MOV. L 命令 を使用して S P の初期化を行ってください。 48 2. CPU 2.5 データ構成 本 CPU は、1 ビット、4 ビット BCD、8 ビット(バイト)、16 ビット(ワード)、およ び 32 ビット(ロングワード)のデータを扱うことができます。 1 ビットデータはビット操作命令で扱われ、オペランドデータ(バイト)の第 n ビット (n=0,1,2,……,7)という形式でアクセスされます。 なお、DAA および DAS の 10 進補正命令では、バイトデータは 2 桁の 4 ビット B CD デ ータとなります。 2.5.1 汎用レジスタのデータ構成 汎用レジスタのデータ構成を図 2.10 に示します。 データ形 汎用レジスタ データイメージ 7 0 1ビットデータ RnH 7 6 5 4 3 2 1 0 1ビットデータ RnL Don't care 4ビットBCDデータ RnH 4ビットBCDデータ RnL Don't care 7 7 7 6 5 4 3 2 1 0 4 3 上位桁 0 下位桁 Don't care 7 RnH 7 4 3 上位桁 Don't care バイトデータ 0 0 下位桁 0 Don't care MSB バイトデータ LSB RnL 7 0 Don't care MSB LSB 図 2.10(1)汎用レジスタのデータ構成 49 2. CPU データ形 汎用レジスタ ワードデータ Rn データイメージ 15 0 MSB ワードデータ En 15 0 MSB ロングワードデータ LSB ERn 31 16 15 MSB En 【記号説明】 ERn : 汎用レジスタER En : 汎用レジスタE Rn : 汎用レジスタR RnH : 汎用レジスタRH RnL : 汎用レジスタRL MSB : 最上位ビット LSB : 最下位ビット 図 2.10(2)汎用レジスタのデータ構成 50 LSB 0 Rn LSB 2. CPU 2.5.2 メモリ上でのデータ構成 メモリ上でのデータ構成を図 2.11 に示します。 本 C PU は、メモリ上のワードデータ/ロングワードデータをアクセスすることができ ます。これらは、偶数番地から始まるデータに限定されます。奇数番地から始まるワード データ/ロングワードデータをアクセスした場合、アドレスの最下位ビットは 0 とみなさ れ、1 番地前から始まるデータをアクセスします。この場合、アドレスエラーは発生しま せん。命令コードについても同様です。 データ形 データイメージ アドレス 7 1ビットデータ L番地 バイトデータ L番地 MSB ワードデータ 2M番地 MSB 7 0 6 5 4 3 2M+1番地 ロングワードデータ 2 1 0 LSB LSB 2N番地 MSB 2N+1番地 2N+2番地 2N+3番地 LSB 図 2.11 メモリ上でのデータ構成 なお、SP(ER7)をアドレスレジスタとしてスタックをアクセスするときは、必ずワー ドサイズまたはロングワードサイズでアクセスしてください。 51 2. CPU 2.6 命令セット 2.6.1 概要 本 C PU の命令は合計 65 種類あり、各命令のもつ機能によって表 2 .1 に示すように分類 されます。 表 2.1 命令の分類 分 類 転送命令 命 令 MOV POP * 1、PUSH * 1 MOVFPE* 、MOVTPE* 算術演算命令 種類 BWL 5 WL LDM * 5、STM * 5 3 サイズ L 3 B ADD、SUB、CMP、NEG BWL ADDX、SUBX、DAA、DAS INC、DEC 19 B BWL ADDS、SUBS L MULXU、DIVXU、MULXS、DIVXS BW EXTU、EXTS WL TAS * 4 B 論理演算命令 AND、OR、XOR、NOT BWL 4 シフト命令 SHAL、SHAR、SHLL、SHLR、ROTL、ROTR、 BWL 8 B 14 − 5 − 9 − 1 ROTXL、ROTXR ビット操作命令 BSET、BCLR、BNOT、BTST、BLD、BILD、BST、 BIST、BAND、BIAND、BOR、BIOR、BXOR、BIXOR Bcc * 2、JMP、BSR、JSR、RTS 分岐命令 システム制御命令 TRAPA、RTE、SLEEP、LDC、STC、ANDC、ORC、 X ORC、NO P ブロック転送命令 EEPMOV 合計 65 種類 【注】 B:バイトサイズ W:ワードサイズ L:ロングワードサイズ *1 POP.W Rn、PUSH.W Rn は、それぞれ MOV.W @SP+,Rn、MOV.W Rn,@−SP と同一 です。 また、POP. L ER n、PU SH. L ER n は、それぞれ MOV. L @SP+, ERn、MOV. L ER n,@− SP と同一です。 *2 Bcc は条件分岐命令の総称です。 *3 本 LSI では使用できません。 52 2. CPU *4 TAS 命令を使用する場合は、レジスタ ER0、ER1、ER4、ER5 を使用してください。 *5 STM/LDM 命令を使用する場合は、レジスタ ER0〜ER6 を使用してください。 53 2. CPU 2.6.2 命令とアドレッシングモードの組み合わせ 本 CPU で使用できる命令とアドレッシングモードの組み合わせを表 2.2 に示します。 表 2.2 命令とアドレッシングモードの組み合わせ — BWL — — @@aa:8 BWL — — @(d:16, PC) BWL — — @(d:8, PC) @-ERn/@ERn+ BWL MOV — POP, PUSH — LDM*3, STM*3 MOVFPE*1, — 1 MOVTPE* ADD, CMP BWL SUB WL ADDX, SUBX B ADDS, SUBS — 算 INC, DEC — 術 DAA, DAS — 演 MULXU, — 算 DIVXU 命 MULXS, — 令 DIVXS NEG — EXTU, EXTS — TAS*2 — 論 AND, OR, BWL 理 XOR 命演 — 令 算 NOT シフト命令 — ビット操作命令 — 分 Bcc, BSR — 岐 JMP, JSR — 命 RTS — 令 TRAPA — シ RTE — ス SLEEP — テ LDC B ム 制 STC — 御 ANDC, 命 B ORC, XORC 令 NOP — ブロック転送命令 — @aa:32 @(d:32, ERn) #xx デ | タ 転 送 命 令 @aa:24 @(d:16, ERn) BWL — — 命 令 能 @aa:16 @ERn BWL — — 機 @aa:8 Rn アドレッシングモード B — — BWL — — — — — BWL — — — — — — — — — — — — WL L — — — — — — B — — — — — — BWL BWL B L BWL B — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — BW — — — — — — — — — — — — BW — — — — — — — — — — — — BWL WL — — — B — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — BWL — — — — — — — — — — — — BWL BWL B — — — — — — B B — — B — — — — — — W W — — — — — — — — — W W — — — — — — — — — W W — — — — — — — — — W W — — B — — — — — — — — — — B — — — — — — W W — — — — — — — — — — ◯ ◯ — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — B — — — — — — W W — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — BW ◯ ◯ ◯ ◯ ◯ ◯ ◯ 【記号説明】 B :バイト W :ワード L :ロングワード 【注】 *1 本 LSI では使用できません。 *2 TAS 命令を使用する場合は、レジスタ ER0、ER1、ER4、ER5 を使用してください。 *3 STM/LDM 命令を使用する場合は、レジスタ ER0〜ER6 を使用してください。 54 2. CPU 2.6.3 命令の機能別一覧 各命令の機能について表 2.3〜表 2.10 に示します。各表で使用しているオペレーション の記号の意味は次のとおりです。 《オペレーションの記号》 Rd 汎用レジスタ(デスティネーション側)* Rs 汎用レジスタ(ソース側)* Rn 汎用レジスタ* ERn 汎用レジスタ(32 ビットレジスタ) (EAd) デスティネーションオペランド (EAs) ソースオペランド EXR エクステンドレジスタ CCR コンディションコードレジスタ N CCR の N(ネガティブ)フラグ Z CCR の Z(ゼロ)フラグ V CCR の V(オーバフロー)フラグ C CCR の C(キャリ)フラグ PC プログラムカウンタ SP スタックポインタ #IMM イミディエイトデータ disp ディスプレースメント + 加算 − 減算 × 乗算 ÷ 除算 ∧ 論理積 ∨ 論理和 ⊕ 排他的論理和 → 転送 〜 反転論理(論理的補数) :8/:16/:24/:32 8/16/24/32 ビット長 【注】 * 汎用レジスタは、8 ビット(R0H〜R7H、R0L〜R7L)、16 ビット(R0〜R7、E0〜E7)、 または 32 ビットレジスタ(ER0〜ER7)です。 55 2. CPU 表 2.3 データ転送命令 サイズ* 1 命令 機 能 B/W/L (EAs)→Rd、Rs →(EAd) MOV 汎用レジスタと汎用レジスタ、または汎用レジスタとメモリ間でデータ 転送します。また、イミディエイトデータを汎用レジスタに転送します。 MOVFPE B 本 LSI では使用できません。 MOVTPE B 本 LSI では使用できません。 POP W/L @SP+→Rn スタックから汎用レジスタへデータを復帰します。 POP.W Rn は MOV.W @SP+, Rn と、また、 POP.L ERn は MOV.L @SP+, ERn と同一です。 PUSH W/L Rn→@-SP 汎用レジスタの内容をスタックに退避します。 PUSH.W Rn は MOV.W Rn, @-SP と、また、 PUSH.L ERn は MOV.L ERn, @-SP と同一です。 LDM* 2 L @SP+→Rn(レジスタ群) スタックから複数の汎用レジスタへデータを復帰します。 STM* 2 L Rn(レジスタ群)→@-SP 複数の汎用レジスタの内容をスタックに退避します。 【注】 *1 サイズはオペランドサイズを示します。 B:バイト W:ワード L:ロングワード *2 STM/LDM 命令を使用する場合は、レジスタ ER0〜ER6 を使用してください。 56 2. 表 2.4 命令 ADD CPU 算術演算命令 サイズ* 機 能 B/W/L Rd±Rs →Rd、Rd±#IMM→Rd 汎用レジスタと汎用レジスタ、または汎用レジスタとイミディエイトデ SUB ータ間の加減算を行います(バイトサイズでの汎用レジスタとイミディエ イトデータ間の減算はできません。SUBX 命令または ADD 命令を使用し てください)。 ADDX B Rd±Rs ±C→Rd、Rd±#IMM±C→Rd 汎用レジスタと汎用レジスタ、または汎用レジスタとイミディエイトデ SUBX ータ間のキャリ付きの加減算を行います。 INC B/W/L Rd±1→Rd、Rd±2→Rd 汎用レジスタに 1 または 2 を加減算します(バイトサイズで 1 の加減算 DEC のみ可能です)。 ADDS L 32 ビットレジスタに 1、2、または 4 を加減算します。 SUBS DAA Rd±1→Rd、Rd±2→Rd、Rd±4→Rd B Rd(10 進補正) →Rd 汎用レジスタ上の加減算結果を CCR を参照して 4 ビット BCD データに DAS 補正します。 MULXU B/W Rd×Rs →Rd 汎用レジスタと汎用レジスタ間の符号なし乗算を行います。 8 ビット×8 ビット→16 ビット、16 ビット×16 ビット→32 ビットの乗算 が可能です。 MULXS B/W Rd×Rs →Rd 汎用レジスタと汎用レジスタ間の符号付き乗算を行います。 8 ビット×8 ビット→16 ビット、16 ビット×16 ビット→32 ビットの乗算 が可能です。 DIVXU B/W Rd÷Rs →Rd 汎用レジスタと汎用レジスタ間の符号なし除算を行います。 16 ビット÷8 ビット→商 8 ビット余り 8 ビット、 32 ビット÷16 ビット→商 16 ビット余り 16 ビットの除算が可能です。 DIVXS B/W Rd÷Rs →Rd 汎用レジスタと汎用レジスタ間の符号付き除算を行います。 16 ビット÷8 ビット→商 8 ビット余り 8 ビット、 32 ビット÷16 ビット→商 16 ビット余り 16 ビットの除算が可能です。 57 2. CPU 命令 CMP サイズ* 1 機 能 B/W/L Rd−Rs 、Rd−#IMM 汎用レジスタと汎用レジスタ、または汎用レジスタとイミディエイトデ ータ間の比較を行い、その結果を CCR に反映します。 NEG B/W/L 0−Rd→Rd 汎用レジスタの内容の 2 の補数(算術的補数)をとります。 EXTU W/L Rd(ゼロ拡張) →Rd 16 ビットレジスタの下位 8 ビットをワードサイズにゼロ拡張します。ま たは、32 ビットレジスタの下位 16 ビットをロングワードサイズにゼロ拡 張します。 EXTS W/L Rd(符号拡張) →Rd 16 ビットレジスタの下位 8 ビットをワードサイズに符号拡張します。ま たは、32 ビットレジスタの下位 16 ビットをロングワードサイズに符号拡 張します。 TAS B @ERd−0、1 → (<ビット 7>of @ERd) * 2 メモリの内容をテストした後、最上位ビット(ビット 7)を 1 にセット します。 【注】 *1 サイズはオペランドサイズを示します。 B:バイト W:ワード L:ロングワード *2 STM/LDM 命令を使用する場合は、レジスタ ER0〜ER6 を使用してください。 58 2. 表 2.5 CPU 論理演算命令 命令 サイズ* AND 機 能 B/W/L Rd∧Rs→Rd、Rd∧#IMM→Rd 汎用レジスタと汎用レジスタ、または汎用レジスタとイミディエイトデ ータ間の論理積をとります。 OR B/W/L Rd∨Rs→Rd、Rd∨#IMM→Rd 汎用レジスタと汎用レジスタ、または汎用レジスタとイミディエイトデ ータ間の論理和をとります。 XOR B/W/L Rd⊕Rs→Rd、Rd⊕#IMM→Rd 汎用レジスタと汎用レジスタ、または汎用レジスタとイミディエイトデ ータ間の排他的論理和をとります。 B/W/L 〜Rd→Rd NOT 汎用レジスタの内容の 1 の補数(論理的補数)をとります。 【注】 * サイズはオペランドサイズを示します。 B:バイト W:ワード L:ロングワード 表 2.6 シフト命令 命令 サイズ* 機 能 B/W/L Rd(シフト処理) →Rd SHAL 汎用レジスタの内容を算術的にシフトします。 SHAR 1 ビットまたは 2 ビットのシフトが可能です。 B/W/L Rd(シフト処理) →Rd SHLL 汎用レジスタの内容を論理的にシフトします。 SHLR 1 ビットまたは 2 ビットのシフトが可能です。 B/W/L Rd(ローテート処理) →Rd ROTL 汎用レジスタの内容をローテートします。 ROTR 1 ビットまたは 2 ビットのローテートが可能です。 B/W/L Rd(ローテート処理) →Rd ROTXL 汎用レジスタの内容をキャリフラグを含めてローテートします。 ROTXR 1 ビットまたは 2 ビットのローテートが可能です。 【注】 * サイズはオペランドサイズを示します。 B:バイト W:ワード L:ロングワード 59 2. CPU 表 2.7 命令 BSET ビット操作命令 サイズ* B 機 能 1→(<ビット番号>of<EAd>) 汎用レジスタまたはメモリのオペランドの指定された 1 ビットを 1 にセ ットします。ビット番号は、3 ビットのイミディエイトデータまたは汎用 レジスタの内容下位 3 ビットで指定します。 BCLR B 0→(<ビット番号>of<EAd>) 汎用レジスタまたはメモリのオペランドの指定された 1 ビットを 0 にク リアします。ビット番号は、3 ビットのイミディエイトデータまたは汎用 レジスタの内容下位 3 ビットで指定します。 BNOT B 〜(<ビット番号>of<EAd>)→(<ビット番号>of<EAd>) 汎用レジスタまたはメモリのオペランドの指定された 1 ビットを反転し ます。ビット番号は、3 ビットのイミディエイトデータまたは汎用レジス タの内容下位 3 ビットで指定されます。 BTST B 〜(<ビット番号>of<EAd>)→Z 汎用レジスタまたはメモリのオペランドの指定された 1 ビットをテスト し、ゼロフラグに反映します。ビット番号は、3 ビットのイミディエイト データまたは汎用レジスタの内容下位 3 ビットで指定されます。 BAND B C∧(<ビット番号>of<EAd>)→C 汎用レジスタまたはメモリのオペランドの指定された 1 ビットとキャリ フラグとの論理積をとり、結果をキャリフラグに格納します。 BIAND B C∧〔〜(<ビット番号>of<EAd>)〕→C 汎用レジスタまたはメモリのオペランドの指定された 1 ビットを反転 し、キャリフラグとの論理積をとり、結果をキャリフラグに格納します。 ビット番号は、3 ビットのイミディエイトデータで指定されます。 BOR B C∨(<ビット番号>of<EAd>) →C 汎用レジスタまたはメモリのオペランドの指定された 1 ビットとキャリ フラグとの論理和をとり、結果をキャリフラグに格納します。 BIOR B C∨〔〜(<ビット番号>of<EAd>))〕→C 汎用レジスタまたはメモリのオペランドの指定された 1 ビットを反転 し、キャリフラグとの論理和をとり、結果をキャリフラグに格納します。 ビット番号は、3 ビットのイミディエイトデータで指定されます。 60 2. 命令 サイズ* BXOR B 機 CPU 能 C⊕(<ビット番号>of<EAd>) →C 汎用レジスタまたはメモリのオペランドの指定された 1 ビットとキャリ フラグとの排他的論理和をとり、結果をキャリフラグに格納します。 BIXOR B C⊕〔〜(<ビット番号>of<EAd>)〕→C 汎用レジスタまたはメモリのオペランドの指定された 1 ビットを反転 し、キャリフラグとの排他的論理和をとり、結果をキャリフラグに格納し ます。 ビット番号は、3 ビットのイミディエイトデータで指定されます。 BLD B (<ビット番号>of<EAd>) →C 汎用レジスタまたはメモリのオペランドの指定された 1 ビットをキャリ フラグに転送します。 BILD B 〜(<ビット番号>of<EAd>) →C 汎用レジスタまたはメモリのオペランドの指定された 1 ビットを反転 し、キャリフラグに転送します。 ビット番号は、3 ビットのイミディエイトデータで指定されます。 BST B C→(<ビット番号>of<EAd>) 汎用レジスタまたはメモリのオペランドの指定された 1 ビットに、キャ リフラグの内容を転送します。 BIST B 〜C→(<ビット番号>of<EAd>) 汎用レジスタまたはメモリのオペランドの指定された 1 ビットに、キャ リフラグを反転して転送します。 ビット番号は、3 ビットのイミディエイトデータで指定されます。 【注】 * サイズはオペランドサイズを示します。 B:バイト 61 2. CPU 表 2.8 命令 Bcc 分岐命令 サイズ − 機 能 指定した条件が成立しているとき、指定されたアドレスへ分岐します。 分岐条件を下表に示します。 ニーモニック 62 説 明 分岐条件 BRA (BT) Always (True) Always BRN (BF) Never (False) Never BHI HIgh C∨Z=0 BLS Low or Same C∨Z=1 BCC (BHS) Carry Clear (High or Same) C=0 BCS (BLO) Carry Set (LOw) C=1 BNE Not Equal Z=0 BEQ EQual Z=1 BVC oVerflow Clear V=0 BVS oVerflow Set V=1 BPL PLus N=0 BMI MInus N=1 BGE Greater or Equal N⊕V=0 BLT Less Than N⊕V=1 BGT Greater Than Z∨(N⊕V)=0 BLE Less or Equal Z∨(N⊕V)=1 JMP − 指定されたアドレスへ無条件に分岐します。 BSR − 指定されたアドレスへサブルーチン分岐します。 JSR − 指定されたアドレスへサブルーチン分岐します。 RTS − サブルーチンから復帰します。 2. 表 2.9 CPU システム制御命令 命令 サイズ* 機 TRAPA − 命令トラップ例外処理を行います。 RTE − 例外処理ルーチンから復帰します。 SLEEP − 低消費電力状態に遷移します。 LDC B/W 能 (EAs)→CCR、(EAs)→EXR 汎用レジスタまたはメモリの内容を CCR、EXR に転送します。また、 イミディエイトデータを CCR、EXR に転送します。CCR、EXR は 8 ビッ トですが、メモリと CCR、EXR 間の転送はワードサイズで行われ、上位 8 ビットが有効になります。 STC B/W CCR→(EAd)、EXR→(EAd) CCR、EXR の内容を汎用レジスタまたはメモリに転送します。CCR、 EXR は 8 ビットですが、CCR、EXR とメモリ間の転送はワードサイズで 行われ、上位 8 ビットが有効になります。 ANDC B CCR∧#IMM→CCR、EXR∧#IMM→EXR CCR、EXR とイミディエイトデータの論理積をとります。 ORC B CCR∨#IMM→CCR、EXR∨#IMM→EXR CCR、EXR とイミディエイトデータの論理和をとります。 XORC B CCR⊕#IMM→CCR、EXR⊕#IMM→EXR CCR、EXR とイミディエイトデータの排他的論理和をとります。 − NOP PC+2→PC PC のインクリメントだけを行います。 【注】 * サイズはオペランドサイズを示します。 B:バイト W:ワード 63 2. CPU 表 2.10 ブロック転送命令 命令 サイズ* EEPMOV.B − 機 能 if R4L≠0 then Repeat @ER5+→@ER6+ R4L−1→R4L Until R4L=0 else next; EEPMOV.W − if R4≠0 then Repeat @ER5+→@ER6+ R4−1→R4 Until R4=0 else next; ブロック転送命令です。ER5 で示されるアドレスから始まり、R4L ま たは R4 で指定されるバイト数のデータを、ER6 で示されるアドレスの ロケーションへ転送します。転送終了後、次の命令を実行します。 2.6.4 命令の基本フォーマット 本 CPU の命令は、2 バイト(ワード)を単位にしています。各命令はオペレーションフ ィールド(op)、レジスタフィールド(r)、EA 拡張部(EA)、およびコンディションフ ィールド(c c)から構成されています。 図 2.12 に命令フォーマットの例を示します。 64 2. CPU (1)オペレーションフィールドのみ op NOP、RTSなど (2)オペレーションフィールドとレジスタフィールド op rm rn ADD.B Rn, Rmなど (3)オペレーションフィールド、レジスタフィールドおよびEA拡張部 op rn rm MOV.B @(d:16, Rn), Rmなど EA(disp) (4)オペレーションフィールド、EA拡張部およびコンディションフィールド op cc EA(disp) BRA d:16など 図 2.12 命令フォーマットの例 (1)オペレーションフィールド 命令の機能を表し、アドレッシングモードの指定、オペランドの処理内容を指定します。 命令の先頭 4 ビットを必ず含みます。2 つのオペレーションフィールドを持つ場合もあり ます。 (2)レジスタフィールド 汎用レジスタを指定します。アドレスレジスタのとき 3 ビット、データレジスタのとき 3 ビットまたは 4 ビットです。2 つのレジスタフィールドを持つ場合、またはレジスタフ ィールドを持たない場合もあります。 (3)EA 拡張部 イミディエイトデータ、絶対アドレスまたはディスプレースメントを指定します。8 ビ ット、16 ビット、または 32 ビットです。 (4)コンディションフィールド Bcc 命令の分岐条件を指定します。 2.6.5 ビット操作命令使用上の注意 BSET、BCLR、BNOT、BST、BIST の各命令は、バイト単位でデータをリードし、ビッ ト操作後に再びバイト単位でデータをライトします。したがって、ライト専用ビットを含 むレジスタ、またはポートに対してこれらの命令を使用する場合には注意が必要です。 また、内部 I/O レジスタのフラグを 0 にクリアするために、B CLR 命令を使用すること ができます。この場合、割込み処理ルーチンなどで当該フラグが 1 にセットされているこ とが明らかであれば、事前に当該フラグをリードする必要はありません。 65 2. CPU 2.7 アドレッシングモードと実効アドレスの計算方法 2.7.1 アドレッシングモード 本 CPU は表 2.11 に示すように、8 種類のアドレッシングモードをサポートしています。 命令ごとに、使用できるアドレッシングモードは異なります。 演算命令では、レジスタ直接、およびイミディエイトが使用できます。 転送命令では、プログラムカウンタ相対とメモリ間接を除くすべてのアドレッシングモ ードが使用できます。 また、ビット操作命令では、オペランドの指定にレジスタ直接、レジスタ間接、および 絶対アドレスが使用できます。さらに、オペランド中のビット番号を指定するためにレジ スタ直接(B SET、B CLR 、B NOT、B TST の各命令)、およびイミディエイト(3 ビット) が独立して使用できます。 表 2.11 アドレッシングモード一覧表 アドレッシングモード No. (1)レジスタ直接 記号 1 レジスタ直接 Rn 2 レジスタ間接 @ERn 3 ディスプレースメント付きレジスタ間接 @(d:16,ERn)/@(d:32,ERn) 4 ポストインクリメントレジスタ間接 @ERn+ プリデクリメントレジスタ間接 @-ERn 5 絶対アドレス @aa:8/@aa:16/@aa:24/@aa:32 6 イミディエイト #xx:8/#xx:16/#xx:32 7 プログラムカウンタ相対 @(d:8,PC)/@(d:16,PC) 8 メモリ間接 @@aa:8 Rn 命令コードのレジスタフィールドで指定されるレジスタ(8 ビット、16 ビットまたは 32 ビット)がオペランドとなります。 8 ビットレジスタとしては R0H〜R7H、R0L〜R7L を指定可能です。 16 ビットレジスタとしては R0〜R7、E0〜E7 を指定可能です。 32 ビットレジスタとしては ER0〜ER7 を指定可能です。 66 2. (2)レジスタ間接 CPU @ERn 命令コードのレジスタフィールドで指定されるアドレスレジスタ(ERn)の内容をアド レスとしてメモリ上のオペランドを指定します。 プログラム領域としては、下位 24 ビットが有効になり、上位 8 ビットはすべて 0(H'00) とみなされます。 (3)ディスプレースメント付きレジスタ間接 @(d:16,ERn)/@(d:32,ERn) 命令コードのレジスタフィールドで指定されるアドレスレジスタ(ERn)の内容に命令 コード中に含まれる 16 ビットディスプレースメントまたは 32ビットディスプレースメン トを加算した内容をアドレスとしてメモリ上のオペランドを指定します。加算に際して、 16 ビットディスプレースメントは符号拡張されます。 (4)ポストインクリメントレジスタ間接 @ERn+/プリデクリメントレジスタ間接 @-ERn (a)ポストインクリメントレジスタ間接 @ERn+ 命令コードのレジスタフィールドで指定されるアドレスレジスタ(ERn)の内容をアド レスとしてメモリ上のオペランドを指定します。その後、アドレスレジスタの内容に 1、2 または 4 が加算され、加算結果がアドレスレジスタに格納されます。バイトサイズでは 1、 ワードサイズでは 2、ロングワードサイズでは 4 がそれぞれ加算されます。ワードサイズ またはロングワードサイズのとき、アドレスレジスタの内容が偶数となるようにしてくだ さい。 (b)プリデクリメントレジスタ間接 @-ERn 命令コードのレジスタフィールドで指定されるアドレスレジスタ(ERn)の内容から 1、 2 または 4 を減算した内容をアドレスとしてメモリ上のオペランドを指定します。その後、 減算結果がアドレスレジスタに格納されます。バイトサイズでは 1、ワードサイズでは 2、 ロングワードサイズでは 4 がそれぞれ減算されます。ワードサイズまたはロングワードサ イズのとき、アドレスレジスタの内容が偶数になるようにしてください。 67 2. CPU (5)絶対アドレス @aa:8/@aa:16/@aa:24/@aa:32 命令コード中に含まれる絶対アドレスで、メモリ上のオペランドを指定します。 絶対アドレスは 8 ビット(@aa:8)、16 ビット(@aa:16)、24 ビット(@aa:24)、また は 32 ビット(@aa:32)です。 データ領域としては、8 ビット(@aa:8)、16 ビット(@aa:16)、または 32 ビット(@aa:32) を使用します。8 ビット絶対アドレスの場合、上位 24 ビットはすべて 1(H'FFFF)となり ます。16 ビット絶対アドレスの場合、上位 16 ビットは符号拡張されます。32 ビット絶対 アドレスの場合、全アドレス空間をアクセスできます。 プログラム領域としては 24 ビット(@a a:24)を使用します。上位 8 ビットはすべて 0 (H'00)となります。 絶対アドレスのアクセス範囲を表 2.12 に示します。 表 2.12 絶対アドレスのアクセス範囲 絶対アドレス データ領域 8 ビット ノーマルモード アドバンストモード H'FF00〜H'FFFF H'FFFF00〜H'FFFFFF H'0000〜H'FFFF H'000000〜H007FFF、H'FF8000〜H'FFFFFF (@aa:8) 16 ビット (@aa:16) 32 ビット H'000000〜H'FFFFFF (@aa:32) プログラム領域 24 ビット (@aa:24) (6)イミディエイト #xx:8/#xx:16/#xx:32 命令コード中に含まれる 8 ビット(#xx:8)、16 ビット(#xx:16)、または 32 ビット(#xx:32) のデータを直接オペランドとして使用します。 なお、ADDS、SUBS、INC、DEC 命令では、イミディエイトデータが命令コード中に暗 黙的に含まれます。ビット操作命令では、ビット番号を指定するための 3 ビットのイミデ ィエイトデータが、命令コード中に含まれる場合があります。また、TR AP A 命令ではベ クタアドレスを指定するための 2 ビットのイミディエイトデータが、命令コードの中に含 まれます。 68 2. (7)プログラムカウンタ相対 CPU @(d:8, PC)/@(d:16, PC) B cc 、B SR 命令で使用されます。P C の内容で指定される 24 ビットのアドレスに、命令 コード中に含まれる 8 ビット、または 16 ビットディスプレースメントを加算して 24 ビッ トの分岐アドレスを生成します。加算に際して、ディスプレースメントは 24 ビットに符 号拡張されます。加算結果は下位 24 ビットが有効になり、上位 8 ビットはすべて 0(H'00) とみなされます。また加算される P C の内容は次の命令の先頭アドレスとなっていますの で、分岐可能範囲は分岐命令に対して−126〜+128 バイト(−63〜+64 ワード)または −32766〜+32768 バイト(−16383〜+16384 ワード)です。このとき、加算結果が偶数 となるようにしてください。 (8)メモリ間接 @@aa:8 JMP、JSR 命令で使用されます。命令コード中に含まれる 8 ビット絶対アドレスでメモ リ上のオペランドを指定し、この内容を分岐アドレスとして分岐します。 8 ビット絶対アドレスの上位のビットはすべて 0 となりますので、分岐アドレスを格納 できるのは 0〜255(ノーマルモードのとき H'0000〜H'00F F、アドバンストモードのとき H'000000〜H'0000FF)番地です。 ノーマルモードの場合は、メモリ上のオペランドはワードサイズで指定し、16 ビットの 分岐アドレスを生成します。 また、アドバンストモードの場合は、メモリ上のオペランドはロングワードサイズで指 定します。このうち先頭の 1 バイトはすべて 0(H'00)とみなされます。 ただし、分岐アドレスを格納可能なアドレスの先頭領域は例外処理ベクタ領域と共通に なっていますから注意してください。詳細は「第 4 章 @aa:8で指定 分岐アドレス 例外処理」を参照してください。 @aa:8で指定 予 約 分岐アドレス (a)ノーマルモード (b)アドバンストモード 図 2.13 メモリ間接による分岐アドレスの指定 69 2. CPU ワードサイズ、ロングワードサイズでメモリを指定する場合、および分岐アドレスを指 定する場合に奇数アドレスを指定すると、最下位ビットは 0 とみなされ、1 番地前から始 まるデータまたは命令コードをアクセスします(「2.5.2 メモリ上でのデータ構成」を参 照してください)。 2.7.2 実効アドレスの計算方法 各ア ドレッシ ングモ ードにお ける実 効アド レス(EA :Eff ec tive Addr ess )の計算 法を 表 2.13 に示します。 ノーマルモードの場合、実効アドレスの上位 8 ビットは無視され、16 ビットのアドレス となります。 70 4 3 2 1 No rm rn r r disp r op r ・プリデクリメントレジスタ間接 op @-ERn ポストインクリメントレジスタ間接/プリデクリメントレジスタ間接 ・ポストインクリメントレジスタ間接 @ERn+ op ディスプレースメント付レジスタ間接 @(d:16,ERn) / @(d:32,ERn) op レジスタ間接(@ERn) op レジスタ直接(Rn) アドレッシングモード・命令フォーマット 表2.13 実行アドレスの計算方法 disp 加減算される値 1 2 4 1、2または4 汎用レジスタの内容 1、2または4 汎用レジスタの内容 符号拡張 汎用レジスタの内容 汎用レジスタの内容 オペランドサイズ バイト ワード ロングワード 31 31 31 31 31 実効アドレス計算方法 0 0 0 0 0 24 23 24 23 24 23 24 23 don't care 31 don't care 31 don't care 31 don't care 31 オペランドは汎用レジスタの内容です。 実効アドレス(EA) 0 0 0 0 2. CPU 71 72 6 5 No op op abs abs op #xx:8/#xx:16/#xx:32 イミディエイト @aa:32 op @aa:24 @aa:16 op @aa:8 絶対アドレス abs IMM abs アドレッシングモード・命令フォーマット 実効アドレス計算方法 24 23 24 23 16 15 H'FFFF 24 23 24 23 8 7 オペランドはイミディエイトデータです。 don't care 31 don't care 31 don't care 符号拡張 31 don't care 31 実効アドレス(EA) 0 0 0 0 2. CPU 8 7 No @@aa:8 abs op abs ・アドバンストモード op ・ノーマルモード メモリ間接 op プログラムカウンタ相対 @(d:8,PC)/@(d:16,PC) disp アドレッシングモード・命令フォーマット 31 31 31 abs 8 7 abs メモリの内容 メモリの内容 H'000000 15 8 7 disp PCの内容 H'000000 符号拡張 23 23 実効アドレス計算方法 0 0 0 0 0 0 24 23 24 23 24 23 don't care 31 don't care 31 don't care 31 H'00 16 15 実効アドレス(EA) 0 0 0 2. CPU 73 2. CPU 2.8 処理状態 2.8.1 概要 本 LSI の処理状態には、リセット状態、例外処理状態、プログラム実行状態、バス権解 放状態、および低消費電力状態の 5 種類があります。 処理状態の分類を図 2.14 に、処理状態間の遷移を図 2.15 に示します。 リセット状態 CPUおよび内蔵周辺モジュールがすべて初期化され、停止している状態 例外処理状態 リセット、割込み、トラップ命令の例外処理要因によって、通常の処理状態 の流れを変える過渡的な状態 処理状態 プログラム実行状態 CPUがプログラムを順次実行している状態 バス権解放状態 CPU以外のバスマスタからのバス権要求信号によりバスを解放している状態 スリープモード 低消費電力状態 CPUの動作を停止し、 消費電力を低下させた 状態* 【注】* ハードウェアスタンバイ モード 低消費電力状態には、このほかに中速モード、モジュールストップモード、 サブアクティブモード、サブスリープモード、ウォッチモードがあります。 図 2.14 処理状態の分類 74 ソフトウェアスタンバイ モード 2. CPU バス権要求終了 バス権要求発生 終 了 例 外 処 理 要 処 例 外 L S SO SL SB N= EE Y= 0 P命 0、 、 令 割 スリープモード 要求 込み 発生 外部割込み要求発生 例外処理状態 、 =0 ON 、 LS S=0 1、 PS BY= 命令 SS EEP SL 理 バス権解放状態 プログラム実行状態 求 発 生 了 終 生 求 発 要 求 権 要 ス 権 バ ス バ ソフトウェアスタンバイモード RES=High リセット状態 *1 STBY=High、RES=Low ハードウェアスタンバイモード*2 低消費電力状態*3 【注】*1 ハードウェアスタンバイモードを除くすべての状態において、RES端子が Lowレベルになる とリセット状態に遷移します。また、ウォッチドッグタイマのオーバフローによっても、リ セット状態に遷移させることができます。 *2 すべての状態においてSTBY端子がLowレベルになると、ハードウェアスタンバイモードに 遷移します。 *3 このほかに、ウォッチモード、サブアクティブモード、サブスリープモードなどがあります。 詳細は「第25章 低消費電力状態」を参照してください。 図 2.15 状態遷移図 2.8.2 リセット状態 R ES 端子が Low レベルになると、実行中の処理はすべて中止され、C PU はリセット状 態になります。リセット状態ではすべての割込みが禁止されます。 RES 端子を Low レベルから High レベルにすると、リセット例外処理を開始します。 ウォッチドッグタイマのオーバフローによって、リセット状態とすることもできます。 詳細は「第 14 章 ウォッチドッグタイマ(WDT)」を参照してください。 75 2. CPU 2.8.3 例外処理状態 例外処理状態は、リセット、割込み、またはトラップ命令の例外処理要因によって起動 され、CPU が通常の処理状態の流れを変え、例外処理ベクタテーブルからスタートアドレ ス(ベクタ)を取り出し、そのスタートアドレスに分岐する過渡的な状態です。 (1)例外処理の種類と優先度 例外処理要因には、リセット、割込み、およびトラップ命令があります。表 2 .1 4 に、 例外処理の種類と優先度を示します。トラップ命令例外処理は、プログラム実行状態で常 に受け付けられます。 S YSC R で設定される割込み制御モードによっ て、例外処理やスタックの構造が異なり ます。 表 2.14 例外処理の種類と優先度 優先度 例外処理要因 高 リセット 例外処理検出タイミング クロック同期 例外処理開始タイミング RES 端子の Low レベルから High レ ベルへの遷移時、または、ウォッチ ドックタイマのオーバフローにより 例外処理を開始します。 割込み 命令実行終了時または 割込み要求が発生すると、命令実行 例外処理終了時* 1 終了時または例外処理終了時に例外 処理を開始します。 低 トラップ命令 TRAPA 命令実行時 TRAPA 命令を実行すると、例外処理 を開始します。* 2 【注】 *1 ANDC、ORC、XORC、LDC 命令の実行終了時点、またはリセット例外処理の終了時点 では割込みの検出を行いません。 *2 トラップ命令例外処理は、プログラム実行状態で常に受け付けられます。 76 2. CPU (2)リセット例外処理 RES 端子を Low レベルにして、リセット状態とした後、RES 端子を High レベルにする と、リセット例外処理を開始します。 リセット例外処理が起動されると、CPU は、例外処理ベクタテーブルからスタートアド レス(ベクタ)を取り出し、そのスタートアドレスからプログラムの実行を開始します。 リセット例外処理実行中、および終了後は、NMI を含めたすべての割込みが禁止されま す。 (3)割込み例外処理およびトラップ命令例外処理 割込み例外処理およびトラップ命令例外処理が起動されると、CPU は、SP(ER7)を参 照して プログラムカ ウンタとコ ントロール レジスタをス タックに退 避します。そ して、 CPU はコントロールレジスタの割込みマスクビットを再設定します。次に、例外処理ベク タテーブルからスタートアドレス(ベクタ)を取り出し、そのスタートアドレスからプロ グラムの実行を開始します。 例外処理終了後のスタックの状態を図 2.16 に示します。 アドバンストモード ノーマルモード SP CCR CCR* SP PC (16ビット) 【注】* CCR PC (24ビット) リターン時には無視されます。 図 2.16 例外処理終了後のスタックの状態(例) 2.8.4 プログラム実行状態 CPU がプログラムを順次実行している状態です。 77 2. CPU 2.8.5 バス権解放状態 CPU 以外のバスマスタによるバス権要求に対して、バス権を解放した状態です。バス権 解放状態では、CPU は内部動作を除き動作を停止します。 なお、CPU 以外のバスマスタにはデータトランスファコントローラ(DTC)があります。 詳細は、「第 6 章 バスコントローラ」を参照してください。 2.8.6 低消費電力状態 低消費電力状態には、C PU の動作を停止し た状態と、C PU の動作を停止しない状態が あります。CPU の動作を停止した低消費電力状態には、スリープモード、ソフトウェアス タンバイモード、ハードウェアスタンバイモード、サブスリープモード、ウォッチモード があります。 また、その他の低消費電力状態には、中速モード、モジュールストップモード、サブア クティブモードがあります。中速モードでは C PU およびそのほかのバスマスタが中速ク ロックで動作します。モジュールストップモードでは、モジュール単位で、CPU 以外のモ ジュールの動作を停止します。サブアクティブモード、サブスリープモード、ウォッチモ ードはサブクロック入力を利用した低消費電力状態です。詳細は「第 2 5 章 低消費電力 状態」を参照してください。 (1)スリープモード スリープモードには、SBYCR の SSBY ビット=0、LPWRCR の LSON ビット=0 の状態 で、S LEEP 命令を実行することによって遷移 します。スリープモードでは、C PU の動作 は SLEEP 命令実行直後で停止します。CPU の内部レジスタの内容は保持されます。 (2)ソフトウェアスタンバイモード ソフトウェアスタンバイモードには、S BYC R の S SB Y ビット=1、LP WR CR の LS ON ビット=0、TC SR (WD T1)の P SS ビット=0 の状態で、S LEEP 命令を実行することによ って遷移します。ソフトウェアスタンバイモードでは、CPU およびクロックをはじめ MCU のすべての動作が停止します。規定の電圧が与えられている限り、CPU の内部レジスタの 内容および内蔵 RAM の内容は保持されます。また、I/O ポートの状態も保持されます。 (3)ハードウェアスタンバイモード ハードウェアスタンバイモードには、STBY 端子を Low レベルにすることによって遷移 します。ハードウェアスタンバイモードでは、CPU およびクロックをはじめ MCU のすべ ての動作が停止します。内蔵周辺モジュールはリセット状態になりますが、規定の電圧が 与えられている限り、内蔵 RAM の内容は保持されます。 78 2. CPU 2.9 基本動作タイミング 2.9.1 概要 本 C PU は、システムクロック(φ)を基準に動作しています。φの立ち上がりから次 の立ち上がりまでの 1 単位をステートと呼びます。メモリサイクルまたはバスサイクルは、 1、2 または 3 ステートで構成され、内蔵メモリ、内蔵周辺モジュール、または外部アドレ ス空間によってそれぞれ異なるアクセスを行います。 2.9.2 内蔵メモリ(ROM、RAM) 内蔵メモリのアクセスは 1 ステートアクセスを行います。このとき、データバス幅は 16 ビットで、バイトおよびワードサイズアクセスが可能です。内蔵メモリアクセスサイクル を図 2.17 に、端子状態を図 2.18 に示します。 バスサイクル T1 φ 内部アドレスバス アドレス 内部リード信号 リード時 内部データバス リードデータ 内部ライト信号 ライト時 内部データバス ライトデータ 図 2.17 内蔵メモリアクセスサイクル 79 2. CPU バスサイクル T1 φ アドレスバス 保持 AS Highレベル RD Highレベル HWR、LWR Highレベル データバス ハイインピーダンス 図 2.18 内蔵メモリアクセス時の端子状態 2.9.3 内蔵周辺モジュールアクセスタイミング 内蔵周辺モジュールのアクセスは 2 ステートで行われます。このとき、データバス幅は 8 ビットまたは 16 ビットで内部 I/O レジスタにより異なります。内蔵周辺モジュールアク セスタイミングを図 2.19、端子状態を図 2.20 に示します。 バスサイクル T2 T1 φ 内部アドレスバス アドレス 内部リード信号 リード時 内部データバス リードデータ 内部ライト信号 ライト時 内部データバス 図 2.19 内蔵周辺モジュールアクセスサイクル 80 ライトデータ 2. CPU バスサイクル T1 T2 φ アドレスバス 保持 AS Highレベル RD Highレベル HWR、LWR Highレベル データバス ハイインピーダンス 図 2.20 内蔵周辺モジュールアクセス時の端子状態 2.9.4 外部アドレス空間アクセスタイミング 外部アドレス空間のアクセスを行うときのデータバス幅は 8 ビットまたは 16 ビット、 バスサイクルは 2 ステートまたは 3 ステートです。3 ステートアクセスではウェイトステ ートを挿入することができます。詳細は「第 6 章 バスコントローラ」を参照してくださ い。 81 2. CPU 2.10 使用上の注意 2.10.1 TAS 命令 TAS 命令を使用する場合には、レジスタ ER0、ER1、ER4、ER5 を使用してください。 なお、日立製 H8S 、H8/300 シリーズ C /C + +コンパイラでは、TAS 命令は生成されませ ん。ユーザ定義の組込み関数として TAS 命令をご使用の場合にはレジスタ ER0、ER1、ER4、 ER5 を使用するようにお願い致します。 2.10.2 STM/LDM 命令 S TM/LD M 命令において、ER 7 レジスタはスタックポインタであるため、待避(S TM) /復帰(LDM )できるレジスタと しては、使用できま せん。一命令で待遇 (S TM)/復 帰(LDM)できるレジスタ数は 2 本、3 本、4 本です。そのとき使用可能なレジスタリス トは、以下のとおりです。 2 本:ER0—ER1、ER2—ER3、ER4—ER5 3 本:ER0—ER2、ER4—ER6 4 本:ER0—ER3 また、日立製 H8S、H8/300 シリーズ C/C++コンパイラでは、ER7 を含む STM/LDM 命令 は生成されません。 82 3. MCU 動作モード 第3章 3.1 3.2 3.3 目次 概要 ......................................................................................................................................... 85 3.1.1 動作モードの選択 .................................................................................... 85 3.1.2 レジスタ構成 ........................................................................................... 86 各レジスタの説明 ..................................................................................................................... 87 3.2.1 モードコントロールレジスタ(MDCR) ................................................... 87 3.2.2 システムコントロールレジスタ(SYSCR) ............................................... 88 3.2.3 バスコントロールレジスタ(BCR).......................................................... 90 3.2.4 シリアルタイマコントロールレジスタ(STCR) ....................................... 91 各動作モードの説明 .................................................................................................................. 93 3.3.1 モード 1................................................................................................... 93 3.3.2 モード 2................................................................................................... 93 3.3.3 モード 3................................................................................................... 93 3.4 各動作モードにおける端子機能 ................................................................................................. 94 3.5 各動作モードのアドレスマップ ................................................................................................. 95 3. 84 MCU 動作モード 3. MCU 動作モード 3.1 概要 3.1.1 動作モードの選択 本 LSI には、3 種類の動作モード(モード 1〜3)があります。これらのモードは、モー ド端子(MD1〜MD0)の設定で決まります。表 3.1 のように CPU 動作モード、内蔵 ROM の有効/無効を選択することができます。 表 3.1 に、MCU 動作モードの選択を示します。 表 3.1 MCU 動作モードの選択 MCU MD1 MD0 動作モード 0 内容 内蔵 ROM 動作モード 0 1 2 CPU 1 0 − − − 1 ノーマル 内蔵 ROM 無効拡張モード 無効 0 アドバンスト 内蔵 ROM 有効拡張モード 有効 シングルチップモード 3 1 ノーマル 内蔵 ROM 有効拡張モード シングルチップモード アドレス空間は、CPU のアーキテクチャ上は 4G バイトですが、本 LSI では最大 16M バ イトになります。 モード 1 は、外部メモリおよび周辺デバイスをアクセスすることができる外部拡張モー ドです。モード 2、3 は、リセット解除後シングルチップモードで動作を開始しますが、 MDCR の EXPE ビットをセットすることにより、外部拡張モードに移行することができま す。 モード 1〜3 以外は本 LSI では使用できません。したがって、モード端子は必ずモード 1 〜3 になるように設定してください。 モード端子は、動作中に変化させないでください。 85 3. MCU 動作モード 3.1.2 レジスタ構成 本 LSI にはモード端子(MD1〜MD0)の状態が反映されるモードコントロールレジスタ (MDC R)と、本 LS I の動作を制御するシステムコントロールレジスタ(S YSC R )、バス コントロールレジスタ(BCR)、および周辺機能の動作を制御するシリアルタイマコント ロールレジスタ(STCR)があります。レジスタ構成を表 3.2 に示します。 表 3.2 レジスタ構成 名 称 略称 R/W 初期値 アドレス* モードコントロールレジスタ MDCR R/W 不定 H'FFC5 システムコントロールレジスタ SYSCR R/W H'09 H'FFC4 BCR R/W H'D7 H'FFC6 STCR R/W H'00 H'FFC3 バスコントロールレジスタ シリアルタイマコントロールレジスタ 【注】 86 * アドレスの下位 16 ビットを示しています。 MCU 動作モード 3. 3.2 各レジスタの説明 3.2.1 モードコントロールレジスタ(MDCR) ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 EXPE − − − − − MDS1 MDS0 −* 0 0 0 0 0 −* −* R/W* − − − − − R R MD1〜MD0端子により決定されます。 MDCR は 8 ビットのリード専用レジスタで、本 LSI の動作モードの設定および現在の動 作モードをモニタするのに用います。 EXP E ビットは、リセットまたはハードウェアスタンバイモード時に、モード端子の状 態に関連付けられて初期化されます。 ビット 7:拡張モードイネーブル(EXPE) 拡張モードを設定します。モード 1 の場合、1 に固定されており、ライトは無効です。 モード 2、3 の場合、初期値は 0 で、リード/ライト可能です。 ビット 7 説 明 EXPE 0 シングルチップモードを選択 1 拡張モードを選択 ビット 6〜2:リザーブビット リードすると常に 0 が読み出されます。ライトは無効です。 ビット 1〜0:モードセレクト 1〜0(MDS1〜MDS0) モード端 子(MD1〜MD0)の 入力レベルを反 映した値(現在 の動作モード) を示して います。MDS1〜MDS0 ビットは MD1〜MD0 端子にそれぞれ対応します。これらのビット はリード専用でライ トは無効です。MDC R をリードすると、モ ード端子(MD1〜MD0) の入力レベルがこれらのビットにラッチされます。 87 3. MCU 動作モード 3.2.2 システムコントロールレジスタ(SYSCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CS2E IOSE INTM1 INTM0 XRST NMIEG HIE RAME 0 0 0 0 1 0 0 1 R/W R/W R R/W R R/W R/W R/W S YSC R は 8 ビットのリード/ライト可能なレジスタで、システム端子機能の選択、リ セット要因のモニタ、割込み制御モードの選択、NMI 検出エッジの選択、周辺機能の端子 位置の選択、周辺機能のレジスタアクセスの制御、R AM のアドレス空間の制御を行いま す。 ここでは、ビット 7、6、3、1、0 についてのみ説明します。これらのビットの詳細につ いては、関連するモジュール(ホストインタフェース、バスコントローラ、ウォッチドッ グタイマ、R AM など)の説明をあわせて参照してください。ビット 5、4、2 の詳細につ いては「5.2.1 システムコントロールレジスタ(SYSCR)」を参照してください。 SYSCR はリセットまたはハードウェアスタンバイモード時に、H'09 に初期化されます。 ソフトウェアスタンバイモードでは初期化されません。 ビット 7:チップセレクト 2 イネーブル(CS2E) ホストインタフェースの制御端子(C S2) の配置を指定します。詳細は「第 1 8 章 ホ ストインタフェース 」を参照してください。H8S /2144 シリーズには ホストインタフェー スは内蔵していませんので、本ビットは 1 にセットしないでください。 ビット 6:IOS イネーブル(IOSE) 拡張モード時の AS/IOS 端子の機能を制御します。 ビット 6 説 明 IOSE 0 AS/IOS 端子はアドレスストローブ端子(AS) (外部エリアアクセス時に Low 出力) 1 (初期値) AS/IOS 端子は I/O ストローブ端子(IOS) (アドレス H'(FF)F000〜H'(FF)FE4F*の指定アドレスアクセス時に Low 出力) 【注】 * H8S/2148 F-ZTAT の A マスク品および H8S/2147 F-ZTAT の A マスク品では、 H'(FF)F000 〜H'(FF)F7FF となります。 88 3. MCU 動作モード ビット 3:外部リセット(XRST) XRST はリセット要因を表わすビットです。リセットは外部リセット入力に加えて、ウ ォッチドッグタイマを利用しているときには、ウォッチドッグタイマオーバフローにより 発生できます。XR ST ビットはリード専用です。外部リセットにより 1 にセット、ウォッ チドッグタイマオーバフローにより 0 にクリアされます。 ビット 3 説 明 XRST 0 リセットがウォッチドッグタイマオーバフローで発生 1 リセットが外部リセットで発生 (初期値) ビット 1:ホストインタフェースイネーブル(HIE) ホス トイン タフ ェース のデー タレジ スタ と制御 レジス タ(HI CR 、ID R1 、ODR 1、 S TR1、 IDR2、ODR2、STR2)、キーボードコントローラおよび入力プルアップ MOS の制御レジス タ(KMIMR 、KMP CR 、KMIMR A)、8 ビットタイマ(チャネル X、Y)のデータレジスタ と 制 御 レ ジ ス タ ( TC RX /T CR Y 、 TC SR X/TC SR Y 、 TIC R R/TC OR AY 、 TIC R F/TC OR BY 、 TC NTX/TC NTY、TC OR C/TI SR 、 TC OR AX、TC OR BX )、タイマ コネクションの制 御レジス タ(TCONRI、TCONRO、TCONRS、SEDGR)の、CPU アクセスを制御します。 ビット 1 説 明 HIE 0 アドレス H'(FF)FFF0〜H'(FF)FFF7、H'(FF)FFFC〜H'(FF)FFFF のエリアは、8 ビ ットタイマ(チャネル X、Y)のデータレジスタと制御レジスタおよびタイマコ ネクションの制御レジスタの CPU アクセスを許可 1 (初期値) アドレス H'(FF)FFF0〜H'(FF)FFF7、H'(FF)FFFC〜H'(FF)FFFF のエリアは、ホ ストインタフェースのデータレジスタと制御レジスタ、キーボードコントローラ および入力プルアップ MOS の制御レジスタの CPU アクセスを許可 89 3. MCU 動作モード ビット 0:RAM イネーブル(RAME) 内蔵 RAM の有効または無効を選択します。RAME ビットはリセット状態の解除時に初 期化されます。ソフトウェアスタンバイモードでは初期化されません。 ビット 0 説 明 RAME 0 内蔵 RAM 無効 1 内蔵 RAM 有効 (初期値) 3.2.3 バスコントロールレジスタ(BCR) 7 ビット : ICIS1 初期値 : R/W : 6 5 4 3 ICIS0 BRSTRM BRSTS1 BRSTS0 2 1 0 ― IOS1 IOS0 1 1 0 1 0 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W BCR は 8 ビットのリード/ライト可能なレジスタで、外部メモリ空間のアクセスモード、 AS 端子を I/O ストローブ機能に設定した場合の I/O 領域の範囲を設定します。ビット 7〜2 の詳細は「6.2.1 バスコントロールレジスタ(BCR)」を参照してください。 BCR は、リセットおよびハードウェアスタンバイモード時に、H'D7 に初期化されます。 ビット 1〜0:IOS セレクト 1、0(IOS1、IOS0) IOSE=1 の場合に、AS/IOS 端子を Low 出力とするアドレスを指定します。 BCR ビット 1 ビット 0 IOS1 IOS0 0 0 アドレス H'(FF)F000〜H'(FF)F03F アクセス時に Low 出力 1 アドレス H'(FF)F000〜H'(FF)F0FF アクセス時に Low 出力 0 アドレス H'(FF)F000〜H'(FF)F3FF アクセス時に Low 出力 1 アドレス H'(FF)F000〜H'(FF)FE4F*アクセス時に Low 出力 1 【注】 * 説 (初期値) H8S/2148 F-ZTAT の A マスク品および H8S/2147 F-ZTAT の A マスク品では、 H'(FF)F000 〜H'(FF)F7FF となります。 90 明 MCU 動作モード 3. 3.2.4 シリアルタイマコントロールレジスタ(STCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IICS IICX1 IICX0 IICE FLSHE − ICKS1 ICKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W S TCR は 8 ビットのリー ド/ライト可能なレジスタで、レジスタ アクセスの制御、II C の動作モードの制御(IIC 内蔵オプションの場合)、内蔵フラッシュメモリの制御(F-ZTAT 版の場合)、TCNT の入力クロックの選択を行います。レジスタアクセスの制御以外の詳 細は、各モジュールの説明を参照してください。STCR で制御するモジュールを使用しな い場合は、当該ビットに 1 をライトしないでください。 S TCR はリセットまたはハードウェアスタ ンバイモード時に H'00 にイニシャライズさ れます。 ビット 7〜5:I2C コントロール(IICS、IICX1、IICX0) ポート A のバスバッファ機能および II C 内蔵オプションの場合、I2C バスインタフェー スの動作を制御するビットです。詳しくは「16.2.7 シリアルタイマコントロールレジス タ(STCR)」を参照してください。 ビット 4:I 2 C マスタイネーブル(IICE) I2C バス インタフ ェースのデ ータレジ スタと制 御レジスタ (IC C R、IC S R 、IC DR /SAR X、 IC MR /S AR ) 、P WMX のデー タレ ジスタ と制御 レジ スタ( DAD RA H/DAC R、 DAD RA L、 DADRBH/DACNTH、DADRBL/DACNTL)、SCI の制御レジスタ(SMR、BRR、SCMR)の CPU アクセスを制御します。 91 3. MCU 動作モード ビット 4 説 明 IICE アドレス H'(FF)FF88〜H'(FF)FF89、H'(FF)FF8E〜H'(FF)FF8F のエリアは、SCI1 0 の制御レジスタをアクセス アドレス H'(FF)FFA0〜H'(FF)FFA1、H'(FF)FFA6〜H'(FF)FFA7 のエリアは、SCI2 の制御レジスタをアクセス アドレス H'(FF)FFD8〜H'(FF)FFD9、 H'(FF)FFDE〜H'(FF)FFDF のエリアは、 SCI0 の制御レジスタをアクセス (初期値) アドレス H'(FF)FF88〜H'(FF)FF89、H'(FF)FF8E〜H'(FF)FF8F のエリアは、IIC1 1 のデータレジスタおよび制御レジスタをアクセス アドレス H'(FF)FFA0〜H'(FF)FFA1、H'(FF)FFA6〜H'(FF)FFA7 のエリアは、 PWMX のデータレジスタおよび制御レジスタをアクセス アドレス H'(FF)FFD8〜H'(FF)FFD9、H'(FF)FFDE〜H'(FF)FFDF のエリアは、IIC0 のデータレジスタおよび制御レジスタをアクセス ビット 3:フラッシュメモリコントロールレジスタイネーブル(FLSHE) フラッシュメモリの制御レジスタ(FLMCR1、FLMCR2、EBR1、EBR2)、低消費電力状態 の制御レジスタ(SBYCR、LPWRCR、MSTPCRH、MSTPCRL)、および周辺モジュールの制 御レジスタ(PCSR、SYSCR2)の CPU アクセスを制御します。 ビット 3 説 明 FLSHE 0 アドレス H'(FF)FF80〜H'(FF)FF87 のエリアは、低消費電力状態の制御レジスタ および周辺モジュールの制御レジスタをアクセス 1 (初期値) アドレス H'(FF)FF80〜H'(FF)FF87 のエリアは、フラッシュメモリの制御レジス タをアクセス(F-ZTAT 版のみ) ビット 2:リザーブビット リザーブビットです。1 にセットしないでください。 ビット 1、0:インターナルクロックソースセレクト 1、0(ICKS1、ICKS0) TC R の C KS2〜C KS0 ビットと共に、TC NT に入力するクロックを選択します。詳細は 「12.2.4 92 タイマコントロールレジスタ(TCR)」を参照してください。 3. MCU 動作モード 3.3 各動作モードの説明 3.3.1 モード 1 CPU はノーマルモードでアドレス空間は 64k バイトです。内蔵 ROM は無効です。 ポート 1、2 がアドレスバス、ポート 3 がデータバス、ポート 9 の一部がバス制御信号と なります。また、WSCR レジスタの ABW ビットを 0 にクリアすることでポート B がデー タバスとなります。 3.3.2 モード 2 CPU はアドバンストモードでアドレス空間は 16M バイトです。内蔵 ROM は有効です。 リセット後はシングルチップモードに設定されており、外部アドレスを使用するためには MDCR の EXPE ビットを 1 にセットする必要があります。 MDCR の EXPE ビットを 1 にセットすると、ポート 1、2、A はリセット後は入力ポート になっていますが、対応する DDR (データディレクションレジスタ)を 1 にセットする ことにより、アドレスを出力することができます。ポート 3 がデータバス、ポート 9 の一 部がバス制御信号となります。また、WS C R レジスタの AB W ビットを 0 にクリアするこ とで、ポート B がデータバスとなります。 3.3.3 モード 3 CPU はノーマルモードでアドレス空間は 64k バイトです。内蔵 ROM は有効です。リセ ット 後は シン グル チッ プモ ードに 設定 され てお り、 外部ア ドレ スを 使用 する ため には MDCR の EXPE ビットを 1 にセットする必要があります。 MDC R の EXP E ビットを 1 にセットすると、ポート 1、2 はリセット後は入力ポートに なっていますが、対応する DDR (データディレクションレジスタ)を 1 にセットするこ とにより、アドレスを出力することができます。ポート 3 がデータバス、ポート 9 の一部 がバス制御信号となります。また、WS C R レジスタの AB W ビットを 0 にクリアすること で、ポート B がデータバスとなります。 本動作モードでは、内蔵 R OM が 64k バイト以上の製品で使用できる内蔵 R OM 容量は 56k バイトに制限されます。 93 3. MCU 動作モード 3.4 各動作モードにおける端子機能 動作モードにより、ポート 1〜3、9、A、B の端子機能が切り替わります。各動作モー ドにおける端子機能の一覧を表 3.3 に示します。 表 3.3 各動作モードにおける端子機能 ポート モード 1 モード 2 ポート 1 A P*/A P*/A ポート 2 A P*/A P*/A ポート A P P*/A P ポート 3 D P*/D P*/D ポート B P*/D P*/D P*/D P97 P*/C P*/C P*/C P96 C*/P P*/C P*/C P95〜P93 C P*/C P*/C P92〜P91 P P P P90 P*/C P*/C P*/C ポート 9 【記号説明】 94 モード 3 P :入出力ポート A :アドレスバス出力 D :データバス入出力 C :制御信号・クロック入出力 * :リセット直後 3. MCU 動作モード 3.5 各動作モードのアドレスマップ 各動作モードのアドレスマップを図 3.1〜図 3.5 に示します。 アドレス空間はモード 1、3(ノーマルモード)では 64k バイトです。また、モード 2(ア ドバンストモード)では 16M バイトです。 本 LSI の内蔵 ROM の容量は 64k バイト(H8S/2142、H8S/2147、H8S/2147N)、96k バイ ト(H8S /2143)または 128k バイト(H8S /2144、H8S /2148)ですが、モード 3(ノーマル モード)では、使用できる内蔵 ROM の容量は 56k バイトになります。 リザーブエリアおよび内部 I/O レジスタ空間で、製品でサポートしていないモジュール のレジスタアドレスは、アクセスしないでください。これらの領域にアクセスした場合、 正常動作が保証されないので注意が必要です。 詳細は、「第 6 章 バスコントローラ」を参照してください。 95 3. MCU 動作モード モード1 ノーマル・ 内蔵ROM無効拡張モード H'0000 モード3/EXPE=1 ノーマル・ 内蔵ROM有効拡張モード H'0000 モード3/EXPE=0 ノーマル・ シングルチップモード H'0000 内蔵ROM 内蔵ROM 外部アドレス空間 H'DFFF H'DFFF 外部アドレス空間 内蔵RAM* 内蔵RAM 内蔵RAM* H'EFFF H'EFFF H'EFFF 外部アドレス空間 H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF 外部アドレス空間 H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト H'FF80 内部I/Oレジスタ1 H'FFFF 【注】* SYSCRのRAMEビットを0にクリアすることにより外部アドレスとすることができます。 図 3.1 H8S/2148(F-ZTAT A マスク品を除く)、H8S/2144 の各動作モードのアドレス マップ(1) 96 H'E080 H'E080 H'E080 3. モード2/EXPE=1 アドバンスト・ 内蔵ROM有効拡張モード H'000000 モード2/EXPE=0 アドバンスト・ シングルチップモード H'000000 内蔵ROM H'01FFFF H'020000 MCU 動作モード 内蔵ROM H'01FFFF 外部アドレス空間 H'FFE080 H'FFE080 内蔵RAM 内蔵RAM* H'FFEFFF H'FFEFFF 外部アドレス空間 H'FFFE50 H'FFFEFF 内部I/Oレジスタ2 H'FFFF00 H'FFFF7F 内蔵RAM 128バイト* H'FFFF80 内部I/Oレジスタ1 H'FFFFFF 【注】* 図 3.1 H'FFFE50 H'FFFEFF 内部I/Oレジスタ2 H'FFFF00 H'FFFF7F 内蔵RAM 128バイト H'FFFF80 内部I/Oレジスタ1 H'FFFFFF SYSCRのRAMEビットを0にクリアすることにより 外部アドレスとすることができます。 H8S/2148(F-ZTAT A マスク品を除く)、H8S/2144 の各動作モードのアドレス マップ(2) 97 3. MCU 動作モード モード1 ノーマル・ 内蔵ROM無効拡張モード H'0000 モード3/EXPE=1 ノーマル・ 内蔵ROM有効拡張モード H'0000 モード3/EXPE=0 ノーマル・ シングルチップモード H'0000 内蔵ROM 内蔵ROM 外部アドレス空間 H'DFFF H'DFFF 外部アドレス空間 H'E080 H'E080 H'E080 内蔵RAM* 内蔵RAM 内蔵RAM* H'EFFF H'EFFF H'EFFF 外部アドレス空間 H'F800 リザーブエリア H'FE4F H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF 外部アドレス空間 H'F800 リザーブエリア H'FE4F H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト H'FF80 内部I/Oレジスタ1 H'FFFF 【注】 * SYSCR の RAME ビットを 0 にクリアすることにより外部アドレスとすることができま す。 図 3.2 98 H8S/2148 F-ZTAT A マスク品の各動作モードのアドレスマップ(1) 3. モード2/EXPE=1 アドバンスト・ 内蔵ROM有効拡張モード H’000000 モード2/EXPE=0 アドバンスト・ シングルチップモード H’000000 内蔵ROM H’01FFFF H’020000 内蔵ROM H’01FFFF 外部アドレス空間 H’FFE080 H’FFE080 内蔵RAM 内蔵RAM* 【注】 * MCU 動作モード H’FFEFFF H’FFEFFF 外部アドレス空間 H’FFF800 リザーブエリア H’FFFE4F H’FFFE50 H’FFFEFF 内部I/Oレジスタ2 H’FFFF00 H’FFFF7F 内蔵RAM 128バイト H’FFFF80 内部I/Oレジスタ1 H’FFFFFF H’FFFE50 H’FFFEFF 内部I/Oレジスタ2 H’FFFF00 H’FFFF7F 内蔵RAM 128バイト H’FFFF80 内部I/Oレジスタ1 H’FFFFFF SYSCR の RAME ビットを 0 にクリアすることにより外部アドレスとすることができま す。 図 3.2 H8S/2148 F-ZTAT A マスク品の各動作モードのアドレスマップ(2) 99 3. MCU 動作モード モード1 ノーマル・ 内蔵ROM無効拡張モード H'0000 モード3/EXPE=1 ノーマル・ 内蔵ROM有効拡張モード H'0000 モード3/EXPE=0 ノーマル・ シングルチップモード H'0000 内蔵ROM 内蔵ROM 外部アドレス空間 H'DFFF H'DFFF 外部アドレス空間 内蔵RAM 内蔵RAM* 内蔵RAM* H'EFFF H'EFFF H'EFFF 外部アドレス空間 H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF 外部アドレス空間 H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト H'FF80 内部I/Oレジスタ1 H'FFFF 【注】* 図 3.3 100 H'E080 H'E080 H'E080 SYSCRのRAMEビットを0にクリアすることにより外部アドレスとすることができます。 H8S/2143 の各動作モードのアドレスマップ(1) 3. モード2/EXPE=1 アドバンスト・ 内蔵ROM有効拡張モード H'000000 モード2/EXPE=0 アドバンスト・ シングルチップモード H'000000 内蔵ROM H'017FFF 内蔵ROM H'017FFF リザーブエリア リザーブエリア H'01FFFF H'020000 MCU 動作モード H'01FFFF 外部アドレス空間 H'FFE080 H'FFE080 内蔵RAM 内蔵RAM* H'FFEFFF H'FFEFFF 外部アドレス空間 H'FFFE50 H'FFFEFF 内部I/Oレジスタ2 H'FFFF00 H'FFFF7F 内蔵RAM 128バイト* H'FFFF80 内部I/Oレジスタ1 H'FFFFFF 【注】* 図 3.3 H'FFFE50 H'FFFEFF 内部I/Oレジスタ2 H'FFFF00 H'FFFF7F 内蔵RAM 128バイト H'FFFF80 内部I/Oレジスタ1 H'FFFFFF SYSCRのRAMEビットを0にクリアすることにより 外部アドレスとすることができます。 H8S/2143 の各動作モードのアドレスマップ(2) 101 3. MCU 動作モード モード1 ノーマル・ 内蔵ROM無効拡張モード H'0000 モード3/EXPE=1 ノーマル・ 内蔵ROM有効拡張モード H'0000 モード3/EXPE=0 ノーマル・ シングルチップモード H'0000 内蔵ROM 内蔵ROM 外部アドレス空間 H'DFFF H'DFFF 外部アドレス空間 H'E080 リザーブエリア* H'E880 H'E080 H'E880 内蔵RAM* リザーブエリア H'E880 内蔵RAM* 内蔵RAM H'EFFF H'EFFF H'EFFF 外部アドレス空間 H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF 外部アドレス空間 H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト H'FF80 内部I/Oレジスタ1 H'FFFF 【注】* 図 3.4 SYSCRのRAMEビットを0にクリアすることにより外部アドレスとすることができます。 H8S/2147(F-ZTAT A マスク品を除く)、H8S/2147N、H8S/2142 の各動作 モードのアドレスマップ(1) 102 H'E080 リザーブエリア* 3. モード2/EXPE=1 アドバンスト・ 内蔵ROM有効拡張モード H'000000 モード2/EXPE=0 アドバンスト・ シングルチップモード H'000000 内蔵ROM H'00FFFF 内蔵ROM H'00FFFF リザーブエリア リザーブエリア H'01FFFF H'020000 H'01FFFF 外部アドレス空間 H'FFE080 H'FFE080 リザーブエリア リザーブエリア* H'FFE880 図 3.4 内蔵RAM* H'FFE880 内蔵RAM H'FFEFFF H'FFEFFF 外部アドレス空間 H'FFFE50 H'FFFEFF 内部I/Oレジスタ2 H'FFFF00 H'FFFF7F 内蔵RAM 128バイト* H'FFFF80 内部I/Oレジスタ1 H'FFFFFF H'FFFE50 H'FFFEFF 内部I/Oレジスタ2 H'FFFF00 H'FFFF7F 内蔵RAM 128バイト H'FFFF80 内部I/Oレジスタ1 H'FFFFFF 【注】* MCU 動作モード SYSCRのRAMEビットを0にクリアすることにより 外部アドレスとすることができます。 H8S/2147(F-ZTAT A マスク品を除く)、H8S/2147N、H8S/2142 の各動作 モードのアドレスマップ(2) 103 3. MCU 動作モード モード1 ノーマル・ 内蔵ROM無効拡張モード H'0000 モード3/EXPE=1 ノーマル・ 内蔵ROM有効拡張モード H'0000 モード3/EXPE=0 ノーマル・ シングルチップモード H'0000 内蔵ROM 内蔵ROM 外部アドレス空間 H'DFFF H'DFFF 外部アドレス空間 H'E080 H'E080 リザーブエリア* H'E880 リザーブエリア* H'E880 内蔵RAM* H'E080 リザーブエリア H'E880 内蔵RAM* 内蔵RAM H'EFFF H'EFFF H'EFFF 外部アドレス空間 H'F800 リザーブエリア H'FE4F H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF 外部アドレス空間 H'F800 リザーブエリア H'FE4F H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト* H'FF80 内部I/Oレジスタ1 H'FFFF H'FE50 H'FEFF 内部I/Oレジスタ2 H'FF00 H'FF7F 内蔵RAM 128バイト H'FF80 内部I/Oレジスタ1 H'FFFF 【注】 * SYSCR の RAME ビットを 0 にクリアすることにより外部アドレスとすることができま す。 図 3.5 104 H8S/2147 F-ZTAT A マスク品の各動作モードのアドレスマップ(1) 3. モード2/EXPE=1 アドバンスト・ 内蔵ROM有効拡張モード H'000000 モード2/EXPE=0 アドバンスト・ シングルチップモード H'000000 内蔵ROM H'00FFFF 内蔵ROM H'00FFFF リザーブエリア H'01FFFF H'020000 リザーブエリア H'01FFFF 外部アドレス空間 H'FFE080 H'FFE080 リザーブエリア* H'FFE880 * リザーブエリア H'FFE880 内蔵RAM* 【注】 MCU 動作モード 内蔵RAM H'FFEFFF H'FFEFFF 外部アドレス空間 H'FFF800 リザーブエリア H'FFFE4F H'FFFE50 H'FFFEFF 内部I/Oレジスタ2 H'FFFF00 1 H'FFFF7F 内蔵RAM 128バイト* H'FFFF80 内部I/Oレジスタ1 H'FFFFFF H'FFFE50 H'FFFEFF 内部I/Oレジスタ2 H'FFFF00 H'FFFF7F 内蔵RAM 128バイト H'FFFF80 内部I/Oレジスタ1 H'FFFFFF SYSCR の RAME ビットを 0 にクリアすることにより外部アドレスとすることができま す。 図 3.5 H8S/2147 F-ZTAT A マスク品の各動作モードのアドレスマップ(2) 105 3. 106 MCU 動作モード 4. 例外処理 第4章 4.1 4.2 目次 概要 ....................................................................................................................................... 109 4.1.1 例外処理の種類と優先度 ........................................................................ 109 4.1.2 例外処理の動作...................................................................................... 110 4.1.3 例外処理要因とベクタテーブル .............................................................. 110 リセット................................................................................................................................. 112 4.2.1 概要 ...................................................................................................... 112 4.2.2 リセットシーケンス ............................................................................... 112 4.2.3 リセット直後の割込み............................................................................ 114 4.3 割込み .................................................................................................................................... 115 4.4 トラップ命令 .......................................................................................................................... 116 4.5 例外処理後のスタックの状態................................................................................................... 117 4.6 スタック使用上の注意............................................................................................................. 118 4. 108 例外処理 4. 例外処理 4.1 概要 4.1.1 例外処理の種類と優先度 例外処理には、表 4.1 に示すように、リセット、直接遷移、トラップ命令、および割込 みによるものがあります。これらの例外処理には表 4.1 に示すように優先順位が設けられ ており、複数の例外処理が同時に発生した場合は、この優先度にしたがって受け付けられ 処理されます。トラップ命令例外処理は、プログラム実行状態で常に受け付けられます。 SYSCR の INTM0、INTM1 ビットで設定される割込み制御モードによって、例外処理要 因やスタックの構造、CPU の動作が異なります。 表 4.1 例外処理の種類と優先度 優先度 例外処理の種類 例外処理開始タイミング 高 リセット RES 端子の Low レベルから High レベルへの遷移時、または、ウォッチ ドッグタイマのオーバフローにより開始します。 トレース* 1 トレース(T)ビット=1 の状態で、命令または例外処理の実行終了時 に開始します。 割込み 割込み要求が発生すると、命令または例外処理の実行終了時に開始しま す。* 2 直接遷移 SLEEP 命令の実行により、直接遷移が発生すると開始します。 トラップ命令* 3 トラップ(TRAPA)命令の実行により開始します。 低 【注】 (TRAPA) *1 トレースは割込み制御モード 2、3 でのみ有効です(本 LSI では使用できません)。 トレース例外処理は、RTE 命令の実行終了後には実行しません。 *2 ANDC、ORC、XORC、LDC 命令の実行終了時点、またはリセット例外処理の終了時点 では割込みの検出を行いません。 *3 トラップ命令例外処理は、プログラム実行状態で常に受け付けられます。 109 4. 例外処理 4.1.2 例外処理の動作 例外処理は、各例外処理要因により起動されます。 トラップ命令および割込み例外処理は、次のように動作します。 [1]プログ ラムカウンタ( P C)とコンディ ションコードレジ スタ(C CR )をス タックに 退避します。 [2]割込みマスクビットを更新します。T ビットを 0 にクリアします。 [3]起動要因に対応するベクタアドレスを生成し、そのベクタアドレスの内容が示す番地 からプログラムの実行が開始されます。 リセット例外処理の場合は上記[2]、[3]の動作を行います。 4.1.3 例外処理要因とベクタテーブル 各例外処理要因は、図 4.1 に示すように分類されます。 これらの例外処理要因には、それぞれ異なるベクタアドレスが割り当てられています。 これらの要因とベクタアドレスとの対応を表 4.2 に示します。 ・リセット ・トレース (本LSIでは使用できません) 外部割込み…NMI、IRQ7〜IRQ0 例外処理要因 ・割込み 内部割込み…内蔵周辺モジュールからの割込み ・直接遷移 ・トラップ命令 図 4.1 110 例外処理要因 4. 表 4.2 例外処理 例外処理ベクタテーブル 例外処理要因 ベクタアドレス* 1 ベクタ番号 ノーマルモード アドバンストモード リセット 0 H'0000〜H'0001 H'0000〜H'0003 システム予約 1 H'0002〜H'0003 H'0004〜H'0007 2 H'0004〜H'0005 H'0008〜H'000B 3 H'0006〜H'0007 H'000C〜H'000F 4 H'0008〜H'0009 H'0010〜H'0013 5 H'000A〜H'000B H'0014〜H0017 6 H'000C〜H'000D H'0018〜H001B 7 H'000E〜H'000F H'001C〜H'001F 8 H'0010〜H'0011 H'0020〜H'0023 9 H'0012〜H'0013 H'0024〜H'0027 10 H'0014〜H'0015 H'0028〜H'002B 11 H'0016〜H'0017 H'002C〜H'002F 12 H'0018〜H'0019 H'0030〜H'0033 13 H'001A〜H'001B H'0034〜H'0037 14 H'001C〜H'001D H'0038〜H'003B 15 H'001E〜H'001F H'003C〜H'003F IRQ0 16 H'0020〜H'0021 H'0040〜H'0043 IRQ1 17 H'0022〜H'0023 H'0044〜H'0047 IRQ2 18 H'0024〜H'0025 H'0048〜H'004B IRQ3 19 H'0026〜H'0027 H'004C〜H'004F IRQ4 20 H'0028〜H'0029 H'0050〜H'0053 IRQ5 21 H'002A〜H'002B H'0054〜H'0057 IRQ6 22 H'002C〜H'002D H'0058〜H'005B IRQ7 23 H'002E〜H'002F H'005C〜H'005F 24 H'0030〜H'0031 H'0060〜H'0063 | | | 103 H'00CE〜H'00CF H'019C〜H'019F 直接遷移 外部割込み NMI トラップ命令(4 要因) システム予約 外部割込み 内部割込み* 【注】 2 *1 アドレスの下位 16 ビットを示しています。 * 2 内部割 込みのベクタテー ブルは、「5. 3.3 割込み例外処理 ベクタテーブル」 を参照し てください。 111 4. 例外処理 4.2 リセット 4.2.1 概要 リセットは、最も優先順位の高い例外処理です。 RES 端子が Low レベルになると、実行中の処理はすべて打ち切られ、本 LSI はリセット 状態になります。リセットによって、CPU の内部状態と内蔵周辺モジュールの各レジスタ が初期化されます。リセット直後は割込み制御モード 0 になっています。 RES 端子が Low レベルから High レベルになるとリセット例外処理が開始されます。 またウォッチドッグタイマのオーバフローによって、リセット状態とすることもできま す。詳細は「第 14 章 ウォッチドッグタイマ(WDT)」を参照してください。 4.2.2 リセットシーケンス RES 端子が Low レベルになると本 LSI はリセット状態になります。 本 LSI を確実にリセットするために、電源投入時は最低 20ms の間、RES 端子を Low レ ベルに保持してください。また、動作中は最低 20 ステートの間、Low レベルにしてくだ さい。リセット時の各端子の状態は「付録 D.1 各処理状態におけるポートの状態」を参 照してください。 R ES 端子が一定期間 Low レベルの後 High レベルになると、リセット例外処理が開始さ れ、本 LSI は次のように動作します。 [1]CPU の内部状態と内蔵周辺モジュールの各レジスタが初期化され、CCR の I ビットが 1 にセットされます。 [2]リセット例外処理ベクタアドレスをリードして PC に転送した後、PC で示されるアド レスからプログラムの実行を開始します。 リセットシーケンスの例を図 4.2、図 4.3 に示します。 112 4. ベクタ フェッチ 内部処理 例外処理 プログラム先頭命令の フェッチ φ RES (1) 内部アドレスバス (3) 内部リード信号 Highレベル 内部ライト信号 内部データバス (2) (4) (1):リセット例外処理ベクタアドレス((1)=H'0000) (2):スタートアドレス(リセット例外処理ベクタアドレスの内容) (3):スタートアドレス((3)=(2)) (4):プログラム先頭命令 図 4.2 リセットシーケンス(モード 3) ベクタ フェッチ * 内部 処理 * プログラム先頭命令の フェッチ * φ RES アドレスバス (1) (3) (5) RD HWR、LWR Highレベル (2) D15〜D8 (4) (6) (1) (3):リセット例外処理ベクタアドレス((1)=H'0000、(3)=H'0001) (2) (4):スタートアドレス(リセット例外処理ベクタアドレスの内容) (5) :スタートアドレス((5)=(2)(4)) (6) :プログラム先頭命令 【注】* 図 4.3 プログラムウェイト3ステートが挿入されます。 リセットシーケンス(モード 1) 113 4. 例外処理 4.2.3 リセット直後の割込み リセット直 後、スタックポイン タ(S P)を初期化する 前に割込みを受け付 けると、P C と C CR の退避が正常に行われないため、プログラムの暴走につながります。これを防ぐ ため、リセット例外処理が実行された直後は、NMI を含めたすべての割込み要求が禁止さ れます。すなわち、リセット直後はプログラムの先頭 1 命令が必ず実行されますので、プ ログラム先頭命令は SP を初期化する命令としてください(例:MOV.L 114 #xx:32, SP)。 4. 例外処理 4.3 割込み 割込み例外処 理を開始させる要因には 、23 の入力端子(NMI、 IR Q7〜IR Q0、KIN15〜 KIN0)からの 9 本の外部割込み(NMI、IR Q7〜IR Q0)と、内蔵周辺モジュールからの要 求による内部要因があります。割込み要因と要因数を図 4.4 に示します。 割込み要因 を要求する内蔵周辺 モジュールには、ウ ォッチドッグタイマ (WD T)、16 ビットフリーランニングタイマ(FRT)、8 ビットタイマ(TMR)、シリアルコミュニケ ーションインタフェース(SCI)、データトランスファコントローラ(DTC)、 A/D 変換 器(ADC)、ホストインタフェース(HIF)、キーボードバッファコントローラ(PS2)、 I2C バスインタフェース【オプション】などがあります。割込みベクタアドレスは各要因 別に割り当てられています。 NMI は最も優先度の高い割込みです。割込みは、割込みコントローラによって制御され ます。割込み制御には、2 つの割込み制御モードがあり、NMI とアドレスブレーク以外の 割込みに 3 レベルの優先順位/マスクレベルを設定して、多重割込みの制御を行うことが できます。 割込みについての詳細は「第 5 章 割込みコントローラ」を参照してください。 NMI(1) 外部割込み IRQ7〜IRQ0(8) WDT*1(2) 割込み FRT(7) TMR(10) SCI(12) 内部割込み DTC(1) ADC(1) HIF(4) PS2(3) IIC(3)【オプション】 他 【注】 図 4.4 ( *1 (1) )内は要因数を示します。 WDTをインターバルタイマとして使用したとき、カウンタが オーバフローすると割込み要求を発生します。 割込み要因と要因数 115 4. 例外処理 4.4 トラップ命令 トラップ命令例外処理は、TR AP A 命令を実行すると例外処理を開始します。トラップ 命令例外処理はプログラム実行状態で常に実行可能です。 TRAPA 命令は、命令コード中で指定した 0〜3 のベクタ番号に対応するベクタテーブル からスタートアドレスを取り出します。 表 4.3 に、トラップ命令例外処理実行後の CCR、EXR の状態を示します。 表 4.3 トラップ命令例外処理後の CCR、EXR の状態 割込み制御モード CCR I UI I2〜I0 T 0 1 − − − 1 1 1 − − 【記号説明】 1 :1 にセットされます。 0 :0 にクリアされます。 − :実行前の値が保持されます。 116 EXR 4. 例外処理 4.5 例外処理後のスタックの状態 トラップ命令例外処理および割込み例外処理後のスタックの状態を図 4.5 に示します。 SP→ CCR CCR* PC (16ビット) 割込み制御モード0、1 【注】* 図 4.5(1) リターン時には無視されます。 例外処理終了後のスタックの状態(ノーマルモード) SP→ CCR PC (24ビット) 割込み制御モード0、1 【注】* 図 4.5(2) リターン時には無視されます。 例外処理終了後のスタックの状態(アドバンストモード) 117 4. 例外処理 4.6 スタック使用上の注意 本 LSI では、ワードデータまたはロングワードデータをアクセスする場合は、アドレス の最下位ビットは 0 とみなされます。スタック領域に対するアクセスは、常にワードサイ ズまたはロングワードサイズで行い、スタックポインタ(SP:ER7)の内容は奇数にしな いでください。 すなわち、レジスタの退避は、 PUSH.W Rn (MOV.W Rn, @-SP) ERn (MOV.L ERn, @-SP) PUSH.L また、レジスタの復帰は、 POP.W Rn (MOV.W @SP+, Rn) POP.L ERn (MOV.L @SP+, ERn) を使用してください。 S P を奇数に設定すると、誤動作の原因となります。S P を奇数に設定した場合の動作例 を図 4.6 に示します。 CCR R1L SP H'FFEFFA H'FFEFFB SP PC PC H'FFEFFC H'FFEFFD SP H'FFEFFF TRAPA命令実行 SPにH'FFEFFFを 設定 MOV.B R1L, @-ER7 SPを超えて スタックされる 【記号説明】 CCR:コンディションコードレジスタ PC :プログラムカウンタ R1L :汎用レジスタR1L SP :スタックポインタ 【注】アドバンストモードで、割込み制御モード0の場合の例です。 図 4.6 118 SP を奇数に設定したときの動作 CCRの内容が 失われる 5. 割込みコントローラ 第5章 5.1 5.2 5.3 5.4 5.5 目次 概要 ....................................................................................................................................... 121 5.1.1 特長 ...................................................................................................... 121 5.1.2 ブロック図 ............................................................................................ 122 5.1.3 端子構成................................................................................................ 122 5.1.4 レジスタ構成 ......................................................................................... 123 各レジスタの説明 ................................................................................................................... 124 5.2.1 システムコントロールレジスタ(SYSCR) ............................................. 124 5.2.2 インタラプトコントロールレジスタ A〜C(ICRA〜ICRC) ..................... 125 5.2.3 IRQ イネーブルレジスタ(IER)............................................................. 126 5.2.4 IRQ センスコントロールレジスタ H、L(ISCRH、ISCRL) ...................... 127 5.2.5 IRQ ステータスレジスタ(ISR)............................................................. 128 5.2.6 キーボードマトリクス割込みマスクレジスタ(KMIMR) ........................ 130 5.2.7 キーボードマトリクス割込みマスクレジスタ(KMIMRA)...................... 130 5.2.8 アドレスブレークコントロールレジスタ(ABRKCR)............................. 132 5.2.9 ブレークアドレスレジスタ A、B、C(BARA、BARB、BARC) .............. 133 割込み要因 ............................................................................................................................. 134 5.3.1 外部割込み ............................................................................................ 134 5.3.2 内部割込み ............................................................................................ 136 5.3.3 割込み例外処理ベクタテーブル .............................................................. 137 アドレスブレーク ................................................................................................................... 139 5.4.1 特長 ...................................................................................................... 139 5.4.2 ブロック図 ............................................................................................ 139 5.4.3 動作説明................................................................................................ 140 5.4.4 使用上の注意 ......................................................................................... 140 割込み動作 ............................................................................................................................. 142 5.5.1 割込み制御モードと割込み動作 .............................................................. 142 5.5.2 割込み制御モード 0 ................................................................................ 145 5. 5.6 5.7 120 割込みコントローラ 5.5.3 割込み制御モード 1 ................................................................................ 147 5.5.4 割込み例外処理シーケンス ..................................................................... 150 5.5.5 割込み応答時間...................................................................................... 151 使用上の注意 .......................................................................................................................... 152 5.6.1 割込みの発生とディスエーブルとの競合 ................................................. 152 5.6.2 割込みを禁止している命令 ..................................................................... 153 5.6.3 EEPMOV 命令実行中の割込み................................................................. 153 割込みによる DTC の起動 ........................................................................................................ 154 5.7.1 概要 ...................................................................................................... 154 5.7.2 ブロック図 ............................................................................................ 154 5.7.3 動作説明................................................................................................ 155 5. 割込みコントローラ 5.1 概要 5.1.1 特長 本 LSI は割込みコントローラにより、割込みの制御を行います。割込みコントローラに は、次の特長があります。 ■2 種類の割込み制御モード ・システムコントロールレジスタ(SYSCR)の INTM1、INTM0 ビットにより、2 種 類の割込み制御モードを設定できます。 ■ICR により、優先順位を設定可能 ・割込み優先順位を設定するインタラプトコントロールレジスタ(ICR)を備えてお り、NMI とアドレスブレーク以外の割込みに、モジュールごとに 3 レベルの優先 順位を設定できます。 ■独立したベクタアドレス ・すべての割 込み要因には独立のベクタ アドレスが割り当てられて おり、割込み処 理ルーチンで要因を判別する必要がありません。 ■23 本の外部割込み端子(9 本の外部要因) ・NMI は最優先の割込みで常に受け付けられます。NMI 割込みは、NMI 端子の立ち 上がりエッジまたは立ち下がりエッジを選択できます。 ・IRQ7〜IRQ0 割込みは、IRQ7〜IRQ0 端子の立ち下がりエッジ、立ち上がりエッジ、 両エッジ、レベルセンスのいずれかをそれぞれ独立に選択できます。 ・IR Q6 割込みは、IRQ6 端子からの割込みと 8 本の外部割込み入力(KIN7〜KIN0) との兼用になっています。また、IRQ7 割込みは、IRQ7 端子からの割込みと 8 本の 外部割込み入力端子(KIN15〜KIN8)との兼用になっています。KIN15〜KIN0 は、 それぞれユーザプログラムによりマスクできます。 ■DTC の制御 ・割込みによる DTC の起動の制御を行います。 121 5. 割込みコントローラ 5.1.2 ブロック図 割込みコントローラのブロック図を図 5.1 に示します。 CPU INTM1 INTM0 SYSCR NMIEG NMI入力 NMI入力部 IRQ入力 IRQ入力部 ISR 割込み要求 ISCR IER ベクタ番号 優先順位 判定 I、UI 内部割込み要因 SWDTEND〜 PS2IC CCR ICR 割込みコントローラ 【 記号説明 】 ISCR :IRQセンスコントロールレジスタ :IRQイネーブルレジスタ IER :IRQステータスレジスタ ISR :インタラプトコントロールレジスタ ICR SYSCR :システムコントロールレジスタ 図 5.1 割込みコントローラのブロック図 5.1.3 端子構成 割込みコントローラの端子構成を表 5.1 に示します。 表 5.1 名 端子構成 称 ノンマスカブル 記号 入出力 NMI 入力 割込み 122 機 能 マスク不可能な外部割込み。 立ち上がりエッジまたは立ち下がりエッジを選択可能 外部割込み要求 IRQ7 7〜0 〜 立ち下がりエッジ、立ち上がりエッジ、両エッジ、 IRQ0 レベルセンスのいずれかを選択可能 キー入力割込み KIN15 要求 15〜0 〜KIN0 入力 入力 マスク可能な外部割込み。 マスク可能な外部割込み。 立ち下がりエッジ、レベルセンスのいずれかを選択可能 5. 割込みコントローラ 5.1.4 レジスタ構成 割込みコントローラのレジスタ構成を表 5.2 に示します。 表 5.2 割り込みコントローラのレジスタ構成 略称 R/W 初期値 アドレス* 1 システムコントロールレジスタ SYSCR R/W H'09 H'FFC4 IRQ センスコントロールレジスタ H ISCRH R/W H'00 H'FEEC IRQ センスコントロールレジスタ L ISCRL R/W H'00 H'FEED IRQ イネーブルレジスタ IER R/W H'00 H'FFC2 IRQ ステータスレジスタ ISR R/(W)* 2 H'00 H'FEEB KMIMR R/W H'BF H'FFF1* 3 KMIMRA R/W H'FF H'FFF3* 3 インタラプトコントロールレジスタ A ICRA R/W H'00 H'FEE8 インタラプトコントロールレジスタ B ICRB R/W H'00 H'FEE9 インタラプトコントロールレジスタ C ICRC R/W H'00 H'FEEA ABRKCR R/W H'00 H'FEF4 ブレークアドレスレジスタ A BARA R/W H'00 H'FEF5 ブレークアドレスレジスタ B BARB R/W H'00 H'FEF6 ブレークアドレスレジスタ C BARC R/W H'00 H'FEF7 名 称 キーボードマトリクス割込みマスクレジスタ キーボードマトリクス割込みマスクレジスタ A アドレスブレークコントロールレジスタ 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 フラグをクリアするための 0 ライトのみ可能です。 * 3 KMI MR 、KMI MR A を設定するときは、SYSC R の HI E ビットを 1 にセットし、かつ MSTPCRL の MSTP2 ビットを 0 に設定してください。 123 5. 割込みコントローラ 5.2 各レジスタの説明 5.2.1 システムコントロールレジスタ(SYSCR) 7 6 5 4 3 2 1 0 CS2E IOSE INTM1 INTM0 XRST NMIEG HIE RAME 0 0 0 0 1 0 0 1 R/W R/W R R/W R R/W R/W R/W ビット : 初期値 : R/W : SYSCR は 8 ビットのリード/ライト可能なレジスタで、ビット 5、4、2 は割込み制御モ ードの選択、NMI の検出エッジの選択を行います。 ここでは、ビット 5、4、2 についてのみ説明します。その他のビットの詳細については 「3.2.2 システムコントロールレジスタ(SYSCR)」を参照してください。 SYSCR はリセットまたはハードウェアスタンバイモード時に、H'09 に初期化されます。 ソフトウェアスタンバイモードでは初期化されません。 ビット 5、4:割込み制御選択モード 1、0(INTM1、INTM0) 割込みコントローラの割込み制御モードを 4 つのモードの中から選択します。 INTM1 ビットは、1 にセットしないでください。 ビット 5 ビット 4 割込み INTM1 INTM0 制御モード 0 0 0 I ビットで、割込みを制御します。 1 1 I、UI ビットと ICR で、割込みを制御します。 0 2 本 LSI では使用できません 1 3 本 LSI では使用できません 1 説 明 (初期値) ビット 2:NMI エッジセレクト(NMIEG) NMI 端子の入力エッジ選択を行います。 ビット 2 説 明 NMIEG 124 0 NMI 入力の立ち下がりエッジで割込み要求を発生 1 NMI 入力の立ち上がりエッジで割込み要求を発生 (初期値) 5. 割込みコントローラ 5.2.2 インタラプトコントロールレジスタ A〜C(ICRA〜ICRC) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 ICR7 ICR6 ICR5 ICR4 ICR3 ICR2 ICR1 ICR0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ICR は 8 ビットのリード/ライト可能な 3 本のレジスタで、NMI とアドレスブレークを 除く割込みの割込みコントロールレベルの設定をします。 各割込み要因と ICR の対応を表 5.3 に示します。 ICR はリセットまたはハードウェアスタンバイモード時に、H'00 に初期化されます。 ビット n:割込みコントロールレベル(ICRn) 対応する割込み要因のコントロールレベルを設定します。 ビット n 説 明 ICRn 0 対応する割込み要因はコントロールレベル 0(非優先) 1 対応する割込み要因はコントロールレベル 1(優先) (初期値) (n=7〜0) 表 5.3 各割込み要因と ICR の対応 レジスタ ICRA ICRB ICRC ビット 7 6 5 4 3 IRQ0 IRQ1 IRQ2 IRQ4 IRQ6 IRQ3 IRQ5 IRQ7 A/D フリーラ − 変換器 SCI DTC 1 0 ウォッチ ウォッチ ドッグ ドッグ タイマ 0 タイマ 1 8 ビット 8 ビット 8 ビット HIF、 ンニング タイマ タイマ タイマ キーボード タイマ チャネル 0 チャネル 1 チャネル バッファコ SCI SCI − 2 IIC IIC − X、Y ントローラ − − チャネル 0 チャネル 1 チャネル 2 チャネル 0 チャネル 1 (オプション) (オプション) 125 5. 割込みコントローラ 5.2.3 IRQ イネーブルレジスタ(IER) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IRQ7E IRQ6E IRQ5E IRQ4E IRQ3E IRQ2E IRQ1E IRQ0E 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W IER は 8 ビットのリード/ライト可能なレジスタで、IR Q7〜IR Q0 割込み要求の許可ま たは禁止を制御します。 IER はリセットまたはハードウェアスタンバイモード時に、H'00 に初期化されます。 ビット 7〜0:IRQ7〜IRQ0 イネーブル(IRQ7E〜IRQ0E) IRQ7〜IRQ0 割込みを許可または禁止するかを選択します。 ビット n 説 明 IRQnE 0 IRQn 割込みを禁止 1 IRQn 割込みを許可 (初期値) (n=7〜0) 126 5. 割込みコントローラ 5.2.4 IRQ センスコントロールレジスタ H、L(ISCRH、ISCRL) ISCRH ビット : 15 14 13 12 10 11 9 8 IRQ7SCB IRQ7SCA IRQ6SCB IRQ6SCA IRQ5SCB IRQ5SCA IRQ4SCB IRQ4SCA 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 7 6 5 4 3 2 1 0 ISCRL ビット : IRQ3SCB IRQ3SCA IRQ2SCB IRQ2SCA IRQ1SCB IRQ1SCA IRQ0SCB IRQ0SCA 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ISCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、IRQ7〜IRQ0 端子の入力の 立ち下がりエッジ、立ち上がりエッジ、両エッジ、レベルセンスのいずれかを選択します。 ISCR はリセットまたはハードウェアスタンバイモード時に、それぞれ H'00 に初期化さ れます。 ISCRH ビット 7〜0、ISCRL ビット 7〜0: IRQ7 センスコントロール A、B(IRQ7SCA、IRQ7SCB) 〜IRQ0 センスコントロール A、B(IRQ0SCA、IRQ0SCB) ISCRH ビット 7〜0 説 明 ISCRL ビット7〜0 IRQ7SCB〜 IRQ7SCA〜 IRQ0SCB IRQ0SCA 0 0 IRQ7〜IRQ0 入力の Low レベルで割込み要求を発生 1 IRQ7〜IRQ0 入力の立ち下がりエッジで割込み要求を発生 0 IRQ7〜IRQ0 入力の立ち上がりエッジで割込み要求を発生 1 IRQ7〜IRQ0 入力の立ち下がり、立ち上がりの両エッジで割込み要求 1 (初期値) を発生 127 5. 割込みコントローラ 5.2.5 IRQ ステータスレジスタ(ISR) ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 IRQ7F IRQ6F IRQ5F IRQ4F IRQ3F IRQ2F IRQ1F IRQ0F 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* フラグをクリアするための0ライトのみ可能です。 IS R は 8 ビットのリード/ライト可能なレジスタで、IR Q7〜IR Q0 割込み要求のステー タス表示を行います。 ISR はリセットまたはハードウェアスタンバイモード時に、H'00 に初期化されます。 ビット 7〜0:IRQ7〜IRQ0 フラグ(IRQ7F〜IRQ0F) IRQ7〜IRQ0 割込み要求のステータスの表示を行います。 ビット n 説 明 IRQnF 0 [クリア条件] (初期値) (1)IRQnF=1 をリードした後、0 をライトしたとき (2)Low レベル検出設定(IRQnSCB=IRQnSCA=0)の状態かつ IRQn 入力 が High レベルの状態で、割込み例外処理を実行したとき* (3)立ち下がりエッジ、立ち上がりエッジ、両エッジ検出設定時 (IRQnSCB=1、または IRQnSCA=1)の状態で IRQn 割込み例外処理 を実行したとき* 1 [セット条件] (1)Low レベル検出設定(IRQnSCB=IRQnSCA=0)の状態で IRQn 入力が Low レベルになったとき (2)立ち下がりエッジ検出設定時(IRQnSCB=0、IRQnSCA=1)の状態で IRQn 入力に立ち下がりエッジが発生したとき (3)立ち上がりエッジ検出設定時(IRQnSCB=1、IRQnSCA=0)の状態で IRQn 入力に立ち上がりエッジが発生したとき (4)両エッジ検出設定時(IRQnSCB=IRQnSCA=1)の状態で IRQn 入力に 立ち下がり、または立ち上がりエッジが発生したとき (n=7〜0) 【注】 * DT C を内蔵した 製品において下記の設定で 使用すると、対象フラグビ ットはクリア条 件となる例外処理を実行しても自動クリアはされず、ビットは 1 のままとなります。 (1)DT CEA3 =1 にセットした場合(AD I を割込み要因に設定)、I RQ4F フラグの自 動クリア 128 5. 割込みコントローラ (2)DT CEA2 =1 にセットした場合(I CIA を割込み要因に設定)、I RQ5F フラグの自 動クリア (3)DT CEA1 =1 にセットした場合(I CIB を割込み要因に設定)、I RQ6F フラグの自 動クリア (4)DTCEA0=1 にセットした場合(OCIA を割込み要因に設定)、IRQ7F フラグの自 動クリア DTC の起動割込み要因と IRQ 割込みを上記の組み合わせで使用する場合には、 当該 IRQ の割込 み処理ルー チン内でソフ トウェアに より割込み フラグのクリ アを行って くださ い。 129 5. 割込みコントローラ 5.2.6 キーボードマトリクス割込みマスクレジスタ(KMIMR) ビット : 7 6 5 4 3 2 1 0 KMIMR7 KMIMR6 KMIMR5 KMIMR4 KMIMR3 KMIMR2 KMIMR1 KMIMR0 初期値 : R/W : 1 0 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W KMIMR は 8 ビットのリード/ライト可能なレジスタで、キーボードマトリクス割込み 入力(KI N7〜KI N0 端子)および IR Q6 端子のマスク制御を行います。キーボードマトリ クスス キャン/セン スに際して 複数の端子 入力からのキ ーセンス入 力割込みを許 可する 場合、対応するマスクビットを 0 にクリアしてください。 KMIMR はリセットまたはハードウェアスタンバイモード時に、H'BFに初期化されIRQ6 端子(KIN6 端子)からの入力のみが許可された状態となります。 ビット 7〜0:キーボードマトリクス割込みマスク(KMIMR7〜KMIMR0) キーセンス入力割込み要求(KIN7〜KIN0)を制御します。 ビット 7〜0 説 明 KMIMR7〜0 【注】 0 キーセンス入力割込み要求を許可 1 キーセンス入力割込み要求を禁止 * (初期値)* ただし、KMIMR6 は IRQ6 端子割込み要求のマスク制御も同時に行なうため、初期値は 0 となります。 5.2.7 キーボードマトリクス割込みマスクレジスタ(KMIMRA) ビット : 7 6 5 4 3 2 1 0 KMIMR15 KMIMR14 KMIMR13 KMIMR12 KMIMR11 KMIMR10 KMIMR9 KMIMR8 初期値 : R/W : 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W KMIMR A は 8 ビットのリード/ライト可能なレジスタで、キーボードマトリクス割込 み入力(KIN15〜KIN8 端子)のマスク制御を行います。キーボードマトリクススキャン/ センスに際して複数の端子入力からのキーセンス入力割込みを許可する場合、対応するマ スクビットを 0 にクリアしてください。 KMIMR A はリセットまたはハードウェアスタンバイモード時に、H'F F に初期化されま す。 130 5. 割込みコントローラ ビット 7〜0:キーボードマトリクス割込みマスク(KMIMR15〜KMIMR8) キーセンス入力割込み要求(KIN15〜KIN8)を制御します。 ビット 7〜0 説 明 KMIMR15〜8 0 キーセンス入力割込み要求を許可 1 キーセンス入力割込み要求を禁止 (初期値) IRQ7、IRQ6 割込みと KIN15〜KIN0 割込み、KMIMR、KMIMRA との関係を図 5.2 に示 します。 KMIMR0(初期値1) P60/ KIN0 KMIMR5(初期値1) P65/ KIN5 IRQ6内部信号 エッジレベル選択 ・許可/禁止 回路 KMIMR6(初期値0) P66/ KIN6/ IRQ6 KMIMR7(初期値1) P67/ KIN7/ IRQ7 KMIMR8(初期値1) PA0/ KIN8 IRQ6E IRQ6SC IRQ7内部信号 エッジレベル選択 ・許可/禁止 回路 KMIMR9(初期値1) PA1/ KIN9 KMIMR15(初期値1) PA7/ KIN15 図 5.2 IRQ6 割込み IRQ7 割込み IRQ7E IRQ7SC IRQ7、IRQ6 割込みと KIN15〜KIN0 割込み、KMIMR、KMIMRA との関係 KMIMR 15〜KMIMR 8 の 1 ビットでも 0 にクリアされていると、IR Q7 端子からの IR Q7 割込み入力が無視されます。また、KIN7〜KIN0 端子あるいは KIN15〜KIN8 端子をキーセ ンス割込み入力端子として使用する場合は 、それぞれの対応する割込み要因(IR Q6 ある いは IR Q7)の割込みセンス条件を、必ず Low レベルセンスまたは立ち下がりエッジセン スに設定してください。 131 5. 割込みコントローラ 5.2.8 アドレスブレークコントロールレジスタ(ABRKCR) ビット : 7 6 5 4 3 2 1 0 CMF − − − − − − BIE 初期値 : 0 0 0 0 0 0 0 0 : R − − − − − − R/W R/W ABRKCR は、8 ビットのリードライト可能なレジスタで、アドレスブレークの制御を行 います。 AB R KCR は、リセットまたはハードウェアスタンバイモード時に H'00 に初期化されま す。ソフトウェアスタンバイモードでは初期化されません。 ビット 7:コンディションマッチフラグ(CMF) アドレスブレーク要 因フラグです。B AR で設定したアドレスを プリフェッチしたこと を示します。CMF フラグ、BIE フラグがいずれも 1 にセットされると、アドレスブレーク が要求されます。 ビット 7 説 明 CMF 0 [クリア条件] アドレスブレーク割込み例外処理を実行したとき 1 (初期値) [セット条件] BIE=1 の状態で、BARA〜BARC で設定したアドレスのプリフェッチを実行したと き ビット 6〜1:リザーブビット リザーブビットです。リードすると常に 0 が読み出されます。ライトは無効です。 ビット 0:ブレーク割込みイネーブル(BIE) アドレスブレークの許可/禁止を選択します。 ビット 0 説 明 BIE 132 0 アドレスブレーク禁止 1 アドレスブレーク許可 (初期値) 5. 割込みコントローラ 5.2.9 ブレークアドレスレジスタ A、B、C(BARA、BARB、BARC) ビット : BARA 初期値 : R/W : ビット : BARB 初期値 : R/W : ビット : BARC 初期値 : R/W : 7 6 5 4 3 2 1 0 A23 A22 A21 A20 A19 A18 A17 A16 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 7 6 5 4 3 2 1 0 A15 A14 A13 A12 A11 A10 A9 A8 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 7 6 5 4 3 2 1 0 A7 A6 A5 A4 A3 A2 A1 − 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W − BAR は、8 ビットのリード/ライト可能な 3 本のレジスタ(BARA、B、C)で構成され ています。BAR はアドレスブレークを発生させるアドレスを指定します。 B AR は、リセットまたはハードウェアスタンバイモード時にそれぞれ H'00 に初期化さ れます。ソフトウェアスタンバイモードでは初期化されません。 BARA ビット 7〜0:アドレス 23〜16(A23〜A16) BARB ビット 7〜0:アドレス 15〜8(A15〜A8) BARC ビット 7〜1:アドレス 7〜1(A7〜A1) アドレスブレークを発生させるアドレスを指定します。BAR の A23 ビット〜A1 ビット は、それぞれ内部アドレスバスの A23〜A1 と比較されます。 ブレークアドレスは、命令の第1バイトが存在するアドレスに設定してください。その 他のアドレスでは、条件成立とみなされない場合があります。 なお、ノーマルモードの場合は、アドレス A23〜A16 は比較されません。 BARC ビット 0:リザーブビット リザーブビットです。リードすると常に 0 が読み出されます。ライトは無効です。 133 5. 割込みコントローラ 5.3 割込み要因 割込み要因には、外部割込み(NMI、IRQ7〜IRQ0)と内部割込みがあります。 5.3.1 外部割込み 外部割込みには、NMI、IR Q7〜IR Q0、KIN15〜KIN0 の 25 本の入力端子(実端子は 23 本)からの 9 要因があります。KIN15〜KIN8 は IRQ7、KIN7〜KIN0 は IRQ6 と兼用になっ ています。このうち、NMI、IRQ7、IRQ6、IRQ2〜IRQ0 はソフトウェアスタンバイモード からの復帰に使用できます。 (1)NMI 割込み NMI は最優先の割込みで、割込み制御モー ドや、C PU の割込みマスクビットの状態に かかわらず常に受け付けられます。NMI 端子の立ち上がりエッジまたは立ち下がりエッジ のいずれかで割込みを要求するか、SYSCR の NMIEG ビットで選択できます。 NMI 割込み例外処理のベクタ番号は 7 です。 (2)IRQ7〜IRQ0 割込み IR Q7〜IR Q0 割込 みは IR Q7〜IR Q0 端子の入力 信号により要求されま す。IR Q7〜IR Q0 割込みには次の特長があります。 (a)IR Q7〜IR Q0 端子の Low レベル、立ち下がりエッジ、立ち上がりエッジおよび両 エッジのいずれかで割込みを要求するか、ISCR で選択できます。 (b)IRQ7〜IRQ0 割込み要求を許可するか禁止するかを、IER で選択できます。 (c)ICR により割込みコントロールレベルを設定できます。 (d)IRQ7〜IRQ0 割込み要求のステータスは、ISR に表示されます。ISR のフラグはソ フトウェアで 0 にクリアすることができます。 IRQ7〜IRQ0 割込みのブロック図を図 5.3 に示します。 IRQnE IRQnSCA、IRQnSCB IRQnF エッジ/レベル 検出回路 S クリア信号 134 IRQn割込み要求 R IRQn入力 図 5.3 Q IRQ7〜IRQ0 割込みのブロック図 【注】 n:7〜0 5. 割込みコントローラ IRQnF のセットタイミングを図 5.4 に示します。 φ IRQn 入力端子 IRQnF 図 5.4 IRQnF のセットタイミング IRQ7〜IRQ0 割込み例外処理のベクタ番号は、23〜16 です。 IR Q7〜IR Q0 割込みの検出は、当該の端子が入力に設定されているか、出力に設定され ているかに依存しません。したがって、外部割込み入力端子として使用する場合には、対 応する DDR を 0 にクリアして、そのほかの機能の入出力端子としては使用しないでくだ さい。 IRQ6 端子を IRQ6 割込み入力端子として使用する場合は、KMIMR6 ビットを 0 にクリア してください。 また、 IR Q7 端子 を IR Q7 割込 み入力端 子として使 用する場 合は、必 ず KMIMR 15〜 KMIMR8 の各ビットをすべて 1 にセットしてください。どれか 1 ビットでも 0 にクリアさ れていると、IRQ7 端子からの IRQ7 割込み入力が無視されます。 割込み要求フラグ IRQ7F〜IRQ0F は、IER の設定にかかわらずセット条件を満たしたと きにセットされますので、必要なフラグのみ参照してください。 (3)KIN15〜KIN0 割込み KI N15〜KI N0 割込みは、 KIN15〜KIN0 端子の入力信号により要 求されます。KIN15〜 KIN0 端子をキーセンス入力として使用する場合、対応する KMIMR ビットは、そのキー センス入力割込みを許可するために、0 にクリアしてください。残りの使用していないキ ーセンス入力の KMIMR ビットは、その割込みを禁止するために 1 にセットしてください。 KI N15〜KI N8 割込みは IR Q7 割込み、KI N7〜KI N0 割込みは IR Q6 割込みとなります。割 込み要求発生の端子条件、割込み要求の許可、割込みコントロールレベルの設定、および 割込み要求のステータス表示は、IRQ7 および IRQ6 割込みの各設定、表示にしたがいます。 なお、KIN7〜KIN0 端子あるいは KIN15〜KIN8 端子をキーセンス割込み入力端子として 使用する場合は、それぞれの対応する割込み要因(IRQ6 あるいは IRQ7)の割込みセンス 条件を、必ず Low レベルセンスまたは立ち下がりエッジセンスに設定してください。 135 5. 割込みコントローラ 5.3.2 内部割込み 内蔵周辺モジュールからの割込みによる内部割込みには 43 要因があります。また、ソ フトウェアによる割込み(アドレスブレーク)が 1 要因あります。 (1)各内蔵周辺モジュールには、割込み要求のステータスを表示するフラグと、これらの 割込みを許可するか禁止するかを選択するイネーブルビットがあります。これらがい ずれも 1 にセットされると割込み要求が割込みコントローラに要求されます。 (2)ICR によって割込みコントロールレベルを設定できます。 (3)FRT、TMR、SCI などの割込み要求により DTC の起動ができます。 割込みにより DTC の起動を行う場合、割込み制御モードや、C PU の割込みマスクビ ットの影響を受けません。 136 5. 割込みコントローラ 5.3.3 割込み例外処理ベクタテーブル 表 5.4 に割込み例外処理要因とベクタアドレスおよび割込み優先順位の一覧を示します。 デフォルトの優先順位はベクタ番号の小さいものほど高くなっています。 モジュール間の優先順位は、IC R により設定することができます。2 つ以上のモジュー ルを同一の優先順位に設定した場合、また、モジュール内の優先順位は、表 5.4 のとおり 固定です。 表 5.4 割込み要因とベクタアドレスおよび割込み優先順位一覧(1) 割込み要因 要因発生元 ベクタ ベクタアドレス ICR 番号 ノーマルモード アドバンストモード 7 H'000E H'00001C IRQ0 16 H'0020 H'000040 ICRA7 IRQ1 17 H'0022 H'000044 ICRA6 IRQ2 18 H'0024 H'000048 ICRA5 IRQ3 19 H'0026 H'00004C IRQ4 20 H'0028 H'000050 IRQ5 21 H'002A H'000054 IRQ6、KIN7〜KIN0 22 H'002C H'000058 IRQ7、KIN15〜KIN8 23 H'002E H'00005C DTC 24 H'0030 H'000060 ICRA2 WOVI0(インターバルタイマ) ウォッチドッグタイマ 0 25 H'0032 H'000064 ICRA1 WOVI1(インターバルタイマ) ウォッチドッグタイマ 1 26 H'0034 H'000068 ICRA0 − 27 H'0036 H'00006C A/D 28 H'0038 H'000070 − 29 H'003A H'000074 〜 〜 〜 47 H'005E H'0000BC NMI SWDTEND 外部端子 優先 順位 高 ICRA4 ICRA3 (ソフトウェア起動データ転送了) アドレスブレーク(PC ブレーク) ADI(A/D 変換終了) リザーブ ICIA(インプットキャプチャ A) フリーランニング 48 H'0060 H'0000C0 ICIB(インプットキャプチャ B) タイマ 49 H'0062 H'0000C4 ICIC(インプットキャプチャ C) 50 H'0064 H'0000C8 ICID(インプットキャプチャ D) 51 H'0066 H'0000CC OCIA(アウトプットコンペア A) 52 H'0068 H'0000D0 OCIB(アウトプットコンペア B) 53 H'006A H'0000D4 FOVI(オーバフロー) 54 H'006C H'0000D8 リザーブ 55 H'006E H'0000DC 56 H'0070 H'0000E0 〜 〜 〜 63 H'007E H'0000FC リザーブ − ICRB7 ICRB6 低 137 5. 割込みコントローラ 表 5.4 割込み要因とベクタアドレスおよび割込み優先順位一覧(2) 割込み要因 ベクタ ベクタアドレス 番号 ノーマルモード アドバンストモード CMIA0(コンペアマッチ A) 8 ビットタイマ 64 H'0080 H'000100 CMIB0(コンペアマッチ B) チャネル 0 65 H'0082 H'000104 OVI0(オーバフロー) 66 H'0084 H'000108 リザーブ 67 H'0086 H'00010C CMIA1(コンペアマッチ A) 8 ビットタイマ 68 H'0088 H'000110 CMIB1(コンペアマッチ B) チャネル 1 69 H'008A H'000114 OVI1(オーバフロー) 70 H'008C H'000118 リザーブ 71 H'008E H'00011C CMIAY(コンペアマッチ A) 8 ビットタイマ 72 H'0090 H'000120 CMIBY(コンペアマッチ B) チャネル Y、X 73 H'0092 H'000124 OVIY(オーバフロー) 74 H'0094 H'000128 ICIX(インプットキャプチャX) 75 H'0096 H'00012C 76 H'0098 H'000130 IBF2(IDR2 受信完了) 77 H'009A H'000134 IBF3(IDR3 受信完了) 78 H'009C H'000138 IBF4(IDR4 受信完了) 79 H'009E H'00013C IBF1(IDR1 受信完了) ERI0(受信エラー0) ホストインタフェース SCI チャネル 0 80 H'00A0 H'000140 RXI0(受信完了 0) 81 H'00A2 H'000144 TXI0(送信データエンプティ 0) 82 H'00A4 H'000148 TEI0(送信終了 0) 83 H'00A6 H'00014C 84 H'00A8 H'000150 RXI1(受信完了 1) 85 H'00AA H'000154 TXI1(送信データエンプティ 1) 86 H'00AC H'000158 TEI1(送信終了 1) 87 H'00AE H'00015C 88 H'00B0 H'000160 RXI2(受信完了 2) 89 H'00B2 H'000164 TXI2(送信データエンプティ 2) 90 H'00B4 H'000168 TEI2(送信終了 2) 91 H'00B6 H'00016C IIC チャネル 0 92 H'00B8 H'000170 【オプション】 93 H'00BA H'000174 ERI1(受信エラー1) ERI2(受信エラー2) IICI0(1 バイト送信/受信完了) DDCSWI(フォーマットスイッチ) IICI1(1 バイト送信/受信完了) SCI チャネル 1 SCI チャネル 2 IIC チャネル 1 94 H'00BC H'000178 【オプション】 95 H'00BE H'00017C PS2IA(受信完了 A) キーボードバッファ 96 H'00C0 H'000180 PS2IB(受信完了 B) コントローラ(PS2) 97 H'00C2 H'000184 PS2IC(受信完了 C) 98 H'00C4 H'000188 リザーブ 99 H'00C6 H'00018C 100 H'00C8 H'000190 〜 〜 〜 103 H'00CE H'00019C リザーブ リザーブ 138 要因発生元 − ICR 優先 順位 ICRB3 高 ICRB2 ICRB1 ICRB0 ICRC7 ICRC6 ICRC5 ICRC4 ICRC3 ICRB0 低 5. 割込みコントローラ 5.4 アドレスブレーク 5.4.1 特長 本 LS I では、AB R KCR 、B AR の設定により、C PU による特定アドレスのプリフェッチ を判定し、アドレスブレーク割込みを発生させることができます。このアドレスブレーク 割込みが発生すると、アドレスブレーク割込み例外処理を実行します。 本機能により、プログラム上のバグの箇所の実行開始を検出し修正プログラムへ分岐す るなどの応用が可能です。 5.4.2 ブロック図 アドレスブレークのブロック図を図 5.5 に示します。 BAR 比較器 ABRKCR 一致信号 コントロール ロジック アドレスブレーク 割込み要求 内部アドレス プリフェッチ信号 (内部信号) 図 5.5 アドレスブレークのブロック図 139 5. 割込みコントローラ 5.4.3 動作説明 ABRKCR、BAR の設定により、BAR に設定されたアドレスを CPU がプリフェッチした ときに、アドレスブレーク割込みを発生させることができます。このアドレスブレーク機 能は、プリフェッチした時点で割込みコントローラに対して、割込み要求を発生し、割込 みコントローラで優先順位を判定します。割込みが受け付けられると、そのとき実行中の 命令が 終了した後、 割込み例外 処理を起動 します。なお 、アドレス ブレーク割込 みでは CPU の CCR の I、UI ビットによる割込みマスク制御は無効です。 アドレスブレークを使用するときは、次に示すように各レジスタを設定します。 [1]ブレークアドレスを BAR の A23〜A1 ビットに設定します。 [2]ABRKCR の BIE ビットを1にセットしてアドレスブレークを許可します。 BIE ビットを0にクリアしている場合、アドレスブレークは要求されません。 設定条件が成立すると、ABRKCR の CMF フラグが1にセットされ、割込みを要求しま す。割込み処理ルーチンで、必要に応じて要因の判定を行ってください。 5.4.4 使用上の注意 (1)アドレスブレークでは、ブレークアドレスを命令の第1バイトが存在するアドレスに してください。その他のアドレスでは、条件成立とみなされない場合があります。 (2)ノーマルモードの場合は、アドレス A23〜A16 は比較されません。 (3)BAR で設定したアドレスの直前の命令にブランチ命令(Bcc、BSR)、ジャンプ命令 (JMP、JSR)、RTS 命令、RTE 命令を配置した場合、これらの命令の実行により当該 アドレスに対するプリフェッチ信号が出力され、アドレスブレークが要求される場合 があります。これらの命令の直後のアドレスに対するブレークアドレスの設定を行わ ない、あるいは割込み処理ルーチンで、本来の条件成立による割込み処理であったか の判定を行う、などの対策が必要です。 (4)アドレスブレーク割込みは、内部プリフェッチ信号とアドレスの組み合せにより発生 しますので、設定したアドレスの命令および直前の命令の内容、実行サイクルにより、 割込み例外処理の入るタイミングが異なります。図 5 .6 にアドレスタイミング例を示 します。 140 5. 割込みコントローラ ●プログラム領域・内蔵メモリで、ブレークアドレスを指定した命令が1ステート実行命令時 命令 命令 命令 命令 命令 内部 フェッチ フェッチフェッチ フェッチ フェッチ 動作 スタック 退避 ベクタ フェッチ 内部 動作 命令 フェッチ φ アドレスバス H'0310 H'0312 H'0314 H'0316 NOPの 実行 H'0318 SP-2 SP-4 H'0036 割込み例外処理 NOPの NOPの 実行 実行 ブレーク 要求信号 H'0310 H'0312 H'0314 H'0316 NOP NOP NOP NOP ブレークポイント ブレークポイントのH'0312番地、次のH'0314番地 のNOP命令は実行され、 例外処理終了後、H'0316番地からフェッチ開始。 ●プログラム領域・内蔵メモリで、ブレークアドレスを指定した命令が2ステート実行命令時 命令 命令 命令 命令 命令 フェッチ フェッチフェッチ フェッチフェッチ 内部 動作 スタック 退避 ベクタ フェッチ 内部 動作 命令 フェッチ φ アドレスバス H'0310 H'0312 H'0314 H'0316 NOPの 実行 H'0318 SP-2 SP-4 H'0036 割込み例外処理 MOV.Wの 実行 ブレーク 要求信号 H'0310 H'0312 H'0316 H'0318 NOP MOV.W #xx:16,Rd NOP NOP ブレークポイント ブレークポイントのH'0312番地のMOV命令は実行 され、次のH'0316番地のNOP命令は実行されず、 例外処理終了後、H'0316番地からフェッチ開始。 ●プログラム領域・外部メモリ(2ステートアクセス・16ビットバスアクセス)で、 ブレークアドレスを指定した命令が1ステート実行命令時 命令 フェッチ 命令 フェッチ H'0310 H'0312 命令 フェッチ 内部 動作 スタック 退避 ベクタ フェッチ 内部 動作 φ アドレスバス H'0314 SP-2 SP-4 H'0036 割込み例外処理 NOPの 実行 ブレーク 要求信号 H'0310 H'0312 H'0314 H'0316 図 5.6 NOP NOP NOP NOP ブレークポイント ブレークポイントのH'0312番地のNOP命令は実行 されず、例外処理終了後、H'0312番地から フェッチ開始。 アドレスブレークタイミング例 141 5. 割込みコントローラ 5.5 割込み動作 5.5.1 割込み制御モードと割込み動作 本 LSI の割込みの動作は、割込み制御モードによって異なります。 NMI およびアドレスブレーク割込みはリセット状態、ハードウェアスタンバイ状態を除 き常に受け付けられます。IRQ 割込み、および内蔵周辺モジュールの割込みは、それぞれ の割込みに対応したイネーブルビットがあります。このイネーブルビットを 0 にクリアす ると、その割込み要求は禁止されます。イネーブルビットを 1 にセットした割込み要因が、 割込みコントローラで制御されます。 表 5.5 に割込み制御モードを示します。 SYSCR の INTM1、INTM0 ビットによる割込み制御モードの設定、ICR による割込み優 先順位の設定、および C PU の C CR の I、UI ビットによるマスク状態に基づいて、割込み コントローラは割込みを制御します。 表 5.5 割込み制御モード 割込み制御 優先順位設 SYSCR モード INTM1 INTM0 0 0 0 割込み 説 明 定レジスタ マスクビット ICR I I ビットにより、割込みマスク制御を行います。 ICR により、優先順位の設定ができます。 1 1 ICR I、UI I、UI ビットにより、3 レベルの割込みマスク制 御を行います。 ICR により、優先順位の設定ができます。 142 5. 割込みコントローラ 図 5.7 に優先順位判定回路のブロック図を示します。 I UI ICR 割込み受け付け制御 および 3レベルマスク制御 割込み要因 デフォルト 優先順位判定 ベクタ番号 割込み制御モード0、1 図 5.7 割込み制御動作のブロック図 (1)割込み受け付け制御および3レベル制御 割込み制御モード 0、1 のとき、C CR の I、UI ビット、および IC R (コントロールレベ ル)により割込み受け付け制御、3 レベルのマスク制御を行います。 表 5.6 に、割込み制御モードと選択可能な割込みについて示します。 表 5.6 割込み制御モードと選択される割込み 割込み制御モード 0 1 割込みマスクビット 選択される割込み I UI 0 * すべての割込み(コントロールレベル 1 を優先) 1 * NMI、アドレスブレーク割込み 0 * すべての割込み(コントロールレベル 1 を優先) 1 0 NMI、アドレスブレーク割込み、およびコントロール レベル 1 の割込み 1 NMI、アドレスブレーク割込み 【記号説明】 *:Don't care 143 5. 割込みコントローラ (2)デフォルト優先順位判定 選択された割込みについて優先順位を判定し、ベクタ番号を生成します。 ICR に対して同じ値を設定した場合には、複数の割込み要因の受け付けが許可されるこ とになるため、あらかじめデフォルトで設定した優先順位にしたがって最も優先順位の高 い割込み要因のみを選択し、ベクタ番号を生成します。 受け付けられた割込み要因よりも低い優先順位をもった割込み要因は保留されます。 表 5.7 に割込み制御モードと動作および制御信号機能を示します。 表 5.7 割込み制御モードと動作および制御信号機能 割込み制御 設 定 割込み受け付け制御 デフォルト優先順位 T 3 レベル制御 判定 (トレース) モード INTM1 INTM0 0 0 1 I UI ICR 0 ○ IM − PR ○ − 1 ○ IM IM PR ○ − 【記号説明】 144 ○ :割込み動作制御を行います。 IM :割込みマスクビットとして使用。 PR :優先順位を設定。 ― :使用しません。 5. 割込みコントローラ 5.5.2 割込み制御モード 0 IRQ 割込み、および内蔵周辺モジュールの割込みは CPU の CCR の I ビット、および ICR によって許可または禁止を設定できます。I ビットが 0 にクリアされているときは許可状 態、1 にセットされているときは禁止状態です。コントロールレベル 1 の割込み要因の優 先順位は高くなります。 この場合の割込み受け付けの動作フローチャートを図 5.8 に示します。 [1]対応する 割込みイネーブルビ ットが 1 にセットされ ている状態で割込み 要因が発生 したとき、割込みコントローラに対して、割込み要求が送られます。 [2]割込みコントローラに対して割込み要求が送られると、ICR に設定された割込みコン トロールレベルにしたがってコントロールレベル 1 の割込みが優先的に選択され、そ の他は保留となります。このとき、割込みコントロールレベルを同一に設定した割込 み要求が同時に複数発生したときは、表 5 .4 に示す優先度にしたがって、優先順位の 最も高い割込み要求が選択されます。 [3]I ビットを参照します。I ビットが 0 にクリアされているときは、割込み要求が受け付 けられます。I ビットが 1 にセットされているときは、NMI とアドレスブレーク割込 みのみ受け付けられ、その他の割込み要求は保留されます。 [4]割込み要求が受け付けられると、そのとき実行中の命令の処理が終了した後、割込み 例外処理を起動します。 [5]割込み例外処理によって、PC と CCR がスタック領域に退避されます。退避される PC は、リターン後に実行する最初の命令のアドレスを示しています。 [6]次に CCR の I ビットが 1 にセットされます。これにより、NMI とアドレスブレークを 除く割込みは禁止されます。 [7]受け付けた割込みに対応するベクタアドレスを生成し、そのベクタアドレスの内容に よって示されるアドレスから、割込み処理ルーチンの実行が開始されます。 145 5. 割込みコントローラ プログラム実行状態 No 割込み発生 Yes Yes NMI No No コントロールレベル1 の割込み 保 Yes No No IRQ0 Yes IRQ0 No Yes IRQ1 Yes No IRQ1 Yes PS2IC Yes Yes I=0 Yes PC、CCRの退避 I←1 ベクタアドレスをリード 割込み処理ルーチンへ分岐 図 5.8 146 PS2IC 割込み制御モード 0 の割込み受け付けまでのフロー No 留 5. 割込みコントローラ 5.5.3 割込み制御モード 1 IR Q 割込み、および内蔵周辺モジュールの割込みは、C PU の C CR の I、UI ビット、お よび ICR によって、3 レベルのマスクレベルを実現できます。 (1)コントロールレベル 0 の割込み要求は、I ビットが 0 にクリアされているとき許可状 態、1 にセットされているとき禁止状態となります。 (2)コントロールレベル 1 の割込み要求は、I ビットまたは UI ビットが 0 にクリアされて いるとき許可状態、I ビット、および UI ビットがいずれも 1 にセットされているとき 禁止状態となります。 例えば、各割込み要求の対応する割込みイネーブルビットを 1 にセット、IC R A〜IC R C をそれぞれ H'20、H'00、H'00 に設定した場合(IRQ2、IRQ3 割込みをコントロールレベル 1 に、その他の割込みをコントロールレベル 0 に設定した場合)、次のようになります。 (1)I=0 のとき、すべての割込みを許可 (優先順位:NMI>IRQ2>IRQ3>アドレスブレーク>IRQ0>IRQ1…) (2)I=1、UI=0 のとき、NMI、IRQ2、IRQ3、アドレスブレーク割込みのみを許可 (3)I=1、UI=1 のとき、NMI とアドレスブレーク割込みのみを許可 また、このときの状態遷移を図 5.9 に示します。 I←0 すべての割込みを許可 NMI、IRQ2、IRQ3、アドレス ブレーク割込みのみを許可 I←1、UI←0 I←0 UI←0 例外処理実行 または、UI←1 例外処理実行または I←1、UI←1 NMIとアドレスブレーク 割込みのみを許可 図 5.9 割込み制御モード 1 の状態遷移例 このときの割込み受け付けの動作フローチャートを図 5.10 に示します。 147 5. 割込みコントローラ [1]対応する 割込みイネーブルビ ットが 1 にセットされ ている状態で割込み 要因が発生 したとき、割込みコントローラに対して、割込み要求が送られます。 [2]割込みコントローラに対して割込み要求が送られると、ICR に設定された割込みコン トロールレベルにしたがってコントロールレベル 1 の割込みが優先的に選択され、そ の他は保留となります。このとき、割込みコントロールレベルを同一に設定した割込 み要求が同時に複数発生したときは、表 5 .4 に示す優先度にしたがって、優先順位の 最も高い割込み要求が選択されます。 [3]I ビットを参照します。I ビットが 0 にクリアされているときは、UI ビットの影響を 受けません。 割込みコントロールレベル 0 の割込み要求は、I ビットが 0 にクリアされているときに 受け付けられます。I ビットが 1 にセットされているときは NMI とアドレスブレーク 割込みのみ受け付けられ、その他の割込み要求は保留されます。 割込みコントロールレベル 1 の割込み要求は、割込みコントロールレベル 0 の割込み 要求よりも優先的に受け付けられ、I ビットが 0 にクリアされているとき、または I ビ ットが 1 にセットされ、UI ビットが 0 にクリアされているときに受け付けられます。 I、UI ビットがいずれも 1 にセットされているときは NMI とアドレスブレーク割込み のみ受け付けられ、その他の割込み要求は保留されます。 [4]割込み要求が受け付けられると、そのとき実行中の命令の処理が終了した後、割込み 例外処理を起動します。 [5]割込み例外処理によって、PC と CCR がスタック領域に退避されます。退避される PC は、リターン後に実行する最初の命令のアドレスを示しています。 [6]次に C CR の I、UI ビットが 1 にセットされます。これにより、NMI とアドレスブレ ークを除く割込みは禁止されます。 [7]受け付けた割込みに対応するベクタアドレスを生成し、そのベクタアドレスの内容に よって示されるアドレスから、割込み処理ルーチンの実行が開始されます。 148 5. 割込みコントローラ プログラム実行状態 No 割込み発生 Yes Yes NMI No No コントロールレベル1 の割込み 保 留 Yes IRQ0 Yes No No IRQ0 No Yes IRQ1 No IRQ1 Yes Yes PS2IC PS2IC Yes Yes No I=0 Yes UI=0 I=0 No No Yes Yes PC、CCRの退避 I←1、UI←1 ベクタアドレスをリード 割込み処理ルーチンへ分岐 図 5.10 割込み制御モード 1 の割込み受け付けまでのフロー 149 150 図 5.11 割込み例外処理 (2) (4) (3) (5) (7) (1) (1) (2) (4) 命令 プリフェッチ 命令のプリフェッチアドレス(実行されません。 退避PCの内容であり、リターンアドレスです。) 命令コード(実行されません。) 命令のプリフェッチアドレス(実行されません。) SP-2 SP-4 内部 データバス 内部 ライト信号 内部 リード信号 内部 アドレスバス 割込み 要求信号 φ 割込みレベル判定 命令終了待ち 割込み受付 (3) 内部動作 (6) (8) (9) (11) (10) (12) (13) (14) (5) (7) (8) (9) (10) ベクタフェッチ (12) (11) 退避PCと退避CCR ベクタアドレス 割込み処理ルーチン開始アドレス(ベクタアドレスの内容) 割込み処理ルーチン開始アドレス((13)=(10) (12)) 割込み処理ルーチン先頭命令 (6) スタック 内部動作 (14) (13) 割込み処理ルーチンの 命令プリフェッチ 5. 割込みコントローラ 5.5.4 割込み例外処理シーケンス 図 5 .1 1 に、割込み例外処理シーケンスを示します。アドバンストモードで割込み制御 モード 0 とし、プログラム領域およびスタック領域を内蔵メモリとした場合の例です。 割込みコントローラ 5. 5.5.5 割込み応答時間 本 LSI では、内蔵メモリに対する高速ワードアクセスを可能にしており、プログラム領 域を内蔵 ROM、スタック領域を内蔵 RAM に設けることにより、処理速度の向上を図るこ とができます。 割込み要求が発生してから、割込み例外処理ルーチンの先頭命令が実行されるまでの割 込み応答時間を表 5 .8 に示します。表 5 .8 の実行状態の記号については表 5 .9 を参照して ください。 表 5.8 割込み応答時間 実行状態 No. ノーマルモード アドバンストモード 1 割込み優先順位判定* 1 3 2 実行中の命令が終了するまでの 待ちステート数* 1〜(19+2・SI) 2 3 PC、CCR のスタック 4 ベクタフェッチ 2・SK 2・SK SI 2・SI 5 命令フェッチ* 3 6 内部処理* 2・SI 4 2 合計(内蔵メモリ使用時) 【注】 11〜31 12〜32 *1 内部割込みの場合 2 ステートとなります。 *2 MULXS、DIVXS 命令について示しています。 *3 割込み受け付け後のプリフェッチおよび割込み処理ルーチンのプリフェッチです。 *4 割込み受け付け後の内部処理およびベクタフェッチ後の内部処理です。 表 5.9 割込み例外処理の実行状態のステート数 記 号 アクセス対象 内部メモリ 外部デバイス 8 ビットバス 16 ビットバス 2 ステート 3 ステート 2 ステート 3 ステート 命令フェッチSI アクセス アクセス アクセス アクセス 4 6+2m 2 3+m 1 分岐アドレスリードSJ スタック操作SK 【記号説明】 m:外部デバイスアクセス時のウェイトステート数 151 5. 割込みコントローラ 5.6 使用上の注意 5.6.1 割込みの発生とディスエーブルとの競合 割込みイネーブルビットを 0 にクリアして割込みを禁止する場合、割込みの禁止はその 命令実行終了後に有効になります。 すなわち、BCLR 命令、MOV 命令等で割込みイネーブルビットを 0 にクリアする場合、 命令実行中にその割込みが発生すると、命令実行終了時点では当該割込み許可状態にある ため、命令実行終了後にその割込み例外処理を実行します。ただし、その割込みより優先 順位の高い割込み要求がある場合には優先順位の高い割込み例外処理を実行し、その割込 みは無視されます。 割込み要因フラグを 0 にクリアする場合も同様です。 8 ビットタイマの TCR の CMIEA ビットを 0 にクリアする場合の例を図 5.12に示します。 CPUによるTCR ライトサイクル CMIA例外処理 φ 内部 アドレスバス TCRアドレス 内部 ライト信号 CMIEA CMFA CMIA 割込み信号 図 5.12 割込みの発生とディスエーブルの競合 なお、割込みをマスクした状態でイネーブルビットまたは割込み要因フラグを 0 にクリ アすれば、上記の競合は発生しません。 152 5. 割込みコントローラ 5.6.2 割込みを禁止している命令 割込みを禁止している命令には、LDC、ANDC、ORC、XORC 命令があります。これら の命令実行終了後は、NMI 割込みを含めて割込みが禁止され、必ず次の命令を実行します。 これらの命令により I ビットまたは UI ビットを設定した場合、命令実行終了の 2 ステート 後に新しい値が有効になります。 5.6.3 EEPMOV 命令実行中の割込み EEPMOV.B 命令と EEPMOV.W 命令では、割込み動作が異なります。 EEP MOV. B 命令のときは、転送中に NMI を含めた割込み要求があっても転送終了まで 割込みを受け付けません。 EEP MOV. W 命令のときは、転送中に割込み要求があった場合、転送サイクルの切れ目 で割込み例外処理が開始されます。このときスタックされる P C の値は次命令のアドレス となります。 このため、EEP MOV. W 命令実行中に割込みが発生する場合には、以下のプログラムと してください。 L1: EEPMOV.W MOV.W R4,R4 BNE L1 153 5. 割込みコントローラ 5.7 割込みによる DTC の起動 5.7.1 概要 割込みにより、DTC を起動することができます。この場合、以下の選択を行うことがで きます。 (1)CPU に対する割込み要求 (2)DTC に対する起動要求 (3)(1)〜(2)の複数の選択 なお、DTC を起動できる割込み要求については、「第 7 章 データトランスファコント ローラ(DTC)」を参照してください。 5.7.2 ブロック図 図 5.13 に、DTC と割込みコントローラのブロック図を示します。 割込み要求 DTC起動要求 ベクタ番号 選択回路 IRQ割込み 選択信号 内蔵周辺 モジュール DTCER 割込み要因 クリア信号 クリア信号 コントロール ロジック DTC クリア信号 DTVECR SWDTE クリア信号 CPU割込み要求 ベクタ番号 CPU 優先順位判定 I、UI 割込みコントローラ 図 5.13 DTC と割込み制御 154 5. 割込みコントローラ 5.7.3 動作説明 DTC 制御の割込みコントローラの機能は 3 つに大別されます。 (1)割込み要因の選択 割込み要因は、DTC の DTC ER A〜DTC ER E の DTC E ビットにより、DTC 起動要求とす るか、CPU 割込み要求とするかを選択します。 DTC の MRB の DISEL ビットの指定により、DTC のデータ転送後、DTCE ビットを 0 に クリアして、CPU に割込みを要求することができます。 なお、DTC が所定回数のデータ転送を行い、転送カウンタが 0 になった場合には、DTC のデータ転送後、DTCE ビットを 0 にクリアして、CPU に割込みを要求します。 (2)優先順位判定 DTC の起動要因はデフォルトの優先順位にしたがって選択されます。マスクレベルやプ ライオリティレベルなどの影響を受けません。それぞれの優先順位は、「7 .3 .3 DTC ベ クタテーブル」を参照してください。 (3)動作順序 同一の割込みを、DTC の起動要因と CPU の割込み要因に選択した場合、DTC のデータ 転送が行われ、その後、CPU の割込み例外処理が行われます。 表 5.10 に、DTC の DTCERA〜DTCERE の DTCE ビット、および DTC の MRB の DISEL ビットの設定による割込み要因の選択と割込み要因クリア制御を示します。 表 5.10 割込み要因の選択とクリア制御 設定内容 割込み要因選択・クリア制御 DTC DTCE DISEL DTC CPU 0 * × ◎ 1 0 ◎ × 1 ○ ◎ 【記号説明】 ◎ :当該割込みを使用します。割込み要因のクリアを行います。 (CPU は割込み処理ルーチンで、要因フラグをクリアしてください。) ○ :当該割込みを使用します。割込み要因をクリアしません。 × :当該割込みは使用できません。 * :Don't care 155 5. 割込みコントローラ (4)使用上の注意 S CI 、II C および A/D 変換器の割込み要因は、DTC が所定のレジスタをリード/ライト したときにクリアされ、DISEL ビットには依存しません。 156 6. バスコントローラ 第6章 6.1 6.2 6.3 6.4 6.5 6.6 6.7 目次 概要 ....................................................................................................................................... 159 6.1.1 特長 ...................................................................................................... 159 6.1.2 ブロック図 ............................................................................................ 160 6.1.3 端子構成................................................................................................ 161 6.1.4 レジスタ構成 ......................................................................................... 161 各レジスタの説明 ................................................................................................................... 162 6.2.1 バスコントロールレジスタ(BCR)........................................................ 162 6.2.2 ウェイトステートコントロールレジスタ(WSCR) ................................. 163 バス制御の概要....................................................................................................................... 166 6.3.1 バス仕様................................................................................................ 166 6.3.2 アドバンストモード ............................................................................... 167 6.3.3 ノーマルモード...................................................................................... 167 6.3.4 I/O セレクト信号 .................................................................................... 168 基本バスインタフェース ......................................................................................................... 169 6.4.1 概要 ...................................................................................................... 169 6.4.2 データサイズとデータアライメント........................................................ 169 6.4.3 有効ストローブ...................................................................................... 171 6.4.4 基本タイミング...................................................................................... 172 6.4.5 ウェイト制御 ......................................................................................... 180 バースト ROM インタフェース ................................................................................................ 182 6.5.1 概要 ...................................................................................................... 182 6.5.2 基本タイミング...................................................................................... 182 6.5.3 ウェイト制御 ......................................................................................... 183 アイドルサイクル ................................................................................................................... 184 6.6.1 動作説明................................................................................................ 184 6.6.2 アイドルサイクルでの端子状態 .............................................................. 185 バスアービトレーション ......................................................................................................... 186 6. 158 バスコントローラ 6.7.1 概要 ...................................................................................................... 186 6.7.2 動作説明................................................................................................ 186 6.7.3 バス権移行タイミング............................................................................ 187 6. バスコントローラ 6.1 概要 本 LSI はバスコントローラ(BSC)を内蔵しており、外部アドレス空間のバス幅、アク セスステート数などのバス仕様を設定することが可能です。 また、バスコントローラはバス調停権機能をもっており、内部バスマスタである CPU、 データトランスファコントローラ(DTC)の動作を制御します。 6.1.1 特長 バスコントローラの特長を以下に示します。 ■基本バスインタフェース ・2 ステートアクセス空間/3 ステートアクセス空間を選択可能 ・プログラムウェイトステートを挿入可能 ■バースト ROM インタフェース ・外部空間をバースト ROM インタフェースに設定可能 ・バーストアクセスの 1 または 2 ステートを選択可能 ■アイドルサイクル挿入 ・外部リード サイクルの直後の外部ライ トサイクル時、アイドルサ イクルを挿入可 能 ■バス権調停機能(バスアービトレーション) ・バスアービタを内蔵し、CPU および DTC のバス権を調停 159 6. バスコントローラ 6.1.2 ブロック図 バスコントローラのブロック図を図 6.1 に示します。 外部バス制御信号 バス 制御部 内部制御信号 バスモード信号 WSCR BCR WAIT ウェイト 制御部 内 部 デ ー タ バ ス CPUバス権要求信号 DTCバス権要求信号 バスアービタ CPUバスアクノリッジ信号 DTCバスアクノリッジ信号 図 6.1 160 バスコントローラのブロック図 6. バスコントローラ 6.1.3 端子構成 表 6.1 にバスコントローラの端子構成を示します。 表 6.1 端子構成 名 称 記号 入出力 AS アドレスストローブ 機 出力 能 アドレスバス上のアドレス出力が有効 であることを示すストローブ信号。 (IOSE ビットが 0 の場合) IOS I/O セレクト 出力 I/O セレクト信号 (IOSE ビットが 1 の場合) RD リード 出力 外部空間をリードしていることを示す ストローブ信号。 HWR ハイライト 出力 外部空間をライトし、データバスの上位 (D15〜D8)が有効であることを示す ストローブ信号。 LWR ロウライト 出力 外部空間をライトし、データバスの下位 (D7〜D0)が有効であることを示す ストローブ信号。 WAIT ウェイト 入力 外部 3 ステートアクセス空間をアクセ スするときのウェイト要求信号。 6.1.4 レジスタ構成 表 6.2 にバスコントローラのレジスタ構成を示します。 表 6.2 レジスタ構成 名 称 略称 R/W 初期値 アドレス* バスコントロールレジスタ BCR R/W H'D7 H'FFC6 ウェイトステートコントロールレジスタ WSCR R/W H'33 H'FFC7 【注】 * アドレスの下位 16 ビットを示しています。 161 6. バスコントローラ 6.2 各レジスタの説明 6.2.1 バスコントロールレジスタ(BCR) ビット : 初期値 : R/W : 7 6 ICIS1 ICIS0 1 1 0 1 R/W R/W R/W R/W 5 4 3 2 1 0 ― IOS1 IOS0 0 1 1 1 R/W R/W R/W R/W BRSTRM BRSTS1 BRSTS0 BCR は 8 ビットのリード/ライト可能なレジスタで、外部メモリ空間のアクセスモード、 AS 端子を I/O ストローブ機能に設定した場合の I/O 領域の範囲を設定します。 BCR は、リセットおよびハードウェアスタンバイモード時に、H'D7 に初期化されます。 ソフトウェアスタンバイモードでは初期化されません。 ビット 7:アイドルサイクル挿入 1(ICIS1) リザーブビットです。 0 をライトしないでください。 ビット 6:アイドルサイクル挿入 0(ICIS0) 外部リードサイクルと外部ライトサイクルが連続する場合、バスサイクルの間にアイド ルサイクルを 1 ステート挿入するか、挿入しないかを選択します。 ビット 6 説 明 ICIS0 0 外部リードサイクルと外部ライトサイクルが連続したとき、アイドルサイクルを 挿入しない 1 外部リードサイクルと外部ライトサイクルが連続したとき、アイドルサイクルを 挿入する (初期値) ビット 5:バースト ROM イネーブル(BRSTRM) 外部空間をバースト R OM インタフェースとするかを選択します。すべての外部空間が 選択対象になります。 ビット 5 説 明 BRSTRM 162 0 基本バスインタフェース 1 バースト ROM インタフェース (初期値) 6. バスコントローラ ビット 4:バーストサイクルセレクト 1(BRSTS1) バースト ROM インタフェースのバーストサイクル数を選択します。 ビット 4 説 明 BRSTS1 0 バーストサイクルは 1 ステート 1 バーストサイクルは 2 ステート (初期値) ビット 3:バーストサイクルセレクト 0(BRSTS0) バースト ROM インタフェースのバーストアクセス可能なワード数を選択します。 ビット 3 説 明 BRSTS0 0 バーストアクセスは最大 4 ワード 1 バーストアクセスは最大 8 ワード (初期値) ビット 2:リザーブビット リザーブビットです。0 をライトしないでください。 ビット 1、0: IOS セレクト 1、0(IOS1、IOS0) 表 6.4 を参照してください。 6.2.2 ウェイトステートコントロールレジスタ(WSCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 RAMS RAM0 ABW AST WMS1 WMS0 WC1 WC0 0 0 1 1 0 0 1 1 R/W R/W R/W R/W R/W R/W R/W R/W WSCR は 8 ビットのリード/ライト可能なレジスタで、外部メモリ空間のデータバス幅、 外部メモリ空間のアクセスステート数、および、外部メモリ空間のウェイトモードとウェ イトステート数を設定します。内蔵メモリおよび内部 I/O レジスタのバス幅およびアクセ スステート数は WSCR の設定値にかかわらず固定です。 WSCR は、リセットおよびハードウェアスタンバイモード時に、H'33 に初期化されます。 ソフトウェアスタンバイモードでは初期化されません。 163 6. バスコントローラ ビット 7:RAM セレクト(RAMS)/ビット 6:RAM エリア設定(RAM0) リザーブビットです。A マスク品では、本ビットにライトするときは必ず 0 をライトに してください。 ビット 5:バス幅コントロール(ABW) 外部メモリ空間を 8 ビットアクセス空間とするか、16 ビットアクセス空間とするかを選 択します。 ビット 5 説 明 ABW 0 外部メモリ空間を 16 ビットアクセス空間に設定 1 外部メモリ空間を 8 ビットアクセス空間に設定 (初期値) ビット 4:アクセスステートコントロール(AST) 外部メモリ空間を 2 ステートアクセス空間にするか、3 ステートアクセス空間とするか を選択します。 同時に、ウェイトステートの挿入を許可または禁止します。 ビット 4 説 明 AST 0 外部メモリ空間を 2 ステートアクセス空間に設定 外部メモリ空間のアクセスにウェイトステートの挿入を禁止 1 外部メモリ空間アクセスは 3 ステートアクセス (初期値) 外部メモリ空間アクセスにウェイトステートの挿入を許可 ビット 3、2:ウェイトモードセレクト 1、0(WMS1、WMS0) AST ビットが 1 にセットされた状態で、外部メモリ空間をアクセスするときの、ウェイ トモードを選択します。 ビット 3 ビット 2 WMS1 WMS0 0 0 プログラムウェイトモード 1 ウェイト禁止モード 0 端子ウェイトモード 1 端子オートウェイトモード 1 164 説 明 (初期値) 6. バスコントローラ ビット 1、0:ウェイトカウント 1、0(WC1、WC0) AST ビットが 1 にセットされた状態で、外部メモリ空間をアクセスするときの、プログ ラムウェイトステート数を選択します。 ビット 1 ビット 0 WC1 WC0 0 0 プログラムウェイトを挿入しない 1 外部メモリ空間アクセス時、プログラムウェイトを 1 ステート挿入 0 外部メモリ空間アクセス時、プログラムウェイトを 2 ステート挿入 1 外部メモリ空間アクセス時、プログラムウェイトを 3 ステート挿入 1 説 明 (初期値) 165 6. バスコントローラ 6.3 バス制御の概要 6.3.1 バス仕様 外部空間のバス仕様は 、(1)バス幅、(2)アクセスステート数 、(3)ウェイトモー ド・プログラムウェイトステート数、の 3 つの要素で構成されます。 なお、内蔵メモリ、内部 I/O レジスタは、バス幅・アクセスステート数は固定で、バス コントローラの影響を受けません。 (1)バス幅 バス幅は、ABW ビットにより、8 ビットまたは 16 ビットを選択します。 (2)アクセスステート数 アクセスステート数は、AST ビットにより、2 ステートまたは 3 ステートを選択します。 2 ステートアクセス空間に設定すると、ウェイトの挿入が禁止されます。 バースト ROM インタフェースでは、AST ビットによらず、アクセスステートが決まり ます。 (3)ウェイトモード・プログラムウェイトステート数 AST ビットによって 3 ステートアクセス空間に設定したとき、WMS1、WMS0、WC1、 WC 0 により、ウェイトモ ードおよび自動的に挿入するプログラム ウェイトステート数を 選択します。プログラムウェイトは 0〜3 ステートを選択可能です。 基本バスインタフェースの各エリアのバス仕様を表 6.3 に示します。 166 6. 表 6.3 バスコントローラ 各エリアのバス仕様(基本バスインタフェース) ABW AST WMS1 WMS0 WC1 WC0 バス仕様(基本バスインタフェース) バス幅 アクセス プログラム ステート数 ウェイト ステート数 0 0 − − − − 16 2 0 1 0 1 − − 16 3 0 −* −* 0 0 3 0 1 1 * 1 0 2 1 3 0 − − − − 8 2 0 1 0 1 − − 8 3 0 −* −* 0 0 3 0 1 【注】 1 1 1 0 2 1 3 WMS1=0 かつ WMS0=1 を除く 6.3.2 アドバンストモード 外部空間の初期状態は、基本バスインタフェースかつ 3 ステートアクセス空間になって います。R OM 有効拡張モードでは、内蔵 R OM、内蔵 R AM および内部 I/O レジスタを除 いた 空間 が外 部空 間と なりま す。 なお 、内 蔵 R AM はシ ステム コン トロ ール レジ スタ (SYSCR)の RAME ビットを 1 にセットしたとき有効で、RAME ビットを 0 にクリアする と、内蔵 RAM は無効になり、対応するアドレスは外部空間になります。 6.3.3 ノーマルモード 外部メモリ空間の初期状態は、基本バスインタフェースかつ 3 ステートアクセス空間に なっています。ROM 無効拡張モードでは、内蔵 RAM および内部 I/O レジスタを除いた空 間が外部空間となります。R OM 有効拡張モードでは、内蔵 R OM、内蔵 R AM および内部 I/O レジスタを除いた空間が外部空間となります。なお、内蔵 R AM はシステムコントロ ールレジスタ(SYSCR)の RAME ビットを 1 にセットしたとき有効で、RAME ビットを 0 にクリアすると、内蔵 RAM は無効になり、対応するアドレスは外部空間になります。 167 6. バスコントローラ 6.3.4 I/O セレクト信号 本 LSI は、IO セレクト信号(IOS)を出力することができ、設定された外部空間をアク セスしたとき、Low レベルを出力します。 図 6.2 に、IOS 信号出力タイミング例を示します。 バスサイクル T1 T2 T3 φ アドレスバス IOS設定範囲の外部アドレス IOS IOS 信号出力タイミング 図 6.2 IOS 信号の出力の許可または禁止は、SYSCR の IOSE ビットの設定により行います。 拡張モードでは、本端子はリセットにより AS 出力端子として動作しますので、IOS 信 号出力として動作させる場合には SYSCR レジスタIOSE ビットを1にセットしてください。 詳細は「第 8 章 I/O ポート」を参照してください。 また、IOS 信号を出力するアドレスの範囲は、B CR の IO S1、IO S0 ビットにより設定す ることができます。IOS 信号のアドレス範囲を、表 6.4 に示します。 IOS 信号出力範囲の設定 表 6.4 IOS 信号出力範囲 IOS1 IOS0 0 0 H'(FF)F000〜H'(FF)F03F 1 H'(FF)F000〜H'(FF)F0FF 0 H'(FF)F000〜H'(FF)F3FF 1 H'(FF)F000〜H'(FF)FE4F* 1 【注】 * H8S/2148 F-ZTAT の A マスク品および H8S/2147 F-ZTAT の A マスク品では、 H'(FF)F000 〜H'(FF)F7FF となります。 168 (初期値) 6. バスコントローラ 6.4 基本バスインタフェース 6.4.1 概要 基本バスインタフェースは、ROM、SRAM などの直結が可能です。 ABW ビット、AST ビット、WMS1、WMS0、WC1、WC0 ビットによってバス仕様を選 択できます。表 6.3 を参照してください。 6.4.2 データサイズとデータアライメント CPU およびそのほかの内部バスマスタのデータサイズには、バイト、ワード、ロングワ ードがあります。バスコントローラは、データアライメント機能を持っており、外部空間 をアクセスするとき、上位側データバス(D15〜D8)を使用するか、下位側データバス(D7 〜D0)を使用するかを、アクセスするエリアのバス仕様(8 ビットアクセス空間か 16 ビ ットアクセス空間)とデータサイズによって制御します。 (1)8 ビットアクセス空間 図 6.3 に、8 ビットアクセス空間のデータアライメント制御を示します。8 ビットアクセ ス空間では、常に上位側データバス(D15〜D8)を使ってアクセスを行います。一回にア クセスできるデータ量は 1 バイトで、ワードアクセスでは 2 回、ロングワードアクセスは 4 回のバイトアクセスを実行します。 上位側データバス 下位側データバス D15 D8 D7 D0 バイトサイズ ワードサイズ バスサイクル1回目 バスサイクル2回目 バスサイクル1回目 ロングワード サイズ バスサイクル2回目 バスサイクル3回目 バスサイクル4回目 図 6.3 アクセスサイズとデータアライメント制御(8 ビットアクセス空間) 169 6. バスコントローラ (2)16 ビットアクセス空間 図 6 .4 に 16 ビットアクセス空間のデータアライメント制御を示します。16 ビットアク セス空間で は、上位側データバ ス(D15〜D8)および下 位側データバス(D7 〜D0)を使 ってアクセスを行います。一回にアクセスできるデータ量は 1 バイトまたは 1 ワードで、 ロングワードアクセスは、ワードアクセスを 2 回実行します。 バイトアクセスのとき、上位側データバスを使用するか、下位側データバスを使用する かは、アドレスの偶数/奇数で決まります。偶数アドレスに対するバイトアクセスは上位 側データバスを使用し、奇数アドレスに対するバイトアクセスは下位側データバスを使用 します。 上位側データバス 下位側データバス D15 D8 D7 D0 バイトサイズ ・偶数アドレス バイトサイズ ・奇数アドレス ワードサイズ ロングワード サイズ 図 6.4 170 バスサイクル1回目 バスサイクル2回目 アクセスサイズとデータアライメント制御(16 ビットアクセス空間) 6. バスコントローラ 6.4.3 有効ストローブ 表 6.5 にアクセス空間と、使用するデータバスおよび有効なストローブを示します。 リード時には、データバスの上位側、下位側の区別なく、RD 信号が有効です。 ライト時には、データバスの上位側に対して HWR 信号が、下位側に対して LWR 信号 が有効です。 表 6.5 使用するデータバスと有効ストローブ エリア 8 ビット アクセス リード/ サイズ ライト バイト リード アクセス空間 16 ビット バイト 有効な (D15〜D8) (D7〜D0) − RD 有効 ポート他 ライト − HWR リード 偶数 RD 奇数 ポート他 有効 無効 無効 有効 偶数 HWR 有効 不定 奇数 LWR 不定 有効 リード − RD 有効 有効 ライト − HWR、LWR 有効 有効 ライト ワード データバス上位 データバス下位 ストローブ アクセス空間 【注】 アドレス 不定: 不定データが出力されます。 無効: 入力状態であり、入力値は無視されます。 ポート他: ポートまたは内蔵周辺機能の入出力端子となり、データバスとしては使用され ません。 171 6. バスコントローラ 6.4.4 基本タイミング (1)8 ビット 2 ステートアクセス空間 図 6 .5 に 8 ビット 2 ステートアクセス空間のバスタイミングを示します。8 ビットアク セス空間をアクセスするとき、データバスは上位側(D15〜D8)を使用します。 ウェイトステートを挿入することはできません。 バスサイクル T1 T2 φ アドレスバス AS/IOS(IOSE=1) AS/IOS(IOSE=0) RD リード時 D15〜D8 有効 D7〜D0 無効 HWR ライト時 D15〜D8 図 6.5 172 8 ビット 2 ステートアクセス空間のバスタイミング 有効 6. バスコントローラ (2)8 ビット 3 ステートアクセス空間 図 6 .6 に 8 ビット 3 ステートアクセス空間のバスタイミングを示します。8 ビットアク セス空間をアクセスするとき、データバスは上位側(D15〜D8)を使用します。 ウェイトステートを挿入することができます。 バスサイクル T1 T2 T3 φ アドレスバス AS/IOS(IOSE=1) AS/IOS(IOSE=0) RD リード時 D15〜D8 有効 D7〜D0 無効 HWR ライト時 D15〜D8 図 6.6 有効 8 ビット 3 ステートアクセス空間のバスタイミング 173 6. バスコントローラ (3)16 ビット 2 ステートアクセス空間 図 6.7〜図 6.9 に 16 ビット 2 ステートアクセス空間のバスタイミングを示します。16 ビ ット アク セス 空間 をア クセ スする とき 、偶 然ア ドレ スに対 して はデ ータ バス は上 位側 (D15〜D8)を使用し、奇数アドレスに対してはデータバスは下位側(D7〜D0)を使用し ます。 ウェイトステートを挿入することはできません。 バスサイクル T1 T2 φ アドレスバス AS/IOS(IOSE=1) AS/IOS(IOSE=0) RD リード時 D15〜D8 有効 D7〜D0 無効 HWR LWR Highレベル ライト時 図 6.7 D15〜D8 有効 D7〜D0 不定 16 ビット 2 ステートアクセス空間のバスタイミング(1) (偶数アドレスバイトアクセス) 174 6. バスコントローラ バスサイクル T1 T2 φ アドレスバス AS/IOS(IOSE=1) AS/IOS(IOSE=0) RD リード時 D15〜D8 無効 D7〜D0 有効 HWR Highレベル LWR ライト時 図 6.8 D15〜D8 不定 D7〜D0 有効 16 ビット 2 ステートアクセス空間のバスタイミング(2) (奇数アドレスバイトアクセス) 175 6. バスコントローラ バスサイクル T1 T2 φ アドレスバス AS/IOS(IOSE=1) AS/IOS(IOSE=0) RD リード時 D15〜D8 有効 D7〜D0 有効 HWR LWR ライト時 図 6.9 有効 D7〜D0 有効 16 ビット 2 ステートアクセス空間のバスタイミング(3) (ワードアクセス) 176 D15〜D8 6. バスコントローラ (4)16 ビット 3 ステートアクセス空間 図 6.10〜図 6.12 に 16 ビット 3 ステートアクセス空間のバスタイミングを示します。16 ビット アクセス空間 をアクセス するとき、 偶数アドレス に対しては データバスは 上位側 (D15〜D8)を使用し、奇数アドレスに対してはデータバスは下位側(D7〜D0)を使用し ます。 ウェイトステートを挿入することができます。 バスサイクル T1 T2 T3 φ アドレスバス AS/IOS(IOSE=1) AS/IOS(IOSE=0) RD リード時 D15〜D8 有効 D7〜D0 無効 HWR LWR Highレベル ライト時 D15〜D8 有効 D7〜D0 不定 図 6.10 16 ビット 3 ステートアクセス空間のバスタイミング(1) (偶数アドレスバイトアクセス) 177 6. バスコントローラ バスサイクル T1 T2 T3 φ アドレスバス AS/IOS(IOSE=1) AS/IOS(IOSE=0) RD リード時 D15〜D8 無効 D7〜D0 有効 HWR Highレベル LWR ライト時 D15〜D8 不定 D7〜D0 有効 図 6.11 16 ビット 3 ステートアクセス空間のバスタイミング(2) (奇数アドレスバイトアクセス) 178 6. バスコントローラ バスサイクル T1 T2 T3 φ アドレスバス AS/IOS(IOSE=1) AS/IOS(IOSE=0) RD リード時 D15〜D8 有効 D7〜D0 有効 HWR LWR ライト時 D15〜D8 有効 D7〜D0 有効 図 6.12 16 ビット 3 ステートアクセス空間のバスタイミング(3) (ワードアクセス) 179 6. バスコントローラ 6.4.5 ウェイト制御 本 LSI、外部空間をアクセスするとき、ウェイトステート(Tw)を挿入してバスサイク ルを引き伸ばすことが できます。ウェイトステートを挿入する方法 には、(1)プログラ ムウェイトの挿入、(2)WAIT 端子による端子ウェイトの挿入、(3)プログラムウェイ トと WAIT 端子による端子ウェイトの組合せがあります。 (1)プログラムウェイトモード プログラムウェイトモードでは、外部空間をアクセスすると、常に WC 1、WC 0 ビット により設定されたステート数だけの TW が、T2 ステートと T3 ステートの間に挿入されます。 (2)端子ウェイトモード 端子ウェイトモードでは、外部空間をアクセスすると、常に WC 1、WC 0 ビットにより 設定されたステート数だけの TW が、T2 ステートと T3 ステートの間に挿入されます。T2 ま たは Tw の最後のステートのφの立ち下がりのタイミングで、WAIT 端子が Low レベルで あると、さらに Tw が挿入されます。WAIT 端子が Low レベルに保持されると、WAIT 端子 が High レベルになるまで Tw が挿入されます。 端子ウェイトモードは、4 ステート以上の Tw を挿入する場合や、外部デバイスごとに挿 入する Tw 数を変える場合などに有効です。 (3)端子オートウェイトモード 端子オートウェイトモードでは、外部空間をアクセスしたとき、T2 のφの立ち下がりの タイミングで、WAIT 端子が Low レベルであると、WC 1、WC 0 ビットにより設定された ステート数だけの TW が、T2 ステートと T3 ステートの間に挿入されます。WAIT 端子が Low レベルに保持されても、設定された数を超える TW は挿入されません。 端子オートウェイトモードを用いると、チップセレクト信号を WAIT 端子に入力するだ けで、低速メモリと容易にインタフェースすることができます。 図 6.13 にウェイトステート挿入のタイミング例を示します。 180 6. プログラム ウェイトによる T1 T2 Tw バスコントローラ WAIT端子による Tw Tw T3 φ WAIT アドレスバス AS/IOS(IOSE=0) RD リード時 データバス リードデータ HWR,LWR ライト時 データバス ライトデータ 【注】φクロックの↓はWAIT端子のサンプリングタイミングを示します。 図 6.13 ウェイトステート挿入タイミング例 リセット後は、3 ステートアクセスかつプログラムウェイト 3 ステート挿入、WA IT 入 力禁止状態となっています。 181 6. バスコントローラ 6.5 バースト ROM インタフェース 6.5.1 概要 本 LS I は、外部空間をバースト R OM 空間に設定し、バースト R OM インタフェースを 行うことができます。 B CR の B RS TR M ビットにより、外部空間をバースト R OM 空間に設定します。C PU の 命令フェッチに限り最大 4 ワード/8 ワードの連続バーストアクセスを行うことができま す。バーストアクセスは 1 ステートまたは 2 ステートを選択できます。 6.5.2 基本タイミング バースト R OM インタフェースの、イニシャルサイクル(フルアクセス)のアクセスス テート数は AS T ビットの設定にしたがいます。また、AS T ビットを 1 にセットした場合 は、ウェイトステートを挿入することもできます。バーストサイクルは、BCR の BRSTS1 ビットの設定により、1 ステートまたは 2 ステートの選択が可能です。ウェイトステート は挿入できません。 また、BCR の BRSTS0 ビットを 0 にクリアすると最大 4 ワードのバーストアクセスを行 います。BRSTS0 ビットを 1 にセットすると最大 8 ワードのバーストアクセスを行います。 バースト ROM 空間の基本アクセスタイミングを図 6.14(a)(b)に示します。 図 6.14(a)は、AST ビット、BRSTS1 ビットをいずれも 1 に設定した場合の例です。 図 6.14(b)は、AST ビット、BRSTS1 ビットをいずれも 0 に設定した場合の例です。 フルアクセス T1 T2 バーストアクセス T3 T1 T2 T1 T2 φ 下位アドレスのみ変化 アドレスバス AS/IOS (IOSE=0) RD データバス 図 6.14(a) 182 リードデータ リードデータ リードデータ バースト ROM アクセスタイミング例(AST=BRSTS1=1 の場合) 6. フルアクセス T1 T2 バスコントローラ バーストアクセス T1 T1 φ 下位アドレスのみ変化 アドレスバス AS/IOS (IOSE=0) RD データバス 図 6.14(b) リードデータ リードデータ リードデータ バースト ROM アクセスタイミング例(AST=BRSTS1=0 の場合) 6.5.3 ウェイト制御 バースト R OM インタフェースのイニシャルサイクル(フルアクセス)には、基本バス インタフェースと同様に、(1)プログラムウェイトの挿入、(2)WAIT 端子による端子 ウェイトの挿入、が可能です。「6.4.5 ウェイト制御」を参照してください。 バーストサイクルにはウェイトステートを挿入することはできません。 183 6. バスコントローラ 6.6 アイドルサイクル 6.6.1 動作説明 本 LSI は外部空間をアクセスするとき、リードサイクルの直後にライトサイクルが発生 した場合に、バスサイクルとバスサイクルの間にアイドルサイクル(TI)を 1 ステート挿 入することができます。アイドルサイクルを挿入することにより、例えば出力フローティ ング時間の大きい R OM などと、高速メモリ、I/O インタフェースなどとのデータ衝突を 防ぐことができます。 BCR の ICIS0 ビットを 1 にセットした状態で、外部リード後に外部ライトが発生すると、 ライトサイクルの先頭にアイドルサイクルが挿入されます。アドバンストモードおよびノ ーマルモードのとき有効です。 図 6.15 に動作例を示します。バスサイクルA は、出力フローティング時間の大きいROM からのリードサイクル、バスサイクル B は C PU のライトサイクルの場合の例です。(a ) はアイドルサイクルを挿入しない場合で、バスサイクル B で、R OM からのリードデータ と CPU のライトデータの衝突が発生しています。これに対し(b)ではアイドルサイクル を挿入し、データの衝突を回避しています。 バスサイクルA バスサイクルB T1 T2 T3 T1 バスサイクルA T2 T1 φ アドレスバス RD HWR、LWR データバス T2 T3 バスサイクルB TI T1 T2 φ ,, アドレスバス RD HWR、LWR データバス データ衝突 出力フローティング時間大 (a)アイドルサイクル挿入なし 図 6.15 アイドルサイクル動作例 184 (b)アイドルサイクル挿入あり 6. バスコントローラ 6.6.2 アイドルサイクルでの端子状態 アイドルサイクルでの端子状態を表 6.6 に示します。 表 6.6 アイドルサイクルでの端子状態 端子名 端子の状態 A23〜A0、IOS 直後のバスサイクルの内容 D15〜D0 ハイインピーダンス AS High レベル RD High レベル HWR、LWR High レベル 185 6. バスコントローラ 6.7 バスアービトレーション 6.7.1 概要 本 LSI はバスマスタの動作を調停(バスアービトレーション)するバスアービタを内蔵 しています。 バスマスタは、C PU および DTC の 2 つがあり、バス権を占有した状態でリード/ライ ト動作を行います。各バスマスタはバス権要求信号によりバス権を要求します。バスアー ビタは所定のタイミングで優先順位を判定し、バス権要求アクノリッジ信号によりバスの 使用を許可します。バスマスタはバス権を獲得して動作します。 6.7.2 動作説明 バスアービタは、バスマスタのバス権要求信号を検出して、バス権が要求されていれば、 そのバスマスタにバス権要求アクノリッジ信号を与えます。複数のバスマスタからバス権 要求があれば、最も優先順位の高いものにバス権要求アクノリッジ信号を与えます。バス 権要求アクノリッジ信号を受け取ったバスマスタは、以後この信号が取り消されるまでバ スを占有します。 バスマスタの優先順位: (高) 186 DTC > CPU (低) 6. バスコントローラ 6.7.3 バス権移行タイミング バス権 を獲得して 動作している バスマスタ よりも優先 順位の高いバ スマスタか らのバ ス権要求があったときでも、すぐにバス権が移行するとは限りません。各バスマスタには バス権を譲ることができるタイミングがあります。 (1)CPU C PU は最も優先順位が低いバスマスタで、DTC からのバス権要求があると、バスアー ビタはバス権を DTC に移行します。バス権が移行するタイミングは次のとおりです。 (a)バスサイクルの切れ目で、バス権を移 行します。ただし、ロングワードサイズの アクセスなど 、バスサイクルを分割して 実行する場合には、分割さ れたバスサイ クルの切れ目では、バス権は移行しません。 バス権を移行しないタイミングは「付録 A.5 命令実行中のバス状態」を参照して ください。 (b)CPU がスリープモードの場合、ただちにバス権を移行します。 (2)DTC DTC は起動要求が発生するとバスアービタに対してバス権を要求します。 DTC は、一連の処理が完了するまでバス権を解放しません。 187 6. 188 バスコントローラ 7. データトランスファ コントローラ(DTC) H8S/2148 シリーズに内蔵しています。 H8S/2144 シリーズ、H8S/2147N には内蔵していません。 第7章 7.1 7.2 7.3 目次 概要 ....................................................................................................................................... 191 7.1.1 特長 ...................................................................................................... 191 7.1.2 ブロック図 ............................................................................................ 191 7.1.3 レジスタ構成 ......................................................................................... 193 各レジスタの説明 ................................................................................................................... 194 7.2.1 DTC モードレジスタ A(MRA) ............................................................. 194 7.2.2 DTC モードレジスタ B(MRB) ............................................................. 196 7.2.3 DTC ソースアドレスレジスタ(SAR) .................................................... 197 7.2.4 DTC デスティネーションアドレスレジスタ(DAR) ............................... 197 7.2.5 DTC 転送カウントレジスタ A(CRA).................................................... 197 7.2.6 DTC 転送カウントレジスタ B(CRB) .................................................... 198 7.2.7 DTC イネーブルレジスタ(DTCER) ...................................................... 198 7.2.8 DTC ベクタレジスタ(DTVECR) .......................................................... 199 7.2.9 モジュールストップコントロールレジスタ(MSTPCR) .......................... 200 動作説明................................................................................................................................. 201 7.3.1 概要 ...................................................................................................... 201 7.3.2 起動要因................................................................................................ 202 7.3.3 DTC ベクタテーブル .............................................................................. 204 7.3.4 アドレス空間上でのレジスタ情報の配置 ................................................. 206 7.3.5 ノーマルモード...................................................................................... 207 7.3.6 リピートモード...................................................................................... 208 7.3.7 ブロック転送モード ............................................................................... 209 7.3.8 チェイン転送 ......................................................................................... 210 7. データトランスファコントローラ(DTC) 7.3.9 動作タイミング...................................................................................... 211 7.3.10 DTC 実行ステート数 .............................................................................. 212 7.3.11 DTC 使用手順 ........................................................................................ 213 7.3.12 DTC 使用例............................................................................................ 214 7.4 割込み .................................................................................................................................... 216 7.5 使用上の注意 .......................................................................................................................... 216 190 7. データトランスファコントローラ(DTC) 7.1 概要 本 LSI は、データトランスファコントローラ(DTC)を内蔵しています。DTC は、割込 みまたはソフトウェアによって起動され、データ転送を行うことができます。 7.1.1 特長 ■任意チャネル数の転送可能 ・メモリ上に転送情報を格納 ・1 つの起動要因に対して複数のデータ転送が可能(チェイン転送) ■豊富な転送モード ・ノーマルモード/リピートモード/ブロック転送モードの選択が可能 ・ソース/デ スティネーションアドレス のインクリメント/デクリ メント/固定の 選択が可能 ■16M バイトのアドレス空間を直接指定可能 ・転送元、転送先アドレスを 24 ビットで指定 ■転送単位をバイト/ワードに設定可能 ■DTC を起動した割込みを CPU に要求可能 ・1 回のデータ転送の終了後に、CPU に対する割込み要求を発生可能 ・指定したデータ転送のすべての終了後に、CPU に対する割込み要求を発生 ■ソフトウェアによる起動が可能 ■モジュールストップモードの設定可能 ・初期値では、DTC のレジスタのアクセスが可能。モジュールストップモードの設 定で DTC の動作が停止 7.1.2 ブロック図 DTC のブロック図を図 7.1 に示します。 DTC のレジスタ情報は内蔵 R AM に配置されます*。DTC と内蔵 R AM(1k バイト)間 は 32 ビットバスで接続されていますので、DTC のレジスタ情報のリード/ライトを 32 ビ ット 1 ステートで実行することができます。 【注】 * DTC を使用する際には、必ず SYSCR の RAME ビットを 1 にセットしてくださ い。 191 7. データトランスファコントローラ(DTC) 内部アドレスバス DTC D T C 起 動 要 求 内蔵RAM コ ン ト ロ ー ル ロ ジ ッ ク MRA MRB CRA CRB DAR SAR DTVECR 〜 DTCERE 割 込 み 要 求 DTCERA 割込みコントローラ CPU割込み要求 【記号説明】 MRA、MRB :DTCモードレジスタA、B CRA、CRB :DTCカウントレジスタA、B SAR :DTCソースアドレスレジスタ DAR :DTCデスティネーションレジスタ DTCERA〜DTCERE:DTCイネーブルレジスタ A〜E DTVECR :DTCベクタレジスタ 図 7.1 192 DTC のブロック図 内部データバス レ ジ ス タ 情 報 7. データトランスファコントローラ(DTC) 7.1.3 レジスタ構成 DTC のレジスタ構成を表 7.1 に示します。 表 7.1 レジスタ構成 名 称 略称 R/W 初期値 アドレス* 1 DTC モードレジスタ A MRA −* 2 不定 −* 3 DTC モードレジスタ B MRB −* 2 不定 −* 3 DTC ソースアドレスレジスタ SAR −* 2 不定 −* 3 DTC デスティネーションアドレスレジスタ DAR −* 2 不定 −* 3 DTC 転送カウントレジスタ A CRA −* 2 不定 −* 3 DTC 転送カウントレジスタ B CRB −* 2 不定 −* 3 DTC イネーブルレジスタ DTCER* 4 R/W H'00 H'FEEE〜 H'FEF2 DTC ベクタレジスタ DTVECR* 4 R/W H'00 H'FEF3 モジュールストップコントロールレジスタ MSTPCRH R/W H'3F H'FF86 MSTPCRL R/W H'FF H'FF87 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 DTC 内のレジスタは直接リード/ライトできません。 *3 内蔵 RAM のアドレス H'EC00〜H'EFFF にレジスタ情報として配置します。 外部メモリ空間には配置できません。 DTC を使用する場合は、SYSCR の RAME ビットを 0 にクリアしないでください。 * 4 H8 S/2144 シリーズ、H8 S/2147N には DT C は内蔵されていません。H8 S/2144 シリー ズ、H8 S/2147N では、DT CER 、DT VECR のレジスタアドレス範囲を CP U でアクセス しないでください。 193 7. データトランスファコントローラ(DTC) 7.2 各レジスタの説明 7.2.1 DTC モードレジスタ A(MRA) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 SM1 SM0 DM1 DM0 MD1 MD0 DTS Sz 不定 不定 不定 不定 不定 不定 不定 不定 − − − − − − − − MRA は 8 ビットのレジスタで、DTC の動作モードの制御を行います。 ビット 7、6:ソースアドレスモード 1、0(SM1、SM0) データ転送後に、SAR をインクリメントするか、デクリメントするか、または固定とす るかを指定します。 ビット 7 ビット 6 説 SM1 SM0 0 − SAR は固定 1 0 SAR は転送後インクリメント 明 (Sz=0 のとき+1、Sz=1 のとき+2) 1 SAR は転送後デクリメント (Sz=0 のとき−1、Sz=1 のとき−2) ビット 5、4:デスティネーションアドレスモード 1、0(DM1、DM0) データ転送後に、DAR をインクリメントするか、デクリメント するか、または固定と するかを指定します。 ビット 5 ビット 4 説 DM1 DM0 0 − DAR は固定 1 0 DAR は転送後インクリメント 明 (Sz=0 のとき+1、Sz=1 のとき+2) 1 DAR は転送後デクリメント (Sz=0 のとき−1、Sz=1 のとき−2) 194 7. データトランスファコントローラ(DTC) ビット 3、2:DTC モード(MD1、MD0) DTC の転送モードを指定します。 ビット 3 ビット 2 MD1 MD0 0 0 ノーマルモード 1 リピートモード 0 ブロック転送モード 1 − 1 説 明 ビット 1:DTC 転送モードセレクト(DTS) リピートモードまたはブロック転送モードのとき、ソース側とデスティネーション側の いずれをリピート領域またはブロック領域とするかを指定します。 ビット 1 説 明 DTS 0 デスティネーション側がリピート領域またはブロック領域 1 ソース側がリピート領域またはブロック領域 ビット 0:DTC データトランスファサイズ(Sz) データ転送のデータサイズを指定します。 ビット 0 説 明 Sz 0 バイトサイズ転送 1 ワードサイズ転送 195 7. データトランスファコントローラ(DTC) 7.2.2 DTC モードレジスタ B(MRB) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CHNE DISEL − − − − − − 不定 不定 不定 不定 不定 不定 不定 不定 − − − − − − − − MRB は 8 ビットのレジスタで、DTC モードの制御を行います。 ビット 7:DTC チェイン転送イネーブル(CHNE) チェイン転送を指定します。チェイン転送では、1 回の転送要求に対し複数のデータ転 送を連続して行うことができます。 CHNE=1 に設定したデータ転送では、指定した転送 回数の終了の判定や割込み要因のフラグのクリアや DTCER のクリアは行いません。 ビット 7 説 明 CHNE 0 DTC データ転送終了(起動待ち状態) 1 DTC チェイン転送(新しいレジスタ情報をリードして、データ転送を行う) ビット 6:DTC インタラプトセレクト(DISEL) 1 回のデータ転送後に CPU への割込み要求の禁止または許可を指定します。 ビット 6 説 明 DISEL 0 DTC データ転送終了後、転送カウンタが 0 でなければ、CPU への割込みを禁止 (DTC は、起動要因となった割込み要因フラグを 0 にクリア) 1 DTC データ転送終了後、CPU への割込みを許可(DTC は、起動要因となった割 込み要因フラグを 0 にクリアしない) ビット 5〜0:リザーブビット 本 LSI では、DTC の動作に影響を与えません。0 をライトしてください。 196 データトランスファコントローラ(DTC) 7. 7.2.3 DTC ソースアドレスレジスタ(SAR) ビット : 23 22 21 20 19 4 --- 3 2 1 0 --初期値 : 不定 不定 不定 不定 不定 R/W : − − − − 不定 不定 不定 不定 不定 --- − − --- − − − − SAR は 24 ビットのレジスタで、DTC の転送するデータの転送元アドレスを指定します。 ワードサイズの場合は偶数アドレスを指定してください。 7.2.4 DTC デスティネーションアドレスレジスタ(DAR) ビット : 23 22 21 20 19 4 --- 3 2 1 0 --初期値 : 不定 不定 不定 不定 不定 R/W : − − − − 不定 不定 不定 不定 不定 --- − − --- − − − − DAR は 24 ビットのレジスタで、DTC の転送するデータの転送先アドレスを指定します。 ワードサイズの場合は偶数アドレスを指定してください。 7.2.5 DTC 転送カウントレジスタ A(CRA) ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 R/W : − − − − − CRAH − − − − − − − − − − − CRAL CRA は 16 ビットのレジスタで、DTC のデータ転送の転送回数を指定します。 ノーマルモードでは一括して、16 ビットの転送カウンタ(1〜65536)として機能します。 1 回のデータ転送を行うたびに、デクリメント(−1)され、カウンタ値が H'0000 になる と転送を終了します。 リピートモードおよびブロック転送モードでは、上位 8 ビットの CRAH と下位 8 ビット の CRAL に分割されます。CRAH は転送回数を保持し、CRAL は 8 ビットの転送カウンタ (1〜256)として機能します。CRAL は、1 回のデータ転送を行うたびに、デクリメント(− 1)され、カウンタ値が H'00 になると、CRAH の内容が転送されます。この動作を繰り返 します。 197 7. データトランスファコントローラ(DTC) 7.2.6 DTC 転送カウントレジスタ B(CRB) ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 R/W : − − − − − − − − − − − − − − − − CRB は 16 ビットのレジスタで、ブロック転送モードのとき、DTC のブロックデータ転 送の転送回数を指定します。16 ビットの転送カウンタ(1〜65536)として機能し、1 回の データ転送を行うたびに、デクリメント(−1)され、カウンタ値が H'0000 になると転送 を終了します。 7.2.7 DTC イネーブルレジスタ(DTCER) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 DTCE7 DTCE6 DTCE5 DTCE4 DTCE3 DTCE2 DTCE1 DTCE0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W DTC ER は、DTC によって起動される割込み要因ごとに対応した 8 ビットのリード/ラ イトが可能な 5 本のレジスタで、DTC ER A〜 DTC ER E があります。各割込み要因による DTC 起動の許可または禁止を制御します。 DTC ER はリセット、またはハードウェアスタンバイモード時に、H'00 に初期化されま す。 ビット n:DTC 起動イネーブル(DTCEn) ビット n 説 明 DTCEn 0 割込みによる DTC 起動を禁止 (初期値) [クリア条件] ・DISEL ビットが 1 でデータ転送を終了したとき ・指定した回数の転送が終了したとき 1 割込みによる DTC 起動を許可 [保持条件] DISEL ビットが 0 で、指定した回数の転送が終了していないとき (n=7〜0) 198 7. データトランスファコントローラ(DTC) DTCE ビットは、DTC によって起動される各割込み要因ごとに設定できます。各割込み 要因と DTCE ビットの対応、およびそのときに割込みコントローラが発生するベクタ番号 について表 7.4 に示します。 DTC E ビットの設定は必ず B SET、B CLR などビット操作命令を使ってリード/ライト してください。ただし初期設定に限り複数の起動要因を一度に設定するときには割り込み を禁止して、当該レジスタのダミーリードを行ってからライトすることができます。 7.2.8 DTC ベクタレジスタ(DTVECR) ビット : 7 6 5 4 3 2 1 0 SWDTE DTVEC6 DTVEC5 DTVEC4 DTVEC3 DTVEC2 DTVEC1 DTVEC0 初期値 : R/W : 【注】* 0 0 0 0 0 0 0 0 R/(W)* R/W R/W R/W R/W R/W R/W R/W SWDTEビットは、1ライトは常時可能ですが、0ライトは1リード後にのみ可能と なります。 DTVECR は、8 ビットのリード/ライトが可能なレジスタで、ソフトウェアによる DTC 起動の許可または禁止の設定、およびソフトウェア起動割込み用ベクタ番号を設定します。 DTV ECR はリセットまたはハードウェアスタンバイモード時に、H'00 に初期化されま す。 ビット 7:DTC ソフトウェア起動イネーブル(SWDTE) DTC ソフトウェア起動の許可または禁止を設定します。 ソフトウェアで SWDTE ビットを 0 にクリアする場合には、SWDTE=1 の状態をリード 後、0 をライトしてください。 ビット 7 説 明 SWDTE 0 DTC ソフトウェア起動を禁止 (初期値) [クリア条件] DISEL ビットが 0 で、指定した回数の転送が終了していないとき 1 DTC ソフトウェア起動を許可 [保持条件] ・DISEL ビットが 1 で、データ転送を終了したとき ・指定した回数の転送が終了したとき ・ソフトウェア起動によるデータ転送中 199 7. データトランスファコントローラ(DTC) ビット 6〜0:DTC ソフトウェア起動ベクタ 6〜0(DTVEC6〜DTVEC0) DTC ソフトウェア起動のベクタ番号を設定します。 ベクタアドレスは、H'0400+((ベクタ番号)< <1)となります。ここで< <1 は 1 ビッ トの左シフトを表します。例えば、DTVEC6〜DTVEC0=H'10 のとき、ベクタアドレスは H'0420 となります。 7.2.9 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MSTP14 ビットを 1 にセットすると、バスサイクルの終了時点で DTC は動作を停止して モジュールストップモードへ遷移します。ただし、DTC が起動中の場合、MSTP14 ビット に 1 をライトすることはできません。詳細は、「25.5 モジュールストップモード」を参 照してください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRH ビット 6:モジュールストップ(MSTP14) DTC のモジュールストップモードを指定します。 MSTPCRH 説 明 ビット 6 MSTP14 200 0 DTC のモジュールストップモード解除 1 DTC のモジュールストップモード設定 (初期値) 7. データトランスファコントローラ(DTC) 7.3 動作説明 7.3.1 概要 DTC は、レジスタ情報をメモリ上に格納しておき、起動要因が発生すると、レジスタ情 報をリードし、このレジスタ情報に基づいてデータ転送を行います。データ転送後、レジ スタ情報をメモリ上にライトします。レジスタ情報をメモリ上に格納しておくことにより、 任意チャネル数のデータ転送を行うことができます。また、CHNE ビットを 1 にセットし ておくことにより、1 つの起動要因で複数の転送を行うことができます。 図 7.2 に DTC の動作フローチャートを示します。 スタート DTCベクタリード 次転送 レジスタ情報リード データ転送 レジスタ情報ライト CHNE=1 Yes No 転送カウンタ=0 または DISEL=1 Yes No 起動要因のフラグのクリア 終了 図 7.2 DTCERのクリア 割込み例外処理 DTC 動作フローチャート 201 7. データトランスファコントローラ(DTC) DTC の転送モードには、ノーマルモード、リピートモード、ブロック転送モードがあり ます。 DTC は、転送元アドレスを 24 ビット長の S AR、転送先アドレスを 24 ビット長の DAR で指定します 。S AR、DAR は転送後、それぞ れ独立にインクリメントま たはデクリメン トあるいは固定とされます。 表 7.2 に、DTC の機能概要を示します。 表 7.2 DTC の機能概要 転送モード 起動要因 アドレスレジスタ 転送元 (1)ノーマルモード ・IRQ 転送先 24 ビット 24 ビット ・1 回の転送要求で 1 バイトまたは 1 ワー ・FRT の ICI、OCI ドの転送を実行 ・メモリアドレスを 1 または 2 増減 ・転送回数は 1〜65536 (2)リピートモード ・8 ビットタイマの CMI ・ホストインタフェース の IBF ・SCI の TXI、RXI ・1 回の転送要求で 1 バイトまたは 1 ワー ・A/D 変換器の ADI ドの転送を実行 ・メモリアドレスを 1 または 2 増減 ・IIC の IICI ・ソフトウェア ・指定回数(1〜256)転送後、初期状態 を回復して動作を継続 (3)ブロック転送モード ・1 回の転送要求で指定したブロックサ イズの転送 ・ブロックサイズ 1〜256 バイトまたはワ ード ・転送回数は 1〜65536 ・ソースまたはデスティネーションのい ずれかをブロックエリアに指定可能 7.3.2 起動要因 DTC は、割込み要因、もしくはソフトウェアによる DTV ECR へのライト動作(ソフト ウェア起動)を起動要因として動作します。割込み要因を、CPU に対する割込み要求とす るか、DTC の起動要因とするかは、割込み要因ごとに DTCER の対応するビットで指定し ます。対応するビットを 1 にセットすると DTC の起動要因となり、0 にクリアすると、CPU の割込み要因となります。 1 回のデータ転送(チェイン転送の場合、連続した最後の転送)終了時に、起動要因ま 202 7. データトランスファコントローラ(DTC) たは DTCER の対応するビットをクリアします。表 7.3 に起動要因と DTCER のクリアを示 します。 起動要因フラグは、例えば、RXI0 の場合、SCI0 の RDRF フラグになります。 表 7.3 起動要因と DTCER のクリア 起動要因 DISEL ビットが 0 で、指定した回数の DISEL ビットが 1 のとき、または指定した 転送が終了していないとき 回数の転送が終了したとき ソフトウェア SWDTE ビットは 0 にクリア ・SWDTE ビットは 1 を保持 起動 ・CPU に割込みを要求 割込み起動 ・DTCER の対応するビットは 1 を保持 ・DTCER の対応するビットは 0 にクリア ・起動要因フラグは 0 にクリア ・起動要因フラグは 1 を保持 ・起動要因となった割込みを CPU に要求 図 7.3 に、起動要因制御ブロック図を示します。詳細は、「第 5 章 割込みコントロー ラ」を参照してください。 要因フラグクリア クリア 制御 クリア DTCER クリア要求 選択 内蔵周辺 モジュール IRQ割込み DTC 割込み要求 選 択 回 路 DTVECR 割込み コントローラ CPU 割込みマスク 図 7.3 DTC 起動要因制御ブロック図 割込みを DTC の起動要因に指定した場合、C PU のマスクレベルおよび割込みコントロ ーラの優先順位の指定の影響を受けません。複数の起動要因が同時に発生した場合には、 デフォルトの優先順位にしたがって受け付けられ、DTC が起動されます。 203 7. データトランスファコントローラ(DTC) 7.3.3 DTC ベクタテーブル 図 7.4 に、DTC ベクタアドレスとレジスタ情報の対応を示します。 表 7 .4 に、起動要因とベクタアドレスの対応および DTC ER のビットとの対応を示しま す。ソフトウェア による起動の場合、ベクタアド レスは H'0400+ (DTV ECR [6:0]< < 1)で 求めます(< <1 は 1 ビットの左シフトを表わします)。たとえば、DTV ECR が H'10 のと き、ベクタアドレスは H'0420 となります。 起動要因ごとのベクタアドレスから、レジスタ情報先頭アドレスをリードし、この先頭 アドレスからレジスタ情報をリードします。レジスタ情報は内蔵 R AM 空間上の所定のア ドレスに配置することができます。レジスタ情報の先頭アドレスは 4 の倍数番地としてく ださい。 ベクタアドレスの構造は、ノーマルモードとアドバンストモードとで同じです。共に 2 バイト単位です。この 2 バイトは、内蔵 R AM 空間上の所定のアドレスの下位側を指定し ます。 DTCベクタ アドレス レジスタ情報 先頭アドレス レジスタ情報 次転送 図 7.4 204 DTC ベクタアドレスとレジスタ情報との対応 7. 表 7.4 データトランスファコントローラ(DTC) 割込み要因と DTC ベクタアドレスおよび対応する DTCE 割込み要因 DTVECR へのライト 要因 ベクタ ベクタ 発生元 番号 アドレス ソフトウェア DTVECR (10 進数 外部端子 IRQ0 H'0400+ DTCE* 優先 順位 − 表示) [6:0]<<1) 16 H'0420 DTCEA7 IRQ1 17 H'0422 DTCEA6 IRQ2 18 H'0424 DTCEA5 IRQ3 19 H'0426 DTCEA4 ADI(A/D 変換終了) A/D 28 H'0438 DTCEA3 ICIA(FRT インプットキャプチャ A) FRT 48 H'0460 DTCEA2 ICIB(FRT インプットキャプチャ B) 49 H'0462 DTCEA1 OCIA(FRT アウトプットコンペア A) 52 H'0468 DTCEA0 OCIB(FRT アウトプットコンペア B) CMIA0(TMR0 コンペアマッチ A) 54 H'046A DTCEB7 TMR0 64 H'0480 DTCEB2 65 H'0482 DTCEB1 TMR1 68 H'0488 DTCEB0 69 H'048A DTCEC7 TMRY 72 H'0490 DTCEC6 CMIB0(TMR0 コンペアマッチ B) CMIA1(TMR1 コンペアマッチ A) CMIB1(TMR1 コンペアマッチ B) CMIAY(TMRY コンペアマッチ A) CMIBY(TMRY コンペアマッチ B) IBF1(IDR1 受信完了) 73 H'0492 DTCEC5 HIF 76 H'0498 DTCEC4 77 H'049A DTCEC3 SCI 81 H'04A2 DTCEC2 IBF2(IDR2 受信完了) RXI0(受信完了 0) TXI0(送信データエンプティ 0) RXI1(受信完了 1) TXI1(送信データエンプティ 1) RXI2(受信完了 2) TXI2(送信データエンプティ 2) IICI0(IIC0 1 バイト送信/受信完了) 高 (DTVECR チャネル 0 82 H'04A4 DTCEC1 SCI 85 H'04AA DTCEC0 チャネル 1 86 H'04AC DTCED7 SCI 89 H'04B2 DTCED6 チャネル 2 90 H'04B4 DTCED5 IIC0 92 H'04B8 DTCED4 94 H'04BC DTCED3 【オプション】 IICI1(IIC1 1 バイト送信/受信完了) IIC1 【オプション】 【注】 * 低 対応する割込みのない DTCE ビットは、リザーブビットとなります。0 をライトしてく ださい。 205 7. データトランスファコントローラ(DTC) 7.3.4 アドレス空間上でのレジスタ情報の配置 図 7.5 に、アドレス空間上でのレジスタ情報の配置を示します。 レジスタ情報先頭アドレス(ベクタアドレスの内容)から、MRA、SAR、MRB、DAR、 C RA 、C RB の順序で配置 してください。チェイン転送の場合は、 連続した領域にレジス タ情報を配置してください。 レジスタ情報は、内蔵 R AM 上(アドレス:H'F FEC 00〜H'F FEF FF )に配置してくださ い。 下位アドレス レジスタ情報 先頭アドレス チェイン転送 0 MRA 1 2 SAR 3 MRB CRA DAR CRB レジスタ情報 MRA MRB CRA SAR DAR CRB チェイン転送のとき 2回目転送用の レジスタ情報 4バイト 図 7.5 206 アドレス空間上での DTC レジスタ情報の配置 7. データトランスファコントローラ(DTC) 7.3.5 ノーマルモード 1 回の動作で、1 バイトまたは 1 ワードの転送を行います。 転送回数は 1〜65536 です。指定回数の転送が終了すると、C PU へ割込みを要求するこ とができます。 表 7 .5 にノーマルモードのレジスタ機能を、図 7 .6 にノーマルモードのメモリマップを 示します。 表 7.5 ノーマルモードのレジスタ機能 名 称 略称 機 DTC ソースアドレスレジスタ SAR 転送元アドレス DTC デスティネーションアドレスレジスタ DAR 転送先アドレス DTC 転送カウントレジスタ A CRA 転送カウント DTC 転送カウントレジスタ B CRB 使用しません SAR 能 DAR 転送 図 7.6 ノーマルモードのメモリマップ 207 7. データトランスファコントローラ(DTC) 7.3.6 リピートモード 1 回の動作で、1 バイトまたは 1 ワードの転送を行います。 転送回数は 1〜256 を指定し、指定回数の転送が終了すると、転送カウンタと、リピー トエリアに指定したアドレスレジスタの初期状態を回復し、転送を繰り返します。リピー トモードでは転送カウンタが H'00 になりませんので、DISEL=0 の場合、CPU への割込み は要求されません。 表 7 .6 にリピートモードのレジスタ機能を、図 7 .7 にリピートモードのメモリマップを 示します。 表 7.6 リピートモードのレジスタ機能 名 略称 機 DTC ソースアドレスレジスタ SAR 転送元アドレス DTC デスティネーションアドレスレジスタ DAR 転送先アドレス DTC 転送カウントレジスタ AH CRAH 転送回数保持 DTC 転送カウントレジスタ AL CRAL 転送カウント DTC 転送カウントレジスタ B CRB 使用しません SAR または DAR 図 7.7 208 称 リピートエリア 転送 リピートモードのメモリマップ 能 DAR または SAR 7. データトランスファコントローラ(DTC) 7.3.7 ブロック転送モード 1 回の動作で、1 ブロックの転送を行います。転送元、転送先のいずれか一方をブロッ クエリアに指定します。 ブロックサイズは 1〜256 です。1 ブロックの転送が終了すると、ブロックサイズカウン タとブロックエリアに指定したアドレスレジスタの初期状態を復帰します。他方のアドレ スレジスタは連続して、インクリメントまたはデクリメントあるいは固定とされます。 転送回数は 1〜65536 です。指定回数のブロック転送が終了すると、C PU へ割込みを要 求することができます。 表 7 .7 にブロック転送モードのレジスタ機能を、図 7 .8 にブロック転送モードのメモリ マップを示します。 表 7.7 ブロック転送モードのレジスタ機能 名 称 略称 機 DTC ソースアドレスレジスタ SAR 転送元アドレス DTC デスティネーションアドレスレジスタ DAR 転送先アドレス 能 DTC 転送カウントレジスタ AH CRAH ブロックサイズ保持 DTC 転送カウントレジスタ AL CRAL ブロックサイズカウント DTC 転送カウントレジスタ B CRB 転送カウンタ 第1ブロック SAR または DAR ・ ・ ・ ブロックエリア 転送 DAR または SAR 第Nブロック 図 7.8 ブロック転送モードのメモリマップ 209 7. データトランスファコントローラ(DTC) 7.3.8 チェイン転送 C HNE ビットを 1 にセットしておくことにより、1 回の転送要求に対し複数のデータ転 送を連続して行うことができます。データ転送を定義する S AR、DAR 、C RA 、C RB およ び MRA、MRB は各々独立に設定できます。 図 7.9 にチェイン転送のメモリマップを示します。 ソース デスティネーション レジスタ情報 CHNE=1 DTCベクタ アドレス レジスタ情報 先頭アドレス レジスタ情報 CHNE=0 ソース デスティネーション 図 7.9 チェイン転送のメモリマップ C HNE=1 の転 送において、指定 した転送回数の終了 による C PU への割込 み要求や、 DI SEL=1 による C PU への割込み要求は発生しません。また、C HNE=1 の転送は起動要 因となった割込み要因フラグに影響を与えません。 210 7. データトランスファコントローラ(DTC) 7.3.9 動作タイミング 図 7.10〜図 7.12 に、DTC の動作タイミングの例を示します。 φ DTC 起動要求 DTC リクエスト データ転送 ベクタリード アドレス リード ライト 転送情報リード 転送情報ライト 図 7.10 DTC の動作タイミング(ノーマルモード、リピートモードの例) φ DTC 起動要求 DTC リクエスト データ転送 ベクタリード アドレス リード ライト リード ライト 転送情報ライト 転送情報リード 図 7.11 DTC の動作タイミング(ブロック転送モード、ブロックサイズ=2 の例) φ DTC 起動要求 DTC リクエスト ベクタリード アドレス データ転送 データ転送 リード ライト リード ライト 転送情報リード 転送情報ライト 転送情報リード 転送情報ライト 図 7.12 DTC の動作タイミング(チェイン転送の例) 211 7. データトランスファコントローラ(DTC) 7.3.10 DTC 実行ステート数 表 7 .8 に、DTC の 1 回のデータ転送の実行状態を示します。また、表 7 .9 に、実行状態 に必要なステート数を示します。 表 7.8 DTC の実行状態 レジスタ情報 モード ベクタリード リード/ライト データリード データライト 内部動作 I J K L M ノーマル 1 6 1 1 3 リピート 1 6 1 1 3 ブロック転送 1 6 N N 3 N:ブロックサイズ(CRAH、CRAL の初期設定値) 表 7.9 実行状態に必要なステート数 アクセス対象 内蔵 内蔵 内部 I/O レジスタ 外部デバイス RAM ROM バス幅 32 16 8 16 アクセスステート 1 1 2 2 2 3 2 3 8 16 ベクタリード SI − 1 − − 4 6+2 m 2 3+m レジスタ情報 SJ 1 − − − − − − − 実 リード/ライト 行 バイトデータリード SK 1 1 2 2 2 3+m 2 3+m 状 ワードデータリード SK 1 1 4 2 4 6+2 m 2 3+m 態 バイトデータライト SL 1 1 2 2 2 3+m 2 3+m ワードデータライト SL 1 1 4 2 4 6+2 m 2 3+m 内部動作 SM 1 実行ステート数は次の計算式で計算されます。なお、Σは 1 つの起動要因で転送する回 数分(CHNE ビットを 1 にセットした数+1)の和を示します。 実行ステート数=I・S I+Σ(J・S J+K・S K+L・S L )+M・S M 例えば、DTC ベクタアドレスを内蔵 R OM に配置し、ノーマルモードで、内蔵 R OM→ 内部 I/O レジスタのデータ転送を行った場合、DTC の動作に必要な時間は 13 ステートで す。起動からデータライト終了までの時間は 10 ステートです。 212 7. 7.3.11 データトランスファコントローラ(DTC) DTC 使用手順 (1)割込みによる起動 DTC の割込み起動による使用手順を以下に示します。 [1]MRA、MRB、SAR、DAR、CRA、CRB のレジスタ情報を内蔵 RAM 上に設定します。 [2]レジスタ情報の先頭アドレスを、DTC ベクタアドレスに設定します。 [3]DTCER の対応するビットを 1 にセットします。 [4]起動要因となる割込み要因のイネーブルビットを 1 にセットします。 要因となる割込みが発生すると、DTC が起動されます。 [5]1 回のデータ転送終了後、または、指定した回数のデータ転送終了後、DTC E ビット が 0 にクリアされ、CPU に割込みが要求されます。引続き DTC によるデータ転送を行 う場合には、DTCE を 1 にセットしてください。 (2)ソフトウエアによる起動 DTC のソフトウエア起動による使用手順を以下に示します。 [1]MRA、MRB、SAR、DAR、CRA、CRB のレジスタ情報を内蔵 RAM 上に設定します。 [2]レジスタ情報の先頭アドレスを、DTC ベクタアドレスに設定します。 [3]SWDTE=0 を確認します。 [4]SWDTE に 1 を、DTVECR にベクタ番号をライトします。 [5]DTVECR にライトしたベクタ番号を確認します。 [6]1 回のデータ転送終了後、DI SEL ビットが 0 で、C PU に割込みを要求しない場合、 SWDTE ビットが 0 にクリアされます。引続き DTC によるデータ転送を行う場合には、 SWDTE を 1 にセットしてください。DISEL ビットが 1 の場合または指定した回数のデ ータ転送終了後、SWDTE ビットは 1 に保持され、CPU に割込みが要求されます。 213 7. データトランスファコントローラ(DTC) 7.3.12 DTC 使用例 (1)ノーマルモード DTC の使用例として、SCI による 128 バイトのデータ受信を行う例を示します。 [1]MRA はソースアドレス固定(SM1=SM0=0)、デスティネーションアドレスインク リメント(DM1=1、DM0=0)、ノーマ ルモード(MD1=MD0=0)、バイトサイズ (Sz=0)を設定します。DTS ビットは任意の値とすることができます。MRB は 1 回の 割込みで 1 回のデータ転送(C HNE=0、DI SEL=0)を行います。S AR は S CI の R DR のアドレス、DAR はデータを格納する R AM の先頭アドレス、C RA は 128(H'0080) を設定します。CRB は任意の値とすることができます。 [2]レジスタ情報の先頭アドレスを、DTC ベクタアドレスに設定します。 [3]DTCER の対応するビットを 1 にセットします。 [4]SCI を所定の受信モードに設定します。SCR の RIE ビットを 1 にセットし、受信完了 (R XI)割込みを許可します。また、S CI の受信動作中に受信エラーが発生すると、以 後の受信が行われませんので、CPU が受信エラー割込みを受け付けられるようにして ください。 [5]S CI の 1 バイトのデータ受信が完了するごとに、S SR の R DR F フラグが 1 にセットさ れ、R XI 割込みが発生し、DTC が起動されます。DTC によって、受信データが R DR からRAM へ転送され、DARのインクリメント、CRA のデクリメントを行います。RDRF フラグは自動的に 0 にクリアされます。 [6]128 回のデータ転送終了後、C RA が 0 になると、R DR F フラグは 1 のまま保持され、 DTC E ビットが 0 にクリアされ、C PU に R XI 割込みが要求されます。割込み処理ルー チンで終了処理を行ってください。 (2)ソフトウェア起動 DTC の使用例として、ソフトウェア起動による 1 ブロック 128 バイトのデータ転送を行 う例を示します。転送元アドレスは H'1000、転送先アドレスは H'2000 です。ベクタ番号 は H'60、したがって、ベクタアドレスは H'04C0 です。 [1]MR A はソースアドレス インクリメント(S M1=1、S M0=0)、 デスティネーション アドレスインクリメント(DM1=1、DM0=0)、ブロック転送モード(MD1=1、MD0 =0)、バイトサイズ(Sz=0)を設定します。DTS ビットは任意の値とすることがで きます。MR B は 1 回の割込みで 1 回のブロック転送(C HNE=0)を行います。S AR は転送元アドレスで H'1000、DAR は転送先アドレスで H'2000、C RA は 128(H'8080) を設定します。CRB は 1(H'0001)をセットします。 [2]レジスタ情報の先頭アドレスを、DTC ベクタアドレス(H'04C0)に設定します。 214 7. データトランスファコントローラ(DTC) [3]DTVECR の SWDTE=0 を確認します。現在、DTC がソフトウェア起動による転送を 行っていないことの確認です。 [4]S WDTE=1 と共に、ベクタ番号 H'60 を DTV ECR にライトします。ライトデータは H'E0 です。 [5]再度 DTVECR を読み、ベクタ番号 H'60 が設定されていることを確認します。設定さ れていないときは、ライトが失敗したことを表わします。[3]と[4]の間に割込み が入り、ここで他のソフトウェアによって起動された場合が、これに相当します。起 動したい場合、[3]に戻ってください。 [6]ライトが成功すると、DTC が起動され、128 バイト 1 ブロックの転送を行います。 [7]転送後、S WDTEN D 割込みが起動します。割込み処理ルーチンで S WDTE ビットの 0 クリアなど、終了処理を行ってください。 215 7. データトランスファコントローラ(DTC) 7.4 割込み DTC が指定された回数のデータ転送を終了したとき、および DI SEL ビットが 1 にセッ トされたデータ転送を終了したとき、CPU に対して割込みを要求します。割込み起動の場 合、起動要因に設定した割込みが発生します。これらの C PU に対する割込みは C PU のマ スクレベルや割込みコントローラのプライオリティレベルの制御を受けます。 ソ フ トウ ェ ア によ る 起 動 の場 合 、 ソフ ト ウ ェ ア起 動 デ ー タ転 送 終 了割 込 み (SWDTEND)を発生します。 DI SEL ビットが 1 の状態で、1 回のデータ転送を終了した場合、または指定した回数の デー タ転 送を 終了 した 場合 、デ ータ 転送終 了後 に、 S WDTE ビ ット が 1 に保 持さ れ、 SWDTEND 割込みを発生します。割込み処理ルーチンで SWDTE ビットを 0 にクリアして ください。 ソフトウェアで DTC を起動する場合、SWDTE ビットを 1 にセットしても、データ転送 待ち、およびデータ転送中は、SWDTEND 割込みは発生しません。 7.5 使用上の注意 (1)モジュールストップ MST PC R の MST P14 ビットを 1 にセットすると、DTC のクロックが停止し、DTC はモ ジュールストップ状態となります。ただし、DTC が起動中には MSTP14 ビットに 1 をライ トできません。 また、DTC をモジュールストップとする場合、必ず DTCER がすべてクリアされた状態 で MSTP14 ビットを 1 にセットしてください。 (2)内蔵 RAM MRA、MRB、SAR、DAR、CRA、CRB の各レジスタは、内蔵 RAM に配置します。DTC を使用する場合は、SYSCR の RAME ビットを 0 にクリアしないでください。 (3)DTCE ビットの設定 DTC E ビットの設定は、必ず B SET、B CLR などビット操作命令を使ってリード/ライ トしてください。ただし、初期設定に限り複数の起動要因を一度に設定するときは、割り 込みを禁止して当該レジスタのダミーリードを行ってからライトすることができます。 216 8. I/O ポート 第8章 目次 8.1 概要 ....................................................................................................................................... 219 8.2 ポート 1.................................................................................................................................. 227 8.3 8.4 8.5 8.6 8.7 8.2.1 概要 ...................................................................................................... 227 8.2.2 レジスタ構成 ......................................................................................... 228 8.2.3 モード別端子機能 .................................................................................. 230 8.2.4 入力プルアップ MOS.............................................................................. 231 ポート 2.................................................................................................................................. 232 8.3.1 概要 ...................................................................................................... 232 8.3.2 レジスタ構成 ......................................................................................... 233 8.3.3 モード別端子機能 .................................................................................. 235 8.3.4 入力プルアップ MOS.............................................................................. 237 ポート 3.................................................................................................................................. 238 8.4.1 概要 ...................................................................................................... 238 8.4.2 レジスタ構成 ......................................................................................... 239 8.4.3 モード別端子機能 .................................................................................. 241 8.4.4 入力プルアップ MOS.............................................................................. 242 ポート 4.................................................................................................................................. 243 8.5.1 概要 ...................................................................................................... 243 8.5.2 レジスタ構成 ......................................................................................... 243 8.5.3 端子機能................................................................................................ 244 ポート 5.................................................................................................................................. 248 8.6.1 概要 ...................................................................................................... 248 8.6.2 レジスタ構成 ......................................................................................... 248 8.6.3 端子機能................................................................................................ 250 ポート 6.................................................................................................................................. 251 8.7.1 概要 ...................................................................................................... 251 8.7.2 レジスタ構成 ......................................................................................... 252 8. I/O ポート 8.8 8.9 8.10 8.11 8.12 218 8.7.3 端子機能................................................................................................ 254 8.7.4 入力プルアップ MOS.............................................................................. 257 ポート 7.................................................................................................................................. 258 8.8.1 概要 ...................................................................................................... 258 8.8.2 レジスタ構成 ......................................................................................... 258 8.8.3 端子機能................................................................................................ 259 ポート 8.................................................................................................................................. 260 8.9.1 概要 ...................................................................................................... 260 8.9.2 レジスタ構成 ......................................................................................... 260 8.9.3 端子機能................................................................................................ 261 ポート 9.................................................................................................................................. 264 8.10.1 概要 ...................................................................................................... 264 8.10.2 レジスタ構成 ......................................................................................... 265 8.10.3 端子機能................................................................................................ 266 ポート A ................................................................................................................................. 269 8.11.1 概要 ...................................................................................................... 269 8.11.2 レジスタ構成 ......................................................................................... 269 8.11.3 端子機能................................................................................................ 271 8.11.4 入力プルアップ MOS.............................................................................. 274 ポート B ................................................................................................................................. 275 8.12.1 概要 ...................................................................................................... 275 8.12.2 レジスタ構成 ......................................................................................... 276 8.12.3 端子機能................................................................................................ 278 8.12.4 入力プルアップ MOS.............................................................................. 280 8. I/O ポート 8.1 概要 本 LS I には、10 本の入出力ポート(ポート 1〜6、8、9、A、B )と 1 本の入力専用ポー ト(ポート 7)があります。 ポート機能一覧を表 8.1、表 8.2 および表 8.3 に示します。各ポートの端子機能は兼用に なっています。 各ポートは、入出力を制御するデータディレクションレジスタ(DDR)と、出力データ を格納するデータレジ スタ(DR 、ODR )から構成されています。 なお、入力専用ポート には DDR はありません。 ポート 1〜3、6、A、B には、入力プルアップ MOS が内蔵されています。ポート A、B は DDR と ODR で、入力プルアップ MOS のオン/オフを制御し、ポート 1〜3、6 は DDR、 DR の他に、入力プルアップ MOS コントロールレジスタ(PCR)で、入力プルアップ MOS のオン/オフを制御します。 ポート 1〜6、8、9、A、B は 1 個の TTL 負荷と 30pF の容量負荷を駆動することができ ます。すべての入出力ポートは出力時にダーリントントランジスタを駆動することができ ます。また、ポート 1、2、3 は LED を駆動する(シンク電流 10mA)ことができます。 また、ポート A の P A4〜P A7 はバスバッファ駆動が可能です。なお、H8S /2148 シリー ズ、H8S /2147N では、ポート 5 の P 52、ポート 9 の P 97 の出力形式は、NMOS プッシュプ ル出力となっています。 H8S /2144 シリーズ、H8S /2147N は、一部の周辺機能を内蔵しないサブセットの仕様に なってい ますので、ご注 意ください。 ピン機能の異同 については、「 表 8 .1 H8 S/2 14 8 シリーズポート機能一覧」「表 8.2 H8S/2147N ポート機能一覧」および「表 8.3 H8S/2144 シリーズポート機能一覧」を参照してください。 219 8. I/O ポート 表 8.1 H8S/2148 シリーズポートの機能一覧 拡張モード ポート 概要 端子 ポート ・8 ビットの入出力 P17〜P10/ 1 ポート A7〜A0/ ・入力プルアップ PW7〜PW0 MOS 内蔵 ・LED 駆動可能 ポート ・8 ビットの入出力 2 ポート ・入力プルアップ MOS 内蔵 ・LED 駆動可能 P27/A15/PW15/ CBLANK P26/A14/PW14 P25/A13/PW13 P24/A12/PW12 P23/A11/PW11 P22/A10/PW10 P21/A9/PW9 P20/A8/PW8 ポート ・8 ビットの入出力 P37〜P30/ 3 ポート HDB7〜HDB0/ ・入力プルアップ D15〜D8 MOS 内蔵 ・LED 駆動可能 ポート ・8 ビットの入出力 P47/PWX1 P46/PWX0 4 ポート P45/TMRI1/HIRQ12/ CSYNCI P44/TMO1/HIRQ1/ HSYNCO P43/TMCI1/HIRQ11/ HSYNCI P42/TMRI0/SCK2/ SDA1 P41/TMO0/RxD2/ IrRxD P40/TMCI0/TxD2/ IrTxD ポート ・3 ビットの入出力 P52/SCK0/SCL0 P51/RxD0 5 ポート P50/TxD0 220 モード 1 モード 2、モード 3 (EXPE=1) シングルチップモード モード 2、モード 3 (EXPE=0) アドレス出力端子 DDR=0 のとき (A7〜A0) (リセット後) 入力ポート DDR=1 のとき アドレス出力端子(A7〜 A0) または PWM タイマ 出力端子(PW7〜PW0) PWM タイマ出力端子 (PW7〜PW0) と入出力ポートの兼用 アドレス出力端子 DDR=0 のとき (A15〜A8) (リセット後) 入力ポートまたはタイマ コネクションの出力端子 (CBLANK) DDR=1 のとき アドレス出力端子(A15〜 A8)、 PWM タイマ出力端 子(PW15〜PW8)、タイマ コネクションの出力端子 (CBLANK)、または出力ポ ート(P27〜P24) PWM タイマ出力端子 (PW15〜PW8)、 またはタイマコネクショ ンの出力端子(CBLANK) と入出力ポートの兼用 データバス入出力端子(D15〜D8) HIF データバス入出力端 子(HDB7〜HDB0)と入出 力ポートの兼用 14 ビット PWM タイマの出力端子(PWX1、 PWX0)、 8 ビットタイマ 0、1 の入出力端子(TMCI0、 TMRI0、TMO0、TMCI1、TMRI1、TMO1)、 タイマコネクションの入出力端子 (HSYNCO、CSYNCI、HSYNCI)、 SCI2 の入出力端子(TxD2、RxD2、SCK2)、 IrDA インタフェースの入出力端子(IrTxD、 IrRxD)、 I2C バスインタフェース 1【オプション】の入出力 端子(SDA1) と入出力ポートの兼用 14 ビット PWM タイマの 出力端子(PWX1、 PWX0) 、8 ビットタイマ 0、1 の入出力端子 (TMCI0、TMRI0、TMO0、 TMCI1、TMRI1、TMO1)、 タイマコネクションの入 出力端子(HSYNCO、 CSYNCI、HSYNCI)、HIF のホスト CPU 割込み要求 出力端子(HIRQ12、 HIRQ1、HIRQ11)、SCI2 の入出力端子(TxD2、 RxD2、SCK2)、IrDA イン タフェースの入出力端子 (IrTxD、IrRxD) 、 I2C バ スインタフェース 1【オプシ ョン】の入出力端子(SDA1) と入出力ポートの兼用 SCI0 の入出力端子(TxD0、RxD0、SCK0)、 I2C バスインタフェース 0【オプション】の入出力端子(SCL0) と入出力ポートの兼用 8. 拡張モード ポート 概要 端子 ポート ・8 ビットの入出力 P67/IRQ7/TMOX/ 6 ポート KIN7/CIN7 P66/IRQ6/FTOB/ KIN6/CIN6 P65/FTID/KIN5/ CIN5 P64/FTIC/KIN4/ CIN4/CLAMPO モード 1 モード 2、モード 3 (EXPE=1) I/O ポート シングルチップモード モード 2、モード 3 (EXPE=0) 外部割込み入力(IRQ7、IRQ6)、 FRT の入出力端子(FTCI、FTOA、FTIA、FTIB、FTIC、FTID、FTOB)、 8 ビットタイマ X、Y の入出力端子(TMOX、TMIX、TMIY)、 タイマコネクションの入出力端子(CLAMPO、VFBACKI、VSYNCI、 VSYNCO、HFBACKI)、 キーセンス割込み入力端子(KIN7〜KIN0)、 拡張 A/D 入力端子(CIN7〜CIN0) と入出力ポートの兼用 P63/FTIB/KIN3/ CIN3/VFBACKI P62/FTIA/TMIY/ KIN2/CIN2/ VSYNCI P61/FTOA/KIN1/ CIN1/VSYNCO P60/FTCI/TMIX/ ポート ・8 ビットの入力 7 ポート KIN0/CIN0/ HFBACKI P77/AN7/DA1 P76/AN6/DA0 P75/AN5 P74/AN4 P73/AN3 P72/AN2 P71/AN1 P70/AN0 ポート ・7 ビットの入出力 P86/IRQ5/SCK1/ 8 ポート SCL1 P85/IRQ4/RxD1 P84/IRQ3/TxD1 P83 P82/HIFSD A/D 変換器のアナログ入力(AN7〜AN0)、 D/A 変換器のアナログ出力(DA1〜DA0) と入力ポートの兼用 外部割込み入力端子(IRQ5、IRQ4、IRQ3)、 SCI1 の入出力端子(TxD1、RxD1、SCK1)、 I2C バスインタフェース 1【オプション】の入出力 端子(SCL1) と入出力ポートの兼用 P81/CS2/GA20 P80/HA0 ポート ・8 ビットの入出力 P97/WAIT/SDA0 9 ポート 外部割込み入力端子 (IRQ5、IRQ4、IRQ3)、SCI1 の入出力端子(TxD1、 RxD1、SCK1)、HIF の制 御入出力端子(CS2、 GA20、HA0、HIFSD)、 I2C バスインタフェース 1 【オプション】の入出力端子 (SCL1) と入出力ポートの兼用 I2C バスインタフェース 0 拡張データバス制御入力端子(WAIT)、 I2C バスインタフェース 0【オプション】の入出力 【オプション】の入出力端子 (SDA0)と 端子(SDA0) 入出力ポートの兼用 と入出力ポートの兼用 P96/φ/EXCL DDR=0 のとき 入力ポートまたは EXCL 入力端子 DDR=1 のとき (リセット後) φ出力端子 P95/AS/ IOS /CS1 拡張データバス制御出力端子 HIF の制御入力端子 P94/HWR /IOW (AS/ IOS、HWR、RD) (CS1、IOW、IOR) と入出力ポートの兼用 DDR=0 のとき (リセット後) 入力ポートまたは EXCL 入力端子の兼用 DDR=1 のとき φ出力端子 P93/RD /IOR P91/IRQ1 外部割込み入力端子 (IRQ0、IRQ1) と入出力ポートの兼用 P90/LWR/IRQ2/ 拡張データバス制御出力端子(LWR) 、 P92/IRQ0 ADTRG/ECS2 外部割込み入力端子 (IRQ2)、A/D 変換器の外部 A/D 変換器の外部トリガ入力端子(ADTRG)、 トリガ入力端子 (ADTRG)、HIF の制御入力 と入出力ポートの兼用 端子(ECS2) と 入出力ポートの兼用 外部割込み入力端子(IRQ2)、 221 8. I/O ポート 拡張モード ポート 概要 端子 ポート ・8 ビットの入出力 PA7/A23/KIN15/ A ポート CIN15/ PS2CD PA6/A22/KIN14/ CIN14/ PS2CC PA5/A21/KIN13/ CIN13/ PS2BD PA4/A20/KIN12/ CIN12/ PS2BC PA3/A19/KIN11/ CIN11/ PS2AD PA2/A18/KIN10/ CIN10/ PS2AC PA1/A17/KIN9/CIN9 PA0/A16/KIN8/CIN8 ポート ・8 ビットの入出力 PB7/D7 PB6/D6 B ポート PB5/D5 PB4/D4 PB3/D3/CS4 PB2/D2/CS3 PB1/D1/HIRQ4 PB0/D0/HIRQ3 222 モード 1 モード 2、モード 3 (EXPE=1) シングルチップモード モード 2、モード 3 (EXPE=0) キーセンス割込み アドレス出力端子(A23 〜 キーセンス割込み入力端 A16)、 入力端子(KIN15 子(KIN15 〜KIN8)、 〜KIN8)、拡張 A/D キーセンス割込み入力端 拡張 A/D 入力端子(CIN15 〜CIN8)、 入力端子(CIN15 子(KIN15 〜KIN8)、 拡張 A/D 入力端子(CIN15 キーボードバッファコン 〜CIN8) 、 トローラ入出力端子 キーボードバッフ 〜CIN8)、 ァコントローラ入 キーボードバッファコン (PS2CD,PS2CC,PS2BD, PS2BC,PS2AD,PS2AC) トローラ入出力端子 出力端子 (PS2CD,PS2CC, (PS2CD,PS2CC,PS2BD, と入出力ポートの兼用 PS2BD,PS2BC,P PS2BC,PS2AD,PS2AC) S2AD,PS2AC) と入出力ポートの兼用 と入出力ポートの 兼用 8 ビットバスモード(ABW=1)のとき 入出力ポート 16 ビットバスモード(ABW=0)のとき データバス入出力端子(D7〜D0) HIF の制御入出力端子 (CS3、CS4、HIRQ3、 HIRQ4)と 入出力ポートの兼用 8. 表 8.2 H8S/2147N ポートの機能一覧 拡張モード ポート I/O ポート 概要 端子 ポート ・8 ビットの入出力 P17〜P10/ 1 ポート A7〜A0/ ・入力プルアップ PW7〜PW0 MOS 内蔵 ・LED 駆動可能 ポート ・8 ビットの入出力 2 ポート ・入力プルアップ MOS 内蔵 ・LED 駆動可能 P27/A15/PW15 P26/A14/PW14 P25/A13/PW13 P24/A12/PW12 P23/A11/PW11 P22/A10/PW10 P21/A9/PW9 P20/A8/PW8 モード 1 モード 2、モード 3 (EXPE=1) アドレス出力端子 DDR=0 のとき (A7〜A0) (リセット後) 入力ポート DDR=1 のとき アドレス出力端子(A7〜 A0) または PWM タイマ 出力端子(PW7〜PW0) シングルチップモード モード 2、モード 3 (EXPE=0) PWM タイマ出力端子 (PW7〜PW0) と入出力ポートの兼用 アドレス出力端子 DDR=0 のとき PWM タイマ出力端子 (A15〜A8) (リセット後) (PW15〜PW8)と入出力 入力ポート ポートの兼用 DDR=1 のとき アドレス出力端子(A15〜 A8)、 PWM タイマ出力端 子(PW15〜PW8)、または 出力ポート(P27〜P24) ポート ・8 ビットの入出力 P37〜P30/ 3 ポート HDB7〜HDB0/ ・入力プルアップ D15〜D8 MOS 内蔵 ・LED 駆動可能 ポート ・8 ビットの入出力 P47/PWX1 P46/PWX0 4 ポート P45/TMRI1/HIRQ12 P44/TMO1/HIRQ1 P43/TMCI1/HIRQ11 P42/TMRI0/SCK2/ SDA1 P41/TMO0/RxD2/ IrRxD P40/TMCI0/TxD2/ IrTxD データバス入出力端子(D15〜D8) HIF データバス入出力端 子(HDB7〜HDB0)と入出 力ポートの兼用 14 ビット PWM タイマの出力端子(PWX1、 PWX0)、 8 ビットタイマ 0、1 の入出力端子(TMCI0、 TMRI0、TMO0、TMCI1、TMRI1、TMO1)、 SCI2 の入出力端子(TxD2、RxD2、SCK2)、 IrDA インタフェースの入出力端子(IrTxD、 IrRxD)、 I2C バスインタフェース 1【オプション】の入出力 端子(SDA1) と入出力ポートの兼用 14 ビット PWM タイマの 出力端子(PWX1、 PWX0) 、8 ビットタイマ 0、1 の入出力端子 (TMCI0、TMRI0、TMO0、 TMCI1、TMRI1、TMO1)、 HIF のホスト CPU 割込み 要求出力端子(HIRQ12、 HIRQ1、HIRQ11)、SCI2 の入出力端子(TxD2、 RxD2、SCK2)、IrDA イン タフェースの入出力端子 (IrTxD、IrRxD) 、 I2C バ スインタフェース 1【オプシ ョン】の入出力端子(SDA1) と入出力ポートの兼用 ポート ・3 ビットの入出力 P52/SCK0/SCL0 P51/RxD0 5 ポート P50/TxD0 SCI0 の入出力端子(TxD0、RxD0、SCK0)、 I2C バスインタフェース 0【オプション】の入出力端子(SCL0) と入出力ポートの兼用 ポート ・8 ビットの入出力 P67/IRQ7/KIN7/CIN7 6 ポート P66/IRQ6/FTOB/ 外部割込み入力(IRQ7、IRQ6)、 FRT の入出力端子(FTCI、FTOA、FTIA、FTIB、FTIC、FTID、FTOB)、 8 ビットタイマ Y の入力端子(TMIY)、 KIN6/CIN6 P65/FTID/KIN5/ CIN5 P64/FTIC/KIN4/CIN4 キーセンス割込み入力端子(KIN7〜KIN0)、 拡張 A/D 入力端子(CIN7〜CIN0) と入出力ポートの兼用 P63/FTIB/KIN3/CIN3 P62/FTIA/TMIY/ KIN2/CIN2 P61/FTOA/KIN1/CIN1 ポート ・8 ビットの入力 7 ポート P60/FTCI/KIN0/CIN0 P77/AN7/DA1 P76/AN6/DA0 P75/AN5 P74/AN4 P73/AN3 P72/AN2 P71/AN1 P70/AN0 A/D 変換器のアナログ入力(AN7〜AN0)、 D/A 変換器のアナログ出力(DA1〜DA0) と入力ポートの兼用 223 8. I/O ポート 拡張モード ポート 概要 端子 ポート ・7 ビットの入出力 P86/IRQ5/SCK1/ 8 ポート SCL1 P85/IRQ4/RxD1 P84/IRQ3/TxD1 P83 P82/HIFSD モード 1 モード 2、モード 3 (EXPE=1) 外部割込み入力端子(IRQ5、IRQ4、IRQ3)、 SCI1 の入出力端子(TxD1、RxD1、SCK1)、 I2C バスインタフェース 1【オプション】の入出力 端子(SCL1) と入出力ポートの兼用 P81/CS2/GA20 P80/HA0 ポート ・8 ビットの入出力 P97/WAIT/SDA0 9 ポート モード 2、モード 3 (EXPE=0) 外部割込み入力端子 (IRQ5、IRQ4、IRQ3)、SCI1 の入出力端子(TxD1、 RxD1、SCK1)、HIF の制 御入出力端子(CS2、 GA20、HA0、HIFSD)、 I2C バスインタフェース 1 【オプション】の入出力端子 (SCL1) と入出力ポートの兼用 I2C バスインタフェース 0 拡張データバス制御入力端子(WAIT)、 I2C バスインタフェース 0【オプション】の入出力 【オプション】の入出力端子 (SDA0)と 端子(SDA0) 入出力ポートの兼用 と入出力ポートの兼用 P96/φ/EXCL DDR=0 のとき 入力ポートまたは EXCL 入力端子 DDR=1 のとき (リセット後) φ出力端子 P95/AS/ IOS /CS1 拡張データバス制御出力端子 HIF の制御入力端子 P94/HWR /IOW (AS/ IOS、HWR、RD) (CS1、IOW、IOR) と入出力ポートの兼用 DDR=0 のとき (リセット後) 入力ポートまたは EXCL 入力端子の兼用 DDR=1 のとき φ出力端子 P93/RD /IOR P91/IRQ1 外部割込み入力端子 (IRQ0、IRQ1) と入出力ポートの兼用 P90/LWR/IRQ2/ 拡張データバス制御出力端子(LWR) 、 P92/IRQ0 ADTRG/ECS2 ポート ・8 ビットの入出力 PA7/A23/KIN15/ A ポート CIN15/ PS2CD PA6/A22/KIN14/ CIN14/ PS2CC PA5/A21/KIN13/ CIN13/ PS2BD PA4/A20/KIN12/ CIN12/ PS2BC PA3/A19/KIN11/ CIN11/ PS2AD PA2/A18/KIN10/ CIN10/ PS2AC PA1/A17/KIN9/CIN9 PA0/A16/KIN8/CIN8 ポート ・8 ビットの入出力 PB7/D7 PB6/D6 B ポート PB5/D5 PB4/D4 PB3/D3/CS4 PB2/D2/CS3 PB1/D1/HIRQ4 PB0/D0/HIRQ3 224 シングルチップモード 外部割込み入力端子 (IRQ2)、A/D 変換器の外部 A/D 変換器の外部トリガ入力端子(ADTRG)、 トリガ入力端子 (ADTRG)、HIF の制御入力 と入出力ポートの兼用 端子(ECS2) と 入出力ポートの兼用 外部割込み入力端子(IRQ2)、 キーセンス割込み アドレス出力端子(A23 〜 キーセンス割込み入力端 A16)、 入力端子(KIN15 子(KIN15 〜KIN8)、 〜KIN8)、拡張 A/D キーセンス割込み入力端 拡張 A/D 入力端子(CIN15 〜CIN8)、 入力端子(CIN15 子(KIN15 〜KIN8)、 拡張 A/D 入力端子(CIN15 キーボードバッファコン 〜CIN8) 、 トローラ入出力端子 キーボードバッフ 〜CIN8)、 ァコントローラ入 キーボードバッファコン (PS2CD,PS2CC,PS2BD, PS2BC,PS2AD,PS2AC) トローラ入出力端子 出力端子 (PS2CD,PS2CC, (PS2CD,PS2CC,PS2BD, と入出力ポートの兼用 PS2BD,PS2BC,P PS2BC,PS2AD,PS2AC) S2AD,PS2AC) と入出力ポートの兼用 と入出力ポートの 兼用 8 ビットバスモード(ABW=1)のとき 入出力ポート 16 ビットバスモード(ABW=0)のとき データバス入出力端子(D7〜D0) HIF の制御入出力端子 (CS3、CS4、HIRQ3、 HIRQ4)と 入出力ポートの兼用 8. 表 8.3 H8S/2144 シリーズポートの機能一覧 拡張モード ポート I/O ポート 概要 端子 モード 1 モード 2、モード 3 (EXPE=1) シングルチップモード モード 2、モード 3 (EXPE=0) ポート ・8 ビットの入出力 P17〜P10/ 1 ポート A7〜A0 ・入力プルアップ MOS 内蔵 ・LED 駆動可能 アドレス出力端子 DDR=0 のとき (A7〜A0) (リセット後) 入力ポート DDR=1 のとき アドレス出力端子(A7〜 A0) 入出力ポート ポート ・8 ビットの入出力 P27〜P20/ 2 ポート A15〜A8 ・入力プルアップ MOS 内蔵 ・LED 駆動可能 アドレス出力端子 DDR=0 のとき (A15〜A8) (リセット後) 入力ポート DDR=1 のとき アドレス出力端子(A15〜 A8)、または出力ポート (P27〜P24) 入出力ポート ポート ・8 ビットの入出力 P37〜P30/ 3 ポート D15〜D8 ・入力プルアップ MOS 内蔵 ・LED 駆動可能 ポート ・8 ビットの入出力 P47/PWX1 P46/PWX0 4 ポート P45/TMRI1 P44/TMO1 P43/TMCI1 P42/TMRI0/SCK2 P41/TMO0/RxD2/ IrRxD P40/TMCI0/TxD2/ IrTxD ポート ・3 ビットの入出力 P52/SCK0 P51/RxD0 5 ポート P50/TxD0 データバス入出力端子(D15〜D8) 入出力ポート ポート ・8 ビットの入出力 P67/IRQ7/KIN7/CIN7 6 ポート P66/IRQ6/FTOB/ KIN6/CIN6 P65/FTID/KIN5/CIN5 P64/FTIC/KIN4/CIN4 P63/FTIB/KIN3/CIN3 P62/FTIA/TMIY/ 14 ビット PWM タイマの出力端子(PWX1、PWX0)、 8 ビットタイマ 0、1 の入出力端子(TMCI0、TMRI0、TMO0、TMCI1、 TMRI1、TMO1)、 SCI2 の入出力端子(TxD2、RxD2、SCK2)、 IrDA インタフェースの入出力端子(IrTxD、IrRxD) と入出力ポートの兼用 SCI0 の入出力端子(TxD0、RxD0、SCK0) と入出力ポートの兼用 外部割込み入力端子 (IRQ7、IRQ6)、 FRT の入出力端子(FTCI、FTOA、FTIA、FTIB、FTIC、FTID、FTOB)、 8 ビットタイマ Y の入力端子 (TMIY)、 キーセンス割込み入力端子 (KIN7 〜KIN0)、 拡張 A/D 入力端子 (CIN7 〜CIN0) と入出力ポートの兼用 KIN2/CIN2 P61/FTOA/KIN1/ CIN1 ポート ・8 ビットの入力 7 ポート P60/FTCI/KIN0/CIN0 P77/AN7/DA1 P76/AN6/DA0 P75/AN5 P74/AN4 P73/AN3 P72/AN2 P71/AN1 P70/AN0 ポート ・7 ビットの入出力 P86/IRQ5/SCK1 8 ポート P85/IRQ4/RxD1 A/D 変換器のアナログ入力 (AN7〜AN0)、 D/A 変換器のアナログ出力 (DA1、DA0) と入力ポートの兼用 外部割込み入力端子(IRQ5、IRQ4、IRQ3)、SCI1 の入出力端子 (TxD1、RxD1、SCK1)と入出力ポートの兼用 P84/IRQ3/TxD1 P83 P82 P81 P80 225 8. I/O ポート 拡張モード ポート 概要 端子 ポート ・8 ビットの入出力 P97/WAIT 9 ポート モード 1 モード 2、モード 3 (EXPE=1) 拡張データバス制御入力端子(WAIT) と入出力ポートの兼用 P96/φ/EXCL DDR=0 のとき 入力ポートまたは EXCL 入力端子 DDR=1 のとき (リセット後) φ出力端子 P95/AS/ IOS 拡張データバス制御出力端子 P94/HWR (AS/ IOS、HWR、RD) シングルチップモード モード 2、モード 3 (EXPE=0) 入出力ポート DDR=0 のとき (リセット後) 入力ポートまたは EXCL 入力端子の兼用 DDR=1 のとき φ出力端子 入出力ポート P93/RD P92/IRQ0 外部割込み入力端子 (IRQ0、IRQ1)と入出力ポートの兼用 P91/IRQ1 P90/LWR/IRQ2/ ADTRG ポート ・8 ビットの入出力 PA7〜PA0/ A ポート A23〜A16/ KIN15〜KIN8/ CIN15〜CIN8 拡張データバス制御出力端子(LWR) 、 (IRQ2)、A/D 変換器の外部 A/D 変換器の外部トリガ入力端子(ADTRG) と入出力ポートの兼用 トリガ入力端子(ADTRG) と入出力ポートの兼用 キーセンス割込み アドレス出力端子(A23〜 キーセンス割込み入力端 A16)、キーセンス割込み 子(KIN15〜KIN8)、 入力端子(KIN15 拡張 A/D 入力端子(CIN15 〜KIN8)、拡張 A/D 入力端子(KIN15〜 〜CIN8) 入力端子(CIN15 KIN8)、 〜CIN8)と入出力 拡張 A/D 入力端子(CIN15 と入出力ポートの兼用 ポートの兼用 ポート ・8 ビットの入出力 PB7〜PB0/D7〜D0 B ポート 226 外部割込み入力端子 外部割込み入力端子 (IRQ2)、 〜CIN8) と入出力ポートの兼用 8 ビットバスモード(ABW=1)のとき 入出力ポート 16 ビットバスモード(ABW=0)のとき データバス入出力端子(D7〜D0) 入出力ポート 8. I/O ポート 8.2 ポート 1 8.2.1 概要 ポート 1 は、8 ビットの入出力ポートです。ポート 1 は、アドレスバス出力機能、8 ビッ ト P WM の出力端子(P W7〜P W0)【H8 S/ 21 48 シリーズ、H8 S/ 21 47 N のみ】と兼用になって おり、動作モードによって端子機能が切り替わります。 ポート 1 は、プログラムで制御可能な入力プルアップ MOS が内蔵されています。 ポート 1 の各端子の構成を図 8.1 に示します。 ポ ー ト 1 図 8.1 ポート1端子 モード1の端子機能 P17/ A7 / PW7 A7(出力) P16/ A6 / PW6 A6(出力) P15/ A5 / PW5 A5(出力) P14/ A4 / PW4 A4(出力) P13/ A3 / PW3 A3(出力) P12/ A2 / PW2 A2(出力) P11/ A1 / PW1 A1(出力) P10/ A0 / PW0 A0(出力) モード2、3(EXPE=0)の端子機能 モード2、3(EXPE=1)の端子機能 P17 (入出力)/PW7(出力) A7(出力)/P17(入力)/PW7(出力) P16 (入出力)/PW6(出力) A6(出力)/P16(入力)/PW6(出力) P15 (入出力)/PW5(出力) A5(出力)/P15(入力)/PW5(出力) P14 (入出力)/PW4(出力) A4(出力)/P14(入力)/PW4(出力) P13 (入出力)/PW3(出力) A3(出力)/P13(入力)/PW3(出力) P12 (入出力)/PW2(出力) A2(出力)/P12(入力)/PW2(出力) P11 (入出力)/PW1(出力) A1(出力)/P11(入力)/PW1(出力) P10 (入出力)/PW0(出力) A0(出力)/P10(入力)/PW0(出力) ポート 1 の端子機能 227 8. I/O ポート 8.2.2 レジスタ構成 表 8.4 にポート 1 のレジスタ構成を示します。 表 8.4 ポート 1 レジスタ構成 名 称 略称 ポート 1 データ R/W 初期値 アドレス* 1 W H'00 H'FFB0 P1DDR ディレクションレジスタ ポート 1 データレジスタ P1DR R/W H'00 H'FFB2 ポート 1 プルアップ MOS P1PCR R/W H'00 H'FFAC コントロールレジスタ 【注】 *1 アドレスの下位 16 ビットを示しています。 (1)ポート 1 データディレクションレジスタ(P1DDR) ビット : 7 6 5 4 3 2 1 0 P17DDR P16DDR P15DDR P14DDR P13DDR P12DDR P11DDR P10DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W P1DDR は、8 ビットのライト専用レジスタで、ポート 1 の各端子の入出力をビットごと に指定します。リードは無効です。リードすると不定値が読み出されます。 P 1DDR は、リセットまたはハードウェアスタンバイモードでは、H'00 に初期化されま す。ソフトウェアスタンバイモードでは 、P 1DDR は直前の状態を保持します。ソフトウ ェアスタンバイモードに遷移したとき、アドレス出力端子は出力状態を保持します。 (a)モード 1 P1DDR の設定値にかかわらず、対応するポート 1 の各端子はアドレス出力となります。 ハードウェアスタンバイモード時は、アドレス出力はハイインピーダンス状態となりま す。 228 8. I/O ポート (b)モード 2、3(EXPE=1) P1DDR を 1にセットすると対応するポート 1の各端子はアドレス出力または PWM 出力 となり、0 にクリアすると入力ポートになります。 (c)モード 2、3(EXPE=0) P1DDR を 1にセットすると対応するポート 1の各端子は出力ポートまたは PWM 出力と なり、0 にクリアすると入力ポートになります。 (2)ポート 1 データレジスタ(P1DR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 P17DR P16DR P15DR P14DR P13DR P12DR P11DR P10DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P1DR は、8 ビットのリード/ライト可能なレジスタで、ポート 1 の各端子(P17〜P10) の出力データを格納します。P1DDR が 1 のときポート 1 のリードを行うと、P1DR の値を 直接リードします。そのため端子の状態の影響を受けません。P1DDR が 0 のときポート 1 のリードを行うと、端子の状態が読み出されます。 P1DR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (3)ポート 1 プルアップ MOS コントロールレジスタ(P1PCR) ビット : 7 6 5 4 3 2 1 0 P17PCR P16PCR P15PCR P14PCR P13PCR P12PCR P11PCR P10PCR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P1PCR は、8 ビットのリード/ライト可能なレジスタで、ポート 1 に内蔵された入力プ ルアップ MOS をビットごとに制御します。 モード 2、3 では、P1DDR を 0 にクリアした(入力ポート)状態で、P1PCR を 1 にセッ トすると、入力プルアップ MOS はオンします。 P1PCR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 229 8. I/O ポート 8.2.3 モード別端子機能 (1)モード 1 モード 1 のとき、ポート 1 は自動的にアドレス出力になります。 ポート 1 の端子機能を図 8.2 に示します。 A7(出力) A6(出力) A5(出力) ポ ー ト 1 A4(出力) A3(出力) A2(出力) A1(出力) A0(出力) 図 8.2 ポート 1 の端子機能(モード 1) (2)モード 2、3(EXPE=1) モード 2、3(EXP E=1)のとき、ポート 1 はアドレス出力、P WM 出力または入力ポー トとして機能し、ビット単位で入出力を指定可能です。P 1DDR の各ビットを 1 にセット すると対応する端子はアドレス出力または P WM 出力になり、0 にクリアすると入力ポー トになります。 ポート 1 の端子機能を図 8.3 に示します。 ポ ー ト 1 図 8.3 230 P1DDR=1かつ、 PWOERA=0のとき P1DDR=0のとき P1DDR=1かつ、 PWOERA=1のとき A7(出力) P17(入力) PW7(出力) A6(出力) P16(入力) PW6(出力) A5(出力) P15(入力) PW5(出力) A4(出力) P14(入力) PW4(出力) A3(出力) P13(入力) PW3(出力) A2(出力) P12(入力) PW2(出力) A1(出力) P11(入力) PW1(出力) A0(出力) P10(入力) PW0(出力) ポート 1 の端子機能(モード 2、3(EXPE=1)) I/O ポート 8. (3)モード 2、3(EXPE=0) モード 2、3(EXPE=0)のとき、ポート 1 は PWM 出力または入出力ポートとして機能 し、各端子はビット単位で入出力を指定可能です。P 1DDR の各ビットを 1 にセットする と対応する端子は P WM 出力または出力ポートになり、0 にクリアすると入力ポートにな ります。 ポート 1 の端子機能を図 8.4 に示します。 P1DDR=1かつ、 P1nは、P1DDR=0のとき(入力端子) P1DDR=1かつ、PWOERA=0のとき(出力端子) PWOERA=1のとき ポ ー ト 1 図 8.4 P17 (入出力) PW7 (出力) P16 (入出力) PW6 (出力) P15 (入出力) PW5 (出力) P14 (入出力) PW4 (出力) P13 (入出力) PW3 (出力) P12 (入出力) PW2 (出力) P11 (入出力) PW1 (出力) P10 (入出力) PW0 (出力) ポート 1 の端子機能(モード 2、3(EXPE=0)) 8.2.4 入力プルアップ MOS ポート 1 は、プログラムで制御可能な入力プルアップ MOS を内蔵しています。この入 力プルアップ MOS はモード 2、3 のときに使用でき、ビット単位でオン/オフを指定でき ます。 モード 2、3 のとき、P1DDR を 0 にクリアした状態で P1PCR を 1 にセットすると、入力 プルアップ MOS はオンとなります。 入力プルアップ MOS は、リセットまたはハードウェアスタンバイモードではオフしま す。ソフトウェアスタンバイモードでは直前の状態を保持します。 入力プルアップ MOS の状態を表 8.5 に示します。 表 8.5 入力プルアップ MOS の状態(ポート 1) モード 1 リセット ハードウェア ソフトウェア その他の スタンバイモード スタンバイモード 動作時 OFF 2、3 OFF ON/OFF 【記号説明】 OFF :入力プルアップ MOS は、常にオフ状態です。 ON/OFF:P1DDR=0 かつ P1PCR=1 のときオン状態、その他のときはオフ状態です。 231 8. I/O ポート 8.3 ポート 2 8.3.1 概要 ポート 2 は、8 ビットの入出力ポートです。ポート 2 は、アドレスバス出力機能、8 ビッ ト PWM の出力端子(PW15〜PW8)【H8S/2148 シリーズ、H8S/2147N のみ】、タイマコネク ションの出力端子(CBLANK)【H8S/2148 シリーズのみ】と兼用になっており、動作モード によって端子機能が切り替わります。 ポート 2 は、プログラムで制御可能な入力プルアップ MOS が内蔵されています。 ポート 2 の各端子の構成を図 8.5 に示します。 ポート2端子 モード1の端子機能 P27 / A15/PW15/CBLANK A15(出力) ポ ー ト 2 P26 / A14/PW14 A14(出力) P25 / A13/PW13 A13(出力) P24 / A12/PW12 A12(出力) P23 / A11/PW11 A11(出力) P22 / A10/PW10 A10(出力) P21 / A9/PW9 A9 (出力) P20 / A8/PW8 A8 (出力) モード2、3(EXPE=0)の端子機能 モード2、3(EXPE=1)の端子機能 /CBLANK(出力) A15(出力)/P27(入出力) P27(入出力)/PW15(出力) /PW15(出力) /CBLANK(出力) P26(入出力)/PW14(出力) A14(出力)/P26(入出力) /PW14(出力) P25(入出力)/PW13(出力) A13(出力)/P25(入出力) /PW13(出力) P24(入出力)/PW12(出力) A12(出力)/P24(入出力) /PW12(出力) P23(入出力)/PW11(出力) A11(出力)/P23(入力) /PW11(出力) P22(入出力)/PW10(出力) A10(出力)/P22(入力) /PW10(出力) P21(入出力)/PW9 (出力) A9 (出力)/P21(入力) /PW9 (出力) P20(入出力)/PW8 (出力) A8 (出力)/P20(入力) /PW8 (出力) 図 8.5 232 ポート 2 の端子機能 8. I/O ポート 8.3.2 レジスタ構成 表 8.6 にポート 2 のレジスタ構成を示します。 表 8.6 ポート 2 レジスタ構成 名 称 略称 ポート 2 データ R/W 初期値 アドレス* 1 W H'00 H'FFB1 P2DDR ディレクションレジスタ ポート 2 データレジスタ P2DR R/W H'00 H'FFB3 ポート 2 プルアップ MOS P2PCR R/W H'00 H'FFAD コントロールレジスタ 【注】 *1 アドレスの下位 16 ビットを示しています。 (1)ポート 2 データディレクションレジスタ(P2DDR) ビット : 7 6 5 4 3 2 1 0 P27DDR P26DDR P25DDR P24DDR P23DDR P22DDR P21DDR P20DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W P2DDR は、8 ビットのライト専用レジスタで、ポート 2 の各端子の入出力をビットごと に指定します。リードは無効です。リードすると不定値が読み出されます。 P 2DDR は、リセットまたはハードウェアスタンバイモードでは、H'00 に初期化されま す。ソフトウェアスタンバイモードでは 、P 2DDR は直前の状態を保持します。ソフトウ ェアスタンバイモードに遷移したとき、アドレス出力端子は出力状態を保持します。 (a)モード 1 P2DDR の設定値にかかわらず、対応するポート 1 の各端子はアドレス出力となります。 ハードウェアスタンバイモード時は、アドレス出力はハイインピーダンス状態となりま す。 233 8. I/O ポート (b)モード 2、3(EXPE=1) P2DDR を 1にセットすると対応するポート 2の各端子はアドレス出力または PWM 出力 となり、0 にクリアすると入力ポートになります。なお、P 27〜P 24 については、IO SE ビ ット=1 にすることによりアドレス出力から出力ポートに切り替わります。 また、P27 は、P27DDR にかかわらず周辺機能出力とすることができます。 ポート 2 をアドレス出力として使用する場合は、外部空間のアクセスを正常に行なうた めに周辺機能出力に設定しないでください。 (c)モード 2、3(EXPE=0) P2DDR を 1 にセットすると対応するポート 2 の各端子は出力ポート、PWM 出力または 出力ポートとなり、0 にクリアすると入力ポートになります。 P27 は、P27DDR にかかわらず周辺機能出力とすることができます。 (2)ポート 2 データレジスタ(P2DR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 P27DR P26DR P25DR P24DR P23DR P22DR P21DR P20DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P2DR は、8 ビットのリード/ライト可能なレジスタで、ポート 2 の各端子(P27〜P20) の出力データを格納します。P2DDR が 1 のときポート 2 のリードを行なうと、P2DR の値 を直接リードします。そのため端子の状態の影響を受けません。P 2DDR が 0 のときポー ト 2 のリードを行なうと、端子の状態が読み出されます。 P2DR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (3)ポート 2 プルアップ MOS コントロールレジスタ(P2PCR) ビット : 7 6 5 4 3 2 1 0 P27PCR P26PCR P25PCR P24PCR P23PCR P22PCR P21PCR P20PCR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P2PCR は、8 ビットのリード/ライト可能なレジスタで、ポート 2 に内蔵された入力プ ルアップ MOS をビットごとに制御します。 モード 2、3 では、P2DDR を 0 にクリアした(入力ポート)状態で、P2PCR を 1 にセッ トすると、入力プルアップ MOS はオンします。 P2PCR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 234 8. I/O ポート 8.3.3 モード別端子機能 (1)モード 1 モード 1 のとき、ポート 2 は自動的にアドレス出力になります。 ポート 2 の端子機能を図 8.6 に示します。 A15 (出力) A14 (出力) A13 (出力) ポ ー ト 2 A12 (出力) A11 (出力) A10 (出力) A9 (出力) A8 (出力) 図 8.6 ポート 2 の端子機能(モード 1) (2)モード 2、3(EXPE=1) モード 2、3(EXP E=1)のとき、ポート 2 はアドレス出力、P WM 出力または入出力ポ ートとして機能し、ビット単位で入出力を指定可能です。P 2DDR の各ビットを 1 にセッ トすると対応する端子はアドレス出力または P WM 出力になり、0 にクリアすると入力ポ ートになります。なお、P 27〜P 24 については、IO SE ビット=1 にすることによりアドレ ス出力から出力ポートに切り替わります。また、P 27 は、P 27DDR にかかわらず周辺機能 出力とすることができます。ポート 2 をアドレス出力として使用する場合は、外部空間の アクセスを正常に行なうために周辺機能出力に設定しないでください。 ポート 2 の端子機能を図 8.7 に示します。 ポ ー ト 2 図 8.7 P2DDR=1かつ、 PWOERB=0のとき P2DDR=0のとき P2DDR=1かつ、 PWOERB=1のとき A15(出力)/P27(出力) P27(入力)/CBLANK(出力) PW1 5(出力)/CBLANK(出力) A14(出力)/P26(出力) P26(入力) PW1 4(出力) A13(出力)/P25(出力) P25(入力) PW1 3(出力) A12(出力)/P24(出力) P24(入力) PW1 2(出力) A11(出力) P23(入力) PW1 1(出力) A10(出力) P22(入力) PW1 0(出力) A9 (出力) P21(入力) PW9 (出力) A8 (出力) P20(入力) PW8 (出力) ポート 2 の端子機能(モード 2、3(EXPE=1)) 235 8. I/O ポート (3)モード 2、3(EXPE=0) モード 2、3( EXP E=0) のとき、 ポート 2 は P WM 出力、 タイマコ ネクショ ン出力 (C BLA NK)または入出力ポートとして機能し 、各端子はビット単位で入出力を指定可能 です。P2DDR の各ビットを 1 にセットすると対応する端子は PWM 出力または出力ポート になり、0 にクリアすると入力ポートになります。 P27 は、P27DDR にかかわらず周辺機 能出力とすることができます。 ポート 2 の端子機能を図 8.8 に示します。 P2DDR=1かつ、 P2nは、P2DDR=0のとき(入力端子) P2DDR=1かつ、PWOERB=0のとき(出力端子) PWOERB=1のとき ポ ー ト 2 図 8.8 236 P27 (入出力)/CBLANK(出力) PW1 5(出力)/CBLANK(出力) P26 (入出力) PW1 4(出力) P25 (入出力) PW1 3(出力) P24 (入出力) PW1 2(出力) P23 (入出力) PW1 1(出力) P22 (入出力) PW1 0(出力) P21 (入出力) PW9 (出力) P20 (入出力) PW8 (出力) ポート 2 の端子機能(モード 2、3(EXPE=0)) I/O ポート 8. 8.3.4 入力プルアップ MOS ポート 2 は、プログラムで制御可能な入力プルアップ MOS を内蔵しています。この入 力プルアップ MOS はモード 2、3 のときに使用でき、ビット単位でオン/オフを指定でき ます。 モード 2、3 のとき、P2DDR を 0 にクリアした状態で、P2PCR を 1 にセットすると、入 力プルアップ MOS はオンとなります。 入力プルアップ MOS は、リセットまたはハードウェアスタンバイモードではオフしま す。ソフトウェアスタンバイモードでは直前の状態を保持します。 入力プルアップ MOS の状態を表 8.7 に示します。 表 8.7 入力プルアップ MOS の状態(ポート 2) モード 1 リセット ハードウェア ソフトウェア その他の スタンバイモード スタンバイモード 動作時 OFF 2、3 OFF ON/OFF 【記号説明】 OFF :入力プルアップ MOS は、常にオフ状態です。 ON/OFF:P2DDR=0 かつ P2PCR=1 のときオン状態、その他のときはオフ状態です。 237 8. I/O ポート 8.4 ポート 3 8.4.1 概要 ポート 3 は、8 ビットの入出力ポートです。ポート 3 は、ホストデータバス入出力(HDB7 〜HDB0)【H8S/2148 シリーズ、H8S/2147N のみ】およびデータバス入出力機能を持っており、 動作モードによって端子機能が切り替わります。 ポート 3 は、プログラムで制御可能な入力プルアップ MOS が内蔵されています。 ポート 3 の各端子の構成を図 8.9 に示します。 ポ ー ト 3 ポート3端子 モード1、2、3(EXPE=1)の端子機能 P37/D15/HDB7 D15 (入出力) P36/D14/HDB6 D14 (入出力) P35/D13/HDB5 D13 (入出力) P34/D12/HDB4 D12 (入出力) P33/D11/HDB3 D11 (入出力) P32/D10/HDB2 D10 (入出力) P31/D9/HDB1 D9 (入出力) P30/D8/HDB0 D8 (入出力) モード2、3(EXPE=0)の端子機能 P37 (入出力)/HDB7 (入出力) P36 (入出力)/HDB6 (入出力) P35 (入出力)/HDB5 (入出力) P34 (入出力)/HDB4 (入出力) P33 (入出力)/HDB3 (入出力) P32 (入出力)/HDB2 (入出力) P31 (入出力)/HDB1 (入出力) P30 (入出力)/HDB0 (入出力) 図 8.9 238 ポート 3 の端子機能 I/O ポート 8. 8.4.2 レジスタ構成 表 8.8 にポート 3 のレジスタ構成を示します。 表 8.8 ポート 3 レジスタ構成 名 称 略称 ポート 3 データ R/W 初期値 アドレス* 1 W H'00 H'FFB4 P3DDR ディレクションレジスタ ポート 3 データレジスタ P3DR R/W H'00 H'FFB6 ポート 3 プルアップ MOS P3PCR R/W H'00 H'FFAE コントロールレジスタ 【注】 * アドレスの下位 16 ビットを示しています。 (1)ポート 3 データディレクションレジスタ(P3DDR) ビット : 7 6 5 4 3 2 1 0 P37DDR P36DDR P35DDR P34DDR P33DDR P32DDR P31DDR P30DDR 初期値 : 0 0 0 0 0 0 0 0 R/W W W W W W W W W : P3DDR は、8 ビットのライト専用レジスタで、ポート 3 の各端子の入出力をビットごと に指定します。リードは無効です。リードすると不定値が読み出されます。 P 3DDR は、リセットまたはハードウェアスタンバイモードでは、H'00 に初期化されま す。ソフトウェアスタンバイモードでは、P3DDR は直前の状態を保持します。 (a)モード 1、2、3(EXPE=1) P3DDR による入出力の方向は無視され、自動的にデータ入出力となります。 また、リセット、ハードウェアスタンバイモードまたはソフトウェアスタンバイモード 時には、データ入出力はハイインピーダンス状態になります。 (b)モード 2、3(EXPE=0) P3DDR を 1 にセットすると対応するポート 3 の各端子は出力ポートとなり、0 にクリア すると入力ポートになります。 239 8. I/O ポート (2)ポート 3 データレジスタ(P3DR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 P37DR P36DR P35DR P34DR P33DR P32DR P31DR P30DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P3DR は、8 ビットのリード/ライト可能なレジスタで、ポート 3 の各端子(P37〜P30) の出力データを格納します。P3DDR が 1 のときポート 3 のリードを行うと、P3DR の値を 直接リードします。そのため端子の状態の影響を受けません。P3DDR が 0 のときポート 3 のリードを行うと、端子の状態が読み出されます。 P3DR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (3)ポート 3 プルアップ MOS コントロールレジスタ(P3PCR) ビット : 7 6 5 4 3 2 1 0 P37PCR P36PCR P35PCR P34PCR P33PCR P32PCR P31PCR P30PCR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P3PCR は、8 ビットのリード/ライト可能なレジスタで、ポート 3 に内蔵された入力プ ルアップ MOS をビットごとに制御します。 モード 2、3(EXPE=0)では、P3DDR を 0 にクリアした(入力ポート)状態で、P3PCR を 1 にセットすると、入力プルアップ MOS はオンします。 P3PCR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 入力プルアップ MOS は、スレーブモード(ホストインタフェースイネーブル時)には 使用できません。 240 8. I/O ポート 8.4.3 モード別端子機能 (1)モード 1、2、3(EXPE=1) モード 1、2、3(EXPE=1)のとき、ポート 3 は自動的にデータ入出力になります。 ポート 3 の端子機能を図 8.10 に示します。 D1 5(入出力) D1 4(入出力) D1 3(入出力) ポ ー ト 3 D1 2(入出力) D1 1(入出力) D1 0(入出力) D9 (入出力) D8 (入出力) 図 8.10 ポート 3 の端子機能(モード 1、2、3(EXPE=1)) (2)モード 2、3(EXPE=0) モード 2、3(EXP E=0)のとき、ポート 3 はホストインタフェースデータバス入出力 (HDB 7〜HDB 0)または入出力ポートとして機能します。S YSC R 2 の HI 12E ビットが 1 に セットされ、スレーブモードに遷移するとポート 3 はホストインタフェースデータバスと なります。スレーブモードでは、P 3DR と P 3DDR は H'00 にクリアしてください。HI 12E ビットが 0 にクリアされているとポート 3 は入出力ポートとなり、各端子はビット単位で 入出力を指定可能です。P 3DDR の各ビットを 1 にセットすると対応する端子は出力ポー トになり、0 にクリアすると入力ポートになります。 ポート 3 の端子機能を図 8.11 に示します。 P37 (入出力)/HDB7(入出力) P36 (入出力)/HDB6(入出力) P35 (入出力)/HDB5(入出力) ポ ー ト 3 P34 (入出力)/HDB4(入出力) P33 (入出力)/HDB3(入出力) P32 (入出力)/HDB2(入出力) P31 (入出力)/HDB1(入出力) P30 (入出力)/HDB0(入出力) 図 8.11 ポート 3 の端子機能(モード 2、3(EXPE=0)) 241 8. I/O ポート 8.4.4 入力プルアップ MOS ポート 3 は、プログラムで制御可能な入力プルアップ MOS を内蔵しています。この入 力プルアップ MOS はモード 2、3(EXP E= 0)のときに使用でき、ビット単位でオン/オ フを指定できます。 モード 2、3(EXPE=0)のとき、P3DDR を 0 にクリアした状態で、P3PCR を 1 にセット すると、入力プルアップ MOS はオンとなります。 入力プルアップ MOS は、リセットまたはハードウェアスタンバイではオフします。ソ フトウェアスタンバイモードでは直前の状態を保持します。 入力プルアップ MOS の状態を表 8.9 に示します。 表 8.9 入力プルアップ MOS の状態(ポート 3) モード 1、2、3 (EXPE=1) リセット ハードウェア ソフトウェア その他の スタンバイモード スタンバイモード 動作時 OFF 2、3 (EXPE=0) OFF ON/OFF 【記号説明】 OFF :入力プルアップ MOS は、常にオフ状態です。 ON/OFF:P3DDR=0 かつ P3PCR=1 のときオン状態、その他のときはオフ状態です。 242 I/O ポート 8. 8.5 ポート 4 8.5.1 概要 ポート 4は、8 ビットの入出力ポートです。ポート4は、14 ビット PWM の出力端子 (PWX1、 PWX0)、タイマ 0、1(TMR0、TMR1)の入出力端子(TMCI0、TMRI0、TMO0、TMCI1、TMRI1、 TMO1)、タイマコネクションの入出力端子(CSYNCI、HSYNCI、HSYNCO)【H8S/2148 シ リーズのみ】、S CI 2 の入出力端子(TxD2、R xD2、S CK2)、 Ir DA インタフェースの入出 力端子(IrTxD、IrRxD)、HIF の出力端子(HIRQ12、HIRQ1、HIRQ11)【H8S/2148 シリーズ、 H8S/2147N のみ】、IIC1 の入出力端子(SDA1)【H8S/2148 シリーズ、H8S/2147N のみオプショ ン】と兼用になっています。ポート 4 の端子機能は、いずれの動作モードでも共通です。 ポ ート 4 の各端子の構成を図 8.12 に示します。 ポート4端子 P47(入出力)/PWX1(出力) P46(入出力)/PWX0(出力) /HIRQ12(出力) /CSYNCI (入力) P45(入出力)/TMRI1(入力) ポ ー ト 4 /HIRQ1 (出力) /HSYNCO(出力) P44(入出力)/TMO1(出力) /HIRQ11(出力) /HCYNCI (入力) P43(入出力)/TMCI1(入力) /SCK2 (入出力) P42(入出力)/TMRI0(入力) /SDA1 (入出力) /RxD2 (入力) /IrRxD P41(入出力)/TMO0(出力) (入力) /TxD2 (出力) /IrTxD P40(入出力)/TMCI0(入力) (出力) 図 8.12 ポート 4 の端子機能 8.5.2 レジスタ構成 表 8.10 にポート 4 のレジスタ構成を示します。 表 8.10 ポート 4 レジスタ構成 名 称 略称 ポート 4 データディレクションレジスタ P4DDR ポート 4 データレジスタ P4DR 【注】 * R/W 初期値 アドレス* W H'00 H'FFB5 R/W H'00 H'FFB7 アドレスの下位 16 ビットを示しています。 243 8. I/O ポート (1)ポート 4 データディレクションレジスタ(P4DDR) ビット : 7 6 5 4 3 2 1 0 P47DDR P46DDR P45DDR P44DDR P43DDR P42DDR P41DDR P40DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W P4DDR は、8 ビットのライト専用レジスタで、ポート 4 の各端子の入出力をビットごと に指定します。リードは無効です。リードすると不定値が読み出されます。 P4DDR を 1 にセットすると対応するポート 4 の各端子は出力となり、0 にクリアすると 入力になります。 P4DDR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。ソフトウェアスタンバイ モードでは 14 ビット P WM と S CI 2 は初期化されるため、 TMR 0、TMR 1、HI F、 II C1、 P4DDR、P4DR の指定によって端子状態が決定されます。 (2)ポート 4 データレジスタ(P4DR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 P47DR P46DR P45DR P44DR P43DR P42DR P41DR P40DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P4DR は、8 ビットのリード/ライト可能なレジスタで、ポート 4 の各端子(P47〜P40) の出力データを格納します。P4DDR が 1 のときポート 4 のリードを行うと、P4DR の値を 直接リードします。そのため端子の状態の影響を受けません。P4DDR が 0 のときポート 4 のリードを行うと、端子の状態が読み出されます。 P4DR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 8.5.3 端子機能 ポート 4 の各端子は、ポート 4 は、14 ビット P WM の出力端子(P WX1、P WX0)、タ イマ 0、1 (TMR0、TMR1)の入出力端子(TMCI0、TMRI0、TMO0、TMCI1、TMRI1、TMO1)、 タイマ コネクシ ョンの入 出力端子 (C SYN CI 、HS YNC I 、HS YNC O)、 S CI 2 の入出 力端子 (TxD2、R xD2、S CK2)、 Ir DA インタフェースの入出力端子(Ir TxD、Ir RxD )、HI F の 出力端子(HIRQ12、HIRQ1、HIRQ11)、 IIC1 の入出力端子(SDA1)と兼用になっていま す。ポート 4 の端子機能を表 8.11 に示します。 244 I/O ポート 8. 表 8.11 ポート 4 の端子機能 端子 選択方法と端子機能 P47 14 ビット PWM の DACR の OEB ビットと P47DDR ビットの組み合わせにより、 /PWX1 次のように切り替わります。 OEB 0 1 P47DDR 0 1 − 端子機能 P47入力端子 P47出力端子 PWX1出力端子 P46 14 ビット PWM の DACR の OEA ビットと P46DDR ビットの組み合わせにより、次 /PWX0 のように切り替わります。 OEA 0 1 P46DDR 0 1 − 端子機能 P46入力端子 P46出力端子 PWX0出力端子 P45 /TMRI1 動作モードと P45DDR ビットの組み合わせにより、次のように切り替わります。 /HIRQ12 /CSYNCI P45DDR 0 動作モード ー スレーブモード以外 スレーブモード P45入力端子 P45出力端子 HIRQ12出力端子 端子機能 1 TMRI1入力端子、CSYNCI入力端子 TMR1 の TCR1 の CCLR1、CCLR0 ビットをそれぞれ 1 にセットした場合は、TMRI1 入力端子として使用します。また、CSYNCI 入力端子として使用可能です。 P44 /TMO1 動作モード、 TMR1 の TCSRの OS3〜OS0 ビット、 タイマコネクションの TCONRO /HIRQ1 の HOE ビット、および P44DDR ビットの組み合わせにより、次のように切り替 /HSYNCO わります。 0 HOE 1 すべてが0 OS3〜OS0 いずれかが1 − P44DDR 0 1 − − 動作モード − スレーブモード以外 スレーブモード − − HIRQ1 TMO1 HSYNCO 出力端子 出力端子 出力端子 端子機能 P44入力端子 P44出力端子 245 8. I/O ポート 端子 選択方法と端子機能 P43/TMCI1 動作モードと P43DDR ビットの組み合わせにより、次のように切り替わります。 /HIRQ11 /HSYNCI P43DDR 0 動作モード ー スレーブモード以外 スレーブモード P43入力端子 P43出力端子 HIRQ11出力端子 端子機能 1 TMCI1入力端子、HSYNCI入力端子 TMR1 の TCR1 の CKS2〜CKS0 ビットで外部クロックを選択した場合に、TMCI1 入力端子として使用します。また、HSYNCI 入力端子として使用可能です。 P42/TMRI0 IIC1 の ICCR の ICE ビット、SCI2 の SCR の CKE1、CKE0 ビット、 SMR の C/A /SCK2 ビット、および P42DDR ビットの組み合わせにより、次のように切り替わります。 /SDA1 0 ICE 1 0 CKE1 1 0 1 − 0 1 − − 0 0 C/A CKE0 0 P42DDR 0 1 − − − − 端子機能 P42 P42 SCK2 SCK2 SCK2 SDA1 入力端子 出力端子 出力端子 出力端子 入力端子 入出力端子 TMRI0入力端子 SDA1 入出力端子として使用する場合は、 SCI2 の SCR の CKE1、CKE0 ビット、 SMR の C/A ビットの各ビットを必ず 0 にクリアしてください。 なお、SDA1 の出 力形式は、NMOS のみの出力となり、直接バス駆動が可能です。 TMR0 の TCR0 の CCLR1、CCLR0 ビットをそれぞれ 1 にセットした場合は、TMRI0 入力端子として使用します。 P41/TMO0 TMR0 の TCSR の OS3〜OS0 ビット、SCI2 の SCR の RE ビットおよび P41DDR /RxD2 ビットの組み合わせにより、次のように切り替わります。 /IrRxD すべてが0 OS3〜OS0 0 RE いずれかが1 1 0 P41DDR 0 1 − − 端子機能 P41入力端子 P41出力端子 RxD2/IrRxD TMO0出力端子 入力端子 TMO0 出力端子として使用する場合は、 SCI2 の SCR の RE ビットを必ず 0 にクリ アしてください。 246 8. I/O ポート 端子 選択方法と端子機能 P40/TMCI0 SC I2 の SC R の TE ビットと P40D DR ビットの組み合わせにより、次のように切 /TxD2 り替わります。 /IrTxD TE 0 1 P40DDR 0 1 − 端子機能 P40入力端子 P40出力端子 TxD2/IrTxD出力端子 TMCI0入力端子 TMR0 の TCR0 の CKS2〜CKS0 ビットで外部クロックを選択した場合に、TMCI0 入力端子として使用します。 247 8. I/O ポート 8.6 ポート 5 8.6.1 概要 ポート 5 は、3 ビットの入出力ポートです。ポート 5 は、S CI 0 の入出力端子(TxD0、 R xD0、S CK0)、II C0 の入出力端子(S CL0)【H8 S/ 21 48 シリーズ、H8 S/ 21 47 N のみオプショ ン】と兼用になっています。H8S /2148 シリーズ、H8S /2147N では、P 52、S CK0 の出力形 式は、NMOS プッシュプル出力となっています。また、SCL0 の出力形式は、NMOS オー プンドレイン出力となっています。ポート 5 の端子機能はいずれの動作モードでも共通で す。ポート 5 の各端子の構成を図 8.13 に示します。 ポート5端子 P52(入出力)/SCK0(入出力) /SCL0(入出力) ポ ー ト 5 P51(入出力)/RxD0(入力) P50(入出力)/TxD0(出力) 図 8.13 ポート 5 の端子機能 8.6.2 レジスタ構成 表 8.12 にポート 5 のレジスタ構成を示します。 表 8.12 ポート 5 レジスタ構成 名 称 ポート 5 データディレクションレジスタ ポート 5 データレジスタ 【注】 248 * 略称 R/W 初期値 アドレス* P5DDR W H'F8 H'FFB8 P5DR R/W H'F8 H'FFBA アドレスの下位 16 ビットを示しています。 8. I/O ポート (1)ポート 5 データディレクションレジスタ(P5DDR) 7 6 5 4 3 − − − − − 初期値 : 1 1 1 1 1 0 0 0 R/W − − − − − W W W ビット : : 2 1 0 P52DDR P51DDR P50DDR P5DDR は、8 ビットのライト専用レジスタで、ポート 5 の各端子の入出力をビットごと に指定します。 リードは無効です。リードす ると不定値が読み出されます 。ビット 7〜3 はリザーブビットです。 P5DDR を 1 にセットすると対応するポート 5 の各端子は出力となり、0 にクリアすると 入力になります。 P5DDR は、リセットまたはハードウェアスタンバイモードでは H'F8 に初期化されます。 ソフトウェアスタンバ イモードでは、直前の状態を保持します 。S CI 0 は初期化されるた め、IIC0 の ICCR、P5DDR、P5DR の指定によって端子状態が決定されます。 (2)ポート 5 データレジスタ(P5DR) 7 6 5 4 3 2 1 0 − − − − − P52DR P51DR P50DR 初期値 : 1 1 1 1 1 0 0 0 R/W − − − − − R/W R/W R/W ビット : : P5DR は、8 ビットのリード/ライト可能なレジスタで、ポート 5 の各端子(P52〜P50) の出力データを格納します。P5DDR が 1 のときポート 5 のリードを行うと、P5DR の値を 直接リードします。そのため端子の状態の影響を受けません。P5DDR が 0 のときポート 5 のリードを行うと、端子の状態が読み出されます。 ビット 7〜3 はリザーブビットです。リードすると常に 1 が読み出されます。ライトは 無効です。 P5DR は、リセットまたはハードウェアスタンバイモードでは H'F8 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 249 8. I/O ポート 8.6.3 端子機能 ポート 5 の各端子は、SCI0 の入出力端子(TxD0、RxD0、SCK0)、 IIC0 の入出力端子 (SCL0)と兼用になっています。ポート 5 の端子機能を表 8.13 に示します。 表 8.13 ポート 5 の端子機能 端子 選択方法と端子機能 P52/SCK0 SCI0 の SMR の C/A ビット、SCR の CKE0、CKE1 ビット、IIC0 の ICCR の ICE /SCL0 ビット、および P52DDR ビットの組み合わせにより、次のように切り替わります。 0 ICE 1 0 CKE1 1 0 1 − 0 1 − − 0 0 C/A CKE0 0 P52DDR 0 1 − − − − 端子機能 P52 P52 SCK0 SCK0 SCK0 SCL0 入力端子 出力端子 出力端子 出力端子 入力端子 入出力端子 SCL0 入出力端子として使用する場合は、SCI0 の SCR の CKE1、 CKE0ビット、SMR の C/A ビットの各ビットを必ず 0 にクリアしてください。なお、SCL0 の出力形式 は、NMOS オープンドレイン出力となり、直接バス駆動が可能です。 また、H8S/2148 シリーズ、H8S/2147N では、P52 出力端子、SCK0 出力端子に設 定した場合の出力形式は、NMOS プッシュプル出力となります。 P51/RxD0 SCI0 の SCR の RE ビットと P51DDR ビットの組み合わせにより、次のように切 り替わります。 RE P50/TxD0 0 1 P51DDR 0 1 − 端子機能 P51入力端子 P51出力端子 RxD0入力端子 SCI0 の SCR の TE ビットと P50DDR ビットの組み合わせにより、次のように切り 替わります。 TE 250 0 1 P50DDR 0 1 − 端子機能 P50入力端子 P50出力端子 TxD0出力端子 8. I/O ポート 8.7 ポート 6 8.7.1 概要 ポート 6 は、8 ビットの入出力ポートです。ポート 6 は、16 ビットフリーランニングタ イマ(F RT)の入出力端子(F TOA、F TOB 、F TIA〜F TID、F TCI )、タイマ X (TMR X) の入出力端子(TMOX、TMIX)【H8S/2148 シリーズのみ】、タイマ Y(TMRY)の入力端子 (TMIY)、タイマコネクションの入出力端子(HFBACKI、VSYINCI、VSYNCO、VFBACKI、 CLAMPO)【H8S/2148 シリーズのみ】、キーセンス割込み入力端子(KIN7〜KIN0)、拡張 A/D 入力端子(CIN7〜CIN0)、割込み入力端子(IRQ7、IRQ6)と兼用になっています。 また、H8S/2148 シリーズ、H8S/2147N では、ポート 6 の入力レベルを 4 段階に切り替える ことができます。ポート 6 の端子機能はいずれの動作モードでも共通です。 ポート 6 の 各端子の構成を図 8.14 に示します。 ポート6端子 ポ | ト 6 /KIN7(入力) P67(入出力)/TMOX(出力) /CIN7(入力)/IRQ7 (入力) /KIN6(入力) P66(入出力)/FTOB(出力) /CIN6(入力)/IRQ6 (入力) /KIN5(入力) P65(入出力)/FTID (入力) /CIN5(入力) /KIN4(入力) P64(入出力)/FTIC (入力) /CIN4(入力)/CLAMPO(出力) /KIN3(入力) P63(入出力)/FTIB (入力) /CIN3(入力)/VFBACKI(入力) /KIN2(入力) P62(入出力)/FTIA (入力) /CIN2(入力)/VSYNCI (入力) /TMIY(入力) /KIN1(入力) P61(入出力)/FTOA(出力) /CIN1(入力)/VSYNCO(出力) /KIN0(入力) P60(入出力)/FTCI (入力) /CIN0(入力)/HFBACKI(入力) /TMIX(入力) 図 8.14 ポート 6 の端子機能 251 8. I/O ポート 8.7.2 レジスタ構成 表 8.14 にポート 6 のレジスタ構成を示します。 表 8.14 ポート 6 レジスタ構成 名 称 略称 R/W 初期値 アドレス* 1 W H'00 H'FFB9 ポート 6 データディレクションレジスタ P6DDR ポート 6 データレジスタ P6DR R/W H'00 H'FFBB ポート 6 プルアップ MOS KMPCR R/W H'00 H'FFF2* 2 SYSCR2 R/W H'00 H'FF83 コントロールレジスタ システムコントロールレジスタ 2 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 KMPCR は TMRX/TMRY の TICRR/TCORAY と同じアドレスです。KMPCR を選択する ときには、SYSC R の HI E ビットを 1 に設定し、かつ MST PCR L の MST P2 ビットを 0 に設定してください。 (1)ポート 6 データディレクションレジスタ(P6DDR) ビット : 7 6 5 4 3 2 1 0 P67DDR P66DDR P65DDR P64DDR P63DDR P62DDR P61DDR P60DDR 初期値 : 0 0 0 0 0 0 0 0 R/W W W W W W W W W : P6DDR は、8 ビットのライト専用レジスタで、ポート 6 の各端子の入出力をビットごと に指定します。リードは無効です。リードすると不定値が読み出されます。 P6DDR を 1 にセットすると対応するポート 6 の各端子は出力となり、0 にクリアすると 入力になります。 P6DDR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 252 8. I/O ポート (2)ポート 6 データレジスタ(P6DR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 P67DR P66DR P65DR P64DR P63DR P62DR P61DR P60DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P6DR は、8 ビットのリード/ライト可能なレジスタで、ポート 6 の各端子(P67〜P60) の出力データを格納します。P6DDR が 1 のときポート 6 のリードを行うと、P6DR の値を 直接リードします。そのため端子の状態の影響を受けません。P6DDR が 0 のときポート 6 のリードを行うと、端子の状態が読み出されます。 P6DR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (3)ポート 6 プルアップ MOS コントロールレジスタ(KMPCR) ビット : 7 6 5 4 3 2 1 0 KM7PCR KM6PCR KM5PCR KM4PCR KM3PCR KM2PCR KM1PCR KM0PCR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W KMP CR は、8 ビットのリード/ライト可能なレジスタで、ポート 6 に内蔵された入力 プルアップ MOS をビットごとに制御します。 P6DDR を 0 にクリアした(入力ポート)状態で、KMPCR を 1 にセットすると、入力プ ルアップ MOS はオンします。 KMPCR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (4)システムコントロールレジスタ 2(SYSCR2) 【H8S/2148 シリーズ、H8S/2147N のみ】 ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 KWUL1 KWUL0 P6PUE − SDE CS4E CS3E HI12E 0 0 0 0 0 0 0 0 R/W R/W R/W − R/W R/W R/W R/W 253 8. I/O ポート SYSCR2 は、8 ビットのリード/ライト可能なレジスタで、ポート 6 の入力レベル選択、 ホストインタフェース機能の動作を制御します。 ここではビット 7、6、5 についてのみ説明します。ビット 4〜ビット 0 については、 「18.2.2 システムコントロールレジスタ 2(SYSCR2)」を参照してください。 SYSCR2 は、リセット、ハードウェアスタンバイモード時に H'00 に初期化されます。 ビット 7、6:キーウェイクアップレベル 1、0(KWUL1、KWUL0) ポート 6 の入力レベルをソフトウェアにより設定切り替えすることができます。この設 定によりポート 6 に兼用の端子機能の入力レベルも切り替わります。 ビット 7 ビット 6 KWUL1 KWUL0 0 0 ポート 6 入力レベルは標準入力レベルを選択 1 ポート 6 入力レベルは入力レベル 1 を選択 0 ポート 6 入力レベルは入力レベル 2 を選択 1 ポート 6 入力レベルは入力レベル 3 を選択 1 説 明 (初期値) ビット 5:ポート 6 入力プルアップエクストラ(P6PUE) KMPCR の設定により接続されるポート 6 の入力プルアップ MOS の電流仕様を制御、選 択します。 ビット 5 説 明 P6PUE 0 ポート 6 入力プルアップ MOS は標準電流の仕様を選択 1 ポート 6 入力プルアップ MOS は電流制限の仕様を選択 (初期値) 8.7.3 端子機能 ポート 6 の各端子は、16 ビットフリーランニングタイマ(FRT)の入出力端子(FTOA、 F TOB 、F TIA〜F TID、F TCI )、タイマ X (TMR X)の入出力端子(TMOX、TMIX )、タ イマ Y(TMR Y)の入力 端子(TMIY )、タイマコネクションの 入出力端子(HF BA CK I、 VSYINCI、VSYNCO、VFBACKI、CLAMPO)、キーセンス割込み入力端子(KIN7〜KIN0)、 拡張 A/D 入力端子(CIN7〜CIN0)、割込み入力端子(IRQ7、IRQ6)と兼用になっていま す。また、H8S/2148 シリーズ、H8S/2147N では、ポート 6 の入力レベルを 4 段階に切り替 えることができます。ポート 6 の端子機能を表 8.15 に示します。 254 8. I/O ポート 表 8.15 ポート 6 の端子機能 端子 選択方法と端子機能 P67/TMOX TMRX の TCSR の OS3〜OS0 ビットと P67DDR ビットの組み合わせにより、次 /IRQ7 のように切り替わります。 /KIN7 /CIN7 すべてが0 OS3〜OS0 いずれかが1 P67DDR 0 1 − 端子機能 P67入力端子 P67出力端子 TMOX出力端子 IRQ7入力端子、KIN7入力端子、CIN7入力端子 IER の IRQ7E ビットを 1 にセットした場合、IRQ7 入力端子として使用します。 また、常時 KIN7、CIN7 入力端子として使用可能です。 P66/FTOB FRT の TOCR の OEB ビットと P66DDR ビットの組み合わせにより、次のように /IRQ6 切り替わります。 /KIN6 /CIN6 OEB 0 1 P66DDR 0 1 − 端子機能 P66入力端子 P66出力端子 FTOB出力端子 IRQ6入力端子、KIN6入力端子、CIN6入力端子 IER の IRQ6E ビットを 1 にセットした場合、IRQ6 入力端子として使用します。 また、常時 KIN6、CIN6 入力端子として使用可能です。 P65/FTID /CIN5 0 1 P65入力端子 P65出力端子 P65DDR /KIN5 端子機能 FTID入力端子、KIN5入力端子、CIN5入力端子 また、常時 FTID、KIN5、CIN5 入力端子として使用可能です。 P64/FTIC タイマコネクションの TCONRO の CLOE ビットと P64DDR ビットの組み合わせ /KIN4 により、次のように切り替わります。 /CIN4 /CLAMPO CLOE 0 1 P64DDR 0 1 − 端子機能 P64入力端子 P64出力端子 CLAMPO出力端子 FTIC入力端子、KIN4入力端子、CIN4入力端子 また、常時 FTIC、KIN4、CIN4 入力端子として使用可能です。 255 8. I/O ポート 端子 P63/FTIB 選択方法と端子機能 /CIN3 0 1 P63入力端子 P63出力端子 P63DDR /KIN3 端子機能 FTIB入力端子、VFBACKI入力端子、KIN3入力端子、CIN3入力端子 /VFBACKI また、常時 FTIB、KIN3、CIN3、VFBACKI 入力端子として使用可能です。 P62/FTIA /KIN2 0 1 P62入力端子 P62出力端子 P62DDR /TMIY 端子機能 FTIA入力端子、VSYNCI入力端子、TMIY入力端子、 /CIN2 KIN2入力端子、CIN2入力端子 /VSYNCI また、常時 FTIA、TMIY、KIN2、CIN2、VSYNCI 入力端子として使用可能です。 P61/FTOA FR T の TOC R の OEA ビット、タイマコネクションの TC ONR O の VOE ビット、 /KIN1 および P61DDR ビットの組み合わせにより、次のように切り替わります。 /CIN1 /VSYNCO 0 VOE 1 0 OEA 1 0 P61DDR 0 1 − − 端子機能 P61入力端子 P61出力端子 FTOA出力端子 VSYNCO 出力端子 KIN1入力端子、CIN1入力端子 VSYNCO 端子として使用する場合は、FRT の TOCR の OEA ビットを必ず 0 にクリ アしてください。 また、常時 KIN1、CIN1 入力端子として使用可能です。 P60/FTCI P60DDR /TMIX /KIN0 0 1 P60入力端子 P60出力端子 端子機能 FTCI入力端子、HFBACKI入力端子、TMIX入力端子、 /CIN0 KIN0入力端子、CIN0入力端子 /HFBACKI FRT の TCR の CKS1、CKS0 ビットで外部クロックを選択した場合に、FTCI 入力 端子として使用します。 また、常時 TMIX、KIN0、CIN0、HFBACKI 入力端子として使用可能です。 256 I/O ポート 8. 8.7.4 入力プルアップ MOS ポート 6 は、プログラムで制御可能な入力プルアップ MOS を内蔵しています。この入 力プルアップ MOS はいずれの動作モードでも使用でき、ビット単位でオン/オフを指定 できます。 P 6DDR を 0 にクリアした状態で、KMP CR を 1 にセットすると、入力プルアップ MOS はオンとなります。また、P6PUE ビットによりプルアップ MOS 電流仕様を変更すること ができます。なお、内蔵周辺機能の出力端子に設定した場合は、入力プルアップ MOS は 常にオフとなります。 入力プルアップ MOS は、リセットまたはハードウェアスタンバイモードではオフしま す。ソフトウェアスタンバイモードでは直前の状態を保持します。 入力プルアップ MOS の状態を表 8.16 に示します。 表 8.16 入力プルアップ MOS の状態(ポート 6) モード 1、2、3 リセット ハードウェア ソフトウェア その他の スタンバイモード スタンバイモード 動作時 OFF ON/OFF 【記号説明】 OFF :入力プルアップ MOS は、常にオフ状態です。 ON/OFF:P6DDR=0 かつ KMPCR=1 のときオン状態、その他のときはオフ状態です。 257 8. I/O ポート 8.8 ポート 7 8.8.1 概要 ポート 7 は、8 ビットの入力専用ポートです。ポート 7 は、A/D 変換器のアナログ入力 端子(AN0〜AN7)、D/A 変換器のアナログ出力端子(DA0、DA1)との兼用になってい ます。ポート 7 の端子機能はいずれの動作モードでも共通です。ポート 7 の各端子の構成 を図 8.15 に示します。 ポート7端子 /DA1(出力) /AN7(入力) P77(入力) /DA0(出力) /AN6(入力) P76(入力) /AN5(入力) P75(入力) ポ | ト 7 /AN4(入力) P74(入力) /AN3(入力) P73(入力) /AN2(入力) P72(入力) /AN1(入力) P71(入力) /AN0(入力) P70(入力) 図 8.15 ポート 7 の端子機能 8.8.2 レジスタ構成 表 8.17 にポート 7 のレジスタ構成を示します。ポート 7 は入力専用ポートであり、デー タディレクションレジスタ、データレジスタはありません。 表 8.17 ポート 7 レジスタ構成 名 称 ポート 7 入力データレジスタ 【注】 略称 R/W 初期値 アドレス* 1 P7PIN R 不定 H'FFBE* 2 *1 アドレスの下位 16 ビットを示しています。 *2 P7PIN は PBDDR と同じアドレスです。 258 8. I/O ポート (1)ポート 7 入力データレジスタ(P7PIN) ビット : 7 P77PIN 初期値 : R/W 【注】* : 6 5 4 3 2 P76PIN P75PIN P74PIN P73PIN P72PIN 1 0 P71PIN P70PIN ―* ―* ―* ―* ―* ―* ―* ―* R R R R R R R R P77〜P70端子の状態により決定されます。 P7PIN のリードを行うと、常に端子の状態が読み出されます。 P 7PIN は P BDD R と同じアドレスであり、ライトを行うと P BDD R にデータが書き込ま れ、ポート B の設定が変わります。 8.8.3 端子機能 ポート 7 の各端子は、A/D 変換器のアナログ入力端子(AN0〜AN7)、D/A 変換器のア ナログ出力端子(DA0、DA1)との兼用になっています。 259 8. I/O ポート 8.9 ポート 8 8.9.1 概要 ポート 8 は、8 ビットの入出力ポートです。ポート 8 は、 S CI 1 の入出力端子(TxD1、 R xD1、S CK1)、II C1 の入出力端子(S CL1)【H8 S/ 21 48 シリーズ、H8 S/ 21 47 N のみオプショ ン】、HI F の入出力端子(C S2、GA20、HA0、HI FS D)【H8 S/ 21 48 シリーズ、H8 S/ 21 47 N の み】、割込み入力端子(IRQ5〜IRQ3)と兼用になっています。ポート 8 の端子機能はいず れの動作モードでも共通です。 ポート 8 の各端子の構成を図 8.16 に示します。 ポート8端子 /SCK1 (入出力)/SCL1(入出力) P86(入出力)/IRQ5 (入力) /RxD1 (入力) P85(入出力)/IRQ4 (入力) /TxD1 (出力) P84(入出力)/IRQ3 (入力) ポ | ト 8 P83(入出力) P82(入出力)/HIFSD(入力) /GA20 (出力) P81(入出力)/CS2 (入力) P80(入出力)/HA0 (入力) 図 8.16 ポート 8 の端子機能 8.9.2 レジスタ構成 表 8.18 にポート 8 のレジスタ構成を示します。 表 8.18 ポート 8 レジスタ構成 名 称 略称 ポート 8 データディレクションレジスタ P8DDR ポート 8 データレジスタ P8DR 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 P8DDR は PBPIN と同じアドレスです。 260 R/W 初期値 アドレス* 1 W H'80 H'FFBD* 2 R/W H'80 H'FFBF 8. I/O ポート (1)ポート 8 データディレクションレジスタ(P8DDR) ビット : 7 初期値 : 1 6 5 4 3 2 1 0 P86DDR P85DDR P84DDR P83DDR P82DDR P81DDR P80DDR R/W : 0 0 0 0 0 0 0 W W W W W W W P8DDR は、7 ビットのライト専用レジスタで、ポート 8 の各端子の入出力をビットごと に指定します。P 8DDR は P BP IN と同じアドレスであり、リードするとポート B の状態が 読み出されます。 P8DDR を 1 にセットすると対応するポート 8 の各端子は出力となり、0 にクリアすると 入力になります。 P8DDR は、リセットまたはハードウェアスタンバイモードでは H'80 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (2)ポート 8 データレジスタ(P8DR) ビット : 初期値 : R/W : 7 1 6 5 4 3 2 1 0 P86DR P85DR P84DR P83DR P82DR P81DR P80DR 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W P8DR は、7 ビットのリード/ライト可能なレジスタで、ポート 8 の各端子(P86〜P80) の出力データを格納します。P8DDR が 1 のときポート 8 のリードを行うと、P8DR の値を 直接リードします。そのため端子の状態の影響を受けません。P8DDR が 0 のときポート 8 のリードを行うと、端子の状態が読み出されます。 P8DR は、リセットまたはハードウェアスタンバイモードでは H'80 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 8.9.3 端子機能 ポート 8 の各端子は、 S CI 1 の入出力端子(TxD1、R xD1、S CK1)、 II C1 の入出力端 子(S CL1)、 HI F の入出力端子(C S2、 GA20、HA0、HI FS D)、割込み 入力端子(IR Q5 〜IRQ3)と兼用になっています。ポート 8 の端子機能を表 8.19 に示します。 261 8. I/O ポート 表 8.19 ポート 8 の端子機能 端子 選択方法と端子機能 P86 SCI1 の SMR の C/A ビット、SCR の CKE0、CKE1 ビット、IIC1 の ICCR の ICE /IRQ5 ビット、および P86DDR ビットの組み合わせにより、次のように切り替わります。 /SCK1 /SCL1 0 ICE 1 0 CKE1 1 0 1 − 0 1 − − 0 0 C/A CKE0 0 P86DDR 0 1 − − − − 端子機能 P86 P86 SCK1 SCK1 SCK1 SCL1 入力端子 出力端子 出力端子 出力端子 入力端子 入出力端子 IRQ5入力端子 IER の IRQ5E ビットを 1 にセットした場合、IRQ5 入力端子として使用します。 SCL1 入出力端子として使用する場合は、SCI1 の SCR の CKE1、 CKE0ビット、SMR の C/A ビットの各ビットを必ず 0 にクリアしてください。なお、SCL1 の出力形式 は、NMOS のみの出力となり、直接バス駆動が可能です。 P85 SCI1 の SCR の RE ビットと P85DDR ビットの組み合わせにより、次のように切 /IRQ4 り替わります。 /RxD1 RE 0 1 P85DDR 0 1 − 端子機能 P85入力端子 P85出力端子 RxD1入力端子 IRQ4入力端子 IER の IRQ4E ビットを 1 にセットした場合、IRQ4 入力端子として使用します。 P84 SCI1 の SCR の TE ビットと P84DDR ビットの組み合わせにより、次のように切 /IRQ3 り替わります。 /TxD1 TE 0 1 P84DDR 0 1 − 端子機能 P84入力端子 P84出力端子 TxD1出力端子 IRQ3入力端子 IER の IRQ3E ビットを 1 にセットした場合、IRQ3 入力端子として使用します。 262 I/O ポート 8. 端子 P83 選択方法と端子機能 P83DDR ビットにより、次のように切り替わります。 P83DDR 0 1 端子機能 P83入力端子 P83出力端子 P82 動作モード、SYSCR2 の SDE ビット、および P82DDR ビットの組み合わせによ /HIFSD り、次のように切り替わります。 動作モード スレーブモード スレーブモード以外 − SDE 0 1 − P82DDR 0 1 0 1 端子機能 P82 P82 P82 P82 HIFSD 出力端子 入力端子 出力端子 入力端子 入力端子 P81 動作モード、SYSC R の CS 2E ビット、HI F の HI CR の FGA 20E ビット、および /GA20 P81DDR ビットの組み合わせにより、次のように切り替わります。 /CS2 動作モード スレーブモード以外 FGA20E − CS2E − スレーブモード 1 0 − 1 0 P81DDR 0 1 0 1 − 0 1 端子機能 P81 P81 P81 P81 CS2 P81 GA20 入力端子 出力端子 入力端子 出力端子 入力端子 入力端子 出力端子 GA20 出力端子あるいは CS2 入力端子として使用する場合は、 モード 2、 (EXPE=0) 3 のときのみとしてください。 P80 /HA0 動作モードと P80DDR ビットの組み合わせにより、次のように切り替わります。 動作モード スレーブモード以外 スレーブモード P80DDR 0 1 − 端子機能 P80入力端子 P80出力端子 HA0入力端子 263 8. I/O ポート 8.10 ポート 9 8.10.1 概要 ポート 9 は、8 ビットの入出力ポートです。ポート 9 は、割り込み入力端子(IRQ0〜IRQ2)、 A/D 変換器の入力端子(ADTR G)、HIF の入力端子(ECS2、CS1、IOW、IOR )【H8S/2148 シリーズ、H8S/2147N のみ】、IIC0 の入出力端子(SDA0)【H8S/2148 シリーズ、H8S/2147N の みオプション】、サブクロック入力端子(EXCL)、バス制御信号入出力端子(AS /IOS、R D、 HWR 、LWR 、WAIT )およ びシス テムク ロック (φ)出 力端子 と兼用 になっ ていま す。 H8S/2148 シリーズ、H8S/2147N では、P97 の出力形式は、NMOS プッシュプル出力となり ます。また、SDA0 の出力形式は、NMOS オープンドレイン出力となり、直接バス駆動が 可能です。 ポート 9 の各端子の構成を図 8.17 に示します。 ポ | ト 9 ポート9端子 モード1、2、3(EXPE=1)の端子機能 P97/WAIT/SDA0 WAIT(入力) /P97 (入出力)/SDA0(入出力) P96/ φ /EXCL φ P95/AS/IOS/CS1 AS (出力) /IOS (出力) P94/HWR/IOW HWR(出力) P93/RD/IOR RD (出力) P92/IRQ0 P92 (入出力)/IRQ0(入力) P91/IRQ1 P91 (入出力)/IRQ1(入力) P90/LWR/IRQ2/ADTRG/ECS2 P90 (入出力)/LWR(出力) /IRQ2 (入力)/ADTRG(入力) (出力) /P96 (入力) /EXCL(入力) モード2、3(EXPE=0)の端子機能 P97(入出力)/SDA0(入出力) P96(入力) /φ (出力)/EXCL (入力) P95(入出力)/CS1 (入力) P94(入出力)/IOW (入力) P93(入出力)/IOR (入力) P92(入出力)/IRQ0(入力) P91(入出力)/IRQ1(入力) P90(入出力)/IRQ2(入力)/ADTRG(入力)/ECS2 (入力) 図 8.17 ポート 9 の端子機能 264 8. 8.10.2 I/O ポート レジスタ構成 表 8.20 にポート 9 のレジスタ構成を示します。 表 8.20 ポート 9 レジスタ構成 名 称 略称 ポート 9 データディレクションレジスタ R/W 初期値 アドレス* 1 W H'40/ H'FFC0 P9DDR H'00* ポート 9 データレジスタ 【注】 P9DR R/W 2 H'00 H'FFC1 *1 アドレスの下位 16 ビットを示しています。 *2 モードによって、初期値が異なります。 (1)ポート 9 データディレクションレジスタ(P9DDR) ビット : 7 6 5 4 3 2 1 0 P97DDR P96DDR P95DDR P94DDR P93DDR P92DDR P91DDR P90DDR モード1 初期値 : 0 1 0 0 0 0 0 0 : W W W W W W W W 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W モード2、3 R/W P9DDR は、8 ビットのライト専用レジスタで、ポート 9 の各端子の入出力をビットごと に指定します。リードは無効です。リードすると不定値が読み出されます。 P 9DDR は、リセットまたはハードウェアスタンバイモードでは、モード 1 の場合 H'40 に、モード 2、3の場合 H'00に初期化されます。ソフトウェアスタンバイモードでは、P9DDR は直前の状態を保持します。 (a)モード 1、2、3(EXPE=1) P 97 端子は、ウェイトモードの設定によ りバス制御入力(WAIT)、II C0 の入出力端子 (SDA0)または入出力ポートになります。入出力ポートの場合、P97DDR を 1 にセットす ると出力ポート、0 にクリアすると入力ポートになります。 P 96 端子は、P 96DDR を 1 にセットするとφ出力端子、0 にクリアするとサブクロック 入力(EXCL)または入力ポートになります。 P95〜P93 端子は、P95DDR〜P93DDR による入出力の方向は無視され、自動的にバス制 御出力(AS/IOS、HWR、RD)となります。 P 92〜P 91 端子は、P 92DDR 〜P 91DDR を 1 にセットすると出力ポート、0 にクリアする と入力ポートになります。 265 8. I/O ポート P 90 端子は、WS C R の AB W ビットを 0 にクリアすると、P 90DDR による入出力の方向 は無視され、バス制御出力(LWR)となります。 ABW ビットを 1 にセットした状態では、 P90DDR を 1 にセットすると出力ポート、0 にクリアすると入力ポートになります。 (b)モード 2、3(EXPE=0) P9DDR を 1 にセットすると P96 端子はφ出力端子、P97、P95〜P90 端子は出力ポートと なります。P9DDR を 0 にクリアすると各端子は入力ポートになります。 (2)ポート 9 データレジスタ(P9DR) ビット : 初期値 : R/W 【注】* : 7 6 5 4 3 2 1 0 P97DR P96DR P95DR P94DR P93DR P92DR P91DR P90DR 0 ―* 0 0 0 0 0 0 R/W R R/W R/W R/W R/W R/W R/W P96端子の状態により決定されます。 P9DR は、8 ビットのリード/ライト可能なレジスタで、ポート 9 の各端子(P97〜P90) の出力データを格納します。P96 以外では、P9DDR が 1 のときポート 9 のリードを行うと、 P9DR の値を直接リードします。そのため端子の状態の影響を受けません。P9DDR が 0 の ときポート 9 のリードを行うと、端子の状態が読み出されます。 P9DR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 8.10.3 端子機能 ポート 9 は、割り込み入力端子(IRQ0〜IRQ2)、A/D 変換器の入力端子(ADTRG)、 HIF の入力端子(ECS2、CS1、IOW、IOR )、IIC0 の入出力端子(SDA0)、サブクロック 入力端子 (EXC L)、バス制御 信号入出力端子 (AS /IO S、R D、HW R、LW R 、WA IT)お よびシステムクロック(φ)出力端子と兼用になっています。モード 1、2、3(EXPE=1) の拡張モードとモード 2、3(EXPE=0)シングルチップモードでは端子機能が異なります。 ポート 9 の端子機能を表 8.21 に示します。 266 I/O ポート 8. 表 8.21 ポート 9 の端子機能 端子 選択方法と端子機能 P97/WAIT 動作モード、WSCR の WMS1 ビット、 IIC0 の ICCR の ICE ビット、 および P97DDR /SDA0 ビットの組み合わせにより、次のように切り替わります。 モード1、2、3(EXPE=1) 動作モード 0 WMS1 P97DDR 0 1 端子機能 P97 P97 入力端子 ― 1 − − − 0 1 − SDA0 WAIT P97 P97 SDA0 0 ICE モード2、3(EXPE=0) 1 0 出力端子 入出力端子 入力端子 入力端子 1 出力端子 入出力端子 H8S/2148 シリーズ、H8S/2147N では、P97 出力端子に設定した場合の出力形式は、 NMOS プッシュプル出力となります。また、SDA0 の出力形式は、NMOS オープン ドレイン出力となり、直接バス駆動が可能です。 P96/φ LPWRCR の EXCLE ビットと P96DDR ビットの組み合わせにより、次のように切 /EXCL り替わります。 P96DDR 0 1 0 P96入力端子 EXCL入力端子 φ出力端子 EXCLE 端子機能 1 0 EXCL 入力端子として使用する場合は、P96DDR を 0 にクリアしてください。 P95/AS 動作モード、SYSCR の IOSE ビット、SYSCR2 の HI12E ビット、および P95DDR /IOS ビットの組み合わせにより、次のように切り替わります。 /CS1 動作モード モード1、2、3(EXPE=1) HI12E − P95DDR − IOSE 端子機能 0 AS出力端子 モード2、3(EXPE=0) 1 0 1 0 1 − − − − IOS出力端子 P95入力端子 P95出力端子 CS1入力端子 P94/HWR 動作モード 、SYSCR2 の HI12E ビット、および P94DDR ビットの組み合わせに /IOW より、次のように切り替わります。 動作モード モード1、2、3 モード2、3(EXPE=0) (EXPE=1) HI12E − P94DDR − 0 1 − 端子機能 HWR出力端子 P94入力端子 P94出力端子 IOW入力端子 0 1 267 8. I/O ポート 端子 選択方法と端子機能 P93/RD 動作モード 、SYSC R2 の HI 12E ビット、および P93D DR ビットの組み合わせに /IOR より、次のように切り替わります。 動作モード モード1、2、3 モード2、3(EXPE=0) (EXPE=1) P92/IRQ0 HI12E − P93DDR − 0 1 − 端子機能 RD出力端子 P93入力端子 P93出力端子 IOR入力端子 P92DDR 0 1 0 1 P92入力端子 P92出力端子 端子機能 IRQ0入力端子 IER の IRQ0E ビットを 1 にセットした場合、IRQ0 入力端子として使用します。 P91/IRQ1 P91DDR 0 1 P91入力端子 P91出力端子 端子機能 IRQ1入力端子 IER の IRQ1E ビットを 1 にセットした場合、IRQ1 入力端子として使用します。 P90/LWR 動作モード、WSCR の ABW ビット、SYSCR2 の HI12E ビット、CS2E ビット、 /IRQ2 HICR の FGA20E ビット、および P90DDR ビットの組み合わせにより、次のよう /ADTRG に切り替わります。 /ECS2 動作モード ABW モード1、2、3(EXPE=1) 0 モード2、3(EXPE=0) − 1 HI12E − FGA20E − 1 CS2E − 1 いずれかが0 1 P90DDR − 0 1 0 1 − 端子機能 LWR P90 P90 P90 P90 ECS2 出力端子 入力端子 出力端子 入力端子 出力端子 入力端子 IRQ2入力端子、ADTRG入力端子 モード 1、2、3(EXPE=1)でかつ WSCR の ABW ビットを 1 にセットしたとき、 およびモード 2、3(EXPE=0)のときに、IER の IRQ2E ビットを 1 にセットした場 合、IRQ2 入力端子として使用します。 A/D 変換器の ADCR の TRGS1、TRGS0 ビットをいずれも 1 にセットした場合、 ADTRG 入力端子として使用します。 268 I/O ポート 8. 8.11 ポート A 8.11.1 概要 ポート A は、8 ビットの入出力ポートです。ポート A は、キーボードバッファコントロ ーラ 入出力 端子(P S2AC 、P S2AD 、 P S2B C、P S2B D 、P S2C C、 P S2C D)【H8 S/ 21 48 シリー ズ、 H8S/2147N のみ】、キーセンス割込み入力端子(KIN15〜KIN8)、拡張 A/D 入力端子(CIN15 〜CIN8)、アドレス出力端子(A23〜A16)と兼用になっています。ポート A の端子機能 はいずれの動作モードでも共通です。 ポート A の各端子の構成を図 8.18 に示します。 ポ ー ト A ポートA端子 モード1、モード2(EXPE=0)、モード3の端子機能 PA7/A23/KIN15/CIN15/PS2CD PA7(入出力) /KIN15(入力)/CIN15(入力) /PS2CD(入出力) PA6/A22/KIN14/CIN14/PS2CC PA6(入出力) /KIN14(入力)/CIN14(入力) /PS2CC(入出力) PA5/A21/KIN13/CIN13/PS2BD PA5(入出力) /KIN13(入力)/CIN13(入力) /PS2BD(入出力) PA4/A20/KIN12/CIN12/PS2BC PA4(入出力) /KIN12(入力)/CIN12(入力) /PS2BC(入出力) PA3/A19/KIN11/CIN11/PS2AD PA3(入出力) /KIN11(入力)/CIN11(入力) /PS2AD(入出力) PA2/A18/KIN10/CIN10/PS2AC PA2(入出力) /KIN10(入力)/CIN10(入力) /PS2AC(入出力) PA1/A17/KIN9/CIN9 PA1(入出力) /KIN9 (入力)/CIN9 (入力) PA0/A16/KIN8/CIN8 PA0(入出力) /KIN8 (入力)/CIN8 (入力) モード2(EXPE=1)の端子機能 PA7(入出力)/A23(出力)/KIN15(入力)/CIN15(入力) /PS2CD(入出力) PA6(入出力)/A22(出力)/KIN14(入力)/CIN14(入力) /PS2CC(入出力) PA5(入出力)/A21(出力)/KIN13(入力)/CIN13(入力) /PS2BD(入出力) PA4(入出力)/A20(出力)/KIN12(入力)/CIN12(入力) /PS2BC(入出力) PA3(入出力)/A19(出力)/KIN11(入力)/CIN11(入力) /PS2AD(入出力) PA2(入出力)/A18(出力)/KIN10(入力)/CIN10(入力) /PS2AC(入出力) PA1(入出力)/A17(出力)/KIN9 (入力)/CIN9 (入力) PA0(入出力)/A16(出力)/KIN8 (入力)/CIN8 (入力) 図 8.18 ポート A の端子機能 8.11.2 レジスタ構成 表 8.22 にポート A のレジスタ構成を示します。 表 8.22 ポート A レジスタ構成 名 称 略称 R/W 初期値 アドレス* 1 ポート A データディレクションレジスタ PADDR W H'00 H'FFAB* 2 ポート A 出力データレジスタ PAODR R/W H'00 H'FFAA ポート A 入力データレジスタ PAPIN R 不定 H'FFAB* 2 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 PADDR と PAPIN は同じアドレスです。 269 8. I/O ポート (1)ポート A データディレクションレジスタ(PADDR) ビット : 7 6 5 4 3 2 0 1 PA7DDR PA6DDR PA5DDR PA4DDR PA3DDR PA2DDR PA1DDR PA0DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W P ADDR は、8 ビットのライト専用レジスタで、ポート A の各端子の入出力をビットご とに指定します。 P ADDR を 1 にセットすると対応するポート A の各端子は出力となり、0 にクリアする と入力になります。 PADDR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (2)ポート A 出力データレジスタ(PAODR) ビット : 7 6 5 4 3 2 0 1 PA7ODR PA6ODR PA5ODR PA4ODR PA3ODR PA2ODR PA1ODR PA0ODR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P AODR は、8 ビットのリード/ライト可能なレジスタで、ポート A の各端子(P A7〜 PA0)の出力データを格納します。PADDR の内容と関わりなく、常に PAODR のリード/ ライトが可能です。 PAODR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (3)ポート A 入力データレジスタ(PAPIN) ビット : 7 6 5 4 3 2 1 0 PA7PIN PA6PIN PA5PIN PA4PIN PA3PIN PA2PIN PA1PIN PA0PIN 初期値 : R/W 【注】* : ―* ―* ―* ―* ―* ―* ―* ―* R R R R R R R R PA7〜PA0端子の状態により決定されます。 PAPIN のリードを行うと、常に端子の状態が読み出されます。 270 8. 8.11.3 I/O ポート 端子機能 ポート A の各端子は、キーボードバッファコントローラ入出力端子(PS2AC、PS2AD、 PS2BC、PS2BD、PS2CC、PS2CD)、キーセンス割込み入力端子(KIN15〜KIN8)、拡張 A/D 入力端子(CIN15〜CIN8)、アドレス出力端子(A23〜A16)と兼用になっています。 ポート A の端子機能を表 8.23 に示します。 表 8.23 ポート A の端子機能 端子 選択方法と端子機能 PA7 動作モードとキーボードバッファコントローラの KBCR2H の KBIOE ビット、 /A23 SYSCR の IOSE ビット、および PA7DDR ビットの組み合わせにより、次のように /PS2CD 切り替わります。 /KIN15 /CIN15 動作モード KBIOE PA7DDR IOSE 端子機能 モード2(EXPE=1) モード1、2(EXPE=0)、3 1 0 0 1 0 − 0 1 − 1 − − − − 0 1 − PA7 PA7 PS2CD PA7 A23 PA7 PS2CD 入力端子 出力端子 出力端子 入力端子 出力端子 出力端子 出力端子 KIN15入力端子、CIN15入力端子、PS2CD入力端子 STCR の IICS ビットを 1 にセットするとバスバッファとなります。 また、常時 PS2CD、KIN15、CIN15 入力端子として使用可能です。 PA6 動作モードとキーボードバッファコントローラの KBCR2H の KBIOE ビット、 /A22 SYSCR の IOSE ビット、および PA6DDR ビットの組み合わせにより、次のように /PS2CC 切り替わります。 /KIN14 動作モード /CIN14 KBIOE モード2(EXPE=1) モード1、2(EXPE=0)、3 0 1 0 1 − PA6DDR 0 1 − 0 IOSE − − − − 0 1 − PA6 PA6 PS2CC PA6 A22 PA6 PS2CC 入力端子 出力端子 出力端子 入力端子 出力端子 出力端子 出力端子 端子機能 1 KIN14入力端子、CIN14入力端子、PS2CC入力端子 STCR の IICS ビットを 1 にセットするとバスバッファとなります。 また、常時 PS2CC、KIN14、CIN14 入力端子として使用可能です。 271 8. I/O ポート 端子 選択方法と端子機能 PA5 動作モードとキーボードバッファコントローラの KBCR1H の KBIOE ビット、 /A21 SYSCR の IOSE ビット、および PA5DDR ビットの組み合わせにより、次のように /PS2BD 切り替わります。 /KIN13 動作モード /CIN13 KBIOE モード2(EXPE=1) モード1、2(EXPE=0)、3 0 1 0 1 − PA5DDR 0 1 − 0 IOSE − − − − 0 1 − PA5 PA5 PS2BD PA5 A21 PA5 PS2BD 入力端子 出力端子 出力端子 入力端子 出力端子 出力端子 出力端子 端子機能 1 KIN13入力端子、CIN13入力端子、PS2BD入力端子 STCR の IICS ビットを 1 にセットするとバスバッファとなります。 また、常時 PS2BD、KIN13、CIN13 入力端子として使用可能です。 PA4 動作モードとキーボードバッファコントローラの KBCR1H の KBIOE ビット、 /A20 SYSCR の IOSE ビット、および PA4DDR ビットの組み合わせにより、次のように /PS2BC 切り替わります。 /KIN12 動作モード /CIN12 KBIOE モード2(EXPE=1) モード1、2(EXPE=0)、3 0 1 0 1 − PA4DDR 0 1 − 0 IOSE − − − − 0 1 − PA4 PA4 PS2BC PA4 A20 PA4 PS2BC 入力端子 出力端子 出力端子 入力端子 出力端子 出力端子 出力端子 端子機能 1 KIN12入力端子、CIN12入力端子、PS2BC入力端子 STCR の IICS ビットを 1 にセットするとバスバッファとなります。 また、常時 PS2BC、KIN12、CIN12 入力端子として使用可能です。 PA3 動作モードとキーボードバッファコントローラの KBCR0H の KBIOE ビット、 /A19 SYSCR の IOSE ビット、および PA3DDR ビットの組み合わせにより、次のように /PS2AD 切り替わります。 /KIN11 /CIN11 動作モード モード2(EXPE=1) モード1、2(EXPE=0)、3 KBIOE 0 1 0 1 − PA3DDR 0 1 − 0 IOSE − − − − 0 1 − PA3 PA3 PS2AD PA3 A19 PA3 PS2AD 入力端子 出力端子 出力端子 入力端子 出力端子 出力端子 出力端子 端子機能 1 KIN11入力端子、CIN11入力端子、PS2AD入力端子 また、常時 PS2AD、KIN11、CIN11 入力端子として使用可能です。 272 8. 端子 I/O ポート 選択方法と端子機能 PA2 動作モードとキーボードバッファコントローラの KBCR0H の KBIOE ビット、 /A18 SYSCR の IOSE ビット、および PA2DDR ビットの組み合わせにより、次のように /PS2AC 切り替わります。 /KIN10 動作モード /CIN10 KBIOE モード2(EXPE=1) モード1、2(EXPE=0)、3 0 1 0 1 − PA2DDR 0 1 − 0 IOSE − − − − 0 1 − PA2 PA2 PS2AC PA2 A18 PA2 PS2AC 入力端子 出力端子 出力端子 入力端子 出力端子 出力端子 出力端子 端子機能 1 KIN10入力端子、CIN10入力端子、PS2AC入力端子 また、常時 PS2AC、KIN10、CIN10 入力端子として使用可能です。 PA1 動作モードと SYSCR の IOSE ビットおよび PA1DDR ビットの組み合わせにより、 /A17 次のように切り替わります。 /KIN9 /CIN9 動作モード モード1、2(EXPE=0)、3 モード2(EXPE=1) 1 PA1DDR 0 1 0 IOSE − − − 0 1 PA1入力端子 PA1出力端子 PA1入力端子 A17出力端子 PA1出力端子 端子機能 KIN9入力端子、CIN9入力端子 また、常時 KIN9、CIN9 入力端子として使用可能です。 PA0 動作モードと SYSCR の IOSE ビットおよび PA0DDR ビットの組み合わせにより、 /A16 次のように切り替わります。 /KIN8 /CIN8 動作モード モード1、2(EXPE=0)、3 モード2(EXPE=1) 1 PA0DDR 0 1 0 IOSE − − − 0 1 PA0入力端子 PA0出力端子 PA0入力端子 A16出力端子 PA0出力端子 端子機能 KIN8入力端子、CIN8入力端子 また、常時 KIN8、CIN8 入力端子として使用可能です。 273 8. I/O ポート 8.11.4 入力プルアップ MOS ポート A は、プログラムで制御可能な入力プルアップ MOS を内蔵しています。この入 力プルアップ MOS はいずれの動作モードでも使用でき、ビット単位でオン/オフを指定 できます。 P ADDR を 0 にクリアした状態で、P AODR を 1 にセットすると、入力プルアップ MOS はオンとなります。なお、P A7〜P A4 は II CS =1 にセットした状態では、入力プルアップ MOS は常にオフとなります。また、PA7〜PA2 が、キーボードバッファコントローラ用端 子として選択されている場合は、入力プルアップ MOS は常にオフとなります。 入力プルアップ MOS は、リセットまたはハードウェアスタンバイモードではオフしま す。ソフトウェアスタンバイモードでは直前の状態を保持します。 入力プルアップ MOS の状態を表 8.24 に示します。 表 8.24 入力プルアップ MOS の状態(ポート A) モード 1、2、3 リセット ハードウェア ソフトウェア その他の スタンバイモード スタンバイモード 動作時 OFF ON/OFF 【記号説明】 OFF :入力プルアップ MOS は、常にオフ状態です。 ON/OFF:PADDR=0 かつ PAODR=1 のときオン状態、その他のときはオフ状態です。 274 8. I/O ポート 8.12 ポート B 8.12.1 概要 ポート B は、8 ビットの入出力ポートです。ポート B は、HIF の入出力端子(CS3、CS4、 HI RQ3、HI RQ4)【H8S /2148 シリーズ、H8S /2147N のみ】とデータバス入出力機能(D7 〜D0)を持っており、動作モードによって端子機能が切り替わります。 ポート B の各端子の構成を図 8.19 に示します。 ポ | ト B ポートB端子 モード1、2、3(EXPE=1)かつ ABW=0のとき PB7/D7 D7(入出力) PB6/D6 D6(入出力) PB5/D5 D5(入出力) PB4/D4 D4(入出力) PB3/D3/CS4 D3(入出力) PB2/D2/CS3 D2(入出力) PB1/D1/HIRQ4 D1(入出力) PB0/D0/HIRQ3 D0(入出力) モード1、2、3(EXPE=1)かつ ABW=1のとき、および モード1、2、3(EXPE=0)のとき PB7(入出力) PB6(入出力) PB5(入出力) PB4(入出力) PB3(入出力)/CS4(入力) PB2(入出力)/CS3(入力) PB1(入出力)/HIRQ4(出力) PB0(入出力)/HIRQ3(出力) 図 8.19 ポート B の端子機能 275 8. I/O ポート 8.12.2 レジスタ構成 表 8.25 にポート B のレジスタ構成を示します。 表 8.25 ポート B レジスタ構成 名 称 略称 R/W 初期値 アドレス* 1 ポート B データディレクションレジスタ PBDDR W H'00 H'FFBE* 2 ポート B 出力データレジスタ PBODR R/W H'00 H'FFBC ポート B 入力データレジスタ PBPIN R 不定 H'FFBD* 3 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 PBDDR は P7PIN と同じアドレスです。 *3 PBPIN は P8DDR と同じアドレスです。 (1)ポート B データディレクションレジスタ(PBDDR) ビット : 7 6 5 4 3 2 1 0 PB7DDR PB6DDR PB5DDR PB4DDR PB3DDR PB2DDR PB1DDR PB0DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W P BDD R は、8 ビットのライト専用レジスタで、ポート B の各端子の入出力をビットご とに指定します。 PBDDR は P7PIN と同じアドレスであり、リードするとポート 7 の端子 状態が読み出されます。 P BDD R を 1 にセットすると対応するポート B の各端子は出力となり、0 にクリアする と入力になります。 PBDDR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (a)モード 1、2、3(EXPE=1) WS C R の AB W ビットを 0 にクリアすると、P BDD R による入出力の方向は無視され、 自動的にデータ入出力(D7〜D0)となります。 ABW ビットを 1 にセットした状態では、 P BDD R を 1 にセットすると対応するポート B の各端子は出力ポートとなり、0 にクリア すると入力ポートになります。 また、リセット、ハードウェアスタンバイモードまたはソフトウェアスタンバイモード 時には、データ入出力はハイインピーダンス状態になります。 276 8. I/O ポート (b)モード 2、3(EXPE=0) P BDD R を 1 にセットすると対応するポート B の各端子は出力ポートとなり、0 にクリ アすると入力ポートになります。 (2)ポート B 出力データレジスタ(PBODR) ビット : 7 6 5 4 3 2 0 1 PB7ODR PB6ODR PB5ODR PB4ODR PB3ODR PB2ODR PB1ODR PB0ODR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P BOD R は、8 ビットのリード/ライト可能なレジスタで、ポート B の各端子(P B7〜 PB0)の出力データを格納します。PBDDR の内容と関わりなく、常に PBODR のリード/ ライトが可能です。 PBODR は、リセットまたはハードウェアスタンバイモードでは H'00 に初期化されます。 ソフトウェアスタンバイモードでは、直前の状態を保持します。 (3)ポート B 入力データレジスタ(PBPIN) ビット : 7 6 5 4 3 2 1 0 PB7PIN PB6PIN PB5PIN PB4PIN PB3PIN PB2PIN PB1PIN PB0PIN 初期値 : R/W 【注】* : ―* ―* ―* ―* ―* ―* ―* ―* R R R R R R R R PB7〜PB0端子の状態により決定されます。 PBPIN のリードを行うと、常に端子の状態が読み出されます。 PBPIN は P8DDR と同じアドレスであり、ライトを行うと P8DDR にデータが書き込まれ ポート 8 の設定が変わります。 277 8. I/O ポート 8.12.3 端子機能 ポート B の各端子は、HI F の入力端子(C S3、C S4、HI RQ3、HI RQ4)【H8S /2148 シリ ーズ、H8S /2147N のみ】とデータバス入出力端 子(D7〜D0)との兼用になっています。 ポート B の端子機能を表 8.26 に示します。 表 8.26 ポート B の端子機能 端子 PB7/D7 選択方法と端子機能 動作モードと PB7DDR ビット、WSCR の ABW ビットの組み合わせにより、次の ように切り替わります。 動作モード PB6/D6 モード1、モード2、3(EXPE=1) モード2、3(EXPE=0) − ABW 0 PB7DDR − 0 1 0 1 端子機能 D7入出力端子 PB7入力端子 PB7出力端子 PB7入力端子 PB7出力端子 1 動作モードと PB6DDR ビット、WSCR の ABW ビットの組み合わせにより、次の ように切り替わります。 PB5/D5 モード2、3(EXPE=0) 動作モード モード1、モード2、3(EXPE=1) ABW 0 PB6DDR − 0 1 0 1 端子機能 D6入出力端子 PB6入力端子 PB6出力端子 PB6入力端子 PB6出力端子 − 1 動作モードと PB5DDR ビット、WSCR の ABW ビットの組み合わせにより、次の ように切り替わります。 PB4/D4 モード2、3(EXPE=0) 動作モード モード1、モード2、3(EXPE=1) ABW 0 PB5DDR − 0 1 0 1 端子機能 D5入出力端子 PB5入力端子 PB5出力端子 PB5入力端子 PB5出力端子 − 1 動作モードと PB4DDR ビット、WSCR の ABW ビットの組み合わせにより、次の ように切り替わります。 278 動作モード モード1、モード2、3(EXPE=1) ABW 0 モード2、3(EXPE=0) − 1 PB4DDR − 0 1 0 1 端子機能 D4入出力端子 PB4入力端子 PB4出力端子 PB4入力端子 PB4出力端子 8. 端子 PB3/D3/CS4 I/O ポート 選択方法と端子機能 動作モードと SYSCR2 の HI12E ビット、CS4E ビット、WSCR の ABW ビット、 および PB3DDR ビットの組み合わせにより、次のように切り替わります。 動作モード PB2/D2/CS3 モード1、モード2、3(EXPE=1) HI12E − CS4E − モード2、3(EXPE=0) いずれかが0 1 − − 1 1 ABW 0 PB3DDR − 0 1 0 1 − 端子機能 D3 入出力端子 PB3 入力端子 PB3 出力端子 PB3 入力端子 PB3 出力端子 CS4 入力端子 動作モードと SYSCR2 の HI12E ビット、CS3E ビット、WSCR の ABW ビット、 および PB2DDR ビットの組み合わせにより、次のように切り替わります。 動作モード モード1、モード2、3(EXPE=1) HI12E − CS3E − モード2、3(EXPE=0) いずれかが0 1 1 1 − ABW 0 PB2DDR − 0 1 0 1 − 端子機能 D2 入出力端子 PB2 入力端子 PB2 出力端子 PB2 入力端子 PB2 出力端子 CS3 入力端子 − PB1/D1/HIRQ4 動作モードと SYSCR2 の HI12E ビット、CS4E ビット、WSCR の ABW ビット、 および PB1DDR ビットの組み合わせにより、次のように切り替わります。 動作モード モード1、モード2、3(EXPE=1) HI12E − CS4E − ABW PB1DDR 端子機能 モード2、3(EXPE=0) いずれかが0 1 1 1 0 − − − 0 1 0 1 1 D1 入出力端子 PB1 入力端子 PB1 出力端子 PB1 入力端子 PB1 出力端子 HIRQ4 出力端子 PB0/D0/HIRQ3 動作モードと SYSCR2 の HI12E ビット、CS3E ビット、WSCR の ABW ビット、 および PB0DDR ビットの組み合わせにより、次のように切り替わります。 動作モード モード1、モード2、3(EXPE=1) HI12E − CS3E − モード2、3(EXPE=0) いずれかが0 1 − − 1 1 ABW 0 PB0DDR − 0 1 0 1 1 端子機能 D0 入出力端子 PB0 入力端子 PB0 出力端子 PB0 入力端子 PB0 出力端子 HIRQ3 出力端子 279 8. I/O ポート 8.12.4 入力プルアップ MOS ポート B は、プログラムで制御可能な入力プルアップ MOS を内蔵しています。この入 力プルアップ MOS はモード 1、2、3(EXP E= 1)で WS C R の AB W ビットが 1 にセットさ せているとき、およびモード 2、3(EXPE=0)のときに使用でき、ビット単位でオン/オ フを指定できます。 P BDD R を 0 にクリアした状態で、P BOD R を 1 にセットすると、入力プルアップ MOS はオン となります。 なお、内蔵 周辺機能の 出力端子に設 定した場合 は、入力プル アップ MOS は常にオフとなります。 入力プルアップ MOS は、リセットまたはハードウェアスタンバイモードではオフしま す。ソフトウェアスタンバイモードでは直前の状態を保持します。 入力プルアップ MOS の状態を表 8.27 に示します。 表 8.27 入力プルアップ MOS の状態(ポート B) モード 1、2、3(EXPE=1)かつ リセット ハードウェア ソフトウェア その他の スタンバイモード スタンバイモード 動作時 OFF OFF WSCR の ABW=0 のとき 1、2、3(EXPE=1)かつ ON/OFF WSCR の ABW=1 のとき 2、3(EXPE=0)のとき 【記号説明】 OFF :入力プルアップ MOS は、常にオフ状態です。 ON/OFF:PBDDR=0 かつ PBODR=1 のときオン状態、その他のときはオフ状態です。 280 9. 8 ビット PWM タイマ (PWM) H8S/2148 シリーズ、H8S/2147N に内蔵しています。 H8S/2144 シリーズには内蔵していません。 第9章 9.1 9.2 9.3 目次 概要 ....................................................................................................................................... 283 9.1.1 特長 ...................................................................................................... 283 9.1.2 ブロック図 ............................................................................................ 284 9.1.3 端子構成................................................................................................ 285 9.1.4 レジスタ構成 ......................................................................................... 285 各レジスタの説明 ................................................................................................................... 286 9.2.1 PWM レジスタセレクト(PWSL) .......................................................... 286 9.2.2 PWM データレジスタ(PWDR0〜PWDR15)........................................... 289 9.2.3 PWM データポラリティレジスタ(PWDPRA、PWDPRB)....................... 289 9.2.4 PWM アウトプットイネーブルレジスタ(PWOERA、PWOERB) ............ 290 9.2.5 周辺クロックセレクトレジスタ(PCSR)................................................ 291 9.2.6 ポート 1 データディレクションレジスタ(P1DDR) ................................ 292 9.2.7 ポート 2 データディレクションレジスタ(P2DDR) ................................ 292 9.2.8 ポート 1 データレジスタ(P1DR) .......................................................... 292 9.2.9 ポート 2 データレジスタ(P2DR) .......................................................... 293 9.2.10 モジュールストップコントロールレジスタ(MSTPCR) .......................... 293 PWM タイマの動作 ................................................................................................................. 294 9.3.1 PWM データレジスタの内容と出力波形の対応 ........................................ 294 9. 282 8 ビット PWM タイマ(PWM) 9. 8 ビット PWM タイマ(PWM) 9.1 概要 本 LS I は、16 本の出力を持つ P WM(P ulse Width Modula tion) タイマを内蔵していま す。16 本の出力波形は共通のタイムベースから生成され、パルス分割方式により高いキ ャリア周波数の P WM 出力が可能です。16 本の 8 ビット P WM データレジスタ(P WDR ) を持 ち、 P WDR およびポ ートの データレ ジスタ( P 1DR 、P 2DR )に設定 する値に よっ て、0〜100%の任意の出力を得ることができます。 9.1.1 特長 PWM タイマの特長を以下に示します。 ■パルス分割により、最大 1.25MHz のキャリア周波数での動作可能(20MHz 動作時) ■デューティ 0〜100%を 1/256 の分解能で設定可能(100%はポート出力で実現) ■P WM 出力のイネーブル/ディスエーブルの切り替え、直接出力/反転出力の切り替え が可能 283 9. 8 ビット PWM タイマ(PWM) 9.1.2 ブロック図 P WM タイマのブロック図を図 9.1 に示します。 P10/PW0 比較器0 PWDR0 P11/PW1 比較器1 PWDR1 比較器2 PWDR2 比較器3 PWDR3 比較器4 PWDR4 比較器5 PWDR5 比較器6 PWDR6 比較器7 PWDR7 比較器8 PWDR8 比較器9 PWDR9 比較器10 PWDR10 比較器11 PWDR11 P24/PW12 比較器12 PWDR12 P25/PW13 比較器13 PWDR13 P26/PW14 比較器14 PWDR14 P27/PW15 比較器15 PWDR15 ポ ー ト / P W M 出 力 コ ン ト ロ ー ル P12/PW2 P13/PW3 P14/PW4 P15/PW5 P16/PW6 P17/PW7 P20/PW8 P21/PW9 P22/PW10 P23/PW11 PWDPRB PWDPRA PWOERB PWOERA P2DDR P1DDR P2DR P1DR TCNT モジュール データバス バ ス イ ン タ フ ェ ー ス クロック選択 PWSL PCSR φ/16 φ/8 φ/4 φ/2 【記号説明】 :PWMレジスタセレクト PWSL PWDR :PWMデータレジスタ PWDPRA :PWMデータポラリティレジスタA PWDPRB :PWMデータポラリティレジスタB PWOERA :PWMアウトプットイネーブルレジスタA PWOERB :PWMアウトプットイネーブルレジスタB 図 9.1 284 PCSR :周辺クロックセレクトレジスタ P1DDR :ポート1データディレクションレジスタ P2DDR :ポート2データディレクションレジスタ P1DR :ポート1データレジスタ P2DR :ポート2データレジスタ PWM タイマのブロック図 φ 内部クロック 内部 データバス 9. 8 ビット PWM タイマ(PWM) 9.1.3 端子構成 PWM の出力端子を表 9.1 に示します。 表 9.1 端子構成 名 称 記号 PWM 出力端子 0〜15 入出力 PW0〜PW15 出力 機 能 PWM タイマパルス出力 0〜15 9.1.4 レジスタ構成 PWM のレジスタ構成を表 9.2 に示します。 表 9.2 レジスタ構成 名 称 略称 R/W 初期値 アドレス* 1 PWM レジスタセレクト PWSL R/W H'20 H'FFD6 PWM データレジスタ 0〜15 PWDR0〜PWDR15 R/W H'00 H'FFD7 PWM データポラリティレジスタ A PWDPRA R/W H'00 H'FFD5 PWM データポラリティレジスタ B PWDPRB R/W H'00 H'FFD4 PWM アウトプットイネーブルレジスタ A PWOERA R/W H'00 H'FFD3 PWM アウトプットイネーブルレジスタ B PWOERB R/W H'00 H'FFD2 ポート 1 データディレクションレジスタ P1DDR W H'00 H'FFB0 ポート 2 データディレクションレジスタ P2DDR W H'00 H'FFB1 ポート 1 データレジスタ P1DR R/W H'00 H'FFB2 ポート 2 データレジスタ P2DR R/W H'00 H'FFB3 周辺クロックセレクトレジスタ PCSR R/W H'00 H'FF82* 2 モジュールストップコントロールレジスタ MSTPCRH R/W H'3F H'FF86 MSTPCRL R/W H'FF H'FF87 【注】 *1 アドレスの下位 16 ビットを示しています。 * 2 8 ビット PWM タイマのレジスタの一部は、他のレジスタと同じアドレスに割当てられ ています。それぞれのレジスタの選択はシリアルタイマコントロールレジスタ(STCR) の FLSHE ビットで行います。 285 9. 8 ビット PWM タイマ(PWM) 9.2 各レジスタの説明 9.2.1 PWM レジスタセレクト(PWSL) ビット : 7 6 PWCKE PWCKS 初期値 : R/W : 5 4 3 2 1 0 − − RS3 RS2 RS1 RS0 0 0 1 0 0 0 0 0 R/W R/W − − R/W R/W R/W R/W P WS L は 8 ビットのリード/ライト可能なレジスタで、P WM タイマの入力クロックの 選択および PWM データレジスタの選択を行います。 PWSL はリセット、スタンバイモード、ウォッチモード、サブアクティブモード、サブ スリープモード、またはモジュールストップモード時に H'20 に初期化されます。 ビット 7、6:PWM クロックイネーブル、 PWM クロックセレクト(PWCKE、PWCKS) PCSR の PWCKA、PWCKB ビットとともに、PWM タイマの TCNT に入力する内部クロ ックを選択します。 PWSL ビット 7 ビット 6 PWCKE PWCKS PCSR ビット 2 ビット 1 PWCKB PWCKA 明 0 − − − クロック入力禁止 1 0 − − φ(システムクロック)を選択 1 0 0 φ/2 を選択 1 φ/4 を選択 0 φ/8 を選択 1 φ/16 を選択 1 286 説 (初期値) 9. 8 ビット PWM タイマ(PWM) PWM の分解能、PWM 変換周期、キャリア周波数は、選択した内部クロックにより、次 の式で求めることができます。 分解能(最小パルス幅)=1/内部クロック周波数 PWM 変換周期=分解能×256 キャリア周波数=16/PWM 変換周期 したがって、システムクロック(φ)が 20MHz の場合の分解能、PWM 変換周期、キャ リア周波数は表 9.3 のようになります。 表 9.3 φ=20MHz 時の分解能、PWM 変換周期、キャリア周波数 内部クロック周波数 分解能 PWM 変換周期 キャリア周波数 φ 50ns 12.8 μ s 1250kHz φ/2 100ns 25.6 μ s 625kHz φ/4 200ns 51.2 μ s 312.5kHz φ/8 400ns 102.4 μ s 156.3kHz φ/16 800ns 204.8 μ s 78.1kHz ビット 5:リザーブビット リザーブビットです。リードすると常に 1 が読み出されます。ライトは無効です。 ビット 4:リザーブビット リザーブビットです。リードすると常に 0 が読み出されます。ライトは無効です。 287 9. 8 ビット PWM タイマ(PWM) ビット 3〜0:レジスタセレクト(RS3〜RS0) PWM データレジスタを選択します。 ビット 3 ビット 2 ビット 1 ビット 0 RS3 RS2 RS1 RS0 0 0 0 0 PWDR0 選択 1 PWDR1 選択 0 PWDR2 選択 1 PWDR3 選択 0 PWDR4 選択 1 PWDR5 選択 0 PWDR6 選択 1 PWDR7 選択 0 PWDR8 選択 1 PWDR9 選択 0 PWDR10 選択 1 PWDR11 選択 0 PWDR12 選択 1 PWDR13 選択 0 PWDR14 選択 1 PWDR15 選択 1 1 0 1 1 0 0 1 1 0 1 288 レジスタ選択 9. 8 ビット PWM タイマ(PWM) 9.2.2 PWM データレジスタ(PWDR0〜PWDR15) ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : PWDR は、8 ビットのリード/ライト可能なレジスタで、出力する基本パルスのデュー ティ比および付加パルスの個数を指定します。PWDR に設定する値が、変換周期内の 0/ 1 比に対応します。上位 4 ビットは基本パルスのデューティ比を 0/16〜15/16 まで 1/16 の分解能で指定し、下位 4 ビットは、16 基本パルスで構成される変換周期内にいくつの付 加パルスを付加するかを指定します。したがって、変換周期内の 0/1 比は、0/256〜255 /256 まで指定可能です。256/256(100%)を出力する場合は、ポート出力を利用してく ださい。 PWDR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サ ブスリープモード、またはモジュールストップモード時に、H'00 に初期化されます。 9.2.3 PWM データポラリティレジスタ(PWDPRA、PWDPRB) ビット : 7 6 5 4 3 2 1 0 PWDPRA: OS7 OS6 OS5 OS4 OS3 OS2 OS1 OS0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W ビット : : 7 6 5 4 3 2 1 0 PWDPRB: OS15 OS14 OS13 OS12 OS11 OS10 OS9 OS8 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : PWDPR は、8 ビットのリード/ライト可能な 2 本のレジスタで、PWM 出力の極性を制 御します。OS0〜OS15 ビットが PW0〜PW15 出力にそれぞれ対応します。 PWDPR は、リセットまたはハードウェアスタンバイモード時に、H'00 に初期化されま す。 OS 説 明 0 PWM 直接出力(PWDR の値が、出力の High 幅に対応) 1 PWM 反転出力(PWDR の値が、出力の Low 幅に対応) (初期値) 289 9. 8 ビット PWM タイマ(PWM) 9.2.4 PWM アウトプットイネーブルレジスタ(PWOERA、PWOERB) ビット : 7 6 5 4 3 2 1 0 PWOERA: OE7 OE6 OE5 OE4 OE3 OE2 OE1 OE0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ビット : 7 6 5 4 3 2 1 0 PWOERB: OE15 OE14 OE13 OE12 OE11 OE10 OE9 OE8 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W : : PWOER は、8 ビットのリード/ライト可能な 2 本のレジスタで、PWM 出力とポート出 力を切り替えます。OE15〜OE0 ビットが P W15〜P W0 出力にそれぞれ対応します。端子 を出力状態とするためには、さらにポートのデータディレクションレジスタで設定する必 要があります。P 17DDR 〜P 10DDR ビットが P W7〜P W0 出力に、P 27DDR 〜P 20DDR ビッ トが PW15〜PW8 出力にそれぞれ対応します。 PWOER は、リセットまたはハードウェアスタンバイモード時に、H'00 に初期化されま す。 明 OE 0 0 ポート入力 1 ポート入力 0 ポート出力または PWM の 256/256 出力 1 PWM 出力(0〜255/256 出力) 1 290 説 DDR (初期値) 9. 8 ビット PWM タイマ(PWM) 9.2.5 周辺クロックセレクトレジスタ(PCSR) ビット : 7 6 5 4 3 − − − − − 初期値 : 0 0 0 0 0 0 0 0 R/W − − − − − R/W R/W − : 2 1 PWCKB PWCKA 0 − PCSR は 8 ビットのリード/ライト可能なレジスタで、PWM タイマの入力クロックの選 択を行います。 PCSR はリセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 ビット 7〜3:リザーブビット リザーブビットです。リードすると常に 0 が読み出されます。ライトは無効です。 ビット 2、1:PWM クロックセレクト(PWCKB、PWCKA) PWSL の PWCKE、PWCKS ビットとともに、PWM タイマの TCNT に入力する内部クロ ックを選択します。詳細は「9.2.1 PWM レジスタセレクト(PWSL)」を参照してくだ さい。 ビット 0:リザーブビット リザーブビットです。1 にセットしないでください。 291 9. 8 ビット PWM タイマ(PWM) 9.2.6 ポート 1 データディレクションレジスタ(P1DDR) ビット : 7 6 5 4 3 2 1 0 : P17DDR P16DDR P15DDR P14DDR P13DDR P12DDR P11DDR P10DDR 初期値 : 0 0 0 0 0 0 0 0 R/W W W W W W W W W : P 1DDR は 8 ビットのライト専用のレジスタで、ポート 1 の各端子の入出力方向および PWM 出力をビット単位に設定します。 ポート 1 は PW0〜PW7 端子との兼用端子となっています。PWM 出力を行う端子に対応 するビットを 1 にセットしてください。 ポート 1」を参照してください。 P1DDR の詳細は、「8.2 9.2.7 ポート 2 データディレクションレジスタ(P2DDR) ビット : 7 6 5 4 3 2 1 0 : P27DDR P26DDR P25DDR P24DDR P23DDR P22DDR P21DDR P20DDR 初期値 : 0 0 0 0 0 0 0 0 R/W W W W W W W W W : P 2DDR は 8 ビットのライト専用のレジスタで、ポート 2 の各端子の入出力方向および PWM 出力をビット単位に設定します。 ポート 2 は P W8〜P W15 端子との兼用端子となっています。P WM 出力を行う端子に対 応するビットを 1 にセットしてください。 ポート 2」を参照してください。 P2DDR の詳細は、「8.3 9.2.8 ポート 1 データレジスタ(P1DR) ビット : : 初期値 : R/W : 7 6 5 4 3 2 1 0 P17DR P16DR P15DR P14DR P13DR P12DR P11DR P10DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P1DR は 8 ビットのリード/ライト可能なレジスタで、PWM 出力の 1 固定(OS=0 の場 合)または 0 固定(OS=1 の場合)に使用します。 P1DR の詳細は、「8.2 292 ポート 1」を参照してください。 8 ビット PWM タイマ(PWM) 9. 9.2.9 ポート 2 データレジスタ(P2DR) ビット : : 初期値 : R/W : 7 6 5 4 3 2 1 0 P27DR P26DR P25DR P24DR P23DR P22DR P21DR P20DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W P2DR は 8 ビットのリード/ライト可能なレジスタで、PWM 出力の 1 固定(OS=0 の場 合)または 0 固定(OS=1 の場合)に使用します。 P2DR の詳細は、「8.3 9.2.10 ポート 2」を参照してください。 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : R/W 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MST P11 ビットを 1 にセットすると、8 ビット P WM タイマは動作を停止してモジュー ルストップモードへ遷移します。詳細は、「25.5 モジュールストップモード」を参照し てください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRH ビット 3:モジュールストップ(MSTP11) PWM のモジュールストップモードを指定します。 MSTPCRH 説 明 ビット 3 MSTP11 0 PWM のモジュールストップモード解除 1 PWM のモジュールストップモード設定 (初期値) 293 9. 8 ビット PWM タイマ(PWM) 9.3 PWM タイマの動作 9.3.1 PWM データレジスタの内容と出力波形の対応 PWDR の上位 4 ビットは基本パルスのデューティ比を 0/16〜15/16 まで 1/16の分解 能で次のように指定します。 表 9.4 基本パルスのデューティ比 上位4ビット 0000 基 本 パ ル ス 波 形 ( 内 部 ) 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 PWDR の下位 4 ビットは、16 基本パルスに対する付加パルスの付加位置を次のように指 定しま す。付加パル スとしては 、基本パル スの立ち上が りエッジの 前に分解能分 の幅の High 期間(OS =0 の場合)を付加します。P WDR の上位 4 ビットが 0000 の場合は基本パ ルスの立ち上がりエッジは存在しませんが、付加パルスの付加タイミングは同様です。 294 9. 表 9.5 8 ビット PWM タイマ(PWM) 基本パルスに対する付加パルスの位置 下位 4 ビット 基本パルス No. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0000 ○ 0001 0010 ○ ○ 0011 ○ ○ ○ ○ 0100 ○ ○ ○ 0101 ○ ○ ○ ○ ○ 0110 ○ ○ ○ ○ ○ ○ 0111 ○ ○ ○ ○ ○ ○ ○ ○ 1000 ○ ○ ○ ○ ○ ○ ○ 1001 ○ ○ ○ ○ ○ ○ ○ ○ ○ 1010 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 1011 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 1100 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 1101 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 1110 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 1111 ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ ○ 付加パルスなし 分解能分の幅 付加パルスあり 付加パルス 図 9.2 付加パルスタイミング(PWDR 上位 4 ビットが 1000 の例) 295 9. 296 8 ビット PWM タイマ(PWM) 10. 14 ビット PWM タイマ (PWMX) 第 10 章 10.1 10.2 目次 概要 ....................................................................................................................................... 299 10.1.1 特長 ...................................................................................................... 299 10.1.2 ブロック図 ............................................................................................ 299 10.1.3 端子構成................................................................................................ 300 10.1.4 レジスタ構成 ......................................................................................... 300 各レジスタの説明 ................................................................................................................... 301 10.2.1 PWM(D/A)カウンタ(DACNT) ......................................................... 301 10.2.2 D/A データレジスタ A、B(DADRA、B) .............................................. 302 10.2.3 PWM(D/A)コントロールレジスタ(DACR) ....................................... 303 10.2.4 モジュールストップコントロールレジスタ(MSTPCR) .......................... 305 10.3 バスマスタとのインタフェース ............................................................................................... 307 10.4 動作説明................................................................................................................................. 310 10. 298 14 ビット PWM タイマ(PWMX) 10. 14 ビット PWM タイマ(PWMX) 10.1 概要 本 LSI は、2 チャネルの 14 ビット PWM(Pulse Width Modulator)を内蔵しています。LSI 外部にローパスフィルタを接続することにより、14 ビット D/A 変換器として使用できま す。 2 チャネルの PWM は、カウンタ(DACNT)とコントロールレジスタ(DACR)を共有 しています。 10.1.1 特長 14 ビット PWM(D/A)の特長を以下に示します。 ■リップルの少ないパルス分割方式 ■2 種類の分解能、2 種類の基本周期を設定可能 分解能は、システムクロック周期とシステムクロック周期×2 から選択できます。 また、2 種類の基本周期 T×64、T×256(T=分解能)が選択できます。 ■4 種類の動作速度を設定可能 4 種類の動作クロック(基本周期 2 種類×分解能 2 種類)が選択できます。 10.1.2 ブロック図 P WM(D/A)のブロック図を図 10.1 に示します。 内部クロック 内部データバス φ φ/2 クロック選択 クロック バスインタフェース 基本周期コンペアマッチA PWX0 PWX1 コ ン ト ロ | ル ロ ジ ッ ク 比較器A DADRA 微調整パルス付加B 比較器B DADRB 基本周期オーバフロー DACNT 微調整パルス付加A 基本周期コンペアマッチB DACR 【記号説明】 DACR :PWM D/Aコントロールレジスタ(6ビット) DADRA:PWM D/AデータレジスタA(15ビット) DADRB:PWM D/AデータレジスタB(15ビット) DACNT :PWM D/Aカウンタ(14ビット) モジュールデータバス 図 10.1 PWM(D/A)のブロック図 299 10. 14 ビット PWM タイマ(PWMX) 10.1.3 端子構成 PWM(D/A)の入出力端子を表 10.1 に示します。 表 10.1 端子構成 名 10.1.4 称 記号 入出力 機 能 PWM 出力端子 0 PWX0 出力 チャネル A の PWM 出力 PWM 出力端子 1 PWX1 出力 チャネル B の PWM 出力 レジスタ構成 PWM(D/A)のレジスタ構成を表 10.2 に示します。 表 10.2 レジスタ構成 名 称 略称 R/W 初期値 アドレス* 1 PWM(D/A)コントロールレジスタ DACR R/W H'30 H'FFA0* 2 PWM(D/A)データレジスタ AH DADRAH R/W H'FF H'FFA0* 2 PWM(D/A)データレジスタ AL DADRAL R/W H'FF H'FFA1* 2 PWM(D/A)データレジスタ BH DADRBH R/W H'FF H'FFA6* 2 PWM(D/A)データレジスタ BL DADRBL R/W H'FF H'FFA7* 2 PWM(D/A)カウンタ H DACNTH R/W H'00 H'FFA6* 2 PWM(D/A)カウンタ L DACNTL R/W H'03 H'FFA7* 2 モジュールストップコントロールレジスタ MSTPCRH R/W H'3F H'FF86 MSTPCRL R/W H'FF H'FF87 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 14 ビット PWM タイマのレジスタは、他のレジスタと同じアドレスに割当てられていま す。それぞれのレジスタの選択は、シリ アルタイマコントロールレジスタ(ST CR)の IICE ビットで行ないます。また、DADRAH と DACR、DADRB と DACNT のアドレスは 同一です。これらの切り替えは DACNT または DADRB の REGS ビットで行います。 300 10. 14 ビット PWM タイマ(PWMX) 10.2 各レジスタの説明 10.2.1 PWM(D/A)カウンタ(DACNT) DACNTH DACNTL ビット(CPU): 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ビット(カウンタ): 7 6 5 4 3 2 1 0 8 9 10 11 12 13 − − 初期値: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 − REGS 1 1 R/W: R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W − R/W DACNT は、14 ビットのリードライト可能なアップカウンタで、入力するクロックによ りカ ウン トア ップさ れま す。 入力す るク ロッ クは、 DAC R の クロ ックセ レク トビ ット (C KS)で選択します。DAC NT の値は、C PU からリード/ライト可能ですが、16 ビット 構成になっているため、CPU とのデータ転送はテンポラリレジスタ(TEMP)を介して行 います。詳細は「10.3 バスマスタとのインタフェース」を参照してください。 DACNT は、2 チャネルの PWM(D/A)のタイムベースとして使用されます。14 ビット 精度で使用する場合には、全ビットを利用し、12 ビット精度で使用する場合には、上位 2 ビット(カウンタ)を無視し、下位 12 ビット(カウンタ)を利用します。 DAC NT は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、 サブスリープモード、モジュールストップモード時、または PWME ビットにより、H'0003 に初期化されます。 DACNTL のビット 1(CPU)は、未使用で、リードすると 1 が読み出されます。 DACNTL ビット 0:レジスタセレクト(REGS) DADRA と DACR、DADRB と DACNT は、同一のアドレスに配置されています。REGS ビット は、どちら のレジスタ をアクセス 可能にするか を選択しま す。R EGS ビッ トは、 DADRB と DACNT のいずれが選択されていてもアクセス可能です。 ビット 0 説 明 REGS 0 DADRA と DADRB がアクセス可能 1 DACR と DACNT がアクセス可能 (初期値) 301 10. 14 ビット PWM タイマ(PWMX) 10.2.2 D/A データレジスタ A、B(DADRA、B) DADRH DADRL ビット(CPU): 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ビット(データ): 13 12 11 10 9 8 7 6 5 4 3 2 1 0 − − DADRA 初期値: DA13 DA12 DA11 DA10 DA9 DA8 DA7 DA6 DA5 DA4 DA3 DA2 DA1 DA0 CFS − 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W: R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W − DADRB DA13 DA12 DA11 DA10 DA9 DA8 DA7 DA6 DA5 DA4 DA3 DA2 DA1 DA0 CFS REGS 初期値: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W: R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W DAD R は、16 ビットのリード/ライト可能な 2 本のレジスタ(DAD RA 、B )で構成さ れています。DADRA は PWM(D/A)チャネル A に、DADRB は PWM(D/A)チャネル B にそれぞれ対応します。DAD R の値は、C PU からリード/ライト可能ですが、16 ビット 構成になっているため、CPU とのデータ転送はテンポラリレジスタ(TEMP)を介して行 います。詳細は「10.3 バスマスタとのインタフェース」を参照してください。 DADRA の最下位ビット(CPU)は未使用で、リードすると 1 が読み出されます。 DADR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サ ブスリープモードまたはモジュールストップモード時に、H'FFFF に初期化されます。 ビット 15〜3:D/A データ 13〜0(DA13〜0) DADR の上位 14 ビットは、D/A 変換データを設定します。 DADR の上位 14 ビットの内容は、DACNT の値と常に比較されており、基本周期ごとに 出力波形のデューティを決定し、また分解能幅の付加パルスを出力するか否かを決定しま す。この動作を可能にするためには、DADR をある範囲の値に設定する必要があります。 この範 囲はキャ リアフリ ーケンシ セレクト (C FS )に よって決 まります 。範囲外 の値を DADR に設定すると、PWM 出力は固定されます。 12 ビット精度で使用する場合には、下位 2 ビット(データ)(DA1、0)を 0 に固定し、 上位 12 ビット(データ)が有効と見なします。この下位 2 ビット(データ)は DAC NT の上位 2 ビット(カウンタ)に対応しています。 302 10. 14 ビット PWM タイマ(PWMX) ビット 1:キャリアフリーケンシセレクト(CFS) ビット 1 説 明 CFS 0 基本周期=分解能(T)×64 で動作、DADR の値の範囲は H'0401〜H'FFFD 1 基本周期=分解能(T)×256 で動作、DADR の値の範囲は H'0103〜H'FFFF (初期値) DADRA ビット 0:リザーブビット リザーブビットです。リードすると常に 1 が読み出されます。ライトは無効です。 DADRB ビット 0:レジスタセレクト(REGS) DADRA と DACR、DADRB と DACNT は、同一のアドレスに配置されています。REGS ビット は、どちら のレジスタ をアクセス 可能にするか を選択しま す。R EGS ビッ トは、 DADRB と DACNT のいずれが選択されていてもアクセス可能です。 ビット 0 説 明 REGS 10.2.3 0 DADRA と DADRB がアクセス可能 1 DACR と DACNT がアクセス可能 (初期値) PWM(D/A)コントロールレジスタ(DACR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 TEST PWME − − OEB OEA OS CKS 0 0 1 1 0 0 0 0 R/W R/W − − R/W R/W R/W R/W DACR は 8 ビットのリード/ライト可能なレジスタで、テストモードの設定、出力の許 可、出力位相、および動作速度の選択を行います。 DACR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サ ブスリープモードまたはモジュールストップモード時に、H'30 に初期化されます。 303 10. 14 ビット PWM タイマ(PWMX) ビット 7:テストモード(TEST) テスト状態を選択します。このビットは LSI のテストのために使用しますので、通常は 0 に設定してください。 ビット 7 説 明 TEST 0 PWM(D/A)はユーザ状態となり、通常の動作をします 1 PWM(D/A)はテスト状態となり、正しい変換結果は得られません (初期値) ビット 6:PWM イネーブル(PWME) DACNT の動作または停止を選択します。 ビット 6 説 明 PWME 0 DACNT は 14 ビットのアップカウンタとして動作 1 DACNT=H'0003 で停止 (初期値) ビット 5、4:リザーブビット リザーブビットです。リードすると常に 1 が読み出されます。ライトは無効です。 ビット 3:アウトプットイネーブル B(OEB) PWM(D/A)チャネル B の出力の許可または禁止を選択します。 ビット 3 説 明 OEB 0 PWM(D/A)チャネル B 出力(PWX1 出力端子)を禁止 1 PWM(D/A)チャネル B 出力(PWX1 出力端子)を許可 (初期値) ビット 2:アウトプットイネーブル A(OEA) PWM(D/A)チャネル A の出力の許可または禁止を選択します。 ビット 2 説 明 OEA 304 0 PWM(D/A)チャネル A 出力(PWX0 出力端子)を禁止 1 PWM(D/A)チャネル A 出力(PWX0 出力端子)を許可 (初期値) 10. 14 ビット PWM タイマ(PWMX) ビット 1:アウトプットセレクト(OS) PWM(D/A)の出力位相を選択します。 ビット 1 説 明 OS 0 PWM 直接出力 1 PWM 反転出力 (初期値) ビット 0:クロックセレクト(CKS) P WM(D/A)の分解能を選択します。分解能は、システムクロック(φ)が 10MHz の 場合、100ns と 200ns が選択できます。 ビット 0 説 明 CKS 10.2.4 0 分解能(T)=システムクロック周期(t cyc )で動作 (初期値) 1 分解能(T)=システムクロック周期(t cyc )×2 で動作 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : R/W 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MSTP11 ビットを 1 にセットすると、14 ビット PWM タイマは動作を停止してモジュー ルストップモードへ遷移します。詳細は、「25.5 モジュールストップモード」を参照し てください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 305 10. 14 ビット PWM タイマ(PWMX) MSTPCRH ビット 3:モジュールストップ(MSTP11) PWMX のモジュールストップモードを指定します。 MSTPCRH 説 明 ビット 3 MSTP11 306 0 PWMX のモジュールストップモード解除 1 PWMX のモジュールストップモード設定 (初期値) 10. 14 ビット PWM タイマ(PWMX) 10.3 バスマスタとのインタフェース DACNT、DADRA、B は、16 ビットのレジスタです。一方、バスマスタと内蔵周辺モジ ュールの間の、データバスは 8 ビット幅です。したがって、バスマスタがこれらのレジス タをアクセスするには、8 ビットのテンポラリレジスタ(TEMP)を介して行います。 各レジスタのリード/ライトは次のような動作で行われます(CPU とのインタフェース 例)。 (1)レジスタへのライト時の動作 上位バイトのライトにより、上位バイトのデータが TEMP にストアされます。次に下位 バイトのライトで、TEMP にある上位バイトの値とあわせて 16 ビットデータとしてレジ スタにライトされます。 (2)レジスタからのリード時の動作 上位バイトのリードで、上位バイトの値は C PU に転送され、下位バイトの値は TEMP に転送されます。次に下位バイトのリードで、TEMP にある下位バイトの値が C PU に転 送されます。 これらのレジスタをアクセスするときは、MOV 命令を使用し、常に 16 ビット単位(バ イトアクセスを 2 回行うことも含みます)で行い、かつ上位バイト、下位バイトの順序で 行ってください。上位バイトのみや下位バイトのみのアクセスでは、データは正しく転送 されませんので注意してください。なお、ビット操作命令は使用できません。 図 1 0.2 に C PU が DAC NT をアクセスする場合のデータの流れを示します。他のレジス タの場合も同様な動作になります。 例1 DACNT へのライト MOV.W R0,@DACNT 例2 DACNT へ R0 の内容をライト DADRA のリード MOV.W @DADRA,R0 DADRA の内容を R0 に転送 307 10. 14 ビット PWM タイマ(PWMX) 表 10.3 16 ビットビットレジスタのリード/ライト別アクセス方式 レジスタ名 リード ライト ワード バイト ワード バイト DADRA、B ○ ○ ○ × DACNT ○ × ○ × ○:許されているアクセスを示します。ワード単 位のアクセスとは上位バイト→下位バイトの順序 で連続してバイトアクセスすることを含みます。 ×:その単位のアクセスでは、結果が保証されないことを示します。 <上位バイトのライト> モジュール内データバス バスインタ フェース CPU [H'AA] 上位バイト TEMP [H'AA] DACNTH [ ] DACNTL [ ] <下位バイトのライト> CPU [H'57] 下位バイト モジュール内データバス バスインタ フェース TEMP [H'AA] DACNTH [H'AA] 図 10.2(a) 308 DACNTL [H'57] DACNT のアクセス動作(CPU→DACNT〔H'AA57〕ライト時) 10. 14 ビット PWM タイマ(PWMX) <上位バイトのリード> モジュール内データバス バスインタ フェース CPU [H'AA] 上位バイト TEMP [H'57] DACNTH [H'AA] DACNTL [H'57] <下位バイトのリード> CPU [H'57] 下位バイト モジュール内データバス バスインタ フェース TEMP [H'57] DACNTH [ ] 図 10.2(b) DACNTL [ ] DACNT のアクセス動作(DACNT→CPU〔H'AA57〕リード時) 309 10. 14 ビット PWM タイマ(PWMX) 10.4 動作説明 PWMX 端子からは、図 10.3 に示すような PWM 波形が出力されます。1 変換周期中に発 生するパルス(CFS=0 の場合 256 個、CFS=1 の場合 64 個)の 0 レベル幅の合計(TL )が DADR のデータと対応しています。OS=0 の場合、この波形が直接出力されます。OS=1 の場合、この波形が 反転して出力されます。このとき 1 レベ ル幅の合計(TH)が DAD R のデータと対応しています。この様子を図 10.4 に示します。 1変換周期 (T×214(=16384)) tf 基本周期 (T×64、またはT×256) tL T:分解能 m TL=ΣtLn(OS=0の場合) n=1 (CFS=0のときm=256、 CFS=1のときm=64) 図 10.3 PWM(D/A)の動作 C KS、C FS 、OS ビットの設定と、分解能、基本周期、変換周期との関係を表 1 0.4 に示 します。DADR の内容がある値以上ではないと PWM 出力は固定レベルとなります。PWM 出力が図 10.3 で説明した波形となる DADR の設定値と DADR の下位ビットを 0 に固定し て、変換精度を 12 ビット、10 ビットとした場合の変換周期などを併せて表 10.4 に示しま す。 310 10. 14 ビット PWM タイマ(PWMX) 表 10.4 設定値と動作内容(φ:10MHz 時の例) CKS 分解能 CFS 基本 変換 TL/TH T 周期 周期 (OS=0/OS=1) (μ s) 0 0.1 DADR 固定ビット 変換精度 (μ s) (μ s) 0 (ビット数) 6.4 1638.4 (1)常時 Low/High レベル 変換 ビットデータ 3 2 1 0 14 周期* (μ s) 1638.4 出力 (DADR=H'0001〜H'03FD) 12 (2)(データ値)×T 10 0 0 0 0 409.6 0 0 102.4 (DADR=H'0401〜H'FFFD) 1 25.6 1638.4 (1)常時 Low/High レベル 14 1638.4 出力 (DADR=H'0003〜H'00FF) 12 (2)(データ値)×T 10 0 0 0 0 409.6 0 0 102.4 (DADR=H'0103〜H'FFFF) 1 0.2 0 12.8 3276.8 (1)常時 Low/High レベル 14 3276.8 出力 (DADR=H'0001〜H'03FD) 12 (2)(データ値)×T 10 0 0 0 0 819.2 0 0 204.8 (DADR=H'0401〜H'FFFD) 1 51.2 3276.8 (1)常時 Low/High レベル 14 3276.8 出力 (DADR=H'0003〜H'00FF) 12 (2)(データ値)×T 10 0 0 0 0 819.2 0 0 204.8 (DADR=H'0103〜H'FFFF) 【注】 * DADR の特定のビットを固定することにより得られる変換周期です。 (1)OS=0(DADR は、TL に対応) (a)CFS=0(基本周期=分解能(T)×64) 1変換周期 tf1 tL1 tf2 tL2 tf255 tL3 tL255 tf256 tL256 tf1 =tf2 =tf3 =・・・=tf255 =tf256 =T×64 tL1+tL2+tL3+・・・+tL255+tL256=TL 図 10.4(1)出力波形 311 10. 14 ビット PWM タイマ(PWMX) (b)CFS=1(基本周期=分解能(T)×256) 1変換周期 tf1 tL1 tf2 tL2 tf63 tL3 tL63 tf64 tL64 tf1 =tf2 =tf3 =・・・=tf63 =tf64 =T×256 tL1+tL2+tL3+・・・+tL63+tL64=TL 図 10.4(2)出力波形 (2)OS=1(DADR は、TH に対応) (a)CFS=0(基本周期=分解能(T)×64) 1変換周期 tf1 tH1 tf2 tH2 tf255 tH3 tH255 tf256 tH256 tf1 =tf2 =tf3 =・・・=tf255 =tf256 =T×64 tH1+tH2+tH3+・・・+tH255+tH256=TH 図 10.4(3)出力波形 (b)CFS=1(基本周期=分解能(T)×256) 1変換周期 tf1 tH1 tf2 tH2 tf63 tH3 tf1 =tf2 =tf3 =・・・=tf63 =tf64 =T×256 tH1+tH2+tH3+・・・+tH63+tH64=TH 図 10.4(4)出力波形 312 tH63 tf64 tH64 11. 16 ビットフリーランニ ングタイマ(FRT) 第 11 章 11.1 11.2 11.3 目次 概要 ....................................................................................................................................... 315 11.1.1 特長 ...................................................................................................... 315 11.1.2 ブロック図 ............................................................................................ 316 11.1.3 端子構成................................................................................................ 317 11.1.4 レジスタ構成 ......................................................................................... 318 各レジスタの説明 ................................................................................................................... 319 11.2.1 フリーランニングカウンタ(FRC) ........................................................ 319 11.2.2 アウトプットコンペアレジスタ A、B(OCRA、OCRB) ......................... 319 11.2.3 インプットキャプチャレジスタ A〜D(ICRA〜ICRD)............................ 320 11.2.4 アウトプットコンペアレジスタ AR、AF(OCRAR、OCRAF) ................. 321 11.2.5 アウトプットコンペアレジスタ DM(OCRDM) ..................................... 322 11.2.6 タイマインタラプトイネーブルレジスタ(TIER) ................................... 322 11.2.7 タイマコントロール/ステータスレジスタ(TCSR)............................... 325 11.2.8 タイマコントロールレジスタ(TCR)..................................................... 329 11.2.9 タイマアウトプットコンペアコントロールレジスタ(TOCR)................. 332 11.2.10 モジュールストップコントロールレジスタ(MSTPCR) .......................... 335 動作説明................................................................................................................................. 336 11.3.1 FRC のカウントタイミング..................................................................... 336 11.3.2 アウトプットコンペア出力タイミング .................................................... 337 11.3.3 FRC のクリアタイミング ........................................................................ 338 11.3.4 インプットキャプチャ入力タイミング .................................................... 338 11.3.5 インプットキャプチャフラグ(ICFA〜D)のセットタイミング................ 341 11.3.6 アウトプットコンペアフラグ(OCFA、B)のセットタイミング .............. 341 11.3.7 タイマオーバフローフラグ(OVF)のセットタイミング.......................... 342 11.3.8 OCRA と OCRAR/OCRAF の自動加算タイミング ................................... 342 11. 16 ビットフリーランニングタイマ(FRT) 11.3.9 ICRD と OCRDM のマスク信号生成タイミング ........................................ 343 11.4 割込み要因 ............................................................................................................................. 344 11.5 FRT の使用例 .......................................................................................................................... 345 11.6 使用上の注意 .......................................................................................................................... 346 314 11. 16 ビットフリーランニングタイマ(FRT) 11.1 概要 本 LSI は、16 ビットフリーランニングタイマ(FRT:Free Running Timer)を 1 チャネル 内蔵しています。 FRT は、16 ビットのフリーランニングカウンタ(FRC)をベースにして、2 種類の独立 した波形出力が可能であり、また入力パルスの幅や外部クロックの周期を測定することが できます。 11.1.1 特長 FRT の特長を以下に示します。 ■4 種類のカウンタ入力クロックを選択可能 ・3 種類の内部クロック(φ/2、φ/8、φ/32)と、外部クロックのうちから選択 できます(外部イベントのカウントが可能)。 ■2 本の独立したコンパレータ ・2 種類の波形出力が可能です。 ■4 本の独立したインプットキャプチャ ・立ち上がりエッジ/立ち下がりエッジの選択が可能です。 ・バッファ動作を指定できます。 ■カウンタのクリア指定が可能 ・コンペアマッチ A により、カウンタの値をクリアすることができます。 ■7 種類の割込み要因 ・コンペアマッチ×2 要因、インプットキャプチャ×4 要因、オーバフロー×1 要因 があり、それぞれ独立に要求することができます。 ■自動加算機能による特殊動作 ・OCRA の内容に OCRAR および OCRAF の内容を自動的に加算し、ソフトウェアの 介在なしに周期的な波形を生成することができます。 ・ICRD の内容と OCRDM の内容×2 を自動的に加算し、この間のインプットキャプ チャ動作を制限することができます。 315 11. 16 ビットフリーランニングタイマ(FRT) 11.1.2 ブロック図 16 ビットフリーランニングタイマのブロック図を図 11.1 に示します。 外部クロック 内部クロック φ/2 φ/8 φ/32 FTCI クロック選択 クロック OCRA R/F(H/L) OCRA(H/L) コンペアマッチA モ 比較器A FTOA コ FTOB ジ オーバフロー FRC(H/L) ン FTIA ト クリア コンペアマッチB | 比較器B FTIB ル ロ FTIC OCRB(H/L) | FTID ル ュ インプットキャプチャ ロ ジ ICRA(H/L) | ICRB(H/L) タ ICRC(H/L) バ ICRD(H/L) ッ 比較器M ク デ ス ×1 ×2 コンペアマッチM OCRDM L TCSR TIER TCR TOCR ICIA ICIB ICIC ICID OCIA OCIB FOVI 【記号説明】 OCRA、B FRC ICRA〜D TCSR TIER TCR TOCR : : : : : : : 割込み信号 アウトプットコンペアレジスタA、B(16ビット) フリーランニングカウンタ(16ビット) インプットキャプチャレジスタA〜D(16ビット) タイマコントロール/ステータスレジスタ(8ビット) タイマインタラプトイネーブルレジスタ(8ビット) タイマコントロールレジスタ(8ビット) タイマアウトプットコンペアコントロールレジスタ(8ビット) 図 11.1 16 ビットフリーランニングタイマのブロック図 316 バ ス イ ン タ フ ェ | ス 内部データバス 11. 11.1.3 16 ビットフリーランニングタイマ(FRT) 端子構成 FRT の入出力端子を表 11.1 に示します。 表 11.1 端子構成 名 称 記号 入出力 機 能 カウンタクロック入力端子 FTCI 入力 FRC のカウンタクロック入力 アウトプットコンペア A 出力端子 FTOA 出力 アウトプットコンペア A の出力 アウトプットコンペア B 出力端子 FTOB 出力 アウトプットコンペア B の出力 インプットキャプチャ A 入力端子 FTIA 入力 インプットキャプチャ A の入力 インプットキャプチャ B 入力端子 FTIB 入力 インプットキャプチャ B の入力 インプットキャプチャ C 入力端子 FTIC 入力 インプットキャプチャ C の入力 インプットキャプチャ D 入力端子 FTID 入力 インプットキャプチャ D の入力 317 11. 16 ビットフリーランニングタイマ(FRT) 11.1.4 レジスタ構成 FRT のレジスタ構成を表 11.2 に示します。 表 11.2 レジスタ構成 名 称 略称 R/W 初期値 アドレス* 1 タイマインタラプトイネーブルレジスタ TIER R/W H'01 H'FF90 タイマコントロール/ステータスレジスタ TCSR R/(W) *2 H'00 H'FF91 フリーランニングカウンタ FRC R/W H'0000 H'FF92 アウトプットコンペアレジスタ A OCRA R/W H'FFFF H'FF94 *3 アウトプットコンペアレジスタ B OCRB R/W H'FFFF H'FF94 *3 タイマコントロールレジスタ TCR R/W H'00 H'FF96 タイマアウトプットコンペアコントロール TOCR R/W H'00 H'FF97 インプットキャプチャレジスタ A ICRA R H'0000 H'FF98*4 インプットキャプチャレジスタ B ICRB R H'0000 H'FF9A*4 インプットキャプチャレジスタ C ICRC R H'0000 H'FF9C *4 インプットキャプチャレジスタ D ICRD R H'0000 H'FF9E アウトプットコンペアレジスタ AR OCRAR R/W H'FFFF H'FF98*4 アウトプットコンペアレジスタ AF OCRAF R/W H'FFFF H'FF9A*4 アウトプットコンペアレジスタ DM OCRDM R/W H'0000 H'FF9C *4 モジュールストップコントロールレジスタ MSTPCRH R/W H'3F H'FF86 MSTPCRL R/W H'FF H'FF87 レジスタ 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 ビット 7〜1 はリード専用で、フラグをクリアするための 0 ライトのみ可能です。 ビット 0 はリード/ライト可能です *3 OCRA と OCRB のアドレスは同一です。これらの切り替えは TOCR の OCRS ビットで 行います。 * 4 I CRA、I CRB、I CRC と、OCR AR、OCR AF、OCR DM のアドレスは同一です。これら の切り替えは TOCR の ICRS ビットで行います。 318 11. 16 ビットフリーランニングタイマ(FRT) 11.2 各レジスタの説明 11.2.1 フリーランニングカウンタ(FRC) ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W F RC は、16 ビットのリード/ライト可能なアップカウンタで、入力したクロックによ りカウントアップされます。入力するクロックは、TC R のクロックセレクト 1、0 ビット (CKS1、CKS0)で選択します。 また、FRC はコンペアマッチ A によりクリアすることができます。 F RC がオーバフロー(H'F FF F→H'0000)すると、TC SR のオーバフローフラグ(OVF ) が 1 にセットされます。 F RC は、リセットまたはハードウェアスタンバイモード時に H'0000 に、初期化されま す。 11.2.2 アウトプットコンペアレジスタ A、B(OCRA、OCRB) ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W OCR は、16 ビットのリード/ライト可能な 2 本のレジスタ(OCRA、OCRB)から構成 されます。 OCR の内容は、FRC の値と常に比較されています。両者の値が一致すると、TCSR のア ウトプットコンペアフラグ(OCFA、OCFB)が 1 にセットされます。 さらに、OC R の値と F RC の値が一致した(コンペアマッチ)とき、TOC R のアウトプ ットイネーブルビット(OEA、OEB)が 1 にセットされていると、TOCR のアウトプット レベルビット(OLVLA、OLVLB)で設定した出力レベルの値が、アウトプットコンペア 出力端子(FTOA、FTOB)に出力されます。リセット後、最初のコンペアマッチが起こる まで FTOA、FTOB 出力は 0 出力です。 OC R は、リセットまたはハードウェアスタンバイモード時に、H'F FF F に初期化されま す。 319 11. 16 ビットフリーランニングタイマ(FRT) 11.2.3 インプットキャプチャレジスタ A〜D(ICRA〜ICRD) ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W R R R R R R R R R R R R R R R R : ICR は、16 ビットのリード専用の 4 本のレジスタ(ICRA〜ICRD)から構成されます。 インプットキ ャプチャ信号入力端子(F TIA 〜F TID)の立ち上がりまたは 立ち下がりエ ッジが検出されると、そのときの F RC の値が IC R A〜IC R D に転送 されます。このとき同 時に、TC SR のインプットキャプチャフラグ(IC F A〜IC F D)が 1 にセットされます。入力 信号のエッジは、TC R のインプットエッジセレクトビット (IED GA〜IED GD)により選 択できます。 また、IC R C、IC R D は、TC R のバッファイネーブル A、B ビット(B UFE A、B UFE B) により、それぞれ ICRA、ICRB のバッファレジスタとして使用し、バッファ動作を行わせ ることもできます。 IC R C を IC R A のバッファレジスタとして指定した場合(B UFE A=1)の接続を図 1 1.2 に示します。IC R C を IC R A のバッファとして使用した場合、外部入力信号の変化として IED GA≠IED GC と設定することにより、立ち上 がり/立ち下がり両方のエッジを指定す ることができます。IED GA=IED GC の場合には 立ち上がりまたは立ち下がりエッジのい ずれかとなります。表 11.3 を参照してください。 【注】 FRC から ICR への転送は ICF の値にかかわらず行われます。 IEDGA BUFEA IEDGC FTIA エッジ検出および キャプチャ信号 発生回路 ICRC 図 11.2 バッファ動作(例) 320 ICRA FRC 11. 16 ビットフリーランニングタイマ(FRT) 表 11.3 バッファ動作時の入力エッジの選択(例) IEDGA IEDGC 0 0 説 明 インプットキャプチャ入力 A(FTIA)の立ち下がりエッジでキャプチャ (初期値) 1 1 インプットキャプチャ入力 A(FTIA)の立ち上がり/立ち下がり 0 両方のエッジでキャプチャ 1 インプットキャプチャ入力 A(FTIA)の立ち上がりエッジでキャプチャ インプットキャプチャ動作を確実に行うために、インプットキャプチャ入力信号のパル ス幅は、単エッジの場合 1.5 システムクロック(1.5 φ)以上、両エッジの場合 2.5 システ ムクロック(2.5 φ)以上にしてください。 ICR は、リセットまたはハードウェアスタンバイモード時に、H'0000 に初期化されます。 11.2.4 アウトプットコンペアレジスタ AR、AF(OCRAR、OCRAF) ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W OCRAR、OCRAF は、16 ビットのリード/ライト可能なレジスタです。 TOCR のOCRAMSビットが1にセットされている場合、OCRA の動作はOCRAR、OCRAF を使用した動作に変更されます。OCRAR、OCRAF の内容は、交互に OCRA に自動的に加 算され、OCRA に書き込まれます。書込み動作はコンペアマッチ A のタイミングで行われ ます。OCRAMS ビットを 1 にセットした後の最初のコンペアマッチ A では、OCRAF が加 算されます。 さらに、コンペアマッチ A による動作は、OCRAR、OCRAF のいずれを加算した後のコ ンペアマッチかによって異なります。TOCR の OLVLA ビットの内容は無視され、OCRAF 加算後のコンペアマッチ A では 1 を出力し、OC R AR 加算後のコンペアマッチ A では 0 を 出力します。 OCRA の自動加算機能を使用する場合には、FRC のカウンタ入力クロックを内部クロッ クφ/2 で、かつ OCRAR(または OCRAF)=H'0001 以下の値に設定しないでください。 OC R AR、OC R AF は、リセットまたはハード ウェアスタンバイモード時に、H'F FF F に 初期化されます。 321 11. 16 ビットフリーランニングタイマ(FRT) 11.2.5 アウトプットコンペアレジスタ DM(OCRDM) ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W R R R R R R R R R/W R/W R/W R/W R/W R/W R/W R/W : OCRDM は、16 ビットのリード/ライト可能なレジスタです。OCRDM の上位 8 ビット は H'00 に固定にされています。 TOCR の ICRDMS ビットが 1 にセットされていて、OCRDM の内容が H'0000 以外である 場合、IC R D の動作は OC R DM を利用した動作に変更されます。インプットキャプチャ D が発生した時点をマスク期間の開始とします。続いて、IC R D の内容に OC R DM の内容を 2 倍して加算した値を FRC と比較し、一致した時点をマスク期間の終了とします。マスク 期間中は新たなインプットキャプチャ D は禁止されています。 ICRDMS ビットが 1 にセットされていて、OCRDM の内容が H'0000 である場合は、マス ク期間は発生しません。 OCRDM は、リセットまたはハードウェアスタンバイモード時に、H'0000 に初期化され ます。 11.2.6 タイマインタラプトイネーブルレジスタ(TIER) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 ICIAE ICIBE ICICE ICIDE OCIAE OCIBE OVIE − 0 0 0 0 0 0 0 1 R/W R/W R/W R/W R/W R/W R/W − TIER は、8 ビットのリード/ライト可能なレジスタで、各割込み要求の許可を制御しま す。 TIER は、リセットまたはハードウェアスタンバイモード時に、H'01 に初期化されます。 ビット 7:インプットキャプチャインタラプト A イネーブル(ICIAE) TC SR のインプットキャプチャフラグ A(IC F A)が 1 にセットされたとき、IC F A によ る割込み(ICIA)の許可または禁止を選択します。 ビット 7 説 明 ICIAE 322 0 ICFA による割込み要求(ICIA)を禁止 1 ICFA による割込み要求(ICIA)を許可 (初期値) 11. 16 ビットフリーランニングタイマ(FRT) ビット 6:インプットキャプチャインタラプト B イネーブル(ICIBE) TC S R のインプットキャプチャフラグ B (IC F B )が 1 にセットされたとき、IC F B によ る割込み(IC IB )の許可または禁止を選択します。 ビット 6 説 明 ICIBE 0 ICFB による割込み要求(ICIB)を禁止 1 ICFB による割込み要求(ICIB)を許可 (初期値) ビット 5:インプットキャプチャインタラプト C イネーブル(ICICE) TCSR のインプットキャプチャフラグ C(ICFC)が 1 にセットされたとき、ICFC による 割込み(ICIC)の許可または禁止を選択します。 ビット 5 説 明 ICICE 0 ICFC による割込み要求(ICIC)を禁止 1 ICFC による割込み要求(ICIC)を許可 (初期値) ビット 4:インプットキャプチャインタラプト D イネーブル(ICIDE) TC SR のインプットキャプチャフラグ D(IC F D)が 1 にセットされたとき、IC F D によ る割込み(ICID)の許可または禁止を選択します。 ビット 4 説 明 ICIDE 0 ICFD による割込み要求(ICID)を禁止 1 ICFD による割込み要求(ICID)を許可 (初期値) ビット 3:アウトプットコンペアインタラプト A イネーブル(OCIAE) TCSR のアウトプットコンペアフラグ A(OCFA)が 1 にセットされたとき、OCFA によ る割込み要求(OCIA)の許可または禁止を選択します。 ビット 3 説 明 OCIAE 0 OCFA による割込み要求(OCIA)を禁止 1 OCFA による割込み要求(OCIA)を許可 (初期値) 323 11. 16 ビットフリーランニングタイマ(FRT) ビット 2:アウトプットコンペアインタラプト B イネーブル(OCIBE) TCSR のアウトプットコンペアフラグ B(OCFB)が 1 にセットされたとき、OCFB によ る割込み要求(OCIB)の許可または禁止を選択します。 ビット 2 説 明 OCIBE 0 OCFB による割込み要求(OCIB)を禁止 1 OCFB による割込み要求(OCIB)を許可 (初期値) ビット 1:タイマオーバフローインタラプトイネーブル(OVIE) TC SR の オーバ フロー フラグ (OVF ) が 1 に セッ トされ たとき 、OVF に よる割 込み (FOVI)の許可または禁止を選択します。 ビット 1 説 明 OVIE 0 OVF による割込み要求(FOVI)を禁止 1 OVF による割込み要求(FOVI)を許可 (初期値) ビット 0:リザーブビット リザーブビットです。リードすると常に 1 が読み出されます。ライトは無効です。 324 11. 11.2.7 16 ビットフリーランニングタイマ(FRT) タイマコントロール/ステータスレジスタ(TCSR) ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 ICFA ICFB ICFC ICFD OCFA OCFB OVF CCLRA 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/W ビット7〜1はフラグをクリアするための0ライトのみ可能です。 TC SR は、8 ビットのレジスタで、カウンタクリアの選択、各割込み要求信号の制御を 行います。 TCSR は、リセットまたはハードウェアスタンバイモード時に、H'00 に初期化されます。 なお、タイミングについては「11.3 動作説明」を参照してください。 ビット 7:インプットキャプチャフラグ A(ICFA) インプットキャプチャ信号によって、FRC の値が ICRA に転送されたことを示すステー タスフラグです。BUFEA ビットが 1 にセットされているときは、ICFA はインプットキャ プチャ信号により FRC の値が ICRA に転送されたことを、また更新される前の ICRA の値 が ICRC に転送されたことを示します。 本フラグのクリアは、ソフトウェアによって行われます。セットは、ハードウェアで行 われます。ソフトウェアでセットすることはできません。 ビット 7 説 明 ICFA 0 [クリア条件] (初期値) ICFA=1 の状態で、ICFA をリードした後、ICFA に 0 をライトしたとき 1 [セット条件] インプットキャプチャ信号により、FRC の値が ICRA に転送されたとき ビット 6:インプットキャプチャフラグ B(ICFB) インプットキャプチャ信号によって、FRC の値が ICRB に転送されたことを示すステー タスフラグです。BUFEB ビットが 1 にセットされているときは、ICFB はインプットキャ プチャ信号により FRC の値が ICRB に転送されたことを、また更新される前の ICRB の値 が ICRD に転送されたことを示します。 本フラグのクリアは、ソフトウェアによって行われます。セットは、ハードウェアで行 われます。ソフトウェアでセットすることはできません。 325 11. 16 ビットフリーランニングタイマ(FRT) ビット 6 説 明 ICFB 0 [クリア条件] (初期値) ICFB=1 の状態で、ICFB をリードした後、ICFB に 0 をライトしたとき 1 [セット条件] インプットキャプチャ信号により、FRC の値が ICRB に転送されたとき ビット 5:インプットキャプチャフラグ C(ICFC) インプットキャプチャ信号によって、FRC の値が ICRC に転送されたことを示すステー タスフラグです。BUFEA ビットが 1 にセットされているときは、FTIC に IEDGC ビットで 指定された信号変化(インプットキャプチ ャ信号)が発生したとき、IC F C はセットされ ますが、ICRC へのデータ転送は行われません。したがって、バッファ動作では、ICFC は ICICE ビットを 1 にセットすることにより、外部割込みとして使用することができます。 本フラグのクリアは、ソフトウェアによって行われます。セットは、ハードウェアで行 われます。ソフトウェアでセットすることはできません。 ビット 5 説 明 ICFC 0 [クリア条件] (初期値) ICFC=1 の状態で、ICFC をリードした後、ICFC に 0 をライトしたとき 1 [セット条件] インプットキャプチャ信号が発生したとき ビット 4:インプットキャプチャフラグ D(ICFD) インプットキャプチャ信号によって、FRC の値が ICRD に転送されたことを示すステー タスフラグです。B UFE B ビットが 1 にセットされているときは、F TID に IED GD ビット で指定された信号変化(インプットキャプチャ信号)が発生したとき、IC F D はセットさ れますが、ICRD へのデータ転送は行われません。したがって、バッファ動作では、ICFD は ICIDE ビットを 1 にセットすることにより、外部割込みとして使用することができます。 本フラグのクリアは、ソフトウェアによって行われます。セットは、ハードウェアで行 われます。ソフトウェアでセットすることはできません。 326 11. ビット 4 16 ビットフリーランニングタイマ(FRT) 説 明 ICFD 0 [クリア条件] (初期値) ICFD=1 の状態で、ICFD をリードした後、ICFD に 0 をライトしたとき 1 [セット条件] インプットキャプチャ信号が発生したとき ビット 3:アウトプットコンペアフラグ A(OCFA) FRC と OCRA の値が一致したことを示すステータスフラグです。 本フラグのクリアは、ソフトウェアによって行われます。セットは、ハードウェアで行 われます。ソフトウェアでセットすることはできません。 ビット 3 説 明 OCFA 0 [クリア条件] (初期値) OCFA=1 の状態で、OCFA をリードした後、OCFA に 0 をライトしたとき 1 [セット条件] FRC=OCRA になったとき ビット 2:アウトプットコンペアフラグ B(OCFB) FRC と OCRB の値が一致したことを示すステータスフラグです。 本フラグのクリアは、ソフトウェアによって行われます。セットは、ハードウェアで行 われます。ソフトウェアでセットすることはできません。 ビット 2 説 明 OCFB 0 [クリア条件] (初期値) OCFB=1 の状態で、OCFB をリードした後、OCFB に 0 をライトしたとき 1 [セット条件] FRC=OCRB になったとき 327 11. 16 ビットフリーランニングタイマ(FRT) ビット 1:タイマオーバフロー(OVF) FRC がオーバフロー(H'FFFF→H'0000)したことを示すステータスフラグです。 本フラグは、ソフトウェアでクリアします。セットは、ハードウェアで行われます。ソ フトウェアでセットすることはできません。 ビット 1 説 明 OVF 0 [クリア条件] (初期値) OVF=1 の状態で、OVF をリードした後、OVF に 0 をライトしたとき 1 [セット条件] FRC の値が、H'FFFF→H'0000 になったとき ビット 0:カウンタクリア A(CCLRA) コンペアマッチ A(F RC と OC R A の一致信号)により、F RC をクリアするか、しない かを選択します。 ビット 0 説 明 CCLRA 328 0 FRC のクリアを禁止 1 コンペアマッチ A により FRC をクリア (初期値) 11. 11.2.8 16 ビットフリーランニングタイマ(FRT) タイマコントロールレジスタ(TCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IEDGA IEDGB IEDGC IEDGD BUFEA BUFEB CKS1 CKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W TCR は、8 ビットのリード/ライト可能なレジスタです。インプットキャプチャ入力エ ッジの選択、バッファ動作の指定、FRC の入力クロックの選択を行います。 TCR は、リセットまたはハードウェアスタンバイモード時に、H'00 に初期化されます。 ビット 7:インプットエッジセレクト A(IEDGA) インプットキャプチャ入力 A(FTIA)の立ち上がりエッジまたは立ち下がりエッジを選 択します。 ビット 7 説 明 IEDGA 0 インプットキャプチャ入力 A の立ち下がりエッジ(↓)でキャプチャ(初期値) 1 インプットキャプチャ入力 A の立ち上がりエッジ(↑)でキャプチャ ビット 6:インプットエッジセレクト B(IEDGB) インプットキャプチャ入力 B(FTIB)の立ち上がりエッジまたは立ち下がりエッジを選 択します。 ビット 6 説 明 IEDGB 0 インプットキャプチャ入力 B の立ち下がりエッジ(↓)でキャプチャ(初期値) 1 インプットキャプチャ入力 B の立ち上がりエッジ(↑)でキャプチャ 329 11. 16 ビットフリーランニングタイマ(FRT) ビット 5:インプットエッジセレクト C(IEDGC) インプットキャプチャ入力 C(FTIC)の立ち上がりエッジまたは立ち下がりエッジを選 択します。 ビット 5 説 明 IEDGC 0 インプットキャプチャ入力 C の立ち下がりエッジ(↓)でキャプチャ(初期値) 1 インプットキャプチャ入力 C の立ち上がりエッジ(↑)でキャプチャ ビット 4:インプットエッジセレクト D(IEDGD) インプットキャプチャ入力 D(FTID)の立ち上がりエッジまたは立ち下がりエッジを選 択します。 ビット 4 説 明 IEDGD 0 インプットキャプチャ入力 D の立ち下がりエッジ(↓)でキャプチャ(初期値) 1 インプットキャプチャ入力 D の立ち上がりエッジ(↑)でキャプチャ ビット 3:バッファイネーブル A(BUFEA) ICRC を ICRA のバッファレジスタとして使用するかしないかを選択します。 ビット 3 説 明 BUFEA 0 ICRC を ICRA のバッファレジスタとして使用しない 1 ICRC を ICRA のバッファレジスタとして使用する (初期値) ビット 2:バッファイネーブル B(BUFEB) ICRD を ICRB のバッファレジスタとして使用するかしないかを選択します。 ビット 2 説 明 BUFEB 330 0 ICRD を ICRB のバッファレジスタとして使用しない 1 ICRD を ICRB のバッファレジスタとして使用する (初期値) 11. 16 ビットフリーランニングタイマ(FRT) ビット 1、0:クロックセレクト(CKS1、0) FRC に入力するクロックを内部クロック 3 種類または外部クロックから選択します。 外部クロックは、外部クロック入力端子(FTCI)の立ち上がりエッジでカウントします。 ビット 1 ビット 0 CKS1 CKS0 0 0 内部クロック:φ/2 でカウント 1 内部クロック:φ/8 でカウント 0 内部クロック:φ/32 でカウント 1 外部クロック:立ち上がりエッジ(↑)でカウント 1 説 明 (初期値) 331 11. 16 ビットフリーランニングタイマ(FRT) 11.2.9 タイマアウトプットコンペアコントロールレジスタ(TOCR) ビット : 7 6 ICRDMS OCRAMS 初期値 : R/W : 5 4 3 2 1 0 ICRS OCRS OEA OEB OLVLA OLVLB 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W TOC R は、8 ビットのリード/ライト可能なレジスタです。アウトプットコンペア出力 レベルの選択、アウトプットコンペア出力の許可、アウトプットコンペアレジスタ A、B のアクセスの切り替え制御、ICRD や OCRA の動作モード、および、インプットキャプチ ャレジスタ A、B、C のアクセスの切り替え制御を行います。 TOCR は、リセットまたはハードウェアスタンバイモード時に、H'00 に初期化されます。 ビット 7:インプットキャプチャ D モードセレクト(ICRDMS) IC R D を、通常の動作モードとするか、OC R DM を利用した動作モードにするかを選択 します。 ビット 7 説 明 ICRDMS 0 ICRD を、通常の動作モードに設定 (初期値) 1 ICRD を、OCRDM を利用した動作モードに設定 ビット 6:アウトプットコンペア A モードセレクト(OCRAMS) OCRA を、通常の動作モードとするか、OCRAR、OCRAF を利用した動作モードにする かを選択します。 ビット 6 説 明 OCRAMS 332 0 OCRA を、通常の動作モードに設定 1 OCRA を、OCRAR、OCRAF を利用した動作モードに設定 (初期値) 11. 16 ビットフリーランニングタイマ(FRT) ビット 5:インプットキャプチャレジスタセレクト(ICRS) IC R A と OC R AR、IC R B と OC R AF、IC R C と OC R DM、のアドレスは同一です。IC R S ビットは、このアドレスをリード/ライトするときにどちらのレジスタを選択するかを制 御します。ICRA、ICRB と ICRC 動作には影響を与えません。 ビット 5 説 明 ICRS 0 ICRA、ICRB と ICRC レジスタを選択 (初期値) 1 OCRAR、OCRAF と OCRDM レジスタを選択 ビット 4:アウトプットコンペアレジスタセレクト(OCRS) OCRA と OCRB のアドレスは同一です。OCRS ビットは、このアドレスをリード/ライ トするときにどちらのレジスタを選択するかを制御します。OCRA と OCRB の動作には影 響を与えません。 ビット 4 説 明 OCRS 0 OCRA レジスタを選択 1 OCRB レジスタを選択 (初期値) ビット 3:アウトプットイネーブル A(OEA) アウトプットコンペア A 出力端子(FTOA)を制御します。 ビット 3 説 明 OEA 0 アウトプットコンペア A 出力を禁止 1 アウトプットコンペア A 出力を許可 (初期値) ビット 2:アウトプットイネーブル B(OEB) アウトプットコンペア B 出力端子(FTOB)を制御します。 ビット 2 説 明 OEB 0 アウトプットコンペア B 出力を禁止 1 アウトプットコンペア B 出力を許可 (初期値) 333 11. 16 ビットフリーランニングタイマ(FRT) ビット 1:アウトプットレベル A(OLVLA) コンペアマッチ A(FRC と OCRA の一致による信号)により、アウトプットコンペア A 出力端子(FTOA)に出力する出力レベルを選択します。 OCRAMS ビットが 1 の場合は無視されます。 ビット 1 説 明 OLVLA 0 コンペアマッチ A により 0 出力 1 コンペアマッチ A により 1 出力 (初期値) ビット 0:アウトプットレベル B(OLVLB) コンペアマッチ B(FRC と OCRB の一致による信号)により、アウトプットコンペア B 出力端子(FTOB)に出力する出力レベルを選択します ビット 0 説 明 OLVLB 334 0 コンペアマッチ B により 0 出力 1 コンペアマッチ B により 1 出力 (初期値) 11. 11.2.10 16 ビットフリーランニングタイマ(FRT) モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MSTP13 ビットを 1 にセットすると、バスサイクルの終了時点で FRT は動作を停止して モジュールスト ップモードへ遷移します。 詳細は、「2 5.5 モジュールス トップモード」 を参照してください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRH ビット 5:モジュールストップ(MSTP13) FRT のモジュールストップモードを指定します MSTPCRH 説 明 ビット 5 MSTP13 0 FRT のモジュールストップモード解除 1 FRT のモジュールストップモード設定 (初期値) 335 11. 16 ビットフリーランニングタイマ(FRT) 11.3 動作説明 11.3.1 FRC のカウントタイミング FRC は、入力されたクロック(内部クロックまたは外部クロック)によりカウントアッ プされます。 (1)内部クロック動作の場合 TC R の C KS1、0 ビットの設定により、システムクロック(φ)を分周して作られる 3 種類の内部クロック(φ/2、φ/8、φ/32)が選択されます。このときのタイミングを図 11.3 に示します。 φ 内部クロック FRC入力 クロック FRC N−1 N N+1 図 11.3 内部クロック動作時のカウントタイミング (2)外部クロック動作の場合 TC R の C KS1、0 ビットの設定により、外部クロック入力が選択されます。外部クロッ クは立ち上がりエッジでカウントします。なお、外部クロックのパルス幅は、1. 5 システ ムクロック(φ)以上必要です。これ以下のパルス幅では正しく動作しませんので注意し てください。 このときのタイミングを図 11.4 に示します。 336 11. 16 ビットフリーランニングタイマ(FRT) φ 外部クロック 入力端子 FRC入力 クロック FRC N N+1 図 11.4 外部クロック動作時のカウントタイミング 11.3.2 アウトプットコンペア出力タイミング コンペアマッチが発生したとき、TOCR の OLVL ビットで設定される出力レベルがアウ トプットコンペア出力端子(F TOA、F TOB )に出力されます。図 1 1.5 にアウトプットコ ンペア A の場合の出力タイミングを示します。 φ FRC N OCRA N N+1 N N+1 N コンペア マッチA信号 クリア* OLVLA アウトプット コンペアA 出力端子FTOA 【注】* ↓はソフトウェアによる命令実行を示します。 図 11.5 アウトプットコンペア A 出力タイミング 337 11. 16 ビットフリーランニングタイマ(FRT) 11.3.3 FRC のクリアタイミング F RC は、コンペアマッチ A でクリアすることができます。このタイミングを図 1 1.6 に 示します。 φ コンペア マッチA信号 FRC N H'0000 図 11.6 コンペアマッチ A によるクリアタイミング 11.3.4 インプットキャプチャ入力タイミング (1)インプットキャプチャ入力タイミング インプットキャプチャ入力は、TC R の IED GA〜D ビットで立ち上がりエッジ/立ち下 がりエッジ を選択します。立ち 上がりエッジを選択し た(IED GA〜D=1)場 合のタイミ ングを図 11.7 に示します。 φ インプットキャプチャ 入力端子 インプットキャプチャ 信号 図 11.7 インプットキャプチャ信号タイミング(通常時) また、IC R A〜D のリー ド時に、対応するインプットキャプチャ 入力を入力するとイン プットキャプチャ信号は 1 システムクロック(φ)遅延されます。このタイミングを図 11.8 に示します。 338 11. 16 ビットフリーランニングタイマ(FRT) ICRA〜Dのリードサイクル T1 T2 φ インプットキャプチャ 入力端子 インプットキャプチャ 信号 図 11.8 インプットキャプチャ信号タイミング (ICRA〜D のリード時に、インプットキャプチャ入力を入力した場合) (2)バッファ動作時のインプットキャプチャ入力タイミング ICRC または ICRD を、ICRA または ICRB のバッファとして動作させることができます。 ICRC を ICRA のバッファレジスタとして使用し(BUFEA=1)、立ち上がり/立ち下が り両エッジ指定(IEDGA=1、IEDGC=0 または IEDGA=0、IEDGC=1)とした場合のイ ンプットキャプチャ入力タイミングを図 11.9 に示します。 φ FTIA インプット キャプチャ 信号 FRC n n+1 N N+1 ICRA M n n N ICRC m M M n 図 11.9 バッファモード時のインプットキャプチャタイミング(通常時) 339 11. 16 ビットフリーランニングタイマ(FRT) IC R C または IC R D をバッファレジスタとして使用した場合でも、インプットキャプチ ャフラグは、各インプットキャプチャ入力の指定されたエッジ変化に対応してセットされ ます。例えば、IC R C を IC R A のバッファレジスタとして使用しているときでも、インプ ットキャプチャ入力にIEDGC ビットで指定したエッジ変化があるとICFCがセットされ、 ICIEC ビットがセットされていれば割込み要求が発生します。ただし、この場合は、FRC の値は ICRC には転送されません。 また、バッファ動作の場合も、インプットキャプチャ信号が発生するタイミングで、デ ータ転送レジスタ(IC R A と IC R C または IC R B と IC R D)のリードが行われると、インプ ットキャプチャ信号は、1 システムクロック(φ)遅延されます。B UFE A=1 のときのタ イミングを図 11.10 に示します。 CPUのICRAまたはICRCのリードサイクル T1 T2 φ FTIA インプット キャプチャ信号 図 11.10 バッファレジスタ動作時のインプットキャプチャタイミング (ICRA または ICRC のリード時に、インプットキャプチャ入力を入力した場合) 340 11. 11.3.5 16 ビットフリーランニングタイマ(FRT) インプットキャプチャフラグ(ICFA〜D)のセットタイミング インプットキャプチャ入力により IC F A〜D は 1 にセットされ、同時に F RC の値が対応 する ICRA〜ICRD に転送されます。このタイミングを図 11.11 に示します。 φ インプット キャプチャ信号 ICFA〜ICFD FRC N ICRA〜ICRD N 図 11.11 ICFA〜D のセットタイミング 11.3.6 アウトプットコンペアフラグ(OCFA、B)のセットタイミング OC FA 、B は、OC R A、B と F RC の値が一致したとき出力されるコンペアマッチ信号に より 1 にセットされます。コンペアマッチ信号は、値が一致した最後のステート(FRC が 一致したカウント値を更新するタイミング)で発生します。 FRC と OCRA、B が一致した後、カウントアップクロックが発生するまでコンペアマッ チ信号は発生しません。OCFA、B のセットタイミングを図 11.12 に示します。 φ FRC OCRA、B N N+1 N コンペアマッチ信号 OCFA、B 図 11.12 OCF セットタイミング 341 11. 16 ビットフリーランニングタイマ(FRT) 11.3.7 タイマオーバフローフラグ(OVF)のセットタイミング OVF は、F RC がオーバフロー(H'F FF F→H'0000)したとき 1 にセットされます。この ときのタイミングを図 11.13 に示します。 φ FRC H'FFFF H'0000 オーバフロー信号 OVF 図 11.13 OVF のセットタイミング 11.3.8 OCRA と OCRAR/OCRAF の自動加算タイミング TOC R の OC R AMS ビットが 1 にセットされている場合、OC R AR、OC R AF の内容は交 互に OC R A に自動加算され、OC R A のコンペアマッチが発生すると OC R A に書き込まれ ます。OCRA の書き込みタイミングを図 11.14 に示します。 φ FRC N N+1 OCRA N N+A OCRAR、F A コンペア マッチ信号 図 11.14 OCRA の自動加算タイミング 342 11. 11.3.9 16 ビットフリーランニングタイマ(FRT) ICRD と OCRDM のマスク信号生成タイミング TOC R の IC R DM ビットが 1 にセットされていて、OC R DM の内容が H'0000 以外である と、ICRD のインプットキャプチャ機能をマスクする信号が生成されます。 マスク信号は、インプットキャプチャ信号によりセットされます。マスク信号のセット タイミングを図 11.15 に示します。 マスク信号は、IC R D の内容と OC R DM の内容の 2 倍の和と、F RC のコンペアマッチに よりクリアされます。マスク信号のクリアタイミングを図 11.16 に示します。 φ インプット キャプチャ信号 インプット キャプチャ マスク信号 図 11.15 インプットキャプチャマスク信号のセットタイミング φ FRC CRD+OCRDM×2 N N+1 N コンペア マッチ信号 インプット キャプチャ マスク信号 図 11.16 インプットキャプチャマスク信号のクリアタイミング 343 11. 16 ビットフリーランニングタイマ(FRT) 11.4 割込み要因 FRT の割込み要因は、ICIA〜ICID、OCIA、OCIB および FOVI の 3 種類合計 7 つありま す。表 11.4 に各割込み要因と優先順位を示します。各割込み要因は、TIER の各割込みイ ネーブルビットで許可または禁止され、それぞれ独立に割込みコントローラに送られます。 表 11.4 FRT 割込み要因 割込み要因 344 内 容 DTC の起動 優先順位 高 ICIA ICFA による割込み 可 ICIB ICFB による割込み 可 ICIC ICFC による割込み 不可 ICID ICFD による割込み 不可 OCIA OCFA による割込み 可 OCIB OCFB による割込み 可 FOVI OVF による割込み 不可 低 11. 16 ビットフリーランニングタイマ(FRT) 11.5 FRT の使用例 デューティ 50%のパルスを任意の位相差で出力させた例を図 11.17 に示します。これは 次に示すように設定します。 (1)TCSR の CCLRA ビットを 1 にセットします。 (2)各コンペアマッチが発生するたびに OLV LA、B ビットをソフトウェアにより反転さ せます。 FRC H'FFFF カウンタクリア OCRA OCRB H'0000 FTOA FTOB 図 11.17 パルス出力例 345 11. 16 ビットフリーランニングタイマ(FRT) 11.6 使用上の注意 FRT の動作中、次のような競合や動作が起こりますので、注意してください。 (1)FRC のライトとクリアの競合 F RC のライトサイクルの次のステートで、カウンタクリア信号が発生すると、F RC への ライトは行われず FRC のクリアが優先されます。 このタイミングを図 11.18 に示します。 FRCのライトサイクル T1 T2 φ アドレス FRCアドレス 内部ライト信号 カウンタクリア信号 FRC 図 11.18 FRC のライトとクリアの競合 346 N H'0000 16 ビットフリーランニングタイマ(FRT) 11. (2)FRC のライトとカウントアップの競合 F RC のライトサイクルの次のステートでカウントアップが発生しても、カウントアップ されずカウンタライトが優先されます。 このタイミングを図 11.19 に示します。 FRCのライトサイクル T1 T2 φ アドレス FRCアドレス 内部ライト信号 FRC入力クロック FRC N M ライトデータ 図 11.19 FRC のライトとカウントアップの競合 347 11. 16 ビットフリーランニングタイマ(FRT) (3)OCR のライトとコンペアマッチの競合 OCRA、B のライトサイクルの次のステートでコンペアマッチが発生した場合、OCR の ライトが優先され、コンペアマッチ信号は禁止されます。このタイミングを図 11.20 に示 します。 OCRA へ、OCRAR/OCRAF の自動加算機能を選択していて、OCRA、OCRAR、OCRAF ライ トサ イク ルの 次の ステー トで コン ペア マッ チが発 生し た場 合、 OC R A、 OC R AR、 OC R AF のライトが優先され、コンペアマッチ信号が禁止されるため、自動加算結果のラ イトは行われません。このタイミングを図 11.21 に示します。 OCRのライトサイクル T1 T2 φ アドレス OCRアドレス 内部ライト信号 FRC N OCR N N+1 M ライトデータ コンペアマッチ信号 禁止されます 図 11.20 OCR のライトとコンペアマッチの競合(自動加算機能を使用していない場合) 348 11. 16 ビットフリーランニングタイマ(FRT) φ アドレス OCRAR(OCRAF)アドレス 内部ライト信号 OCRAR(OCRAF) Old Data コンペアマッチ信号 禁止されます FRC N OCR N New Data N+1 コンペアマッチ信号が禁止されるため、 自動加算は発生しません。 図 11.21 OCRAR/OCRAF のライトとコンペアマッチの競合 (自動加算機能を使用している場合) 349 11. 16 ビットフリーランニングタイマ(FRT) (4)内部クロックの切り替えとカウンタの動作 内部クロックを切り替えるタイミングによっては、FRC がカウントアップされてしまう 場合があり ます。内部クロック の切り替えタイミング (C KS1、0 ビットの書 き換え)と FRC 動作の関係を表 11.5 に示します。 内部クロックを使用する場合、システムクロック(φ)を分周した内部クロックの立ち 下がりエッジを検出して FRC クロックを生成しています。そのため表 11.5 の No.3 のよう に切り替え前のクロック High→切り替え後のクロック Low レベルになるようなクロック の切り替えを行うと、切り替えタイミングを立ち下がりエッジとみなして F RC クロック が発生し、FRC がカウントアップされてしまいます。 また、内部クロックと外部クロックを切り替えるときも、FRC がカウントアップされる ことがあります。 表 11.5 内部クロックの切り替えと FRC 動作 No. CKS1、CKS0ビット 書き換えタイミング Low → Lowレベルの 切り替え FRC動作 切り替え前の クロック 切り替え後の クロック 1 FRCクロック FRC N N+1 CKSビットの書き換え Low → Highレベルの 切り替え 切り替え前の クロック 切り替え後の クロック 2 FRCクロック FRC N N+1 N+2 CKSビットの書き換え 350 11. No. CKS1、CKS0ビット 書き換えタイミング High → Lowレベルの 切り替え 16 ビットフリーランニングタイマ(FRT) FRC動作 切り替え前の クロック 切り替え後の クロック * 3 FRCクロック FRC N N+1 N+2 CKSビットの書き換え High → Highレベルの 切り替え 切り替え前の クロック 切り替え後の クロック 4 FRCクロック FRC N N+1 N+2 CKSビットの書き換え 【注】 * 切り替えのタイミングを立ち下がりエッジとみなすために発生し、FRC はカウ ントアップされます。 351 11. 352 16 ビットフリーランニングタイマ(FRT) 12. 8 ビットタイマ(TMR) 第 12 章 12.1 12.2 目次 概要 ....................................................................................................................................... 355 12.1.1 特長 ...................................................................................................... 355 12.1.2 ブロック図 ............................................................................................ 356 12.1.3 端子構成................................................................................................ 357 12.1.4 レジスタ構成 ......................................................................................... 358 各レジスタの説明 ................................................................................................................... 359 12.2.1 タイマカウンタ(TCNT) ...................................................................... 359 12.2.2 タイムコンスタントレジスタ A(TCORA)............................................. 360 12.2.3 タイムコンスタントレジスタ B(TCORB) ............................................. 361 12.2.4 タイマコントロールレジスタ(TCR)..................................................... 362 12.2.5 タイマコントロール/ステータスレジスタ(TCSR)............................... 365 12.2.6 シリアルタイマコントロールレジスタ(STCR) ..................................... 369 12.2.7 システムコントロールレジスタ(SYSCR) ............................................. 370 12.2.8 タイマコネクションレジスタ S(TCONRS) ........................................... 371 12.2.9 インプットキャプチャレジスタ(TICR)【TMRX 追加機能】.................. 371 12.2.10 タイムコンスタントレジスタ C(TCORC)【TMRX 追加機能】............... 372 12.2.11 インプットキャプチャレジスタ R、F(TICRR、TICRF) 【TMRX 追加機能】............................................................................... 372 12.3 12.2.12 タイマインプットセレクトレジスタ(TISR)【TMRY 追加機能】 ........... 373 12.2.13 モジュールストップコントロールレジスタ(MSTPCR) .......................... 374 動作説明................................................................................................................................. 375 12.3.1 TCNT のカウントタイミング .................................................................. 375 12.3.2 コンペアマッチタイミング ..................................................................... 376 12.3.3 TCNT の外部リセットタイミング............................................................ 378 12.3.4 オーバフローフラグ(OVF)のセットタイミング.................................... 378 12.3.5 カスケード接続時の動作 ........................................................................ 378 12.3.6 インプットキャプチャ動作 ..................................................................... 380 12. 8 ビットタイマ(TMR) 12.4 割込み要因 ............................................................................................................................. 382 12.5 8 ビットタイマの使用例 .......................................................................................................... 383 12.6 使用上の注意 .......................................................................................................................... 384 354 12.6.1 TCNT のライトとカウンタクリアの競合.................................................. 384 12.6.2 TCNT のライトとカウントアップの競合.................................................. 385 12.6.3 TCOR のライトとコンペアマッチの競合 ................................................. 385 12.6.4 コンペアマッチ A、B の競合 .................................................................. 386 12.6.5 内部クロックの切り替えと TCNT の動作 ................................................. 387 12. 8 ビットタイマ(TMR) 12.1 概要 本 LS I は、8 ビットのカウンタをベースにした 2 チャネルの 8 ビットタイマ(TMR 0、 TMR 1)を内蔵しています。2 チャネルの 8 ビットタイマには、それぞれタイマカウンタ (TC NT)のほかに 8 ビットのタイムコンスタントレジスタ A、B (TC OR A、TC OR B)が あり、TCNT と TCOR の値の一致によるコンペアマッチ信号により、任意のデューティ比 のパルス出力など、多機能タイマとして種々の応用が可能です。 また、本 LS I は、2 チャネルの類似の 8 ビットタイマ(TMR X、TMR Y)を内蔵してお り、タイマコネクションに接続して使用できます。TMR X、TMR Y は、TMR 0、TMR 1 に 比べて、入出力や割込み機能に関して制限があります。 TMR X は、H8S /2148 シリーズに内蔵されていますが、H8S /2144 シリーズ、HS 8/2147N には内蔵されていません。 12.1.1 特長 ■カウンタ入力クロックを選択可能 ・TMR 0、TMR 1:6 種類の内部クロックと、外部クロックのうちから選択できます (外部イベントのカウントが可能)。 ・TMRX、TMRY:3 種類の内部クロックと、外部クロックのうちから選択できます (外部イベントのカウントが可能)。 ■カウンタのクリア指定が可能 ・コンペアマッチ A、B、または外部リセット信号のうちから選択できます。 ■2 つのコンペアマッチ信号の組み合わせでタイマ出力を制御 ・独立に動作可能な 2 つのコンペアマッチ信号の組み合わせによって、任意のデュ ーティのパルス出力や PWM 出力など種々の応用が可能です。 (TMRY にはタイマ出力端子がありません) ■2 チャネルのカスケード接続が可能(TMR0、TMR1) ・チャネル 0 を上位、チャネル 1 を下位とする 16 ビットタイマとして動作可能です (16 ビットカウントモード)。 ・チャネル 1 はチャネル 0 のコンペアマッチをカウント可能です(コンペアマッチカ ウントモード)。 ■複数の割込み要因 ・TMR0、TMR1、TMRY:コンペアマッチ×2 要因、オーバフロー×1 要因があり、 それぞれ独立に要求することができます。 ・TMRX:インプットキャプチャ×1 要因があります。 355 12. 8 ビットタイマ(TMR) 12.1.2 ブロック図 8 ビットタイマ(TMR0、TMR1)のブロック図を図 12.1 に示します。 TMRX、TMRY も同様の構成ですが、カスケード接続はできません。また、TMRX には インプットキャプチャ機能が追加されています。詳細は「第 13 章 タイマコネクション」 を参照してください。 外部クロック TMCI0 TMCI1 内部クロック クロック選択 TMR0 φ/8, φ/2 φ/64, φ/32 φ/1024,φ/256 オーバフロー1 オーバフロー0 TCORA0 TCORA1 比較器A0 比較器A1 TCNT0 TCNT1 クリア0 TMO1 TMRI1 コントロール ロジック コンペアマッチB1 コンペアマッチB0 CMIA0 CMIB0 OVI0 CMIA1 CMIB1 OVI1 割込み信号 図 12.1 8 ビットタイマのブロック図 356 TMRX φ φ/2 φ/4 TMRY φ/4 φ/256 φ/2048 クロック1 クロック0 コンペアマッチA1 コンペアマッチA0 TMO0 TMRI0 TMR1 φ/8, φ/2 φ/64, φ/128 φ/1024,φ/2048 クリア1 比較器B0 比較器B1 TCORB0 TCORB1 TCSR0 TCSR1 TCR0 TCR1 内 部 バ ス 12. 12.1.3 8 ビットタイマ(TMR) 端子構成 8 ビットタイマの入出力端子を表 12.1 に示します。 表 12.1 端子構成 チャネル 0 1 X 名 称 略称* 入出力 機 タイマ出力端子 TMO0 出力 コンペアマッチ出力 タイマクロック入力端子 TMCI0 入力 カウンタ外部クロック入力 タイマリセット入力端子 TMRI0 入力 カウンタ外部リセット入力 タイマ出力端子 TMO1 出力 コンペアマッチ出力 タイマクロック入力端子 TMCI1 入力 カウンタ外部クロック入力 タイマリセット入力端子 TMRI1 入力 カウンタ外部リセット入力 タイマ出力端子 TMOX 出力 コンペアマッチ出力 タイマクロック HFBACKI/TMIX 入力 カウンタ外部クロック入力 /リセット入力端子 (TMCIX/TMRIX) タイマクロック Y /リセット入力端子 【注】 * VSYNCI/TMIY (TMCIY/TMRIY) 能 /リセット入力 入力 カウンタ外部クロック入力 /リセット入力 本文中ではチャネルを省略し、それぞれ TMO、TMCI、TMRI とします。 チャネル X、Y の入出力端子も内部的にはチャネル 0、1 と同様の構成となっています ので、同様に省略します。 357 12. 8 ビットタイマ(TMR) 12.1.4 レジスタ構成 8 ビットタイマのレジスタ構成を表 12.2 に示します。 表 12.2 レジスタ構成 チャネル 0 1 共通 X Y 【注】 名 称 タイマコントロールレジスタ 0 略称*3 TCR0 タイマコントロール/ステータスレジスタ 0 TCSR0 タイムコンスタントレジスタ A0 TCORA0 タイムコンスタントレジスタ B0 タイマカウンタ 0 タイマコントロールレジスタ 1 TCR1 タイマコントロール/ステータスレジスタ 1 TCSR1 タイムコンスタントレジスタ A1 タイムコンスタントレジスタ B1 R/W 初期値 アドレス*1 H'00 H'FFC8 R/W 2 R/(W) * H'00 H'FFCA R/W H'FF H'FFCC TCORB0 R/W H'FF H'FFCE TCNT0 R/W H'00 H'FFD0 R/W H'00 H'FFC9 R/(W) *2 H'10 H'FFCB TCORA1 R/W H'FF H'FFCD TCORB1 R/W H'FF H'FFCF タイマカウンタ 1 TCNT1 R/W H'00 H'FFD1 シリアルタイマコントロールレジスタ STCR R/W H'00 H'FFC3 モジュールストップコントロールレジスタ MSTPCRH R/W H'3F H'FF86 MSTPCRL R/W H'FF H'FF87 タイマコネクションレジスタS TCONRS R/W H'00 H'FFFE タイマコントロールレジスタ X TCRX R/W H'00 H'FFF0 R/(W) * H'00 H'FFF1 R/W H'FF H'FFF6 2 タイマコントロール/ステータスレジスタ X TCSRX タイムコンスタントレジスタ AX TCORAX タイムコンスタントレジスタ BX TCORBX R/W H'FF H'FFF7 タイマカウンタ X TCNTX R/W H'00 H'FFF4 タイムコンスタントレジスタ C TCORC R/W H'FF H'FFF5 インプットキャプチャレジスタR TICRR R H'00 H'FFF2 インプットキャプチャレジスタF TICRF R H'00 H'FFF3 タイマコントロールレジスタ Y TCRY R/W H'00 H'FFF0 R/(W) * H'00 H'FFF1 R/W H'FF H'FFF2 2 タイマコントロール/ステータスレジスタ Y TCSRY タイムコンスタントレジスタ AY TCORAY タイムコンスタントレジスタ BY TCORBY R/W H'FF H'FFF3 タイマカウンタ Y TCNTY R/W H'00 H'FFF4 タイマインプットセレクトレジスタ TISR R/W H'FE H'FFF5 *1 アドレスの下位 16 ビットを示しています。 *2 ビット 7〜5 は、フラグをクリアするための 0 ライトのみ可能です。 *3 本文中ではチャネル(0、1、X、Y)を省略し、それぞれ TCR、TCSR、TCORA、TCORB、 TCNT とします。 チャネル 0 とチャネル 1 の対応するレジスタは、チャネル 0 を上位、チャネル 1 を下位 とする 16 ビットレジスタとして、ワードアクセスすることができます。(8 ビットアクセ ス×2 回に分離されません) H8S /2148 シリーズでは、チャネル X とチャネル Y のレジスタは、一部が同一のアドレ スに重なっています。どちらをアクセスするかは、TC ONR S の TMR X/Y ビットによって 制御されます。 358 8 ビットタイマ(TMR) 12. 12.2 各レジスタの説明 12.2.1 タイマカウンタ(TCNT) TCNT0 TCNT1 ビット: 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W TCNTX、TCNTY 7 ビット: 初期値: R/W : 6 5 4 3 2 1 0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W TCNT は、8 ビットのリード/ライト可能なアップカウンタです。 TCNT0、TCNT1 を 1 本の 16 ビットレジスタとしてワードアクセスすることも可能です。 TCNT は、入力する内部または外部クロックによってカウントアップされます。入力す るクロックは、TCR の CKS2〜CKS0 ビットで選択します。 TCNT は、外部リセット入力信号またはコンペアマッチ信号によりクリアすることがで きます。いずれの信号でクリアするかは、TCR の CCLR1、CCLR0 ビットで選択します。 また、TCNT がオーバフロー(H'FF→H'00)すると、TCSR の OVF が 1 にセットされま す。 TCNT は、リセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 359 12. 8 ビットタイマ(TMR) 12.2.2 タイムコンスタントレジスタ A(TCORA) TCORA0 TCORA1 ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W TCORAX、TCORAY 7 ビット : R/W 5 4 3 2 1 0 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W 初期値 : : 6 TCORA は、8 ビットのリード/ライト可能なレジスタです。 TC OR A0、TC OR A1 を 1 本の 16 ビットレジスタとしてワードアクセスすることも可能 です。 TCORA と TCNT の値は常に比較されており、両者の値が一致すると TCSR の CMFA が 1 にセットされます。ただし、TCORA へのライトサイクルの T2 ステートでの比較は禁止 されています。 また、この一致による信号(コンペアマッチ)と TCSR の OS1、OS0 ビットの設定によ り、タイマ出力を自由に制御することができます。 TCORA は、リセットまたはハードウェアスタンバイモード時に H'FF に初期化されます。 360 12. 12.2.3 8 ビットタイマ(TMR) タイムコンスタントレジスタ B(TCORB) TCORB0 TCORB1 ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W TCORBX、TCORBY 7 ビット : R/W 5 4 3 2 1 0 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W 初期値 : : 6 TCORB は、8 ビットのリード/ライト可能なレジスタです。 TCORB0、TCORB1 を 1 本の 16 ビットレジスタとしてワードアクセスすることも可能で す。 TC OR B と TC NT の値は常に比較されており、両者の値が一致すると TC SR の C MFB が 1 にセットされます。ただし、TCOBR へのライトサイクルの T2 ステートでの比較は禁止 されています。 また、この一致による信号(コンペアマッチ)と TCSR のアウトプットセレクト OS3、 OS2 ビットの設定により、タイマ出力を自由に制御することができます。 TCORB は、リセットまたはハードウェアスタンバイモード時に H'FF に初期化されます。 361 12. 8 ビットタイマ(TMR) 12.2.4 タイマコントロールレジスタ(TCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CMIEB CMIEA OVIE CCLR1 CCLR0 CKS2 CKS1 CKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W TC R は、8 ビットのリード/ライト可能なレジスタで、TC NT の入力クロックの選択、 TCNT のクリア指定、および各割込み要求の許可を制御します。 TCR は、リセットまたはハードウェアスタンバイモード時に、H'00 に初期化されます。 なお、タイミングについては、「12.3 動作説明」を参照してください。 ビット 7:コンペアマッチインタラプトイネーブル B(CMIEB) TC SR の C MFB が 1 にセットされたとき、C MFB による割込み要求(C MIB )の許可ま たは禁止を選択します。 ただし、TMRX では CMIEB の値にかかわらず、CMIB 割込み要求は発生しません。 ビット 7 説 明 CMIEB 0 CMFB による割込み要求(CMIB)を禁止 1 CMFB による割込み要求(CMIB)を許可 (初期値) ビット 6:コンペアマッチインタラプトイネーブル A(CMIEA) TC SR の C MFA が 1 にセットされたとき、C MFA による割込み要求(C MIA)の許可ま たは禁止を選択します。 ただし、TMRX では CMIEA の値にかかわらず、CMIA 割込み要求は発生しません。 ビット 6 説 明 CMIEA 362 0 CMFA による割込み要求(CMIA)を禁止 1 CMFA による割込み要求(CMIA)を許可 (初期値) 12. 8 ビットタイマ(TMR) ビット 5:タイマオーバフローインタラプトイネーブル(OVIE) TCSR の OVF が 1 にセットされたとき、OVF による割込み要求(OVI)の許可または禁 止を選択します。 ただし、TMRX では OVIE の値にかかわらず、OVI 割込み要求は発生しません。 ビット 5 説 明 OVIE 0 OVF による割込み要求(OVI)を禁止 1 OVF による割込み要求(OVI)を許可 (初期値) ビット 4、3:カウンタクリア 1、0(CCLR1、CCLR0) TC NT のクリアを指定します。クリアは、コンペアマッチ A、B または外部リセット入 力から選択します。 ビット 4 ビット 3 CCLR1 CCLR0 0 0 クリアを禁止 1 コンペアマッチ A によりクリア 0 コンペアマッチ B によりクリア 1 外部リセット入力の立ち上がりエッジによりクリア 1 説 明 (初期値) ビット 2〜0:クロックセレクト 2〜0(CKS2〜CKS0) S TCR の IC KS 0、IC KS 1 ビットと共に、TC NT に入力するクロックを、内部クロックま たは外部クロックから選択します。 内部クロックは、システムクロック(φ)を分周した 6 種類または 3 種類のクロックか ら選択できます。これら内部クロックは、立ち下がりエッジでカウントします。 外部クロックのとき 、クロック入力は外部クロック入力端子 (TMC I)の立ち上がり、 立ち下がり、または立ち上がり/立ち下がり両エッジのカウントの 3 種類から選択できま す。 チャネル 0 およびチャネル 1 は、カスケード接続機能のため一部機能が異なります。 363 12. 8 ビットタイマ(TMR) チャネル TCR 説明 STCR ビット 2 ビット 1 ビット 0 ビット 1 ビット 0 CKS2 CKS1 CKS0 0 0 0 − − クロック入力を禁止 0 0 1 − 0 内部クロック:φ/8 立ち下がりエッジでカウント 0 0 1 − 1 内部クロック:φ/2 立ち下がりエッジでカウント 0 1 0 − 0 内部クロック:φ/64 立ち下がりエッジでカウント 0 1 0 − 1 内部クロック:φ/32 立ち下がりエッジでカウント 0 1 1 − 0 内部クロック:φ/1024 立ち下がりエッジでカウント 0 1 1 − 1 内部クロック:φ/256 立ち下がりエッジでカウント 1 0 0 − − TCNT1 のオーバフロー信号でカウント* 0 0 0 − − クロック入力を禁止 0 0 1 0 − 内部クロック:φ/8 立ち下がりエッジでカウント 0 0 1 1 − 内部クロック:φ/2 立ち下がりエッジでカウント 0 1 0 0 − 内部クロック:φ/64 立ち下がりエッジでカウント 0 1 0 1 − 内部クロック:φ/128 立ち下がりエッジでカウント 0 1 1 0 − 内部クロック:φ/1024 立ち下がりエッジでカウント 0 1 1 1 − 内部クロック:φ/2048 立ち下がりエッジでカウント 1 0 0 − − TCNT0 のコンペアマッチ A でカウント* 0 0 0 − − クロック入力を禁止 0 0 1 − − 内部クロック:φでカウント 0 1 0 − − 内部クロック:φ/2 立ち下がりエッジでカウント 0 1 1 − − 内部クロック:φ/4 立ち下がりエッジでカウント 1 0 0 − − クロック入力を禁止 0 0 0 − − クロック入力を禁止 0 0 1 − − 内部クロック:φ/4 立ち下がりエッジでカウント 0 1 0 − − 内部クロック:φ/256 立ち下がりエッジでカウント 0 1 1 − − 内部クロック:φ/2048 立ち下がりエッジでカウント 1 0 0 − − クロック入力を禁止 1 0 1 − − 外部クロック:立ち上がりエッジでカウント 1 1 0 − − 外部クロック:立ち下がりエッジでカウント 1 1 1 − − 外部クロック:立ち上がり/立ち下がり両エッジでカウン 0 1 X Y 共通 ICKS1 ICKS0 (初期値) (初期値) (初期値) (初期値) ト 【注】 * チャネル 0 のクロック入力を TC NT 1 のオーバフロー信号とし、チャネル 1 のクロック 入力を TC NT 0 のコンペアマッチ信号とすると、カウントアップクロックが発生しませ ん。この設定は行わないでください。 364 12. 12.2.5 8 ビットタイマ(TMR) タイマコントロール/ステータスレジスタ(TCSR) TCSR0 ビット : 初期値 : R/W : TCSR1 ビット : 初期値 : R/W : TCSRX ビット : 初期値 : R/W : TCSRY ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 CMFB CMFA OVF ADTE OS3 OS2 OS1 OS0 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/W R/W R/W R/W R/W 7 6 5 4 3 2 1 0 CMFB CMFA OVF − OS3 OS2 OS1 OS0 0 0 0 1 0 0 0 0 R/(W)* R/(W)* R/(W)* − R/W R/W R/W R/W 7 6 5 4 3 2 1 0 CMFB CMFA OVF ICF OS3 OS2 OS1 OS0 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/W R/W R/W R/W 7 6 5 4 3 2 1 0 CMFB CMFA OVF ICIE OS3 OS2 OS1 OS0 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/W R/W R/W R/W R/W ビット7〜5およびTCSRXのビット4は、フラグをクリアするための0ライトのみ 可能です。 TC SR は、8 ビットのレジスタで、コンペアマッチやタイマオーバフロー、インプット キャプチャ(TMRX のみ)のステータスの表示、およびコンペアマッチ出力の制御を行い ます。 リセットまたはハードウェアスタンバイモード時に、TCSR0、TCSRX、TCSRY は H'00 に、TCSR1 は H'10 に初期化されます。 365 12. 8 ビットタイマ(TMR) ビット 7:コンペアマッチフラグ B(CMFB) TCNT と TCORB の値が一致したことを示すステータスフラグです。 ビット 7 説 明 CMFB 0 [クリア条件] (初期値) (1)CMFB=1 の状態で、CMFB をリードした後、CMFB に 0 をライトしたとき (2)CMIB 割込みにより、DTC が起動されたとき 1 [セット条件] TCNT=TCORB になったとき ビット 6:コンペアマッチフラグ A(CMFA) TCNT と TCORA の値が一致したことを示すステータスフラグです。 ビット 6 説 明 CMFA 0 [クリア条件] (初期値) (1)CMFA=1 の状態で、CMFA をリードした後、CMFA に 0 をライトしたとき (2)CMIA 割込みにより、DTC が起動されたとき 1 [セット条件] TCNT=TCORA になったとき ビット 5:タイマオーバフローフラグ(OVF) TCNT がオーバフロー(H'FF→H'00)したことを示すステータスフラグです。 ビット 5 説 明 OVF 0 [クリア条件] (初期値) OVF=1 の状態で、OVF をリードした後、OVF に 0 をライトしたとき 1 [セット条件] TCNT が H'FF→H'00 になったとき 366 12. 8 ビットタイマ(TMR) TCSR0 ビット 4:A/D トリガイネーブル(ADTE) コンペアマッチ A による A/D 変換開始要求の許可または禁止を選択します。 ビット 4 説 明 ADTE 0 コンペアマッチ A による A/D 変換開始要求を禁止 1 コンペアマッチ A による A/D 変換開始要求を許可 (初期値) TCSR1 ビット 4:リザーブビット リードすると常に 1 が読み出されます。ライトは無効です。 TCSRX ビット 4:インプットキャプチャフラグ(ICF) TC ONR I の IC S T ビットが 1 にセットされた後、外部リセット信号に立ち上がりエッジ →立ち下がりエッジの順でエッジが検出されたことを示すステータスフラグです。 ビット 4 説 明 ICF 0 [クリア条件] (初期値) ICF=1 の状態で ICF をリードした後、ICF に 0 をライトしたとき 1 [セット条件] TCONRI の ICST ビットが 1 にセットされた後、外部リセット信号に立ち上が りエッジ→立ち下がりエッジの順でエッジを検出したとき TCSRY ビット 4:インプットキャプチャインタラプトイネーブル(ICIE) TCSRX の ICF が 1 にセットされたとき、ICF による割込み要求(ICIX)の許可または禁 止を選択します。 ビット 4 説 明 ICIE 0 ICF による割込み要求(ICIX)を禁止 1 ICF による割込み要求(ICIX)を許可 (初期値) 367 12. 8 ビットタイマ(TMR) ビット 3〜0:アウトプットセレクト 3〜0(OS3〜OS0) TCOR とTCNTのコンペアマッチによるタイマ出力レベルをどのように変化させるかを 選択します。 OS 3 と OS 2 ビットがコンペアマッチ B による出力レベルを選択し、OS 1 と OS 0 ビット がコンペアマッチ A による出力レベルを選択し、それぞれ独立に制御することができます。 ただし、トグル出力>1 出力>0 出力の順で優先順位が高くなるように設定してありま すので、コンペアマッチが同時に発生した場合は、優先順位が高い方のコンペアマッチに したがって出力が変化します。 なお、OS3〜OS0 ビットがすべて 0 の場合にはタイマ出力は禁止されます。 リセット後、最初のコンペアマッチが起こるまでのタイマ出力は 0 です。 ビット 3 ビット 2 OS3 OS2 0 0 コンペアマッチ B で変化しない 1 コンペアマッチ B で 0 出力 0 コンペアマッチ B で 1 出力 1 コンペアマッチ B ごとに反転出力(トグル出力) 1 説 明 (初期値) ビット 1 ビット 0 OS1 OS0 0 0 コンペアマッチ A で変化しない 1 コンペアマッチ A で 0 出力 0 コンペアマッチ A で 1 出力 1 コンペアマッチ A ごとに反転出力(トグル出力) 1 368 説 明 (初期値) 12. 12.2.6 8 ビットタイマ(TMR) シリアルタイマコントロールレジスタ(STCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IICS IICX1 IICX0 IICE FLSHE ― ICKS1 ICKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W S TCR は 8 ビットのリー ド/ライト可能なレジスタで、レジスタ アクセスの制御、II C の動作モードの制御(IIC 内蔵オプションの場合)、内蔵フラッシュメモリの制御(F-ZTAT 版の場合)、TCNT の入力クロックの選択を行います。8 ビットタイマ以外の詳細は、 「3.2.4 シリアルタイマコントロールレジスタ(STCR)」および各モジュールの説明を参照して ください。S TCR で制御するモジュールを使用しない場合は、当該ビットに 1 をライトし ないでください。 STCR はリセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 ビット 7〜4:I2C コントロール(IICS、IICX1、IICX0、IICE) ポート A のバスバッファ機能および II C 内蔵オプションの場合、I2C バスインタフェー スの動作などを制御するビットです。詳しくは「16.2.7 シリアルタイマコントロールレ ジスタ(STCR)」を参照してください。 ビット 3:フラッシュメモリコントロールレジスタイネーブル(FLSHE) フラッシュメモリの制御レジスタ、低電圧電力状態の制御レジスタおよび周辺モジュー ルの制御レジスタの CPU アクセスを制御するビットです。詳しくは「3.2.4 シ リ ア ル タ イ マ コ ン ト ロ ー ル レ ジ ス タ ( S T CR) 」を参照してください。 ビット 2:リザーブビット リザーブビットです。1 をセットしないでください。 ビット 1、0:インターナルクロックソースセレクト 1、0(ICKS1、ICKS0) TC R の C KS2〜C KS0 ビットと共に、TC NT に入力するクロックを選択します。詳細は 「12.2.4 タイマコントロールレジスタ(TCR)」を参照してください。 369 12. 8 ビットタイマ(TMR) 12.2.7 システムコントロールレジスタ(SYSCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CS2E IOSE INTM1 INTM0 XRST NMIEG HIE RAME 0 0 0 0 1 0 0 1 R/W R/W R R/W R R/W R/W R/W ここではビット 1 のみ説明します。8 ビットタイマ以外の詳細は、「3 .2 .2」、「5 .2 .1」 の「システム コントロールレジスタ(S YS CR )」、および関連するモジ ュールの説明を 参照してください。 ビット 1:ホストインタフェースイネーブル(HIE) 8 ビットタイマ(チャネル X、Y)のデータレジスタと制御レジスタ、タイマコネクシ ョンの制御レジスタの CPU アクセスを制御します。 ビット 1 説 明 HIE 0 8 ビットタイマ(チャネル X、Y)のデータレジスタと制御レジスタ、タイマコ ネクションの制御レジスタの CPU アクセスを許可 1 8 ビットタイマ(チャネル X、Y)のデータレジスタと制御レジスタ、タイマコ ネクションの制御レジスタの CPU アクセスを禁止 370 (初期値) 12. 12.2.8 8 ビットタイマ(TMR) タイマコネクションレジスタ S(TCONRS) 7 ビット : 6 5 4 3 2 0 1 TMRX/Y ISGENE HOMOD1 HOMOD0VOMOD1 VOMOD0 CLMOD1 CLMOD0 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W TCONRS は 8 ビットのリード/ライト可能なレジスタで、TMRX、TMRY のレジスタア クセスおよびタイマコネクションの動作を制御します。 TCONRS はリセットまたはハードウェアスタンバイモード時にH'00に初期化されます。 ビット 7:TMRX/TMRY アクセス選択(TMRX/Y) TMRX および TMRY のレジスタは、SYSCR の HIE ビットが 0 の場合にのみアクセス可 能です。H8S /2148 シリーズでは、TMR X の一部と TMR Y はメモリ空間の同一のアドレス (H'FFF0〜H'FFF5)に割当てられており、どちらをアクセスするかを TMRX/Y ビットで制 御します。H8S /2144 シリーズ、H8S /2147N では、本ビットによる TMR Y レジスタのアク セス制御はありません。 ビット 7 12.2.9 アクセス可能なレジスタ TMRX/Y H'FFF0 H'FFF1 H'FFF2 H'FFF3 H'FFF4 H'FFF5 H'FFF6 H'FFF7 0 TMRX TMRX TMRX TMRX TMRX TMRX TMRX TMRX (初期値) TCRX TCSRX TICRR TICRF TCNTX TCORC 1 TMRY TMRY TMRY TMRY TMRY TMRY TCRY TCSRY TCORAY TCORBY TCNTY TCORAX TCORBX TISR インプットキャプチャレジスタ(TICR)【TMRX 追加機能】 ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 : − − − − − − − − R/W TIC R は 8 ビットの内部レジスタです。外部リセット入力の立ち下がりで TC NT の内容 が TICR に転送されます。CPU から TICR を直接リード/ライトすることはできません。 TICR の機能はタイマコネクションで使用されます。詳細は「第 13 章 タイマコネクシ ョン」を参照してください。 371 12. 8 ビットタイマ(TMR) 12.2.10 タイムコンスタントレジスタ C(TCORC)【TMRX 追加機能】 ビット : 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W R/W : TCORC は 8 ビットのリード/ライト可能なレジスタです。 TC OR C と TIC R の内容の和と TC NT の内容は常に比較されており、両者の値が一致す るとコン ペアマッチC信 号が発生されま す。ただし、TC OR C へのライトサイ クルの T2 ステートと TICR のインプットキャプチャサイクルでの比較は禁止されています。 TCORC は、リセットまたはハードウェアスタンバイモード時に H'FF に初期化されます。 TCORC の機能はタイマコネクションで使用されます。詳細は「第 13 章 タイマコネク ション」を参照してください。 12.2.11 インプットキャプチャレジスタ R、F(TICRR、TICRF) 【TMRX 追加機能】 ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 : R R R R R R R R R/W TICRR、TICRF は 8 ビットのリード専用のレジスタです。 TIC R R、TIC R F は、TC ONR I の IC S T ビットが 1 にセットされている場合に、外部リセ ット入力の立ち上がり→立ち下がりの順で TCNT の内容が転送されます。1 回のキャプチ ャ動作が終了すると ICST ビットは 0 にクリアされます。 TIC R R、TIC R F は、リセットまたはハードウェアスタンバイモード時に H'00 に初期化 されます。 TICRR、TICRF の機能はタイマコネクションで使用されます。詳細は「12.3.6 ットキャプチャ動作」および「第 13 章 372 インプ タイマコネクション」を参照してください。 12. 12.2.12 8 ビットタイマ(TMR) タイマインプットセレクトレジスタ(TISR)【TMRY 追加機能】 7 6 5 4 3 2 1 0 − − − − − − − IS 初期値 : 1 1 1 1 1 1 1 0 R/W − − − − − − − R/W ビット : : TISR は、8 ビットのリード/ライト可能なレジスタで、カウンタ外部クロック/リセッ ト入力の信号源を選択します。 TISR は、リセットまたはハードウェアスタンバイモード時に、H'FE に初期化されます。 ビット 7〜1:リザーブビット リザーブビットです。0 をライトしないでください。 ビット 0:インプットセレクト(IS) TMR Y のカウンタ外部クロック/リセット入力の信号源として、内部同期信号(I VG 信 号)また はタイマクロッ ク/リセット 入力端子(VS YNC I/TMIY ( TMC IY/TMR IY))を 選択します。 ビット 0 説 明 IS 0 IVG 信号を選択(H8S/2148 シリーズ) (初期値) 外部クロック/リセット入力禁止(H8S/2144 シリーズ、H8S/2147N) 1 VSYNCI/TMIY (TMCIY/TMRIY)を選択 373 12. 8 ビットタイマ(TMR) 12.2.13 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MSTP12 ビットおよび MSTP8 ビットを 1 にセットすると、バスサイクルの終了時点で 8 ビットタイマ(チャネル 0、1)と(チャネル X、Y)はそれぞれ動作を停止してモジュー ルストップモードへ遷移します。詳細は、「25.5 モジュールストップモード」を参照し てください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRH ビット 4:モジュールストップ(MSTP12) 8 ビットタイマ(チャネル 0、1)のモジュールストップモードを指定します 説 MSTCRH 明 ビット 4 MSTP12 0 8 ビットタイマ(チャネル 0、1)のモジュールストップモード解除 1 8 ビットタイマ(チャネル 0、1)のモジュールストップモード設定 (初期値) MSTPCRH ビット 0:モジュールストップ(MSTP8) 8 ビットタイマ(チャネル X、Y)とタイマコネクションのモジュールストップモード を指定します 説 MSTCRH 明 ビット 0 MSTP8 0 8 ビットタイマ(チャネル X、Y)とタイマコネクションのモジュールストップ モード解除 1 8 ビットタイマ(チャネル X、Y)とタイマコネクションのモジュールストップ モード設定 374 (初期値) 12. 8 ビットタイマ(TMR) 12.3 動作説明 12.3.1 TCNT のカウントタイミング TCNT は、入力されたクロック(内部クロックまたは外部クロック)によりカウントア ップされます。 (1)内部クロック動作の場合 TC R の C KS2〜C KS0 ビットの設定により、システムクロック(φ)を分周して作られ る内部クロックが選択されます。このタイミングを図 12.2 に示します。 φ 内部クロック TCNT入力 クロック TCNT N−1 N N+1 図 12.2 内部クロック動作時のカウントタイミング (2)外部クロック動作の場合 TC R の C KS2〜C KS0 ビットの設定により、外部クロックの立ち上がりエッジ、立ち下 がりエッジ、立ち上がり/立ち下がり両エッジのいずれかによるカウントアップが選択さ れます。 なお、外部クロックのパルス幅は、単エッジの場合は 1. 5 ステート以上、両エッジの場 合は 2. 5 ステート以上必要です。これ以下のパルス幅では、正しく動作しませんので注意 してください。 図 1 2.3 に、外部クロックとして、立ち上がり/立ち下がり両エッジの場合のタイミン グを示します。 375 12. 8 ビットタイマ(TMR) φ 外部クロック 入力端子 TCNT入力 クロック TCNT N−1 N N+1 図 12.3 外部クロック動作時のカウントタイミング 12.3.2 コンペアマッチタイミング (1)コンペアマッチフラグ A、B(CMFA、CMFB)のセットタイミング TC SR の C MFA、C MFB は、TC OR と TC NT の値が一致したとき出力されるコンペアマ ッチ 信号 により 1 にセ ット されま す。コ ンペ アマッ チ信号 は一 致した 最後の ステ ート (TCNT が一致したカウント値を更新するタイミング)で発生します。 したがって、TCNT と TCOR が一致した後、カウントアップクロックが発生するまでコ ンペアマッチ信号は発生しません。このタイミングを図 12.4 に示します。 φ TCNT N TCOR N コンペアマッチ信号 CMF 図 12.4 CMF セットタイミング 376 N+1 12. 8 ビットタイマ(TMR) (2)タイマ出力タイミング タイマ出力はコンペアマッチ A、B が発生したとき、TC SR の OS 3〜OS 0 ビットで選択 された状態(変化しない、0 出力、1 出力、トグル出力)で出力されます。 図 12.5にコンペアマッチ A信号によるトグル出力の場合の出力タイミングを示します。 φ コンペアマッチA 信号 タイマ出力端子 図 12.5 タイマ出力タイミング (3)コンペアマッチによるクリア TCNT は、TCR の CCLR1、CCLR0 ビットの選択によりコンペアマッチ A またはコンペ アマッチ B でクリアされます。このクリアされるタイミングを図 12.6 に示します。 φ コンペアマッチ信号 TCNT N H'00 図 12.6 コンペアマッチによるクリアタイミング 377 12. 8 ビットタイマ(TMR) 12.3.3 TCNT の外部リセットタイミング TC NT は、TC R の C CLR 1、C CLR 0 ビットの選択により外部リセット入力の立ち上がり エッジでクリアされます。クリアパルスの幅は、1. 5 ステート以上必要となります。この クリアされるタイミングを図 12.7 に示します。 φ 外部リセット 入力端子 クリア信号 TCNT N−1 N H'00 図 12.7 外部リセット入力によるクリアタイミング 12.3.4 オーバフローフラグ(OVF)のセットタイミング TCSR の OVF は、TCNT がオーバフロー(H'FF→H'00)したとき出力されるオーバフロ ー信号により 1 にセットされます。 このときのタイミングを図 12.8 に示します。 φ TCNT H'FF H'00 オーバフロー信号 OVF 図 12.8 OVF のセットタイミング 12.3.5 カスケード接続時の動作 TCR0、TCR1 のいずれか一方の CKS2〜CKS0 ビットを B'100 に設定すると、2 チャネル の 8 ビットタイマはカスケード接続されます。この場合、1 本の 16 ビットタイマとして使 用する(16 ビットタイマモード)か、またはチャネル 0 の 8 ビットタイマのコンペアマッ チをチャネル 1 のタイマでカウントする(コンペアマッチカウントモード)ことができま す。このとき、本タイマは以下のように動作します。 378 12. 8 ビットタイマ(TMR) (1)16 ビットカウントモード TC R0 の C KS2〜C KS0 ビットが B '100 のとき、本タイマはチャネル 0 を上位 8 ビット、 チャネル 1 を下位 8 ビットとする 1 チャネルの 16 ビットタイマとして動作します。 (a)コンペアマッチフラグのセット ・TC SR 0 の C MF フラグは、16 ビットのコンペアマッチが発生したとき 1 にセット されます。 ・TCSR1 の CMF フラグは、下位 8 ビットのコンペアマッチが発生したとき 1 にセッ トされます。 (b)カウンタクリア指定 ・TC R0 の C CLR 1、C CLR 0 ビットでコンペアマッチによるカウンタクリアをそれぞ れ設定した場合、16 ビットのコンペア マッチが発生したとき 16 ビットカウンタ (TC NT0、TC NT1 の両方)がクリアされます。また、TMR I0 端子によるカウンタ クリアを設定した場合も、16 ビットカウンタ(TCNT0、TCNT1 の両方)がクリア されます。 ・TC R1 の C CLR 1、C CLR 0 ビットの設定は無効になります。下位 8 ビットのみのカ ウンタクリアはできません。 (c)端子出力 ・TCSR0 のOS3〜OS0 ビットによるTMO0 端子の出力制御は16ビットのコンペアマ ッチ条件にしたがいます。 ・TC SR 1 の OS 3〜OS 0 ビットによる TMO1 端子の出力制御は下位 8 ビットのコンペ アマッチ条件にしたがいます。 (2)コンペアマッチカウントモード TCR1 の CKS2〜CKS0 ビットが B'100 のとき、TCNT1 はチャネル 0 のコンペアマッチ A をカウントします。 チャネル 0、1 の制御はそれぞれ独立に行われます。CMF フラグのセット、割込みの発 生、TMO 端子の出力、カウンタクリアなどは、各チャネルの設定にしたがいます。 (3)使用上の注意 16 ビ ットカ ウン タモー ドとコ ンペア マッ チカウ ントモ ードを 同時に 設定 した場 合、 TC NT0、TC NT1 の入力クロックが発生しなくな るため、カウンタが停止して動作しませ ん。この設定は行わないでください。 379 12. 8 ビットタイマ(TMR) 12.3.6 インプットキャプチャ動作 TMRX には、インプットキャプチャレジスタ(TICR、TICRR、TICRF)があります。TICRR と TICRF は、タイマコネクションの TCONRI レジスタの ICST ビットの制御で 1 回限りの キャプチャ動作をして、短いパルスのパル ス幅を測定することができます。IC S T ビット が 1 にセットされた後、TMR IX に立ち上がりエッジ→立ち下がりエッジの順でエッジが 検出されると、そのときの TC NT の内容が TIC R R、TIC R F にそれぞれ転送され、IC S T ビ ットは 0 にクリアされます。 また、TC ONR I レジスタのその他のビットの設定により TMR IX 入力信号を切り替える ことができます。 (1)インプットキャプチャ入力タイミング インプットキャプチャ機能を設定した場合の動作タイミングを図 12.9 に示します。 φ TMRIX インプットキャプチャ 信号 TCNTX n TICRR M TICRF m n+1 n N N+1 n m N 図 12.9 インプットキャプチャ動作タイミング また、TICRR、TICRF のリード時に、インプットキャプチャ入力を入力するとインプッ トキャプチャ信号は 1 システムクロック(φ)遅延されます。このタイミングを図 1 2.10 に示します。 TICRR、TICRFのリードサイクル T1 T2 φ TMRIX インプットキャプチャ 信号 図 12.10 インプットキャプチャ信号タイミング (TICRR、TICRF のリード時に、インプットキャプチャ入力を入力した場合) 380 12. 8 ビットタイマ(TMR) (2)インプットキャプチャ入力信号の選択 タイマコネクションの TC ONR I レジスタの各ビットの設定により、TMR X のインプッ トキャプチャ入力信号(TMRIX)を切り替えることができます。 インプットキャプチャ信号の選択を図 12.11 および表 12.3 に示します。 詳細は「13.2.1 タイマコネクションレジスタ I(TCONRI)」を参照してください。 TMRX TMIX端子 位相反転 信号選択 TMRI1端子 位相反転 TMCI1端子 位相反転 HFINV、 HIINV TMRIX SIMOD1、 SIMOD0 ICST 図 12.11 インプットキャプチャ信号の切り替え 表 12.3 インプットキャプチャ信号の選択 説 TCONRI 明 ビット 4 ビット 7 ビット 6 ビット 3 ICST SIMOD1 SIMOD0 HFINV HIINV 0 − − − − インプットキャプチャ機能を使用しない 1 0 0 0 − TMIX 端子の入力信号を選択 1 − TMIX 端子入力の反転信号を選択 − 0 TMRI1 端子の入力信号を選択 − 1 TMRI1 端子入力の反転信号を選択 − 0 TMCI1 端子の入力信号を選択 − 1 TMCI1 端子入力の反転信号を選択 1 1 1 ビット 1 381 12. 8 ビットタイマ(TMR) 12.4 割込み要因 8 ビットタイマ TMR 0、TMR 1、TMR Y の割込み要因は、C MIA、C MIB 、OVI の 3 種類 があります。また、TMRX の割込み要因は、ICIX のみです。表 12.4〜表 12.6 に各割込み 要因と優先順位を示します。各割込み要因は、TCR または TCSR の各割込みイネーブルビ ットにより許可または禁止が設定され、それぞれ独立に割込みコントローラに送られます。 また、TMR 0、TMR 1、TMR Y の C MIA、C MIB 割込みにより DTC を起動することがで きます。 表 12.4 8 ビットタイマ TMR0、TMR1 の割込み要因 割込み要因 内 容 DTC の起動 優先順位 高 CMIA CMFA による割込み 可 CMIB CMFB による割込み 可 OVI OVF による割込み 不可 低 表 12.5 8 ビットタイマ TMRX の割込み要因 割込み要因 内 容 ICF による割込み ICIX DTC の起動 不可 表 12.6 8 ビットタイマ TMRY の割込み要因 割込み要因 382 内 容 DTC の起動 優先順位 高 CMIA CMFA による割込み 可 CMIB CMFB による割込み 可 OVI OVF による割込み 不可 低 12. 8 ビットタイマ(TMR) 12.5 8 ビットタイマの使用例 任意のデューティパルスを出力させた例を図 12.12 に示します。これは次に示すように 設定します。 [1]TC OR A のコンペアマッチにより TC NT がクリアされるように、TC R の C CLR 1 ビッ トを 0 にクリア、CCLR0 ビットを 1 にセットします。 [2]TCORA のコンペアマッチにより 1 出力、TCORB のコンペアマッチにより 0 出力にな るように TCSR の OS3〜OS0 ビットを B'0110 に設定します。 以上の設定により周期が TC OR A、パルス幅が TC OR B の波形をソフトウェアの介在な しに出力できます。 TCNT H'FF カウンタクリア TCORA TCORB H'00 TMO 図 12.12 パルス出力例 383 12. 8 ビットタイマ(TMR) 12.6 使用上の注意 8 ビットタイマの動作中、次のような競合が発生した場合、以下のような動作が起こる ので注意してください。 12.6.1 TCNT のライトとカウンタクリアの競合 TC NT のライトサイクル中の T2 ステートで、カウンタクリアが発生すると、カウンタ へのライトは行われず、クリアが優先されます。 これを図 12.13 に示します。 CPUによるTCNTライトサイクル T1 T2 φ アドレス TCNTアドレス 内部ライト信号 カウンタクリア信号 TCNT N 図 12.13 TCNT のライトとクリアの競合 384 H'00 12. 12.6.2 8 ビットタイマ(TMR) TCNT のライトとカウントアップの競合 TC NT のライトサイクル中の T2 ステートでカウントアップが発生しても、カウントア ップされず、カウンタライトが優先されます。 これを図 12.14 に示します。 CPUによるTCNTライトサイクル T1 T2 φ アドレス TCNTアドレス 内部ライト信号 TCNT入力クロック TCNT N M カウンタライトデータ 図 12.14 TCNT のライトとカウントアップの競合 12.6.3 TCOR のライトとコンペアマッチの競合 TC OR のライトサイクル中の T2 ステートで、コンペアマッチが発生しても、TC OR の ライトが優先され、コンペアマッチ信号は禁止されます。これを図 12.15 に示します。 TMR X では、IC R のインプットキャプチャは TC OR C へのライトと同様に、コンペアマ ッチと競合します。 このときもインプットキャプチャが優先され、コンペアマッチ信号は禁止されます。 385 12. 8 ビットタイマ(TMR) CPUによるTCORライトサイクル T1 T2 φ アドレス TCORアドレス 内部ライト信号 TCNT N N+1 TCOR N M TCORライトデータ コンペアマッチ信号 禁止されます 図 12.15 TCOR のライトとコンペアマッチの競合 12.6.4 コンペアマッチ A、B の競合 コンペアマッチ A、B が同時に発生すると、コンペアマッチ A に対して設定されている 出力状態と、コンペアマッチ B に対して設定されている出力状態のうち、表 1 2.7 に示す タイマ出力の優先順位にしたがって動作します。 表 12.7 タイマ出力の優先順位 出力設定 トグル出力 優先順位 高 1 出力 0 出力 変化しない 386 低 12. 12.6.5 8 ビットタイマ(TMR) 内部クロックの切り替えと TCNT の動作 内部クロックを切り替えるタイミングによっては、TCNT がカウントアップされてしま う場合があります。内部クロックの切り替えタイミング(CKS1、CKS0 ビットの書き換え) と TCNT 動作の関係を表 12.8 に示します。 内部クロックから TCNT クロックを生成する場合、内部クロックの立ち下がりエッジで 検出しています。そのため表 12.8 の No.3 のように、High→Low レベルになるようなクロ ックの切り替えを行うと、切り替えタイミングを立ち下がりエッジとみなして TCNT クロ ックが発生し、TCNT がカウントアップされてしまいます。 また、内部クロックと外部クロックを切り替えるときも、TCNT がカウントアップされ ることがあります。 表 12.8 内部クロックの切り替えと TCNT の動作 No. CKS1、CKS0 ビット TCNT クロックの動作 書き換えタイミング 1 Low→Low レベル* 1 の切り替え 切り替え前の クロック 切り替え後の クロック TCNT クロック TCNT N N+1 CKSビット書き換え 2 Low→High レベル* 2 の切り替え 切り替え前の クロック 切り替え後の クロック TCNT クロック TCNT N N+1 N+2 CKSビット書き換え 387 12. 8 ビットタイマ(TMR) No. CKS1、CKS0 ビット TCNT クロックの動作 書き換えタイミング 3 High→Low レベル* 3 の切り替え 切り替え前の クロック 切り替え後の クロック *4 TCNT クロック TCNT N N+1 N+2 CKSビット書き換え 4 High→High レベル の切り替え 切り替え前の クロック 切り替え後の クロック TCNT クロック TCNT N N+1 N+2 CKSビット書き換え 【注】 *1 Low レベル→停止、および停止→Low レベルの場合を含みます。 *2 停止→High レベルの場合を含みます。 *3 High レベル→停止を含みます。 *4 切り替えのタイミングを立ち下がりエッジとみなすために発生し、TCNT はカウントア ップされてしまいます。 388 13. タイマコネクション H8S/2148 シリーズに内蔵しています。 H8S/2144 シリーズ、H8S/2147N には内蔵していません。 第 13 章 13.1 13.2 13.3 目次 概要 ....................................................................................................................................... 391 13.1.1 特長 ...................................................................................................... 391 13.1.2 ブロック図 ............................................................................................ 392 13.1.3 端子構成................................................................................................ 393 13.1.4 レジスタ構成 ......................................................................................... 394 各レジスタの説明 ................................................................................................................... 395 13.2.1 タイマコネクションレジスタ I(TCONRI) ............................................. 395 13.2.2 タイマコネクションレジスタ O(TCONRO) .......................................... 397 13.2.3 タイマコネクションレジスタ S(TCONRS) ........................................... 399 13.2.4 エッジセンスレジスタ(SEDGR) .......................................................... 401 13.2.5 モジュールストップコントロールレジスタ(MSTPCR) .......................... 404 動作説明................................................................................................................................. 406 13.3.1 PWM デコード(PDC 信号生成) ............................................................ 406 13.3.2 クランプ波形生成(CL1・CL2・CL3 信号生成) ..................................... 407 13.3.3 8 ビットタイマ分周波形周期測定 ............................................................ 408 13.3.4 IHI 信号の 2fH モディファイ ................................................................... 410 13.3.5 IVI 信号の立ち下がりモディファイ・IHI 同期.......................................... 411 13.3.6 内部同期信号の生成(IHG 信号、IVG 信号、CL4 信号の生成)................ 413 13.3.7 HSYNCO 出力 ........................................................................................ 415 13.3.8 VSYNCO 出力 ........................................................................................ 416 13.3.9 CBLANK 出力 ........................................................................................ 417 13. 390 タイマコネクション 13. タイマコネクション 13.1 概要 本 LSI は、入力信号や、1 チャネルのフリーランニングタイマ(FRT)と 3 チャネルの 8 ビットタイマ(TMR 1、 TMR X、TMR Y)の入出力を組合わせて相互 に接続することがで きます。また、これを利用して、P WM デコードやクランプ波形生成などの複雑な機能を 実現することができます。各タイマは、初期状態では単独のタイマとして動作するよう設 定されています。 13.1.1 特長 タイマコネクションの特長を以下に示します。 ■ 5 本の入力端子、4 本の出力端子をもち、それぞれ位相反転を指定可能です。 タイマコネクション内部で利用する信号は、すべて正論理を前提としています。 ■ 入力端子には、信号入力検出を容易にするエッジ検出回路が接続されています。 ■ TMRX で PWM 入力信号のデコードが可能です。 ■ TMRX でクランプ波形生成が可能です。 ■ TMR 1 で分周した外部クロック信号を、F RT のキャプチャ入力信号として利用できま す。 ■ FRT と TMRY で内部同期信号を生成できます。 ■ 入力信号やタイマコネクションで生成・モディファイした信号を選択して出力できま す。 391 13. タイマコネクション 13.1.2 ブロック図 タイマコネクションのブロック図を図 13.1 に示します。 VSYNCI / FTIA / TMIY VFBACKI / FTIB エッジ 検出 リード フラグ 位相反転 エッジ 検出 位相反転 IVI 信号 IVI 信号 選択 SET sync RES FTIA FRT 入力 選択 FTIC FTID IVO 信号 選択 垂直同期信号 モディファイ 16ビット FRT FRT 出力選択 VSYNCO / FTOA FTOA FTIB OCRA +VR, +VF CMA(R) FTIC ICRD +1M, +2M CMA(F) コンペアマッチ FTOB FTID CM1M CM2M SET IVG 信号 RES 垂直同期 信号 生成回路 IVO 信号 TMIY 信号 選択 SET RES 2f H マスク 生成回路 2f H マスク / flag TMRI/TMCI 8ビット TMRY TMO 位相反転 ブランク波形生成回路 IHO 信号 選択 TMR1 入力選択 位相反転 IHG 信号 CBLANK 位相反転 TMO1 出力選択 CMB TMCI 8ビット TMO TMR1 TMRI HSYNCO / TMO1 TMOX PDC 信号 CL4 生成回路 PWM デコード HSYNCI / TMCI1 CSYNCI / TMRI1 HFBACKI / FTCI / TMIX 位相反転 エッジ 検出 位相反転 IHI 信号 TMCI IHI 信号選択 TMRI エッジ 検出 CM1C 位相反転 エッジ 検出 リード フラグ 8ビット TMRX CMB ICR ICR +1C コンペアマッチ CMA クランプ波形生成回路 図 13.1 タイマコネクションのブロック図 392 CL4 信号 TMO CL1 信号 CL2 信号 CL3 信号 CLO 信号選択 位相反転 CLAMPO / FTIC 13. 13.1.3 タイマコネクション 端子構成 タイマコネクションの入出力端子を表 13.1 に示します。 表 13.1 端子構成 名 称 垂直同期信号入力端子 略 称 VSYNCI 入出力 入力 機 能 垂直同期信号入力端子 または FTIA 入力端子および TMIY 入力端子 水平同期信号入力端子 HSYNCI 入力 水平同期信号入力端子 または TMCI1 入力端子 複合同期信号入力端子 CSYNCI 入力 複合同期信号入力端子 または TMRI1 入力端子 予備垂直同期信号入力端子 VFBACKI 入力 予備垂直同期信号入力端子 または FTIB 入力端子 予備水平同期信号入力端子 HFBACKI 入力 予備水平同期信号入力端子 または FTCI 入力端子および TMIX 入力端子 垂直同期信号出力端子 VSYNCO 出力 垂直同期信号出力端子 または FTOA 出力端子 水平同期信号出力端子 HSYNCO 出力 水平同期信号出力端子 または TMO1 出力端子 クランプ波形出力端子 CLAMPO 出力 クランプ波形出力端子 または FTIC 入力端子 ブランク波形出力端子 CBLANK 出力 ブランク波形出力端子 393 13. タイマコネクション 13.1.4 レジスタ構成 タイマコネクションのレジスタ構成を表 1 3.2 に示します。タイマコネクションのレジ スタは、SYSCR の HIE ビットが 0 の場合にのみアクセス可能です。 表 13.2 レジスタ構成 名 称 略 称 R/W 初期値 アドレス* 1 タイマコネクションレジスタ I TCONRI R/W H'00 H'FFFC タイマコネクションレジスタ O TCONRO R/W H'00 H'FFFD タイマコネクションレジスタ S TCONRS R/W エッジセンスレジスタ モジュールストップコントロールレジスタ 【注】 H'00 2 H'00* SEDGR R/(W)* MSTPRH R/W H'3F H'FF86 MSTPRL R/W H'FF H'FF87 *1 アドレスの下位 16 ビットを示しています。 *2 ビット 7〜2:フラグをクリアするための 0 ライトのみ可能です。 *3 ビット 1、0:端子の状態を反映しているため、値は不定です。 394 H'FFFE 3 H'FFFF 13. タイマコネクション 13.2 各レジスタの説明 13.2.1 タイマコネクションレジスタ I(TCONRI) ビット: 7 6 5 SIMOD1 SIMOD0 SCONE 初期値: R/W: 4 3 2 1 0 ICST HFINV VFINV HIINV VIINV 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W TC ONR I は、8 ビットのリード/ライト可能なレジスタで、タイマ相互の接続、同期信 号入力の信号源や位相反転などを制御します。 TCONRI は、リセットまたはハードウェアスタンバイモード時に、H'00 にイニシャライ ズされます。 ビット 7、6:入力同期モード選択 1、0(SIMOD1、SIMOD0) IHI 信号、IVI 信号の信号源を選択します。 ビット 7 ビット 6 SIMOD1 SIMOD0 0 0 無信号 1 S オン G モード CSYNCI 入力 PDC 入力 0 コンポジットモード HSYNCI 入力 PDC 入力 1 セパレートモード HSYNCI 入力 VSYNCI 入力 1 説 モード名称 明 IHI 信号 IVI 信号 (初期値) HFBACKI 入力 VFBACKI 入力 ビット 5:同期信号接続イネーブル(SCONE) FRT の FTI 入力、TMR1 の TMCI1/TMRI1 入力の信号源を選択します。 ビット 5 SCONE 0 説 モード名称 通常接続 FTIA FTIB 明 FTIC FTID FTIA 入力 FTIB 入力 FTIC 入力 FTID 入力 TMCI1 (初期値) 1 同期信号接続 モード TMCI1 IVI 信号 TMO1 VFBACKI IHI 信号 信号 入力 TMRI1 TMRI1 入力 入力 IHI 信号 IVI 反転信号 395 13. タイマコネクション ビット 4:インプットキャプチャスタートビット(ICST) TMRX の外部リセット入力(TMRIX)は IHI 信号に接続されています。TMRX にはイン プットキャプチャレジスタ(TIC R 、TIC R R、TIC R F)があります。TIC R R と TIC R F は、 IC S T ビットの制御で 1 回限りのキャプチャ動作をして、短いパルスのパルス幅を測定す ることができます。IC S T ビットが 1 にセットされた後、TMR IX に立ち上がりエッジ→立 ち下がりエッジの順でエッジが検出されると、そのときの TCNT の内容が TICRR、TICRF にそれぞれキャプチャされ、ICST ビットはクリアされます。 ビット 4 説 明 ICST 0 TICRR、TICRF のインプットキャプチャ機能を停止 (初期値) 【クリア条件】 TMRIX に、立ち上がりエッジ→立ち下がりエッジの順でエッジを検出 1 TICRR、TICRF のインプットキャプチャ機能が動作中 (TMRIX の立ち上がりエッジ→立ち下がりエッジ検出待ち状態) 【セット条件】 ICST=0 のリード後、1 をライトしたとき ビット 3〜0:入力同期信号反転(HFINV、VFINV、HIINV、VIINV) 予備水平同期信号(HFBACKI)、予備垂直同期信号(VFBACKI)、水平同期信号・複 合同期信号(HSYNCI、CSYNCI)および垂直同期信号(VSYNCI)の入力位相の反転を選 択します。 ビット 3 説 明 HFINV 0 HFBACKI 端子の状態をそのまま HFBACKI 入力とする 1 HFBACKI 端子の状態を反転して HFBACKI 入力とする ビット 2 説 (初期値) 明 VFINV 396 0 VFBACKI 端子の状態をそのまま VFBACKI 入力とする 1 VFBACKI 端子の状態を反転して VFBACKI 入力とする (初期値) 13. ビット 1 説 タイマコネクション 明 HIINV 0 HSYNCI、CSYNCI 端子の状態をそのまま HSYNCI、CSYNCI 入力とする (初期値) 1 HSYNCI、CSYNCI 端子の状態を反転して HSYNCI、CSYNCI 入力とする ビット 0 説 明 VIINV 13.2.2 0 VSYNCI 端子の状態をそのまま VSYNCI 入力とする 1 VSYNCI 端子の状態を反転して VSYNCI 入力とする (初期値) タイマコネクションレジスタ O(TCONRO) ビット: 7 6 5 4 3 2 HOE VOE CLOE CBOE HOINV VOINV 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 初期値: R/W: 1 0 CLOINV CBOINV TCONRO は、8 ビットのリード/ライト可能なレジスタで、出力信号の出力制御や位相 反転などを制御します。 TC ONR O は、リセットまたはハードウェアスタンバイモード時に、H'00 にイニシャラ イズされます。 ビット 7〜4:出力許可(HOE、VOE、CLOE、CBOE) 水平同期信 号(HS YNC O)、垂直同期 信号(VS YNC O)、クランプ 波形(C LAMPO ) およびブランク波形(CBLANK)の出力の許可/禁止を制御します。出力を禁止した場合 は当該端子の状態は、ポートの DR と DDR や、F RT、TMR および P WM の設定によって 決定されます。 出力の許可/禁止の制御は、ポート、FRT や TMR の入力機能には影響を与えませんが、 FRT や TMR の入力信号源の一部は、TCONRI の SCONE ビットにより決定されます。 ビット 7 説 明 HOE 0 P44/TMO1/HIRQ1/HSYNCO 端子は、P44/TMO1/HIRQ1 端子として動作する (初期値) 1 P44/TMO1/HIRQ1/HSYNCO 端子は、HSYNCO 端子として動作する 397 13. タイマコネクション ビット 6 説 明 VOE 0 P61/FTOA/KIN1/CIN1/VSYNCO 端子は、P61/FTOA/KIN1/CIN1 端子として動作す る (初期値) 1 P61/FTOA/KIN1/CIN1/VSYNCO 端子は、VSYNCO 端子として動作する ビット 5 説 明 CLOE 0 P64/FTIC/KIN4/CIN4/CLAMPO 端子は、P64/FTIC/KIN4/CIN4 端子として動作する (初期値) 1 ビット 4 P64/FTIC/KIN4/CIN4/CLAMPO 端子は、CLAMPO 端子として動作する 説 明 CBOE 0 P27/A15/PW15/CBLANK 端子は、P27/A15/PW15 端子として動作する(初期値) 1 モード 1(内蔵 ROM 無効拡張モード)の場合: P27/A15/PW15/CBLANK 端子は、A15 端子として動作する モード 2、3(内蔵 ROM 有効モード)の場合: P27/A15/PW15/CBLANK 端子は、CBLANK 端子として動作する ビット 3〜0:出力同期信号反転(HOINV、VOINV、CLOINV、CBOINV) 水平同期信 号(HS YNC O)、垂直同期 信号(VS YNC O)、クランプ 波形(C LAMPO ) およびブランク波形(CBLANK)の出力位相の反転を選択します。 ビット 3 説 明 HOINV 0 IHO 信号をそのまま HSYNCO 出力とする 1 IHO 信号を反転して HSYNCO 出力とする ビット 2 説 (初期値) 明 VOINV 398 0 IVO 信号をそのまま VSYNCO 出力とする 1 IVO 信号を反転して VSYNCO 出力とする (初期値) タイマコネクション 13. ビット 1 説 明 CLOINV 0 CLO 信号(CL1、CL2、CL3 または CL4 信号)をそのまま CLAMPO 出力とする (初期値) 1 CLO 信号(CL1、CL2、CL3 または CL4 信号)を反転して CLAMPO 出力とする ビット 0 説 明 CBOINV 13.2.3 0 CBLANK 信号をそのまま CBLANK 出力とする 1 CBLANK 信号を反転して CBLANK 出力とする (初期値) タイマコネクションレジスタ S(TCONRS) ビット: 7 6 5 4 3 2 1 0 TMRX/Y ISGENE HOMOD1 HOMOD0VOMOD1 VOMOD0 CLMOD1 CLMOD0 初期値: R/W: 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W TCONRS は、8ビットのリード/ライト可能なレジスタで、8ビットタイマTMRX、TMRY のアクセスや、同期信号出力の信号源および生成方法を選択します。 TC ONR S は、リセットまたはハードウェアス タンバイモード時に、H'00 にイニシャラ イズされます。 ビット 7:TMRX/TMRY アクセス選択(TMRX/Y) TMRX および TMRY のレジスタは、SYSCR の HIE ビットが 0 の場合にのみアクセス可 能です。H8S /2148 シリーズでは、TMR X の一部と TMR Y はメモリ空間の同一のアドレス (H'FFF0〜H'FFF5)に割当てられており、どちらをアクセスするかを TMRX/Y ビットで制 御します。H8S /2144 シリーズ、H8S /2147N では、本ビットによる TMR Y レジスタのアク セス制御はありません。 ビット 7 説 明 TMRX/Y 0 アドレス H'FFF0〜H'FFF5 で TMRX のレジスタをアクセスする 1 アドレス H'FFF0〜H'FFF5 で TMRY のレジスタをアクセスする (初期値) 399 13. タイマコネクション ビット 6:内部同期信号選択(ISGENE) IH O 信号、IV O 信号および C LO 信号の信号源として、内部同期信号(IH G 信号、IV G 信号、CL4 信号)を選択します。 ビット 5、4:水平同期出力モード選択 1、0(HOMOD1、HOMOD0) IHO 信号の信号源および生成方法を選択します。 ビット 6 ビット 5 ビット 4 ISGENE HOMOD1 HOMOD0 0 0 0 IHI 信号(2fH モディファイなし)を選択 1 IHI 信号(2fH モディファイあり)を選択 0 CL1 信号を選択 1 説 明 (初期値) 1 1 0 0 IHG 信号を選択 1 1 0 1 ビット 3、2:垂直同期出力モード選択 1、0(VOMOD1、VOMOD0) IVO 信号の信号源および生成方法を選択します。 ビット 6 ビット 3 ビット 2 ISGENE VOMOD1 VOMOD0 0 0 0 説 IVI 信号 明 (初期値) (立ち下がりモディファイなし、IHI 同期なし)を選択 1 IVI 信号 (立ち下がりモディファイなし、IHI 同期あり)を選択 1 0 IVI 信号 (立ち下がりモディファイあり、IHI 同期なし)を選択 1 IVI 信号 (立ち下がりモディファイあり、IHI 同期あり)を選択 1 0 0 1 1 0 1 400 IVG 信号を選択 13. タイマコネクション ビット 1、0:クランプ波形モード選択 1、0(CLMOD1、CLMOD0) CLO 信号(クランプ波形)の信号源を選択します。 ビット 6 ビット 1 ビット 0 ISGENE CLMOD1 CLMOD0 0 0 0 CL1 信号を選択 1 CL2 信号を選択 0 CL3 信号を選択 1 説 明 (初期値) 1 1 0 CL4 信号を選択 0 1 1 0 1 13.2.4 エッジセンスレジスタ(SEDGR) ビット: 初期値: R/W: 7 6 5 VEDG HEDG CEDG 0 0 0 1 R/(W)* 1 R/(W)* 1 R/(W)* 4 3 2 HFEDG VFEDG PREQF 0 1 R/(W)* 0 1 R/(W)* 0 1 R/(W)* 1 0 IHI IVI ―*2 ―*2 R R 【注】 *1 フラグをクリアするための 0 ライトのみ可能です。 *2 端子の状態によって決まるため、初期値は不定です。 S EDGR は 8 ビットのレジスタで、タイマコネクション入力端子の立ち上がりエッジの 検出、2fH モディファイの成立の検出および IVI 信号 IHI 信号の位相判定に利用します。 S EDGR はリセットまたはハードウェアスタンバイモード時に上位 6 ビットは 0 にイニ シャライズされます。下位 2 ビットは端子の状態によって決まるため、初期値は不定です。 401 13. タイマコネクション ビット 7:VSYNCI エッジ(VEDG) VSYNCI 端子の立ち上がりエッジを検出します。 ビット 7 説 明 VEDG 0 【クリア条件】 (初期値) VEDG=1 の状態で VEDG をリードした後、VEDG に 0 をライトしたとき 1 【セット条件】 VSYNCI 端子の立ち上がりエッジを検出したとき ビット 6:HSYNCI エッジ(HEDG) HSYNCI 端子の立ち上がりエッジを検出します。 ビット 6 説 明 HEDG 0 【クリア条件】 (初期値) HEDG=1 の状態で HEDG をリードした後、HEDG に 0 をライトしたとき 1 【セット条件】 HSYNCI 端子の立ち上がりエッジを検出したとき ビット 5:CSYNCI エッジ(CEDG) CSYNCI 端子の立ち上がりエッジを検出します。 ビット 5 説 明 CEDG 0 【クリア条件】 (初期値) CEDG=1 の状態で CEDG をリードした後、CEDG に 0 をライトしたとき 1 【セット条件】 CSYNCI 端子の立ち上がりエッジを検出したとき 402 13. タイマコネクション ビット 4:HFBACKI エッジ(HFEDG) HFBACKI 端子の立ち上がりエッジを検出します。 ビット 4 説 明 HFEDG 0 【クリア条件】 (初期値) HFEDG=1 の状態で HFEDG をリードした後、HFEDG に 0 をライトしたとき 1 【セット条件】 HFBACKI 端子の立ち上がりエッジを検出したとき ビット 3:VFBACKI エッジ(VFEDG) VFBACKI 端子の立ち上がりエッジを検出します。 ビット 3 説 明 VFEDG 0 【クリア条件】 (初期値) VFEDG=1 の状態で VFEDG をリードした後、VFEDG に 0 をライトしたとき 1 【セット条件】 VFBACKI 端子の立ち上がりエッジを検出したとき ビット 2:プリイコライゼーションフラグ(PREQF) IH I 信号の 2fH モディファイの条件が成立したことを検出します。マスク期間中に IH I 信号に立ち上がり/立ち下がりエッジが発生したことを、2fH モディファイの条件が成立 したと表現します。詳細は「13.3.4 IHI 信号の 2fH モディファイ」を参照してください。 ビット 2 説 明 PREQF 0 【クリア条件】 (初期値) PREQF=1 の状態で PREQF をリードした後、PREQF に 0 をライトしたとき 1 【セット条件】 IHI 信号の 2fH モディファイの条件成立を検出したとき 403 13. タイマコネクション ビット 1:IHI 信号レベル(IHI) IH I 信号の現在のレベルをリードします。 IH I 信号は、TC ONR I の内容によって信号源 およ び位 相反 転が 選択 され ます。 この ビッ トを リー ドし入 力信 号の 正負 を判 定し て、 TCONRI を書き換えることにより、IHI 信号を正位相に保ってください。 ビット 1 説 明 IHI 0 IHI 信号が Low レベル 1 IHI 信号が High レベル ビット 0:IVI 信号レベル(IVI) IVI 信号の現在のレベルをリードします。IVI 信号は、TCONRI の内容によって信号源お よ び位 相 反 転が 選 択 され ま す 。こ の ビ ット を リ ード し 入 力信 号 の 正負 を 判 定し て 、 TCONRI を書き換えることにより、IVI 信号を正位相に保ってください。 ビット 0 説 明 IVI 13.2.5 0 IVI 信号が Low レベル 1 IVI 信号が High レベル モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH ビット : 7 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : R/W 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MST P13、MST P12、MST P8 ビットを 1 にセットすると、バスサイクルの終了時点で 16 ビットフリーランニングタイマ、8 ビットタイマ(チャネル0、1)、(チャネル X、Y) および タイマコネク ションはそ れぞれ動作 を停止してモ ジュールス トップモード へ遷移 します。詳細は、「25.5 モジュールストップモード」を参照してください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 404 13. タイマコネクション MSTPCRH ビット 5:モジュールストップ(MSTP13) FRT のモジュールストップモードを指定します 説 MSTPCRH 明 ビット 5 MSTP13 0 FRT のモジュールストップモード解除 1 FRT のモジュールストップモード設定 (初期値) MSTPCRH ビット 4:モジュールストップ(MSTP12) 8 ビットタイマ(チャネル 0、1)のモジュールストップモードを指定します 説 MSTCRH 明 ビット 4 MSTP12 0 8 ビットタイマ(チャネル 0、1)のモジュールストップモード解除 1 8 ビットタイマ(チャネル 0、1)のモジュールストップモード設定 (初期値) MSTPCRH ビット 0:モジュールストップ(MSTP8) 8 ビットタイマ(チャネル X、Y)とタイマコネクションのモジュールストップモード を指定します 説 MSTCRH 明 ビット 0 MSTP8 0 8 ビットタイマ(チャネル X、Y)とタイマコネクションのモジュールストップ モード解除 1 8 ビットタイマ(チャネル X、Y)とタイマコネクションのモジュールストップ モード設定 (初期値) 405 13. タイマコネクション 13.3 動作説明 13.3.1 PWM デコード(PDC 信号生成) タイマコネクションと TMRX を利用することにより、パルス幅で 0/1 を表現する PWM 信号をデコードすることができます。これには、立ち上がりエッジが一定周期で発生する 信号を IHI 信号として選択する必要があります。 TMR X の TC NT は、内部クロックをカウントし、外部リセット信号(IH I 信号)の立ち 上がりエッジでクリアされるよう設定します。TC OR B には、パルス幅判定のしきい値と なる数値をライトします。PWM デコード回路内には、IHI 信号をデータ、コンペアマッチ 信号 B(CMB)をクロックとするディレイラッチがあります。PWM デコード回路は、IHI 信号の立ち上がりによる TCNT のリセット後、最初のコンペアマッチ信号 B のタイミング での IHI 信号の状態(パルス幅判定結果)を PDC 信号として出力します。 パルス幅判定のしきい値決定のために、TMR X の TIC R R と TIC R F を用いたパルス幅測 定を利用することができます。 TMRX の TCR と TCORB の設定例を表 13.3、表 13.4 に、タイミングチャートを図 13.2 に示します。 表 13.3 TCR 設定例 ビット 略 称 内 容 7 CMIEB 0 6 CMIEA 0 5 OVIE 0 4〜3 CCLR1、 11 CKS2〜CKS0 明 コンペアマッチ、オーバフローによる割込みを禁止 外部リセット信号(IHI 信号)の立ち上がりエッジ(↑) により TCNT をクリア CCLR0 2〜0 説 001 内部クロック:φでカウント 表 13.4 TCORB(パルス幅しきい値)設定例 406 φ:10MHz φ:12MHz φ:16MHz φ:20MHz H'07 0.8μs 0.67μs 0.5μs 0.4μs H'0F 1.6μs 1.33μs 1μs 0.8μs H'1F 3.2μs 2.67μs 2μs 1.6μs H'3F 6.4μs 5.33μs 4μs 3.2μs H'7F 12.8μs 10.67μs 8μs 6.4μs 13. タイマコネクション コンペアマッチでのIHI 信号の状態を判定 IHI信号 PDC信号 TCNT TCORB (しきい値) IHI信号による カウンタリセット TCNTオーバ 2回目のコンペアマッチ フローによる でのIHI信号の状態は カウンタクリア 判定しない 図 13.2 PWM デコードタイミングチャート 13.3.2 クランプ波形生成(CL1・CL2・CL3 信号生成) タイマコネクションと TMRX を利用することにより、入力信号(IHI 信号)波形に同期 し、デューティや立ち上がり/立ち下がりが異なる信号(クランプ波形)を生成できます。 生成できるクランプ波形は、CL1 信号、CL2 信号、CL3 信号の 3 通りです。また、TMRY を利用することにより CL4 信号を生成できます。 CL1 信号は IHI 信号の立ち上がりと同一タイミングで立ち上がります。また、CL2 信号 は CL1 信号が High の時に IHI 信号の立ち下がりと同一タイミングで立ち上がります。CL1 信号と CL2 信号の立ち下がりは TCORA で指定できます。 CL3 信号の立ち上がりは IHI 信号の立ち下がりをシステムクロックでサンプリングした タイミング、立ち下がりは TCORC で指定できます。また、IHI 信号の立ち上がりでも CL3 信号は立ち下げられます。 TMR X の TC NT は、内部クロックをカウントし、外部リセット信号(IH I 信号)の立ち 上がりエッジでクリアされるよう設定します。 TCORA には CL1 信号のパルス幅となる数値をライトします。なお、TMRX のカウンタ クロックを内部クロックのφに設定した場合は、TC OR A には H'02 以上の値を、φ/2 に 設定した場合は H'01 以上の値をライトしてください。内部クロックφに設定した場合の C L1 信号パルス幅は、(TC OR A の設定値+3±0. 5)となります。C L2 信号を使用する場 合は、IHI 信号のパルス幅より大きくなるような数値を設定してください。 TCORC には CL3 信号のパルス幅となる数値をライトします。TMRX には TICR があり、 TICR は、外部リセット信号の逆のエッジ(この場合 IHI 信号の立ち下がりエッジ) で TCNT の値をキャプチャします。C L3 信号の立ち下がりタイミングは TIC R の内容と TC OR C の 内容を加算した値で決まります。なお、TC OR C の内容により設定した立ち下がりタイミ ングの前に IH I 信号の立ち上がりエッジがきた場合、IH I 信号により C L3 信号は立ち下げ られますので注意が必要です。 TMRX の TCR の設定例は表 13.3 と同様です。クランプ波形のタイミングチャートを図 13.3 と図 13.4 に示します。 C L1、C L2 信号は、立ち上がりが IH I 信号のエッジに同期し、立ち下がりがシステムク ロックに同期するため、パルス幅がシステムクロックの分解能分変動します。 407 13. タイマコネクション CL3 信号は、立ち上がり/立ち下がりともシステムクロックに同期しパルス幅は一定で すが、IHI 信号との位相関係がシステムクロックの分解能分変動します。 IHI信号 CL1信号 CL2信号 TCNT TCORA 図 13.3 クランプ波形生成タイミングチャート(CL1 信号・CL2 信号) IHI信号 CL3信号 TCNT TICR+TCORC TICR 図 13.4 クランプ波形生成タイミングチャート(CL3 信号) 13.3.3 8 ビットタイマ分周波形周期測定 タイマコネクションと TMR 1、F RT を利用することにより、IH I 信号分周波形の周期を 測定できます。TMR 1 は、IV I 信号の反転信号の立ち上がりエッジでクリアすることがで きるため、IH I 信号分周波形の立ち上がり/立ち下がりを IV I 信号にほぼ同期化すること ができます。これにより、周期判定を効率的に行うことが可能です。 IH I 信号分周波形の周期を測定する場合、TMR 1 の TC NT は、外部クロック(IH I 信号) をカウントし、外部リセット信号(IV I 信号の反転信号)の立ち上がりエッジでクリアさ れるよう設定します。TCORA には分周の倍率となる数値をライトし、TCSR の OS ビット には TMO 出力方式を指定します。 TMR1 の TCR と TCSR の設定例を表 13.5 に、IVI 信号と IHI 信号分周波形の周期測定タ イミングチャートを図 1 3.5 に示します。IH I 信号分周波形の周期は(IC R D(3) −IC R D(2) ) ×分解能で求めることができます。 408 13. タイマコネクション 表 13.5 TCR と TCSR の設定例 レジスタ ビット 略称 内容 TMR1 の 7 CMIEB 0 TCR 6 CMIEA 0 5 OVIE 0 4、3 CCLR 11 明 コンペアマッチ、オーバフローによる割込みを禁止 外部リセット信号(IVI 信号の反転信号)の立ち上がりエッ ジ(↑)により TCNT をクリア 1、0 2〜0 CKS2〜0 説 101 外部クロック(IHI 信号)の立ち上がりエッジ(↑)により TCNT をカウントアップ TMR1 の 3〜0 OS3〜0 0011 コンペアマッチ B で変化せず、 コンペアマッチAで反転出力(トグル出力):512 分周 TCSR または 1001 TCORB<TCORA の条件で、コンペアマッチ B で 1 出力、 コンペアマッチAで 0 出力:256 分周 FRT の 6 IEDGB 0/1 0:インプットキャプチャ入力 B(IHI 分周信号波形)の立ち 下がりエッジ(↓)で FRC の値を ICRB に転送 TCR 1:インプットキャプチャ入力 B(IHI 分周信号波形)の立ち 上がりエッジ(↑)で FRC の値を ICRB に転送 1、0 CKS1、0 FRT の 0 CCLRA 01 内部クロック:φ/8 で FRC をカウントアップ 0 FRC のクリアを禁止 TCSR IVI信号 IHI信号 分周波形 ICRB(4) ICRB(3) ICRB(2) ICRB(1) FRC ICRB 図 13.5 IVI 信号と IHI 信号分周波形の周期測定タイミングチャート 409 13. タイマコネクション 13.3.4 IHI 信号の 2fH モディファイ タイマコネクションの FRT を利用することにより、IHI 信号の一部に 2 倍の周波数をも つ部分が存在していても、これを除去することができます。この機能が正常動作するため には、IHI 信号のデューティは約 30%以下か約 70%以上である必要があります。 FRT の ICRD は、キャプチャしたデータに 8 ビットの OCRDM の内容および OCRDM の 内容を 2 倍して自動的に加算し、このタイミングでコンペアマッチを発生することができ ます。このふたつのコンペアマッチの間の期間をマスク期間とよびます。OCRDM には、 IHI 信号の周期の約 1/3 に相当する数値をライトします。ICRD は、IHI 信号の立ち上がり でキャプチャを行なうよう設定します。 IH O 信号選択回路に供給される IH I 信号は、通常 IH I 信号の立ち上がりでセットされ立 ち下がりでリセットされるため、波形は元となる IH I 信号と同じです。2fH モディファイ を選択すると、マスク期間中の IHI 信号のエッジ検出が禁止されます。また、マスク期間 中のキャプチャも禁止されます FRT の TCR の設定例を表 13.6 に、2fH モディファイのタイミングチャートを図 13.6 に 示します。 表 13.6 TCR、TCSR、TCOR と OCRDM の設定例 レジスタ ビット FRT の 4 略 称 IEDGD 内 容 1 明 インプットキャプチャ入力D(IHI 信号)の立ち上がりエッ ジ(↑)で FRC の値を ICRD に転送 TCR 1、0 CKS1、0 FRT の 説 01 内部クロック:φ/8 で FRC をカウントアップ 0 CCLRA 0 FRC のクリアを禁止 7 ICRDMS 1 ICRD を OCRDM を利用した動作モードに設定 TCSR FRT の TCOR FRT の OCRDM 410 7〜0 OCRDM 7〜0 H’01〜 ICRD の動作をマスクする期間を設定 H’FF 13. タイマコネクション IHI信号 2fHモディファイなし IHI信号 2fHモディファイあり マスク期間 ICRD+OCRDM×2 ICRD+OCRDM FRC ICRD 図 13.6 2fH モディファイタイミングチャート 13.3.5 IVI 信号の立ち下がりモディファイ・IHI 同期 タイマコネクションの TMR 1 を利用することにより、IV I 信号の立ち下がりを、IH I 信 号波形の指定した個数分後方へ移動することができます。また、IVI 信号の立ち下がりを、 IHI 信号の立ち上がりに同期させることができます。 8 ビットタイマ分周波形周期測定のために、TMR1 の TCNT は、外部クロック(IHI 信号) をカウントし、外部リセット信号(IV I 信号の反転信号)の立ち上がりエッジでクリアさ れるよう設定します。TOCRB には、IVI 信号立ち下げまでの IHI 信号の個数をライトしま す。 IV O 信号選択回路に供給される IV I 信号は、通常 IV I 信号の立ち上がりでセットされ立 ち下がりでリセットされるため、波形は元となる IVI 信号と同じです。立ち下がりモディ ファイを選択すると、リセットは TMR1 の TCORB のコンペアマッチで行なわれます。 上記のように生成された波形は、立ち下がりモディファイ選択の有無にかかわりなく、 立ち下がりを IHI 信号の立ち上がりに同期させることができます。 TMR 1 の TC OR B、TC R と TC SR の設定例を表 1 3.7 に、立ち下がりモディファイ・IH I 同期のタイミングチャートを図 13.7 に示します。 411 13. タイマコネクション 表 13.7 TCORB、TCR と TCSR の設定例 レジスタ ビット 略 称 内 容 TMR1 の 7 CMIEB 0 TCR 6 CMIEA 0 5 OVIE 0 4、3 CCLR 11 明 コンペアマッチ、オーバフローによる割込みを禁止 外部リセット信号(IVI 信号の反転信号)の立ち上がりエッ ジ(↑)により TCNT をクリア 1、0 2〜0 CKS2〜0 説 101 外部クロック(IHI 信号)の立ち上がりエッジ(↑)により TCNT をカウントアップ TMR1 の 3〜0 OS3〜0 0011 コンペアマッチ B で変化せず、 コンペアマッチ A で反転出力(トグル出力) TCSR または 1001 TCORB<TCORA の条件で、コンペアマッチ B で 1 出力、 コンペアマッチ A で 0 出力 TMR1 の TCORB H'03 IVI 信号の反転信号立ち上がり後、4 番目(例)の IHI 信号の (例) 立ち上がりでコンペアマッチ IHI信号 IVI信号(PDC信号) IVO信号 (立ち下がりモディファイ なし、IHI同期あり) IVO信号 (立ち下がりモディファイ あり、IHI同期なし) IVO信号 (立ち下がりモディファイ あり、IHI同期あり) TCNT 0 図 13.7 立ち下がりモディファイ・IHI 同期タイミングチャート 412 1 2 3 4 5 TCNT=TCORB(3) 13. 13.3.6 タイマコネクション 内部同期信号の生成(IHG 信号、IVG 信号、CL4 信号の生成) タイマコネクションの F RT と TMR Y を利用することにより、IH I 信号、IV I 信号に相当 する内部信号(IHG 信号、IVG 信号)を自動的に生成することができます。IHG 信号は IVG 信号の立ち上がりに同期しますので、IHG 信号周期を一定に保つためには、IVG 信号周期 の約数とする必要があります。また、IHG 信号に同期して CL4 信号を生成することができ ます。 F RT の OC R A の内容は、コンペアマッチを発生する度に、OC R AR と OC R AF の内容を 交互に、自動的に加算した内容に更新することができます。OCRAR には IVG 信号の 0 期 間に相当する値を、また OCRAF には IVG 信号の 1 期間に相当する値をライトします。IVG 信号は、OCRAR 加算後のコンペアマッチでセットされ、OCRAF 加算後のコンペアマッチ でリセットされます。 IH G 信号は 8 ビットタイマ TMR Y のタイマ出力です。TMR Y は内部クロックをカウン トし、TC OR A のコンペアマッチで TC NT をクリアして周期を定めるとともにタイマ出力 をセットするように設定します。TC OR B は、タイマ出力をリセットするように設定しま す。TMRY のリセット入力(TMRI)としては IVG 信号が接続されており、IVG 信号の立 ち上がりを TCORA のコンペアマッチと同様に扱うことができます。 CL4 信号は、IHG 信号の立ち下がりから 1 システムクロック以内の遅れで立ち上がり、 6 システムクロックの 1 期間をもつ波形です。 TMR Y の TC OR A、TC OR B、TC R と TC SR 、および、F RT の OC R AR、OC R AF と TC R の設定例を表 13.8 に、IHG 信号、IVG 信号のタイミングチャートを図 13.8 に示します。 413 13. タイマコネクション 表 13.8 OCRAR、OCRAF、TOCR、TCORA、TCORB、TCR と TCSR の設定例 レジスタ ビット 略 称 内 容 説 明 TMRY の 7 CMIEB 0 TCR 6 CMIEA 0 5 OVIE 0 4、3 CCLR1、0 01 コンペアマッチAにより TCNT をクリア 2〜0 CKS2〜0 001 内部クロック:φ/4 で TCNT をカウントアップ TMRY の TCSR 3〜0 OS3〜0 0110 コンペアマッチ、オーバフローによる割込みを禁止 コンペアマッチBで 0 出力 コンペアマッチAで 1 出力 TMRY の TOCRA H'3F(例) IHG 信号の周期はφ×256 TMRY の TOCRB H'03(例) IHG 信号の 1 の期間はφ×16 FRT の 1、0 CKS1、0 TCR FRT の OCRAR FRT の OCRAF FRT の TOCR 6 OCRAMS 01 H'7FEF (例) H'000F (例) 1 内部クロック:φ/8 で FRC をカウントアップ IVG 信号の 0 の期間は IVG 信号の周期は φ×262016 φ×262144 IVG 信号の 1 の期間は (IHG 信号の 1024 倍) φ×128 OCRA を OCRAR、OCRAF を利用した動作モードに設 定 IVG信号 OCRA(1) =OCRA(0) +OCRAF OCRA OCRA(2) =OCRA(1) +OCRAR OCRA(3) =OCRA(2) +OCRAF OCRA(4) =OCRA(3) +OCRAR FRC 6システムクロック 6システムクロック CL4信号 IHG信号 TCORA TCORB TCNT 図 13.8 IVG 信号、IHG 信号、CL4 信号のタイミングチャート 414 6システムクロック 13. 13.3.7 タイマコネクション HSYNCO 出力 HSYNCO 出力は、IHI 信号の信号源や外部回路の要求する波形によって、選択すべき信 号源 とモデ ィファ イの 有無の 意味が 異なり ます。 HS YNC O 出力 のモ ード別 の意味 を表 13.9 に示します。 表 13.9 HSYNCO 出力のモード別の意味 モード名称 無信号 IHI 信号 IHO 信号 HFBACKI IHI 信号 入力 IHO 信号の意味 HFBACKI 入力をそのまま出力 (2fH モディファイなし) IHI 信号 HFBACKI 入力に周波数が倍の部分がなけ (2fH モディファイあり) れば意味なし CL1 信号 HFBACKI 入力の 1 期間を変更して出力 IHG 信号 内部同期信号を出力 S オン G CSYNCI IHI 信号 CSYNCI 入力(複合同期信号)をそのまま モード 入力 (2fH モディファイなし) 出力 IHI 信号 CSYNCI 入力(複合同期信号)の周波数が (2fH モディファイあり) 倍の部分を除去して出力 CL1 信号 CSYNCI 入力(複合同期信号)の水平同期 信号部分を分離して出力 IHG 信号 内部同期信号を出力 コンポジット HSYNCI IHI 信号 HSYNCI 入力(複合同期信号)をそのまま モード (2fH モディファイなし) 出力 IHI 信号 HSYNCI 入力(複合同期信号)の周波数が (2fH モディファイあり) 倍の部分を除去して出力 CL1 信号 HSYNCI 入力(複合同期信号)の水平同期 入力 信号部分を分離して出力 IHG 信号 内部同期信号を出力 セパレート HSYNCI IHI 信号 HSYNCI 入力(水平同期信号)をそのまま モード 入力 (2fH モディファイなし) 出力 IHI 信号 HSYNCI 入力(水平同期信号)に周波数が (2fH モディファイあり) 倍の部分がなければ意味なし CL1 信号 HSYNCI 入力(水平同期信号)の 1 期間を 変更して出力 IHG 信号 内部同期信号出力 415 13. タイマコネクション 13.3.8 VSYNCO 出力 VSYNCO 出力は、IVI 信号の信号源や外部回路の要求する波形によって、選択すべき信 号 源と モ ディ フ ァイ の 有無 の 意味 が 異な り ます 。 VS YNC O 出 力 のモ ー ド別 の 意味 を 表 13.10 に示します。 表 13.10 VSYNCO 出力のモード別の意味 モード名称 無信号 IVI 信号 IVO 信号 VFBACKI IVI 信号 入力 IVO 信号の意味 VFBACKI 入力をそのまま出力 (立ち下がりモディファイな し、IHI 同期なし) IVI 信号 VFBACKI 入力が HFBACKI 入力に同期し (立ち下がりモディファイな ていれば意味なし し、IHI 同期あり) IVI 信号 VFBACKI 入力の立ち下がりをモディファ (立ち下がりモディファイあ イして出力 り、IHI 同期なし) IVI 信号 VFBACKI 入力の立ち下がりをモディファ (立ち下がりモディファイあ イし、HFBACKI 入力に同期し出力 り、IHI 同期あり) IVG 信号 内部同期信号を出力 S オン G PDC IVI 信号 CSYNCI/HSYNCI 入力(複合同期信号) モード、 信号 (立ち下がりモディファイな の垂直同期信号部分を分離して出力 または し、IHI 同期なし) コンポジット IVI 信号 CSYNCI/HSYNCI 入力(複合同期信号) モード (立ち下がりモディファイな の垂直同期信号部分を分離し、CSYNCI し、IHI 同期あり) /HSYNCI 入力に同期して出力 IVI 信号 CSYNCI/HSYNCI 入力(複合同期信号) (立ち下がりモディファイあ の垂直同期信号部分を分離し、立ち下が り、IHI 同期なし) りをモディファイして出力 IVI 信号 CSYNCI/HSYNCI 入力(複合同期信号) (立ち下がりモディファイあ の垂直同期信号部分を分離し、立ち下が り、IHI 同期あり) りをモディファイし、CSYNCI/HSYNCI 入力に同期して出力 IVG 信号 416 内部同期信号を出力 13. モード名称 IVI 信号 IVO 信号 タイマコネクション IVO 信号の意味 セパレート VSYNCI IVI 信号 VSYNCI 入力(垂直同期信号)をそのま モード 入力 (立ち下がりモディファイな ま出力 し、IHI 同期なし) IVI 信号 VSYNCKI 入力 (垂直同期信号) が HSYNCI (立ち下がりモディファイな 入力(水平同期信号)に同期していれば し、IHI 同期あり) 意味なし IVI 信号 VSYNCKI 入力(垂直同期信号)の立ち下 (立ち下がりモディファイあ がりをモディファイして出力 り、IHI 同期なし) 13.3.9 IVI 信号 VSYNCKI 入力(垂直同期信号)の立ち下 (立ち下がりモディファイあ がりをモディファイし、HSYNCI 入力(水 り、IHI 同期あり) 平同期信号)に同期して出力 IVG 信号 内部同期信号出力 CBLANK 出力 タイマコネクションで生成、選択した信号を用いて、複合同期信号に準じた波形(ブラ ンキング波形)を生成することができます。 ブランキング波形は 1 種類で、HFBACKI 入力と VFBACKI 入力を TCONRI の HFINV ビ ットと VF INV ビットで位相の正負を正としたものと、IV O 信号とを合成することによっ て生成します。 合成の論理を、図 13.9 に示します。 HFBACKI入力(正) VFBACKI入力(正) 立ち下がりエッジセンス リセット 立ち上がりエッジセンス セット CBLANK信号(正) Q IVO信号(正) 図 13.9 CBLANK 出力波形生成 417 13. 418 タイマコネクション 14. ウォッチドッグタイマ (WDT) 第 14 章 14.1 14.2 14.3 目次 概要 ....................................................................................................................................... 421 14.1.1 特長 ...................................................................................................... 421 14.1.2 ブロック図 ............................................................................................ 422 14.1.3 端子構成................................................................................................ 424 14.1.4 レジスタ構成 ......................................................................................... 424 各レジスタの説明 ................................................................................................................... 425 14.2.1 タイマカウンタ(TCNT) ...................................................................... 425 14.2.2 タイマコントロール/ステータスレジスタ(TCSR)............................... 425 14.2.3 システムコントロールレジスタ(SYSCR) ............................................. 429 14.2.4 レジスタアクセス時の注意 ..................................................................... 429 動作説明................................................................................................................................. 431 14.3.1 ウォッチドッグタイマモード時の動作 .................................................... 431 14.3.2 インターバルタイマモード時の動作........................................................ 433 14.3.3 オーバフローフラグ(OVF)のセットタイミング.................................... 433 14.3.4 RESO 信号出力タイミング ..................................................................... 434 14.4 割込み .................................................................................................................................... 435 14.5 使用上の注意 .......................................................................................................................... 435 14.5.1 タイマカウンタ(TCNT)のライトとカウントアップの競合 .................... 435 14.5.2 CKS2〜CKS0 ビットの書き換え .............................................................. 435 14.5.3 ウォッチドッグタイマモードとインターバルタイマモードの切り替え .............. 436 14.5.4 RES O 信号によるシステムのリセット ......................................................... 436 14.5.5 高速モード、サブアクティブモード、ウォッチモード間遷移時の カウンタ値 ............................................................................................ 436 14.5.6 OVF フラグのクリア .............................................................................. 437 14. 420 ウォッチドッグタイマ(WDT) 14. ウォッチドッグタイマ(WDT) 14.1 概要 本 LS I は 2 チャネルのウォッチドッグタイマ/ウォッチタイマ(WD T0、WD T1)を内 蔵しています。ウォッチドッグタイマは、システムの暴走などによりカウンタの値を CPU が正しく書き換えられずにオーバフローす ると、外部にオーバフロー信号(R ESO )を出 力することができます。同時に、内部リセット信号または内部 NMI 割込み信号を発生す ることができます。 ウォッチドッグタイマとして使用しないときは、インターバルタイマとして使用するこ ともできます。インターバルタイマモードの場合は、カウンタがオーバフローするごとに インターバルタイマ割込みを発生します。 14.1.1 特長 WDT には次のような特長があります。 ■ウォッチドッグタイマモードとインターバルタイマモードを切り換え可能 ■タイマカウンタがオーバフローすると内部リセットまたは内部割込みを発生 ・インターバルタイマモード時には、WOVI 割込みを発生 ・ウォッチドッグタイマモード時には、内部をリセットするか NMI 割込みを発生す るかを選択可能 ■ウォッチドッグタイマモード時、RESO を出力 ・ウォッチドッグタイマモード時にカウンタがオーバフローすると、RESO 端子から Low 信号を出力(内部リセット選択時) ■WDT0 は 8 種類、WDT1 は 16 種類のカウンタ入力クロックを選択可能 ・WDT の最大インターバルはシステムクロック周期×131072×256 ・WDT1 の入力カウンタにサブクロックを選択可能 サブクロック選択の場合、最大インターバルはサブクロック周期×256×256 421 14. ウォッチドッグタイマ(WDT) 14.1.2 ブロック図 WDT のブロック図を図 14.1(a)と図 14.1(b)に示します。 WOVI0 割込み要求信号 内部NMI 割込み要求信号*2 RESO信号*1 割込み コントロール オーバフロー ・ リセット コントロール クロック クロック 選択 内部リセット信号*1 φ/2 φ/64 φ/128 φ/512 φ/2048 φ/8192 φ/32768 φ/131072 内部クロック TCNT 内 部 バ ス TCSR モジュールバス バス インタフェース WDT0 【記号説明】 :タイマコントロール/ステータスレジスタ TCSR :タイマカウンタ TCNT 【注】*1 RESO端子は、WDT0とWDT1のどちらか一方のTCNTのオーバフローによる内部リセット信号が 発生するとLow出力となります。内部リセット信号は、先にオーバフローしたWDTのリセットが 優先になります。 *2 内部NMI割込み要求信号は、WDT0とWDT1のどちらからでも独立して出力させることができます。 割込みコントローラではWDT0とWDT1のNMI割込み要求は区別されません。 図 14.1(a)WDT0 のブロック図 422 14. WOVI1 割込み要求信号 内部NMI 割込み要求信号*2 RESO信号*1 割込み コントロール オーバフロー ・ リセット コントロール クロック クロック 選択 内部リセット信号*1 TCNT ウォッチドッグタイマ(WDT) φ/2 φSUB/2 φ/64 φSUB/4 φ/128 φSUB/8 φ/512 φSUB/16 φ/2048 φSUB/32 φ/8192 φSUB/64 φ/32768 φSUB/128 φ/131072 φSUB/256 内部クロック 内 部 バ ス TCSR モジュールバス バス インタフェース WDT1 【記号説明】 :タイマコントロール/ステータスレジスタ TCSR :タイマカウンタ TCNT 【注】*1 RESO端子は、WDT0とWDT1のどちらか一方のTCNTのオーバフローによる内部リセット信号が 発生するとLow出力となります。内部リセット信号は、先にオーバフローしたWDTのリセットが 優先になります。 *2 内部NMI割込み要求信号は、WDT0とWDT1のどちらからでも独立して出力させることができます。 割込みコントローラではWDT0とWDT1のNMI割込み要求は区別されません。 図 14.1(b)WDT1 のブロック図 423 14. ウォッチドッグタイマ(WDT) 14.1.3 端子構成 WDT の端子を表 14.1 に示します。 表 14.1 端子構成 名 称 リセット出力端子 記号 入出力 RESO 出力 機 能 ウォッチドッグタイマモード時のカ ウンタオーバフロー信号出力 外部サブクロック入力端子 EXCL 入力 WDT1 のプリスケーラの カウンタ入力クロック 14.1.4 レジスタ構成 WDT には、表 14.2 に示すように 4 本のレジスタがあります。これらのレジスタにより、 クロックの選択、WDT のモードの切り替え、リセット信号の制御などを行います。 表 14.2 レジスタ構成 チャネル 名 称 略称 R/W アドレス* 1 初期値 ライト時* 2 リード時 0 TCSR0 R/(W) * 3 H'00 H'FFA8 H'FFA8 タイマカウンタ 0 TCNT0 R/W H'00 H'FFA8 H'FFA9 タイマコントロール/ TCSR1 R/(W) * 3 H'00 H'FFEA H'FFEA タイマカウンタ 1 TCNT1 R/W H'00 H'FFEA H'FFEB システムコントロールレジスタ SYSCR R/W H'09 タイマコントロール/ ステータスレジスタ 0 1 ステータスレジスタ 1 共通 【注】 H'FFC4 *1 アドレスの下位 16 ビットを示しています。 *2 ライトについては、「14.2.4 レジスタアクセス時の注意」を参照してください。 *3 ビット 7 は、フラグをクリアするための 0 ライトのみ可能です。 424 14. ウォッチドッグタイマ(WDT) 14.2 各レジスタの説明 14.2.1 タイマカウンタ(TCNT) ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : TC NT は、リード/ライト*可能な 8 ビットのアップカウンタです。TC SR の TME ビッ トを 1 にすると、TCSR の CKS2〜CKS0 ビットで選択した内部クロックにより、TCNT は カウントアッ プを開始します。TC NT の値 がオーバフロー(H'F F→H'00 )すると、TC SR の OVF フラグが 1 にセットされ WT/IT ビットおよび RST/NMIビットで選択したモードに よって、ウォッチドッグタイマオーバフロー信号(RESO)出力、内部リセット、NMI 割 込み、またはインターバルタイマ割込み(WOVI)などを発生させることができます。 TCNT は、リセット、ハードウェアスタンバイモード、または TME ビットが 0 のとき、 H'00 に初期化されます。ソフトウェアスタンバイモード時には初期化されません。 【注】 * TCN T は容易に書き換えられないように、書き込み方法が一般のレジスタと異 なっています。詳細は、「1 4.2.4 レジス タアクセス時の注意」を参照してく ださい。 14.2.2 タイマコントロール/ステータスレジスタ(TCSR) ■TCSR0 ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 OVF WT/IT TME RSTS RST/NMI CKS2 CKS1 CKS0 0 0 0 0 0 0 0 0 R/(W)* R/W R/W R/W R/W R/W R/W R/W フラグをクリアするための0ライトのみ可能です。 ■TCSR1 ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 OVF WT/IT TME PSS RST/NMI CKS2 CKS1 CKS0 0 0 0 0 0 0 0 0 R/(W)* R/W R/W R/W R/W R/W R/W R/W フラグをクリアするための0ライトのみ可能です。 425 14. ウォッチドッグタイマ(WDT) TCSR は、リード/ライト*可能な 8 ビットのレジスタで、TCNT に入力するクロック、 モードの選択などを行います。 TCSR は、リセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 ソフトウェアスタンバイモード時には初期化されません。 【注】 * TCSR は容易に書き換えられないように、書き込み方法が一般のレジスタと異 なっています。詳細は、「1 4.2.4 レジス タアクセス時の注意」を参照してく ださい。 ビット 7:オーバフローフラグ(OVF) TCNT がオーバフロー(H'FF→H'00)したことを示すステータスフラグです。 ビット 7 説 明 OVF [クリア条件] 0 (初期値) (1)TME ビットに 0 をライトしたとき (2)OVF=1 の状態で、TCSR をリード後*、OVF に 0 をライトしたとき [セット条件] 1 TCNT がオーバフロー(H'FF→H'00)したとき ただし、ウォッチドッグタイマモードで内部リセット要求を選択した場合、 セット後、内部リセットにより自動的にクリアされます。 【注】 * インターバルタイマ割込みを禁止して OVF をポーリングした場合、OVF =1 の状態を 2 回以上リードしてください。 ビット 6:タイマモードセレクト(WT/IT) ウォッチドッグタイマとして使用するか、インターバルタイマとして使用するかを選択 します。この選択によって、TCNT がオーバフローしたとき、ウォッチドッグタイマモー ド時はリセットまたは NMI 割込みを、インターバルタイマモード時は WO VI 割込みを、 CPU に対して要求します。なお、ウォッチドッグタイマモードで内部リセット選択時には、 RESO 端子から Low レベルを出力します。 ビット 6 説 明 WT/IT 0 インターバルタイマモード:TCNT がオーバフローしたとき CPU へインターバルタイマ割込み(WOVI)を要求 1 ウォッチドッグタイマモード:TCNT がオーバフローしたとき CPU へリセットまたは NMI 割込みを要求 同時に、RESO 端子から Low レベルを出力(内部リセット選択時) 426 (初期値) 14. ウォッチドッグタイマ(WDT) ビット 5:タイマイネーブル(TME) タイマ動作の開始または停止を設定します。 ビット 5 説 明 TME 0 TCNT を H'00 に初期化し、カウント動作を停止 1 TCNT はカウント動作 (初期値) TCSR0 のビット 4:リセットセレクト(RSTS) リザーブビットです。1 にセットしないでください。 TCSR1 のビット 4:プリスケーラセレクト(PSS) WDT1 の TCNT の入力クロックソースを選択します。 詳細は、ビット 2〜0(CKS2〜CKS0)の説明を参照してください。 説 TCSR1 明 ビット 4 PSS 0 TCNT はφベースのプリスケーラ(PSM)の分周クロックをカウント(初期値) 1 TCNT はφ SUB ベースのプリスケーラ(PSS)の分周クロックをカウント ビット 3:リセットまたは NMI(RST/NMI) ウォッチドッグタイマモードでの TC NT オーバフロー時に、内部リセットと NMI 割込 み要求のいずれを要求するかを選択します。 ビット 3 説 明 RST/NMI 0 NMI 割込みを要求 1 内部リセットを要求 (初期値) ビット 2〜0:クロックセレクト 2〜0(CKS2〜CKS0) システムクロック(φ)またはサブクロック(φ SUB)を分周して得られる内部クロッ クから、TCNT に入力するクロックを選択します。 427 14. ウォッチドッグタイマ(WDT) ■WDT0 の入力クロック選択 ビット 2 ビット 1 ビット 0 CKS2 CKS1 CKS0 説 明 クロック オーバフロー周期* (φ=20MHz の場合) 0 0 1 1 0 1 【注】 * 0 φ/2(初期値) 25.6 μ s 1 φ/64 819.2 μ s 0 φ/128 1.6ms 1 φ/512 6.6ms 0 φ/2048 26.2ms 1 φ/8192 104.9ms 0 φ/32768 419.4ms 1 φ/131072 1.68s オーバフロー周期は、TC NT が H' 00 からカウントアップを開始し、オーバフローする までの時間です。 ■WDT1 の入力クロック選択 ビット 4 ビット 2 ビット 1 ビット 0 PSS CKS2 CKS1 CKS0 説 明 クロック オーバフロー周期* (φ=20MHz の場合) (φ SUB=32.768kHz の場合) 0 0 0 1 1 0 1 1 0 0 1 1 0 1 【注】 * φ/2(初期値) 25.6 μ s 1 φ/64 819.2 μ s 0 φ/128 1.6ms 1 φ/512 6.6ms 0 φ/2048 26.2ms 1 φ/8192 104.9ms 0 φ/32768 419.4ms 1 φ/131072 1.68s 0 φ SUB/2 15.6ms 1 φ SUB/4 31.3ms 0 φ SUB/8 62.5ms 1 φ SUB/16 125ms 0 φ SUB/32 250ms 1 φ SUB/64 500ms 0 φ SUB/128 1s 1 φ SUB/256 2s オーバフロー周期は、TC NT が H' 00 からカウントアップを開始し、オーバフローする までの時間です。 428 0 14. 14.2.3 ウォッチドッグタイマ(WDT) システムコントロールレジスタ(SYSCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CS2E IOSE INTM1 INTM0 XRST NMIEG HIE RAME 0 0 0 0 1 0 0 1 R/W R/W R R/W R R/W R/W R/W ここではビット 3 の み説明します。ウォッチドッグタイマ以 外の詳細は、「3 .2 .2」、 「5.2.1」の「システムコントロールレジスタ(SYSCR)」、および関連するモジュールの 説明を参照してください。 ビット 3:外部リセット(XRST) XRST はリセット要因を表わすビットです。リセットは、外部リセット入力に加えて、 ウォッチドッグタイマを利用しているときには、WDT0 または WDT1 のウォッチドッグタ イマオーバフローにより発生することができます。 XR ST ビットはリード専用です。外部リセットにより 1 にセット、R ST/NMI ビットが 1 のときにウォッチドッグタイマオーバフローによる内部リセットで0にクリアされます。 ビット 3 説 明 XRST 14.2.4 0 リセットがウォッチドッグタイマのオーバフローによる内部リセットで発生 1 リセットが外部リセット入力で発生 (初期値) レジスタアクセス時の注意 TC NT、TC SR は、容易に書 き換えられないように、書き込み方法 が一般のレジスタと 異なっています。次の方法で、リード/ライトを行ってください。 (1)TCNT、TCSR へのライト(WDT0 の例) TC NT、TC SR へライトする ときは、必ずワード転送命令を使用し てください。バイト 転送命令では、ライトできません。 ライト時は、TCNT と TCSR が同一アドレスに割り当てられています。このため、図 14.2 に示すように、TC NT へライトするときは上位バイトを H'5A にし、下位バイトをライト データにして転送してください。TC SR へライトするときは上位バイトを H'A5 にし、下 位バイトをライトデータにして転送してください。このように転送すると、下位バイトの データが TCNT または TCSR へライトされます。 429 14. ウォッチドッグタイマ(WDT) <TCNTライト時> 15 アドレス: H'FFA8 8 7 H'5A 0 0 ライトデータ <TCSRライト時> 15 アドレス: H'FFA8 0 8 7 H'A5 0 ライトデータ 図 14.2 TCNT、TCSR へのライト(WDT0 の例) (2)TCNT、TCSR からのリード(WDT0 の例) リ ード は、 一般 のレ ジス タと 同様 の方 法 で行 うこ とが でき ます 。TC SR はア ドレ ス H'FFA8 に、TCNT はアドレス H'FFA9 にそれぞれ割り当てられています。 430 14. ウォッチドッグタイマ(WDT) 14.3 動作説明 14.3.1 ウォッチドッグタイマモード時の動作 ウォッチドッグタイマとして使用するときは、TC SR の WT /IT ビットと TME ビットの 両方を 1 に設定してください。また、TCNT がオーバフローする前に必ず TCNT の値を書 き換えて(通常は H'00 を書き込む)、オーバフローを発生させないようにプログラムし てください。このようにすると、システムが正常に動作している間は、TCNT のオーバフ ローが発生しませんが、システムの暴走などにより TCNT の値が書き換えられずオーバフ ローすると、内部リセットまたは NMI 割込み要求を発生します。 RST/NMI ビットを 1 に設定すると、カウンタオーバフローにより 518 システムクロック (518 φ)の間、本 LSI をリセットし、同時に RESO 端子から 132 ステートの間 Low レベル 信号が出力されます。これを図 1 4.3 に示します。この R ESO 信号を用いて、システムを リセットすることができます。 R ST/NMI ビットを 0 にクリアすると、カウンタオーバフローにより NMI 割込み要求を 発生します。このとき、RESO 信号は High 出力のままとなります。 ウォッチドッグタイマからの内部リセッ ト要求と R ES 端子からのリセット入力は、同 一ベクタで処理されます。リセット要因は S YSC R の XR ST ビットの内容によって判別で きます。 RES 端子からの入力信号によるリセットと WDT のオーバフローによるリセットが同時 に発生したときは、R ES 端子によるリセットが優先され、S YSC R の XR ST ビットは 1 に セットされます。 ウォッチドッグタイマからの NMI 割込み要求と NMI 端子からの割込み要求は、同一ベ クタで処理されます。ウォッチドッグタイマからの NMI 割込み要求と NMI 端子からの割 込み要求を同時に扱うことは避けてください。 431 14. ウォッチドッグタイマ(WDT) TCNTの値 オーバフロー H'FF 時間 H'00 WT/IT=1 TME=1 TCNTにH'00 を書き込み OVF=1* WT/IT=1 TCNTにH'00 TME=1 を書き込み RESOと内部 リセットを発生 RESO信号 132システムクロック 内部リセット信号 518システムクロック WT/IT :タイマモードセレクトビット TME :タイマイネーブルビット OVF :オーバフローフラグ 【注】* OVF=1となった後、内部リセットにより0にクリアされます。 また、XRSTは0にクリアされます。 図 14.3 ウォッチドッグタイマモード時(RST/NMI=1)の動作 432 14. 14.3.2 ウォッチドッグタイマ(WDT) インターバルタイマモード時の動作 インターバルタイマとして使用するときは、TCSR の WT/IT ビットを 0 に、TME ビット を 1 に設定してください。インターバルタイマとして動作しているときは、図 1 4.4 に示 すように、TC NT がオーバフローするごとにインターバルタイマ割込み(WO VI)が発生 します。したがって、一定時間ごとに、割込みを発生させることができます。 TCNTの値 オーバフロー H'FF オーバフロー オーバフロー オーバフロー 時間 H'00 WT/IT=0 TME=1 WOVI WOVI WOVI WOVI WOVI:インターバルタイマ割込み要求発生 図 14.4 インターバルタイマモード時の動作 14.3.3 オーバフローフラグ(OVF)のセットタイミング インターバルタイマモードで TC NT がオーバフローすると、TC SR の OVF ビットが 1 にセットされ、同時にインターバルタイマ割込み(WOVI)が要求されます。このタイミ ングを図 14.5 に示します。 また、ウォッチドッグタイマモードで NMI 要求を選択した場合、TCNT がオーバフロー すると、TCSR の OVF ビットが 1 にセットされ、同時に NMI 割込みが要求されます。 φ TCNT H'FF H'00 オーバフロー信号 (内部信号) OVF 図 14.5 OVF のセットタイミング 433 14. ウォッチドッグタイマ(WDT) 14.3.4 RESO 信号出力タイミング ウォッチドッグタイマモードで TCNT がオーバフローすると、TCSR の OVF ビットが 1 にセットされます。このとき R ST/NMI ビットが 1 にセットしてあると、本 LS I 全体に対 して内部リセット信号を発生します。また、同時に RESO 端子から Low レベルを出力しま す。これらのタイミングを図 14.6 に示します。 φ TCNT H'FF H'00 オーバフロー信号 (内部信号) OVF RESO信号 内部リセット 信号 図 14.6 RESO 信号の出力タイミング 434 132ステート 518ステート 14. ウォッチドッグタイマ(WDT) 14.4 割込み インターバル タイマモード時、オーバ フローによりインターバル タイマ割込み (WO VI)を発生します。インターバルタイマ割込みは、TC SR の OVF フラグが 1 にセッ トされると常に要求されます。割込み処理ルーチンで必ず OVF を 0 にクリアしてくださ い。 ウォッチドッグタイマモードで NMI 割込み要求の選択時、オーバフローにより NMI 割 込み要求を発生します。 14.5 使用上の注意 14.5.1 タイマカウンタ(TCNT)のライトとカウントアップの競合 TCNT のライトサイクル中の T2 ステートでカウントアップが発生しても、カウントアッ プされずに TCNT へのカウンタライトが優先されます。これを図 14.7 に示します。 TCNTライトサイクル T1 T2 φ アドレス 内部ライト信号 TCNT入力クロック TCNT N M カウンタライトデータ 図 14.7 TCNT のライトとカウントアップの競合 14.5.2 CKS2〜CKS0 ビットの書き換え WD T の動作中に TC SR の C KS2〜C KS0 ビットを書き換えると、カウントアップが正し く行われない場合があります。CKS2〜CKS0 ビットを書き換えるときは、必ず WDT を停 止させてから(TME ビットを 0 にクリアしてから)行ってください。 435 14. ウォッチドッグタイマ(WDT) 14.5.3 ウォッチドッグタイマモードとインターバルタイマモードの切り替え WD T の動作中にウォッチドッグタイマモードとインターバルタイマモードを切り替え ると、正しい動作が行われない場合があります。タイマモードの切り替えは、必ず WD T を停止させてから(TME ビットを 0 にクリアしてから)行ってください。 14.5.4 RESO 信号によるシステムのリセット RESO 出力信号を本 LSI の RES 端子に入力すると、本 LSI を正しく初期化できません。 R ESO 信号は、本 LS I の R ES 端子に論理的に入力しないようにしてください。R ESO 信号 でシステム全体をリセットするときは、図 14.8 に示すような回路で行ってください。 本LSI リセット入力 システム全体へのリセット信号 RES RESO 図 14.8 RESO 信号によるシステムのリセット回路例 14.5.5 高速モード、サブアクティブモード、ウォッチモード間遷移時の カウンタ値 WDT1 を時計用クロックのカウンタとして使用し、かつ高速モードとサブアクティブモ ード間、あるいは高速モードとウォッチモード間を遷移する場合には、内部クロックの切 り替えにともなうカウンタ値のずれが生じます。 高速モー ドからサブアク ティブモードあ るいはウォッチ モードへの遷移 時には WD T1 の制御クロックがメインクロックからサブクロックに切り替わるタイミングで約 2〜3 ク ロックサイクル分カウントアップタイミングが遅くなります。 また、サブクロック動作時にはメインクロック発振器がストップするため、ウォッチモ ードまたはサブアクティブモードから高速モードへ遷移するとき、内部発振が安定するま での期間、クロックは供給されなくなります。このため、発振を開始し S BYC R の S TS2 〜S TS0 ビットで設定された発振安定待機時間 はカウントアップを停止し、この期間分の カウンタ値のずれが生じます。 WDT1 を時計用クロックのカウンタとして使用するときは注意してください。 なお、同じモード内で動作している間は、カウンタ値のずれは発生しません。 436 14. 14.5.6 ウォッチドッグタイマ(WDT) OVF フラグのクリア イン ターバ ルタ イマ割 込みル ーチ ン内で は、OVF フラ グのク リア条 件に ある通 り、 OVF = 1 の状態で TC SR をリード後、OVF に 0 をライトすることで OVF フラグをクリアす ることができます。 しかし、イン ターバルタイマ割込みを禁 止して、OVF フラグをポーリ ングする場合、 OVF フラグのセットされるタイミングと、OVF フラグをリードするタイミングが競合し たとき、OVF = 1 をリードしたにもかかわらず、OVF = 1 をリードしたことを認識しないこ とがあります。 この場合、OVF = 1 の状態を 2 回以上リードすることにより、OVF フラグのクリア条件 を確実に満たすことができますので、前途の例のように、OVF=1 の状態を 2 回以上リード してから OVF フラグをクリアするようにしてください。 437 14. 438 ウォッチドッグタイマ(WDT) 15. シリアルコミュニケーション インタフェース (SCI、IrDA) 第 15 章 15.1 15.2 15.3 目次 概要 ....................................................................................................................................... 441 15.1.1 特長 ...................................................................................................... 441 15.1.2 ブロック図 ............................................................................................ 442 15.1.3 端子構成................................................................................................ 444 15.1.4 レジスタ構成 ......................................................................................... 445 各レジスタの説明 ................................................................................................................... 446 15.2.1 レシーブシフトレジスタ(RSR) ........................................................... 446 15.2.2 レシーブデータレジスタ(RDR)........................................................... 446 15.2.3 トランスミットシフトレジスタ(TSR).................................................. 447 15.2.4 トランスミットデータレジスタ(TDR) ................................................. 447 15.2.5 シリアルモードレジスタ(SMR)........................................................... 448 15.2.6 シリアルコントロールレジスタ(SCR) ................................................. 451 15.2.7 シリアルステータスレジスタ(SSR) ..................................................... 455 15.2.8 ビットレートレジスタ(BRR) .............................................................. 459 15.2.9 シリアルインタフェースモードレジスタ(SCMR) ................................. 468 15.2.10 モジュールストップコントロールレジスタ(MSTPCR) .......................... 469 15.2.11 キーボードコンパレータコントロールレジスタ(KBCOMP) .................. 470 動作説明................................................................................................................................. 472 15.3.1 概要 ...................................................................................................... 472 15.3.2 調歩同期式モード時の動作 ..................................................................... 474 15.3.3 マルチプロセッサ通信機能 ..................................................................... 485 15.3.4 クロック同期式モード時の動作 .............................................................. 492 15.3.5 IrDA 動作............................................................................................... 501 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.4 SCI 割込み .............................................................................................................................. 504 15.5 使用上の注意 .......................................................................................................................... 505 440 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.1 概要 本 LS I は、独立した 3 チャネルのシリアルコミュニケーションインタフェース(S CI : S eria l C ommunica tion Inte rfa ce )を備えています。S CI は、調歩同期式通信とクロック同期 式通信の 2 方式でシリアル通信ができます。また、複数のプロセッサ間のシリアル通信機 能(マルチプロセッサ通信機能)を備えています。 3 チャネルの SCI のうち 1 チャネルは、IrDA 規格バージョン 1.0 に基づく IrDA 通信波形 の送受信が可能です。 15.1.1 特長 SCI の特長を以下に示します。 ■シリアル通信モードを調歩同期式モード/クロック同期式モードから選択可能 (a)調歩同期式モード ・キャラクタ単位で同期をとる調歩同期式方式でシリアルデータの通信実行 Univer sal Async ronous R ec eiver /Tr ansmitte r(UAR T)や Async ronous C ommunica tion Interface Adapter(ACIA)など標準の調歩同期式通信用 LSI とのシリアルデータ通 信が可能 ・複数のプロセッサとシリアルデータ通信ができるマルチプロセッサ間通信機能 ・シリアルデータ通信フォーマットを 12 種類のフォーマットから選択可能 データ長 :7 ビット/8 ビット ストップビット長 :1 ビット/2 ビット パリティ :偶数パリティ/奇数パリティ/パリティなし マルチプロセッサビット:1/0 ・受信エラーの検出:パリティエラー、オーバランエラー、フレーミングエラー ・ブレークの検出:フレーミングエラー発生時に R xD 端子のレベルを直接リードす ることによりブレークを検出可能 (b)クロック同期式モード ・クロックに同期してシリアルデータ通信を実行 クロック同期式通信機能を持つ他の LSI とのシリアルデータ通信が可能 ・シリアルデータ通信フォーマットは 1 種類 データ長 :8 ビット ・受信エラーの検出:オーバランエラーを検出 ■全二重通信が可能 ・独立した送信部と受信部を備えているので、送信と受信を同時に実行可能 ・送信部およ び受信部ともにダブルバッ ファ構造になっているので シリアルデータ の連続送信、連続受信が可能 441 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ■LSB ファースト方式/MSB ファースト方式の選択が可能 ・通信モードによらず(調歩同期式モード 7 ビットデータの場合を除く)選択可能* 【注】 * 本章では、LSB ファースト方式の例を説明しています。 ■内蔵ボーレートジェネレータにより任意のビットレートを選択可能 ■送受信クロックソー スを、ボーレートジェネレータからの内 部クロック、または S CK 端子からの外部クロックから選択可能 ■送受信クロックを出力可能 ・P86/SCK1 端子、P42/SCK2 端子は CMOS 出力 ・P 52/S C K0 端子は、H8S /2148 シリーズおよび H8S /2147N では NMOS プッシュプル 出力、H8S/2144 シリーズでは CMOS 出力 (H8S/2148 シリーズおよびH8S/2147N で本端子を出力として使用する場合は、High レベルを出力するために必ず外部にプルアップ抵抗を接続してください。) ■4 種類の割込み要因 ・送信データエンプティ、送信終了、受信データフル、受信エラーの 4 種類の割込 み要因があり、それぞれ独立に要求可能 ・送信データ エンプティ割込みと受信デ ータフル割込みにより、デ ータトランスフ ァコントローラ(DTC)を起動させてデータ転送を実行可能 15.1.2 ブロック図 図 15.1 に SCI のブロック図を示します。 442 15. シリアルコミュニケーションインタフェース(SCI、IrDA) バ ス イ ン タ フ ェ ー ス モジュールデータバス RDR TDR SCMR BRR SSR RxD φ SCR RSR TxD TSR ボーレート ジェネレータ SMR φ/4 φ/16 送受信 コントロール パリティ発生 内 部 デ ー タ バ ス φ/64 クロック パリティチェック SCK 【記号説明】 RSR :レシーブシフトレジスタ RDR :レシーブデータレジスタ TSR :トランスミットシフトレジスタ TDR :トランスミットデータレジスタ SMR :シリアルモードレジスタ SCR :シリアルコントロールレジスタ SSR :シリアルステータスレジスタ SCMR :シリアルインタフェースモードレジスタ BRR :ビットレートレジスタ 外部クロック TEI TXI RXI ERI 図 15.1 SCI のブロック図 443 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.1.3 端子構成 SCI は、表 15.1 に示すシリアル端子を持っています。 表 15.1 端子構成 チャネル 0 1 2 名 称 記号 入出力 シリアルクロック端子 0 SCK0 入出力 SCI0 のクロック入出力 レシーブデータ端子 0 RxD0 入力 SCI0 の受信データ入力 トランスミットデータ端子 0 TxD0 出力 SCI0 の送信データ出力 シリアルクロック端子 1 SCK1 入出力 SCI1 のクロック入出力 レシーブデータ端子 1 RxD1 入力 SCI1 の受信データ入力 トランスミットデータ端子 1 TxD1 出力 SCI1 の送信データ出力 シリアルクロック端子 2 SCK2 入出力 SCI2 のクロック入出力 レシーブデータ端子 2 RxD2 入力 SCI2 の受信データ入力 TxD2 /IrTxD 【注】 444 * 能 (通常/IrDA) /IrRxD トランスミットデータ端子 2 機 出力 SCI2 の送信データ出力 (通常/IrDA) 本文中ではチャネルを省略し、それぞれ SCK、RxD、TxD と略称します。 15. 15.1.4 シリアルコミュニケーションインタフェース(SCI、IrDA) レジスタ構成 SCI には、表 15.2 に示す内部レジスタがあります。これらのレジスタにより調歩同期式 モード/クロック同期式モードの指定、データフォーマットの指定、ビットレートの指定、 および送信部/受信部の制御を行うことができます。 表 15.2 レジスタ構成 チャネル 0 1 2 共通 【注】 名 称 略称 R/W 初期値 アドレス* 1 シリアルモードレジスタ 0 SMR0 R/W H'00 H'FFD8* 3 ビットレートレジスタ 0 BRR0 R/W H'FF H'FFD9* 3 シリアルコントロールレジスタ 0 SCR0 R/W H'00 H'FFDA トランスミットデータレジスタ 0 TDR0 R/W H'FF H'FFDB シリアルステータスレジスタ 0 SSR0 R/(W)* 2 H'84 H'FFDC レシーブデータレジスタ 0 RDR0 R H'00 H'FFDD シリアルインタフェースモードレジスタ 0 SCMR0 R/W H'F2 H'FFDE* 3 シリアルモードレジスタ 1 SMR1 R/W H'00 H'FF88* 3 ビットレートレジスタ 1 BRR1 R/W H'FF H'FF89* 3 シリアルコントロールレジスタ 1 SCR1 R/W H'00 H'FF8A トランスミットデータレジスタ 1 TDR1 R/W H'FF H'FF8B シリアルステータスレジスタ 1 SSR1 R/(W)* H'84 H'FF8C レシーブデータレジスタ 1 RDR1 R H'00 H'FF8D シリアルインタフェースモードレジスタ 1 SCMR1 R/W H'F2 H'FF8E* 3 シリアルモードレジスタ 2 SMR2 R/W H'00 H'FFA0* 3 ビットレートレジスタ 2 BRR2 R/W H'FF H'FFA1* 3 シリアルコントロールレジスタ 2 SCR2 R/W H'00 H'FFA2 トランスミットデータレジスタ 2 TDR2 R/W H'FF H'FFA3 H'84 H'FFA4 シリアルステータスレジスタ 2 SSR2 レシーブデータレジスタ 2 RDR2 R/(W)* 2 2 R H'00 H'FFA5 シリアルインタフェースモードレジスタ 2 SCMR2 R/W H'F2 H'FFA6* 3 キーボードコンパレータコントロールレジ KBCOMP スタ R/W H'00 H'FEE4 モジュールストップ MSTPCRH R/W H'3F H'FF86 コントロールレジスタ MSTPCRL R/W H'FF H'FF87 *1 アドレスの下位 16 ビットを示しています。 *2 フラグをクリアするための 0 ライトのみ可能です。 *3 シリアルコミュニケーションインタフェースの一部のレジスタは、他のレジスタと同じ アドレスに割り当てられています。それぞれのレジスタの選択はシリアルタイマコント ロールレジスタ(STCR)の IICE ビットで行います。 445 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.2 各レジスタの説明 15.2.1 レシーブシフトレジスタ(RSR) ビット : 7 6 5 4 3 2 1 0 R/W − − − − − − − − : RSR は、シリアルデータを受信するためのレジスタです。 SCI は、RSR に RxD 端子から入力されたシリアルデータを LSB(ビット 0)から受信し た順にセットし、パラレルデータに変換します。1 バイトのデータ受信を終了すると、デ ータは自動的に RDR へ転送されます。 CPU から RSR を直接リード/ライトすることはできません。 15.2.2 レシーブデータレジスタ(RDR) ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 R/W R R R R R R R R : RDR は、受信したシリアルデータを格納するレジスタです。 SCI は、1 バイトのシリアルデータの受信が終了すると、RSR から RDR へ受信したシリ アルデータを転送して格納し、受信動作を完了します。この後、RSR は受信可能になりま す。 このように、R SR と R DR はダブルバッファになっているため連続した受信動作が可能 です。 RDR は、リード専用レジスタです。CPU からライトすることはできません。 R DR は、リセット、ス タンバイモード、ウォッチモード、サブ アクティブモード、サ ブスリープモード、またはモジュールストップモード時に H'00 に初期化されます。 446 15. 15.2.3 シリアルコミュニケーションインタフェース(SCI、IrDA) トランスミットシフトレジスタ(TSR) ビット : 7 6 5 4 3 2 1 0 R/W − − − − − − − − : TSR は、シリアルデータを送信するためのレジスタです。 SCI は、TDR から送信データをいったん TSR に転送し、LSB(ビット 0)から順に TxD 端子に送り出すことでシリアルデータ送信を行います。 1 バイトのデータ送信を終了すると自動的に TDR から TSRへ次の送信データを転送し、 送信を開始します。ただし S SR の TDR E ビットが 1 にセットされている場合には、TDR から TSR へのデータ転送は行いません。 CPU から、直接 TSR をリード/ライトすることはできません。 15.2.4 トランスミットデータレジスタ(TDR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W TDR は、シリアル送信するデータを格納する 8 ビットのレジスタです。 S CI は、TS R の空を検出すると、TDR にライトされた送信データを TS R に転送してシ リアル送信を開始します。TS R のシリアルデータ送信中に TDR に次の送信データをライ トしておくと、連続シリアル送信ができます。 TDR は、常に CPU によるリード/ライトが可能です。 TDR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サブ スリープモード、またはモジュールストップモード時に H'FF に初期化されます。 447 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.2.5 シリアルモードレジスタ(SMR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 C/A CHR PE O/E STOP MP CKS1 CKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W SMR は、SCI のシリアル通信フォーマットの設定と、ボーレートジェネレータのクロッ クソースを選択するための 8 ビットのレジスタです。 SMR は、常に CPU によるリード/ライトが可能です。 S MR は、リセット、ス タンバイモード、ウォッチモード、サブ アクティブモード、サ ブスリープモード、またはモジュールストップモード時に H'00 に初期化されます。 ビット 7:コミュニケーションモード(C/A) SCI の動作モードを調歩同期式モード/クロック同期式モードのいずれかから選択しま す。 ビット 7 説 明 C/A 0 調歩同期式モード 1 クロック同期式モード (初期値) ビット 6:キャラクタレングス(CHR) 調歩同期式モードのデータ長を 7 ビット/8 ビットデータのいずれかから選択します。 クロック同期式モードでは C HR の設定にかかわらず、データ長は 8 ビットデータ固定で す。 ビット 6 説 明 CHR 【注】 0 8 ビットデータ 1 7 ビットデータ* * 7 ビットデータを選択した場合、TDR の MSB(ビット 7)は送信されません。 また、LSB ファースト/MSB ファーストの選択はできません。 448 (初期値) 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 5:パリティイネーブル(PE) 調歩同期式モードでは、送信時にパリティビットの付加を、受信時にパリティビットの チェックを行うかどうかを選択します。クロック同期式モードおよびマルチプロセッサフ ォーマットでは、P E ビットの設定にかかわ らずパリティビットの付加、およびチェック は行いません。 ビット 5 説 明 PE 【注】 0 パリティビットの付加、およびチェックを禁止 1 パリティビットの付加、およびチェックを許可* * (初期値) PE ビットに 1 をセットすると送信時には、O/ E ビットで指定した偶数、または奇数パ リティ を送信デー タに付加して 送信します 。受信時に は、受信した パリティビ ットが O/E ビットで指定した偶数、または奇数パリティになっているかどうかをチェックしま す。 ビット 4:パリティモード(O/E) パリテ ィの付加や チェックを偶 数パリティ /奇数パリ ティのいずれ で行うかを 選択し ます。 O/E ビットの設定は、調歩同期式モードで P E ビットに 1 を設定しパリティビットの付 加やチェックを許可したときのみ有効になります。クロック同期式モードや、調歩同期式 モードでパリティの付加やチェックを禁止している場合、およびマルチプロセッサフォー マットでは、O/E ビットの指定は無効です。 ビット 4 説 明 O/E 【注】 0 偶数パリティ* 1 1 奇数パリティ* 2 (初期値) * 1 偶数 パリティに設 定すると、 送信時には 、パリティビ ットと送信 キャラクタを あわせ て、その中の 1 の数の合計が偶数になるようにパリティビットを付加して送信します。 受信時には、パリティビットと受信キャラクタをあわせて、その中の 1 の数の合計が偶 数であるかどうかをチェックします。 * 2 奇数 パリティに設 定すると、 送信時には 、パリティビ ットと送信 キャラクタを あわせ て、その中の 1 の数の合計が奇数になるようにパリティビットを付加して送信します。 受信時には、パリティビットと受信キャラクタをあわせて、その中の 1 の数の合計が奇 数であるかどうかをチェックします。 449 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 3:ストップビットレングス(STOP) 調歩同期式モードでのストップビットの長さを 1 ビット/2 ビットのいずれかから選択 します。S TOP ビットの設定は調歩同期式モードでのみ有効になります。クロック同期式 モードに設定した場合にはストップビットは付加されませんので、このビットの設定は無 効です。 ビット 3 説 明 STOP 【注】 0 1 ストップビット* 1 1 2 ストップビット* 2 (初期値) *1 送信時には、送信キャラクタの最後尾に 1 ビットの 1(ストップビット)を付加して送 信します。 *2 送信時には、送信キャラクタの最後尾に 2 ビットの 1(ストップビット)を付加して送 信します。 なお、受信時には STOP ビットの設定にかかわらず、受信したストップビットの 1 ビッ ト目のみをチェックします。ストップビットの 2 ビット目が 1 の場合は、ストップビット として扱いますが、0 の場合は、次の送信キャラクタのスタートビットとして扱います。 ビット 2:マルチプロセッサモード(MP) マルチプロセッサフォーマットを選択します。マルチプロセッサフォーマットを選択し た場合、PE ビット、および O/E ビットにおけるパリティの設定は無効になります。また、 MP ビットの設定は、調歩同期式モードのときのみ有効です。クロック同期式モードでは、 MP ビットの設定は無効です。 マルチプロセッサ通信機能については、「15.3.3 マルチプロセッサ通信機能」を参照し てください。 ビット 2 説 明 MP 450 0 マルチプロセッサ機能の禁止 1 マルチプロセッサフォーマットを選択 (初期値) 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 1、0:クロックセレクト 1、0(CKS1、CKS0) 内蔵ボーレートジェネレータのクロックソースを選択します。CKS1、CKS0 ビットの設 定により、φ、φ/4、φ/16、φ/64 の 4 種類からクロックソースを選択できます。 クロックソースと、ビットレートレジスタの設定値、およびボーレートの関係について は、「15.2.8 ビット 1 ビット 0 CKS1 CKS0 0 0 φクロック 1 φ/4 クロック 0 φ/16 クロック 1 φ/64 クロック 1 15.2.6 ビットレートレジスタ(BRR)」を参照してください。 説 明 (初期値) シリアルコントロールレジスタ(SCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 TIE RIE TE RE MPIE TEIE CKE1 CKE0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W SCR は、SCI の送信/受信動作、調歩同期式モードでのシリアルクロック出力、割込み 要求の許可または禁止、および送信/受信クロックソースの選択を行うレジスタです。 SCR は、常に CPU によるリード/ライトが可能です。 SCR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サブ スリープモード、またはモジュールストップモード時に H'00 に初期化されます。 ビット 7:トランスミットインタラプトイネーブル(TIE) TDR から TS R へシリアル送信データが転送され S SR の TDR E フラグが 1 にセットされ たときに、送信データエンプティ割込み(TXI)要求の発生を許可または禁止します。 ビット 7 説 明 TIE 【注】 0 送信データエンプティ割込み(TXI)要求の禁止* 1 送信データエンプティ割込み(TXI)要求の許可 * (初期値) TX I 割込み要求の解除は、TD RE フラグから 1 をリードした後、0 にクリアするか、ま たは TIE ビットを 0 にクリアすることで行うことができます。 451 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 6:レシーブインタラプトイネーブル(RIE) シリアル受信データが RSR から RDR へ転送されてSSR の RDRF フラグが 1にセットさ れたとき、 受信データフル割込 み(R XI)要求、および 受信エラー割込み( ER I)要求の 発生を許可または禁止します。 ビット 6 説 明 RIE 受信データフル割込み(RXI)要求、および受信エラー割込み(ERI)要求を 0 禁止* 1 (初期値) 受信データフル割込み(RXI)要求、および受信エラー割込み(ERI)要求を 許可 【注】 * RXI、および ERI 割込み要求の解除は、RDRF、または FER、PER、ORER の各フラグ から 1 をリードした後、0 にクリアするか、RI E ビットを 0 にクリアすることで行うこ とができます。 ビット 5:トランスミットイネーブル(TE) SCI のシリアル送信動作の開始を許可または禁止します。 ビット 5 説 明 TE 【注】 0 送信動作を禁止* 1 1 2 送信動作を許可* (初期値) *1 SSR の TDRE フラグは 1 に固定されます。 * 2 この状態で、TD R に送信データをライトして、SSR の TD RE フラグを 0 にクリアする とシリアル送信を開始します。 なお、TE ビットを 1 にセットする前に必ず SMR の設定を行い、送信フォーマットを決 定してください。 452 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 4:レシーブイネーブル(RE) SCI のシリアル受信動作の開始を許可または禁止します。 ビット 4 説 明 RE 【注】 0 受信動作を禁止* 1 1 受信動作を許可* 2 (初期値) *1 RE ビットを 0 にクリアしても RDRF、FER、PER、ORER の各フラグは影響を受けず、 状態を保持します。 *2 この状態で調歩同期式モードの場合はスタートビットを、クロック同期式モードの場合 は同期クロック入力をそれぞれ検出すると、シリアル受信を開始します。 なお、RE ビットを 1 にセットする前に必ず SMR の設定を行い、受信フォーマットを 決定してください。 ビット 3:マルチプロセッサインタラプトイネーブル(MPIE) マルチプロセッサ割込みを許可または禁止します。MPI E ビットの設定は、調歩同期式 モードで、かつ、SMR の MP ビットが 1 に設定されている受信時にのみ有効です。 クロック同期式モードのとき、あるいは MP ビットが 0 のときには、MPI E ビットの設 定は無効です。 ビット 3 説 明 MPIE マルチプロセッサ割込み禁止状態(通常の受信動作をします) 0 (初期値) [クリア条件] (1)MPIE ビットを 0 にクリア (2)MPB=1 のデータを受信したとき 1 マルチプロセッサ割込み許可状態* マルチプロセッサビットが 1 のデータを受け取るまで受信割込み(RXI)要求、 受信エラー割込み(ERI)要求、および SSR の RDRF、FER、ORER の各フラグ のセットを禁止します。 【注】 * MPB=0 を含む受信データを受信しているときは、RSR から RDR への受信データの転 送、および受信エラーの検出と SSR の RD RF 、FE R、ORE R の各フラグのセットは行 いません。MPB=1 を含む受信データを受信すると、SSR の MPB ビットを 1 にセット し、MPIE ビットを自動的に 0 にクリアし、RXI、ERI 割込み要求の発生(SCR の TIE、 RIE ビットが 1 にセットされている場合)と FER、ORER フラグのセットが許可されま す。 453 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 2:トランスミットエンドインタラプトイネーブル(TEIE) MSB データ送出時に有効な送信データが TDR にないとき、送信終了割込み(TEI )要 求の発生を許可または禁止します。 ビット 2 説 明 TEIE 【注】 0 送信終了割込み(TEI)要求を禁止* 1 送信終了割込み(TEI)要求を許可* * (初期値) TEI の解除は、SSR の TDRE フラグから 1 をリードした後、0 にクリアして TEND フラ グを 0 にクリアするか、TEIE ビットを 0 にクリアすることで行うことができます。 ビット 1、0:クロックイネーブル 1、0(CKE1、CKE0) SCI のクロックソースの選択、および SCK 端子からのクロック出力の許可または禁止を 設定します。CKE1 ビットと CKE0 ビットの組み合わせによって SCK 端子を入出力ポート にするか、シリアルクロック出力端子にするか、またはシリアルクロック入力端子にする かが決まります。 ただし、C KE0 ビットの設定は調歩同期式モードで内部クロック動作(C KE1=0)時の み有効です。クロック同期式モードのとき、および外部クロック動作(CKE1=1)の場合 は CKE0 ビットの設定は無効です。また、SMR で SCI の動作モードを決定する前に、CKE1、 CKE0 の設定を行ってください。 SCI のクロックソースの選択についての詳細は「15.3 動作説明」の表 15.9 を参照して ください。 ビット 1 ビット 0 CKE1 CKE0 0 0 説 調歩同期式モード 明 内部クロック/SCK 端子は入出力ポート* 1 クロック同期式モード 内部クロック/SCK 端子は同期クロック出力* 1 1 調歩同期式モード 内部クロック/SCK 端子はクロック出力* 2 クロック同期式モード 内部クロック/SCK 端子は同期クロック出力 1 0 調歩同期式モード 外部クロック/SCK 端子はクロック入力* 3 クロック同期式モード 外部クロック/SCK 端子は同期クロック入力 1 調歩同期式モード 外部クロック/SCK 端子はクロック入力* 3 クロック同期式モード 外部クロック/SCK 端子は同期クロック入力 【注】 *1 初期値 *2 ビットレートと同じ周波数のクロックを出力 *3 ビットレートの 16 倍の周波数のクロックを入力 454 15. 15.2.7 シリアルコミュニケーションインタフェース(SCI、IrDA) シリアルステータスレジスタ(SSR) ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 TDRE RDRF ORER FER PER TEND MPB MPBT 1 0 0 0 0 1 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R R R/W フラグをクリアするための0ライトのみ可能です。 S CI の動作状態を示すステータスフラグと、マルチプロセッサビットを内蔵した 8 ビッ トのレジスタです。 SSR は常に CPU からリード/ライトできます。ただし、TDRE、RDRF、ORER、PER、 FER の各フラグへ 1 をライトすることはできません。また、これらを 0 にクリアするため には、あらかじめ 1 をリードしておく必要があります。また、TEND フラグおよび MPB フラグはリード専用であり、ライトすることはできません。 SSR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サブ スリープモード、またはモジュールストップモード時に H'84 に初期化されます。 ビット 7:トランスミットデータレジスタエンプティ(TDRE) TDR から TS R にデータ転送が行われ、TDR に次のシリアル送信データをライトするこ とが可能になったことを示します。 ビット 7 説 明 TDRE 0 [クリア条件] (1)TDRE=1 の状態をリードした後、0 をライトしたとき (2)TXI 割込み要求による DTC で TDR へデータをライトしたとき 1 [セット条件] (初期値) (1)SCR の TE ビットが 0 のとき (2)TDR から TSR にデータ転送が行われ、TDR にデータライトが可能になっ たとき 455 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 6:レシーブデータレジスタフル(RDRF) 受信したデータが RDR に格納されていることを示します。 ビット 6 説 明 RDRF [クリア条件] 0 (初期値) (1)RDRF=1 の状態をリードした後、0 をライトしたとき (2)RXI 割込み要求による DTC で RDR のデータをリードしたとき [セット条件] 1 シリアル受信が正常終了し、RSR から RDR へ受信データが転送されたとき 【注】 受信時にエラーを検出したとき、および SCR の RE ビットを 0 にクリアしたときには RDR および RDRF フラグは影響を受けず以前の状態を保持します。 RD RF フラグが 1 にセットされたまま次のデータを受信完了するとオーバランエラーを発 生し、受信データが失われますので注意してください。 ビット 5:オーバランエラー(ORER) 受信時にオーバランエラーが発生して異常終了したことを示します。 ビット 5 説 明 ORER 0 [クリア条件] (初期値)* 1 ORER=1 の状態をリードした後、0 をライトしたとき 1 [セット条件] RDRF=1 の状態で次のシリアル受信を完了したとき* 2 【注】 * 1 SC R の RE ビットを 0 にクリアしたときには、ORE R フラグは影響を受けず以前の状 態を保持します。 * 2 RD R ではオーバランエ ラーが発生する前の受信データを保持し 、後から受信したデー タが失われます。さらに、ORE R=1 にセットされた状態で、以降のシリアル受信を続 けることはできません。なお、クロック同期式モードでは、シリアル送信も続けること ができません。 456 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 4:フレーミングエラー(FER) 調歩同期式モードで受信時にフレーミングエラーが発生して異常終了したことを示します。 ビット 4 説 明 FER (初期値)* 1 [クリア条件] 0 FER=1 の状態をリードした後、0 をライトしたとき [セット条件] 1 SCI が受信終了時に受信データの最後尾のストップビットをチェックし、スト ップビットが 0 であったとき* 2 【注】 * 1 SC R の RE ビットを 0 にクリアしたときには、FE R フラグは影響を受けず以前の状態 を保持します。 * 2 2 ストップビットモードのときは、1 ビット目のストップビットのみを判定し、2 ビッ ト目のストップビットはチェックをしません。なお、フレーミングエラーが発生したと きの受信データは RDR に転送されますが、RDRF フラグはセットされません。さらに、 FE R フラグが 1 にセットされた状態においては、以降のシリアル受信を続けることは できません。また、クロック同期式モードでは、シリアル送信も続けることができませ ん。 ビット 3:パリティエラー(PER) 調歩同期式モードで、パリティを付加した受信時にパリティエラーが発生して異常終了 したことを示します。 ビット 3 説 明 PER 0 [クリア条件] (初期値)* 1 PER=1 の状態をリードした後、0 をライトしたとき 1 [セット条件] 受信時の受信データとパリティビットをあわせた 1 の数が、SMR の O/E ビッ トで指定した偶数パリティ/奇数パリティの設定と一致しなかったとき* 2 【注】 * 1 SC R の RE ビットを 0 にクリアしたときには、PER フラグは影響を受けず以前の状態 を保持します。 * 2 パリティエラーが発生したときの受信データは RD R に転送されますが、RD RF フラグ はセットされません。なお、PER フラグが 1 にセットされた状態では、以降のシリア ル受信を続けることはできません。さらに、クロック同期式モードでは、シリアル送信 も続けることができません。 457 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 2:トランスミットエンド(TEND) 送信キャラクタの最後尾ビットの送信時に TDR に有効なデータがなく、送信を終了し たことを示します。 TEND フラグはリード専用です。ライトは無効です。 ビット 2 説 明 TEND [クリア条件] 0 (1)TDRE=1 の状態をリードした後、TDRE フラグに 0 をライトしたとき (2)TXI 割込み要求による DTC で TDR へデータをライトしたとき [セット条件] 1 (初期値) (1)SCR の TE ビットが 0 のとき (2)1 バイトのシリアル送信キャラクタの最後尾ビットの送信時に TDRE=1 で あったとき ビット 1:マルチプロセッサビット(MPB) 調歩同期式モードで受信をマルチプロセッサフォーマットで行うときに、受信データ中 のマルチプロセッサビットを格納します。 MPB ビットは、リード専用です。ライトは無効です。 ビット 1 説 明 MPB 0 [クリア条件] (初期値)* マルチプロセッサビットが 0 のデータを受信したとき 1 [セット条件] マルチプロセッサビットが 1 のデータを受信したとき 【注】 * マルチプロセッサフォーマットで SC R の RE ビットを 0 にクリアしたときには、以前 の状態を保持します。 458 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 0:マルチプロセッサビットトランスファ(MPBT) 調歩同期式モードで送信をマルチプロセッサフォーマットで行うときに、送信データに 付加するマルチプロセッサビットを格納します。 マルチプロセッサフォーマットではないとき、あるいは送信でないとき、およびクロッ ク同期式モードには MPBT ビットの設定は無効です。 ビット 0 説 明 MPBT 15.2.8 0 マルチプロセッサビットが 0 のデータを送信したとき 1 マルチプロセッサビットが 1 のデータを送信したとき (初期値) ビットレートレジスタ(BRR) ビット : 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W R/W : BRR は、SMR の CKS1、CKS0 ビットで選択されるボーレートジェネレータの動作クロ ックとあわせて、シリアル送信/受信のビットレートを設定する 8 ビットのレジスタです。 BRR は、常に CPU によるリード/ライトが可能です。 B RR は、リセッ ト、スタンバイモード、ウ ォッチモード、サブアクテ ィブモード、サ ブスリープモード、またはモジュールストップモード時に H'FF に初期化されます。 なお、チャネルごとにボーレートジェネレータの制御が独立していますので、それぞれ 異なる値を設定することができます。 表 1 5.3 に調歩同期式モードの B RR の設定例を表 1 5.4 にクロック同期式モードの B RR の設定例を示します。 459 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 15.3 ビットレートに対する BRR の設定例〔調歩同期式モード〕(1) ビットレート 動作周波数φ(MHz) (bit/s) 2 n 2.097152 N 誤差(%) n N 誤差(%) n N 3 誤差(%) n N 誤差(%) 110 1 141 0.03 1 148 −0.04 1 174 −0.26 1 212 0.03 150 1 103 0.16 1 108 0.21 1 127 0.00 1 155 0.16 300 0 207 0.16 0 217 0.21 0 255 0.00 1 77 0.16 600 0 103 0.16 0 108 0.21 0 127 0.00 0 155 0.16 1200 0 51 0.16 0 54 −0.70 0 63 0.00 0 77 0.16 2400 0 25 0.16 0 26 1.14 0 31 0.00 0 38 0.16 4800 0 12 0.16 0 13 −2.48 0 15 0.00 0 19 −2.34 9600 − − − 0 6 −2.48 0 7 0.00 0 9 −2.34 19200 − − − − − − 0 3 0.00 0 4 −2.34 31250 0 1 0.00 − − − − − − 0 2 0.00 38400 − − − − − − 0 1 0.00 − − − ビットレート 動作周波数φ(MHz) (bit/s) 460 2.4576 3.6864 4 4.9152 5 n N 誤差(%) n N 誤差(%) n N 誤差(%) n 110 2 64 0.70 2 70 0.03 2 86 0.31 2 88 −0.25 150 1 191 0.00 1 207 0.16 1 255 0.00 2 64 0.16 300 1 95 0.00 1 103 0.16 1 127 0.00 1 129 0.16 600 0 191 0.00 0 207 0.16 0 255 0.00 1 64 0.16 1200 0 95 0.00 0 103 0.16 0 127 0.00 0 129 0.16 2400 0 47 0.00 0 51 0.16 0 63 0.00 0 64 0.16 4800 0 23 0.00 0 25 0.16 0 31 0.00 0 32 −1.36 9600 0 11 0.00 0 12 0.16 0 15 0.00 0 15 1.73 19200 0 5 0.00 − − − 0 7 0.00 0 7 1.73 31250 − − 0 3 0.00 0 4 −1.70 0 4 0.00 38400 0 0.00 − − − 0 3 0.00 0 3 1.73 − 2 N 誤差(%) 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 15.3 ビットレートに対する BRR の設定例〔調歩同期式モード〕(2) ビットレート 動作周波数φ(MHz) (bit/s) 6 n 6.144 N 誤差(%) n N 誤差(%) n N 8 誤差(%) n N 誤差(%) −0.07 2 141 0.03 95 0.00 2 103 0.16 0.00 1 191 0.00 1 207 0.16 79 0.00 1 95 0.00 1 103 0.16 0.16 0 159 0.00 0 191 0.00 0 207 0.16 77 0.16 0 79 0.00 0 95 0.00 0 103 0.16 0 38 0.16 0 39 0.00 0 47 0.00 0 51 0.16 9600 0 19 −2.34 0 19 0.00 0 23 0.00 0 25 0.16 19200 0 9 −2.34 0 9 0.00 0 11 0.00 0 12 0.16 31250 0 5 0.00 0 5 2.40 − − − 0 7 0.00 38400 0 4 −2.34 0 4 0.00 0 5 0.00 − − − 110 2 106 150 2 77 300 600 −0.44 7.3728 2 108 0.08 2 130 0.16 2 79 0.00 2 1 155 0.16 1 159 1 77 0.16 1 1200 0 155 2400 0 4800 ビットレート 動作周波数φ(MHz) (bit/s) 9.8304 n 10 12 N 誤差(%) n N 誤差(%) n N 12.288 誤差(%) n N 誤差(%) 110 2 174 −0.26 2 177 −0.25 2 212 0.03 2 217 0.08 150 2 127 0.00 2 129 0.16 2 155 0.16 2 159 0.00 300 1 255 0.00 2 64 0.16 2 77 0.16 2 79 0.00 600 1 127 0.00 1 129 0.16 1 155 0.16 1 159 0.00 1200 0 255 0.00 1 64 0.16 1 77 0.16 1 79 0.00 2400 0 127 0.00 0 129 0.16 0 155 0.16 0 159 0.00 4800 0 63 0.00 0 64 0.16 0 77 0.16 0 79 0.00 9600 0 31 0.00 0 32 −1.36 0 38 0.16 0 39 0.00 19200 0 15 0.00 0 15 1.73 0 19 −2.34 0 19 0.00 31250 0 9 −1.70 0 9 0.00 0 11 0.00 0 11 2.40 38400 0 7 0.00 0 7 1.73 0 9 −2.34 0 9 0.00 461 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 15.3 ビットレートに対する BRR の設定例〔調歩同期式モード〕(3) ビットレート 動作周波数φ(MHz) (bit/s) 14 n 14.7456 N 誤差(%) n 17.2032 N 誤差(%) n N 誤差(%) n N 誤差(%) 64 0.70 3 70 0.03 3 75 0.48 110 2 248 −0.17 150 2 181 0.16 2 191 0.00 2 207 0.16 2 223 0.00 300 2 90 0.16 2 95 0.00 2 103 0.16 2 111 0.00 600 1 181 0.16 1 191 0.00 1 207 0.16 1 223 0.00 1200 1 90 0.16 1 95 0.00 1 103 0.16 1 111 0.00 2400 0 181 0.16 0 191 0.00 0 207 0.16 0 223 0.00 4800 0 90 0.16 0 95 0.00 0 103 0.16 0 111 0.00 9600 0 45 −0.93 0 47 0.00 0 51 0.16 0 55 0.00 19200 0 22 −0.93 0 23 0.00 0 25 0.16 0 27 0.00 31250 0 13 0.00 0 14 −1.70 0 15 0.00 0 16 1.20 38400 − − − 0 11 0.00 0 12 0.16 0 13 0.00 ビットレート 3 動作周波数φ(MHz) (bit/s) 462 16 18 19.6608 n N 誤差(%) n 110 3 79 −0.12 150 2 233 300 20 N 誤差(%) n N 誤差(%) 86 0.31 3 88 −0.25 0.16 2 255 0.00 3 64 0.16 2 116 0.16 2 127 0.00 2 129 0.16 600 1 233 0.16 1 255 0.00 2 64 0.16 1200 1 116 0.16 1 127 0.00 1 129 0.16 2400 0 233 0.16 0 255 0.00 1 64 0.16 4800 0 116 0.16 0 127 0.00 0 129 0.16 9600 0 58 −0.69 0 63 0.00 0 64 0.16 19200 0 28 1.02 0 31 0.00 0 32 −1.36 31250 0 17 0.00 0 19 −1.70 0 19 0.00 38400 0 14 −2.34 0 15 0.00 0 15 1.73 3 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 15.4 ビットレートに対する BRR の設定例〔クロック同期式モード〕 ビットレート 動作周波数φ(MHz) (bit/s) 2 4 8 n N n N 110 3 70 − − 250 2 124 2 500 1 249 1k 1 2.5k 10 16 20 n N n N n N n N 249 3 124 − − 3 249 2 124 2 249 − − 3 124 − − 124 1 249 2 124 − − 2 249 − − 0 199 1 99 1 199 1 249 2 99 2 124 5k 0 99 0 199 1 99 1 124 1 199 1 249 10k 0 49 0 99 0 199 0 249 1 99 1 124 25k 0 19 0 39 0 79 0 99 0 159 0 199 50k 0 9 0 19 0 39 0 49 0 79 0 99 100k 0 4 0 9 0 19 0 24 0 39 0 49 250k 0 1 0 3 0 7 0 9 0 15 0 19 500k 0 0* 0 1 0 3 0 4 0 7 0 9 0 0* 0 1 0 3 0 4 0 1 0 0* 1M 2.5M 0 0* 5M 【注】 誤差は、なるべく 1%以内になるように設定してください。 【記号説明】 空欄 :設定できません − :設定可能ですが誤差がでます * :連続送信/受信はできません 463 15. シリアルコミュニケーションインタフェース(SCI、IrDA) BRR の設定値は以下の計算式で求められます。 調歩同期式モード N= φ 64×22n−1×B ×106−1 クロック同期式モード N= φ ×106−1 2n−1 8×2 ×B B :ビットレート(bit/s) N :ボーレートジェネレータの BRR の設定値(0≦N≦255) φ:動作周波数(MHz) n :ボーレートジェネレータ入力クロック(n=0〜3) (n とクロックの関係は下表を参照してください。) n クロック SMR の設定値 CKS1 CKS0 0 φ 0 0 1 φ/4 0 1 2 φ/16 1 0 3 φ/64 1 1 調歩同期式モードのビットレート誤差は、以下の計算式で求められます。 誤差(%)={ 464 φ×106 −1 (N+1)×B×64×22n−1 }×100 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 1 5.5 に調歩同期式モードの各周波数における最大ビットレートを示します。また、 表 15.6、表 15.7 に外部クロック入力時の最大ビットレートを示します。 表 15.5 各周波数における最大ビットレート(調歩同期式モード) φ(MHz) 最大ビットレート(bit/s) n N 2 62500 0 0 2.097152 65536 0 0 2.4576 76800 0 0 3 93750 0 0 3.6864 115200 0 0 4 125000 0 0 4.9152 153600 0 0 5 156250 0 0 6 187500 0 0 6.144 192000 0 0 7.3728 230400 0 0 8 250000 0 0 9.8304 307200 0 0 10 312500 0 0 12 375000 0 0 12.288 384000 0 0 14 437500 0 0 14.7456 460800 0 0 16 500000 0 0 17.2032 537600 0 0 18 562500 0 0 19.6608 614400 0 0 20 625000 0 0 465 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 15.6 外部クロック入力時の最大ビットレート(調歩同期式モード) φ(MHz) 466 外部入力クロック(MHz) 最大ビットレート(bit/s) 2 0.5000 31250 2.097152 0.5243 32768 2.4576 0.6144 38400 3 0.7500 46875 3.6864 0.9216 57600 4 1.0000 62500 4.9152 1.2288 76800 5 1.2500 78125 6 1.5000 93750 6.144 1.5360 96000 7.3728 1.8432 115200 8 2.0000 125000 9.8304 2.4576 153600 10 2.5000 156250 12 3.0000 187500 12.288 3.0720 192000 14 3.5000 218750 14.7456 3.6864 230400 16 4.0000 250000 17.2032 4.3008 268800 18 4.5000 281250 19.6608 4.9152 307200 20 5.0000 312500 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 15.7 外部クロック入力時の最大ビットレート(クロック同期式モード) φ(MHz) 外部入力クロック(MHz) 最大ビットレート(bit/s) 2 0.3333 333333.3 4 0.6667 666666.7 6 1.0000 1000000.0 8 1.3333 1333333.3 10 1.6667 1666666.7 12 2.0000 2000000.0 14 2.3333 2333333.3 16 2.6667 2666666.7 18 3.0000 3000000.0 20 3.3333 3333333.3 467 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.2.9 シリアルインタフェースモードレジスタ(SCMR) 7 6 5 4 3 2 1 0 − − − − SDIR SINV − SMIF 初期値 : 1 1 1 1 0 0 1 0 R/W − − − − R/W R/W − R/W ビット : : SCMR は、8 ビットのリード/ライト可能なレジスタで、SCI の機能の選択を行います。 SCMR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サ ブスリープモード、またはモジュールストップモード時に、H'F2 に初期化されます。 ビット 7〜4:リザーブビット リードすると常に 1 が読み出されます。ライトは無効です。 ビット 3:データトランスファディレクション(SDIR) シリアル/パラレル変換のフォーマットを選択します。 ビット 3 説 明 SDIR 0 TDR の内容を LSB ファーストで送信 (初期値) 受信データを LSB ファーストとして RDR に格納 1 TDR の内容を MSB ファーストで送信 受信データを MSB ファーストとして RDR に格納 ビット 2:データインバート(SINV) データのロジックレベルの反転を指定します。S INV ビットは、パリティビットのロジ ックレベルには影響しません。パリティビットの反転のためには、S MR の O/E ビットを 反転する必要があります。 ビット 2 説 明 SINV 0 TDR の内容をそのまま送信 受信データをそのまま RDR に格納 1 TDR の内容を反転してデータを送信 受信データを反転して RDR に格納 468 (初期値) シリアルコミュニケーションインタフェース(SCI、IrDA) 15. ビット 1:リザーブビット リードすると常に 1 が読み出されます。ライトは無効です。 ビット 0:シリアルコミュニケーションインタフェースモードセレクト(SMIF) リザーブビットです。1 をライトしないでください。 ビット 0 説 明 SMIF 15.2.10 0 通常 SCI モード 1 リザーブモード (初期値) モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MSTP7 ビット、MSTP6 ビット、MSTP5 ビットを 1 にセットすると、バスサイクルの終 了時点で SCI0、SCI1、SCI2 はそれぞれ動作を停止してモジュールストップモードへ遷移し ます。詳細は、「25.5 モジュールストップモード」を参照してください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 ビット 7:モジュールストップ(MSTP7) SCI0 のモジュールストップモードを指定します。 MSTPCRL 説 明 ビット 7 MSTP7 0 SCI0 のモジュールストップモード解除 1 SCI0 のモジュールストップモード設定 (初期値) 469 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 6:モジュールストップ(MSTP6) SCI1 のモジュールストップモードを指定します。 説 MSTPCRL 明 ビット 6 MSTP6 0 SCI1 のモジュールストップモード解除 1 SCI1 のモジュールストップモード設定 (初期値) ビット 5:モジュールストップ(MSTP5) SCI2 のモジュールストップモードを指定します。 説 MSTPCRL 明 ビット 5 MSTP5 15.2.11 0 SCI2 のモジュールストップモード解除 1 SCI2 のモジュールストップモード設定 (初期値) キーボードコンパレータコントロールレジスタ(KBCOMP) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IrE IrCKS2 IrCKS1 IrCKS0 KBADE KBCH2 KBCH1 KBCH0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W KB C OMP は、8 ビットのリード/ライト可能なレジスタで、S CI 2 の機能の選択および A/D 変換器の機能の選択を行います。 KBCOMP は、リセット、ハードウェアスタンバイモード時に、H'00 に初期化されます。 ビット 7:IrDA イネーブル(IrE) SCI2 の入出力を通常の SCI か IrDA かに設定します。 ビット 7 説 明 IrE 470 0 TxD2/IrTxD、RxD2/IrRxD 端子は TxD2、RxD2 として動作 1 TxD2/IrTxD、RxD2/IrRxD 端子は IrTxD、IrRxD として動作 (初期値) 15. シリアルコミュニケーションインタフェース(SCI、IrDA) ビット 6〜4:IrDA クロックセレクト 2〜0(IrCKS2〜IrCKS0) Ir DA 機能をイネーブルにしたとき、Ir TxD 出力パルスエンコード時の High パルス幅を 設定します。 ビット 6 ビット 5 ビット 4 IrCKS2 IrCKS1 IrCKS0 0 0 0 B×3/16(ビットレートの 16 分の 3) (初期値) 1 φ/2 0 φ/4 1 φ/8 0 φ/16 1 φ/32 0 φ/64 1 φ/128 1 1 0 1 説 明 ビット 3〜0:キーボードコンパレータコントロール 「第 20 章 A/D 変換器」の説明を参照してください。 471 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.3 動作説明 15.3.1 概要 SCI は、キャラクタ単位で同期をとりながら通信する調歩同期式モードと、クロックパ ルスにより同期をとりながら通信するクロック同期式モードの 2 方式で、シリアル通信が できます。 調歩同期式モードと、クロック同期式モードの選択および送信フォーマットの選択は、 SMR で行います。これを表 15.8 に示します。また、SCI のクロックソースは、SMR の C/A ビットおよび SCR の CKE1、CKE0 ビットの組み合わせできまります。これを表 15.9 に示 します。 (1)調歩同期式モード ■データ長:7 ビット/8 ビットから選択可能 ■パリティの付加、マルチプロセッサビットの付加、および 1 ビット/2 ビットのストッ プビットの付加を選択可能 (これらの組み合わせにより送信/受信フォーマットおよび、キャラクタ長を決定) ■受信時にフレーミングエラー、パリティエラー、オーバランエラー、およびブレークの 検出が可能 ■SCI のクロックソース:内部クロック/外部クロックから選択可能 ・内部クロックを選択した場合: SCI はボーレートジェネレータのクロックで動作し、ビットレートと同じ周波数の クロックを出力することが可能 ・外部クロックを選択した場合: ビットレートの 16 倍の周波数のクロックを入力することが必要(内蔵ボーレート ジェネレータを使用しない) (2)クロック同期式モード ■送信/受信フォーマット:8 ビットデータ固定 ■受信時にオーバランエラーの検出可能 ■SCI のクロックソース:内部クロック/外部クロックから選択可能 ・内部クロックを選択した場合: SCI はボーレートジェネレータのクロックで動作し、同期クロックを外部へ出力 ・外部クロックを選択した場合: 内部ボーレートジェネレータを使用せず、入力された同期クロックで動作 472 シリアルコミュニケーションインタフェース(SCI、IrDA) 15. 表 15.8 SMR の設定値とシリアル送信/受信フォーマット SMR の設定値 モード SCI の送信/受信フォーマット ビット ビット ビット ビット ビット データ長 マルチプロセッサ 7 6 2 5 3 C/A CHR MP PE STOP 0 0 0 0 0 調歩同期式 1 モード 1 8 ビット パリティ ストップ ビット ビット ビット長 なし なし 1 ビット データ 2 ビット あり 0 2 ビット 1 1 0 1 0 7 ビット 1 データ なし 1 1 1 ビット 2 ビット あり 0 1 ビット 2 ビット 1 0 1 ビット − 0 調歩同期式 − 1 モード − 0 − 1 8 ビット あり なし 1 ビット データ 2 ビット (マルチプロ 7 ビット 1 ビット セッサフォー データ 2 ビット マット) 1 − − − − クロック 同期式 8 ビット なし なし データ モード 表 15.9 SMR、SCR の設定と SCI のクロックソースの選択 SMR SCR の設定 モード ビット ビット ビット 7 1 0 C/A CKE1 CKE0 0 0 0 SCI の送信/受信クロック クロック ソース 調歩同期式モード 内部 SCI は、SCK 端子を使用しません ビットレートと同じ周波数のクロックを出力 1 1 SCK 端子の機能 0 外部 ビットレートの 16 倍の周波数のクロックを入力 内部 同期クロックを出力 外部 同期クロックを入力 1 1 0 0 クロック同期式モード 1 1 0 1 473 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.3.2 調歩同期式モード時の動作 調歩同期式モードは、通信開始を意味するスタートビットと通信終了を意味するストッ プビットとをデータに付加したキャラクタを送信または受信し、1 キャラクタ単位で同期 をとりながらシリアル通信を行うモードです。 SCI 内部では、送信部と受信部は独立していますので、全二重通信を行うことができま す。また、送信部と受信部が共にダブルバッファ構造になっていますので、送信および受 信中にデータのリード/ライトができ、連続送信/受信が可能です。 調歩同期式シリアル通信の一般的なフォーマットを図 15.2 に示します。 調歩同期式シリアル通信では、通信回線は通常、マーク状態(High レベル)に保たれて います。SCI は通信回線を監視し、スペース(Low レベル)になったところをスタートビ ットとみなしてシリアル通信を開始します。 シリアル通信の 1 キャラクタは、スタートビット(Low レベル)から始まりデータ(LSB ファースト:最下位ビットから)、パリティビット(High/Low レベル)、最後にストッ プビット(High レベル)の順で構成されています。 調歩同期式モードでは、SCI は受信時にスタートビットの立ち下がりエッジで同期化を 行います。また SCI は、データを 1 ビット期間の 16 倍の周波数のクロックの 8 番目でサン プリングしますので、各ビットの中央で通信データが取り込まれます。 アイドル状態 (マーク状態) 1 LSB シリアル データ 0 1 MSB D0 D1 D2 D3 D4 D5 スタート ビット 送信/受信データ 1ビット 7ビットまたは8ビット D6 D7 0/1 1 1 パリティ ビット ストップ ビット 1ビット または なし 1ビット または 2ビット 通信データの1単位(キャラクタまたはフレーム) 図 15.2 調歩同式通信のデータフォーマット (8 ビットデータ/パリティあり/2 ストップビットの例) (1)送信/受信フォーマット 調歩同期式モードで設定できる送信/受信フォーマットを、表 15.10 に示します。 送信/受信フォーマットは 12 種類あり、SMR の選定により選択できます。 474 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 15.10 シリアル送信/受信フォーマット(調歩同期式モード) SMRの設定 シリアル送信/受信フォーマットとフレーム長 CHR PE MP STOP 1 2 3 4 5 6 7 8 9 10 11 12 0 0 0 0 S 8ビットデータ STOP 0 0 0 1 S 8ビットデータ STOP STOP 0 1 0 0 S 8ビットデータ P STOP 0 1 0 1 S 8ビットデータ P STOP STOP 1 0 0 0 S 7ビットデータ STOP 1 0 0 1 S 7ビットデータ STOP STOP 1 1 0 0 S 7ビットデータ P STOP 1 1 0 1 S 7ビットデータ P STOP STOP 0 − 1 0 S 8ビットデータ MPB STOP 0 − 1 1 S 8ビットデータ MPB STOP STOP 1 − 1 0 S 7ビットデータ MPB STOP 1 − 1 1 S 7ビットデータ MPB STOP STOP 【記号説明】 S :スタートビット STOP :ストップビット P :パリティビット MPB :マルチプロセッサビット 475 15. シリアルコミュニケーションインタフェース(SCI、IrDA) (2)クロック SCI の送受信クロックは、SMR の C/A ビットと SCR の CKE1、CKE0 ビットの設定によ り、内蔵ボーレートジェネレータの生成した内部クロック、または S CK 端子から入力さ れた外部クロックの 2 種類から選択できます。S CI のクロックソースの選択については表 15.9 を参照してください。 外部クロックを SCK 端子に入力する場合には、使用するビットレートの 16 倍の周波数 のクロックを入力してください。 内部クロックで動作させるとき、SCK 端子からクロックを出力することができます。こ のとき出力されるクロックの周波数はビットレートと等しく、位相は図 1 5.3 に示すよう に送信データの中央にクロック立ち上がりエッジがくるようになります。 0 D0 D1 D2 D3 D4 D5 D6 D7 0/1 1 1 1フレーム 図 15.3 出力クロックと通信データの位相関係(調歩同期式モード) (3)データの送信/受信動作 (a)SCI の初期化(調歩同期式) データの送信/受信前には、まず SCR の TE、RE ビットを 0 にクリアした後、以下の順 で SCI を初期化してください。 動作モードの変更、通信フォーマットの変更などの場合には必ず、TE ビットおよび RE ビットを 0 にクリアしてから次の手順で変更を行ってください。TE ビットを 0 にクリア すると TDR E フラグは 1 にセットされ、TS R が初期化されます。R E ビットを 0 にクリア しても、R DR F、P ER、F ER、OR ER の各フラグ、および R DR の内容は保持されますので 注意してください。 外部クロックを使用している場合には、動作が不確実になりますので初期化を含めた動 作中にクロックを止めないでください。 図 15.4 に SCI の初期化フローチャートの例を示します。 476 15. 初 期 化 開 シリアルコミュニケーションインタフェース(SCI、IrDA) 始 SCRのTE、REビットを0にクリア SCRのCKE1、CKE0ビットを設定 (TE、REはビット0) [1] [2] SMR、SCMRに送信/受信フォーマッ トを設定します。 SMR、SCMRに送信/ 受信フォーマットを設定 [2] BRRに値を設定 [3] Wait 1ビット期間経過 No Yes SCRのTE、REビットを1にセット、 および、RIE、TIE、TEIE、MPIEビット を設定 [1] SCRにクロックの選択を設定してくだ さい。 なお、RIE、TIE、TEIE、MPIE、およ びTE、REビットは必ず0にクリアして ください。 調歩同期式モードでクロックを選択し た場合には、SCRの設定後、直ちに出 力されます。 [3] BRRにビットレートに対応する値をラ イトします。ただし、外部クロックを 使用する場合には必要ありません。 [4] 少なくとも1ビット期間待ってから、 SCRのTEビットまたはREビットを1に セットします。また、RIE、TIE、TEIE 、MPIEビットを設定してください。 TE、REビットを設定するとことによ りTxD、RxD端子が使用可能となります。 [4] 〈初期化完了〉 図 15.4 SCI の初期化フローチャートの例 477 15. シリアルコミュニケーションインタフェース(SCI、IrDA) (b)シリアルデータ送信(調歩同期式) 図 15.5 にシリアル送信のフローチャートの例を示します。 シリアルデータ送信は以下の手順にしたがい行ってください。 初 送 期 信 化 開 [1] 始 SSRのTDREフラグをリード TDRE=1 [2] No Yes TDRに送信データをライトし、 SSRのTDREフラグを0にクリア 全データ送信 No Yes [3] SSRのTENDフラグをリード TEND=1 No Yes ブレーク出力 No [4] Yes DRを0にクリア、 DDRを1にセット SCRのTEビットを0にクリア 〈終 了〉 図 15.5 シリアル送信のフローチャートの例 478 [1]SCIを初期化: TxD端子は自動的に送信データ出力 端子になります。 TEビットを1にセットした後、1フ レーム分の1を出力して送信可能状 態になります。 [2]SCIの状態を確認して、送信データ をライト: SSRをリードして、TDREフラグが 1であることを確認した後、TDRに 送信データをライトし、TDREフラ グを0にクリアします。 [3]シリアル送信の継続手順: シリアル送信を続けるときには、 TDREフラグの1をリードしてライ ト可能であることを確認した後に TDRにデータをライトし、続いて TDREフラグを0にクリアしてくだ さい。ただし、送信データエンプ ティ割込み(TXI)要求でDTCを起 動し、TDRにデータをライトする 場合には、TDREフラグのチェック およびクリアは自動的に行われます。 [4]シリアル送信の終了時にブレークを 出力: シリアル送信時にブレークを出力 するときには、TxD端子に対応する ポートのDDRを1にセット、DRを0 にクリアした後にSCRのTEビット を0にクリアします。 15. シリアルコミュニケーションインタフェース(SCI、IrDA) SCI はシリアル送信時に以下のように動作します。 [1]SCI は、SSR の TDRE フラグを監視し、0 であると TDR にデータがライトされたと認 識し、TDR から TSR にデータを転送します。 [2]TDR から TS R へデータを転送した後に TDR E フラグを 1 にセットし、送信を開始し ます。 このとき、S CR の TIE ビットが 1 にセットされていると送信データエンプティ割込み (TXI)要求を発生します。 シリアル送信データは、以下の順に TxD 端子から送り出されます。 [a]スタートビット: 1 ビットの 0 が出力されます。 [b]送信データ: 8 ビット、または 7 ビットのデータが LSB から順に出力されます。 [c]パリティビットまたはマルチプロセッサビット: 1 ビットのパリティビット(偶数パリティ、または奇数パリティ)、または 1 ビッ トのマルチプロセッサビットが出力されます。 なお、パリテ ィビット、またはマルチプ ロセッサビットを出力しな いフォーマッ トも選択できます。 [d]ストップビット: 1 ビットまたは 2 ビットの 1(ストップビット)が出力されます。 [e]マーク状態: 次の送信を開始するスタートビットを送り出すまで 1 を出力し続けます。 [3]SCI は、ストップビットを送出するタイミングで TDRE フラグをチェックします。 TDRE フラグが 0 であると TDR から TSR にデータを転送し、ストップビットを送り出 した後、次フレームのシリアル送信を開始します。 TDR E フラグが 1 であると S SR の TEND フラグに 1 をセットし、ストップビットを送 り出した後、1 を出力するマーク状態になります。このとき S CR の TEI E ビットが 1 にセットされていると TEI 割込み要求を発生します。 調歩同期式モードでの送信時の動作例を図 15.6 に示します。 479 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 1 スタート ビット 0 データ D0 D1 パリティ ストップ スタート ビット ビット ビット D7 0/1 1 0 データ D0 D1 パリティ ストップ 1 ビット ビット アイドル状態 D7 0/1 1 (マーク状態) TDRE TEND TXI割込み 要求の発生 TXI割込み処理 ルーチンでTDRに データをライトし、 TDREフラグを0に クリア TXI割込み 要求の発生 1フレーム 図 15.6 調歩同期式モードでの送信時の動作例 (8 ビットデータ/パリティあり/1 ストップビットの例) 480 TEI割込み 要求の発生 15. シリアルコミュニケーションインタフェース(SCI、IrDA) (c)シリアルデータ受信(調歩同期式) 図 15.7 にシリアル受信フローチャートの例を示します。 シリアルデータ受信は以下の手順にしたがい行ってください。 初 受 期 信 [1] 化 開 始 SSRのORER、PER、 FERフラグをリード [2] Yes PER∨FER∨ORER=1 [3] No エラー処理 (次頁に続く) SSRのRDRFフラグをリード No [4] RDRF=1 RDRの受信データをリードし、SSRの RDRFフラグを0にクリア 全数受信 Yes SCRのREビットを0にクリア 〈終 了〉 [2][3]受信エラー処理とブレークの 検出: 受信エラーが発生したときには、 SSRのORER、PER、FERの各フ ラグをリードしてエラーを判定し ます。所定のエラー処理を行った 後、必ず、ORER、PER、FERフ ラグをすべて0にクリアしてくだ さい。ORER、PER、FERフラグ のいずれかが1にセットされた状 態では受信を再開できません。ま た、フレーミングエラー時にRxD 端子に対応する入力ポートの値を リードすることでブレークの検出 ができます。 [4]SCIの状態を確認して受信データ のリード: SSRをリードして、RDRF=1で あることを確認した後、RDRの 受信データをリードし、RDRFフ ラグを0にクリアします。RDRF フラグが0から1に変化したことは、 RXI割込みによっても知ることが できます。 Yes No [1]SCIの初期化: RxD端子は自動的に受信データ入 力端子になります。 [5] [5]シリアル受信の継続手順: シリアル受信を続けるときには、 現在のフレームのストップビット を受信する前に、RDRFフラグの リード、RDRのリード、RDRFフ ラグを0にクリアしておいてくだ さい。ただし、RXI割込みでDTC を起動しRDRの値をリードする 場合には、RDRFフラグのクリア は自動的に行われます。 図 15.7 シリアル受信データフローチャートの例(1) 481 15. シリアルコミュニケーションインタフェース(SCI、IrDA) [3] エラー処理 No ORER=1 Yes オーバランエラー処理 No FER=1 Yes ブレーク Yes No フレーミングエラー処理 No SCRのREビットを0にクリア PER=1 Yes パリティエラー処理 SSRのORER、PER、 FERフラグを0にクリア 〈終 了〉 図 15.7 シリアル受信データフローチャートの例(2) 482 15. シリアルコミュニケーションインタフェース(SCI、IrDA) SCI は受信時に以下のように動作します。 [1]S CI は通信回線を監視し、スタートビットの 0 を検出すると内部を同期化し、受信を 開始します。 [2]受信したデータを RSR の LSB から MSB の順に格納します。 [3]パリティビットおよびストップビットを受信します。 受信後、SCI は以下のチェックを行います。 [a]パリティチェック: 受信データの 1 の数をチェックし、これが SMR の O/E ビットで設定した偶数/奇 数パリティになっているかをチェックします。 [b]ストップビットチェック: ストップビットが 1 であるかをチェックします。 ただし、2 ストップビットの場合、1 ビット目のみをチェックします。 [c]ステータスチェック: RDRF フラグが 0 であり、受信データを RSR から RDR に転送できる状態であるか をチェックします。 以上のチェックをすべて満足したとき、R DR F フラグが 1 にセットされ、R DR に受信 データが格納されます。 エラーチェックで受信エラー*を発生すると表 15.11 のように動作します。 【注】 * 受信エラーが発生した状態では、以後の受信動作ができません。 また、受信時に RDRF フラグが 1 にセットされませんので、必ずエラーフラグ を 0 にクリアしてください。 [4]RDRF フラグが 1 になったとき、SCR の RIE ビットが 1 にセットされていると受信デ ータフル割込み(RXI)要求を発生します。 また、ORER、PER、FER フラグのいずれかが 1 になったとき、SCR の RIE ビットが 1 にセットされていると受信エラー割込み(ERI)要求を発生します。 483 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 表 15.11 受信エラーと発生条件 受信エラー名 略称 オーバランエラー ORER 発生条件 データ転送 SSR の RDRF フラグが 1 にセッ RSR から RDR に受信データは トされたまま次のデータ受信を 転送されません。 完了したとき フレーミングエラー FER ストップビットが 0 のとき RSR から RDR に受信データが 転送されます。 パリティエラー PER SMR で設定した偶数/奇数パリ RSR から RDR に受信データが ティの設定と受信したデータが 転送されます。 異なるとき 調歩同期式モード受信時の動作例を図 15.8 に示します。 1 スタート ビット 0 データ D0 D1 パリティ ストップ スタート ビット ビット ビット D7 0/1 1 0 データ D0 D1 パリティ ストップ 1 ビット ビット アイドル状態 D7 0/1 0 (マーク状態) RDRF FER RXI割込み RXI割込み処理 要求の発生 ルーチンでRDRの データをリードし RDRFフラグを0に クリア 1フレーム 図 15.8 SCI の受信時の動作例 (8 ビットデータ/パリティあり/1 ストップビットの例) 484 フレーミング エラーでERI 割込み要求の 発生 15. 15.3.3 シリアルコミュニケーションインタフェース(SCI、IrDA) マルチプロセッサ通信機能 マルチプロセッサ通信機能とは、調歩同期式モードでマルチプロセッサビットを付加し たフォーマット(マルチプロセッサフォーマット)でシリアル通信をする機能です。この 機能を使用すると、複数のプロセッサ間でシリアル通信回線を共有したデータの送受信が できます。 マルチプロセッサ通信を行うとき、受信局は各々固有の ID コードでアドレッシングさ れています。 シリアル通信サイクルは、受信局を指定する ID 送信サイクルとデータ送信サイクルの 2 つから構成されます。この ID 送信サイクルとデータ送信サイクルの区別は、マルチプロ セッサビットで行います。 送信局は、まず、シリアル通信を行いたい受信局の ID を、マルチプロセッサビット 1 を付加したデータにして送信します。続いて、送信データを、マルチプロセッサビット 0 を付加したデータにして送信します。 受信局は、マルチプロセッサビット 1 のデータが送信されるまでは、データを読み飛ば します。 マルチプロセッサビット 1 のデータを受信したとき、受信局は自局の ID と比較します。 そして、一致した局は続いて送信されるデータを受信します。一方、一致しなかった局は、 再びマルチプロセッサビット 1 のデータが送信されるまでは、データを読み飛ばします。 このようにして複数のプロセッサ間のデータ送受信が行われます。 図 15.9にマルチプロセッサフォーマットを使用したプロセッサ間通信の例を示します。 (1)送信/受信フォーマット 送信/受信フォーマットは 4 種類です。 マルチプロセッサフォーマットを指定した場合は、パリティビットの指定は無効です。 詳細は表 15.10 を参照してください。 (2)クロック 調歩同期式モードの項を参照してください。 485 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 送信局 シリアル通信回線 受信局A 受信局B 受信局C 受信局D (ID=01) (ID=02) (ID=03) (ID=04) シリアル データ H'01 H'AA (MPB=1) ID送信サイクル =受信局の指定 (MPB=0) データ送信サイクル =IDで指定した受信局 へのデータ送信 【記号説明】 MPB:マルチプロセッサビット 図 15.9 マルチプロセッサフォーマットを使用したプロセッサ間通信の例 (受信局 A へのデータ H'AA の送信の例) (3)データの送信/受信動作 (a)マルチプロセッサシリアルデータ送信 図 15.10 にマルチプロセッサシリアルデータ送信のフローチャートの例を示します。 マルチプロセッサシリアルデータ送信は、以下の手順にしたがい行ってください。 486 15. 初 送 期 信 シリアルコミュニケーションインタフェース(SCI、IrDA) 化 開 [1] 始 SSRのTDREフラグをリード TDRE=1 [2] [2]SCIの状態を確認して、送信デー タをライト: SSRをリードして、TDREフラグ が1であることを確認した後、 TDRに送信データをライトします。 また、SSRのMPBTビットを0ま たは1に設定します。最後に TDREフラグを0にクリアしてく ださい。 No Yes TDRに送信データをライトし、 SSRのMPBTビットを設定 TDREフラグを0にクリア 送信終了 No [3] Yes SSRのTENDフラグをリード TEND=1 No Yes ブレーク出力 [1]SCIの初期化: TxD端子は自動的に送信データ出 力端子になります。 TEビットを1にセットした後、1 フレーム分の1を出力して送信可 能状態になります。 No [4] [3]シリアル送信の継続手順: シリアル送信を続けるときには、 必ずTDREフラグの1をリードし てライト可能であることを確認し た後にTDRにデータをライトし、 続いてTDREフラグを0にクリア してください。ただし、送信デー タエンプティ割込み(TXI)要求 でDTCを起動し、TDRにデータを ライトする場合には、TDREフラ グのチェック、およびクリアは自 動的に行われます。 [4]シリアル送信の終了時にブレーク を出力: シリアル送信時にブレークを出力 するときには、ポートのDDRを1 にセットし、DRを0にクリアした 後にSCRのTEビットを0にクリア します。 Yes DRを0にクリア、DDRを 1にセット SCRのTEビットを0にクリア 〈終 了〉 図 15.10 マルチプロセッサシリアル送信のフローチャートの例 487 15. シリアルコミュニケーションインタフェース(SCI、IrDA) SCI は、シリアル送信時に以下のように動作します。 [1]SCI は、SSR の TDRE フラグを監視し、0 であると TDR にデータがライトされたと認 識し、TDR から TSR にデータを転送します。 [2]TDR から TS R へデータを転送した後に TDR E フラグを 1 にセットし、送信を開始し ます。 このとき、S CR の TIE ビットが 1 にセットされていると送信データエンプティ割込み (TXI)要求を発生します。 シリアル送信データは、以下の順に TxD 端子から送り出されます。 [a]スタートビット: 1 ビットの 0 が出力されます。 [b]送信データ: 8 ビット/7 ビットのデータが LSB から順に出力されます。 [c]マルチプロセッサビット: 1 ビットのマルチプロセッサビット(MPBT の値)が出力されます。 [d]ストップビット: 1 ビット/2 ビットの 1(ストップビット)が出力されます。 [e]マーク状態: 次の送信を開始するスタートビットを送り出すまで 1 を出力し続けます。 [3]SCI は、ストップビットを送り出すタイミングで TDRE フラグをチェックします。 TDRE フラグが 0 であると TDR から TSR にデータを転送し、ストップビットを送り出 した後、次のフレームのシリアル送信を開始します。 TDR E フラグが 1 であると S SR の TEND フラグを 1 にセットし、ストップビットを送 り出した後、1 を出力するマーク状態になります。このとき S CR の TEI E ビットが 1 にセットされていると送信終了割込み(TEI)要求を発生します。 図 15.11 にマルチプロセッサフォーマットの SCI の送信時の動作例を示します。 488 15. 1 スタート ビット 0 マルチ プロセッサストップ スタート ビット ビット ビット データ D0 D1 シリアルコミュニケーションインタフェース(SCI、IrDA) D7 0/1 1 0 データ D0 D1 マルチ プロセッサ ストップ 1 ビット ビット アイドル状態 D7 0/1 1 (マーク状態) TDRE TEND TXI割込み 要求の発生 TXI割込み処理ルーチン でTDRにデータをライ トし、TDREフラグを0 にクリア TXI割込み 要求の発生 TEI割込み 要求の発生 1フレーム 図 15.11 SCI の送信時の動作例 (8 ビットデータ/マルチプロセッサビットあり/1 ストップビットの例) (b)マルチプロセッサシリアルデータ受信 図 15.12 にマルチプロセッサシリアル受信のフローチャートの例を示します。 マルチプロセッサシリアルデータ受信は、以下の手順にしたがい行ってください。 489 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 初 受 期 信 [1] 化 開 始 SCRのMPIEビットを1にセット [2] SSRのORER、FERフラグをリード FER∨ORER=1 Yes No SSRのRDRFフラグをリード No [3] RDRF=1 RDRの受信データをリード 自局のID Yes SSRのORER、FERフラグをリード FER∨ORER=1 Yes No SSRのRDRFフラグをリード RDRF=1 [2]ID受信サイクル: SCRのMPIEビットを1にセットし ておきます。 [3]SCIの状態を確認して、IDの受信 と比較: SSRをリードして、RDRFフラグ が1であることを確認した後、 RDRのデータをリードし、自局の IDと比較します。 自 局 の I D で な い と き に は 、 再び MPIEビットを1にセットし、 RDRFフラグを0にクリアします。 自局のIDのときには、RDRFフラ グを0にクリアします。 [4]SCIの状態を確認してデータの受信: SSRをリードして、RDRFフラグ が1であることを確認した後、 RDRのデータをリードします。 Yes No [1]SCIの初期化: RxD端子は自動的に受信データ入 力端子になります。 [5] 受信エラー処理とブレークの検出: 受信エラーが発生したときには、 SSRのORER、FERフラグをリー ドしてエラーを判定します。所定 のエラー処理を行った後、必ず ORER、FERフラグをすべて0に クリアしてください。 ORER、FERフラグのいずれかが 1にセットされた状態では受信を 再開できません。 また、フレーミングエラー時に RxD端子の値をリードすることで [4] ブレークの検出ができます。 No Yes RDRの受信データをリード No 全数受信 [5] エラー処理 Yes SCRのREビットを0にクリア 〈終 (次頁に続く) 了〉 図 15.12 マルチプロセッサシリアル受信のフローチャートの例(1) 490 シリアルコミュニケーションインタフェース(SCI、IrDA) 15. [5] No エラー処理 ORER=1 Yes オーバランエラー処理 No FER=1 Yes ブレーク Yes No フレーミングエラー処理 SCRのREビットを0にクリア SSRのORER、PER、FERフラグを 0にクリア 〈終 了〉 図 15.12 マルチプロセッサシリアル受信のフローチャートの例(2) 図 15.13 にマルチプロセッサフォーマットの SCI の受信時の動作例を示します。 491 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 1 スタート ビット 0 ストップ スタート MPB ビット ビット データ(ID1) D0 D1 D7 1 1 0 データ(Data1) D0 D1 ストップ MPB ビット D7 0 1 1 アイドル状態 (マーク状態) MPIE RDRF RDRの 値 ID1 MPIE=0 RXI割込み要求 (マルチプロセ ッサ割込み) の発生 RXI割込み処理 自局のIDでない場合 ルーチンでRDRの 再びMPIEビットを データをリードし、 1にセット RDRFフラグを0に クリア RXI割込み要求は 発生しません。 またRDRは状態 を保持します。 (a)自局のIDと一致しないとき 1 データ(ID2) スタート ビット 0 D0 D1 ストップ スタート MPB ビット ビット D7 1 1 0 データ(Data2) D0 D1 D7 ストップ MPB ビット 0 1 1 アイドル状態 (マーク状態) MPIE RDRF RDRの 値 ID1 MPIE=0 ID2 RXI割込み要求 (マルチプロセ ッサ割込み) の発生 RXI割込み処理 ルーチンでRDRの データをリードし、 RDRFフラグを0に クリア 自局のIDなので、 そのまま受信を続け、 RXI割込み処理ルー チンでデータを受信 Data2 再びMPIEビットを 1にセット (b)自局のIDと一致したとき 図 15.13 SCI の受信時の動作例 (8 ビットデータ/マルチプロセッサビットあり/1 ストップビットの例) 15.3.4 クロック同期式モード時の動作 クロック同期式モードは、クロックパルスに同期してデータを送信または受信するモー ドで、高速シリアル通信に適しています。 SCI 内部では、送信部と受信部は独立していますので、クロックを共有することで全二 重通信ができます。 また、送信部と受信部が共にダブルバッファ構造になっていますので送信および受信中 にデータのリード/ライトができ、連続送信/受信が可能です。 クロック同期式シリアル通信の一般的なフォーマットを図 15.14 に示します。 492 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 通信データの1単位(キャラクタ、または、フレーム) * * 同期 クロック LSB シリアル データ Don't care 【注】* MSB ビット0 ビット1 ビット2 ビット3 ビット4 ビット5 ビット6 ビット7 Don't care 連続送信/受信のとき以外はHighレベル 図 15.14 クロック同期式通信のデータフォーマット クロック同期式シリアル通信では、通信回線のデータは同期クロックの立ち下がりから 次の立ち下がりまで出力されます。また、同期クロックの立ち上がりでデータの確定が保 証されます。 シリアル通信の 1 キャラクタは、データの LSB から始まり最後に MSB が出力されます。 MSB 出力後の通信回線の状態は MSB の状態を保ちます。 クロック同期式モードでは、SCI は同期クロックの立ち上がりに同期してデータを受信 します。 (1)送信/受信フォーマット 8 ビットデータ固定です。 パリティビットやマルチプロセッサビットの付加はできません。 (2)クロック SMR の C/A ビットと SCR の CKE1、CKE0 ビットの設定により内蔵ボーレートジェネレ ータの生 成した内部クロッ ク、または、S CK 端子から入力さ れた外部同期クロ ックの 2 種類から選択できます。SCI のクロックソースの選択については表 15.9 を参照してくださ い。 内部クロックで動作させるとき、SCK 端子からは同期クロックが出力されます。 同期クロックは 1 キャラクタの送受信で 8 パルス出力され、送信/受信を行わないとき には High レベルに固定されます。ただし、受信のみの動作のときは、オーバランエラー が発生するか、RE ビットを 0 にクリアするまで同期クロックは出力されます。1 キャラク タ単位の受信動作を行いたいときは、クロックソースは外部クロックを選択してください。 493 15. シリアルコミュニケーションインタフェース(SCI、IrDA) (3)データの送信/受信動作 (a)SCI の初期化(クロック同期式) データの送信/受信前には、SCR の TE、RE ビットを 0 にクリアした後、以下の手順に したがい SCI を初期化してください。 モードの変更、通信フォーマットの変更などの場合には必ず、TE、R E ビットを 0 にク リアしてから下記手順で変更してください。TE ビットを 0 にクリアすると TDR E フラグ は 1 にセットされ、TSR が初期化されます。 RE ビットを 0 にクリアしても RDRF、PER、FER、ORER の各フラグ、および RDR の内 容は保持されますので注意してください。 図 15.15 に SCI の初期化フローチャートの例を示します。 初 期 化 開 [1]SCRにクロックの選択を設定して ください。なお、RIE、TIE、TEIE、 MPIE、TE、REビットには必ず0 を設定してください。 始 SCRのTE、REビットを0にクリア [2]SMR、SCMRに送信/受信フォー マットを設定します。 SCRのCKE1、CKE0ビットを 設定(TE、REビットは0) [1] SMR、SCMRに送信/受信 フォーマットを設定 [2] BRRに値を設定 [3] Wait No 1ビット期間経過 [3]BRRにビットレートに対応する値 をライトします。ただし、外部ク ロックを使用する場合にはこの作 業は必要ありません。 [4]少なくとも1ビット期間待ってから、 SCRのTE、またはREビットを1 にセットします。 また、RIE、TIE、TEIE、MPIEビ ットを設定してください。 TE、 REビ ッ ト の 設 定 で TxD、 RxD端子が使用可能になります。 Yes SCRのTE、REビットを1にセット また、RIE、TIE、TEIE、 MPIEビットを設定 [4] 〈送信/受信開始〉 【注】 送受信同時動作の場合は、TEビット、REビットの0クリア、1セットの設定は同時に 行ってください。 図 15.15 SCI の初期化フローチャートの例 494 15. シリアルコミュニケーションインタフェース(SCI、IrDA) (b)シリアルデータ送信(クロック同期式) 図 15.16 にシリアル送信のフローチャートの例を示します。 シリアルデータ送信は以下の手順にしたがい行ってください。 初 送 期 信 化 開 [1] [1]SCIの初期化: TxD端子は自動的に送信デ ータ出力端子になります。 始 SSRのTDREフラグをリード TDRE=1 [2] No Yes TDRの送信データをライトし、 SSRのTDREフラグを0にクリア 全データ送信 No [3] Yes SSRのTENDフラグをリード TEND=1 [2]SCIの状態を確認して、送信 データをライト: SSRをリードして、TDRE フラグが1であることを確認 した後、TDRに送信データ をライトし、TDREフラグ を0にクリアします。 [3]シリアル送信の継続手順: シリアル送信を続けるとき には、必ずTDREフラグの1 をリードしてライト可能で あることを確認した後に TDRにデータをライトし、 続いてTDREフラグを0にク リアしてください。 ただし、送信データエンプ ティ割込み(TXI)要求で DTCを起動しTDRにデータ をライトする場合には、 TDREフラグのチェック、 およびクリアは自動的に行 われます。 No Yes SCRのTEビットを 0にクリア 〈終 了〉 図 15.16 シリアル送信のフローチャートの例 495 15. シリアルコミュニケーションインタフェース(SCI、IrDA) SCI はシリアル送信時に以下のように動作します。 [1]SCI は、SSR の TDRE フラグを監視し、0 であると TDR にデータがライトされたと認 識し、TDR から TSR にデータを転送します。 [2]TDR から TS R へデータを転送した後に TDR E フラグを 1 にセットし、送信を開始し ます。このとき、S CR の TIE ビットが 1 にセットされていると送信データエンプティ 割込み(TXI)要求を発生します。 クロック出力モードに設定したときには、SCI は同期クロックを 8 パルス出力します。 外部クロックに設定したときには、入力クロックに同期してデータを出力します。 シリアル送信データは、LS B(ビット 0)から MSB (ビット 7)の順に TxD 端子から 送り出されます。 [3]SCI は、MSB(ビット 7)を送り出すタイミングで TDRE フラグをチェックします。 TDRE フラグが 0 であると TDR から TSR にデータを転送し、次フレームのシリアル送 信を開始します。 TDR E フラグが 1 であると S SR の TEND フラグを 1 にセットし、MSB (ビット 7)を 送り出した後、TxD 端子は状態を保持します。 このとき SCR の TEIE ビットが 1 にセットされていると送信終了割込み(TEI)要求を 発生します。 [4]シリアル送信終了後は、SCK 端子は固定になります。 図 15.17 に SCI の送信時の動作例を示します。 496 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 転送方向 同期 クロック シリアル データ ビット0 ビット1 ビット7 ビット0 ビット1 ビット6 ビット7 TDRE TEND T X I 割込み 要求の発生 TXI割込み処理ルー チンでTDRにデータ をライトし、TDRE フラグを0にクリア T X I 割込み 要求の発生 T E I 割込み 要求の発生 1フレーム 図 15.17 SCI の送信時の動作例 (c)シリアルデータ受信(クロック同期式) 図 15.18 にシリアル受信フローチャートの例を示します。 シリアルデータ受信は以下の手順にしたがい行ってください。 動作モードを調歩同期式モードからクロック同期式モードに切り替える際には、必ず、 ORER、PER、FER の各フラグが 0 にクリアされていることを確認してください。 FER、PER フラグが 1 にセットされていると RDRF フラグがセットされません。また、 送信動作および受信動作のいずれも行うことができません。 497 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 初 受 期 信 [1] 化 開 始 [2] SSRのORERフラグをリード Yes ORER=1 No [3] エラー処理 (下図に続く) SSRのRDRFフラグをリード No [4] RDRF=1 Yes RDRの受信データをリードし、 SSRのRDRFフラグを0にクリア No 全数受信 [5] Yes SCRのREビットを0にクリア 〈終 [3] 了〉 エラー処理 オーバランエラー処理 SSRのORERフラグを 0クリア 〈終 了〉 図 15.18 シリアルデータ受信フローチャートの例 498 [1]SCIの初期化: RxD端子は自動的に受信データ 入力端子になります。 [2][3]受信エラー処理: 受信エラーが発生したときには、 SSRのORERフラグをリードし てから、所定のエラー処理を行 った後、ORERフラグを0にクリ アしてください。ORERフラグ が1にセットされた状態では、送 信/受信を再開できません。 [4]SCIの状態を確認して受信データ のリード: SSRをリードして、RDRFフラ グが1であることを確認した後、 RDRの受信データをリードし、 RDRFフラグを0にクリアします。 RDRFフラグが0から1に変化し たことは、RXI割込みによっても 知ることができます。 [5]シリアル受信の継続手順: シリアル受信を続けるときには、 現在のフレームのMSB(ビット7) を受信する前に、RDRFフラグ のリード、RDRのリード、 RDRFフラグの0クリアを終了し ておいてください。ただし、受 信データフル割込み(RXI)要求 でDTCを起動し、RDRの値をリ ードする場合にはRDRFフラグ のクリアは自動的に行われます。 15. シリアルコミュニケーションインタフェース(SCI、IrDA) SCI は受信時に以下のように動作します。 [1]SCI は同期クロックの入力または出力に同期して内部を初期化します。 [2]受信したデータを RSR の LSB から MSB の順に格納します。 受信後、SCI は、RDRF フラグが 0 であり、受信データを RSR から RDR に転送できる 状態であるかをチェックします。 このチェックを満足したとき RDRF フラグが 1 にセットされ、RDR に受信データが格 納されます。エラーチェックで受信エラーを発生すると、表 1 5.11 のように動作しま す。 エラーチェックで受信エラーを発生した状態では以後の送信動作、受信動作のいずれ も行うことができません。 [3]RDRF フラグが 1 になったとき、SCR の RIE ビットが 1 にセットされていると受信デ ータフル割込み(RXI)要求を発生します。 また、OR ER フラグが 1 になったとき、S CR の R IE ビットが 1 にセットされていると 受信エラー割込み(ERI)要求を発生します。 図 15.19 に SCI の受信時の動作例を示します。 同期 クロック シリアル データ ビット7 ビット0 ビット7 ビット0 ビット1 ビット6 ビット7 RDRF ORER RXI割込み 要求の発生 RXI割込み処理ルーチ ンでRDRのデータを リードし、RDRFフラ グを0にクリア RXI割込み 要求の発生 オーバランエラー でERI割込み要求 の発生 1フレーム 図 15.19 SCI の受信時の動作例 (d)シリアルデータ送受信同時動作(クロック同期式) 図 15.20 にシリアル送受信同時動作のフローチャートの例を示します。 シリアルデータ送受信同時動作は、以下の手順にしたがい行ってください。 499 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 送 初 期 化 受 信 開 [1]初期化: TxD端子は送信データ出力端 子に、RxD端子は受信データ 入力端子になり送受信同時動 作可能状態になります。 [1] 始 SSRのTDREフラグをリード [2]SCIの状態確認と送信データ のライト: SSRをリードしてTDREフラ グが1であることを確認した後、 TDRに送信データをライトし、 TDREフラグを0にクリアしま す。 TDREフラグが0から1に変化 したことは、TXI割込みによ っても知ることができます。 [2] No TDRE=1 Yes TDRに送信データをライトし、 SSRのTDREフラグを0にクリア SSRのORERフラグをリード ORER=1 No SSRのRDRFフラグをリード Yes [3] エラー処理 [4] No RDRF=1 Yes RDRの受信データをリードし、 SSRのRDRFフラグを0にクリア [3]受信エラー処理: 受信エラーが発生したときには、 SSRのORERフラグをリード してから、所定のエラー処理 を行った後、ORERフラグを 0に ク リ ア し て く だ さ い 。 ORERフラグが1にセットさ れた状態では送信/受信を再 開できません。 [4]SCIの状態を確認して受信デ ータのリード: SSRをリードして、RDRFフ ラグが1であることを確認し た後、RDRの受信データをリ ードし、RDRFフラグを0にク リアします。RDRFフラグが0 から1に変化したことは、RXI 割込みによっても知ることが できます。 [5]シリアル送受信の継続手順: シリアル送受信を続けるとき には、現在のフレームのMSB (ビット7)を受信する前に、 No RDRFフラグのリード、RDR 全数受信 [5] のリード、RDRFフラグの0ク リアを終了しておいてください。 Yes また、現在のフレームのMSB (ビット7)を送信する前に TDREフラグの1をリードして SCRのTE、REビットを ライト可能であることを確認 0にクリア してください。さらにTDRに データをライトし、TDREフ ラグを0にクリアしておいて 〈終 了〉 ください。 ただし、送信データエンプテ ィ割込み(TXI)要求でDTC 【注】 送信、または受信動作から同時送受信に切り替えるときには、 を起動しTDRにデータをライ TEビットとREビットを0にクリアしてからTEビットとREビッ トする場合には、TDREフラ トを同時に1にセットしてください。 グのチェック、およびクリア は自動的に行われます。また、 受信データフル割込み(RXI) 要求でDTCを起動しRDRの値 をリードする場合にはRDRF フラグのクリアは自動的に行 われます。 図 15.20 シリアル送受信同時動作のフローチャートの例 500 15. 15.3.5 シリアルコミュニケーションインタフェース(SCI、IrDA) IrDA 動作 図 15.21 に IrDA のブロック図を示します。 KBCOMP の IrE ビットで IrDA 機能をイネーブルにすると、SCI チャネル 2 のTxD2/RxD2 信号 は、Ir DA 規格バ ージョン 1. 0 に準 拠した 波形の エンコ ード/デ コード を行い ます (IrTxD/IrRxD 端子)。これを赤外線送受信トランシーバ/レシーバと接続することで、IrDA 規格バージョン 1.0 システムに準拠した赤外線送受信を実現することができます。 IrDA 規格バージョン 1.0 システムにおいて、通信は 9600bps の転送レートで通信を開始 し、その後、必要に応じて転送レートを変化させることができます。本 LS I の Ir DA イン タフェースでは、自動的に転送レートを変更する機能は内蔵していません。転送レートは、 ソフトウェアにより設定を変更してください。 IrDA TxD2/IrTxD パルスエンコーダ RxD2/IrRxD パルスデコーダ SCI2 TxD RxD KBCOMP 図 15.21 IrDA ブロック図 (1)送信 送信時に、SCI からの出力信号(UART フレーム)は、IrDA インタフェースにより、IR フレームに変換されます(図 15.22 参照)。 シリアルデータが 0 のとき、ビットレート(1 ビット幅の期間)の 3/16 の High パルスが 出力されます(初期値)。なお、High パルスは、KB C OMP の Ir CK S2〜Ir CK S0 ビットの 設定値により変化させることも可能です。 High パルス幅は、最小 1.41 μ s、最大(3/16+2.5%)×ビットレート、または (3/16×ビッ トレート)+1.08 μ s と定められています。システムクロックφが 20MHz のとき、1.41 μ s 以上で最小の High パルス幅としては、1.6 μ s が設定可能です。 また、シリアルデータが 1 の時は、パルスは出力されません。 501 15. シリアルコミュニケーションインタフェース(SCI、IrDA) UART フレーム スタート ビット 0 1 0 1 0 0 1 送信時 IR フレーム 1 1 0 1 受信時 スタート ビット 0 ストップ ビット データ 0 ビット 周期 1 0 データ 0 ストップ ビット 1 1 0 1 パルス幅は1.6μs〜 3/16ビット周期 図 15.22 IrDA の送信/受信動作 (2)受信 受信時には、IR フレームのデータは、Ir DA インタフェースにより UAR T フレームに変 換され、SCI に入力されます。 High パルスが検出されたときに 0 データを出力し、1 ビット期間中にパルスがない場合 には 1 データを出力します。最小パルス幅の 1.41 μ s より短いパルスも 0 信号として認識 しますのでご注意ください。 502 15. シリアルコミュニケーションインタフェース(SCI、IrDA) (3)High パルス幅の選択 送信 時にビ ットレー ト×3/16 よりパ ルス幅を 短くす る場合 に、適用 可能な Ir CK S2〜 Ir CK S0 ビットの設定(最小パルス幅)と本 LS I の動作周波数およびビットレートの選択 を表 15.12 に示します。 表 15.12 IrCKS2〜IrCKS0 ビット設定 動作周波数 φ(MHz) ビットレート(bps)(上段)/ビット周期×3/16(μ s)(下段) 2400 9600 19200 38400 57600 115200 78.13 19.53 9.77 4.88 3.26 1.63 2 010 010 010 010 010 − 2.097152 010 010 010 010 010 − 2.4576 010 010 010 010 010 − 3 011 011 011 011 011 − 3.6864 011 011 011 011 011 011 4.9152 011 011 011 011 011 011 5 011 011 011 011 011 011 6 100 100 100 100 100 100 6.144 100 100 100 100 100 100 7.3728 100 100 100 100 100 100 8 100 100 100 100 100 100 9.8304 100 100 100 100 100 100 10 100 100 100 100 100 100 12 101 101 101 101 101 101 12.288 101 101 101 101 101 101 14 101 101 101 101 101 101 14.7456 101 101 101 101 101 101 16 101 101 101 101 101 101 16.9344 101 101 101 101 101 101 17.2032 101 101 101 101 101 101 18 101 101 101 101 101 101 19.6608 101 101 101 101 101 101 20 101 101 101 101 101 101 【記号説明】 −:SCI 側のビットレート設定ができません。 503 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.4 SCI 割込み SCI には、送信終了割込み(TEI)要求、受信エラー割込み(ERI)要求、受信データフ ル割込み(R XI)要求、送信データエンプティ割込み(TXI )要求の 4 種類の割込み要因 があります。表 1 5.13 に各割込み要因と優先 順位を示します。各割込み要因は、S CR の TIE ビット、RIE ビット、および TEIE ビットで許可または禁止できます。また、各割込み 要求はそれぞれ独立に割込みコントローラに送られます。 S SR の TDR E フラグが 1 にセットされると、TXI 割込み要求が発生します。また、S SR の TEND フラグが 1 にセットされると、TEI 割込み要求が発生します。TXI 割込み要求に より DTC を起動してデータ転送を行うことができます。TDR E フラグは DTC によるデー タ転送時に自動的に 0 にクリアされます。なお、TEI 割込み要求で DTC の起動はできませ ん。 SSR の RDRF フラグが 1 にセットされると RXI 割込み要求が発生します。SSR の ORER、 P ER、F ER フラグのいずれかが 1 にセットされると、ER I 割込み要求が発生します。R XI 割込み要求で DTC を起動してデータ転送を行うことができます。R DR F フラグは DTC に よるデータ転送時に自動的に 0 にクリアされます。なお、ERI 割込み要求で DTC の起動は できません。 表 15.13 SCI 割込み要因 チャネル 割込み要因 0 1 2 【注】 * 内 容 DTC の起動 優先順位* 不可 高 ERI 受信エラー(ORER、FER、PER)による割込み RXI 受信データフル(RDRF)による割込み 可 TXI 送信データエンプティ(TDRE)による割込み 可 TEI 送信終了(TEND)による割込み 不可 ERI 受信エラー(ORER、FER、PER)による割込み 不可 RXI 受信データフル(RDRF)による割込み 可 TXI 送信データエンプティ(TDRE)による割込み 可 TEI 送信終了(TEND)による割込み 不可 ERI 受信エラー(ORER、FER、PER)による割込み 不可 RXI 受信データフル(RDRF)による割込み 可 TXI 送信データエンプティ(TDRE)による割込み 可 TEI 送信終了(TEND)による割込み 不可 低 リセット直後の初期状態について示しています。チャネル間の優先順位は、割込みコン トローラにより変更可能です。 TEI 割込みは、TEIE ビットが 1 にセットされた状態で TEND フラグが 1 にセットされる と要求されます。この TEND フラグのクリアは TDRE フラグと同時に行われます。このた め、TEI 割込みと TXI 割込みが同時に要求されると TXI 割り込みが先に受け付けられ、 TDRE フラグと TEND フラグがクリアされてしまう場合があります。このとき TEI 割込み は受け付けられませんので注意してください。 504 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 15.5 使用上の注意 SCI を使用する際は、以下のことに注意してください。 (1)TDR へのライトと TDRE フラグの関係について S SR の TDR E フラグは TDR から TS R に送信データの転送が行われたことを示すステー タスフラグです。SCI が TDR から TSR にデータを転送すると、TDRE フラグが 1 にセット されます。 TDR へのデータのライトは、TDRE フラグの状態にかかわらず行うことができます。し かし、TDR E フラグが 0 の状態で新しいデータを TDR にライトすると、TDR に格納され ていたデータは、まだ TSR に転送されていないため失われてしまいます。したがって TDR への送信データのライトは、必ず TDRE フラグが 1 にセットされていることを確認してか ら行ってください。 (2)複数の受信エラーが同時に発生した場合の動作について 複数の受信エラーが同時に発生した場合、SSR の各ステータスフラグの状態は、表 15.14 のようになります。また、オーバランエラーが発生した場合には RSR から RDR へのデー タ転送は行われず、受信データは失われます。 表 15.14 SSR のステータスフラグの状態と受信データの転送 SSR のステータスフラグ 受信データ転送 受信エラーの状態 RSR→RDR RDRF ORER FER PER 1 1 0 0 × オーバランエラー 0 0 1 0 ○ フレーミングエラー 0 0 0 1 ○ パリティエラー 1 1 1 0 × オーバランエラー+フレーミングエラー 1 1 0 1 × オーバランエラー+パリティエラー 0 0 1 1 ○ フレーミングエラー+パリティエラー 1 1 1 1 × オーバランエラー+フレーミングエラー+ パリティエラー 【注】 ○:RSR→RDR に受信データを転送します。 ×:RSR→RDR に受信データを転送しません。 505 15. シリアルコミュニケーションインタフェース(SCI、IrDA) (3)ブレークの検出と処理について フレーミングエラー(FER)検出時に RxD 端子の値を直接リードすることで、ブレーク を検出できます。ブレークでは、R xD 端子からの入力がすべて 0 になりますので F ER フ ラグがセットされ、またパリティエラー(PER)もセットされる場合があります。 S CI は、ブレークを受信した後も受信動作を続けますので、F ER フラグを 0 にクリアし ても再び 1 にセットされますので、注意してください。 (4)ブレークの送り出し TxD 端子は、DR と DDR により入出力方向とレベルが決まる I/O ポートと兼用になって います。これを利用してブレークの送り出しができます。 シリアル送信の初期化から TE ビットを 1 にセットするまでは、マーク状態を DR の値 で代替します(TE ビットを 1 にセットするまで、TxD 端子として機能しません)。この ため、最初は TxD 端子に対応するポートの DDR と DR を 1 に設定しておきます。 シリアル送信時にブレークを送り出したいときは DR を 0 にクリアした後、TE ビットを 0 にクリアします。 TE ビットを 0 にクリアすると現在の送信状態とは無関係に送信部は初期化され、TxD 端子は I/O ポートになり、TxD 端子から 0 が出力されます。 (5)受信エラーフラグと送信動作について(クロック同期式モードのみ) 受信エラーフラグ(ORER、PER、FER)が 1 にセットされた状態では、TDRE フラグを 0 にクリアしても送信を開始できません。必ず送信開始時には、受信エラーフラグを 0 に クリアしておいてください。 また、R E ビットを 0 にクリアしても受信エラーフラグは 0 にクリアできませんので注 意してください。 (6)調歩同期式モードの受信データサンプリングタイミングと受信マージン 調歩同期式モードでは、SCI は転送レートの 16 倍の周波数の基本クロックで動作してい ます。 受信時に SCI は、スタートビットの立ち下がりを基本クロックでサンプリングして、内 部を同期化します。また、受信データを基本クロックの 8 クロック目の立ち上がりエッジ で内部に取り込みます。これを図 15.23 に示します。 506 15. シリアルコミュニケーションインタフェース(SCI、IrDA) 16クロック 8クロック 7 0 15 0 7 15 0 内部基本 クロック 受信データ (RxD) スタートビット D0 D1 同期化 サンプリング タイミング データ サンプリング タイミング 図 15.23 調歩同期式モードの受信データサンプリングタイミング したがって、調歩同期 式モードでの受信マージンは式(1)のよ うに表すことができま す。 M=|(0.5− |D−0.5| 1 2N )−(L−0.5)F− N (1+F)|×100% …式(1) M:受信マージン(%) N:クロックに対するビットレートの比(N=16) D:クロックデューティ(D=0〜1.0) L:フレーム長(L=9〜12) F:クロック周波数の偏差の絶対値 式(1)で、F=0、D=0.5 とすると、受信マージンは式(2)より 46.875%となります。 D=0.5、F=0 のとき、 M=(0.5− 1 2×16 )×100% =46.875% …式(2) ただし、この値はあくまでも計算上の値ですので、システム設計の際には 20〜30%の余 裕を持たせてください。 507 15. シリアルコミュニケーションインタフェース(SCI、IrDA) (7)DTC 使用上の制約事項 (a)同期クロックに外部クロックソースを使用する場合、DTC による TDR の更新後、 φクロックで 5 クロック以上経過した後に、送信クロックを入力してください。 TDR の更新後 4 クロック以内に送信クロックを入力すると、誤動作することがあ ります(図 15.24)。 (b)DTC により、RDR のリードを行うときは必ず起動要因を当該 SCI の受信完了割込 み(RXI)に設定してください。 SCK t TDRE シリアル データ 【注】 LSB D0 D1 D2 D3 外部クロック動作時には、t>4クロックとしてください。 図 15.24 DTC によるクロック同期式送信時の例 508 D4 D5 D6 D7 16. I2C バスインタフェース(IIC) 【オプション】 H8S/2148 シリーズ、H8S/2147N にはオプションとして内蔵可能です。 H8S/2144 シリーズには内蔵していません。 I2C バスインタフェースはオプションです。本オプション機能を使用する場合 には、次の点にご注意ください。 1 マスク ROM 版では、オプション機能を使用する製品型名には W が付加されます。 例:HD6432147SWFA 等 2 F -ZTAT 版では製品型名は 同一ですが、本オプション機能を使用 する場合には、必ず その旨当社営業担当者にご連絡をお願いします。 第 16 章 16.1 16.2 16.3 目次 概要 ....................................................................................................................................... 511 16.1.1 特長 ...................................................................................................... 511 16.1.2 ブロック図 ............................................................................................ 512 16.1.3 端子構成................................................................................................ 514 16.1.4 レジスタ構成 ......................................................................................... 515 各レジスタの説明 ................................................................................................................... 516 16.2.1 I2C バスデータレジスタ(ICDR) ........................................................... 516 16.2.2 スレーブアドレスレジスタ(SAR) ........................................................ 518 16.2.3 第 2 スレーブアドレスレジスタ(SARX) ............................................... 520 16.2.4 I2C バスモードレジスタ(ICMR)........................................................... 521 16.2.5 I2C バスコントロールレジスタ(ICCR).................................................. 524 16.2.6 I2C バスステータスレジスタ(ICSR) ..................................................... 530 16.2.7 シリアルタイマコントロールレジスタ(STCR) ..................................... 536 16.2.8 DDC スイッチレジスタ(DDCSWR)...................................................... 537 16.2.9 モジュールストップコントロールレジスタ(MSTPCR) .......................... 540 動作説明................................................................................................................................. 541 16.3.1 I2C バスデータフォーマット ................................................................... 541 16. 16.4 510 I 2C バスインタフェース(IIC) 16.3.2 マスタ送信動作...................................................................................... 543 16.3.3 マスタ受信動作...................................................................................... 545 16.3.4 スレーブ受信動作 .................................................................................. 547 16.3.5 スレーブ送信動作 .................................................................................. 549 16.3.6 IRIC セットタイミングと SCL 制御.......................................................... 551 16.3.7 フォーマットレスから I2C バスフォーマットへの自動切り替え................. 552 16.3.8 DTC による動作 ..................................................................................... 553 16.3.9 ノイズ除去回路...................................................................................... 554 16.3.10 使用例 ................................................................................................... 555 16.3.11 内部状態の初期化 .................................................................................. 558 使用上の注意 .......................................................................................................................... 560 16. I 2C バスインタフェース(IIC) 16.1 概要 本 LSI は、2 チャネルの I2C バスインタフェースを内蔵しています。 I2C バスインタフェースは、Philips 社の提唱している I2C バス(Inter IC Bus)インタフェ ース方式に準拠しており、サブセット機能を備えています。ただし、I2C バスを制御するレ ジスタの構成が一部 Philips 社と異なりますので注意してください。 I2C バスインタフェースを用いたデータ転送は、各チャネルで、データライン(SDA)1 本、クロックライン(S CL)1 本で構成され、コネクタやプリント基板の面積等を経済的 に使用できます。 16.1.1 特長 ■アドレッシングフォーマット、ノンアドレッシングフォーマットを選択可能 ・I2C バスフォーマット:アドレッシングフォーマットでアクノリッジビットあり、 マスタ、スレーブ動作 ・シリアルフォーマット:ノンアドレッシングフォーマットでアクノリッジビットな し、マスタ動作専用 ■I 2 C バスフォーマットは、Philips 社提唱の I 2 C バスインタフェースに準拠 ■I 2 C バスフォーマットで、スレーブアドレスを 2 通り設定可能 ■I 2 C バスフォーマットで、マスタモード時、開始、停止条件の自動生成 ■I 2 C バスフォーマットで、受信時、アクノリッジの出力レベルを選択可能 ■I 2 C バスフォーマットで、送信時、アクノリッジビットの自動ロード機能 ■I 2 C バスフォーマットで、マスタモード時のウェイト機能 ・アクノリッジを除くデータ転送後、SCL を Low レベルにしてウェイト状態にする ことが可能。ウェイト状態は、割込みフラグをクリアすることで解除。 ■I 2 C バスフォーマットで、スレーブモード時のウェイト機能 ・アクノリッジを除くデータ転送後、SCL を Low レベルにしてウェイト要求を発生 することが可能。ウェイト要求は、次の転送が可能になった時点で解除。 ■3 種類の割込み要因 ・データ転送終了時(I2C バスフォーマットで送信モード遷移時、および、マスタ競 合負け後のアドレス受信を含む) ・アドレス一致時:I2C バスフォーマット、スレーブ受信モードで、いずれかのスレ ーブアドレスが一致したときまたはゼネラルコールアドレスを受信したとき ・停止条件検出時 511 16. I 2C バスインタフェース(IIC) ■マスタモード時、16 種類の内部クロック選択可能 ■バスを直接駆動(SCL/SDA 端子) ・P 52/S C L0、P 97/S DA0 の 2 端子は、通常時は NMOS プッシュプル出力、バス駆動 機能選択時は NMOS オープンドレイン出力。 ・P 86/S C L1、P 42/S DA1 の 2 端子は、通常時は C MOS 端子、バス駆動機能選択時は NMOS のみで出力。 ■フォーマットレスから I2C バスフォーマットへ自動切換えが可能(チャネル 0 のみ) ・スレーブモ ードのフォーマットレス( 開始条件/終了条件なし、 ノンアドレシン グ)の動作 ・データ端子共通(SDA)、クロック端子独立(VSYNCI、SCL)の端子構成で動作 ・SCL の立ち下がりで、自動的にフォーマットレスから I2C バスフォーマットに切り 替え 16.1.2 ブロック図 I2C バスインタフェースのブロック図を図 16.1 に示します。 入出力端子の外部回路接続例を、図 1 6.2 に示します。チャネル 0 の入出力端子とチャ ネル 1 の入出力端子では端子構造が違うため、端子に印加可能な電圧仕様が異なっていま す。 詳細は「26. 512 電気的特性」を参照してください。 16. I 2C バスインタフェース(IIC) フォーマットレス専用クロック (チャネル0のみ) φ PS SCL ノ イ ズ 除去回路 ICCR クロック 制御 ICMR バス状態 判定回路 アービトレーション 判定回路 出力データ 制御回路 SDA ICSR 内 ICDRT 部 デ ICDRS | タ ICDRR バ ス ノ イ ズ 除去回路 アドレス比較回路 SAR, SARX 【記号説明】 ICCR : I2Cコントロールレジスタ ICMR : I2Cモードレジスタ ICSR : I2Cステータスレジスタ ICDR : I2Cデータレジスタ SAR : スレーブアドレスレジスタ SARX : スレーブアドレスレジスタX PS : プリスケーラ 割 込 み 発生回路 割込み要求 図 16.1 I 2 C バスインタフェースのブロック図 513 16. I 2C バスインタフェース(IIC) VCC VCC SCLin SCL SCL SDA SDA SCLout SDAin SCLin 本LSI SCLin SCLout SCLout SDAin SDAin SDAout SDAout (スレーブ1) SCL SDA (マスタ) SCL SDA SDAout (スレーブ2) 図 16.2 I 2 C バスインタフェース接続例(本 LSI がマスタの場合) 16.1.3 端子構成 I2C バスインタフェースで使用する端子を表 16.1 に示します。 表 16.1 端子構成 チャネル 0 名 称 記号* 入出力 シリアルクロック端子 SCL0 入出力 IIC0 シリアルクロック入出力端子 シリアルデータ端子 SDA0 入出力 IIC0 シリアルデータの入出力端子 フォーマットレス VSYNCI シリアルクロック端子 1 【注】 514 * 入力 機 能 IIC0 フォーマットレス シリアルクロック入力端子 シリアルクロック端子 SCL1 入出力 IIC1 シリアルクロック入出力端子 シリアルデータ端子 SDA1 入出力 IIC1 シリアルデータの入出力端子 本文中ではチャネルを省略し、それぞれ SCL、SDA と略称します。 16. 16.1.4 I 2C バスインタフェース(IIC) レジスタ構成 I2C バスインタフェースのレジスタ構成を表 16.2 に示します。 表 16.2 レジスタ構成 略称 R/W 初期値 アドレス* 1 ICCR0 R/W H'01 H'FFD8 I C バスステータスレジスタ ICSR0 R/W H'00 H'FFD9 I 2C バスデータレジスタ ICDR0 R/W − H'FFDE* 2 I 2C バスモードレジスタ ICMR0 R/W H'00 H'FFDF* 2 スレーブアドレスレジスタ SAR0 R/W H'00 H'FFDF* 2 第 2 スレーブアドレスレジスタ SARX0 R/W H'01 H'FFDE* 2 I 2C バスコントロールレジスタ ICCR1 R/W H'01 H'FF88 I 2C バスステータスレジスタ ICSR1 R/W H'00 H'FF89 I 2C バスデータレジスタ ICDR1 R/W − H'FF8E* 2 I 2C バスモードレジスタ ICMR1 R/W H'00 H'FF8F* 2 スレーブアドレスレジスタ SAR1 R/W H'00 H'FF8F* 2 SARX1 R/W H'01 H'FF8E* 2 STCR R/W H'00 H'FFC3 DDCSWR R/W H'0F H'FEE6 モジュールストップコントロールレジスタ MSTPCRH R/W H'3F H'FF86 MSTPCRL R/W H'FF H'FF87 チャネル 0 名 称 I 2C バスコントロールレジスタ 2 1 第 2 スレーブアドレスレジスタ 共通 シリアルタイマコントロールレジスタ DDC スイッチレジスタ 【注】 *1 アドレスの下位 16 ビットを示しています。 * 2 I 2C バスコントロールレジスタの I CE ビットによりリード/ライトできるレジスタが変 わります。I CE=0 のときスレーブアドレスレジスタ、I CE=1 のとき I 2C バスモードレ ジスタとなります。 I 2C バスインタフェースのレジスタは、他のレジスタと同じアドレスに割り当てられて います。それぞれのレジスタの選択はシ リアルタイマコントロールレジスタ(ST CR) の IICE ビットで行います。 515 16. I 2C バスインタフェース(IIC) 16.2 各レジスタの説明 16.2.1 I2C バスデータレジスタ(ICDR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 ICDR7 ICDR6 ICDR5 ICDR4 ICDR3 ICDR2 ICDR1 ICDR0 − − − − − − − − R/W R/W R/W R/W R/W R/W R/W R/W 7 6 5 4 3 2 1 0 ■ICDRR ビット : ICDRR7 ICDRR6 ICDRR5 ICDRR4 ICDRR3 ICDRR2 ICDRR1 ICDRR0 初期値 : − − − − − − − − R/W : R R R R R R R R ビット : 7 6 5 4 3 2 1 0 ■ICDRS ICDRS7 ICDRS6 ICDRS5 ICDRS4 ICDRS3 ICDRS2 ICDRS1 ICDRS0 初期値 : − − − − − − − − R/W : − − − − − − − − ビット : 7 6 5 4 3 2 1 0 ■ICDRT ICDRT7 ICDRT6 ICDRT5 ICDRT4 ICDRT3 ICDRT2 ICDRT1 ICDRT0 初期値 : − − − − − − − − R/W W W W W W W W W − − : ■TDRE、RDRF(内部フラグ) ビット : TDRE RDRF 初期値 : 0 0 : − − R/W IC DR は、8 ビットのリード/ライト可能なレジスタで、送信時は送信用データレジス タとして、受信時は受信用データレジスタとして使用します。IC DR は、内部的に、シフ トレジスタ(ICDRS)、受信バッファ(ICDRR)および送信バッファ(ICDRT)に分かれ ています。それぞれ C PU からのリード/ライト不可、リード専用およびライト専用とな っています。3 本のレジスタ間のデータ転送は、バス状態の変化に関連付けられて自動的 に行われ、TDRE や RDRF などの内部フラグの状態に影響を与えます。 516 16. I 2C バスインタフェース(IIC) 送信モードで IC DR T の次のデータがある場合(TDR E フラグが 0 の場合)IC DR S で 1 フレームのデータを送信後、自動的に IC DR T から IC DR S へデータが転送されます。 受 信モードで IC DR R に以前のデータがない場合(R DR F フラグが 0 の場合)、IC DR S で 1 フレームのデータを正常に受信終了後、自動的に ICDRS から ICDRR にデータが転送され ます。 1 フレームのアクノリッジを除いたビット数が 8 ビットに満たない場合、送受信データ の格納される位置が異なります。送信データは、MLS=0 のとき MSB 側に、MLS=1 のと き LSB 側に詰めて書き込んでください。受信データは、MLS=0 のとき LSB 側から、MLS =1 のとき MSB 側から読み出したビットを有効にしてください。 ICDR は、SARX と同じアドレスに割り付けられており、ICCR の ICE ビットを 1 に設定 したときのみ、ICDR のリード/ライトが可能です。 ICDR のリセット時の値は不定です。 TDRE、RDRF フラグは、次のような条件でセット/クリアされます。TDRE、RDRF フ ラグのセットは、割込みフラグの状態に影響を与えます。 説 TDRE 0 明 送信開始不可、または、ICDR(ICDRT)に次の送信データが存在 (初期値) 〔クリア条件〕 (1)送信モード(TRS=1)で ICDR(ICDRT)に送信データをライトしたとき (2)I 2C バスフォーマットまたはシリアルフォーマットで停止条件を発行後、 バスラインの状態から停止条件成立を検出したとき (3)I 2C バスフォーマットで停止条件を検出したとき (4)受信モード(TRS=0)のとき (転送中の TRS の 0 ライトは、アクノリッジを含めたフレーム受信後に有 効) 1 ICDR(ICDRT)に次の送信データをライト可能 〔セット条件〕 (1)送信モード(TRS=1)のとき、I 2C バスフォーマット、シリアルフォーマッ トのマスタモードで開始条件を発行後、バスラインの状態から開始条件成立 を検出したとき (2)I 2C バスモードからフォーマットレスに設定を切り替えた後、最初に送信モ ード(TRS=1)に設定したとき(1 回目のみ) (3)ICDRT から ICDRS にデータが転送されたとき (TRS=1 かつ TDRE=0 で ICDRS が空の場合、ICDRT→ICDRS へデータ 転送) (4)受信モード(TRS=0)の状態で開始条件検出後、スレーブ受信モード (TRS=0)から送信モード(TRS=1)に切り替えたとき(1 回目のみ) 517 16. I 2C バスインタフェース(IIC) 説 RDRF 0 明 (初期値) ICDR(ICDRR)にあるデータは無効 〔クリア条件〕 受信モードで ICDR(ICDRR)の受信データをリードしたとき 1 ICDR(ICDRR)の受信データをリード可能 〔セット条件〕 ICDRS から ICDRR にデータが転送されたとき (TRS=0 かつ RDRF=0 で受信正常終了の場合、ICDRS→ICDRR へデータ転送) 16.2.2 スレーブアドレスレジスタ(SAR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 SVA6 SVA5 SVA4 SVA3 SVA2 SVA1 SVA0 FS 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W SAR は、8 ビットのリード/ライト可能なレジスタで、フォーマットの設定およびスレ ーブアドレスを格納します。アドレッシングフォーマットでスレーブモードの場合、開始 条件後に送られてきた第 1 フレームの上位7 ビットと SARの上位 7ビットを比較して一致 したとき、 マスタデバイスに指 定されたスレーブデバ イスとして動作しま す。S AR は、 ICMR と同じアドレスに割り付けられており、ICCR の ICE ビットを 0 に設定したときのみ、 SAR のリード/ライトが可能です。 リセットまたはハードウェアスタンバイモード時、SAR は H'00 に初期化されます。 ビット 7〜1:スレーブアドレス(SVA6〜SVA0) SVA6〜SVA0 ビットにはI2C バスにつながっている他のスレーブと異なるユニークなア ドレスを設定します。 518 16. I 2C バスインタフェース(IIC) ビット 0:フォーマットセレクト(FS) S ARX の F SX ビット、DDC S WR の S W ビットとともに、転送フォーマットを選択しま す。 ・I2C バスフォーマット:アドレッシングフォーマットでアクノリッジビットあり ・クロック同期式シリアルフォーマット: ノンアドレッシングフォーマットでアクノリッジビットなし、マスタモード専用 ・フォーマットレス(チャネル 0 のみ): ノンアドレッ シングフォーマットでアク ノリッジビットありまたは アクノリッジ ビットなし、スレーブモード専用、開始条件/停止条件の検出なし また、F S ビットは、スレーブモード時に S AR のスレーブアドレスの認識を行うか否か を選択します。 DDCSWR SAR SARX ビット 6 ビット 0 ビット 0 SW FS FSX 0 0 0 動作モード I 2C バスフォーマット ・SAR と SARX のスレーブアドレスを認識 1 I 2C バスフォーマット (初期値) ・SAR のスレーブアドレスを認識 ・SARX のスレーブアドレスを無視 1 0 I 2C バスフォーマット ・SAR のスレーブアドレスを無視 ・SARX のスレーブアドレスを認識 1 クロック同期式シリアルフォーマット ・SAR と SARX のスレーブアドレスを無視 1 0 1 0 フォーマットレス(開始条件/停止条件を検出しない) 1 ・アクノリッジビットあり 0 1 フォーマットレス*(開始条件/停止条件を検出しない) ・アクノリッジビットなし 【注】 * 2 DD CSW R の設定により I C バスフォーマットへの自動切り換えを行う場合は、本モー ドに設定しないでください。 519 16. I 2C バスインタフェース(IIC) 16.2.3 第 2 スレーブアドレスレジスタ(SARX) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 SVAX6 SVAX5 SVAX4 SVAX3 SVAX2 SVAX1 SVAX0 FSX 0 0 0 0 0 0 0 1 R/W R/W R/W R/W R/W R/W R/W R/W SARX は、8 ビットのリード/ライト可能なレジスタで、フォーマットの設定および第 2 スレーブアドレスを格納します。アドレッシングフォーマットでスレーブモードの場合、 開始条件後に送られてきた第 1 フレームの上位 7 ビットと SARX の上位 7ビットを比較し て一致したとき、マスタデバイスに指定されたスレーブデバイスとして動作します。 SARX は、ICDR と同じアドレスに割り付けられており、ICCR の ICE ビットを 0 に設定したとき のみ、SARX のリード/ライトが可能です。 リセットまたはハードウェアスタンバイモード時、SARX は H'01 に初期化されます。 ビット 7〜1:第 2 スレーブアドレス(SVAX6〜SVAX0) S VAX6〜S VAX0 ビットには I2C バスにつながっている他のスレーブと異なるユニーク なアドレスを設定します。 ビット 0:フォーマットセレクト X(FSX) SAR の FS ビット、DDCSWR の SW ビットとともに、転送フォーマットを選択します。 ・I2C バスフォーマット:アドレッシングフォーマットでアクノリッジビットあり ・クロック同期式シリアルフォーマット: ノンアドレッシングフォーマットでアクノリッジビットなし、マスタモード専用 ・フォーマットレス: ノンアドレッ シングフォーマットでアク ノリッジビットありまたは アクノリッジ ビットなし、スレーブモード専用、開始条件・停止条件の検出なし また、FSX ビットは、スレーブモード時に SARX のスレーブアドレスの認識を行うか否 かを選択します。詳細は SAR の FS ビットの項を参照してください。 520 16. 16.2.4 I 2C バスインタフェース(IIC) I2C バスモードレジスタ(ICMR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 MLS WAIT CKS2 CKS1 CKS0 BC2 BC1 BC0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ICMR は、8 ビットのリード/ライト可能なレジスタで、MSB ファースト/LSB ファー ストの選択、マスタモードウェイトの制御、マスタモード転送クロック周波数の選択、転 送ビットの数の選択を行います。ICMR は、SAR と同じアドレスに割り付けられており、 ICCR の ICE ビットを 1 に設定したときのみ、ICMR のリード/ライトが可能です。 リセットまたはハードウェアスタンバイモード時、ICMR は H'00 に初期化されます。 ビット 7:MSB ファースト/LSB ファースト選択(MLS) MSB ファーストでデータ転送するか、LS B ファーストでデータ転送するかを選択しま す。 1 フレームのアクノリッジを除いたビット数が 8 ビットに満たない場合、送受信データ の格納される位置が異なります。送信データは、MLS ビットが 0 のとき MSB 側に、MLS ビットが 1 のとき LS B 側に詰めて書き込んでください。受信データは、MLS ビットが 0 のとき LSB 側から、MLS ビットが 1 のとき MSB 側から読み出したビットを有効にしてく ださい。 なお、I2C バスフォーマットで使用するときは、本ビットを 1 にセットしないでくださ い。 ビット 7 説 明 MLS 0 MSB ファースト 1 LSB ファースト (初期値) 521 16. I 2C バスインタフェース(IIC) ビット 6:ウェイト挿入ビット(WAIT) I2C バスフォーマットでマスタモード時に、アクノリッジビットを除いたデータ転送後 をウェイト状態にする かどうかを設定します。WA IT=1 を設定し た場合、データの最終 ビットのクロックが立ち下がった後、ICCR の IRIC フラグは 1 にセットされ、ウェイト状 態(S CL=Low レベル)となります。IC C R の IR IC フラグを 0 にクリアすることでウェイ ト状態を解除しアクノ リッジの転送を行います。WA IT=0 を設定 した場合、ウェイト状 態を挿入せず、デー タとアクノリッジを連続的に転送します 。IC C R の IR IC フラグは、 WAIT の設定に関係なく、アクノリッジの転送が完了した時点で 1 にセットされます。 スレーブモード時は、本ビットの設定は無効になります。 ビット 6 説 明 WAIT 0 データとアクノリッジを連続的に転送 (初期値) 1 データとアクノリッジの間にウェイトを挿入 ビット 5〜3:転送クロック選択(CKS2〜CKS0) CKS2〜CKS0 ビットは、STCR レジスタの IICX1 ビット(チャネル 1)、IICX0 ビット(チ ャネル 0)との組み合わせにより、転送クロックの周波数を選択するビットで、マスタモ ード時に使用します。必要な転送レートに合わせて設定をしてください。 ビット 5 ビット 4 ビット 3 クロック STCR 転送レート ビット 5、6 CKS2 CKS1 CKS0 0 0 0 0 φ/28 179kHz 286kHz 357kHz 571kHz* 714kHz* 1 φ/40 125kHz 200kHz 250kHz 400kHz 500kHz* 0 φ/48 104kHz 167kHz 208kHz 333kHz 417kHz* 1 φ/64 78.1kHz 125kHz 156kHz 250kHz 313kHz 0 φ/80 62.5kHz 100kHz 125kHz 200kHz 250kHz 1 φ/100 50.0kHz 80.0kHz 100kHz 160kHz 200kHz 0 φ/112 44.6kHz 71.4kHz 89.3kHz 143kHz 179kHz 1 φ/128 39.1kHz 62.5kHz 78.1kHz 125kHz 156kHz 0 φ/56 89.3kHz 143kHz 179kHz 286kHz 357kHz 1 φ/80 62.5kHz 100kHz 125kHz 200kHz 250kHz 0 φ/96 52.1kHz 83.3kHz 104kHz 167kHz 208kHz 1 φ/128 39.1kHz 62.5kHz 78.1kHz 125kHz 156kHz 0 φ/160 31.3kHz 50.0kHz 62.5kHz 100kHz 125kHz 1 φ/200 25.0kHz 40.0kHz 50.0kHz 80.0kHz 100kHz 0 φ/224 22.3kHz 35.7kHz 44.6kHz 71.4kHz 89.3kHz 1 φ/256 19.5kHz 31.3kHz 39.1kHz 62.5kHz 78.1kHz 1 1 0 1 1 0 0 1 1 0 1 【注】 * I 2C バスインタフェース仕様(通常モード:最大 100k Hz 、高速モード:最大 400k Hz ) の範囲外となります。 522 φ=5MHz φ=8MHz φ=10MHz φ=16MHz φ=20MHz IICX 16. I 2C バスインタフェース(IIC) ビット 2〜0:ビットカウンタ(BC2〜BC0) B C2〜B C0 ビットは、次に転送するデータのビット数を指定します。I2C バスフォーマ ット(SAR の FS ビットまたは SARX の FSX ビットが 0 のとき)では、データにアクノリ ッジ分 1 ビットが加算されて転送されます。BC2〜BC0 ビットの設定は転送フレーム間で 行ってください。また、BC2〜BC0 ビットに 000 以外を設定する場合は、SCL が Low 状態 のときに行ってください。 ビットカウンタは、リセット時および開始条件検出時 000 に初期化されます。また、ア クノリッジを含むデータ転送終了後、000 に再び戻ります。 ビット 2 ビット 1 ビット 0 BC2 BC1 BC0 ビット/フレーム クロック同期式 I 2C バスフォーマット シリアルフォーマット 0 0 1 1 0 1 0 8 9(初期値) 1 1 2 0 2 3 1 3 4 0 4 5 1 5 6 0 6 7 1 7 8 523 16. I 2C バスインタフェース(IIC) 16.2.5 I2C バスコントロールレジスタ(ICCR) ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 ICE IEIC MST TRS ACKE BBSY IRIC SCP 0 0 0 0 0 0 0 1 R/W R/W R/W R/W R/W R/W R/(W)* W フラグをクリアするための0ライトのみ可能です。 ICCR は、8 ビットのリード/ライト可能なレジスタで、I2C バスインタフェースの動作 /非動作、割込みの許可/禁止、マスタモード/スレーブモード、送信/受信、アクノリ ッジの有効/無効の選択、I2C バスインタフェースのバス状態の確認、開始/停止条件の 発行、および割込みフラグの確認を行います。 リセットまたはハードウェアスタンバイモード時、ICCR は H'01 に初期化されます。 ビット 7:I 2 C バスインタフェースイネーブル(ICE) ICE ビットは、I2C バスインタフェースを使用する/使用しないを選択します。ICE ビッ トを 1 にセットする と、本モジュールは転送動作可能状態と なり、ポートは S CL、S DA 入出力端子となります。ICE ビットを 0 にクリアすると、本モジュールは機能を停止し、 内部状態をクリアします。 ICE=0 のとき SAR および SARX が有効になり、ICE=1 のとき ICMR および ICDR が有 効になります。 ビット 7 説 明 ICE 0 本モジュールは非動作状態(SCL/SDA 端子はポート機能) (初期値) IIC モジュールの内部状態の初期化 SAR、SARX がアクセス可能 1 本モジュールは転送動作可能状態(SCL/SDA 端子はバス駆動状態) ICMR、ICDR がアクセス可能 ビット 6:I 2 C バスインタフェース割込みイネーブル(IEIC) IEIC ビットは、I2C バスインタフェースから CPU に対する割込みの許可/禁止を選択し ます。 ビット 6 説 明 IEIC 524 0 割込み要求を禁止 1 割込み要求を許可 (初期値) 16. I 2C バスインタフェース(IIC) ビット 5:マスタ/スレーブ選択(MST) ビット 4:送信/受信選択(TRS) MST ビットは、I2C バスインタフェースをマスタモードで使用するか、スレーブモード で使用するかを選択するビットです。 TR S ビットは、I2C バスインタフェースを受信モードで使用するか、送信モードで使用 するかを選択するビットです。 I2C バスフォーマットのマスタモードでバス競合負けをすると MST、TRS ビットは共に ハードウェアによってリセットされ、スレーブ受信モードに変わります。また、スレーブ 受信モードでアドレッシングフォーマット(F S=0 または F SX=0)のとき、開始条件直 後の第 1 フレームの R/W ビットにより、ハードウェアで自動的に受信/送信モードが設定 されます。 転送中の TRS ビットの変更は、アクノリッジを含めたフレーム転送完了まで保留され、 転送完了後に切り替わります。 MST と TRS ビットとの組合せにより下表のような動作モードになります。 ビット 5 ビット 4 MST TRS 0 0 スレーブ受信モード 1 スレーブ送信モード 0 マスタ受信モード 1 マスタ送信モード 1 動作モード ビット 5 (初期値) 説 明 MST 0 スレーブモード (初期値) 〔クリア条件〕 (1) ソフトウェアにより 0 をライトしたとき (2) I 2C バスフォーマットのマスタモードで、送信を開始したのちバス競合負けし たとき 1 マスタモード 〔セット条件〕 (1) ソフトウェアにより 1 をライトしたとき(クリア条件(2)以外の場合) (2) MST=0 をリード後、1 をライトしたとき(クリア条件(2)の場合) 525 16. I 2C バスインタフェース(IIC) ビット 4 説 明 TRS 0 受信モード (初期値) 〔クリア条件〕 (1) ソフトウェアにより 0 をライトしたとき(セット条件(3)以外の場合) (2) TRS=1 をリード後、0 をライトしたとき(セット条件(3)の場合) (3) I 2C バスフォーマットのマスタモードで、送信を開始したのちバス競合負けしたとき (4) DDCSWR の SW ビットが 1 から 0 に変化したとき 1 送信モード 〔セット条件〕 (1) ソフトウェアにより 1 をライトしたとき(クリア条件(3)(4)以外の場合) (2) TRS=0 をリード後、1 をライトしたとき(クリア条件(3)(4)の場合) (3) I 2C バスフォーマットのスレーブモードで第 1 フレームの R/W ビットとして 1 を受信したとき ビット 3:アクノリッジビット判定選択(ACKE) AC KE ビットは、I2C バスフォーマットで受信デバイスから返されるアクノリッジビッ トの内容を無視して連続的に転送を行なうか、アクノリッジビットが 1 ならば転送を中断 してエラー処理等を行うかを選択します。ACKE ビットが 0 の場合には、受信したアクノ リッジビットの内容は ACKB ビットに反映されず、ACKB ビットは常時 0 となります。 本 LSI では転送を連続的に行うために、DTC を利用することができます。DTC は、2 つ ある割込みフラグ(IRIC と IRTR)のうち、IRTR フラグが 1 にセットされた場合に起動さ れます。ACKE ビットが 0 の場合、アクノリッジビットの内容にかかわらずデータ送信完 了時に TDRE フラグ、IRIC フラグと IRTR フラグがセットされます。ACKE ビットが 1 の 場合、アクノリッジビットが 0 でデータ送信が完了すると TDR E フラグ、IR IC フラグと IRTR フラグがセットされ、アクノリッジビットが 1 でデータ送信が完了すると IRIC フラ グだけがセットされます。 DTC が起動されると、所定のデータ転送を実行した後、TDR E フラグ、IR IC フラグと IR TR フラグを 0 にクリアします。そのため、データを連続的に転送している間は割込み が発生しませんが、ACKE ビットが 1 の場合にアクノリッジビットが 1 でデータ送信が完 了すると、DTC は起動されず、許可されていれば割込みが発生します。 アクノリッジビットは、受信デバイスによって、受信したデータの処理完了などの意味 をもたせる場合と、全く意味をもたず 1 固定の場合があります。 526 16. ビット 3 説 I 2C バスインタフェース(IIC) 明 ACKE 0 アクノリッジビットの内容を無視して、連続的に転送を行う 1 アクノリッジビットが 1 の場合、連続的な転送を中断する (初期値) ビット 2:バスビジー(BBSY) B BS Y フラグをリードすることにより、I2C バス(S CL、S DA)が占有されているか解放 されているかを確認できます。また、マスタモードでは開始条件、停止条件を発行する際 に使用します。 BBSY フラグは、SCL=High レベルの状態で SDA が High レベルから Low レベルに変化 すると開始条件が発行されたと認識し、1 にセットされます。SCL=High レベルの状態で S DA が Low レベルから High レベルに変化すると停止条件が発行されたと認識し、0 にク リアされます。 開始条件を発行する場合、BBSY=1 かつ SCP=0 をライトします。開始条件の再送信時 も同様に行います。また、停止条件の発行は BBSY=0 かつ SCP=0 をライトすることで行 います。開始条件/停止条件の発行は、MOV 命令を用います。 スレーブモード時の BBSY フラグのライトは無効です。すなわち、開始条件の発行に先 立って、I2C バスインタフェースをマスタ送信モードに設定する必要があります。 B BS Y =1 かつ SCP=0 をライトする以前に、MST=1 かつ TRS=1 を設定してください。 ビット 2 説 明 BBSY 0 バス解放状態 (初期値) 〔クリア条件〕・停止条件検出時 1 バス占有状態 〔セット条件〕・開始条件検出時 ビット 1:I 2 C バスインタフェース割込み要求フラグ(IRIC) IR IC フラグは、I2C バスインタフェースが C PU に対して割込み要求を発生させたことを 示します。 IR IC フラグは、データ転送終了時、スレーブ受信モードでスレーブアドレス またはゼネラルコールアドレスを検出したとき、マスタ送信モードでバス競合負けをした とき、または停止条件検出時に 1 にセットされます。S AR の F S ビットと IC MR の WA IT ビットの組合せにより IRIC フラグのセットタイミングが異なりますので、「16.3.6 IRIC セットタイミングと SCL 制御」の項を参照してください。また、ICCR の ACKE ビットの 設定によっても、IRIC フラグがセットされる条件が異なります。 IRIC フラグのクリアは、IRIC=1 をリードした後、0 をライトすることで行われます。 527 16. I 2C バスインタフェース(IIC) また、DTC を利用すると IRIC フラグは自動的にクリアされ、CPU を介さない連続的な 転送が可能です。 ビット 1 説 明 IRIC 0 転送待ち状態、または転送中 (初期値) 〔クリア条件〕 (1)IRIC=1 の状態でリードした後、0 をライトしたとき (2)DTC で ICDR をリード/ライトしたとき (TDRE または RDRF フラグが 0 にクリアされたとき) (クリア条件とならない場合もあるため、詳細は DTC の動作説明参照) 1 割込みが発生 〔セット条件〕 ■I 2C バスフォーマットでマスタモード (1)開始条件を発行後、バスラインの状態から開始条件を検出したとき (第 1 フレーム送信のため TDRE フラグが 1 にセットされたとき) (2)WAIT=1 の場合、データとアクノリッジの間にウェイトを挿入したとき (3)データ転送終了時 (ウェイト挿入なし(WAIT=0)で送受信クロックの 9 クロック目の立上り のとき、またはウェイト挿入時(WAIT=1)の送受信クロックの 8 クロック 目の立下りのとき) (4)バス競合負けの後、スレーブアドレスを受信したとき (AL フラグが 1 にセットされたとき) (5)ACKE ビットが 1 のとき、アクノリッジビットとして 1 を受信したとき (ACKB ビットが 1 にセットされたとき) 2 ■I C バスフォーマットでスレーブモード (1)スレーブアドレス(SVA、SVAX)が一致したとき (AAS、AASX フラグが 1 にセットされたとき)、 および、その後の再送開始条件または停止条件検出までのデータ転送終了時 (TDRE または RDRF フラグが 1 にセットされたとき) (2)ゼネラルコールアドレスを検出したとき (FS=0 かつ ADZ フラグが 1 にセットされたとき)、 および、その後の再送開始条件または停止条件検出までのデータ転送終了時 (TDRE または RDRF フラグが 1 にセットされたとき) (3)ACKE ビットが 1 のとき、アクノリッジビットとして 1 を受信したとき (ACKB ビットが 1 にセットされたとき) (4)停止条件を検出したとき (STOP または ESTP フラグが 1 にセットされたとき) ■クロック同期式シリアルフォーマット、およびフォーマットレス (1)データ転送終了時 (TDRE または RDRF フラグが 1 にセットされたとき) (2)シリアルフォーマットで開始条件を検出したとき (3)DDCSWR の SW ビットを 1 にセットしたとき 上記の他、TDRE、RDRF 内部フラグが 1 にセットされる条件が発生したとき 528 I 2C バスインタフェース(IIC) 16. I2C バスフォーマットで IRIC=1 となり割込みが発生した場合には、IRIC=1 となった要 因を調べるために、他のフラグを調べる必要があります。各要因には、それぞれ対応する フラグがありますが、データ転送終了時に関しては注意が必要です。 内部フラグである TDR E または R DR F フラグがセットされたとき、リード可能な IR TR フラグがセットされる場合とされない場合があります。DTC 起動要求フラグである IR TR フラグがデータ転送終了時にセットされないのは、I2C バスフォーマットでスレーブモー ドの場合に、スレーブアドレス(SVA)またはゼネラルコールアドレスが一致した後の再 送開始条件または停止条件検出までの期間です。 IR IC フラグ、IR TR フラグがセットされているときでも、内部フラグである TDR E また は R DR F フラグがセットされていない場合があります。DTC を利用した連続的な転送の 場合、設定した回数の転送終了時には、IRIC フラグおよび IRTR フラグはクリアされませ ん。一方、設定した回数の ICDR のリード/ライトは完了しているため TDRE または RDRF フラグはクリアされています。 各フラグと転送状態の関係を表 16.3 に示します。 表 16.3 フラグと転送状態の関係 MST TRS BBSY ESTP STOP IRTR AASX 1/0 1/0 0 0 0 0 0 AL AAS 0 0 状態 ADZ ACKB 0 0 アイドル状態 (フラグクリア要) 1 1 0 0 0 0 0 0 0 0 0 開始条件発行 1 1 1 0 0 1 0 0 0 0 0 開始条件成立 1 1/0 1 0 0 0 0 0 0 0 0/1 マスタモードウェイト 1 1/0 1 0 0 1 0 0 0 0 0/1 マスタモード送信/受信終了 0 0 1 0 0 0 1/0 1 1/0 1/0 0 アービトレーションロスト 0 0 1 0 0 0 0 0 1 0 0 スレーブモード第 1 フレームで SAR に一致 0 0 1 0 0 0 0 0 1 1 0 ゼネラルコールアドレスに一致 0 0 1 0 0 0 1 0 0 0 0 SARX に一致 0 1/0 1 0 0 0 0 0 0 0 0/1 スレーブモード送信/受信終了 (SARX 一致後以外) 0 1/0 1 0 0 1 1 0 0 0 0 スレーブモード送信/受信終了 0 1 1 0 0 0 1 0 0 0 1 (SARX 一致後) 0 1/0 0 1/0 1/0 0 0 0 0 0 0/1 停止条件検出 529 16. I 2C バスインタフェース(IIC) ビット 0:開始条件/停止条件発行禁止ビット(SCP) SCP ビットは、マスタモードでの開始条件/停止条件の発行を制御します。開始条件を 発行する場合、BBSY=1 かつ SCP=0 をライトします。開始条件の再送信時も同様に行い ます。また、停止条件の発行は BBSY=0 かつ SCP=0 をライトすることで行います。本ビ ットは、リードすると常に 1 が読み出されます。また、1 をライトしてもデータは格納さ れません。 ビット 0 説 明 SCP 0 ライト時、BBSY フラグと組み合わせて開始条件、停止条件を発行 1 リード時、常に 1 をリード (初期値) ライト時、無効 16.2.6 I2C バスステータスレジスタ(ICSR) ビット : 初期値 : R/W : 【注】* 7 6 5 4 3 2 1 0 ESTP STOP IRTR AASX AL AAS ADZ ACKB 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/W フラグをクリアするための0ライトのみ可能です。 ICSR は、8 ビットのリード/ライト可能なレジスタで、フラグの確認、アクノリッジの 確認および制御を行います。 リセットまたはハードウェアスタンバイモード時、ICSR は H'00 に初期化されます。 530 16. I 2C バスインタフェース(IIC) ビット 7:エラー停止条件検出フラグ(ESTP) ESTP フラグは、I2C バスフォーマットのスレーブモードで、フレームの転送の途中で停 止条件を検出したことを示します。 ビット 7 説 明 ESTP 0 エラー停止条件なし (初期値) 〔クリア条件〕 (1)ESTP=1 の状態をリードした後、0 をライトしたとき (2)IRIC フラグが 0 にクリアされたとき 1 ・I 2C バスフォーマットでスレーブモードのとき エラー停止条件を検出 〔セット条件〕 フレームの転送の途中で停止条件を検出したとき ・I 2C バスフォーマットでスレーブモードのとき以外 意味なし ビット 6:正常停止条件検出フラグ(STOP) STOP フラグは、I2C バスフォーマットのスレーブモードで、フレームの転送の完了後に 停止条件を検出したことを示します。 ビット 6 説 明 STOP 0 正常停止条件なし (初期値) 〔クリア条件〕 (1)STOP=1 の状態をリードした後、0 をライトしたとき (2)IRIC フラグが 0 にクリアされたとき 1 ・I 2C バスフォーマットでスレーブモードのとき 正常停止条件を検出 〔セット条件〕 フレームの転送の完了後に停止条件を検出したとき ・I 2C バスフォーマットでスレーブモードのとき以外 意味なし 531 16. I 2C バスインタフェース(IIC) ビット 5:I 2 C バスインタフェース連続送受信割込み要求フラグ(IRTR) IRTR フラグは、I2C バスインタフェースが CPUに対して割込み要求を発生させており、 その要因が DTC 起動可能な連続送受信動作の 1 フレーム送受信の完了であることを示し ます。IRTR フラグが 1 にセットされると、同時に IRIC フラグも 1 にセットされます。 IRTR フラグのセットは、TDRE または RDRF フラグが 1 にセットされたときに行われま す。IRTR フラグのクリアは、IRTR=1 をリードした後、0 をライトすることで行われます。 また、IRIC フラグを 0 にクリアすると IRTR フラグは自動的にクリアされます。 ビット 5 説 明 IRTR 0 転送待ち状態、または転送中 (初期値) 〔クリア条件〕 (1)IRTR=1 の状態をリードした後、0 をライトしたとき (2)IRIC フラグが 0 にクリアされたとき 1 連続転送状態 〔セット条件〕 ・I 2C バスインタフェースでスレーブモードのとき AASX=1 の状態で、TDRE または RDRF フラグが 1 にセットされたとき ・I 2C バスインタフェースでスレーブモードのとき以外 TDRE または RDRF フラグが 1 にセットされたとき 532 16. I 2C バスインタフェース(IIC) ビット 4:第 2 スレーブアドレス認識フラグ(AASX) AAS X フラグは、I2C バスフォーマットのスレーブ受信モードで、開始条件直後の第 1 フレームが SARX の SVAX6〜SVAX0 と一致した場合、AASX=1 となります。 AASX フラグのクリアは、AASX=1 をリードした後、0 をライトすることで行われます。 また、開始条件を検出すると自動的にクリアされます。 ビット 4 説 明 AASX 0 第 2 スレーブアドレスを未認識 (初期値) 〔クリア条件〕 (1)AASX=1 の状態をリードした後、0 をライトしたとき (2)開始条件を検出したとき (3)マスタモードのとき 1 第 2 スレーブアドレスを認識 〔セット条件〕 ・スレーブ受信モードかつ FSX=0 で第 2 スレーブアドレスを検出したとき ビット 3:アービトレーションロストフラグ(AL) AL フラグは、マスタモード時にバス競合負けをしたことを示します。 複数の マスタがほぼ 同時にバスを 占有しようと したときに I2C バスインタフ ェースは S DA をモニタし、自分が出したデータと異なった場合、AL フラグを 1 にセットしてバス が他のマスタによって占有されたことを示します。 AL フラグのクリアは、AL=1 をリードした後、0 をライトすることで行われます。ま た、ICDR をライト(送信時)またはリード(受信時)すると自動的にリセットされます。 ビット 3 説 明 AL 0 バスを確保 (初期値) 〔クリア条件〕 (1)ICDR にデータをライト(送信時)、データをリード(受信時)したとき (2)AL=1 の状態をリードした後、0 をライトしたとき 1 バス競合負け(アービトレーションロスト) 〔セット条件〕 (1)マスタ送信モードで SCL の立ち上がりで内部 SDA と SDA 端子が不一致の とき (2)マスタ送信モードで SCL の立ち下がりで内部 SCL が High レベルのとき 533 16. I 2C バスインタフェース(IIC) ビット 2:スレーブアドレス認識フラグ(AAS) AAS フラグは、I2C バスフォーマットのスレーブ受信モードで、開始条件直後の第 1 フ レームが S AR の S VA6〜S VA0 と一致した場合、またはゼネラルコールアドレス(H'00) を検出した場合、AAS=1 となります。 AAS フラグのクリアは、AAS =1 をリードした後、0 をライトすることで行われます。 また ICDR をライト(送信時)またはリード(受信時)すると自動的にリセットされます。 ビット 2 説 明 AAS 0 スレーブアドレスまたはゼネラルコールアドレスを未認識 (初期値) 〔クリア条件〕 (1)ICDR にデータをライト(送信時)、または ICDR のデータをリード(受信 時)したとき (2)AAS=1 の状態をリードした後、0 をライトしたとき (3)マスタモードのとき 1 スレーブアドレスまたはゼネラルコールアドレスを認識 〔セット条件〕 ・スレーブ受信モードかつ FS=0 でスレーブアドレスまたはゼネラルコールア ドレスを検出したとき ビット 1:ゼネラルコールアドレス認識フラグ(ADZ) ADZ フラグは、I2C バスフォーマットのスレーブ受信モードで、開始条件直後の第 1 フ レームでゼネラルコールアドレス(H'00)を検出した場合、ADZ=1 となります。 ADZ フラグのクリアは、ADZ=1 をリードした後、0 をライトすることで行われます。 また ICDR をライト(送信時)またはリード(受信時)すると自動的にリセットされます。 534 16. ビット 1 説 I 2C バスインタフェース(IIC) 明 ADZ 0 ゼネラルコールアドレスを未認識 (初期値) 〔クリア条件〕 (1)ICDR にデータをライト(送信時)、または ICDR のデータをリード(受信 時)したとき (2)ADZ=1 の状態をリード後、0 をライトしたとき (3)マスタモードのとき 1 ゼネラルコールアドレスを認識 〔セット条件〕 ・スレーブ受信モードかつ(FSX=0 または FS=0)でゼネラルコールアドレス を検出したとき ビット 0:アクノリッジビット(ACKB) ACKB ビットは、アクノリッジデータを格納するビットです。 送信モードでは、受信デバイスがデータを受信した後、アクノリッジデータを返してく るので、そのデータを ACKB ビットにロードします。また、受信モードでは送信デバイス に対し、データを受信した後、あらかじめ本ビットに設定されたアクノリッジデータを送 出します。 本ビットをリードすると、送信時(TR S=1 のとき)にはロードした値(受信デバイス から返ってきた値)が読み出され、受信時(TR S=0 のとき)には設定した値が読み出さ れます。 また、本ビットをライトすると TR S の値に かかわらず受信時に送信するアクノリッジ データの設定値を書き換えます。このとき、受信デバイスからロードした値は、そのまま 保持されますので、本レジスタをビット操作命令を使用して書き換えるときには注意が必 要です。 ビット 0 説 明 ACKB 0 受信時、アクノリッジ出力タイミングで 0 出力 (初期値) 送信時、受信デバイスからアクノリッジがあった(0 だった)ことを示す 1 受信時、アクノリッジ出力タイミングで 1 出力 送信時、受信デバイスからアクノリッジがなかった(1 だった)ことを示す 535 16. I 2C バスインタフェース(IIC) 16.2.7 シリアルタイマコントロールレジスタ(STCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IICS IICX1 IICX0 IICE FLSHE − ICKS1 ICKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W S TCR は 8 ビットのリー ド/ライト可能なレジスタで、レジスタ アクセスの制御、II C の動作モードの制御(IIC 内蔵オプションの場合)、内蔵フラッシュメモリの制御(F-ZTAT 版の場合)、TC NT の入力クロックの選択を行います。I2C バスインタフェース以外の詳 細は、「3.2.4 シリアルタイマコントロールレジスタ(STCR)」および各モジュールの 説明を参照して ください。 S TCR で制御する モジュールを使用しない場 合は、当該ビッ トに 1 をライトしないでください。 STCR はリセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 ビット 7:I 2 C エ ク ス ト ラ バ ッ フ ァ セ レ ク ト ( I IC S ) ポート A のビット 7〜4 を、S CL、S DA と同様の出力バッファとなるよう設定します。 ソフトウェアのみによる I2C インタフェースを実現する場合に利用します。 ビット 7 説 明 IICS 0 PA7〜PA4 は通常入出力端子 1 PA7〜PA4 はバス駆動可能な入出力端子 (初期値) ビット 6、5:I 2 C トランスファレートセレクト 1、0(IICX1、0) ICMR の CKS2〜CKS0 と組み合わせて、マスタモードでの転送レートを選択します。 転送レートの詳細は「1 6.2.4 ださい。 536 I 2 C バスモードレジスタ(ICMR )」の項を参照してく 16. I 2C バスインタフェース(IIC) ビット 4:I 2 C マスタイネーブル(IICE) I2C バスインタフェースのデータレジスタ、制御レジスタ(ICCR、ICSR、ICDR/SARX、 ICMR/SAR)の CPU アクセスを制御します。 ビット 4 説 明 IICE I 2C バスインタフェースのデータレジスタおよび制御レジスタの CPU アクセスを 0 禁止 (初期値) I 2C バスインタフェースのデータレジスタおよび制御レジスタの CPU アクセスを 1 許可 ビット 3:フラッシュメモリコントロールレジスタイネーブル(FLSHE) フラッシュメモリの制御レジスタ、低電圧電力状態の制御レジスタおよび周辺モジュー ルの制御レジスタの CPU アクセスを制御するビットです。詳しくは「3.2.4 シ リ ア ル タ イ マ コ ン ト ロ ー ル レ ジ ス タ ( S T CR) 」を参照してください。 ビット 2:リザーブビット リザーブビットです。1 にセットしないでください。 ビット 1、0:インターナルクロックソースセレクト 1、0(ICKS1、ICKS0) TC R の C KS2〜C KS0 ビットと共に、TC NT に入力するクロックを選択します。詳細は 「12.2.4 16.2.8 タイマコントロールレジスタ(TCR)」を参照してください。 DDC スイッチレジスタ(DDCSWR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 SWE SW IE IF CLR3 CLR2 CLR1 CLR0 0 0 0 0 1 1 1 1 R/W R/W R/W R/(W)*1 W*2 W*2 W*2 W*2 【注】 *1 フラグをクリアするための0ライトのみ可能です。 *2 リードすると常に1が読み出されます。 DDCSWR は 8 ビットのリード/ライト可能なレジスタで、IIC チャネル 0 のフォーマッ ト自動切り替え機能の制御および IIC の内部ラッチクリアの制御を行います。 DDCSWR はリセットまたはハードウェアスタンバイモード時にH'0F に初期化されます。 537 16. I 2C バスインタフェース(IIC) ビット 7:DDC モードスイッチイネーブル(SWE) IIC チャネル 0 で、フォーマットレスから I2C バスフォーマットへの自動切り替え機能を 選択します。 ビット 7 説 明 SWE 0 IIC チャネル 0 の、フォーマットレスから I 2C バスフォーマットへの自動切り替え を禁止する 1 (初期値) IIC チャネル 0 の、フォーマットレスから I 2C バスフォーマットへの自動切り替え を許可する ビット 6:DDC モードスイッチ(SW) IIC チャネル 0 でフォーマットレスと、I2C バスフォーマットを選択します。 ビット 6 説 明 SW 0 IIC チャネル 0 を I 2C バスフォーマットで使用する (初期値) 〔クリア条件〕 (1)ソフトウェアにより 0 をライトしたとき (2)SWE=1 で、SCL に立ち下がりエッジを検出したとき 1 IIC チャネル 0 をフォーマットレスで使用する 〔セット条件〕 ・SW=0 の状態をリードした後、1 をライトしたとき ビット 5:DDC モードスイッチ割込み許可ビット(IE) IIC チャネル 0 でフォーマットの自動切り替えが実行された場合の CPU への割込み要求 を許可/禁止します。 ビット 5 説 明 IE 538 0 フォーマット自動切り替え実行時の割込みを禁止 1 フォーマット自動切り替え実行時の割込みを許可 (初期値) 16. I 2C バスインタフェース(IIC) ビット 4:DDC モードスイッチ割込みフラグ(IF) IIC チャネル 0 でフォーマット自動切り替えが実行された場合の CPU への割込み要求フ ラグです。 ビット 4 説 明 IF 0 フォーマット自動切り替え実行時の割込み要求なし (初期値) 〔クリア条件〕 ・IF=1 の状態をリードした後、0 をライトしたとき 1 フォーマット自動切り替え実行時の割込み要求あり 〔セット条件〕 ・SWE=1 で、SCL に立ち下がりエッジを検出したとき ビット 3〜0:IIC クリア 3〜0(CLR3〜CLR0) 本ビットは IIC0、IIC1 の内部状態の初期化を制御します。 本ビットはライト動作のみ可能で、リードすると常に 1 が読み出されます。 本ビッ トのライト 動作により対 応するモジ ュールの内 部ラッチ回路 へのクリア 信号が 発生し、IIC モジュールの内部状態が初期化されます。 なお、本ビットへのライトデータは保持されません。IIC クリアを行う場合は、 必ず MOV 命令を使用し、CLR3〜CLR0 ビットを同時に書き込んでください。BCLR などのビット操 作命令は使用しないでください。 再度クリアが必要な場合は、全てのビットとも設定に従い書き込みする必要があります。 ビット 3 ビット 2 ビット 1 ビット 0 説明 CLR3 CLR2 CLR1 CLR0 0 0 − − 設定禁止 0 1 0 0 設定禁止 0 1 0 1 IIC0 内部ラッチクリア 0 1 1 0 IIC1 内部ラッチクリア 0 1 1 1 IIC0, 1 内部ラッチクリア 1 − − − 設定無効 539 16. I 2C バスインタフェース(IIC) 16.2.9 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MSTP4、MSTP3 の対応するビットを 1 にセットすると、バスサイクルの終了時点で IIC は動作を停止してモジュールストップモードへ遷移します。詳細は、「24.5 モジュール ストップモード」を参照してください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRL ビット 4:モジュールストップ(MSTP4) IIC チャネル 0 のモジュールストップモードを指定します。 MSTPCRL 説 明 ビット 4 MSTP4 0 IIC チャネル 0 のモジュールストップモード解除 1 IIC チャネル 0 のモジュールストップモード設定 (初期値) MSTPCRL ビット 3:モジュールストップ(MSTP3) IIC チャネル 1 のモジュールストップモードを指定します。 MSTPCRL 説 明 ビット 3 MSTP3 540 0 IIC チャネル 1 のモジュールストップモード解除 1 IIC チャネル 1 のモジュールストップモード設定 (初期値) I 2C バスインタフェース(IIC) 16. 16.3 動作説明 16.3.1 I2C バスデータフォーマット I2C バスインタフェースには、シリアルフォーマットと I2C バスフォーマットがあります。 I2C バスフォーマットは、アドレッシングフォーマットでアクノリッジビットありです。 これを図 16.3(a)、(b)に示します。開始条件に続く第 1 フレームは必ず 8 ビット構成 となります。 IIC チャネル 0 のみフォーマットレスでの動作が可能です。これを図 16.4 に示します。 シリアルフォーマットは、ノンアドレッシングフォーマットでアクノリッジビットなし です。これを図 16.5 に示します。また、I2C バスのタイミングを図 16.6 に示します。 図 16.3〜図 16.6 の記号説明を表 16.4 に示します。 (a)FS=0またはFSX=0 S SLA R/W A DATA A A/A P 1 7 1 1 n 1 1 1 1 転送ビット数 (n=1〜8) m 転送フレーム数 (m=1〜) (b)開始条件再送時、FS=0またはFSX=0 S SLA R/W A DATA A/A S SLA R/W A DATA A/A P 1 7 1 1 n1 1 1 7 1 1 n2 1 1 1 m1 1 m2 上段:転送ビット数(n1、n2=1〜8) 下段:転送フレーム数(m1、m2=1〜) 図 16.3 I 2 C バスデータフォーマット(I2C バスフォーマット) IICチャネル0のみ、FS=0またはFSX=0 DATA A DATA A A/A 8 1 n 1 1 1 【注】 m 転送ビット数 (n=1〜8) 転送フレーム数 (m=1〜) 本モードは、PCモニタシステムの規格、DDC(Display Data Channel)に応用されます。 図 16.4 フォーマットレス 541 16. I 2C バスインタフェース(IIC) FS=1かつFSX=1 S DATA DATA P 1 8 n 1 1 m 転送ビット数 (n=1〜8) 転送フレーム数 (m=1〜) 図 16.5 I2C バスデータフォーマット(シリアルフォーマット) SDA SCL S 1-7 8 9 SLA R/W A 1-7 DATA 8 9 A 1-7 DATA 8 9 A/A P 図 16.6 I 2 C バスタイミング 表 16.4 I2C バスデータフォーマット記号説明 S 開始条件を示します。マスタデバイスが SCL=High レベルの状態で SDA を High レベ ルから Low レベルに変化させます。 SLA スレーブアドレスを示します。マスタデバイスがスレーブデバイスを選択します。 R/W 送信/受信の方向を示します。R/W ビットが 1 の場合スレーブデバイスからマスタデ バイス、R/W ビットが 0 の場合マスタデバイスからスレーブデバイスへデータを転送 します。 A アクノリッジを示します。受信デバイスが SDA を Low レベルにします(マスタ送信モ ード時スレーブが、マスタ受信モード時マスタがアクノリッジを返します)。 DATA 送受信データを示します。送受信するデータのビット長は ICMR の BC2〜BC0 ビット で設定します。また MSB ファースト/LSB ファーストの切り換えは ICMR の MLS ビ ットで選択します。 P 停止条件を示します。マスタデバイスが SCL=High レベルの状態で SDA を Low レベ ルから High レベルに変化させます。 542 16. 16.3.2 I 2C バスインタフェース(IIC) マスタ送信動作 I2C バスフォーマットによるマスタ送信モードでは、マスタデバイスが送信クロック、 送信データを出力し、スレーブデバイスがアクノリッジを返します。 以下に ICDR のライト動作に同期して、データを逐次的に送信する送信手順と動作を示 します。 [1] IC C R の IC E ビットを 1 に設定します。IC MR の MLS 、WA IT ビット、C KS2〜C KS0 ビット、および STCR の IICX ビットを動作モードに合わせて設定します。 [2] ICCR の BBSY フラグをリードしバスがフリー状態であることを確認します。 [3] ICCR の MST、TRS ビットをそれぞれ 1 にセットしてマスタ送信モードに設定します。 [4] ICCR に BBSY=1 かつ SCP=0 をライトします。これにより、SCL が High レベルのとき SDA を High レベルから Low レベルに変化させ、開始条件を生成します。 [5] 開始条件の生成に伴い IRIC、IRTR フラグが 1 にセットされます。このとき、ICCR の IEIC ビットが 1 にセットされていると CPU に対して割り込み要求を発生します。 [6] ICDR にデータ(スレーブアドレス+R/W)をライトします。 I2C バスフォーマット(SAR の FS ビットまたは SARX の FSX ビットが 0 のとき)では、 開始条件に続く第 1 フレームデータは 7 ビットのスレーブアドレスと送信/受信の方 向を示します。 次に転送終了を判断するため IRIC フラグを 0 にクリアします。 ここで ICDR のライトと IRIC フラグのクリアは連続的に行い、他の割り込み処理が入 らないようにしてください。 もし IRICフラグのクリアまでに1バイト分の転送時間が経過した場合には転送終了を 判定することができなくなります。 マスタデバイスは図 16.7 で示すタイミングで送信クロックと ICDR にライトされたデ ータを順次送出します。選択された(スレーブアドレスが一致した)スレーブデバイ スは、送信クロックの 9 クロック目に S DA を Low レベルにし、アクノリッジを返し ます。 [7] 1 フレームのデータ送信が終了し、送信クロックの 9 クロック目の立ち上がりで IR IC フラグが 1 にセットされます。 S CL は 1 フレーム転送終了後、次の送信データをライトするまで内部クロックに同期 して自動的に Low レベルに固定されます。 [8] ICSR の ACKB ビットをリードして ACKB=0 であることを確認します。 スレーブデバイスがアクノリッジを返さず AC KB =1 となっている場合は、[12] の送信 終了処理を行い、再度送信動作をやり直してください。 [9] ICDR に送信データをライトします。 次に転送終了を判断するため IRIC フラグを 0 にクリアします。 ここで[6]同様に ICDR のライトと IRIC フラグのクリアは連続的に行ってください。 543 16. I 2C バスインタフェース(IIC) 次フレームの送信は内部クロックに同期して行われます。 [10] 1 フレームのデータ送信が終了し、送信クロックの 9 クロック目の立ち上がりで IRIC フラグが 1 にセットされます。 S CL は 1 フレーム転送終了後、次の送信データをライトするまで内部クロックに同期 して自動的に Low レベルに固定されます。 [11] ICSR の ACKB ビットをリードします。 スレーブデバイスがアクノリッジを返し ACKB=0 となっていることを確認します。引 き続きデータを送信する場合には、[9]に戻り次の送信動作に移ります。スレーブデバ イスがアクノリッジを返さず AC KB =1 となっている場合は、[12] の送信終了処理を行 います。 [12] IRIC フラグを 0 にクリアします。 ICCR に BBSY=0 かつ SCP=0 をライトします。これにより、SCL が High レベルのとき SDA を Low レベルから High レベルに変化させ、停止条件を生成します。 開始条件生成 SCL (マスタ出力) 1 SDA (マスタ出力) 2 3 4 5 6 7 8 9 SDA (スレーブ出力) R/W 2 ビット7 ビット6 ビット7 ビット6 ビット5 ビット4 ビット3 ビット2 ビット1 ビット0 スレーブアドレス 1 [7] データ1 A [5] IRIC IRTR ICDR アドレス+R/W データ1 注意: ICDRへの データ設定タイミング 不具合動作となります ユーザの処理 正常動作 [4]BBSY=1かつ [6]ICDRライト SCP=0をライト (開始条件発行) [6]IRICクリア [9]ICDRライト 図 16.7 マスタ送信モード動作タイミング例(MLS=WAIT=0 のとき) 544 [9]IRICクリア 16. 16.3.3 I 2C バスインタフェース(IIC) マスタ受信動作 I2C バスフォーマットによるマスタ受信モードでは、マスタデバイスが受信クロックを 出力し、データを受信し、アクノリッジを返します。スレーブデバイスはデータを送信し ます。 以下にウェイト動作を利用し、IC DR のリード動作に同期してデータを逐次的に受信す る受信手順と動作を示します。 [1] ICCR の TRS ビットを 0 にクリアし、送信モードから受信モードに切り替えます。 ICMR の WAIT ビットを 1 にセットします。 ICSR の ACKB ビットを 0 にクリアします。(アクノリッジデータの設定) [2] IC DR をリード(ダミー リード)すると受信を開始し、内部クロ ックに同期して受信 クロックを出力し、データを受信します。 次にウェイトを判断するため IRIC フラグを 0 にクリアします。 ここで ICDR のリードと IRIC フラグのクリアは連続的に行い、他の割り込み処理が入 らないようにしてください。 もし IRIC フラグのクリアまでに1バイト分の転送時間が経過した場合には転送終了を 判定することができなくなります。 [3] 1 フレームの受信クロックの 8 クロック目の立ち下がりで IR IC フラグが 1 にセットさ れます。このとき、ICCR の IEIC ビットが 1 にセットされていると CPU に対して割り 込み要求を発生します。 S CL は IR IC フラグがクリアされるまで内部クロックに同期して自動的に Low レベル に固定されます。 1 フレーム目が最後の受信データの場合は、[10]の終了処理を行ってください。 [4] ウェイトを解除するため IRIC フラグを 0 にクリアします。 マスタデバイスは受信クロックの 9 クロック目を出力するとともに、SDA を Low レベ ルにし、アクノリッジを返します。 [5] 1 フレームのデータ受信が終了し、受信クロックの 9 クロック目の立ち上がりで IR IC フラグ、および IRTR フラグが 1 にセットされます。 マスタデバイスは引き続き次の受信データの受信クロックを出力します。 [6] ICDR の受信データをリードします。 [7] 次のウェイトを判断するため IRIC フラグを 0 にクリアします。 [4] (または[9] )のウェイト解除のため、IR IC フラグクリアから[5] 〜[7] のデータ受信 完了処理までは、1 バイト分の転送時間内で行ってください。 [8] 1 フレームの受信クロックの 8 クロック目の立ち下がりで IR IC フラグが 1 にセットさ れます。 S CL は IR IC フラグがクリアされるまで内部クロックに同期して自動的に Low レベル に固定されます。 545 16. I 2C バスインタフェース(IIC) このフレームが最後の受信データの場合は、[10]の終了処理を行ってください。 [9] ウェイトを解除するため IRIC フラグを 0 にクリアします。 マスタデバイスは受信クロックの 9 クロック目を出力するとともに、SDA を Low レベ ルにし、アクノリッジを返します。 [5]から[9]を繰り返し行うことにより、データを受信することができます。 [10] IC S R の AC KB ビットを 1 にセットし、最後の受信用アクノリッジデータを設定しま す。 ICCR の TRS ビットを 1 にセットし、受信モードから送信モードに切り替えます。 [11]ウェイトを解除するため IRIC フラグを 0 にクリアします。 [12] 1 フレームのデータ受信が終了し、受信クロックの 9 クロック目の立ち上がりで IRIC フラグが 1 にセットされます。 [13] ICMR の WAIT ビットを 0 にクリアし、ウェイトモードを解除します。 その後、ICDR の受信データをリードし、IRIC フラグを 0 にクリアします。 IRIC フラグのクリアは WAIT=0 の状態で行ってください。 (IRIC フラグを 0 にクリア後に WAIT ビットを 0 にクリアし、停止条件発行命令を実 行した場合、SDA ラインが Low 固定され、停止条件が発行できなくなります。) [14] IC C R に B BS Y= 0 かつ S CP =0 をライトします。これにより、S CL が High レベルのと き SDA を Low レベルから High レベルに変化させ、停止条件を生成します。 マスタ送信モード SCL (マスタ出力) 9 SDA (スレーブ出力) A マスタ受信モード 1 2 3 4 5 6 7 9 8 ビット7 ビット6 ビット5 ビット4 ビット3 ビット2 ビット1 ビット0 [3] データ1 SDA (マスタ出力) 1 2 3 4 5 ビット7 ビット6 ビット5 ビット4 ビット3 [5] データ2 A IRIC IRTR データ1 ICDR ユーザの処理 [1]TRS=0クリア [2]ICDRリード WAIT=1セット (ダミーリード) ACKB=0クリア 図 16.8(1) 546 [2]IRICクリア [6]ICDRリード (データ1) [4]IRICクリア [7]IRICクリア マスタ受信モード動作タイミング例(MLS=ACKB=0、WAIT=1 のとき) I 2C バスインタフェース(IIC) 16. SCL (マスタ出力) 8 9 SDA ビット0 (スレーブ出力) データ2 [8] SDA (マスタ出力) 1 2 3 4 5 6 7 1 9 8 ビット7 ビット6 ビット5 ビット4 ビット3 ビット2 ビット1 ビット0 [5] データ3 2 ビット7 ビット6 [8] A [5] データ4 A IRIC IRTR ICDR ユーザの処理 図 1 6.8(2 ) データ1 データ2 [9]IRICクリア [6]ICDRリード [7]IRICクリア (データ2) データ3 [9]IRICクリア [6]ICDRリード (データ3) [7]IRICクリア マスタ受信モード動作タイミング例(ML S =A CK B =0 、WA IT=1 のとき) (続き) 16.3.4 スレーブ受信動作 スレーブ受信モードでは、マスタデバイスが送信クロック、送信データを出力し、スレ ーブデバイスがアクノリッジを返します。以下にスレーブ受信モードの受信手順と動作を 示します。 [1]IC C R の IC E ビットを 1 にセットします。また、IC MR の MLS ビットおよび IC C R の MST、TRS ビットを動作モードに合わせて設定します。 [2]マスタデバイスの出力した開始条件を検出すると、IC C R の B BS Y フラグが 1 にセッ トされます。 [3]開始条件後の第 1 フレームでスレーブアドレスが一致したとき、マスタデバイスに指 定されたスレーブデバイスとして動作します。8 ビット目のデータ(R/W)が 0 のとき ICCR の TRS ビットは 0 のまま変化せず、スレーブ受信動作を行います。 [4]受信フレームの 9 クロック目でスレーブデバイスは S DA を Low レベルにし、アクノ リッジを返します。同時に ICCR の IRIC フラグが 1 にセットされます。このとき、ICCR の IEIC ビットが 1 にセットされていると、CPU に対し割込み要求を発生します。この とき、RDRF 内部フラグが 0 にクリアされていると、RDRF 内部フラグを 1 にセットし て引き続き受信動作を行います。R DR F 内部フラグが 1 にセットされていると、スレ ーブデバイスは受信クロックの立ち下がりから IC DR にデータをリードするまで S CL を Low レベルにします。 [5]IC DR をリードし、IC C R の IR IC フラグを 0 にクリアします。このとき R DR F フラグ が 0 にクリアされます。 [4]から[5]を繰り返し行うことにより、受信動作を継続できます。SCL が High レベ ルのとき、S DA が Low レベルから High レベルに変化し停止条件を検出すると、IC C R の BBSY フラグが 0 にクリアされます。 547 16. I 2C バスインタフェース(IIC) 開始条件生成 SCL (マスタ出力) 1 SCL (スレーブ出力) SDA (マスタ出力) 2 3 4 5 6 7 8 1 9 ビット7 ビット6 ビット7 ビット6 ビット5 ビット4 ビット3 ビット2 ビット1 ビット0 R/W スレーブアドレス SDA (スレーブ出力) 2 [4] データ1 A RDRF 割込み要求 発生 IRIC アドレス+R/W ICDRS アドレス+R/W ICDRR ユーザの 処理 [5]ICDRリード [5]IRICクリア 図 16.9 スレーブ受信モード動作タイミング例 1(MLS=ACKB=0 のとき) SCL (マスタ出力) 7 8 9 1 2 3 4 5 6 7 8 9 SCL (スレーブ出力) SDA (マスタ出力) SDA (スレーブ出力) ビット1 ビット0 データ1 [4] ビット7 ビット6 ビット5 ビット4 ビット3 ビット2 ビット1 ビット0 [4] データ2 A A RDRF IRIC ICDRS ICDRR ユーザの 処理 割込み要求発生 割込み要求 発生 データ1 データ2 データ1 [5]ICDRリード [5]IRICクリア 図 16.10 スレーブ受信モード動作タイミング例 2(MLS=ACKB=0 のとき) 548 データ2 16. 16.3.5 I 2C バスインタフェース(IIC) スレーブ送信動作 スレーブ送信モードでは、スレーブデバイスが送信データを出力し、マスタデバイスが 受信クロックを出力し、アクノリッジを返します。以下にスレーブ送信モードの送信手順 と動作を示します。 [1]IC C R の IC E ビットを 1 にセットします。また、IC MR の MLS ビットおよび IC C R の MST、TRS ビットを動作モードに合わせて設定します。 [2]開始条件を検出後の第 1 フレームでスレーブアドレスが一致したとき、9 クロック目 でスレーブデバイスは SDA を Low レベルにし、アクノリッジを返します。同時にICCR の IRIC フラグが 1 にセットされ、このとき、ICCR の IEIC ビットが 1 にセットされて いると C PU に対し割込み要求を発生します。また、8 ビット目のデータ(R /W)が 1 のとき IC C R の TR S ビットが 1 にセットされ、自動的にスレーブ送信モードに変化し ます。このとき TDR E 内部フラグが 1 にセットされます。スレーブデバイスは送信ク ロックの立ち下がりから ICDR データをライトするまでSCL を Lowレベルにします。 [3]IR IC フラグを 0 にクリア後、IC DR にデータをライトします。このとき TDR E 内部フ ラグは 0 にクリアされます。ライトされたデータは ICDRS に転送され、TDRE 内部フ ラグおよび IR IC 、IR TR フラグが再び 1 にセットされます。IR IC フラグを 0 にクリア 後、ICDR に次のデータをライトします。スレーブデバイスは図 16.11 で示すタイミン グでマスタデバイス が出力するクロックにしたがい、IC DR にラ イトされたデータを 順次送出します。 [4]1 フレームのデータ送信が終了し、送信クロックの 9 クロック目の立ち上がりで ICCR の IRIC フラグが 1 にセットされます。またこのスレーブデバイスは、TDRE 内部フラ グが 1 にセットされていると、送信クロックの立ち下がりから IC DR にデータライト するまで S CL を Low レベルにします。マスタデバイスは 9 クロック目に S DA を Low レベルにし、アクノリッジを返します。このアクノリッジは IC S R の AC KB ビットに 格納される ので転送動作が正常 に行われたかどう か確認することがで きます。TDR E 内部フラグが 0 のときは、IC DR にライトされたデータは IC DR S に転送され送信を開 始し、TDRE 内部フラグおよび IRIC、IRTR フラグが再び 1 にセットされます。 [5]送信を続ける場合は、IRIC フラグを 0 にクリア後、次に送信するデータを ICDR にラ イトします。このとき TDRE 内部フラグは 0 にクリアされます。 [4]から[5]を繰 り返し行うことにより、送信動作を継続でき ます。送信を終了する 場合は、スレーブ側で SDA を開放するために ICDR に H'FF をライトします。SCL が High レベルのとき S DA が Low レベルから High レベルに変化し停止条件を検出すると、IC C R の BBSY フラグが 0 にクリアされます。 549 16. I 2C バスインタフェース(IIC) スレーブ受信モード SCL (マスタ出力) 8 9 スレーブ送信モード 1 2 3 4 5 6 7 9 8 1 2 SCL (スレーブ出力) SDA (スレーブ出力) SDA (マスタ出力) A ビット7 ビット6 ビット5 ビット4 ビット3 ビット2 ビット1 ビット0 ビット7 ビット6 データ1 [2] データ2 A R/W TDRE [3] IRIC 割込み要求 発生 割込み要求 発生 ICDRT データ1 ICDRS データ1 ユーザの処理 [3]IRICクリア [3]ICDRライト 割込み要求発生 データ2 データ2 [3]ICDRライト [5]IRICクリア 図 16.11 スレーブ送信モード動作タイミング例(MLS=0 のとき) 550 [5]ICDRライト 16. 16.3.6 I 2C バスインタフェース(IIC) IRIC セットタイミングと SCL 制御 割込み要求フラグ(IR IC )セットタイミングは IC MR の WA IT ビット、S AR の F S ビッ トおよび SARX の FSXビットの組み合わせにより異なります。また SCLは、 TDRE やRDRF 内部フラグが 1 にセットされていると、1 フレーム転送終了後内部クロックに同期して自 動的に Low レベルに固定します。図 16.12 に IRIC セットタイミングと SCL 制御を示しま す。 (a)WAIT=0かつ、FS=0またはFSX=0のとき(I2Cバスフォーマット、ウェイトなし) SCL SDA 7 8 9 1 7 8 A 1 IRIC ユーザの 処理 IRICクリア ICDRライト(送信時)または ICDRリード(受信時) (b)WAIT=1かつ、FS=0またはFSX=0のとき(I2Cバスフォーマット、ウェイトあり) SCL SDA 8 9 1 8 A 1 IRIC ユーザの 処理 IRICクリア ICDRライト(送信時)または ICDRリード(受信時) IRICクリア (c)FS=1かつFSX=1のとき(クロック同期式シリアルフォーマット) SCL SDA 7 8 1 7 8 1 IRIC ユーザの 処理 IRICクリア ICDRライト(送信時)または ICDRリード(受信時) 図 16.12 IRIC セットタイミングと SCL 制御 551 16. I 2C バスインタフェース(IIC) 16.3.7 フォーマットレスから I2C バスフォーマットへの自動切り替え DDC S WR の S W ビットを 1 にセットすると、II C0 の動作モードを、フォーマットレス にすることができます。フォーマットレスから I2C バスフォーマット(スレーブモード) へは、SCL の立ち下がりを検出すると自動的に切り替えられます。 この動作の前提として、以下の4つの条件が必要です。 (1)フォーマットレスと I2C バスフォーマットのデータ端子(SDA)が共通 (2)フォーマットレスと I2C バスフォーマットのクロック端子が独立 (フォーマットレス:VSYNCI、I2C バスフォーマット:SCL) (3)フォーマットレス時には SCL 端子は 1 固定(Low ドライブしない) (4)ICCR の TRS ビット以外が、I2C バスフォーマットでの動作可能な設定 自動切り替えは、S CL の立ち下がりエッジを検出して DDC S WR の S W ビットを自動的 に 0 にクリアすることにより、フォーマットレス→I2C バスフォーマットの方向で行われ ます。I2C バスフォーマット→フォーマットレスの切り替えは、 DDC S WR の S W ビット をソフトウェアで 1 にセットすることによって行います。 フォーマットレス時には、I2C バスインタフェースの動作モードを制御するビット(MSL ビット、TR S ビット等)を書き換えないでください。I2C バスフォーマット→フォーマッ トレスの 切り替え時には、 フォーマットレ スでの転送方向 (送信/受信)に 合せて TR S ビットを 1 にセットまたは 0 にクリアした後に S W ビットを 1 にセットしてください。フ ォーマットレス→I2C バスフォーマット(スレーブモード)の自動切り替え後はスレーブ アドレス受信待ちとするため、TRS ビットは自動的に 0 にクリアされます。 フォーマットレスで動作中に SCL の立ち下がりを検出すると、I2C バスインタフェース は、停止条件を待たず、その時点でフォーマットを切り替えます。 552 16. 16.3.8 I 2C バスインタフェース(IIC) DTC による動作 I2C バスフォーマットでは、スレーブアドレスと R/W ビットによるスレーブデバイスお よび転送方向の選択や、アクノリッジビットによる受信の確認および最終フレームの表示 などが行われるため、DTC によるデータの連続転送は、割込みによる C PU 処理と組合わ せて行う必要があります。 表 1 6.5 は、DTC を利用した処理の例を示します。スレーブモードでも転送データ数が 判っていると仮定しています。 表 16.5 DTC による動作例 項目 スレーブアドレス+ マスタ送信モード DTC で送信 マスタ受信モード スレーブ送信モード スレーブ受信モード CPU で送信 CPU で受信 CPU で受信 R/W ビット送信/受信 (ICDR ライト) (ICDR ライト) (ICDR リード) (ICDR リード) ダミーデータリード CPU で処理 − − − DTC で受信 DTC で送信 DTC で受信 (ICDR リード) (ICDR ライト) (ICDR リード) (ICDR リード) 本体データ送信/受信 DTC で送信 (ICDR ライト) ダミーデータ(H'FF ) − − ライト DTC で処理 − (ICDR ライト) 最終フレーム処理 不要 CPU で受信 不要 (ICDR リード) 最終フレーム処理後の 1 回目: 不要 CPU で受信 (ICDR リード) ダミーデータ 不要 CPU でクリア (H' FF)送出中に 2 回目: 終了条件を検出して CPU で終了条件発行 自動的にクリア DTC 転送データ 送信:実データ数+1 受信:実データ数 送信:実データ数+1 受信:実データ数 フレーム数設定 (+1 は、スレーブア (+1 は、ダミーデー ドレス+R/W ビット タ(H’FF)分) 転送要求処理 分) 553 16. I 2C バスインタフェース(IIC) 16.3.9 ノイズ除去回路 S CL 端子および S DA 端子 の状態はノイズ除去回路を経由して内部 に取り込まれます。 図 16.13 にノイズ除去回路のブロック図を示します。 ノイズ除去 回路は 2 段直列に接 続されたラッチ回路と 一致検出回路で構成 されます。 SCL 端子入力信号(または SDA 端子入力信号)がシステムクロックでサンプリングされ、 2 つのラッチ出力が一致したときはじめて後段へそのレベルを伝えます。一致しない場合 は前の値を保持します。 サンプリングクロック SCL入力信号 または SDA入力信号 C D C Q D ラッチ システムクロック 周期 サンプリング クロック 図 16.13 ノイズ除去回路のブロック図 554 Q ラッチ 一致検出 回路 内部SCL信号 または 内部SDA信号 16. 16.3.10 I 2C バスインタフェース(IIC) 使用例 I2C バスインタフェースを使用する場合の 各モードでのフローチャート例を図 1 6.14 〜 図 16.17 に示します。 開始 初期設定 [1] 初期設定 [2] SCL、SDAラインの状態判定 [3] マスタ送信モードに設定 [4] 開始条件発行 [5] 開始条件生成待ち ICCRのBBSYフラグをリード No BBSY=0? Yes MST=1、TRS=1 (ICCR)を設定 BBSY=1、SCP=0 (ICCR)をライト ICCRのIRICフラグをリード No IRIC=1? Yes ICDRに送信データをライト [6] ICCRのIRICフラグをクリア 第1バイト(スレーブアドレス+R/W)の 送信データの設定 (ICDRライトとIRICフラグクリア動作は 連続的に行ってください) ICCRのIRICフラグをリード No IRIC=1? [7] 1バイト送信終了待ち [8] 指定したスレーブデバイスからの アクノリッジの判定 Yes ICSRのACKBビットをリード ACKB=0? No Yes 送信モード? No マスタ受信モード Yes ICDRに送信データをライト ICCRのIRICフラグをクリア ICCRのIRICフラグをリード No [9] 2バイト目以降の送信データの設定 (ICDRライトとIRICフラグクリア動作は 連続的に行ってください) [10] 1バイト送信終了待ち [11] 転送終了判定 [12] 停止条件発行 IRIC=1? Yes ICSRのACKBビットをリード No 送信を終了?または ACKB=1? Yes ICCRのIRICフラグをクリア BBSY=0、SCP=0 (ICCR)をライト 終了 図 16.14 マスタ送信モードのフローチャート例 555 16. I 2C バスインタフェース(IIC) マスタ受信モード TRS=0(ICCR)を設定 [1] 受信モードの設定 WAIT=1(ICMR)を設定 ACKB=0(ICSR)を設定 ICDRをリード [2] ICCRのIRICフラグをクリア ICCRのIRICフラグをリード 受信開始、ダミーリード (ICDRリードとIRICフラグクリア動作は 連続的に行ってください) [3] 1バイト目受信ウェイト [4] IRICフラグクリア(ウェイト解除) [5] 1バイト受信終了待ち Yes ICDRをリード [6] 受信データのリード ICCRのIRICフラグをクリア [7] IRICフラグクリア [8] 2バイト目以降の受信データウェイト [9] IRICフラグクリア(ウェイト解除) No IRIC=1? Yes 最後の受信? Yes No ICCRのIRICフラグをクリア ICCRのIRICフラグをリード No IRIC=1? ICCRのIRICフラグをリード No IRIC=1? Yes 最後の受信? Yes No ICCRのIRICフラグをクリア ACKB=1(ICSR)を設定 [10] 最後の受信用アクノリッジデータ設定 [11] IRICフラグクリア(ウェイト解除) [12] 1バイト受信終了待ち [13] ウェイトモード解除 受信データのリード IRICフラグクリア (IRICフラグクリアはWAIT=0の状態で 行ってください) [14] 停止条件発行 TRS=1(ICCR)を設定 ICCRのIRICフラグをクリア ICCRのIRICフラグをリード No IRIC=1? Yes WAIT=0(ICMR)を設定 ICDRをリード ICCRのIRICフラグをクリア BBSY=0、SCP=0 (ICCR)をライト 終了 図 16.15 マスタ受信モードのフローチャート例 556 16. I 2C バスインタフェース(IIC) 開始 初期設定 MST=0、TRS=0 (ICCR)を設定 [1] ACKB=0(ICSR)を設定 ICCRのIRICフラグをリード No [2] IRIC=1? Yes ICSRのAAS、ADZフラグをリード AAS=1かつ ADZ=0? No ゼネラルコールアドレス処理 ※説明省略 Yes ICCRのTRSビットをリード TRS=0? No スレーブ送信モード Yes 最後の受信? Yes No ICDRをリード [3] ICCRのIRICフラグをクリア ICCRのIRICフラグをリード No [1] スレーブ受信モードに設定 [4] IRIC=1? [2] 1バイト受信終了待ち(スレーブアドレス) Yes [3] 受信開始、ただし1回目はダミーリード [4] 受信終了待ち ACKB=0(ICSR)を設定 [5] ICDRをリード [6] [5] 最後の受信用アクノリッジデータ設定 ICCRのIRICフラグをクリア [6] 最後の受信開始 ICCRのIRICフラグをリード [7] 受信終了待ち No [7] IRIC=1? [8] 最後の受信データをリード Yes ICDRをリード [8] ICCRのIRICフラグをクリア 終了 図 16.16 スレーブ受信モードフローチャート例 557 16. I 2C バスインタフェース(IIC) スレーブ送信モード [1] 2バイト目以降の送信データの設定 ICCRのIRICフラグをクリア ICDRに送信データをライト [2] 1バイト送信終了待ち [1] [4] スレーブ受信モードに設定 ICCRのIRICフラグをクリア [5] ダミーリード(SCLラインを解放) ICCRのIRICフラグをリード No [3] 転送終了判定 [2] IRIC=1? Yes ICSRのACKBビットをリード No 送信を終了? (ACKB=1?) [3] Yes TRS=0(ICCR)を設定 [4] ICDRをリード [5] ICCRのIRICフラグをクリア 終了 図 16.17 スレーブ送信モードフローチャート例 16.3.11 内部状態の初期化 本 II C は、通信動作中のデッドロック発生時に、強制的に II C 内部状態を初期化させる 機能を持っています。 初期化は、(1)DDC S WR レジスタの C LR3〜C LR0 ビットの設定、または(2)IC E ビ ットのクリアにより実行されます。CLR3〜CLR0 ビットの設定の詳細は、「16.2.8 DDC スイッチレジスタ(DDCSWR)」を参照してください。 (1)初期化の範囲 本機能により初期化されるのは、次の範囲となります。 ・ TDRE、RDRF 内部フラグ ・ 送信/受信シーケンサ、内部動作クロックのカウンタ ・ S CL、S DA 端子出力状態を保持するための 内部ラッチ(ウェイト、クロック、デ ータ出力など) なお、以下の内容は初期化されません。 ・ レジスタ自体の値(ICDR、SAR、SARX、ICMR、ICCR、ICSR、DDCSWR、STCR) ・ ICMR、ICCR、ICSR、DDCSWR 各レジスタのフラグのセット/クリアのためのレ ジスタリード情報保持用内部ラッチ ・ ICMR レジスタのビットカウンタ(BC2〜BC0)の値 ・ 発生した割込み要因(割込みコントローラに転送された割込み要因) 558 16. I 2C バスインタフェース(IIC) (2)初期化における注意事項 ・ 割込みフラ グ、割り込み要因はクリア されませんので、必要に応 じてフラグをク リアする処置が必要です。 ・ その他のレ ジスタフラグも基本的にク リアされませんので、必要 に応じてフラグ をクリアする処置が必要です。 ・ DDCSWR レジスタにより初期化を行う場合、CLR3〜CLR0 ビットのライトデータ は保持されません。II C クリアを行う 場合は、必ず MOV 命令を使用し、C LR3〜 CLR0 ビットを同時に書き込んでください。BCLR などのビット操作命令は使用し ないでください。 また、再度 クリアが必要な場合は、同 様に全てのビットとも設定 に従い、同時に 書き込みする必要があります。 ・ 送受信中にフラグのクリア設定を行うと、その時点で IIC モジュールは送受信を中 止し S CL、S DA 端子を解放します。再度送受信を開始する際には、システムとし て正しく通信できるよう、必要に応じてレジスタの初期化などを行ってください。 なお、本モジュールクリア機能により直接 BBSY ビットの値を書き替えませんが、SCL、 SDA 端子の状態、解放するタイミングにより、停止条件の端子波形が生成され、結果的に BBSY ビットをクリアする場合があります。また、他のビット、フラグも同様に、状態の 切り替わりに伴い影響が発生する場合があります。 これらによる問題を回避するため、II C の状態を初期化するときは、以下の手順に従っ てください。 (1)CLR3〜CLR0 ビットの設定、または ICE ビットによる内部状態の初期化実行 (2)B BS Y ビットを 0 にクリアするための、停止条件発行命令実行(B BS Y=0 かつ S CP =0 ライト)および、転送レートの 2 クロック分の期間ウェイト (3)CLR3〜CLR0 ビットの設定、または ICE ビットによる内部状態の初期化の再実行 (4)IIC の各レジスタの初期化(再設定) 559 16. I 2C バスインタフェース(IIC) 16.4 使用上の注意 (1)マスタモードで、開始条件生成のための命令と停止条件生成のための命令を連続的に 発行すると、開始条件も停止条件も正常に出力されなくなります。開始条件と停止条 件を連続的に出力する場合は、開始条件生成のための命令を発行後、ポートをリード し、SCL、SDA が共に Low レベルになっていることを確認してください。その後、停 止条件生成のための命令を発行してください。B BS Y= 0 となったタイミングでは、ま だ SCL が Low レベルになっていない場合がありますのでご注意ください。 (2)次転送のスタート条件が次の 2 条件となっています。IC DR をリード/ライトする場 合は注意してください。 (a)IC E=1 かつ TR S=1 かつ IC DR にライトしたとき(IC DR T→IC DR S の自動転送を 含む) (b)ICE=1 かつ TRS=0 かつ ICDR をリードしたとき(ICDRS→ICDRR の自動転送を 含む) (3)S CL、S DA 出力は、内部クロックに同期して表 1 6.6 に示すタイミングで出力されま す。バス上でのタイミングは、バスの負荷容量、直列抵抗、および並列抵抗に影響さ れる信号の立ち上がり/立ち下がり時間によって定まります。 表 16.6 I2C バスタイミング(SCL、SDA 出力) 記号 出力タイミング 単位 備考 SCL 出力サイクル時間 項 目 t SCLO 28t cyc 〜256t cyc ns 図 26.28(参考) SCL 出力 High パルス幅 t SCLHO 0.5tSCLO ns SCL 出力 Low パルス幅 t SCLLO 0.5tSCLO ns SDA 出力バスフリー時間 t BUFO 0.5tSCLO −1t cyc ns 開始条件出力ホールド時間 t STAHO 0.5tSCLO −1t cyc ns 再送開始条件出力セットアップ時間 t STASO 1t SCLO ns 停止条件出力セットアップ時間 t STOSO 0.5tSCLO +2tcyc ns データ出力セットアップ時間(マスタ時) t SDASO 1t SCLLO−3t cyc ns 1t SCLL −(6tcyc または ns データ出力セットアップ時間(スレーブ時) 12t cyc *) データ出力ホールド時間 【注】 * t SDAHO 3t cyc ns IICX が 0 のとき 6t cyc 、1 のとき 12t cyc となります。 (4)S CL、S DA 入力は、内部クロックに同期 してサンプリングされます。そのため、AC タイミングは、「第 26 章 電気的特性」の I2C バスタイミングに示すように、システ ムクロック周期 tcyc に依存しています。システムクロック周波数が 5MHz に満たないと、 I2C バスインタフェースのAC タイミング仕様を満足しなくなりますのでご注意くださ い。 560 16. I 2C バスインタフェース(IIC) (5)SCL の立ち上がり時間 tSr は、I2C バスインタフェースの仕様で 1000ns(高速モード時 は 300ns)以内と定められています。本 I2C バスインタフェースは、マスタモード時 SCL をモニタし、ビットごとに同期をとりながら通信を行います。そのため SCL の立 ち上がり時間 tSr(Low レベルから VIH まで変化する時間)が、I2C バスインタフェース の入力クロックで決 まる時間を越えた場合、S CL の High 期間 が延ばされます。S CL の立ち上がり時間は、SCL ラインのプルアップ抵抗、負荷容量で決定されますので、 設定した転送レートで動作させるためには、表 16.7 に示す時間以下になるようにプル アップ抵抗、負荷容量を設定してください。 表 16.7 SCL 立ち上がり時間(tSr)の許容範囲 IICX 0 1 t cyc 表示 7.5tcyc 時間表示 [ns] I 2C バス φ= φ= φ= φ= φ= 仕様(max.) 5MHz 8MHz 10MHz 16MHz 20MHz 標準モード 1000 ← 937 750 468 375 高速モード 300 ← ← ← ← ← 1000 ← ← ← ← 875 300 ← ← ← ← ← 17.5tcyc 標準モード 高速モード (6)SCL、SDA の立ち上がり、立ち下がり時間は、I2C バスインタフェースの仕様で 1000ns および 300ns 以内と定められています。一方、本 I2C バスインタフェースの SCL、SDA 出力タイミングは、表 1 6.6 に示すように tc yc によって規定されますが、立ち上がり、 立ち下がり時間の影響で最大の転送レートでは I2C バスインタフェースの仕様を満足 しない場合があります。表 16.8 は出力タイミングを各動作周波数で計算し、ワースト ケースの立ち上がり、立ち下がり時間の影響を加えたものです。 tBUF O はどの周波数でも I2C バスインタフェースの仕様を満足しません。これに対して は、(a )停止条件発行後、開始条件の発行まで必要なインターバル(1 μ s 程度)を確 保するようプログラムする必要がありま す。あるいは、(b) I2C バスに接続されるスレ ーブデバイスとして、入力タイミングがこの出力タイミングを許容するものを選択し てください。 高速モード時の tSCL L O、標準モード時の tST AS O では、tSr/tSf をワーストケースとして計 算した場合に I2C バスインタフェースの仕様を満足しません。(a )プルアップ抵抗、容 量負荷により立ち上がり、立ち下がり時間を調整するか、(b)転送レートを下げて仕様 を満足するよう調整 するなどの対応を検討してください。あ るいは、(c )I2C バスに接 続されるスレーブデバイスとして、入力タイミングがこの出力タイミングを許容する ものを選択してください。 561 16. I 2C バスインタフェース(IIC) 表 16.8 I2C バスタイミング(tSr/t Sf 影響最大の場合) 項目 t cyc 表示 時間表示(最大転送レート時)[ns] 2 t Sr/t Sf I C バス t SCLHO t SCLLO t STASO t STOSO (min.) 5MHz 8MHz φ= φ= 10MHz 16MHz 20MHz -1000 4000 4000 4000 4000 4000 4000 ( -tSr ) 高速モード -300 600 950 950 950 950 950 0.5tSCLO 標準モード -250 4700 4750 4750 1 4750 1 4750 1 4750 1 1000* 1 高速モード -250 1300 1000* 0.5tSCLO -1tcyc 標準モード -1000 4700 3800* 1 3875* 1 3900* 1 3938* 1 3950* 1 高速モード -300 1300 750* 1 825* 1 850* 1 888* 1 900* 1 0.5tSCLO -1tcyc 標準モード -250 4000 4550 4625 4650 4688 4700 ( -tSf ) 高速モード -250 600 800 875 900 938 950 1t SCLO 標準モード -1000 4700 9000 9000 9000 9000 9000 ( -tSr ) 高速モード -300 600 2200 2200 2200 2200 2200 0.5tSCLO +2tcyc 標準モード -1000 4000 4400 4250 4200 4125 4100 高速モード -300 600 1350 1200 1150 1075 1050 1t SCLLO* 3-3tcyc 標準モード -1000 250 3100 3325 3400 3513 3550 625 700 813 850 2950 3100 250 400 ( -tSr ) t SDASO (max.) φ= 標準モード ( -tSr ) t STAHO 仕様 φ= 0.5tSCLO ( -tSf ) t BUFO 影響 φ= マスタ時 ( -tSr ) 高速モード -300 100 400 t SDASO 1tSCLL* 3-12tcyc* 2 標準モード -1000 250 1300 1000* 2200 1 1 1000* 1000* 2500 1 スレーブ時 ( -tSr ) 高速モード -300 100 -1400* t SDAHO 3t cyc 標準モード 0 0 600 375 300 188 150 高速モード 0 0 600 375 300 188 150 【注】 -500* -200* *1 I 2C バスインタフェースの仕様を満足しません。以下の4つの対応などが必要です。 (1)開始/停止条件発行のインターバルを確保する。(2)プルアップ抵抗・容量負荷 により、立ち上がり、立ち下がり時間を調整する。(3)転送レートを下げて調整する。 (4)入力タイミングが本出力タイミングを許容するスレーブデバイスを選択する。 なお、上記表の値は、I ICX ビット、CK S2〜CK S0 ビットの設定値により変わります。 周波数により最大転送レートを実現できない場合もありますので、実際の設定条件に合 わせ、I 2C バスインタフェースの仕様を満足するか検討してください。 *2 IICX ビットが 1 のときです。IICX ビットを 0 に設定すると、(t SCLL -6tcyc )となります。 * 3 I 2C バス仕様値(標準モード:4700ns min. 、高速モード:1300ns min. )で計算してい ます。 562 16. I 2C バスインタフェース(IIC) (7)マスタ受信終了時における ICDR リードの注意 マスタ受信モードでの受信動作完了後、受信をやめる場合は、TR S ビットを 1 にセッ トし、ICCR の BBSY=0 かつ SCP=0 をライトします。これにより、SCL が High レベ ルのとき、S DA を Low レベルから High レベルに変化させ、停止条件を生成します。 この後で受信データは IC DR のリードにより読み出すことができますが、バッファに データが残っている場合、ICDRS の受信データは ICDR に転送されなくなりますので、 第 2 バイト目のデータは、読み出すことができなくなります。 第 2 バイト目のデータを読み出す必要があるときは、マスタ受信モードの状態(TR S ビットが 0 の状態)で停止条件の発行を行ってください。受信データの読み出しは、 必ず IC C R レジスタの B BS Y ビットが 0 になり、停止条件が生成され、バスが開放さ れていることを確認後に、TRS が 0 の状態で ICDR レジスタをリードしてください。 このとき、停止条件発行のための命令実行(ICCR の BBSY=0 かつ SCP=0 をライト) から実際に停止条件が生成されるまでの期間において、受信データ(ICDR のデータ) を読み出すと、次のマスタ送信時に正しくクロックが出なくなる場合がありますので 注意が必要です。 なお、マスタ送受信完了後の MST ビットのクリアなど、送受信の動作モード、設定変 更のための II C 制御ビットの書き替えについては、必ず図 1 6.18 の(a )期間中(IC C R レジ スタの BBSY ビットの 0 クリア確認後)に行ってください。 停止条件 開始条件 (a) SDA ビット0 A SCL 8 9 内部クロック BBSYビット マスタ受信モード ICDRリード 禁止期間 停止条件発行命令実行 (BBSY=0かつ SCP=0ライト) 停止条件発生確認 (BBSY=0リード) 開始条件発行 図 16.18 マスタ受信データの読み出しにおける注意 563 16. I 2C バスインタフェース(IIC) (8)再送のための開始条件発行時の注意事項 図 1 6.19 に、再送のための開始条件発行のタイミングと、それに連続して IC DR にデ ータを書き込むタイミングおよびフローチャートを示します。再送開始条件を発行し、 開始条件が生成した後で ICDR に送信データをライトしてください。 [1] 1バイト転送終了待ち IRIC=1? No [1] Yes ICSRのIRICをクリア 開始条件発行? [2] SCLがLowレベルであるか判定 [3] 再送のための開始条件命令発行 No [4] 開始条件の生成を確認 その他処理 [5] 送信データ(スレーブアドレス+R/W)設定 Yes [2] SCL端子をリード SCL=Low? [注] [3]から[5]の処理命令は連続して実行さ れるようにプログラムしてください。 No Yes BBSY=1、SCP=0 (ICSR)をライト IRIC=1 [3] No [4] Yes ICDRに送信データをライト [5] (再送)開始条件生成 9 SCL SDA ACK bit7 IRIC [3] (再送)開始条件命令発行 [1]IRIC判定 [2]SCL=Low判定 [4]IRIC判定 [5]ICDRライト (転送データ) 図 16.19 再送のための開始条件命令発行フローチャートおよびタイミング 564 16. I 2C バスインタフェース(IIC) (9)I2C バスインタフェース停止条件命令発行時の注意事項 バス負荷容量が大きいため、SCL の 9 クロック目の立ち上り時間が規定を超えてしまう 場合や、S CL を Low にしてウェイトをかけるタイプのスレーブデバイスがある場合は、 下記のように 9 クロック目の立ち上り後に SCL をリードして、Low を判定してから停止条 件命令を発行してください。 SCL 9クロック目 VIH High期間を確保 波形の立ち上りが遅いため SCL=Lowとして検出 SDA 停止条件生成 IRIC [1]SCL=Low判定 [2]停止条件命令発行 図 16.20 停止条件発行タイミング 565 16. 566 I 2C バスインタフェース(IIC) 17. キーボードバッファ コントローラ H8S/2148 シリーズ、H8S/2147N に内蔵しています。 H8S/2144 シリーズには内蔵していません。 第 17 章 17.1 17.2 17.3 目次 概要 ....................................................................................................................................... 569 17.1.1 特長 ...................................................................................................... 569 17.1.2 ブロック図 ............................................................................................ 570 17.1.3 端子構成................................................................................................ 571 17.1.4 レジスタ構成 ......................................................................................... 571 各レジスタの説明 ................................................................................................................... 572 17.2.1 キーボードコントロールレジスタ H(KBCRH) ...................................... 572 17.2.2 キーボードコントロールレジスタ L(KBCRL)....................................... 575 17.2.3 キーボードデータバッファレジスタ(KBBR) ........................................ 576 17.2.4 モジュールストップコントロールレジスタ(MSTPCR) .......................... 577 動作説明................................................................................................................................. 578 17.3.1 受信動作................................................................................................ 578 17.3.2 送信動作................................................................................................ 579 17.3.3 受信中断動作 ......................................................................................... 582 17.3.4 KCLKI、KDI リードタイミング .............................................................. 584 17.3.5 KCLKO、KDO ライトタイミング............................................................ 584 17.3.6 KBF セットタイミングと KCLK 制御 ....................................................... 585 17.3.7 受信タイミング...................................................................................... 586 17.3.8 KCLK 立ち下がり割込みの動作............................................................... 587 17.3.9 使用上の注意 ......................................................................................... 588 17. 568 キーボードバッファコントローラ 17. キーボードバッファコントローラ 17.1 概要 本 LS I は、3 チャネルのキーボードバッファコントラーラ 0、1、2 を内蔵しています。 キーボードバッファコントローラは、PS/2 インタフェースに準拠した機能を備えています。 キーボードバッ ファコントローラを用いた データ転送は、データライ ン(KD)一本、 クロックライン一本で構成され、コネクタやプリント基盤の面積などを経済的に使用でき ます。図 17.1 にキーボードバッファコントローラ接続方法を示します。 17.1.1 特長 ■PS/2 インタフェースに準拠 ■バスを直接駆動(KCLK、KD 端子) ■割り込み要因:データ受信完了時、クロックのエッジ検出時 ■エラー検出:パリティエラー、ストップビットモニタ Vcc Vcc システム側 キーボード側 KCLK in KCLK in クロック KCLK out KCLK out KD in KD in データ KD out キーボードバッファ コントローラ(本LSI) KD out I/F 図 17.1 キーボードバッファコントローラ接続方法 569 17. キーボードバッファコントローラ 17.1.2 ブロック図 キーボードバッファコントローラのブロック図を図 17.2 に示します。 内部 データバス KBBR KD PS2AD PS2BD PS2CD KCLK PS2AC PS2BC PS2CC コ ン ト ロ | ル ロ ジ ッ ク KDI KCLKI KBCRH パリティ KDO KCLKO KBCRL レジスタカウンタ値 KBI割込み 【記号説明】 :KBCデータ入出力端子 KD KCLK :KBCクロック入出力端子 KBBR :キーボードデータバッファレジスタ KBCRH :キーボードコントロールレジスタH KBCRL :キーボードコントロールレジスタL 図 17.2 キーボードバッファコントローラのブロック図 570 モ ジ ュ | ル デ | タ バ ス バ ス イ ン タ フ ェ | ス 17. 17.1.3 キーボードバッファコントローラ 端子構成 キーボードバッファコントローラで使用する端子を表 17.1 に示します。 表 17.1 端子構成 チャネル 名称 略称* 入出力 0 KBC クロック入出力端子(KCLK0) PS2AC 入出力 KBC クロック入出力 KBC データ入出力端子(KD0) PS2AD 入出力 KBC データ入出力 KBC クロック入出力端子(KCLK1) PS2BC 入出力 KBC クロック入出力 KBC データ入出力端子(KD1) PS2BD 入出力 KBC データ入出力 KBC クロック入出力端子(KCLK2) PS2CC 入出力 KBC クロック入出力 KBC データ入出力端子(KD2) PS2CD 入出力 KBC データ入出力 1 2 【注】 * 機能 外部入出力端子名です。本文中ではチャ ネルを省略し、クロック入出力端子を KC LK、 データ入出力端子を KD と記載します。 17.1.4 レジスタ構成 キーボードバッファコントローラのレジスタ構成を表 17.2 に示します。 表 17.2 レジスタ構成 チャネル 名称 0 キーボードコントロールレジスタ H 1 2 共通 【注】 略称 アドレス* 1 R/W 初期値 KBCRH0 R/(W)* 2 H'70 H'FED8 キーボードコントロールレジスタ L KBCRL0 R/W H'70 H'FED9 キーボードデータバッファレジスタ KBBR0 R H'00 H'FEDA キーボードコントロールレジスタ H KBCRH1 R/(W)* 2 H'70 H'FEDC キーボードコントロールレジスタ L KBCRL1 R/W H'70 H'FEDD キーボードデータバッファレジスタ KBBR1 R H'00 H'FEDE キーボードコントロールレジスタ H KBCRH2 R/(W)* 2 H'70 H'FEE0 キーボードコントロールレジスタ L KBCRL2 R/W H'70 H'FEE1 キーボードデータバッファレジスタ KBBR2 R H'00 H'FEE2 モジュールストップコントロール MSTPCRH R/W H'3F H'FF86 レジスタ MSTPCRL R/W H'FF H'FF87 *1 アドレスの下位 16 ビットを示しています。 *2 ビット 2、ビット 1 は、フラグをクリアするための 0 ライトのみ可能です。 571 17. キーボードバッファコントローラ 17.2 各レジスタの説明 17.2.1 キーボードコントロールレジスタ H(KBCRH) ビット: 初期値: R/W: 7 6 5 4 3 2 1 0 KBIOE KCLKI KDI KBFSEL KBIE KBF PER KBS 0 1 1 1 0 0 0 0 R/W R R R/W R/W R/(W)* R/(W)* R 【注】 * フラグをクリアするための0ライトのみ可能です。 KB C RH は、リード/ライト可能な 8 ビットのレジスタで、キーボードバッファコント ローラの動作状態を示します。 KB C RH は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、 サブスリープモードまたはモジュールストップモード時に、H'70 に初期化されます。また、 ビット 6、5、2〜0 は、KBIOE を 0 にクリアしたときに、初期化されます。 ビット 7:キーボードインアウトイネーブル(KBIOE) KB IOE ビットは、キーボ ードバッファコントローラを使用する/ 使用しないを選択し ます。KBIOE ビットを 1 にセットすると、本モジュールは送受信動作可能状態となり、ポ ートは KCLK、KD の入出力端子となります。KBIOE ビットを 0 にクリアすると、本モジ ュールは機能を停止し、ポートはハイインピーダンス状態になります。 ビット 7 説 明 KBIOE 0 本モジュールは非動作(KCLK、KD 信号端子はポート機能)状態 (初期値) 1 本モジュールは送受信可能状態(KCLK、KD 信号端子はバス駆動状態) ビット 6:キーボードクロックイン(KCLKI) KCLK 入出力端子をモニタするビットです。ライトは無効です。 ビット 6 説 明 KCLKI 572 0 KCLK 入出力端子は Low レベル 1 KCLK 入出力端子は High レベル (初期値) 17. キーボードバッファコントローラ ビット 5:キーボードデータイン(KDI) KDI 入出力端子をモニタするビットです。ライトは無効です。 ビット 5 説 明 KDI 0 KD 入出力端子は Low レベル 1 KD 入出力端子は High レベル (初期値) ビット 4:キーボードバッファレジスタフルセレクト(KBFSEL) KBFSEL ビットは、KBF ビットをキーボードバッファレジスタフルフラグとして使用す るか、KCLK の立ち下がりによる割込みフラグとして使用するかを選択します。KBFSEL=0 として使用する場合には、KBCRL レジスタの KBE ビットを 0 に設定して受信禁止状態に してください。 ビット 4 説明 KBFSEL 0 KBF ビットを KCLK の立ち下がりによる割込みフラグとして使用する 1 KBF ビットをキーボードバッファフルフラグとして使用する (初期値) ビット 3:キーボードインタラプトイネーブル(KBIE) KBIE ビットは、キーボードバッファコントローラから CPU に対する、割込みを許可ま たは禁止を選択します。 ビット 3 説 明 KBIE 0 割込み要求を禁止 1 割込み要求を許可 (初期値) 573 17. キーボードバッファコントローラ ビット 2:キーボードバッファレジスタフル(KBF) データの受信が完了し、受信したデータが KBBR に入っていることを示すビットです。 ビット 2 説 明 KBF 0 〔クリア条件〕 (初期値) KBF=1 の状態をリードした後、0 をライトしたとき 1 〔セット条件〕 ・KBFSEL=1 の状態でデータが正常に受信され、KBBR へデータが転送された とき(キーボードバッファレジスタフルフラグ) ・KBFSEL=0 の状態で KCLK の立ち下がりエッジを検出したとき(KCLK 割込 みフラグ) ビット 1:パリティエラー(PER) 奇数パリティのエラーが発生したことを示すビットです。 ビット 1 説 明 PER 0 〔クリア条件〕 (初期値) PER=1 の状態でリードした後、0 をライトしたとき 1 〔セット条件〕 奇数パリティのエラーが発生したとき ビット 0:キーボードストップ(KBS) 受信データのストップビットを示すビットです。KBF=1 のときのみ有効です。 ビット 0 説 明 KBS 574 0 ストップビット 0 を受信 1 ストップビット 1 を受信 (初期値) 17. 17.2.2 キーボードバッファコントローラ キーボードコントロールレジスタ L(KBCRL) ビット: 初期値: R/W: 7 6 5 4 3 2 1 0 KBE KCLKO KDO ― RXCR3 RXCR2 RXCR1 RXCR0 0 1 1 1 0 0 0 0 R/W R/W R/W ― R R R R KB C RL は、リード/ライト可能な 8 ビットのレジスタで、受信カウンタのカウント許 可、キーボードバッファコントローラ端子出力の制御を行います。 KB C RL は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、 サブスリープモードまたはモジュールストップモード時に、H'70 に初期化されます。 ビット 7:キーボードイネーブル(KBE) キーボードデータバッファレジスタ(KBBR)への受信データのロードの許可、または 禁止を選択します。 ビット 7 説 明 KBE 0 KBBR への受信データのロードを禁止 1 KBBR への受信データのロードを許可 (初期値) ビット 6:キーボードクロックアウト(KCLKO) KBC クロック入出力端子の出力を制御するビットです。 ビット 6 説 明 KCLKO 0 キーボードバッファコントローラクロック入出力端子は Low レベル 1 キーボードバッファコントローラクロック入出力端子は High レベル(初期値) ビット 5:キーボードデータアウト(KDO) KBC データ入出力端子の出力を制御するビットです。 ビット 5 説 明 KDO 0 キーボードバッファコントローラデータ入出力端子は Low レベル 1 キーボードバッファコントローラデータ入出力端子は High レベル (初期値) 575 17. キーボードバッファコントローラ ビット 4:リザーブビット リザーブビットです。リードすると常に 1 が読み出されます。ライトは無効です。 ビット 3〜0:レシーブカウンタ(RXCR3〜RXCR0) 受信したデータのビットを示します。KCLK の立ち下がりでカウントアップします。ラ イトは無効です。 レシーブカウンタはリセット時および KB E の 0 ライト時に、0000 に初期化されます。 また、ストップビット受信後、0000 に戻ります。 ビット 3 ビット 2 ビット 1 ビット 0 RXCR3 RXCR2 RXCR1 RXCR0 0 0 0 0 ― 1 スタートビット 0 KB0 1 KB1 0 KB2 1 KB3 0 KB4 1 KB5 0 KB6 1 KB7 0 パリティビット 1 ― ― ― 1 1 0 1 1 0 0 1 1 17.2.3 ― 受信データの内容 (初期値) キーボードデータバッファレジスタ(KBBR) ビット: 7 6 5 4 3 2 1 0 KB7 KB6 KB5 KB4 KB3 KB2 KB1 KB0 初期値: 0 0 0 0 0 0 0 0 R/W: R R R R R R R R KBBR は、8 ビットのリード専用レジスタで、受信データを格納します。 KBBR の値は、KBF=1 のときのみ有効です。 KBBR は、リセットまたはスタンバイモード、ウォッチモード、サブアクティブモード、 サブスリープモード、モジュールストップモード時または KB IOE ビットが 0 にクリアさ れたときに、H'00 に初期化されます。 576 17. 17.2.4 キーボードバッファコントローラ モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH ビット : 7 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : R/W 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MST P2 ビットを 1 にセットすると、バスサイクルの終了時点でキーボードバッファコ ントローラは動作を停止してモジュールストップモードへ遷移します。詳細は、 「24.5 モ ジュールストップモード」を参照してください。 MSTPCR は、リセットまたはハードウェアスタンバイモード時に H’3FFF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRL ビット 2:モジュールストップ(MSTP2) キーボードバッファコントローラのモジュールストップモードを指定します。 MSTPCRL 説 明 ビット 2 MSTP2 0 キーボードバッファコントローラのモジュールストップモード解除 1 キーボードバッファコントローラのモジュールストップモード設定 (初期値) 577 17. キーボードバッファコントローラ 17.3 動作説明 17.3.1 受信動作 受信動作では、KCLK(クロック)、KD(データ)とも、キーボード側が出力し、本デ バイス(システム側)は、入力となります。KD は、スタートビット、データ 8 ビット(LSB から)、奇数パリティ、ストップビットの順で受信します。KD の値は、KCLK が Low レ ベルのとき有効です。受信処理フローチ ャートの例を図 1 7.3、受信タイミングを図 1 7.4 に示します。 開始 KBIOEビットをセット [2] KBCRHリード KCLKI、KDI ビットはともに 1? Yes [1] KBCRHのKBIOEビットを1にセットし ます。 [1] [2] KBCRHをリードし、KCLKI、KDIビット ともに1である場合、KBEビットをセッ トします(受信可能状態)。 No キーボード側はデータ KBEビットをセット を送信状態。 受信中断処理を実行。 [3] 受信可能状態 KBF=1? No [4] Yes PER=0? No Yes [3] キーボード側の出力したスタートビッ トを検出し、KCLKの立ち下がりエッジ に同期して、データを受信します。 [4] ストップビットまで受信すると、本モ ジュールは、キーボード側の送信を禁止 するためにKCLKをLowレベルにします (自動I/Oインヒビット)。 同時に、KBCRHのKBIEビットが1にセッ トされていると、CPUに対し割込み要求 を発生します。 [5] 受信データの処理を行います。 KBS=1? No [6] KBCRLのKBFフラグを0にクリアしま す。同時に、システムが自動でKCLKを Highレベルにして、受信可能状態とし Yes KBBRリード 受信データの処理 KBFフラグクリア (受信可能状態) エラー処理 [6] 図 17.3 受信処理フローチャートの例 578 [5] [3]〜[6]を繰り返し行うことによ り、受信動作を継続できます。 17. キーボードバッファコントローラ 受信処理/エラー フラグのクリア KCLK (端子状態) KD (端子状態) 1 2 スタート ビット 0 3 9 1 7 10 11 パリティ ストップビット KCLK(入力) 自動I/Oインヒビット KCLK(出力) KB7〜KB0 前回のデータ KB0 KB1 受信データ PER KBS KBF [1] [2] [3] [4] [5] [6] 図 17.4 受信タイミング 17.3.2 送信動作 送信動作では、KCLK(クロック)は、キーボード側が出力し、KD(データ)は、本デ バイス(システム側)が出力します。KD は、スタートビット、データ 8 ビット(LS B か ら)、奇数パリティ、ストップビットの順で、出力します。KD の値は、KCLK が High レ ベルのとき、有効です。送信処理フローチャートの例を図 17.5、送信タイミングを図 17.6 に示します。 579 17. キーボードバッファコントローラ 開始 KBIOEビットをセット [1] KBCRHリード [2] KCLKI、KDI ビットはともに 1? Yes [1] KBCRHのKBIOEビットを1にセットし ます。 [2] KBCRHをリードし、KCLKI、KDIビット ともに1の場合、KCLKOビットを0ライ トします(I/Oインヒビットセット)。 No 2 I/Oインヒビットセット (KCLKO=0) KDOは1保持 [3] KBEビットを0ライトします(KBBRへ の受信動作を禁止)。 KBE=0 (KBBR受信禁止) [3] [4] KDOビットを0ライトします(スタート ビットセット)。 待ち スタートビットセット (KDO=0) I/Oインヒビットセット (KCLKO=1) [4] KCLKOは0保持 [5] KDOは0保持 [5] KCLKOビットを1ライトします(I/Oイ ンヒビットクリア)。 [6] KBCRHをリードし、KCLKI=0のとき に送信データをKDOビットにセット(LSB から)します。続いて、パリティ、ストッ プビットをKDOビットにセットします。 i=0 [6] KBCRHリード KCLKI=0? No [7] ストップビット送信後、KBCRLをリー ドKDI=0であることを確認します(キー ボード側からの受信完了通知)。 [8] KBCRHをリードします。KCLKI、KDIビッ トともに1であることを確認します。 Yes 送信データセット (KDO=D(i)) [2]〜[8]を繰り返し行うことによ り、送信動作を継続できます。 KBCRHリード KCLKI=1? No Yes i=i+1 i>9? No Yes KBCRHリード KCLKI=1? No Yes 1 図 17.5(1) 580 送信処理フローチャートの例 i=0〜7 :送信データ :パリティビット i=8 :ストップビット i=9 キーボードバッファコントローラ 17. 1 KBCRHリード KCLKI=0? 2 No Yes [7] KDI=0? * No キーボード側はデータ 送信状態。 受信中断処理を実行。 Yes [8] KBCRHリード 異常時の処理 KCLK=1? No Yes 送信終了状態 (KCLK=High、KD=High) 受信動作または送信動作へ 【注】 * 図 17.5(2) 送信動作後に、受信動作に移行する場合は、KCLKIがLowレベルの期間に、KBE=1(KBBR 受信許可)としてください。 送信処理フローチャートの例 KCLK (端子状態) 1 KD (端子状態) KCLK (出力) KD (出力) 2 8 9 10 11 スタート ビット 0 1 7 パリティ ストップ ビット スタート ビット 0 1 7 パリティ ストップ ビット I/Oインヒビット KCLK (入力) KD (入力) [1][2] [3] [4] [5] 受信完 [6] [7] [8] 図 17.6 送信タイミング 581 17. キーボードバッファコントローラ 17.3.3 受信中断動作 本デバイス(システム側)は、プロトコル異常発生時などに、本デバイスに接続されて いるデバイス(キーボード側)からの送信を強制的に中断させることができます。この場 合、システムはクロックを Low レベルに保持 します。受信動作中は、キーボード側も同 期用のクロックを出力していますが、キーボードからの出力クロックが High レベルのタ イミングで、クロックを監視しています。 このタイミングでクロックが Low レベルの場 合、キーボードはシステムからの中断要求であると判断し、キーボード側からのデータ送 信を中断します。このように、システムが 一定期間クロックを Low レベルに保持するこ とによって、受信動作を中断させることができます。受信中断処理フローチャートの例を 図 17.7、受信中断タイミングを図 17.8 に示します。 開始 [1] KBCRLをリードし、KBF=1である場 合は、処理1を行います。 受信状態 KBCRLリード [2] KBCRHをリードしてRXCR3〜0ビット がB'1001より小さい場合は、KCLKO= 0をライトして受信を中断します。 RXCR3〜RXCR0ビットがB'1001以上の 場合は、ストップビット受信完了まで 待ち、受信データの処理を行ってから 次の動作へ移行してください。 [1] KBF=0 No Yes KBCRHリード RXCR3〜0 ≧B'1001 Yes 受信中断要求禁止 処理1 [3] RXCR3〜RXCR0ビットがB'1001以上 の場合は、パリティビットを受信して いる状態です。PS2インタフェースで はパリティビット受信後の受信中断要 求は禁止されています。ストップビッ ト受信完了まで待ち、受信データ処理 およびKBFフラグのクリア後、次の動 作へ移行してください。 No [2] [3] KCLKO=0 (受信中断要求) 再送コマンド送信 (データ) No Yes KBE=0 (KBBR受信禁止および 受信カウンタクリア) KBE=0 (KBBR受信禁止および 受信カウンタクリア) スタートビットセット (KDO=0) KBE=1 (KB動作許可) I/Oインヒビットクリア (KCLKO=1) I/Oインヒビットクリア (KCLKO=1) データ送信 送信動作へ 図 17.7(1)受信中断処理フローチャートの例 582 受信動作へ 17. キーボードバッファコントローラ 処理1 [1] 受信動作は、正常に終了 [1] システム側では、KCLK端子をLowレベ ルにして、I/Oインヒビット状態にして います。 受信データ処理 KBFフラグクリア (KCLK=H) 送受信可能状態です。送信デ ータがある場合はデータを送 信します。 図 17.7(2)受信中断処理フローチャートの例 キーボード側は、受信(キーボードから 見れば送信)動作中クロックを監視して おり、この間に受信動作を中断 受信 KCLK (端子状態) 送信動 受信中断要 スタートビット KD (端子状態) KCLK (入力) KCLK (出力) KD (入力) KD (出力) 図 17.8 受信中断および送信開始(送/受信切り替え)タイミング 583 17. キーボードバッファコントローラ 17.3.4 KCLKI、KDI リードタイミング KCLKI、KDI リードタイミングを図 17.9 に示します。 T1 T2 φ* 内部リード 信号 KCLK、KD 端子状態 KCLKI、KDI レジスタ 内部データバス (リードデータ) 【注】 * ここに示すφは、動作モードがアクティブで中速モードのとき、1/Nに分周されたクロックです。 図 17.9 KCLKI、KDI のリードタイミング 17.3.5 KCLKO、KDO ライトタイミング KCLKO、KDO ライトタイミングと KCLK、KD 端子状態を図 17.10 に示します。 T1 T2 φ* 内部ライト 信号 KCLKO、KDO レジスタ KCLK、KD 端子状態 【注】 * ここに示すφは、動作モードがアクティブで中速モードのとき、1/Nに分周されたクロックです。 図 17.10 KCLKO、KDO のライトタイミング 584 17. 17.3.6 キーボードバッファコントローラ KBF セットタイミングと KCLK 制御 KBF セットタイミングと KCLK 端子状態を図 17.11 に示します。 φ* KCLK (端子 ) 11番目の立ち 内部KCLK 立ち下がり エッジ信号 RXCR3〜 RXCR0 H'010 H'000 KBF KCLK (出力) 自動I/Oインヒビット 【注】 * ここに示すφは、動作モードがアクティブで中速モードのとき、1/Nに分周された クロックです。 図 17.11 KBF セットと KCLK 自動 I/O インヒビット生成のタイミング 585 17. キーボードバッファコントローラ 17.3.7 受信タイミング 受信タイミングを図 17.12 に示します。 φ* KCLK (端子) KD (端子) 内部KCLK (KCLKI) 立ち下が りエッジ 信号 RXCR3〜 RXCR0 N N+1 N+2 内部KD (KDI) KBBR7〜 KBBR0 【注】 * ここに示すφは、動作モードがアクティブで中速モードのとき、1/Nに分周されたクロックです。 図 17.12 受信カウンタと KBBR へのデータロードのタイミング 586 17. 17.3.8 キーボードバッファコントローラ KCLK 立ち下がり割込みの動作 本デバイスは KB C RH の KB FS EL ビットを 0 にクリアすることにより、KB C RL の KB F ビットを KCLK 入力の立ち下がりによる割込みフラグとして使用できます。 図 17.13 に設定方法、および動作例を示します。 開始 KBIOEをセット KBE=0 (KBBR受信禁止) KBFSEL=0 KBIE=1 (KCLKの立ち下がり エッジで割込み許可) KCLK (端子状態) KBFビット KCLK端子 立ち下がり検出 No Yes KBF=1(割込み発生) 割込み発生 ソフトウェアで クリア 割込み発生 割込み処理 KBFクリア 【注】 KBFセットのタイミングは、図17.11 KBFセットとKCLK自動I/Oインヒビット生成のタイミン グと同一です。また、KBFビットをKCLK入力の立ち下がりによる割込みフラグとして使用し た場合は、自動I/Oインヒビットの機能は動作しません。 図 17.13 KCLK 入力の立ち下がりによる割込み動作例 587 17. キーボードバッファコントローラ 17.3.9 使用上の注意 KBIOE が 0 の時、内部 KCLK、内部 KD は 1 に固定されています。 したがって、KB IOE ビットを 1 にセットする時に、KC LK 端子が Low の場合、エッジ 検出回路が動作し、KCLK 立ち下がりエッジを検出します。 このとき、KBFSEL ビットが 0、KBE ビットが 0 の場合、KBF ビットがセットされます。 図 17.14 に KBIOE セットと KCLK 立ち下がりエッジ検出のタイミングを示します。 T1 T2 φ KCLK (端子) 内部KCLK (KCLKI) KBIOE 立ち下がり エッジ信号 KBFSEL KBE KBF 図 17.14 KBIOE セットと KCLK 立ち下がりエッジ検出のタイミング 588 18. ホストインタフェース H8S/2148 シリーズ、H8S/2147N に内蔵しています。 H8S/2144 シリーズには内蔵していません。 第 18 章 18.1 18.2 18.3 18.4 18.5 目次 概要 ....................................................................................................................................... 591 18.1.1 特長 ...................................................................................................... 591 18.1.2 ブロック図 ............................................................................................ 592 18.1.3 端子構成................................................................................................ 593 18.1.4 レジスタ構成 ......................................................................................... 594 各レジスタの説明 ................................................................................................................... 595 18.2.1 システムコントロールレジスタ(SYSCR) ............................................. 595 18.2.2 システムコントロールレジスタ 2(SYSCR2) ......................................... 596 18.2.3 ホストインタフェースコントロールレジスタ(HICR)............................ 598 18.2.4 入力データレジスタ(IDR)................................................................... 599 18.2.5 出力データレジスタ 1(ODR) ............................................................... 599 18.2.6 ステータスレジスタ(STR) .................................................................. 600 18.2.7 モジュールストップコントロールレジスタ(MSTPCR) .......................... 602 動作説明................................................................................................................................. 603 18.3.1 ホストインタフェースの起動.................................................................. 603 18.3.2 コントロール状態 .................................................................................. 605 18.3.3 GATE 18.3.4 ホストインタフェース端子シャットダウン機能 ....................................... 608 A20 ........................................................................................... 606 割込み要因 ............................................................................................................................. 610 18.4.1 IBF1、IBF2、IBF3、IBF4 ....................................................................... 610 18.4.2 HIRQ11、HIRQ1、HIRQ12、HIRQ3、HIRQ4............................................ 610 使用上の注意 .......................................................................................................................... 612 18. 590 ホストインタフェース 18. ホストインタフェース 18.1 概要 本 LSI は、パーソナルコンピュータの内部バスとして広く用いられている ISA バスに接 続可能なホストインタフェース(HIF :Host InterFace)を内蔵しています。 HIF は、本 LS I の内部 C P U とホストとの 4 チャネルのパラレルインタフェース機能で す。 HIF は、S YS C R 2 の HI12E ビットが 1 にセットされたときのみ使用できます。このと きのモードをスレーブモードと呼びます。スレーブモードは、本 LS I をスレーブとして ホストとのマスタスレーブ通信システム用に設計されています。 18.1.1 特長 HIF の特長を以下に示します。 HIF は 8 バイトのデータレジスタ、4 バイトのステータスレジスタ、および 2 バイトの コントロールレジスタと高速 GATE A20 ロジックとホスト割込み要求回路から構成され ています。ホストからの 7 つのコントロール信号(C S 1、C S 2 または EC S 2、C S 3、C S 4、 HA0、IOR 、IOW)、ホストへの 6 つの出力信号(GA20、HIR Q1、HIR Q11 、HIR Q12 、 HIR Q3、HIR Q4)、およびコマンド/データ入出力バスとしての8ビットデータバス (HDB 7〜HDB 0)を介してホストとの通信を行います。C S 1、C S 2(EC S 2)、C S 3 と C S 4 信号は 4 つのインタフェースチャネルのうち 1 つを選択する信号です。 591 18. ホストインタフェース 18.1.2 ブロック図 HIF のブロック図を図 18.1 に示します。 内部割込み信号 IBF4 IBF3 IBF2 IBF1 HDB7〜HDB0 IDR1 CS1 CS2/ECS2 CS3 CS4 IOR IOW HA0 ODR1 コントロール ロジック STR1 IDR2 ODR2 高速 GATE A20 コントロール HICR IDR3 ODR3 STR3 HIRQ1 HIRQ11 HIRQ12 HIRQ3 HIRQ4 GA20 IDR4 ポート4、ポート8、 ポートB HIFSD 【記号説明】 IDR1 :入力データレジスタ 1 IDR2 :入力データレジスタ 2 ODR1:出力データレジスタ 1 ODR2:出力データレジスタ 2 STR1 :ステータスレジスタ 1 STR2 :ステータスレジスタ 2 HICR :ホストインタフェース コントロールレジスタ 1 592 STR4 HICR2 内部データバス 図 18.1 HIF のブロック図 ODR4 バス インタフェース IDR3 :入力データレジスタ 3 IDR4 :入力データレジスタ 4 ODR3:出力データレジスタ 3 ODR4:出力データレジスタ 4 STR3 :ステータスレジスタ 3 STR4 :ステータスレジスタ 4 HICR2:ホストインタフェース コントロールレジスタ 2 モジュールデータバス ホスト 割込み 要求 ホストデータバス STR2 18. 18.1.3 ホストインタフェース 端子構成 HIF の入出力端子を表 18.1 に示します。 表 18.1 端子構成 名称 略称 ポート 入出力 機能 I/O リード IOR P93 入力 ホストインタフェースリード信号 I/O ライト IOW P94 入力 ホストインタフェースライト信号 チップセレクト 1 CS1 P95 入力 IDR1、ODR1、STR1 に対するホストイン タフェースチップセレクト信号 チップセレクト 2* CS2 ECS2 チップセレクト 3 CS3 P81 入力 タフェースチップセレクト信号 P90 PB2 IDR2、ODR2、STR2 に対するホストイン 入力 IDR3、ODR3、STR3 に対するホストイン タフェースチップセレクト信号 チップセレクト 4 CS4 PB3 入力 IDR4、ODR4、STR4 に対するホストイン タフェースチップセレクト信号 コマンド/データ HA0 P80 入力 ホストインタフェースアドレス選択信号 ホストリード時は、ステータスレジスタ (STR1〜STR4)かデータレジスタ(ODR1 〜ODR4)かを選択します。ホストライト 時は、データレジスタ(IDR1〜IDR3、 IDTR4)へのライトがコマンドライトかデ ータライトかを表わします。 データバス HDB7〜 P37〜P30 入出力 ホストインタフェースデータバス HDB0 ホスト割込み 11 HIRQ11 P43 出力 ホスト割込み要求出力 11 をホストへ出力 ホスト割込み 1 HIRQ1 P44 出力 ホスト割込み要求出力 1 をホストへ出力 ホスト割込み 12 HIRQ12 P45 出力 ホスト割込み要求出力 12 をホストへ出力 ホスト割込み 3 HIRQ3 PB0 出力 ホスト割込み要求出力 3 をホストへ出力 ホスト割込み 4 HIRQ4 PB1 出力 ホスト割込み要求出力 4 をホストへ出力 GATE A 20 GA20 P81 出力 GATE A20 コントロール信号出力 P82 入力 ホストインタフェースのシャットダウン制 HIF シャットダウ HIFSD ン 【注】 御信号 * ST CR の CS 2E ビットと HI CR の FGA 20E ビットの設定により、CS 2 または EC S2 を 選択することができます。HIF のチャネル 2 および CS2 端子は、CS2E=1 のときに使用 可能です。CS2E=1 のとき、FGA20E=0 で CS2 が有効になり、FGA20E=1 で ECS2 が 有効になります。本文中では CS2 と略称します。 593 18. ホストインタフェース 18.1.4 レジスタ構成 HIF のレジスタ構成を表 18.2 に示します。HIF のレジスタのうち HICR、IDR1、IDR2、 ODR1、ODR2、STR1、STR2 の各レジスタは、SYSCR の HIE ビットが 1 の場合にのみア クセス可能です。 表 18.2 レジスタ構成 名称 略称 初期値 R/W アドレス* スレーブ ホスト システムコントロール SYSCR R/W* SYSCR2 1 4 マスタアドレス* スレーブ 3 CS1 CS2 CS3 CS4 HA0 − H'09 H'FFC4 − − − − − R/W − H'00 H'FF83 − − − − − HICR R/W − H'F8 H'FFF0 − − − − − HICR2 R/W − H'F8 H'FE80 − − − − − W − H'FFF4 0 1 1 1 0/1 * R − H'FFF5 0 1 1 1 0 R H'00 H'FFF6 0 1 1 1 1 W − H'FFFC 1 0 1 1 0/1 * R − H'FFFD 1 0 1 1 0 R H'00 H'FFFE 1 0 1 1 1 W − H'FE84 1 1 0 1 0/1 * R − H'FE85 1 1 0 1 0 R H'00 H'FE86 1 1 0 1 1 W − H'FE8C 1 1 1 0 0/1 * R − H'FE8D 1 1 1 0 0 R H'00 H'FE8E 1 1 1 0 1 レジスタ システムコントロール レジスタ 2 ホストインタフェース コントロールレジスタ 1 ホストインタフェース コントロールレジスタ 2 入力データレジスタ 1 IDR1 R 出力データレジスタ 1 ODR1 R/W ステータスレジスタ 1 STR1 R/(W) * 入力データレジスタ 2 IDR2 R 出力データレジスタ 2 ODR2 R/W ステータスレジスタ 2 STR2 R/(W) * 入力データレジスタ 3 IDR3 R 出力データレジスタ 3 ODR3 R/W ステータスレジスタ 3 STR3 R/(W) * 入力データレジスタ 4 IDR4 R 出力データレジスタ 4 ODR4 R/W R/(W) * 2 2 2 2 ステータスレジスタ 4 STR4 モジュールストップ MSTPCRH R/W − H'3F H'FF86 − − − − − コントロールレジスタ MSTPCRL R/W − H'FF H'FF87 − − − − − 【注】 *1 ビット 5、3 はリード専用です。 *2 ユーザ定義ビット(ビット 7〜4、2)は、スレーブからリード/ライト可能です。 * 3 スレーブからアクセスするときのアドレスです。アドレスの下位 16 ビットを示してい ます。 *4 マスタからアクセスするときの端子入力です。 *5 HA0 入力は、コマンドライトとデータライトの識別に用いられます。 594 5 5 5 5 18. ホストインタフェース 18.2 各レジスタの説明 18.2.1 システムコントロールレジスタ(SYSCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CS2E IOSE INTM1 INTM0 XRST NMIEG HIE RAME 0 0 0 0 1 0 0 1 R/W R/W R R/W R R/W R/W R/W SYSCR は、8 ビットのリード/ライト可能なレジスタで、本 LSI の動作を制御します。 HIF のレジスタのうち、HICR、IDR1、ODR1、STR1、IDR2、ODR2、STR2 は、HIE ビ ットが 1 のときだけアクセス可能です。HICR2、IDR3、ODR3、STR3、IDR4、ODR4、STR4 は、HIE ビットによらずアクセス可能です。ホストインタフェースの CS2、ECS2 端子は SYSCR の CS2E ビットと HICR の FGA20E ビットによって制御されます。SYSCR のその 他のビットについての詳細は「3.2.2 システムコントロールレジスタ(SYSCR)」 「5.2.1 システムコントロールレジスタ(SYSCR)」を参照してください。 SYSCR は、リセット、ハードウェアスタンバイモード時に H'09 に初期化されます。 ビット 7:CS2 イネーブルビット(CS2E) HICR の FGA20E ビットとともに、スレーブモード時に CS2 機能をはたす端子を選択し ます。 SYSCR HICR ビット 7 ビット 0 CS2E FGA20E 0 0 説 明 CS2 端子機能停止(CS2 は内部的に High レベル固定) (初期値) 1 1 0 P81/ CS2 端子に CS2 端子機能を選択 1 P90/ ECS2 端子に CS2 端子機能を選択 ビット 1:ホストインタフェースイネーブルビット(HIE) ホストインタフェースレジスタの CPU アクセスを許可または禁止します。許可時には 本 LSI は、ホストインタフェースのレジスタ(HICR、IDR1、ODR1、STR1、IDR2、ODR2、 STR2)がアクセス可能になります。 595 18. ホストインタフェース ビット 1 説 明 HIE 0 HIF レジスタ(HICR、IDR1、ODR1、STR1、IDR2、ODR2、STR2)の CPU ア クセスを禁止 1 (初期値) HIF レジスタ(HICR、IDR1、ODR1、STR1、IDR2、ODR2、STR2)の CPU ア クセスを許可 18.2.2 システムコントロールレジスタ 2(SYSCR2) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 KWUL1 KWUL0 P6PUE ― SDE CS4E CS3E HI12E 0 0 0 0 0 0 0 0 R/W R/W R/W ― R/W R/W R/W R/W SYSCR2 は、8 ビットのリード/ライト可能なレジスタで、本 LSI の動作を制御します。 ホストインタフェース機能は、SYSCR2 の HI12E ビットによって許可または禁止されま す。また、CS3E ビットおよび CS4E ビットによって使用できるチャネル数を 4 チャネルま で拡張することができます。 SYSCR2 は、リセット、ハードウェアスタンバイモード時に H'00 に初期化されます。 ビット 7、6:キーウェイクアップレベル 1、0(KWUL1、KWUL0) ポート 6 の入力レベルをソフトウェアにより設定、切り替えできます。詳細は「第 8 章 I/O ポート」を参照してください。 ビット 5:ポート 6 入力プルアップ MOS エクストラ(P6PUE) KMPCR の設定により接続される、ポート 6 プルアップ MOS の電流仕様を制御、選択し ます。詳細は「第 8 章 I/O ポート」を参照してください。 ビット 4:リザーブビット リザーブビットです。1 をライトしないでください。 ビット 3:シャットダウンイネーブル(SDE) ホストインタフェース端子のシャットダウン機能を許可または禁止します。許可時は HIFSD 端子の状態により、ホストインタフェース端子機能を停止させ出力をハイインピー ダンスにすることができます。 596 18. ビット 3 説 ホストインタフェース 明 SDE 0 ホストインタフェース端子のシャットダウン機能を禁止 1 ホストインタフェース端子のシャットダウン機能を許可 (初期値) ビット 2:CS4 イネーブル(CS4E) スレーブモードでホストインタフェースチャネル 4 の機能を許可または禁止します。許 可時はチャネル 4 の端子がイネーブルとなり、スレーブとホスト間のデータ転送処理を行 うことができます。 ビット 2 説 明 CS4E 0 ホストインタフェースチャネル 4 の機能を禁止 1 ホストインタフェースチャネル 4 の機能を許可 (初期値) ビット 1:CS3 イネーブル(CS3E) スレーブモードでホストインタフェースチャネル 3 の機能を許可または禁止します。許 可時はチャネル 3 の端子がイネーブルとなり、スレーブとホスト間のデータ転送処理を行 うことができます。 ビット 1 説 明 CS3E 0 ホストインタフェースチャネル 3 の機能を禁止 1 ホストインタフェースチャネル 3 の機能を許可 (初期値) ビット 0:ホストインタフェースイネーブルビット(HI12E) シングルチップモードでホストインタフェース機能を許可または禁止します。許可時は スレーブモードとなり、スレーブとホスト間のデータ転送処理を行います。 ビット 0 説 明 HI12E 0 ホストインタフェースの機能を禁止 1 ホストインタフェースの機能を許可 (初期値) 597 18. ホストインタフェース 18.2.3 ホストインタフェースコントロールレジスタ(HICR) ■HICR ビット : 7 6 5 4 3 2 1 0 ― ― ― ― ― IBFIE2 IBFIE1 FGA20E 初期値 : 1 1 1 1 1 0 0 0 スレーブR/W : ― ― ― ― ― R/W R/W R/W ホストR/W ― ― ― ― ― ― ― ― ■HICR2 ビット : 7 6 5 4 3 2 1 0 ― ― ― ― ― IBFIE4 IBFIE3 ― 初期値 : 1 1 1 1 1 0 0 0 スレーブR/W : ― ― ― ― ― R/W R/W ― ホストR/W ― ― ― ― ― ― ― ― HICR は、8 ビットのリード/ライト可能なレジスタで、ホストインタフェースチャネル 1、2 の割込みと高速 GATE A20 機能を制御します。または HICR2 は、8 ビットのリード /ライト可能なレジスタで、ホストインタフェースチャネル 3、4 の割込みを制御します。 HICR および HICR2 は、リセット、またはハードウェアスタンバイモード時に H'F8 に初 期化されます。 ビット 7〜3:リザーブビット リザーブビットです。リードすると常に 1 が読み出されます。ライトは無効です。 HICR のビット 2、1:入力データレジスタフル割込みイネーブル 2、1(IBFIE2、IBFIE1) HICR2 のビット 2、1:入力データレジスタフル割込みイネーブル 4、3(IBFIE4、IBFIE3) 内部 CPU に対して IBF1、IBF2、IBF3、IBF4 割込みを許可または禁止します。 HICR2 HICR2 HICR HICR 説 明 ビット 2 ビット 1 ビット 2 ビット 1 598 IBFIE4 IBFIE3 IBFIE2 IBFIE1 — — — 0 入力データレジスタ(IDR1)受信完了割込み要求を禁止(初期値) — — — 1 入力データレジスタ(IDR1)受信完了割込み要求を許可 — — 0 — 入力データレジスタ(IDR2)受信完了割込み要求を禁止(初期値) — — 1 — 入力データレジスタ(IDR2)受信完了割込み要求を許可 — 0 — — 入力データレジスタ(IDR3)受信完了割込み要求を禁止(初期値) — 1 — — 入力データレジスタ(IDR3)受信完了割込み要求を許可 0 — — — 入力データレジスタ(IDR4)受信完了割込み要求を禁止(初期値) 1 — — — 入力データレジスタ(IDR4)受信完了割込み要求を許可 ホストインタフェース 18. HICR のビット 0:高速 GATE A20 イネーブルビット(FGA20E) 高速 GATE A20 機能を許可または禁止します。高速 GATE A20 が禁止された場合、通常 の GATE A20 は P81 出力をファームウェアで操作することで実現できます。 HICR の 説 明 ビット 0 FGA20E 0 高速 GATE A20 機能を禁止 1 高速 GATE A20 機能を許可 (初期値) HICR2 のビット 0:リザーブビット リザーブビットです。1 にセットしないでください。 18.2.4 入力データレジスタ(IDR) ビット : 7 6 5 4 3 2 1 0 IDR7 IDR6 IDR5 IDR4 IDR3 IDR2 IDR1 IDR0 初期値 : ― ― ― ― ― ― ― ― スレーブR/W : R R R R R R R R ホストR/W W W W W W W W W IDR は、スレーブに対しては 8 ビットのリード専用の、ホストに対しては 8 ビットのラ イト専用のレジスタです。CSn(n=1〜4)が Low レベルの時に、IOW の立ち上がりエッジ で、ホストデータバスの内容が IDRn にライトされます。HA0 の状態は STRn の C/D ビッ トに反映され、コマンドライトとデータライトの識別に用いられます。 IDR は、リセットまたはスタンバイモード時、初期値は不定です。 18.2.5 出力データレジスタ 1(ODR) ビット : 7 6 5 4 3 2 1 0 ODR7 ODR6 ODR5 ODR4 ODR3 ODR2 ODR1 ODR0 ― ― ― ― ― ― ― ― スレーブR/W : R/W R/W R/W R/W R/W R/W R/W R/W ホストR/W R R R R R R R R 初期値 : ODR は、スレーブに対しては 8 ビットのリード/ライト可能な、ホストに対しては 8 ビットのリード専用のレジスタです。HA0 が Low レベル、CSn(n=1〜4)が Low レベル、 IOR が Low レベルの時、ホストデータバスへ ODRn の内容が出力されます。 ODR は、リセットまたはスタンバイモード時、初期値は不定です。 599 18. ホストインタフェース 18.2.6 ステータスレジスタ(STR) ビット : 7 6 5 4 3 2 1 0 DBU DBU DBU DBU C/D DBU IBF OBF 0 0 0 0 0 0 0 0 スレーブR/W : R/W R/W R/W R/W R R/W R R/(W)* ホストR/W R R R R R R R R 初期値 : 【注】 * フラグをクリアするための0ライトのみ可能です。 STRn(n=1〜4)は、8 ビットのレジスタでホストインタフェース処理中の状態を表示し ます。ビット 3、1、0 はホストとスレーブのいずれもリード専用です。 STR は、リセット、またはハードウェアスタンバイモード時に H'00 に初期化されます。 ビット 7〜4、2:ユーザ定義ビット(DBU) ユーザが必要に応じて使用できるビットです。 ビット 3:コマンド/データ(C/D) ホストが IDR に対してライトを行ったときの、HA0 の状態がライトされ、IDR の内容が データかコマンドかを識別します。 ビット 3 説 明 C/D 0 入力データレジスタ(IDR)の内容はデータ (初期値) 1 入力データレジスタ(IDR)の内容はコマンド ビット 1:入力データレジスタフル(IBF) ホストが IDR にライトすると 1 にセットされます。スレーブに対しての内部割込み要因 の 1 つとなります。スレーブが IDR をリードすると IBF ビットは 0 にクリアされます。 なお、高速 GATE A20 を使用しているときは IBF フラグのセット/クリア条件が変わり ます。詳細は表 18.8 高速 GATE A20 出力信号を参照してください。 ビット 1 説 明 IBF 0 [クリア条件] スレーブが IDR をリード 1 [セット条件] ホストが IDR にライト 600 (初期値) 18. ホストインタフェース ビット 0:出力データレジスタフル(OBF) スレーブが ODR へライトすると 1 にセットされます。ホストが ODR をリードすると、 OBF ビットは 0 にクリアされます。 ビット 0 説 明 OBF 0 [クリア条件] (初期値) ホストが ODR をリード、またはスレーブが OBF ビットに 0 ライト 1 [セット条件] スレーブが ODR にライト 表 18.3 に STR のフラグをセット/クリアするタイミングを示します。 表 18.3 STR のフラグのセット/クリアタイミング フラグ セット条件 HA0 が High レベルのときのホストライト HA0 が Low レベルのときのホストライト C/D IBF* (IOW)信号の立ち上がりエッジ (IOW)信号の立ち上がりエッジ IDR へライトするためのホストライト IDR からリードするためのスレーブの内部リ (IOW)信号の立ち上がりエッジ ード(RD)信号の立ち下がりエッジ ODR へライトするためのスレーブの内部 ODR からリードするためのホストリード OBF ライト(WR)信号の立ち下がりエッジ 【注】 クリア条件 * (IOR)信号の立ち上がりエッジ 高速 GAT E A20 を使用しているときは、I BF フラグのセット/クリア条件が変わりま す。詳細は、表 18.8 高速 GATE A20 出力信号を参照してください。 601 18. ホストインタフェース 18.2.7 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH ビット : 7 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MSTP2 ビットを 1 にセットすると、HIF は動作を停止してモジュールストップモードへ 遷移します。詳細は、「25.5 モジュールストップモード」を参照してください。 MSTPCR は、リセットまたはハードウェアスタンバイモード時に H’3FFF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRL ビット 2:モジュールストップ(MSTP2) HIF のモジュールストップモードを指定します。 MSTPCRL 説 明 ビット 2 MSTP2 602 0 HIF のモジュールストップモード解除 1 HIF のモジュールストップモード設定 (初期値) 18. ホストインタフェース 18.3 動作説明 18.3.1 ホストインタフェースの起動 シングルチップモードで SYSCR2 の HI12E ビット(ビット 0)を 1 にセットすることに より HIF(スレーブモード)が起動します。HIF(スレーブモード)を起動することによ り、関連する I/O ポート(データ用ポート 3、コントロール用ポート 8 およびポート 9、ホ スト割込み要求用ポート 4)はすべてホストインタフェース専用となります。さらに CS3E ビットおよび CS4E ビットを 1 にセットすることにより、HIF のチャネル数を 4 チャネル まで拡張することが可能となり、チャネル 3、4 の関連する I/O ポート(コントロールおよ びホスト割込み要求用ポート B の一部)がホストインタフェース専用となります。 表 18.4 に HIF のホストインタフェースチャネルの選択と端子の動作を示します。 603 18. ホストインタフェース 表 18.4 ホストインタフェースチャネルの選択と端子の動作 動 HI12E CS2E CS3E CS4E 作 0 — — — ホストインタフェース機能停止 1 0 0 0 ホストインタフェースチャネル 1 のみ動作 チャネル 2〜4 は動作停止 (CS2 または ECS2、CS3、CS4 入力として動作しない。P43、P81、 P90、PB0〜PB3 各端子機能は入出力ポートとして動作する。) 1 ホストインタフェースチャネル 1、4 の機能が動作 チャネル 2〜3 は動作停止 (CS2 または ECS2、CS3 入力として動作しない。P43、P81、P90、 PB0、PB2 各端子機能は入出力ポートとして動作する。) 1 0 ホストインタフェースチャネル 1、3 の機能が動作 チャネル 2、4 は動作停止 (CS2 または ECS2、CS4 入力として動作しない。P43、P81、P90、 PB1、PB3 各端子機能は入出力ポートとして動作する。) 1 ホストインタフェースチャネル 1、3、4 の機能が動作 チャネル 2 は動作停止 (CS2 または ECS2 入力として動作しない。P43、P81、P90 各端子 機能は入出力ポートとして動作する。) 1 0 0 ホストインタフェースチャネル 1、2 の機能が動作 チャネル 3、4 は動作停止 (CS3、CS4 入力として動作しない。PB0〜PB3 各端子機能は入出力 ポートとして動作する。) 1 ホストインタフェースチャネル 1、2、4 の機能が動作 チャネル 3 は動作停止 (CS3 入力として動作しない。PB0、PB2 各端子機能は入出力ポート として動作する。) 1 0 ホストインタフェースチャネル 1〜3 の機能が動作 チャネル 4 は動作停止 (CS4 入力として動作しない。PB1、PB3 各端子機能は入出力ポート として動作する。) 1 ホストインタフェースチャネル 1〜4 の機能が動作 ホストリード/ライトタイミングについては、「25.3.4 グ」を参照してください。 604 内蔵周辺モジュールタイミン 18. 18.3.2 ホストインタフェース コントロール状態 表 18.5 に HIFのホストからのホストインタフェース操作とスレーブの動作を示します。 表 18.5 ホストからのホストインタフェース操作とスレーブの動作 CSn CSn IOR IOW HA0 動作 以外 1 0 0 0 1 1 0 1 0 設定禁止 1 設定禁止 0 出力データレジスタ n(ODRn)からデータをリード 1 ステータスレジスタ n(STRn)からステータスをリード 0 入力データレジスタ n(IDRn)へデータをライト 1 入力データレジスタ n(IDRn)へコマンドをライト 0 アイドル状態 1 アイドル状態 (n=1〜4) 605 18. ホストインタフェース 18.3.3 GATE A 20 GATE A20 は 8086*系 CPUを使用したパソコンのアドレッシングモードをエミュレート するための機能で、アドレス A20 をマスクすることができます。スレーブモードでは、本 出力は通常 GATE A20 としてファームウェアで制御されますが、HICR(H'FFF0)の FGA20 ビット(ビット 0)を 1 にセットすることによりハードウェアで処理速度を上げた、高速 GATE A20 機能を使用することが可能です。 【注】* 米国インテル社のマイクロプロセッサの名称です。 (1)通常の GATE A20 の動作 H'D1 コマンドとデータの組合せで GATE A20 の出力を制御することができます。スレ ーブがデータを受信するときは、通常は IBF1 割込みによる割込みルーチン使用して IDR1 をリードします。このとき、ファームウェアにより H'D1 コマンドに続くデータのビット 1 の値をコピーして GATE A20 端子に出力します。 (2)高速 GATE A20 の動作 FGA20E ビットを 1 にセットすると、P81/GA20 は高速 GA20 信号の専用端子となります。 P81 を出力端子として割り当てるために P81 の DDR ビットを 1 にセットしてください。 端子は最初に初期値である 1 を出力します。その後ホストはコマンド/データを送ること により本端子の出力を操作することができます。本機能は CS1 によりアクセスされる IDR1 レジスタによってのみ使用できます。この場合、スレーブはホストから入力されて くるコマンドをデコードします。ホストコマンド H'D1 が検出されると、このホストコマ ンドに続くデータのビット 1 が GA20 出力端子から出力されます。本動作は、ファームウ ェアや割込みに依存しないため、通常の割込みを使用した処理よりも高速です。表 18.6 に GA20(P81)のセット/クリアの条件を、図 18.2 に GA20 出力のフローを示します。 また、表 18.7 に GA20 出力信号の値を示します。 表 18.6 GA20(P81)のセット/クリアタイミング 端子名 セット条件 クリア条件 GA20(P81) H'D1 ホストコマンドに続くデータのビッ H'D1 ホストコマンドに続くデータのビッ ト 1 が 1 のとき、ホストライト信号 (IOW)ト 1 が 0 のとき、ホストライト信号 (IOW) の立ち上がりエッジが入力されたとき の立ち上がりエッジが入力されたとき または、HICR の FGA20E ビットを 0 クリ アしたとき 606 18. ホストインタフェース スタート ホストライト No H'D1コマンド受信? Yes 次バイト待ち ホストライト No データバイト? Yes P81/GA20のDRへデータバイトの ビット1をライト 図 18.2 GA20 出力 表 18.7 高速 GATE A20 出力信号 データ/コマンド HA0 内部 CPU GA20 割込みフラグ (P81) 備考 (IBF) 1 D1 コマンド 0 Q ターンオン 0 1 データ* 1 0 1 シーケンス 1 FF コマンド 0 Q(1) 1 D1 コマンド 0 Q ターンオフ 0 0 シーケンス 0 0 データ* 1 FF コマンド 0 Q(0) 1 D1 コマンド 0 Q ターンオン 0 1 データ* 1 0 1 シーケンス FF・D1 コマンド以外 1 Q(1) (短縮形) D1 コマンド 0 Q ターンオフ 0 0 シーケンス FF・D1 コマンド以外 1 Q(0) (短縮形) 1 D1 コマンド 0 Q シーケンス 1 D1 以外のコマンド 1 Q の取消し 1 D1 コマンド 0 Q シーケンス 1 D1 コマンド 0 Q の再トリガ 1 D1 コマンド 0 Q シーケンス 0 任意のデータ 0 1/0 の連続実行 1 D1 コマンド 0 Q(1/0) 1/0 1 0 データ* 0 1/0 【注】 2 2 *1 ビット 1 が 1 の任意のデータ *2 ビット 1 が 0 の任意のデータ 607 18. ホストインタフェース 18.3.4 ホストインタフェース端子シャットダウン機能 HIFSD 端子の状態により、ホストインタフェース出力をハイインピーダンスにすること ができます。SYSCR2 レジスタの SDE ビットを 1 にセットすることにより、スレーブモー ドで HIFSD 端子がイネーブルになります。HIF は HIFSD 端子を常にモニタし、HIFSD 端 子が Low レベルになるとホストインタフェース出力端子(HIRQ1、HIRQ11、HIRQ12、 HIRQ3、HIRQ4、GA20)をハイインピーダンスにします。同時にホストインタフェース 入力端子(CS1、CS2 または ECS2、CS3、CS4、IOW、IOR、HA0)は端子の状態にかか わらずディスエーブル状態(内部で High 入力状態に固定)となり、同様にこれらの端子 の兼用機能(入力部)も内部で信号固定されます。これにより、ホストインタフェース入 出力端子(HDB7〜HDB0)もハイインピーダンス状態になります。 HIFSD 端子が Low の期間中この状態を保持し、HIFSD 端子を High レベルにもどすと、 各端子は通常のホストインタフェース用端子としての動作を復帰します。 表 18.8 にスレーブモード時の HIF 端子シャットダウン範囲を示します。 表 18.8 スレーブモード時の HIF 端子シャットダウン範囲 略称 ポート スレーブモード 入出力 選択条件 時のシャット ダウン範囲 608 IOR P93 ○ 入力 スレーブモード IOW P94 ○ 入力 スレーブモード CS1 P95 ○ 入力 スレーブモード CS2 P81 △ 入力 スレーブモードかつ CS2E=1 かつ FGA20E=0 ECS2 P90 △ 入力 スレーブモードかつ CS2E=1 かつ FGA20E=1 CS3 PB2 △ 入力 スレーブモードかつ CS3E=1 CS4 PB3 △ 入力 スレーブモードかつ CS4E=1 HA0 P80 ○ 入力 スレーブモード HDB7〜 P37〜 ○ 入出力 スレーブモード HDB0 P30 HIRQ11 P43 △ 出力 スレーブモードかつ CS2E=1 かつ P43DDR=1 HIRQ1 P44 △ 出力 スレーブモードかつ P44DDR=1 HIRQ12 P45 △ 出力 スレーブモードかつ P45DDR=1 HIRQ3 PB0 △ 出力 スレーブモードかつ CS3E=1 かつ PB0DDR=1 HIRQ4 PB1 △ 出力 スレーブモードかつ CS4E=1 かつ PB1DDR=1 GA20 P81 △ 出力 スレーブモードかつ FGA20E=1 HIFSD P82 — 入力 スレーブモードかつ SDE=1 18. 【注】 ホストインタフェース スレーブモード:シングルチップモードかつ HI12E=1 ○:シャットダウン機能によりシャットダウンされる端子 なお、P90 シャットダウン時は IRQ2/ ADTRG、P43 シャットダウン時は TMCI1/HSYNCI、P45 シャットダウン時は TMRI/CSYNCI の各入力信号も固定され ます。 △:レジスタの設定による HIF 機能選択時のみシャットダウンされる端子 —:シャットダウンされない端子 609 18. ホストインタフェース 18.4 割込み要因 18.4.1 IBF1、IBF2、IBF3、IBF4 ホストインタフェースはスレーブに対して IBF1、IBF2、IBF3、IBF4 の 4 つの割込み要 求があります。これらはそれぞれ入力データレジスタ IDR1、IDR2、IDR3、IDR4 につい ての入力バッファフル割込みです。割込み要求は対応するイネーブルビットをセットする ことにより許可されます。 表 18.9 入力バッファフル割込み 割込み 18.4.2 説明 IBF1 IBFIE1 が 1 にセットされ、IDR1 が受信完了になったときに要求 IBF2 IBFIE2 が 1 にセットされ、IDR2 が受信完了になったときに要求 IBF3 IBFIE3 が 1 にセットされ、IDR3 が受信完了になったときに要求 IBF4 IBFIE4 が 1 にセットされ、IDR4 が受信完了になったときに要求 HIRQ11、HIRQ1、HIRQ12、HIRQ3、HIRQ4 ポート 4 データレジスタ(P4DR)の P45DR〜P43DR ビットおよびポート B データレジ スタ(PBODR)の PB1ODR〜PB0ODR ビットは、スレーブモード(シングルチップモー ド、SYSCR2 レジスタ HI12E=1)のホスト割込み要求ラッチとして使用できます。 P4DR の対応するビットはホストリード(IOR)によって 0 にクリアされます。CS1 が Low レベル、HA0 が Low レベルのとき、ホストリード(IOR)で ODR1 をリードすると HIRQ1 と HIRQ12 が 0 にクリアされます。CS2 が Low レベル、HA0 が Low レベルのとき ホストリード(IOR)で ODR2 をリードすると HIRQ11 が 0 にクリアされます。また、PBODR の対応するビットはホストリード(IOR)によって 0 にクリアされます。CS3 が Low レベ ル、HA0 が Low レベルのとき、ホストリード(IOR)で ODR3 をリードすると HIRQ3 が 0 にクリアされます。CS4 が Low レベル、HA0 が Low レベルのときホストリード(IOR) で ODR4 をリードすると HIRQ4 が 0 にクリアされます。通常、内蔵ファームウェアはホ スト割込み要求を発生させるために、対応するビットに 1 をライトします。ホストは割込 み処理を起動し、割込み処理で出力データレジスタ(ODR1〜ODR4)をリードします。 このときのホストリードによってホスト割込みラッチが 0 にクリアされます。 表 18.10 にこれらのビットのセットとクリアの方法を示します。また、図 18.3 に処理 フローを示します。 610 18. ホストインタフェース 表 18.10 HIRQ のセット/クリア ホスト セット条件 クリア条件 割込み信号 HIRQ11 内部 CPU が、P 43 DR ビットの P43DR ビットに内部 CPU から 0 ライト、 (P43) 0 リード後、1 をライト または出力データレジスタ 2 をホストリード 内部 CPU が、P44DR ビットの P44DR ビットに内部 CPU から 0 ライト、 (P44) 0 リード後、1 をライト または出力データレジスタ 1 をホストリード HIRQ12 内部 CPU が、P45DR ビットの P45DR ビットに内部 CPU から 0 ライト、 (P45) 0 リード後、1 をライト または出力データレジスタ 1 をホストリード HIRQ1 HIRQ3 (PB0) HIRQ4 (PB1) 内部 CPU が、PB0ODR ビットの PB0ODR ビットに内部 CPU から 0 ライト、 0 リード後、1 をライト または出力データレジスタ 3 をホストリード 内部 CPU が、PB1ODR ビットの PB1ODR ビットに内部 CPU から 0 ライト、 0 リード後、1 をライト または出力データレジスタ 4 をホストリード スレーブCPU マスタCPU ODRライト P4DRに1をライト No HIRQ High出力 割込み起動 HIRQ Low出力 ODRリード P4DR=0? Yes No 全バイト転送済? Yes ハードウェアの動作 ソフトウェアの動作 図 18.3 HIRQ 出力の利用フロー(チャネル 1、2 の例) (1)HIRQ のセット/クリアの競合 CPU による P4DR または PBODR のリード/ライトと、ホストからの P4DR(HIRQ11、 HIRQ1、HIRQ12)または PBODR(HIRQ3、HIRQ4)のクリアが競合した場合、ホストに よるクリアが CPU による P4DR または PBODR のリード/ライト期間中は、保留されます。 P4DR あるいは PBODR のクリアは、リード/ライト終了後実行されます。 611 18. ホストインタフェース 18.5 使用上の注意 ホストインタフェースを使用する際は、以下のことに注意してください。 (1)ホストとスレーブの送受信手順について HI F はホストとスレーブからの非同期データのバッファリングを提供しています。必 要な機能を実現し、データの競合を防ぐためにはインタフェースのプロトコルが必要 です。例えば、ホストとスレーブが同時に ID R や ODR をアクセスしようとすると、 データは破壊されてしまいます。これには、割込みを用いた、簡単な手順を構成する ことが有効です。 (2)HDB 上のデータ競合対策について HIF 機能を使用(SYSCR2 の HI12E=1)し、チャネル 3 またはチャネル 4 を非選択設定 (S YSC R 2 の C S3E= 0 または C S4E= 0)のとき、以下のいずれかの条件で使用してくだ さい。 1. 非選択チャネルの CS 端子を必ず High レベルで固定してください。 2. ポート B のリードを行なわないでください。 (3)CS1〜CS4 各端子における貫通電流対策について CS1〜CS4 の各端子のうち 2本以上を同時に Low レベルにしてIDR や ODRをアクセス しようとすると、チップ内部での信号の競合が発生し、貫通電流が流れることがあり ます。このような使い方はしないでください。 612 19. D/A 変換器 第 19 章 19.1 19.2 19.3 目次 概要 ....................................................................................................................................... 615 19.1.1 特長 ...................................................................................................... 615 19.1.2 ブロック図 ............................................................................................ 615 19.1.3 端子構成................................................................................................ 616 19.1.4 レジスタ構成 ......................................................................................... 616 各レジスタの説明 ................................................................................................................... 617 19.2.1 D/A データレジスタ 0、1(DADR0、DADR1) ........................................ 617 19.2.2 D/A コントロールレジスタ(DACR) ..................................................... 617 19.2.3 モジュールストップコントロールレジスタ(MSTPCR) .......................... 619 動作説明................................................................................................................................. 620 19. 614 D/A 変換器 19. D/A 変換器 19.1 概要 本 LSI は、2 チャネルの D/A 変換器を内蔵しています。 19.1.1 特長 D/A 変換器の特長を以下に示します。 ■8 ビットの分解能 ■2 チャネル出力 ■変換時間最大 10 μ s(負荷容量 20pF 時) ■出力電圧 0V〜AVref ■ソフトウェアスタンバイモード時の D/A 出力保持機能 19.1.2 ブロック図 D/A 変換器のブロック図を図 19.1 に示します。 モジュールデータバス AVref バ ス イ ン タ フ ェ | ス 内部データバス AVCC 8ビット DA1 D/A D A D R 0 D A D R 1 D A C R DA0 AVSS コントロール回路 【記号説明】 DACR:D/Aコントロールレジスタ DADR0:D/Aデータレジスタ0 DADR1:D/Aデータレジスタ1 図 19.1 D/A 変換器のブロック図 615 19. D/A 変換器 19.1.3 端子構成 D/A 変換器で使用する入出力端子を表 19.1 に示します。 表 19.1 端子構成 名 19.1.4 称 記号 入出力 機 能 アナログ電源端子 AVCC 入力 アナログ部の電源 アナロググランド端子 AVSS 入力 アナログ部のグランドおよび基準電圧 アナログ出力端子 0 DA0 出力 チャネル 0 のアナログ出力 アナログ出力端子 1 DA1 出力 チャネル 1 のアナログ出力 リファレンス電圧端子 AVref 入力 アナログ部の基準電圧 レジスタ構成 D/A 変換器のレジスタ構成を表 19.2 に示します。 表 19.2 レジスタ構成 名 称 略称 R/W 初期値 アドレス* D/A データレジスタ 0 DADR0 R/W H'00 H'FFF8 D/A データレジスタ 1 DADR1 R/W H'00 H'FFF9 DACR R/W H'1F H'FFFA MSTPCRH R/W H'3F H'FF86 MSTPCRL R/W H'FF H'FF87 D/A コントロールレジスタ モジュールストップコントロールレジスタ 【注】 616 * アドレスの下位 16 ビットを示しています。 19. D/A 変換器 19.2 各レジスタの説明 19.2.1 D/A データレジスタ 0、1(DADR0、DADR1) ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : D/A データレジスタ 0、1(DAD R0、DAD R1)は、リード/ライト可能な 8 ビットのレ ジスタで変換を行うデータを格納します。 アナログ出力を許可すると、DADR の値が常に変換され、アナログ出力端子に出力され ます。 DADR は、リセットまたはハードウェアスタンバイモード時に、H'00 に初期化されます。 19.2.2 D/A コントロールレジスタ(DACR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 DAOE1 DAOE0 DAE − − − − − 0 0 0 1 1 1 1 1 R/W R/W R/W − − − − − DAC R は、8 ビットのリード/ライト可能なレジスタで、D/A 変換器の動作を制御しま す。 DACR は、リセットまたはハードウェアスタンバイモード時に、H'1F に初期化されます。 ビット 7:D/A アウトプットイネーブル 1(DAOE1) D/A 変換とアナログ出力を制御します。 ビット 7 説 明 DAOE1 0 アナログ出力 DA1 を禁止 1 チャネル 1 の D/A 変換を許可。アナログ出力 DA1 を許可 (初期値) 617 19. D/A 変換器 ビット 6:D/A アウトプットイネーブル 0(DAOE0) D/A 変換とアナログ出力を制御します。 ビット 6 説 明 DAOE0 0 アナログ出力 DA0 を禁止 (初期値) 1 チャネル 0 の D/A 変換を許可。アナログ出力 DA0 を許可 ビット 5:D/A イネーブル(DAE) DAOE0、DAOE1 ビットとともに、D/A 変換を制御します。DAE ビットが 0 にクリアさ れているときチャネル 0、1 の D/A 変換は独立に制御され、DAE ビットが 1 にセットされ ているときチャネル 0、1 の D/A 変換は一括して制御されます。 変換結果の出力は、DAOE0、DAOE1 ビットにより、常に独立に制御されます。 ビット 7 ビット 6 ビット 5 説 明 DAOE1 DAOE0 DAE 0 0 * チャネル 0、1 の D/A 変換を禁止 1 0 チャネル 0 の D/A 変換を許可 チャネル 1 の D/A 変換を禁止 1 0 1 チャネル 0、1 の D/A 変換を許可 0 チャネル 0 の D/A 変換を禁止 チャネル 1 の D/A 変換を許可 1 1 チャネル 0、1 の D/A 変換を許可 * チャネル 0、1 の D/A 変換を許可 *:Don't care D/A 変換を許可した状態で本 LSI がソフトウェアスタンバイモードになると、D/A 出力 は保持され、アナログ電源電流は D/A 変換中と同等になります。ソフトウェアスタンバイ モードでアナログ電源電流を低減する必要がある場合には、DAOE0、DAOE1、DAE ビッ トをいずれも 0 にクリアして D/A 出力を禁止にしてください。 ビット 4〜0:リザーブビット リードすると常に 1 が読み出されます。ライトは無効です。 618 19. 19.2.3 D/A 変換器 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MSTP10 ビットを 1 にセットすると、バスサイクルの終了時点で D/A 変換器は動作を停 止してモジュールストップモードへ遷移します。詳細は、「24.5 モジュールストップモ ード」を参照してください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 ビット 10:モジュールストップ(MSTP10) D/A 変換器のモジュールストップモードを指定します。 MSTPCRH 説 明 ビット 2 MSTP10 0 D/A 変換器のモジュールストップモード解除 1 D/A 変換器のモジュールストップモード設定 (初期値) 619 19. D/A 変換器 19.3 動作説明 D/A 変換器は、2 チャネルの D/A 変換回路を内蔵し、それぞれ独立に変換を行うことが できます。 DAC R によって D/A 変換が許可されている期間は、常に D/A 変換が行われています。 DADR0、DADR1 を書き換えるとただちに、新しいデータが変換されます。DAOE0、DAOE1 ビットを 1 にセットすることにより、変換結果が出力されます。 チャネル 0 の D/A 変換を行う場合の動作例を示します。また、このときの動作タイミン グを図 19.2 に示します。 [1]DADR0 に変換データをライトします。 [2]DAC R の DAO E0 ビットを 1 にセットします。D/A 変換が開始され、DA0 端子が出力 端子になります。変換時間経過後に変換結果が出力されます。出力値は以下の式で表 わされます。 DADR の内容 256 ×AVref 次に DADR0 を書き換えるか、DAOE0 ビットを 0 にクリアするまでこの変換結果が出 力され続けます。 [3]DAD R0 を書き換えるとただちに変換が開始されます。変換時間経過後に変換結果が 出力されます。 [4]DAOE0 ビットを 0 にクリアすると、DA0 端子は入力端子になります。 DADR0 ライトサイクル DACR ライトサイクル DADR0 ライトサイクル DACR ライトサイクル φ アドレス 変換データ1 DADR0 変換データ2 DAOE0 DA0 tDCONV 【記号説明】 tDCONV:D/A変換時間 図 19.2 D/A 変換器の動作例 620 変換結果2 変換結果1 ハイインピーダンス状態 tDCONV 20. A/D 変換器 第 20 章 20.1 20.2 目次 概要 ....................................................................................................................................... 623 20.1.1 特長 ...................................................................................................... 623 20.1.2 ブロック図 ............................................................................................ 624 20.1.3 端子構成................................................................................................ 625 20.1.4 レジスタ構成 ......................................................................................... 626 各レジスタの説明 ................................................................................................................... 627 20.2.1 A/D データレジスタ A〜D(ADDRA〜ADDRD)..................................... 627 20.2.2 A/D コントロール/ステータスレジスタ(ADCSR)................................ 628 20.2.3 A/D コントロールレジスタ(ADCR) ..................................................... 630 20.2.4 キーボードコンパレータコントロールレジスタ(KBCOMP) .................. 631 20.2.5 モジュールストップコントロールレジスタ(MSTPCR) .......................... 633 20.3 バスマスタとのインタフェース ............................................................................................... 634 20.4 動作説明................................................................................................................................. 635 20.4.1 シングルモード(SCAN=0) ................................................................. 635 20.4.2 スキャンモード(SCAN=1) ................................................................. 637 20.4.3 入力サンプリングと A/D 変換時間........................................................... 639 20.4.4 外部トリガ入力タイミング ..................................................................... 640 20.5 割込み .................................................................................................................................... 641 20.6 使用上の注意 .......................................................................................................................... 641 20. 622 A/D 変換器 20. A/D 変換器 20.1 概要 本 LS I は、逐次比較方式で動作する 10 ビットの A/D 変換器を内蔵しており、最大 8 チ ャネルのアナログ入力を選択することができます。 8 チャネルのアナログ端子入力に加え、最大 16 チャネルのデジタル端子入力を A/D 変 換の対象に選択が可能です。デジタル入力を選択した場合、変換精度が低下しますので、 デジタル入力は多値入力判定のコンパレータなどの用途が最適です。 20.1.1 特長 A/D 変換器の特長を以下に示します。 ■10 ビット分解能 ■入力チャネル:8 チャネル(アナログ入力端子)、16 チャネル(デジタル入力端子) ■アナログ変換電圧範囲の設定可能 ・リファレ ンス電源電圧端子( AVr ef )をアナログ基 準電圧として、アナ ログ変換電 圧範囲を設定します。 ■高速変換 ・変換時間:1 チャネル当たり 6.7 μ s(20MHz 動作時) ■シングルモード/スキャンモードの動作モードから選択可能 ・シングルモード:1 チャネルの A/D 変換 ・スキャンモード:1〜4 チャネルの連続 A/D 変換 ■4 本のデータレジスタ ・変換結果を各チャネルに対応した 16 ビットデータレジスタに保持 ■サンプル&ホールド機能 ■3 種類の変換開始 ・ソフトウェア、タイマの変換開始トリガ(8 ビットタイマ)または ADTR G 端子の 選択が可能 ■A/D 変換終了割込み要求発生 ・A/D 変換終了時に、A/D 変換終了割込み(ADI)要求を発生可能 623 20. A/D 変換器 20.1.2 ブロック図 A/D 変換器のブロック図を図 20.1 に示します。 バ ス イ ン タ フ ェ | ス モジュールデータバス AVCC AVref 10ビットD/A AVSS AN0 AN1 AN2 AN3 AN4 AN5 AN6/CIN0〜7 AN7/CIN8〜15 マ ル チ プ レ ク サ 逐 次 比 較 レ ジ ス タ A D D R A A D D R B A D D R C A D D R D A D C S R 内部データ バス A D C R + コンパレータ サンプル& ホールド回路 φ/8 コントロール回路 φ/16 ADI 割込み信号 ADTRG 【記号説明】 ADCR :A/Dコントロールレジスタ ADCSR:A/Dコントロール/ステータスレジスタ ADDRA:A/DデータレジスタA ADDRB:A/DデータレジスタB ADDRC:A/DデータレジスタC ADDRD:A/DデータレジスタD 図 20.1 A/D 変換器のブロック図 624 8ビットタイマからの 変換開始トリガ 20. 20.1.3 A/D 変換器 端子構成 A/D 変換器で使用する入力端子を表 20.1 に示します。 AVCC、AVSS 端子は、A/D 変換器内部のアナログ部の電源です。 表 20.1 端子構成 端子名 記号 入出力 アナログ電源端子 AVCC 入力 アナログ部の電源 アナロググランド端子 AVSS 入力 アナログ部のグランドおよび基準電圧 リファレンス電源端子 AVref 入力 A/D 変換の基準電圧 アナログ入力端子 0 AN0 入力 アナログ入力チャネル 0 アナログ入力端子 1 AN1 入力 アナログ入力チャネル 1 アナログ入力端子 2 AN2 入力 アナログ入力チャネル 2 アナログ入力端子 3 AN3 入力 アナログ入力チャネル 3 アナログ入力端子 4 AN4 入力 アナログ入力チャネル 4 アナログ入力端子 5 AN5 入力 アナログ入力チャネル 5 アナログ入力端子 6 AN6 入力 アナログ入力チャネル 6 アナログ入力端子 7 AN7 入力 アナログ入力チャネル 7 A/D 外部トリガ入力端子 ADTRG 入力 A/D 変換開始のための外部トリガ入力 拡張 A/D 入力端子 0〜15 CIN0〜 入力 拡張 A/D 変換入力(デジタル入力端子) CIN15 機 能 チャネル 0〜チャネル 15 625 20. A/D 変換器 20.1.4 レジスタ構成 A/D 変換器のレジスタ構成を表 20.2 に示します。 表 20.2 レジスタ構成 略称 R/W 初期値 アドレス* 1 A/D データレジスタ AH ADDRAH R H'00 H'FFE0 A/D データレジスタ AL ADDRAL R H'00 H'FFE1 A/D データレジスタ BH ADDRBH R H'00 H'FFE2 A/D データレジスタ BL ADDRBL R H'00 H'FFE3 A/D データレジスタ CH ADDRCH R H'00 H'FFE4 A/D データレジスタ CL ADDRCL R H'00 H'FFE5 A/D データレジスタ DH ADDRDH R H'00 H'FFE6 A/D データレジスタ DL ADDRDL R H'00 H'FFE7 ADCSR R/(W)* 2 H'00 H'FFE8 ADCR R/W H'3F H'FFE9 MSTPCRH R/W H'3F H'FF86 MSTPCRL R/W H'FF H'FF87 KBCOMP R/W H'00 H'FEE4 名 称 A/D コントロール/ステータスレジスタ A/D コントロールレジスタ モジュールストップコントロールレジスタ キーボードコンパレータコントロールレジスタ 【注】 *1 アドレスの下位 16 ビットを示しています。 *2 ビット 7 は、フラグをクリアするための 0 ライトのみ可能です。 626 A/D 変換器 20. 20.2 各レジスタの説明 20.2.1 A/D データレジスタ A〜D(ADDRA〜ADDRD) ビット 14 12 10 8 6 5 4 3 2 1 0 AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 — 15 13 11 9 7 — — — — — 初期値 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W R R R R R R R R R R R R R R R R ADDR は、A/D 変換された結果を格納する 16 ビットのリード専用レジスタで、ADDRA 〜ADDRD の 4 本があります。 A/D 変換されたデータは 10 ビットデータで、選択されたチャネルに対応する ADD R に 転送され、保持されます。A/D 変換されたデータの上位 8 ビットが ADDR の上位バイト(ビ ット 15〜8)に、また下位 2 ビットが下位バイト(ビット 7、6)に転送され、保持されま す。ビット 5〜0 はリードすると常に 0 が読み出されます。 アナログ入力チャネルと ADDR の対応を表 20.3 に示します。ADDR は、常に CPU から リード可能です。上位バイトは直接リードできますが、下位バイトはテンポラリレジスタ (TEMP)を介してデータ転送が行われます。詳細は「20.3 バスマスタとのインタフェー ス」を参照してください。 ADDR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サ ブスリープモード、またはモジュールストップモード時に、H'0000 に初期化されます。 表 20.3 アナログ入力チャネルと ADDR の対応 アナログ入力チャネル A/D データレジスタ グループ 0 グループ 1 AN0 AN4 ADDRA AN1 AN5 ADDRB AN2 AN6 または CIN0〜CIN7 ADDRC AN3 AN7 または CIN8〜CIN15 ADDRD 627 20. A/D 変換器 20.2.2 A/D コントロール/ステータスレジスタ(ADCSR) ビット 初期値 R/W 【注】* 7 6 5 4 3 2 1 0 ADF ADIE ADST SCAN CKS CH2 CH1 CH0 0 0 0 0 0 0 0 0 R/(W)* R/W R/W R/W R/W R/W R/W R/W フラグをクリアするための0ライトのみ可能です。 ADCSR は、8 ビットのリード/ライト可能なレジスタで、A/D 変換動作を制御します。 ADC S R は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、 サブスリープモード、またはモジュールストップモード時に、H'00 に初期化されます。 ビット 7:A/D エンドフラグ(ADF) A/D 変換の終了を示すステータスフラグです。 ビット 7 説 明 ADF 0 [クリア条件] (初期値) (1)ADF=1 の状態で、ADF フラグをリードした後、ADF フラグに 0 をライト したとき (2)ADI 割込みにより DTC が起動され、ADDR をリードしたとき 1 [セット条件] (1)シングルモード:A/D 変換が終了したとき (2)スキャンモード:指定したすべてのチャネルの A/D 変換が終了したとき ビット 6:A/D インタラプトイネーブル(ADIE) A/D 変換の終了による割込み(ADI)要求の許可または禁止を選択します。 ビット 6 説 明 ADIE 628 0 A/D 変換の終了による割込み(ADI)要求を禁止 1 A/D 変換の終了による割込み(ADI)要求を許可 (初期値) 20. A/D 変換器 ビット 5:A/D スタート(ADST) A/D 変換の開始または停止を選択します。A/D 変換中は 1 を保持します。 ADST ビットは、ソフトウェア、タイマの変換開始トリガ、または A/D 外部トリガ入力 端子(ADTRG)によって 1 にセットすることができます。 ビット 5 説 明 ADST 0 A/D 変換を停止 (初期値) 1 (1)シングルモード:A/D 変換を開始。指定したチャネルの変換が終了すると 自動的に 0 にクリア (2)スキャンモード:A/D 変換を開始。ソフトウェア、リセット、スタンバイ モードまたはモジュールストップモードによって、0 にク リアされるまで選択されたチャネルを順次連続変換 ビット 4:スキャンモード(SCAN) A/D 変換の動作モードを、シングルモードまたはスキャンモードから選択します。シン グルモード/スキャンモードの動作については、「20.4 動作説明」を参照してください。 SCAN ビットの設定は、変換停止中に行ってください。 ビット 4 説 明 SCAN 0 シングルモード 1 スキャンモード (初期値) ビット 3:クロックセレクト(CKS) A/D 変換時間の設定を行います。 変換時間の切り替えは、ADST=0 の状態で行ってください。 ビット 3 説 明 CKS 0 変換時間=266 ステート(Max) 1 変換時間=134 ステート(Max) (初期値) 629 20. A/D 変換器 ビット 2〜0:チャネルセレクト 2〜0(CH2〜CH0) SCAN ビットとともにアナログ入力チャネルを選択します。 アナログ入力のうち 1 チャネルはデジタル入力に切り替えることができます。 入力チャネルの設定は、変換停止中に行ってください。 グループ選択 チャネル選択 CH2 CH1 CH0 0 0 0 1 1 0 1 説 明 シングルモード スキャンモード (初期値) AN0 1 AN1 AN0、AN1 0 AN2 AN0、AN1、AN2 1 AN3 AN0、AN1、AN2、AN3 0 AN4 AN4 1 AN5 AN4、AN5 0 AN6 または CIN0〜CIN7 AN0 AN4、AN5、 AN6 または CIN0〜CIN7 AN7 または CIN8〜CIN15 1 AN4、AN5、 AN6 または CIN0〜CIN7、 AN7 または CIN8〜CIN15 20.2.3 A/D コントロールレジスタ(ADCR) ビット 初期値 R/W 7 6 5 4 3 2 1 0 TRGS1 TRGS0 — — — — — — 0 0 1 1 1 1 1 1 R/W R/W — — — — — — ADCR は、8 ビットのリード/ライト可能なレジスタで、外部トリガ入力による A/D 変 換の開始の許可または禁止を選択します。 ADCR は、リセット、スタンバイモード、ウォッチモード、サブアクティブモード、サ ブスリープモード、またはモジュールストップモード時に、H'3F に初期化されます。 630 20. A/D 変換器 ビット 7、6:タイマトリガセレクト 1、0(TRGS1、TRGS0) トリガ信号による A/D 変換開始の許可または禁止を選択します。 TRGS1、TRGS0 ビットの設定は、変換停止中に行ってください。 ビット 7 ビット 6 TRGS1 TRGS0 0 0 外部トリガによる A/D 変換の開始を禁止 1 外部トリガによる A/D 変換の開始を禁止 0 外部トリガ(8 ビットタイマ)による A/D 変換の開始を許可 1 外部トリガ端子による A/D 変換の開始を許可 1 説 明 (初期値) ビット 5〜0 リザーブビット リザーブビットです。ライトするときは必ず 1 をライトしてください。 【注】 * HD6 4 F21 48 、HD6 4 F21 47 N 、HD6 4 F21 44 、HD6 4 F21 42 R、 HD6 4 32 14 2 以外 の製品では、このうちのいくつかのビットがリード/ライト可能ですが、ソフ トウェア互換のため、必ず 1 をライトしてください。 631 20. A/D 変換器 20.2.4 キーボードコンパレータコントロールレジスタ(KBCOMP) 7 6 5 4 3 2 1 0 IrE IrCKS2 IrCKS1 IrCKS0 KBADE KBCH2 KBCH1 KBCH0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ビット 初期値 R/W KBCOMP は、8 ビットのリード/ライト可能なレジスタで、SCI2 の IrDA 機能の制御、 A/D 変換する CIN 入力チャネルの選択をします。 KBCOMP は、リセット、ハードウェアスタンバイモード時に、H'00 に初期化されます。 ビット 7〜4:IrDA コントロール 「15.2.11 キーボードコンパレータコントロールレジスタ(KBCOMP)」の説明を参照 してください。 ビット 3:キーボード A/D イネーブル A/D 変換器のチャネル 6、チャネル 7 の入力をアナログ入力端子(AN6、AN7)とデジ タル入力端子(CIN0〜CIN7、CIN8〜CIN15)のいずれかを選択します。 ビット 2〜0:キーボード A/D チャネルセレクト 2〜0 デジタル入力端子から、A/D 変換するチャネルを選択します。 入力チャネルの設定は、変換停止中に行ってください。 632 20. ビット 3 ビット 2 ビット 1 ビット 0 A/D 変換器 A/D 変換器 KBADE KBCH2 KBCH1 KBCH0 チャネル 6 入力 チャネル 7 入力 0 − − − AN6 AN7 1 0 0 0 CIN0 CIN8 1 CIN1 CIN9 0 CIN2 CIN10 1 CIN3 CIN11 0 CIN4 CIN12 1 CIN5 CIN13 0 CIN6 CIN14 1 CIN7 CIN15 1 1 0 1 20.2.5 A/D 変換器 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MST P9 ビットを 1 にセットすると、バスサイクルの終了時点で A/D 変換器の動作を停 止してモジュールストップモードへ遷移します。モジュールストップモードでは、レジス タのリード/ライトはできません。。詳細は、「25.5 モジュールストップモード」を参 照してください。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRH ビット 1:モジュールストップ(MSTP9) A/D 変換器のモジュールストップモードを指定します。 MSTPCRH 説 明 ビット 1 MSTP9 0 A/D 変換器のモジュールストップモード解除 1 A/D 変換器のモジュールストップモード設定 (初期値) 633 20. A/D 変換器 20.3 バスマスタとのインタフェース ADD RA 〜ADD RD は 16 ビットレジスタで、バスマスタとの間のデータバスは 8 ビット 幅です。そのためバスマスタからのアクセスは、上位バイトは直接行われますが、下位バ イトは 8 ビットのテンポラリレジスタ(TEMP)を介して行います。 ADDR からのデータのリードは次のように行われます。上位バイトのリードで上位バイ トの値は C PU へ、下位バイトの値は TEMP へ転送されます。次に下位バイトのリードで TEMP の内容が CPU へ転送されます。 ADDR をリードする場合は、必ず上位バイト、下位バイトの順で行ってください。また、 上位バイトのみのリードは可能ですが、下位バイトのみのリードでは内容は保証されませ んので注意してください。 図 20.2 に、ADDR のアクセス時のデータの流れを示します。 上位バイトのリード バスマスタ (H'AA) モジュールデータバス バスインタフェース TEMP (H'40) ADDRnH (H'AA) ADDRnL (H'40) (n= A 〜D) 下位バイトのリード バスマスタ (H'40) モジュールデータバス バスインタフェース TEMP (H'40) ADDRnH (H'AA) ADDRnL (H'40) (n = A 〜 D) 図 20.2 ADDR のアクセス動作(H'AA40 リード時) 634 20. A/D 変換器 20.4 動作説明 A/D 変換器は逐次比較方式で動作し、10 ビットの分解能をもっています。シングルモー ドとスキャンモードの各モードの動作について説明します。 20.4.1 シングルモード(SCAN=0) シングルモードは、1 チャネルのみ A/D 変換を行う場合に選択します。ソフトウェアま たは外部トリガ入力によって ADST ビットが 1 にセットされると、A/D 変換を開始します。 ADST ビットは A/D 変換中は 1 を保持しており、変換が終了すると自動的に0にクリアさ れます。 また、変換が終了すると、ADF フラグが 1 にセットされます。このとき、ADI E ビット が 1 にセットされていると、ADI 割込み要求が発生します。 ADF フラグは、ADCSR をリードした後、0をライトするとクリアされます。 動 作 モー ド や アナ ロ グ 入力 チ ャ ネ ルを 切 り 替え る 場 合 は、 誤 動 作を 避 け るた め に ADC S R の ADS T ビットを0にクリアして、A/D 変換を停止した状態で行ってください。 変更した後、ADST ビットを 1 にセットすると再び A/D 変換を開始します。なお、動作モ ードや入力チャネルの変更と、ADST ビットのセットは同時に行うことができます。 シングルモードでチャネル 1(AN1)が選択された場合の動作例を以下に示します。ま た、このときの動作タイミングを図 20.3 に示します。 [1]動作モードをシングルモードに(SCAN=0)、入力チャネルを AN1 に(CH1=0、CH0 =1)A/D 割込み要求許可(ADIE=1)に設定して、A/D 変換を開始(ADST=1)しま す。 [2]A/D 変換が終了すると、A/D 変換結果が ADDRB に転送されます。同時に、ADF=1、 ADST=0 となり A/D 変換器は変換待機となります。 [3]ADF=1、ADIE=1 となっているため、ADI 割込み要求が発生します。 [4]A/D 割込み処理ルーチンが開始されます。 [5]ADCSR をリードした後、ADF に 0 をライトします。 [6]A/D 変換結果(ADDRB)をリードして、処理します。 [7]A/D 割込み処理ルーチンの実行を終了します。 この後、ADS T ビットを 1 にセットすると A/D 変換が開始され、[2]〜[7]を行い ます。 635 20. A/D 変換器 セット* ADIE A/D 変換開始 セット* ADST セット* クリア* クリア* ADF チャネル 0 (AN0) 動作状態 変換待機 チャネル 1 (AN1) 動作状態 変換待機 チャネル 2 (AN2) 動作状態 変換待機 チャネル 3 (AN3) 動作状態 変換待機 A/D 変換 1 変換待機 A/D 変換 2 変換待機 ADDRA 変換結果のリード A/D 変換結果 1 ADDRB ADDRC ADDRD 【注】* は、ソフトウェアによる命令実行を示します。 図 20.3 A/D 変換器の動作例(シングルモード 636 チャネル 1 選択時) 変換結果のリード A/D 変換結果 2 20. 20.4.2 A/D 変換器 スキャンモード(SCAN=1) スキャンモードは、複数チャネル(1 チャネルを含む)のアナログ入力を常にモニタす るよ うな 応用 に適 して いま す。ソ フト ウェ ア、 タイ マまた は外 部ト リガ 入力 によ って ADST ビットが 1 にセットされると、グループの第 1 チャネル(CH2=0 のとき AN0、CH2 =1 のとき AN4)から A/D 変換は開始されます。 複数のチャネルが選択されている場合は、第 1 チャネルの変換が終了した後、ただちに 第 2 チャネル(AN1 または AN5)の A/D 変換を開始します。 A/D 変換は、ADS T ビットが 0 にクリアされるまで、選択されたチャネル内を連続して 繰り返し行います。変換された結果は、 各チャネルに対応した ADD R に転送され保持さ れます。 A/D 変換中に、動作モードやアナログ入力チャネルを切り替える場合は、誤動作を避け るために ADC S R の ADS T ビットを0にクリアして、A/D 変換を停止した状態で行ってく ださい。変更した後、ADST ビットを 1 にセットすると再び第 1 チャネルから A/D 変換を 開始します。なお、動作モードや入力チャネルの変更と、ADST ビットのセットは同時に 行うことができます。 スキャンモードで 3 チャネル(AN0〜AN2)を選択して A/D 変換を行う場合の動作例を 以下に示します。また、このときの動作タイミングを図 20.4 に示します。 [1]動作モードをスキャンモードに(SCAN=1)、スキャングループを 0 に(CH2=0)、 アナログ入力チャネルを AN0〜AN2(C H1=1、C H0=0)に設定して A/D 変換を開始 (ADST=1)します。 [2]第 1チャネル(AN0)のA/D変換が開始されA/D変換が終了すると、変換結果をADDRA に転送します。 次に第 2 チャネル(AN1)が自動的に選択され、変換を開始します。 [3]同様に第 3 チャネル(AN2)まで変換を行います。 [4]選択されたすべてのチャネル(AN0〜AN2)の変換が終了すると、ADF =1 となり、 再び第 1 チャネル(AN0)を選択し、変換が行われます。 このとき ADI E ビットが 1 にセットされていると A/D 変換終了後、ADI 割込みを発生 します。 [5]ADST ビットが 1 にセットされている間は、[2]〜[4]を繰り返します。 ADS T ビットを 0 にクリアすると A/D 変換が停止します。この後、ADS T ビットを 1 にセットすると再び A/D 変換を開始し、第 1 チャネル(AN0)から変換が行われます。 637 20. A/D 変換器 A/D 変換連続実行 クリア*1 セット*1 ADST クリア*1 ADF A/D 変換時間 チャネル 0 (AN0) 動作状態 チャネル 1 (AN1) 動作状態 チャネル 2 (AN2) 動作状態 チャネル 3 (AN3) 動作状態 ADDRA 変換待機 A/D 変換 1 変換待機 A/D 変換 4 変換待機 A/D 変換 2 変換待機 変換待機 変換待機 A/D 変換5 *2 変換待機 変換待機 A/D 変換 3 変換待機 転送 A/D 変換結果 1 A/D 変換結果 4 A/D 変換結果 2 ADDRB ADDRC A/D 変換結果 3 ADDRD 【注】*1 *2 は、ソフトウェアによる命令実行を示します。 変換中のデータは無視されます。 図 20.4 A/D 変換器の動作例(スキャンモード 638 AN0〜AN2 の 3 チャネル選択時) 20. 20.4.3 A/D 変換器 入力サンプリングと A/D 変換時間 A/D 変換器には、サンプル&ホールド回路が内蔵されています。A/D 変換器は、ADS T ビットが 1 にセットされてから tD 時間経過後、入力のサンプリングを行い、その後変換を 開始します。A/D 変換のタイミングを図 2 0.5 に示します。また、A/D 変換時間を表 2 0.4 に示します。 A/D 変換時間は、図 20.5 に示すように、tD と入力サンプリング時間を含めた時間となり ます。ここで tD は、ADCSR へのライトタイミングにより決まり、一定値とはなりません。 そのため、変換時間は表 20.4 に示す範囲で変化します。 スキャンモードの変換時間は、表 20.4 に示す値が 1 回目の変換時間となりますが、2 回 目以降は CKS=0 の場合は 256 ステート(固定)、CKS=1 の場合は 128 ステート(固定) となります。 (1) φ アドレス (2) ライト信号 入力サンプリング タイミング ADF tD tSPL tCONV 【記号説明】 (1) :ADCSRライトサイクル (2) :ADCSRのアドレス tD :A/D変換開始遅延時間 tSPL :入力サンプリング時間 tCONV:A/D変換時間 図 20.5 A/D 変換タイミング 639 20. A/D 変換器 表 20.4 A/D 変換時間(シングルモード) 項目 CKS=0 CKS=1 min typ max min typ max A/D 変換開始遅延時間 tD 10 − 17 6 − 9 入力サンプリング時間 t SPL − 63 − − 31 − A/D 変換時間 t CONV 259 − 266 131 − 134 【注】 20.4.4 記号 単位:ステート 外部トリガ入力タイミング A/D 変換は、外部トリガ入力により開始することも可能です。外部トリガ入力は、ADCR の TRGS1、TRGS0 ビットが 11 にセットされているとき、ADTRG 端子から入力されます。 ADTRG 入力端子の立ち下がりエッジで、ADCSR の ADST ビットが 1 にセットされ、A/D 変換が開始されます。 その他 の動作は、 シングルモー ド/スキャ ンモードに よらず、ソフ トウェアに よって ADST ビットを 1 にセットした場合と同じです。 このタイミングを図 20.6 に示します。 φ ADTRG 内部トリガ信号 ADST A/D変換 図 20.6 外部トリガ入力タイミング 640 20. A/D 変換器 20.5 割込み A/D 変換器は、A/D 変換の終了により、A/D 変換終了割込み(ADI)を発生します。 ADI 割込み要求は、ADCSR の ADIE ビットで許可または禁止することができます。 20.6 使用上の注意 A/D 変換器を使用する際は、以下のことに注意してください。 (1)アナログ電源端子他の設定範囲 (a)アナログ入力電圧の範囲 A/D 変換中、アナログ入力端子 ANn に印加する電圧は AVSS ≦ANn≦AVre f の範囲とし てください。(n=0〜7) (b)デジタル入力電圧の範囲 デジタル入力端子 C INn に印加する電圧は AVSS ≦C INn≦AVre f かつ VSS ≦C INn≦VCC の 範囲としてください。(n=0〜15) (c)AVCC、AVSS と VCC、VSS の関係 AVCC、AVSS と VCC、VSS との関係は AVSS =VSS とし、さらに、A/D 変換器を使用しない ときも、AVCC、AVSS 端子を決してオープンにしないでください。 (d)AVref 端子の設定範囲 AVref 端子によるリファレンス電圧の設定範囲は AVref ≦AVCC にしてください。 以上(a)、(b)、(c)、(d)が守られない場合、LS I の信頼性に悪影響を及ぼすこ とがあります。 (2)ボード設計上の注意 ボード設計時には、デジタル回路とアナログ回路をできるだけ分離してレイアウトして ください。また、デジタル回路の信号配線とアナログ回路の信号配線を交差させたり、近 接させるようなレイアウトは極力避けてください。誘導などにより、アナログ回路の誤動 作や、A/D 変換値に悪影響を及ぼします。 なお、アナロ グ入力信号(AN0〜AN7)、 アナログ基準電源(AVr ef )、 アナログ電源 (AVCC)は、アナロググランド(AVSS)で、デジタル回路を必ず分離してください。さ らに、アナロ ググランド(AVS S )は、ボー ド上の安定したデジタルグ ランド(VS S)に 一点接続してください。 641 20. A/D 変換器 (3)ノイズ対策上の注意 アナログ入力 端子(AN0〜AN7)、アナロ グ基準電源(AVr ef )に、過大 なサージなど 異常電 圧による 破壊を防 ぐために 接続する保 護回路は 、図 2 0.7 に 示すよう に AVC C − AVSS 間に接続してください。 また、AVCC、AVref に接続するバイパスコンデンサ、 AN0〜AN7 に接続するフィルタ のコンデンサは、必ず AVSS に接続してください。 なお、図 2 0.7 のようにフィルタ用のコンデ ンサを接続するとアナログ入力端子(AN0 〜AN7)の入力電流が平均化されるため、誤差を生じることがあります。また、スキャン モード等で頻繁に A/D 変換を行う場合、A/D 変換器内部のサンプル&ホールド回路の容量 に充放電される電流が入力インピーダンス(R i n)を経由して入力される電流を上回ると、 アナログ入力端子の電圧に誤差を生じます。したがって回路定数の決定については、充分 ご検討くださいますようお願いいたします。 AVCC AVref Rin *2 *1 100 Ω AN0〜AN7 *1 0.1 µF AVSS 【注】 数値は参考値 *1 10 µF 0.01 µF *2 Rin:入力インピーダンス 図 20.7 アナログ入力保護回路の例 表 20.5 アナログ端子の規格 項目 min max 単位 アナログ入力容量 − 20 pF 許容信号源インピーダンス − 10* kΩ 【注】 642 * VCC=4.0〜5.5V、φ≦12MHz の場合 20. A/D 変換器 10kΩ AN0〜AN7 A/D変換器へ 20pF 【注】 数値は参考値 図 20.8 アナログ入力端子等価回路 (4)A/D 変換精度の定義 以下に、本 LSI の A/D 変換精度の定義を示します。 ・分解能 A/D 変換器のデジタル出力コード数 ・オフセット誤差 デジタル出力が最小電圧 値 B '0000000000(H'000)から B '0000000001(H'001)に 変化するときのアナログ入力電圧値の理想 A/D 変換特性からの偏差(図 20.10) ・フルスケール誤差 デジタル出力が B '1111111110(H'3F E)から B '1111111111(H'3F F)に変化すると きのアナログ入力電圧値の理想 A/D 変換特性からの偏差(図 20.11) ・量子化誤差 A/D 変換器が本質的に有する偏差であり、1/2 LSB で与えられる(図 20.9) ・非直線性誤差 ゼロ電圧からフルスケール電圧までの間の理想 A/D 変換特性からの誤差。ただし、 オフセット誤差、フルスケール誤差、量子化誤差を含まない。 ・絶対精度 デジタル値と アナログ入力値との偏差。 オフセット誤差、フルスケ ール誤差、量 子化誤差および非直線誤差を含む。 643 20. A/D 変換器 デジタル出力 理想 A/D 変換特性 H'3FF H'3FE H'3FD H'004 H'003 量子化誤差 H'002 H'001 H'000 1 2 1024 1024 1022 1023 FS 1024 1024 アナログ 入力電圧 図 20.9 A/D 変換精度の定義(1) フルスケール誤差 デジタル出力 理想 A/D 変換特性 非直線性誤差 実際のA/D 変換特性 FS オフセット誤差 図 20.10 A/D 変換精度の定義(2) 644 アナログ 入力電圧 20. A/D 変換器 (5)許容信号源インピーダンス 本 LSIのアナログ入力は、信号源インピーダンスが 10kΩ(AVCC=4.0〜5.5V、φ≦12MHz または CKS=0 のとき)以下の入力信号に対し、変換精度が保証される設計となっていま す。これは A/D 変換器のサンプル&ホールド回路の入力容量をサンプリング時間内に充電 するために設けている規格で、センサの出力インピーダンスが 10k Ω(AVCC=4.0〜5.5V、 φ≦12MHz または CKS=0 のとき)を超える場合充電不足が生じ、A/D 変換精度が保証で きなくなる場合があります。 しかし外部に大容量を設けている場合、入力の負荷は実質的に内部入力抵抗の 10k Ωだ けになりますので、信号源インピーダンスは不問となります。 ただし、この場合ローパスフィルタとなりますので、微分係数の大きなアナログ信号(例 えば 5mV/μ s 以上)には追従できない場合があります。 高速のアナログ信号を変換する場合には、低インピーダンスのバッファを入れてくださ い。 (6)絶対精度への影響 容量を付加することにより、GND とのカップリングを受けることになりますので、GND にノイズがあると絶対精度が悪化する可能性があります。必ず AVSS 等の電気的に安定な GND に接続してください。 またフィルタ回路が実装基板上でデジタル信号と交渉したり、アンテナとならないよう に注意が必要です。 本LSI センサの 出力インピーダンス 〜 10 kΩ A/D変換器の等価回路 10 kΩ センサ入力 ローパス フィルタ C〜0.1μF 【注】 Cin = 15 pF 20 pF 数値は参考値 図 20.11 アナログ入力回路の例 645 20. 646 A/D 変換器 21. RAM 第 21 章 21.1 目次 概要 ....................................................................................................................................... 649 21.1.1 ブロック図 ............................................................................................ 649 21.1.2 レジスタ構成 ......................................................................................... 649 21.2 システムコントロールレジスタ(SYSCR) .............................................................................. 650 21.3 動作説明................................................................................................................................. 651 21.3.1 拡張モード(モード 1、2、3(EXPE=1)) ........................................... 651 21.3.2 シングルチップモード(モード 2、3(EXPE=0))................................ 651 21. 648 RAM 21. RAM 21.1 概要 H8S /2148、H8S /2144、H8S /2143 は 4k バイト、H8S /2147、H8S /2147N、H8S /2142 は 2k バイトの高速スタティック RAM を内蔵しています。内蔵 RAM は、バスマスタと 16 ビッ ト幅のデータバスで接続されており、バイトデータ、ワードデータにかかわらず、1 ステ ートでアクセスできます。したがって、ワードデータの高速転送が可能です。 内蔵 RAM は、システムコントロールレジスタ(SYSCR)の RAM イネーブル(RAME) ビットにより有効または無効の制御が可能です。 21.1.1 ブロック図 RAM のブロック図を図 21.1 に示します。 内部データバス(上位8ビット) 内部データバス(下位8ビット) H'FFE080 H'FFE081 H'FFE082 H'FFE083 H'FFE084 H'FFE085 H'FFEFFE H'FFEFFF H'FFFF00 H'FFFF01 H'FFFF7E H'FFFF7F 図 21.1 RAM のブロック図( H8S/2148、H8S/2144、H8S/2143 の場合) 21.1.2 レジスタ構成 内蔵 RAM は、SYSCR で制御されます。レジスタ構成を表 21.1 に示します。 表 21.1 レジスタ構成 名 称 システムコントロールレジスタ 【注】 * 略称 R/W 初期値 アドレス* SYSCR R/W H'09 H'FFC4 アドレスの下位 16 ビットを示しています。 649 21. RAM 21.2 システムコントロールレジスタ(SYSCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CS2E IOSE INTM1 INTM0 XRST NMIEG HIE RAME 0 0 0 0 1 0 0 1 R/W R/W R R/W R R/W R/W R/W 内蔵 RAM は SYSCR の RAME ビットにより、有効/無効が選択されます。なお、SYSCR のその他 のビットについて の詳細は「3 .2 .2 システムコント ロールレジスタ」 を参照し てください。 ビット 0:RAM イネーブル(RAME) 内蔵 RAM の有効または無効を選択します。RAME ビットはリセット状態の解除時に初 期化されます。ソフトウェアスタンバイモードでは初期化されません。 ビット 0 説 明 RAME 650 0 内蔵 RAM 無効 1 内蔵 RAM 有効 (初期値) 21. RAM 21.3 動作説明 21.3.1 拡張モード(モード 1、2、3(EXPE=1)) RAME ビットが 1 にセットされているとき、H8S/2148,H8S/2144,H8S/2143 ではアドレス H'(FF)E080〜H'(FF)EFFF および H'(FF)FF00〜H'(FF)FF7F、H8S/2147、H8S/2147N、H8S/2142 ではアドレス H'(F F) E880〜H'(F F) EFF F および H'(F F) FF 00〜H'(F F) FF 7F をアクセスすると 内蔵 R AM がアクセスされます。また、R AME ビットが 0 にクリアされているときは、ア ドレス H'(F F) E080〜H'(F F) EFF F および H'(F F) FF 00〜H'(F F) FF 7F をアクセスすると外部ア ドレス空間がアクセスされます。 内蔵 RAM は、バスマスタと 16 ビット幅のデータバスで接続されており、バイト単位、 ワード単位のリード/ライトが可能です。いずれも、1 ステートでアクセスできます。 偶数番地が上位 8 ビット、奇数番地が下位 8 ビットに接続されています。ワードデータ は、偶数番地から始まるデータに限定されています。 21.3.2 シングルチップモード(モード 2、3(EXPE=0)) RAME ビットが 1 にセットされているとき、H8S/2148,H8S/2144,H8S/2143 ではアドレス H'(FF)E080〜H'(FF)EFFF および H'(FF)FF00〜H'(FF)FF7F、H8S/2147、H8S/2147N、H8S/2142 ではアドレス H'(F F) E880〜H'(F F) EFF F および H'(F F) FF 00〜H'(F F) FF 7F をアクセスすると 内蔵 R AM がアクセスされます。また、R AME ビットが 0 にクリアされているときは、内 蔵 RAM はアクセスされません。リードすると不定値がリードされ、ライトは無効です。 内蔵 RAM は、バスマスタと 16 ビット幅のデータバスで接続されており、バイト単位、 ワード単位のリード/ライトが可能です。いずれも、1 ステートでアクセスできます。 偶数番地が上位 8 ビット、奇数番地が下位 8 ビットに接続されています。ワードデータ は、偶数番地から始まるデータに限定されています。 651 21. 652 RAM 22. ROM マスク ROM 版, H8S/2148 F-ZTAT, H8S/2147N F-ZTAT, H8S/2144 F-ZTAT, H8S/2142 F-ZTAT 第 22 章 22.1 22.2 目次 概要 ....................................................................................................................................... 655 22.1.1 ブロック図 ............................................................................................ 655 22.1.2 レジスタ構成 ......................................................................................... 655 レジスタの説明....................................................................................................................... 656 22.2.1 モードコントロールレジスタ(MDCR) ................................................. 656 22.3 動作説明................................................................................................................................. 657 22.4 フラッシュメモリの概要 ......................................................................................................... 658 22.5 22.4.1 特長 ...................................................................................................... 658 22.4.2 ブロック図 ............................................................................................ 659 22.4.3 フラッシュメモリの動作モード .............................................................. 660 22.4.4 端子構成................................................................................................ 664 22.4.5 レジスタ構成 ......................................................................................... 664 フラッシュメモリのレジスタの説明......................................................................................... 665 22.5.1 フラッシュメモリコントロールレジスタ 1(FLMCR1) ........................... 665 22.5.2 フラッシュメモリコントロールレジスタ 2(FLMCR2) ........................... 667 22.5.3 消去ブロック指定レジスタ 1、2(EBR1、EBR2).................................... 669 22.5.4 シリアルタイマコントロールレジスタ(STCR) ..................................... 670 22. ROM 22.6 22.7 22.8 オンボードプログラミングモード ............................................................................................ 671 22.6.1 ブートモード ......................................................................................... 672 22.6.2 ユーザプログラムモード ........................................................................ 678 フラッシュメモリの書き込み/消去......................................................................................... 679 22.7.1 プログラムモード .................................................................................. 679 22.7.2 プログラムベリファイモード.................................................................. 680 22.7.3 イレースモード...................................................................................... 682 22.7.4 イレースベリファイモード ..................................................................... 682 フラッシュメモリのプロテクト ............................................................................................... 685 22.8.1 ハードウェアプロテクト ........................................................................ 685 22.8.2 ソフトウェアプロテクト ........................................................................ 685 22.8.3 エラープロテクト .................................................................................. 686 22.9 フラッシュメモリの書き込み/消去時の割込み処理 .................................................................... 687 22.10 フラッシュメモリのライタモード ............................................................................................ 688 22.10.1 ライタモードの設定 ............................................................................... 688 22.10.2 ソケットアダプタとメモリマップ ........................................................... 688 22.10.3 ライタモードの動作 ............................................................................... 689 22.10.4 メモリ読み出しモード............................................................................ 691 22.10.5 自動書き込みモード ............................................................................... 694 22.10.6 自動消去モード...................................................................................... 696 22.10.7 ステータス読み出しモード ..................................................................... 697 22.10.8 ステータスポーリング............................................................................ 698 22.10.9 ライタモードへの遷移時間 ..................................................................... 699 22.10.10 メモリ書き込み注意事項 ........................................................................ 699 22.11 フラッシュメモリの書き込み/消去時の注意 ........................................................................... 700 22.12 F-ZTAT マイコンのマスク ROM 化時の注意事項 ....................................................................... 702 654 22. ROM 22.1 概要 H8S/2148、H8S/2144 は 128k バイト、H8S/2143 は 96k バイト、H8S/2147、H8S/2147N、 H8S/2142 は 64k バイトの ROM(フラッシュメモリまたはマスク ROM)を内蔵しています。 ROM は、バスマスタと 16 ビット幅のデータバスで接続されており、バイトデータ、ワー ドデータにかかわらず、1 ステートでアクセスできます。命令フェッチを高速化し、処理 速度を向上しています。 内蔵 ROM の有効または無効の設定は、モード端子(MD1、MD0)および MDCR の EXPE ビットにより行います。 H8S/2148、H8S/2147N、H8S/2144、H8S/2142 のフラッシュメモリ版は、PROM ライタを 用いて書き込み・消去ができるほか、オンボードでの消去・書き換えが可能です。 22.1.1 ブロック図 ROM のブロック図を図 22.1 に示します。 内部データバス(上位8ビット) 内部データバス(下位8ビット) H'000000 H'000001 H'000002 H'000003 H'01FFFE H'01FFFF 図 22.1 ROM のブロック図(H8S/2148、H8S/2144 の場合) 22.1.2 レジスタ構成 本 LS I の動作モードは、モード端子と MDC R で制御されます。レジスタ構成を表 2 2.1 に示します。 表 22.1 レジスタ構成 名 称 モードコントロールレジスタ 略称 R/W 初期値 アドレス* MDCR R/W 不定 H'FFC5 動作モードにより異なります 【注】 * アドレスの下位 16 ビットを示しています。 655 22. ROM 22.2 レジスタの説明 22.2.1 モードコントロールレジスタ(MDCR) ビット : 初期値 : R/W : 【注】 * 7 6 5 4 3 2 1 0 EXPE − − − − − MDS1 MDS0 −* 0 0 0 0 0 −* −* R/W* − − − − − R R MD1〜MD0端子により決定されます。 MDCR は 8 ビットのリード専用レジスタで、本 LSI の動作モードの設定および現在の動 作モードをモニタするのに用います。 EXP E ビットは、リセットまたはハードウェアスタンバイモード時に、モード端子の状 態に関連付けられて初期化されます。 ビット 7:拡張モードイネーブル(EXPE) 拡張モードを設定します。モード 1 の場合、1 に固定されており、ライトは無効です。 モード 2、3 の場合、初期値は 0 で、リード/ライト可能です。 ビット 7 説 明 EXPE 0 シングルチップモードを選択 1 拡張モードを選択 ビット 6〜2:リザーブビット リードすると常に 0 が読み出されます。ライトは無効です。 ビット 1〜0:モードセレクト 1〜0(MDS1〜MDS0) モード端 子(MD1〜MD0)の 入力レベルを反 映した値(現在 の動作モード) を示して います。MDS1〜MDS0 ビットは MD1〜MD0 端子にそれぞれ対応します。これらのビット はリード専用でライ トは無効です。MDC R をリードすると、モ ード端子(MD1〜MD0) の入力レベルがこれらのビットにラッチされます。 656 22. ROM 22.3 動作説明 内蔵 R OM は、C PU と 16 ビット幅のデータバスで接続されており、バイトデータ、ワ ードデータにかかわらず、1 ステートでアクセスできます。偶数番地が上位 8 ビット、奇 数番地が下位 8 ビットに接続されています。ワードデータは偶数番地から始まるデータに 限定されています。 内蔵 ROM の有効または無効の設定はモード端子(MD1、MD0)および MDCR の EXPE ビットにより行います。この設定を表 22.2 に示します。 ノーマルモードのとき、使用できる ROM は最大 56k バイトになります。 表 22.2 動作モードと ROM 動作モード MCU 動作 CPU 動作 モード モード モード 1 ノーマル モード端子 MDCR 内容 MD1 内蔵 ROM 無効拡張モード 0 1 1 無効 1 0 0 有効* モード 2 アドバンスト シングルチップモード MD0 EXPE アドバンスト 内蔵 ROM 有効拡張モード モード 3 ノーマル ノーマル 【注】 * 内蔵 ROM シングルチップモード 内蔵 ROM 有効拡張モード 1 1 0 有効 1 (最大 56k バイト) H8S/2148、H8S/2144 は 128k バイト、 H8S/2143 は 96k バイト、H8S/2147、 H8S/2147N、 H8S/2142 は 64k バイトです。 657 22. ROM 22.4 フラッシュメモリの概要 22.4.1 特長 フラッシュメモリの特長を以下に示します。 ■フラッシュメモリの 4 種類の動作モード ・プログラムモード ・イレースモード ・プログラムベリファイモード ・イレースベリファイモード ■書き込み/消去方式 書き込みは 32 バイト同時書き込みを行います。消去はブロック分割消去(1 ブロック 単位)で行います。複数ブロックを消去する場合は、必ず各ブロック単位で順次消去 を行ってください。ブロック分割消去では、1k バイト、28k バイト、16k バイト、8k バイト、32k バイトのブロック単位で任意に設定することができます。 ■書き込み/消去時間 フラッシュメモリの書き込み時間は、32 バイト同時書き込みにて 10ms(typ.)、1 バ イトあたり換算にて 300 μ s(typ.)、消去時間は、ブロックあたり 100ms(typ.)です。 ■書き換え回数 フラッシュメモリの書き換えは、100 回まで可能です。 ■オンボードプログラミングモード オンボードでフラッシュメモリの書き込み/消去/ベリファイを行う 2 種類のモード があります。 ・ブートモード ・ユーザプログラムモード ■ビットレート自動合わせ込み ブートモードでデータ転送時、ホストの転送ビットレートと本 LS I のビットレートを 自動で合せることができます。 ■プロテクトモード ハードウェアプロテクトモード、ソフトウェアプロテクトモードとエラープロテクト の 3 種類のモードがあり、フラッシュメモリの書き込み/消去/ベリファイのプロテ クト状態を設定することができます。 ■ライタモード フラッシュメモリの書き込み/消去可能なモードとして、オンボードプログラミング モード以外に PROM ライタを用いたライタモードがあります。 658 22. ブロック図 内部アドレスバス 内部データバス(16ビット) FLMCR1 モジュールバス 22.4.2 ROM FLMCR2 EBR1 EBR2 * * バスインタフェース/制御部 動作 モード モード端子 * * フラッシュメモリ (128kバイト/64kバイト) 【記号説明】 FLMCR1:フラッシュメモリコントロールレジスタ1 FLMCR2:フラッシュメモリコントロールレジスタ2 EBR1 :消去ブロック指定レジスタ1 EBR2 :消去ブロック指定レジスタ2 【注】* これらのレジスタはフラッシュメモリ版専用のレジスタです。マスクROM版では、 当該アドレスをリードすると不定値が読み出され、ライトも無効です。 図 22.2 フラッシュメモリのブロック図 659 22. ROM 22.4.3 フラッシュメモリの動作モード (1)モード遷移図 リセット状 態で各モード端子を 設定し、リセットス タートすると、マイ コンは図 2 2.3 に示すような各動作モードへ遷移します。ユーザモードではフラッシュメモリの読み出し はできますが、フラッシュメモリの書き込み/消去はできません。 フラッシュメモリへの書き込み/消去を行えるモードとして、ブートモード、ユーザプ ログラムモード、ライタモードがあります。 リセット状態 =1 MD1 内蔵ROM有効 ユーザモード =0 RES RES=0 *2 RES=0 SWE=0 RE SWE=1 S= 0 *1 ライタモード ユーザ プログラム モード ブートモード オンボードプログラムモード 図 22.3 フラッシュメモリに関する状態遷移 660 【注】ユーザモード/ユーザプログラムモード間 での遷移は、CPUがフラッシュメモリをア クセスしていない状態で行ってください。 *1: MD0=MD1=0、 P92=P91=P90=1 *2: MD0=MD1=0、 P92=0、P91=P90=1 22. ROM (2)オンボードプログラムモード (a)ブートモード 1. 初期状態 2. SCI通信チェック フラッシュメモリは、工場出荷時は消去状態です。 ここでは、旧バージョンのアプリケーションプログ ラムあるいはデータを書き直す場合について説明し ます。書き込み制御プログラムおよび新アプリケー ションプログラムはユーザがあらかじめホストに用 意してください。 ブートモードに遷移すると本LSI内のブートプログ ラム(既にLSIに内蔵されている)が起動し、SCI通 信チェックを行い、フラッシュメモリの消去に必 要なブートプログラムがRAMのブートプログラム エリアに自動的に転送されます。 〈ホスト〉 !" 〈ホスト〉 書き込み制御プログラム 書き込み制御プログラム 新アプリケーション プログラム 新アプリケーション プログラム 〈本LSI〉 〈本LSI〉 SCI ブートプログラム 〈フラッシュメモリ〉 〈RAM〉 SCI ブートプログラム 〈フラッシュメモリ〉 〈RAM〉 ブートプログラムエリア アプリケーション プログラム (旧バージョン) アプリケーション プログラム (旧バージョン) 3. フラッシュメモリの初期化 4. 新アプリケーションプログラムの書き込み ブートプログラムエリア(RAM内)にある消去プロ グラムを実行し、フラッシュメモリを初期化(H'FF) します。ブートモード時は、ブロックに関係なくフラ ッシュメモリを全面消去します。 ホストにある書き込み制御プログラムをRAMに SCI通信で転送し、これを実行して、ホストにある 新アプリケーションプログラムをフラッシュメモリ に書き込みます。 〈ホスト〉 〈ホスト〉 書き込み制御プログラム 新アプリケーション プログラム 〈本LSI〉 〈本LSI〉 ブートプログラム 〈フラッシュメモリ〉 SCI 〈RAM〉 ブートプログラム 〈フラッシュメモリ〉 ブートプログラムエリア フラッシュメモリの イレース SCI 〈RAM〉 書き込み制御プログラム 新アプリケーション プログラム プログラム実行状態 図 22.4 ブートモード 661 22. ROM (b)ユーザプログラムモード 1. 初期状態 2. 書き込み/消去制御プログラムの転送 フラッシュメモリ内の転送プログラムを実行して、 書き込み/消去制御プログラムをRAMに転送します。 , ! (1)書き込み/消去制御プログラムを内蔵RAM に転送するプログラムは、あらかじめユーザがフ ラッシュメモリに書き込んでおいてください。 (2)書き込み/消去制御プログラムはホス トまたはフラッシュメモリに用意してください。 〈ホスト〉 〈ホスト〉 書き込み/消去制御プログラム 新アプリケーション プログラム 新アプリケーション プログラム 〈本LSI〉 〈本LSI〉 SCI ブートプログラム 〈フラッシュメモリ〉 〈RAM〉 転送プログラム SCI ブートプログラム 〈フラッシュメモリ〉 〈RAM〉 転送プログラム 書き込み/消去制御プログラム アプリケーション プログラム (旧バージョン) アプリケーション プログラム (旧バージョン) 3. フラッシュメモリの初期化 4. アプリケーションプログラムの書き込み RAM上の書き込み/消去制御プログラムを実行し、 フラッシュメモリを初期化(H'FF)します。消去は、 ブロック単位で行えます。バイト単位の消去はでき ません。 次にホストにある新アプリケーションプログラムを消去 したフラッシュメモリのブロックに書き込みます。消去 されていないブロックに対する書き込みは行わないでく ださい。 〈ホスト〉 〈ホスト〉 新アプリケーション プログラム 〈本LSI〉 〈本LSI〉 ブートプログラム 〈フラッシュメモリ〉 SCI 〈RAM〉 転送プログラム ブートプログラム 〈フラッシュメモリ〉 SCI 〈RAM〉 転送プログラム 書き込み/消去制御プログラム フラッシュメモリの イレース 書き込み/消去制御プログラム 新アプリケーション プログラム プログラム実行状態 図 22.5 ユーザプログラムモード(例) 662 22. ROM (3)ブートモードとユーザプログラムモードの相違点 ブートモード ユーザプログラムモード 全面消去 ○ ○ ブロック分割消去 × ○ (2) (1)(2) 書き換え制御プログラム* (1)イレース/イレースベリファイ (2)プログラム/プログラムベリファイ 【注】 * 推奨するアルゴリズムに沿って、ユーザ側で用意してください。 (4)ブロック分割法 32k バイト(2 ブロック:128k バイト版のみ)、8k バイト(2 ブロック)、16k バイト(1 ブロック)、28k バイト(1 ブロック)、1k バイト(4 ブロック)に分割されています。 アドレスH'00000 1kバイト 1kバイト 1kバイト 1kバイト 128kバイト 28kバイト 16kバイト 8kバイト 8kバイト アドレスH'00000 64kバイト 32kバイト アドレスH'0FFFF (a)128kバイト版 28kバイト 16kバイト 32kバイト アドレスH'1FFFF 1kバイト 1kバイト 1kバイト 1kバイト 8kバイト 8kバイト (b)64kバイト版 図 22.6 フラッシュメモリのブロック分割 663 22. ROM 22.4.4 端子構成 フラッシュメモリは表 22.3 に示す端子により制御されます。 表 22.3 端子構成 端子名 22.4.5 略 称 入出力 機 能 リセット RES 入力 リセット モード 1 MD1 入力 本 LSI の動作モードを設定 モード 0 MD0 入力 本 LSI の動作モードを設定 ポート 92 P92 入力 MD1=MD0=0 の場合に、本 LSI の動作モードを設定 ポート 91 P91 入力 MD1=MD0=0 の場合に、本 LSI の動作モードを設定 ポート 90 P90 入力 MD1=MD0=0 の場合に、本 LSI の動作モードを設定 トランスミットデータ TxD1 出力 シリアル送信データ出力 レシーブデータ RxD1 入力 シリアル受信データ入力 レジスタ構成 内蔵フ ラッシュメ モリが有効の ときのフラ ッシュメモ リをコントロ ールするレ ジスタ を表 2 2.4 に示します。本レジスタをアクセスするためには、S TCR の F LSHE ビットを 1 にセットする必要があります。 表 22.4 レジスタ構成 名 略 称 R/W 初期値 アドレス* 1 フラッシュメモリコントロールレジスタ 1 FLMCR1* 5 R/W* 3 H'80 H'FF80* 2 フラッシュメモリコントロールレジスタ 2 FLMCR2* 5 R/W* 3 H'00* 4 H'FF81* 2 消去ブロック指定レジスタ 1 EBR1* 5 R/W* 3 H'00* 4 H'FF82* 2 消去ブロック指定レジスタ 2 EBR2* 5 R/W* 3 H'00* 4 H'FF83* 2 シリアルタイマコントロールレジスタ STCR R/W H'00 H'FFC3 【注】 664 称 *1 アドレスの下位 16 ビットを示しています。 * 2 フラ ッシュメモリ のレジスタ は、他のレ ジスタと同じ アドレスに 割り当てられ ていま す。 それぞれ のレジ スタの選 択はシ リアルタ イマコ ントロー ルレジ スタ(ST CR )の FLSHE ビットで行います。 * 3 内蔵フラッシュメモリが無効のモードのときは、リードすると H' 00 が読み出され、ラ イトも無効となります。 *4 FLMCR1 の SWE ビットがセットされていないときは H'00 に初期化されます。 * 5 FL MCR 1、FL MCR 2、EBR 1、EBR 2 は 8 ビットのレジスタです。バイトアクセスのみ 有効で、2 ステートアクセスとなります。また、これらのレジスタはフラッシュメモリ 版専用のレジスタです。マスク ROM 版では、当該アドレスをリードすると不定値が読 み出され、ライトも無効です。 22. ROM 22.5 フラッシュメモリのレジスタの説明 22.5.1 フラッシュメモリコントロールレジスタ 1(FLMCR1) ビット : 7 6 5 4 3 2 1 0 FWE SWE − − EV PV E P 初期値 : 1 0 0 0 0 0 0 0 : R R/W − − R/W R/W R/W R/W R/W F LMCR 1 は、フラッシュメモリの各動作モー ドを制御する 8 ビットのレジスタです。 SWE=1 にして対応するビットをセットすることにより、プログラムベリファイモード、 イレースベリファイモードに遷移します。プログラムモードへ遷移するには、SWE=1 に セットし、FLMCR2 の PSU ビットをセットした後、P ビットをセットします。イレースモ ードへ遷移するには、SWE=1 にセットし、FLMCR2 の ESU ビットをセットした後、E ビ ットをセットします。FLMCR1 は、リセット、ハードウェアスタンバイモード、ソフトウ ェアスタンバイモード、サブアクティブモード、サブスリープモード、ウォッチモードで H'80 に初期化 されます。内蔵フラ ッシュメモリが無効の モードのときは、リ ードすると H'00 が読み出され、ライトも無効となります。 また、FLMCR1 の EV、PV ビットへのライトは SWE=1 のとき、E ビットへのライトは SWE=1、ESU=1 のとき、P ビットへのライトは SWE=1、PSU=1 のときのみ有効です。 ビット 7:フラッシュライトイネーブル(FWE) 内蔵フラッシュメモリの書き込み/消去を制御するビットです。本製品では、リードす ると常に 1 が読み出されます。ライトは無効です。 ビット 6:ソフトウェアライトイネーブル(SWE) フラッシュメモリの書き込みの有効または無効を選択するビットです(ESU、PSU、EV、 P V、E、P 、EB 9〜EB 0 ビ ットの設定前にセットしてください。ま た、これらのビットと 同時にクリアしないでください)。 ビット 6 説 明 SWE 0 書き込み無効 1 書き込み有効 (初期値) ビット 5〜4:リザーブビット リザーブビットです。リードすると常に 0 が読み出されます。ライトは無効です。 665 22. ROM ビット 3:イレースベリファイ(EV) イレースベリファイモードへの遷移、解除を選択するビットです(SWE、ESU、PSU、 PV、E、P ビットを同時に設定しないでください)。 ビット 3 説 明 EV 0 イレースベリファイモードを解除 1 イレースベリファイモードに遷移 (初期値) [セット条件]SWE=1 のときにセット可 ビット 2:プログラムベリファイ(PV) プログラムベリファイモードへの遷移、解除を選択するビットです(SWE、ESU、PSU、 EV、E、P ビットを同時に設定しないでください)。 ビット 2 説 明 PV 0 プログラムベリファイモードを解除 1 プログラムベリファイモードに遷移 (初期値) [セット条件]SWE=1 のときにセット可 ビット 1:イレース(E) イレースモードへの遷移、解除を選択するビットです(SWE、ESU、PSU、EV、PV、 P ビットを同時に設定しないでください)。 ビット 1 説 明 E 0 イレースモードを解除 1 イレースモードに遷移 [セット条件] SWE=1、ESU=1 のときにセット可 666 (初期値) 22. ROM ビット 0:プログラム(P) プログラムモードへの遷移、解除を選択するビットです(SWE、PSU、ESU、EV、PV、 E ビットを同時に設定しないでください)。 ビット 0 説 明 P 0 プログラムモードを解除 1 プログラムモードに遷移 (初期値) [セット条件] SWE=1、PSU=1 のときにセット可 22.5.2 フラッシュメモリコントロールレジスタ 2(FLMCR2) 7 6 5 4 3 2 1 0 FLER − − − − − ESU PSU 初期値 : 0 0 0 0 0 0 0 0 R/W R − − − − − R/W R/W ビット : : FLMCR2 は、フラッシュメモリへの書き込み/消去プロテクト(エラープロテクト)の 有無のモニタと、フラッシュメモリのプログラム/イレースモードへのセットアップを行 う 8 ビットのレジスタです。F LMCR 2 は、リセ ット、ハードウェアスタンバイモードで H'00 に初期化されます。また、ES U ビット、P SU ビットは、ソフトウェアスタンバイモ ード、サブアクティブモード、サブスリープモード、ウォッチモードでも 0 にクリアされ ます。 内蔵フラッシュメモリが無効のモードのときは、リードすると H'00 が読み出され、ラ イトも無効となります。 ビット 7:フラッシュメモリエラー(FLER) フラッシュメモリ動作中(書き込み、消去)にエラーが発生したことを示すビットです。 FLER=1 に設定されると、フラッシュメモリはエラープロテクトに遷移します。 ビット 7 説 明 FLER 0 フラッシュメモリは正常に動作しています。 フラッシュメモリへの書き込み/消去プロテクト(エラープロテクト)が無効 [クリア条件]リセット、ハードウェアスタンバイモードのとき 1 (初期値) フラッシュメモリへの書き込み/消去中にエラーが発生したことを示します。 フラッシュメモリへの書き込み/消去プロテクト(エラープロテクト)が有効 [セット条件]「22.8.3 エラープロテクト」参照 667 22. ROM ビット 6〜2:リザーブビット リザーブビットです。リードすると常に 0 が読み出されます。ライトは無効です。 ビット 1:イレースセットアップ(ESU) イレースモードへの遷移の準備をするビットです。FLMCR1 の E ビットを 1 にセットす る前に 1 にセットしてください。(SWE、PSU、EV、PV、E、P ビットを同時に設定しな いでください) ビット 1 説 明 ESU 0 イレースセットアップ解除 1 イレースセットアップ (初期値) [セット条件]SWE=1 のときにセット可 ビット 0:プログラムセットアップ(PSU) プログラムモードへの遷移の準備をするビットです。FLMCR1 の P ビットを 1 にセット する前に 1 にセットしてください。(SWE、ESU、EV、PV、E、P ビットを同時に設定し ないでください) ビット 0 説 明 PSU 0 プログラムセットアップ解除 1 プログラムセットアップ [セット条件]SWE=1 のときにセット可 668 (初期値) 22. 22.5.3 ROM 消去ブロック指定レジスタ 1、2(EBR1、EBR2) ビット : 7 6 5 4 3 2 1 0 EB8/−*2 0 EBR1 − − − − − − EB9/−*2 初期値 : 0 0 0 0 0 0 0 : − − − − − − R/W ビット : EBR2 初期値 : R/W : R/W*1*2 R/W*1*2 7 6 5 4 3 2 1 0 EB7 EB6 EB5 EB4 EB3 EB2 EB1 EB0 0 0 0 0 0 0 0 0 R/W*1 R/W R/W R/W R/W R/W R/W R/W 【注】*1 ノーマルモードの場合は0が読み出され、ライトは無効です。 *2 64kバイト版にEB8、EB9ビットはありません。本ビットは1にセットしないでください。 フラッシュメモリの消去エリアをブロックごとに設定するレジスタで、EB R1 のビット 1〜0(128k バイト版のみ)、EB R2 のビット 7〜0 について R /W 可能です。EB R1、EB R2 は、リセット、ハードウェアスタンバイモード、ソフトウェアスタンバイモード、サブア クティブモード、サブスリープモード、ウォッチモードおよび FLMCR1 の SWE ビットが 設定されていないときは、それぞれ H'00 に初期化されます。EBR1、EBR2 の各ビットに 1 をセットすると、対応するブロックが消去可能となります。それ以外のブロックは、消去 プロテクト状態になります。EBR1、EBR2 は 1 ビットのみ設定してください(2 ビット以上 を設定しないでください)。内蔵フラッシュメモリが無効のモードのときは、リードする とそれぞれ H'00 が読み出され、ライトも無効となります。 フラッシュメモリのブロック分割方法は、表 22.5 を参照してください。 表 22.5 消去ブロックの分割 ブロック(サイズ) 128k バイト版 アドレス 64k バイト版 EB0(1k バイト) EB0(1k バイト) H'(00)0000〜H'(00)03FF EB1(1k バイト) EB1(1k バイト) H'(00)0400〜H'(00)07FF EB2(1k バイト) EB2(1k バイト) H'(00)0800〜H'(00)0BFF EB3(1k バイト) EB3(1k バイト) H'(00)0C00〜H'(00)0FFF EB4(28k バイト) EB4(28k バイト) H'(00)1000〜H'(00)7FFF EB5(16k バイト) EB5(16k バイト) H'(00)8000〜H'(00)BFFF EB6(8k バイト) EB6(8k バイト) H'(00)C000〜H'(00)DFFF EB7(8k バイト) EB7(8k バイト) H'00E000〜H'00FFFF EB8(32k バイト) − H'010000〜H'017FFF EB9(32k バイト) − H'018000〜H'01FFFF 669 22. ROM 22.5.4 シリアルタイマコントロールレジスタ(STCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IICS IICX1 IICX0 IICE FLSHE ― ICKS1 ICKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W S TCR は 8 ビットのリー ド/ライト可能なレジスタで、レジスタ アクセスの制御、II C の動作モードの制御(IIC 内蔵オプションの場合)、内蔵フラッシュメモリの制御(F-ZTAT 版の場合)、TCNT の入力クロックの選択を行います。内蔵フラッシュメモリ以外の詳細 は、「3.2.4 シリアルタイマコントロールレジスタ(STCR)」および各モジュールの説 明を参照してください。STCR で制御するモジュールを使用しない場合は、当該ビットに 1 をライトしないでください。 S TCR はリセットまたはハードウェアスタ ンバイモード時に H'00 にイニシャライズさ れます。 ビット 7〜4:I 2 C コントロール(IICS、IICX1、IICX0、IICE) IIC 内蔵オプションの場合、I2C バスインタフェースの動作を制御するビットです。詳し くは「第 16 章 I 2 C バスインタフェース」を参照してください。 ビット 3:フラッシュメモリコントロールレジスタイネーブル(FLSHE) FLSHE ビットを 1 にセットすると、フラッシュメモリの制御レジスタをリード/ライト することができます。0 にクリアするとフラッシュメモリの制御レジスタは非選択となり ます。このとき、フラッシュメモリ制御レジスタの内容は保持されています。 ビット 3 説 明 FLSHE 0 フラッシュメモリの制御レジスタは非選択状態 1 フラッシュメモリの制御レジスタは選択状態 (初期値) ビット 2:リザーブビット リザーブビットです。1 にセットしないでください。 ビット 1、0:インターナルクロックソースセレクト 1、0(ICKS1、ICKS0) 8 ビットタイマの動作を制御するビットです。詳しくは「第 1 2 章 を参照してください。 670 8 ビットタイマ」 22. ROM 22.6 オンボードプログラミングモード オンボードプログラミングモードに設定すると、内蔵フラッシュメモリへの書き込み/ 消去/ベリファイを行うことができます。オンボードプログラミングモードには、ブート モードとユーザプログラムモードの 2 種類の動作モードがあり、各モードへ遷移する端子 の設定方法は、表 2 2.6 を参照してください。また、フラッシュメモリに関する各モード への状態遷移図を図 22.3 に示します。 ブートモードは、アドバンストモードの設定のみ可能です。 ユーザプログラムモ ードは、MD0 端子の設定により、アドバン ストモードまたはノー マルモードの設定が可能です。ノーマルモードでは 56k バイト分のフラッシュメモリの書 き換えのみ可能です。 表 22.6 オンボードプログラミングモードの設定方法 モード モード名 端子 CPU 動作モード MD1 MD0 P92 P91 P90 ブートモード アドバンストモード 0 0 1* 1* 1* ユーザプログラム アドバンストモード 1 0 − − − モード ノーマルモード 【注】 * 1 ブートモード起動後は I/O ポートとして使用できます。 671 22. ROM 22.6.1 ブートモード ブートモードを使用する場合は、フラッシュメモリへの書き込み制御プログラムをホス トに準備しておく必要があります。また、使用する SCI のチャネル 1 は調歩同期式モード に設定されています。 本 LSI の端子をブートモードに設定後リセットスタートすると、あらかじめマイコン内 に組み込まれているブートプログラムが起動され、ホストに用意した書き込み制御プログ ラムが、S CI を使って本 LS I へ順次送信されます。本 LS I では、S CI で受信した書き込み 制御プログラムを内蔵 R AM の書き込み制御プログラムエリアに書き込みます。転送終了 後書き込み制御プログラムエリアの先頭アドレスに分岐し、書き込み制御プログラム実行 状態となります(フラッシュメモリの書き込みを行います)。 したがって、転送する書き込み制御プログラムには、後述の書き込みアルゴリズムに沿 ったプログラムを準備してください。 図 2 2.7 にブートモード時のシステム構成図、図 2 2.8 にブートモード実行手順を示しま す。 本LSI フラッシュメモリ ホスト 書き込みデータの受信 ベリファイデータの送信 図 22.7 ブートモード時のシステム構成図 672 RxD1 SCI1 TxD1 内蔵RAM 22. ROM 開始 端子をブートモードに設定し、リ セットスタートする ホストは、所定のビットレートで データ(H'00)を連続送信する 本LSIは、ホストの送信するデー タH'00のLow期間を測定する 本LSIは、ビットレートを計算し、 ビットレートレジスタに値を設定 する 本LSIは、ビットレート調整終了後、 調整終了の合図としてデータH'00 をホストへ1バイト送信する ホストは、ビットレート調整終了の合 図 (H'00) を正常に受信したことを確 認し、データH'55を1バイト送信する 本LSIは、H'55受信後、ブートプ ログラムの一部をRAMに転送する フラッシュメモリのデータをチェ ックし、既にデータが書き込まれ ていた場合は全ブロック消去する 本LSIは、フラッシュメモリの全デー タが消去されたことを確認後、ホス トへH'AAを1バイト送信する ホストは、ユーザプログラムのバ イト数(N)を上位バイト、下位 バイトの順で送信する 本LSIは、受信したバイト数をベ リファイデータとして、ホストへ 送信(エコーバック)する n=1 ホストは、順次ユーザプログラム をバイト単位で送信する 本LSIは、受信したユーザプログラム をベリファイデータとして、ホストへ 送信(エコーバック)する n+1→n 受信した書き込み制御プログラム を内蔵RAMに転送する n=N? No Yes 送信終了 ホストへH'AAを1バイト送信し、 内蔵RAMに転送された書き込み制 御プログラムを実行する 【注】 メモリセルが正常に動作せず消去できなかった場合は、消去エラー としてH'FFを1バイト送信し、消去動作とそれ以降の動作を停止します。 図 22.8 ブートモード実行手順 673 22. ROM (1)SCI ビットレートの自動合わせ込み動作 スタート D0 ビット D1 D2 D3 D4 D5 D6 Low期間(9ビット分)を測定(データH'00) D7 ストップ ビット 1ビット以上 のHigh期間 図 22.9 SCI ビットレート自動合わせ込み時の RxD1 入力信号 ブートモードが起動すると、本 LSI はホストより連続送信される調歩同期式 SCI 通信の データ(H'00)の Low 期間を測定します。この時の SCI 受信/送信フォーマットを「8 ビ ットデータ、1 ストップビット、パリティなし」に設定してください。本 LS I は、測定し た Low 期間よりホストの送信するビットレー トを計算し、ビット調整終了合図としてホ ストへ H'00 を 1 バイト送信します。ホストは、この調整終了合図(H'00)を正常に受信し たことを確認し、本 LSI へ H'55 を 1 バイト送信してください。受信が正常に行われなかっ た場合は、再度ブートモードを起動し(リセット)、上述の操作を行ってください。ホス トが送信するビットレート、および本 LSI のシステムクロックの周波数によってホストと 本 LSI のビットレートに誤差が生じます。正常に SCI を動作させるために、ホストの転送 ビットレートを 2400bps、4800bps、9600bps に設定してください。 ホストの転送ビットレートと本LSIのビットレートの自動合わせ込みが可能なシステム クロックの周波数を表 2 2.7 に示します。このシステムクロックの範囲内でブートプログ ラムを実行してください。 表 22.7 本 LSI のビットレートの自動合わせ込みが可能なシステムクロックの周波数 ホストのビットレート 本 LSI のビットレートの自動合わせ込みが可能な システムクロックの周波数 674 9600bps 8MHz〜20MHz 4800bps 4MHz〜20MHz 2400bps 2MHz〜18MHz 22. ROM (2)ブートモード時の内蔵 RAM エリアの分割 ブートモードでは、H'(F F) FF 00〜H'(F F) FF 7F の 128 バイトは、図 2 2.10 に示すようにブ ートプログラムで使用するエリアとしてリザーブされています。書き込み制御プログラム を転送するエリアは H'(FF)E080〜H'(FF)EFFF の 3968 バイト(128k バイト版)、H'(FF)E880 〜H'(F F) EFF F の 1920 バイト(64k バイト版)です。ブートプログラムのエリアは、R AM 内に転送した書き込み制御プログラムが実行状態に遷移すると使用できます。スタックエ リアは必要に応じて設定してください。 H'(FF)E080 H'(FF)E880 書き込み制御 プログラムエリア (3968バイト) H'(FF)EFFF H'(FF)EFFF H'(FF)FF00 H'(FF)FF7F ブートプログラム* エリア (128バイト) (a)128kバイト版 【注】 * 書き込み制御 プログラムエリア (1920バイト) H'(FF)FF00 H'(FF)FF7F ブートプログラム* エリア (128バイト) (b)64kバイト版 RAM内に転送した書き込み制御プログラムが実行状態に遷移するまでブートプロ グラムエリアは使用できません。なお、書き込み制御プログラムに分岐後もRAM 内の本エリアにはブートプログラムがそのまま保持されていますので、注意して ください。 図 22.10 ブートモード時の RAM エリア 675 22. ROM (3)ブートモード使用時の注意事項 (a)本 LS I は、ブートモードでリセット解除すると、S CI の R xD1 端子の Low 期間を 測定します。R xD1 端子が High の状態でリセット解除してください。リセット解 除後、R xD1 端子から入力される Low 期間を測定できるようになるまで、本 LS I は約 100 ステート必要です。 (b)ブートモードは、フラッシュメモリに書き込まれているデータがある場合(全デ ータが 1 でないとき)、フラッシュメモリの全ブロックを消去します。本モード は、オンボー ド状態での初期の書き込み 、あるいは、ユーザプログ ラムモードで 起動するプロ グラムを誤って消去し、ユ ーザプログラムモードが実 行できなくな った場合の強制復帰等に使用してください。 (c)フラッシュメモリの書き込み中、あ るいは消去中に割り込みを使用することはで きません。 (d)RxD1 端子および TxD1 端子は、ボード上でプルアップして使用してください。 (e)本 LSIは、RAM 上にロードした書き込み制御プログラム(RAM エリアのH'(FF)E080 (128k バイト版)、H'(F F) E880(64k バイト版))に分岐するときに内蔵 S CI (チ ャネル 1)の送受信動作を終了(SCR の RE=0、TE=0)しますが、BRR には、合 わせ込んだビットレートの値を保持しています。 また 、このと きトラン スミット データ出 力端子 TxD1 は、High レ ベル出力 状態 (P84DDR=1、P84DR=1)となっています。 さらにこのとき、C PU 内蔵の汎用レジスタの値は不定です。このため書き込み制 御プログラムに分岐した直後に汎用レジスタの初期設定を必ず行ってください。 特にスタックポイン タ(S P)は、サブルーチンコール時など に暗黙的に使用され ますので、書 き込み制御プログラムで使 用するスタックエリアを必 ず指定してく ださい。 上記以外の内蔵レジスタについては、初期値が変更されるものはありません。 (f)ブートモードへの遷移は表 22.6 のモード設定にしたがって、端子を設定しリセッ トスタートすることにより可能です。 本 LS I はリセット解除時*1 にブートモードの設定であることを検出すると P 92、 P91、P90 は I/O ポートとして使用できます。 ブートモードを解除するには、リセット端子を Low レベルにしてから最低 20 ステ ート経過後、モード端子を設定し、リセット解除*1 してください。また、WDT の オーバフローリセットが発生した場合もブートモードを解除することが可能です。 676 22. ROM ブートモードの途中でモード端子の入力レベルを変化させないでください。 (g)リセット中にモード端子の入力レベルを変化(例えば Low レベル→High レベル) させると、マ イコンの動作モードが切り 替わることによりアドレス 兼用ポート、 およびバス制御出力信号(AS、RD、HWR)の状態が変化*2 します。 このため、こ れらの端子はリセット中に 出力信号とならないような 端子設定にす るか、マイコン外部の信号と衝突しないように注意してください。 【注】 *1 モード端子の入力はリセット解除のタイミングに対し、モードプログラミング セットアップ時間(tMDS=4 ステート)を満足する必要があります。 *2 アドレス兼用ポートは、リセット中にモード端子がモード 1 の設定になったと き、アドレスとして Low レベルを出力します。それ以外のモードではハイイン ピーダンス状態となります。また、バス制御出力信号は、リセット中にモード 端子がモード 1 の設定になったとき、High レベルを出力します。それ以外のモ ードではハイインピーダンス状態となります。 677 22. ROM 22.6.2 ユーザプログラムモード ユーザプログラムモードに設定すると、ユーザの書き込み/消去制御プログラムによる フラッシュメモリの書き込み、消去が可能になります。したがって、あらかじめ基板上に 書き換えデータ供給手段を設け、必要に応じてプログラムエリアの一部に書き込み/消去 制御プログラムを内蔵させておくことにより、内蔵フラッシュメモリのオンボード書き換 えを行うことができます。 本モードの設定では、内蔵フラッシュメモリの有効なモード 2、3 で起動します。この 状態の動作では、フラッシュメモリ以外の周辺機能はモード 2、3 と同じ動作をします。 フラッシュメモリへの書き込み/消去を行うために S WE ビットを 1 にセットしている 間は、フラッシュメモリ自身を読み出すことはできません。書き込み/消去を行う制御プ ログラムは、内蔵 RAM/外部メモリ上で実行するようにしてください。 図 2 2.11 に書き込み/消去制御プログラムを内蔵 R AM に転送する場合の実行手順例を 示します。 あらかじめ転送プログラム(必要に応じ て書き込み/消去制御プログラム)を書 き込む MD1、MD0=10、11 リセットスタート 書き込み/消去制御プログラムを RAMに転送 RAMエリアの書き込み/消去制御 プログラムに分岐 書き込み/消去制御プログラムを実行 (フラッシュメモリの書き換え) フラッシュメモリのアプリケーション プログラムに分岐 【注】 過剰書き込み、過剰消去にならないように、ウォッチドッグタイマを起動し、プログラムの 暴走等に対応できるようにしてください。 図 22.11 ユーザプログラムモードの実行手順例 678 22. ROM 22.7 フラッシュメモリの書き込み/消去 オンボードプログラミングモードでのフラッシュメモリの書き込み/消去は、CPU を用 いてソフトウェアで行う方式を採用しています。フラッシュメモリの動作モードとしては、 プログ ラムモード/ イレースモ ード/プロ グラムベリフ ァイモード /イレースベ リファ イモードがあり、F LMCR 2 の P SU、ES U ビット、F LMCR 1 の P 、E、P V、EV ビットをセ ットすることにより各動作モードに遷移することができます。 フラッシュメモリは、書き込み/消去を行っている間は読み出すことができません。し たがって、フラッシュメモリの書き込み/消去を制御するプログラム(書き込み制御プロ グラム)は、内蔵 RAM あるいは外部メモリ上に置いて、実行するようにしてください。 【注】 1 . FL MCR1 の S WE 、E V、P V、E 、P ビット、FL MCR2 の E SU 、P SU ビットの セッ ト/リセ ットがフ ラッシ ュメモリ 上のプロ グラム で実行さ れた場合 の動 作は保証されません。 2. 書き込みは消去状態で行ってください。既に書き込まれたアドレスへの追加書 き込みは行わないでください。 22.7.1 プログラムモード フラッシュメモリへのデータ/プログラムの書き込みは、図 22.12 に示すプログラム/ プログラムベリファイフローチャートにしたがって行ってください。このフローチャート に沿って書き込み動作を行えば、デバイスへの電圧ストレスやプログラムデータの信頼性 を損なうことなく、フラッシュメモリへデータ/プログラムの書き込みを行うことができ ます。また、1 回の書き込みは、32 バイト単位で行ってください。 フラッシュメモリコントロールレジスタ 1、2(FLMCR1、FLMCR2)の各ビットのセッ ト/クリア後のウェイト時間(x、y、z、α 、β、γ、ε、η)、最大書き込み回数(N) は、「26 章 電気的特性 フラッシュメモリ特性」を参照してください。 フラッシュメモリコントロールレジスタ 1(FLMCR1)の SWE ビットを 1 にセットした 後、(x)μ s 以上の時間が経過してから、32 バイトの書き込みデータを書き込みデータ エリアと再書き込みデータエリアに格納し、書き込むアドレスに R AM 上の再書き込みデ ータエリアの 32 バイトのデータを連続ライトします。ただし、ライトする先頭アドレス の下位 8 ビットは、H'00、H'20、H'40、H'60、H'80、H'A0、H'C0、H'E0 でなければなりま せん。データ転送はバイト単位で 32 回連続して行います。フラッシュメモリは、プログ ラムアドレスとプログラムデータをそれぞれフラッシュメモリ内にラッチします。32 バイ ト以下の書き込みでも 32 バイトのデータ転送を行う必要があり、必要ないアドレスへの 書き込みは、データを H'FF にして書き込みを行う必要があります。 次に、プログラムの暴走等により過剰時間書き込みを行わないようにするために、ウォ ッチドッグタイマを設定します。WDT のオーバフロー周期は( y + z +α+β)μ s より大 きくしてください。その後、F LMCR 2 の P SU ビットをセットし、プログラムモードへの 準備(プログラムセットアップ)を行い、(y)μ s 以上の時間が経過してから、FLMCR1 679 22. ROM の P ビットをセットすることで、動作モードはプログラムモードへ遷移します。P ビット がセットされている時間がフラッシュメモリの書き込み時間となります。一回の書き込み 時間を(z)μ s の範囲に納まるようにプログラムで設定してください。 22.7.2 プログラムベリファイモード プログラムベリファイモードは、プログラムモードでデータを書き込んだ後、そのデー タを読み出し、正しくデータがフラッシュメモリへ書き込まれているかを確認するモード です。 一定の書き込み時間経過後、書き込みモードを解除(FLMCR1 の P ビットを 0 にクリア 後、(α)μ s 以上の時間が経過してから FLMCR2 の PSU ビットを 0 にクリア)します。 次に、ウォッチドッグタイマを(β)μ s 以上の時間が経過してから解除し、FLMCR1 の PV ビットをセットすることで、動作モードはプログラムベリファイモードへ遷移します。 プログラムベリファイモードでは、リードする前にリードするアドレスにデータ H'F F を ダミーライトしてください。ダミーライトは(γ)μ s 以上の時間が経過してから行って ください。この状態でフラッシュメモリをリード(ベリファイデータは 16 ビットで読み 出す)するとラッチしたアドレスのデータが読み出されます。このリード動作は、ダミー ライト後、(ε)μ s 以上おいてから行ってください。次に書き込みデータとベリファイ データを比較し、再書き込みデータを演算(図 22.12 参照)し、再書き込みデータを再書 き込みデータエリアに転送します。32 バイト分のデータのベリファイが完了後、プログラ ムベリファイモードを解除し、(η)μ s 以上の待機時間をおいて、F LMCR 1 の S WE ビ ットを 0 にクリアしてください。再度書き込みが必要な場合は、再度プログラムモードに 設定し、同様にプログラム/プログラムベリファイシーケンスを繰り返してください。た だし、同一ビットに対するプログラム/プログラムベリファイシーケンスの繰り返しは、 N 回を超えないようにしてください。 680 22. 書き込みは消去状態で行ってください。 既に書き込まれたアドレスへの追加書き込みは 行わないでください。 START FLMCR1のSWEビットをセット Wait(x)μs ROM *5 32バイトの書き込みデータを書き込みデータエリアと 4 * 再書き込みデータエリアに格納 n=1 m=0 RAM上の再書き込みデータエリアの32バイト 1 * データをフラッシュメモリに連続ライト WDTイネーブル FLMCR2のPSUビットをセット Wait(y)μs *5 FLMCR1のPビットをセット Wait(z)μs 書き込み開始 *5 FLMCR1のPビットをクリア Wait(α)μs 書き込み終了 *5 FLMCR2のPSUビットをクリア n←n+1 Wait(β)μs *5 WDTディスエーブル FLMCR1のPVビットをセット Wait(γ)μs *5 ベリファイアドレスにH'FFをダミーライト Wait(ε)μs *5 ベリファイデータを読み出す *2 アドレスインクリメント 書き込みデータ=ベリファイデータ? NG m=1 OK *3 再書き込みデータ演算 再書き込みデータを再書き込みデータエリアに転送 *4 NG RAM 32バイトデータ ベリファイ完了? OK FLMCR1のPVビットをクリア 書き込みデータ 格納エリア(32バイト) Wait(η)μs 再書き込みデータ 格納エリア(32バイト) m=0? *5 NG n≧N? *5 NG OK FLMCR1のSWEビットをクリア OK FLMCR1のSWEビットをクリア 書き込み終了 書き込み不良 【注】 *1 データ転送はバイト転送で行います。書き込む先頭アドレスの下位8ビットは、H'00, H'20, H'40, H'60, H'80, H'A0, H'C0, H'E0でなければなりません。32バイト以下の書き込みでも32バイトのデータ転送を行う必要があります。 必要ないアドレスへは、H'FFデータの書き込みを行ってください。。 *2 ベリファイデータは16ビット (W) で読み出します。 *3 32バイトの書き込みループ内で、一度書き込みが完了したビットでも、次のベリファイでFAILした場合は、その ビットの追加書き込みを行います。 *4 RAM上に書き込みデータを格納するエリア(32バイト)と再書き込みデータを格納するエリア(32バイト)が必要です。 後者の内容は書き込みの進行に応じて書き換えられます。 *5 x、y、z、α、β、γ、ε、ηおよびNの値は「26章 電気的特性 フラッシュメモリ特性」を参照してください。 書き込みデータ ベリファイデータ 0 0 0 1 1 1 0 1 再書き込みデータ 1 0 1 1 コメント 書き込みデータとベリファイデータが一致 した場合は再書き込みしない 書き込み未完了、再書き込み − 消去状態のまま、なにもしない 図 22.12 プログラム/プログラムベリファイフロー 681 22. ROM 22.7.3 イレースモード フラッシュメモリの消去は 1 ブロックごとに、図 22.13 に示すイレース/イレースベリ ファイフロー(単一ブロック消去)チャートに沿って行ってください。 フラッシュメモリコントロールレジスタ 1、2(FLMCR1、FLMCR2)の各ビットのセッ ト/クリア後のウェイト時間(x、y、z、α、β、γ、ε、η)、最大消去回数(N)は「26 章 電気的特性 フラッシュメモリ特性」を参照してください。 データ/プログラムの消去は、フラッシュメモリコントロールレジスタ 1(F LMCR 1) の S WE ビットを 1 にセット後、(x)μ s 以上の時間が経過してから、消去ブロック指定 レジスタ 1、2(EBR1、EBR2)で消去するフラッシュメモリのエリアを 1 ビット設定して ください。次にプログラムの暴走等により過剰時間消去を行わないようにするために、ウ ォッチドッグタイマを設定します。WDT のオーバフロー周期は( y + z +α+β)ms より 大きく設定してください。その後、F LMCR 2 の ES U ビットをセットすることで、イレー スモードへの準備(イレースセットアップ)を行い、 (y)μ s 以上の時間が経過後、 FLMCR1 の E ビットをセットすることで、動作モードはイレースモードへ遷移します。E ビットが 1 にセットされている時間が消去時間となり、消去時間は(z)ms を超えないようにして ください。 【注】 フラッシュ メモリの消去において、消 去を開始する前にプレライ ト(消去するメ モリのデータをすべて 0 にする)を行う必要はありません。 22.7.4 イレースベリファイモード イレースベリファイモードは、メモリを消去した後データを読み出し、正常に消去され ているかどうかを確認するモードです。 消去時間経過後、イレースモードを解除(F LMCR 1 の E ビットを 0 にクリア後、(α) μ s 以上の時間が経過してから F LMCR 2 の ES U ビットを 0 にクリア)します。次に、ウ ォッチドッグタイマを(β)μ s 以上の時間が経過してから解除し、F LMCR 1 の EV ビッ トを 1 にセットすることで、動作モードはイレースベリファイモードへ遷移します。イレ ースベリファイモードでは、リードする前にリードするアドレスにデータ H'F F をダミー ライトしてください。ダミーライトは(γ)μ s 以上の時間が経過してから行ってくださ い。この状態でフラッシュメモリをリード(ベリファイデータは 16 ビットで読み出す) するとラッチしたアドレスのデータが読み出されます。このリード動作は、ダミーライト 後、(ε)μ s おいてから行ってください。読み出したデータが消去(データがすべて 1) されていた場合、次のアドレスをダミーライトし、イレースベリファイを行います。読み 出したデータが未消去の場合、再度イレースモードに設定し、同様にイレース/イレース ベリファイシーケンスを繰り返します。ただし、この繰り返し回数は N 回を超えないよう にしてください。ベリファイ完了後、イレースベリファイモードを解除し、(η)μ s 以 上の 待機 時間 をお いて くだ さい。 消去 対象 全ブ ロッ クの消 去が 完了 して いる 場合 は、 FLMCR1 の SWE ビットを 0 にクリアしてください。未消去のブロックが存在する場合は、 682 22. ROM 消去するフラッシュメモリのブロックを EBR1、EBR2 で 1 ビット設定し、同様にイレース /イレースベリファイシーケンスを繰り返します。 683 22. ROM START *1 FLMCR1のSWEビットをセット Wait(x)μs *5 n=1 EBR1、EBR2を設定する *3 WDTイネーブル FLMCR2のESUビットをセット Wait(y)μs *5 消去開始 FLMCR1のEビットをセット Wait(z)ms *5 消去停止 FLMCR1のEビットをクリア Wait(α)μs *5 FLMCR2のESUビットをクリア Wait(β)μs *5 WDTディスエーブル FLMCR1のEVビットをセット Wait(γ)μs *5 n←n+1 ブロック先頭アドレスを ベリファイアドレスにセット ベリファイアドレスにH'FFをダミーライト Wait(ε)μs *5 ベリファイデータをリード *2 アドレス インクリメント ベリファイデータ =すべて1? NG OK NG ブロック最終 アドレス? OK FLMCR1のEVビットをクリア Wait(η)μs NG *5 消去対象全ブロックの 消去終了? *5 n≧N? NG OK FLMCR1のSWEビットをクリア FLMCR1のSWEビットをクリア 消去終了 消去不良 プレライト(消去ブロックのデータをすべて0にする)は必要ありません。 ベリファイデータは16ビット(W)で読み出します。 EBR1、EBR2は1ビットのみ設定してください。2ビット以上を設定しないでください。 消去はブロック単位で行います。複数のブロックを消去する場合は各ブロック単位で順次消去を行ってください。 x、y、z、α、β、γ、ε、ηおよびNの値は「26章 電気的特性 フラッシュメモリ特性」を参照してください。 図 22.13 イレース/イレースベリファイフロー(単一ブロック消去) 684 *5 Wait(η)μs *4 OK 【注】 *1 *2 *3 *4 *5 FLMCR1のEVビットをクリア 22. ROM 22.8 フラッシュメモリのプロテクト フラッシュメモリに対する書き込み・消去プロテクトは、ハードウェアプロテクト、ソ フトウェアプロテクトとエラープロテクトの 3 種類あります。 22.8.1 ハードウェアプロテクト ハードウェアプロテクトとは、フラッシュメモリに対する書き込み/消去が強制的に禁 止、中断された状態のことで、フラッシュメモリコントロールレジスタ 1、2(FLMCR1、 FLMCR2)および消去ブロック指定レジスタ 1、2(EBR1、EBR2)の設定はリセットされ ます(表 22.8 参照)。 表 22.8 ハードウェアプロテクト 項 目 リセット、 説 明 機 能 書き込み 消去 ○ ○ ・リセット(WDT のオーバフローリセットも含む)、ハードウ スタンバイ ェアスタンバイモード、ソフトウェアスタンバイモード、サブ プロテクト アクティブモード、サブスリープモード、ウォッチモード時は、 FLMCR1、FLMCR2、EBR1、EBR2 は初期化され、書き込み/ 消去プロテクト状態になります。 ・RES 端子によるリセットでは、電源投入後発振が安定するまで RES 端子を Low レベルに保持しないとリセット状態になりま せん。また、動作中のリセットは AC 特性に規定した RES パル ス幅の間 RES 端子を Low レベルに保持してください。 22.8.2 ソフトウェアプロテクト ソフトウェアプロテクトは、FLMCR1 の SWE ビット、消去ブロック指定レジスタ 1、2 (EB R1、EB R2) をセットすることで 行えます。ソフトウ ェアプロテクトでは 、フラッシ ュメモリコントロールレジスタ 1(FLMCR1)の P ビットおよび E ビットをセットしても、 プログラムモードまたはイレースモードへは遷移しません(表 22.9 参照)。 表 22.9 ソフトウェアプロテクト 項 目 説 明 SWE ビット ・FLMCR1 の SWE ビットを 0 にセットすることにより、全ブロ プロテクト 機 能 書き込み 消去 ○ ○ − ○ ックの書き込み/消去プロテクト状態になります。 (内蔵 RAM/外部メモリ上で実行してください。) ブロック 指定 プロテクト ・消去ブロック指定レジスタ 1、2(EBR1、EBR2)の設定によ り、ブロックごとに消去プロテクトが可能。 ・EBR1 と EBR2 を H'00 に設定すると全ブロックが消去プロテク ト状態になります。 685 22. ROM 22.8.3 エラープロテクト エラープロテクトは、フラッシュメモリへの書き込み/消去中のマイコンの暴走や書き 込み/消去アルゴリズムに沿っていない動作をした場合に発生する異常を検出し、書き込 み/消去動作を強制的に中断するプロテクトです。書き込み/消去動作を中断することで、 過剰書き込みや過剰消去によるフラッシュメモリへのダメージを防止します。 フラ ッシ ュメ モリへ の書 き込 み/消 去中 にマイ コン が異 常動作 する と、 F LMCR 2 の FLER ビットが 1 にセットされ、エラープロテクト状態へ遷移します。この時、FLMCR1、 FLMCR2、EBR1、EBR2 の設定は保持されますが、エラーが発生した時点でプログラムモ ードまたはイレースモードは強制的に中断されます。P ビット、E ビットの再設定を行っ てもプログ ラムモードまたはイレ ースモードへ遷移す ることはできません。 ただし、P V ビット、EV ビットの設定は有効なので、ベリファイモードへの遷移は可能です。 FLER ビットのセット条件は、 (1)書き込み/消去中にフラッシュメモリをリードしたとき(ベクタリードおよび命令フ ェッチを含む) (2)書き込み/消去中の例外処理(リセットは除く)開始直後 (3)書き込み/消去中に S LEEP 命令を実行したとき(ソフトウェアスタンバイ、スリー プ、サブアクティブ、サブスリープ、ウォッチモードへの遷移) (4)書き込み/消去中に CPU がバス権を失ったとき エラープロテクト解除は、リセットまたはハードウェアスタンバイモードのみで行われ ます。 図 22.14 にフラッシュメモリの状態遷移図を示します。 通常動作モード プログラムモード イレースモード リセットまたはハードウェア スタンバイ (ハードウェアプロテクト) RES=0またはSTBY=0 RD VF PR ER FLER=0 エ ラ ー 発 生 は た *2 エラー発生*1 エラープロテクトモード RD VF*4 PR ER FLER=1 0ま S= 0 RE BY= T S RD VF PR ER FLER=0 RES=0または STBY=0 FLMCR1、FLMCR2、 EBR1、EBR2の イニシャライズ状態 ソフトウェアスタンバイ、 エラープロテクトモード スリープ、サブスリープ、 (ソフトウェアスタンバイ、スリープ ウォッチモード サブスリープ、ウォッチモード) RD VF PR ER ソフトウェアスタンバイ、 FLER=1 スリープ、サブスリープ、 FLMCR1、FLMCR2(FLERビットを除く)、 ウォッチモード解除 EBR1、EBR2のイニシャライズ状態*3 【記号説明】 RD:メモリリード可 VF :ベリファイリード可 PR:プログラム可 ER:イレース可 RD:メモリリード不可 VF :ベリファイリード不可 PR:プログラム不可 ER:イレース不可 【注】*1 SLEEP命令以外によるエラー発生のとき、およびサブアクティブモードへの遷移のため SLEEP命令を実行したとき *2 SLEEP命令によるエラー発生のとき(サブアクティブモードを除く) *3 スリープモードを除く *4 サブアクティブモードではVF 図 22.14 フラッシュメモリの状態遷移図 686 22. ROM 22.9 フラッシュメモリの書き込み/消去時の割込み処理 フラッシュメモリへの書き込み、消去中(FLMCR1 の P ビットまたは E ビットがセット)、 およびブートモードでのブートプログラム実行中*1 は、書き込み、消去動作を最優先とす るため、NMI 入力を含むすべての割込みを禁止してください。 これは以下のような動作状態を回避することを目的としています。 (1)書き込み、消去中に割込みが発生することにより、書き込み/消去アルゴリズムに違 反し、正常な動作が保証できなくなる。 (2)書き込み/消去中の割込み例外処理ではベクタリードが正常にできない*2 ため、結果 としてマイコンが暴走してしまう。 (3)ブートプログラム実行中に割込みが発生すると正常なブートモードのシーケンスが実 行できなくなる。 以上のような理由から、オンボードプログラミングモードにおいてのみ例外的に割込み を禁止する条件が存在しますが、これによって正常な書き込み、消去およびマイコン動作 が保証されるものではありません。 このため、フラッシュメモリへの書き込み/消去を行う場合には、マイコンの内部と外 部で NMI を含むすべての割り込み要求を禁止する必要があります。また、エラープロテ クト状態で F LMCR 1 の P ビットまたは E ビットが保持された状態でも割込みは禁止状態 となります。 【注】 *1 書き込み制御プログラムによる書き込みが完了するまでは、マイコン内部と外 部で割り込み要求を禁止する必要があります。 *2 この場合、以下の 2 つの理由によってベクタリードが正常に行われません。 ・書き込み、消去中(FLMCR1 の P ビットまたは E ビットがセット)にフラッ シュメモリのリードを行っても正しい値を読み出すことはできません(値は 不定)。 ・割込みベクタテーブルに値がまだ書き込まれていない場合、割込み例外処理 が正しく実行されません。 687 22. ROM 22.10 フラッシュメモリのライタモード 22.10.1 ライタモードの設定 プログラム/データの書き込み/消去可能なモードとして、オンボードプログラミング モード以外にライタモードがあります。ライタモードでは日立 128k バイトフラッシュメ モリ内蔵マイコンデバイスタイプ*1、3、もしくは日立 64k バイトフラッシュメモリ内蔵マ イコンデバイスタイプ*2、3 の書込み電圧 5. 0V をサポートしている P ROM ライタを用いて 内蔵 R OM に自由にプログラムを書き込むことができます。本デバイスタイプでは、フラ ッシュメモリ読み出しモード、自動書き込みモード、自動消去モード、ステータス読み出 しモードをサポートしています。自動書き込みモード/自動消去モード/ステータス読み 出しモードではステータスポーリング方式を採用しており、また、ステータス読み出しモ ードでは自動書き込み/自動消去を実行した後に、その詳細な内部信号を出力します。 表 22.10 にライタモードの端子設定方法を示します。 【注】 *1 対象製品は、H8S/2148、H8S/2144 になります。 *2 対象製品は、H8S/2147N、H8S/2142 になります。 *3 H8 S/2 14 8、H8 S/2 14 7N 、H8 S/2 14 4、H8 S/2 14 2 の A マスク品以外の製品は、 5 V 版、3 V 版ともに P ROM ライタの書込み電圧を 5 .0 V に設定して使用してく ださい。 なお、A マスク品は 5.0V に設定しないでください。 表 22.10 ライタモードの端子設定方法 端子名 設定、外付け回路接続 モード端子:MD1、MD0 MD1、MD0 に Low レベルを入力 STBY 端子 High レベルを入力 (ハードウェアスタンバイモードにしない) RES 端子 パワーオンリセット回路 XTAL、EXTAL 端子 発振回路 その他の設定端子:P97、P92、P91、P90、 P92、P67 に Low レベル、 P67 22.10.2 P97、P91、P90 に High レベルを入力 ソケットアダプタとメモリマップ このライタモードでは、PROM ライタに各パッケージに対応したソケットアダプタを取 り付けて行います。ソケットアダプタは、日立 128k バイトフラッシュメモリ内蔵マイコ ンデバイスタイプ、もしくは日立 64k バイトフラッシュメモリ内蔵マイコンデバイスタイ プをサポートしているライタメーカごとに用意されています。 図 2 2.15 にラ イタモ ード 時の メモリ マッ プを示 しま す。ラ イタ モー ド時の 端子 名は 688 22. ROM 「1.3.2 動作モード別端子機能」を参照してください。 MCUモード H8S/2148 H8S/2144 H'000000 ライタモード H'00000 MCUモード H8S/2147N H8S/2142 H'000000 ライタモード H'00000 内蔵ROM領域 H'00FFFF 内蔵ROM領域 H'0FFFF 不定値出力 H'01FFFF H'1FFFF H'1FFFF 図 22.15 ライタモード時のメモリマップ 22.10.3 ライタモードの動作 表 22.11 にライタモード時の各動作モードの設定方法、表 22.12 にライタモード時の各 コマンドを示します。また、各モードの詳細情報を以下に示します。 メモリ読み出しモード メモリ読み出しモードは、バイト読み出しをサポートします。 自動書き込みモード 自動書き込みモードでは、128 バイト同時書き込みをサポートします。自動書き込み終 了確認にステータスポーリング方式を採用しております。 自動消去モード 自動消去モードでは、フラッシュメモリマット全面の自動消去のみサポートします。自 動消去終了確認にステータスポーリング方式を採用しております。 ステータス読み出しモード 自動書き込み/自動消去方式はステータスポーリング方式を採用しており、正常終了の 確認は FO6 番の信号をリードすることで行えます。ステータス読み出しモードはエラーが 発生したときのエラー情報を出力します。 689 22. ROM 表 22.11 ライタモード時の各動作モードの設定方法 モード ピン名 CE OE WE FO7〜 FO0 FA17〜 FA0 リード L L H データ出力 Ain 出力ディスエーブル L H H Hi-z X コマンド書き込み L H L データ入力 チップディスエーブル* 1 H X X Hi-z 【注】 Ain* 2 X *1 チップディスエーブルは、スタンバイ状態ではありません。内部は動作状態です。 *2 Ain は、自動書き込みモードにおいてアドレスの入力もあることを示しています。 表 22.12 ライタモード時の各コマンド コマンド名 サイクル 第 1 サイクル 第 2 サイクル 数 モード アドレス データ モード アドレス データ メモリ読み出しモード 1+n write X H'00 read RA Dout 自動書き込みモード 129 write X H'40 write WA Din 自動消去モード 2 write X H'20 write X H'20 ステータス読み出し 2 write X H'71 write X H'71 モード 【注】 1. 自動書き込みモードでは、128 バイト同時書き込みにより、コマンド書き込みが 129 サ イクル必要となります。 2. メモリ読み出しモー ドでは、アドレス書き込みサイクル数(n) によって、サイクル数 が変化します。 690 22. 22.10.4 ROM メモリ読み出しモード (1)自動書き込み/自動消去/ステータス読み出し終了後は、コマンド待ち状態に遷移し ています。メモリの内容を読み出す場合は、コマンド書き込みでメモリ読み出しモー ドに遷移させた後に、メモリの内容を読み出す必要があります。 (2)メモリ読み出しモードでは、コマンド待ち状態と同様にコマンド書き込みが行えます。 (3)一度メモリ読み出しモードに遷移させた後は、連続リードが可能です。 (4)電源投入後は、メモリ読み出しモードに遷移します。 表 22.13 メモリ読み出しモード時の AC 特性(1) (条件:V CC =5.0V±10%、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX 単 位 コマンド書き込みサイクル t nxtc 20 μs CE ホールド時間 t ceh 0 ns CE セットアップ時間 t ces 0 ns データホールド時間 t dh 50 ns データセットアップ時間 t ds 50 ns 書き込みパルス幅 t wep 70 ns WE 立ち上がり時間 tr 30 ns WE 立ち下がり時間 tf 30 ns コマンド書き込み ADDRESS STABLE CE WE FO7〜FO0 記 メモリ読み出しモード FA17〜FA0 OE 特 twep tceh tnxtc tces tf tr DATA DATA tdh tds 【注】 データのラッチタイミングは、WEの立ち上がりエッジで行います。 図 22.16 コマンド書き込み後メモリ読み出しタイミング波形 691 22. ROM 表 22.14 メモリ読み出しモードから他のモードへ遷移時の AC 特性 (条件:V CC =5.0V±10%、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN 単 MAX 位 コマンド書き込みサイクル t nxtc 20 μs CE ホールド時間 t ceh 0 ns CE セットアップ時間 t ces 0 ns データホールド時間 t dh 50 ns データセットアップ時間 t ds 50 ns 書き込みパルス幅 t wep 70 ns WE 立ち上がり時間 tr 30 ns WE 立ち下がり時間 tf 30 ns メモリ読み出しモード FA17〜FA0 ADDRESS STABLE twep tceh tnxtc OE tces WE tf DATA tr H'XX tdh tds 【注】 WE、OEを同時にイネーブルしないでください。 図 22.17 メモリ読み出しモードから他のモードへ遷移時のタイミング波形 692 記 他モードコマンド書き込み CE FO7〜FO0 特 22. ROM 表 22.15 メモリ読み出しモード時の AC 特性(2) (条件:V CC =5.0V±10%、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN 単 MAX 位 アクセス時間 t acc 20 μs CE 出力遅延時間 t ce 150 ns OE 出力遅延時間 t oe 150 ns 出力ディスエイブル遅延時間 t df 100 ns データ出力ホールド時間 t oh FA17〜FA0 5 特 記 ns ADDRESS STABLE ADDRESS STABLE CE VIL OE VIL tacc WE VIH tacc toh toh DATA FO7〜FO0 DATA 図 22.18 CE、OE イネーブル状態リード時のタイミング波形 FA17〜FA0 ADDRESS STABLE ADDRESS STABLE tacc CE tce tce OE toe toe VIH WE FO7〜FO0 tdf tdf tacc DATA DATA toh toh 図 22.19 CE、OE クロック方式リード時のタイミング波形 693 22. ROM 22.10.5 自動書き込みモード (1)AC 特性 表 22.16 自動書き込みモード時の AC 特性 (条件:V CC =5.0V±10%、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX 単 位 コマンド書き込みサイクル t nxtc 20 μs CE ホールド時間 t ceh 0 ns CE セットアップ時間 t ces 0 ns データホールド時間 t dh 50 ns データセットアップ時間 t ds 50 ns 書き込みパルス幅 t wep 70 ns ステータスポーリング開始時間 t wsts 1 ms ステータスポーリングアクセス時間 t spa アドレスセットアップ時間 t as 0 ns アドレスホールド時間 t ah 60 ns メモリ書き込み時間 t write 1 WE 立ち上がり時間 WE 立ち下がり時間 FA17〜FA0 150 特 記 ns 3000 ms tr 30 ns tf 30 ns ADDRESS STABLE CE tceh tas tah tnxtc OE tnxtc twep WE FO7 データ転送 1バイト…128バイト tces tf twsts tspa twrite(1〜3000ms) 書き込み動作終了判定信号 tr tds tdh 書き込み正常終了判定信号 FO6 書き込みウェイト FO7〜FO0 H'40 DATA 図 22.20 自動書き込みモードのタイミング波形 694 DATA FO5〜FO0=0 22. ROM (2)自動書き込みモードにおける注意事項 (a)自動書き込みモードでは、128 バイト同時書き込みを行います。これは、バイトデー タを 128 回連続で転送してください。 (b)128 バイト以下の書き込みでも 128 バイトのデータ転送を行う必要があります。必要 ないアドレスへのメモリ書き込みは、データを H'FF にして書き込みを行う必要があり ます。 (c)転送するアドレスの下位 8 ビットは、H'00、H'80 でなければなりません。有効アドレ ス以外を入力した場合は、メモリ書き込み動作に移行しますが、書き込みエラーとな ります。 (d)メモリアドレスの転送は、第 2 サイクルで行います(図 2 2.20 )。第 3 サイクル以降 では転送しないでください。 (e)書き込み動作中は、コマンド書き込みを行わないでください。 (f)書き込みは、各アドレスの 128 バイト単位のブロックに対して、1 回の自動書き込み で行ってください。2 回以上の書き込みについては特性保証できません。 (g)自動書き込み正常終了の確認には、FO6 を調べることにより行います。または、ステ ータス読み出しモードを使用しても確認することができます(F O7 番のステータスポ ーリングは、自動書き込み動作終了判定用端子です)。 (h)ステータスポーリングの FO6、FO7 端子情報は、次のコマンド書き込みまで保持され ます。次のコマンド書き込みが行われてなければ、C E、OE をイネーブルにすること により読み出し可能となります。 695 22. ROM 22.10.6 自動消去モード (1)AC 特性 表 22.17 自動消去モード時の AC 特性 (条件:V CC =5.0V±10%、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX 単 位 コマンド書き込みサイクル t nxtc 20 μs CE ホールド時間 t ceh 0 ns CE セットアップ時間 t ces 0 ns データホールド時間 t dh 50 ns データセットアップ時間 t ds 50 ns 書き込みパルス幅 t wep 70 ns ステータスポーリング開始時間 t ests 1 ms ステータスポーリングアクセス時間 t spa メモリ消去時間 t erase 100 150 ns 40000 ms WE 立ち上がり時間 tr 30 ns WE 立ち下がり時間 tf 30 ns 特 FA17〜FA0 CE tces tceh tspa OE tests tnxtc twep WE tf tr terase(100〜40000ms) tds FO7 消去終了判定信号 tdh 消去正常終了確認信号 FO6 FO7〜FO0 CLin DLin H'20 H'20 図 22.21 自動消去モードのタイミング波形 696 FO5〜FO0=0 tnxtc 記 22. ROM (2)自動消去モードにおける注意事項 (a)自動消去モードは、メモリ全面消去のみサポートします。 (b)自動消去中はコマンド書き込みを行わないでください。 (c)自動消去正常終了の確認には、FO6 を調べることにより行います。または、ステータ ス読み出しモードを使用しても確認することができます(F O7 番のステータスポーリ ングは、自動消去動作終了判定用端子です)。 (d)ステータスポーリングの FO6、FO7 端子情報は、次のコマンド書き込みまで保持され ます。次のコマンド書き込みが行われてなければ、C E、OE をイネーブルにすること により読み出し可能となります。 22.10.7 ステータス読み出しモード (1)ステータス読み出しモードは、異常終了の種類を特定させるためのモードです。自動 書き込みモード/自動消去モードで異常終了が起きた場合に使用してください。 (2)リターンコードは、ステータス読み出しモード以外のコマンド書き込みが行われるま で保持されます。 表 22.18 ステータス読み出しモード時の AC 特性 (条件:V CC =5.0V±10%、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX 単 位 コマンド書き込みサイクル t nxtc 20 μs CE ホールド時間 t ceh 0 ns CE セットアップ時間 t ces 0 ns データホールド時間 t dh 50 ns データセットアップ時間 t ds 50 ns 書き込みパルス幅 t wep 70 ns OE 出力遅延時間 t oe 150 ns ディスエーブル遅延時間 t df 100 ns CE 出力遅延時間 t ce 150 ns WE 立ち上がり時間 tr 30 ns WE 立ち下がり時間 tf 30 ns 特 記 697 22. ROM FA17〜FA0 CE tnxtc tce OE tnxtc twep WE tces tceh tf tds tnxtc twep tf tr tds tdh tdh H'71 FO7〜FO0 【注】 tdf toe tceh tces tr H'71 DATA FO2、FO3は未定義です。 図 22.22 ステータス読み出しモードのタイミング波形 表 22.19 ステータス読み出しモードのリターンコマンド ピン名 FO7 FO6 FO5 FO4 FO3 FO2 FO1 FO0 属性 正常終了 コマンド 書き込み 消去エラー − − 書き込み 有効 判定 エラー エラー or アドレス 消去回数 エラー オーバー 初期値 内容 【注】 22.10.8 0 0 0 0 0 0 − − 0 0 正常終了:0 コマンド 書き込み 消去 回数オーバー 有効アドレス 異常終了:1 エラー:1 エラー:1 エラー:1 時:1 エラー:1 その他:0 その他:0 その他:0 その他:0 その他:0 FO2、FO3 は未定です。 ステータスポーリング (1)FO7 のステータスポーリングは、自動書き込み/自動消去モード時の動作状態を示す フラグです。 (2)FO6 のステータスポーリングは、自動書き込み/自動消去モード時の正常、または異 常終了を示すフラグです。 表 22.20 ステータスポーリング出力の真理値表 端子名 698 内部動作中 異常終了 − 正常終了 FO7 0 1 0 1 FO6 0 0 1 1 FO0〜FO5 0 0 0 0 22. 22.10.9 ROM ライタモードへの遷移時間 発振安定時間、ライタモードセットアップ期間は、コマンドを受け付けることができま せん。ライタモードセットアップ時間後、メモリ読み出しモードに遷移します。 表 22.21 コマンド待ち状態までの遷移時間規定 項 記号 MIN MAX スタンバイ解除(発振安定時間) t osc1 20 − ms ライタモードセットアップ時間 t bmv 10 − ms VCC ホールド時間 t dwn 0 − ms VCC 目 tosc1 位 tbmv 特 記 tdwn メモリ読み出 しモード コマンド待ち 状態 RES 単 自動書き込みモード 自動消去モード コマンド待ち Don't care 状態 正常異常終了 判定 コマンド受け付け 図 22.23 発振安定時間、ライタモードセットアップ、および電源立ち下げシーケンス 22.10.10 メモリ書き込み注意事項 (1)すでに書き込まれたアドレスへの書き換えは、自動消去を行った後に自動書き込みを してください。 (2)オンボードプログラムモードにて書き込み/消去を行ったチップに対して、ライタモ ードを用いて書き換えを行う場合は、自動消去を行った後に自動書き込みを行うこと を推奨します。 【注】 1. 日立出荷品の初期状態は、消去状態です。これ以外の消去来歴不明チップに対 して、初期化(消去)レベルをチェック、補正するために自動消去実施を推奨 します。 2. 同一アドレスブロックへの自動書き込みは、1 回のみとします。 699 22. ROM 22.11 フラッシュメモリの書き込み/消去時の注意 オンボードプログラミングモード、およびライタモード使用時の注意事項を示します。 (1)規定された電圧、タイミングで書き込み/消去を行ってください。 定格以上の電圧を印加した場合、製品の永久破壊にいたることがあります。 PROM ライタは、日立 128k バイトフラッシュメモリ内蔵マイコンデバイスタイプ、も しくは 日立 64k バイ トフラッシ ュメモリ内 蔵マイコン デバイスタ イプの書込 み電圧 5.0V をサポートしているものを使用してください。 ライタの設定を HN28F101 や書込み電圧を 3.3V にセットしないでください。また、規 定したソケットアダプタ以外は使用しないでください。誤って使用した場合、破壊に いたることがあります。 (2)電源投入/切断時の注意 VCC 電源の印加/切断時は RES 端子を Low レベルに固定し、フラッシュメモリをハー ドウェアプロテクト状態にしてください。 この電源投入および解除タイミングは、停電等による電源の切断、再投入時にも満足 するようにしてください。 ( 3 ) フ ラ ッシ ュ メモ リ への 書 き 込み 、 消去 は 推奨 す る アル ゴ リズ ム に従 っ て 行っ て ください。 推奨アルゴリズムでは、デバイスへの電圧ストレスあるいはプログラムデータの信頼 性を損なうことなく書き込み、消去を行うことができます。また、FLMCR1 の P ビッ ト、E ビットをセットするときは、プログラムの暴走等に備えてあらかじめウォッチ ドッグタイマを設定してください。 (4 )S WE ビットのセット/クリアは、フラッシュメモリ上のプログラム実行中に行わな いでください。 フラッシュメモリ上のプログラム実行とデータの読み出しは、SWE ビットをクリアし た後に行ってください。 SWE ビットをセットするとフラッシュメモリのデータを書き換えできますが、ベリフ ァイ(プログラム/イレース中のベリファイ)以外の目的で、フラッシュメモリをア クセスしないでください。 (5)フラッシュメモリの書き込み中または消去中に割り込みを使用しないでください。 フラッシュメモリへの書き込み/消去を行う場合は、書き込み/消去動作を最優先と するため、NMI を含むすべての割り込み要求を禁止してください。 700 22. ROM (6)追加書き込みは行わないでください。書き換えは消去後に行ってください。 オンボードプログラミングでは 32 バイトの書き込み単位ブロックへの書き込みは、1 回のみとしてください。ライタモードでも 128 バイトの書き込み単位ブロックへの書 き込みは、1 回のみとしてください。 書き込みはこの書き込み単位ブロックがすべて消去された状態で行ってください。 (7 )書き込み前に、必ず、正しく P ROM ライタに装着されていることを確認してくださ い。 PROM ライタのソケット、ソケットアダプタ、および製品のインデックスが一致して いないと過剰電流が流れ、製品が破壊することがあります。 (8)書き込み中はソケットアダプタや製品に手を触れないでください。 接触不良などにより、書き込み不良になることがあります。 701 22. ROM 22.12 F-ZTAT マイコンのマスク ROM 化時の注意事項 マスク版には、F -ZTAT 版に存在するフラッシュメモリのコントロール用内部レジスタ が存在しません。表 22.22 に F-ZTAT 版に存在して、マスク版に存在しないレジスタを示 します。表 22.22 に示したレジスタをリードした場合、マスク版では、不定値が読み出さ れます。このため、F -ZTAT 版で開発したアプリケーションソフトをマスク R OM 版に変 更する場合、表 22.22 に示したレジスタの影響がないようアプリケーションソフトを変更 してください。 表 22.22 F-ZTAT 版に存在してマスク ROM 版に存在しないレジスタ レジスタ名称 702 略称 アドレス フラッシュメモリコントロールレジスタ 1 FLMCR1 H'FF80 フラッシュメモリコントロールレジスタ 2 FLMCR2 H'FF81 消去ブロック指定レジスタ 1 EBR1 H'FF82 消去ブロック指定レジスタ 2 EBR2 H'FF83 23. ROM H8S/2148 F-ZTAT A マスク品 H8S/2147 F-ZTAT A マスク品 H8S/2144 F-ZTAT A マスク品 第 23 章 23.1 23.2 目次 概要........................................................................................................................................ 705 23.1.1 ブロック図............................................................................................. 705 23.1.2 レジスタ構成 ......................................................................................... 705 レジスタの説明 ....................................................................................................................... 706 23.2.1 モードコントロールレジスタ(MDCR).................................................. 706 23.3 動作説明 ................................................................................................................................. 707 23.4 フラッシュメモリの概要.......................................................................................................... 708 23.5 23.6 23.7 23.4.1 特長....................................................................................................... 708 23.4.2 ブロック図............................................................................................. 709 23.4.3 フラッシュメモリの動作モード............................................................... 710 23.4.4 端子構成 ................................................................................................ 714 23.4.5 レジスタ構成 ......................................................................................... 714 フラッシュメモリのレジスタの説明 ......................................................................................... 715 23.5.1 フラッシュメモリコントロールレジスタ 1(FLMCR1) ........................... 715 23.5.2 フラッシュメモリコントロールレジスタ 2(FLMCR2) ........................... 717 23.5.3 消去ブロック指定レジスタ 1、2(EBR1、EBR2) .................................... 719 23.5.4 シリアルタイマコントロールレジスタ(STCR)...................................... 720 オンボードプログラミングモード ............................................................................................ 721 23.6.1 ブートモード ......................................................................................... 722 23.6.2 ユーザプログラムモード......................................................................... 728 フラッシュメモリの書き込み/消去 ......................................................................................... 729 23. ROM 23.8 23.7.1 プログラムモード................................................................................... 729 23.7.2 プログラムベリファイモード .................................................................. 730 23.7.3 イレースモード ...................................................................................... 732 23.7.4 イレースベリファイモード ..................................................................... 732 フラッシュメモリのプロテクト................................................................................................ 734 23.8.1 ハードウェアプロテクト......................................................................... 734 23.8.2 ソフトウェアプロテクト......................................................................... 734 23.8.3 エラープロテクト................................................................................... 735 23.9 フラッシュメモリの書き込み/消去時の割込み処理 .................................................................... 736 23.10 フラッシュメモリのライタモード ............................................................................................ 737 23.10.1 ライタモードの設定 ............................................................................... 737 23.10.2 ソケットアダプタとメモリマップ ........................................................... 737 23.10.3 ライタモードの動作 ............................................................................... 738 23.10.4 メモリ読み出しモード ............................................................................ 740 23.10.5 自動書き込みモード ............................................................................... 743 23.10.6 自動消去モード ...................................................................................... 745 23.10.7 ステータス読み出しモード ..................................................................... 746 23.10.8 ステータスポーリング ............................................................................ 747 23.10.9 ライタモードへの遷移時間 ..................................................................... 748 23.10.10 メモリ書き込み注意事項......................................................................... 748 23.11 フラッシュメモリの書き込み/消去時の注意............................................................................ 749 23.12 F-ZTAT マイコンのマスク ROM 化時の注意事項 ....................................................................... 750 704 23. ROM 23.1 概要 H8S /2148 F -ZTAT A マスク品、H8S /2144 F -ZTAT A マスク品は 128k バイト、H8S /2147 F -ZTAT A マスク品は 64k バイトのフラッシュメモリを内蔵しています。フラッシュメモ リは、バスマスタと 16 ビット幅のデータバスで接続されており、バイトデータ、ワード データにかかわらず、1 ステートでアクセスできます。命令フェッチを高速化し、処理速 度を向上しています。 内蔵 ROM の有効または無効の設定は、モード端子(MD1、MD0)および MDCR の EXPE ビットにより行います。 本 LSI のフラッシュメモリは、PROM ライタを用いて書き込み・消去ができるほか、オ ンボードでの消去・書き換えが可能です。 23.1.1 ブロック図 ROM のブロック図を図 23.1 に示します。 内部データバス(上位8ビット) 内部データバス(下位8ビット) H'000000 H'000001 H'000002 H'000003 H'01FFFE H'01FFFF 図 2 3.1 ROM のブロック図(H8 S/2 14 8 F-Z TAT A マスク品、H8 S/2 14 4 F-Z TAT A マス ク品の場合) 23.1.2 レジスタ構成 本 LS I の動作モードは、モード端子と MDC R で制御されます。レジスタ構成を表 2 3.1 に示します。 表 23.1 レジスタ構成 名 称 モードコントロールレジスタ 略称 R/W 初期値 アドレス* MDCR R/W 不定 H'FFC5 動作モードにより異なります 【注】 * アドレスの下位 16 ビットを示しています。 705 23. ROM 23.2 レジスタの説明 23.2.1 モードコントロールレジスタ(MDCR) ビット : 初期値 : R/W : 【注】 * 7 6 5 4 3 2 1 0 EXPE − − − − − MDS1 MDS0 −* 0 0 0 0 0 −* −* R/W* − − − − − R R MD1〜MD0端子により決定されます。 MDCR は 8 ビットのリード専用レジスタで、本 LSI の動作モードの設定および現在の動 作モードをモニタするのに用います。 EXP E ビットは、リセットまたはハードウェアスタンバイモード時に、モード端子の状 態に関連付けられて初期化されます。 ビット 7:拡張モードイネーブル(EXPE) 拡張モードを設定します。モード 1 の場合、1 に固定されており、ライトは無効です。 モード 2、3 の場合、初期値は 0 で、リード/ライト可能です。 ビット 7 説 明 EXPE 0 シングルチップモードを選択 1 拡張モードを選択 ビット 6〜2:リザーブビット リードすると常に 0 が読み出されます。ライトは無効です。 ビット 1〜0:モードセレクト 1〜0(MDS1〜MDS0) モード端 子(MD1〜MD0)の 入力レベルを反 映した値(現在 の動作モード) を示して います。MDS1〜MDS0 ビットは MD1〜MD0 端子にそれぞれ対応します。これらのビット はリード専用でライ トは無効です。MDC R をリードすると、モ ード端子(MD1〜MD0) の入力レベルがこれらのビットにラッチされます。 706 23. ROM 23.3 動作説明 内蔵フラッシュメモリは、C PU と 16 ビット幅のデータバスで接続されており、バイト データ、ワードデータにかかわらず、1 ステートでアクセスできます。偶数番地が上位 8 ビット、奇数番地が下位 8 ビットに接続されています。ワードデータは偶数番地から始ま るデータに限定されています。 内蔵 ROM の有効または無効の設定はモード端子(MD1、MD0)および MDCR の EXPE ビットにより行います。この設定を表 23.2 に示します。 ノーマルモードのとき、使用できる ROM は最大 56k バイトになります。 表 23.2 動作モードと ROM 動作モード MCU 動作 CPU 動作 モード モード モード 1 ノーマル モード端子 MDCR 内容 MD1 内蔵 ROM 無効拡張モード 0 1 1 無効 1 0 0 有効* モード 2 アドバンスト シングルチップモード MD0 EXPE アドバンスト 内蔵 ROM 有効拡張モード モード 3 ノーマル ノーマル 【注】 * 内蔵 ROM シングルチップモード 内蔵 ROM 有効拡張モード 1 1 0 有効(56k バイト) 1 H8S/2148 F-ZTAT A マスク品、H8S/2144 F-ZTAT A マスク品は 128k バイト、H8S/2147 F-ZTAT A マスク品は 64k バイトです。 707 23. ROM 23.4 フラッシュメモリの概要 23.4.1 特長 フラッシュメモリの特長を以下に示します。 ■フラッシュメモリの 4 種類の動作モード ・プログラムモード ・イレースモード ・プログラムベリファイモード ・イレースベリファイモード ■書き込み/消去方式 書き込みは 128 バイト同時書き込みを行います。消去はブロック分割消去(1 ブロッ ク単位)で行います。複数ブロックを消去する場合は、必ず各ブロック単位で順次消 去を行ってください。ブロック分割消去では、1k バイト、28k バイト、16k バイト、 8k バイト、32k バイトのブロック単位で任意に設定することができます。 ■書き込み/消去時間 フラッシュメモリの書き込み時間は、128 バイト同時書き込みにて 10ms(typ.)、1 バ イトあたり換算にて約 80 μ s(typ.)、消去時間は、ブロックあたり 100ms(typ.)で す。 ■書き換え回数 フラッシュメモリの書き換えは、100 回まで可能です。 ■オンボードプログラミングモード オンボードでフラッシュメモリの書き込み/消去/ベリファイを行う 2 種類のモード があります。 ・ブートモード ・ユーザプログラムモード ■ビットレート自動合わせ込み ブートモードでデータ転送時、ホストの転送ビットレートと本 LS I のビットレートを 自動で合せることができます。 ■プロテクトモード ハードウェアプロテクトモード、ソフトウェアプロテクトモードとエラープロテクト の 3 種類のモードがあり、フラッシュメモリの書き込み/消去/ベリファイのプロテ クト状態を設定することができます。 ■ライタモード フラッシュメモリの書き込み/消去可能なモードとして、オンボードプログラミング モード以外に PROM ライタを用いたライタモードがあります。 708 23. ブロック図 内部アドレスバス 内部データバス(16ビット) FLMCR1 モジュールバス 23.4.2 ROM * FLMCR2 * EBR1 * EBR2 * バスインタフェース/制御部 動作 モード モード端子 フラッシュメモリ (128kバイト/64kバイト) 【記号説明】 FLMCR1:フラッシュメモリコントロールレジスタ1 FLMCR2:フラッシュメモリコントロールレジスタ2 EBR1 :消去ブロック指定レジスタ1 EBR2 :消去ブロック指定レジスタ2 【注】 * これらのレジスタはフラッシュメモリ版専用のレジスタです。 マスクROM版では当該アドレスをリードすると不定値が 読み出され、ライトも無効です。 図 23.2 フラッシュメモリのブロック図 709 23. ROM 23.4.3 フラッシュメモリの動作モード (1)モード遷移図 リセット状 態で各モード端子を 設定し、リセットス タートすると、マイ コンは図 2 3.3 に示すような各動作モードへ遷移します。ユーザモードではフラッシュメモリの読み出し はできますが、フラッシュメモリの書き込み/消去はできません。 フラッシュメモリへの書き込み/消去を行えるモードとして、ブートモード、ユーザプ ログラムモード、ライタモードがあります。 リセット状態 =1 MD1 内蔵ROM有効 ユーザモード =0 RES RES=0 *2 RES=0 SWE=0 RE SWE=1 S= 0 *1 ライタモード ユーザ プログラム モード ブートモード オンボードプログラミングモード 図 23.3 フラッシュメモリに関する状態遷移 710 【注】ユーザモード/ユーザプログラムモード間 での遷移は、CPUがフラッシュメモリをア クセスしていない状態で行ってください。 *1: MD0=MD1=0、 P92=P91=P90=1 *2: MD0=MD1=0、 P92=0、P91=P90=1 23. ROM (2)オンボードプログラミングモード (a)ブートモード 1. 初期状態 2. 書き込み制御プログラムの転送 フラッシュメモリは、工場出荷時は消去状態です。 ここでは、旧バージョンのアプリケーションプログ ラムあるいはデータを書き直す場合について説明し ます。書き込み制御プログラムおよび新アプリケー ションプログラムはユーザがあらかじめホストに用 意してください。 !" 〈ホスト〉 ブートモードに遷移すると本LSI内のブートプログ ラム(既にLSIに内蔵されている)が起動し、SCI通 信チェックを行い、ホストにある書き込み制御プ ログラムをRAMにSCI通信で転送します。また、フ ラッシュメモリの消去に必要なブートプログラム がRAMのブートプログラムエリアに自動的に転送 されます。 〈ホスト〉 書き込み制御プログラム 新アプリケーション プログラム 新アプリケーション プログラム 〈本LSI〉 〈本LSI〉 SCI ブートプログラム 〈フラッシュメモリ〉 〈RAM〉 SCI ブートプログラム 〈フラッシュメモリ〉 〈RAM〉 ブートプログラムエリア アプリケーション プログラム (旧バージョン) アプリケーション プログラム (旧バージョン) 3. フラッシュメモリの初期化 書き込み制御プログラム 4. 新アプリケーションプログラムの書き込み ブートプログラムエリア(RAM内)にある消去プロ グラムを実行し、フラッシュメモリを初期化(H'FF) します。ブートモード時は、ブロックに関係なくフラ ッシュメモリを全面消去します。 ホストよりRAMに転送した書き込み制御プログラム をSCI通信で転送し、これを実行して、ホストにあ る新アプリケーションプログラムをフラッシュメ モリに書き込みます。 〈ホスト〉 〈ホスト〉 新アプリケーション プログラム 〈本LSI〉 〈本LSI〉 ブートプログラム 〈フラッシュメモリ〉 SCI 〈RAM〉 ブートプログラム 〈フラッシュメモリ〉 ブートプログラムエリア フラッシュメモリの イレース 書き込み制御プログラム SCI 〈RAM〉 ブートプログラムエリア 新アプリケーション プログラム 書き込み制御プログラム プログラム実行状態 図 23.4 ブートモード 711 23. ROM (b)ユーザプログラムモード 1. 初期状態 2. 書き込み/消去制御プログラムの転送 フラッシュメモリ内の転送プログラムを実行して、 書き込み/消去制御プログラムをRAMに転送します。 , ! (1)書き込み/消去制御プログラムを内蔵RAM に転送するプログラムは、あらかじめユーザがフ ラッシュメモリに書き込んでおいてください。 (2)書き込み/消去制御プログラムはホス トまたはフラッシュメモリに用意してください。 〈ホスト〉 〈ホスト〉 書き込み/消去制御プログラム 新アプリケーション プログラム 新アプリケーション プログラム 〈本LSI〉 〈本LSI〉 SCI ブートプログラム 〈フラッシュメモリ〉 〈RAM〉 転送プログラム SCI ブートプログラム 〈フラッシュメモリ〉 〈RAM〉 転送プログラム 書き込み/消去制御プログラム アプリケーション プログラム (旧バージョン) アプリケーション プログラム (旧バージョン) 3. フラッシュメモリの初期化 4. アプリケーションプログラムの書き込み RAM上の書き込み/消去制御プログラムを実行し、 フラッシュメモリを初期化(H'FF)します。消去は、 ブロック単位で行えます。バイト単位の消去はでき ません。 次にホストにある新アプリケーションプログラムを消去 したフラッシュメモリのブロックに書き込みます。消去 されていないブロックに対する書き込みは行わないでく ださい。 〈ホスト〉 〈ホスト〉 新アプリケーション プログラム 〈本LSI〉 〈本LSI〉 ブートプログラム 〈フラッシュメモリ〉 SCI 〈RAM〉 転送プログラム ブートプログラム 〈フラッシュメモリ〉 SCI 〈RAM〉 転送プログラム 書き込み/消去制御プログラム フラッシュメモリの イレース 書き込み/消去制御プログラム 新アプリケーション プログラム プログラム実行状態 図 23.5 ユーザプログラムモード(例) 712 23. ROM (3)ブートモードとユーザプログラムモードの相違点 ブートモード ユーザプログラムモード 全面消去 ○ ○ ブロック分割消去 × ○ プログラム/プログラムベリファイ プログラム/プログラムベリファイ 書き換え制御 プログラム* 【注】 * イレース/イレースベリファイ 推奨するアルゴリズムに沿って、ユーザ側で用意してください。 (4)ブロック分割法 32k バイト(2 ブロック):128k バイト版のみ、8k バイト(2 ブロック)、16k バイト(1 ブロック)、28k バイト(1 ブロック)、1k バイト(4 ブロック)に分割されています。 1kバイト 1kバイト 1kバイト 1kバイト アドレスH'00000 64kバイト アドレスH'00000 128kバイト 28kバイト 1kバイト 1kバイト 1kバイト 1kバイト 28kバイト 16kバイト 16kバイト 8kバイト 8kバイト 8kバイト 8kバイト アドレスH'0FFFF 32kバイト 32kバイト アドレスH'1FFFF (a)128kバイト版 (b)64kバイト版 図 23.6 フラッシュメモリのブロック分割 713 23. ROM 23.4.4 端子構成 フラッシュメモリは表 23.3 に示す端子により制御されます。 表 23.3 端子構成 端子名 23.4.5 略 称 入出力 機 能 リセット RES 入力 リセット モード 1 MD1 入力 本 LSI の動作モードを設定 モード 0 MD0 入力 本 LSI の動作モードを設定 ポート 92 P92 入力 MD1=MD0=0 の場合に、本 LSI の動作モードを設定 ポート 91 P91 入力 MD1=MD0=0 の場合に、本 LSI の動作モードを設定 ポート 90 P90 入力 MD1=MD0=0 の場合に、本 LSI の動作モードを設定 トランスミットデータ TxD1 出力 シリアル送信データ出力 レシーブデータ RxD1 入力 シリアル受信データ入力 レジスタ構成 内蔵フ ラッシュメ モリが有効の ときのフラ ッシュメモ リをコントロ ールするレ ジスタ を表 2 3.4 に示します。本レジスタをアクセスするためには、S TCR の F LSHE ビットを 1 にセットする必要があります。 表 23.4 レジスタ構成 名 略 称 R/W 初期値 アドレス*1 フラッシュメモリコントロールレジスタ 1 FLMCR1*5 R/W*3 H'80 H'FF80*2 フラッシュメモリコントロールレジスタ 2 FLMCR2*5 R/W*3 H'00*4 H'FF81*2 消去ブロック指定レジスタ 1 EBR1*5 R/W*3 H'00*4 H'FF82*2 消去ブロック指定レジスタ 2 EBR2*5 R/W*3 H'00*4 H'FF83*2 シリアルタイマコントロールレジスタ STCR R/W H'00 H'FFC3 【注】 714 称 *1 アドレスの下位 16 ビットを示しています。 * 2 フラ ッシュメモリ のレジスタ は、他のレ ジスタと同じ アドレスに 割り当てられ ていま す。 それぞれ のレジ スタの選 択はシ リアルタ イマコ ントロー ルレジ スタ(ST CR )の FLSHE ビットで行います。 * 3 内蔵フラッシュメモリが無効のモードのときは、リードすると H' 00 が読み出され、ラ イトも無効となります。 *4 FLMCR1 の SWE ビットがセットされていないときは H'00 に初期化されます。 * 5 FL MCR 1、FL MCR 2、EBR 1、EBR 2 は 8 ビットのレジスタです。バイトアクセスのみ 有効で、2 ステートアクセスとなります。また、これらのレジスタはフラッシュメモリ 版専用のレジスタです。マスク ROM 版では、当該アドレスをリードすると不定値が読 み出され、ライトも無効です。 23. ROM 23.5 フラッシュメモリのレジスタの説明 23.5.1 フラッシュメモリコントロールレジスタ 1(FLMCR1) ビット : 7 6 5 4 3 2 1 0 FWE SWE − − EV PV E P 初期値 : 1 0 0 0 0 0 0 0 : R R/W − − R/W R/W R/W R/W R/W F LMCR 1 は、フラッシュメモリの各動作モー ドを制御する 8 ビットのレジスタです。 SWE=1 にして対応するビットをセットすることにより、プログラムベリファイモード、 イレースベリファイモードに遷移します。プログラムモードへ遷移するには、SWE=1 に セットし、FLMCR2 の PSU ビットをセットした後、P ビットをセットします。イレースモ ードへ遷移するには、SWE=1 にセットし、FLMCR2 の ESU ビットをセットした後、E ビ ットをセットします。FLMCR1 は、リセット、ハードウェアスタンバイモード、ソフトウ ェアスタンバイモード、サブアクティブモード、サブスリープモード、ウォッチモードで H'80 に初期化 されます。内蔵フラ ッシュメモリが無効の モードのときは、リ ードすると H'00 が読み出され、ライトも無効となります。 また、FLMCR1 の EV、PV ビットへのライトは SWE=1 のとき、E ビットへのライトは SWE=1、ESU=1 のとき、P ビットへのライトは SWE=1、PSU=1 のときのみ有効です。 ビット 7:フラッシュライトイネーブル(FWE) 内蔵フラッシュメモリの書き込み/消去を制御するビットです。本製品では、リードす ると常に 1 が読み出されます。ライトは無効です。 ビット 6:ソフトウェアライトイネーブル(SWE) フラッシュメモリの書き込みの有効または無効を選択するビットです(ESU、PSU、EV、 P V、E、P 、EB 9〜EB 0 ビ ットの設定前にセットしてください。ま た、これらのビットと 同時にクリアしないでください)。 ビット 6 説 明 SWE 0 書き込み無効 1 書き込み有効 (初期値) ビット 5〜4:リザーブビット リザーブビットです。リードすると常に 0 が読み出されます。ライトは無効です。 715 23. ROM ビット 3:イレースベリファイ(EV) イレースベリファイモードへの遷移、解除を選択するビットです(SWE、ESU、PSU、 PV、E、P ビットを同時に設定しないでください)。 ビット 3 説 明 EV 0 イレースベリファイモードを解除 1 イレースベリファイモードに遷移 (初期値) [セット条件]SWE=1 のときにセット可 ビット 2:プログラムベリファイ(PV) プログラムベリファイモードへの遷移、解除を選択するビットです(SWE、ESU、PSU、 EV、E、P ビットを同時に設定しないでください)。 ビット 2 説 明 PV 0 プログラムベリファイモードを解除 1 プログラムベリファイモードに遷移 (初期値) [セット条件]SWE=1 のときにセット可 ビット 1:イレース(E) イレースモードへの遷移、解除を選択するビットです(SWE、ESU、PSU、EV、PV、 P ビットを同時に設定しないでください)。 ビット 1 説 明 E 0 イレースモードを解除 1 イレースモードに遷移 [セット条件] SWE=1、ESU=1 のときにセット可 716 (初期値) 23. ROM ビット 0:プログラム(P) プログラムモードへの遷移、解除を選択するビットです(SWE、PSU、ESU、EV、PV、 E ビットを同時に設定しないでください)。 ビット 0 説 明 P 0 プログラムモードを解除 1 プログラムモードに遷移 (初期値) [セット条件] SWE=1、PSU=1 のときにセット可 23.5.2 フラッシュメモリコントロールレジスタ 2(FLMCR2) ビット : 7 6 5 4 3 2 1 0 FLER − − − − − ESU PSU 初期値 : 0 0 0 0 0 0 0 0 : R − − − − − R/W R/W R/W FLMCR2 は、フラッシュメモリへの書き込み/消去プロテクト(エラープロテクト)の 有無のモニタと、フラッシュメモリのプログラム/イレースモードへのセットアップを行 う 8 ビットのレジスタです。F LMCR 2 は、リセ ット、ハードウェアスタンバイモードで H'00 に初期化されます。また、ES U ビット、P SU ビットは、ソフトウェアスタンバイモ ード、サブアクティブモード、サブスリープモード、ウォッチモードでも 0 にクリアされ ます。 内蔵フラッシュメモリが無効のモードのときは、リードすると H'00 が読み出され、ラ イトも無効となります。 ビット 7:フラッシュメモリエラー(FLER) フラッシュメモリ動作中(書き込み、消去)にエラーが発生したことを示すビットです。 FLER=1 に設定されると、フラッシュメモリはエラープロテクトに遷移します。 ビット 7 説 明 FLER 0 フラッシュメモリは正常に動作しています。 フラッシュメモリへの書き込み/消去プロテクト(エラープロテクト)が無効 [クリア条件]リセット、ハードウェアスタンバイモードのとき 1 (初期値) フラッシュメモリへの書き込み/消去中にエラーが発生したことを示します。 フラッシュメモリへの書き込み/消去プロテクト(エラープロテクト)が有効 [セット条件]「23.8.3 エラープロテクト」参照 717 23. ROM ビット 6〜2:リザーブビット リザーブビットです。ライトするときは必ず 0 をライトしてください。 ビット 1:イレースセットアップ(ESU) イレースモードへの遷移の準備をするビットです。FLMCR1 の E ビットを 1 にセットす る前に 1 にセットしてください。(SWE、PSU、EV、PV、E、P ビットを同時に設定しな いでください) ビット 1 説 明 ESU 0 イレースセットアップ解除 1 イレースセットアップ (初期値) [セット条件]SWE=1 のときにセット可 ビット 0:プログラムセットアップ(PSU) プログラムモードへの遷移の準備をするビットです。FLMCR1 の P ビットを 1 にセット する前に 1 にセットしてください。(SWE、ESU、EV、PV、E、P ビットを同時に設定し ないでください) ビット 0 説 明 PSU 0 プログラムセットアップ解除 1 プログラムセットアップ [セット条件]SWE=1 のときにセット可 718 (初期値) 23. 23.5.3 ROM 消去ブロック指定レジスタ 1、2(EBR1、EBR2) ビット : 7 6 5 4 3 2 1 0 EB8/−*2 EBR1 − − − − − − EB9/−*2 初期値 : 0 0 0 0 0 0 0 0 −*2 −*2 −*2 −*2 −*2 −*2 R/W*1,2 R/W*1,2 7 6 5 4 3 2 1 0 EB7 EB6 EB5 EB4 EB3 EB2 EB1 EB0 : R/W ビット : EBR2 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W*1 R/W R/W R/W R/W R/W R/W R/W 【注】*1 ノーマルモードの場合は0が読み出され、ライトは無効です。 *2 64kバイト版にEB8、EB9ビットはありません。本ビットは1にセットしないでください。 フラッシュメモリの消去エリアをブロックごとに設定するレジスタで、EB R1 のビット 1〜0(128k バイト版のみ)、EBR2 のビット 7〜0 についてリード/ライト可能です。EBR1、 EB R2 は、リセット、ハードウェアスタンバイモード、ソフトウェアスタンバイモード、 サブアクティブモード、サブスリープモード、ウォッチモードおよび FLMCR1 の SWE ビ ットが設定されていないときは、それぞれ H'00 に初期化されます。EB R1、EB R2 の各ビ ットに 1 をセットすると、対応するブロックが消去可能となります。それ以外のブロック は、消去プロテクト状態になります。EB R1、EB R2 は 1 ビットのみ設定してください(2 ビット以上を設定しないでください)。内蔵フラッシュメモリが無効のモードのときは、 リードするとそれぞれ H'00 が読み出され、ライトも無効となります。 フラッシュメモリのブロック分割方法は、表 23.5 を参照してください。 表 23.5 消去ブロックの分割 ブロック(サイズ) アドレス 128k バイト版 64k バイト版 EB0(1k バイト) EB0(1k バイト) H'(00)0000〜H'(00)03FF EB1(1k バイト) EB1(1k バイト) H'(00)0400〜H'(00)07FF EB2(1k バイト) EB2(1k バイト) H'(00)0800〜H'(00)0BFF EB3(1k バイト) EB3(1k バイト) H'(00)0C00〜H'(00)0FFF EB4(28k バイト) EB4(28k バイト) H'(00)1000〜H'(00)7FFF EB5(16k バイト) EB5(16k バイト) H'(00)8000〜H'(00)BFFF EB6(8k バイト) EB6(8k バイト) H'(00)C000〜H'(00)DFFF EB7(8k バイト) EB7(8k バイト) H'00E000〜H'00FFFF EB8(32k バイト) − H'010000〜H'017FFF EB9(32k バイト) − H'018000〜H'01FFFF 719 23. ROM 23.5.4 シリアルタイマコントロールレジスタ(STCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IICS IICX1 IICX0 IICE FLSHE − ICKS1 ICKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W S TCR は 8 ビットのリー ド/ライト可能なレジスタで、レジスタ アクセスの制御、II C の動作モードの制御(IIC 内蔵オプションの場合)、内蔵フラッシュメモリの制御、TCNT の入力ク ロックの選択を行 います。内蔵フ ラッシュメモリ 以外の詳細は、「 3 .2 .4 シリ アルタイマコントロールレジスタ(STCR)」および各モジュールの説明を参照してくだ さい。S TCR で制御するモジュールを使用しない場合は、当該ビットに 1 をライトしない でください。 STCR はリセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 ビット 7〜4:I 2 C コントロール(IICS、IICX1、IICX0、IICE) IIC 内蔵オプションの場合、I2C バスインタフェースの動作を制御するビットです。詳し くは「第 16 章 I 2 C バスインタフェース」を参照してください。 ビット 3:フラッシュメモリコントロールレジスタイネーブル(FLSHE) FLSHE ビットを 1 にセットすると、フラッシュメモリの制御レジスタをリード/ライト することができます。0 にクリアするとフラッシュメモリの制御レジスタは非選択となり ます。このとき、フラッシュメモリ制御レジスタの内容は保持されています。 ビット 3 説 明 FLSHE 0 フラッシュメモリの制御レジスタは非選択状態 1 フラッシュメモリの制御レジスタは選択状態 (初期値) ビット 2:リザーブビット リザーブビットです。1 にセットしないでください。 ビット 1、0:インターナルクロックソースセレクト 1、0(ICKS1、ICKS0) 8 ビットタイマの動作を制御するビットです。詳しくは「第 1 2 章 を参照してください。 720 8 ビットタイマ」 23. ROM 23.6 オンボードプログラミングモード オンボードプログラミングモードに設定すると、内蔵フラッシュメモリへの書き込み/ 消去/ベリファイを行うことができます。オンボードプログラミングモードには、ブート モードとユーザプログラムモードの 2 種類の動作モードがあり、各モードへ遷移する端子 の設定方法は、表 2 3.6 を参照してください。また、フラッシュメモリに関する各モード への状態遷移図を図 23.3 に示します。 ブートモードは、アドバンストモードの設定のみ可能です。 ユーザプログラムモ ードは、MD0 端子の設定により、アドバン ストモードまたはノー マルモードの設定が可能です。ノーマルモードでは 56k バイト分のフラッシュメモリの書 き換えのみ可能です。 表 23.6 オンボードプログラミングモードの設定方法 モード モード名 端子 CPU 動作モード MD1 MD0 P92 P91 P90 ブートモード アドバンストモード 0 0 1* 1* 1* ユーザプログラム アドバンストモード 1 0 − − − モード ノーマルモード 【注】 * 1 ブートモード起動後は I/O ポートとして使用できます。 721 23. ROM 23.6.1 ブートモード ブートモードを使用する場合は、フラッシュメモリへの書き込み制御プログラムをホス トに準備しておく必要があります。また、使用する SCI のチャネル 1 は調歩同期式モード に設定されています。 本 LSI の端子をブートモードに設定後リセットスタートすると、あらかじめマイコン内 に組み込まれているブートプログラムが起動され、ホストに用意した書き込み制御プログ ラムが、S CI を使って本 LS I へ順次送信されます。本 LS I では、S CI で受信した書き込み 制御プログラムを内蔵 R AM の書き込み制御プログラムエリアに書き込みます。転送終了 後書き込み制御プログラムエリアの先頭アドレスに分岐し、書き込み制御プログラム実行 状態となります(フラッシュメモリの書き込みを行います)。 したがって、転送する書き込み制御プログラムには、後述の書き込みアルゴリズムに沿 ったプログラムを準備してください。 図 2 3.7 にブートモード時のシステム構成図、図 2 3.8 にブートモード実行手順を示しま す。 本LSI フラッシュメモリ ホスト 書き込みデータの受信 ベリファイデータの送信 図 23.7 ブートモード時のシステム構成図 722 RxD1 SCI1 TxD1 内蔵RAM 23. ROM 開始 端子をブートモードに設定し、リ セットスタートする ホストは、所定のビットレートで データ(H'00)を連続送信する 本LSIは、ホストの送信するデー タH'00のLow期間を測定する 本LSIは、ビットレートを計算し、 ビットレートレジスタに値を設定 する 本LSIは、ビットレート調整終了後、 調整終了の合図としてデータH'00 をホストへ1バイト送信する ホストは、ビットレート調整終了の合 図 (H'00) を正常に受信したことを確 認し、データH'55を1バイト送信する 本LSIは、H'55受信後、ホストへ H'AAを1バイト送信する ホストは、書き込み制御プログラ ムのバイト数(N)を上位バイト、 下位バイトの順で送信する 本LSIは、受信したバイト数をベ リファイデータとして、ホストへ 送信(エコーバック)する n=1 ホストは、順次書き込み制御プロ グラムをバイト単位で送信する 本LSIは、受信した書き込み制御プ ログラムをベリファイデータとして、 ホストへ送信(エコーバック)する n+1→n 受信した書き込み制御プログラム を内蔵RAMに転送する n=N? No Yes 送信終了 フラッシュメモリのデータをチェ ックし、既にデータが書き込まれ ていた場合は全ブロック消去する 本LSIは、フラッシュメモリの全デー タが消去されたことを確認する 本LSIは、書き込み制御プログラ ム転送エリア先頭のIDコードを確 認する IDコード一致 No Yes 本LSIは、ホストへH'AAを1バイト 送信する 内蔵RAMに転送された書き込み制 御プログラムを実行する 本LSIは、IDコードエラー としてH'FFを1バイト送 信し、それ以降の動作を 停止します 【注】 メモリセルが正常に動作せず消去できなかった場合は、消去エラー としてH'FFを1バイト送信し、消去動作とそれ以降の動作を停止します。 図 23.8 ブートモード実行手順 723 23. ROM (1)SCI ビットレートの自動合わせ込み動作 スタート D0 ビット D1 D2 D3 D4 D5 D6 D7 Low期間(9ビット分)を測定(データH'00) ストップ ビット 1ビット以上 のHigh期間 図 23.9 SCI ビットレート自動合わせ込み時の RxD1 入力信号 ブートモードが起動すると、本 LSI はホストより連続送信される調歩同期式 SCI 通信の データ(H'00)の Low 期間を測定します。この時の SCI 受信/送信フォーマットを「8 ビ ットデータ、1 ストップビット、パリティなし」に設定してください。本 LS I は、測定し た Low 期間よりホストの送信するビットレー トを計算し、ビット調整終了合図としてホ ストへ H'00 を 1 バイト送信します。ホストは、この調整終了合図(H'00)を正常に受信し たことを確認し、本 LSI へ H'55 を 1 バイト送信してください。受信が正常に行われなかっ た場合は、再度ブートモードを起動し(リセット)、上述の操作を行ってください。ホス トが送信するビットレート、および本 LSI のシステムクロックの周波数によってホストと 本 LSI のビットレートに誤差が生じます。正常に SCI を動作させるために、ホストの転送 ビットレートを 4800bps、9600bps、19200bps に設定してください。 ホストの転送ビットレートと本LSIのビットレートの自動合わせ込みが可能なシステム クロックの周波数を表 2 3.7 に示します。このシステムクロックの範囲内でブートプログ ラムを実行してください。 表 23.7 本 LSI のビットレートの自動合わせ込みが可能なシステムクロックの周波数 ホストのビットレート 本 LSI のビットレートの自動合わせ込みが可能な システムクロックの周波数 724 19200bps 8MHz〜20MHz 9600bps 4MHz〜20MHz 4800bps 2MHz〜18MHz 23. ROM (2)ブートモード時の内蔵 RAM エリアの分割 ブートモードでは、 H'(F F) E880〜H'(F F) EFF F の 1920 バイトと H'(F F) FF 00〜H'(F F) FF 7F の 128 バイトは、図 23.10 に示すようにブートプログラムで使用するエリアとしてリザー ブされ ています 。書き込 み制御プ ログラムを 転送する エリアは H'(F F) E080〜H'(F F) E87F の 2048 バイトです(64k バイト版では、本エリアはブートモード時にのみ使用するリザー ブエリアです)。ただし、 H'(F F) E080〜H'(F F) E087 の 8 バイトは図 2 3.10 に示すよう ID コードを配置します。ブートプログラムのエリアは、R AM 内に転送した書き込み制御プ ログラムが実行状態に遷移すると使用できます。スタックエリアは必要に応じて設定して ください。 H'(FF)E080 IDコードエリア*1 H'(FF)E088 書き込み制御 プログラムエリア*1 (2040バイト) H'(FF)E880 ブートプログラム*2 エリア (1920バイト) H'(FF)EFFF H'(FF)FF00 H'(FF)FF7F 【注】 *1 *2 ブートプログラム*2 エリア (128バイト) 64kバイト版では、本エリアはブートモード時にのみ使用するリザーブエリア です。それ以外の目的では使用しないでください。 転送した書き込み制御プログラムが実行状態に遷移するまでブートプログラム エリアは使用できません。なお、書き込み制御プログラムに分岐後もRAM内 の本エリアにはブートプログラムがそのまま保持されていますので、注意して ください。 図 23.10 ブートモード時の RAM エリア 本 LS I のブートモードでは、下記 8 バイトの ID コードエリアの内容を確認し、本 LS I に対応した書き込み制御プログラムであるか識別します。 H'(FF)E080 40 FE 64 66 32 31 34 39 ↑(製品識別ID) H'(FF)E088 〜 書き込み制御プログラムの命令コード ブートモードで使用する書き込み制御プログラムをオリジナルで作成する際には、上記 の 8 バイトの ID コードをプログラム先頭に追加してください。 725 23. ROM (3)ブートモード使用時の注意事項 (a)本 LS I は、ブートモードでリセット解除すると、S CI の R xD1 端子の Low 期間を 測定します。R xD1 端子が High の状態でリセット解除してください。リセット解 除後、R xD1 端子から入力される Low 期間を測定できるようになるまで、本 LS I は約 100 ステート必要です。 (b)ブートモードは、フラッシュメモリに書き込まれているデータがある場合(全デ ータが 1 でないとき)、フラッシュメモリの全ブロックを消去します。本モード は、オンボー ド状態での初期の書き込み 、あるいは、ユーザプログ ラムモードで 起動するプロ グラムを誤って消去し、ユ ーザプログラムモードが実 行できなくな った場合の強制復帰等に使用してください。 (c)フラッシュメモリの書き込み中、あ るいは消去中に割り込みを使用することはで きません。 (d)RxD1 端子および TxD1 端子は、ボード上でプルアップして使用してください。 (e)本 LSI は、書き込み制御プログラム(RAM エリアの H'(FF)E088)に分岐するとき に内蔵 SCI(チャネル 1)の送受信動作を終了(SCR の RE=0、TE=0)しますが、 BRR には、合わせ込んだビットレートの値を保持しています。 また 、このと きトラン スミット データ出 力端子 TxD1 は、High レ ベル出力 状態 (P84DDR=1、P84DR=1)となっています。 さらにこのとき、C PU 内蔵の汎用レジスタの値は不定です。このため書き込み制 御プログラムに分岐した直後に汎用レジスタの初期設定を必ず行ってください。 特にスタックポイン タ(S P)は、サブルーチンコール時など に暗黙的に使用され ますので、書 き込み制御プログラムで使 用するスタックエリアを必 ず指定してく ださい。 上記以外の内蔵レジスタについては、初期値が変更されるものはありません。 (f)ブートモードへの遷移は表 23.6 のモード設定にしたがって、端子を設定しリセッ トスタートすることにより可能です。 本 LS I はリセット解除時*1 にブートモードの設定であることを検出すると P 92、 P91、P90 は I/O ポートとして使用できます。 ブートモードを解除するには、リセット端子を Low レベルにしてから最低 20 ステ ート経過後、モード端子を設定し、リセット解除*1 してください。また、WDT の オーバフローリセットが発生した場合もブートモードを解除することが可能です。 ブートモードの途中でモード端子の入力レベルを変化させないでください。 726 23. ROM (g)リセット中にモード端子の入力レベルを変化(例えば Low レベル→High レベル) させると、マ イコンの動作モードが切り 替わることによりアドレス 兼用ポート、 およびバス制御出力信号(AS、RD、HWR)の状態が変化*2 します。 このため、こ れらの端子はリセット中に 出力信号とならないような 端子設定にす るか、マイコン外部の信号と衝突しないように注意してください。 【注】 *1 モード端子の入力はリセット解除のタイミングに対し、モードプログラミング セットアップ時間(tMDS=4 ステート)を満足する必要があります。 *2 アドレス兼用ポートは、リセット中にモード端子がモード 1 の設定になったと き、アドレスとして Low レベルを出力します。それ以外のモードではハイイン ピーダンス状態となります。また、バス制御出力信号は、リセット中にモード 端子がモード 1 の設定になったとき、High レベルを出力します。それ以外のモ ードではハイインピーダンス状態となります。 727 23. ROM 23.6.2 ユーザプログラムモード ユーザプログラムモードに設定すると、ユーザの書き込み/消去制御プログラムによる フラッシュメモリの書き込み、消去が可能になります。したがって、あらかじめ基板上に 書き換えデータ供給手段を設け、必要に応じてプログラムエリアの一部に書き込み/消去 制御プログラムを内蔵させておくことにより、内蔵フラッシュメモリのオンボード書き換 えを行うことができます。 本モードの設定では、内蔵フラッシュメモリの有効なモード 2、3 で起動します。この 状態の動作では、フラッシュメモリ以外の周辺機能はモード 2、3 と同じ動作をします。 フラッシュメモリへの書き込み/消去を行うために S WE ビットを 1 にセットしている 間は、フラッシュメモリ自身を読み出すことはできません。書き込み/消去を行う制御プ ログラムは、内蔵 RAM/外部メモリ上で実行するようにしてください。 図 2 3.11 に書き込み/消去制御プログラムを内蔵 R AM に転送する場合の実行手順例を 示します。 あらかじめ転送プログラム(必要に応じ て書き込み/消去制御プログラム)を書 き込む MD1、MD0=10、11 リセットスタート 書き込み/消去制御プログラムを RAMに転送 RAMエリアの書き込み/消去制御 プログラムに分岐 書き込み/消去制御プログラムを実行 (フラッシュメモリの書き換え) フラッシュメモリのアプリケーション プログラムに分岐 【注】 過剰書き込み、過剰消去にならないように、ウォッチドッグタイマを起動し、プログラムの 暴走等に対応できるようにしてください。 図 23.11 ユーザプログラムモードの実行手順例 728 23. ROM 23.7 フラッシュメモリの書き込み/消去 オンボードプログラミングモードでのフラッシュメモリの書き込み/消去は、CPU を用 いてソフトウェアで行う方式を採用しています。フラッシュメモリの動作モードとしては、 プログ ラムモード/ イレースモ ード/プロ グラムベリフ ァイモード /イレースベ リファ イモードがあり、F LMCR 2 の P SU、ES U ビット、F LMCR 1 の P 、E、P V、EV ビットをセ ットすることにより各動作モードに遷移することができます。 フラッシュメモリは、書き込み/消去を行っている間は読み出すことができません。し たがって、フラッシュメモリの書き込み/消去を制御するプログラム(書き込み制御プロ グラム)は、内蔵 RAM あるいは外部メモリ上に置いて、実行するようにしてください。 【注】 1 . FL MCR1 の S WE 、E V、P V、E 、P ビット、FL MCR2 の E SU 、P SU ビットの セッ ト/リセ ットがフ ラッシ ュメモリ 上のプロ グラム で実行さ れた場合 の動 作は保証されません。 2. 書き込みは消去状態で行ってください。既に書き込まれたアドレスへの追加書 き込みは行わないでください。 23.7.1 プログラムモード フラッシュメモリへのデータ/プログラムの書き込みは、図 23.12 に示すプログラム/ プログラムベリファイフローチャートにしたがって行ってください。このフローチャート に沿って書き込み動作を行えば、デバイスへの電圧ストレスやプログラムデータの信頼性 を損なうことなく、フラッシュメモリへデータ/プログラムの書き込みを行うことができ ます。また、1 回の書き込みは、128 バイト単位で行ってください。 フラッシュメモリコントロールレジスタ 1、2(FLMCR1、FLMCR2)の各ビットのセッ ト/クリア後のウェイト時間(x、y、z1、z2、z3、α、β、γ、ε、η、θ)、最大書き 込み回数(N)については、「第 2 6 章 電 気的特性 フラッシュメモリ特性」を参照し てください。 フラッシュメモリコントロールレジスタ 1(FLMCR1)の SWE ビットを 1 にセットした 後、(x)μ s 以上の時間が経過してから、128 バイトの書き込みデータを書き込みデータ エリアと再書き込みデータエリアに格納し、書き込むアドレスに R AM 上の再書き込みデ ータエリアの 128 バイトのデータを連続ライトします。ただし、ライトする先頭アドレス の下位 8 ビットは、H'00、 H'80 でなければなりません。データ転送はバイト単位で 128 回連続して行います。フラッシュメモリは、プログラムアドレスとプログラムデータをそ れぞれフラッシュメモリ内にラッチします。128 バイト以下の書き込みでも 128 バイトの データ転送を行う必要があり、必要ないアドレスへの書き込みは、データを H'F F にして 書き込みを行う必要があります。 次に、プログラムの暴走等により過剰時間書き込みを行わないようにするために、ウォ ッチドッグタイマを設定します。WDT のオーバフロー周期は(y + z2 +α+β)μ s より大 きくしてください。その後、F LMCR 2 の P SU ビットをセットし、プログラムモードへの 729 23. ROM 準備(プログラムセットアップ)を行い、(y)μ s 以上の時間が経過してから、FLMCR1 の P ビットをセットすることで、動作モードはプログラムモードへ遷移します。P ビット がセットされている時間がフラッシュメモリの書き込み時間となります。一回の書き込み 時間を(z1)、(z2)、または(z3)μ s の範囲に納まるようにプログラムで設定してく ださい。 23.7.2 プログラムベリファイモード プログラムベリファイモードは、プログラムモードでデータを書き込んだ後、そのデー タを読み出し、正しくデータがフラッシュメモリへ書き込まれているかを確認するモード です。 一定の書き込み時間経過後、書き込みモードを解除(FLMCR1 の P ビットを 0 にクリア 後、(α)μ s 以上の時間が経過してから FLMCR2 の PSU ビットを 0 にクリア)します。 次に、ウォッチドッグタイマを(β)μ s 以上の時間が経過してから解除し、FLMCR1 の PV ビットをセットすることで、動作モードはプログラムベリファイモードへ遷移します。 プログラムベリファイモードでは、リードする前にリードするアドレスにデータ H'F F を ダミーライトしてください。ダミーライトは(γ)μ s 以上の時間が経過してから行って ください。この状態でフラッシュメモリをリード(ベリファイデータは 16 ビットで読み 出す)するとラッチしたアドレスのデータが読み出されます。このリード動作は、ダミー ライト後、(ε)μ s 以上おいてから行ってください。次に書き込みデータとベリファイ データを比較し、再書き込みデータを演算(図 23.12 参照)し、再書き込みデータを再書 き込みデータエリアに転送します。128 バイト分のデータのベリファイが完了後、プログ ラムベリファイモードを解除し、(η)μ s 以上の待機時間をおいてください。このとき、 書き込み回数が 6 回以内であれば、書き込むアドレスに R AM 上の追加書き込みデータエ リアの 128 バイトのデータを連続ライトし追加書き込みを行います。そして、FLMCR1 の SWE ビットを 0 にクリアした後、(θ)μ s 以上の待機時間をおいてください。再度書き 込みが必要な場合は、再度プログラムモードに設定し、同様にプログラム/プログラムベ リファイシーケンスを繰り返してください。ただし、同一ビットに対するプログラム/プ ログラムベリファイシーケンスの繰り返しは、(N)回を超えないようにしてください。 730 23. ROM 書き込み開始 書き込みパルス印加サブルーチン START Sub-Routine Write Pulse 書き込みは消去状態で行ってください。 既に書き込まれたアドレスへの追加書き込みは 行わないでください。 WDTイネーブル FLMCR1のSWE-bitをセット FLMCR2のPSU-bitをセット Wait (x) μs Wait (y) μs 128Byteの書き込みデータを書き込みデー タエリアと再書き込みデータエリアに格納 *4 FLMCR1のP-bitをセット n=1 Wait (z1) μs, (z2) μs or (z3) μs *5 m=0 FLMCR1のP-bitをクリア RAM上の再書き込みデータエリアの128Byte 1 * データをフラッシュメモリに連続ライト Wait (α) μs Sub-Routine-Call FLMCR2のPSU-bitをクリア Wait (β) μs Write Pulse書き込みパルス z1μs or z2μs WDTディスエーブル FLMCR1のPV-bitをセット パルス幅は【注】*7を参照 Wait (γ) μs End Sub ベリファイアドレスにH'FFをダミーライト Wait (ε) μs アドレスインクリメント ベリファイデータをリード *2 書き込みデータ =ベリファイデータ? NG m=1 OK 【注】*7 書き込みパルス幅 書き込み回数n 書き込み時間 (z) µsec 1 z1 2 z1 3 z1 4 z1 5 z1 6 z1 7 z2 8 z2 9 z2 10 z2 11 z2 12 z2 13 z2 . . . . . . 998 z2 999 z2 1000 z2 n←n+1 NG 6≧n? OK 追加書き込みデータ演算 追加書き込みデータを追加書き込みデータエリアに転送 *4 再書き込みデータ演算 *3 再書き込みデータを再書き込みデータエリアに転送 *4 NG 128Byteデータ ベリファイ完了? OK FLMCR1のPV-bitをクリア Wait (η) μs 注:追加書き込みの場合は、書き込みパルス z3μsとしてください。 NG 6≧n? OK RAM上の追加書き込みデータエリアの128Byte 1 * データをフラッシュメモリに連続ライト RAM 書き込みデータ 格納エリア (128Byte) Write Pulse追加書き込みパルス z3μs 再書き込みデータ 格納エリア (128Byte) m=0? NG OK FLMCR1のSWE-bitをクリア 追加書き込みデータ 格納エリア (128Byte) n≧1000? NG OK FLMCR1のSWE-bitをクリア Wait (θ) μs Wait (θ) μs 書き込み終了 書き込み不良 【注】 *1 データ転送はバイト転送で行う。ライトする先頭アドレスの下位8ビットは、H'00,H'80でなければなりません。128バイト以下の書き込みでも 128バイトのデータ転送を行う必要があります。必要無いアドレスへの書き込みは、データをH'FFにして書き込みを行う必要があります。 *2 ベリファイデータは16ビット (W) で読み出します。 *3 128バイトの書き込みループ内で、一度書き込みが完了したビットでも、次のベリファイでFAILした場合は、そのビットの追加書き込みを行います。 *4 RAM上に書き込みデータを格納するエリア(128バイト)と再書き込みデータを格納するエリア(128バイト)と追加書き込みデータを格納するエリア (128バイト)が必要です。再書き込みと、追加書き込みデータの内容は書き込みの進行に応じて書き換えられます。 *5 書き込みパルスは、書き込みの進行に応じて、z1μs or z2μsの書き込みパルスを印加します。パルス幅に関しては、【注】*7を参照してくださ い。追加書き込みデータの書き込みを実施する場合は、z3μsの書き込みパルスを印加してください。再書き込みデータX'は、書き込みパルスを印 加した時の再書き込みデータを意味します。 *6 x, y, z1, z2, z3, α, β, γ, ε, η, θおよびNの値は「第26章 電気的特性 フラッシュメモリ特性」を参照してください。 書き込みデータ演算表 元データ(D) 0 1 Verifyデータ(V) 0 1 0 1 再書き込みデータ(X) 1 0 1 1 コメント 書き込み完了 書き込み未完了、再書き込み 消去状態のまま、なにもしない 追加書き込みデータ演算表 再書き込みデータ(X') Verifyデータ(V) 0 0 1 1 0 1 コメント 追加書き込みデータ(Y) 0 追加書き込みを実施 1 追加書き込みを実施しない 1 1 追加書き込みを実施しない 図 23.12 プログラム/プログラムベリファイフロー 731 23. ROM 23.7.3 イレースモード フラッシュメモリの消去は 1 ブロックごとに、図 23.13 に示すイレース/イレースベリ ファイフロー(単一ブロック消去)チャートに沿って行ってください。 フラッシュメモリコントロールレジスタ 1、2(FLMCR1、FLMCR2)の各ビットのセッ ト/クリア後のウェイト時間(x、y、z、α 、β、γ、ε、η、θ)、最大消去回数(N) については、「第 26 章 電気的特性 フラッシュメモリ特性」を参照してください。 データ/プログラムの消去は、フラッシュメモリコントロールレジスタ 1(F LMCR 1) の S WE ビットを 1 にセット後、(x)μ s 以上の時間が経過してから、消去ブロック指定 レジスタ 1、2(EBR1、EBR2)で消去するフラッシュメモリのエリアを 1 ビット設定して ください。次にプログラムの暴走等により過剰時間消去を行わないようにするために、ウ ォッチドッグタイマを設定します。WDT のオーバフロー周期は( y + z +α+β)ms より 大きく設定してください。その後、F LMCR 2 の ES U ビットをセットすることで、イレー スモードへの準備(イレースセットアップ)を行い、 (y)μ s 以上の時間が経過後、FLMCR1 の E ビットをセットすることで、動作モードはイレースモードへ遷移します。E ビットが 1 にセットされている時間が消去時間となり、消去時間は(z)ms を超えないようにして ください。 【注】 フラッシュ メモリの消去において、消 去を開始する前にプレライ ト(消去するメ モリのデータをすべて 0 にする)を行う必要はありません。 23.7.4 イレースベリファイモード イレースベリファイモードは、メモリを消去した後データを読み出し、正常に消去され ているかどうかを確認するモードです。 消去時間経過後、イレースモードを解除(F LMCR 1 の E ビットを 0 にクリア後、(α) μ s 以上の時間が経過してから F LMCR 2 の ES U ビットを 0 にクリア)します。次に、ウ ォッチドッグタイマを(β)μ s 以上の時間が経過してから解除し、F LMCR 1 の EV ビッ トを 1 にセットすることで、動作モードはイレースベリファイモードへ遷移します。イレ ースベリファイモードでは、リードする前にリードするアドレスにデータ H'F F をダミー ライトしてください。ダミーライトは(γ)μ s 以上の時間が経過してから行ってくださ い。この状態でフラッシュメモリをリード(ベリファイデータは 16 ビットで読み出す) するとラッチしたアドレスのデータが読み出されます。このリード動作は、ダミーライト 後、(ε)μ s おいてから行ってください。読み出したデータが消去(データがすべて 1) されていた場合、次のアドレスをダミーライトし、イレースベリファイを行います。読み 出したデータが未消去の場合、再度イレースモードに設定し、同様にイレース/イレース ベリファイシーケンスを繰り返します。ただし、この繰り返し回数は(N)回を超えない ようにしてください。ベリファイ完了後、イレースベリファイモードを解除し、(η)μ s 以上の待機時間をおいてください。消去対象全ブロックの消去が完了している場合は、 F LMCR 1 の S WE ビットを 0 にクリアした後、(θ)μ s 以上の待機時間をおいてくださ 732 23. ROM い。未消去のブロックが存在する場合は、消去するフラッシュメモリのブロックを EBR1、 EB R2 で 1 ビット設定し、同様にイレース/イレースベリファイシーケンスを繰り返しま す。 START *1 FLMCR1のSWE-bitをセット Wait (x) μs *2 n=1 EBR1、EBR2 を設定する *4 WDTイネーブル FLMCR2のESU-bitをセット Wait (y) μs *2 消去開始 FLMCR1のE-bitをセット *2 Wait (z) ms 消去停止 FLMCR1のE-bitをクリア *2 Wait (α) μs FLMCR2のESU-bitをクリア Wait (β) μs *2 WDTディスエーブル FLMCR1のEV-bitをセット Wait (γ) μs *2 n←n+1 ブロック先頭アドレスを ベリファイアドレスにセット ベリファイアドレスにH'FFをダミーライト Wait (ε) μs *2 ベリファイデータをリード *3 アドレス インクリメント ベリファイデータ =all "1"? NG OK NG ブロック最終 アドレス? OK FLMCR1のEV-bitをクリア FLMCR1のEV-bitをクリア Wait (η) μs Wait (η) μs *2 NG 消去対象全ブロックの 消去終了? OK n≧ (N) ? *2 NG FLMCR1のSWE-bitをクリア OK FLMCR1のSWE-bitをクリア Wait (θ) μs Wait (θ) μs 消去終了 【注】 *1 *2 *3 *4 *5 *2 *5 消去不良 プレライト(消去ブロックのデータをすべて"0"にする)は必要ありません。 x、y、z、α、β、γ、ε、η、θおよびNの値を「第26章 電気的特性 フラッシュメモリ特性」に示します。 ベリファイデータは16ビット(W)で読み出します。 EBR1、EBR2は1ビットのみ設定してください。2ビット以上を設定しないでください。 消去はブロック単位で行います。複数のブロックを消去する場合は各ブロック単位で順次消去を行ってください。 図 23.13 イレース/イレースベリファイフロー(単一ブロック消去) 733 23. ROM 23.8 フラッシュメモリのプロテクト フラッシュメモリに対する書き込み・消去プロテクトは、ハードウェアプロテクト、ソ フトウェアプロテクトとエラープロテクトの 3 種類あります。 23.8.1 ハードウェアプロテクト ハードウェアプロテクトとは、フラッシュメモリに対する書き込み/消去が強制的に禁 止、中断された状態のことで、フラッシュメモリコントロールレジスタ 1、2(FLMCR1、 FLMCR2)および消去ブロック指定レジスタ 1、2(EBR1、EBR2)の設定はリセットされ ます(表 23.8 参照)。 表 23.8 ハードウェアプロテクト 項 目 リセット、 説 明 ・リセット(WDT のオーバフローリセットも含む)、ハードウェアスタ スタンバイ ンバイモード、ソフトウェアスタンバイモード、サブアクティブモー プロテクト ド、サブスリープモード、ウォッチモード時は、FLMCR1、FLMCR2、 機 能 書き込み 消去 ○ ○ EBR1、EBR2 は初期化され、書き込み/消去プロテクト状態になりま す。 ・RES 端子によるリセットでは、電源投入後発振が安定するまで RES 端 子を Low レベルに保持しないとリセット状態になりません。また、動 作中のリセットは AC 特性に規定した RES パルス幅の間 RES 端子を Low レベルに保持してください。 23.8.2 ソフトウェアプロテクト ソフトウェアプロテクトは、FLMCR1 の SWE ビット、消去ブロック指定レジスタ 1、2 (EB R1、EB R2) をセットすることで 行えます。ソフトウ ェアプロテクトでは 、フラッシ ュメモリコントロールレジスタ 1(FLMCR1)の P ビットおよび E ビットをセットしても、 プログラムモードまたはイレースモードへは遷移しません(表 23.9 参照)。 表 23.9 ソフトウェアプロテクト 項 目 SWE ビット プロテクト 説 明 ・FLMCR1 の SWE ビットを 0 にセットすることにより、全ブロックの書 機 能 書き込み 消去 ○ ○ − ○ き込み/消去プロテクト状態になります。 (内蔵 RAM/外部メモリ上で実行してください。) ブロック 指定 プロテクト ・消去ブロック指定レジスタ 1、2(EBR1、EBR2)の設定により、ブロ ックごとに消去プロテクトが可能。 ・EBR1 と EBR2 を H'00 に設定すると全ブロックが消去プロテクト状態 になります。 734 23. 23.8.3 ROM エラープロテクト エラープロテクトは、フラッシュメモリへの書き込み/消去中のマイコンの暴走や書き 込み/消去アルゴリズムに沿っていない動作をした場合に発生する異常を検出し、書き込 み/消去動作を強制的に中断するプロテクトです。書き込み/消去動作を中断することで、 過剰書き込みや過剰消去によるフラッシュメモリへのダメージを防止します。 フラ ッシ ュメ モリへ の書 き込 み/消 去中 にマイ コン が異 常動作 する と、 F LMCR 2 の FLER ビットが 1 にセットされ、エラープロテクト状態へ遷移します。この時、FLMCR1、 FLMCR2、EBR1、EBR2 の設定は保持されますが、エラーが発生した時点でプログラムモ ードまたはイレースモードは強制的に中断されます。P ビット、E ビットの再設定を行っ てもプログ ラムモードまたはイレ ースモードへ遷移す ることはできません。 ただし、P V ビット、EV ビットの設定は有効なので、ベリファイモードへの遷移は可能です。 FLER ビットのセット条件は、 (1)書き込み/消去中にフラッシュメモリをリードしたとき(ベクタリードおよび命令フ ェッチを含む) (2)書き込み/消去中の例外処理(リセットは除く)開始直後 (3)書き込み/消去中に S LEEP 命令を実行したとき(ソフトウェアスタンバイ、スリー プ、サブアクティブ、サブスリープ、ウォッチモードへの遷移) (4)書き込み/消去中に CPU がバス権を失ったとき エラープロテクト解除は、リセットまたはハードウェアスタンバイモードのみで行われ ます。 図 23.14 にフラッシュメモリの状態遷移図を示します。 通常動作モード プログラムモード イレースモード リセットまたはハードウェア スタンバイ (ハードウェアプロテクト) RES=0またはSTBY=0 RD VF PR ER FLER=0 エ ラ ー 発 生 は た *2 エラー発生*1 エラープロテクトモード RD VF*4 PR ER FLER=1 0ま S= 0 RE BY= T S RD VF PR ER FLER=0 RES=0または STBY=0 FLMCR1、FLMCR2、 EBR1、EBR2の イニシャライズ状態 ソフトウェアスタンバイ、 エラープロテクトモード スリープ、サブスリープ、 (ソフトウェアスタンバイ、スリープ ウォッチモード サブスリープ、ウォッチモード) RD VF PR ER ソフトウェアスタンバイ、 FLER=1 スリープ、サブスリープ、 FLMCR1、FLMCR2(FLERビットを除く)、 ウォッチモード解除 EBR1、EBR2のイニシャライズ状態*3 【記号説明】 RD:メモリリード可 VF :ベリファイリード可 PR:プログラム可 ER:イレース可 RD:メモリリード不可 VF :ベリファイリード不可 PR:プログラム不可 ER:イレース不可 【注】*1 SLEEP命令以外によるエラー発生のとき、およびサブアクティブモードへの遷移のため SLEEP命令を実行したとき *2 SLEEP命令によるエラー発生のとき(サブアクティブモードを除く) *3 スリープモードを除く *4 サブアクティブモードではVF 図 23.14 フラッシュメモリの状態遷移図 735 23. ROM 23.9 フラッシュメモリの書き込み/消去時の割込み処理 フラッシュメモリへの書き込み、消去中(FLMCR1 の P ビットまたは E ビットがセット)、 およびブートモードでのブートプログラム実行中*1 は、書き込み、消去動作を最優先とす るため、NMI 入力を含むすべての割込みを禁止してください。 これは以下のような動作状態を回避することを目的としています。 (1)書き込み、消去中に割込みが発生することにより、書き込み/消去アルゴリズムに違 反し、正常な動作が保証できなくなる。 (2)書き込み/消去中の割込み例外処理ではベクタリードが正常にできない*2 ため、結果 としてマイコンが暴走してしまう。 (3)ブートプログラム実行中に割込みが発生すると正常なブートモードのシーケンスが実 行できなくなる。 以上のような理由から、オンボードプログラミングモードにおいてのみ例外的に割込み を禁止する条件が存在しますが、これによって正常な書き込み、消去およびマイコン動作 が保証されるものではありません。 このため、フラッシュメモリへの書き込み/消去を行う場合には、マイコンの内部と外 部で NMI を含むすべての割込み要求を禁止する必要があります。また、エラープロテク ト状態で F LMCR 1 の P ビットまたは E ビットが保持された状態でも割込みは禁止状態と なります。 【注】 *1 書き込み制御プログラムによる書き込みが完了するまでは、マイコン内部と外 部で割り込み要求を禁止する必要があります。 *2 この場合、以下の 2 つの理由によってベクタリードが正常に行われません。 ・書き込み、消去中(FLMCR1 の P ビットまたは E ビットがセット)にフラッ シュメモリのリードを行っても正しい値を読み出すことはできません(値は 不定)。 ・割込みベクタテーブルに値がまだ書き込まれていない場合、割込み例外処理 が正しく実行されません。 736 23. ROM 23.10 フラッシュメモリのライタモード 23.10.1 ライタモードの設定 プログラム/データの書き込み/消去可能なモードとして、オンボードプログラミング モード以外にライタモードがあります。ライタモードでは日立 128k バイトフラッシュメ モリ内蔵マイコンデバイスタイプ*、もしくは日立 64k バイトフラッシュメモリ内蔵マイ コンデバイスタイプ*をサポートしている P ROM ライタを用いて内蔵 R OM に自由にプロ グラムを書き込むことができます。ライタモード使用時の注意は、「23.10.10 メモリ書き 込み注意事項」、「2 3.11 フラッシュメモリの書き込み/消去時 の注意」をご参照くだ さい。本デバイスタイプでは、フラッシュメモリ読み出しモード、自動書き込みモード、 自動消去モード、ステータス読み出しモードをサポートしています。自動書き込みモード /自動 消去モード/ ステータス 読み出しモ ードではステ ータスポー リング方式を 採用し ており、また、ステータス読み出しモードでは自動書き込み/自動消去を実行した後に、 その詳細な内部信号を出力します。 表 23.10 にライタモードの端子設定方法を示します。 【注】 * H8S/2148 A マスク品、 H8S/2147 A マスク品、H8S/2144 A マスク品(5V 版、 3V 版共に)は、PROM ライタの書き込み電圧を 3.3V に設定して使用してくだ さい。 A マスク品以外の製品は、3.3V に設定して使用しないでください。 表 23.10 ライタモードの端子設定方法 端子名 設定、外付け回路接続 モード端子:MD1、MD0 MD1、MD0 に Low レベルを入力 STBY 端子 High レベルを入力 (ハードウェアスタンバイモードにしない) RES 端子 パワーオンリセット回路 XTAL、EXTAL 端子 発振回路 その他の設定端子:P97、P92、P91、P90、 P92、P67 に Low レベル、 P67 23.10.2 P97、P91、P90 に High レベルを入力 ソケットアダプタとメモリマップ このライタモードでは、PROM ライタに各パッケージに対応したソケットアダプタを取 り付けて行います。ソケットアダプタは、日立 128k バイトフラッシュメモリ内蔵マイコ ンデバイスタイプ、もしくは日立 64k バイトフラッシュメモリ内蔵マイコンデバイスタイ プをサポートしているライタメーカごとに用意されています。 図 2 3.15 にラ イタモ ード 時の メモリ マッ プを示 しま す。ラ イタ モー ド時の 端子 名は 「1.3.2 動作モード別端子機能一覧」を参照してください。 737 23. ROM MCUモード H8S/2148 Aマスク品 H8S/2144 Aマスク品 H'000000 ライタモード H'00000 MCUモード H8S/2147 Aマスク品 H'000000 ライタモード H'00000 内蔵ROM領域 内蔵ROM領域 H'0FFFF H'00FFFF 不定値出力 H'01FFFF H'1FFFF H'1FFFF 図 23.15 ライタモード時のメモリマップ 23.10.3 ライタモードの動作 表 23.11 にライタモード時の各動作モードの設定方法、表 23.12 にライタモード時の各 コマンドを示します。また、各モードの詳細情報を以下に示します。 メモリ読み出しモード メモリ読み出しモードは、バイト読み出しをサポートします。 自動書き込みモード 自動書き込みモードでは、128 バイト同時書き込みをサポートします。自動書き込み終 了確認にステータスポーリング方式を採用しております。 自動消去モード 自動消去モードでは、フラッシュメモリマット全面の自動消去のみサポートします。自 動消去終了確認にステータスポーリング方式を採用しております。 ステータス読み出しモード 自動書き込み/自動消去方式はステータスポーリング方式を採用しており、正常終了の 確認は FO6 番の信号をリードすることで行えます。ステータス読み出しモードはエラーが 発生したときのエラー情報を出力します。 738 23. ROM 表 23.11 ライタモード時の各動作モードの設定方法 モード ピン名 CE OE WE FO7〜 FO0 FA17〜 FA0 リード L L H データ出力 Ain 出力ディスエーブル L H H Hi-z X コマンド書き込み L H L データ入力 チップディスエーブル* 1 H X X Hi-z 【注】 Ain* 2 X *1 チップディスエーブルは、スタンバイ状態ではありません。内部は動作状態です。 *2 Ain は、自動書き込みモードにおいてアドレスの入力もあることを示しています。 表 23.12 ライタモード時の各コマンド コマンド名 サイクル 第 1 サイクル 第 2 サイクル 数 モード アドレス データ モード アドレス データ メモリ読み出しモード 1+n write X H'00 read RA Dout 自動書き込みモード 129 write X H'40 write WA Din 自動消去モード 2 write X H'20 write X H'20 ステータス読み出し 2 write X H'71 write X H'71 モード 【注】 1. 自動書き込みモードでは、128 バイト同時書き込みにより、コマンド書き込みが 129 サ イクル必要となります。 2. メモリ読み出しモー ドでは、アドレス書き込みサイクル数(n) によって、サイクル数 が変化します。 739 23. ROM 23.10.4 メモリ読み出しモード (1)自動書き込み/自動消去/ステータス読み出し終了後は、コマンド待ち状態に遷移し ています。メモリの内容を読み出す場合は、コマンド書き込みでメモリ読み出しモー ドに遷移させた後に、メモリの内容を読み出す必要があります。 (2)メモリ読み出しモードでは、コマンド待ち状態と同様にコマンド書き込みが行えます。 (3)一度メモリ読み出しモードに遷移させた後は、連続リードが可能です。 (4)電源投入後は、メモリ読み出しモードに遷移します。 表 23.13 メモリ読み出しモード時の AC 特性(1) (条件:V CC =3.3V±0.3V 、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX 位 コマンド書き込みサイクル t nxtc 20 ― μs CE ホールド時間 t ceh 0 ― ns CE セットアップ時間 t ces 0 ― ns データホールド時間 t dh 50 ― ns データセットアップ時間 t ds 50 ― ns 書き込みパルス幅 t wep 70 ― ns WE 立ち上がり時間 tr ― 30 ns WE 立ち下がり時間 tf ― 30 ns コマンド書き込み メモリ読み出しモード FA17〜FA0 ADDRESS STABLE CE OE WE FO7〜FO0 twep tceh tnxtc tces tf tr DATA DATA tdh tds 【注】 データのラッチタイミングは、WEの立ち上がりエッジで行います。 図 23.16 コマンド書き込み後メモリ読み出しタイミング波形 740 単 23. ROM 表 23.14 メモリ読み出しモードから他のモードへ遷移時の AC 特性 (条件:V CC =3.3V±0.3V 、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX 単 位 コマンド書き込みサイクル t nxtc 20 ― μs CE ホールド時間 t ceh 0 ― ns CE セットアップ時間 t ces 0 ― ns データホールド時間 t dh 50 ― ns データセットアップ時間 t ds 50 ― ns 書き込みパルス幅 t wep 70 ― ns WE 立ち上がり時間 tr ― 30 ns WE 立ち下がり時間 tf ― 30 ns メモリ読み出しモード FA17〜FA0 他モードコマンド書き込み ADDRESS STABLE CE twep tnxtc OE tces WE FO7〜FO0 tceh tf DATA tr H'XX tdh tds 【注】 WE、OEを同時にイネーブルしないでください。 図 23.17 メモリ読み出しモードから他のモードへ遷移時のタイミング波形 741 23. ROM 表 23.15 メモリ読み出しモード時の AC 特性(2) (条件:V CC =3.3V±0.3V 、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX 単 位 アクセス時間 t acc ― 20 μs CE 出力遅延時間 t ce ― 150 ns OE 出力遅延時間 t oe ― 150 ns 出力ディスエーブル遅延時間 t df ― 100 ns データ出力ホールド時間 t oh 5 ― ns FA17〜FA0 ADDRESS STABLE ADDRESS STABLE CE VIL OE VIL tacc WE VIH tacc toh toh DATA FO7〜FO0 DATA 図 23.18 CE、OE イネーブル状態リード時のタイミング波形 FA17〜FA0 ADDRESS STABLE ADDRESS STABLE tacc CE tce tce OE toe toe VIH WE FO7〜FO0 DATA DATA toh 図 23.19 CE、OE クロック方式リード時のタイミング波形 742 tdf tdf tacc toh 23.10.5 23. ROM 単 位 自動書き込みモード (1)AC 特性 表 23.16 自動書き込みモード時の AC 特性 (条件:V CC =3.3V±0.3V 、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX コマンド書き込みサイクル t nxtc 20 ― μs CE ホールド時間 t ceh 0 ― ns CE セットアップ時間 t ces 0 ― ns データホールド時間 t dh 50 ― ns データセットアップ時間 t ds 50 ― ns 書き込みパルス幅 t wep 70 ― ns ステータスポーリング開始時間 t wsts 1 ― ms ステータスポーリングアクセス時間 t spa ― 150 ns アドレスセットアップ時間 t as 0 ― ns アドレスホールド時間 t ah 60 ― ns メモリ書き込み時間 t write 1 3000 ms WE 立ち上がり時間 tr ― 30 ns WE 立ち下がり時間 tf ― 30 ns FA17〜FA0 ADDRESS STABLE CE tceh tas tah tnxtc OE tnxtc twep WE FO7 データ転送 1バイト…128バイト tces tf twsts tspa twrite(1〜3000ms) 書き込み動作終了判定信号 tr tds tdh 書き込み正常終了判定信号 FO6 書き込みウェイト FO7〜FO0 H'40 DATA DATA FO5〜FO0=0 図 23.20 自動書き込みモードのタイミング波形 743 23. ROM (2)自動書き込みモードにおける注意事項 (a)自動書き込みモードでは、128 バイト同時書き込みを行います。これは、バイトデー タを 128 回連続で転送してください。 (b)128 バイト以下の書き込みでも 128 バイトのデータ転送を行う必要があります。必要 ないアドレスへのメモリ書き込みは、データを H'FF にして書き込みを行う必要があり ます。 (c)転送するアドレスの下位 8 ビットは、H'00、H'80 でなければなりません。有効アドレ ス以外を入力した場合は、メモリ書き込み動作に移行しますが、書き込みエラーとな ります。 (d)メモリアドレスの転送は、第 2 サイクルで行います(図 2 3.20 )。第 3 サイクル以降 では転送しないでください。 (e)書き込み動作中は、コマンド書き込みを行わないでください。 (f)書き込みは、各アドレスの 128 バイト単位のブロックに対して、1 回の自動書き込み で行ってください。2 回以上の書き込みについては特性保証できません。 (g)自動書き込み正常終了の確認には、FO6 を調べることにより行います。または、ステ ータス読み出しモードを使用しても確認することができます(F O7 番のステータスポ ーリングは、自動書き込み動作終了判定用端子です)。 (h)ステータスポーリングの FO6、FO7 端子情報は、次のコマンド書き込みまで保持され ます。次のコマンド書き込みが行われてなければ、C E、OE をイネーブルにすること により読み出し可能となります。 744 23.10.6 23. ROM 単 位 自動消去モード (1)AC 特性 表 23.17 自動消去モード時の AC 特性 (条件:V CC =3.3V±0.3V 、V SS=0V、Ta=25℃±5℃) 項 目 記 号 MIN MAX コマンド書き込みサイクル t nxtc 20 ― μs CE ホールド時間 t ceh 0 ― ns CE セットアップ時間 t ces 0 ― ns データホールド時間 t dh 50 ― ns データセットアップ時間 t ds 50 ― ns 書き込みパルス幅 t wep 70 ― ns ステータスポーリング開始時間 t ests 1 ― ms ステータスポーリングアクセス時間 t spa ― 150 ns t erase 100 40000 ms WE 立ち上がり時間 tr ― 30 ns WE 立ち下がり時間 tf ― 30 ns メモリ消去時間 FA17〜FA0 CE tces tceh tspa OE tests tnxtc twep WE tf tr terase(100〜40000ms) tds FO7 消去終了判定信号 tdh 消去正常終了確認信号 FO6 FO7〜FO0 tnxtc CLin DLin H'20 H'20 FO5〜FO0=0 図 23.21 自動消去モードのタイミング波形 745 23. ROM (2)自動消去モードにおける注意事項 (a)自動消去モードは、メモリ全面消去のみサポートします。 (b)自動消去中はコマンド書き込みを行わないでください。 (c)自動消去正常終了の確認には、FO6 を調べることにより行います。または、ステータ ス読み出しモードを使用しても確認することができます(F O7 番のステータスポーリ ングは、自動消去動作終了判定用端子です)。 (d)ステータスポーリングの FO6、FO7 端子情報は、次のコマンド書き込みまで保持され ます。次のコマンド書き込みが行われてなければ、C E、OE をイネーブルにすること により読み出し可能となります。 23.10.7 ステータス読み出しモード (1)ステータス読み出しモードは、異常終了の種類を特定させるためのモードです。自動 書き込みモード/自動消去モードで異常終了が起きた場合に使用してください。 (2)リターンコードは、ステータス読み出しモード以外のコマンド書き込みが行われるま で保持されます。 表 23.18 ステータス読み出しモード時の AC 特性 (条件:V CC =3.3V±0.3V 、V SS=0V、Ta=25℃±5℃) 項 746 目 記 号 MIN MAX 単 位 コマンド書き込みサイクル t nxtc 20 ― μs CE ホールド時間 t ceh 0 ― ns CE セットアップ時間 t ces 0 ― ns データホールド時間 t dh 50 ― ns データセットアップ時間 t ds 50 ― ns 書き込みパルス幅 t wep 70 ― ns OE 出力遅延時間 t oe ― 150 ns ディスエーブル遅延時間 t df ― 100 ns CE 出力遅延時間 t ce ― 150 ns WE 立ち上がり時間 tr ― 30 ns WE 立ち下がり時間 tf ― 30 ns 23. ROM FA17〜FA0 CE tnxtc tce OE tnxtc twep WE tces tceh tf tds tnxtc twep tf tr tds tdh tdh H'71 FO7〜FO0 【注】 tdf toe tceh tces tr H'71 DATA FO2、FO3は未定義です。 図 23.22 ステータス読み出しモードのタイミング波形 表 23.19 ステータス読み出しモードのリターンコマンド ピン名 FO7 FO6 FO5 FO4 FO3 FO2 FO1 FO0 属性 正常終了 コマンド 書き込み 消去エラー − − 書き込み 有効 判定 エラー エラー or アドレス 消去回数 エラー オーバー 初期値 内容 【注】 23.10.8 0 0 0 0 0 0 − − 0 0 正常終了:0 コマンド 書き込み 消去 回数オーバー 有効アドレス 異常終了:1 エラー:1 エラー:1 エラー:1 時:1 エラー:1 その他:0 その他:0 その他:0 その他:0 その他:0 FO2、FO3 は未定です。 ステータスポーリング (1)FO7 のステータスポーリングは、自動書き込み/自動消去モード時の動作状態を示す フラグです。 (2)FO6 のステータスポーリングは、自動書き込み/自動消去モード時の正常、または異 常終了を示すフラグです。 表 23.20 ステータスポーリング出力の真理値表 端子名 内部動作中 異常終了 − 正常終了 FO7 0 1 0 1 FO6 0 0 1 1 FO0〜FO5 0 0 0 0 747 23. ROM 23.10.9 ライタモードへの遷移時間 発振安定時間、ライタモードセットアップ期間は、コマンドを受け付けることができま せん。ライタモードセットアップ時間後、メモリ読み出しモードに遷移します。 表 23.21 コマンド待ち状態までの遷移時間規定 項 記号 MIN MAX スタンバイ解除(発振安定時間) t osc1 20 − ms ライタモードセットアップ時間 t bmv 10 − ms VCC ホールド時間 t dwn 0 − ms VCC 目 tosc1 tbmv 位 tdwn メモリ読み出 しモード コマンド待ち 状態 RES 単 自動書き込みモード 自動消去モード コマンド待ち Don't care 状態 正常異常終了 判定 コマンド受け付け 図 23.23 発振安定時間、ライタモードセットアップ、および電源立ち下げシーケンス 23.10.10 メモリ書き込み注意事項 (1)すでに書き込まれたアドレスへの書き換えは、自動消去を行った後に自動書き込みを してください。 (2)オンボードプログラミングモードにて書き込み/消去を行ったチップに対して、ライ タモードを用いて書き換えを行う場合は、自動消去を行った後に自動書き込みを行う ことを推奨します。 【注】 1. 日立出荷品の初期状態は、消去状態です。これ以外の消去来歴不明チップに対 して、初期化(消去)レベルをチェック、補正するために自動消去実施を推奨 します。 2. 同一アドレスブロックへの自動書き込みは、1 回のみとします。 748 23. ROM 23.11 フラッシュメモリの書き込み/消去時の注意 オンボードプログラミングモード、およびライタモード使用時の注意事項を示します。 (1)規定された電圧、タイミングで書き込み/消去を行ってください。 定格以上の電圧を印加した場合、製品の永久破壊にいたることがあります。 PROM ライタは、日立 128k バイトフラッシュメモリ内蔵マイコンデバイスタイプ、も しくは日立 64k バイトフラッシュメモリ内蔵マイコンデバイスタイプの書き込み電圧 3.3V をサポートしているものを使用してください。 ライタの設定を HN28F101 や書き込み電圧を 5.0V にセットしないでください。また、 規定したソケットアダプタ以外は使用しないでください。誤って使用した場合、破壊 にいたることがあります。 (2)電源投入/切断時の注意 VCC 電源の印加/切断時は RES 端子を Low レベルに固定し、フラッシュメモリをハー ドウェアプロテクト状態にしてください。 この電源投入および解除タイミングは、停電等による電源の切断、再投入時にも満足 するようにしてください。 (3 )フ ラッシュメモ リへの書き込み 、消去は推奨 するアルゴリズ ムにしたがっ て行って ください。 推奨アルゴリズムでは、デバイスへの電圧ストレスあるいはプログラムデータの信頼 性を損なうことなく書き込み、消去を行うことができます。また、FLMCR1 の P ビッ ト、E ビットをセットするときは、プログラムの暴走等に備えてあらかじめウォッチ ドッグタイマを設定してください。 (4 )S WE ビットのセット/クリアは、フラッシュメモリ上のプログラム実行中に行わな いでください。 SWE ビットのセット/クリアは、フラッシュメモリ上のプログラム実行中に行わない でください。フラッシュメモリ上のプログラム実行とデータの読み出しは、SWE ビッ トをクリアした後に 100 μ s 以上の待ち時間をおいて行ってください。 S WE ビットを セットするとフラ ッシュメモリのデー タを書き換えでき ますが、S WE =1のときは、プログラムベリファイ/イレースベリファイモード以外ではフラッシ ュメモリを読み出すことはできません。ベリファイ(プログラム/イレース中のベリ ファイ)以外の目的で、フラッシュメモリをアクセスしないでください。 また、プログラム/イレース/ベリファ イ中に S WE ビットのクリアを行わないでく ださい。 749 23. ROM (5)フラッシュメモリの書き込み中または消去中に割り込みを使用しないでください。 フラッシュメモリへの書き込み/消去を行う場合は、書き込み/消去動作を最優先と するため、NMI を含むすべての割り込み要求を禁止してください。 (6)追加書き込みは行わないでください。書き換えは消去後に行ってください。 オンボードプログラミングでは 128 バイトの書き込み単位ブロックへの書き込みは、1 回のみとしてください。ライタモードでも 128 バイトの書き込み単位ブロックへの書 き込みは、1 回のみとしてください。 書き込みはこの書き込み単位ブロックがすべて消去された状態で行ってください。 (7 )書き込み前に、必ず、正しく P ROM ライタに装着されていることを確認してくださ い。 PROM ライタのソケット、ソケットアダプタ、および製品のインデックスが一致して いないと過剰電流が流れ、製品が破壊することがあります。 (8)書き込み中はソケットアダプタや製品に手を触れないでください。 接触不良などにより、書き込み不良になることがあります。 23.12 F-ZTAT マイコンのマスク ROM 化時の注意事項 マスク版には、F -ZTAT 版に存在するフラッシュメモリのコントロール用内部レジスタ が存在しません。表 23.22 に F-ZTAT 版に存在して、マスク版に存在しないレジスタを示 します。表 23.22 に示したレジスタをリードした場合、マスク版では、不定値が読み出さ れます。このため、F -ZTAT 版で開発したアプリケーションソフトをマスク R OM 版に変 更する場合、表 23.22 に示したレジスタの影響がないようアプリケーションソフトを変更 してください。 表 23.22 F-ZTAT 版に存在してマスク ROM 版に存在しないレジスタ レジスタ名称 750 略称 アドレス フラッシュメモリコントロールレジスタ 1 FLMCR1 H'FF80 フラッシュメモリコントロールレジスタ 2 FLMCR2 H'FF81 消去ブロック指定レジスタ 1 EBR1 H'FF82 消去ブロック指定レジスタ 2 EBR2 H'FF83 24. クロック発振器 第 24 章 24.1 24.2 24.3 目次 概要 ....................................................................................................................................... 753 24.1.1 ブロック図 ............................................................................................ 753 24.1.2 レジスタ構成 ......................................................................................... 753 各レジスタの説明 ................................................................................................................... 754 24.2.1 スタンバイコントロールレジスタ(SBYCR) ......................................... 754 24.2.2 ローパワーコントロールレジスタ(LPWRCR)....................................... 755 発振器 .................................................................................................................................... 756 24.3.1 水晶発振子を接続する方法 ..................................................................... 756 24.3.2 外部クロックを入力する方法.................................................................. 758 24.4 デューティ補正回路 ................................................................................................................ 761 24.5 中速クロック分周器 ................................................................................................................ 761 24.6 バスマスタクロック選択回路................................................................................................... 761 24.7 サブクロック入力回路............................................................................................................. 761 24.8 サブクロック波形成形回路 ...................................................................................................... 762 24.9 クロック選択回路 ................................................................................................................... 763 24. 752 クロック発振器 クロック発振器 24. 24.1 概要 本 LSI は、クロック発振器(CPG:Clock Pulse Generator)を内蔵しており、システムク ロック(φ)、バスマスタクロック、および内部クロックを生成します。 クロック発振器は、発振器、デューティ補正回路、クロック選択回路、中速クロック分 周器、バスマスタクロック選択回路、サブクロック入力回路、波形成形回路から構成され ます。 24.1.1 ブロック図 クロック発振器のブロック図を図 24.1 に示します。 EXTAL 発振器 XTAL デューティ 補正回路 クロック 選択回路 中速クロック 分周器 φ/2 〜φ/32 φ φSUB サブクロック 入力回路 EXCL 波形成形 回路 システムクロック 内部クロック φ端子へ 周辺モジュールへ バスマスタ クロック 選択回路 バスマスタクロック CPU DTCへ WDT1 カウントクロック 図 24.1 クロック発振器のブロック図 24.1.2 レジスタ構成 クロック発振器は、SBYCR、LPWRCR で制御されます。レジスタ構成を表 24.1 に示し ます。 表 24.1 レジスタ構成 名 略称 R/W 初期値 アドレス* スタンバイコントロールレジスタ SBYCR R/W H'00 H'FF84 ローパワーコントロールレジスタ LPWRCR R/W H'00 H'FF85 【注】 * 称 アドレスの下位 16 ビットを示しています。 753 24. クロック発振器 24.2 各レジスタの説明 24.2.1 スタンバイコントロールレジスタ(SBYCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 SSBY STS2 STS1 STS0 ― SCK2 SCK1 SCK0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W ― R/W R/W R/W S BYC R は 8 ビットのリード/ライト可能なレジスタで、低消費電力モードの制御を行 います。 ここで は、ビッ ト 2〜0 について のみ説明 します。 その他の ビットの 詳細につ いては 「25.2.1 スタンバイコントロールレジスタ(SBYCR)」を参照してください。 SBYCR はリセットまたはハードウェアスタンバイモード時に H'00に初期化されます。 ソフトウェアスタンバイモードでは初期化されません。 ビット 2〜0:システムクロックセレクト 2〜0(SCK2〜SCK0) 高速モード、および中速モードでのバスマスタのクロックを選択します。 なお、サブア クティブモード、ウォッチ モードに遷移して動作させ る場合には、S CK2 〜SCK0 をすべて 0 としてください。 ビット 2 ビット 1 ビット 0 SCK2 SCK1 SCK0 0 0 0 バスマスタは高速モード 1 中速クロックはφ/2 0 中速クロックはφ/4 1 中速クロックはφ/8 0 中速クロックはφ/16 1 中速クロックはφ/32 − − 1 1 0 1 754 説 明 (初期値) 24. 24.2.2 クロック発振器 ローパワーコントロールレジスタ(LPWRCR) ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 DTON LSON NESEL EXCLE − − − − 0 0 0 0 0 0 0 0 R/W R/W R/W R/W − − − − LP WR CR は 8 ビットのリード/ライト可能なレジスタで、低消費電力モードの制御を 行います。 ここでは、ビット 4 についてのみ説明します。その他のビットの詳細については「25.2.2 ローパワーコントロールレジスタ(LPWRCR)」を参照してください。 LP WR CR はリセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 ソフトウェアスタンバイモードでは初期化されません。 ビット 4:サブクロック入力イネーブル(EXCLE) EXCL 端子からのサブクロック入力を制御します。 ビット 4 説 明 EXCLE 0 EXCL 端子からのサブクロック入力禁止 1 EXCL 端子からのサブクロック入力許可 (初期値) 755 24. クロック発振器 24.3 発振器 クロックを供給する方法には、水晶発振子を接続する方法と外部クロックを入力する方 法の 2 通りがあります。 24.3.1 水晶発振子を接続する方法 (1)回路構成 水晶発振子を接続する場合の接続例を図 24.2 に示します。ダンピング抵抗 R d は、表 24.2 に示すものを使用してください。また、水晶発振子は、AT カット並列共振形を使用して ください。 CL1 EXTAL XTAL Rd CL1=CL2=10〜22pF CL2 図 24.2 水晶発振子の接続例 表 24.2 ダンピング抵抗値 756 周波数(MHz) 2 4 8 10 12 16 20 Rd(Ω) 1k 500 200 0 0 0 0 24. クロック発振器 (2)水晶発振子 図 2 4.3 に水晶発振子の等価回路を示します。水晶発振子は表 2 4.3 に示す特性のものを 使用してください。 水晶発振子は、システムクロック(φ)と同一の周波数のものを使用してください。 CL L Rs XTAL EXTAL C0 ATカット並列共振形 図 24.3 水晶発振子の等価回路 表 24.3 水晶発振子の特性 周波数(MHz) 2 4 8 10 12 16 20 Rs max(Ω) 500 120 80 70 60 50 40 C0 max(pF) 7 (3)ボード設計上の注意 水晶発振子を接続して発振させる場合、次の点に注意してください。 発振回路部の近くに信号線を通過させないでください(図 24.4)。誘導により正しい発 振ができなくなる場合があります。 また、ボード設計に際しては、水晶発振子および負荷容量はできるだけ XTAL、EXTAL 端子の近くに配置してください。 禁止 信号A 信号B CL2 本LSI XTAL EXTAL CL1 図 24.4 発振回路部のボード設計に関する注意事項 757 24. クロック発振器 24.3.2 外部クロックを入力する方法 (1)回路構成 外部クロック入力の接続例を図 2 4.5 に示します。XTA L 端子をオープン状態にする場 合は、寄生容量を 10pF 以下としてください。 図 24.5(b)の場合、スタンバイモード、サブアクティブモード、サブスリープモード、 およびウォッチモード時には外部クロックが High レベルになるようにしてください。 外部クロック入力 EXTAL オープン状態 XTAL (a) XTAL端子をオープンにする接続例 外部クロック入力 EXTAL XTAL (b) XTAL端子に逆相クロックを入力する接続例 図 24.5 外部クロックの接続例 (2)外部クロック 外部クロックは、システムクロック(φ)と同一の周波数としてください。 外部クロックの入力条件を表 24.4 および図 24.6 に示します。 758 24. クロック発振器 表 24.4 外部クロック入力条件 項 目 記号 外部クロック入力 VCC=2.7〜5.5V VCC=5.0V±10% 単位 測定条件 min max min max t EXL 40 − 20 − ns t EXH 40 − 20 − ns t EXr − 10 − 5 ns t EXf − 10 − 5 ns t CL 0.4 0.6 0.4 0.6 t cyc φ≧5MHz 80 − 80 − ns φ<5MHz 0.4 0.6 0.4 0.6 t cyc φ≧5MHz 80 − 80 − ns φ<5MHz 図 24.6 パルス幅 Low レベル 外部クロック入力 パルス幅 High レベル 外部クロック 立ち上がり時間 外部クロック 立ち下がり時間 クロックパルス幅 Low レベル クロックパルス幅 t CH High レベル tEXH 図 26.5 tEXL VCC×0.5 EXTAL tEXr tEXf 図 24.6 外部クロック入力タイミング 表 2 4.5 に外部クロック出力安定遅延時間、図 2 4.7 に外部クロック出力安定遅延時間タ イミングを示します。発振器とデューティ補正回路は、EXTA L 端子に入力した外部クロ ックの入力の波形を調整する機能を持っています。EXTA L 端子に規定のクロック信号を 入力すると、外部クロック出力安定遅延時間(tDEXT)経過後に内部クロック信号出力が確 定します。 tDE XT 期間中はクロック信号出力が確定していないので、リセット信号を Low レベルにし、リセット状態に保持してください。 759 24. クロック発振器 表 24.5 外部クロック出力安定遅延時間 [条件:V CC =2.7V〜5.5V、AVCC =2.7V〜5.5V、V SS=AVSS=0V] 項 目 外部クロック出力安定遅延時間 【注】 記号 min. max. 単位 備考 t DEXT* 500 − μs 図 24.7 t DEXT は、RES パルス幅(t RESW)を含みます。 * VCC 2.7V STBY VIH EXTAL φ (内部および外部) RES tDEXT* 【注】 * tDEXTは、RESパルス幅(tRESW)を含みます。 図 24.7 外部クロック出力安定遅延時間タイミング 760 24. クロック発振器 24.4 デューティ補正回路 デューティ補正回路は、発振周波数 5MHz 以上の場合に有効になり、発振器の出力する クロックのデューティを補正し、システムクロック(φ)を生成します。 24.5 中速クロック分周器 中速クロック分周器は 、システムクロックを分周し、φ/2、φ/ 4、φ/8、φ/16、 φ/32 を生成します。 24.6 バスマスタクロック選択回路 バスマスタクロック 選択回路は、バスマスタに供給する クロックを、S BYC R の S CK2 〜SCK0 ビットにしたがって、システムクロック(φ)、または中速クロック(φ/2、φ /4、φ/8、φ/16、φ/32)から選択します。 24.7 サブクロック入力回路 EXCL 端子からのサブクロック入力を制御します。 (1)サブクロックを入力する方法 サブクロックを使用する場合は、EXCL 端子から 32.768KHz の外部クロックを入力して ください。この時、P 9DDR の P 96DDR ビットを 0 にクリアし、LP WR CR の EXC LE ビッ トを 1 にセットしてください。 サブクロックの入力条件を表 24.6 および図 24.8 に示します。 761 24. クロック発振器 表 24.6 サブクロック入力条件 項 目 記号 サブクロック入力 VCC=2.7〜5.5V 単位 測定条件 図 24.8 min typ max t EXCLL − 15.26 − μs t EXCLH − 15.26 − μs t EXCLr − − 10 ns t EXCLf − − 10 ns パルス幅 Low レベル サブクロック入力 パルス幅 High レベル サブクロック入力 立ち上がり時間 サブクロック入力 立ち下がり時間 tEXCLH tEXCLL VCC×0.5 EXCL tEXCLr tEXCLf 図 24.8 サブクロック入力タイミング (2)サブクロックを必要としない場合 サブクロックを必要としない場合には、サブクロック入力をイネーブルにしないでくだ さい。 24.8 サブクロック波形成形回路 EXCL 端子から入力されたサブクロックのノイズ除去のため、φクロックの分周クロッ クでサンプリングします。サンプリング周波数は、LPWRCR の NESEL ビットで設定しま す。詳細は、「25.2.2 ローパワーコントロールレジスタ(LPWRCR)」を参照してくだ さい。 サブアクティブモード、サブスリープモード、およびウォッチモードでは、サンプリン グされません。 762 24. クロック発振器 24.9 クロック選択回路 マイコン内部で使用するシステムクロックを選択します。 高速モード、中速モード、スリープモード、リセット状態、スタンバイモードからの復 帰時には、EXTAL、XTAL 端子の発振器で生成されるクロックをシステムクロックとして 選択します。 サブアクティブモード、サブスリープモード、ウォッチモードでは、EXCL 端子から入 力されるサブクロックをシステムクロックとして選択します。このとき、CPU、TMR0、1、 WD T0、1、ポート、割込みなどのモジュールおよび機能は、φ S UB により動作し、各タ イマのカウントクロックもφ SUB を分周したクロックとなります。 763 24. 764 クロック発振器 25. 低消費電力状態 第 25 章 25.1 目次 概要 ....................................................................................................................................... 767 25.1.1 25.2 レジスタ構成 ......................................................................................... 771 各レジスタの説明 ................................................................................................................... 772 25.2.1 スタンバイコントロールレジスタ(SBYCR) ......................................... 772 25.2.2 ローパワーコントロールレジスタ(LPWRCR)....................................... 774 25.2.3 タイマコントロール/ステータスレジスタ(TCSR)............................... 776 25.2.4 モジュールストップコントロールレジスタ(MSTPCR) .......................... 777 25.3 中速モード ............................................................................................................................. 778 25.4 スリープモード....................................................................................................................... 779 25.5 25.6 25.7 25.8 25.9 25.4.1 スリープモード...................................................................................... 779 25.4.2 スリープモードの解除............................................................................ 779 モジュールストップモード ...................................................................................................... 780 25.5.1 モジュールストップモード ..................................................................... 780 25.5.2 使用上の注意 ......................................................................................... 781 ソフトウェアスタンバイモード ............................................................................................... 782 25.6.1 ソフトウェアスタンバイモード .............................................................. 782 25.6.2 ソフトウェアスタンバイモードの解除 .................................................... 782 25.6.3 ソフトウェアスタンバイモード解除後の発振安定時間の設定 ................... 783 25.6.4 ソフトウェアスタンバイモードの応用例 ................................................. 783 25.6.5 使用上の注意 ......................................................................................... 784 ハードウェアスタンバイモード ............................................................................................... 785 25.7.1 ハードウェアスタンバイモード .............................................................. 785 25.7.2 ハードウェアスタンバイモードのタイミング .......................................... 785 ウォッチモード....................................................................................................................... 786 25.8.1 ウォッチモード...................................................................................... 786 25.8.2 ウォッチモードの解除............................................................................ 786 サブスリープモード ................................................................................................................ 787 25. 低消費電力状態 25.10 25.11 25.9.1 サブスリープモード ............................................................................... 787 25.9.2 サブスリープモードの解除 ..................................................................... 787 サブアクティブモード............................................................................................................. 788 25.10.1 サブアクティブモード............................................................................ 788 25.10.2 サブアクティブモードの解除.................................................................. 788 直接遷移................................................................................................................................. 789 25.11.1 766 直接遷移の概要...................................................................................... 789 25. 低消費電力状態 25.1 概要 本 LSI には、通常のプログラム実行状態のほかに、CPU や発振器の動作を停止し、消費 電力を低くする低消費電力状態があります。CPU、内蔵周辺機能などを個別に制御して、 低消費電力化を実現できます。 本 LSI の動作状態には、 (1)高速モード (2)中速モード (3)サブアクティブモード (4)スリープモード (5)サブスリープモード (6)ウオッチモード (7)モジュールストップモード (8)ソフトウェアスタンバイモード (9)ハードウェアスタンバイモード があり、(2)〜(9)が低消費電力状態です。スリープモード、サブスリープモードは CPU の状態、中速モードは CPU とバスマスタの状態、サブアクティブモードは CPU とバ スマスタ、内蔵周辺機能の状態、モジュールストップモードは内蔵周辺機能(CPU 以外の バスマスタも含む)の状態です。これらは一部組み合わせて設定することができます。 リセット後は、高速モードかつモジュールストップモード(DTC を除く)になっていま す。 表 2 5.1 に各モードでの LS I の内部状態、表 2 5.2 に低消費電力モード遷移条件を示しま す。 また、図 25.1 に、モード遷移図を示します。 767 25. 低消費電力状態 表 25.1 各モードでの LSI の内部状態 機能 システムクロック 発振器 高速 中速 動作 動作 スリープ モジュール ストップ 動作 動作 ウォッチ サブ アクティブ サブ スリープ 停止 停止 停止 ソフト ハード ウェア ウェア スタンバイ スタンバイ 停止 停止 サブクロック入力 動作 動作 動作 動作 動作 動作 動作 停止 停止 CPU 動作 命令 動作 中速動作 停止 動作 停止 サブ クロック 停止 停止 停止 保持 動作 保持 保持 不定 動作 動作 動作 動作 動作 動作 動作 動作 停止 動作 中速動作 動作 動作/停止 (保持) 停止 (保持) 停止 (保持) 停止 (保持) 停止 (保持) 停止 (リセット) 動作 動作 動作 動作 サブ クロック 動作 サブ クロック 動作 サブ クロック 動作 停止 (保持) 停止 (リセット) TMR0,1 動作/停止 (保持) FRT (保持) 外部 割込み レジスタ NMI 保持 IRQ0 IRQ1 IRQ2 周辺機能 DTC の動作 WDT1 WDT0 停止 TMRX,Y 停止 停止 (保持) (保持) タイマ コネクシ ョン IIC0 IIC1 SCI0 動作/停止 停止 停止 停止 停止 SCI1 (リセット) (リセット) (リセット) (リセット) (リセット) SCI2 PWM PWMX HIF,PS2 D/A A/D 【注】 RAM 動作 動作 動作 (DTC) 動作 保持 動作 保持 保持 保持 I/O 動作 動作 動作 動作 保持 動作 動作 保持 ハイインピー ダンス 停止(保持)は、内部レジスタ値保持。内部状態は動作中断。 停止(リセット)は、内部レジスタ値および内部状態を初期化。 モジュールス トップモード時は、停止設定 をしたモジュールのみ停止(リ セットまたは保 持)。 768 25. 低消費電力状態 プログラム停止状態 STBY端子=Low リセット状態 STBY端子=High, RES端子=Low ハードウェア スタンバイモード RES端子=High プログラム実行状態 SSBY=0, LSON=0 SLEEP命令 高速モード (メインクロック) スリープモード (メインクロック) 全ての割込み*3 SCK2〜 SCK0=0 SCK2〜 SCK0≠0 中速モード (メインクロック) SLEEP命令 外部割込み*4 SSBY=1, PSS=0, LSON=0 ソフトウェア スタンバイモード SLEEP命令 割込み*1, LSONビット=0 SLEEP命令 SSBY=1, PSS=1, DTON=1, LSON=0 発振安定時間(STS2〜 0)後クロック切り替え 例外処理 SLEEP命令 SSBY=1, PSS=1, DTON=1, LSON=1 クロック切り替え 例外処理 ウォッチモード (サブクロック) SLEEP命令 割込み*1, LSONビット=1 サブアクティブモード (サブクロック) SLEEP命令 割込み*2 :例外処理を行って遷移します。 【注】 1. SSBY=1, PSS=1, DTON=0 SSBY=0, PSS=1, LSON=1 サブスリープモード (サブクロック) :低消費電力モード 3. 4. 割込みによって各モード間の遷移を行う場合は、割込み要因発生のみで遷移することはできません。 必ず割込み要求を受け付けてから、割込み処理を行うようにしてください。 ハードウェアスタンバイモードを除くすべての状態において、RES=Lowとすると、リセット状態 に遷移します。 すべての状態において、STBY=Lowとすると、ハードウェアスタンバイモードに遷移します。 ウォッチモード、サブアクティブモードに遷移するときは、必ず高速モードに設定してください。 *1 *2 *3 *4 NMI、IRQ0〜IRQ2、IRQ6、IRQ7、WDT1割込み NMI、IRQ0〜IRQ7、WDT0割込み、WDT1割込み、TMR0割込み、TMR1割込み すべての割込み NMI、IRQ0〜IRQ2、IRQ6、IRQ7 2. 図 25.1 モード遷移図 769 25. 低消費電力状態 表 25.2 低消費電力モード遷移条件 遷移前の状態 高速/中速 サブアクティブ 770 遷移時の制御ビット状態 SLEEP 命令による 割込みによる SSBY PSS LSON DTON 遷移後の状態 復帰後の状態 0 * 0 * スリープ 高速/中速 0 * 1 * ─ ─ 1 0 0 * ソフトウェアスタンバイ 高速/中速 1 0 1 * ─ ─ 1 1 0 0 ウォッチ 高速 1 1 1 0 ウォッチ サブアクティブ 1 1 0 1 ─ ─ 1 1 1 1 サブアクティブ ─ 0 0 * * ─ ─ 0 1 0 * ─ ─ 0 1 1 * サブスリープ サブアクティブ 1 0 * * ─ ─ 1 1 0 0 ウォッチ 高速 1 1 1 0 ウォッチ サブアクティブ 1 1 0 1 高速 ─ 1 1 1 1 ─ ─ * :Don't care ─ :設定しないでください。 25. 25.1.1 低消費電力状態 レジスタ構成 低消費電力状態は、SBYCR、LPWRCR、TCSR(WDT1)、MSTPCR で制御されます。 レジスタ構成を表 25.3 に示します。 表 25.3 レジスタ構成 名 称 初期値 アドレス* 1 略称 R/W スタンバイコントロールレジスタ SBYCR R/W H'00 H'FF84* 2 ローパワーコントロールレジスタ LPWRCR R/W H'00 H'FF85* 2 TCSR R/W H'00 H'FFEA MSTPCRH R/W H'3F H'FF86* 2 MSTPCRL R/W H'FF H'FF87* 2 タイマコントロール/ステータスレジスタ (WDT1) モジュールストップコントロールレジスタ 【注】 *1 アドレスの下位 16 ビットを示しています。 * 2 低消 費電力状態の 制御レジス タの一部は 他のレジスタ と同じアド レスに割当て られて います。それぞれのレジスタの選択は、シリアルタイマコントロールレジスタ(STCR) の FLSHE ビットで行ないます。 771 25. 低消費電力状態 25.2 各レジスタの説明 25.2.1 スタンバイコントロールレジスタ(SBYCR) 7 6 5 4 3 2 1 0 SSBY STS2 STS1 STS0 ― SCK2 SCK1 SCK0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W ― R/W R/W R/W ビット : 初期値 : R/W : S BYC R は 8 ビットのリード/ライト可能なレジスタで、低消費電力モードの制御を行 います。 SBYCR はリセットまたはハードウェアスタンバイモード時に H'00に初期化されます。 ソフトウェアスタンバイモードでは初期化されません。 ビット 7:ソフトウェアスタンバイ(SSBY) SLEEP 命令実行による低消費電力遷移時に、他の制御ビットとの組み合わせで動作モー ドを決定します。 なお、割込みなどによってモード間遷移をした場合でも SSBY ビットの内容は変わりま せん。 ビット 7 説 明 SSBY 0 高速モードおよび中速モードで SLEEP 命令を実行したとき、スリープモードに 遷移 サブアクティブモードで SLEEP 命令を実行したとき、サブスリープモードに遷 移 1 (初期値) 高速モードおよび中速モードで SLEEP 命令を実行したとき、ソフトウェアスタ ンバイモード、サブアクティブモード、あるいはウォッチモードに遷移 サブアクティブモードで SLEEP 命令を実行したとき、ウォッチモード、あるい は高速モードに遷移 ビット 6〜4:スタンバイタイマセレクト 2〜0(STS2〜STS0) 特定の割込みや命令によってソフトウェアスタンバイモード、ウォッチモード、サブア クティブモードを解除し、高速モードあるいは中速モードに遷移する場合に、クロックが 安定するまで MCU が待機する時間を選択します。水晶発振の場合、表 25.4 を参照し、動 作周波数に応じて待機時間が 8ms(発振安定時間)以上となるように選択してください。 外部クロックの場合、任意の選択が可能です。 772 25. ビット 6 ビット 5 ビット 4 STS2 STS1 STS0 0 0 0 待機時間= 8192 ステート 1 待機時間= 16384 ステート 0 待機時間= 32768 ステート 1 待機時間= 65536 ステート 0 待機時間= 131072 ステート 1 待機時間= 262144 ステート 0 リザーブ 1 待機時間= 1 1 0 1 【注】 * 説 低消費電力状態 明 (初期値) 16 ステート* フラッシュメモリ内蔵版では、本設定は使用しないでください。 ビット 3:リザーブビット リードすると常に 0 が読み出されます。ライトは無効です。 ビット 2〜0:システムクロックセレクト 2〜0(SCK2〜SCK0) 高速モード、および中速モードでのバスマスタのクロックを選択します。 なお、サブア クティブモード、ウォッチ モードに遷移して動作させ る場合には、S CK2 〜SCK0 をすべて 0 としてください。 ビット 2 ビット 1 ビット 0 SCK2 SCK1 SCK0 0 0 0 バスマスタは高速モード 1 中速クロックはφ/2 0 中速クロックはφ/4 1 中速クロックはφ/8 0 中速クロックはφ/16 1 中速クロックはφ/32 − − 1 1 0 1 説 明 (初期値) 773 25. 低消費電力状態 25.2.2 ローパワーコントロールレジスタ(LPWRCR) ビット : 7 6 5 4 3 2 1 0 DTON LSON NESEL EXCLE − − − − 0 0 0 0 0 0 0 0 R/W R/W R/W R/W − − − − 初期値 : R/W : LP WR CR は 8 ビットのリード/ライト可能なレジスタで、低消費電力モードの制御を 行います。 LP WR CR はリセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 ソフトウェアスタンバイモードでは初期化されません。 ビット 7:ダイレクトトランスファオンフラグ(DTON) SLEEP 命令実行による低消費電力遷移時に、高速モード、中速モードとサブアクティブ モードの各モード間を直接遷移するか否かを指定します。SLEEP 命令実行後に遷移する動 作モードは、本ビット以外の制御ビットの組み合わせで決定します。 ビット 7 説 明 DTON ・高速モード、あるいは中速モードで SLEEP 命令を実行したとき、スリープモー 0 ド、ソフトウェアスタンバイモード、またはウォッチモード*に遷移 ・サブアクティブモードで SLEEP 命令を実行したとき、サブスリープモード、ま たはウォッチモードに遷移 (初期値) ・高速モード、あるいは中速モードで SLEEP 命令を実行したとき、サブアクティ 1 ブモード*に直接遷移、またはスリープモード、ソフトウェアスタンバイモード に遷移 ・サブアクティブモードで SLEEP 命令を実行したとき、高速モードに直接遷移、 またはサブスリープモードに遷移 【注】 * ウォッチモード、サブアクティブモードへの遷移時は、必ず高速モードに設定してくだ さい。 ビット 6:ロースピードオンフラグ(LSON) SLEEP 命令実行による低消費電力遷移時に、他の制御ビットとの組み合わせで動作モー ドを決定します。また、ウォッチモードを解除時に、高速モードに遷移するかサブアクテ ィブモードに遷移するかを制御します。 774 25. ビット 6 説 低消費電力状態 明 LSON ・高速モード、あるいは中速モードで SLEEP 命令を実行したとき、スリープモー 0 ド、ソフトウェアスタンバイモード、またはウォッチモード*に遷移 ・サブアクティブモードで SLEEP 命令を実行したとき、ウォッチモードに遷移、 または高速モードに直接遷移 ・ウォッチモード解除後に高速モードに遷移 (初期値) ・高速モードで SLEEP 命令を実行したとき、ウォッチモード、またはサブアクテ 1 ィブモード*に遷移 ・サブアクティブモードで SLEEP 命令を実行したとき、サブスリープモード 、ま たはウォッチモードに遷移 ・ウォッチモード解除後にサブアクティブモードに遷移 【注】 * ウォッチモード、サブアクティブモードへの遷移時は、必ず高速モードに設定してくだ さい。 ビット 5:ノイズ除去サンプリング周波数選択(NESEL) EXCL 端子より入力されたサブクロック(φ SUB)を、システムクロック発振器より生 成されたクロック(φ)により、サンプリングする周波数を選択します。φ=5MHz 以上 のときは、0 をセットしてください。 ビット 5 説 明 NESEL 0 φの 32 分周クロックでサンプリング 1 φの 4 分周クロックでサンプリング (初期値) ビット 4:サブクロック入力イネーブル(EXCLE) EXCL 端子からのサブクロック入力を制御します。 ビット 4 説 明 EXCLE 0 EXCL 端子からのサブクロック入力禁止 1 EXCL 端子からのサブクロック入力許可 (初期値) ビット 3〜0:リザーブビット リードすると常に 0 が読み出されます。ライトは無効です。 775 25. 低消費電力状態 25.2.3 タイマコントロール/ステータスレジスタ(TCSR) ■TCSR1 7 6 5 4 3 2 1 0 OVF WT/IT TME PSS RST/NMI CKS2 CKS1 CKS0 0 0 0 0 0 0 0 0 R/(W)* R/W R/W R/W R/W R/W R/W R/W ビット : 初期値 : R/W : 【注】 * フラグをクリアするための0ライトのみ可能です。 TCSR1 は、リード/ライト可能な 8 ビットのレジスタで、WDT1 の TCNT に入力するク ロック、モードの選択などを行います。 ここでは、ビット 4 についてのみ説明します。その他のビットの詳細については「14.2.2 タイマコントロール/ステータスレジスタ(TCSR)」を参照してください。 TCSR1 は、リセットまたはハードウェアスタンバイモード時に H'00 に初期化されます。 ソフトウェアスタンバイモード時には初期化されません。 ビット 4:プリスケーラセレクト(PSS) WDT1 の TCNT の入力クロックソースを選択します。 また、低消費電力モード遷移時の動作を制御します。SLEEP 命令実行後に遷移する動作 モードは、本ビット以外の制御ビットとの組み合わせで決定します。 詳細は、「14.2.2 タイマコントロール/ステータスレジスタ(TCSR)」のクロックセ レクト 2〜0 の説明および本章を参照してください。 ビット 4 説 明 PSS 0 ・TCNT はφベースのプリスケーラ(PSM)の分周クロックをカウント ・高速モードあるいは中速モードで SLEEP 命令を実行したとき、スリープモー ド、ソフトウェアスタンバイモードに遷移 1 (初期値) ・TCNT はφ SUB ベースのプリスケーラ(PSS)の分周クロックをカウント ・高速モードあるいは中速モードで SLEEP 命令を実行したとき、スリープモー ド、ウォッチモード*、サブアクティブモード*に遷移 ・サブアクティブモードで SLEEP 命令を実行したとき、サブスリープモード、 ウォッチモード、高速モードに遷移 【注】 * ウォッチモード、サブアクティブモードへの遷移時は、必ず高速モードに設定してくだ さい。 776 25. 25.2.4 低消費電力状態 モジュールストップコントロールレジスタ(MSTPCR) MSTPCRH 7 ビット : 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W MSTPCR は 8 ビットのリード/ライト可能な 2 本のレジスタで、モジュールストップモ ードの制御を行います。 MST PC R は、リセットまたはハードウェアスタンバイモード時に H'3F FF に初期化され ます。ソフトウェアスタンバイモードでは初期化されません。 MSTPCRH、MSTPCRL ビット 7〜0:モジュールストップ(MSTP15〜MSTP0) モジュールストップモードを指定します。内蔵周辺機能の選択方法は表 2 5.4 を参照し てください。 説 MSTPCRH、 明 MSTPCRL ビット 7〜0 MSTP15〜MSTP0 0 モジュールストップモード解除 ( MSTP15、MSTP14 の初期値) 1 モジュールストップモード設定 ( MSTP13〜MSTP0 の初期値) 777 25. 低消費電力状態 25.3 中速モード 高速モード時に SBYCR の SCK2〜SCK0 ビットを 1 にセットすると、そのバスサイクル の終了時点で中速モ ードになります。中速モードでは、C PU は、S CK2〜S CK0 ビットで 指定した動作クロック(φ/2、φ/4、φ/8、φ/16、φ/32)で動作します。C PU 以 外のバスマスタ(DTC)も中速モードで動作します。 バスマスタ以外の内蔵周辺機能は常に高速クロック(φ)で動作します。 中速モードではバスマスタの動作クロックに対して、指定されたステート数でバスアク セスを行います。例えば、動作クロックとしてφ/4 を選択した場合、内蔵メモリは 4 ス テートアクセス、内部 I/O レジスタは 8 ステートアクセスになります。 中速モードの解除は、SCK2〜SCK0 ビットをいずれも 0 にクリアすることによって行わ れ、そのバスサイクルの終了時点で高速モードに遷移し、中速モードは解除されます。 S BYC R の S SB Y ビット=0、LP WR CR の LS ON ビット=0 の状態で S LEEP 命令を実行 すると、スリープモードに遷移します。スリープモードが割込みによって解除されると中 速モードに復帰します。 また、S SB Y ビット=1、LP WR CR の LS ON ビット=0、TC SR (WD T1)の P SS ビット =0 の状態で SLEEP 命令を実行すると、ソフトウェアスタンバイモードに遷移します。ソ フトウェアスタンバイモードが外部割込みによって解除されると、中速モードに復帰しま す。 R ES 端子を Low レベルにするとリセット状態に遷移し、中速モードは解除されます。 ウォッチドッグタイマのオーバフローによるリセットによっても同様です。 STBY 端子を Low レベルにすると、ハードウェアスタンバイモードに遷移します。 中速モードへの遷移、解除のタイミングを図 25.2 に示します。 中速モード φ、 周辺モジュールクロック バスマスタクロック 内部アドレスバス SBYCR 内部ライト信号 図 25.2 中速モードの遷移・解除タイミング 778 SBYCR 25. 低消費電力状態 25.4 スリープモード 25.4.1 スリープモード S BYC R の S SB Y ビット=0、LP WR CR の LS ON ビット=0 の状態で S LEEP 命令を実行 すると、C PU はスリープモードになります 。スリープモード時、C PU の動作は停止しま すが、CPU の内部レジスタの内容は保持されます。CPU 以外の周辺機能は停止しません。 25.4.2 スリープモードの解除 スリープモードの解除は、すべての割込み、RES 端子、または STBY 端子によって行わ れます。 (1)割込みによる解除 割込みが発生すると、スリープモードは解除され、割込み例外処理を開始します。割込 みが禁止されている場合、また、NMI 以外の割込みが CPU でマスクされている場合には、 スリープモードは解除されません。 (2)RES 端子による解除 R ES 端子を Low レベルにすると、リセット状態になります。規定のリセット入力期間 後、RES 端子を High レベルにすると、CPU はリセット例外処理を開始します。 (3)STBY 端子による解除 STBY 端子を Low レベルにすると、ハードウェアスタンバイモードに遷移します。 779 25. 低消費電力状態 25.5 モジュールストップモード 25.5.1 モジュールストップモード モジュ ールストッ プモードは内 蔵周辺機能 のモジュー ル単位で設定 することが できま す。 MSTPCR の対応する MSTP ビットを 1 にセットすると、バスサイクルの終了時点でモジ ュールは動作を停止してモジュールストップモードへ遷移します。このとき C PU は独立 して動作を継続します。 MSTP ビットと内蔵周辺機能の対応を表 25.4 に示します。 対応する MSTP ビットを 0 にクリアすることによって、モジュールストップモードは解 除され、バスサイクルの終了時点でモジュールは動作を再開します。モジュールストップ モードでは、SCI、A/D 変換器、8ビット PWM、14 ビット PWM を除くモジュールの内部 状態が保持されています。 リセット解除後は、DTC を除くすべてのモジュールがモジュールストップモードになっ ています。 モジュールストップモードに設定されたモジュールのレジスタは、リード/ライトでき ません。 780 25. 低消費電力状態 表 25.4 MSTP ビットと内蔵周辺機能の対応 レジスタ ビット MSTPCRH MSTP15 モジュール − MSTP14* データトランスファコントローラ(DTC) MSTP13 16 ビットフリーランニングタイマ(FRT) MSTP12 8 ビットタイマ(TMR0、TMR1) MSTP11 8 ビットPWMタイマ(PWM)、14 ビットPWMタイマ(PWMX) MSTP10 D/A 変換器 MSTP9 A/D 変換器 MSTP8 8 ビットタイマ(TMRX、TMRY)、タイマコネクション MSTPCRL MSTP7 シリアルコミュニケーションインタフェース 0(SCI0) MSTP6 シリアルコミュニケーションインタフェース 1(SCI1) MSTP5 シリアルコミュニケーションインタフェース 2(SCI2) MSTP4* I 2C バスインタフェース(IIC)チャネル0【オプション】 MSTP3* I 2C バスインタフェース(IIC)チャネル1【オプション】 MSTP2 ホストインタフェース(HIF)、 キーボードマトリクス割込みマスクレジスタ(KMIMR)、 キーボードマトリクス割込みマスクレジスタ A(KMIMRA)、 ポート 6 プルアップ MOS コントロールレジスタ(KMPCR)、 キーボードバッファコントローラ(PS2) 【注】 MSTP1* − MSTP0* − ビット 15 は、1 にセットしないでください。また、ビット 1、0 はリード/ライトでき ますが、動作に影響を与えません。 * 25.5.2 H8S/2144 シリーズでは必ず 1 にセットしてください。 使用上の注意 DTC のモジュールストップモードの設定と、DTC のバス権要求が競合すると、バス権 要求が優先され、MSTP ビットは 1 にセットされません。 DTC のバスサイクル終了後に再び MSTP ビットに 1 をライトしてください。 H8S /2144 シリーズを使用する場合、内蔵されないモジュールに対応する MST P ビット は、必ず 1 にセットしてください。 781 25. 低消費電力状態 25.6 ソフトウェアスタンバイモード 25.6.1 ソフトウェアスタンバイモード S BYC R の S SB Y ビット=1、LP WR CR の LS ON ビット=0、TC SR (WD T1)の P SS =0 の状態で S LEEP 命令を実行すると、ソフトウェアスタンバイモードになります。このモ ードでは、CPU、内蔵周辺機能、および発振器のすべての機能が停止します。ただし、CPU の内部レジスタの内容と内蔵 RAM のデータおよび SCI、PWM、PWMX を除く内蔵周辺機 能と I/O ポートの状態は保持されます。 本モードでは、発振器が停止するため、消費電力は著しく低減されます。 25.6.2 ソフトウェアスタンバイモードの解除 ソフトウェアスタンバイモードの解除は、外部割込み(NMI 端子、IRQ0〜IRQ2、IRQ6、 IRQ7 端子)、RES 端子、または STBY 端子によって行われます。 (1)割込みによる解除 NMI、IRQ0〜IRQ2、IRQ6、IRQ7 割込み要求信号が入力されると、クロックが発振を開 始し、S BYC R の S TS2〜S TS0 ビットによって設定された時間が経過した後、安定したク ロックが本 LSI 全体に供給されて、ソフトウェアスタンバイモードは解除され、割込み例 外処理を開始します。 なお、IRQ0〜IRQ2、IRQ6、IRQ7 割込みについては、対応するイネーブルビットが 0 に クリアされている場合、または C PU でマスクされている場合には、ソフトウェアスタン バイモードは解除されません。 (2)RES 端子による解除 R ES 端子を Low レベルにすると、クロックの発振が開始されます。クロックの発振開 始と同時に、本 LSI 全体にクロックが供給されます。このとき RES 端子は必ずクロックの 発振が安定するまで Low レベルに保持してください。R ES 端子を High レベルにすると、 CPU はリセット例外処理を開始します。 (3)STBY 端子による解除 STBY 端子を Low レベルにすると、ハードウェアスタンバイモードに遷移します。 782 25. 25.6.3 低消費電力状態 ソフトウェアスタンバイモード解除後の発振安定時間の設定 SBYCR の STS2〜STS0 ビットの設定は、以下のようにしてください。 (1)水晶発振の場合 待機時間が 8ms(発振安定時間)以上となるように STS2〜STS0 ビットを設定してくだ さい。 表 25.5 に、動作周波数と STS2〜STS0 ビットの設定に対する待機時間を示します。 表 25.5 発振安定時間の設定 待機時間 STS2 STS1 STS0 0 0 1 1 0 1 20MHz 16MHz 12MHz 10MHz 8MHz 6MHz 4MHz 2MHz 0 8192 ステート 0.41 0.51 0.65 0.8 1.0 1.3 2.0 4.1 1 16384 ステート 0.82 1.0 1.3 1.6 2.0 2.7 4.1 8.2 0 32768 ステート 1.6 2.0 2.7 3.3 4.1 5.5 8.2 16.4 1 65536 ステート 3.3 4.1 5.5 6.6 8.2 10.9 16.4 32.8 0 131072 ステート 6.6 8.2 10.9 13.1 16.4 21.8 32.8 65.5 1 262144 ステート 13.1 16.4 21.8 26.2 32.8 43.6 65.6 131.2 0 リザーブ − − − − − − − − 1 16 ステート* 0.8 1.0 1.3 1.6 2.0 2.7 4.0 8.0 :推奨設定時間 【注】 * 単位 ms μs *:Don't care フラッシュメモリ内蔵版では、本設定は使用しないでください。 (2)外部クロックの場合 任意の値を設定可能です。通常の場合は最小時間の使用を推奨します。 25.6.4 ソフトウェアスタンバイモードの応用例 NMI 端子の立ち下がりエッジでソフトウェ アスタンバイモードに遷移し、NMI 端子の 立ち上がりエッジでソフトウェアスタンバイモードの解除を行う例を図 25.3に示します。 この例では、SYSCR の NMIEG ビットが 0 にクリアされている(立ち下がりエッジ指定) 状態で、NMI 割込みを受け付けた後、NMIE G ビットを 1 にセット(立ち上がりエッジ指 定)、SSBY ビットを 1 にセットした後、SLEEP 命令を実行してソフトウェアスタンバイ モードに遷移しています。 その後、NMI 端子の立ち上がりエッジでソフトウェアスタンバイモードが解除されます。 783 25. 低消費電力状態 発振器 φ NMI NMIEG SSBY NMI例外処理 NMIEG=1 SSBY=1 ソフトウェアスタンバイモード (低消費電力状態) SLEEP命令 NMI例外処理 発振安定 時間 tOSC2 図 25.3 ソフトウェアスタンバイモードの応用例 25.6.5 使用上の注意 ソフトウェアスタンバイモードでは、I/O ポートの状態が保持されます。したがって、 High レベルを出力している場合、出力電流分の消費電流は低減されません。 発振安定待機中は消費電流が増加します。 784 25. 低消費電力状態 25.7 ハードウェアスタンバイモード 25.7.1 ハードウェアスタンバイモード STBY 端子を Low レベルにすると、どの状態からでもハードウェアスタンバイモードに なります。 ハードウェアスタンバイモードでは、すべての機能がリセット状態になり動作が停止す るため、消費電力は著しく低減します。このとき、規定の電圧が与えられている限り、内 蔵 RAM のデータは保持されます。I/O ポートはハイインピーダンス状態になります。 内蔵 RAM のデータを保持するためには、STBY 端子を Low レベルにする前に、SYSCR の RAME ビットを 0 にクリアしてください。 また、ハ ードウェアスタ ンバイモード中 には、モード端 子(MD1〜MD0)の 状態を変 化させないでください。 ハードウェアスタンバイモードの解除は、STBY 端子と RES 端子によって行われます。 R ES 端子を Low レベルにした状態で、S TBY 端子を High レベルにすると、リセット状態 になり、クロックは発振を開始します。このとき、RES 端子は必ずクロックの発振が安定 するまで(水晶発振の場合、発振安定時間 8ms 以上)Low レベルを保持してください。そ の後、R ES 端子を High レベルにすると、リセット例外処理状態を経てプログラム実行状 態へ遷移します。 25.7.2 ハードウェアスタンバイモードのタイミング ハードウェアスタンバイモードのタイミング例を図 25.4 に示します。 R ES 端子を Low レベルにした後、S TBY 端子を Low レベルにすると、ハードウェアス タンバイモードに遷移します。解除は、STBY 端子を High レベルにし、クロックの発振安 定時間経過後、RES 端子を Low レベルから High レベルにすることにより行われます。 発振器 RES STBY 発振安定 時間 リセット例外処理 図 25.4 ハードウェアスタンバイモードのタイミング 785 25. 低消費電力状態 25.8 ウォッチモード 25.8.1 ウォッチモード 高速 モード ある いはサ ブアク ティ ブモー ドにお いて 、S BYC R の S SB Y ビッ ト= 1、 LP WR CR の DTO N ビット=0、TC SR (WD T1)の P SS ビット=1 の状態で S LEEP 命令を 実行すると、CPU はウォッチモードに遷移します。 ウォッチモード時、CPU は動作を停止します。また、WDT1 以外の周辺機能は動作を停 止します。規定の電圧が与えられている限り、CPU と一部の内蔵周辺レジスタ、内蔵 RAM の内容は保持され、I/O ポートは遷移前の状態を保持します。 25.8.2 ウォッチモードの解除 ウォッチモードの解除は、割込み( WOVI1 割込み、NMI 端子、IRQ0〜IRQ2、IRQ6、 IRQ7 端子)、RES 端子、または STBY 端子によって行われます。 (1)割込みによる解除 割込みが発生すると、ウォッチモードは解除され、 LPWRCR の LSON ビット=0 のと きは高速モードあるいは中速モードに、 LSON ビット=1 のときはサブアクティブモード に遷移します。高速モードに遷移するときは、S BYC R の S TS2〜S TS0 により設定された 時間が経過した後、安定したクロックが LSI 全体に供給され、割込み例外処理を開始しま す。なお、IRQ0〜IRQ2、IRQ6、IRQ7 割込みについては、対応するイネーブルビットが 0 にクリアされている場合、内蔵周辺機能による割込みについては、割込み許可レジスタに より当該割込みの受付が禁止されている場合、または CPU でマスクされている場合には、 ウォッチモードは解除されません。 ウォッチモードから高速モードに遷移するときの発振安定時間の設定は、「25.6.3 ソ フトウェアスタンバイモード解除後の発振安定時間の設定」を参照してください。 (2)RES 端子による解除 RES 端子による解除については、「25.6.2 ソフトウェアスタンバイモードの解除(2) RES 端子による解除」を参照してください。 (3)STBY 端子による解除 STBY 端子を Low レベルにすると、ハードウェアスタンバイモードに遷移します。 786 25. 低消費電力状態 25.9 サブスリープモード 25.9.1 サブスリープモード サブアクティブモードにおいて、SBYCR の SSBY ビット=0、 LPWRCR の LSON ビッ ト=1、TCSR(WDT1)の PSS ビット=1 の状態で SLEEP 命令を実行すると、CPU はサブ スリープモードに遷移します。 サブスリープモード時、C PU は動作を 停止します。また、TMR 0,1、WD T0,1 以外の周 辺機能は動作を停止します。規定の電圧が与えられている限り、CPU と一部の内蔵周辺レ ジスタ、内蔵 RAM の内容は保持され、I/O ポートは遷移前の状態を保持します。 25.9.2 サブスリープモードの解除 サブスリープモード の解除は、割込み(内蔵周辺機能からの 割込み、NMI 端子、IR Q0 〜IRQ7 端子)、RES 端子、または STBY 端子によって行われます。 (1)割込みによる解除 割込みが発生すると、サブスリープモードは解除され、割込み例外処理を開始します。 なお、IR Q0〜IR Q7 割込みについては、対応するイネーブルビットが 0 にクリアされて いる場合、内蔵周辺機能からの割込みについては、割込み許可レジスタにより当該割込み の受付が禁止されている場合、または C PU でマスクされている場合には、サブスリープ モードは解除されません。 (2)RES 端子による解除 RES 端子による解除については、「25.6.2 ソフトウェアスタンバイモードの解除(2) RES 端子による解除」を参照してください。 (3)STBY 端子による解除 STBY 端子を Low レベルにすると、ハードウェアスタンバイモードに遷移します。 787 25. 低消費電力状態 25.10 サブアクティブモード 25.10.1 サブアクティブモード 高速モードにおいて、S BYC R の S SB Y ビット=1、 LP WR CR の DTO N ビット=1、 LSON ビット=1、TCSR(WDT1)の PSS ビット=1 の状態で SLEEP 命令を実行すると、 CPU はサブアクティブモードに遷移します。また、ウォッチモードで割込みが発生したと き、 LPWRCR の LSON ビット=1 の状態であれば、サブアクティブモードに直接遷移し ます。また、サブスリープモードで割込みが発生したとき、サブアクティブモードに遷移 します。 サブアクティブモード時、CPU はサブクロックにより、低速動作で順次プログラムを実 行します。サブアクティブモードでは、 TMR 0,1、WD T0,1 以外の周辺機能は動作を停止 します。 なお、サブアクティブモードで動作させる場合は、SBYCR の SCK2〜SCK0 の各ビット を必ず 0 としてください。 25.10.2 サブアクティブモードの解除 サブアクティブモードの解除は、SLEEP 命令、RES 端子、または STBY 端子によって行 われます。 (1)SLEEP 命令による解除 SBYCR の SSBY ビット=1、LPWRCR の DTON ビット=0、 TCSR(WDT1)の PSS ビ ット=1 の状態で SLEEP 命令を実行するとサブアクティブモードは解除され、ウォッチモ ードに遷移します。また、SBYCR のSSBYビット=0、LPWRCRの LSONビット=1、TCSR (WD T1)の P SS ビット=1 の状態で S LEEP 命令を実行すると、サブスリープモードに遷 移します。また、S BYC R の S SB Y ビット=1、LP WR CR の DTO N ビット=1、LS ON ビッ ト=0、TCSR(WDT1)の PSS ビット=1 の状態で SLEEP 命令を実行すると、高速モード に直接遷移します。 直接遷移の詳細は「25.11 直接遷移」を参照してください。 (2)RES 端子による解除 RES 端子による解除については、「25.6.2 ソフトウェアスタンバイモードの解除(2) RES 端子による解除」を参照してください。 (3)STBY 端子による解除 STBY 端子を Low レベルにすると、ハードウェアスタンバイモードに遷移します。 788 25. 低消費電力状態 25.11 直接遷移 25.11.1 直接遷移の概要 CPU がプログラムを実行している動作モードには高速モード、中速モード、サブアクテ ィブモードの 3 つのモードがあります。高速モードとサブアクティブモードの間で、プロ グラムを停止することなく遷移することを直接遷移と呼びます。直接遷移は LP WR CR の DTON を1にセットし、SLEEP 命令を実行することにより可能です。遷移後は直接遷移例 外処理を開始します。 (1)高速モードからサブアクティブモードへの直接遷移 高速モードで SBYCR の SSBY ビット=1、LPWRCR の LSON ビット=1、DTON ビット =1、TSCR(WDT1)の PSS ビット=1 にセットした状態で SLEEP 命令を実行すると、サ ブアクティブモードに遷移します。 (2)サブアクティブモードから高速モードへの直接遷移 サブアクティブモードで S BYC R の S SB Y ビット=1、LP WR CR の LS ON ビット=0、 DTON ビット=1、TSCR(WDT1)の PSS ビット=1 の状態で SLEEP 命令を実行すると、 S BYC R の S TS2〜S TS0 により設定された時間を経過した後、直接高速モードに遷移しま す。 789 25. 790 低消費電力状態 26. 電気的特性 第 26 章 目次 26.1 電源電圧と動作範囲 ................................................................................................................ 793 26.2 H8S/2148 F-ZTAT の電気的特性................................................................................................ 796 26.3 26.2.1 絶対最大定格 ......................................................................................... 796 26.2.2 DC 特性 ................................................................................................. 797 26.2.3 AC 特性 ................................................................................................. 810 26.2.4 A/D 変換特性 ......................................................................................... 817 26.2.5 D/A 変換特性 ......................................................................................... 819 26.2.6 フラッシュメモリ特性............................................................................ 820 26.2.7 使用上の注意 ......................................................................................... 822 H8S/2148 F-ZTAT (A マスク品)、H8S/2147 F-ZTAT (A マスク品)、H8S/2148 マスク ROM 品、 H8S/2147 マスク ROM 品の電気的特性 ..................................................................................... 823 26.4 26.5 26.3.1 絶対最大定格 ......................................................................................... 823 26.3.2 DC 特性 ................................................................................................. 825 26.3.3 AC 特性 ................................................................................................. 837 26.3.4 A/D 変換特性 ......................................................................................... 845 26.3.5 D/A 変換特性 ......................................................................................... 847 26.3.6 フラッシュメモリ特性............................................................................ 848 26.3.7 使用上の注意 ......................................................................................... 850 H8S/2147N F-ZTAT の電気的特性 ............................................................................................. 851 26.4.1 絶対最大定格 ......................................................................................... 851 26.4.2 DC 特性 ................................................................................................. 852 26.4.3 AC 特性 ................................................................................................. 860 26.4.4 A/D 変換特性 ......................................................................................... 868 26.4.5 D/A 変換特性 ......................................................................................... 870 26.4.6 フラッシュメモリ特性............................................................................ 871 26.4.7 使用上の注意 ......................................................................................... 873 H8S/2144 F-ZTAT、H8S/2142 F-ZTAT、H8S/2142 マスク ROM 品の電気的特性 ........................... 874 26. 26.6 電気的特性 26.5.1 絶対最大定格 ......................................................................................... 874 26.5.2 DC 特性 ................................................................................................. 875 26.5.3 AC 特性 ................................................................................................. 882 26.5.4 A/D 変換特性 ......................................................................................... 886 26.5.5 D/A 変換特性 ......................................................................................... 888 26.5.6 フラッシュメモリ特性............................................................................ 889 26.5.7 使用上の注意 ......................................................................................... 891 H8S/2144 F-ZTAT (A マスク品)、H8S/2144 マスク ROM 品、H8S/2143 マスク ROM 品の 電気的特性 ............................................................................................................................. 892 26.7 792 26.6.1 絶対最大定格 ......................................................................................... 892 26.6.2 DC 特性 ................................................................................................. 893 26.6.3 AC 特性 ................................................................................................. 901 26.6.4 A/D 変換特性 ......................................................................................... 905 26.6.5 D/A 変換特性 ......................................................................................... 907 26.6.6 フラッシュメモリ特性............................................................................ 908 26.6.7 使用上の注意 ......................................................................................... 910 動作タイミング....................................................................................................................... 911 26.7.1 AC 特性測定条件.................................................................................... 911 26.7.2 クロックタイミング ............................................................................... 911 26.7.3 制御信号タイミング ............................................................................... 912 26.7.4 バスタイミング...................................................................................... 913 26.7.5 内蔵周辺モジュールタイミング .............................................................. 916 26. 電気的特性 26.1 電源電圧と動作範囲 各製品ごとの電源電圧と動作範囲(網掛部)を表 26.1 に示します。 表 26.1 電源電圧と動作範囲(1)(F-ZTAT 品) 製品名/電源 HD64F2148 HD64F2144 HD64F2142R 5V 版 製品名/電源 Vcc 5.5V フラッシュ メモリ 書き込み時 4.5V 4.0V HD64F2148V Vcc HD64F2144V 5.5V ライタでの書き込み 条件は、5.0V±0.5V の設定を選択 HD64F2142RV 3.6V ライタでの書き込み 条件は、5.0V±0.5V の設定を選択 2MHz 3V 版 フラッシュメモリ 書き込み時 3.0V 16MHz 20MHz 2MHz fop 10MHz fop VCC1 端子 VCC=5.0V±10%(fop=2〜20MHz) VCC1 端子 VCC=3.0V〜5.5V(fop=2〜10MHz) VCC2 端子 VCC=4.0V〜5.5V(fop=2〜16MHz) VCC2 端子 VCCB 端子* VCCB=5.0V±10%(fop=2〜20MHz) VCCB 端子* VCCB=3.0V〜5.5V(fop=2〜10MHz) AVCC 端子 AVCC=3.0V〜5.5V(fop=2〜10MHz) VCCB=4.0V〜5.5V(fop=2〜16MHz) AVCC 端子 AVCC=5.0V±10%(fop=2〜20MHz) AVCC=4.0V〜5.5V(fop=2〜16MHz) 【注】 * H8S/2148 系製品のみ 表 26.1 電源電圧と動作範囲(2)(F-ZTAT 品) 製品名/電源 HD64F2147N 5V 版 製品名/電源 Vcc HD64F2147NV 5.5V フラッシュ メモリ 書き込み時 4.5V 3V 版 Vcc ライタでの書き込み 条件は、5.0V±0.5V の設定を選択 5.5V 3.6V フラッシュメモリ 書き込み時 3.0V 2MHz 16MHz 20MHz 2MHz fop VCC1 端子 VCC=5.0V±10%(fop=2〜20MHz) VCC2 端子 10MHz fop VCC1 端子 VCC=3.0V〜5.5V(fop=2〜10MHz) VCC2 端子 VCCB 端子 VCCB=5.0V±10%(fop=2〜20MHz) VCCB 端子 VCCB=3.0V〜5.5V(fop=2〜10MHz) AVCC 端子 AVCC=5.0V±10%(fop=2〜20MHz) AVCC 端子 AVCC=3.0V〜5.5V(fop=2〜10MHz) 793 26. 電気的特性 表 26.1 電源電圧と動作範囲(3)(F-ZTAT A マスク品) 製品名/電源 HD64F2148A HD64F2147A HD64F2144A 5V 版 製品名/電源 Vcc 5.5V フラッシュ メモリ 書き込み時 4.5V HD64F2148AV Vcc HD64F2147AV 5.5V ライタでの書き込み 条件は、3.3V±0.3V の設定を選択 HD64F2144AV 4.0V 3.6V ライタでの書き込み 条件は、3.3V±0.3V の設定を選択 2MHz 3V 版 フラッシュメモリ 書き込み時 3.0V 2.7V 2MHz 16MHz 20MHz VCC1 端子 VCC=5.0V±10%(fop=2〜20MHz) VCC1 端子 VCC=4.0V〜5.5V(fop=2〜16MHz) VCL 端子 VCL=C 接続 VCL=VCC 接続 (VCC2) VCCB=5.0V±10%(fop=2〜20MHz) VCCB 端子* AVCC=5.0V±10%(fop=2〜20MHz) AVCC 端子 AVCC=4.0V〜5.5V(fop=2〜16MHz) 【注】 * VCCB=2.7V〜5.5V(fop=2〜10MHz) (CIN 使用時は、VCCB=3.0V〜5.5V) VCCB=4.0V〜5.5V(fop=2〜16MHz) AVCC 端子 VCC=2.7V〜3.6V(fop=2〜10MHz) (CIN 使用時は、VCC=3.0V〜3.6V) VCL 端子 (VCC2) VCCB 端子* 10MHz fop fop AVCC=2.7V〜3.6V(fop=2〜10MHz) (CIN 使用時は、AVCC=3.0V〜3.6V) H8S/2148 系製品のみ 表 26.1 電源電圧と動作範囲(4)(マスク ROM 品) 製品名/電源 HD6432148S HD6432148SW HD6432147S 5V 版 4V 版 Vcc Vcc 5.5V 5.5V 3V 版 Vcc 4.5V 4.0V HD6432147SW 3.6V 2.7V HD6432144S HD6432143S VCC1 端子 2MHz 2MHz 20MHz fop VCC=5.0V±10% 2MHz 16MHz fop VCC=4.0V〜5.5V 10MHz fop VCC=2.7V〜3.6V (CIN 使用時は、VCC=3.0V〜3.6V) VCL 端子 VCL=C 接続 VCL=C 接続 VCL=VCC 接続 VCCB=5.0V±10% VCCB=4.0V〜5.5V VCCB=2.7V〜5.5V (VCC2) VCCB 端子* (CIN 使用時は、VCCB=3.0V〜5.5V) AVCC 端子 AVCC=5.0V±10% AVCC=4.0V〜5.5V AVCC=2.7V〜3.6V (CIN 使用時は、AVCC=3.0V〜3.6V) 【注】 794 * H8S/2148 系製品のみ 26. 電気的特性 表 26.1 電源電圧と動作範囲(5)(マスク ROM 品) 製品名/電源 HD6432142 5V 版 4V 版 3V 版 Vcc Vcc Vcc 5.5V 5.5V 5.5V 4.5V 4.0V 2.7V 2MHz 20MHz 2MHz fop VCC1 端子 16MHz 2MHz 10MHz fop fop VCC=5.0V±10% VCC=4.0V〜5.5V VCC=2.7V〜5.5V AVCC=5.0V±10% AVCC=4.0V〜5.5V AVCC=2.7V〜5.5V VCC2 端子 AVCC 端子 795 26. 電気的特性 26.2 H8S/2148 F-ZTAT の電気的特性 26.2.1 絶対最大定格 絶対最大定格を表 26.2 に示します。 表 26.2 絶対最大定格 項 目 電源電圧* 入出力バッファ用電源電圧 記号 定格値 単位 VCC - 0.3〜+7.0 V VCCB - 0.3〜+7.0 V (ポート A 用電源) 入力電圧(ポート 6、7、A 以外) Vin - 0.3〜VCC + 0.3 V 入力電圧 Vin - 0.3〜VCC + 0.3 V Vin - 0.3〜VCCB + 0.3 V Vin - 0.3〜VCC + 0.3 と AVCC + 0.3 のいずれか V (ポート 6 で CIN 入力非選択時) 入力電圧 (ポート A で CIN 入力非選択時) 入力電圧 (ポート 6 で CIN 入力選択時) 入力電圧 低い電圧 Vin (ポート A で CIN 入力選択時) - 0.3〜VCCB + 0.3 と AVCC + 0.3 のいずれ V か低い電圧 入力電圧(ポート 7) Vin - 0.3〜AVCC + 0.3 V リファレンス電源電圧 AVref - 0.3〜AVCC + 0.3 V アナログ電源電圧 AVCC - 0.3〜+7.0 V アナログ入力電圧 VAN - 0.3〜AVCC + 0.3 V 動作温度 Topr 通常仕様品:-20〜+75 ℃ 広温度範囲仕様品:-40〜+85 動作温度 Topr (FLASH メモリ書込み/消去時) 保存温度 通常仕様品:0〜+75 ℃ 広温度範囲仕様品:0〜+85 Tstg - 55〜+125 ℃ 【使用上の注意】 絶対最大定格を超えて LSI を使用した場合、LSI の永久破壊となることがあります。 * 796 VCC1、VCC2 端子への印加電圧です。 26. 26.2.2 電気的特性 DC 特性 DC 特性を表 26.3 に示します。また、出力許容電流値、バス駆動特性をそれぞれ表 26.4、 表 26.5 に示します。 表 26.3 DC 特性(1) 条件:V CC =5.0V±10%、V CC B=5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃*9(通常仕様品)、Ta=-40〜+85℃*9(広温度範囲仕様品) 項 シュミット トリガ入力電圧 目 記号 (1) P67〜P60 2 min typ max 単位 − T 1.0 ― ― V + T ― ― VCC×0.7 V 6 (KWUL=00) * * 、 V KIN15〜KIN8* * 、 7 8 測定条件 VCCB×0.7 IRQ2〜IRQ0* 、 + T 3 V − T –V 0.4 ― ― VCC×0.3 ― ― IRQ5〜IRQ3 シュミット VT− P67〜P60 (KWUL=01) + T トリガ入力電圧 (レベル切換 時)* 6 ― V + T – T V –V − T P67〜P60 (KWUL=10) V + T – T V –V − T P67〜P60 (KWUL=11) V + T – T V –V 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) VIH ― VCC×0.4 ― PA7〜PA0* 7 ― VCC×0.8 ― VCC×0.45 ― ― 0.05 ― VCC×0.9 ― ― VCC – 0.7 ― VCC + 0.3 VCC×0.7 EXTAL ― VCC×0.03 ― ― V + T ― VCC×0.7 VCC×0.05 ― ― V + T V V ― VCC + 0.3 VCCB×0.7 ― VCCB + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 - 0.3 ― 1.0 NMI、EXTAL ほか、 - 0.3 ― 0.8 VCC – 0.5 ― ― V I OH = - 200 μ A VIL V 上記(1)(3)以外の入力端子 出力 High レベル電圧 全出力端子 VOH 4 5 (P97、P52 を除く* )* * P97、P52* 8 VCCB – 0.5 4 5 3.5 ― ― V I OH = - 1mA 2.5 ― ― V I OH = - 1mA ― ― 0.4 V I OL =1.6mA 出力 Low 全出力端子(RESO を除く) * レベル電圧 ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA VOL 797 26. 電気的特性 【注】 *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 H8S/2148 シリーズでは、P52/SCK0/SCL0、P97/SDA0 は NMOS プッシュプル出力です。 SCL0、SDA0(ICE=1)から High レベル出力するためにはプルアップ抵抗を外付けする必要があります。 H8S/2148 シリーズでは、P52/SCK0、P97(ICE=0)の High レベルは NMOS で駆動されます。 *5 IICS=0、ICE=0 および KBIOE=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定め ます。 * 6 ポート 6 の印加電圧の上限は、CI N 入力非選択時は VC C+0. 3V、CI N 入力選択時は VC C+0. 3V と AVC C+0. 3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *7 ポート A の印加電圧の上限は、 CIN 入力非選択時は VCCB+0.3V、 CIN 入力選択時は VCCB+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *8 ポート A の特性は、VCCB 依存、その他の端子の特性は、VCC 依存です。 *9 フラッシュメモリへの書き込み/消去動作は、Ta=0〜+75℃(通常仕様品)、Ta=0〜+85℃(広温度範 囲仕様品)の範囲としてください。 798 26. 電気的特性 表 26.3 DC 特性(2) 条件:V CC =5.0V±10%、V CC B=5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃*5(通常仕様品)、Ta=-40〜+85℃*5(広温度範囲仕様品) 項 目 入力リーク電流 RES スリーステート 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 ― ― 1.0 |I TSI| ポート 1〜6 Vin=0.5〜AVCC - 0.5V μ A Vin=0.5〜VCC - 0.5V 4 リーク電流 測定条件 ポート 8、9、A* 、B Vin=0.5〜VCCB - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 - Ip 4 MOS 電流 ポート A* 、B、 50 ― 300 60 ― 500 15 ― 150 μ A Vin=0V ポート 6(P6PUE=0) ポート 6(P6PUE=1) RES 入力容量 ― ― 80 NMI (4) ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 85 120 mA f=20MHz ― 70 100 mA f=20MHz ― 0.01 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V mA Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 ― 0.5 1.0 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.5 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AIref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 消費電流値は、VI H min=VCC - 0.5V、VCCB - 0.5V、VI L max=0.5V の条件下で、すべての出力端子を無負 荷状態にして、さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.5V のとき、VI H min=VCC×0.9、VCCB×0.9、VI L max=0.3V とした場合の値です。 *4 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 *5 フラッシュメモリへの書き込み/消去動作は、Ta=0〜+75℃(通常仕様品)、Ta=0〜+85℃(広温度範 囲仕様品)の範囲としてください。 799 電気的特性 26. 表 26.3 DC 特性(3) 条件:V CC =4.0V〜5.5V*9、V CC B=4.0V〜5.5V、 AVCC *1=4.0V〜5.5V、 AVref*1=4.0V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃*9(通常仕様品)、Ta=-40〜+85℃*9(広温度範囲仕様品) 項 シュミット トリガ入力電圧 目 (1) P67〜P60 2 記号 min typ max VT− 1.0 ― ― ― ― VCC×0.7 + T 6 (KWUL=00) * * 、 V KIN15〜KIN8* 7* 8、 単位 測定条件 V VCC=4.5V〜5.5V、 VCCB=4.5V〜5.5V VCCB×0.7 IRQ2〜IRQ0* 3、 VT+ – VT− IRQ5〜IRQ3 0.4 ― ― V 0.8 ― ― VT+ ― ― VCC×0.7 − T V VCC<4.5V、 VCCB<4.5V VCCB×0.7 + T V シュミット P67〜P60 (KWUL=01) トリガ入力電圧 0.3 ― ― VT− VCC×0.3 ― ― VT+ ― –V VT+ – VT– (レベル 切換時)* − T 6 − T P67〜P60 (KWUL=10) V VT+ P67〜P60 (KWUL=11) RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) VCC×0.4 ― ― ― VCC×0.8 VCC×0.03 ― ― VT− VCC×0.45 ― ― V ― VT+ – VT– 0.05 VIH PA7〜PA0* 7 ― VCC×0.9 ― ― VCC – 0.7 ― VCC + 0.3 VCC×0.7 EXTAL V ― VCC + 0.3 VCCB×0.7 ― VCCB + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 - 0.3 ― 1.0 VCCB=4.5V〜5.5V - 0.3 ― 0.8 VCCB<4.5V - 0.3 ― 0.8 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 NMI、EXTAL ほか、 上記(1)(3)以外の入力端子 800 ― VT+ – VT– + T 入力 High ― VCC×0.7 VCC×0.05 ― ― V VCC=4.0V〜5.5V VIL V 26. 項 電気的特性 目 記号 min typ max 単位 測定条件 出力 High 全出力端子 VOH VCC - 0.5 ― ― V I OH = - 200 μ A レベル電圧 (P97、P52 を除く* 4)* 5* 8 ― ― V I OH = - 1mA、 VCCB - 0.5 3.5 VCC=4.5V〜5.5V、 VCCB=4.5V〜5.5V 3.0 ― ― V I OH = - 1mA、 VCC<4.5V、 VCCB<4.5V P97、P52* 4 2.0 ― ― V I OH = - 1mA ― ― 0.4 V I OL =1.6mA 出力 Low 全出力端子(RESO を除く) * 5 レベル電圧 ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA 【注】 VOL *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 H8S/2148 シリーズでは、P52/SCK0/SCL0、P97/SDA0 は NMOS プッシュプル出力です。 SCL0、SDA0(ICE=1)から High レベル出力するためにはプルアップ抵抗を外付けする必要があります。 H8S/2148 シリーズでは、P52/SCK0、P97(ICE=0)の High レベルは NMOS で駆動されます。 *5 IICS=0、ICE=0 および KBIOE=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定め ます。 *6 ポート 6 の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *7 ポート A の印加電圧の上限は、 CIN 入力非選択時は VCCB+0.3V、 CIN 入力選択時は VCCB+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *8 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 *9 フラッシュメモリへの書き込み/消去動作は、VCC=4.5V〜5.5V、Ta=0〜+75℃(通常仕様品)、Ta=0〜 +85℃(広温度範囲仕様品)の範囲としてください。 801 電気的特性 26. 表 26.3 DC 特性(4) 条件:V CC =4.0V〜5.5V*5、V CC B=4.0V〜5.5V、AVCC *1=4.0V〜5.5V、 AVref*1=4.0V〜AVCC 、V SS=AVSS*1=0V Ta=-20〜+75℃*5(通常仕様品)、Ta=-40〜+85℃*5(広温度範囲仕様品) 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 ― ― 1.0 入力リーク電流 RES スリーステート ポート 1〜6 |I TSI| Vin=0.5〜AVCC - 0.5V μ A Vin=0.5〜VCC - 0.5V、 4 リーク電流 測定条件 ポート 8、9、A* 、B Vin=0.5〜VCCB - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 - Ip 4 MOS 電流 ポート A* 、B、 50 ― 300 60 ― 500 μ A Vin=0V、 VCC=4.5V〜5.5V、 ポート 6(P6PUE=0) VCCB=4.5V〜5.5V ポート 6(P6PUE=1) 15 ― 150 ポート 1〜3 30 ― 200 40 ― 400 4 ポート A* 、B、 μ A Vin=0V、 VCC≦4.5V、 ポート 6(P6PUE=0) VCCB≦4.5V ポート 6(P6PUE=1) 10 ― 110 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 70 100 mA f=16MHz ― 60 85 mA f=16MHz ― 0.01 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA RES 入力容量 (4) Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.0 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AI ref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 802 26. 電気的特性 *2 消費電流値は、VI H min=VCC - 0.5V、VCCB - 0.5V、VI L max=0.5V の条件下で、すべての出力端子を無負 荷状態にして、さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.0V のとき、VI H min=VCC×0.9、VCCB×0.9、VI L max=0.3V とした場合の値です。 *4 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 *5 フラッシュメモリへの書き込み/消去動作は、VCC=4.5V〜5.5V、Ta=0〜+75℃(通常仕様品)、Ta=0〜 +85℃(広温度範囲仕様品)の範囲としてください。 803 電気的特性 26. 表 26.3 DC 特性(5) 条件:V CC =3.0V〜5.5V*9、V CC B=3.0V〜5.5V、AVCC *1=3.0V〜5.5V、 AVref=3.0V〜5.5V、V SS=AVSS*1=0V、Ta=-20〜+75℃*9 項 シュミット トリガ入力電圧 目 記号 VT− (1) P67〜P60 (KWUL=00) * 2* 6、 min typ max 単位 VCC×0.2 ― ― V 測定条件 VCCB×0.2 KIN15〜KIN8* 7* 8、 VT+ ― ― VCC×0.7 IRQ2〜IRQ0* 、 3 VCCB×0.7 IRQ5〜IRQ3 + T V − T –V VCC×0.05 ― ― ― ― VCCB×0.05 シュミット − T P67〜P60 (KWUL=01) + T トリガ入力電圧 時)* ― V + T (レベル切換 6 VCC×0.3 V – T V –V − T P67〜P60 (KWUL=10) V + T – T V –V − T P67〜P60 (KWUL=11) V + T – T V –V 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) ― ― VCC×0.4 ― ― ― VCC×0.8 VCC×0.03 ― ― VCC×0.45 ― ― ― V + T ― VCC×0.7 VCC×0.05 ― V + T 0.05 ― VCC×0.9 ― ― VCC×0.9 ― VCC + 0.3 VCC×0.7 ― VCC + 0.3 VCCB×0.7 ― VCCB + 0.3 ポート 7 VCC×0.7 ― AVCC + 0.3 上記(1)(2)以外の入力端子 VCC×0.7 ― VCC + 0.3 - 0.3 ― VCC×0.1 - 0.3 ― VCCB×0.2 VIH EXTAL PA7〜PA0* 7 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 VIL 0.8 NMI、EXTAL ほか、 - 0.3 ― VCC×0.2 上記(1)(3)以外の入力端子 出力 High 全出力端子 レベル電圧 (P97、P52 を除く* 4)* 5* 8 0.8 VOH VCC – 0.5 V V V VCCB<4.0V VCCB = 4.0V〜5.5V VCC<4.0V VCC = 4.0V〜5.5V ― ― V I OH = - 200 μ A ― ― V I OH = - 1mA VCCB – 0.5 VCC – 1.0 (VCC<4.0V、 VCCB – 1.0 VCCB<4.0V) P97、P52* 4 出力 Low 全出力端子(RESO を除く) * レベル電圧 ポート 1、2、3 5 VOL 1.0 ― ― V I OH = - 1mA ― ― 0.4 V I OL =1.6mA ― ― 1.0 V I OL =5mA(VCC<4.0V) I OL =10mA (4.0V≦VCC≦5.5V) RESO 804 ― ― 0.4 V I OL =1.6mA 26. 【注】 電気的特性 *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 H8S/2148 シリーズでは、P52/SCK0/SCL0、P97/SDA0 は NMOS プッシュプル出力です。 SCL0、SDA0(ICE=1)から High レベル出力するためにはプルアップ抵抗を外付けする必要があります。 H8S/2148 シリーズでは、P52/SCK0、P97(ICE=0)の High レベルは NMOS で駆動されます。 *5 IICS=0、ICE=0 および KBIOE=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定め ます。 *6 ポート 6 の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *7 ポート A の印加電圧の上限は、 CIN 入力非選択時は VCCB+0.3V、 CIN 入力選択時は VCCB+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *8 ポート A の特性は、VCCB 依存、その他の端子の特性は VCC 依存です。 *9 フラッシュメモリへの書き込み/消去動作は、VCC=3.0V〜3.6V、Ta=0〜+75℃の範囲としてください。 805 電気的特性 26. 表 26.3 DC 特性(6) 条件:V CC =3.0V〜5.5V*5、V CC B=3.0V〜5.5V、AVCC *1=3.0V〜5.5V、 AVref=3.0V〜5.5V、V SS=AVSS*1=0V、Ta=-20〜+75℃*5 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 ― ― 1.0 入力リーク電流 RES スリーステート ポート 1〜6 |I TSI| Vin=0.5〜AVCC - 0.5V μ A Vin=0.5〜VCC - 0.5V、 4 リーク電流 測定条件 ポート 8、9、A* 、B Vin=0.5〜VCCB - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 - Ip 4 MOS 電流 ポート A* 、B、 10 ― 150 30 ― 250 μ A Vin=0V Vcc=3.0V〜3.6V、 ポート 6(P6PUE=0) VccB=3.0V〜3.6V ポート 6(P6PUE=1) 3 ― 70 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 50 70 mA f=10MHz ― 40 60 mA f=10MHz ― 0.01 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA RES 入力容量 (4) Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 3.0 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AI ref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 消費電流値は、VI H min=VCC - 0.5V、VCCB - 0.5V、VI L max=0.5V の条件下で、すべての出力端子を無負 荷状態にして、さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<3.0V のとき、VI H min=VCC×0.9、VCCB×0.9、VI L max=0.3V とした場合の値です。 *4 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 *5 フラッシュメモリへの書き込み/消去は VCC=3.0V〜3.6V、Ta=0〜+75℃の範囲としてください。 806 26. 電気的特性 表 26.4 出力許容電流値 条件:V CC =4.0V〜5.5V、 V CC B=4.0V〜5.5V、V SS= 0V Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 項 目 記号 min typ max 単位 I OL ― ― 20 mA ポート 1、2、3 ― ― 10 RESO ― ― 3 上記以外の出力端子 ― ― 2 ― ― 80 ― ― 120 - I OH ― ― 2 mA Σ - I OH ― ― 40 mA 出力 Low レベル許容電流 SCL1〜SCL0、SDA1〜 (1 端子あたり) SDA0、PS2AC〜PS2CC、 PS2AD〜PS2CD、 PA7〜PA4(バス駆動機能選択) 出力 Low レベル許容電流 ポート 1、2、3 の総和 (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 Σ I OL mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 条件:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS= 0V、Ta= -20〜+75℃ 項 目 記号 min typ max 単位 I OL ― ― 10 mA ポート 1、2、3 ― ― 2 RESO ― ― 1 上記以外の出力端子 ― ― 1 ― ― 40 ― ― 60 - I OH ― ― 2 mA Σ - I OH ― ― 30 mA 出力 Low レベル許容電流 SCL1〜SCL0、SDA1〜SDA0、 (1 端子あたり) PS2AC〜PS2CC、 PS2AD〜PS2CD、 PA7〜PA4(バス駆動機能選択) 出力 Low レベル許容電流 ポート 1、2、3 の総和 (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 Σ I OL mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 【注】 1. LSI の信頼性を確保するため、出力電流値は表 26.4 の値を超えないようにしてくださ い。 2. ダーリントントランジスタや、LED を直接駆動する場合には、図 26.1、図 26.2 に示す ように、出力に必ず電流制限抵抗を挿入してください。 807 26. 電気的特性 本LSI 2kΩ ポート ダーリントントランジスタ 図 26.1 ダーリントントランジスタ駆動回路例 本LSI 600Ω ポート1〜3 LED 図 26.2 LED 駆動回路例 808 26. 電気的特性 表 26.5 バス駆動特性 条件:V CC =3.0V〜5.5V、V SS=0V 対象端子:SCL1〜SCL0、SDA1〜SDA0(バス駆動機能選択) 項 目 記号 min typ max 単位 シュミット VT− VCC×0.3 ― ― V トリガ入力電圧 VT+ ― ― VCC×0.7 VCC =3.0V〜5.5V VT+ - VT− VCC×0.05 ― ― VCC =3.0V〜5.5V VI H VCC×0.7 ― VCC + 0.5 V VCC =3.0V〜5.5V VIL - 0.5 ― VCC×0.3 V VCC =3.0V〜5.5V VOL ― ― 0.8 V I OL =16mA、VCC=4.5V〜5.5V ― ― 0.5 I OL =8mA ― ― 0.4 I OL =3mA Cin ― ― 20 |I TSI| ― ― 1.0 t Of 20 + 0.1Cb ― 250 入力 High 測定条件 VCC =3.0V〜5.5V レベル電圧 入力 Low レベル電圧 出力 Low レベル電圧 入力容量 スリーステート pF Vin=0V、f=1MHz、Ta=25℃ μ A Vin=0.5〜VCC - 0.5V リーク電流 (オフ状態) SCL、SDA 出力 ns VCC =3.0V〜5.5V 立ち下がり時間 条件:V CC =3.0V〜5.5V、 V CC B=3.0V〜5.5V、V SS=0V 対象端子:PS2AC、PS2AD、PS2BC、PS2BD、PS2CC、PS2CD PA7〜PA4(バス駆動機能選択) 項 目 出力 Low レベル電圧 記号 min typ max 単位 測定条件 VOL ― ― 0.8 V ― ― 0.5 I OL =8mA ― ― 0.4 I OL =3mA I OL =16mA、VCCB=4.5V〜5.5V 809 26. 電気的特性 26.2.3 AC 特性 クロックタイミング、制御信号タイミング,バスタイミング,および内蔵周辺機能タイ ミングを以下に示します。 AC 特性測定条件は図 26.4 を参照してください。 (1)クロックタイミング 表 2 6.6 にクロックタイミングを示します。ここで規定するクロックタイミングは、ク ロック(φ)出力と、クロック発振器(水晶)と外部クロック入力(EXTA L 端子)の発 振安定時間です。外部クロック入力(EXTA L 端子および EXC L 端子)タイミングの詳細 については、「第 24 章 クロック発振器」を参照してください。 表 26.6 クロックタイミング 条件 A:V CC =5.0V±10%、 V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、 V CC B=4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、 V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 測定 単位 条件 クロックサイクル時間 t cyc 100 500 62.5 500 50 500 ns 図 26.5 クロックハイレベルパルス幅 t CH 30 ― 20 ― 17 ― ns 図 26.5 クロックローレベルパルス幅 t CL 30 ― 20 ― 17 ― ns クロック立ち上がり時間 t Cr ― 20 ― 10 ― 8 ns クロック立ち下がり時間 t Cf ― 20 ― 10 ― 8 ns t OSC1 20 ― 10 ― 10 ― ms 図 26.6 ソフトウエアスタンバイ発振安定時間 (水晶) t OSC2 8 ― 8 ― 8 ― ms 図 26.7 500 ― 500 ― 500 ― μs リセット発振安定時間(水晶) 外部クロック出力安定遅延時間 810 記号 条件 C t DEXT 26. 電気的特性 (2)制御信号タイミング 表 26.7 に制御信号タイミングを示します。サブクロック(φ=32.768kHz)で動作可能 な外部割込みは、NMI、IRQ0〜2、6、7 のみです。 表 26.7 制御信号タイミング 条件 A:V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、 φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、 φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、 φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz 単位 min max min max min max RES セットアップ時間 t RESS 300 ― 200 ― 200 ― ns RES パルス幅 t RESW 20 ― 20 ― 20 ― t cyc NMI セットアップ時間(NMI) t NMIS 250 ― 150 ― 150 ― ns NMI ホールド時間 t NMIH 10 ― 10 ― 10 ― ns t NMIW 200 ― 200 ― 200 ― ns t IRQS 250 ― 150 ― 150 ― ns t IRQH 10 ― 10 ― 10 ― ns t IRQW 200 ― 200 ― 200 ― ns (NMI) NMI パルス幅(NMI) 測定条件 図 26.8 図 26.9 (ソフトウェアスタンバイモード からの復帰時) IRQ セットアップ時間 (IRQ7 〜IRQ0) IRQ ホールド時間 (IRQ7 〜IRQ0) IRQ パルス幅 (IRQ7、IRQ6、IRQ2〜IRQ0) (ソフトウェアスタンバイモード からの復帰時) 811 26. 電気的特性 (3)バスタイミング 表 26.8 にバスタイミングを示します。サブクロック(φ=32.768kHz)動作では、外部 拡張モードの動作は保証されません。 表 26.8 バスタイミング(1)(ノーマルモード使用時) 条件 A:V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 アドレス遅延時間 t AD ― 40 ― 30 ― 20 ns 図 26.10 アドレスセットアップ時間 t AS 0.5×tcyc - 30 ― 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― ns 〜 アドレスホールド時間 t AH 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― 0.5×tcyc - 10 ― ns 図 26.14 CS 遅延時間(IOS) t CSD ― 40 ― 30 ― 20 ns AS 遅延時間 t ASD ― 60 ― 45 ― 30 ns RD 遅延時間 1 t RSD1 ― 60 ― 45 ― 30 ns RD 遅延時間 2 t RSD2 ― 60 ― 45 ― 30 ns リードデータセットアップ時間 t RDS 35 ― 20 ― 15 ― ns リードデータホールド時間 t RDH 0 ― 0 ― 0 ― ns リードデータアクセス時間 1 t ACC1 ― 1.0×tcyc - 60 ― 1.0×tcyc - 40 ― 1.0×tcyc - 30 ns リードデータアクセス時間 2 t ACC2 ― 1.5×tcyc - 50 ― 1.5×tcyc - 35 ― 1.5×tcyc - 25 ns リードデータアクセス時間 3 t ACC3 ― 2.0×tcyc - 60 ― 2.0×tcyc - 40 ― 2.0×tcyc - 30 ns リードデータアクセス時間 4 t ACC4 ― 2.5×tcyc - 50 ― 2.5×tcyc - 35 ― 2.5×tcyc - 25 ns リードデータアクセス時間 5 t ACC5 ― 3.0×tcyc - 60 ― 3.0×tcyc - 40 ― 3.0×tcyc - 30 ns WR 遅延時間 1 t WRD1 ― 60 ― 45 ― 30 ns WR 遅延時間 2 t WRD2 ― 60 ― 45 ― 30 ns WR パルス幅 1 t WSW1 1.0×tcyc - 40 ― 1.0×tcyc - 30 ― 1.0×tcyc - 20 ― ns WR パルス幅 2 t WSW2 1.5×tcyc - 40 ― 1.5×tcyc - 30 ― 1.5×tcyc - 20 ― ns ライトデータ遅延時間 t WDD ― 60 ― 45 ― 30 ns ライトデータセットアップ時間 t WDS 0 ― 0 ― 0 ― ns ライトデータホールド時間 t WDH 20 ― 15 ― 10 ― ns WAIT セットアップ時間 t WTS 60 ― 45 ― 30 ― ns WAIT ホールド時間 t WTH 10 ― 5 ― 5 ― ns 812 26. 電気的特性 表 26.8 バスタイミング(2)(アドバンストモード使用時) 条件 A:V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 アドレス遅延時間 t AD ― 60 ― 45 ― 30 ns 図 26.10 アドレスセットアップ時間 t AS 0.5×tcyc - 50 ― 0.5×tcyc - 35 ― 0.5×tcyc - 25 ― ns 〜 アドレスホールド時間 t AH 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― 0.5×tcyc - 10 ― ns 図 26.14 CS 遅延時間(IOS) t CSD ― 60 ― 45 ― 30 ns AS 遅延時間 t ASD ― 60 ― 45 ― 30 ns RD 遅延時間 1 t RSD1 ― 60 ― 45 ― 30 ns RD 遅延時間 2 t RSD2 ― 60 ― 45 ― 30 ns リードデータセットアップ時間 t RDS 35 ― 20 ― 15 ― ns リードデータホールド時間 t RDH 0 ― 0 ― 0 ― ns リードデータアクセス時間 1 t ACC1 ― 1.0×tcyc - 80 ― 1.0×tcyc - 55 ― 1.0×tcyc - 40 ns リードデータアクセス時間 2 t ACC2 ― 1.5×tcyc - 50 ― 1.5×tcyc - 35 ― 1.5×tcyc - 25 ns リードデータアクセス時間 3 t ACC3 ― 2.0×tcyc - 80 ― 2.0×tcyc - 55 ― 2.0×tcyc - 40 ns リードデータアクセス時間 4 t ACC4 ― 2.5×tcyc - 50 ― 2.5×tcyc - 35 ― 2.5×tcyc - 25 ns リードデータアクセス時間 5 t ACC5 ― 3.0×tcyc - 80 ― 3.0×tcyc - 55 ― 3.0×tcyc - 40 ns WR 遅延時間 1 t WRD1 ― 60 ― 45 ― 30 ns WR 遅延時間 2 t WRD2 ― 60 ― 45 ― 30 ns WR パルス幅 1 t WSW1 1.0×tcyc - 40 ― 1.0×tcyc - 30 ― 1.0×tcyc - 20 ― ns WR パルス幅 2 t WSW2 1.5×tcyc - 40 ― 1.5×tcyc - 30 ― 1.5×tcyc - 20 ― ns ライトデータ遅延時間 t WDD ― 60 ― 45 ― 30 ns ライトデータセットアップ時間 t WDS 0 ― 0 ― 0 ― ns ライトデータホールド時間 t WDH 20 ― 15 ― 10 ― ns WAIT セットアップ時間 t WTS 60 ― 45 ― 30 ― ns WAIT ホールド時間 t WTH 10 ― 5 ― 5 ― ns 813 26. 電気的特性 (4)内蔵周辺モジュールタイミング 表 2 6.9〜表 2 6.11 に内蔵周辺モジュールタイ ミングを示します。サブクロック動作時 (φ=32. 768kHz)に動作可 能な内蔵周辺モジュールは、I/O ポート 、外部割込み(NMI、 IRQ0〜2、6、7)、ウォッチドッグタイマ、8 ビットタイマ(チャネル 0、1)のみです。 表 26.9 内蔵周辺モジュールタイミング(1) 条件 A:V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、 φ=32.768kHz*1、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、 φ=32.768kHz*1、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、 φ=32.768kHz*1、2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 出力データ遅延時間 t PWD 入力データセットアップ時間 t PRS 入力データホールド時間 t PRH FRT タイマ出力遅延時間 t FTOD タイマ入力セットアップ時間 t FTIS タイマクロック入力セットアップ時間 t FTCS タイマクロック 単エッジ指定 t FTCWH パルス幅 両エッジ指定 t FTCWL TMR タイマ出力遅延時間 t TMOD タイマリセット入力セットアップ時間 t TMRS タイマクロック入力セットアップ時間 t TMCS タイマクロック 単エッジ指定 t TMCWH パルス幅 両エッジ指定 t TMCWL PWM、 パルス出力遅延時間 t PWOD PWMX SCI 入力クロック 調歩同期 t Scyc サイクル クロック同期 入力クロックパルス幅 t SCKW 入力クロック立ち上がり時間 t SCKr 入力クロック立ち下がり時間 t SCKf 送信データ遅延時間(クロック同期) t TXD 受信データセットアップ時間 t RXS (クロック同期) 受信データホールド時間 t RXH (クロック同期) A/D トリガ入力セットアップ時間 t TRGS 変換器 WDT RESO 出力遅延時間 t RESD RESO 出力パルス幅 t RESOW I/O ポート 【注】 814 条件 C 10MHz min max ― 100 50 ― 50 ― ― 100 50 ― 50 ― 1.5 ― 2.5 ― ― 100 50 ― 50 ― 1.5 ― 2.5 ― ― 100 条件 B 16MHz min max ― 50 30 ― 30 ― ― 50 30 ― 30 ― 1.5 ― 2.5 ― ― 50 30 ― 30 ― 1.5 ― 2.5 ― ― 50 条件 A 20MHz min max ― 50 30 ― 30 ― ― 50 30 ― 30 ― 1.5 ― 2.5 ― ― 50 30 ― 30 ― 1.5 ― 2.5 ― ― 50 4 6 0.4 ― ― ― 100 ― ― 0.6 1.5 1.5 100 ― 4 6 0.4 ― ― ― 50 ― ― 0.6 1.5 1.5 50 ― 4 6 0.4 ― ― ― 50 ― ― 0.6 1.5 1.5 50 ― 100 ― 50 ― 50 ― 50 ― 30 ― 30 ― 132 200 ― ― 132 120 ― ― 132 *1 サブクロック動作時に使用可能な内蔵周辺モジュールのみ 単位 測定条件 ns 図 26.15 ns 図 26.16 図 26.17 t cyc ns 図 26.18 図 26.20 図 26.19 t cyc ns 図 26.21 t cyc 図 26.22 t Scyc t cyc ns 図 26.23 ― ns 図 26.24 100 ― ns t cyc 図 26.25 26. 電気的特性 表 26.9 内蔵周辺モジュールタイミング(2) 条件 A:V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz 単位 測定条件 図 26.26 min max min max min max t HAR 10 ― 10 ― 10 ― ns リード CS/HA0 ホールド時間 t HRA 10 ― 10 ― 10 ― ns サイク IOR パルス幅 t HRPW 220 ― 120 ― 120 ― ns ル HDB 遅延時間 t HRD ― 200 ― 100 ― 100 ns HDB ホールド時間 t HRF 0 40 0 25 0 25 ns HIRQ 遅延時間 t HIRQ ― 200 ― 120 ― 120 ns CS/HA0 セットアップ時間 t HAW 10 ― 10 ― 10 ― ns ライト CS/HA0 ホールド時間 t HWA 10 ― 10 ― 10 ― ns サイク IOW パルス幅 t HWPW 100 ― 60 ― 60 ― ns t HDW 50 ― 30 ― 30 ― ns 85 ― 55 ― 45 ― ns HIF HIF ル CS/HA0 セットアップ時間 HDB セット 高速 GATE A20を使用しない アップ時間 高速 GATE A20を使用する HDB ホールド時間 t HWD 25 ― 15 ― 15 ― ns GA20 遅延時間 t HGA ― 180 ― 90 ― 90 ns 815 26. 電気的特性 表 26.10 キーボードバッファコントローラタイミング 条件:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 規格値 単位 測定条件 min typ max KCLK、KD 出力立ち下がり時間 t KBF 20 + 0.1Cb ― 250 ns KCLK、KD 入力データ t KBIH 150 ― ― ns t KBIS 150 ― ― ns KCLK、KD 出力遅延時間 t KBOD ― ― 450 ns KCLK、KD の容量性負荷 Cb ― ― 400 pF 備考 図 26.27 ホールド時間 KCLK、KD 入力データ セットアップ時間 表 26.11 I 2 C バスタイミング 条件:V CC =3.0V〜5.5V、V SS=0V、φ=5MHz〜最大動作周波数 項 目 記号 規格値 単位 min typ max SCL 入力サイクル時間 t SCL 12 ― ― t cyc SCL 入力 High パルス幅 t SCLH 3 ― ― t cyc SCL 入力 Low パルス幅 t SCLL 5 ― ― SCL、SDA 入力立ち上がり 測定条件 備考 図 26.28 t cyc 1 t Sr ― ― 7.5* t Sf ― ― 300 ns t SP ― ― 1 t cyc SDA 入力バスフリー時間 t BUF 5 ― ― t cyc 開始条件入力ホールド時間 t STAH 3 ― ― t cyc 再送開始条件入力 t STAS 3 ― ― t cyc t STOS 3 ― ― t cyc データ入力セットアップ時間 t SDAS 0.5 ― ― t cyc データ入力ホールド時間 t SDAH 0 ― ― ns SCL、SDA の容量性負荷 Cb ― ― 400 pF t cyc 時間 SCL、SDA 入力立ち下がり 時間 SCL、SDA 入力 スパイクパルス除去時間 セットアップ時間 停止条件入力 セットアップ時間 【注】 * 1 I 2C モジュールで使用するクロックの選択により、17. 5tc yc とすることが可能です。詳細 は「16.4 816 使用上の注意」を参照してください。 26. 26.2.4 電気的特性 A/D 変換特性 A/D 変換特性を表 26.12、表 26.13 に示します。 表 26.12 A/D 変換特性(AN7〜AN0 入力:134/266 ステート変換) 条件 A:V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ 分解能 max min typ 10 max min 10 typ 単 max ビット 10 変換時間* 5 ― ― 13.4 ― ― 8.4 ― ― 6.7 アナログ入力容量 ― ― 20 ― ― 20 ― ― 20 許容信号源 ― ― 10* 1 ― ― 5* 2 インピーダンス 10* 3 ― ― 5* 4 位 10* μs pF 3 kΩ 5* 4 非直線性誤差 ― ― ±7.0 ― ― ±3.0 ― ― ±3.0 LSB オフセット誤差 ― ― ±7.5 ― ― ±3.5 ― ― ±3.5 LSB フルスケール誤差 ― ― ±7.5 ― ― ±3.5 ― ― ±3.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±8.0 ― ― ±4.0 ― ― ±4.0 LSB *3 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) のとき 【注】 *1 4.0V≦AVCC≦5.5V のとき *2 3.0V≦AVCC<4.0V のとき *4 変換時間<11.17 μ s(CKS=1 でφ>12MHz) のとき *5 シングルモードで最大動作周波数のとき 817 26. 電気的特性 表 26.13 A/D 変換特性(CIN15〜CIN0 入力:134/266 ステート変換) 条件 A:V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ 分解能 max min typ 10 変換時間* 5 max 10 typ 位 max ビット 10 ― ― 13.4 ― ― 8.4 ― ― 6.7 μs アナログ入力容量 ― ― 20 ― ― 20 ― ― 20 pF 許容信号源 ― ― 10* 1 ― ― 10* 3 ― ― 10* 3 kΩ 5* 2 インピーダンス 5* 4 5* 4 非直線性誤差 ― ― ±11.0 ― ― ±5.0 ― ― ±5.0 LSB オフセット誤差 ― ― ±11.5 ― ― ±5.5 ― ― ±5.5 LSB フルスケール誤差 ― ― ±11.5 ― ― ±5.5 ― ― ±5.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±12.0 ― ― ±6.0 ― ― ±6.0 LSB *3 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) のとき 【注】 *1 4.0V≦AVCC≦5.5V のとき *2 3.0V≦AVCC<4.0V のとき *4 変換時間<11.17 μ s(CKS=1 でφ>12MHz) *5 シングルモードで最大動作周波数のとき 818 min 単 のとき 26. 26.2.5 電気的特性 D/A 変換特性 D/A 変換特性を表 26.14 に示します。 表 26.14 D/A 変換特性 条件 A:V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ max min 8 変換時間 負荷容量 20pF ― 絶対精度 負荷抵抗 2M Ω ― 負荷抵抗 4M Ω ― ― max min 8 10 ±2.0 ±3.0 ― typ ±2.0 ― ― ― ― 10 ±1.0 ― ― ― ― ビット 10 ±1.0 ±1.5 ― 位 max 8 ±1.0 ±1.5 ― typ 単 μs LSB ±1.0 819 26. 電気的特性 26.2.6 フラッシュメモリ特性 表 26.15 にフラッシュメモリ特性を示します。 表 26.15 フラッシュメモリ特性(書き込み/消去時の動作範囲) 5V 版条件: V CC =5.0V±10%、V SS=0V、 Ta=0〜+75℃(通常仕様品)、Ta=0〜+85℃(広温度範囲仕様品) 3V 版条件: V CC =3.0V〜3.6V、V SS=0V、Ta=0〜+75℃ 項目 書き込み時間* 1* 2* 4 記号 min. typ. max. tP ― 10 200 単位 測定条件 ms/ 32 バイト 消去時間* 1* 3* 6 tE ― 100 NWEC ― ― 100 回 x 10 ― ― μs PSU-bit セット後のウェイト時間* 1 y 50 ― ― μs P-bit セット後のウェイト時間* 1* 4 z 150 ― 200 μs α 10 ― ― μs β 10 ― ― μs PV-bit セット後のウェイト時間* 1 γ 4 ― ― μs ダミーライト後のウェイト時間* 1 ε 2 ― ― μs PV-bit クリア後のウェイト時間* 1 η 4 ― ― μs N ― ― 1000 回 SWE-bit セット後のウェイト時間* 1 x 10 ― ― μs ESU-bit セット後のウェイト時間* 1 y 200 ― ― μs E-bit セット後のウェイト時間* 1* 6 z 5 ― 10 ms α 10 ― ― μs ESU-bit クリア後のウェイト時間* 1 β 10 ― ― μs EV-bit セット後のウェイト時間* 1 γ 20 ― ― μs ダミーライト後のウェイト時間* 1 ε 2 ― ― μs 1 η 5 ― ― μs N ― ― 120 回 書き替え回数 書き込み時 SWE-bit セット後のウェイト時間* 1 P-bit クリア後のウェイト時間* 1 PSU-bit クリア後のウェイト時間* 1 4 最大書き込み回数* * * 消去時 5 E-bit クリア後のウェイト時間* 1 EV-bit クリア後のウェイト時間* 最大消去回数* 1* 6* 7 【注】 1 1200 ms/ブロック z=200 μ s のとき z=10ms のとき *1 各時間の設定は、書き込み/消去のアルゴリズムに従い行ってください。 *2 32 バイト当たりの書き込み時間(フラッシュメモリコントロールレジスタ(FLMCR1)の P-bit をセット しているトータル期間を示します。プログラムベリファイ時間は含まれません。) *3 1 ブロックを消去する時間(フラッシュメモリコントロールレジスタ(FLMCR1)の E-bit をセットしてい るトータル期間を示します。イレースベリファイ時間は含まれません。) *4 書き込み時間の最大値(tP(max)) tP(max)=P-bit セット後のウェイト時間(z)×最大書き込み回数(N) 820 26. 電気的特性 *5 P-bit セット後のウェイト時間(z)=200 μ s 時の回数です。書き込み回数は、実際の(z)の設定値に合 わせ、書き込み時間の最大値(tP(max))以下となるよう設定してください。 *6 消去時間の最大値(tE(max)) tE(max)=E-bit セット後のウェイト時間(z)×最大消去回数(N) *7 E-bit セット後のウェイト時間(z)=10ms 時の回数です。消去回数は、実際の(z)の設定値に合わせ、 消去時間の最大値(tE(max))以下となるよう設定してください。 821 26. 電気的特性 26.2.7 使用上の注意 (1)F -ZTAT 版とマスク R OM 版は、本マニュアルに記載の電気的特性を満足しています が、製造プロセスの相違、内蔵 ROM の相違、レイアウトパターンの相違などにより、 電気的特性の実力値や動作マージン、ノイズマージンなどは異なる場合があります。 F-ZTAT 版を使用してシステムの評価試験を行う場合には、マスク ROM 版への切り替 え時にマスク ROM 版についても同等の評価試験を行ってください。 (2)内部降圧品への切り替え H8S/2148 F-ZTAT は、内部降圧機能はサポートしていません。 内部降圧対応の F -ZTAT 版あるいは内部降圧対応のマスク R OM 版に切り替えを行う 場合には、VCC2 端子は、内部降圧品の VCL 端子と同じピン配置になります。このた め、基板パターンを設計する場合には切り替え前後の回路の違いを考慮する必要があ りますので、ご注意願います。 Vcc電源 電源安定化用 外付けコンデンサ バイパス VCL VCC2 コンデンサ 0.47μF 内部降圧対応品 1個または 内部降圧非対応品 10μF 0.01μF VSS 2個並列 VSS 内部降圧対応品のVCL端子には、Vcc電源は接続 しないでください。(他のVCC1端子には従来ど おり、Vcc電源を接続してください)。 内部降圧非対応品では、内部降圧対応品の VCL端子と同じピン位置にVCC2端子( Vcc 電源端子)があります。 VCL端子には、必ず電源安定化用コンデンサを接 続してください。コンデンサは積層セラミックコ ンデンサ(0.47μFを1個または2個並列)を使用 し、端子の近くに配置してください。 電源端子には、バイパスコンデンサを接続 することを推奨いたします。(値は参考値) 3.6V以下で使用する3V品の場合には、内部降圧非 対応品と同じ方法で、電源に接続してください。 HD64F2148(V)、HD64F2147N(V)、 <内部降圧対応品> HD6432148S、HD6432148SW、 HD6432142、 HD6432147S、HD6432147SW、 HD6432144S、HD6432143S、 HD64F2148A、HD64F2147A、 HD64F2144A <内部降圧非対応品> HD64F2144(V)、HD64F2142(V)、 HD6432148SV、HD6432148SVW、 HD6432147SV、HD6432147SVW、 HD6432144SV、HD6432143SV、 HD64F2148AV、HD64F2147AV、 HD64F2144AV 図 26.3 内部降圧対応マスク ROM 品の VCL コンデンサ接続方法と内部降圧非対応品と の違い 822 26. 電気的特性 26.3 H8S/2148 F-ZTAT (A マスク品)、 H8S/2147 F-ZTAT (A マスク品)、 H8S/2148 マスク ROM 品、 H8S/2147 マスク ROM 品の電気的特性 26.3.1 絶対最大定格 絶対最大定格を表 26.16 に示します。 表 26.16 絶対最大定格 項 電源電圧* 目 ―暫定― 記号 1 定格値 単位 VCC - 0.3〜+7.0 V VCCB - 0.3〜+7.0 V VCC - 0.3〜+4.3 V VCL - 0.3〜+4.3 V 入力電圧(ポート 6、7、A 以外) Vin - 0.3〜VCC + 0.3 V 入力電圧 Vin - 0.3〜VCC + 0.3 V Vin - 0.3〜VCCB + 0.3 V Vin - 0.3〜VCC + 0.3 と AVCC + 0.3 の V 入出力バッファ用電源電圧 (ポート A 用電源) 電源電圧(3V 品)* 1 電源電圧(VCL 端子)* 2 (ポート 6 で CIN 入力非選択時) 入力電圧 (ポート A で CIN 入力非選択時) 入力電圧 (ポート 6 で CIN 入力選択時) 入力電圧 いずれか低い電圧 Vin (ポート A で CIN 入力選択時) - 0.3〜VCCB + 0.3 と AVCC + 0.3 の V いずれか低い電圧 入力電圧(ポート 7) Vin - 0.3〜AVCC + 0.3 V リファレンス電源電圧 AVref - 0.3〜AVCC + 0.3 V アナログ電源電圧 AVCC - 0.3〜+7.0 V アナログ電源電圧(3V 品) AVCC - 0.3〜+4.3 V アナログ入力電圧 VAN - 0.3〜AVCC + 0.3 V 動作温度 Topr 通常仕様品:-20〜+75 ℃ 広温度範囲仕様品:-40〜+85 動作温度 Topr (FLASH メモリ書込み/消去時) 保存温度 通常仕様品:-20〜+75 ℃ 広温度範囲仕様品:-40〜+85 Tstg - 55〜+125 ℃ 【使用上の注意】 1. 絶対最大定格を超えて LSI を使用した場合、LSI の永久破壊となることがあります。 2. 5V/4V 品の入力端子への印加電圧は、最大でも 7. 0V 以下としてください。また、3V 品の入力端子(ポート A を除く)への印加電圧は、最大でも 4.3V 以下としてください。 823 26. 電気的特性 *1 VCC1 端子への印加電圧です。 低電圧品(3V 品)では VC C1 端子と VC L 端子をともに VC C 電源に接続して使用するた め、絶対に VCL の定格値を超えないようにしてください。 *2 チップ内部の動作電源電圧端子です。 5V 品/4V 品では VCL 端子には電源電圧を印加しないでください。VCL 端子と GND と の間には、内部電圧安定化のため必ず外付けのコンデンサを接続してください。 824 26. 26.3.2 電気的特性 DC 特性 DC 特性を表 26.17 に示します。また、出力許容電流値、バス駆動特性をそれぞれ表 26.18、 表 26.19 に示します。 表 26.17 DC 特性(1) ―暫定― 条件:V CC =5.0V±10%、V CC B=5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 項 シュミット トリガ入力電圧 目 記号 (1) P67〜P60 2 min typ max 単位 − T 1.0 ― ― V + T ― ― VCC×0.7 V 6 (KWUL=00) * * 、 V KIN15〜KIN8* * 、 7 8 測定条件 VCCB×0.7 IRQ2〜IRQ0* 、 + T 3 V − T –V 0.4 ― ― VCC×0.3 ― ― IRQ5〜IRQ3 シュミット VT− P67〜P60 (KWUL=01) + T トリガ入力電圧 (レベル 切換時)* ― V + T – T V –V 6 − T P67〜P60 (KWUL=10) V + T – T V –V − T P67〜P60 (KWUL=11) V + T – T V –V 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) VIH ― VCC×0.4 ― PA7〜PA0* 7 ― VCC×0.8 ― VCC×0.45 ― ― 0.05 ― VCC×0.9 ― ― VCC – 0.7 ― VCC + 0.3 VCC×0.7 EXTAL ― VCC×0.03 ― ― V + T ― VCC×0.7 VCC×0.05 ― ― V + T V V ― VCC + 0.3 VCCB×0.7 ― VCCB + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 - 0.3 ― 1.0 NMI、EXTAL ほか、 - 0.3 ― 0.8 VCC – 0.5 ― ― V I OH = - 200 μ A VIL V 上記(1)(3)以外の入力端子 出力 High レベル電圧 全出力端子 VOH 4 5 (P97、P52 を除く* )* * P97、P52* 8 VCCB – 0.5 4 5 3.5 ― ― V I OH = - 1mA 2.0 ― ― V I OH = - 200 μ A ― ― 0.4 V I OL =1.6mA 出力 Low 全出力端子(RESO を除く) * レベル電圧 ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA VOL 825 26. 電気的特性 【注】 *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 H8S/2148 シリーズでは、P52/SCK0/SCL0、P97/SDA0 は NMOS プッシュプル出力です。 SCL0、SDA0(ICE=1)から High レベル出力するためにはプルアップ抵抗を外付けする必要があります。 H8S/2148 シリーズでは、P52/SCK0、P97(ICE=0)の High レベルは NMOS で駆動されます。 *5 IICS=0、ICE=0 および KBIOE=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定め ます。 *6 ポート 6 の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *7 ポート A の印加電圧の上限は、 CIN 入力非選択時は VCCB+0.3V、 CIN 入力選択時は VCCB+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *8 ポート A の特性は、VCCB 依存、その他の端子の特性は、VCC 依存です。 826 26. 表 26.17 DC 特性(2) 電気的特性 ―暫定― 条件:V CC =5.0V±10%、V CC B=5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 項 目 入力リーク電流 RES スリーステート 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 ― ― 1.0 |I TSI| ポート 1〜6 Vin=0.5〜AVCC - 0.5V μ A Vin=0.5〜VCC - 0.5V 4 リーク電流 測定条件 ポート 8、9、A* 、B Vin=0.5〜VCCB - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 - Ip 4 MOS 電流 ポート A* 、B、 30 ― 300 60 ― 600 15 ― 200 μ A Vin=0V ポート 6(P6PUE=0) ポート 6(P6PUE=1) RES 入力容量 ― ― 80 NMI (4) ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 55 70 mA f=20MHz ― 36 55 mA f=20MHz ― 1.0 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V mA Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 ― 0.5 1.0 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.5 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AIref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 消費電流値は、VI H min=VCC - 0.2V、VCCB - 0.2V、VI L max=0.2V の条件下で、すべての出力端子を無負 荷状態にして、さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.5V のとき、VI H min=VCC - 0.2V、VCCB - 0.2V、VI L max=0.2V とした場合の値です。 *4 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 827 電気的特性 26. 表 26.17 DC 特性(3) ―暫定― 条件:V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、AVCC *1=4.0V〜5.5V、AVref*1=4.0V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 項 シュミット トリガ入力電圧 目 (1) P67〜P60 2 記号 min typ max VT− 1.0 ― ― ― ― VCC×0.7 + T 6 (KWUL=00) * * 、 V KIN15〜KIN8* 7* 8、 単位 測定条件 V VCC=4.5V〜5.5V、 VCCB=4.5V〜5.5V VCCB×0.7 IRQ2〜IRQ0* 3、 VT+ – VT− IRQ5〜IRQ3 0.4 ― ― V 0.8 ― ― VT+ ― ― VCC×0.7 − T V VCC=4.0V〜4.5V、 VCCB=4.0V〜4.5V VCCB×0.7 + T V シュミット P67〜P60 (KWUL=01) トリガ入力電圧 0.3 ― ― VT− VCC×0.3 ― ― VT+ ― –V VT+ – VT– (レベル 切換時)* − T 6 − T P67〜P60 (KWUL=10) V VT+ P67〜P60 (KWUL=11) RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) VCC×0.4 ― ― ― VCC×0.8 VCC×0.03 ― ― VT− VCC×0.45 ― ― V ― VT+ – VT– 0.05 VIH PA7〜PA0* 7 ― VCC×0.9 ― ― VCC – 0.7 ― VCC + 0.3 VCC×0.7 EXTAL V ― VCC + 0.3 VCCB×0.7 ― VCCB + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 - 0.3 ― 1.0 VCCB=4.5V〜5.5V - 0.3 ― 0.8 VCCB=4.0V〜4.5V - 0.3 ― 0.8 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 NMI、EXTAL ほか、 上記(1)(3)以外の入力端子 828 ― VT+ – VT– + T 入力 High ― VCC×0.7 VCC×0.05 ― ― V VCC=4.0V〜5.5V VIL V 26. 項 単位 電気的特性 目 記号 min typ max 測定条件 出力 High 全出力端子 VOH VCC - 0.5 ― ― V I OH = - 200 μ A レベル電圧 (P97、P52 を除く* 4)* 5* 8 ― ― V I OH = - 1mA、 VCCB - 0.5 3.5 VCC=4.5V〜5.5V、 VCCB=4.5V〜5.5V 3.0 ― ― V I OH = - 1mA、 VCC=4.0V〜4.5V、 VCCB=4.0V〜4.5V P97、P52* 4 1.5 ― ― V I OH = - 200 μ A ― ― 0.4 V I OL =1.6mA 出力 Low 全出力端子(RESO を除く) * 5 レベル電圧 ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA 【注】 VOL *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 H8S/2148 シリーズでは、P52/SCK0/SCL0、P97/SDA0 は NMOS プッシュプル出力です。 SCL0、SDA0(ICE=1)から High レベル出力するためにはプルアップ抵抗を外付けする必要があります。 H8S/2148 シリーズでは、P52/SCK0、P97(ICE=0)の High レベルは NMOS で駆動されます。 *5 IICS=0、ICE=0 および KBIOE=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定め ます。 *6 ポート 6 の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *7 ポート A の印加電圧の上限は、 CIN 入力非選択時は VCCB+0.3V、 CIN 入力選択時は VCCB+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *8 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 829 電気的特性 26. 表 26.17 DC 特性(4) ―暫定― 条件:V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、AVCC *1=4.0V〜5.5V、 AVref*1=4.0V〜AVCC 、V SS=AVSS*1=0V Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 ― ― 1.0 入力リーク電流 RES スリーステート リーク電流 ポート 1〜6 |I TSI| 測定条件 Vin=0.5〜AVCC - 0.5V μ A Vin=0.5〜VCC - 0.5V、 4 ポート 8、9、A* 、B Vin=0.5〜VCCB - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 - Ip 4 MOS 電流 ポート A* 、B、 30 ― 300 60 ― 600 μ A Vin=0V、 VCC=4.5V〜5.5V、 ポート 6(P6PUE=0) VCCB=4.5V〜5.5V ポート 6(P6PUE=1) 15 ― 200 ポート 1〜3 20 ― 200 ポート A* 4、B、 40 ― 500 μ A Vin=0V、 VCC=4.0V〜4.5V、 ポート 6(P6PUE=0) VCCB=4.0V〜4.5V ポート 6(P6PUE=1) 10 ― 150 ― ― 80 NMI ― ― 50 f=1MHz、 P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 45 58 mA f=16MHz ― 30 46 mA f=16MHz ― 1.0 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA RES 入力容量 (4) Cin pF Vin=0V、 P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.0 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 830 AI CC AI ref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V 26. 【注】 電気的特性 *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 消費電流値は、VI H min=VCC - 0.2V、VCCB - 0.2V、VI L max=0.2V の条件下で、すべての出力端子を無負 荷状態にして、さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.0V のとき、VI H min=VCC - 0.2V、VCCB - 0.2V、VI L max=0.2V とした場合の値です。 *4 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 831 電気的特性 26. 表 26.17 DC 特性(5) ―暫定― 条件:V CC =2.7V〜3.6V *9、V CC B=2.7V〜5.5V、AVCC *1=2.7V〜3.6V、 AVref*1=2.7V〜3.6V、V SS=AVSS*1=0V、Ta=-20〜+75℃ 項 シュミット トリガ入力電圧 目 記号 (1) P67〜P60 2 − T V 6 (KWUL=00) * * 、 typ max 単位 VCC×0.2 ― ― V 測定条件 VCCB×0.2 KIN15〜KIN8* * 、 7 min + T 8 ― V ― VCC×0.7 IRQ2〜IRQ0* 、 3 VCCB×0.7 IRQ5〜IRQ3 VT+ – VT− VCC×0.05 ― ― ― ― VCCB×0.05 シュミット − T P67〜P60 (KWUL=01) + T トリガ入力電圧 ― V + T (レベル 切換時)* 6 VCC×0.3 V – T V –V VT− P67〜P60 (KWUL=10) + T – T V –V − T P67〜P60 (KWUL=11) V VT+ + T V –V 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) ― ― VCC×0.4 ― ― ― VCC×0.8 VCC×0.03 ― ― VCC×0.45 ― ― ― – T ― VCC×0.7 VCC×0.05 ― V + T 0.05 ― VCC×0.9 ― ― VCC×0.9 ― VCC + 0.3 VCC×0.7 ― VCC + 0.3 VCCB×0.7 ― VCCB + 0.3 ポート 7 VCC×0.7 ― AVCC + 0.3 上記(1)(2)以外の入力端子 VCC×0.7 ― VCC + 0.3 - 0.3 ― VCC×0.1 - 0.3 ― VCCB×0.2 VIH EXTAL PA7〜PA0* 7 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 VIL 0.8 NMI、EXTAL ほか、 - 0.3 V ― VCC×0.2 V V VCCB = 2.7V〜4.0V VCCB = 4.0V〜5.5V VCC = 2.7V〜3.6V 上記(1)(3)以外の入力端子 出力 High レベル電圧 全出力端子 VOH 4 5 (P97、P52 を除く* )* * 8 VCC – 0.5 ― ― V I OH = - 200 μ A ― ― V I OH = - 1mA VCCB – 0.5 VCC – 1.0 VCCB – 1.0 (VCC = 2.7V〜3.6V、 VCCB =2.7V〜4.0V) P97、P52* 4 5 0.5 ― ― V I OH =- 200 μ A ― ― 0.4 V I OL =1.6mA 出力 Low 全出力端子(RESO を除く) * レベル電圧 ポート 1、2、3 ― ― 1.0 V I OL =5mA RESO ― ― 0.4 V I OL =1.6mA 832 VOL 26. 【注】 電気的特性 *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜3.6V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 H8S/2148 シリーズでは、P52/SCK0/SCL0、P97/SDA0 は NMOS プッシュプル出力です。 SCL0、SDA0(ICE=1)から High レベル出力するためにはプルアップ抵抗を外付けする必要があります。 H8S/2148 シリーズでは、P52/SCK0、P97(ICE=0)の High レベルは NMOS で駆動されます。 *5 IICS=0、ICE=0 および KBIOE=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定め ます。 *6 ポート 6 の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *7 ポート A の印加電圧の上限は、 CIN 入力非選択時は VCCB+0.3V、 CIN 入力選択時は VCCB+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *8 ポート A の特性は、VCCB 依存、その他の端子の特性は VCC 依存です。 *9 フラッシュメモリへの書き込み/消去動作は、VCC=3.0V〜3.6V の範囲としてください。 833 電気的特性 26. 表 26.17 DC 特性(6) ―暫定― 条件:V CC =2.7V〜3.6V*5、V CC B=2.7V〜5.5V、AVCC *1=2.7V〜3.6V、 AVref*1=2.7V〜3.6V、V SS=AVSS*1=0V、Ta=-20〜+75℃ 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 ― ― 1.0 入力リーク電流 RES スリーステート ポート 1〜6 |I TSI| Vin=0.5〜AVCC - 0.5V μ A Vin=0.5〜VCC - 0.5V、 4 リーク電流 測定条件 ポート 8、9、A* 、B Vin=0.5〜VCCB - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 - Ip 4 MOS 電流 ポート A* 、B、 5 ― 150 30 ― 300 μ A Vin=0V Vcc=2.7V〜3.6V、 ポート 6(P6PUE=0) VccB=2.7V〜3.6V ポート 6(P6PUE=1) 3 ― 100 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 30 40 mA f=10MHz ― 20 32 mA f=10MHz ― 1.0 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜3.6V ― 0.5 1.0 mA RES 入力容量 (4) Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 2.7 ― 3.6 2.0 ― 3.6 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AI ref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref 端子は電源(VCC)に接続するなどの方法 で 2.0V〜3.6V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 消費電流値は、VI H min=VCC - 0.2V、VCCB - 0.2V、VI L max=0.2V の条件下で、すべての出力端子を無負 荷状態にして、さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<2.7V のとき、VI H min=VCC - 0.2V、VCCB - 0.2V、VI L max=0.2V とした場合の値です。 *4 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 *5 フラッシュメモリへの書き込み/消去は VCC=3.0V〜3.6V の範囲としてください。 834 26. 表 26.18 出力許容電流値 電気的特性 ―暫定― 条件:V CC =4.0V〜5.5V、 V CC B=4.0V〜5.5V、V SS= 0V Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 項 目 記号 min typ max 単位 I OL ― ― 20 mA ポート 1、2、3 ― ― 10 RESO ― ― 3 上記以外の出力端子 ― ― 2 ― ― 80 ― ― 120 - I OH ― ― 2 mA Σ - I OH ― ― 40 mA 出力 Low レベル許容電流 SCL1〜SCL0、SDA1〜 (1 端子あたり) SDA0、PS2AC〜PS2CC、 PS2AD〜PS2CD、 PA7〜PA4(バス駆動機能選択) 出力 Low レベル許容電流 ポート 1、2、3 の総和 (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 Σ I OL mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 条件:V CC =2.7V〜3.6V、V CC B=2.7V〜5.5V、V SS= 0V、Ta= -20〜+75℃ 項 目 記号 min typ max 単位 I OL ― ― 10 mA ポート 1、2、3 ― ― 2 RESO ― ― 1 上記以外の出力端子 ― ― 1 ― ― 40 ― ― 60 - I OH ― ― 2 mA Σ - I OH ― ― 30 mA 出力 Low レベル許容電流 SCL1〜SCL0、SDA1〜SDA0、 (1 端子あたり) PS2AC〜PS2CC、 PS2AD〜PS2CD、 PA7〜PA4(バス駆動機能選択) 出力 Low レベル許容電流 ポート 1、2、3 の総和 (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 Σ I OL mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 【注】 1. LSI の信頼性を確保するため、出力電流値は表 26. 18 の値を超えないようにしてくださ い。 2. ダーリントントランジスタや、LED を直接駆動する場合には、図 26. 1、図 26. 2 に示す ように、出力に必ず電流制限抵抗を挿入してください。 835 26. 電気的特性 表 26.19 バス駆動特性 ―暫定― 条件:V CC =4.0V〜5.5V、V CC =2.7V〜3.6V(3V 品)、V SS=0V 対象端子:SCL1〜SCL0、SDA1〜SDA0(バス駆動機能選択) 項 目 シュミット トリガ入力電圧 入力 High 記号 min typ max 単位 VT− VCC×0.3 ― ― V ― ― VCC×0.7 VT+ - VT− VCC×0.05 ― ― VI H VCC×0.7 ― VCC + 0.5 V VIL - 0.5 ― VCC×0.3 V VOL ― ― 0.8 V ― ― 0.5 I OL =8mA ― ― 0.4 I OL =3mA Cin ― ― 20 |I TSI| ― ― 1.0 t Of 20 + 0.1Cb ― 250 + T V 測定条件 レベル電圧 入力 Low レベル電圧 出力 Low レベル電圧 入力容量 スリーステート pF I OL =16mA、VCC=4.5V〜5.5V Vin=0V、f=1MHz、Ta=25℃ μ A Vin=0.5〜VCC - 0.5V リーク電流 (オフ状態) SCL、SDA 出力 ns 立ち下がり時間 条件:V CC =4.0V〜5.5V、V CC =2.7V〜3.6V(3V 品)、V CC B=2.7V〜5.5V、V SS=0V 対象端子:PS2AC、PS2AD、PS2BC、PS2BD、PS2CC、PS2CD PA7〜PA4(バス駆動機能選択) 項 目 出力 Low レベル電圧 836 記号 min typ max 単位 測定条件 VOL ― ― 0.8 V ― ― 0.5 I OL =8mA ― ― 0.4 I OL =3mA I OL =16mA、VCCB=4.5V〜5.5V 26. 26.3.3 電気的特性 AC 特性 クロックタイミング、制御信号タイミング,バスタイミング,および内蔵周辺機能タイ ミングを以下に示します。 AC 特性測定条件は図 26.4 を参照してください。 (1)クロックタイミング 表 26.20 にクロックタイミングを示します。ここで規定するクロックタイミングは、ク ロック(φ)出力と、クロック発振器(水晶)と外部クロック入力(EXTA L 端子)の発 振安定時間です。外部クロック入力(EXTA L 端子および EXC L 端子)タイミングの詳細 については、「第 24 章 クロック発振器」を参照してください。 表 26.20 クロックタイミング ―暫定― 条件 A:V CC =5.0V±10%、 V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、 V CC B=4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =2.7V〜3.6V、 V CC B=2.7V〜5.5V、V SS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 クロックサイクル時間 t cyc 100 500 62.5 500 50 500 ns 図 26.5 クロックハイレベルパルス幅 t CH 30 ― 20 ― 17 ― ns 図 26.5 クロックローレベルパルス幅 t CL 30 ― 20 ― 17 ― ns クロック立ち上がり時間 t Cr ― 20 ― 10 ― 8 ns クロック立ち下がり時間 t Cf ― 20 ― 10 ― 8 ns t OSC1 20 ― 10 ― 10 ― ms 図 26.6 ソフトウエアスタンバイ発振安定時間 (水晶) t OSC2 8 ― 8 ― 8 ― ms 図 26.7 500 ― 500 ― 500 ― μs リセット発振安定時間(水晶) 外部クロック出力安定遅延時間 t DEXT 837 26. 電気的特性 (2)制御信号タイミング 表 2 6.21 に制御信号タイミングを示します。サブクロック(φ=32. 768kHz)で動作可 能な外部割込みは、NMI、IRQ0〜2、6、7 のみです。 表 26.21 制御信号タイミング ―暫定― 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、 φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、 φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V 〜3.6V、V CC B=2.7V〜5.5V、V SS=0V、 φ=32.768kHz、2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 図 26.8 RES セットアップ時間 t RESS 300 ― 200 ― 200 ― ns RES パルス幅 t RESW 20 ― 20 ― 20 ― t cyc NMI セットアップ時間(NMI) t NMIS 250 ― 150 ― 150 ― ns NMI ホールド時間 t NMIH 10 ― 10 ― 10 ― ns t NMIW 200 ― 200 ― 200 ― ns t IRQS 250 ― 150 ― 150 ― ns t IRQH 10 ― 10 ― 10 ― ns t IRQW 200 ― 200 ― 200 ― ns (NMI) NMI パルス幅(NMI) (ソフトウェアスタンバイモード からの復帰時) IRQ セットアップ時間 (IRQ7 〜IRQ0) IRQ ホールド時間 (IRQ7 〜IRQ0) IRQ パルス幅 (IRQ7、IRQ6、IRQ2〜IRQ0) (ソフトウェアスタンバイモード からの復帰時) 838 図 26.9 26. 電気的特性 (3)バスタイミング 表 2 6.22 にバスタイミングを示します。サブクロック(φ=32. 768kHz)動作では、外 部拡張モードの動作は保証されません。 表 26.22 バスタイミング(1)(ノーマルモード使用時) ―暫定― 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V 〜3.6V、V CC B=2.7V〜5.5V、V SS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min Max min max 単位 測定条件 アドレス遅延時間 t AD ― 40 ― 30 ― 20 ns 図 26.10 アドレスセットアップ時間 t AS 0.5×tcyc - 30 ― 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― ns 〜 アドレスホールド時間 t AH 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― 0.5×tcyc - 10 ― ns 図 26.14 CS 遅延時間(IOS) t CSD ― 40 ― 30 ― 20 ns AS 遅延時間 t ASD ― 60 ― 45 ― 30 ns RD 遅延時間 1 t RSD1 ― 60 ― 45 ― 30 ns RD 遅延時間 2 t RSD2 ― 60 ― 45 ― 30 ns リードデータセットアップ時間 t RDS 35 ― 20 ― 15 ― ns リードデータホールド時間 t RDH 0 ― 0 ― 0 ― ns リードデータアクセス時間 1 t ACC1 ― 1.0×tcyc - 60 ― 1.0×tcyc - 40 ― 1.0×tcyc - 30 ns リードデータアクセス時間 2 t ACC2 ― 1.5×tcyc - 50 ― 1.5×tcyc - 35 ― 1.5×tcyc - 25 ns リードデータアクセス時間 3 t ACC3 ― 2.0×tcyc - 60 ― 2.0×tcyc - 40 ― 2.0×tcyc - 30 ns リードデータアクセス時間 4 t ACC4 ― 2.5×tcyc - 50 ― 2.5×tcyc - 35 ― 2.5×tcyc - 25 ns リードデータアクセス時間 5 t ACC5 ― 3.0×tcyc - 60 ― 3.0×tcyc - 40 ― 3.0×tcyc - 30 ns WR 遅延時間 1 t WRD1 ― 60 ― 45 ― 30 ns WR 遅延時間 2 t WRD2 ― 60 ― 45 ― 30 ns WR パルス幅 1 t WSW1 1.0×tcyc - 40 ― 1.0×tcyc - 30 ― 1.0×tcyc - 20 ― ns WR パルス幅 2 t WSW2 1.5×tcyc - 40 ― 1.5×tcyc - 30 ― 1.5×tcyc - 20 ― ns ライトデータ遅延時間 t WDD ― 60 ― 45 ― 30 ns ライトデータセットアップ時間 t WDS 0 ― 0 ― 0 ― ns ライトデータホールド時間 t WDH 20 ― 15 ― 10 ― ns WAIT セットアップ時間 t WTS 60 ― 45 ― 30 ― ns WAIT ホールド時間 t WTH 10 ― 5 ― 5 ― ns 839 26. 電気的特性 表 26.22 バスタイミング(2)(アドバンストモード使用時) ―暫定― 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V 〜3.6V、V CC B=2.7V〜5.5V、V SS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 アドレス遅延時間 t AD ― 60 ― 45 ― 30 ns 図 26.10 アドレスセットアップ時間 t AS 0.5×tcyc - 50 ― 0.5×tcyc - 35 ― 0.5×tcyc - 25 ― ns 〜 アドレスホールド時間 t AH 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― 0.5×tcyc - 10 ― ns 図 26.14 CS 遅延時間(IOS) t CSD ― 60 ― 45 ― 30 ns AS 遅延時間 t ASD ― 60 ― 45 ― 30 ns RD 遅延時間 1 t RSD1 ― 60 ― 45 ― 30 ns RD 遅延時間 2 t RSD2 ― 60 ― 45 ― 30 ns リードデータセットアップ時間 t RDS 35 ― 20 ― 15 ― ns リードデータホールド時間 t RDH 0 ― 0 ― 0 ― ns リードデータアクセス時間 1 t ACC1 ― 1.0×tcyc - 80 ― 1.0×tcyc - 55 ― 1.0×tcyc - 40 ns リードデータアクセス時間 2 t ACC2 ― 1.5×tcyc - 50 ― 1.5×tcyc - 35 ― 1.5×tcyc - 25 ns リードデータアクセス時間 3 t ACC3 ― 2.0×tcyc - 80 ― 2.0×tcyc - 55 ― 2.0×tcyc - 40 ns リードデータアクセス時間 4 t ACC4 ― 2.5×tcyc - 50 ― 2.5×tcyc - 35 ― 2.5×tcyc - 25 ns リードデータアクセス時間 5 t ACC5 ― 3.0×tcyc - 80 ― 3.0×tcyc - 55 ― 3.0×tcyc - 40 ns WR 遅延時間 1 t WRD1 ― 60 ― 45 ― 30 ns WR 遅延時間 2 t WRD2 ― 60 ― 45 ― 30 ns WR パルス幅 1 t WSW1 1.0×tcyc - 40 ― 1.0×tcyc - 30 ― 1.0×tcyc - 20 ― ns WR パルス幅 2 t WSW2 1.5×tcyc - 40 ― 1.5×tcyc - 30 ― 1.5×tcyc - 20 ― ns ライトデータ遅延時間 t WDD ― 60 ― 45 ― 30 ns ライトデータセットアップ時間 t WDS 0 ― 0 ― 0 ― ns ライトデータホールド時間 t WDH 20 ― 15 ― 10 ― ns WAIT セットアップ時間 t WTS 60 ― 45 ― 30 ― ns WAIT ホールド時間 t WTH 10 ― 5 ― 5 ― ns 840 26. 電気的特性 (4)内蔵周辺モジュールタイミング 表 2 6.23 〜表 2 6.25 に内蔵周辺モジュールタイミングを示します。サブクロック動作時 (φ=32. 768kHz)に動作可 能な内蔵周辺モジュールは、I/O ポート 、外部割込み(NMI、 IRQ0〜2、6、7)、ウォッチドッグタイマ、8 ビットタイマ(チャネル 0、1)のみです。 表 26.23 内蔵周辺モジュールタイミング(1) ―暫定― 条件 A:V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、 φ=32.768kHz*1、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B:V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、 φ=32.768kHz*1、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =2.7V 〜3.6V、V CC B=2.7V〜5.5V、V SS=0V、 φ=32.768kHz*1、2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 出力データ遅延時間 t PWD 入力データセットアップ時間 t PRS 入力データホールド時間 t PRH FRT タイマ出力遅延時間 t FTOD タイマ入力セットアップ時間 t FTIS タイマクロック入力セットアップ時間 t FTCS タイマクロック 単エッジ指定 t FTCWH パルス幅 両エッジ指定 t FTCWL TMR タイマ出力遅延時間 t TMOD タイマリセット入力セットアップ時間 t TMRS タイマクロック入力セットアップ時間 t TMCS タイマクロック 単エッジ指定 t TMCWH パルス幅 両エッジ指定 t TMCWL PWM、 パルス出力遅延時間 t PWOD PWMX SCI 入力クロック 調歩同期 t Scyc サイクル クロック同期 入力クロックパルス幅 t SCKW 入力クロック立ち上がり時間 t SCKr 入力クロック立ち下がり時間 t SCKf 送信データ遅延時間(クロック同期) t TXD 受信データセットアップ時間 t RXS (クロック同期) 受信データホールド時間 t RXH (クロック同期) A/D トリガ入力セットアップ時間 t TRGS 変換器 WDT RESO 出力遅延時間 t RESD RESO 出力パルス幅 t RESOW I/O ポート 【注】 条件 C 10MHz min max ― 100 50 ― 50 ― ― 100 50 ― 50 ― 1.5 ― 2.5 ― ― 100 50 ― 50 ― 1.5 ― 2.5 ― ― 100 条件 B 16MHz min max ― 50 30 ― 30 ― ― 50 30 ― 30 ― 1.5 ― 2.5 ― ― 50 30 ― 30 ― 1.5 ― 2.5 ― ― 50 条件 A 20MHz min max ― 50 30 ― 30 ― ― 50 30 ― 30 ― 1.5 ― 2.5 ― ― 50 30 ― 30 ― 1.5 ― 2.5 ― ― 50 4 6 0.4 ― ― ― 100 ― ― 0.6 1.5 1.5 100 ― 4 6 0.4 ― ― ― 50 ― ― 0.6 1.5 1.5 50 ― 4 6 0.4 ― ― ― 50 ― ― 0.6 1.5 1.5 50 ― 100 ― 50 ― 50 ― 50 ― 30 ― 30 ― 132 200 ― ― 132 120 ― ― 132 単位 測定条件 ns 図 26.15 ns 図 26.16 図 26.17 t cyc ns 図 26.18 図 26.20 図 26.19 t cyc ns 図 26.21 t cyc 図 26.22 t Scyc t cyc ns 図 26.23 ― ns 図 26.24 100 ― ns t cyc 図 26.25 *1 サブクロック動作時に使用可能な内蔵周辺モジュールのみ 841 26. 電気的特性 表 26.23 内蔵周辺モジュールタイミング(2) ―暫定― 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V CC B=4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V 〜3.6V、V CC B=2.7V〜5.5V、V SS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz 単位 測定条件 図 26.26 min max min max min max t HAR 10 ― 10 ― 10 ― ns リード CS/HA0 ホールド時間 t HRA 10 ― 10 ― 10 ― ns サイク IOR パルス幅 t HRPW 220 ― 120 ― 120 ― ns ル HDB 遅延時間 t HRD ― 200 ― 100 ― 100 ns HDB ホールド時間 t HRF 0 40 0 25 0 25 ns HIRQ 遅延時間 t HIRQ ― 200 ― 120 ― 120 ns CS/HA0 セットアップ時間 t HAW 10 ― 10 ― 10 ― ns ライト CS/HA0 ホールド時間 t HWA 10 ― 10 ― 10 ― ns サイク IOW パルス幅 t HWPW 100 ― 60 ― 60 ― ns t HDW 50 ― 30 ― 30 ― ns 85 ― 55 ― 45 ― ns HIF HIF ル 842 CS/HA0 セットアップ時間 HDB セット 高速 GATE A20を使用しない アップ時間 高速 GATE A20を使用する HDB ホールド時間 t HWD 25 ― 15 ― 15 ― ns GA20 遅延時間 t HGA ― 180 ― 90 ― 90 ns 26. 電気的特性 表 26.24 キ ー ボ ー ド バ ッ フ ァ コ ン ト ロ ー ラ タイミング ―暫定― 条件:V CC =4.0V〜5.5V、V CC=2.7V〜3.6V(3V 品)、V CC B=2.7V〜5.5V、V SS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 規格値 単位 測定条件 min typ max KCLK、KD 出力立ち下がり時間 t KBF 20 + 0.1Cb ― 250 ns KCLK、KD 入力データ t KBIH 150 ― ― ns t KBIS 150 ― ― ns KCLK、KD 出力遅延時間 t KBOD ― ― 450 ns KCLK、KD の容量性負荷 Cb ― ― 400 pF 備考 図 26.27 ホールド時間 KCLK、KD 入力データ セットアップ時間 843 26. 電気的特性 表 26.25 I 2 C バスタイミング ―暫定― 条件:V CC =4.0V〜5.5V、V CC =2.7V〜3.6V(3V 品)、V SS=0V、 φ=5MHz〜最大動作周波数 項 目 記号 規格値 単位 min typ max SCL 入力サイクル時間 t SCL 12 ― ― t cyc SCL 入力 High パルス幅 t SCLH 3 ― ― t cyc SCL 入力 Low パルス幅 t SCLL 5 ― ― t cyc t Sr ― ― 7.5* 1 t cyc t Sf ― ― 300 ns t of 20 + ― 250 ns SCL、SDA 入力立ち上がり 測定条件 備考 図 26.28 時間 SCL、SDA 入力立ち下がり 時間 SCL、SDA 出力立ち下がり 時間 0.1Cb SCL、SDA 入力 t SP ― ― 1 t cyc SDA 入力バスフリー時間 t BUF 5 ― ― t cyc 開始条件入力ホールド時間 t STAH 3 ― ― t cyc 再送開始条件入力 t STAS 3 ― ― t cyc t STOS 3 ― ― t cyc データ入力セットアップ時間 t SDAS 0.5 ― ― t cyc データ入力ホールド時間 t SDAH 0 ― ― ns SCL、SDA の容量性負荷 Cb ― ― 400 pF スパイクパルス除去時間 セットアップ時間 停止条件入力 セットアップ時間 【注】 2 * 1 I C モジュールで使用するクロックの選択により、17. 5tc yc とすることが可能です。詳細 は「16.4 844 使用上の注意」を参照してください。 26. 26.3.4 電気的特性 A/D 変換特性 A/D 変換特性を表 26.26、表 26.27 に示します。 表 26.26 A/D 変換特性(AN7〜AN0 入力:134/266 ステート変換) ―暫定― 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V 〜3.6V、AVCC =2.7V 〜3.6V、AVref=2.7V 〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ max min typ 10 max min 10 typ 単 max ビット 10 変換時間* 3 ― ― 13.4 ― ― 8.4 ― ― 6.7 アナログ入力容量 ― ― 20 ― ― 20 ― ― 20 許容信号源 ― ― 5 ― ― 10* 1 ― ― 5* 2 インピーダンス 位 10* μs pF 1 kΩ 5* 2 非直線性誤差 ― ― ±7.0 ― ― ±3.0 ― ― ±3.0 LSB オフセット誤差 ― ― ±7.5 ― ― ±3.5 ― ― ±3.5 LSB フルスケール誤差 ― ― ±7.5 ― ― ±3.5 ― ― ±3.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±8.0 ― ― ±4.0 ― ― ±4.0 LSB *1 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) のとき 【注】 *2 変換時間<11.17 μ s(CKS=1 でφ>12MHz) のとき *3 シングルモードで最大動作周波数のとき 845 26. 電気的特性 表 26.27 A/D 変換特性(CIN15〜CIN0 入力:134/266 ステート変換)―暫定― 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC=3 .0V 〜3 .6V *4、A V CC=3 .0V 〜3 .6V *4、A V ref=3 .0V 〜A V CC*4、 V CCB =3 .0V 〜5 .5V *4、V SS=A V SS=0 V 、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ max min typ 10 max min 10 typ 単 max ビット 10 変換時間* 3 ― ― 13.4 ― ― 8.4 ― ― 6.7 アナログ入力容量 ― ― 20 ― ― 20 ― ― 20 許容信号源 ― ― 5 ― ― 10* 1 ― ― 5* 2 インピーダンス 位 10* μs pF 1 kΩ 5* 2 非直線性誤差 ― ― ±11.0 ― ― ±5.0 ― ― ±5.0 LSB オフセット誤差 ― ― ±11.5 ― ― ±5.5 ― ― ±5.5 LSB フルスケール誤差 ― ― ±11.5 ― ― ±5.5 ― ― ±5.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±12.0 ― ― ±6.0 ― ― ±6.0 LSB *1 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) のとき 【注】 *2 変換時間<11.17 μ s(CKS=1 でφ>12MHz) のとき *3 シングルモードで最大動作周波数のとき *4 CIN を使用する場合は、VCC=3.0V〜3.6V、AVCC=3.0V〜3.6V、AVref=3.0V〜3.6V、 VCCB=3.0V〜5.5V の範囲としてください。 846 26. 26.3.5 電気的特性 D/A 変換特性 D/A 変換特性を表 26.28 に示します。 表 26.28 D/A 変換特性 ―暫定― 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V 〜3.6V、AVCC =2.7V 〜3.6V、AVref=2.7V 〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ max min 8 変換時間 負荷容量 20pF ― 絶対精度 負荷抵抗 2M Ω ― 負荷抵抗 4M Ω ― ― max min 8 10 ±2.0 ±3.0 ― typ ±2.0 ― ― ― ― 10 ±1.0 ― ― ― ― ビット 10 ±1.0 ±1.5 ― 位 max 8 ±1.0 ±1.5 ― typ 単 μs LSB ±1.0 847 26. 電気的特性 26.3.6 フラッシュメモリ特性 表 26.29 にフラッシュメモリ特性を示します。 表 26.29 フラッシュメモリ特性(書き込み/消去時の動作範囲) 5V 版条件:V CC =4.0V〜5.5V、V SS=0V、 ―暫定― Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 3V 版条件:V CC =3.0V〜3.6V、V SS=0V、Ta=-20〜+75℃ 項目 1 2 書き込み時間* * * 4 記号 min. typ. max. 単位 tP ― 10 200 ms/ 測定条件 128 バイト 1 3 消去時間* * * 6 tE ― 100 NWEC ― ― 100 回 x 1 ― ― μs y 50 ― ― μs z1 28 30 32 μs 1≦n≦6 z2 198 200 202 μs 7≦n≦1000 z3 8 10 12 μs 追加書き込み α 5 ― ― μs β 5 ― ― μs PV-bit セット後のウェイト時間* 1 γ 4 ― ― μs ダミーライト後のウェイト時間* 1 ε 2 ― ― μs PV-bit クリア後のウェイト時間* 1 η 2 ― ― μs θ 100 ― ― μs N ― ― 1000 回 x 1 ― ― μs y 100 ― ― μs z 10 ― 100 ms α 10 ― ― μs β 10 ― ― μs γ 20 ― ― μs ε 2 ― ― μs η 4 ― ― μs θ 100 ― ― μs N ― ― 120 回 書き替え回数 書き込み時 SWE-bit セット後のウェイト時間* PSU-bit セット後のウェイト時間* 1 P-bit セット後のウェイト時間* * P-bit クリア後のウェイト時間* 1 1 4 1 PSU-bit クリア後のウェイト時間* 1 SWE-bit クリア後のウェイト時間* 1 最大書き込み回数* 1* 4* 5 消去時 SWE-bit セット後のウェイト時間* ESU-bit セット後のウェイト時間* 1 E-bit セット後のウェイト時間* * 1 1 6 E-bit クリア後のウェイト時間* 1 ESU-bit クリア後のウェイト時間* EV-bit セット後のウェイト時間* 1 1 H'FFダミーライト後のウェイト時間* EV-bit クリア後のウェイト時間* 1 SWE-bit クリア後のウェイト時間* 1 6 最大消去回数* * * 【注】 7 1 1 1200 ms/ブロック *1 各時間の設定は、書き込み/消去のアルゴリズムに従い行ってください。 *2 128 バイト単位の書き込み時間(フラッシュメモリコントロールレジスタ(FLMCR1)の P-bit をセット しているトータル期間を示します。プログラムベリファイ時間は含まれません。) 848 26. 電気的特性 *3 1 ブロックを消去する時間(フラッシュメモリコントロールレジスタ(FLMCR1)の E-bit をセットしてい るトータル期間を示します。イレースベリファイ時間は含まれません。) *4 書き込み時間の最大値(tP(max)) tP(max)=(P-bit セット後のウェイト時間(z1)+(z3))×6 + P-bit セット後のウェイト時間(z2)×((N)- 6) *5 最大書き込み回数(N)は、実際の(z1、z2、z3)の設定値に合わせ、書き込み時間の最大値(tP(max)) 以下となるよう設定してください。また、P-bit セット後のウェイト時間(z1、z2、z3)は、下記のよう に書き込み回数(n)の値によって切り替えてください。 書き込み回数 n 1≦n≦6 z1=30 μ s、z3=10 μ s 7≦n≦1000 z2=200 μ s *6 消去時間の最大値(tE(max)) tE(max)=E-bit セット後のウェイト時間(z)×最大消去回数(N) *7 最大消去回数(N)は、実際の(z)の設定値に合わせ、消去時間の最大値(tE(max))以下となるよう設 定してください。 849 26. 電気的特性 26.3.7 使用上の注意 (1)F -ZTAT 版とマスク R OM 版は、本マニュアルに記載の電気的特性を満足してい ますが、製造プロセスの相違、内蔵 R OM の相違、レイアウトパターンの相違などに より、電気的特性の実力値や動作マージン、ノイズマージンなどは異なる場合があり ます。 F-ZTAT 版を使用してシステムの評価試験を行う場合には、マスク ROM 版への切り替 え時にマスク ROM 版についても同等の評価試験を行ってください。 (2)内部降圧品 H8S/2148、H8S/2147、H8S/2144A の F-ZTAT A マスク品(HD64F2148A、HD64F2147A、 HD64F 2144A) および H8S /2148、H8S /2147 、H8S /2144 、H8/2143 の マスク R OM 品 ( HD6432148S 、 HD6432148S W 、 HD6432147S 、 HD6443147S W 、 HD6432144S 、 HD6432143S)は、マイコン内部の電源電圧を自動的に最適なレベルに電圧降下するた めの内部降圧回路を内蔵しています。 この内部降下圧端子(VCL 端子)とVSS端子間には、内部電圧安定用のコンデンサ(0.47 μ F を 1 個または 2 個並列)を接続する必要があります。 外付けコンデンサ接続方法は図 26.3 を参照してください。 電源(VCC)電源が 3. 6V を超える 5V 品および 4V 品の場合は、内部降圧製品の VC L 端子には、VCC 電源は接続しないでください。(VCC1 端子には従来どおり、VCC 電源 を接続してください。) また、電源(VCC)電源が 3.6V 以下の 3V 品の場合は、VCL 端子には、VCC1 端子とと もにシステムの電源に接続してください。 なお、内 部降圧非対応の F -ZTAT 版から内部降圧対 応のマスク R OM 版あ るいは F ZTAT A マスク 品に切り 替えを 行う場合 には、VC L 端子は 、内部降 圧非対応 品の VC C 2 端子と同じピン配置になります。このため、基板パターンを設計する場合には 切り替え前後の回路の違いを考慮する必要がありますので、ご注意願います。 850 26. 電気的特性 26.4 H8S/2147N F-ZTAT の電気的特性 26.4.1 絶対最大定格 絶対最大定格を表 26.30 に示します。 表 26.30 絶対最大定格 項 目 電源電圧* 1 入出力バッファ用電源電圧 記号 定格値 単位 VCC - 0.3〜+7.0 V VCCB - 0.3〜+7.0 V (ポート A 用電源) 入力電圧(ポート 6、7、A 以外) Vin - 0.3〜VCC + 0.3 V 入力電圧(ポート 6 で Vin - 0.3〜VCC + 0.3 V Vin - 0.3〜VCCB + 0.3 V Vin - 0.3〜VCC + 0.3 と AVCC + 0.3 のいずれか V CIN 入力非選択時) 入力電圧(ポート A で CIN 入力非選択時) 入力電圧(ポート 6 で、 CIN 入力選択時) 入力電圧(ポート A で、 低い電圧 Vin CIN 入力選択時) - 0.3〜VCCB + 0.3 と AVCC + 0.3 のいずれ V か低い電圧 入力電圧(ポート 7) Vin - 0.3〜AVCC + 0.3 V リファレンス電源電圧 AVref - 0.3〜AVCC + 0.3 V アナログ電源電圧 AVCC - 0.3〜+7.0 V アナログ入力電圧 VAN - 0.3〜AVCC + 0.3 V 動作温度 Topr -20〜+75 ℃ 動作温度 Topr 0〜+75 ℃ Tstg - 55〜+125 ℃ (FLASH メモリ書込み/消去時) 保存温度 【使用上の注意】 絶対最大定格を超えて LSI を使用した場合、LSI の永久破壊となることがあります。 *1 VCC1、VCC2 端子への印加電圧です。 851 電気的特性 26. 26.4.2 DC 特性 DC 特性を表 26.31 に示します。また、出力許容電流値、バス駆動特性をそれぞれ表 26.32、 表 26.33 に示します。 表 26.31 DC 特性(1) 条件:V CC =5.0V±10%、V CC B=5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V、Ta=-20〜+75℃*9 項 シュミット トリガ入力電圧 目 記号 (1) P67〜P60 2 6 (KWUL=00) * * 、 7 min typ max 単位 − T 1.0 ― ― V + T ― ― VCC×0.7 V V 8 KIN15〜KIN8* * 、 測定条件 VCCB×0.7 IRQ2〜IRQ0* 3、 VT+ – VT− 0.4 ― ― VT− VCC×0.3 ― ― IRQ5〜IRQ3 シュミット P67〜P60 (KWUL=01) + T トリガ入力電圧 ― V + T (レベル – T V –V VT− 切換時)* 6 P67〜P60 (KWUL=10) + T – T V –V − T P67〜P60 (KWUL=11) V VT+ + T V –V 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) VIH EXTAL PA7〜PA0* 7 ― VCC×0.4 ― ― ― VCC×0.8 VCC×0.03 ― ― VCC×0.45 ― ― ― – T ― VCC×0.7 VCC×0.05 ― ― V + T 0.05 V ― VCC×0.9 ― ― VCC - 0.7 ― VCC + 0.3 VCC×0.7 ― VCC + 0.3 V VCCB×0.7 ― VCCB + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 - 0.3 ― 1.0 NMI、EXTAL ほか、 - 0.3 ― 0.8 VCC – 0.5 ― ― V I OH = - 200 μ A VIL V 上記(1)(3)以外の入力端子 出力 High レベル電圧 全出力端子 VOH 4 5 (P97、P52 を除く* )* * 8 VCCB – 0.5 P97、P52* 4 5 3.5 ― ― V I OH = - 1mA 2.5 ― ― V I OH = - 1mA ― ― 0.4 V I OL =1.6mA 出力 Low 全出力端子(RESO を除く) * レベル電圧 ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA 852 VOL 26. 【注】 電気的特性 *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 H8S/2147N では、P52/SCK0/SCL0、P97/SDA0 は NMOS プッシュプル出力です。 SCL0、SDA0(ICE=1)から High レベル出力するためにはプルアップ抵抗を外付けする必要があります。 H8S/2147N では、P52/SCK0、P97(ICE=0)の High レベルは NMOS で駆動されます。 *5 IICS=0、ICE=0 および KBIOE=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定め ます。 * 6 ポート 6 の印加電圧の上限は、CI N 入力非選択時は VC C+0. 3V、CI N 入力選択時は VC C+0. 3V と AVC C+0. 3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *7 ポート A の印加電圧の上限は、 CIN 入力非選択時は VCCB+0.3V、 CIN 入力選択時は VCCB+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *8 ポート A の特性は、VCCB 依存、その他の端子が出力モードの場合、VCC 依存です。 *9 フラッシュメモリへの書き込み/消去動作は、Ta=0〜+75℃の範囲としてください。 853 電気的特性 26. 表 26.31 DC 特性(2) 条件:V CC =5.0V±10%、V CC B=5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V、Ta=-20〜+75℃*5 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 ― ― 1.0 入力リーク電流 RES スリーステート ポート 1〜6 |I TSI| Vin=0.5〜AVCC - 0.5V μ A Vin=0.5〜VCC - 0.5V 4 リーク電流 測定条件 ポート 8、9、A* 、B Vin=0.5〜VCCB - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 50 ― 300 60 ― 500 15 ― 150 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 75 100 mA f=20MHz ― 60 85 mA f=20MHz ― 0.01 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA - Ip 4 MOS 電流 ポート A* 、B、 μ A Vin=0V ポート 6(P6PUE=0) ポート 6(P6PUE=1) RES 入力容量 (4) Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.5 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AIref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 * 2 消費電流値は、VI H min=VC C - 0. 5V、VC CB - 0. 5V、VI L max =0. 5V の条件下で、すべての出力端子を無負 荷状態にして、さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.5V のとき、VI H min=VCC×0.9、VCCB×0.9、VI L max=0.3V とした場合の値です。 *4 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 *5 フラッシュメモリへの書き込み/消去動作は、Ta=0〜+75℃の範囲としてください。 854 26. 電気的特性 表 26.31 DC 特性(3) 条件:V CC =3.0V〜5.5V*9、V CC B=3.0V〜5.5V、AVCC *1=3.0V〜5.5V、 AVref=3.0V〜5.5V、V SS=AVSS*1=0V、Ta=-20〜+75℃*9 項 シュミット トリガ入力電圧 目 記号 VT− (1) P67〜P60 (KWUL=00) * 2* 6、 min typ max 単位 VCC×0.2 ― ― V 測定条件 VCCB×0.2 VT+ KIN15〜KIN8* 7* 8、 ― ― VCC×0.7 3 IRQ2〜IRQ0* 、 VCCB×0.7 + T IRQ5〜IRQ3 V − T -V VCC×0.05 ― ― ― ― VCCB×0.05 シュミット − T P67〜P60 (KWUL=01) + T トリガ入力電圧 時)* ― V + T (レベル切換 6 VCC×0.3 V – T V –V − T P67〜P60 (KWUL=10) V + T – T V –V − T P67〜P60 (KWUL=11) V + T – T V –V 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) ― ― VCC ×0.4 ― ― ― VCC×0.8 VCC×0.03 ― ― VCC×0.45 ― ― ― V + T ― VCC×0.7 VCC×0.05 ― V + T 0.05 ― VCC×0.9 ― ― VCC×0.9 ― VCC + 0.3 VCC×0.7 ― VCC + 0.3 VCCB×0.7 ― VCCB + 0.3 ポート 7 VCC×0.7 ― AVCC + 0.3 上記(1)(2)以外の入力端子 VCC×0.7 ― VCC + 0.3 - 0.3 ― VCC×0.1 - 0.3 ― VCCB×0.2 VIH EXTAL PA7〜PA0* 7 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 VIL 0.8 NMI、EXTAL ほか、 - 0.3 ― VCC×0.2 上記(1)(3)以外の入力端子 出力 High 全出力端子 レベル電圧 (P97、P52 を除く* 4)* 5* 8 0.8 VOH VCC - 0.5 V V V VCCB = 3.0V〜4.0V VCCB = 4.0V〜5.5V VCC = 3.0V〜4.0V VCC = 4.0V〜5.5V ― ― V I OH = - 200 μ A ― ― V I OH = - 1mA VCCB - 0.5 VCC -1.0 VCCB - 1.0 (VCC = 3.0V〜4.0V、 VCCB = 3.0V〜4.0V) P97、P52* 4 出力 Low 全出力端子(RESO を除く) * レベル電圧 ポート 1、2、3 5 VOL 1.0 ― ― V I OH = - 1mA ― ― 0.4 V I OL =1.6mA ― ― 1.0 V I OL =5mA(VCC<4.0V) I OL =10mA (4.0V≦VCC≦5.5V) RESO ― ― 0.4 V I OL =1.6mA 855 26. 電気的特性 【注】 *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 H8S/2147N では、P52/SCK0/SCL0、P97/SDA0 は NMOS プッシュプル出力です。 SCL0、SDA0(ICE=1)から High レベル出力するためにはプルアップ抵抗を外付けする必要があります。 H8S/2147N では、P52/SCK0、P97(ICE=0)の High レベルは NMOS で駆動されます。 *5 IICS=0、ICE=0 および KBIOE=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定め ます。 * 6 ポート 6 の印加電圧の上限は、CI N 入力非選択時は VC C+0. 3V、CI N 入力選択時は VC C+0. 3V と AVC C+0. 3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *7 ポート A の印加電圧の上限は、 CIN 入力非選択時は VCCB+0.3V、 CIN 入力選択時は VCCB+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *8 ポート A の特性は、VCCB 依存、その他の端子の特性は VCC 依存です。 *9 フラッシュメモリへの書き込み/消去動作は、VCC=3.0V〜3.6V、Ta=0〜+75℃の範囲としてください。 856 26. 電気的特性 表 26.31 DC 特性(4) 条件:V CC =3.0V〜5.5V*5、V CC B=3.0V〜5.5V、AVCC *1=3.0V〜5.5V、 AVref=3.0V〜5.5V、V SS=AVSS*1=0V、Ta=-20〜+75℃*5 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 ― ― 1.0 入力リーク電流 RES スリーステート ポート 1〜6 |I TSI| Vin=0.5〜AVCC - 0.5V μ A Vin=0.5〜VCC - 0.5V、 4 リーク電流 測定条件 ポート 8、9、A* 、B Vin=0.5〜VCCB - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 - Ip 4 MOS 電流 ポート A* 、B、 10 ― 150 30 ― 250 μ A Vin=0V Vcc=3.0V〜3.6V、 ポート 6(P6PUE=0) VccB=3.0V〜3.6V ポート 6(P6PUE=1) 3 ― 70 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 45 60 mA f=10MHz ― 35 50 mA f=10MHz ― 0.01 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA RES 入力容量 (4) Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 3.0 ― 5.5 動作時 2.0 ― 5.5 待機時、非使用時 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AI ref AVCC VRAM μ A AVref=2.0V〜AVCC V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 * 2 消費電流値は、VI H min=VC C - 0. 5V、VC CB - 0. 5V、VI L max =0. 5V の条件下で、すべての出力端子を無負 荷状態にして、さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<3.0V のとき、VI H min=VCC×0.9、VCCB×0.9、VI L max=0.3V とした場合の値です。 *4 ポート A の特性は VCCB 依存、その他の端子の特性は VCC 依存です。 *5 フラッシュメモリへの書き込み/消去は VCC=3.0V〜3.6V、Ta=0〜+75℃の範囲としてください。 857 26. 電気的特性 表 26.32 出力許容電流値 条件:V CC =4.5V〜5.5V、 V CC B=4.5V〜5.5V、V SS= 0V、Ta= -20〜+75℃ 項 目 記号 min typ max 単位 I OL ― ― 20 mA ポート 1、2、3 ― ― 10 RESO ― ― 3 上記以外の出力端子 ― ― 2 ― ― 80 ― ― 120 - I OH ― ― 2 mA Σ - I OH ― ― 40 mA 出力 Low レベル許容電流 SCL1〜SCL0、SDA1〜 (1 端子あたり) SDA0、PS2AC〜PS2CC、 PS2AD〜PS2CD、 PA7〜PA4(バス駆動機能選択) 出力 Low レベル許容電流 ポート 1、2、3 の総和 (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 Σ I OL mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 条件:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS= 0V、Ta= -20〜+75℃ 項 目 記号 min typ max 単位 I OL ― ― 10 mA ポート 1、2、3 ― ― 2 RESO ― ― 1 上記以外の出力端子 ― ― 1 ― ― 40 ― ― 60 - I OH ― ― 2 mA Σ - I OH ― ― 30 mA 出力 Low レベル許容電流 SCL1〜SCL0、SDA1〜SDA0、 (1 端子あたり) PS2AC〜PS2CC、 PS2AD〜PS2CD、 PA7〜PA4(バス駆動機能選択) 出力 Low レベル許容電流 ポート 1、2、3 の総和 (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 Σ I OL mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 【注】 1. LSI の信頼性を確保するため、出力電流値は表 26. 32 の値を超えないようにしてくださ い。 2. ダーリントントランジスタや、LED を直接駆動する場合には、図 26. 1、図 26. 2 に示す ように、出力に必ず電流制限抵抗を挿入してください。 858 26. 電気的特性 表 26.33 バス駆動特性 条件:V CC =3.0V〜5.5V、V SS=0V 対象端子:SCL1〜SCL0、SDA1〜SDA0(バス駆動機能選択) 項 目 記号 min typ max 単位 シュミット VT− VCC×0.3 ― ― V トリガ入力電圧 VT+ ― ― VCC×0.7 VCC =3.0V〜5.5V VT+ - VT− VCC×0.05 ― ― VCC =3.0V〜5.5V VI H VCC×0.7 ― VCC + 0.5 V VCC =3.0V〜5.5V VIL - 0.5 ― VCC×0.3 V VCC =3.0V〜5.5V VOL ― ― 0.8 V I OL =16mA、VCC=4.5V〜5.5V ― ― 0.5 I OL =8mA ― ― 0.4 I OL =3mA Cin ― ― 20 |I TSI| ― ― 1.0 t Of 20 + 0.1Cb ― 250 入力 High 測定条件 VCC =3.0V〜5.5V レベル電圧 入力 Low レベル電圧 出力 Low レベル電圧 入力容量 スリーステート pF Vin=0V、f=1MHz、Ta=25℃ μ A Vin=0.5〜VCC - 0.5V リーク電流 (オフ状態) SCL、SDA 出力 ns VCC =3.0V〜5.5V 立ち下がり時間 条件:V CC =3.0V〜5.5V、 V CC B=3.0V〜5.5V、V SS=0V 対象端子: PS2AC、PS2AD、PS2BC、PS2BD、PS2CC、PS2CD PA7〜PA4(バス駆動機能選択) 項 目 出力 Low レベル電圧 記号 min typ max 単位 測定条件 VOL ― ― 0.8 V ― ― 0.5 I OL =8mA ― ― 0.4 I OL =3mA I OL =16mA、VCCB=4.5V〜5.5V 859 26. 電気的特性 26.4.3 AC 特性 クロックタイミング、制御信号タイミング,バスタイミング,および内蔵周辺機能タイ ミングを以下に示します。 AC 特性測定条件は図 26.4 を参照してください。 (1)クロックタイミング 表 26.34 にクロックタイミングを示します。ここで規定するクロックタイミングは、ク ロック(φ)出力と、クロック発振器(水晶)と外部クロック入力(EXTA L 端子)の発 振安定時間です。外部クロック入力(EXTA L 端子および EXC L 端子)タイミングの詳細 については、「第 24 章 クロック発振器」を参照してください。 表 26.34 クロックタイミング 条件 A: V CC =5.0V±10%、 V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、 V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 860 目 記号 条件 B 条件 A 10MHz 20MHz min max min max 単位 測定条件 クロックサイクル時間 t cyc 100 500 50 500 ns 図 26.5 クロックハイレベルパルス幅 t CH 30 ― 17 ― ns 図 26.5 クロックローレベルパルス幅 t CL 30 ― 17 ― ns クロック立ち上がり時間 t Cr ― 20 ― 8 ns クロック立ち下がり時間 t Cf ― 20 ― 8 ns リセット発振安定時間(水晶) t OSC1 20 ― 10 ― ms 図 26.6 ソフトウェアスタンバイ発振安定時間 (水晶) t OSC2 8 ― 8 ― ms 図 26.7 外部クロック出力安定遅延時間 t DEXT 500 ― 500 ― μs 26. 電気的特性 (2)制御信号タイミング 表 2 6.35 に制御信号タイミングを示します。サブクロック(φ=32. 768kHz)で動作可 能な外部割込みは、NMI、IRQ0〜2、6、7 のみです。 表 26.35 制御信号タイミング 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、 φ=32.768kHz、2MHz〜最大動作周波数、Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、 φ=32.768kHz、2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 B 条件 A 10MHz 20MHz min max min max 単位 測定条件 図 26.8 RES セットアップ時間 t RESS 300 ― 200 ― ns RES パルス幅 t RESW 20 ― 20 ― t cyc NMI セットアップ時間(NMI) t NMIS 250 ― 150 ― ns NMI ホールド時間 t NMIH 10 ― 10 ― ns t NMIW 200 ― 200 ― ns t IRQS 250 ― 150 ― ns t IRQH 10 ― 10 ― ns t IRQW 200 ― 200 ― ns (NMI) NMI パルス幅(NMI) 図 26.9 (ソフトウェアスタンバイモード からの復帰時) IRQ セットアップ時間 (IRQ7 〜IRQ0) IRQ ホールド時間 (IRQ7 〜IRQ0) IRQ パルス幅 (IRQ7、IRQ6、IRQ2〜IRQ0) (ソフトウェアスタンバイモード からの復帰時) 861 26. 電気的特性 (3)バスタイミング 表 2 6.36 にバスタイミングを示します。サブクロック(φ=32. 768kHz)動作では、外 部拡張モードの動作は保証されません。 表 26.36 バスタイミング(1)(ノーマルモード使用時) 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 B 条件 A 10MHz 20MHz min max min max 単位 測定条件 アドレス遅延時間 t AD ― 40 ― 20 ns 図 26.10 アドレスセットアップ時間 t AS 0.5×tcyc - 30 ― 0.5×tcyc - 15 ― ns 〜 アドレスホールド時間 t AH 0.5×tcyc - 20 ― 0.5×tcyc - 10 ― ns 図 26.14 CS 遅延時間(IOS) t CSD ― 40 ― 20 ns AS 遅延時間 t ASD ― 60 ― 30 ns RD 遅延時間 1 t RSD1 ― 60 ― 30 ns RD 遅延時間 2 t RSD2 ― 60 ― 30 ns リードデータセットアップ時間 t RDS 35 ― 15 ― ns リードデータホールド時間 t RDH 0 ― 0 ― ns リードデータアクセス時間 1 t ACC1 ― 1.0×tcyc - 60 ― 1.0×tcyc - 30 ns リードデータアクセス時間 2 t ACC2 ― 1.5×tcyc - 50 ― 1.5×tcyc - 25 ns リードデータアクセス時間 3 t ACC3 ― 2.0×tcyc - 60 ― 2.0×tcyc - 30 ns リードデータアクセス時間 4 t ACC4 ― 2.5×tcyc - 50 ― 2.5×tcyc - 25 ns リードデータアクセス時間 5 t ACC5 ― 3.0×tcyc - 60 ― 3.0×tcyc - 30 ns WR 遅延時間 1 t WRD1 ― 60 ― 30 ns WR 遅延時間 2 t WRD2 ― 60 ― 30 ns WR パルス幅 1 t WSW1 1.0×tcyc - 40 ― 1.0×tcyc - 20 ― ns WR パルス幅 2 t WSW2 1.5×tcyc - 40 ― 1.5×tcyc - 20 ― ns ライトデータ遅延時間 t WDD ― 60 ― 30 ns ライトデータセットアップ時間 t WDS 0 ― 0 ― ns ライトデータホールド時間 t WDH 20 ― 10 ― ns WAIT セットアップ時間 t WTS 60 ― 30 ― ns WAIT ホールド時間 t WTH 10 ― 5 ― ns 862 26. 電気的特性 表 26.36 バスタイミング(2)(アドバンストモード使用時) 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 B 条件 A 10MHz 20MHz min max min max 単位 測定条件 アドレス遅延時間 t AD ― 60 ― 30 ns 図 26.10 アドレスセットアップ時間 t AS 0.5×tcyc - 50 ― 0.5×tcyc - 25 ― ns 〜 アドレスホールド時間 t AH 0.5×tcyc - 20 ― 0.5×tcyc - 10 ― ns 図 26.14 CS 遅延時間(IOS) t CSD ― 60 ― 30 ns AS 遅延時間 t ASD ― 60 ― 30 ns RD 遅延時間 1 t RSD1 ― 60 ― 30 ns RD 遅延時間 2 t RSD2 ― 60 ― 30 ns リードデータセットアップ時間 t RDS 35 ― 15 ― ns リードデータホールド時間 t RDH 0 ― 0 ― ns リードデータアクセス時間 1 t ACC1 ― 1.0×tcyc - 80 ― 1.0×tcyc - 40 ns リードデータアクセス時間 2 t ACC2 ― 1.5×tcyc - 50 ― 1.5×tcyc - 25 ns リードデータアクセス時間 3 t ACC3 ― 2.0×tcyc - 80 ― 2.0×tcyc - 40 ns リードデータアクセス時間 4 t ACC4 ― 2.5×tcyc - 50 ― 2.5×tcyc - 25 ns リードデータアクセス時間 5 t ACC5 ― 3.0×tcyc - 80 ― 3.0×tcyc - 40 ns WR 遅延時間 1 t WRD1 ― 60 ― 30 ns WR 遅延時間 2 t WRD2 ― 60 ― 30 ns WR パルス幅 1 t WSW1 1.0×tcyc - 40 ― 1.0×tcyc - 20 ― ns WR パルス幅 2 t WSW2 1.5×tcyc - 40 ― 1.5×tcyc - 20 ― ns ライトデータ遅延時間 t WDD ― 60 ― 30 ns ライトデータセットアップ時間 t WDS 0 ― 0 ― ns ライトデータホールド時間 t WDH 20 ― 10 ― ns WAIT セットアップ時間 t WTS 60 ― 30 ― ns WAIT ホールド時間 t WTH 10 ― 5 ― ns 863 26. 電気的特性 (4)内蔵周辺モジュールタイミング 表 2 6.37 〜表 2 6.39 に内蔵周辺モジュールタイミングを示します。サブクロック動作時 (φ=32. 768kHz)に動作可 能な内蔵周辺モジュールは、I/O ポート 、外部割込み(NMI、 IRQ0〜2、6、7)、ウォッチドッグタイマ、8 ビットタイマ(チャネル 0、1)のみです。 表 26.37 内蔵周辺モジュールタイミング(1) 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、 φ=32.768kHz*1、2MHz〜最大動作周波数、Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、 φ=32.768kHz*1、2MHz〜最大動作周波数、Ta= -20〜+75℃ 条件 B 項 目 記号 条件 A 10MHz 20MHz min max min max I/O 出力データ遅延時間 t PWD ― 100 ― 50 ポート 入力データセットアップ時間 t PRS 50 ― 30 ― 入力データホールド時間 t PRH 50 ― 30 ― タイマ出力遅延時間 t FTOD ― 100 ― 50 タイマ入力セットアップ時間 t FTIS 50 ― 30 ― タイマクロック入力セットアップ時間 t FTCS 50 ― 30 ― タイマクロック 単エッジ指定 t FTCWH 1.5 ― 1.5 ― パルス幅 両エッジ指定 t FTCWL 2.5 ― 2.5 ― タイマ出力遅延時間 t TMOD ― 100 ― 50 タイマリセット入力セットアップ時間 t TMRS 50 ― 30 ― FRT TMR タイマクロック入力セットアップ時間 単位 測定条件 ns 図 26.15 ns 図 26.16 図 26.17 t cyc ns 図 26.18 図 26.20 t TMCS 50 ― 30 ― タイマクロック 単エッジ指定 t TMCWH 1.5 ― 1.5 ― パルス幅 両エッジ指定 t TMCWL 2.5 ― 2.5 ― t PWOD ― 100 ― 50 ns 図 26.21 t Scyc 4 ― 4 ― t cyc 図 26.22 6 ― 6 ― PWM、 パルス出力遅延時間 図 26.19 t cyc PWMX SCI 入力クロック 調歩同期 サイクル クロック同期 入力クロックパルス幅 t SCKW 0.4 0.6 0.4 0.6 t Scyc 入力クロック立ち上がり時間 t SCKr ― 1.5 ― 1.5 t cyc 入力クロック立ち下がり時間 t SCKf ― 1.5 ― 1.5 送信データ遅延時間(クロック同期) t TXD ― 100 ― 50 受信データセットアップ時間 t RXS 100 ― 50 ― t RXH 100 ― 50 ― トリガ入力セットアップ時間 t TRGS 50 ― 30 RESO 出力遅延時間 t RESD ― 200 RESO 出力パルス幅 t RESOW 132 ― ns 図 26.23 ― ns 図 26.24 ― 100 ns 図 26.25 132 ― t cyc (クロック同期) 受信データホールド時間 (クロック同期) A/D 変換器 WDT 【注】 864 *1 サブクロック動作時に使用可能な内蔵周辺モジュールのみ 26. 電気的特性 表 26.37 内蔵周辺モジュールタイミング(2) 条件 A: V CC =5.0V±10%、V CC B=5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 B 条件 A 10MHz 20MHz 単位 測定条件 図 26.26 min max min max t HAR 10 ― 10 ― ns リード CS/HA0 ホールド時間 t HRA 10 ― 10 ― ns サイク IOR パルス幅 t HRPW 220 ― 120 ― ns ル HDB 遅延時間 t HRD ― 200 ― 100 ns HDB ホールド時間 t HRF 0 40 0 25 ns HIRQ 遅延時間 t HIRQ ― 200 ― 120 ns CS/HA0 セットアップ時間 t HAW 10 ― 10 ― ns ライト CS/HA0 ホールド時間 t HWA 10 ― 10 ― ns サイク IOW パルス幅 t HWPW 100 ― 60 ― ns t HDW 50 ― 30 ― ns 85 ― 45 ― ns HIF HIF ル CS/HA0 セットアップ時間 HDB セット 高速 GATE A20を使用しない アップ時間 高速 GATE A20を使用する HDB ホールド時間 t HWD 25 ― 15 ― ns GA20 遅延時間 t HGA ― 180 ― 90 ns 865 26. 電気的特性 表 26.38 キーボードバッファコントローラタイミング 条件:V CC =3.0V〜5.5V、V CC B=3.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 規格値 単位 測定条件 min typ max KCLK、KD 出力立ち下がり時間 t KBF 20 + 0.1Cb ― 250 ns KCLK、KD 入力データ t KBIH 150 ― ― ns t KBIS 150 ― ― ns KCLK、KD 出力遅延時間 t KBOD ― ― 450 ns KCLK、KD の容量性負荷 Cb ― ― 400 pF ホールド時間 KCLK、KD 入力データ セットアップ時間 866 備考 図 26.27 26. 電気的特性 表 26.39 I 2 C バスタイミング 条件:V CC =3.0V〜5.5V、V SS=0V、φ=5MHz〜最大動作周波数 項 目 記号 規格値 単位 min typ max SCL 入力サイクル時間 t SCL 12 ― ― t cyc SCL 入力 High パルス幅 t SCLH 3 ― ― t cyc SCL 入力 Low パルス幅 t SCLL 5 ― ― t cyc t Sr ― ― 7.5* 1 t cyc t Sf ― ― 300 ns t SP ― ― 1 t cyc SDA 入力バスフリー時間 t BUF 5 ― ― t cyc 開始条件入力ホールド時間 t STAH 3 ― ― t cyc 再送開始条件入力 t STAS 3 ― ― t cyc t STOS 3 ― ― t cyc データ入力セットアップ時間 t SDAS 0.5 ― ― t cyc データ入力ホールド時間 t SDAH 0 ― ― ns SCL、SDA の容量性負荷 Cb ― ― 400 pF SCL、SDA 入力立ち上がり 測定条件 備考 図 26.28 時間 SCL、SDA 入力立ち下がり 時間 SCL、SDA 入力 スパイクパルス除去時間 セットアップ時間 停止条件入力 セットアップ時間 【注】 * 1 I 2C モジュールで使用するクロックの選択により、17. 5tc yc とすることが可能です。詳細 は「16.4 使用上の注意」を参照してください。 867 26. 電気的特性 26.4.4 A/D 変換特性 A/D 変換特性を表 26.40、表 26.41 に示します。 表 26.40 A/D 変換特性(AN7〜AN0 入力:134/266 ステート変換) 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 B 条件 A 10MHz 20MHz typ max min 10 typ ビット 10 ― ― 13.4 ― ― 6.7 アナログ入力容量 ― ― 20 ― ― 20 ― ― 10* 1 ― ― 5* 2 インピーダンス 位 max 変換時間* 5 許容信号源 10* μs pF 3 kΩ 5* 4 非直線性誤差 ― ― ±7.0 ― ― ±3.0 LSB オフセット誤差 ― ― ±7.5 ― ― ±3.5 LSB フルスケール誤差 ― ― ±7.5 ― ― ±3.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±8.0 ― ― ±4.0 LSB 【注】 *1 4.0V≦AVCC≦5.5V のとき *2 3.0V≦AVCC<4.0V のとき *3 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) *4 変換時間<11.17 μ s(CKS=1 でφ>12MHz) *5 シングルモードで最大動作周波数のとき 868 単 のとき のとき 26. 電気的特性 表 26.41 A/D 変換特性(CIN15〜CIN0 入力:134/266 ステート変換) 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 B 条件 A 10MHz 20MHz typ max min 10 変換時間* 5 typ 単 位 max ビット 10 ― ― 13.4 ― ― 6.7 μs アナログ入力容量 ― ― 20 ― ― 20 pF 許容信号源 ― ― 10* 1 ― ― 10* 3 kΩ 5* 2 インピーダンス 5* 4 非直線性誤差 ― ― ±11.0 ― ― ±5.0 LSB オフセット誤差 ― ― ±11.5 ― ― ±5.5 LSB フルスケール誤差 ― ― ±11.5 ― ― ±5.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±12.0 ― ― ±6.0 LSB 【注】 *1 4.0V≦AVCC≦5.5V のとき *2 3.0V≦AVCC<4.0V のとき *3 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) *4 変換時間<11.17 μ s(CKS=1 でφ>12MHz) のとき のとき *5 シングルモードで最大動作周波数のとき 869 26. 電気的特性 26.4.5 D/A 変換特性 D/A 変換特性を表 26.42 に示します。 表 26.42 D/A 変換特性 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 条件 B: V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 870 条件 B 条件 A 10MHz 20MHz typ max min 8 typ 単 位 max ビット 8 変換時間 負荷容量 20pF ― ― 10 ― ― 10 μs 絶対精度 負荷抵抗 2M Ω ― ±2.0 ±3.0 ― ±1.0 ±1.5 LSB 負荷抵抗 4M Ω ― ― ±2.0 ― ― ±1.0 26. 26.4.6 電気的特性 フラッシュメモリ特性 表 26.43 にフラッシュメモリ特性を示します。 表 26.43 フラッシュメモリ特性(書き込み/消去時の動作範囲) 5V 版条件: V CC =5.0V±10%、V SS=0V、Ta=0〜+75℃ 3V 版条件: V CC =3.0V〜3.6V、V SS=0V、Ta=0〜+75℃ 項目 書き込み時間* 1* 2* 4 記号 min. typ. max. tP ― 10 200 単位 測定条件 ms/ 32 バイト 消去時間* 1* 3* 6 tE ― 100 NWEC ― ― 100 回 x 10 ― ― μs PSU-bit セット後のウェイト時間* 1 y 50 ― ― μs P-bit セット後のウェイト時間* 1* 4 z 150 ― 200 μs α 10 ― ― μs β 10 ― ― μs PV-bit セット後のウェイト時間* 1 γ 4 ― ― μs ダミーライト後のウェイト時間* 1 ε 2 ― ― μs PV-bit クリア後のウェイト時間* 1 η 4 ― ― μs N ― ― 1000 回 SWE-bit セット後のウェイト時間* 1 x 10 ― ― μs ESU-bit セット後のウェイト時間* 1 y 200 ― ― μs E-bit セット後のウェイト時間* 1* 6 z 5 ― 10 ms α 10 ― ― μs ESU-bit クリア後のウェイト時間* 1 β 10 ― ― μs EV-bit セット後のウェイト時間* 1 γ 20 ― ― μs ダミーライト後のウェイト時間* 1 ε 2 ― ― μs 1 η 5 ― ― μs N ― ― 120 回 書き替え回数 書き込み時 SWE-bit セット後のウェイト時間* 1 P-bit クリア後のウェイト時間* 1 PSU-bit クリア後のウェイト時間* 1 4 最大書き込み回数* * * 消去時 5 E-bit クリア後のウェイト時間* 1 EV-bit クリア後のウェイト時間* 最大消去回数* 1* 6* 7 【注】 1 1200 ms/ブロック z=200 μ s のとき z=10ms のとき *1 各時間の設定は、書き込み/消去のアルゴリズムに従い行ってください。 *2 32 バイト当たりの書き込み時間(フラッシュメモリコントロールレジスタ(FLMCR1) の P-bit をセットしているトータル期間を示します。プログラムベリファイ時間は含ま れません。) *3 1 ブロックを消去する時間(フラッシュメモリコントロールレジスタ(FLMCR1)の E-bit をセ ット して いる トータ ル期 間を 示し ます。 イレ ース ベリ ファイ 時間 は含 まれ ませ ん。) 871 26. 電気的特性 *4 書き込み時間の最大値(tP(max)) tP(max)=P-bit セット後のウェイト時間(z)×最大書き込み回数(N) * 5 P-bit セット後のウェイト時間(z )=200 μ s 時の回数です。書き込み回数は、実際の (z)の設定値に合わせ、書き込み時間の最大値(tP(max))以下となるよう設定して ください。 *6 消去時間の最大値(tE(max)) tE(max)=E-bit セット後のウェイト時間(z)×最大消去回数(N) *7 E-bit セット後のウェイト時間(z)=10ms 時の回数です。消去回数は、実際の(z)の 設定値に合わせ、消去時間の最大値(tE(max))以下となるよう設定してください。 872 26. 26.4.7 電気的特性 使用上の注意 (1)F -ZTAT 版とマスク R OM 版は、本マニュアルに記載の電気的特性を満足しています が、製造プロセスの相違、内蔵 ROM の相違、レイアウトパターンの相違などにより、 電気的特性の実力値や動作マージン、ノイズマージンなどは異なる場合があります。 F-ZTAT 版を使用してシステムの評価試験を行う場合には、マスク ROM 版への切り替 え時にマスク ROM 版についても同等の評価試験を行ってください。 (2)内部降圧品への切り替え H8S/2147N F-ZTAT は、内部降圧機能はサポートしていません。 内部降圧対応の F -ZTAT 版あるいは内部降圧対応のマスク R OM 版に切り替えを行う場 合には、VCC2 端子は、内部降圧品の VCL 端子と同じピン配置になります(図 26.3 参照)。 このため、基板パターンを設計する場合には切り替え前後の回路の違いを考慮する必要が ありますので、ご注意願います。 873 26. 電気的特性 26.5 H8S/2144 F-ZTAT 、H8S/2142 F-ZTAT、 H8S/2142 マスク ROM 品の電気的特性 26.5.1 絶対最大定格 絶対最大定格を表 26.44 に示します。 表 26.44 絶対最大定格 項 目 記号 定格値 単位 電源電圧* 1 VCC - 0.3〜+7.0 V 入力電圧(ポート 6、7、A 以外) Vin - 0.3〜VCC + 0.3 V 入力電圧(ポート 6、A で Vin - 0.3〜VCC + 0.3 V Vin - 0.3〜VCC + 0.3 と AVCC + 0.3 のいずれか V CIN 入力非選択時) 入力電圧(ポート 6、A で、 CIN 入力選択時) 低い電圧 入力電圧(ポート 7) Vin - 0.3〜AVCC + 0.3 V リファレンス電源電圧 AVref - 0.3〜AVCC + 0.3 V アナログ電源電圧 AVCC - 0.3〜+7.0 V アナログ入力電圧 VAN - 0.3〜AVCC + 0.3 V 動作温度 Topr 通常仕様品:-20〜+75 ℃ 広温度範囲仕様品:-40〜+85 動作温度 Topr (FLASH メモリ書込み/消去時) 保存温度 通常仕様品:0〜+75 ℃ 広温度範囲仕様品:0〜+85 Tstg - 55〜+125 ℃ 【使用上の注意】 絶対最大定格を超えて LSI を使用した場合、LSI の永久破壊となることがあります。 *1 VCC1、VCC2 端子への印加電圧です。 874 26. 電気的特性 DC 特性 26.5.2 DC 特性を表 26.45 に示します。また、出力許容電流値、バス駆動特性をそれぞれ表 26.46、 表 26.47 に示します。 表 26.45 DC 特性(1) 条件:V CC =5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、V SS=AVSS*1=0V Ta=-20〜+75℃*6(通常仕様品)、Ta=-40〜+85℃*6(広温度範囲仕様品) 項 シュミット 目 記号 min typ max 単位 VT− 1.0 ― ― V VT+ ― ― VCC×0.7 VT+ - VT− 0.4 ― VIH VCC - 0.7 ― VCC + 0.3 VCC×0.7 ― VCC + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 P67〜P60* 2* 5、 (1) トリガ入力電圧 KIN15〜KIN8* 5、 IRQ2〜IRQ0* 3、 測定条件 ― IRQ5〜IRQ3 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) EXTAL、PA7〜PA0* 5 V 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 - 0.3 ― 1.0 NMI、EXTAL ほか、 - 0.3 ― 0.8 VCC - 0.5 ― ― V I OH = - 200 μ A 3.5 ― ― V I OH = - 1mA ― ― 0.4 V I OL =1.6mA VIL V 上記(1)(3)以外の入力端子 出力 High 全出力端子* 4 VOH レベル電圧 出力 Low 全出力端子(RESO を除く) * 4 レベル電圧 ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA 【注】 VOL *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 IICS=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定めます。 *5 ポート 6、A の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、 CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *6 フラッシュメモリへの書き込み/消去動作は、Ta=0〜+75℃(通常仕様品)、Ta=0〜+85℃(広温度範 囲仕様品)の範囲としてください。 875 電気的特性 26. 表 26.45 DC 特性(2) 条件:V CC =5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V、 Ta=-20〜+75℃*4(通常仕様品)、Ta=-40〜+85℃*4(広温度範囲仕様品) 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 |I TSI| ― ― 1.0 μ A Vin=0.5〜VCC - 0.5V - Ip 50 ― 300 μ A Vin=0V 60 ― 500 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 75 100 mA f=20MHz スリープ時 ― 60 85 mA f=20MHz スタンバイ時* 3 ― 0.01 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA 入力リーク電流 RES スリーステート ポート 1〜6 リーク電流 ポート 8、9、A、B 測定条件 Vin=0.5〜AVCC - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 MOS 電流 ポート 6、A、B 入力容量 RES (4) Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.5 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AIref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 * 2 消費電流値は、VI H min=VC C - 0. 5V、VI L max =0. 5V の条件下で、すべての出力端子を無負荷状態にして、 さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.5V のとき、VI H min=VCC×0.9、VI L max=0.3V とした場合の値です。 *4 フラッシュメモリへの書き込み/消去動作は、Ta=0〜+75℃(通常仕様品)、Ta=0〜+85℃(広温度範 囲仕様品)の範囲としてください。 876 26. 電気的特性 表 26.45 DC 特性(3) 条件:V CC =4.0V〜5.5V*6、AVCC *1=4.0V〜5.5V、AVref*1=4.0V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃*6(通常仕様品)、Ta=-40〜+85℃*6(広温度範囲仕様品) 項 シュミット 目 記号 2 5 P67〜P60 * * 、 min typ max 1.0 ― ― ― ― VCC×0.7 -V 0.4 ― ― − T 0.8 ― ― ― ― VCC×0.7 0.3 ― − T (1) V + T 5 トリガ入力電圧 KIN15〜KIN8* 、 V + T 3 IRQ2〜IRQ0* 、 V IRQ5〜IRQ3 − T V + T V + T V 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) − T -V 単位 測定条件 V VCC=4.5V〜5.5V V VCC=4.0V〜4.5V ― VCC - 0.7 ― VCC + 0.3 VCC×0.7 ― VCC + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 - 0.3 ― 1.0 VCC=4.5V〜5.5V - 0.3 ― 0.8 VCC=4.0V〜4.5V - 0.3 ― 0.8 VCC - 0.5 ― ― V I OH = - 200 μ A 3.5 ― ― V I OH = - 1mA、 VIH EXTAL、PA7〜PA0* 5 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 VIL NMI、EXTAL ほか、 V V 上記(1)(3)以外の入力端子 出力 High 全出力端子* 4 VOH レベル電圧 VCC=4.5V〜5.5V 3.0 ― ― V I OH = - 1mA、 VCC=4.0V〜4.5V 出力 Low 全出力端子(RESO を除く) * レベル電圧 【注】 4 ― ― 0.4 V I OL =1.6mA ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA VOL *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 IICS=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定めます。 *5 ポート 6、A の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、 CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 * 6 フラッシュメモリへの 書き込み/消去動作は、VC C=4. 5V〜5. 5V、Ta=0〜+75℃( 通常仕様品)、Ta =0〜 +85℃(広温度範囲仕様品)の範囲としてください。 877 電気的特性 26. 表 26.45 DC 特性(4) 条件:V CC =4.0V〜5.5V*4、AVCC *1=4.0V〜5.5V、AVref*1=4.0V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃*4(通常仕様品)、Ta=-40〜+85℃*4(広温度範囲仕様品) 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 |I TSI| ― ― 1.0 μ A Vin=0.5〜VCC - 0.5V - Ip 50 ― 300 μ A Vin=0V、 ポート 6、A、B 60 ― 500 ポート 1〜3 30 ― 200 ポート 6、A、B 40 ― 400 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 65 85 mA f=16MHz ― 50 70 mA f=16MHz ― 0.01 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA 入力リーク電流 RES スリーステート ポート 1〜6 リーク電流 ポート 8、9、A、B 測定条件 Vin=0.5〜AVCC - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 MOS 電流 RES 入力容量 (4) Cin VCC=4.5V〜5.5V μ A Vin=0V、 VCC=4.0V〜4.5V pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.0 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AI ref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 * 2 消費電流値は、VI H min=VC C - 0. 5V、VI L max =0. 5V の条件下で、すべての出力端子を無負荷状態にして、 さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.0V のとき、VI H min=VCC×0.9、VI L max=0.3V とした場合の値です。 * 4 フラッシュメモリへの 書き込み/消去動作は、VC C=4. 5V〜5. 5V、Ta=0〜+75℃( 通常仕様品)、Ta =0〜 +85℃(広温度範囲仕様品)の範囲としてください。 878 26. 電気的特性 表 26.45 DC 特性(5) 条件(マスク ROM 品): V CC =2.7V〜5.5V、AVCC *1=2.7V〜5.5V、AVref*1=2.7V〜5.5V、 V SS=AVSS*1=0V、Ta=-20〜+75℃ 条件(F-ZTAT 品): V CC =3.0V〜5.5V*6、AVCC *1=3.0V〜5.5V、 AVref=3.0V〜5.5V、V SS=AVSS*1=0V、Ta=-20〜+75℃*6 項 シュミット 目 P67〜P60* 2* 5、 (1) 記号 min typ max 単位 VT− VCC×0.2 ― ― V + T 5 トリガ入力電圧 KIN15〜KIN8* 、 ― V ― VCC×0.7 VT+ - VT− VCC×0.05 ― VIH VCC×0.9 ― VCC + 0.3 EXTAL、PA7〜PA0* 5 VCC×0.7 ― VCC + 0.3 ポート 7 VCC×0.7 ― AVCC + 0.3 上記(1)(2)以外の入力端子 VCC×0.7 ― VCC + 0.3 - 0.3 ― VCC×0.1 - 0.3 ― VCC×0.2 IRQ2〜IRQ0* 3、 測定条件 ― IRQ5〜IRQ3 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 VIL 0.8 NMI、EXTAL ほか、 - 0.3 ― VCC×0.2 上記(1)(3)以外の入力端子 出力 High 全出力端子* 0.8 4 VOH レベル電圧 V V VCC<4.0V VCC= 4.0V〜5.5V VCC<4.0V VCC = 4.0V〜5.5V VCC - 0.5 ― ― V I OH = - 200 μ A VCC -1.0 ― ― V I OH = - 1mA (VCC<4.0V) 出力 Low 全出力端子(RESO を除く) * レベル電圧 ポート 1、2、3 4 VOL ― ― 0.4 V I OL =1.6mA ― ― 1.0 V I OL =5mA(VCC<4.0V) I OL =10mA (4.0V≦VCC≦5.5V) RESO 【注】 ― ― 0.4 V I OL =1.6mA *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 IICS=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定めます。 *5 ポート 6、A の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、 CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *6 フラッシュメモリへの書き込み/消去動作は、VCC=3.0V〜3.6V、Ta=0〜+75℃の範囲としてください。 879 電気的特性 26. 表 26.45 DC 特性(6) 条件(マスク ROM 品): V CC =2.7V〜5.5V、AVCC *1=2.7V〜5.5V、AVref*1=2.7V〜5.5V、 V SS=AVSS*1=0V、Ta=-20〜+75℃ 条件(F-ZTAT 品): V CC =3.0V〜5.5V*4、AVCC *1=3.0V〜5.5V、AVref=3.0V〜5.5V、 V SS=AVSS*1=0V、Ta=-20〜+75℃*4 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 |I TSI| ― ― 1.0 μ A Vin=0.5〜VCC - 0.5V - Ip 10 ― 150 μ A Vin=0V 30 ― 250 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 45 60 mA f=10MHz ― 35 50 mA f=10MHz ― 0.01 5.0 μ A Ta≦50℃ ― ― 20.0 ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA 入力リーク電流 RES スリーステート ポート 1〜6 リーク電流 ポート 8、9、A、B 測定条件 Vin=0.5〜AVCC - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 MOS 電流 ポート 6、A、B 入力容量 RES (4) Cin Vcc=2.7V* 4〜3.6V pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC スリープ時 スタンバイ時* 3 50℃<Ta アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 2.7 ― 5.5 3.0 ― 5.5 動作時(F-ZTAT 品) 2.0 ― 5.5 待機時、非使用時 2.0 ― ― アナログ電源電圧* 1 AI CC AI ref AVCC μ A AVref=2.0V〜AVCC V 動作時(マスク ROM 品) RAM スタンバイ電圧 【注】 VRAM V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 * 2 消費電流値は、VI H min=VC C - 0. 5V、VI L max =0. 5V の条件下で、すべての出力端子を無負荷状態にして、 さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 * 3 VR AM≦VC C<2. 7V(マスク ROM 品)および VR AM≦VC C<3. 0V(F-Z TAT 品)のとき、VI H min=VC C×0. 9、 VI L max=0.3V とした場合の値です。 * 4 フラッシ ュメモリへの書き 込み/消去は VC C=3. 0V〜 3. 6V、Ta=0〜+75℃の範 囲としてください 。また、 F-ZTAT 品の測定条件は、VCC=3.0V〜となります。 880 電気的特性 26. 表 26.46 出力許容電流値 条件:V CC =4.0V〜5.5V、V SS= 0V Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 項 目 記号 min typ max 単位 I OL ― ― 20 mA 出力 Low レベル許容電流 PA7〜PA4(バス駆動機能選択) (1 端子あたり) ポート 1、2、3 ― ― 10 RESO ― ― 3 上記以外の出力端子 ― ― 2 ― ― 80 ― ― 120 - I OH ― ― 2 mA Σ - I OH ― ― 40 mA 出力 Low レベル許容電流 ポート 1、2、3 の総和 (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 Σ I OL mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 条件:V CC =2.7V〜5.5V(マスク ROM 品)、V CC =3.0V〜5.5V(F-ZTAT 品)、 V SS= 0V Ta= -20〜+75℃ 項 目 記号 min typ max 単位 I OL ― ― 10 mA 出力 Low レベル許容電流 PA7〜PA4(バス駆動機能選択) (1 端子あたり) ポート 1、2、3 ― ― 2 RESO ― ― 1 上記以外の出力端子 ― ― 1 ― ― 40 ― ― 60 - I OH ― ― 2 mA Σ - I OH ― ― 30 mA 出力 Low レベル許容電流 ポート 1、2、3 の総和 Σ I OL (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 【注】 1. LSI の信頼性を確保するため、出力電流値は表 26. 46 の値を超えないようにしてくださ い。 2. ダーリントントランジスタや、LED を直接駆動する場合には、図 26. 1、図 26. 2 に示す ように、出力に必ず電流制限抵抗を挿入してください。 表 26.47 バス駆動特性 条件:2.7V〜5.5V(マスク ROM 品)、V CC =3.0V〜5.5V(F-ZTAT 品)、V SS=0V 対象端子:PA7〜PA4(バス駆動機能選択) 項 目 出力 Low レベル電圧 記号 min typ max 単位 測定条件 VOL ― ― 0.8 V ― ― 0.5 I OL =8mA ― ― 0.4 I OL =3mA I OL =16mA、VCC=4.5V〜5.5V 881 26. 電気的特性 26.5.3 AC 特性 クロックタイミング、制御信号タイミング,バスタイミング,および内蔵周辺機能タイ ミングを以下に示します。 AC 特性測定条件は図 26.4 を参照してください。 (1)クロックタイミング 表 26.48 にクロックタイミングを示します。ここで規定するクロックタイミングは、ク ロック(φ)出力と、クロック発振器(水晶)と外部クロック入力(EXTA L 端子)の発 振安定時間です。外部クロック入力(EXTA L 端子および EXC L 端子)タイミングの詳細 については、「第 24 章 クロック発振器」を参照してください。 表 26.48 クロックタイミング 条件 A: V CC =5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、 V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V〜5.5V(マスク ROM 品)、V CC =3.0V〜5.5V(F-ZTAT 品)、 V SS=0V、φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 クロックサイクル時間 t cyc 100 500 62.5 500 50 500 ns 図 26.5 クロックハイレベルパルス幅 t CH 30 ― 20 ― 17 ― ns 図 26.5 クロックローレベルパルス幅 t CL 30 ― 20 ― 17 ― ns クロック立ち上がり時間 t Cr ― 20 ― 10 ― 8 ns クロック立ち下がり時間 t Cf ― 20 ― 10 ― 8 ns t OSC1 20 ― 10 ― 10 ― ms 図 26.6 ソフトウエアスタンバイ発振安定時間 (水晶) t OSC2 8 ― 8 ― 8 ― ms 図 26.7 500 ― 500 ― 500 ― μs リセット発振安定時間(水晶) 外部クロック出力安定遅延時間 882 記号 条件 C t DEXT 26. 電気的特性 (2)制御信号タイミング 表 2 6.49 に制御信号タイミングを示します。サブクロック(φ=32. 768kHz)で動作可 能な外部割込みは、NMI、IRQ0〜2、6、7 のみです。 表 26.49 制御信号タイミング 条件 A: V CC =5.0V±10%、V SS=0V、φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V SS=0V、φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V〜5.5V(マスク ROM 品)、V CC =3.0V〜5.5V(F-ZTAT 品)、 V SS=0V、φ=32.768kHz、2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 図 26.8 RES セットアップ時間 t RESS 300 ― 200 ― 200 ― ns RES パルス幅 t RESW 20 ― 20 ― 20 ― t cyc NMI セットアップ時間(NMI) t NMIS 250 ― 150 ― 150 ― ns NMI ホールド時間 t NMIH 10 ― 10 ― 10 ― ns t NMIW 200 ― 200 ― 200 ― ns t IRQS 250 ― 150 ― 150 ― ns t IRQH 10 ― 10 ― 10 ― ns t IRQW 200 ― 200 ― 200 ― ns (NMI) NMI パルス幅(NMI) 図 26.9 (ソフトウェアスタンバイモード からの復帰時) IRQ セットアップ時間 (IRQ7 〜IRQ0) IRQ ホールド時間 (IRQ7 〜IRQ0) IRQ パルス幅 (IRQ7、IRQ6、IRQ2〜IRQ0) (ソフトウェアスタンバイモード からの復帰時) 883 26. 電気的特性 (3)バスタイミング 表 2 6.50 にバスタイミングを示します。サブクロック(φ=32. 768kHz)動作では、外 部拡張モードの動作は保証されません。 表 26.50 バスタイミング 条件 A: V CC =5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =2.7V〜5.5V(マスク ROM 品)、V CC =3.0V〜5.5V(F-ZTAT 品)、 V SS=0V、φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 アドレス遅延時間 t AD ― 40 ― 30 ― 20 ns 図 26.10 アドレスセットアップ時間 t AS 0.5×tcyc - 30 ― 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― ns 〜 アドレスホールド時間 t AH 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― 0.5×tcyc - 10 ― ns 図 26.14 CS 遅延時間(IOS) t CSD ― 40 ― 30 ― 20 ns AS 遅延時間 t ASD ― 60 ― 45 ― 30 ns RD 遅延時間 1 t RSD1 ― 60 ― 45 ― 30 ns RD 遅延時間 2 t RSD2 ― 60 ― 45 ― 30 ns リードデータセットアップ時間 t RDS 35 ― 20 ― 15 ― ns リードデータホールド時間 t RDH 0 ― 0 ― 0 ― ns リードデータアクセス時間 1 t ACC1 ― 1.0×tcyc - 60 ― 1.0×tcyc - 40 ― 1.0×tcyc - 30 ns リードデータアクセス時間 2 t ACC2 ― 1.5×tcyc - 50 ― 1.5×tcyc - 35 ― 1.5×tcyc - 25 ns リードデータアクセス時間 3 t ACC3 ― 2.0×tcyc - 60 ― 2.0×tcyc - 40 ― 2.0×tcyc - 30 ns リードデータアクセス時間 4 t ACC4 ― 2.5×tcyc - 50 ― 2.5×tcyc - 35 ― 2.5×tcyc - 25 ns リードデータアクセス時間 5 t ACC5 ― 3.0×tcyc - 60 ― 3.0×tcyc - 40 ― 3.0×tcyc - 30 ns WR 遅延時間 1 t WRD1 ― 60 ― 45 ― 30 ns WR 遅延時間 2 t WRD2 ― 60 ― 45 ― 30 ns WR パルス幅 1 t WSW1 1.0×tcyc - 40 ― 1.0×tcyc - 30 ― 1.0×tcyc - 20 ― ns WR パルス幅 2 t WSW2 1.5×tcyc - 40 ― 1.5×tcyc - 30 ― 1.5×tcyc - 20 ― ns ライトデータ遅延時間 t WDD ― 60 ― 45 ― 30 ns ライトデータセットアップ時間 t WDS 0 ― 0 ― 0 ― ns ライトデータホールド時間 t WDH 20 ― 15 ― 10 ― ns WAIT セットアップ時間 t WTS 60 ― 45 ― 30 ― ns WAIT ホールド時間 t WTH 10 ― 5 ― 5 ― ns 884 26. 電気的特性 (4)内蔵周辺モジュールタイミング 表 2 6.51 に内 蔵周辺 モジ ュー ルタイ ミン グを示 しま す。サ ブク ロッ ク動作 時( φ= 32. 768kHz)に動 作可能な内蔵 周辺モジュール は、I/O ポート 、外部割込み (NMI、IR Q0 〜2、6、7)、ウォッチドッグタイマ、8 ビットタイマ(チャネル 0、1)のみです。 表 26.51 内蔵周辺モジュールタイミング 条件 A: V CC =5.0V±10%、V SS=0V、φ=32.768kHz*1、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V SS=0V、φ=32.768kHz*1、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C:V CC =2.7V〜5.5V(マスク ROM 品)、V CC =3.0V〜5.5V(F-ZTAT 品)、 V SS=0V、φ=32.768kHz*1、2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 A 20MHz min max min max min max ― 100 ― 50 ― 50 入力データセットアップ時間 t PRS 50 ― 30 ― 30 ― 入力データホールド時間 t PRH 50 ― 30 ― 30 ― タイマ出力遅延時間 t FTOD ― 100 ― 50 ― 50 タイマ入力セットアップ時間 t FTIS 50 ― 30 ― 30 ― 出力データ遅延時間 ポート TMR 条件 B 16MHz t PWD I/O FRT 条件 C 10MHz タイマクロック入力セットアップ時間 t FTCS 50 ― 30 ― 30 ― タイマクロック 単エッジ指定 t FTCWH 1.5 ― 1.5 ― 1.5 ― パルス幅 両エッジ指定 単位 測定条件 ns 図 26.15 ns 図 26.16 図 26.17 t cyc t FTCWL 2.5 ― 2.5 ― 2.5 ― タイマ出力遅延時間 t TMOD ― 100 ― 50 ― 50 タイマリセット入力セットアップ時間 t TMRS 50 ― 30 ― 30 ― 図 26.20 タイマクロック入力セットアップ時間 t TMCS 50 ― 30 ― 30 ― 図 26.19 ns 図 26.18 タイマクロック 単エッジ指定 t TMCWH 1.5 ― 1.5 ― 1.5 ― パルス幅 両エッジ指定 t TMCWL 2.5 ― 2.5 ― 2.5 ― t PWOD ― 100 ― 50 ― 50 ns 図 26.21 t Scyc 4 ― 4 ― 4 ― t cyc 図 26.22 6 ― 6 ― 6 ― 入力クロックパルス幅 t SCKW 0.4 0.6 0.4 0.6 0.4 0.6 t Scyc 入力クロック立ち上がり時間 t SCKr ― 1.5 ― 1.5 ― 1.5 t cyc 入力クロック立ち下がり時間 t SCKf ― 1.5 ― 1.5 ― 1.5 送信データ遅延時間(クロック同期) t TXD ― 100 ― 50 ― 50 受信データセットアップ時間 (クロック同期) t RXS 100 ― 50 ― 50 ― 受信データホールド時間 (クロック同期) t RXH 100 ― 50 ― 50 ― A/D 変換器 トリガ入力セットアップ時間 t TRGS 50 ― 30 ― 30 WDT RESO 出力遅延時間 t RESD ― 200 ― 120 RESO 出力パルス幅 t RESOW 132 ― 132 ― PWMX パルス出力遅延時間 SCI 入力クロック 調歩同期 サイクル クロック同期 【注】 t cyc ns 図 26.23 ― ns 図 26.24 ― 100 ns 図 26.25 132 ― t cyc *1 サブクロック動作時に使用可能な内蔵周辺モジュールのみ 885 26. 電気的特性 26.5.4 A/D 変換特性 A/D 変換特性を表 26.52、表 26.53 に示します。 表 26.52 A/D 変換特性(AN7〜AN0 入力:134/266 ステート変換) 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、 V SS=AVSS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、 V SS=AVSS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C(マスク ROM 品): V CC =2.7V〜5.5V、AVCC =2.7V〜5.5V、AVref=2.7V〜AVCC 、 V SS=AVSS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃ 条件 C(F-ZTAT 品): V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、 V SS=AVSS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃ 項 目 min 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ 分解能 max min typ 10 max min 10 typ 単 max ビット 10 変換時間* 5 ― ― 13.4 ― ― 8.4 ― ― 6.7 アナログ入力容量 ― ― 20 ― ― 20 ― ― 20 許容信号源 ― ― 10* 1 ― ― 5* 2 インピーダンス 10* 3 ― ― 5* 4 位 10* μs pF 3 kΩ 5* 4 非直線性誤差 ― ― ±7.0 ― ― ±3.0 ― ― ±3.0 LSB オフセット誤差 ― ― ±7.5 ― ― ±3.5 ― ― ±3.5 LSB フルスケール誤差 ― ― ±7.5 ― ― ±3.5 ― ― ±3.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±8.0 ― ― ±4.0 ― ― ±4.0 LSB 【注】 *1 4.0V≦AVCC≦5.5V のとき *2 2.7V≦AVCC<4.0V(マスク ROM 品)または 3.0V≦AVCC<4.0V(F-ZTAT 品)のとき *3 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) *4 変換時間<11.17 μ s(CKS=1 でφ>12MHz) *5 シングルモードで最大動作周波数のとき 886 のとき のとき 26. 電気的特性 表 26.53 A/D 変換特性(CIN15〜CIN0 入力:134/266 ステート変換) 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C(マスク ROM 品): V CC =2.7V〜5.5V、AVCC =2.7V〜5.5V、AVref=2.7V〜AVCC 、 V SS=AVSS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃ 条件 C(F-ZTAT 品): V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、 V SS=AVSS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃ 項 目 min 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ 分解能 max min typ 10 変換時間* 5 max min 10 typ 単 位 max ビット 10 ― ― 13.4 ― ― 8.4 ― ― 6.7 μs アナログ入力容量 ― ― 20 ― ― 20 ― ― 20 pF 許容信号源 ― ― 10* 1 ― ― 10* 3 ― ― 10* 3 kΩ 5* 2 インピーダンス 5* 4 5* 4 非直線性誤差 ― ― ±11.0 ― ― ±5.0 ― ― ±5.0 LSB オフセット誤差 ― ― ±11.5 ― ― ±5.5 ― ― ±5.5 LSB フルスケール誤差 ― ― ±11.5 ― ― ±5.5 ― ― ±5.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±12.0 ― ― ±6.0 ― ― ±6.0 LSB 【注】 *1 4.0V≦AVCC≦5.5V のとき *2 2.7V≦AVCC<4.0V(マスク ROM 品)または 3.0V≦AVCC<4.0V(F-ZTAT 品)のとき *3 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) *4 変換時間<11.17 μ s(CKS=1 でφ>12MHz) のとき のとき *5 シングルモードで最大動作周波数のとき 887 26. 電気的特性 26.5.5 D/A 変換特性 D/A 変換特性を表 26.54 に示します。 表 26.54 D/A 変換特性 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C(マスク ROM 品): V CC =2.7V〜5.5V、AVCC =2.7V〜5.5V、AVref=2.7V〜AVCC 、 V SS=AVSS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃ 条件 C(F-ZTAT 品): V CC =3.0V〜5.5V、AVCC =3.0V〜5.5V、AVref=3.0V〜AVCC 、 V SS=AVSS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃ 項 目 min 分解能 888 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ max min 8 変換時間 負荷容量 20pF ― 絶対精度 負荷抵抗 2M Ω ― 負荷抵抗 4M Ω ― ― max min 8 10 ±2.0 ±3.0 ― typ ±2.0 ― ― ― ― 10 ±1.0 ― ― ― ― ビット 10 ±1.0 ±1.5 ― 位 max 8 ±1.0 ±1.5 ― typ 単 ±1.0 μs LSB 26. 26.5.6 電気的特性 フラッシュメモリ特性 表 26.55 にフラッシュメモリ特性を示します。 表 26.55 フラッシュメモリ特性(書き込み/消去時の動作範囲) 5V 版条件: V CC =5.0V±10%、V SS=0V、 Ta=0〜+75℃(通常仕様品)、Ta=0〜+85℃(広温度範囲仕様品) 3V 版条件: V CC =3.0V〜3.6V、V SS=0V、Ta=0〜+75℃ 項目 書き込み時間* 1* 2* 4 記号 min. typ. max. tP ― 10 200 単位 測定条件 ms/ 32 バイト 1 3 消去時間* * * 6 tE ― 100 NWEC ― ― 100 回 書き込み時 SWE-bit セット後のウェイト時間* 1 x 10 ― ― μs PSU-bit セット後のウェイト時間* 1 y 50 ― ― μs z 150 ― 200 μs P-bit クリア後のウェイト時間* 1 α 10 ― ― μs PSU-bit クリア後のウェイト時間* 1 β 10 ― ― μs PV-bit セット後のウェイト時間* 1 γ 4 ― ― μs 1 ε 2 ― ― μs PV-bit クリア後のウェイト時間* 1 η 4 ― ― μs 最大書き込み回数* 1* 4* 5 N ― ― 1000 回 x 10 ― ― μs y 200 ― ― μs E-bit セット後のウェイト時間* 1* 6 z 5 ― 10 ms E-bit クリア後のウェイト時間* 1 α 10 ― ― μs 書き替え回数 1 P-bit セット後のウェイト時間* * ダミーライト後のウェイト時間* 消去時 4 SWE-bit セット後のウェイト時間* 1 ESU-bit セット後のウェイト時間* 1 ESU-bit クリア後のウェイト時間* 1 1200 ms/ブロック β 10 ― ― μs 1 γ 20 ― ― μs ダミーライト後のウェイト時間* 1 ε 2 ― ― μs EV-bit クリア後のウェイト時間* 1 η 5 ― ― μs 最大消去回数* 1* 6* 7 N ― ― 120 回 EV-bit セット後のウェイト時間* 【注】 z=200 μ s のとき z=10ms のとき *1 各時間の設定は、書き込み/消去のアルゴリズムに従い行ってください。 *2 32 バイト当たりの書き込み時間(フラッシュメモリコントロールレジスタ(FLMCR1) の P-bit をセットしているトータル期間を示します。プログラムベリファイ時間は含ま れません。) 889 26. 電気的特性 *3 1 ブロックを消去する時間(フラッシュメモリコントロールレジスタ(FLMCR1)の E-bit をセ ット して いる トータ ル期 間を 示し ます。 イレ ース ベリ ファイ 時間 は含 まれ ませ ん。) *4 書き込み時間の最大値(tP(max)) tP(max)=P-bit セット後のウェイト時間(z)×最大書き込み回数(N) * 5 P-bit セット後のウェイト時間(z )=200 μ s 時の回数です。書き込み回数は、実際の (z)の設定値に合わせ、書き込み時間の最大値(tP(max))以下となるよう設定して ください。 *6 消去時間の最大値(tE(max)) tE(max)=E-bit セット後のウェイト時間(z)×最大消去回数(N) *7 E-bit セット後のウェイト時間(z)=10ms 時の回数です。消去回数は、実際の(z)の 設定値に合わせ、消去時間の最大値(tE(max))以下となるよう設定してください。 890 26. 26.5.7 電気的特性 使用上の注意 (1)F -ZTAT 版とマスク R OM 版は、本マニュアルに記載の電気的特性を満足しています が、製造プロセスの相違、内蔵 ROM の相違、レイアウトパターンの相違などにより、 電気的特性の実力値や動作マージン、ノイズマージンなどは異なる場合があります。 F-ZTAT 版を使用してシステムの評価試験を行う場合には、マスク ROM 版への切り替 え時にマスク ROM 版についても同等の評価試験を行ってください。 (2)内部降圧品への切り替え H8S/2144 F-ZTAT、H8S/2142 F-ZTAT、H8S/2142 マスク ROM 版は、内部降圧機能はサ ポートしていません。 内部降圧対応の F -ZTAT 版あるいは内部降圧対応のマスク R OM 版に切り替えを行う場 合には、VCC2 端子は、内部降圧品の VCL 端子と同じピン配置になります(図 26.3 参照)。 このため、基板パターンを設計する場合には切り替え前後の回路の違いを考慮する必要が ありますので、ご注意願います。 891 26. 電気的特性 26.6 H8S/2144 F-ZTAT (A マスク品)、 H8S/2144 マスク ROM 品、 H8S/2143 マスク ROM 品の電気的特性 26.6.1 絶対最大定格 絶対最大定格を表 26.56 に示します。 表 26.56 絶対最大定格 項 目 ―暫定― 記号 定格値 単位 電源電圧* 1 VCC - 0.3〜+7.0 V 電源電圧(3V 品)* 1 VCC - 0.3〜+4.3 V 電源電圧(VCL 端子)* 2 VCL - 0.3〜+4.3 V 入力電圧(ポート 6、7、A 以外) Vin - 0.3〜VCC + 0.3 V 入力電圧(ポート 6、A で Vin - 0.3〜VCC + 0.3 V Vin - 0.3〜VCC + 0.3 と AVCC + 0.3 のいずれか V CIN 入力非選択時) 入力電圧(ポート 6、A で、 CIN 入力選択時) 低い電圧 入力電圧(ポート 7) Vin - 0.3〜AVCC + 0.3 V リファレンス電源電圧 AVref - 0.3〜AVCC + 0.3 V アナログ電源電圧 AVCC - 0.3〜+7.0 V アナログ電源電圧(3V 品) AVCC - 0.3〜+4.3 V アナログ入力電圧 VAN - 0.3〜AVCC + 0.3 V 動作温度 Topr 通常仕様品:-20〜+75 ℃ 広温度範囲仕様品:-40〜+85 動作温度 Topr (FLASH メモリ書込み/消去時) 保存温度 通常仕様品:-20〜+75 ℃ 広温度範囲仕様品:-40〜+85 Tstg - 55〜+125 ℃ 【使用上の注意】 1. 絶対最大定格を超えて LSI を使用した場合、LSI の永久破壊となることがあります。 2. 5V/4V 品の入力端子への印加電圧は、最大でも 7. 0V 以下としてください。また、3V 品の入力端子(ポート A を除く)への印加電圧は、最大でも 4.3V 以下としてください。 *1 VCC1 端子への印加電圧です。 低電圧品(3V 品)では VC C1 端子と VC L 端子をともに VC C 電源に接続して使用するた め、絶対に VCL の定格値を超えないようにしてください。 *2 チップ内部の動作電源電圧端子です。 5V 品/4V 品では VCL 端子には電源電圧を印加しないでください。VCL 端子と GND と の間には、内部電圧安定化のため必ず外付けのコンデンサを接続してください。 892 26. 電気的特性 DC 特性 26.6.2 DC 特性を表 2 6.57 に示します。また、出力許容電流値、バス駆動特性をそれぞれを表 26.58、表 26.59 に示します。 表 26.57 DC 特性(1) ―暫定― 条件:V CC =5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 項 シュミット 目 P67〜P60* 2* 5、 (1) 記号 min typ max 単位 VT− 1.0 ― ― V ― ― VCC×0.7 0.4 ― + T 5 トリガ入力電圧 KIN15〜KIN8* 、 V + T 3 IRQ2〜IRQ0* 、 V − T -V 測定条件 ― IRQ5〜IRQ3 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) VCC - 0.7 ― VCC + 0.3 VCC×0.7 ― VCC + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 VIH EXTAL、PA7〜PA0* 5 V 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 - 0.3 ― 1.0 NMI、EXTAL ほか、 - 0.3 ― 0.8 VCC - 0.5 ― ― V I OH = - 200 μ A 3.5 ― ― V I OH = - 1mA ― ― 0.4 V I OL =1.6mA VIL V 上記(1)(3)以外の入力端子 出力 High 全出力端子* 4 VOH レベル電圧 出力 Low 全出力端子(RESO を除く) * 4 レベル電圧 ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA 【注】 VOL *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 IICS=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定めます。 *5 ポート 6、A の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、 CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 893 電気的特性 26. 表 26.57 DC 特性(2) ―暫定― 条件:V CC =5.0V±10%、AVCC *1=5.0V±10%、AVref*1=4.5V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 |I TSI| ― ― 1.0 μ A Vin=0.5〜VCC - 0.5V - Ip 30 ― 300 μ A Vin=0V 60 ― 600 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 55 70 mA f=20MHz スリープ時 ― 36 55 mA f=20MHz スタンバイ時* 3 ― 1.0 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA 入力リーク電流 RES スリーステート ポート 1〜6 リーク電流 ポート 8、9、A、B 測定条件 Vin=0.5〜AVCC - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 MOS 電流 ポート 6、A、B 入力容量 RES (4) Cin pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.5 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AIref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 * 2 消費電流値は、VI H min=VC C - 0. 2V、VI L max =0. 2V の条件下で、すべての出力端子を無負荷状態にして、 さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.5V のとき、VI H min=VCC - 0.2V、VI L max=0.2V とした場合の値です。 894 26. 電気的特性 表 26.57 DC 特性(3) ―暫定― 条件:V CC =4.0V〜5.5V、AVCC *1=4.0V〜5.5V、AVref*1=4.0V〜AVCC 、V SS=AVSS*1=0V Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 項 シュミット 目 記号 2 5 P67〜P60* * 、 (1) min typ max − T 1.0 ― ― + T ― ― VCC×0.7 0.4 ― ― 0.8 ― ― ― ― VCC×0.7 0.3 ― V 5 トリガ入力電圧 KIN15〜KIN8* 、 V VT+ - VT− IRQ2〜IRQ0* 3、 − T IRQ5〜IRQ3 V + T V + T V 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) − T -V 単位 測定条件 V VCC=4.5V〜5.5V V VCC<4.5V ― VCC - 0.7 ― VCC + 0.3 VCC×0.7 ― VCC + 0.3 ポート 7 2.0 ― AVCC + 0.3 上記(1)(2)以外の入力端子 2.0 ― VCC + 0.3 - 0.3 ― 0.5 - 0.3 ― 1.0 VCC=4.5V〜5.5V - 0.3 ― 0.8 VCC<4.5V - 0.3 ― 0.8 VCC - 0.5 ― ― V I OH = - 200 μ A 3.5 ― ― V I OH = - 1mA、 VIH EXTAL、PA7〜PA0* 5 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 VIL NMI、EXTAL ほか、 V V 上記(1)(3)以外の入力端子 出力 High 全出力端子* 4 VOH レベル電圧 VCC=4.5V〜5.5V 3.0 ― ― V I OH = - 1mA、 VCC<4.5V 出力 Low 全出力端子(RESO を除く) * レベル電圧 【注】 4 ― ― 0.4 V I OL =1.6mA ポート 1、2、3 ― ― 1.0 V I OL =10mA RESO ― ― 0.4 V I OL =2.6mA VOL *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 IICS=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定めます。 *5 ポート 6、A の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、 CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 895 電気的特性 26. 表 26.57 DC 特性(4) ―暫定― 条件:V CC =4.0V〜5.5V、AVCC *1=4.0V〜5.5V、AVref*1=4.0V〜AVCC 、 V SS=AVSS*1=0V Ta=-20〜+75℃(通常仕様品)、Ta=-40〜+85℃(広温度範囲仕様品) 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 |I TSI| ― ― 1.0 μ A Vin=0.5〜VCC - 0.5V - Ip 30 ― 300 μ A Vin=0V、 ポート 6、A、B 60 ― 600 ポート 1〜3 20 ― 200 μ A Vin=0V、 ポート 6、A、B 40 ― 500 VCC<4.5V ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 45 58 mA f=16MHz スリープ時 ― 30 46 mA f=16MHz スタンバイ時* 3 ― 1.0 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜5.5V ― 0.5 1.0 mA 入力リーク電流 RES スリーステート ポート 1〜6 リーク電流 ポート 8、9、A、B 測定条件 Vin=0.5〜AVCC - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 MOS 電流 入力容量 RES (4) Cin VCC=4.5V〜5.5V pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 4.0 ― 5.5 2.0 ― 5.5 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 896 AI CC AI ref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V 26. 【注】 電気的特性 *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜5.5V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 * 2 消費電流値は、VI H min=VC C - 0. 2V、VI L max =0. 2V の条件下で、すべての出力端子を無負荷状態にして、 さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<4.0V のとき、VI H min=VCC - 0.2V、VI L max=0.2V とした場合の値です。 897 電気的特性 26. 表 26.57 DC 特性(5) ―暫定― 条件:V CC =2.7V〜3.6V*6、AVCC *1=2.7V〜3.6V、AVref=2.7V〜3.6V、V SS=AVSS*1=0V、 Ta=-20〜+75℃ 項 シュミット 目 記号 min typ max 単位 VT− VCC×0.2 ― ― V VT+ ― VT+ - VT− VCC×0.05 ― VIH VCC×0.9 ― VCC + 0.3 EXTAL、PA7〜PA0* 5 VCC×0.7 ― VCC + 0.3 ポート 7 VCC×0.7 ― AVCC + 0.3 上記(1)(2)以外の入力端子 VCC×0.7 ― VCC + 0.3 - 0.3 ― VCC×0.1 P67〜P60 * 2* 5、 (1) トリガ入力電圧 KIN15〜KIN8* 5、 IRQ2〜IRQ0* 3、 測定条件 ― VCC×0.7 ― IRQ5〜IRQ3 入力 High RES、STBY、NMI、 レベル電圧 MD1〜MD0 (2) 入力 Low RES、 STBY、 MD1〜MD0 (3) レベル電圧 PA7〜PA0 - 0.3 ― VCC×0.2 NMI、EXTAL ほか、 - 0.3 ― VCC×0.2 VIL V V 上記(1)(3)以外の入力端子 出力 High 全出力端子* 4 VOH レベル電圧 VCC - 0.5 ― ― V I OH = - 200 μ A VCC -1.0 ― ― V I OH = - 1mA (VCC = 2.7V〜3.6V) 出力 Low 全出力端子(RESO を除く) * 4 レベル電圧 【注】 ― ― 0.4 V I OL =1.6mA ポート 1、2、3 ― ― 1.0 V I OL =5mA RESO ― ― 0.4 V I OL =1.6mA VOL *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜3.6V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 *2 P67〜P60 にはそれと兼用の周辺機能入力を含みます。 *3 IRQ2 には、それと兼用の ADTRG 端子を含みます。 *4 IICS=0 の場合です。バス駆動機能を選択した場合の Low レベル出力は別途定めます。 *5 ポート 6、A の印加電圧の上限は、CIN 入力非選択時は VCC+0.3V、 CIN 入力選択時は VCC+0.3V と AVCC+0.3V のいずれか低い電圧です。該当端子が出力モードの場合、出力電圧が印加電圧に相当します。 *6 フラッシュメモリへの書き込み/消去動作は、VCC=3.0V〜3.6V の範囲としてください。 898 26. 表 26.57 DC 特性(6) 電気的特性 ―暫定― 条件:V CC=2 .7V 〜3 .6V *4、A V CC*1=2 .7V 〜3 .6V 、A V ref*1=2 .7V 〜3 .6V 、V SS=A V SS*1=0 V 、 Ta=-20〜+75℃ 項 目 記号 min typ max 単位 |I in| ― ― 10.0 μ A Vin=0.5〜VCC - 0.5V STBY、NMI、MD1〜MD0 ― ― 1.0 ポート 7 ― ― 1.0 |I TSI| ― ― 1.0 μ A Vin=0.5〜VCC - 0.5V - Ip 5 ― 150 μ A Vin=0V 30 ― 300 ― ― 80 NMI ― ― 50 f=1MHz P52、P97、P42、 ― ― 20 Ta=25℃ ― ― 15 ― 30 40 mA f=10MHz スリープ時 ― 20 32 mA f=10MHz スタンバイ時* 3 ― 1.0 5.0 μ A Ta≦50℃ ― ― 20.0 50℃<Ta ― 1.2 2.0 mA ― 0.01 5.0 μ A AVCC=2.0V〜3.6V ― 0.5 1.0 mA 入力リーク電流 RES スリーステート ポート 1〜6 リーク電流 ポート 8、9、A、B 測定条件 Vin=0.5〜AVCC - 0.5V (オフ状態) 入力プルアップ ポート 1〜3 MOS 電流 ポート 6、A、B 入力容量 RES (4) Cin Vcc=2.7V〜3.6V pF Vin=0V P86、PA7〜PA2 上記(4)以外の入力端子 消費電流* 2 通常動作時 I CC アナログ A/D、D/A 変換中 電源電流 A/D、D/A 変換待機時 リファレンス A/D 変換中 電源電流 A/D、D/A 変換中 ― 2.0 5.0 A/D、D/A 変換待機時 ― 0.01 5.0 2.7 ― 3.6 2.0 ― 3.6 2.0 ― ― アナログ電源電圧* 1 RAM スタンバイ電圧 【注】 AI CC AI ref AVCC VRAM μ A AVref=2.0V〜AVCC V 動作時 待機時、非使用時 V *1 A/D 変換器、D/A 変換器を使用しない場合でも、AVCC、AVref、AVSS 端子を開放しないでください。 A/ D 変換器、D/ A 変換器を使用しない場合でも、AVC C、AVref 端子は電源(VC C)に接続するなどの方法 で 2.0V〜3.6V の範囲の電圧を印加してください。このとき、AVref≦AVCC としてください。 * 2 消費電流値は、VI H min=VC C - 0. 2V、VI L max =0. 2V の条件下で、すべての出力端子を無負荷状態にして、 さらに内蔵プルアップ MOS をオフ状態にした場合の値です。 *3 VRAM≦VCC<2.7V のとき、VI H min=VCC - 0.2V、VI L max=0.2V とした場合の値です。 *4 フラッシュメモリへの書き込み/消去は VCC=3.0V〜3.6V の範囲としてください。 899 26. 電気的特性 表 26.58 出力許容電流値 ―暫定― 条件:V CC =4.0V〜5.5V、V SS= 0V Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 項 目 記号 min typ max 単位 I OL ― ― 20 mA 出力 Low レベル許容電流 PA7〜PA4(バス駆動機能選択) (1 端子あたり) ポート 1、2、3 ― ― 10 RESO ― ― 3 上記以外の出力端子 ― ― 2 ― ― 80 ― ― 120 - I OH ― ― 2 mA Σ - I OH ― ― 40 mA 記号 min typ max 単位 I OL ― ― 10 mA 出力 Low レベル許容電流 ポート 1、2、3 の総和 (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 Σ I OL mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 条件:V CC =2.7V〜3.6V、V SS= 0V、Ta= -20〜+75℃ 項 目 出力 Low レベル許容電流 PA7〜PA4(バス駆動機能選択) (1 端子あたり) ポート 1、2、3 ― ― 2 RESO ― ― 1 上記以外の出力端子 ― ― 1 ― ― 40 ― ― 60 - I OH ― ― 2 mA Σ - I OH ― ― 30 mA 出力 Low レベル許容電流 ポート 1、2、3 の総和 Σ I OL (総和) 上記を含む、全出力端子の総和 出力 High レベル許容電流 全出力端子 mA (1 端子あたり) 出力 High レベル許容電流 全出力端子の総和 (総和) 【注】 1. LSI の信頼性を確保するため、出力電流値は表 26. 58 の値を超えないようにしてくださ い。 2. ダーリントントランジスタや、LED を直接駆動する場合には、図 26. 1、図 26. 2 に示す ように、出力に必ず電流制限抵抗を挿入してください。 表 26.59 バス駆動特性 条件:V CC =4.0V〜5.5V、V CC =2.7V〜3.6V(3V 品)、V SS=0V 対象端子:PA7〜PA4(バス駆動機能選択) 項 目 出力 Low レベル電圧 900 記号 min typ max 単位 測定条件 VOL ― ― 0.8 V ― ― 0.5 I OL =8mA ― ― 0.4 I OL =3mA I OL =16mA、VCC=4.5V〜5.5V 26. 26.6.3 電気的特性 AC 特性 クロックタイミング、制御信号タイミング,バスタイミング,および内蔵周辺機能タイ ミングを以下に示します。 AC 特性測定条件は図 26.4 を参照してください。 (1)クロックタイミング 表 26.60 にクロックタイミングを示します。ここで規定するクロックタイミングは、ク ロック(φ)出力と、クロック発振器(水晶)と外部クロック入力(EXTA L 端子)の発 振安定時間です。外部クロック入力(EXTA L 端子および EXC L 端子)タイミングの詳細 については、「第 24 章 クロック発振器」を参照してください。 表 26.60 クロックタイミング ―暫定― 条件 A: V CC =5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V〜3.6V、V SS=0V、φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min Max min max min max 単位 測定条件 クロックサイクル時間 t cyc 100 500 62.5 500 50 500 ns 図 26.5 クロックハイレベルパルス幅 t CH 30 ― 20 ― 17 ― ns 図 26.5 クロックローレベルパルス幅 t CL 30 ― 20 ― 17 ― ns クロック立ち上がり時間 t Cr ― 20 ― 10 ― 8 ns クロック立ち下がり時間 t Cf ― 20 ― 10 ― 8 ns t OSC1 20 ― 10 ― 10 ― ms 図 26.6 ソフトウエアスタンバイ発振安定時間 (水晶) t OSC2 8 ― 8 ― 8 ― ms 図 26.7 500 ― 500 ― 500 ― μs リセット発振安定時間(水晶) 外部クロック出力安定遅延時間 t DEXT 901 26. 電気的特性 (2)制御信号タイミング 表 2 6.61 に制御信号タイミングを示します。サブクロック(φ=32. 768kHz)で動作可 能な外部割込みは、NMI、IRQ0〜2、6、7 のみです。 表 26.61 制御信号タイミング ―暫定― 条件 A: V CC =5.0V±10%、V SS=0V、φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V SS=0V、φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V〜3.6V、V SS=0V、φ=32.768kHz、2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min max min max 単位 測定条件 図 26.8 RES セットアップ時間 t RESS 300 ― 200 ― 200 ― ns RES パルス幅 t RESW 20 ― 20 ― 20 ― t cyc NMI セットアップ時間(NMI) t NMIS 250 ― 150 ― 150 ― ns NMI ホールド時間 t NMIH 10 ― 10 ― 10 ― ns t NMIW 200 ― 200 ― 200 ― ns t IRQS 250 ― 150 ― 150 ― ns t IRQH 10 ― 10 ― 10 ― ns t IRQW 200 ― 200 ― 200 ― ns (NMI) NMI パルス幅(NMI) (ソフトウェアスタンバイモード からの復帰時) IRQ セットアップ時間 (IRQ7 〜IRQ0) IRQ ホールド時間 (IRQ7 〜IRQ0) IRQ パルス幅 (IRQ7、IRQ6、IRQ2〜IRQ0) (ソフトウェアスタンバイモード からの復帰時) 902 図 26.9 26. 電気的特性 (3)バスタイミング 表 2 6.62 にバスタイミングを示します。サブクロック(φ=32. 768kHz)動作では、外 部拡張モードの動作は保証されません。 表 26.62 バスタイミング ―暫定― 条件 A: V CC =5.0V±10%、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、V SS=0V、φ=2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V〜3.6V、V SS=0V、φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 記号 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz min max min Max min max 単位 測定条件 アドレス遅延時間 t AD ― 40 ― 30 ― 20 ns 図 26.10 アドレスセットアップ時間 t AS 0.5×tcyc - 30 ― 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― ns 〜 アドレスホールド時間 t AH 0.5×tcyc - 20 ― 0.5×tcyc - 15 ― 0.5×tcyc - 10 ― ns 図 26.14 CS 遅延時間(IOS) t CSD ― 40 ― 30 ― 20 ns AS 遅延時間 t ASD ― 60 ― 45 ― 30 ns RD 遅延時間 1 t RSD1 ― 60 ― 45 ― 30 ns RD 遅延時間 2 t RSD2 ― 60 ― 45 ― 30 ns リードデータセットアップ時間 t RDS 35 ― 20 ― 15 ― ns リードデータホールド時間 t RDH 0 ― 0 ― 0 ― ns リードデータアクセス時間 1 t ACC1 ― 1.0×tcyc - 60 ― 1.0×tcyc - 40 ― 1.0×tcyc - 30 ns リードデータアクセス時間 2 t ACC2 ― 1.5×tcyc - 50 ― 1.5×tcyc - 35 ― 1.5×tcyc - 25 ns リードデータアクセス時間 3 t ACC3 ― 2.0×tcyc - 60 ― 2.0×tcyc - 40 ― 2.0×tcyc - 30 ns リードデータアクセス時間 4 t ACC4 ― 2.5×tcyc - 50 ― 2.5×tcyc - 35 ― 2.5×tcyc - 25 ns リードデータアクセス時間 5 t ACC5 ― 3.0×tcyc - 60 ― 3.0×tcyc - 40 ― 3.0×tcyc - 30 ns WR 遅延時間 1 t WRD1 ― 60 ― 45 ― 30 ns WR 遅延時間 2 t WRD2 ― 60 ― 45 ― 30 ns WR パルス幅 1 t WSW1 1.0×tcyc - 40 ― 1.0×tcyc - 30 ― 1.0×tcyc - 20 ― ns WR パルス幅 2 t WSW2 1.5×tcyc - 40 ― 1.5×tcyc - 30 ― 1.5×tcyc - 20 ― ns ライトデータ遅延時間 t WDD ― 60 ― 45 ― 30 ns ライトデータセットアップ時間 t WDS 0 ― 0 ― 0 ― ns ライトデータホールド時間 t WDH 20 ― 15 ― 10 ― ns WAIT セットアップ時間 t WTS 60 ― 45 ― 30 ― ns WAIT ホールド時間 t WTH 10 ― 5 ― 5 ― ns 903 26. 電気的特性 (4)内蔵周辺モジュールタイミング 表 2 6.63 に内 蔵周辺 モジ ュー ルタイ ミン グを示 しま す。サ ブク ロッ ク動作 時( φ= 32. 768kHz)に動 作可能な内蔵 周辺モジュール は、I/O ポート 、外部割込み (NMI、IR Q0 〜2、6、7)、ウォッチドッグタイマ、8 ビットタイマ(チャネル 0、1)のみです。 表 26.63 内蔵周辺モジュールタイミング ―暫定― 1 条件 A: V CC =5.0V±10%、V SS=0V、φ=32.768kHz* 、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC=4.0V〜5.5V、V SS=0V、φ=32.768kHz*1、2MHz〜最大動作周波数 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V〜3.6V、V SS=0V、φ=32.768kHz*1、2MHz〜最大動作周波数 Ta= -20〜+75℃ 項 目 記号 条件 A 20MHz min max min max min max ― 100 ― 50 ― 50 入力データセットアップ時間 t PRS 50 ― 30 ― 30 ― 入力データホールド時間 t PRH 50 ― 30 ― 30 ― タイマ出力遅延時間 t FTOD ― 100 ― 50 ― 50 タイマ入力セットアップ時間 t FTIS 50 ― 30 ― 30 ― 出力データ遅延時間 ポート TMR 条件 B 16MHz t PWD I/O FRT 条件 C 10MHz タイマクロック入力セットアップ時間 t FTCS 50 ― 30 ― 30 ― タイマクロック 単エッジ指定 t FTCWH 1.5 ― 1.5 ― 1.5 ― パルス幅 両エッジ指定 単位 測定条件 ns 図 26.15 ns 図 26.16 図 26.17 t cyc t FTCWL 2.5 ― 2.5 ― 2.5 ― タイマ出力遅延時間 t TMOD ― 100 ― 50 ― 50 タイマリセット入力セットアップ時間 t TMRS 50 ― 30 ― 30 ― 図 26.20 タイマクロック入力セットアップ時間 t TMCS 50 ― 30 ― 30 ― 図 26.19 ns 図 26.18 タイマクロック 単エッジ指定 t TMCWH 1.5 ― 1.5 ― 1.5 ― パルス幅 両エッジ指定 t TMCWL 2.5 ― 2.5 ― 2.5 ― t PWOD ― 100 ― 50 ― 50 ns 図 26.21 t Scyc 4 ― 4 ― 4 ― t cyc 図 26.22 6 ― 6 ― 6 ― 入力クロックパルス幅 t SCKW 0.4 0.6 0.4 0.6 0.4 0.6 t Scyc 入力クロック立ち上がり時間 t SCKr ― 1.5 ― 1.5 ― 1.5 t cyc 入力クロック立ち下がり時間 t SCKf ― 1.5 ― 1.5 ― 1.5 送信データ遅延時間(クロック同期) t TXD ― 100 ― 50 ― 50 受信データセットアップ時間 (クロック同期) t RXS 100 ― 50 ― 50 ― 受信データホールド時間 (クロック同期) t RXH 100 ― 50 ― 50 ― A/D 変換器 トリガ入力セットアップ時間 t TRGS 50 ― 30 ― 30 WDT RESO 出力遅延時間 t RESD ― 200 ― 120 RESO 出力パルス幅 t RESOW 132 ― 132 ― PWMX パルス出力遅延時間 SCI 入力クロック 調歩同期 サイクル クロック同期 【注】 904 t cyc ns 図 26.23 ― ns 図 26.24 ― 100 ns 図 26.25 132 ― t cyc *1 サブクロック動作時に使用可能な内蔵周辺モジュールのみ 26. 26.6.4 電気的特性 A/D 変換特性 A/D 変換特性を表 26.64、表 26.65 に示します。 表 26.64 A/D 変換特性(AN7〜AN0 入力:134/266 ステート変換) ―暫定― 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V〜3.6V、AVCC =2.7V〜3.6V、AVref=2.7V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ max min typ 10 変換時間* 3 max min 10 typ 単 位 max ビット 10 ― ― 13.4 ― ― 8.4 ― ― 6.7 μs アナログ入力容量 ― ― 20 ― ― 20 ― ― 20 pF 許容信号源 ― ― 5 ― ― 10* 1 ― ― 10* 1 kΩ 5* 2 インピーダンス 5* 2 非直線性誤差 ― ― ±7.0 ― ― ±3.0 ― ― ±3.0 LSB オフセット誤差 ― ― ±7.5 ― ― ±3.5 ― ― ±3.5 LSB フルスケール誤差 ― ― ±7.5 ― ― ±3.5 ― ― ±3.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±8.0 ― ― ±4.0 ― ― ±4.0 LSB *1 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) のとき 【注】 *2 変換時間<11.17 μ s(CKS=1 でφ>12MHz) のとき *3 シングルモードで最大動作周波数のとき 905 26. 電気的特性 表 26.65 A/D 変換特性(CIN15〜CIN0 入力:134/266 ステート変換) ―暫定― 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref=4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC=3 .0V 〜3 .6V *4、A V CC=3 .0V 〜3 .6V *4、A V ref=3 .0V 〜A V CC*4、V SS=A V SS=0 V 、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ max min typ 10 変換時間* 3 max min 10 typ 単 位 max ビット 10 ― ― 13.4 ― ― 8.4 ― ― 6.7 μs アナログ入力容量 ― ― 20 ― ― 20 ― ― 20 pF 許容信号源 ― ― 5 ― ― 10* 1 ― ― 10* 1 kΩ 5* 2 インピーダンス 5* 2 非直線性誤差 ― ― ±11.0 ― ― ±5.0 ― ― ±5.0 LSB オフセット誤差 ― ― ±11.5 ― ― ±5.5 ― ― ±5.5 LSB フルスケール誤差 ― ― ±11.5 ― ― ±5.5 ― ― ±5.5 LSB 量子化誤差 ― ― ±0.5 ― ― ±0.5 ― ― ±0.5 LSB 絶対精度 ― ― ±12.0 ― ― ±6.0 ― ― ±6.0 LSB *1 変換時間≧11.17 μ s(CKS=1 でφ≦12MHz、または CKS=0) のとき 【注】 *2 変換時間<11.17 μ s(CKS=1 でφ>12MHz) のとき *3 シングルモードで最大動作周波数のとき *4 CIN を使用する場合は、VCC=3.0V〜3.6V、AVCC =3.0V〜3.6V、AVref=3.0V〜3.6V の範 囲としてください。 906 26. 26.6.5 電気的特性 D/A 変換特性 D/A 変換特性を表 26.66 に示します。 表 26.66 D/A 変換特性 ―暫定― 条件 A: V CC =5.0V±10%、AVCC =5.0V±10%、AVref=4.5V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 B: V CC =4.0V〜5.5V、AVCC =4.0V〜5.5V、AVref =4.0V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 条件 C: V CC =2.7V〜3.6V、AVCC =2.7V〜3.6V、AVref=2.7V〜AVCC 、V SS=AVSS=0V、 φ=2MHz〜最大動作周波数、Ta= -20〜+75℃ 項 目 min 分解能 条件 C 条件 B 条件 A 10MHz 16MHz 20MHz typ max min 8 変換時間 負荷容量 20pF ― 絶対精度 負荷抵抗 2M Ω ― 負荷抵抗 4M Ω ― ― max min 8 10 ±2.0 ±3.0 ― typ ±2.0 ― ― ― ― 10 ±1.0 ― ― ― ― ビット 10 ±1.0 ±1.5 ― 位 max 8 ±1.0 ±1.5 ― typ 単 μs LSB ±1.0 907 26. 電気的特性 26.6.6 フラッシュメモリ特性 表 26.67 にフラッシュメモリ特性を示します。 表 26.67 フラッシュメモリ特性(書き込み/消去時の動作範囲) 5V 版条件: V CC =4.0V〜5.5V、V SS=0V、 Ta= -20〜+75℃(通常仕様品)、Ta= -40〜+85℃(広温度範囲仕様品) 3V 版条件: V CC =3.0V〜3.6V、V SS=0V、Ta= -20〜+75℃ 項目 書き込み時間* 1* 2* 4 記号 min. typ. max. 単位 tP ― 10 200 ms/ 測定条件 128 バイト 1 3 消去時間* * * 6 tE ― 100 NWEC ― ― 100 回 書き込み時 SWE-bit セット後のウェイト時間* 1 x 1 ― ― μs PSU-bit セット後のウェイト時間* 1 y 50 ― ― μs z1 28 30 32 μs 1≦n≦6 z2 198 200 202 μs 7≦n≦1000 z3 8 10 12 μs 追加書き込み α 5 ― ― μs β 5 ― ― μs PV-bit セット後のウェイト時間* 1 γ 4 ― ― μs ダミーライト後のウェイト時間* 1 ε 2 ― ― μs η 2 ― ― μs θ 100 ― ― μs 最大書き込み回数* 1* 4* 5 N ― ― 1000 回 SWE-bit セット後のウェイト時間* 1 x 1 ― ― μs ESU-bit セット後のウェイト時間* 1 y 100 ― ― μs z 10 ― 100 ms E-bit クリア後のウェイト時間* 1 α 10 ― ― μs ESU-bit クリア後のウェイト時間* 1 β 10 ― ― μs γ 20 ― ― μs ε 2 ― ― μs EV-bit クリア後のウェイト時間* 1 η 4 ― ― μs SWE-bit クリア後のウェイト時間* 1 θ 100 ― ― μs 最大消去回数* 1* 6* 7 N ― ― 120 回 書き替え回数 1 P-bit セット後のウェイト時間* * 4 P-bit クリア後のウェイト時間* 1 PSU-bit クリア後のウェイト時間* 1 PV-bit クリア後のウェイト時間* 1 SWE-bit クリア後のウェイト時間* 消去時 1 E-bit セット後のウェイト時間* * 1 6 EV-bit セット後のウェイト時間* 1 H'FFダミーライト後のウェイト時間* 908 1 1200 ms/ブロック 26. 【注】 電気的特性 *1 各時間の設定は、書き込み/消去のアルゴリズムに従い行ってください。 * 2 128 バイト単位の書き込み時間(フラッ シュメモリコントロールレジスタ(FL MCR 1) の P-bit をセットしているトータル期間を示します。プログラムベリファイ時間は含ま れません。) *3 1 ブロックを消去する時間(フラッシュメモリコントロールレジスタ(FLMCR1)の E-bit をセ ット して いる トータ ル期 間を 示し ます。 イレ ース ベリ ファイ 時間 は含 まれ ませ ん。) *4 書き込み時間の最大値(tP(max)) tP(max)=(P-bit セット後のウェイト時間(z1)+(z3))×6 + P-bit セット後のウェイト時間(z2)×((N)- 6) *5 最大書き込み回数(N)は、実際の(z1、z2、z3)の設定値に合わせ、書き込み時間の 最大値(tP(max))以下となるよう設定してください。また、P-bit セット後のウェイ ト時間(z1、z2、z3)は、下記のように書き込み回数(n)の値によって切り替えてく ださい。 書き込み回数 n 1≦n≦6 z1=30 μ s、z3=10 μ s 7≦n≦1000 z2=200 μ s *6 消去時間の最大値(tE(max)) tE(max)=E-bit セット後のウェイト時間(z)×最大消去回数(N) * 7 最大消去回数(N)は、実際の(z )の 設定値に合わせ、消去時間の最大値(t E(m ax)) 以下となるよう設定してください。 909 26. 電気的特性 26.6.7 使用上の注意 (1)F -ZTAT 版とマスク R OM 版は、本マニュアルに記載の電気的特性を満足しています が、製造プロセスの相違、内蔵 ROM の相違、レイアウトパターンの相違などにより、 電気的特性の実力値や動作マージン、ノイズマージンなどは異なる場合があります。 F-ZTAT 版を使用してシステムの評価試験を行う場合には、マスク ROM 版への切り替 え時にマスク ROM 版についても同等の評価試験を行ってください。 (2)内部降圧品 H8S/2144 FZTAT の A マスク品(HD64F2144A)、H8S/2144 および H8S/2143 のマスク ROM 品(HD6432144S、HD6432143S)は、マイコン内部の電源電圧を自動的に最適な レベルに電圧降下するための内部降圧回路を内蔵しています。 この内部降圧端子(VCL 端子)と VSS 端子間には、内部電圧安定用のコンデンサ(0.47 μ F を 1 個または 2 個並列)を接続する必要があります。 外付けコンデンサ接続方法は、図 26.3 を参照してください。 5V 品/4V 品では、内部降圧製品の VCL 端子には VCC 電源を接続しないでください。 (VCC1 端子には従来どおり、VCC 電源を接続してください。) また、低電圧品(3V 品)では、VC L 端子を VC C 1 端子とともにシステムの電源に接 続してください。 なお、内部降圧非対応の F -ZTAT 版から内部降圧対応のマスク R OM 版に切り替えを行 う場合には、VCL 端子は、内部降圧非対応品の VCC2 端子と同じピン配置になります。こ のため、基板パターンを設計する場合には切り替え前後の回路の違いを考慮する必要があ りますので、ご注意願います。 910 26. 電気的特性 26.7 動作タイミング 26.7.1 AC 特性測定条件 VCC RL RL=2.4kΩ RH=12kΩ LSI出力端子 C C=30pF:全出力ポート RH 入出力タイミング測定レベル ・Lowレベル :0.8V ・Highレベル :2.0V 図 26.4 出力負荷回路 26.7.2 クロックタイミング tcyc tCH tCf φ tCL tCr 図 26.5 システムクロックタイミング EXTAL tDEXT tDEXT VCC STBY tOSC1 tOSC1 RES φ 図 26.6 発振安定時間タイミング 911 26. 電気的特性 26.7.3 制御信号タイミング φ NMI IRQi ( i = 0, 1, 2, 6, 7 ) tOSC2 図 26.7 発振安定時間タイミング(ソフトウェアスタンバイからの復帰) φ tRESS tRESS RES tRESW 図 26.8 リセット入力タイミング φ tNMIS tNMIH NMI tNMIW IRQi (i = 7〜0) tIRQW tIRQS IRQ エッジ入力 tIRQS IRQ レベル入力 図 26.9 割込み入力タイミング 912 tIRQH 26. 26.7.4 電気的特性 バスタイミング T1 T2 φ tAD A23〜A0、IOS* tCSD tAS tAH tASD tASD AS* tRSD1 RD (リード時) tRSD2 tACC2 tAS tRDS tRDH tACC3 D15〜D0 (リード時) tWRD2 HWR、LWR (ライト時) tWRD2 tAH tAS tWDD tWSW1 tWDH D15〜D0 (ライト時) 【注】* AS/IOSは同一端子です。SYSCRのIOSEビットにより機能を選択します。 図 26.10 基本バスタイミング/2 ステートアクセス 913 26. 電気的特性 T1 T2 T3 φ tAD A23〜A0、IOS* tCSD tAS tAH tASD tASD AS* tRSD1 tRSD2 tACC4 RD (リード時) tAS tRDS tRDH tACC5 D15〜D0 (リード時) tWRD1 tWRD2 HWR、LWR (ライト時) tAH tWDD tWDS tWSW2 tWDH D15〜D0 (ライト時) 【注】* AS/IOSは同一端子です。SYSCRのIOSEビットにより機能を選択します。 図 26.11 基本バスタイミング/3 ステートアクセス 914 26. T1 T2 Tw tWTS tWTH tWTS tWTH 電気的特性 T3 φ A23〜A0、IOS* AS* RD (リード時) D15〜D0 (リード時) HWR、LWR (ライト時) D15〜D0 (ライト時) WAIT 【注】* AS/IOSは同一端子です。SYSCRのIOSEビットにより機能を選択します。 図 26.12 基本バスタイミング/3 ステートアクセス 1 ウェイト T1 T2またはT3 T1 T2 φ tAD A23〜A0、IOS* tAS tAH tASD tASD AS* tRSD2 RD (リード時) tACC3 tRDS tRDH D15〜D0 (リード時) 【注】* AS/IOSは同一端子です。SYSCRのIOSEビットにより機能を選択します。 図 26.13 バースト ROM アクセスタイミング/2 ステートアクセス 915 26. 電気的特性 T1 T2またはT3 T1 φ tAD A23〜A0、IOS* AS * tRSD2 RD (リード時) tACC1 tRDS tRDH D15〜D0 (リード時) 【注】* AS/IOSは同一端子です。SYSCRのIOSEビットにより機能を選択します。 図 26.14 バースト ROM アクセスタイミング/1 ステートアクセス 26.7.5 内蔵周辺モジュールタイミング T2 T1 φ tPRS tPRH ポート1〜9、A、B (リード) tPWD ポート1〜6、8、9、A、B (ライト) 図 26.15 I/O ポート入出力タイミング 916 26. 電気的特性 φ tFTOD FTOA、FTOB tFTIS FTIA、FTIB、 FTIC、FTID 図 26.16 FRT 入出力タイミング φ tFTCS FTCI tFTCWL tFTCWH 図 26.17 FRT クロック入力タイミング φ tTMOD TMO0、TMO1 TMOX 図 26.18 8 ビットタイマ出力タイミング φ tTMCS tTMCS TMCI0、TMCI1 TMIX、TMIY tTMCWL tTMCWH 図 26.19 8 ビットタイマクロック入力タイミング 917 26. 電気的特性 φ tTMRS TMRI0、TMRI1 TMIX、TMIY 図 26.20 8 ビットタイマリセット入力タイミング φ tPWOD PW15〜PW0、 PWX1〜PWX0 図 26.21 PWM、PWMX 出力タイミング tSCKW tSCKr SCK0〜SCK2 tScyc 図 26.22 SCK クロック入力タイミング SCK0〜SCK2 tTXD TxD0〜TxD2 (送信データ) tRXS tRXH RxD0〜RxD2 (受信データ) 図 26.23 SCI 入出力タイミング/クロック同期式モード φ tTRGS ADTRG 図 26.24 A/D 変換器外部トリガ入力タイミング 918 tSCKf 26. 電気的特性 φ tRESD tRESD RESO tRESOW 図 26.25 WDT 出力タイミング(RESO) (1) ホストインタフェースリードタイミング CS/HA0 tHAR tHRPW tHRA IOR tHRD HDB7〜HDB0 tHRF 有効データ tHIRQ HIRQi* (i=1、11、12、3、4) 【注】* 立ち上がりエッジタイミングはポート4、ポートB出力タイミングと同じです。 図25.14を参照してください。 (2) ホストインタフェースライトタイミング CS/HA0 tHAW tHWPW tHWA IOW tHDW tHWD HDB7〜HDB0 tHGA GA20 図 26.26 ホストインタフェースタイミング 919 26. 電気的特性 (1)受信時 φ tKBIS tKBIH KCLK/KD*1 (2)送信時(a) T1 T2 φ tKBOD KCLK/KD*1 送信時(b) KCLK/KD*1 tKBF 【注】 ここに示すφは、動作モードがアクティブで中速モードのとき、1/Nに分周された クロックです。 *1 KCLK:PS2AC〜PS2CC KD :PS2AD〜PS2CD 図 26.27 キーボードバッファコントローラタイミング VIH SDA0 〜 SDA1 VIL tBUF tSTAH SCL0 〜 SCL1 P* tSCLH S* tSf tof tSP tSTAS Sr* tSCLL tSCL tSr P* tSDAS tSDAH 【注】 * S、P、Srはそれぞれ以下の条件を示します。 S :開始条件 P :停止条件 Sr:再送「開始」条件 図 26.28 I 2 C バスインタフェース入出力タイミング【オプション】 920 tSTOS 付録 付録 A. B. C. D. 目次 命令 ....................................................................................................................................... 923 A.1 命令セット一覧...................................................................................... 923 A.2 命令コード一覧...................................................................................... 934 A.3 オペレーションコードマップ.................................................................. 944 A.4 命令実行ステート数 ............................................................................... 948 A.5 命令実行中のバス状態............................................................................ 958 内部 I/O レジスタ .................................................................................................................... 968 B.1 アドレス一覧 ......................................................................................... 968 B.2 レジスタ選択条件 .................................................................................. 974 B.3 機能一覧................................................................................................ 981 I/O ポートのブロック図 ..........................................................................................................1060 C.1 ポート 1 ブロック図 ..............................................................................1060 C.2 ポート 2 ブロック図 ..............................................................................1061 C.3 ポート 3 ブロック図 ..............................................................................1064 C.4 ポート 4 ブロック図 ..............................................................................1065 C.5 ポート 5 ブロック図 ..............................................................................1072 C.6 ポート 6 ブロック図 ..............................................................................1075 C.7 ポート 7 ブロック図 ..............................................................................1080 C.8 ポート 8 ブロック図 ..............................................................................1081 C.9 ポート 9 ブロック図 ..............................................................................1087 C.10 ポート A ブロック図..............................................................................1092 C.11 ポート B ブロック図..............................................................................1095 端子状態................................................................................................................................1098 D.1 E. 各処理状態におけるポートの状態 ..........................................................1098 ハードウェアスタンバイモード遷移/復帰時のタイミングについて .........................................1100 E.1 ハードウェアスタンバイモードの遷移タイミング...................................1100 E.2 ハードウェアスタンバイモードからの復帰タイミング ............................1100 付 F. 録 ROM 発注手順 .......................................................................................................................1101 F.1 ROM 書き換え品開発の流れ(発注手順) ..............................................1101 F.2 ROM 発注時の注意事項 .........................................................................1102 G. 型名一覧................................................................................................................................1103 H. 外形寸法図 ............................................................................................................................1105 922 付 録 A. 命令 A.1 命令セット一覧 《オペレーションの記号》 Rd 汎用レジスタ(デスティネーション側)* 1 Rs 汎用レジスタ(ソース側)* 1 Rn 汎用レジスタ* 1 ERn 汎用レジスタ(32 ビットレジスタ) MAC 積和レジスタ(32 ビットレジスタ)* 2 (EAd) デスティネーションオペランド (EAs) ソースオペランド EXR エクステンドレジスタ CCR コンディションコードレジスタ N CCR の N(ネガティブ)フラグ Z CCR の Z(ゼロ)フラグ V CCR の V(オーバフロー)フラグ C CCR の C(キャリ)フラグ PC プログラムカウンタ SP スタックポインタ #IMM イミディエイトデータ disp ディスプレースメント + 加算 − 減算 × 乗算 ÷ 除算 ∧ 論理積 ∨ 論理和 ⊕ 排他的論理和 → 左辺のオペランドから右辺のオペランドへの転送、または左辺の状 態から右辺の状態への遷移 ( 〜 反転論理(論理的補数) )<> オペランドの内容 :8/:16/:24/:32 【注】 8/16/24/32 ビット長 *1 汎用レジスタは、8 ビット(R0H〜R7H、R0L〜R7L)、16 ビット(R0〜R7、E0〜E7) または 32 ビット(ER0〜ER7)です。 *2 MAC レジスタは本 LSI では使用できません。 923 付 録 《コンディションコード》 記 号 内 容 実行結果にしたがって変化することを表します。 924 * 不確定であることを表します(値を保証しません)。 0 常に 0 にクリアされることを表します 1 常に 1 にセットされることを表します。 − 実行結果に影響を受けないことを表します。 付 録 表 A.1 命令セット一覧 (1)データ転送命令 MOV LDM*4 MOV.B #xx:8,Rd MOV.B Rs,Rd MOV.B @ERs,Rd MOV.B @(d:16,ERs),Rd MOV.B @(d:32,ERs),Rd MOV.B @ERs+,Rd MOV.B @aa:8,Rd MOV.B @aa:16,Rd MOV.B @aa:32,Rd MOV.B Rs,@ERd MOV.B Rs,@(d:16,ERd) MOV.B Rs,@(d:32,ERd) MOV.B Rs,@-ERd MOV.B Rs,@aa:8 MOV.B Rs,@aa:16 MOV.B Rs,@aa:32 MOV.W #xx:16,Rd MOV.W Rs,Rd MOV.W @ERs,Rd MOV.W @(d:16,ERs),Rd MOV.W @(d:32,ERs),Rd MOV.W @ERs+,Rd MOV.W @aa:16,Rd MOV.W @aa:32,Rd MOV.W Rs,@ERd MOV.W Rs,@(d:16,ERd) MOV.W Rs,@(d:32,ERd) MOV.W Rs,@-ERd MOV.W Rs,@aa:16 MOV.W Rs,@aa:32 MOV.L #xx:32,ERd MOV.L ERs,ERd MOV.L @ERs,ERd MOV.L @(d:16,ERs),ERd MOV.L @(d:32,ERs),ERd MOV.L @ERs+,ERd MOV.L @aa:16,ERd MOV.L @aa:32,ERd MOV.L ERs,@ERd MOV.L ERs,@(d:16,ERd) MOV.L ERs,@(d:32,ERd) MOV.L ERs,@-ERd MOV.L ERs,@aa:16 MOV.L ERs,@aa:32 POP.W Rn POP.L ERn PUSH.W Rn PUSH.L ERn LDM @SP+,(ERm-ERn) B B B B B B B B B B B B B B B B W W W W W W W W W W W W W W L L L L L L L L L L L L L L W L W L L STM*4 STM (ERm-ERn),@-SP L MOVFPE MOVTPE MOVFPE @aa:16,Rd MOVTPE Rs,@aa:16 POP PUSH ― @@aa @(d,PC) 2 2 2 4 8 2 2 4 6 2 4 8 2 2 4 6 4 2 2 4 8 2 4 6 2 4 8 2 4 6 6 2 4 6 10 4 6 8 4 6 10 4 本LSIでは使用できません。 コンディション コード オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) 6 8 2 4 2 4 4 4 I #xx:8→Rd8 Rs8→Rd8 @ERs→Rd8 @(d:16,ERs)→Rd8 @(d:32,ERs)→Rd8 @ERs→Rd8,ERs32+1→ERs32 @aa:8→Rd8 @aa:16→Rd8 @aa:32→Rd8 Rs8→@ERd Rs8→@(d:16,ERd) Rs8→@(d:32,ERd) ERd32-1→ERd32,Rs8→@ERd Rs8→@aa:8 Rs8→@aa:16 Rs8→@aa:32 #xx:16→Rd16 Rs16→Rd16 @ERs→Rd16 @(d:16,ERs)→Rd16 @(d:32,ERs)→Rd16 @ERs→Rd16,ERs32+2→ERs32 @aa:16→Rd16 @aa:32→Rd16 Rs16→@ERd Rs16→@(d:16,ERd) Rs16→@(d:32,ERd) ERd32-2→ERd32,Rs16→@ERd Rs16→@aa:16 Rs16→@aa:32 #xx:32→ERd32 ERs32→ERd32 @ERs→ERd32 @(d:16,ERs)→ERd32 @(d:32,ERs)→ERd32 @ERs→ERd32,ERs32+4→ERs32 @aa:16→ERd32 @aa:32→ERd32 ERs32→@ERd ERs32→@(d:16,ERd) ERs32→@(d:32,ERd) ERd32-4→ERd32,ERs32→@ERd ERs32→@aa:16 ERs32→@aa:32 @SP→Rn16,SP+2→SP @SP→ERn32,SP+4→SP SP-2→SP,Rn16→@SP SP-4→SP,ERn32→@SP (@SP→ERn32,SP+4→SP) 復帰本数分繰り返し (SP-4→SP,ERn32→@SP) 退避本数分繰り返し H N Z V C 実行 ステート数*1 ノーマル アドバンスト ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 1 1 2 3 5 3 2 3 4 2 3 5 3 2 3 4 2 1 2 3 5 3 3 4 2 3 5 3 3 4 3 1 4 5 7 5 5 6 4 5 7 5 5 6 3 5 3 5 7/9/11[1] ― ― ― ― ― ― 7/9/11[1] ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ― [2] [2] 925 付 録 (2)算術演算命令 ADD ADD.B #xx:8,Rd ADD.B Rs,Rd ADD.W #xx:16,Rd ADD.W Rs,Rd ADD.L #xx:32,ERd ADD.L ERs,ERd ADDX ADDX #xx:8,Rd ADDX Rs,Rd ADDS ADDS #1,ERd ADDS #2,ERd ADDS #4,ERd INC INC.B Rd INC.W #1,Rd INC.W #2,Rd INC.L #1,ERd INC.L #2,ERd DAA DAA Rd SUB SUB.B Rs,Rd SUB.W #xx:16,Rd SUB.W Rs,Rd SUB.L #xx:32,ERd SUB.L ERs,ERd SUBX SUBX #xx:8,Rd SUBX Rs,Rd SUBS SUBS #1,ERd SUBS #2,ERd SUBS #4,ERd DEC DEC.B Rd DEC.W #1,Rd DEC.W #2,Rd DEC.L #1,ERd DEC.L #2,ERd DAS DAS Rd MULXU MULXU.B Rs,Rd MULXU.W Rs,ERd MULXS MULXS.B Rs,Rd MULXS.W Rs,ERd DIVXU DIVXU.B Rs,Rd B B W W L L B B L L L B W W L L B B W W L L B B L L L B W W L L B B W B W B 2 ― @@aa @(d,PC) 2 Rd8+Rs8→Rd8 Rd16+#xx:16→Rd16 2 Rd16+Rs16→Rd16 6 ERd32+#xx:32→ERd32 2 ERd32+ERs32→ERd32 Rd8+#xx:8+C→Rd8 2 2 2 2 2 2 2 2 2 2 2 2 Rd8+Rs8+C→Rd8 ERd32+1→ERd32 ERd32+2→ERd32 ERd32+4→ERd32 Rd8+1→Rd8 Rd16+1→Rd16 Rd16+2→Rd16 ERd32+1→ERd32 ERd32+2→ERd32 Rd8 10進補正→Rd8 Rd8-Rs8→Rd8 4 Rd16-#xx:16→Rd16 2 Rd16-Rs16→Rd16 ERd32-#xx:32→ERd32 ERd32-ERs32→ERd32 6 2 2 Rd8-#xx:8-C→Rd8 2 2 2 2 2 2 2 2 2 2 2 2 4 4 2 Rd8-Rs8-C→Rd8 ERd32-1→ERd32 ERd32-2→ERd32 ERd32-4→ERd32 Rd8-1→Rd8 Rd16-1→Rd16 Rd16-2→Rd16 ERd32-1→ERd32 ERd32-2→ERd32 Rd8 10進補正→Rd8 Rd8×Rs8→Rd16(符号なし乗算) Rd16×Rs16→ERd32(符号なし乗算) Rd8×Rs8→Rd16(符号付き乗算) Rd16×Rs16→ERd32(符号付き乗算) Rd16÷Rs8→Rd16 (RdH:余り、RdL:商) (符号なし除算) ERd32÷Rs16→ERd32 (Ed:余り、Rd:商) (符号なし除算) H N Z V C ― ― ―[3] ―[3] ―[4] ―[4] [5] ― [5] ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― * * ― ―[3] ―[3] ―[4] ―[4] [5] ― [5] ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― * ― * ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― [7]― ― ―[6] 実行 ステート数*1 ノーマル アドバンスト ― ― ― ― ― ― ― ― ― ― ― ― ― ― 1 1 2 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 3 1 1 1 1 1 1 1 1 1 1 1 1 12 20 13 21 12 [7]― ― ― ―[6] 20 ― ― ― ― ― ― ― ― DIVXU.W Rs,ERd W 2 DIVXS.B Rs,Rd B 4 Rd16÷Rs8→Rd16 (RdH:余り、RdL:商) (符号付き除算) [7]― ― ― ―[8] 13 DIVXS.W Rs,ERd W 4 [7]― ― ― ―[8] 21 CMP.B #xx:8,Rd CMP.B Rs,Rd CMP.W #xx:16,Rd CMP.W Rs,Rd CMP.L #xx:32,ERd CMP.L ERs,ERd NEG.B Rd NEG.W Rd NEG.L ERd EXTU.W Rd EXTU.L ERd EXTS.W Rd B B W W L L B W L W L W ERd32÷Rs16→ERd32 (Ed:余り、Rd:商) (符号付き除算) Rd8-#xx:8 Rd8-Rs8 Rd16-#xx:16 Rd16-Rs16 ERd32-#xx:32 ERd32-ERs32 ― ― ―[3] ―[3] ―[4] ―[4] ― ― ― ― ― 0 ― ― 0 ― ― 0 ― 0 ― 0 ― 1 1 2 1 3 1 1 1 1 1 1 1 EXTS.L ERd L ― ― 0 ― 1 TAS TAS @ERd*3 B ― ― 0 ― 4 MAC MAC @ERn+,@ERm+ DIVXS CMP NEG EXTU EXTS 2 2 4 2 6 2 2 2 2 2 2 2 0-Rd8→Rd8 0-Rd16→Rd16 0-ERd32→ERd32 2 4 CLRMAC CLRMAC LDMAC LDMAC ERs,MACH LDMAC ERs,MACL STMAC STMAC MACH,ERd STMAC MACL,ERd 926 I Rd8+#xx:8→Rd8 4 コンディション コード オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) 本LSIでは使用できません。 0→(<ビット15〜8> of Rd16) 0→(<ビット31〜16> of ERd32) (<ビット7> of Rd16)→ (<ビット15〜8> of Rd16) (<ビット15> of ERd32)→ (<ビット31〜16> of ERd32) @ERd-0→CCRセット, (1)→ (<ビット7> of @ERd) [2] 付 録 (3)論理演算命令 AND OR XOR NOT AND.B #xx:8,Rd AND.B Rs,Rd AND.W #xx:16,Rd AND.W Rs,Rd AND.L #xx:32,ERd AND.L ERs,ERd OR.B #xx:8,Rd OR.B Rs,Rd OR.W #xx:16,Rd OR.W Rs,Rd OR.L #xx:32,ERd OR.L ERs,ERd XOR.B #xx:8,Rd XOR.B Rs,Rd XOR.W #xx:16,Rd XOR.W Rs,Rd XOR.L #xx:32,ERd XOR.L ERs,ERd NOT.B Rd NOT.W Rd NOT.L ERd B B W W L L B B W W L L B B W W L L B W L 2 2 4 2 6 4 2 2 4 2 6 4 2 2 4 2 6 4 2 2 2 コンディション コード ― @@aa @(d,PC) オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) I Rd8∧#xx:8→Rd8 Rd8∧Rs8→Rd8 Rd16∧#xx:16→Rd16 Rd16∧Rs16→Rd16 ERd32∧#xx:32→ERd32 ERd32∧ERs32→ERd32 Rd8∨#xx:8→Rd8 Rd8∨Rs8→Rd8 Rd16∨#xx:16→Rd16 Rd16∨Rs16→Rd16 ERd32∨#xx:32→ERd32 ERd32∨ERs32→ERd32 Rd8⊕#xx:8→Rd8 Rd8⊕Rs8→Rd8 Rd16⊕#xx:16→Rd16 Rd16⊕Rs16→Rd16 ERd32⊕#xx:32→ERd32 ERd32⊕ERs32→ERd32 〜Rd8→Rd8 〜Rd16→Rd16 〜ERd32→ERd32 ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― H N Z V C ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 実行 ステート数*1 ノーマル アドバンスト 1 1 2 1 3 2 1 1 2 1 3 2 1 1 2 1 3 2 1 1 1 927 付 録 (4)シフト命令 SHAL SHAL.B Rd SHAL.B #2,Rd SHAL.W Rd SHAL.W #2,Rd SHAL.L ERd SHAL.L #2,ERd SHAR SHAR.B Rd SHAR.B #2,Rd SHAR.W Rd SHAR.W #2,Rd SHAR.L ERd SHAR.L #2,ERd SHLL SHLL.B Rd SHLL.B #2,Rd SHLL.W Rd SHLL.W #2,Rd SHLL.L ERd SHLL.L #2,ERd SHLR SHLR.B Rd SHLR.B #2,Rd SHLR.W Rd SHLR.W #2,Rd SHLR.L ERd SHLR.L #2,ERd ROTXL ROTXL.B Rd ROTXL.B #2,Rd ROTXL.W Rd ROTXL.W #2,Rd ROTXL.L ERd ROTXL.L #2,ERd ROTXR ROTXR.B Rd ROTXR.B #2,Rd ROTXR.W Rd ROTXR.W #2,Rd ROTXR.L ERd ROTXR.L #2,ERd ROTL ROTL.B Rd ROTL.B #2,Rd ROTL.W Rd ROTL.W #2,Rd ROTL.L ERd ROTL.L #2,ERd ROTR ROTR.B Rd ROTR.B #2,Rd ROTR.W Rd ROTR.W #2,Rd ROTR.L ERd ROTR.L #2,ERd 928 B B W W L L B B W W L L B B W W L L B B W W L L B B W W L L B B W W L L B B W W L L B B W W L L 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 コンディション コード ― @@aa @(d,PC) オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) I 0 C MSB LSB MSB LSB C C MSB LSB 0 0 MSB C MSB MSB C MSB MSB LSB C LSB LSB C LSB LSB C ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― H N Z V C ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 実行 ステート数*1 ノーマル アドバンスト 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 付 録 (5)ビット操作命令 BSET BSET #xx:3,Rd BSET #xx:3,@ERd BSET #xx:3,@aa:8 BSET #xx:3,@aa:16 BSET #xx:3,@aa:32 BSET Rn,Rd BSET Rn,@ERd BSET Rn,@aa:8 BSET Rn,@aa:16 BSET Rn,@aa:32 BCLR BCLR #xx:3,Rd BCLR #xx:3,@ERd BCLR #xx:3,@aa:8 BCLR #xx:3,@aa:16 BCLR #xx:3,@aa:32 BCLR Rn,Rd BCLR Rn,@ERd BCLR Rn,@aa:8 BCLR Rn,@aa:16 BCLR Rn,@aa:32 BNOT BNOT #xx:3,Rd BNOT #xx:3,@ERd BNOT #xx:3,@aa:8 BNOT #xx:3,@aa:16 BNOT #xx:3,@aa:32 BNOT Rn,Rd BNOT Rn,@ERd BNOT Rn,@aa:8 BNOT Rn,@aa:16 BNOT Rn,@aa:32 BTST BTST #xx:3,Rd BTST #xx:3,@ERd BTST #xx:3,@aa:8 BTST #xx:3,@aa:16 BTST #xx:3,@aa:32 BTST Rn,Rd BTST Rn,@ERd BTST Rn,@aa:8 BTST Rn,@aa:16 BTST Rn,@aa:32 BLD BLD #xx:3,Rd BLD #xx:3,@ERd BLD #xx:3,@aa:8 BLD #xx:3,@aa:16 BLD #xx:3,@aa:32 BILD BILD #xx:3,Rd BILD #xx:3,@ERd BILD #xx:3,@aa:8 BILD #xx:3,@aa:16 BILD #xx:3,@aa:32 BST BST #xx:3,Rd BST #xx:3,@ERd BST #xx:3,@aa:8 BST #xx:3,@aa:16 BST #xx:3,@aa:32 BIST BIST #xx:3,Rd BIST #xx:3,@ERd BIST #xx:3,@aa:8 BIST #xx:3,@aa:16 BIST #xx:3,@aa:32 BAND BAND #xx:3,Rd BAND #xx:3,@ERd BAND #xx:3,@aa:8 BAND #xx:3,@aa:16 BAND #xx:3,@aa:32 B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B コンディション コード 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 ― @@aa @(d,PC) オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) I ― ― ― ― ― ― ― ― ― ― ― (#xx:3 of Rd8)←0 ― (#xx:3 of @ERd)←0 ― (#xx:3 of @aa:8)←0 ― (#xx:3 of @aa:16)←0 ― (#xx:3 of @aa:32)←0 ― (Rn8 of Rd8)←0 ― (Rn8 of @ERd)←0 ― (Rn8 of @aa:8)←0 ― (Rn8 of @aa:16)←0 ― (Rn8 of @aa:32)←0 ― (#xx:3 of Rd8)← [〜(#xx:3 of Rd8)] ― (#xx:3 of @ERd)← [〜(#xx:3 of @ERd)] ― (#xx:3 of @aa:8)← [〜(#xx:3 of @aa:8)] (#xx:3 of @aa:16)←[〜(#xx:3 of @aa:16)] ― (#xx:3 of @aa:32)← [〜(#xx:3 of @aa:32)] ― ― (Rn8 of Rd8)← [〜(Rn8 of Rd8)] ― (Rn8 of @ERd)← [〜(Rn8 of @ERd)] ― (Rn8 of @aa:8)← [〜(Rn8 of @aa:8)] ― (Rn8 of @aa:16)← [〜(Rn8 of @aa:16)] ― (Rn8 of @aa:32)← [〜(Rn8 of @aa:32)] ― 〜(#xx:3 of Rd8)→Z ― 〜(#xx:3 of @ERd)→Z ― 〜(#xx:3 of @aa:8)→Z ― 〜(#xx:3 of @aa:16)→Z ― 〜(#xx:3 of @aa:32)→Z ― 〜(Rn8 of Rd8)→Z ― 〜(Rn8 of @ERd)→Z ― 〜(Rn8 of @aa:8)→Z ― 〜(Rn8 of @aa:16)→Z ― 〜(Rn8 of @aa:32)→Z ― (#xx:3 of Rd8)→C ― (#xx:3 of @ERd)→C ― (#xx:3 of @aa:8)→C ― (#xx:3 of @aa:16)→C ― (#xx:3 of @aa:32)→C ― 〜(#xx:3 of Rd8)→C ― 〜(#xx:3 of @ERd)→C ― 〜(#xx:3 of @aa:8)→C ― 〜(#xx:3 of @aa:16)→C ― 〜(#xx:3 of @aa:32)→C ― C→(#xx:3 of Rd8) ― C→(#xx:3 of @ERd) ― C→(#xx:3 of @aa:8) ― C→(#xx:3 of @aa:16) ― C→(#xx:3 of @aa:32) ― 〜C→(#xx:3 of Rd8) ― 〜C→(#xx:3 of @ERd) ― 〜C→(#xx:3 of @aa:8) ― 〜C→(#xx:3 of @aa:16) ― 〜C→(#xx:3 of @aa:32) ― C∧(#xx:3 of Rd8)→C ― C∧(#xx:3 of @ERd)→C ― C∧(#xx:3 of @aa:8)→C ― C∧(#xx:3 of @aa:16)→C ― C∧(#xx:3 of @aa:32)→C (#xx:3 of Rd8)←1 (#xx:3 of @ERd)←1 (#xx:3 of @aa:8)←1 (#xx:3 of @aa:16)←1 (#xx:3 of @aa:32)←1 (Rn8 of Rd8)←1 (Rn8 of @ERd)←1 (Rn8 of @aa:8)←1 (Rn8 of @aa:16)←1 (Rn8 of @aa:32)←1 H N Z V C ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 実行 ステート数*1 ノーマル アドバンスト 1 4 4 5 6 1 4 4 5 6 1 4 4 5 6 1 4 4 5 6 1 4 4 5 6 1 4 4 5 6 1 3 3 4 5 1 3 3 4 5 1 3 3 4 5 1 3 3 4 5 1 4 4 5 6 1 4 4 5 6 1 3 3 4 5 929 付 録 (5)ビット操作命令 BIAND BIAND #xx:3,Rd BIAND #xx:3,@ERd BIAND #xx:3,@aa:8 BIAND #xx:3,@aa:16 BIAND #xx:3,@aa:32 BOR BOR #xx:3,Rd BOR #xx:3,@ERd BOR #xx:3,@aa:8 BOR #xx:3,@aa:16 BOR #xx:3,@aa:32 BIOR BIOR #xx:3,Rd BIOR #xx:3,@ERd BIOR #xx:3,@aa:8 BIOR #xx:3,@aa:16 BIOR #xx:3,@aa:32 BXOR BXOR #xx:3,Rd BXOR #xx:3,@ERd BXOR #xx:3,@aa:8 BXOR #xx:3,@aa:16 BXOR #xx:3,@aa:32 BIXOR BIXOR #xx:3,Rd BIXOR #xx:3,@ERd BIXOR #xx:3,@aa:8 BIXOR #xx:3,@aa:16 BIXOR #xx:3,@aa:32 930 B B B B B B B B B B B B B B B B B B B B B B B B B コンディション コード 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 2 4 4 6 8 ― @@aa @(d,PC) オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) I C∧ [〜(#xx:3 of Rd8)]→C C∧ [〜(#xx:3 of @ERd)]→C C∧ [〜(#xx:3 of @aa:8)]→C C∧ [〜(#xx:3 of @aa:16)]→C C∧ [〜(#xx:3 of @aa:32)]→C C∨(#xx:3 of Rd8)→C C∨(#xx:3 of @ERd)→C C∨(#xx:3 of @aa:8)→C C∨(#xx:3 of @aa:16)→C C∨(#xx:3 of @aa:32)→C C∨ [〜(#xx:3 of Rd8)]→C C∨ [〜(#xx:3 of @ERd)]→C C∨ [〜(#xx:3 of @aa:8)]→C C∨ [〜(#xx:3 of @aa:16)]→C C∨ [〜(#xx:3 of @aa:32)]→C C⊕ (#xx:3 of Rd8)→C C⊕ (#xx:3 of @ERd)→C C⊕ (#xx:3 of @aa:8)→C C⊕ (#xx:3 of @aa:16)→C C⊕ (#xx:3 of @aa:32)→C C⊕ [〜(#xx:3 of Rd8)]→C C⊕ [〜(#xx:3 of @ERd)]→C C⊕ [〜(#xx:3 of @aa:8)]→C C⊕ [〜(#xx:3 of @aa:16)]→C C⊕ [〜(#xx:3 of @aa:32)]→C ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 実行 ステート数*1 H N Z V C ノーマル アドバンスト ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 1 3 3 4 5 1 3 3 4 5 1 3 3 4 5 1 3 3 4 5 1 3 3 4 5 ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 付 録 (6)分岐命令 Bcc JMP BSR JSR RTS BRA d:8(BT d:8) BRA d:16(BT d:16) BRN d:8(BF d:8) BRN d:16(BF d:16) BHI d:8 BHI d:16 BLS d:8 BLS d:16 BCC d:8(BHS d:8) BCC d:16(BHS d:16) BCS d:8(BLO d:8) BCS d:16(BLO d:16) BNE d:8 BNE d:16 BEQ d:8 BEQ d:16 BVC d:8 BVC d:16 BVS d:8 BVS d:16 BPL d:8 BPL d:16 BMI d:8 BMI d:16 BGE d:8 BGE d:16 BLT d:8 BLT d:16 BGT d:8 BGT d:16 BLE d:8 BLE d:16 JMP @ERn JMP @aa:24 JMP @@aa:8 BSR d:8 BSR d:16 JSR @ERn JSR @aa:24 JSR @@aa:8 RTS ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― コンディション コード ― @@aa @(d,PC) オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) 分岐条件 I ― ― ― Never ― C∨Z=0 ― ― C∨Z=1 ― ― ― C=0 ― ― C=1 ― ― Z=0 ― ― Z=1 ― ― V=0 ― ― V=1 ― ― N=0 ― ― N=1 ― N⊕V=0 ― ― N⊕V=1 ― ― Z∨(N⊕V)=0 ― ― Z∨(N⊕V)=1 ― ― ― PC←ERn ― PC←aa:24 ― PC←@aa:8 ― PC→@-SP,PC←PC+d:8 ― PC→@-SP,PC←PC+d:16 ― PC→@-SP,PC←ERn ― PC→@-SP,PC←aa:24 ― PC→@-SP,PC←@aa:8 ― PC←@SP+ if condition is true then PC←PC+d else next; 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 4 2 2 4 2 4 2 2 Always 実行 ステート数*1 H N Z V C ノーマル アドバンスト ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 4 3 4 3 4 4 4 5 4 5 4 5 6 5 931 付 録 (7)システム制御命令 TRAPA TRAPA #xx:2 ― RTE ― RTE SLEEP SLEEP LDC LDC #xx:8,CCR LDC #xx:8,EXR LDC Rs,CCR LDC Rs,EXR LDC @ERs,CCR LDC @ERs,EXR LDC @(d:16,ERs),CCR LDC @(d:16,ERs),EXR LDC @(d:32,ERs),CCR LDC @(d:32,ERs),EXR LDC @ERs+,CCR LDC @ERs+,EXR LDC @aa:16,CCR LDC @aa:16,EXR LDC @aa:32,CCR LDC @aa:32,EXR STC STC CCR,Rd STC EXR,Rd STC CCR,@ERd STC EXR,@ERd STC CCR,@(d:16,ERd) STC EXR,@(d:16,ERd) STC CCR,@(d:32,ERd) STC EXR,@(d:32,ERd) STC CCR,@-ERd STC EXR,@-ERd STC CCR,@aa:16 STC EXR,@aa:16 STC CCR,@aa:32 STC EXR,@aa:32 ANDC ANDC #xx:8,CCR ANDC #xx:8,EXR ORC ORC #xx:8,CCR ORC #xx:8,EXR XORC XORC #xx:8,CCR XORC #xx:8,EXR NOP NOP 932 ― B B B B W W W W W W W W W W W W B B W W W W W W W W W W W W B B B B B B ― コンディション コード ― @@aa @(d,PC) オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) 2 4 2 2 4 4 6 6 10 10 4 4 6 6 8 8 2 2 4 4 6 6 10 10 4 4 6 6 8 8 2 4 2 4 2 4 2 I PC→@-SP,CCR→@-SP, EXR→@-SP,<ベクタ>→PC EXR←@SP+,CCR←@SP+, PC←@SP+ 低消費電力状態に遷移 #xx:8→CCR #xx:8→EXR Rs8→CCR Rs8→EXR @ERs→CCR @ERs→EXR @(d:16,ERs)→CCR @(d:16,ERs)→EXR @(d:32,ERs)→CCR @(d:32,ERs)→EXR @ERs→CCR,ERs32+2→ERs32 @ERs→EXR,ERs32+2→ERs32 @aa:16→CCR @aa:16→EXR @aa:32→CCR @aa:32→EXR CCR→Rd8 EXR→Rd8 CCR→@ERd EXR→@ERd CCR→@(d:16,ERd) EXR→@(d:16,ERd) CCR→@(d:32,ERd) EXR→@(d:32,ERd) ERd32-2→ERd32,CCR→@ERd ERd32-2→ERd32,EXR→@ERd CCR→@aa:16 EXR→@aa:16 CCR→@aa:32 EXR→@aa:32 CCR∧#xx:8→CCR EXR∧#xx:8→EXR CCR∨#xx:8→CCR EXR∨#xx:8→EXR CCR⊕#xx:8→CCR EXR⊕#xx:8→EXR PC←PC+2 H N Z V C 実行 ステート数*1 ノーマル アドバンスト 1 ― ― ― ― ― 7[9] 8[9] 5[9] ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― ― 2 1 2 1 1 3 3 4 4 6 6 4 4 4 4 5 5 1 1 3 3 4 4 6 6 4 4 4 4 5 5 1 2 1 2 1 2 1 付 録 (8)ブロック転送命令 ― @@aa @(d,PC) EEPMOV EEPMOV.B ― 4 EEPMOV.W ― 4 【注】 *1 コンディション コード オペレーション @aa @-ERn/@ERn+ @ERn Rn サイズ #xx ニーモニック @(d,ERn) アドレッシングモード/命令長(バイト) I if R4L≠0 Repeat @ER5→@ER6 R5+1→R5 R6+1→R6 R4L-1→R4L Until R4L=0 else next; if R4≠0 Repeat @ER5→@ER6 R5+1→R5 R6+1→R6 R4-1→R4 Until R4=0 else next; H N Z V C 実行 ステート数*1 ノーマル アドバンスト ― ― ― ― ― ― 4+2n *2 ― ― ― ― ― ― 4+2n *2 実行ステート数は、命令コードおよびオペランドが内蔵メモリに存在する場合の値です。 *2 nはR4LまたはR4の初期設定値です。 *3 TAS命令を使用する場合は、レジスタER0、ER1、ER4、ER5を使用してください。 *4 STM/LDM命令を使用する場合は、レジスタER0〜ER6を使用してください。 [1] 復帰/退避レジスタ数が2本のとき7ステート、3本のとき9ステート、4本のとき11ステートになります。 [2] 本LSIでは使用できません。 [3] ビット11から桁上がりまたはビット11へ桁下がりが発生したとき1にセットされ、それ以外のとき0にクリアされます。 [4] ビット27から桁上がりまたはビット27へ桁下がりが発生したとき1にセットされ、それ以外のとき0にクリアされます。 [5] 演算結果が0(ゼロ)のとき、演算前の値を保持し、それ以外のとき0にクリアされます。 [6] 除数が負のとき1にセットされ、それ以外のとき0にクリアされます。 [7] 除数が0(ゼロ)のとき1にセットされ、それ以外のとき0にクリアされます。 [8] 商が負のとき1にセットされ、それ以外のとき0にクリアされます。 [9] EXRが有効のとき、実行ステート数は1ステート多くなります。 933 934 Bcc BAND ANDC AND ADDX ADDS ADD 命令 ADD.B #xx:8,Rd ADD.B Rs,Rd ADD.W #xx:16,Rd ADD.W Rs,Rd ADD.L #xx:32,ERd ADD.L ERs,ERd ADDS #1,ERd ADDS #2,ERd ADDS #4,ERd ADDX #xx:8,Rd ADDX Rs,Rd AND.B #xx:8,Rd AND.B Rs,Rd AND.W #xx:16,Rd AND.W Rs,Rd AND.L #xx:32,ERd AND.L ERs,ERd ANDC #xx:8,CCR ANDC #xx:8,EXR BAND #xx:3,Rd BAND #xx:3,@ERd BAND #xx:3,@aa:8 BAND #xx:3,@aa:16 BAND #xx:3,@aa:32 BRA d:8 (BT d:8) BRA d:16 (BT d:16) BRN d:8 (BF d:8) BRN d:16 (BF d:16) BHI d:8 BHI d:16 BLS d:8 BLS d:16 BCC d:8 (BHS d:8) BCC d:16 (BHS d:16) BCS d:8 (BLO d:8) BCS d:16 (BLO d:16) BNE d:8 BNE d:16 BEQ d:8 BEQ d:16 BVC d:8 BVC d:16 BVS d:8 BVS d:16 ニーモニック B B W W L L L L L B B B B W W L L B B B B B B B − − − − − − − − − − − − − − − − − − − − サ イ ズ A.2 命令コード一覧(1) 第1バイト 8 rd 0 8 7 9 0 9 7 A 0 A 0 B 0 B 0 B 9 rd 0 E E rd 1 6 7 9 6 6 7 A 0 1 0 6 0 1 7 6 7 C 7 E 6 A 6 A 4 0 5 8 4 1 5 8 4 2 5 8 4 3 5 8 4 4 5 8 4 5 5 8 4 6 5 8 4 7 5 8 4 8 5 8 4 9 5 8 第2バイト IMM rd rs rd 1 rd rs 0 erd 1 1 ers 0 erd 0 erd 0 0 erd 8 0 erd 9 IMM rd rs IMM rd rs rd 6 rd rs 0 erd 6 0 F IMM 1 4 rd 0 IMM 0 0 erd abs 0 1 0 3 disp 0 0 disp 0 1 disp 0 2 disp 0 3 disp 0 4 disp 0 5 disp 0 6 disp 0 7 disp 0 8 disp 0 9 7 7 0 6 6 6 6 6 第3バイト IMM disp disp disp disp disp disp disp disp disp disp 0 IMM 0 IMM abs IMM 0 0 abs 7 6 第5バイト 0 IMM 0 第6バイト インストラクションフォーマット IMM 0 ers 0 erd IMM IMM 第4バイト 7 6 第7バイト 0 IMM 0 第8バイト 第9バイト 第10バイト 付 録 A.2 命令コード一覧 BIST BIOR BILD BIAND BCLR Bcc (続き) 命令 BPL d:8 BPL d:16 BMI d:8 BMI d:16 BGE d:8 BGE d:16 BLT d:8 BLT d:16 BGT d:8 BGT d:16 BLE d:8 BLE d:16 BCLR #xx:3,Rd BCLR #xx:3,@ERd BCLR #xx:3,@aa:8 BCLR #xx:3,@aa:16 BCLR #xx:3,@aa:32 BCLR Rn,Rd BCLR Rn,@ERd BCLR Rn,@aa:8 BCLR Rn,@aa:16 BCLR Rn,@aa:32 BIAND #xx:3,Rd BIAND #xx:3,@ERd BIAND #xx:3,@aa:8 BIAND #xx:3,@aa:16 BIAND #xx:3,@aa:32 BILD #xx:3,Rd BILD #xx:3,@ERd BILD #xx:3,@aa:8 BILD #xx:3,@aa:16 BILD #xx:3,@aa:32 BIOR #xx:3,Rd BIOR #xx:3,@ERd BIOR #xx:3,@aa:8 BIOR #xx:3,@aa:16 BIOR #xx:3,@aa:32 BIST #xx:3,Rd BIST #xx:3,@ERd BIST #xx:3,@aa:8 BIST #xx:3,@aa:16 BIST #xx:3,@aa:32 ニーモニック − − − − − − − − − − − − B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B サ イ ズ A.2 命令コード一覧(2) 第1バイト 4 A 5 8 4 B 5 8 4 C 5 8 4 D 5 8 4 E 5 8 4 F 5 8 7 2 7 D 7 F 6 A 6 A 6 2 7 D 7 F 6 A 6 A 7 6 7 C 7 E 6 A 6 A 7 7 7 C 7 E 6 A 6 A 7 4 7 C 7 E 6 A 6 A 6 7 7 D 7 F 6 A 6 A 第2バイト disp 0 A disp 0 B disp 0 C disp 0 D disp 0 E disp 0 F 0 IMM rd 0 0 erd abs 8 1 8 3 rd rn 0 0 erd abs 8 1 8 3 1 IMM rd 0 0 erd abs 0 1 0 3 1 IMM rd 0 0 erd abs 0 1 0 3 1 IMM rd 0 0 erd abs 0 1 0 3 1 IMM rd 0 0 erd abs 8 1 8 3 6 6 7 7 7 7 7 7 4 4 7 7 6 6 2 2 6 6 7 7 2 2 7 7 第3バイト 1 IMM 1 IMM abs 1 IMM 1 IMM abs 1 IMM 1 IMM abs 1 IMM 1 IMM abs abs rn rn 0 IMM 0 IMM abs disp disp disp disp disp disp 0 0 0 0 0 0 0 0 0 0 0 0 第4バイト abs abs abs abs abs abs 6 7 7 7 6 7 7 4 7 6 2 2 第5バイト 1 IMM 1 IMM 1 IMM 1 IMM rn 0 IMM 0 0 0 0 0 0 第6バイト インストラクションフォーマット 6 7 7 7 6 7 7 4 7 6 2 2 第7バイト 1 IMM 1 IMM 1 IMM 1 IMM rn 0 IMM 0 0 0 0 0 0 第8バイト 第9バイト 第10バイト 付 録 935 936 BIXOR #xx:3,Rd BIXOR #xx:3,@ERd BIXOR #xx:3,@aa:8 BIXOR #xx:3,@aa:16 BIXOR #xx:3,@aa:32 BLD #xx:3,Rd BLD #xx:3,@ERd BLD #xx:3,@aa:8 BLD #xx:3,@aa:16 BLD #xx:3,@aa:32 BNOT #xx:3,Rd BNOT #xx:3,@ERd BNOT #xx:3,@aa:8 BNOT #xx:3,@aa:16 BNOT #xx:3,@aa:32 BNOT Rn,Rd BNOT Rn,@ERd BNOT Rn,@aa:8 BNOT Rn,@aa:16 BNOT Rn,@aa:32 BOR #xx:3,Rd BOR #xx:3,@ERd BOR #xx:3,@aa:8 BOR #xx:3,@aa:16 BOR #xx:3,@aa:32 BSET #xx:3,Rd BSET #xx:3,@ERd BSET #xx:3,@aa:8 BSET #xx:3,@aa:16 BSET #xx:3,@aa:32 BSET Rn,Rd BSET Rn,@ERd BSET Rn,@aa:8 BSET Rn,@aa:16 BSET Rn,@aa:32 BSR d:8 BSR d:16 BST #xx:3,Rd BST #xx:3,@ERd BST #xx:3,@aa:8 BST #xx:3,@aa:16 BST #xx:3,@aa:32 BIXOR BST BSR BSET BOR BNOT BLD ニーモニック 命令 B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B B − − B B B B B サ イ ズ A.2 命令コード一覧(3) 第1バイト 7 5 7 C 7 E 6 A 6 A 7 7 7 C 7 E 6 A 6 A 7 1 7 D 7 F 6 A 6 A 6 1 7 D 7 F 6 A 6 A 7 4 7 C 7 E 6 A 6 A 7 0 7 D 7 F 6 A 6 A 6 0 7 D 7 F 6 A 6 A 5 5 5 C 6 7 7 D 7 F 6 A 6 A 第2バイト 1 IMM rd 0 erd 0 abs 1 0 3 0 0 IMM rd 0 erd 0 abs 1 0 3 0 0 IMM rd 0 erd 0 abs 1 8 3 8 rn rd 0 erd 0 abs 1 8 3 8 0 IMM rd 0 erd 0 abs 1 0 3 0 0 IMM rd 0 erd 0 abs 1 8 3 8 rn rd 0 erd 0 abs 1 8 3 8 disp 0 0 0 IMM rd 0 erd 0 abs 1 8 3 8 7 7 0 0 6 6 6 6 0 0 7 7 4 4 1 1 6 6 7 7 1 1 7 7 5 5 7 7 7 7 7 7 第3バイト 0 IMM 0 IMM abs disp abs rn rn 0 IMM 0 IMM abs 0 IMM 0 IMM abs abs rn rn 0 IMM 0 IMM abs 0 IMM 0 IMM abs 1 IMM 1 IMM abs 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 第4バイト abs abs abs abs abs abs abs abs 6 6 7 7 6 7 7 7 7 0 0 4 1 1 7 5 第5バイト 0 IMM rn 0 IMM 0 IMM rn 0 IMM 0 IMM 1 IMM 0 0 0 0 0 0 0 0 第6バイト インストラクションフォーマット 6 6 7 7 6 7 7 7 7 0 0 4 1 1 7 5 第7バイト 0 IMM rn 0 IMM 0 IMM rn 0 IMM 0 IMM 1 IMM 0 0 0 0 0 0 0 0 第8バイト 第9バイト 第10バイト 付 録 BTST #xx:3,Rd BTST #xx:3,@ERd BTST #xx:3,@aa:8 BTST #xx:3,@aa:16 BTST #xx:3,@aa:32 BTST Rn,Rd BTST Rn,@ERd BTST Rn,@aa:8 BTST Rn,@aa:16 BTST Rn,@aa:32 BXOR #xx:3,Rd BXOR #xx:3,@ERd BXOR #xx:3,@aa:8 BXOR #xx:3,@aa:16 BXOR #xx:3,@aa:32 CLRMAC CMP.B #xx:8,Rd CMP.B Rs,Rd CMP.W #xx:16,Rd CMP.W Rs,Rd CMP.L #xx:32,ERd CMP.L ERs,ERd DAA Rd DAS Rd DEC.B Rd DEC.W #1,Rd DEC.W #2,Rd DEC.L #1,ERd DEC.L #2,ERd DIVXS.B Rs,Rd DIVXS.W Rs,ERd DIVXU.B Rs,Rd DIVXU.W Rs,ERd EEPMOV.B EEPMOV.W EXTS.W Rd EXTS.L ERd EXTU.W Rd EXTU.L ERd BTST EXTU EXTS EEPMOV DIVXU DIVXS DAA DAS DEC CLRMAC CMP BXOR ニーモニック 命令 A.2 命令コード一覧(4) B B B B B B B B B B B B B B B − B B W W L L B B B W W L L B W B W − − W L W L サ イ ズ 第1バイト 第2バイト 7 3 0 IMM rd 7 C 0 erd 0 7 E abs 6 A 1 0 6 A 3 0 6 3 rn rd 7 C 0 erd 0 7 E abs 6 A 1 0 6 A 3 0 7 5 0 IMM rd 7 C 0 erd 0 7 E abs 6 A 1 0 6 A 3 0 本LSIでは使用できません。 A rd IMM 1 C rs rd 7 9 2 rd 1 D rs rd 7 A 2 0 erd 1 F 1 ers 0 erd 0 F 0 rd 1 F 0 rd 1 A 0 rd 1 B 5 rd 1 B D rd 1 B 7 0 erd 1 B F 0 erd 0 1 D 0 0 1 D 0 5 1 rs rd 5 3 rs 0 erd 7 B 5 C 7 B D 4 1 7 D rd 1 7 F 0 erd 1 7 5 rd 1 7 7 0 erd 5 5 5 5 9 9 1 3 5 5 3 3 6 6 7 7 3 3 7 7 第3バイト IMM 8 8 rs rs 0 IMM 0 IMM abs abs rn rn 0 IMM 0 IMM abs IMM abs abs F F 7 6 7 5 3 3 第5バイト 0 IMM rn 0 IMM 0 0 0 第6バイト インストラクションフォーマット abs rd 0 erd 0 0 0 0 0 0 第4バイト 7 6 7 5 3 3 第7バイト 0 IMM rn 0 IMM 0 0 0 第8バイト 第9バイト 第10バイト 付 録 937 938 MAC MOV LDMAC LDM*3 LDC JSR JMP INC 命令 INC.B Rd INC.W #1,Rd INC.W #2,Rd INC.L #1,ERd INC.L #2,ERd JMP @ERn JMP @aa:24 JMP @@aa:8 JSR @ERn JSR @aa:24 JSR @@aa:8 LDC #xx:8,CCR LDC #xx:8,EXR LDC Rs,CCR LDC Rs,EXR LDC @ERs,CCR LDC @ERs,EXR LDC @(d:16,ERs),CCR LDC @(d:16,ERs),EXR LDC @(d:32,ERs),CCR LDC @(d:32,ERs),EXR LDC @ERs+,CCR LDC @ERs+,EXR LDC @aa:16,CCR LDC @aa:16,EXR LDC @aa:32,CCR LDC @aa:32,EXR LDM.L @SP+, (ERn-ERn+1) LDM.L @SP+, (ERn-ERn+2) LDM.L @SP+, (ERn-ERn+3) LDMAC ERs,MACH LDMAC ERs,MACL MAC @ERn+,@ERm+ MOV.B #xx:8,Rd MOV.B Rs,Rd MOV.B @ERs,Rd MOV.B @(d:16,ERs),Rd MOV.B @(d:32,ERs),Rd MOV.B @ERs+,Rd MOV.B @aa:8,Rd MOV.B @aa:16,Rd MOV.B @aa:32,Rd MOV.B Rs,@ERd MOV.B Rs,@(d:16,ERd) MOV.B Rs,@(d:32,ERd) ニーモニック B W W L L − − − − − − B B B B W W W W W W W W W W W W L L L L L − B B B B B B B B B B B B サ イ ズ A.2 命令コード一覧(5) 0 4 0 1 4 4 4 4 4 4 4 4 4 4 4 4 1 2 3 1 rs rs 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 abs IMM abs ern 0 第2バイト 0 rd 5 rd D rd 7 0 erd F 0 erd 0 ern 0 F 0 6 6 7 6 2 6 6 6 6 7 rd C 8 E 8 C rd A A 8 E 8 1 1 0 0 0 0 0 IMM rs rd ers rd ers rd ers 0 ers rd abs 0 rd 2 rd erd rs erd rs erd 0 本LSIでは使用できません。 第1バイト 0 A 0 B 0 B 0 B 0 B 5 9 5 A 5 B 5 D 5 E 5 F 0 7 0 1 0 3 0 3 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 6 A A 9 9 F F 8 8 D D B B B B D D D 6 6 6 6 7 7 6 6 6 6 6 6 6 6 6 6 7 0 abs abs 第3バイト disp abs disp 0 0 0 0 0 0 0 0 A 2 rs rd abs 6 6 B B 第5バイト abs abs disp disp 2 2 0 0 第6バイト disp disp abs abs インストラクションフォーマット ers 0 ers 0 ers 0 ers 0 ers 0 ers 0 ers 0 ers 0 0 0 0 0 2 0 2 0 7 0 ern+1 7 0 ern+2 7 0 ern+3 IMM 第4バイト 第7バイト 第8バイト disp disp 第9バイト 第10バイト 付 録 NOP NEG MULXU MOVFPE MOVTPE MULXS MOV.B Rs,@-ERd MOV.B Rs,@aa:8 MOV.B Rs,@aa :16 MOV.B Rs,@aa:32 MOV.W #xx:16,Rd MOV.W Rs,Rd MOV.W @ERs,Rd MOV.W @(d:16,ERs),Rd MOV.W @(d:32,ERs),Rd MOV.W @ERs+,Rd MOV.W @aa:16,Rd MOV.W @aa:32,Rd MOV.W Rs,@ERd MOV.W Rs,@(d:16,ERd) MOV.W Rs,@(d:32,ERd) MOV.W Rs,@-ERd MOV.W Rs,@aa:16 MOV.W Rs,@aa:32 MOV.L #xx:32,Rd MOV.L ERs,ERd MOV.L @ERs,ERd MOV.L @(d:16,ERs),ERd MOV.L @(d:32,ERs),ERd MOV.L @ERs+,ERd MOV.L @aa:16 ,ERd MOV.L @aa:32 ,ERd MOV.L ERs,@ERd MOV.L ERs,@(d:16,ERd) MOV.L ERs,@(d:32,ERd) *1 MOV (続き) MOV.L ERs,@-ERd MOV.L ERs,@aa:16 MOV.L ERs,@aa:32 MOVFPE @aa:16,Rd MOVTPE Rs,@aa:16 MULXS.B Rs,Rd MULXS.W Rs,ERd MULXU.B Rs,Rd MULXU.W Rs,ERd NEG.B Rd NEG.W Rd NEG.L ERd NOP ニーモニック 命令 B B B B W W W W W W W W W W W W W W L L L L L L L L L L L L L L B B B W B W B W L − サ イ ズ A.2 命令コード一覧(6) 1 1 1 0 1 0 0 0 0 1 第2バイト erd rs abs 8 rs A rs 0 rd rs rd ers rd ers rd ers 0 ers rd 0 rd 2 rd erd rs erd rs erd 0 erd rs 8 rs A rs 0 0 erd ers 0 erd 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5 5 1 1 1 0 1 1 0 2 7 7 7 0 C C rs rs 8 9 B 0 0 0 rd 0 erd rd rd 0 erd 0 本LSIでは使用できません。 第1バイト 6 C 3 rs 6 A 6 A 7 9 0 D 6 9 6 F 7 8 6 D 6 B 6 B 6 9 6 F 7 8 6 D 6 B 6 B 7 A 0 F 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 5 5 6 6 7 6 6 6 6 6 7 6 6 6 6 6 0 2 9 F 8 D B B 9 F 8 D B B B B 第3バイト 1 1 0 1 0 0 0 0 abs disp abs disp IMM abs rs rs ers ers ers ers 0 2 erd erd erd erd 8 A A 2 erd erd 0 erd erd erd ers ers 0 ers ers ers abs IMM abs 6 6 B B 第5バイト abs disp abs disp A 2 disp disp abs 0 ers abs 0 erd 第6バイト インストラクションフォーマット abs rd 0 erd 0 0 0 0 0 0 0 0 0 0 rs rd 第4バイト 第7バイト 第8バイト disp disp 第9バイト 第10バイト 付 録 939 940 RTE RTS ROTXR ROTXL ROTR ROTL PUSH POP ORC OR NOT 命令 NOT.B Rd NOT.W Rd NOT.L ERd OR.B #xx:8,Rd OR.B Rs,Rd OR.W #xx:16,Rd OR.W Rs,Rd OR.L #xx:32,ERd OR.L ERs,ERd ORC #xx:8,CCR ORC #xx:8,EXR POP.W Rn POP.L ERn PUSH.W Rn PUSH.L ERn ROTL.B Rd ROTL.B #2, Rd ROTL.W Rd ROTL.W #2, Rd ROTL.L ERd ROTL.L #2, ERd ROTR.B Rd ROTR.B #2, Rd ROTR.W Rd ROTR.W #2, Rd ROTR.L ERd ROTR.L #2, ERd ROTXL.B Rd ROTXL.B #2, Rd ROTXL.W Rd ROTXL.W #2, Rd ROTXL.L ERd ROTXL.L #2, ERd ROTXR.B Rd ROTXR.B #2, Rd ROTXR.W Rd ROTXR.W #2, Rd ROTXR.L ERd ROTXR.L #2, ERd RTE RTS ニーモニック A.2 命令コード一覧(7) B W L B B W W L L B B W L W L B B W W L L B B W W L L B B W W L L B B W W L L − − サ イ ズ 第1バイト 1 7 1 7 1 7 C rd 1 4 7 9 6 4 7 A 0 1 0 4 0 1 6 D 0 1 6 D 0 1 1 2 1 2 1 2 1 2 1 2 1 2 1 3 1 3 1 3 1 3 1 3 1 3 1 2 1 2 1 2 1 2 1 2 1 2 1 3 1 3 1 3 1 3 1 3 1 3 5 6 5 4 第2バイト 0 rd 1 rd 3 0 erd IMM rs rd 4 rd rs rd 4 0 erd F 0 IMM 4 1 7 rn 0 0 F rn 0 0 8 rd C rd 9 rd D rd B 0 erd F 0 erd 8 rd C rd 9 rd D rd B 0 erd F 0 erd 0 rd 4 rd 1 rd 5 rd 3 0 erd 7 0 erd 0 rd 4 rd 1 rd 5 rd 3 0 erd 7 0 erd 7 0 7 0 6 6 0 6 D D 4 4 第3バイト 0 IMM F 7 0 ern 0 ern IMM ers 0 erd 第4バイト IMM 第5バイト 第6バイト インストラクションフォーマット 第7バイト 第8バイト 第9バイト 第10バイト 付 録 STMAC STM*3 SLEEP STC SHLR SHLL SHAR SHAL 命令 SHAL.B Rd SHAL.B #2, Rd SHAL.W Rd SHAL.W #2, Rd SHAL.L ERd SHAL.L #2, ERd SHAR.B Rd SHAR.B #2, Rd SHAR.W Rd SHAR.W #2, Rd SHAR.L ERd SHAR.L #2, ERd SHLL.B Rd SHLL.B #2, Rd SHLL.W Rd SHLL.W #2, Rd SHLL.L ERd SHLL.L #2, ERd SHLR.B Rd SHLR.B #2, Rd SHLR.W Rd SHLR.W #2, Rd SHLR.L ERd SHLR.L #2, ERd SLEEP STC.B CCR,Rd STC.B EXR,Rd STC.W CCR,@ERd STC.W EXR,@ERd STC.W CCR,@(d:16,ERd) STC.W EXR,@(d:16,ERd) STC.W CCR,@(d:32,ERd) STC.W EXR,@(d:32,ERd) STC.W CCR,@-ERd STC.W EXR,@-ERd STC.W CCR,@aa:16 STC.W EXR,@aa:16 STC.W CCR,@aa:32 STC.W EXR,@aa:32 STM.L(ERn-ERn+1) , @-SP STM.L (ERn-ERn+2) , @-SP STM.L (ERn-ERn+3) , @-SP STMAC MACH,ERd STMAC MACL,ERd ニーモニック B B W W L L B B W W L L B B W W L L B B W W L L − B B W W W W W W W W W W W W L L L L L サ イ ズ A.2 命令コード一覧(8) 第2バイト 8 rd C rd 9 rd D rd B 0 erd F 0 erd 8 rd C rd 9 rd D rd B 0 erd F 0 erd 0 rd 4 rd 1 rd 5 rd 3 0 erd 7 0 erd 0 rd 4 rd 1 rd 5 rd 3 0 erd 7 0 erd 8 0 0 rd 1 rd 4 0 4 1 4 0 4 1 4 0 4 1 4 0 4 1 4 0 4 1 4 0 4 1 1 0 2 0 3 0 本LSIでは使用できません。 第1バイト 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1 1 1 1 0 1 0 2 0 2 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 6 6 6 6 7 7 6 6 6 6 6 6 6 6 6 9 9 F F 8 8 D D B B B B D D D 第3バイト 1 1 1 1 0 0 1 1 erd 0 erd 0 erd 0 erd 0 erd 0 erd 0 erd 0 erd 0 8 0 8 0 A 0 A 0 F 0 ern F 0 ern F 0 ern 第4バイト 6 6 B B 第5バイト abs abs disp disp A A 0 0 第6バイト abs abs インストラクションフォーマット 第7バイト 第8バイト disp disp 第9バイト 第10バイト 付 録 941 942 【注】 XORC TAS TRAPA XOR SUBX SUBS SUB 命令 C IMM 第6バイト STM/LDM命令を使用する場合は、レジスタER0〜ER6を使用してください。 IMM 第5バイト インストラクションフォーマット IMM 0 ers 0 erd IMM 0 erd IMM 第4バイト TAS命令を使用する場合は、レジスタER0、ER1、ER4、ER5を使用してください。 5 5 6 0 B 7 第3バイト *3 第2バイト rd rs rd 3 rd rs 0 erd 3 1 ers 0 erd 0 erd 0 0 erd 8 0 erd 9 IMM rd rs 0 E 0 00 IMM IMM rs rd 5 rd rs rd 5 0 erd F 0 IMM 4 1 *2 第1バイト 1 8 7 9 1 9 7 A 1 A 1 B 1 B 1 B B rd 1 E 0 1 5 7 D rd 1 5 7 9 6 5 7 A 0 1 0 5 0 1 MOV. L ERs, @ (d : 32, ERd) 命令の第4バイト、ビット7は、1、0どちらでも動作可能です。 B W W L L L L L B B B ー B B W W L L B B サ イ ズ *1 SUB.B Rs,Rd SUB.W #xx:16,Rd SUB.W Rs,Rd SUB.L #xx:32,ERd SUB.L ERs,ERd SUBS #1,ERd SUBS #2,ERd SUBS #4,ERd SUBX #xx:8,Rd SUBX Rs,Rd TAS @ERd*2 TRAPA #x:2 XOR.B #xx:8,Rd XOR.B Rs,Rd XOR.W #xx:16,Rd XOR.W Rs,Rd XOR.L #xx:32,ERd XOR.L ERs,ERd XORC #xx:8,CCR XORC #xx:8,EXR ニーモニック A.2 命令コード一覧(9) 第7バイト 第8バイト 第9バイト 第10バイト 付 録 付 録 《記号説明》 IMM: イミディエイトデータ(2、3、8、16、32 ビット) abs: 絶対アドレス(8、16、24、32 ビット) disp: ディスプレースメント(8、16、32 ビット) rs、rd、rn: レジスタフィールド(4 ビットで、8 ビットレジスタまたは 16 ビットレジスタを指定します。rs、rd、rn はそれぞれオペラン ド形式の Rs、Rd、Rn に対応します。) レジスタフィールド(3 ビットで、アドレスレジスタまたは 32 ers、erd、ern、erm: ビットレジスタを指定します。er s、er d、er n、er m はそれぞれ オペランド形式の ERs、ERd、ERn、ERm に対応します。) レジスタフィールドと汎用レジスタの対応を下表に示します。 アドレスレジスタ 16 ビットレジスタ 8 ビットレジスタ 32 ビットレジスタ レジスタ 汎用レジスタ フィールド レジスタ 汎用レジスタ フィールド レジスタ 汎用レジスタ フィールド 000 ER0 0000 R0 0000 R0H 001 ER1 0001 R1 0001 R1H 111 ER7 0111 R7 0111 R7H 1000 E0 1000 R0L 1001 E1 1001 R1L 1111 E7 1111 R7L 943 944 AL 2 BH 3 BL BCLR MULXU BHI BSR BCS RTE BNE BST TRAPA BEQ SUB ADD CMP SUBX OR XOR AND MOV A B C D E F MOV BVS 9 B 表A.3(2) JMP BPL BMI 表A.3(2) 表A.3(2) 表A.3(2) 表A.3(2) A 表A.3(2) 表A.3(2) EEPMOV MOV 表A.3(2) ADDX 【注】 8 BVC MOV.B 表A.3(2) LDC 7 XOR AND OR BIST BOR BLD BXOR BAND BIXOR BIAND BILD BIOR RTS BCC AND ANDC 6 9 BTST DIVXU BLS XOR XORC 5 ADD 本LSIでは使用できません。 BNOT DIVXU BRN OR ORC 4 BHの最上位ビットが1の場合を示します。 BHの最上位ビットが0の場合を示します。 8 7 * MULXU 5 BSET BRA 6 AL 第2バイト STC LDC 表A.3(2) * * STMAC LDMAC 1 AH 第1バイト 表A.3(2) 表A.3(2) 表A.3(2) 表A.3(2) NOP 0 4 3 2 1 0 AH 命令コード: 表A.3 オペレーションコードマップ(1) BSR BGE C CMP BLT E JSR BGT SUBX ADDX 表A.3(3) MOV MOV D BLE 表A.3(2) 表A.3(2) F 付 録 A.3 オペレーションコードマップ 表 A.3 にオペレーションコードマップを示します。 BRA MOV MOV MOV 58 6A 79 7A ADD ADD 表A.3(4) BRN AL CMP CMP MOV BHI 2 BH BCC ROTXR ROTXL SHLR SHLL STC 4 LDC SUB SUB OR OR * 表A.3(4) MOVFPE BLS NOT STM 3 BL 第2バイト 本LSIでは使用できません。 DAS 1F 【注】 SUBS NOT 17 1B ROTXR 13 DEC ROTXL 12 1A SHLR 11 DAA 0F SHLL ADDS 0B 1 LDM AH 第1バイト 10 INC 0A 0 MOV * BH 01 AH AL 命令コード: 表A.3 オペレーションコードマップ(2) XOR XOR BCS DEC EXTU INC 5 AND AND BNE MAC* 6 BEQ DEC EXTU ROTXR ROTXL SHLR SHLL INC 7 MOV BVC 9 BVS SUBS NEG ROTR ROTL SHAR SHAL ADDS SLEEP 8 MOV BPL CLRMAC* A BMI NEG B D BGE * MOVTPE CMP SUB ROTR ROTL SHAR SHAL MOV ADD BLT DEC EXTS INC 表A.3(3) 表A.3(3) C BGT TAS E BLE DEC EXTS ROTR ROTL SHAR SHAL INC 表A.3(3) F 付 録 945 946 *1 *2 BNOT BNOT r はレジスタ指定部 aaは絶対アドレス指定 BSET 【注】 7Faa7 BSET 7Eaa7 *2 BTST *2 7Eaa6 7Faa6 *2 BTST *2 7Dr07 BCLR BCLR BCLR BSET *1 BNOT BSET 7Dr06 *1 BTST DIVXS 3 XOR 5 DH AND 6 DL 第4バイト 7 BOR BXOR BAND BLD BIOR BIXOR BIAND BILD BST BIST BOR BXOR BAND BLD BIOR BIXOR BIAND BILD BST BIST OR 4 CL 第3バイト CH 7Cr07 BCLR MULXS 2 BL BTST BNOT DIVXS 1 BH *1 MULXS 0 AL 第2バイト 7Cr06 CL AH 第1バイト *1 01F06 01D05 01C05 AH AL BH BL CH 命令コード: 表A.3 オペレーションコードマップ(3) 8 9 A B C D E F DHの最上位ビットが0の場合を示します。 DHの最上位ビットが1の場合を示します。 付 録 【注】* BSET 0 AH BNOT 1 AL 第1バイト BNOT 1 0 BSET AL AH 第1バイト aaは絶対アドレス指定 6A38aaaaaaaa7* 6A38aaaaaaaa6* 6A30aaaaaaaa7* 6A30aaaaaaaa6* AHALBHBL ... FHFLGH GL 命令コード: 6A18aaaa7* 6A18aaaa6* 6A10aaaa7* 6A10aaaa6* AHALBHBLCHCLDHDLEH EL 命令コード: BCLR 2 BH 3 3 6 DL 7 EH EL 第5バイト 5 DH 6 DL 第4バイト 7 EH EL 第5バイト BOR BXOR BAND BLD BIOR BIXOR BIAND BILD BST BIST 4 CL 第3バイト CH BTST BL 5 DH 第4バイト BOR BXOR BAND BLD BIOR BIXOR BIAND BILD BST BIST 4 CL 第3バイト CH BTST BL 第2バイト BCLR 2 BH 第2バイト 表A.3 オペレーションコードマップ(4) 8 8 9 FL FH 9 FL 第6バイト FH 第6バイト A B HH HL 第8バイト C D E F B C D E F HHの最上位ビットが0の場合を示します。 HHの最上位ビットが1の場合を示します。 GL 第7バイト GH A FHの最上位ビットが0の場合を示します。 FHの最上位ビットが1の場合を示します。 付 録 947 付 録 A.4 命令実行ステート数 H8S/2000 CPU の各命令についての実行状態と実行ステート数の計算方法を示します。 表 A .5 に各命令の実行状態として、命令実行中に行われる命令フェッチ、データリード /ライト等のサイクル数を示し、表 A.4 に各々のサイズに必要なステート数を示します。 命令の実行ステート数は次の計算式で計算されます。 実行ステート数=I・S I+J・S J+K・S K+L・S L +M・S M+N・S N 実行ステート数計算例 アドバンストモード、プログラム領域およびスタック領域を外部空間に設定、内部周辺 モジュールアクセス時 8 ビットバス幅で 2 ステートアクセス、外部デバイスアクセス時 16 ビットバス幅で 3 ステートアクセス 1 ウェイト挿入とした場合。 1. BSET #0, @FFFFC7:8 表 A.5 より I=L=2、J=K=M=N=0 表 A.4 より S I= 4、S L = 2 実行ステート数= 2×4+2×2= 12 2. JSR @@30 表 A.5 より I=J=K=2、L=M=N=0 表 A.4 より S I=S J=S K= 4 実行ステート数= 2×4+2×4+2×4= 24 948 付 録 表 A.4 実行状態(サイクル)に要するステート数 実行状態 (サイクル) アクセス対象 内蔵 内蔵周辺 外部デバイス メモリ モジュール 8 ビットバス 16 ビットバス 8 ビット 16 ビット 2 ステート 3 ステート 2 ステート 3 ステート 命令フェッチ 1 バス バス アクセス アクセス アクセス アクセス 4 2 4 6+2m 2 3+m 2 2 3+m 4 4 6+2m SI 分岐アドレスリード SJ スタック操作 SK バイトデータアクセス SL ワードデータアクセス SM 内部動作 1 SN 《記号説明》 m:外部デバイスアクセス時のウェイトステート数。 949 付 録 表 A.5 命令実行状態(サイクル数) 命令 ニーモニック 命令フェッチ 分岐アドレス スタック操作 リード I ADD K ワードデータ アクセス アクセス L M ADD.B #xx:8,Rd 1 ADD.B Rs,Rd 1 ADD.W #xx:16,Rd 2 ADD.W Rs,Rd 1 ADD.L #xx:32,ERd 3 ADD.L ERs,ERd 1 ADDS ADDS #1/2/4,ERd 1 ADDX ADDX #xx:8,Rd 1 ADDX Rs,Rd 1 AND.B #xx:8,Rd 1 AND.B Rs,Rd 1 AND.W #xx:16,Rd 2 AND.W Rs,Rd 1 AND.L #xx:32,ERd 3 AND.L ERs,ERd 2 ANDC #xx:8,CCR 1 ANDC #xx:8,EXR 2 BAND #xx:3,Rd 1 BAND #xx:3,@ERd 2 1 BAND #xx:3,@aa:8 2 1 BAND #xx:3,@aa:16 3 1 BAND #xx:3,@aa:32 4 1 BRA d:8 (BT d:8) 2 BRN d:8 (BF d:8) 2 AND ANDC BAND Bcc BHI d:8 内部動作 N 2 BLS d:8 2 BCC d:8 (BHS d:8) 2 BCS d:8 (BLO d:8) 2 BNE d:8 2 BEQ d:8 2 BVC d:8 2 BVS d:8 2 BPL d:8 2 BMI d:8 2 BGE d:8 2 BLT d:8 2 BGT d:8 2 BLE d:8 950 J バイトデータ 2 BRA d:16 (BT d:16) 2 1 BRN d:16 (BF d:16) 2 1 BHI d:16 2 1 BLS d:16 2 1 BCC d:16 (BHS d:16) 2 1 BCS d:16 (BLO d:16) 2 1 BNE d:16 2 1 BEQ d:16 2 1 BVC d:16 2 1 BVS d:16 2 1 BPL d:16 2 1 BMI d:16 2 1 BGE d:16 2 1 BLT d:16 2 1 付 命令 ニーモニック 命令フェッチ 分岐アドレス スタック操作 リード I Bcc BCLR BIAND BILD BIOR BIST BIXOR BLD BNOT J K バイトデータ ワードデータ アクセス アクセス L M 録 内部動作 N BGT d:16 2 1 BLE d:16 2 1 BCLR #xx:3,Rd 1 BCLR #xx:3,@ERd 2 2 BCLR #xx:3,@aa:8 2 2 BCLR #xx:3,@aa:16 3 2 BCLR #xx:3,@aa:32 4 2 BCLR Rn,Rd 1 BCLR Rn,@ERd 2 2 BCLR Rn,@aa:8 2 2 BCLR Rn,@aa:16 3 2 BCLR Rn,@aa:32 4 2 BIAND #xx:3,Rd 1 BIAND #xx:3,@ERd 2 1 BIAND #xx:3,@aa:8 2 1 BIAND #xx:3,@aa:16 3 1 BIAND #xx:3,@aa:32 4 1 BILD #xx:3,Rd 1 BILD #xx:3,@ERd 2 1 BILD #xx:3,@aa:8 2 1 BILD #xx:3,@aa:16 3 1 BILD #xx:3,@aa:32 4 1 BIOR #xx:8,Rd 1 BIOR #xx:8,@ERd 2 1 BIOR #xx:8,@aa:8 2 1 BIOR #xx:8,@aa:16 3 1 BIOR #xx:8,@aa:32 4 1 BIST #xx:3,Rd 1 BIST #xx:3,@ERd 2 2 BIST #xx:3,@aa:8 2 2 BIST #xx:3,@aa:16 3 2 BIST #xx:3,@aa:32 4 2 BIXOR #xx:3,Rd 1 BIXOR #xx:3,@ERd 2 1 BIXOR #xx:3,@aa:8 2 1 BIXOR #xx:3,@aa:16 3 1 BIXOR #xx:3,@aa:32 4 1 BLD #xx:3,Rd 1 BLD #xx:3,@ERd 2 1 BLD #xx:3,@aa:8 2 1 BLD #xx:3,@aa:16 3 1 BLD #xx:3,@aa:32 4 1 BNOT #xx:3,Rd 1 BNOT #xx:3,@ERd 2 2 BNOT #xx:3,@aa:8 2 2 BNOT #xx:3,@aa:16 3 2 BNOT #xx:3,@aa:32 4 2 BNOT Rn,Rd 1 BNOT Rn,@ERd 2 2 BNOT Rn,@aa:8 2 2 BNOT Rn,@aa:16 3 2 951 付 録 命令 ニーモニック 命令フェッチ 分岐アドレス スタック操作 リード I K ワードデータ アクセス アクセス L M 内部動作 N BNOT BNOT Rn,@aa:32 4 BOR BOR #xx:3,Rd 1 BOR #xx:3,@ERd 2 1 BOR #xx:3,@aa:8 2 1 BOR #xx:3,@aa:16 3 1 BOR #xx:3,@aa:32 4 1 BSET #xx:3,Rd 1 BSET #xx:3,@ERd 2 2 BSET #xx:3,@aa:8 2 2 BSET #xx:3,@aa:16 3 2 BSET #xx:3,@aa:32 4 2 BSET Rn,Rd 1 BSET Rn,@ERd 2 2 BSET Rn,@aa:8 2 2 BSET Rn,@aa:16 3 2 BSET Rn,@aa:32 4 BSR d:8 ノーマル 2 1 アドバンスト 2 2 ノーマル 2 1 1 アドバンスト 2 2 1 BSET BSR BSR d:16 BST BTST BXOR CMP 2 2 BST #xx:3,Rd 1 BST #xx:3,@ERd 2 2 BST #xx:3,@aa:8 2 2 BST #xx:3,@aa:16 3 2 BST #xx:3,@aa:32 4 2 BTST #xx:3,Rd 1 BTST #xx:3,@ERd 2 1 BTST #xx:3,@aa:8 2 1 BTST #xx:3,@aa:16 3 1 BTST #xx:3,@aa:32 4 1 BTST Rn,Rd 1 BTST Rn,@ERd 2 1 BTST Rn,@aa:8 2 1 BTST Rn,@aa:16 3 1 BTST Rn,@aa:32 4 1 BXOR #xx:3,Rd 1 BXOR #xx:3,@ERd 2 1 BXOR #xx:3,@aa:8 2 1 BXOR #xx:3,@aa:16 3 1 BXOR #xx:3,@aa:32 4 1 CLRMAC CLRMAC 952 J バイトデータ 本 LSI では使用できません。 CMP.B #xx:8,Rd 1 CMP.B Rs,Rd 1 CMP.W #xx:16,Rd 2 CMP.W Rs,Rd 1 CMP.L #xx:32,ERd 3 CMP.L ERs,ERd 1 DAA DAA Rd 1 DAS DAS Rd 1 付 命令 ニーモニック 命令フェッチ 分岐アドレス スタック操作 リード I DEC DIVXS DIVXU J K バイトデータ ワードデータ アクセス アクセス L M 内部動作 N DEC.B Rd 1 DEC.W #1/2,Rd 1 DEC.L #1/2,ERd 1 DIVXS.B Rs,Rd 2 11 DIVXS.W Rs,ERd 2 19 DIVXU.B Rs,Rd 1 11 DIVXU.W Rs,ERd 1 19 EEPMOV EEPMOV.B 2 2n+2 *2 EEPMOV.W 2 2n+2 *2 EXTS.W Rd 1 EXTS.L ERd 1 EXTU.W Rd 1 EXTU.L ERd 1 INC.B Rd 1 INC.W #1/2,Rd 1 INC.L #1/2,ERd 1 JMP @ERn 2 JMP @aa:24 2 JMP @@aa:8 ノーマル 2 1 1 アドバンスト 2 2 1 ノーマル 2 1 アドバンスト 2 2 ノーマル 2 1 1 アドバンスト 2 2 1 EXTS EXTU INC JMP JSR JSR @ERn JSR @aa:24 JSR @@aa:8 ノーマル アドバンスト LDC LDM*4 LDMAC 1 2 1 1 2 2 2 LDC #xx:8,CCR 1 LDC #xx:8,EXR 2 LDC Rs,CCR 1 LDC Rs,EXR 1 LDC @ERs,CCR 2 1 LDC @ERs,EXR 2 1 LDC @(d:16,ERs),CCR 3 1 LDC @(d:16,ERs),EXR 3 1 LDC @(d:32,ERs),CCR 5 1 LDC @(d:32,ERs),EXR 5 1 LDC @ERs+,CCR 2 1 1 LDC @ERs+,EXR 2 1 1 LDC @aa:16,CCR 3 1 LDC @aa:16,EXR 3 1 LDC @aa:32,CCR 4 1 LDC @aa:32,EXR 4 LDM. L @SP+ , (ERn-ERn+1) 2 4 1 LDM. L @SP+ , (ERn-ERn+2) 2 6 1 LDM. L @SP+ , (ERn-ERn+3) 2 8 1 LDMAC ERs, MACH 録 1 本 LSI では使用できません。 LDMAC ERs, MACL MAC MAC @ERn+, @ERm+ 953 付 録 命令 ニーモニック 命令フェッチ 分岐アドレス スタック操作 リード I MOV J K バイトデータ ワードデータ アクセス アクセス L M MOV.B #xx:8,Rd 1 MOV.B Rs,Rd 1 MOV.B @ERs,Rd 1 1 MOV.B @(d:16,ERs),Rd 2 1 MOV.B @(d:32,ERs),Rd 4 1 MOV.B @ERs+,Rd 1 1 MOV.B @aa:8,Rd 1 1 MOV.B @aa:16,Rd 2 1 MOV.B @aa:32,Rd 3 1 MOV.B Rs,@ERd 1 1 MOV.B Rs,@(d:16,ERd) 2 1 MOV.B Rs,@(d:32,ERd) 4 1 MOV.B Rs,@-ERd 1 1 MOV.B Rs,@aa:8 1 1 MOV.B Rs,@aa:16 2 1 MOV.B Rs,@aa:32 3 1 MOV.W #xx:16,Rd 2 MOV.W Rs,Rd 1 MOV.W @ERs,Rd 1 1 MOV.W @(d:16,ERs),Rd 2 1 MOV.W @(d:32,ERs),Rd 4 1 MOV.W @ERs+,Rd 1 1 MOV.W @aa:16,Rd 2 1 MOV.W @aa:32,Rd 3 1 MOV.W Rs,@ERd 1 1 MOV.W Rs,@(d:16,ERd) 2 1 MOV.W Rs,@(d:32,ERd) 4 1 MOV.W Rs,@-ERd 1 1 MOV.W Rs,@aa:16 2 1 MOV.W Rs,@aa:32 3 1 MOV.L #xx:32,ERd 3 MOV.L ERs,ERd 1 MOV.L @ERs,ERd 2 2 MOV.L @(d:16,ERs),ERd 3 2 MOV.L @(d:32,ERs),ERd 5 2 MOV.L @ERs+,ERd 2 2 MOV.L @aa:16,ERd 3 2 MOV.L @aa:32,ERd 4 2 MOV.L ERs,@ERd 2 2 MOV.L ERs,@(d:16,ERd) 3 2 MOV.L ERs,@(d:32,ERd) 5 2 MOV.L ERs,@-ERd 2 2 MOV.L ERs,@aa:16 3 2 4 2 MOV.L ERs,@aa:32 MOVFPE MOVFPE @:aa:16,Rd 内部動作 N 1 1 1 1 1 1 本 LSI では使用できません。 MOVTPE MOVTPE Rs,@:aa:16 MULXS MULXU 954 MULXS.B Rs,Rd 2 11 MULXS.W Rs,ERd 2 19 MULXU.B Rs,Rd 1 11 MULXU.W Rs,ERd 1 19 付 命令 ニーモニック 命令フェッチ 分岐アドレス スタック操作 リード I NEG NEG.B Rd 1 NEG.W Rd 1 NEG.L ERd 1 NOP NOP 1 NOT NOT.B Rd 1 NOT.W Rd 1 NOT.L ERd 1 O R .B #xx:8,Rd 1 O R .B Rs,Rd 1 OR ORC POP PUSH ROTL ROTR ROTXL ROTXR J K バイトデータ ワードデータ アクセス アクセス L M N 録 内部動作 O R .W #xx:16,Rd 2 OR.W Rs,Rd 1 OR.L #xx:32,ERd 3 OR.L ERs,ERd 2 ORC #xx:8,CCR 1 ORC #xx:8,EXR 2 POP.W Rn 1 1 1 POP.L ERn 2 2 1 PUSH.W Rn 1 1 1 PUSH.L ERn 2 2 1 ROTL.B Rd 1 ROTL.B #2,Rd 1 ROTL.W Rd 1 ROTL.W #2,Rd 1 ROTL.L ERd 1 ROTL.L #2,ERd 1 ROTR.B Rd 1 ROTR.B #2,Rd 1 ROTR.W Rd 1 ROTR.W #2,Rd 1 ROTR.L ERd 1 ROTR.L #2,ERd 1 ROTXL.B Rd 1 ROTXL.B #2,Rd 1 ROTXL.W Rd 1 ROTXL.W #2,Rd 1 ROTXL.L ERd 1 ROTXL.L #2,ERd 1 ROTXR.B Rd 1 ROTXR.B #2,Rd 1 ROTXR.W Rd 1 ROTXR.W #2,Rd 1 ROTXR.L ERd 1 ROTXR.L #2,ERd 1 RTE RTE 2 2 / 3 *1 1 RTS RTS ノーマル 2 1 1 アドバンスト 2 2 1 955 付 録 命令 ニーモニック 命令フェッチ 分岐アドレス スタック操作 リード I SHAL SHAR SHLL SHLR 1 SHAL.B #2,Rd 1 SHAL.W Rd 1 SHAL.W #2,Rd 1 SHAL.L ERd 1 SHAL.L #2,ERd 1 SHAR.B Rd 1 SHAR.B #2,Rd 1 SHAR.W Rd 1 SHAR.W #2,Rd 1 SHAR.L ERd 1 SHAR.L #2,ERd 1 SHLL.B Rd 1 SHLL.B #2,Rd 1 SHLL.W Rd 1 SHLL.W #2,Rd 1 SHLL.L ERd 1 SHLL.L #2,ERd 1 SHLR.B Rd 1 SHLR.B #2,Rd 1 SHLR.W Rd 1 SHLR.W #2,Rd 1 SHLR.L ERd 1 J K ワードデータ アクセス アクセス L M 内部動作 N SHLR.L #2,ERd 1 SLEEP SLEEP 1 STC STC.B CCR,Rd 1 STC.B EXR,Rd 1 STC.W CCR,@ERd 2 1 STC.W EXR,@ERd 2 1 STC.W CCR,@(d:16,ERd) 3 1 STC.W EXR,@(d:16,ERd) 3 1 STC.W CCR,@(d:32,ERd) 5 1 STC.W EXR,@(d:32,ERd) 5 1 STC.W CCR,@-ERd 2 1 1 STC.W EXR,@-ERd 2 1 1 STC.W CCR,@aa:16 3 1 STC.W EXR,@aa:16 3 1 STC.W CCR,@aa:32 4 1 STC.W EXR,@aa:32 4 1 STM.L (ERn-ERn+1),@-SP 2 4 1 STM.L (ERn-ERn+2),@-SP 2 6 1 STM.L (ERn-ERn+3),@-SP 2 8 1 SUB.B Rs,Rd 1 SUB.W #xx:16,Rd 2 SUB.W Rs,Rd 1 SUB.L #xx:32,ERd 3 4 STM* SUB 956 SHAL.B Rd バイトデータ SUB.L ERs,ERd 1 SUBS SUBS #1/2/4,ERd 1 SUBX SUBX #xx:8,Rd 1 SUBX Rs,Rd 1 1 付 命令 ニーモニック 命令フェッチ 分岐アドレス スタック操作 リード I TAS TAS @ERd*3 TRAPA TRAPA #x:2 ノーマル アドバンスト XO R XORC 【注】 J K 2 2 2 XO R.B #xx:8,Rd 1 XO R.B Rs,Rd 1 XOR.W #xx:16,Rd 2 XOR.W Rs,Rd 1 XOR.L #xx:32,ERd 3 XOR.L ERs,ERd 2 XORC #xx:8,CCR 1 XORC #xx:8,EXR 2 バイトデータ ワードデータ アクセス アクセス L M 録 内部動作 N 2 1 2 / 3 *1 2 2 1 2 2/3* *1 EXR が無効なとき 2、有効なとき 3 になります。 *2 転送データが n バイトのとき。 *3 TAS 命令を使用する場合は、レジスタ ER0、ER1、ER4、ER5 を使用してください。 *4 STM/LDM 命令を使用する場合は、レジスタ ER0〜ER6 を使用してください。 957 付 録 A.5 命令実行中のバス状態 本 C PU の個々の命令についての実行状態を表 A .6 に示します。実行状態に必要なステ ート数に関しては、「表 A.4 実行状態(サイクル)に要するステート数」を参照してく ださい。 《表の見方》 実行の順序 命令 JMP@aa:24 1 R:W 2nd 2 3 4 5 6 7 8 内部動作2ステート R:W EA 命令の終了 実効アドレスをワードサイズでリードします。 リード/ライトは行いません。 実行中の命令の第2ワードをワードサイズで リードします。 《記号説明》 958 R:B バイトサイズリードを行います。 R:W ワードサイズリードを行います。 W:B バイトサイズライトを行います。 W:W ワードサイズライトを行います。 :M 本サイクル直後はバス権移譲を行いません。 2nd 第 2 ワード(第 3・第 4 バイト)のアドレスです。 3rd 第 3 ワード(第 5・第 6 バイト)のアドレスです。 4th 第 4 ワード(第 7・第 8 バイト)のアドレスです。 5th 第 5 ワード(第 9・第 10 バイト)のアドレスです。 NEXT 実行中の命令の直後の命令の先頭アドレスです。 EA 実効アドレスです。 VEC ベクタアドレスです。 付 録 8 ビットバス・3 ステートアクセス・ウェイトなしの場合、上記命令実行中のアドレス バス、RD、HWR、LWR のタイミングを図 A.1 に示します。 φ アドレスバス RD HWR、LWR Highレベル R:W 2nd 実行命令の 第3バイトフェッチ 実行命令の 第4バイトフェッチ 内部 動作 R:W EA 分岐先命令の 第1バイトフェッチ 分岐先命令の 第2バイトフェッチ 図 A.1 アドレスバス、RD、HWR、LWR のタイミング (8 ビットバス・3 ステートアクセス・ウェイトなしの場合) 959 付 録 表 A.6 命令の実行状態(1) 命令 1 ADD.B #xx:8,Rd 2 3 4 ADD.B Rs,Rd R:W NEXT ADD.W #xx:16,Rd R:W 2nd ADD.W Rs,Rd R:W NEXT ADD.L #xx:32,ERd R:W 2nd ADD.L ERs,ERd R:W NEXT ADDS #1/2/4,ERd R:W NEXT ADDX #xx:8,Rd R:W NEXT ADDX Rs,Rd R:W NEXT AND.B #xx:8,Rd R:W NEXT R:W NEXT R:W 3rd AND.B Rs,Rd R:W NEXT AND.W #xx:16,Rd R:W 2nd AND.W Rs,Rd R:W NEXT AND.L #xx:32,ERd R:W 2nd R:W 3rd AND.L ERs,ERd R:W 2nd R:W NEXT R:W NEXT R:W: NEXT R:W NEXT ANDC #xx:8,CCR R:W NEXT ANDC #xx:8,EXR R:W 2nd BAND #xx:3,Rd R:W NEXT BAND #xx:3,@ERd R:W 2nd R:B EA BAND #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BAND #xx:3,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BAND #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA R:W NEXT BRA d:8 (BT d:8) R:W NEXT BRN d:8 (BF d:8) R:W NEXT R:W EA R:W NEXT R:W EA BLS d:8 R:W NEXT R:W EA BCC d:8 (BHS d:8) R:W NEXT R:W EA BCS d:8 (BLO d:8) R:W NEXT R:W EA BNE d:8 R:W NEXT R:W EA BEQ d:8 R:W NEXT R:W EA BVC d:8 R:W NEXT R:W EA BVS d:8 R:W NEXT R:W EA BPL d:8 R:W NEXT R:W EA BMI d:8 R:W NEXT R:W EA BGE d:8 R:W NEXT R:W EA BLT d:8 R:W NEXT R:W EA BGT d:8 R:W NEXT R:W EA BLE d:8 R:W NEXT R:W EA BHI d:8 R:W:M NEXT R:W EA BRA d:16 (BT d:16) R:W 2nd 内部動作 1ステート R:W EA BRN d:16 (BF d:16) R:W 2nd 内部動作 1ステート R:W EA BHI d:16 R:W 2nd 内部動作 1ステート R:W EA BLS d:16 R:W 2nd 内部動作 1ステート R:W EA BCC d:16 (BHS d:16) R:W 2nd 内部動作 1ステート R:W EA BCS d:16 (BLO d:16) R:W 2nd 内部動作 1ステート R:W EA BNE d:16 R:W 2nd 内部動作 1ステート R:W EA BEQ d:16 R:W 2nd 内部動作 1ステート R:W EA BVC d:16 R:W 2nd 内部動作 1ステート R:W EA BVS d:16 R:W 2nd 内部動作 1ステート R:W EA BPL d:16 R:W 2nd 内部動作 1ステート R:W EA BMI d:16 R:W 2nd 内部動作 1ステート R:W EA BGE d:16 R:W 2nd 内部動作 1ステート R:W EA 960 5 R:W NEXT R:W:M NEXT 6 7 8 9 付 録 表 A.6 命令の実行状態(2) 命令 1 2 3 4 5 BLT d:16 R:W 2nd 内部動作 1ステート R:W EA BGT d:16 R:W 2nd 内部動作 1ステート R:W EA BLE d:16 R:W 2nd 内部動作 1ステート R:W EA BCLR #xx:3,Rd R:W NEXT BCLR #xx:3,@ERd R:W 2nd R:B:M EA R:W:M NEXT W:B EA BCLR #xx:3,@aa:8 R:W 2nd R:B:M EA R:W:M NEXT W:B EA BCLR #xx:3,@aa:16 R:W 2nd R:W 3rd R:B:M EA R:W:M NEXT W:B EA BCLR #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B:M EA R:W:M NEXT BCLR Rn,Rd R:W NEXT BCLR Rn,@ERd R:W 2nd R:B:M EA R:W:M NEXT W:B EA BCLR Rn,@aa:8 R:W 2nd R:B:M EA R:W:M NEXT W:B EA BCLR Rn,@aa:16 R:W 2nd R:W 3rd R:B:M EA R:W:M NEXT W:B EA BCLR Rn,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B:M EA R:W:M NEXT BIAND #xx:3,Rd R:W NEXT BIAND #xx:3,@ERd R:W 2nd R:B EA R:W:M NEXT BIAND #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BIAND #xx:3,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BIAND #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA BILD #xx:3,Rd R:W NEXT BILD #xx:3,@ERd R:W 2nd R:B EA R:W:M NEXT BILD #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BILD #xx:3,@aa:16 R:W 2nd R:W 3rd R:B: EA R:W:M NEXT BILD #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA BIOR #xx:3,Rd R:W NEXT BIOR #xx:3,@ERd R:W 2nd R:B EA R:W:M NEXT BIOR #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BIOR #xx:3,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BIOR #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA BIST #xx:3,Rd R:W NEXT BIST #xx:3,@ERd R:W 2nd R:B:M EA R:W:M NEXT W:B EA BIST #xx:3,@aa:8 R:W 2nd R:B:M EA R:W:M NEXT W:B EA BIST #xx:3,@aa:16 R:W 2nd R:W 3rd R:B:M EA R:W:M NEXT W:B EA BIST #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B:M EA R:W:M NEXT BIXOR #xx:3,Rd R:W NEXT BIXOR #xx:3,@ERd R:W 2nd R:B EA R:W:M NEXT BIXOR #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BIXOR #xx:3,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BIXOR #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA BLD #xx:3,Rd R:W NEXT BLD #xx:3,@ERd R:W 2nd R:B EA R:W:M NEXT BLD #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BLD #xx:3,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BLD #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA BNOT #xx:3,Rd R:W NEXT BNOT #xx:3,@ERd R:W 2nd R:B:M EA R:W:M NEXT W:B EA BNOT #xx:3,@aa:8 R:W 2nd R:B:M EA R:W:M NEXT W:B EA BNOT #xx:3,@aa:16 R:W 2nd R:W 3rd R:B:M EA R:W:M NEXT W:B EA BNOT #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B:M EA R:W:M NEXT BNOT Rn,Rd R:W NEXT BNOT Rn,@ERd R:W 2nd R:B:M EA R:W:M NEXT W:B EA BNOT Rn,@aa:8 R:W 2nd R:B:M EA R:W:M NEXT W:B EA 6 7 8 9 W:B EA W:B EA R:W:M NEXT R:W:M NEXT R:W:M NEXT W:B EA R:W:M NEXT R:W:M NEXT W:B EA 961 付 録 表 A.6 命令の実行状態(3) 命令 1 2 R:W 2nd R:W 3rd R:B:M EA R:W:M NEXT W:B EA BNOT Rn,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B:M EA R:W:M NEXT BOR #xx:3,Rd R:W NEXT BOR #xx:3,@ERd R:W 2nd R:B EA R:W:M NEXT BOR #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BOR #xx:3,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BOR #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA BSET #xx:3,Rd R:W NEXT BSET #xx:3,@ERd R:W 2nd R:B:M EA R:W:M NEXT W:B EA BSET #xx:3,@aa:8 R:W 2nd R:B:M EA R:W:M NEXT W:B EA BSET #xx:3,@aa:16 R:W 2nd R:W 3rd R:B:M EA R:W:M NEXT W:B EA BSET #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B:M EA R:W:M NEXT BSET Rn,Rd R:W NEXT BSET Rn,@ERd R:W 2nd R:B:M EA R:W:M NEXT W:B EA BSET Rn,@aa:8 R:W 2nd R:B:M EA R:W:M NEXT W:B EA BSET Rn,@aa:16 R:W 2nd R:W 3rd R:B:M EA R:W:M NEXT W:B EA BSET Rn,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B:M EA R:W:M NEXT R:W NEXT R:W EA W:W:M スタック(H) W:W R:W 2nd 内部動作 1ステート R:W EA W:W:M スタック(H) W:W W:B EA BNOT Rn,@aa:16 BSR d:8 アドバンスト BSR d:16 アドバンスト 3 4 5 6 R:W NEXT BST #xx:3,@ERd R:W 2nd R:B:M EA R:W:M NEXT BST #xx:3,@aa:8 R:W 2nd R:B:M EA R:W:M NEXT W:B EA BST #xx:3,@aa:16 R:W 2nd R:W 3rd R:B:M EA R:W:M NEXT W:B EA BST #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B:M EA R:W:M NEXT BTST #xx:3,Rd R:W NEXT BTST #xx:3,@ERd R:W 2nd R:B EA R:W:M NEXT BTST #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BTST #xx:3,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BTST #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA BTST Rn,Rd R:W NEXT BTST Rn,@ERd R:W 2nd R:B EA R:W:M NEXT BTST Rn,@aa:8 R:W 2nd R:B EA R:W:M NEXT BTST Rn,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BTST Rn,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA BXOR #xx:3,Rd R:W NEXT BXOR #xx:3,@ERd R:W 2nd R:B EA R:W:M NEXT BXOR #xx:3,@aa:8 R:W 2nd R:B EA R:W:M NEXT BXOR #xx:3,@aa:16 R:W 2nd R:W 3rd R:B EA R:W:M NEXT BXOR #xx:3,@aa:32 R:W 2nd R:W 3rd R:W 4th R:B EA CLRMAC 本 LSI では使用できません。 CMP.B #xx:8,Rd R:W NEXT R:W NEXT R:W 2nd CMP.W Rs,Rd R:W NEXT CMP.L #xx:32,ERd R:W 2nd CMP.L ERs,ERd R:W NEXT DAA Rd R:W NEXT DAS Rd R:W NEXT DEC.B Rd R:W NEXT 962 R:W NEXT R:W 3rd R:W NEXT W:B EA スタック(L) R:W NEXT CMP.W #xx:16,Rd W:B EA スタック(L) BST #xx:3,Rd CMP.B Rs,Rd W:B EA R:W:M NEXT R:W:M NEXT R:W:M NEXT W:B EA 7 8 9 付 録 表 A.6 命令の実行状態(4) 命令 1 DEC.W #1/2,Rd R:W NEXT DEC.L #1/2,ERd R:W NEXT 2 3 4 DIVXS.B Rs,Rd R:W 2nd R:W NEXT 内部動作 11 ステート DIVXS.W Rs,ERd R:W 2nd R:W NEXT 内部動作 19 ステート DIVXU.B Rs,Rd R:W NEXT 内部動作 11 ステート 5 6 DIVXU.W Rs,ERd R:W NEXT 内部動作 19 ステート EEPMOV.B R:W 2nd R:B EAs *1 R:B EAd *1 R:B EAs *2 W:B EAd *2 R:W NEXT EEPMOV.W R:W 2nd 1 1 2 W:B EAd *2 R:W NEXT EXTS.W Rd R:W NEXT EXTS.L ERd R:W NEXT EXTU.W Rd R:W NEXT EXTU.L ERd R:W NEXT INC.B Rd R:W NEXT INC.W #1/2,Rd R:W NEXT INC.L #1/2,ERd R:W NEXT R:B EAs * R:B EAd * R:B EAs * ← n 回繰り返す *2 8 9 → JMP @ERn R:W NEXT JMP @aa:24 R:W 2nd 内部動作 1ステート R:W EA アドバンスト R:W NEXT R:W:M aa:8 R:W aa:8 アドバンスト R:W NEXT R:W EA W:W:M スタック(H) W:W アドバンスト R:W 2nd 内部動作 1ステート R:W EA W:W:M スタック(H) W:W スタック(L) アドバンスト R:W NEXT R:W:M aa:8 R:W aa:8 W:W:M スタック(H) W:W スタック(L) R:W EA JMP 7 R:W EA 内部動作 1ステート R:W EA @@aa:8 JSR スタック(L) @ERn JSR @aa:24 JSR @@aa:8 LDC #xx:8,CCR R:W NEXT LDC #xx:8,EXR R:W 2nd LDC Rs,CCR R:W NEXT R:W NEXT LDC Rs,EXR R:W NEXT LDC @ERs,CCR R:W 2nd R:W NEXT LDC @ERs,EXR R:W 2nd R:W NEXT R:W EA LDC@(d:16,ERs),CCR R:W 2nd R:W 3rd R:W NEXT R:W EA LDC@(d:16,ERs),EXR R:W 2nd R:W 3rd R:W NEXT R:W EA LDC@(d:32,ERs),CCR R:W 2nd R:W 3rd R:W 4th R:W 5th R:W NEXT R:W EA LDC@(d:32,ERs),EXR R:W 2nd R:W 3rd R:W 4th R:W 5th R:W NEXT R:W EA LDC @ERs+,CCR R:W 2nd R:W NEXT 内部動作 1ステート R:W EA LDC @ERs+,EXR R:W 2nd R:W NEXT 内部動作 1ステート R:W EA LDC @aa:16,CCR R:W 2nd R:W 3rd R:W NEXT R:W EA LDC @aa:16,EXR R:W 2nd R:W 3rd R:W NEXT R:W EA LDC @aa:32,CCR R:W 2nd R:W 3rd R:W 4th R:W NEXT R:W EA LDC @aa:32,EXR R:W 2nd R:W 3rd R:W 4th R:W NEXT R:W EA LDM.L @SP+, R:W 2nd R:W:M NEXT 内部動作 R:W:M R:W 1 ステート スタック(H) *3 スタック(L) *3 内部動作 R:W:M R:W 1 ステート スタック(H) *3 スタック(L) *3 内部動作 R:W:M R:W 1 ステート スタック(H) *3 スタック(L) *3 (ERn-ERn+1) *9 LDM.L @SP+, R:W 2nd R:W:M NEXT (ERn-ERn+2) *9 LDM.L @SP+, R:W 2nd R:W:M NEXT (ERn-ERn+3) *9 LDMAC ERs,MACH R:W EA 本 LSI では使用できません。 LDMAC ERs,MACL MAC @ERn+,@ERm+ 963 付 録 表 A.6 命令の実行状態(5) 命令 MOV.B #xx:8,Rd 1 2 3 4 5 6 7 R:W NEXT MOV.B Rs,Rd R:W NEXT MOV.B @ERs,Rd R:W NEXT R:B EA MOV.B @(d:16,ERs), R:W 2nd R:W NEXT R:B EA R:W 2nd R:W 3rd R:W 4th R:B EA Rd MOV.B @(d:32,ERs), R:W NEXT R:B EA Rd MOV.B @ERs+,Rd R:W NEXT 内部動作 1ステート MOV.B @aa:8,Rd R:W NEXT R:B EA MOV.B @aa:16,Rd R:W 2nd R:W NEXT R:B EA MOV.B @aa:32,Rd R:W 2nd R:W 3rd R:W NEXT MOV.B Rs,@ERd R:W NEXT W:B EA MOV.B Rs, R:W 2nd R:W NEXT W:B EA R:W 2nd R:W 3rd R:W 4th W:B EA R:B EA @(d:16,ERd) MOV.B Rs, R:W NEXT W:B EA @(d:32,ERd) MOV.B Rs,@-ERd R:W NEXT 内部動作 1ステート MOV.B Rs,@aa:8 R:W NEXT W:B EA MOV.B Rs,@aa:16 R:W 2nd R:W NEXT W:B EA MOV.B Rs,@aa:32 R:W 2nd R:W 3rd R:W NEXT MOV.W #xx:16,Rd R:W 2nd R:W NEXT MOV.W Rs,Rd R:W NEXT MOV.W @ERs,Rd R:W NEXT MOV.W @(d:16,ERs), R:W 2nd W:B EA R:W EA R:W NEXT R:W EA R:W 3rd R:W 4th Rd MOV.W @(d:32,ERs), R:W 2nd R:W NEXT R:W EA Rd MOV.W @ERs+,Rd R:W NEXT 内部動作 1ステート R:W EA MOV.W @aa:16,Rd R:W 2nd R:W NEXT R:W EA MOV.W @aa:32,Rd R:W 2nd R:W 3rd R:W NEXT MOV.W Rs,@ERd R:W NEXT W:W EA MOV.W Rs, R:W 2nd R:W NEXT W:W EA R:W 2nd R:W 3rd R:W 4th R:B EA @(d:16,ERd) MOV.W Rs, R:W NEXT W:W EA @(d:32,ERd) MOV.W Rs,@-ERd R:W NEXT 内部動作 1ステート W:W EA MOV.W Rs,@aa:16 R:W 2nd R:W NEXT W:W EA MOV.W Rs,@aa:32 R:W 2nd R:W 3rd R:W NEXT MOV.L #xx:32,ERd R:W 2nd R:W 3rd R:W NEXT W:W EA MOV.L ERs,ERd R:W NEXT MOV.L @ERs,ERd R:W 2nd R:W:M NEXT R:W:M EA R:W EA+2 MOV.L @(d:16,ERs), R:W 2nd R:W:M 3rd R:W NEXT R:W:M EA R:W EA+2 R:W 2nd R:W:M 3rd R:W:M 4th R:W 5th R:W NEXT MOV.L @ERs+,ERd R:W 2nd R:W:M NEXT 内部動作 1ステート R:W:M EA R:W EA+2 MOV.L @aa:16,ERd R:W 2nd R:W:M 3rd R:W NEXT R:W:M EA R:W EA+2 R:W:M EA ERd MOV.L @(d:32,ERs), R:W:M EA R:W EA+2 ERd MOV.L @aa:32,ERd R:W 2nd R:W:M 3rd R:W 4th R:W NEXT MOV.L ERs,@ERd R:W 2nd R:W:M NEXT W:W:M EA W:W EA+2 MOV.L ERs, R:W 2nd R:W:M 3rd R:W NEXT W:W:M EA W:W EA+2 R:W 2nd R:W:M 3rd R:W:M 4th R:W 5th R:W NEXT R:W 2nd R:W:M NEXT 内部動作 1ステート W:W:M EA W:W EA+2 R:W EA+2 @(d:16,ERd) MOV.L ERs, @(d:32,ERd) MOV.L ERs,@-ERd 964 W:W:M EA W:W EA+2 8 9 付 録 表 A.6 命令の実行状態(6) 命令 MOV.L ERs,@aa:16 1 2 3 4 5 R:W 2nd R:W:M 3rd R:W NEXT W:W:M EA W:W EA+2 MOV.L ERs,@aa:32 R:W 2nd R:W:M 3rd R:W 4th R:W NEXT W:W:M EA MOVFPE @aa:16,Rd 本 LSI では使用できません。 6 7 8 9 W:W EA+2 MOVTPE Rs,@aa:16 MULXS.B Rs,Rd R:W 2nd R:W NEXT 内部動作 11 ステート MULXS.W Rs,ERd R:W 2nd R:W NEXT 内部動作 19 ステート MULXU.B Rs,Rd R:W NEXT 内部動作 11 ステート MULXU.W Rs,ERd R:W NEXT 内部動作 19 ステート NEG.B Rd R:W NEXT NEG.W Rd R:W NEXT NEG.L ERd R:W NEXT NOP R:W NEXT NOT.B Rd R:W NEXT NOT.W Rd R:W NEXT NOT.L ERd R:W NEXT OR.B #xx:8,Rd R:W NEXT OR.B Rs,Rd R:W NEXT OR.W #xx:16,Rd R:W 2nd OR.W Rs,Rd R:W NEXT R:W NEXT OR.L #xx:32,ERd R:W 2nd R:W 3rd OR.L ERs,ERd R:W 2nd R:W NEXT ORC #xx:8,CCR R:W NEXT ORC #xx:8,EXR R:W 2nd POP.W Rn R:W NEXT 内部動作 1ステート R:W EA POP.L ERn R:W 2nd R:W:M NEXT 内部動作 1ステート PUSH.W Rn R:W NEXT 内部動作 1ステート W:W EA PUSH.L ERn R:W 2nd R:W:M NEXT 内部動作 1ステート ROTL.B Rd R:W NEXT ROTL.B #2,Rd R:W NEXT ROTL.W Rd R:W NEXT ROTL.W #2,Rd R:W NEXT ROTL.L ERd R:W NEXT ROTL.L #2,ERd R:W NEXT ROTR.B Rd R:W NEXT ROTR.B #2,Rd R:W NEXT ROTR.W Rd R:W NEXT ROTR.W #2,Rd R:W NEXT ROTR.L ERd R:W NEXT ROTR.L #2,ERd R:W NEXT ROTXL.B Rd R:W NEXT ROTXL.B #2,Rd R:W NEXT ROTXL.W Rd R:W NEXT ROTXL.W #2,Rd R:W NEXT ROTXL.L ERd R:W NEXT ROTXL.L #2,ERd R:W NEXT ROTXR.B Rd R:W NEXT ROTXR.B #2,Rd R:W NEXT ROTXR.W Rd R:W NEXT ROTXR.W #2,Rd R:W NEXT R:W NEXT R:W NEXT R:W:M EA R:W EA+2 W:W:M EA W:W EA+2 ROTXR.L ERd R:W NEXT ROTXR.L #2,ERd R:W NEXT RTE R:W NEXT R:W スタック(EXR) R:W スタック(H) R:W R:W NEXT R:W:M スタック(H) R:W スタック(L) RTS アドバンスト スタック(L) 内部動作 1ステート 内部動作 1ステート R:W R:W *4 *4 965 付 録 表 A.6 命令の実行状態(7) 命令 1 SHAL.B Rd R:W NEXT SHAL.B #2,Rd R:W NEXT SHAL.W Rd R:W NEXT SHAL.W #2,Rd R:W NEXT SHAL.L ERd R:W NEXT SHAL.L #2,ERd R:W NEXT SHAR.B Rd R:W NEXT SHAR.B #2,Rd R:W NEXT SHAR.W Rd R:W NEXT SHAR.W #2,Rd R:W NEXT SHAR.L ERd R:W NEXT SHAR.L #2,ERd R:W NEXT SHLL.B Rd R:W NEXT SHLL.B #2,Rd R:W NEXT SHLL.W Rd R:W NEXT SHLL.W #2,Rd R:W NEXT SHLL.L ERd R:W NEXT SHLL.L #2,ERd R:W NEXT SHLR.B Rd R:W NEXT SHLR.B #2,Rd R:W NEXT SHLR.W Rd R:W NEXT SHLR.W #2,Rd R:W NEXT SHLR.L ERd R:W NEXT SHLR.L #2,ERd R:W NEXT SLEEP R:W NEXT STC CCR,Rd R:W NEXT 2 3 4 5 6 内部動作:M STC EXR,Rd R:W NEXT STC CCR,@ERd R:W 2nd R:W NEXT W:W EA STC EXR,@ERd R:W 2nd R:W NEXT W:W EA STC CCR, R:W 2nd R:W 3rd R:W NEXT W:W EA R:W 2nd R:W 3rd R:W NEXT W:W EA R:W 2nd R:W 3rd R:W 4th R:W 5th R:W NEXT W:W EA R:W 2nd R:W 3rd R:W 4th R:W 5th R:W NEXT W:W EA STC CCR,@-ERd R:W 2nd R:W NEXT 内部動作 1ステート W:W EA STC EXR,@-ERd R:W 2nd R:W NEXT 内部動作 1ステート W:W EA STC CCR,@aa:16 R:W 2nd R:W 3rd R:W NEXT W:W EA STC EXR,@aa:16 R:W 2nd R:W 3rd R:W NEXT W:W EA STC CCR,@aa:32 R:W 2nd R:W 3rd R:W 4th R:W NEXT W:W EA STC EXR,@aa:32 R:W 2nd R:W 3rd R:W 4th R:W NEXT W:W EA STM.L (ERn-ERn+1), R:W 2nd R:W:M NEXT 内部動作 1ステート W:W:M スタック(H) W:W スタック(L) *3 @(d:16,ERd) STC EXR, @(d:16,ERd) STC CCR, @(d:32,ERd) STC EXR, @(d:32,ERd) *3 @-SP *9 STM.L (ERn-ERn+2), R:W 2nd R:W:M NEXT 内部動作 1ステート @-SP * STM.L (ERn-ERn+3), R:W 2nd R:W:M NEXT 内部動作 1ステート 本 LSI では使用できません。 STMAC MACL,ERd SUB.B Rs,Rd R:W NEXT SUB.W #xx:16,Rd R:W 2nd SUB.W Rs,Rd R:W NEXT SUB.L #xx:32,ERd R:W 2nd 966 W:W:M スタック(H) W:W スタック(L) *3 *3 @-SP *9 STMAC MACH,ERd W:W:M スタック(H) W:W スタック(L) *3 *3 9 R:W NEXT R:W 3rd R:W NEXT 7 8 9 付 録 表 A.6 命令の実行状態(8) 命令 1 SUB.L ERs,ERd R:W NEXT SUBS #1/2/4,ERd R:W NEXT SUBX #xx:8,Rd R:W NEXT SUBX Rs,Rd R:W NEXT TAS @ERd *8 R:W 2nd TRAPA #x:2 アドバンスト R:W NEXT 2 3 R:W NEXT R:B:M EA 内部動作 1ステート W:W 4 5 6 7 8 9 W:B EA スタック(L) W:W スタック(H) W:W スタック R:W:M VEC R:W VEC+2 内部動作 1ステート R:W *7 R:W:M VEC R:W VEC+2 内部動作 1ステート R:W *7 (EXR) XOR.B #xx8,Rd R:W NEXT XOR.B Rs,Rd R:W NEXT XOR.W #xx:16,Rd R:W 2nd XOR.W Rs,Rd R:W NEXT XOR.L #xx:32,ERd R:W 2nd R:W 3rd XOR.L ERs,ERd R:W 2nd R:W NEXT R:W NEXT R:W NEXT XORC #xx:8,CCR R:W NEXT XORC #xx:8,EXR R:W 2nd R:W NEXT リセット アドバンスト R:W:M VEC R:W VEC+2 内部動作 1ステート アドバンスト R:W 内部動作 1ステート W:W R:W *5 例外処理 割込み *6 例外処理 スタック(L) W:W スタック(H) W:W スタック (EXR) 【注】 *1 EAs は ER5、EAd は ER6 の内容です。 *2 EAs は ER5、EAd は ER6 の内容で、実行後それぞれ 1 が加算されます。 また、n は R4L または R4 の初期値であり、n=0 のときこれらの実行は行われません。 * 3 2 本退避/復帰時は 2 回、3 本退避/復帰時は 3 回、4 本退避/復帰時は 4 回繰り返し ます。 *4 リターン後の先頭アドレスです。 *5 プログラムのスタートアドレスです。 *6 プリフェッチアドレスです。退避される PC に 2 を加算したアドレスです。 また、スリープモード、ソフトウェアスタンバイモードからの復帰時にはリード動作は 行われず、内部動作となります。 *7 割込み処理ルーチンの先頭アドレスです。 *8 TAS 命令を使用する場合は、レジスタ ER0、ER1、ER4、ER5 を使用してください。 *9 STM/LDM 命令を使用する場合は、レジスタ ER0〜ER6 を使用してください。 967 付 録 B. 内部 I/O レジスタ B.1 アドレス一覧 アドレス 略 H'EC00 M RA 〜 SAR 号 ビット 7 ビット 6 ビット 5 ビット 4 ビット 3 ビット 2 ビット 1 ビット 0 SM1 SM0 DM1 DM0 MD1 MD0 DTS Sz モジュー ル名 DTC バス幅 16/32* ビット H'EFFF M RB CHN E DISEL − − − − − − − − − − − IBFIE4 IBFIE3 − DAR CRA CRB H’FE80 HICR2 H’FE84 IDR3 IDR7 IDR6 IDR5 IDR4 IDR3 IDR2 IDR1 IDR0 H’FE85 ODR3 ODR7 ODR6 ODR5 ODR4 ODR3 ODR2 ODR1 ODR0 H’FE86 STR3 DBU DBU DBU DBU C/D DBU IBF OBF H’FE8C IDR4 IDR7 IDR6 IDR5 IDR4 IDR3 IDR2 IDR1 IDR0 H’FE8D ODR4 ODR7 ODR6 ODR5 ODR4 ODR3 ODR2 ODR1 ODR0 H’FE8E STR4 DBU DBU DBU DBU C/D DBU IBF OBF H'FED8 KBCRH0 KBIOE KCLKI KDI KBFSEL KBIE KBF PER KBS H'FED9 KBCRL0 KBE KCLKO KDO − RXCR3 RXCR2 RXCR1 RXCR0 H'FEDA KBBR0 KB7 KB6 KB5 KB4 KB3 KB2 KB1 KB0 コントロー H'FEDC KBCRH1 KBIOE KCLKI KDI KBFSEL KBIE KBF PER KBS ラ H'FEDD KBCRL1 KBE KCLKO KDO − RXCR3 RXCR2 RXCR1 RXCR0 H'FEDE KBBR1 KB7 KB6 KB5 KB4 KB3 KB2 KB1 KB0 H'FEE0 KBCRH2 KBIOE KCLKI KDI KBFSEL KBIE KBF PER KBS H'FEE1 KBCRL2 KBE KCLKO KDO − RXCR3 RXCR2 RXCR1 RXCR0 H'FEE2 KBBR2 KB7 KB6 KB5 KB4 KB3 KB2 KB1 KB0 H'FEE4 KBCOMP IrE IrCKS2 IrCKS1 IrCKS0 KBADE KBCH2 KBCH1 KBCH0 H'FEE6 DDCSWR SWE SW IE IF CLR3 CLR2 CLR1 H'FEE8 ICRA ICR7 ICR6 ICR5 ICR4 ICR3 ICR2 H'FEE9 ICRB ICR7 ICR6 ICR5 ICR4 ICR3 H'FEEA ICRC ICR7 ICR6 ICR5 ICR4 H'FEEB ISR IRQ7F IRQ6F IRQ5F IRQ4F H'FEEC ISCRH 968 HIF 8 キーボード 8 バッファ IrDA/ 拡張 A/D 8 CLR0 IIC0 8 ICR1 ICR0 割込み 8 ICR2 ICR1 ICR0 コントロ ICR3 ICR2 ICR1 ICR0 ーラ IRQ3F IRQ2F IRQ1F IRQ0F IRQ7SCB IRQ7SCA IRQ6SCB IRQ6SCA IRQ5SCB IRQ5SCA IRQ4SCB IRQ4SCA 付 アドレス 略 号 ビット 7 ビット 6 ビット 5 ビット 4 ビット 3 ビット 2 ビット 1 ビット 0 モジュー ル名 バス幅 H'FEED ISCRL IRQ3SCB IRQ3SCA IRQ2SCB IRQ2SCA IRQ1SCB IRQ1SCA IRQ0SCB IRQ0SCA 割込み 8 H'FEEE DTCERA DTCEA7 DTCEA6 DTCEA5 DTCEA4 DTCEA3 DTCEA2 DTCEA1 DTCEA0 DTC 8 H'FEEF DTCERB DTCEB7 DTCEB6 DTCEB5 DTCEB4 DTCEB3 DTCEB2 DTCEB1 DTCEB0 H'FEF0 DTCERC DTCEC7 DTCEC6 DTCEC5 DTCEC4 DTCEC3 DTCEC2 DTCEC1 DTCEC0 H'FEF1 DTCERD DTCED7 DTCED6 DTCED5 DTCED4 DTCED3 DTCED2 DTCED1 DTCED0 H'FEF2 DTCERE DTCEE7 DTCEE6 DTCEE5 DTCEE4 DTCEE3 DTCEE2 DTCEE1 DTCEE0 H'FEF3 DTVECR SWDTE DTVEC6 DTVEC5 DTVEC4 DTVEC3 DTVEC2 DTVEC1 DTVEC0 H'FEF4 ABRKCR CMF − − − − − − BIE 割込み H'FEF5 BARA A23 A22 A21 A20 A19 A18 A17 A16 コントロ H'FEF6 BARB A15 A14 A13 A12 A11 A10 A9 A8 ーラ H'FEF7 BARC A7 A6 A5 A4 A3 A2 A1 − H'FF80 FLMCR1 FWE SWE − − EV PV E P H'FF81 FLMCR2 FLER − − − − − ESU PSU H'FF82 PCSR − − − − − PWCKB PWCKA − EBR1 − − − − − − EB9/− KWUL1 KWUL0 P6PUE − SDE CS4E EB7 EB6 EB5 EB4 EB3 H'FF83 SYSCR2 EBR2 8 PWM 8 EB8/− FLASH 8 CS3E HI12E HIF 8 EB2 EB1 EB0 FLASH 8 システム 8 8 SBYCR SSBY STS2 STS1 STS0 − SCK2 SCK1 SCK0 H'FF85 LPWRCR DTON LSON NESEL EXCLE − − − − H'FF86 MSTPCRH MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 H'FF87 MSTPCRL MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 H'FF88 SMR1 C/A CHR PE O/E STOP MP CKS1 CKS0 SCI1 ICCR1 ICE IEIC MST TRS ACKE BBSY IRIC SCP IIC1 H'FF89 8 FLASH H'FF84 BRR1 SCI1 8 ICSR1 ESTP STOP IRTR AASX AL AAS ADZ ACKB IIC1 H'FF8A SCR1 TIE RIE TE RE MPIE TEIE CKE1 CKE0 SCI1 8 H'FF8B TDR1 H'FF8C SSR1 TDRE RDRF ORER FER PER TEND MPB MPBT H'FF8D RDR1 H'FF8E SCMR1 − − − − SDIR SINV − SMIF ICDR1 ICDR7 ICDR6 ICDR5 ICDR4 ICDR3 ICDR2 ICDR1 ICDR0 IIC1 8 SARX1 SVAX6 SVAX5 SVAX4 SVAX3 SVAX2 SVAX1 SVAX0 FSX ICMR1 MLS WAIT CKS2 CKS1 CKS0 BC2 BC1 BC0 SAR1 SVA6 SVA5 SVA4 SVA3 SVA2 SVA1 SVA0 FS H'FF90 TIER ICIAE ICIBE ICICE ICIDE OCIAE OCIBE OVIE − FRT 16 H'FF91 TCSR ICFA ICFB ICFC ICFD OCFA OCFB OVF CCLRA H'FF92 FRCH H'FF93 FRCL H'FF94 OCRAH H'FF8F 録 OCRBH 969 付 録 アドレス H'FF95 略 号 ビット 7 ビット 6 ビット 5 ビット 4 ビット 3 ビット 2 ビット 1 ビット 0 OCRAL モジュー ル名 バス幅 FRT 16 SCI2 8 OCRBL H'FF96 TCR H'FF97 TOCR H'FF98 ICRAH IEDGA IEDGB ICRDMS OCRAMS IEDGC IEDGD BUFEA BUFEB CKS1 CKS0 ICRS OCRS OEA OEB OLVLA OLVLB OCRARH H'FF99 ICRAL OCRARL H'FF9A ICRBH OCRAFH H'FF9B ICRBL OCRAFL H'FF9C ICRCH OCRDMH H'FF9D 0 0 0 0 0 0 0 0 C/A CHR PE O/E STOP MP CKS1 CKS0 DADRAH DA13 DA12 DA11 DA10 DA9 DA8 DA7 DA6 DACR TEST PWME − − OEB OEA OS CKS ICRCL OCRDML H'FF9E ICRDH H'FF9F ICRDL H'FFA0 SMR2 H'FFA1 BRR2 SCI2 DADRAL DA5 DA4 DA3 DA2 DA1 DA0 CFS − H'FFA2 SCR2 TIE RIE TE RE MPIE TEIE CKE1 CKE0 H'FFA3 TDR2 H'FFA4 SSR2 TDRE RDRF ORER FER PER TEND MPB MPBT H'FFA5 RDR2 H'FFA6 SCMR2 − − − − SDIR SINV − SMIF DA13 DA12 DA11 DA10 DA9 DA8 DA7 DA6 DA5 DA4 DA3 DA2 DA1 DA0 CFS REGS − REGS CKS1 CKS0 DADRBH PWMX 8 PWMX SCI2 8 PWMX 8 WDT0 16 DACNTH H'FFA7 DADRBL DACNTL H'FFA8 TCSR0 OVF WT/IT TME RSTS RST/NMI CKS2 TCNT0 (write) H'FFA9 TCNT0 (read) H'FFAA PAODR 970 PA7ODR PA6ODR PA5ODR PA4ODR PA3ODR PA2ODR PA1ODR PA0ODR ポート 8 付 アドレス ビット 7 ビット 6 ビット 5 ビット 4 ビット 3 ビット 2 ビット 1 ビット 0 PAPIN (read) PA7PIN PA6PIN PA5PIN PA4PIN PA3PIN PA2PIN PA1PIN PA0PIN ポート PADDR (write) PA7DDR PA6DDR PA5DDR PA4DDR PA3DDR PA2DDR PA1DDR PA0DDR H'FFAC P1PCR P17PCR P16PCR P15PCR P14PCR P13PCR P12PCR P11PCR P10PCR H'FFAD P2PCR P27PCR P26PCR P25PCR P24PCR P23PCR P22PCR P21PCR P20PCR H'FFAE P3PCR P37PCR P36PCR P35PCR P34PCR P33PCR P32PCR P31PCR P30PCR H'FFB0 P1DDR P17DDR P16DDR P15DDR P14DDR P13DDR P12DDR P11DDR P10DDR H'FFB1 P2DDR P27DDR P26DDR P25DDR P24DDR P23DDR P22DDR P21DDR P20DDR H'FFB2 P1DR P17DR P16DR P15DR P14DR P13DR P12DR P11DR P10DR H'FFB3 P2DR P27DR P26DR P25DR P24DR P23DR P22DR P21DR P20DR H'FFB4 P3DDR P37DDR P36DDR P35DDR P34DDR P33DDR P32DDR P31DDR P30DDR H'FFB5 P4DDR P47DDR P46DDR P45DDR P44DDR P43DDR P42DDR P41DDR P40DDR H'FFB6 P3DR P37DR P36DR P35DR P34DR P33DR P32DR P31DR P30DR H'FFB7 P4DR P47DR P46DR P45DR P44DR P43DR P42DR P41DR P40DR H'FFB8 P5DDR − − − − − P52DDR P51DDR P50DDR H'FFB9 P6DDR P63DDR P62DDR P61DDR P60DDR H'FFBA P5DR − − − − − P52DR P51DR P50DR H'FFBB P6DR P67DR P66DR P65DR P64DR P63DR P62DR P61DR P60DR H'FFBC PBODR H'FFBD PBPIN (read) PB7PIN PB6PIN PB5PIN P8DDR (write) − P86DDR P85DDR P84DDR P83DDR P82DDR P81DDR P80DDR P7PIN (read) P77PIN P76PIN P75PIN P73PIN P71PIN PBDDR (write) PB7DDR PB6DDR PB5DDR PB4DDR PB3DDR PB2DDR PB1DDR PB0DDR H'FFAB H'FFBE 略 号 P67DDR P66DDR P65DDR P64DDR モジュー ル名 録 バス幅 8 PB7ODR PB6ODR PB5ODR PB4ODR PB3ODR PB2ODR PB1ODR PB0ODR − P86DR P74PIN P84DR PB3PIN P72PIN P70PIN P9DDR H'FFC1 P9DR P97DR P96DR P95DR P94DR P93DR P92DR P91DR P90DR H'FFC2 IER IRQ7E IRQ6E IRQ5E IRQ4E IRQ3E IRQ2E IRQ1E IRQ0E 割込み 8 H'FFC3 STCR IICS IICX1 IICX0 IICE FLSHE − ICKS1 ICKS0 システム 8 H'FFC4 SYSCR CS2E IOSE INTM1 INTM0 XRST NMIEG HIE RAME H'FFC5 MDCR EXPE − − − − − MDS1 MDS0 H'FFC6 BCR ICIS1 ICIS0 BRSTS0 − IOS1 IOS0 バスコン 8 H'FFC7 WSCR RAMS RAM0 ABW AST WMS1 WMS0 WC1 WC0 トローラ H'FFC8 TCR0 CMIEB CMIEA OVIE CCLR1 CCLR0 CKS2 CKS1 CKS0 TMR0, H'FFC9 TCR1 CMIEB CMIEA OVIE CCLR1 CCLR0 CKS2 CKS1 CKS0 TMR1 H'FFCA TCSR0 CMFB CMFA OVF ADTE OS3 OS2 OS1 OS0 H'FFCB TCSR1 CMFB CMFA OVF − OS3 OS2 OS1 OS0 P93DDR P92DDR P81DR PB0PIN H'FFC0 BRSTRM BRSTS1 P82DR PB1PIN P8DR P95DDR P94DDR P83DR PB2PIN H'FFBF P97DDR P96DDR P85DR PB4PIN P80DR P91DDR P90DDR 16 971 付 録 アドレス 略 号 ビット 7 ビット 6 ビット 5 ビット 4 ビット 3 ビット 2 ビット 1 ビット 0 モジュー ル名 H'FFCC TCORA0 TMR0, H'FFCD TCORA1 TMR1 H'FFCE TCORB0 H'FFCF TCORB1 H'FFD0 TCNT0 H'FFD1 TCNT1 H'FFD2 PWOERB OE15 OE14 OE13 OE12 OE11 OE10 OE9 OE8 H'FFD3 PWOERA OE7 OE6 OE5 OE4 OE3 OE2 OE1 OE0 H'FFD4 PWDPRB OS15 OS14 OS13 OS12 OS11 OS10 OS9 OS8 H'FFD5 PWDPRA OS7 OS6 OS5 OS4 OS3 OS2 OS1 OS0 H'FFD6 PWSL PWCKE PWCKS − − RS3 RS2 RS1 RS0 H'FFD7 PWDR0〜 PWDR15 H'FFD8 SMR0 C/A CHR PE O/E STOP MP CKS1 ICCR0 ICE IEIC MST TRS ACKE BBSY IRIC H'FFD9 8 CKS0 SCI0 8 SCP IIC0 BRR0 SCI0 ESTP STOP IRTR AASX AL AAS ADZ ACKB IIC0 H'FFDA SCR0 TIE RIE TE RE MPIE TEIE CKE1 CKE0 SCI0 H'FFDB TDR0 H'FFDC SSR0 TDRE RDRF ORER FER PER TEND MPB MPBT H'FFDD RDR0 H'FFDE SCMR0 − − − − SDIR SINV − SMIF ICDR0 ICDR7 ICDR6 ICDR5 ICDR4 ICDR3 ICDR2 ICDR1 ICDR0 SARX0 SVAX6 SVAX5 SVAX4 SVAX3 SVAX2 SVAX1 SVAX0 FSX ICMR0 MLS WAIT CKS2 CKS1 CKS0 BC2 BC1 BC0 SAR0 SVA6 SVA5 SVA4 SVA3 SVA2 SVA1 SVA0 FS H'FFE0 ADDRAH AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 H'FFE1 ADDRAL AD1 AD0 − − − − − − H'FFE2 ADDRBH AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 H'FFE3 ADDRBL AD1 AD0 − − − − − − H'FFE4 ADDRCH AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 H'FFE5 ADDRCL AD1 AD0 − − − − − − H'FFE6 ADDRDH AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 H'FFE7 ADDRDL AD1 AD0 − − − − − − H'FFE8 ADCSR ADF ADIE ADST SCAN CKS CH2 CH1 CH0 H'FFE9 ADCR TRGS1 TRGS0 − − − − − − H'FFEA TCSR1 OVF WT/IT TME PSS RST/NMI CKS2 CKS1 CKS0 TCNT1 (write) 972 16 PWM ICSR0 H'FFDF バス幅 IIC0 A/D 8 WDT1 16 付 アドレス 略 号 ビット 7 ビット 6 ビット 5 ビット 4 ビット 3 ビット 2 ビット 1 ビット 0 モジュー ル名 H'FFEB TCNT1(read) H'FFF0 HICR − − − − − IBFIE2 IBFIE1 TCRX CMIEB CMIEA OVIE CCLR1 CCLR0 CKS2 CKS1 CKS0 TMRX TCRY CMIEB CMIEA OVIE CCLR1 CCLR0 CKS2 CKS1 CKS0 TMRY H'FFF1 H'FFF2 H'FFF3 H'FFF4 H'FFF5 KMIMR WDT1 KMIMR7 KMIMR6 KMIMR5 KMIMR4 KMIMR3 KMIMR2 FGA20E HIF CMFB CMFA OVF ICF OS3 OS2 OS1 OS0 TMRX TCSRY CMFB CMFA OVF ICIE OS3 OS2 OS1 OS0 TMRY TMRX TCORAY TMRY KMIMRA KMIMR15 KMIMR14 KMIMR13 KMIMR12 KMIMR11 KMIMR10 KMIMR9 KMIMR8 割込み TICRF TMRX TCORBY TMRY IDR7 IDR6 IDR5 IDR4 IDR3 IDR2 IDR1 IDR0 TMRX TCNTY TMRY ODR7 ODR6 ODR5 ODR4 ODR3 ODR2 ODR1 ODR0 TCORC H'FFF6 − − − − − − − IS STR1 DBU DBU DBU DBU C/D DBU IBF OBF TCORAX HIF TMRY HIF TMRX H'FFF7 TCORBX H'FFF8 DADR0 H'FFF9 DADR1 H'FFFA DACR DAOE1 DAOE0 DAE − − − − − H'FFFC IDR2 IDR7 IDR6 IDR5 IDR4 IDR3 IDR2 IDR1 IDR0 HIF SIMOD1 SIMOD0 SCONE ICST HFINV VFINV HIINV VIINV タイマコネクション ODR2 ODR7 ODR6 ODR5 ODR4 ODR3 ODR2 ODR1 ODR0 HIF TCONRO HOE VOE CLOE CBOE HOINV VOINV CLOINV STR2 DBU DBU DBU DBU C/D DBU IBF H'FFFD H'FFFE TCONRS H'FFFF SEDGR 8 TMRX TISR TCONRI 8 HIF TCNTX ODR1 16 KM7PCR KM6PCR KM5PCR KM4PCR KM3PCR KM2PCR KM1PCR KM0PCR ポート TICRR IDR1 バス幅 KMIMR1 KMIMR0 割込み TCSRX KMPCR 録 D/A TMRX/Y VEDG CBOINV タイマコネクション OBF HIF ISGENE HOMOD1 HOMOD0 VOMOD1 VOMOD0 CLMOD1 CLMOD0 タイマコネクション HEDG CEDG HFEDG VFEDG PREQF IHI IVI 973 付 録 B.2 レジスタ選択条件 下位アドレス レジスタ名称 H’EC00〜 MRA H'EFFF SAR H8S/2148 シリーズ H8S/2147N H8S/2144 シリーズ レジスタ選択条件 レジスタ選択条件 レジスタ選択条件 SYSCR の RAME=1 モジュール 名 DTC MRB DAR CRA CRB H'FE80 HICR2 MSTP2=0 MSTP2=0 HIF H'FE84 IDR3 H'FE85 ODR3 H'FE86 STR3 H'FE8C IDR4 H'FE8D ODR4 H'FE8E STR4 H'FED8 KBCRH0 MSTP2=0 MSTP2=0 キーボード H'FED9 KBCRL0 バッファ H'FEDA KBBR0 コントロー H'FEDC KBCRH1 ラ H'FEDD KBCRL1 H'FEDE KBBR1 H'FEE0 KBCRH2 H'FEE1 KBCRL2 H'FEE2 KBBR2 H'FEE4 KBCOMP 条件なし 条件なし H'FEE6 DDCSWR MSTP4=0 MSTP4=0 H'FEE8 ICRA 条件なし 条件なし H'FEE9 ICRB コントロー H'FEEA ICRC ラ H'FEEB ISR H'FEEC ISCRH H'FEED ISCRL H'FEEE DTCERA H'FEEF DTCERB H'FEF0 DTCERC H'FEF1 DTCERD H'FEF2 DTCERE 条件なし IrDA/拡張 A/D 974 条件なし IIC0 条件なし 割込み DTC 付 下位アドレス レジスタ名称 H8S/2148 シリーズ H8S/2147N H8S/2144 シリーズ レジスタ選択条件 レジスタ選択条件 レジスタ選択条件 録 モジュール 名 H'FEF3 DTVECR 条件なし H'FEF4 ABRKCR 条件なし H'FEF5 BARA コントロー H'FEF6 BARB ラ H'FEF7 BARC H'FF80 FLMCR1 H'FF81 FLMCR2 H'FF82 DTC 条件なし 割込み 条件なし STCR の FLSHE=1 STCR の FLSHE=1 PCSR STCR の FLSHE=0 STCR の FLSHE=0 EBR1 STCR の FLSHE=1 STCR の FLSHE=1 SYSCR2 STCR の FLSHE=0 STCR の FLSHE=0 EBR2 STCR の FLSHE=1 STCR の FLSHE=1 STCR の FLSHE=1 FLASH H'FF84 SBYCR STCR の FLSHE=0 STCR の FLSHE=0 STCR の FLSHE=0 システム H'FF85 LPWRCR H'FF86 MSTPCRH H'FF87 MSTPCRL H'FF88 SMR1 MSTP6=0 STCR の IICE=0 MSTP6=0 STCR の IICE=0 MSTP6=0 STCR の IICE=0 SCI1 ICCR1 MSTP3=0 STCR の IICE=1 MSTP3=0 STCR の IICE=1 BRR1 MSTP6=0 STCR の IICE=0 MSTP6=0 STCR の IICE=0 ICSR1 MSTP3=0 STCR の IICE=1 MSTP3=0 STCR の IICE=1 H'FF8A SCR1 MSTP6=0 MSTP6=0 MSTP6=0 H'FF8B TDR1 H'FF8C SSR1 H'FF8D RDR1 H'FF8E SCMR1 MSTP6=0 STCR の IICE=0 MSTP6=0 STCR の IICE=0 MSTP6=0 STCR の IICE=0 ICDR1 MSTP3=0 ICCR1 の ICE=1 MSTP3=0 SARX1 STCR の IICE=1 ICCR1 の ICE=0 STCR の IICE=1 ICCR1 の ICE=0 ICMR1 ICCR1 の ICE=1 ICCR1 の ICE=1 SAR1 ICCR1 の ICE=0 ICCR1 の ICE=0 H'FF83 H'FF89 H'FF8F STCR の FLSHE=1 PWM STCR の FLSHE=1 IIC1 MSTP6=0 STCR の IICE=0 SCI1 IIC1 TIER H'FF91 TCSR H'FF92 FRCH H'FF93 FRCL H'FF94 OCRAH TOCR の OCRS=0 TOCR の OCRS=0 TOCR の OCRS=0 OCRBH TOCR の OCRS=1 TOCR の OCRS=1 TOCR の OCRS=1 OCRAL TOCR の OCRS=0 TOCR の OCRS=0 TOCR の OCRS=0 OCRBL TOCR の OCRS=1 TOCR の OCRS=1 TOCR の OCRS=1 H'FF95 H'FF96 SCI1 IIC1 ICCR1 の ICE=1 MSTP13=0 FLASH HIF H'FF90 MSTP13=0 FLASH MSTP13=0 FRT TCR 975 付 録 下位アドレス レジスタ名称 H8S/2148 シリーズ H8S/2147N H8S/2144 シリーズ レジスタ選択条件 レジスタ選択条件 レジスタ選択条件 H'FF97 TOCR H'FF98 ICRAH TOCR の ICRS =0 TOCR の ICRS =0 TOCR の ICRS =0 OCRARH TOCR の ICRS =1 TOCR の ICRS =1 TOCR の ICRS =1 ICRAL TOCR の ICRS =0 TOCR の ICRS =0 TOCR の ICRS =0 OCRARL TOCR の ICRS =1 TOCR の ICRS =1 TOCR の ICRS =1 ICRBH TOCR の ICRS =0 TOCR の ICRS =0 TOCR の ICRS =0 OCRAFH TOCR の ICRS =1 TOCR の ICRS =1 TOCR の ICRS =1 ICRBL TOCR の ICRS =0 TOCR の ICRS =0 TOCR の ICRS =0 OCRAFL TOCR の ICRS =1 TOCR の ICRS =1 TOCR の ICRS =1 ICRCH TOCR の ICRS =0 TOCR の ICRS =0 TOCR の ICRS =0 OCRDMH TOCR の ICRS =1 TOCR の ICRS =1 TOCR の ICRS =1 ICRCL TOCR の ICRS =0 TOCR の ICRS =0 TOCR の ICRS =0 OCRDML TOCR の ICRS =1 TOCR の ICRS =1 TOCR の ICRS =1 H'FF99 H'FF9A H'FF9B H'FF9C H'FF9D MSTP13=0 MSTP13=0 ICRDH H'FF9F ICRDL H'FFA0 SMR2 MSTP5=0 STCR の IICE=0 MSTP5=0 STCR の IICE=0 DADRAH MSTP11=0 DACNT/DADRB MSTP11=0 STCR の IICE=1 の REGS=0 STCR の IICE=1 の REGS=0 DACR H'FFA1 DADRAL MSTP11=0 DACNT/DADRB MSTP11=0 STCR の IICE=1 の REGS=0 STCR の IICE=1 DACNT/DADRB の REGS=1 MSTP5=0 STCR の IICE=0 DACNT/DADRB MSTP11=0 DACNT/DADRB STCR の IICE=1 の REGS=0 STCR の IICE=1 MSTP5=0 SCMR2 MSTP5=0 STCR の IICE=0 MSTP5=0 STCR の IICE=0 MSTP5=0 STCR の IICE=0 DADRBH MSTP11=0 DACNT/DADRB MSTP11=0 STCR の IICE=1 の REGS=0 STCR の IICE=1 の REGS=0 SSR2 H'FFA5 RDR2 H'FFA6 DACNTH DADRBL DACNTL TCSR0 TCNT0 (write) TCNT0 (read) 条件なし DACNT/DADRB MSTP11=0 STCR の IICE=1 SCI2 PWMX の REGS=0 SCI2 DACNT/DADRB PWMX の REGS=0 DACNT/DADRB DACNT/DADRB の REGS=1 の REGS=1 の REGS=1 DACNT/DADRB DACNT/DADRB DACNT/DADRB の REGS=0 の REGS=0 の REGS=0 DACNT/DADRB DACNT/DADRB DACNT/DADRB の REGS=1 の REGS=1 条件なし PWMX DACNT/DADRB MSTP5=0 H'FFA4 SCI2 の REGS=0 MSTP5=0 TDR2 976 の REGS=1 MSTP5=0 STCR の IICE=0 H'FFA3 H'FFA9 DACNT/DADRB の REGS=1 MSTP5=0 STCR の IICE=0 SCR2 H'FFA8 DACNT/DADRB BRR2 H'FFA2 H'FFA7 MSTP5=0 STCR の IICE=0 DACNT/DADRB MSTP11=0 名 FRT MSTP13=0 H'FF9E モジュール DACNT/DADRB の REGS=1 条件なし WDT0 付 下位アドレス レジスタ名称 H'FFAA PAODR0 H'FFAB PAPIN (read) H8S/2148 シリーズ H8S/2147N H8S/2144 シリーズ レジスタ選択条件 レジスタ選択条件 レジスタ選択条件 録 モジュール 名 条件なし 条件なし 条件なし ポート PADDR (write) H'FFAC P1PCR H'FFAD P2PCR H'FFAE P3PCR H'FFB0 P1DDR H'FFB1 P2DDR H'FFB2 P1DR H'FFB3 P2DR H'FFB4 P3DDR H'FFB5 P4DDR H'FFB6 P3DR H'FFB7 P4DR H'FFB8 P5DDR H'FFB9 P6DDR H'FFBA P5DR H'FFBB P6DR H'FFBC PBODR H'FFBD P8DDR (write) PBPIN (read) H'FFBE P7PIN (read) PBDDR (write) H'FFBF P8DR H'FFC0 P9DDR H'FFC1 P9DR H'FFC2 IER 条件なし 条件なし 条件なし 割込み H'FFC3 STCR 条件なし 条件なし 条件なし システム H'FFC4 SYSCR H'FFC5 MDCR H'FFC6 BCR 条件なし 条件なし 条件なし バスコント H'FFC7 WSCR H'FFC8 TCR0 H'FFC9 TCR1 H'FFCA TCSR0 H'FFCB TCSR1 ローラ MSTP12=0 MSTP12=0 MSTP12=0 TMR0, TMR1 977 付 録 下位アドレス レジスタ名称 H'FFCC TCORA0 H'FFCD TCORA1 H'FFCE TCORB0 H'FFCF TCORB1 H'FFD0 TCNT0 H'FFD1 TCNT1 H'FFD2 PWOERB H'FFD3 PWOERA H'FFD4 PWDPRB H'FFD5 PWDPRA H'FFD6 PWSL H'FFD7 PWDR0〜15 H'FFD8 H8S/2148 シリーズ H8S/2147N H8S/2144 シリーズ レジスタ選択条件 レジスタ選択条件 レジスタ選択条件 MSTP12=0 MSTP12=0 MSTP12=0 条件なし MSTP11=0 MSTP11=0 SMR0 MSTP7=0 STCR の IICE=0 MSTP7=0 STCR の IICE=0 ICCR0 MSTP4=0 STCR の IICE=1 MSTP4=0 STCR の IICE=1 BRR0 MSTP7=0 STCR の IICE=0 MSTP7=0 STCR の IICE=0 ICSR0 MSTP4=0 STCR の IICE=1 MSTP4=0 STCR の IICE=1 H'FFDA SCR0 MSTP7=0 MSTP7=0 MSTP7=0 H'FFDB TDR0 H'FFDC SSR0 H'FFDD RDR0 H'FFDE SCMR0 MSTP7=0 STCR の IICE=0 MSTP7=0 STCR の IICE=0 MSTP7=0 STCR の IICE=0 ICDR0 MSTP4=0 ICCR0 の ICE=1 MSTP4=0 ICCR0 の ICE=1 SARX0 STCR の IICE=1 ICCR0 の ICE=0 STCR の IICE=1 ICCR0 の ICE=0 H'FFDF ICCR0 の ICE=1 ICCR0 の ICE=1 SAR0 ICCR0 の ICE=0 ICCR0 の ICE=0 ADDRAH H'FFE1 ADDRAL H'FFE2 ADDRBH H'FFE3 ADDRBL H'FFE4 ADDRCH H'FFE5 ADDRCL H'FFE6 ADDRDH H'FFE7 ADDRDL H'FFE8 ADCSR H'FFE9 ADCR 978 PWM ICMR0 H'FFE0 名 TMR0, TMR1 条件なし H'FFD9 モジュール MSTP9=0 MSTP9=0 MSTP7=0 STCR の IICE=0 SCI0 IIC0 MSTP7=0 STCR の IICE=0 SCI0 IIC0 SCI0 IIC0 MSTP9=0 A/D 付 下位アドレス レジスタ名称 H'FFEA TCSR1 H8S/2148 シリーズ H8S/2147N H8S/2144 シリーズ レジスタ選択条件 レジスタ選択条件 レジスタ選択条件 条件なし 条件なし MSTP2=0 SYSCR の HIE=1 MSTP2=0 SYSCR の HIE=1 条件なし 録 モジュール 名 WDT1 TCNT1 (write) H'FFEB TCNT1 (read) H'FFF0 HICR TCRX MSTP8=0 HIF TCONRS の TMRX SYSCR の HIE=0 TMRX/Y=0 TCONRS の TCRY MSTP8=0 SYSCR の HIE=0 MSTP8=0 SYSCR の HIE=0 TMRY MSTP2=0 SYSCR の HIE=1 MSTP2=0 SYSCR の HIE=1 割込み TMRX/Y=1 H'FFF1 KMIMR TCSRX MSTP2=0 SYSCR の HIE=1 MSTP8=0 TCONRS の TMRX SYSCR の HIE=0 TMRX/Y=0 TCONRS の TCSRY MSTP8=0 SYSCR の HIE=0 MSTP8=0 SYSCR の HIE=0 TMRY MSTP2=0 SYSCR の HIE=1 MSTP2=0 SYSCR の HIE=1 ポート TMRX/Y=1 H'FFF2 KMPCR TICRR MSTP2=0 SYSCR の HIE=1 MSTP8=0 TCONRS の TMRX SYSCR の HIE=0 TMRX/Y=0 TCONRS の TCORAY MSTP8=0 SYSCR の HIE=0 MSTP8=0 SYSCR の HIE=0 TMRY MSTP2=0 SYSCR の HIE=1 MSTP2=0 SYSCR の HIE=1 割込み TMRX/Y=1 H'FFF3 KMIMRA TICRF MSTP2=0 SYSCR の HIE=1 MSTP8=0 TCONRS の TMRX SYSCR の HIE=0 TMRX/Y=0 TCONRS の TCORBY MSTP8=0 SYSCR の HIE=0 MSTP8=0 SYSCR の HIE=0 TMRY TMRX/Y=1 H'FFF4 IDR1 TCNTX MSTP2=0 SYSCR の HIE=1 MSTP8=0 MSTP2=0 SYSCR の HIE=1 HIF TCONRS の TMRX SYSCR の HIE=0 TMRX/Y=0 TCONRS の TCNTY MSTP8=0 SYSCR の HIE=0 MSTP8=0 SYSCR の HIE=0 TMRY TMRX/Y=1 H'FFF5 ODR1 MSTP2=0 SYSCR の HIE=1 TCORC MSTP8=0 MSTP2=0 SYSCR の HIE=1 HIF TCONRS の TMRX SYSCR の HIE=0 TMRX/Y=0 TCONRS の TISR MSTP8=0 SYSCR の HIE=0 MSTP8=0 SYSCR の HIE=0 TMRY TMRX/Y=1 H'FFF6 STR1 TCORAX MSTP2=0 SYSCR の HIE=1 MSTP8=0 MSTP2=0 SYSCR の HIE=1 HIF TCONRS の TMRX SYSCR の HIE=0 TMRX/Y=0 H'FFF7 TCORBX H'FFF8 DADR0 H'FFF9 DADR1 H'FFFA DACR MSTP10=0 MSTP10=0 MSTP10=0 D/A 979 付 録 下位アドレス レジスタ名称 H'FFFC H8S/2148 シリーズ H8S/2147N H8S/2144 シリーズ レジスタ選択条件 レジスタ選択条件 レジスタ選択条件 IDR2 MSTP2=0 SYSCR の HIE=1 TCONRI MSTP8=0 SYSCR の HIE=0 ODR2 MSTP2=0 SYSCR の HIE=1 TCONRO MSTP8=0 SYSCR の HIE=0 MSTP2=0 SYSCR の HIE=1 モジュール 名 HIF タイマコネ クション H'FFFD MSTP2=0 SYSCR の HIE=1 HIF タイマコネ クション H'FFFE STR2 MSTP2=0 SYSCR の HIE=1 TCONRS MSTP8=0 SYSCR の HIE=0 MSTP2=0 SYSCR の HIE=1 HIF タイマコネ クション H'FFFF 980 SEDGR 付 録 B.3 機能一覧 H'EC00〜H'EFFF:DTC モードレジスタ A MRA:DTC 7 6 5 4 3 2 1 0 SM1 SM0 DM1 DM0 MD1 MD0 DTS Sz 不定 不定 不定 不定 不定 不定 不定 不定 − − − − − − − − ビット : 初期値 : R/W : DTCデータ トランスファサイズ 0 バイトサイズ 転送 1 ワードサイズ 転送 DTC転送モードセレクト 0 デスティネーション側がリピート 領域またはブロック領域 1 ソース側がリピート領域または ブロック領域 DTCモード 0 1 0 ノーマルモード 1 リピートモード 0 ブロック転送モード 1 − デスティネーションアドレスモード 0 − DARは固定 1 0 DARは転送後インクリメント (Sz=0のとき+1、Sz=1のとき+2) 1 DARは転送後デクリメント (Sz=0のときー1、Sz=1のときー2) ソースアドレスモード 0 − SARは固定 1 0 SARは転送後インクリメント (Sz=0のとき+1、Sz=1のとき+2) 1 SARは転送後デクリメント (Sz=0のときー1、Sz=1のときー2) 981 付 録 H'EC00〜H'EFFF:DTC モードレジスタ B MRB:DTC ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CHNE DISEL − − − − − − 不定 不定 不定 不定 不定 不定 不定 不定 − − − − − − − − DTCインタラプトセレクト 0 DTCデータ転送終了後、転送カウンタが0でなければ、 CPUへの割込みを禁止 1 DTCデータ転送終了後、CPUへの割込みを許可 DTCチェイン転送イネーブル 0 DTCデータ転送終了 1 DTCチェイン転送 H'EC00〜H'EFFF:DTC ソースアドレスレジスタ ビット : 23 22 21 20 19 --- SAR:DTC 4 3 2 1 0 --初期値 : 不定 不定 不定 不定 不定 R/W : − − − − − ----- 不定 不定 不定 不定 不定 − − − − − 転送データの転送元アドレスを指定 H'EC00〜H'EFFF:DTC デスティネーションアドレスレジスタ ビット : 23 22 21 20 19 --- 4 3 DAR:DTC 2 1 0 --初期値 : 不定 不定 不定 不定 不定 R/W : − − − − − ----- 不定 不定 不定 不定 不定 − DTCの転送データの転送先アドレスを指定 982 − − − − 付 録 H'EC00〜H'EFFF:DTC 転送カウントレジスタ A CRA:DTC ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 R/W : − − − − − − − − − − − − CRAH − − − − 2 1 0 CRAL DTCのデータ転送の転送回数を指定 H'EC00〜H'EFFF:DTC 転送カウントレジスタ B CRB:DTC ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 初期値 : 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 不定 R/W : − − − − − − − − − − − − − − − − DTCのブロックデータ転送の転送回数を指定 H'FE80:ホストインタフェースコントロールレジスタ 2 ビット : 初期値 : スレーブR/W : ホストR/W : 7 − 1 − − 6 − 1 − − 5 − 1 − − 4 − 1 − − 3 − 1 − − HICR2:HIF 2 IBFIE4 0 R/W − 1 IBFIE3 0 R/W − 0 − 0 − − 入力データレジスタフル割込みイネーブル IBFIE4 IBFIE3 説明 0 入力データレジスタ(IDR3)受信完了割込み要求を禁止(初期値) − 1 − 入力データレジスタ(IDR3)受信完了割込み要求を許可 − 入力データレジスタ(IDR4)受信完了割込み要求を禁止(初期値) 0 入力データレジスタ(IDR4)受信完了割込み要求を許可 1 − 983 付 録 H'FE84:入力データレジスタ 3 IDR3:HIF H'FE8C:入力データレジスタ 4 IDR4:HIF ビット : 初期値 : 7 6 5 4 3 2 1 0 IDR7 IDR6 IDR5 IDR4 IDR3 IDR2 IDR1 IDR0 ― ― ― ― ― ― ― ― スレーブR/W : R R R R R R R R ホストR/W W W W W W W W W CS=Lowのとき、IOWの立ち上がりでホストデータバスの内容を格納 H’FE85:出力データレジスタ 3 ODR3:HIF H’FE8D:出力データレジスタ 4 ODR4:HIF ビット : 7 6 5 4 3 2 1 0 ODR7 ODR6 ODR5 ODR4 ODR3 ODR2 ODR1 ODR0 ― ― ― ― ― ― ― ― スレーブR/W : R/W R/W R/W R/W R/W R/W R/W R/W ホストR/W R R R R R R R R 初期値 : HA0=Low、CS=Low、IOR=Lowのとき、 ODRの内容をホストデータバスに出力 984 付 録 H’FE86:ステータスレジスタ 3 STR3:HIF H’FE8E:ステータスレジスタ 4 STR4:HIF ビット : 初期値 : 7 6 5 4 3 2 1 0 DBU DBU DBU DBU C/D DBU IBF OBF 0 0 0 0 0 0 0 0 スレーブR/W : R/W R/W R/W R/W R R/W R R/(W) ホストR/W R R R R R R R R ユーザ定義ビット 出力データレジスタフル 0 [クリア条件] ホストがODRをリード または、 スレーブがOBFビットに0ライト 1 [セット条件] スレーブがODRにライト 入力データレジスタフル 0 [クリア条件] スレーブがIDRをリード 1 [セット条件] ホストがIDRにライト コマンド/データ 0 入力データレジスタ(IDR)の内容はデータ 1 入力データレジスタ(IDR)の内容はコマンド 985 付 録 H'FED8 :キーボードコントロールレジスタ H0 KBCRH0 : H'FEDC:キーボードコントロールレジスタ H1 KBCRH1 : H'FEE0 :キーボードコントロールレジスタ H2 KBCRH2 : キーボードバッファコントローラ ビット: 初期値: R/W: 7 6 5 4 3 2 1 0 KBIOE KCLKI KDI KBFSEL KBIE KBF PER KBS 0 1 1 1 0 0 0 0 R/W R R R/W R/W R/(W)* R/(W)* R キーボードストップ 0 ストップビット0を受信 1 ストップビット1を受信 パリティエラー 0 [クリア条件] PER=1の状態でリードした後、0を ライトしたとき 1 [セット条件] 奇数パリティのエラーが発生したとき キーボードバッファレジスタフル 0 [クリア条件] KBF=1の状態をリードした後、0をライトしたとき 1 [セット条件] ・KBFSEL=1の状態でデータが正常に受信され、 KBBRへデータが転送されたとき(キーボードバッ ファレジスタフルフラグ) ・KBFSEL=0の状態でKCLKの立ち下がりエッジを検 出したとき(KCLK割込みフラグ) キーボードインタラプトイネーブル 0 割込み要求を禁止 1 割込み要求を許可 キーボードバッファレジスタフルセレクト 0 KBFビットをKCLKの立ち下がりによる割込みフラグとして使用する 1 KBFビットをキーボードバッファフルフラグとして使用する キーボードデータイン 0 KD入出力端子はLowレベル 1 KD入出力端子はHighレベル キーボードクロックイン 0 KCLK入出力端子はLowレベル 1 KCLK入出力端子はHighレベル キーボードインアウトイネーブル 【注】 986 0 本モジュールは非動作(KCLK、KD信号端子はポート機能)状態 1 本モジュールは送受信可能状態(KCLK、KD信号端子はバス駆動状態) * フラグをクリアするための0ライトのみ可能です。 付 録 H'FED9 :キーボードコントロールレジスタ L0 KBCRL0: H'FEDD:キーボードコントロールレジスタ L1 KBCRL1: H'FEE1 :キーボードコントロールレジスタ L2 KBCRL2: キーボードバッファコントローラ ビット: 初期値: R/W: 7 6 5 4 3 2 1 0 KBE KCLKO KDO ― RXCR3 RXCR2 RXCR1 RXCR0 0 1 1 1 0 0 0 0 R/W R/W R/W ― R R R R レシーブカウンタ RXCR3 RXCR2 RXCR1 RXCR0 受信データの内容 0 0 0 1 1 0 1 1 0 0 1 1 ― 0 ― 1 スタートビット 0 KB0 1 KB1 0 KB2 1 KB3 0 KB4 1 KB5 0 KB6 1 KB7 0 パリティビット 1 ― ― ― キーボードデータアウト 0 キーボードバッファコントローラデータ入出力端子はLowレベル 1 キーボードバッファコントローラデータ入出力端子はHighレベル キーボードクロックアウト 0 キーボードバッファコントローラクロック入出力端子はLowレベル 1 キーボードバッファコントローラクロック入出力端子はHighレベル キーボードイネーブル 0 KBBRへの受信データのロードを禁止 1 KBBRへの受信データのロードを許可 987 付 録 H'FEDA:キーボードデータバッファレジスタ 0 KBBR0 : H'FEDE:キーボードデータバッファレジスタ 1 KBBR1 : H'FEE2 :キーボードデータバッファレジスタ 2 KBBR2 : キーボードバッファコントローラ ビット: 7 6 5 4 3 2 1 0 KB7 KB6 KB5 KB4 KB3 KB2 KB1 KB0 初期値: 0 0 0 0 0 0 0 0 R/W: R R R R R R R R 受信データを格納 988 付 録 H'FEE4:キーボードコンパレータコントロールレジスタ KBCOMP: IrDA/拡張 A/D ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 IrE IrCKS2 IrCKS1 IrCKS0 KBADE KBCH2 KBCH1 KBCH0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W キーボードコンパレータコントロール ビット3 ビット2 ビット1 ビット0 A/D変換器 A/D変換器 KBADE KBCH2 KBCH1 KBCH0 チャネル6入力 チャネル7入力 0 ― ― ― AN6 AN7 1 0 0 0 CIN0 CIN8 1 CIN1 CIN9 0 CIN2 CIN10 1 CIN3 CIN11 0 CIN4 CIN12 1 CIN5 CIN13 0 CIN6 CIN14 1 CIN7 CIN15 1 0 1 1 IrDAクロックセレクト2〜0 0 0 1 1 0 1 0 B×3/16(ビットレートの16分の3) 1 φ/2 0 φ/4 1 φ/8 0 φ/16 1 φ/32 0 φ/64 1 φ/128 IrDAイネーブル 0 TxD2/IrTxD、RxD2/IrRxD端子はTxD2、RxD2として動作 1 TxD2/IrTxD、RxD2/IrRxD端子はIrTxD、IrRxDとして動作 989 付 録 H'FEE6:DDC スイッチレジスタ ビット : 初期値 : R/W : DDCSWR:IIC0 7 6 5 4 3 2 1 0 SWE SW IE IF CLR3 CLR2 CLR1 CLR0 0 0 0 0 1 1 1 1 R/W R/W R/W R/(W)* W W W W IICクリアビット DDCモードスイッチ割込みフラグ 0 フォーマット自動切り替え実行時の割込み要求なし [クリア条件] ・IF=1の状態をリードした後、0をライトしたとき 1 フォーマット自動切り替え実行時の割込み要求あり [セット条件] ・SWE=1で、SCLに立ち下がりエッジを検出したとき DDCモードスイッチ割込み許可ビット 0 フォーマット自動切り替え実行時の割込みを禁止 1 フォーマット自動切り替え実行時の割込みを許可 DDCモードスイッチ 0 IICチャネル0をI2Cバスフォーマットで使用する [クリア条件] (1)ソフトウェアにより0をライトしたとき (2)SWE=1で、SCLに立ち下がりエッジを検出したとき 1 IICチャネル0をフォーマットレスで使用する [セット条件] ・SW=0の状態をリードした後、1をライトしたとき DDCモードスイッチイネーブル 0 IICチャネル0の、フォーマットレスからI2Cバスフォーマット への自動切り替えを禁止する 1 IICチャネル0の、フォーマットレスからI2Cバスフォーマット への自動切り替えを許可する 【注】* 990 フラグをクリアするための0ライトのみ可能です。 付 H'FEE8 :インタラプトコントロールレジスタ A H'FEE9 :インタラプトコントロールレジスタ B H'FEEA :インタラプトコントロールレジスタ C ビット : 初期値 : R/W : 録 ICRA: ICRB: ICRC: 割込みコントローラ 7 6 5 4 3 2 1 0 ICR7 ICR6 ICR5 ICR4 ICR3 ICR2 ICR1 ICR0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 割込みコントロールレベル 0 対応する割込み要因はコントロールレベル0(非優先) 1 対応する割込み要因はコントロールレベル1(優先) 各割込み要因とICRの対応 レジスタ ICRA ICRB ICRC ビット 7 6 5 4 3 IRQ0 IRQ1 IRQ2 IRQ4 IRQ6 IRQ3 IRQ5 IRQ7 ― ― 2 DTC 1 0 ウォッチ ウォッチ ドッグ ドッグ タイマ0 タイマ1 A/D フリー 8ビット 8ビット 8ビット HIF、 変換器 ランニング タイマ タイマ タイマ キーボード タイマ チャネル0 チャネル1 チャネル SCI SCI SCI IIC IIC ― バッファ X、Y コントローラ ― ― チャネル0 チャネル1 チャネル2 チャネル0 チャネル1 (オプション) (オプション) 991 付 録 H'FEEB:IRQ ステータスレジスタ ビット : 初期値 : R/W : ISR:割込みコントローラ 7 6 5 4 3 2 1 0 IRQ7F IRQ6F IRQ5F IRQ4F IRQ3F IRQ2F IRQ1F IRQ0F 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* IRQ7〜IRQ0フラグ 0 [クリア条件] (1)IRQnF=1をリードした後、0をライトしたとき (2)Lowレベル検出設定(IRQnSCB=IRQnSCA=0)の状態かつIRQn 入力がHighレベルの状態で、割込み例外処理を実行したとき* (3)立ち下がりエッジ、立ち上がりエッジ、両エッジ検出設定時 (IRQnSCB=1、またはIRQnSCA=1)の状態でIRQn割込み例外 処理を実行したとき* 1 [セット条件] (1)Lowレベル検出設定(IRQnSCB=IRQnSCA=0)の状態でIRQn入力 がLowレベルになったとき (2)立ち下がりエッジ検出設定時(IRQnSCB=0、IRQnSCA=1)の状態 でIRQn入力に立ち下がりエッジが発生したとき (3)立ち上がりエッジ検出設定時(IRQnSCB=1、IRQnSCA=0)の状態 でIRQn入力に立ち上がりエッジが発生したとき (4)両エッジ検出設定時(IRQnSCB=IRQnSCA=1)の状態でIRQn入力 に立ち下がり、または立ち上がりエッジが発生したとき (n=7〜0) 【注】 * DTCを内蔵した製品において下記の設定で使用すると、対象フラグ ビットはクリア条件となる例外処理を実行しても自動クリアはされず、 ビットは1のままとなります。 (1) DTCEA3=1にセットした場合(ADIを割込み要因に設定)、 IRQ4Fフラグの自動クリア (2) DTCEA2=1にセットした場合(ICIAを割込み要因に設定)、 IRQ5Fフラグの自動クリア (3) DTCEA1=1にセットした場合(ICIBを割込み要因に設定)、 IRQ6Fフラグの自動クリア (4) DTCEA0=1にセットした場合(OCIAを割込み要因に設定)、 IRQ7Fフラグの自動クリア DTCの起動割込み要因とIRQ割込みを上記の組み合わせで使用する場合には、 当該IRQの割込み処理ルーチン内でソフトウェアにより割込みフラグのクリアを 行ってください。 【注】* 992 フラグをクリアするための0ライトのみ可能です。 付 録 H'FEEC:IRQ センスコントロールレジスタ H ISCRH: H'FEED:IRQ センスコントロールレジスタ L ISCRL : 割込みコントローラ ISCRH ビット : 15 14 13 12 10 11 9 8 IRQ7SCB IRQ7SCA IRQ6SCB IRQ6SCA IRQ5SCB IRQ5SCA IRQ4SCB IRQ4SCA 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 1 0 IRQ7〜IRQ4センスコントロールA、B ISCRL ビット : 7 6 5 4 3 2 IRQ3SCB IRQ3SCA IRQ2SCB IRQ2SCA IRQ1SCB IRQ1SCA IRQ0SCB IRQ0SCA 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W IRQ3〜IRQ0センスコントロールA、B 説 ISCRH ビット7〜0 明 ISCRL ビット7〜0 IRQ7SCB〜 IRQ7SCA〜 IRQ0SCB 0 1 IRQ0SCA 0 IRQ7〜IRQ0入力のLowレベルで割込み要求を発生 1 IRQ7〜IRQ0入力の立ち下がりエッジで割込み要求を発生 0 IRQ7〜IRQ0入力の立ち上がりエッジで割込み要求を発生 1 IRQ7〜IRQ0入力の立ち下がり、立ち上がりの両エッジで 割込み要求を発生 993 付 録 H'FEEE〜H'FEF2:DTC イネーブルレジスタ ビット : 初期値 : R/W : DTCER:DTC 7 6 5 4 3 2 1 0 DTCE7 DTCE6 DTCE5 DTCE4 DTCE3 DTCE2 DTCE1 DTCE0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W DTC起動イネーブル 0 割込みによるDTC起動を禁止 [クリア条件] ・DISELビットが1でデータ転送を終了したとき ・指定した回数の転送が終了したとき 1 割込みによるDTC起動を許可 [保持条件] DISELビットが0で、指定した回数の転送が終了して いないとき H'FEF3:DTC ベクタレジスタ ビット : DTVECR:DTC 7 6 5 4 3 2 1 0 SWDTE DTVEC6 DTVEC5 DTVEC4 DTVEC3 DTVEC2 DTVEC1 DTVEC0 初期値 : R/W : 0 0 0 0 0 0 0 0 R/(W)* R/W R/W R/W R/W R/W R/W R/W DTCソフトウェア起動のベクタ番号を設定 DTCソフトウェア起動イネーブル 0 DTCソフトウェア起動を禁止 [クリア条件] DISELビットが0で、指定した回数の転送が終了していないとき 1 DTCソフトウェア起動を許可 [保持条件] ・DISELビットが1で、データ転送を終了したとき ・指定した回数の転送が終了したとき ・ソフトウェア起動によるデータ転送中 【注】* 994 SWDTEビットは、1ライトは常時可能ですが、0ライトは1リード後にのみ可能と なります。 付 録 H'FEF4:アドレスブレークコントロールレジスタ ABRKCR: 割込みコントローラ ビット : 7 6 5 4 3 2 1 0 CMF − − − − − − BIE 初期値 : 0 0 0 0 0 0 0 0 : R − − − − − − R/W R/W ブレーク割込みイネーブル 0 アドレスブレーク禁止 1 アドレスブレーク許可 コンディションマッチフラグ 0 [クリア条件] アドレスブレーク割り込み例外処理を実行した とき 1 [セット条件] BIE=1の状態で、BARA〜BARCで設定したアド レスのプリフェッチを実行したとき 995 付 録 BARA :割込みコントローラ BARB :割込みコントローラ BARC:割込みコントローラ H'FEF5:ブレークアドレスレジスタ A H'FEF6:ブレークアドレスレジスタ B H'FEF7:ブレークアドレスレジスタ C ビット : BARA 初期値 : R/W : 7 6 5 4 3 2 1 0 A23 A22 A21 A20 A19 A18 A17 A16 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W アドレスブレークを発生させるアドレス(ビット23〜16)を指定 ビット : BARB 初期値 : R/W : 7 6 5 4 3 2 1 0 A15 A14 A13 A12 A11 A10 A9 A8 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W アドレスブレークを発生させるアドレス(ビット15〜8)を指定 ビット : BARC 初期値 : R/W : 7 6 5 4 3 2 1 0 A7 A6 A5 A4 A3 A2 A1 − 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W − アドレスブレークを発生させるアドレス(ビット7〜1)を指定 996 付 H'FF80:フラッシュメモリコントロールレジスタ 1 ビット : FLMCR1:FLASH 7 6 5 4 3 2 1 0 FWE SWE − − EV PV E P 初期値 : 1 0 0 0 0 0 0 0 : R R/W − − R/W R/W R/W R/W R/W 録 プログラム 0 プログラムモードを解除 1 プログラムモードに遷移 [セット条件] SWE=1、PSU=1のとき イレース 0 イレースモードを解除 1 イレースモードに遷移 [セット条件] SWE=1、ESU=1のとき プログラムベリファイ 0 プログラムベリファイモードを解除 1 プログラムベリファイモードに遷移 [セット条件]SWE=1のとき イレースベリファイ 0 イレースベリファイモードを解除 1 イレースベリファイモードに遷移 [セット条件]SWE=1のとき ソフトウェアライトイネーブル 0 書き込み無効 1 書き込み有効 リザーブ 997 付 録 H'FF81:フラッシュメモリコントロールレジスタ 2 ビット : FLMCR2:FLASH 7 6 5 4 3 2 1 0 FLER − − − − − ESU PSU 初期値 : 0 0 0 0 0 0 0 0 : R − − − − − R/W R/W R/W プログラムセットアップ 0 プログラムセットアップ解除 1 プログラムセットアップ [セット条件] SWE=1のとき イレースセットアップ フラッシュメモリエラー 998 0 フラッシュメモリは正常に動作しています。 フラッシュメモリへの書き込み/消去プロテクト (エラープロテクト)が無効 [クリア条件] リセットまたはハードウェアスタンバイモードのとき 1 フラッシュメモリへの書き込み/消去中にエラーが発生 したことを示します。 フラッシュメモリへの書き込み/消去プロテクト (エラープロテクト)が有効 [セット条件] 「22.8.3、23.8.3 エラープロテクト」参照 0 イレースセットアップ解除 1 イレースセットアップ [セット条件] SWE=1のとき 付 H'FF82:周辺クロックセレクトレジスタ PCSR:PWM 7 6 5 4 3 − − − − − 初期値 : 0 0 0 0 0 0 0 0 R/W − − − − − R/W R/W − ビット : : 録 2 1 PWCKB PWCKA 0 − PWMクロックセレクト PWSL PCSR 説 明 ビット7 ビット6 ビット2 ビット1 PWCKE PWCKS PWCKB PWCKA 0 ― ― ― クロック入力禁止 1 0 ― ― φ(システムクロック)を選択 1 0 0 φ/2を選択 1 φ/4を選択 0 φ/8を選択 1 φ/16を選択 1 999 付 録 H'FF83:システムコントロールレジスタ 2 ビット : 初期値 : R/W : SYSCR2:HIF 7 6 5 4 3 2 1 0 KWUL1 KWUL0 P6PUE − SDE CS4E CS3E HI12E 0 0 0 0 0 0 0 0 R/W R/W R/W − R/W R/W R/W R/W ホストインタフェースイネーブル 0 ホストインタフェース機能を禁止 1 ホストインタフェース機能を許可 CS3イネーブル 0 ホストインタフェースチャネル3の機能を禁止 1 ホストインタフェースチャネル3の機能を許可 CS4イネーブル 0 ホストインタフェースチャネル4の機能を禁止 1 ホストインタフェースチャネル4の機能を許可 シャットダウンイネーブル 0 ホストインタフェース端子のシャットダウン機能を禁止 1 ホストインタフェース端子のシャットダウン機能を許可 ポート6入力プルアップエクストラ 1 ポート6入力プルアップMOSは標準電流の仕様を選択 0 ポート6入力プルアップMOSは電流制限の仕様を選択 キーウェイクアップレベル1、0 0 1 1000 0 ポート6入力レベルは標準入力レベルを選択 1 ポート6入力レベルは入力レベル1を選択 0 ポート6入力レベルは入力レベル2を選択 1 ポート6入力レベルは入力レベル3を選択 付 H'FF82:消去ブロック指定レジスタ 1 H'FF83:消去ブロック指定レジスタ 2 EBR1:FLASH EBR2:FLASH ビット : 7 6 5 4 3 2 EBR1 − − − − − − 初期値 : 0 0 0 0 0 0 0 0 − R/W*1*2 R/W*1*2 R/W : ビット : EBR2 初期値 : R/W : 【注】 *1 *2 − − 録 − − − 1 0 EB9/−*2 EB8/−*2 7 6 5 4 3 2 1 0 EB7 EB6 EB5 EB4 EB3 EB2 EB1 EB0 0 0 0 0 0 0 0 0 R/W*1 R/W R/W R/W R/W R/W R/W R/W ノーマルモードの場合は0が読み出され、ライトは無効です。 64kバイト版にEB8、EB9ビットはありません。本ビットは1に セットしなしでください。 消去ブロックの分割 ブロック(サイズ) アドレス 128kバイト版 64kバイト版 EB0(1kバイト) EB0(1kバイト) H'(00)0000〜H'(00)03FF EB1(1kバイト) EB1(1kバイト) H'(00)0400〜H'(00)07FF EB2(1kバイト) EB2(1kバイト) H'(00)0800〜H'(00)0BFF EB3(1kバイト) EB3(1kバイト) H'(00)0C00〜H'(00)0FFF EB4(28kバイト) EB4(28kバイト) H'(00)1000〜H'(00)7FFF EB5(16kバイト) EB5(16kバイト) H'(00)8000〜H'(00)BFFF EB6(8kバイト) EB6(8kバイト) H'(00)C000〜H'(00)DFFF EB7(8kバイト) EB7(8kバイト) H'00 E000〜H' 00 FFFF EB8(32kバイト) − H'01 0000〜H'01 7FFF EB9(32kバイト) − H'01 8000〜H'01 FFFF 1001 付 録 H'FF84:スタンバイコントロールレジスタ ビット : 初期値 : R/W : SBYCR:システム 7 6 5 4 3 2 1 0 SSBY STS2 STS1 STS0 ― SCK2 SCK1 SCK0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W ― R/W R/W R/W システムクロックセレクト2〜0 0 0 1 1 0 1 0 バスマスタは高速モード 1 中速クロックはφ/2 0 中速クロックはφ/4 1 中速クロックはφ/8 0 中速クロックはφ/16 1 中速クロックはφ/32 ― ― スタンバイタイマセレクト2〜0 0 0 1 1 0 1 【注】 * 0 待機時間= 8192 ステート 1 待機時間= 16384 ステート 0 待機時間= 32768 ステート 1 待機時間= 65536 ステート 0 待機時間= 131072 ステート 1 待機時間= 262144 ステート 0 リザーブ 1 待機時間= 16 ステート* フラッシュメモリ内蔵版では、本設定は使用しないでください。 ソフトウェアスタンバイ 0 高速モードおよび中速モードでSLEEP命令を実行したとき、 スリープモードに遷移 サブアクティブモードでSLEEP命令を実行したとき、サブ スリープモードに遷移 1 高速モードおよび中速モードでSLEEP命令を実行したとき、 ソフトウェアスタンバイモード、サブアクティブモード、あ るいはウォッチモードに遷移 サブアクティブモードでSLEEP命令を実行したとき、ウォッ チモード、あるいは高速モードに遷移 1002 付 H'FF85:ローパワーコントロールレジスタ ビット : 初期値 : R/W : 録 LPWRCR:システム 7 6 5 4 3 2 1 0 DTON LSON NESEL EXCLE − − − − 0 0 0 0 0 0 0 0 R/W R/W R/W R/W − − − − サブクロック入力イネーブル 0 EXCL端子からのサブクロック入力禁止 1 EXCL端子からのサブクロック入力許可 ノイズ除去サンプリング周波数選択 0 φの32分周クロックでサンプリング 1 φの4分周クロックでサンプリング ロースピードオンフラグ 0 ・高速モード、あるいは中速モードでSLEEP命令を実行したとき、 スリープモード、ソフトウェアスタンバイモード、またはウォッチ モード*に遷移 ・サブアクティブモードでSLEEP命令を実行したとき、ウォッチモー ドに遷移、または高速モードに直接遷移 ・ウォッチモード解除後に高速モードに遷移 1 ・高速モードでSLEEP命令を実行したとき、ウォッチモード、または サブアクティブモード *に遷移 ・サブアクティブモードでSLEEP命令を実行したとき、サブスリープ モード 、またはウォッチモードに遷移 ・ウォッチモード解除後にサブアクティブモードに遷移 【注】 * ウォッチモード、サブアクティブモードへの遷移時は、必ず 高速モードに設定してください。 ダイレクトトランスファオンフラグ 0 ・高速モード、あるいは中速モードでSLEEP命令を実行したとき、 スリープモード、ソフトウェアスタンバイモード、またはウォッチ モード*に遷移 ・サブアクティブモードでSLEEP命令を実行したとき、サブスリープ モード、またはウォッチモードに遷移 1 ・高速モード、あるいは中速モードでSLEEP命令を実行したとき、 サブアクティブモード *に直接遷移、またはスリープモード、ソフト ウェアスタンバイモードに遷移 ・サブアクティブモードでSLEEP命令を実行したとき、高速モードに 直接遷移、またはサブスリープモードに遷移 【注】 * ウォッチモード、サブアクティブモードへの遷移時は、必ず 高速モードに設定してください。 1003 付 録 H'FF86:モジュールストップコントロールレジスタ H H'FF87:モジュールストップコントロールレジスタ L MSTPCRH:システム MSTPCRL :システム MSTPCRH ビット : 7 6 5 4 3 MSTPCRL 2 1 0 7 6 5 4 3 2 1 0 MSTP15 MSTP14 MSTP13 MSTP12 MSTP11 MSTP10 MSTP9 MSTP8 MSTP7 MSTP6 MSTP5 MSTP4 MSTP3 MSTP2 MSTP1 MSTP0 初期値 : R/W 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W モジュールストップ 0 モジュールストップモード解除 1 モジュールストップモード設定 各ビットと内蔵周辺機能の対応は以下のとおりです。 レジスタ ビット MSTPCRH MSTP15 − MSTPCRL モジュール MSTP14* データトランスファコントローラ(DTC) MSTP13 16ビットフリーランニングタイマ(FRT) MSTP12 8ビットタイマ(TMR0、TMR1) MSTP11 8ビットPWMタイマ(PWM)、14ビットPWMタイマ(PWMX) MSTP10 D/A変換器 MSTP9 A/D変換器 MSTP8 8ビットタイマ(TMRX、TMRY)、タイマコネクション MSTP7 シリアルコミュニケーションインタフェース0(SCI0) MSTP6 シリアルコミュニケーションインタフェース1(SCI1) MSTP5 シリアルコミュニケーションインタフェース2(SCI2) MSTP4* I2Cバスインタフェース(IIC)チャネル0【オプション】 MSTP3* I2Cバスインタフェース(IIC)チャネル1【オプション】 MSTP2 ホストインタフェース(HIF)、 キーボードマトリクス割込みマスクレジスタ(KMIMR)、 キーボードマトリクス割込みマスクレジスタ(KMIMRA)、 ポート6プルアップMOSコントロールレジスタ(KMPCR)、 キーボードバッファコントローラ(PS2) 【注】 MSTP1* − MSTP0* − ビット15は、1にセットしないでください。また、ビット1、0はリード/ライトできますが、動 作に影響を与えません。 * 1004 H8S/2144シリーズでは必ず1にセットしてください。 付 H'FF88 :シリアルモードレジスタ 1 H'FFA0:シリアルモードレジスタ 2 H'FFD8:シリアルモードレジスタ 0 ビット : 初期値 : R/W : 録 SMR1:SCI1 SMR2:SCI2 SMR0:SCI0 7 6 5 4 3 2 1 0 C/A CHR PE O/E STOP MP CKS1 CKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W クロックセレクト1、0 0 1 0 φクロック 1 φ/4クロック 0 φ/16クロック 1 φ/64クロック マルチプロセッサモード 0 マルチプロセッサ機能の禁止 1 マルチプロセッサフォーマットを選択 ストップビットレングス 0 1ストップビット 1 2ストップビット パリティモード 0 偶数パリティ 1 奇数パリティ パリティイネーブル 0 パリティビットの付加、およびチェックを禁止 1 パリティビットの付加、およびチェックを許可 キャラクタレングス 0 8ビットデータ 1 7ビットデータ* 【注】 * 7ビットデータを選択した場合、TDRのMSB(ビット7)は 送信されません。また、LSBファースト/MSBファーストの 選択はできません。 コミュニケーションモード 0 調歩同期式モード 1 クロック同期式モード 1005 付 録 H'FF88 :I2C バスコントロールレジスタ 1 H'FFD8:I2C バスコントロールレジスタ 0 ビット : 初期値 : R/W : ICCR1:IIC1 ICCR0:IIC0 7 6 5 4 3 2 1 0 ICE IEIC MST TRS ACKE BBSY IRIC SCP 0 0 0 0 0 0 0 1 R/W R/W R/W R/W R/W R/W R/(W)* W 開始条件/停止条件発行禁止ビット 0 ライト時、BBSYフラグと組み合わ せて開始条件、停止条件を発行 1 リード時、常に1をリード ライト時、無効 I2Cバスインタフェース割込み要求フラグ 0 転送待ち状態、または転送中 1 割込みが発生 【注】クリア条件、セット条件は「16.2.5 I2Cバス コントロールレジスタ(ICCR)」を参照 バスビジー 0 バス解放状態 [クリア条件]・停止条件検出時 1 バス占有状態 [セット条件]・開始条件検出時 アクノリッジビット判定選択 0 アクノリッジビットの内容を無視して、連続的に転送を行う 1 アクノリッジビットが1の場合、連続的な転送を中断する マスタ/スレーブ選択(MST)、送信/受信選択(TRS) 0 1 0 スレーブ受信モード 1 スレーブ送信モード 0 マスタ受信モード 1 マスタ送信モード 【注】詳細は「16.2.5 I2Cバスコントロールレジスタ(ICCR)」を参照 I2Cバスインタフェース割込みイネーブル 0 割込み要求を禁止 1 割込み要求を許可 I2Cバスインタフェースイネーブル 0 本モジュールは非動作状態(SCL/SDA端子はポート機能) SAR、SARXがアクセス可能 1 本モジュールは転送動作可能状態(SCL/SDA端子はバス駆動状態) ICMR、ICDRがアクセス可能 【注】* 1006 フラグをクリアするための0ライトのみ可能です。 付 H'FF89 :ビットレートレジスタ 1 H'FFA1:ビットレートレジスタ 2 H'FFD9:ビットレートレジスタ 0 BRR1:SCI1 BRR2:SCI2 BRR0:SCI0 ビット : 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W R/W : 録 シリアル送信/受信のビットレートを設定 1007 付 録 H'FF89 :I2C バスステータスレジスタ 1 H'FFD9:I2C バスステータスレジスタ 0 ビット : 初期値 : R/W : ICSR1:IIC1 ICSR0:IIC0 7 6 5 4 3 2 1 0 ESTP STOP IRTR AASX AL AAS ADZ ACKB 0 0 0 0 0 0 0 0 R/(W)*1 R/(W)*1 R/(W)*1 R/(W)*1 R/(W)*1 R/(W)*1 R/(W)*1 R/W アクノリッジビット 0 受信時:アクノリッジ出力タイミングで0出力 送信時:受信デバイスからアクノリッジが あった(0だった)ことを示す 1 受信時:アクノリッジ出力タイミングで1出力 送信時:受信デバイスからアクノリッジが なかった(1だった)ことを示す ゼネラルコールアドレス認識フラグ*2 0 ゼネラルコールアドレスを未認識 1 ゼネラルコールアドレスを認識 スレーブアドレス認識フラグ*2 0 スレーブアドレスまたはゼネラルコールアドレスを未認識 1 スレーブアドレスまたはゼネラルコールアドレスを認識 アービトレーションロストフラグ*2 0 バスを確保 1 バス競合負け(アービトレーションロスト) 第2スレーブアドレス認識フラグ*2 0 第2スレーブアドレスを未認識 1 第2スレーブアドレスを認識 I2Cバスインタフェース連続送受信割込み要求フラグ*2 0 転送待ち状態、または転送中 1 連続転送状態 正常停止条件検出フラグ*2 0 正常停止条件なし 1 I2Cバスフォーマットでスレーブモードのとき:正常停止条件を検出 I2Cバスフォーマットでスレーブモードのとき以外:意味なし エラー停止条件検出フラグ*2 0 エラー停止条件なし 1 I2Cバスフォーマットでスレーブモードのとき:エラー停止条件を検出 I2Cバスフォーマットでスレーブモードのとき以外:意味なし 【注】*1 *2 1008 フラグをクリアするための0ライトのみ可能です。 クリア/セット条件については「16.2.6 I2Cバスステータスレジスタ(ICSR)」を参照 付 H'FF8A :シリアルコントロールレジスタ 1 H'FFA2 :シリアルコントロールレジスタ 2 H'FFDA :シリアルコントロールレジスタ 0 ビット : 初期値 : R/W : 録 SCR1:SCI1 SCR2:SCI2 SCR0:SCI0 7 6 5 4 3 2 1 0 TIE RIE TE RE MPIE TEIE CKE1 CKE0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W クロックイネーブル1、0 0 0 1 1 0 1 調歩同期式モード 内部クロック/SCK端子は 入出力ポート クロック同期式 モード 内部クロック/SCK端子は 同期クロック出力 調歩同期式モード 内部クロック/SCK端子は クロック出力 クロック同期式 モード 内部クロック/SCK端子は 同期クロック出力 調歩同期式モード 外部クロック/SCK端子は クロック入力 クロック同期式 モード 外部クロック/SCK端子は 同期クロック入力 調歩同期式モード 外部クロック/SCK端子は クロック入力 クロック同期式 モード 外部クロック/SCK端子は 同期クロック入力 トランスミットエンドインタラプトイネーブル 0 送信終了割込み(TEI)要求を禁止 1 送信終了割込み(TEI)要求を許可 マルチプロセッサインタラプトイネーブル 0 マルチプロセッサ割込み禁止状態(通常の受信動作) [クリア条件] (1)MPIEビットを0にクリア (2)MPB=1のデータを受信したとき 1 マルチプロセッサ割込み許可状態 マルチプロセッサビットが1のデータを受け取るまで、受信割 込み(RXI)要求、受信エラー割込み(ERI)要求、および SSRのRDRF、FER、ORERの各フラグのセットを禁止 レシーブイネーブル 0 受信動作を禁止 1 受信動作を許可 トランスミットイネーブル 0 送信動作を禁止 1 送信動作を許可 レシーブインタラプトイネーブル 0 受信データフル割込み(RXI)要求、および受信エラー割込み(ERI)要求を禁止 1 受信データフル割込み(RXI)要求、および受信エラー割込み(ERI)要求を許可 トランスミットインタラプトイネーブル 0 送信データエンプティ割込み(TXI)要求の禁止 1 送信データエンプティ割込み(TXI)要求の許可 1009 付 録 H'FF8D :レシーブデータレジスタ 1 H'FFA5 :レシーブデータレジスタ 2 H'FFDD:レシーブデータレジスタ 0 RDR1:SCI1 RDR2:SCI2 RDR0:SCI0 ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 R/W R R R R R R R R : シリアル受信データを格納 H'FF8B :トランスミットデータレジスタ 1 H'FFA3 :トランスミットデータレジスタ 2 H'FFDB :トランスミットデータレジスタ 0 TDR1:SCI1 TDR2:SCI2 TDR0:SCI0 ビット : 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W R/W : シリアル送信データを格納 1010 付 H'FF8C :シリアルステータスレジスタ 1 H'FFA4 :シリアルステータスレジスタ 2 H'FFDC:シリアルステータスレジスタ 0 ビット : 初期値 : R/W : 録 SSR1:SCI1 SSR2:SCI2 SSR0:SCI0 7 6 5 4 3 2 1 0 TDRE RDRF ORER FER PER TEND MPB MPBT 1 0 0 0 0 1 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R R R/W マルチプロセッサビットトランスファ 0 マルチプロセッサビットが0のデータを送信したとき 1 マルチプロセッサビットが1のデータを送信したとき マルチプロセッサビット 0 [クリア条件] マルチプロセッサビットが0のデータを受信したとき 1 [セット条件] マルチプロセッサビットが1のデータを受信したとき トランスミットエンド 0 [クリア条件] (1)TDRE=1の状態をリードした後、TDREフラグに0をライトしたとき (2)TXI割込み要求によるDTCでTDRへデータをライトしたとき 1 [セット条件] (1)SCRのTEビットが0のとき (2)1バイトのシリアル送信キャラクタの最後尾ビットの送信時に TDRE=1であったとき パリティエラー 0 [クリア条件] PER=1の状態をリードした後、0をライトしたとき 1 [セット条件] 受信時の受信データとパリティビットをあわせた1の数が、SMRのO/Eビット で指定した偶数パリティ/奇数パリティの設定と一致しなかったとき フレーミングエラー 0 [クリア条件] FER=1の状態をリードした後、0をライトしたとき 1 [セット条件] SCIが受信終了時に受信データの最後尾のストップビットを チェックし、ストップビットが0であったとき オーバランエラー 0 [クリア条件] ORER=1の状態をリードした後、0をライトしたとき 1 [セット条件] RDRF=1の状態で次のシリアル受信を完了したとき レシーブデータレジスタフル 0 [クリア条件] (1)RDRF=1の状態をリードした後、0をライトしたとき (2)RXI割込み要求によるDTCでRDRのデータをリードしたとき 1 [セット条件] シリアル受信が正常終了し、RSRからRDRへ受信データが 転送されたとき トランスミットデータレジスタエンプティ 0 [クリア条件] (1)TDRE=1の状態をリードした後、0をライトしたとき (2)TXI割込み要求によるDTCでTDRへデータをライトしたとき 1 [セット条件] (1)SCRのTEビットが0のとき (2)TDRからTSRにデータ転送が行われ、TDRにデータライトが可能になったとき 【注】* フラグをクリアするための0ライトのみ可能です。 1011 付 録 H'FF8E :シリアルインタフェースモードレジスタ 1 H'FFA6 :シリアルインタフェースモードレジスタ 2 H'FFDE :シリアルインタフェースモードレジスタ 0 SCMR1:SCI1 SCMR2:SCI2 SCMR0:SCI0 7 6 5 4 3 2 1 0 − − − − SDIR SINV − SMIF 初期値 : 1 1 1 1 0 0 1 0 R/W − − − − R/W R/W − R/W ビット : : シリアルコミュニケーション インタフェースモードセレクト 0 通常SCIモード 1 設定禁止 データインバート 0 TDRの内容をそのまま送信 受信データをそのままRDRに格納 1 TDRの内容を反転してデータを送信 受信データを反転してRDRに格納 データトランスファディレクション 0 TDRの内容をLSBファーストで送信 受信データをLSBファーストとしてRDRに格納 1 TDRの内容をMSBファーストで送信 受信データをMSBファーストとしてRDRに格納 1012 付 H'FF8E :I2C バスデータレジスタ 1 H'FFDE :I2C バスデータレジスタ 0 ビット : 初期値 : R/W : 録 ICDR1:IIC1 ICDR0:IIC0 7 6 5 4 3 2 1 0 ICDR7 ICDR6 ICDR5 ICDR4 ICDR3 ICDR2 ICDR1 ICDR0 − − − − − − − − R/W R/W R/W R/W R/W R/W R/W R/W 7 6 5 4 3 2 1 0 ■ICDRR ビット : ICDRR7 ICDRR6 ICDRR5 ICDRR4 ICDRR3 ICDRR2 ICDRR1 ICDRR0 初期値 : − − − − − − − − R/W R R R R R R R R 7 6 5 4 3 2 1 0 : ■ICDRS ビット : ICDRS7 ICDRS6 ICDRS5 ICDRS4 ICDRS3 ICDRS2 ICDRS1 ICDRS0 初期値 : − − − − − − − − R/W − − − − − − − − 7 6 5 4 3 2 1 0 : ■ICDRT ビット : ICDRT7 ICDRT6 ICDRT5 ICDRT4 ICDRT3 ICDRT2 ICDRT1 ICDRT0 初期値 : − − − − − − − − R/W W W W W W W W W − − TDRE RDRF 初期値 : 0 0 R/W − − : ■TDRE、RDRF(内部フラグ) ビット : : 【注】詳細は「16.2.1 I2Cバスデータレジスタ(ICDR)」を参照。 1013 付 録 H'FF8E :第 2 スレーブアドレスレジスタ 1 H'FF8F :スレーブアドレスレジスタ 1 H'FFDE :第 2 スレーブアドレスレジスタ 0 H'FFDF :スレーブアドレスレジスタ 0 SARX1 :IIC1 SAR1 :IIC1 SARX0 :IIC0 SAR0 :IIC0 SAR ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 SVA6 SVA5 SVA4 SVA3 SVA2 SVA1 SVA0 FS 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W スレーブアドレス フォーマットセレクト SARX ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 SVAX6 SVAX5 SVAX4 SVAX3 SVAX2 SVAX1 SVAX0 FSX 0 0 0 0 0 0 0 1 R/W R/W R/W R/W R/W R/W R/W R/W 第2スレーブアドレス フォーマットセレクト DDCSWR SAR SARX 動作モード ビット6 ビット0 ビット0 SW FS FSX 0 0 0 I2Cバスフォーマット ・SARとSARXのスレーブアドレスを認識 1 I2Cバスフォーマット ・SARのスレーブアドレスを認識 ・SARXのスレーブアドレスを無視 1 0 I2Cバスフォーマット ・SARのスレーブアドレスを無視 ・SARXのスレーブアドレスを認識 1 クロック同期式シリアルフォーマット ・SARとSARXのスレーブアドレスを無視 1 0 1 0 フォーマットレス 1 (開始条件/停止条件を検出しない) 0 ・アクノリッジビットあり 1 フォーマットレス* (開始条件/停止条件を検出しない) ・アクノリッジビットなし 【注】 1014 * DDCSWRの設定によりI2Cバスフォーマットへの自動切り換え を行う場合は、本モードに設定しないでください。 付 H'FF8F :I2C バスモードレジスタ 1 H'FFDF :I2C バスモードレジスタ 0 ビット : 初期値 : R/W : 録 ICMR1:IIC1 ICMR0:IIC0 7 6 5 4 3 2 1 0 MLS WAIT CKS2 CKS1 CKS0 BC2 BC1 BC0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ビットカウンタ BC2 BC1 BC0 0 0 0 8 9 1 1 2 0 2 3 1 3 4 0 4 5 1 5 6 0 6 7 1 7 8 クロック同期式 I2Cバス シリアルフォーマット フォーマット 1 1 0 1 転送クロック選択 IICX 0 CKS2 CKS1 CKS0 0 0 1 1 0 1 1 0 0 1 1 0 1 クロック 0 φ/28 1 φ/40 0 φ/48 1 φ/64 0 φ/80 1 φ/100 0 φ/112 1 φ/128 0 φ/56 1 φ/80 0 φ/96 1 φ/128 0 φ/160 1 φ/200 0 φ/224 1 φ/256 ウェイト挿入ビット 0 データとアクノリッジを連続的に転送 1 データとアクノリッジの間にウェイトを挿入 MSBファースト/LSBファースト選択* 0 MSBファースト 1 LSBファースト 【注】 * I2Cバスフォーマットで使用するときは、本ビットを1にセット しないでください。 1015 付 録 H'FF90:タイマインタラプトイネーブルレジスタ ビット : 初期値 : R/W : TIER:FRT 7 6 5 4 3 2 1 0 ICIAE ICIBE ICICE ICIDE OCIAE OCIBE OVIE − 0 0 0 0 0 0 0 1 R/W R/W R/W R/W R/W R/W R/W − タイマオーバフロー インタラプトイネーブル 0 OVFによる割込み要求 (FOVI)を禁止 1 OVFによる割込み要求 (FOVI)を許可 アウトプットコンペア インタラプトBイネーブル 0 OCFBによる割込み要求(OCIB) を禁止 1 OCFBによる割込み要求(OCIB) を許可 アウトプットコンペアインタラプトAイネーブル 0 OCFAによる割込み要求(OCIA)を禁止 1 OCFAによる割込み要求(OCIA)を許可 インプットキャプチャインタラプトDイネーブル 0 ICFDによる割込み要求(ICID)を禁止 1 ICFDによる割込み要求(ICID)を許可 インプットキャプチャインタラプトCイネーブル 0 ICFCによる割込み要求(ICIC)を禁止 1 ICFCによる割込み要求(ICIC)を許可 インプットキャプチャインタラプトBイネーブル 0 ICFBによる割込み要求(ICIB)を禁止 1 ICFBによる割込み要求(ICIB)を許可 インプットキャプチャインタラプトAイネーブル 1016 0 ICFAによる割込み要求(ICIA)を禁止 1 ICFAによる割込み要求(ICIA)を許可 付 H'FF91:タイマコントロール/ステータスレジスタ ビット : 初期値 : R/W : 録 TCSR:FRT 7 6 5 4 3 2 1 0 ICFA ICFB ICFC ICFD OCFA OCFB OVF CCLRA 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/(W)* R/W カウンタクリアA 0 FRCのクリアを禁止 1 コンペアマッチAによりFRCをクリア タイマオーバフロー 0 [クリア条件] OVF=1の状態で、OVFをリードした 後、OVFに0をライトしたとき 1 [セット条件] FRCの値が、H'FFFF→H'0000になっ たとき アウトプットコンペアフラグB 0 [クリア条件] OCFB=1の状態で、OCFBをリードした後、 OCFBに0をライトしたとき 1 [セット条件] FRC=OCRBになったとき アウトプットコンペアフラグA 0 [クリア条件] OCFA=1の状態で、OCFAをリードした後、 OCFAに0をライトしたとき 1 [セット条件] FRC=OCRAになったとき インプットキャプチャフラグD 0 [クリア条件] ICFD=1の状態で、ICFDをリードした後、ICFDに0をライトしたとき 1 [セット条件] インプットキャプチャ信号が発生したとき インプットキャプチャフラグC 0 [クリア条件] ICFC=1の状態で、ICFCをリードした後、ICFCに0をライトしたとき 1 [セット条件] インプットキャプチャ信号が発生したとき インプットキャプチャフラグB 0 [クリア条件] ICFB=1の状態で、ICFBをリードした後、ICFBに0をライトしたとき 1 [セット条件] インプットキャプチャ信号により、FRCの値がICRBに転送されたとき インプットキャプチャフラグA 0 [クリア条件] ICFA=1の状態で、ICFAをリードした後、ICFAに0をライトしたとき 1 [セット条件] インプットキャプチャ信号により、FRCの値がICRAに転送されたとき 【注】* ビット7〜1はフラグをクリアするための0ライトのみ可能です。 1017 付 録 H'FF92:フリーランニングカウンタ FRC:FRT ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W カウント値 H'FF94:アウトプットコンペアレジスタ A、B OCRA、OCRB:FRT ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W FRCの値と常時比較し、OCR=FRCでOCFをセット 1018 付 H'FF96:タイマコントロールレジスタ ビット : 初期値 : R/W : 録 TCR:FRT 7 6 5 4 3 2 1 0 IEDGA IEDGB IEDGC IEDGD BUFEA BUFEB CKS1 CKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W クロックセレクト 0 0 内部クロック:φ/2 でカウント 1 内部クロック:φ/8 でカウント 1 0 内部クロック:φ/32 でカウント 1 外部クロック:立ち上 がりエッジ(↑)でカ ウント バッファイネーブルB 0 ICRDをICRBのバッファレジスタと して使用しない 1 ICRDをICRBのバッファレジスタと して使用する バッファイネーブルA 0 ICRCをICRAのバッファレジスタとして使用しない 1 ICRCをICRAのバッファレジスタとして使用する インプットエッジセレクトD 0 インプットキャプチャ入力Dの立ち下がりエッジ(↓)でキャプチャ 1 インプットキャプチャ入力Dの立ち上がりエッジ(↑)でキャプチャ インプットエッジセレクトC 0 インプットキャプチャ入力Cの立ち下がりエッジ(↓)でキャプチャ 1 インプットキャプチャ入力Cの立ち上がりエッジ(↑)でキャプチャ インプットエッジセレクトB 0 インプットキャプチャ入力Bの立ち下がりエッジ(↓)でキャプチャ 1 インプットキャプチャ入力Bの立ち上がりエッジ(↑)でキャプチャ インプットエッジセレクトA 0 インプットキャプチャ入力Aの立ち下がりエッジ(↓)でキャプチャ 1 インプットキャプチャ入力Aの立ち上がりエッジ(↑)でキャプチャ 1019 付 録 H'FF97:タイマアウトプットコンペアコントロールレジスタ 7 ビット : 6 ICRDMS OCRAMS 初期値 : R/W : 5 4 3 2 1 0 ICRS OCRS OEA OEB OLVLA OLVLB 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W TOCR:FRT アウトプットレベルB 0 コンペアマッチBにより0出力 1 コンペアマッチBにより1出力 アウトプットレベルA 0 コンペアマッチAにより0出力 1 コンペアマッチAにより1出力 アウトプットイネーブルB 0 アウトプットコンペアB出力を禁止 1 アウトプットコンペアB出力を許可 アウトプットイネーブルA 0 アウトプットコンペアA出力を禁止 1 アウトプットコンペアA出力を許可 アウトプットコンペアレジスタセレクト 0 OCRAレジスタを選択 1 OCRBレジスタを選択 インプットキャプチャレジスタセレクト 0 ICRA、ICRBとICRCレジスタを選択 1 OCRAR、OCRAFとOCRDMレジスタを選択 アウトプットコンペアAモードセレクト 0 OCRAを、通常の動作モードに設定 1 OCRAを、OCRAR、OCRAFを利用した動作モードに設定 インプットキャプチャDモードセレクト 1020 0 ICRDを、通常の動作モードに設定 1 ICRDを、OCRDMを利用した動作モードに設定 付 H'FF98 :アウトプットコンペアレジスタ AR H'FF9A :アウトプットコンペアレジスタ AF OCRAR :FRT OCRAF :FRT ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W 録 : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W TOCRのOCRAMS=1のとき、OCRAの動作に使用 (詳細は「11.2.4 アウトプットコンペアレジスタAR、AF (OCRAR、OCRAF) 」を参照) H'FF9C:アウトプットコンペアレジスタ DM OCRDM:FRT ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W R R R R R R R R R/W R/W R/W R/W R/W R/W R/W R/W : TOCRのICRDMS=1のとき、ICRDの動作に使用 (詳細は「11.2.5 アウトプットコンペアレジスタDM (OCRDM) 」を参照) H'FF98 :インプットキャプチャレジスタ A H'FF9A :インプットキャプチャレジスタ B H'FF9C :インプットキャプチャレジスタ C H'FF9E :インプットキャプチャレジスタ D ICRA :FRT ICRB :FRT ICRC :FRT ICRD :FRT ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W R R R R R R R R R R R R R R R R : インプットキャプチャ信号入力時、FRCの値を格納 (ICRC、Dはバッファ動作が可能です。詳細は「11.2.3 キャプチャレジスタA〜D (ICRA〜D) 」を参照) インプット 1021 付 録 H'FFA0:PWM(D/A)データレジスタ AH H'FFA1:PWM(D/A)データレジスタ AL H'FFA6:PWM(D/A)データレジスタ BH H'FFA7:PWM(D/A)データレジスタ BL DADRAH:PWMX DADRAL :PWMX DADRBH:PWMX DADRBL :PWMX DADRH ビット(CPU): ビット(データ): DADRA 初期値: DADRL 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 13 12 11 10 9 8 7 6 5 4 3 2 1 0 − − DA13 DA12 DA11 DA10 DA9 DA8 DA7 DA6 DA5 DA4 DA3 DA2 DA1 DA0 CFS − 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W: R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W − DADRB DA13 DA12 DA11 DA10 DA9 DA8 DA7 DA6 DA5 DA4 DA3 DA2 DA1 DA0 CFS REGS 初期値: 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W: R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W レジスタセレクト(DADRBのみ) 0 DADRAとDADRBがアクセス可能 1 DACRとDACNTがアクセス可能 キャリアフリーケンシセレクト 0 基本周期=分解能(T)×64で動作、 DADRの値の範囲はH'0401〜H'FFFD 1 基本周期=分解能(T)×256で動作、 DADRの値の範囲はH'0103〜H'FFFF D/A変換データを設定 1022 付 H'FFA0:PWM(D/A)コントロールレジスタ ビット : 初期値 : R/W : 録 DACR:PWMX 7 6 5 4 3 2 1 0 TEST PWME − − OEB OEA OS CKS 0 0 1 1 0 0 0 0 R/W R/W − − R/W R/W R/W R/W クロックセレクト 0 分解能(T)=システムクロ ック周期(tcyc)で動作 1 分解能(T)=システムクロ ック周期(tcyc)×2で動作 アウトプットセレクト 0 PWM直接出力 1 PWM反転出力 アウトプットイネーブルA 0 PWM(D/A)チャネルA出力 (PWX0出力端子)を禁止 1 PWM(D/A)チャネルA出力 (PWX0出力端子)を許可 アウトプットイネーブルB 0 PWM(D/A)チャネルB出力 (PWX1出力端子)を禁止 1 PWM(D/A)チャネルB出力 (PWX1出力端子)を許可 PWMイネーブル 0 DACNTは14ビットのアップカウンタとして動作 1 DACNT=H'0003で停止 テストモード 0 PWM(D/A)はユーザ状態となり、通常の動作をします 1 PWM(D/A)はテスト状態となり、正しい変換結果は得られません 1023 付 録 DACNTH :PWMX DACNTL :PWMX H'FFA6:PWM(D/A)カウンタ H H'FFA7:PWM(D/A)カウンタ L DACNTH DACNTL ビット(CPU): 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 ビット(カウンタ): 7 6 5 4 3 2 1 0 8 9 10 11 12 13 − − − REGS 初期値: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 R/W: R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W − R/W レジスタセレクト アップカウンタ 1024 0 DADRAとDADRBがアクセス可能 1 DACRとDACNTがアクセス可能 付 H'FFA8:タイマコントロール/ステータスレジスタ 0 ビット : 初期値 : R/W : 録 TCSR0:WDT0 7 6 5 4 3 2 1 0 OVF WT/IT TME RSTS RST/NMI CKS2 CKS1 CKS0 0 0 0 0 0 0 0 0 R/(W)* R/W R/W R/W R/W R/W R/W R/W クロックセレクト2〜0 CKS2 CKS1 CKS0 0 0 1 1 0 1 クロック 0 φ/2 1 φ/64 0 φ/128 1 φ/512 0 φ/2048 1 φ/8192 0 φ/32768 1 φ/131072 リセットまたはNMI 0 NMI割込みを要求 1 内部リセットを要求 リザーブビット タイマイネーブル 0 TCNTをH'00に初期化し、カウント動作を停止 1 TCNTはカウント動作 タイマモードセレクト 0 1 インターバルタイマモード:TCNTがオーバフローしたとき CPUへインターバルタイマ割込み(WOVI)を要求 ウォッチドッグタイマモード:TCNTがオーバフローしたとき CPUへリセットまたはNMI割込みを要求 オーバフローフラグ 0 [クリア条件] (1)TMEビットに0をライトしたとき (2)OVF=1の状態で、TCSRをリード後、OVFに0をライトしたとき 1 [セット条件] TCNTがオーバフロー(H'FF→H'00)したとき ただし、ウォッチドッグタイマモードで内部リセット要求を選択した 場合、セット後、内部リセットにより自動的にクリアされます。 【注】* フラグをクリアするための0ライトのみ可能です。 1025 付 録 H'FFA8 (W)H'FFA9 (R):タイマカウンタ 0 H'FFEA (W)H'FFEB (R):タイマカウンタ 1 TCNT0:WDT0 TCNT1:WDT1 ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 1 0 R/W : アップカウンタ H'FFAA:ポート A 出力データレジスタ ビット : 7 6 PAODR:ポート A 5 4 3 2 PA7ODR PA6ODR PA5ODR PA4ODR PA3ODR PA2ODR PA1ODR PA0ODR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポートAの各端子の出力データを格納 H'FFAB(R):ポート A 入力データレジスタ ビット : 7 6 5 PAPIN:ポート A 4 3 2 0 1 PA7PIN PA6PIN PA5PIN PA4PIN PA3PIN PA2PIN PA1PIN PA0PIN 初期値 : R/W : ―* ―* ―* ―* ―* ―* ―* ―* R R R R R R R R ポートAの各端子の状態 【注】* PA7〜PA0端子の状態により決定されます。 H'FFAB(W):ポート A データディレクションレジスタ ビット : 7 6 5 4 3 PADDR:ポート A 2 1 0 PA7DDR PA6DDR PA5DDR PA4DDR PA3DDR PA2DDR PA1DDR PA0DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W ポートAの各端子の入出力を指定 1026 付 録 H'FFAC:ポート 1 プルアップ MOS コントロールレジスタ P1PCR:ポート 1 7 ビット : 6 5 4 3 2 0 1 P17PCR P16PCR P15PCR P14PCR P13PCR P12PCR P11PCR P10PCR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポート1に内蔵された入力プルアップMOSを制御 H'FFAD:ポート 2 プルアップ MOS コントロールレジスタ P2PCR:ポート 2 7 ビット : 6 5 4 3 2 0 1 P27PCR P26PCR P25PCR P24PCR P23PCR P22PCR P21PCR P20PCR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポート2に内蔵された入力プルアップMOSを制御 H'FFAE:ポート 3 プルアップ MOS コントロールレジスタ P3PCR:ポート 3 7 ビット : 6 5 4 3 2 0 1 P37PCR P36PCR P35PCR P34PCR P33PCR P32PCR P31PCR P30PCR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポート3に内蔵された入力プルアップMOSを制御 H'FFB0:ポート 1 データディレクションレジスタ ビット : 7 6 5 4 P1DDR:ポート 1 3 2 1 0 P17DDR P16DDR P15DDR P14DDR P13DDR P12DDR P11DDR P10DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W ポート1の各端子の入出力を指定 1027 付 録 H'FFB1:ポート 2 データディレクションレジスタ ビット : 7 6 5 4 P2DDR:ポート 2 3 2 0 1 P27DDR P26DDR P25DDR P24DDR P23DDR P22DDR P21DDR P20DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W ポート2の各端子の入出力を指定 H'FFB2:ポート 1 データレジスタ ビット : 初期値 : R/W : P1DR:ポート 1 7 6 5 4 3 2 1 0 P17DR P16DR P15DR P14DR P13DR P12DR P11DR P10DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポート1の各端子の出力データを格納 H'FFB3:ポート 2 データレジスタ ビット : 初期値 : R/W : P2DR:ポート 2 7 6 5 4 3 2 1 0 P27DR P26DR P25DR P24DR P23DR P22DR P21DR P20DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポート2の各端子の出力データを格納 H'FFB4:ポート 3 データディレクションレジスタ ビット : 7 6 5 4 P3DDR:ポート 3 3 2 1 0 P37DDR P36DDR P35DDR P34DDR P33DDR P32DDR P31DDR P30DDR 初期値 : 0 0 0 0 0 0 0 0 R/W W W W W W W W W : ポート3の各端子の入出力を指定 1028 付 H'FFB5:ポート 4 データディレクションレジスタ ビット : 7 6 5 4 録 P4DDR:ポート 4 3 2 0 1 P47DDR P46DDR P45DDR P44DDR P43DDR P42DDR P41DDR P40DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W ポート4の各端子の入出力を指定 H'FFB6:ポート 3 データレジスタ ビット : 初期値 : R/W : P3DR:ポート 3 7 6 5 4 3 2 1 0 P37DR P36DR P35DR P34DR P33DR P32DR P31DR P30DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポート3の各端子の出力データを格納 H'FFB7:ポート 4 データレジスタ ビット : 初期値 : R/W : P4DR:ポート 4 7 6 5 4 3 2 1 0 P47DR P46DR P45DR P44DR P43DR P42DR P41DR P40DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポート4の各端子の出力データを格納 H'FFB8:ポート 5 データディレクションレジスタ P5DDR:ポート 5 7 6 5 4 3 − − − − − 初期値 : 1 1 1 1 1 0 0 0 R/W − − − − − W W W ビット : : 2 1 0 P52DDR P51DDR P50DDR ポート5の各端子の入出力を指定 1029 付 録 H'FFB9:ポート 6 データディレクションレジスタ 7 ビット : 6 5 P6DDR:ポート 6 4 3 2 0 1 P67DDR P66DDR P65DDR P64DDR P63DDR P62DDR P61DDR P60DDR 初期値 : 0 0 0 0 0 0 0 0 R/W W W W W W W W W : ポート6の各端子の入出力を指定 H'FFBA:ポート 5 データレジスタ ビット : P5DR:ポート 5 7 6 5 4 3 2 1 0 − − − − − P52DR P51DR P50DR 初期値 : 1 1 1 1 1 0 0 0 R/W − − − − − R/W R/W R/W : ポート5の各端子の出力データを格納 H'FFBB:ポート 6 データレジスタ ビット : 初期値 : R/W : P6DR:ポート 6 7 6 5 4 3 2 1 0 P67DR P66DR P65DR P64DR P63DR P62DR P61DR P60DR 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 1 0 ポート6の各端子の出力データを格納 H'FFBC:ポート B 出力データレジスタ ビット : 7 6 5 PBODR:ポート B 4 3 2 PB7ODR PB6ODR PB5ODR PB4ODR PB3ODR PB2ODR PB1ODR PB0ODR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポートBの各端子の出力データを格納 1030 付 H'FFBD(W):ポート 8 データディレクションレジスタ ビット : 7 初期値 : 1 6 5 4 3 録 P8DDR:ポート 8 2 0 1 P86DDR P85DDR P84DDR P83DDR P82DDR P81DDR P80DDR R/W : 0 0 0 0 0 0 0 W W W W W W W ポート8の各端子の入出力を指定 H'FFBD(R):ポート B 入力データレジスタ ビット : 7 6 5 PBPIN:ポート B 4 3 2 0 1 PB7PIN PB6PIN PB5PIN PB4PIN PB3PIN PB2PIN PB1PIN PB0PIN 初期値 : R/W : ―* ―* ―* ―* ―* ―* ―* ―* R R R R R R R R ポートBの各端子の状態 【注】* PB7〜PB0端子の状態により決定されます。 H'FFBE(W):ポート B データディレクションレジスタ ビット : 7 6 5 4 3 PBDDR:ポート B 2 0 1 PB7DDR PB6DDR PB5DDR PB4DDR PB3DDR PB2DDR PB1DDR PB0DDR 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W ポートBの各端子の入出力を指定 H'FFBE(R):ポート 7 入力データレジスタ ビット : 7 P77PIN 初期値 : R/W : 6 5 P7PIN:ポート 7 4 3 2 P76PIN P75PIN P74PIN P73PIN P72PIN 1 0 P71PIN P70PIN ―* ―* ―* ―* ―* ―* ―* ―* R R R R R R R R ポート7の各端子の状態 【注】* P77〜P70端子の状態により決定されます。 1031 付 録 H'FFBF:ポート 8 データレジスタ ビット : P8DR:ポート 8 7 6 5 4 3 2 1 0 − P86DR P85DR P84DR P83DR P82DR P81DR P80DR 初期値 : 1 0 0 0 0 0 0 0 : − R/W R/W R/W R/W R/W R/W R/W R/W ポート8の各端子の出力データを格納 H'FFC0:ポート 9 データディレクションレジスタ ビット : 7 6 5 4 P9DDR:ポート 9 3 2 1 0 P97DDR P96DDR P95DDR P94DDR P93DDR P92DDR P91DDR P90DDR モード1 初期値 : 0 1 0 0 0 0 0 0 : W W W W W W W W 初期値 : 0 0 0 0 0 0 0 0 : W W W W W W W W R/W モード2、3 R/W ポート9の各端子の入出力を指定 H'FFC1:ポート 9 データレジスタ ビット : 初期値 : R/W : P9DR:ポート 9 7 6 5 4 3 2 1 0 P97DR P96DR P95DR P94DR P93DR P92DR P91DR P90DR 0 ―* 0 0 0 0 0 0 R/W R R/W R/W R/W R/W R/W R/W ポート9の各端子の出力データを格納 【注】* 1032 P96端子の状態により決定されます。 付 H'FFC2:IRQ イネーブルレジスタ 6 5 4 3 2 1 0 IRQ7E IRQ6E IRQ5E IRQ4E IRQ3E IRQ2E IRQ1E IRQ0E 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 初期値 : R/W IER:割込み 7 ビット : : 録 IRQ7〜IRQ0イネーブル 0 IRQn割込みを禁止 1 IRQn割込みを許可 (n=7〜0) H'FFC3:シリアルタイマコントロールレジスタ ビット : 初期値 : R/W : STCR:システム 7 6 5 4 3 2 1 0 IICS IICX1 IICX0 IICE FLSHE ― ICKS1 ICKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W インターナルクロック ソースセレクト*1 リザーブ フラッシュメモリコントロールレジスタイネーブル 0 フラッシュメモリの制御レジスタは非選択状態 1 フラッシュメモリの制御レジスタは選択状態 I2Cマスタイネーブル 0 SCI0、SCI1、SCI2の制御レジスタのCPUアクセス を許可 1 I2Cバスインタフェース、PWMXのデータレジスタ および制御レジスタのCPUアクセスを許可 I2Cトランスファレートセレクト1、0*2 I2Cエクストラバッファセレクト 【注】*1 0 PA7〜PA4は通常入出力端子 1 PA7〜PA4はバス駆動可能な入出力端子 8ビットタイマの入力クロック選択に使用します。詳細は「12.2.4 タイマコント ロールレジスタ(TCR)」を参照してください。 *2 I2Cバスインタフェースの転送クロック選択に使用します。詳細は「16.2.4 I2Cバス モードレジスタ(ICMR)」を参照してください。 1033 付 録 H'FFC4:システムコントロールレジスタ ビット : 7 6 5 4 3 CS2E IOSE INTM1 INTM0 XRST NMIEG 0 0 0 0 1 0 0 1 R/W R/W R R/W R R/W R/W R/W 初期値 : R/W SYSCR:システム : 1 0 HIE RAME 2 RAMイネーブル 0 内蔵RAM無効 1 内蔵RAM有効 ホストインタフェースイネーブル 0 アドレスH'(FF)FFF0〜H'(FF)FFF7、 H'(FF)FFFC〜H'(FF)FFFFのエリア は、8ビットタイマ(チャネルX、Y) のデータレジスタと制御レジスタ およびタイマコネクションの制御 レジスタをアクセス 1 アドレスH'(FF)FFF0〜H'(FF)FFF7、 H'(FF)FFFC〜H'(FF)FFFFのエリア は、ホストインタフェースのデータ レジスタと制御レジスタ、キーボー ドコントローラおよび入力プルアッ プMOSの制御レジスタをアクセス NMIエッジセレクト 0 立ち下がりエッジ 1 立ち上がりエッジ 外部リセット 0 リセットがウォッチドッグタイ マオーバフローで発生 1 リセットが外部リセットで発生 割込み制御モードの選択 0 0 割込み制御モード0 1 割込み制御モード1 IOSイネーブル AS/IOS端子はアドレスストローブ端子 0 (外部エリアアクセス時にLow出力) 1 AS/IOS端子はI/Oストローブ端子 (アドレスH' (FF) F000〜H' (FF) FE4F*の指定アドレスアクセス時にLow出力) 【注】 * H8S/2148 F-ZTATのAマスク品およびH8S/2147 F-ZTATのAマスク品では、 H' (FF) F000〜H' (FF) F7FFとなります。 チップセレクトイネーブル SYSCR HICR ビット7 ビット0 明 FGA20E 0 0 CS2端子機能停止 1 (CS2は内部的にHighレベル固定) 0 P81/CS2端子にCS2端子機能を選択 1 P90/ECS2端子にCS2端子機能を選択 1 1034 説 CS2E 付 H'FFC5:モードコントロールレジスタ ビット : 初期値 : R/W : 録 MDCR:システム 7 6 5 4 3 2 1 0 EXPE − − − − − MDS1 MDS0 −* 0 0 0 0 0 −* −* R/W* − − − − − R R モード端子の状態 拡張モードイネーブル 【注】* 0 シングルチップモードを選択 1 拡張モードを選択 MD1〜MD0端子により決定されます。 1035 付 録 H'FFC6:バスコントロールレジスタ ビット : 初期値 : R/W : BCR:バスコントローラ 7 6 ICIS1 ICIS0 1 1 0 1 0 R/W R/W R/W R/W R/W 5 4 3 BRSTRM BRSTS1 BRSTS0 2 1 0 ― IOS1 IOS0 1 1 1 R/W R/W R/W IOSセレクト IOS1 IOS0 IOSE=1のとき、AS/IOSを Low出力とするアドレス 0 0 アドレスH'(FF)F000〜 H'(FF)F03Fアクセス時にLow出力 1 アドレスH'(FF)F000〜 H'(FF)F0FFアクセス時にLow出力 1 0 アドレスH'(FF)F000〜 H'(FF)F3FFアクセス時にLow出力 1 アドレスH'(FF)F000〜 H'(FF)FE4Fアクセス時にLow出力 バーストサイクルセレクト0 0 バーストアクセスは最大4ワード 1 バーストアクセスは最大8ワード バーストサイクルセレクト1 0 バーストサイクルは1ステート 1 バーストサイクルは2ステート バーストROMイネーブル 0 基本バスインタフェース 1 バーストROMインタフェース アイドルサイクル挿入0 0 外部リードサイクルと外部ライトサイクルが連続 したとき、アイドルサイクルを挿入しない 1 外部リードサイクルと外部ライトサイクルが連続 したとき、アイドルサイクルを挿入する リザーブビット 1036 付 録 H'FFC7:ウェイトステートコントロールレジスタ WSCR:バスコントローラ ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 RAMS RAM0 ABW AST WMS1 WMS0 WC1 WC0 0 0 1 1 0 0 1 1 R/W R/W R/W R/W R/W R/W R/W R/W リザーブビット ウェイトカウント1、0 0 0 プログラムウェイトを挿入しない 1 外部メモリ空間アクセス時、 プログラムウェイトを1ステート挿入 1 0 外部メモリ空間アクセス時、 プログラムウェイトを2ステート挿入 1 外部メモリ空間アクセス時、 プログラムウェイトを3ステート挿入 ウェイトモードセレクト1、0 0 1 0 プログラムウェイトモード 1 ウェイト禁止モード 0 端子ウェイトモード 1 端子オートウェイトモード アクセスステートコントロール 0 外部メモリ空間を2ステートアクセス空間に設定 外部メモリ空間のアクセスにウェイトステートの挿入を禁止 1 外部メモリ空間アクセスは3ステートアクセス 外部メモリ空間アクセスにウェイトステートの挿入を許可 バス幅コントロール 0 外部メモリ空間を16ビットアクセス空間に設定 1 外部メモリ空間を8ビットアクセス空間に設定 1037 付 録 H'FFC8 :タイマコントロールレジスタ 0 H'FFC9 :タイマコントロールレジスタ 1 H'FFF0 :タイマコントロールレジスタ X H'FFF0 :タイマコントロールレジスタ Y ビット : 初期値 : R/W : TCR0 :TMR0 TCR1 :TMR1 TCRX :TMRX TCRY :TMRY 7 6 5 4 3 2 1 0 CMIEB CMIEA OVIE CCLR1 CCLR0 CKS2 CKS1 CKS0 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W クロックセレクト2〜0 チャネル ビット2ビット1ビット0 説明 CKS2 CKS1 CKS0 カウンタクリア1、0 0 1 0 クリアを禁止 1 コンペアマッチAにより クリア 0 1 0 0 0 コンペアマッチBにより クリア 内部クロック:φ/8立ち下がりエッジでカウント 0*1 内部クロック:φ/64立ち下がりエッジでカウント 内部クロック:φ/32立ち下がりエッジでカウント 1*1 外部リセット入力の立ち上がり エッジによりクリア 内部クロック:φ/1024立ち下がりエッジでカウント 内部クロック:φ/256立ち下がりエッジでカウント 1 0 0 TCNT1のオーバフロー信号でカウント*2 0 0 0 クロック入力を禁止 1*1 内部クロック:φ/8立ち下がりエッジでカウント タイマオーバフローインタラプトイネーブル 1 クロック入力を禁止 1*1 内部クロック:φ/2立ち下がりエッジでカウント 1 1 0 0 内部クロック:φ/2立ち下がりエッジでカウント OVFによる割込み要求(OVI)を禁止 1 OVFによる割込み要求(OVI)を許可 0*1 内部クロック:φ/64立ち下がりエッジでカウント 内部クロック:φ/128立ち下がりエッジでカウント 1*1 内部クロック:φ/2048立ち下がりエッジでカウント コンペアマッチインタラプトイネーブルA 0 CMFAによる割込み要求(CMIA)を禁止 1 CMFAによる割込み要求(CMIA)を許可 X 1 0 0 TCNT0のコンペアマッチAでカウント*2 0 0 0 クロック入力を禁止 1 内部クロック:φでカウント 0 内部クロック:φ/2立ち下がりエッジでカウント 1 内部クロック:φ/4立ち下がりエッジでカウント 1 コンペアマッチインタラプトイネーブルB 0 CMFBによる割込み要求(CMIB)を禁止 1 CMFBによる割込み要求(CMIB)を許可 内部クロック:φ/1024立ち下がりエッジでカウント Y 1 0 0 クロック入力を禁止 0 0 0 クロック入力を禁止 1 共通 1 内部クロック:φ/4立ち下がりエッジでカウント 0 内部クロック:φ/256立ち下がりエッジでカウント 1 内部クロック:φ/2048立ち下がりエッジでカウント 1 0 0 クロック入力を禁止 1 0 1 外部クロック:立ち上がりエッジでカウント 1 0 外部クロック:立ち下がりエッジでカウント 1 外部クロック:立ち上がり/立ち下がり 両エッジでカウント 【注】 *1 STCRのICKS1、ICKS0で選択します。詳細は「12.2.4 タイマコントロール レジスタ(TCR)」を参照してください。 *2 チャネル0のクロック入力をTCNT1のオーバフロー信号とし、チャネル1の クロック入力をTCNT0のコンペアマッチ信号とすると、カウントアップクロ ックが発生しません。この設定は行わないでください。 1038 付 H'FFCA:タイマコントロール/ステータスレジスタ 0 TCSR0 ビット : 初期値 : R/W : 録 TCSR0:TMR0 7 6 5 4 3 2 1 0 CMFB CMFA OVF ADTE OS3 OS2 OS1 OS0 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/W R/W R/W R/W R/W アウトプットセレクト1、0 0 1 0 コンペアマッチAで変化しない 1 コンペアマッチAで0出力 0 コンペアマッチAで1出力 1 コンペアマッチAごとに反転出力 (トグル出力) アウトプットセレクト3、2 0 1 0 コンペアマッチBで変化しない 1 コンペアマッチBで0出力 0 コンペアマッチBで1出力 1 コンペアマッチBごとに反転出力 (トグル出力) A/Dトリガイネーブル 0 コンペアマッチAによるA/D変換開始要求を禁止 1 コンペアマッチAによるA/D変換開始要求を許可 タイマオーバフローフラグ 0 [クリア条件] OVF=1の状態で、OVFをリードした後、OVFに0をライトしたとき 1 [セット条件] TCNTがH'FF→H'00になったとき コンペアマッチフラグA 0 [クリア条件] (1)CMFA=1の状態で、CMFAをリードした後、CMFAに0をライトしたとき (2)CMIA割込みにより、DTCが起動されたとき 1 [セット条件] TCNT=TCORAになったとき コンペアマッチフラグB 0 [クリア条件] (1)CMFB=1の状態で、CMFBをリードした後、CMFBに0をライトしたとき (2)CMIB割込みにより、DTCが起動されたとき 1 [セット条件] TCNT=TCORBになったとき 【注】* ビット7〜5は、フラグをクリアするための0ライトのみ可能です。 1039 付 録 H'FFCB:タイマコントロール/ステータスレジスタ 1 TCSR1 ビット : 初期値 : R/W : TCSR1:TMR1 7 6 5 4 3 2 1 0 CMFB CMFA OVF − OS3 OS2 OS1 OS0 0 0 0 1 0 0 0 0 R/(W)* R/(W)* R/(W)* − R/W R/W R/W R/W アウトプットセレクト1、0 0 1 0 コンペアマッチAで変化しない 1 コンペアマッチAで0出力 0 コンペアマッチAで1出力 1 コンペアマッチAごとに反転出力 (トグル出力) アウトプットセレクト3、2 0 1 0 コンペアマッチBで変化しない 1 コンペアマッチBで0出力 0 コンペアマッチBで1出力 1 コンペアマッチBごとに反転出力 (トグル出力) タイマオーバフローフラグ 0 [クリア条件] OVF=1の状態で、OVFをリードした後、OVFに0をライトしたとき 1 [セット条件] TCNTがH'FF→H'00になったとき コンペアマッチフラグA 0 [クリア条件] (1)CMFA=1の状態で、CMFAをリードした後、CMFAに0をライトしたとき (2)CMIA割込みにより、DTCが起動されたとき 1 [セット条件] TCNT=TCORAになったとき コンペアマッチフラグB 0 [クリア条件] (1)CMFB=1の状態で、CMFBをリードした後、CMFBに0をライトしたとき (2)CMIB割込みにより、DTCが起動されたとき 1 [セット条件] TCNT=TCORBになったとき 【注】* 1040 ビット7〜5は、フラグをクリアするための0ライトのみ可能です。 付 H'FFCC :タイムコンスタントレジスタ A0 H'FFCD :タイムコンスタントレジスタ A1 H'FFCE :タイムコンスタントレジスタ B0 H'FFCF :タイムコンスタントレジスタ B1 H'FFF2 :タイムコンスタントレジスタ AY H'FFF3 :タイムコンスタントレジスタ BY H'FFF5 :タイムコンスタントレジスタ C H'FFF6 :タイムコンスタントレジスタ AX H'FFF7 :タイムコンスタントレジスタ BX 録 TCORA0 :TMR0 TCORA1 :TMR1 TCORB0 :TMR0 TCORB1 :TMR1 TCORAY :TMRY TCORBY :TMRY TCORC :TMRX TCORAX :TMRX TCORBX :TMRX TCORA0 TCORB0 TCORA1 TCORB1 ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W TCORとTCNTの値の一致時にコンペアマッチフラグ(CMF)をセット TCORAX、TCORAY TCORBX、TCORBY ビット : 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W R/W : TCORとTCNTの値の一致時にコンペアマッチフラグ(CMF)をセット TCORC ビット : 7 6 5 4 3 2 1 0 初期値 : 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W R/W : TCORCとTICRの内容の和と、TCNTの一致時にコンペアマッチC信号が発生 1041 付 録 H'FFD0:タイマカウンタ 0 H'FFD1:タイマカウンタ 1 H'FFF4 :タイマカウンタ X H'FFF4 :タイマカウンタ Y TCNT0 :TMR0 TCNT1 :TMR1 TCNTX:TMRX TCNTY:TMRY TCNT0 TCNT1 ビット : 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W : R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W アップカウンタ TCNTX、TCNTY 7 ビット : 初期値 : R/W : 6 5 4 3 2 0 1 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W アップカウンタ H'FFD3:PWM アウトプットイネーブルレジスタ A PWOERA:PWM H'FFD2:PWM アウトプットイネーブルレジスタ B PWOERB:PWM ビット : 7 6 5 4 3 2 1 0 PWOERA: OE7 OE6 OE5 OE4 OE3 OE2 OE1 OE0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : ビット : 7 6 5 4 3 2 1 0 PWOERB: OE15 OE14 OE13 OE12 OE11 OE10 OE9 OE8 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : PWM出力とポート出力を切り替え DDR OE 0 0 ポート入力 1 ポート入力 0 ポート出力またはPWMの256/256出力 1 PWM出力(0〜255/256出力) 1 1042 説明 付 録 H'FFD5:PWM データポラリティレジスタ A PWDPRA:PWM H'FFD4:PWM データポラリティレジスタ B PWDPRB:PWM ビット : 7 6 5 4 3 2 1 0 PWDPRA: OS7 OS6 OS5 OS4 OS3 OS2 OS1 OS0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : ビット : 7 6 5 4 3 2 1 0 PWDPRB: OS15 OS14 OS13 OS12 OS11 OS10 OS9 OS8 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : PWM出力の極性を制御 0 PWM直接出力(PWDRの値が、出力のHigh幅に対応) 1 PWM反転出力(PWDRの値が、出力のLow幅に対応) 1043 付 録 H'FFD6:PWM レジスタセレクト 7 ビット : 6 PWCKE PWCKS 初期値 : R/W : PWSL:PWM 5 4 3 2 1 0 − − RS3 RS2 RS1 RS0 0 0 1 0 0 0 0 0 R/W R/W − − R/W R/W R/W R/W レジスタセレクト 0 0 0 1 1 0 1 1 0 0 1 1 0 1 PWMクロックイネーブル、PWMクロックセレクト PWSL ビット7 PCSR ビット6 PWCKE PWCKS ビット2 PWCKB PWCKA 0 − − − クロック入力禁止 1 0 − − φ(システムクロック)を選択 1 0 0 φ/2を選択 1 φ/4を選択 0 φ/8を選択 1 φ/16を選択 1 1044 説明 ビット1 0 PWDR0選択 1 PWDR1選択 0 PWDR2選択 1 PWDR3選択 0 PWDR4選択 1 PWDR5選択 0 PWDR6選択 1 PWDR7選択 0 PWDR8選択 1 PWDR9選択 0 PWDR10選択 1 PWDR11選択 0 PWDR12選択 1 PWDR13選択 0 PWDR14選択 1 PWDR15選択 付 H'FFD7:PWM データレジスタ PWDR0〜 PWDR15:PWM ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : 録 出力する基本パルスのデューティ比および付加パルス個数の指定 H'FFE0:A/D データレジスタ AH H'FFE1:A/D データレジスタ AL H'FFE2:A/D データレジスタ BH H'FFE3:A/D データレジスタ BL H'FFE4:A/D データレジスタ CH H'FFE5:A/D データレジスタ CL H'FFE6:A/D データレジスタ DH H'FFE7:A/D データレジスタ DL ADDRAH:A/D ADDRAL :A/D ADDRBH:A/D ADDRBL :A/D ADDRCH:A/D ADDRCL :A/D ADDRDH:A/D ADDRDL :A/D ADDRH ビット 14 12 ADDRL 10 8 6 5 4 3 2 1 0 AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 — — — — — — 15 13 11 9 7 初期値 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 R/W R R R R R R R R R R R R R R R R A/Dデータを格納 アナログ入力チャネルとADDRの対応 アナログ入力チャネル A/Dデータレジスタ グループ1 グループ0 AN0 AN4 ADDRA AN1 AN5 ADDRB AN2 AN6またはCIN0〜CIN7 ADDRC AN3 AN7またはCIN8〜CIN15 ADDRD 1045 付 録 H'FFE8:A/D コントロール/ステータスレジスタ ADCSR:A/D ビット 初期値 R/W 7 6 5 4 3 2 1 0 ADF ADIE ADST SCAN CKS CH2 CH1 CH0 0 0 0 0 0 0 0 0 R/(W)* R/W R/W R/W R/W R/W R/W R/W チャネルセレクト グループ チャネル 選択 選択 説 明 CH2 CH1 CH0 0 0 0 AN0 AN0 1 AN1 AN0、AN1 0 AN2 AN0、AN1、AN2 1 AN3 AN0、AN1、AN2、 0 AN4 AN4 1 AN5 AN4、AN5 0 AN6または AN4、AN5、 CIN0〜7 AN6またはCIN0〜7 AN7または AN4、AN5、 CIN8〜15 AN6またはCIN0〜7、 1 シングルモード スキャンモード AN3 1 0 1 1 AN7またはCIN8〜15 クロックセレクト 0 変換時間=266ステート(Max) 1 変換時間=134ステート(Max) スキャンモード 0 シングルモード 1 スキャンモード A/Dスタート 0 A/D変換を停止 1 (1)シングルモード:A/D変換を開始。指定したチャネルの変換が 終了すると自動的に0にクリア (2)スキャンモード:A/D変換を開始。ソフトウェア、リセット、 スタンバイモードまたはモジュールストップ モードによって、0にクリアされるまで選択 されたチャネルを順次連続変換 A/Dインタラプトイネーブル 0 A/D変換の終了による割込み(ADI)要求を禁止 1 A/D変換の終了による割込み(ADI)要求を許可 A/Dエンドフラグ 0 [クリア条件] (1)ADF=1の状態で、ADFフラグをリードした後、ADFフラグに0をライトしたとき (2)ADI割込みによりDTCが起動され、ADDRをリードしたとき 1 [セット条件] (1)シングルモード:A/D変換が終了したとき (2)スキャンモード:指定したすべてのチャネルのA/D変換が終了したとき 【注】* 1046 フラグをクリアするための0ライトのみ可能です。 付 録 H'FFE9:A/D コントロールレジスタ ADCR:A/D ビット 初期値 R/W 7 6 5 4 3 2 1 0 TRGS1 TRGS0 — — — — — — 0 0 1 1 1 1 1 1 R/W R/W — — — — — — タイマトリガセレクト 0 1 0 外部トリガによるA/D変換の開始を禁止 1 外部トリガによるA/D変換の開始を禁止 0 外部トリガ(8ビットタイマ)によるA/D変換の開始を許可 1 外部トリガ端子によるA/D変換の開始を許可 1047 付 録 H'FFEA:タイマコントロール/ステータスレジスタ 1 TCSR1:WDT1 ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 OVF WT/IT TME PSS RST/NMI CKS2 CKS1 CKS0 0 0 0 0 0 0 0 0 R/(W)*1 R/W R/W R/W R/W R/W R/W R/W クロックセレクト2〜0 PSS CKS2 CKS1 CKS0 0 0 0 1 1 0 1 1 0 0 1 1 0 1 クロック 0 φ/2 1 φ/64 0 φ/128 1 φ/512 0 φ/2048 1 φ/8192 0 φ/32768 1 φ/131072 0 φSUB/2 1 φSUB/4 0 φSUB/8 1 φSUB/16 0 φSUB/32 1 φSUB/64 0 φSUB/128 1 φSUB/256 リセットまたはNMI 0 NMI割込みを要求 1 内部リセットを要求 プリスケーラセレクト*2 0 TCNTはφベースのプリスケーラ(PSM)の 分周クロックをカウント 1 TCNTはφSUBベースのプリスケーラ(PSS) の分周クロックをカウント タイマイネーブル 0 TCNTをH'00に初期化し、カウント動作を停止 1 TCNTはカウント動作 タイマモードセレクト 0 インターバルタイマモード:TCNTがオーバフローしたとき CPUへインターバルタイマ割込み(WOVI)を要求 1 ウォッチドッグタイマモード:TCNTがオーバフローしたとき CPUへリセットまたはNMI割込みを要求 オーバフローフラグ 0 [クリア条件] (1)TMEビットに0をライトしたとき (2)OVF=1の状態で、TCSRをリード後、OVFに0をライトしたとき 1 [セット条件] TCNTがオーバフロー(H'FF→H'00)したとき ただし、ウォッチドッグタイマモードで内部リセット要求を選択した 場合、セット後に内部リセットにより自動的にクリアされます。 【注】 *1 フラグをクリアするための0ライトのみ可能です。 *2 低消費電力モード遷移時の動作制御については、「25.2.3 タイマ コントロール/ステータスレジスタ(TCSR)」を参照してください。 1048 付 H'FFF0:ホストインタフェースコントロールレジスタ ビット : 録 HICR:HIF 7 6 5 4 3 2 1 0 ― ― ― ― ― IBFIE2 IBFIE1 FGA20E 初期値 : 1 1 1 1 1 0 0 0 スレーブR/W : ― ― ― ― ― R/W R/W R/W ホストR/W ― ― ― ― ― ― ― ― 高速GATE A20イネーブルビット 0 高速GATE A20機能を禁止 1 高速GATE A20機能を許可 入力データレジスタフル割込み イネーブルビット1 0 入力データレジスタ(IDR1) 受信完了割込み要求を禁止 1 入力データレジスタ(IDR1) 受信完了割込み要求を許可 入力データレジスタフル割込み イネーブルビット2 0 入力データレジスタ(IDR2) 受信完了割込み要求を禁止 1 入力データレジスタ(IDR2) 受信完了割込み要求を許可 1049 付 録 H'FFF1:タイマコントロール/ステータスレジスタ X TCSRX:TMRX TCSRX ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CMFB CMFA OVF ICF OS3 OS2 OS1 OS0 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/(W)* R/W R/W R/W R/W アウトプットセレクト1、0 0 1 0 コンペアマッチAで変化しない 1 コンペアマッチAで0出力 0 コンペアマッチAで1出力 1 コンペアマッチAごとに反転出力 (トグル出力) アウトプットセレクト3、2 0 1 0 コンペアマッチBで変化しない 1 コンペアマッチBで0出力 0 コンペアマッチBで1出力 1 コンペアマッチBごとに反転出力 (トグル出力) インプットキャプチャフラグ 0 [クリア条件] ICF=1の状態で、ICFをリードした後、ICFに0をライトしたとき 1 [セット条件] TCONRIのICSTビットが1にセットされた後、外部リセット信号に 立ち上がりエッジ→立ち下がりエッジの順でエッジを検出したとき タイマオーバフローフラグ 0 [クリア条件] OVF=1の状態で、OVFをリードした後、OVFに0をライトしたとき 1 [セット条件] TCNTがH'FF→H'00になったとき コンペアマッチフラグA 0 [クリア条件] (1)CMFA=1の状態で、CMFAをリードした後、CMFAに0をライトしたとき (2)CMIA割込みにより、DTCが起動されたとき 1 [セット条件] TCNT=TCORAになったとき コンペアマッチフラグB 0 [クリア条件] (1)CMFB=1の状態で、CMFBをリードした後、CMFBに0をライトしたとき (2)CMIB割込みにより、DTCが起動されたとき 1 [セット条件] TCNT=TCORBになったとき 【注】* 1050 ビット7〜4は、フラグをクリアするための0ライトのみ可能です。 付 録 H'FFF1:タイマコントロール/ステータスレジスタ Y TCSRY:TMRY TCSRY ビット : 初期値 : R/W : 7 6 5 4 3 2 1 0 CMFB CMFA OVF ICIE OS3 OS2 OS1 OS0 0 0 0 0 0 0 0 0 R/(W)* R/(W)* R/(W)* R/W R/W R/W R/W R/W アウトプットセレクト1、0 0 1 0 コンペアマッチAで変化しない 1 コンペアマッチAで0出力 0 コンペアマッチAで1出力 1 コンペアマッチAごとに反転出力 (トグル出力) アウトプットセレクト3、2 0 1 0 コンペアマッチBで変化しない 1 コンペアマッチBで0出力 0 コンペアマッチBで1出力 1 コンペアマッチBごとに反転出力 (トグル出力) インプットキャプチャインタラプトイネーブル 0 ICFによる割込み要求(ICIX)を禁止 1 ICFによる割込み要求(ICIX)を許可 タイマオーバフローフラグ 0 [クリア条件] OVF=1の状態で、OVFをリードした後、OVFに0をライトしたとき 1 [セット条件] TCNTがH'FF→H'00になったとき コンペアマッチフラグA 0 [クリア条件] (1)CMFA=1の状態で、CMFAをリードした後、CMFAに0をライトしたとき (2)CMIA割込みにより、DTCが起動されたとき 1 [セット条件] TCNT=TCORAになったとき コンペアマッチフラグB 0 [クリア条件] (1)CMFB=1の状態で、CMFBをリードした後、CMFBに0をライトしたとき (2)CMIB割込みにより、DTCが起動されたとき 1 [セット条件] TCNT=TCORBになったとき 【注】* ビット7〜5は、フラグをクリアするための0ライトのみ可能です。 1051 付 録 H'FFF1:キーボードマトリクス割込みマスクレジスタ KMIMR :割込み H'FFF3:キーボードマトリクス割込みマスクレジスタ A KMIMRA :割込み KMIMR ビット : 7 6 5 4 3 2 1 0 KMIMR7 KMIMR6 KMIMR5 KMIMR4 KMIMR3 KMIMR2 KMIMR1 KMIMR0 初期値 : R/W : 1 0 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W 1 0 キーボードマトリクス割込みマスク 0 キーセンス入力割込み要求を許可 1 キーセンス入力割込み要求を禁止 KMIMRA ビット : 7 6 5 4 3 2 KMIMR15 KMIMR14 KMIMR13 KMIMR12 KMIMR11 KMIMR10 KMIMR9 KMIMR8 初期値 : R/W : 1 1 1 1 1 1 1 1 R/W R/W R/W R/W R/W R/W R/W R/W キーボードマトリクス割込みマスク 0 キーセンス入力割込み要求を許可 1 キーセンス入力割込み要求を禁止 H'FFF2:インプットキャプチャレジスタ R H'FFF3:インプットキャプチャレジスタ F ビット : 7 6 5 TICRR:TMRX TICRF:TMRX 4 3 2 1 初期値 : 0 0 0 0 0 0 0 0 : R R R R R R R R R/W 外部リセット入力の立ち下がり時、TCNTの値を格納 1052 0 付 録 H'FFF2:ポート 6 プルアップ MOS コントロールレジスタ KMPCR:ポート 6 ビット : 6 7 5 4 3 2 1 0 KM7PCR KM6PCR KM5PCR KM4PCR KM3PCR KM2PCR KM1PCR KM0PCR 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W ポート6に内蔵された入力プルアップMOSを制御 【注】 KMPCRはTMRX/TMRYのTICRR/TCORAYと同じアドレスです。 KMPCRを選択するときには、SYSCRのHIEビットを1に設定してください。 H'FFF4 :入力データレジスタ 1 H'FFFC :入力データレジスタ 2 ビット : IDR1:HIF IDR2:HIF 7 6 5 4 3 2 1 0 IDR7 IDR6 IDR5 IDR4 IDR3 IDR2 IDR1 IDR0 初期値 : ― ― ― ― ― ― ― ― スレーブR/W : R R R R R R R R ホストR/W W W W W W W W W CS=Lowのとき、IOWの立ち上がりでホストデータバスの内容を格納 H'FFF5 :出力データレジスタ 1 H'FFFD :出力データレジスタ 2 ビット : ODR1:HIF ODR2:HIF 7 6 5 4 3 2 1 0 ODR7 ODR6 ODR5 ODR4 ODR3 ODR2 ODR1 ODR0 ― ― ― ― ― ― ― ― スレーブR/W : R/W R/W R/W R/W R/W R/W R/W R/W ホストR/W R R R R R R R R 初期値 : HA0=Low、CS=Low、IOR=Lowのとき、 ODRの内容をホストデータバスに出力 1053 付 録 H'FFF5:タイマインプットセレクトレジスタ ビット : TISR:TMRY 7 6 5 4 3 2 1 0 ― ― ― ― ― ― ― IS 初期値 : 1 1 1 1 1 1 1 0 : ― ― ― ― ― ― ― R/W R/W インプットセレクト H'FFF6 :ステータスレジスタ 1 H'FFFE :ステータスレジスタ 2 ビット : 初期値 : 0 IVG信号を選択(H8S/2148シリーズ) 外部クロック/リセット入力禁止 (H8S/2144シリーズ、H8S/2147N) 1 VSYNCI/TMIY(TMCIY/TMRIY)を選択 STR1:HIF STR2:HIF 7 6 5 4 3 2 1 0 DBU DBU DBU DBU C/D DBU IBF OBF 0 0 0 0 0 0 0 0 スレーブR/W : R/W R/W R/W R/W R R/W R R/(W) ホストR/W R R R R R R R R ユーザ定義ビット 出力データレジスタフル 0 [クリア条件] ホストがODRをリードまたは、 スレーブがOBFビットに0ライト 1 [セット条件] スレーブがODRにライト 入力データレジスタフル 0 [クリア条件] スレーブがIDRをリード 1 [セット条件] ホストがIDRにライト コマンド/データ 1054 0 入力データレジスタ(IDR)の内容はデータ 1 入力データレジスタ(IDR)の内容はコマンド 付 H'FFF8:D/A データレジスタ 0 H'FFF9:D/A データレジスタ 1 DADR0:D/A DADR1:D/A ビット : 7 6 5 4 3 2 1 0 初期値 : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W R/W : 録 D/A変換を行うデータを格納 H'FFFA:D/A コントロールレジスタ ビット : 初期値 : R/W : DACR:D/A 7 6 5 4 3 2 1 0 DAOE1 DAOE0 DAE − − − − − 0 0 0 1 1 1 1 1 R/W R/W R/W − − − − − D/Aイネーブル DAOE1 DAOE0 0 DAE 変換結果 0 * チャネル0、1のD/A変換を禁止 1 0 チャネル0のD/A変換を許可 チャネル1のD/A変換を禁止 1 0 1 チャネル0、1のD/A変換を許可 0 チャネル0のD/A変換を禁止 チャネル1のD/A変換を許可 1 1 チャネル0、1のD/A変換を許可 * チャネル0、1のD/A変換を許可 *:Don't care D/Aアウトプットイネーブル0 0 アナログ出力DA0を禁止 1 チャネル0のD/A変換を許可。アナログ出力DA0を許可 D/Aアウトプットイネーブル1 0 アナログ出力DA1を禁止 1 チャネル1のD/A変換を許可。アナログ出力DA1を許可 1055 付 録 H'FFFC:タイマコネクションレジスタ I ビット: 7 6 5 SIMOD1 SIMOD0 SCONE 初期値: R/W: TCONRI:タイマコネクション 4 3 2 1 0 ICST HFINV VFINV HIINV VIINV 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 入力同期信号反転 0 VSYNCI端子の状態をその ままVSYNCI入力とする 1 VSYNCI端子の状態を反転 してVSYNCI入力とする 入力同期信号反転 0 HSYNCI、CSYNCI端子の状態をその ままHSYNCI、CSYNCI入力とする 1 HSYNCI、CSYNCI端子の状態を反転 してHSYNCI、CSYNCI入力とする 入力同期信号反転 0 VFBACKI端子の状態をそのまま VFBACKI入力とする 1 VFBACKI端子の状態を反転して VFBACKI入力とする 入力同期信号反転 0 HFBACKI端子の状態をそのままHFBACKI入力とする 1 HFBACKI端子の状態を反転してHFBACKI入力とする インプットキャプチャスタートビット 0 TICRR、TICRFのインプットキャプチャ機能を停止 [クリア条件] TMRIXに、立ち上がりエッジ→立ち下がりエッジの順でエッジを検出 1 TICRR、TICRFのインプットキャプチャ機能が動作中 (TMRIXの立ち上がりエッジ→立ち下がりエッジ検出待ち状態) [セット条件] ICST=0のリード後、1をライトしたとき 同期信号接続イネーブル SCONE 0 1 モード名称 通常接続 FTIA FTIB FTIC FTID TMCI1 FTIA入力 FTIB入力 FTIC入力 FTID入力 TMCI1 同期信号接続 IVI信号 TMO1 VFBACKI IHI信号 モード 信号 入力 入力 IHI信号 IVI 反転信号 SIMOD1 SIMOD0 IHI信号 IVI信号 0 0 無信号 HFBACKI入力 VFBACKI入力 1 SオンGモード CSYNCI入力 PDC入力 0 コンポジットモード HSYNCI入力 PDC入力 1 セパレートモード HSYNCI入力 VSYNCI入力 1 1056 TMRI1 入力 入力同期モード選択1、0 モード名称 TMRI1 付 H'FFFD:タイマコネクションレジスタ O ビット: 初期値: R/W: 録 TCONRO:タイマコネクション 7 6 5 4 3 2 HOE VOE CLOE CBOE HOINV VOINV 0 1 CLOINV CBOINV 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W 出力同期信号反転 0 CBLANK信号をそのまま CBLANK出力とする 1 CBLANK信号を反転して CBLANK出力とする 出力同期信号反転 0 CLO信号(CL1、CL2、CL3または CL4信号)をそのままCLAMPO出力 とする 1 CLO信号(CL1、CL2、CL3または CL4信号)を反転してCLAMPO出力 とする 出力同期信号反転 0 IVO信号をそのままVSYNCO出力とする 1 IVO信号を反転してVSYNCO出力とする 出力同期信号反転 0 IHO信号をそのままHSYNCO出力とする 1 IHO信号を反転してHSYNCO出力とする 出力許可 0 P27/A15/PW15/CBLANK端子は、P27/A15/PW15端子として動作する 1 モード1(内蔵ROM無効拡張モード)の場合: P27/A15/PW15/CBLANK端子は、A15端子として動作する モード2、3(内蔵ROM有効モード)の場合: P27/A15/PW15/CBLANK端子は、CBLANK端子として動作する 出力許可 0 P64/FTIC/KIN4/CIN4/CLAMPO端子は、P64/FTIC/KIN4/CIN4端子として動作する 1 P64/FTIC/KIN4/CIN4/CLAMPO端子は、CLAMPO端子として動作する 出力許可 0 P61/FTOA/KIN1/CIN1/VSYNCO端子は、P61/FTOA/KIN1/CIN1端子として動作する 1 P61/FTOA/KIN1/CIN1/VSYNCO端子は、VSYNCO端子として動作する 出力許可 0 P44/TMO1/HIRQ1/HSYNCO端子は、P44/TMO1/HIRQ1端子として動作する 1 P44/TMO1/HIRQ1/HSYNCO端子は、HSYNCO端子として動作する 1057 付 録 H'FFFE:タイマコネクションレジスタ S TCONRS:タイマコネクション 7 ビット : 6 5 4 3 2 0 1 TMRX/Y ISGENE HOMOD1 HOMOD0VOMOD1 VOMOD0 CLMOD1 CLMOD0 初期値 : R/W : 0 0 0 0 0 0 0 0 R/W R/W R/W R/W R/W R/W R/W R/W クランプ波形モード選択1、0 ISGENE CLMOD1 CLMOD0 0 0 1 説 明 0 CL1信号を選択 1 CL2信号を選択 0 CL3信号を選択 1 1 0 0 CL4信号を選択 1 0 1 1 垂直同期出力モード選択1、0 ISGENE VOMOD1 VOMOD0 0 0 説 明 IVI信号 0 (立ち下がりモディファイなし、IHI同期なし)を選択 1 IVI信号 (立ち下がりモディファイなし、IHI同期あり)を選択 1 0 IVI信号 (立ち下がりモディファイあり、IHI同期なし)を選択 1 IVI信号 (立ち下がりモディファイあり、IHI同期あり)を選択 1 0 0 IVG信号を選択 1 1 0 1 水平同期出力モード選択1、0 ISGENE HOMOD1 HOMOD0 0 0 1 説 IHI信号(2fHモディファイなし)を選択 1 IHI信号(2fHモディファイあり)を選択 0 CL1信号を選択 1 1 0 0 IHG信号を選択 1 1 0 1 内部同期信号選択 TMRX/TMRYアクセス選択 1058 明 0 0 アドレスH'FFF0〜H'FFF5でTMRXのレジスタをアクセスする 1 アドレスH'FFF0〜H'FFF5でTMRYのレジスタをアクセスする 付 録 H'FFFF:エッジセンスレジスタ SEDGR:タイマコネクション ビット: 初期値: 7 6 5 VEDG HEDG CEDG 0 0 0 1 R/(W)* R/W: 1 R/(W)* 4 HFEDG VFEDG PREQF 0 1 R/(W)* 2 3 0 0 1 R/(W)* 1 R/(W)* 1 R/(W)* 1 0 IHI IVI ―*2 ―*2 R R IVI信号レベル 0 IVI信号がLowレベル 1 IVI信号がHighレベル IHI信号レベル 0 IHI信号がLowレベル 1 IHI信号がHighレベル プリイコライゼーションフラグ 0 [クリア条件] PREQF=1の状態でPREQFをリードした後、 PREQFに0をライトしたとき 1 [セット条件] IHI信号の2fHモディファイの条件成立を検出 したとき VFBACKIエッジ 0 [クリア条件] VFEDG=1の状態でVFEDGをリードした後、VFEDGに0を ライトしたとき 1 [セット条件] VFBACKI端子の立ち上がりエッジを検出したとき HFBACKIエッジ 0 [クリア条件] HFEDG=1の状態でHFEDGをリードした後、HFEDGに0をライトしたとき 1 [セット条件] HFBACKI端子の立ち上がりエッジを検出したとき CSYNCIエッジ 0 [クリア条件] CEDG=1の状態でCEDGをリードした後、CEDGに0をライトしたとき 1 [セット条件] CSYNCI端子の立ち上がりエッジを検出したとき HSYNCIエッジ 0 [クリア条件] HEDG=1の状態でHEDGをリードした後、HEDGに0をライトしたとき 1 [セット条件] HSYNCI端子の立ち上がりエッジを検出したとき VSYNCIエッジ 0 [クリア条件] VEDG=1の状態でVEDGをリードした後、VEDGに0をライトしたとき 1 [セット条件] VSYNCI端子の立ち上がりエッジを検出したとき 【注】*1 *2 フラグをクリアするための0ライトのみ可能です。 端子の状態によって決まるため、初期値は不定です。 1059 付 録 C. I/O ポートのブロック図 C.1 ポート 1 ブロック図 モード2、3 EXPE モード1 リセット R Q D P1nPCR C RP1P ハードウェア スタンバイ モード1 WP1P リセット R D Q P1nDDR * C WP1D 内 部 デ | タ バ ス 内 部 ア ド レ ス バ ス 8ビットPWM PWM出力イネーブル リセット P1n R Q D P1nDR C WP1 RP1 WP1P :PCRライト WP1D :DDRライト WP1 :ポートライト RP1P :PCRリード RP1 :ポートリード n=0〜7 *:セット優先 図 C.1 1060 ポート 1 ブロック図 PWM出力 付 C.2 録 ポート 2 ブロック図 モード2、3 EXPE モード1 リセット R Q D P2nPCR C RP2P ハードウェア スタンバイ モード1 WP2P リセット R D Q P2nDDR * C WP2D 内 部 デ | タ バ ス 内 部 ア ド レ ス バ ス 8ビットPWM PWM出力イネーブル リセット P2n PWM出力 R Q D P2nDR C WP2 RP2 WP2P :PCRライト WP2D :DDRライト WP2 :ポートライト RP2P :PCRリード RP2 :ポートリード n=0〜3 *:セット優先 図 C.2 ポート 2 ブロック図(P20〜P23 端子) 1061 付 録 モード2、3 EXPE IOSE モード1 リセット R Q D P2nPCR C RP2P ハードウェア スタンバイ モード1 WP2P リセット R D Q P2nDDR * C WP2D 内 部 デ | タ バ ス 内 部 ア ド レ ス バ ス 8ビットPWM PWM出力イネーブル リセット P2n R Q D P2nDR C WP2 RP2 WP2P :PCRライト WP2D :DDRライト WP2 :ポートライト RP2P :PCRリード RP2 :ポートリード n=4〜6 *:セット優先 図 C.3 1062 ポート 2 ブロック図(P24〜P26 端子) PWM出力 付 録 モード2、3 EXPE IOSE モード1 リセット R Q D P27PCR C RP2P ハードウェア スタンバイ WP2P リセット モード1 R D Q P27DDR * C WP2D 内 部 デ | タ バ ス 内 部 ア ド レ ス バ ス 8ビットPWM PWM出力イネーブル リセット P27 PWM出力 R Q D P27DR C モード2, 3 WP2 タイマコネクション CBLANK CBLANK出力イネーブル RP2 WP2P :PCRライト WP2D :DDRライト WP2 :ポートライト RP2P :PCRリード RP2 :ポートリード *:セット優先 図 C.4 ポート 2 ブロック図(P27 端子) 1063 付 録 C.3 ポート 3 ブロック図 モード2、3 EXPE HI12E モード1 リセット R Q D P3nPCR C RP3P ハードウェア スタンバイ WP3P リセット CS IOR R D Q P3nDDR C 外部アドレス ライト WP3D リセット P3n CS IOW R Q D P3nDR C WP3 RP3 外部アドレスリード WP3P :PCRライト WP3D :DDRライト WP3 :ポートライト RP3P :PCRリード RP3 :ポートリード n=0〜7 図 C.5 1064 ポート 3 ブロック図 内 部 デ | タ バ ス ホ ス ト イ ン タ フ ェ | ス デ | タ バ ス 付 C.4 録 ポート 4 ブロック図 ハードウエアスタンバイ リセット R D Q P40DDR C WP4D 内 部 デ | タ バ ス SCI2 TxD2/IrTxD 送信イネーブル リセット P40 R Q D P40DR C WP4 RP4 8ビットタイマ0 カウンタクロック入力 WP4D :DDRライト WP4 :ポートライト RP4 :ポートリード 図 C.6 ポート 4 ブロック図(P40 端子) 1065 付 録 ハードウエアスタンバイ リセット R D Q P41DDR C WP4D 内 部 デ | タ バ ス 8ビットタイマ0 8ビットタイマ出力 出力イネーブル リセット P41 R Q D P41DR C WP4 RP4 SCI2 受信イネーブル RxD2/IrRxD WP4D :DDRライト WP4 :ポートライト RP4 :ポートリード 図 C.7 1066 ポート 4 ブロック図(P41 端子) 付 ハードウェアスタンバイ リセット R D Q P42DDR C WP4D 録 内 部 デ | タ バ ス SCI2 入力イネーブル クロック出力 出力イネーブル *1 リセット クロック入力 R Q D P42DR C P42 *2 WP4 IIC1 SDA1出力 送信イネーブル RP4 SDA1入力 WP4D :DDRライト WP4 :ポートライト RP4 :ポートリード 【注】*1 *2 図 C.8 8ビットタイマ0 リセット入力 出力イネーブル信号 オープンドレイン制御信号 ポート 4 ブロック図(P42 端子) 1067 付 録 ハードウエアスタンバイ リセット R D Q P43DDR C 内 部 デ | タ バ ス WP4D リセット R ホストインタフェース RESOBF2 (HIRQ11をリセット) Q D P43DR C P43 WP4 RP4 8ビットタイマ1 カウンタクロック入力 WP4D :DDRライト WP4 :ポートライト RP4 :ポートリード 図 C.9 1068 ポート 4 ブロック図(P43 端子) タイマコネクション HSYNCI入力 付 ハードウエアスタンバイ リセット R D Q P44DR C WP4D 録 内 部 デ | タ バ ス タイマコネクション HSYNCO出力 出力イネーブル リセット R Q D P44DR C P44 WP4 ホストインタフェース RESOBF1 (HIRQ1をリセット) 8ビットタイマ1 TMO1出力 出力イネーブル RP4 WP4D :DDRライト WP4 :ポートライト RP4 :ポートリード 図 C.10 ポート 4 ブロック図(P44 端子) 1069 付 録 ハードウエアスタンバイ リセット R D Q P45DDR C 内 部 デ | タ バ ス WP4D リセット R ホストインタフェース RESOBF1 (HIRQ12をリセット) Q D P45DR C P45 WP4 RP4 8ビットタイマ1 タイマリセット入力 WP4D :DDRライト WP4 :ポートライト RP4 :ポートリード 図 C.11 ポート 4 ブロック図(P45 端子) 1070 タイマコネクション CSYNCI入力 付 ハードウエアスタンバイ リセット R D Q P4nDDR C WP4D 録 内 部 デ | タ バ ス 14ビットPWM PWX0、PWX1出力 出力イネーブル リセット P4n R Q D P4nDR C WP4 RP4 WP4D :DDRライト WP4 :ポートライト RP4 :ポートリード n=6, 7 図 C.12 ポート 4 ブロック図(P46、P47 端子) 1071 付 録 C.5 ポート 5 ブロック図 ハードウエアスタンバイ リセット R D Q P50DDR C WP5D 内 部 デ | タ バ ス SCI0 シリアル送信データ 出力イネーブル リセット P50 R Q D P50DR C WP5 RP5 WP5D :DDRライト WP5 :ポートライト RP5 :ポートリード 図 C.13 ポート 5 ブロック図(P50 端子) 1072 付 ハードウエアスタンバイ リセット R D Q P51DDR C WP5D 録 内 部 デ | タ バ ス SCI0 入力イネーブル リセット R Q D P51DR C P51 WP5 RP5 WP5D :DDRライト WP5 :ポートライト RP5 :ポートリード シリアル受信 データ 図 C.14 ポート 5 ブロック図(P51 端子) 1073 付 録 ハードウエアスタンバイ リセット R D Q P52DDR C WP5D *1 リセット 内 部 デ | タ バ ス SCI0 入力イネーブル クロック出力 出力イネーブル クロック入力 R Q D P52DR C P52 *2 WP5 IIC0 SCL0出力 送信イネーブル RP5 SCL0入力 WP5D :DDRライト WP5 :ポートライト RP5 :ポートリード 【注】*1 *2 出力イネーブル信号 オープンドレイン制御信号 図 C.15 ポート 5 ブロック図(P52 端子) 1074 付 C.6 録 ポート 6 ブロック図 リセット R Q D KMPCR C RP6P ハードウェア スタンバイ WP6P リセット R D Q P6nDDR C 内 部 デ | タ バ ス WP6D リセット R Q D P6nDR C P6n WP6 RP6 16ビットFRT FTCI入力 FTIA入力 FTIB入力 FTID入力 タイマコネクション 8ビットタイマY、X HFBACKI入力、TMIX入力 VSYNCI入力、TMIY入力 VFBACKI入力 キーセンス割込み入力 KMIMR0、2、3、5 A/Dコンバータ アナログ入力 WP6P :PCRライト WP6D :DDRライト WP6 :ポートライト RP6P :PCRリード RP6 :ポートリード n=0、2、3、5 図 C.16 ポート 6 ブロック図(P60、P62、P63、P65 端子) 1075 付 録 リセット R Q D KMPCR C RP6P ハードウェア スタンバイ WP6P リセット R D Q P61DDR C WP6D 内 部 デ | タ バ ス 16ビットFRT FTOA出力 出力イネーブル リセット R Q D P61DR C P61 WP6 タイマコネクション VSYNCO出力 出力イネーブル RP6 キーセンス割込み入力 KMIMR1 A/Dコンバータ アナログ入力 WP6P :PCRライト WP6D :DDRライト WP6 :ポートライト RP6P :PCRリード RP6 :ポートリード 図 C.17 ポート 6 ブロック図(P61 端子) 1076 付 録 リセット R Q D KMPCR C RP6P ハードウェア スタンバイ WP6P リセット R D Q P64DDR C WP6D 内 部 デ | タ バ ス タイマコネクション CLAMPO出力 出力イネーブル リセット P64 R Q D P64DR C WP6 RP6 16ビットFRT FTIC入力 キーセンス割込み入力 KMIMR4 A/Dコンバータ アナログ入力 WP6P :PCRライト WP6D :DDRライト WP6 :ポートライト RP6P :PCRリード RP6 :ポートリード 図 C.18 ポート 6 ブロック図(P64 端子) 1077 付 録 リセット R Q D KMPCR C RP6P ハードウェア スタンバイ WP6P リセット R D Q P66DDR C WP6D 内 部 デ | タ バ ス 16ビットFRT FTOB出力 出力イネーブル リセット P66 R Q D P66DR C WP6 RP6 KMIMR6 他の キーセンス割込み入力 IRQ6入力 IRQ6イネーブル A/Dコンバータ アナログ入力 WP6P :PCRライト WP6D :DDRライト WP6 :ポートライト RP6P :PCRリード RP6 :ポートリード 図 C.19 ポート 6 ブロック図(P66 端子) 1078 付 録 リセット R Q D KMPCR C RP6P ハードウェア スタンバイ WP6P リセット R D Q P67DDR C WP6D 内 部 デ | タ バ ス 8ビットタイマX TMOX出力 出力イネーブル リセット P67 R Q D P67DR C WP6 RP6 KMIMR7 他の キーセンス割込み入力 IRQ7入力 IRQ7イネーブル A/Dコンバータ アナログ入力 WP6P :PCRライト WP6D :DDRライト WP6 :ポートライト RP6P :PCRリード RP6 :ポートリード 図 C.20 ポート 6 ブロック図(P67 端子) 1079 付 録 C.7 ポート 7 ブロック図 RP7 P7n 内 部 デ ー タ バ ス A/Dコンバータ アナログ入力 RP7 :ポートリード n=0〜5 図 C.21 ポート 7 ブロック図(P70〜P75 端子) RP7 P7n 内 部 デ ー タ バ ス A/Dコンバータ アナログ入力 D/Aコンバータ 出力イネーブル アナログ出力 RP7 :ポートリード n=6、7 図 C.22 ポート 7 ブロック図(P76、P77 端子) 1080 付 C.8 録 ポート 8 ブロック図 HI12E EXPE モード2、3 ハードウエアスタンバイ リセット R D Q P80DDR C 内 部 デ | タ バ ス WP8D リセット R Q D P80DR C P80 WP8 RP8 HIF HA0入力 WP8D :DDRライト WP8 :ポートライト RP8 :ポートリード 図 C.23 ポート 8 ブロック図(P80 端子) 1081 付 録 ハードウエアスタンバイ リセット モード2, 3 EXPE CS2E HI12E R D Q P81DDR C WP8D 内 部 デ | タ バ ス HIF GA20出力 出力イネーブル リセット P81 R Q D P81DR C WP8 RP8 HIF CS2入力 WP8D :DDRライト WP8 :ポートライト RP8 :ポートリード 図 C.24 ポート 8 ブロック図(P81 端子) 1082 付 ハードウエアスタンバイ リセット R D Q P8nDDR C 録 内 部 デ | タ バ ス WP8D リセット R Q D P8nDR C P8n WP8 RP8 HIF HIFSD入力 WP8D :DDRライト WP8 :ポートライト RP8 :ポートリード n=2、3 モード2、3 EXPE (P82のみ) HI12E 図 C.25 ポート 8 ブロック図(P82、P83 端子) 1083 付 録 ハードウエアスタンバイ リセット R D Q P84DDR C WP8D 内 部 デ | タ バ ス SCI1 TxD1 送信イネーブル リセット P84 R Q D P84DR C WP8 RP8 IRQ3入力 IRQ3イネーブル WP8D :DDRライト WP8 :ポートライト RP8 :ポートリード 図 C.26 ポート 8 ブロック図(P84 端子) 1084 付 ハードウエアスタンバイ リセット R D Q P85DDR C 録 内 部 デ | タ バ ス SCI1 WP8D 入力イネーブル リセット R Q D P85DR C P85 WP8 RP8 シリアル受信データ IRQ4入力 IRQ4イネーブル WP8D :DDRライト WP8 :ポートライト RP8 :ポートリード 図 C.27 ポート 8 ブロック図(P85 端子) 1085 付 録 ハードウエアスタンバイ リセット R D Q P86DDR C WP8D 内 部 デ | タ バ ス SCI1 入力イネーブル クロック出力 出力イネーブル *1 リセット クロック入力 R Q D P86DR C P86 *2 WP8 IIC1 SCL1出力 送信イネーブル RP8 SCL1入力 WP8D :DDRライト WP8 :ポートライト RP8 :ポートリード 【注】*1 *2 出力イネーブル信号 オープンドレイン制御信号 図 C.28 ポート 8 ブロック図(P86 端子) 1086 IRQ5入力 IRQ5イネーブル 付 C.9 録 ポート 9 ブロック図 ハードウエアスタンバイ EXPE モード2、3 GA20 HI12E CS2E EXPE ABW リセット R D Q P90DDR C 内 部 デ | タ バ ス WP9D バスコントローラ LWR出力 リセット P90 R Q D P90DR C WP9 RP9 HIF ECS2入力 A/D変換器 外部トリガ入力 WP9D :DDRライト WP9 :ポートライト RP9 :ポートリード IRQ2入力 IRQ2イネーブル 図 C.29 ポート 9 ブロック図(P90 端子) 1087 付 録 ハードウエアスタンバイ リセット R D Q P9nDDR C 内 部 デ | タ バ ス WP9D リセット R Q D P9nDR C P9n WP9 RP9 WP9D :DDRライト WP9 :ポートライト RP9 :ポートリード n=1、2 図 C.30 ポート 9 ブロック図(P91、P92 端子) 1088 IRQ1入力 IRQ0入力 IRQ1イネーブル IRQ0イネーブル 付 ハードウエアスタンバイ モード2、3 EXPE HI12E EXPE リセット R D Q P9nDDR C WP9D リセット P9n 録 内 部 デ | タ バ ス バスコントローラ RD出力 HWR出力 AS/IOS出力 R Q D P9nDR C WP9 RP9 HIF WP9D :DDRライト WP9 :ポートライト RP9 :ポートリード n=3〜5 モード2、3 EXPE HI12E IOR入力 IOW入力 CS1入力 図 C.31 ポート 9 ブロック図(P93〜P95 端子) 1089 付 録 リセット モード1 内 部 デ ー タ バ ス ハードウェア スタンバイ S R D Q P96DDR C サブクロック入力 イネーブル P96 WP9D φ出力 RP9 サブクロック入力 WP9D :DDRライト RP9 :ポートリード 図 C.32 ポート 9 ブロック図(P96 端子) 1090 付 リセット ハードウェアスタンバイ R D Q P97DDR C WP9D 録 内 部 デ | タ バ ス バスコントローラ 入力イネーブル EXPE *1 リセット R Q D P97DR C P97 *2 WP9 WAIT入力 IIC0 SDA0出力 送信イネーブル RP9 SDA0入力 WP9D :DDRライト WP9 :ポートライト RP9 :ポートリード 【注】*1 *2 出力イネーブル信号 オープンドレイン制御信号 図 C.33 ポート 9 ブロック図(P97 端子) 1091 付 録 C.10 ポート A ブロック図 ハードウェア スタンバイ リセット モード2 EXPE IOSE R D Q PAnDDR C 内 部 デ | タ バ ス 内 部 ア ド レ ス バ ス WPAD PAn リセット R Q D PAnODR C WPA RPAO RPA キーセンス 割込み入力 KMIMR n+8 A/Dコンバータ アナログ入力 WPAD :DDRライト WPA :ODRライト RPAO :ODRリード RPA :ポートリード n=0、1 図 C.34 ポート A ブロック図(PA0、PA1 端子) 1092 付 ハードウェア スタンバイ リセット モード2 EXPE IOSE R D Q PAnDDR C WPAD *1 内 部 デ | タ バ ス 録 内 部 ア ド レ ス バ ス キーボードバッファ コントローラ 出力イネーブル 出力 PAn *2 リセット R Q D PAnODR C RPAO WPA RPA 入力 キーセンス 割込み入力 KMIMR n+8 A/Dコンバータ アナログ入力 WPAD :DDRライト WPA :ODRライト RPAO :ODRリード RPA :ポートリード n=2、3 【注】*1 *2 出力イネーブル信号 オープンドレイン制御信号 図 C.35 ポート A ブロック図(PA2、PA3 端子) 1093 付 録 ハードウェア スタンバイ リセット IICS モード2 EXPE IOSE R D Q PAnDDR C WPAD *1 内 部 デ | タ バ ス 内 部 ア ド レ ス バ ス キーボードバッファ コントローラ 出力イネーブル 出力 PAn *2 リセット R Q D PAnODR C RPAO WPA RPA 入力 キーセンス 割込み入力 KMIMR n+8 A/Dコンバータ アナログ入力 WPAD :DDRライト WPA :ODRライト RPAO :ODRリード RPA :ポートリード n=4〜7 【注】*1 *2 出力イネーブル信号 オープンドレイン制御信号 図 C.36 ポート A ブロック図(PA4〜PA7 端子) 1094 付 C.11 録 ポート B ブロック図 リセット ハードウエア スタンバイ R D Q PBnDDR 外部アドレス C ライト WPBD EXPE ABW (D0、D1) リセット 内 部 デ | タ バ ス ホストインタフェース PBn R Q D PBnODR C RPBO RESOBF3、4 (HIRQ3、HIRQ4 をリセット) WPB 外部アドレス リード (D0、D1) RPB WPBD :DDRライト WPB :ODRライト RPBO :ODRリード RPB :ポートリード n=0、1 図 C.37 ポート B ブロック図(PB0、PB1 端子) 1095 付 録 モード2、3 EXPE CS入力イネーブル HI12E ハードウエア スタンバイ リセット R D Q PBnDDR 外部アドレス C ライト WPBD EXPE ABW (D2、D3) リセット PBn 内 部 デ | タ バ ス R Q D PBnODR C RPBO WPB 外部アドレス リード (D2、D3) RPB HIF WPBD :DDRライト WPB :ODRライト RPBO :ODRリード RPB :ポートリード n=2、3 図 C.38 ポート B ブロック図(PB2、PB3 端子) 1096 CS3入力 CS4入力 付 リセット ハードウエア スタンバイ R D Q PBnDDR 外部アドレス C ライト WPBD EXPE ABW (D7〜D4) 録 内 部 デ | タ バ ス リセット PBn R Q D PBnODR C RPBO WPB 外部アドレス リード (D7〜D4) RPB WPBD :DDRライト WPB :ODRライト RPBO :ODRリード RPB :ポートリード n=4〜7 図 C.39 ポート B ブロック図(PB4〜PB7 端子) 1097 付 録 D. 端子状態 D.1 各処理状態におけるポートの状態 表 D.1 ポート名 端子名 MCU 動作モード 各処理状態における I/O ポートの状態 リセット ポート 1 1 L A7〜A0 2、3 (EXPE=1) T ハードウェ ソフトウェ アスタンバ アスタンバ イモード イモード T keep* ウォッチ モード スリープ モード サブスリープ モード keep* keep* keep* 2、3 (EXPE=0) ポート 2 1 L A15〜A8 2、3 (EXPE=1) T T keep* keep* keep* keep* ポート 3 D15〜D8 2、3 (EXPE=1) ポート 4 2、3 (EXPE=0) 1 プログラム 実行状態 A7〜A0 A7〜A0 アドレス出力/ 入力ポート アドレス出力/ 入力ポート 入出力ポート 入出力ポート A15〜A8 A15〜A8 アドレス出力/ 入力ポート アドレス出力/ 入力ポート 入出力ポート 入出力ポート T T T T D15〜D8 D15〜D8 keep keep keep keep 入出力ポート 入出力ポート keep keep keep keep 入出力ポート 入出力ポート T keep keep keep keep 入出力ポート 入出力ポート T T keep keep keep keep 入出力ポート 入出力ポート T T T T T T 入力ポート 入力ポート T T keep keep keep keep 入出力ポート 入出力ポート T T T/keep T/keep T/keep T/keep 2、3 (EXPE=0) 1 サブアクティブ モード T T T T T 2、3 (EXPE=1) ポート 5 2、3 (EXPE=0) 1 2、3 (EXPE=1) ポート 6 2、3 (EXPE=0) 1 2、3 (EXPE=1) ポート 7 2、3 (EXPE=0) 1 2、3 (EXPE=1) ポート 8 2、3 (EXPE=0) 1 2、3 (EXPE=1) ポート 97 2、3 (EXPE=0) 1 WAIT 2、3 (EXPE=1) keep 2、3 (EXPE=0) ポート 96 φ EXCL 1 クロック出力 T 2、3 (EXPE=1) T 2、3 (EXPE=0) 1 ポート 95〜93 H AS、HWR、RD 2、3 (EXPE=1) T 2、3 (EXPE=0) 1 ポート 92〜91 T T T T T keep [DDR=1] H EXCL 入力 [DDR=0] T WAIT/ WAIT/ 入出力ポート 入出力ポート keep keep 入出力ポート 入出力ポート [DDR=1] EXCL 入力 EXCL 入力 クロック出力/ クロック出力 [DDR=0] T EXCL 入力/ 入力ポート H H H H keep keep keep keep 入出力ポート 入出力ポート keep keep keep keep 入出力ポート 入出力ポート H/keep H/keep H/keep H/keep AS、HWR、RD AS、HWR、RD 2、3 (EXPE=1) ポート 90 2、3 (EXPE=0) 1 LWR 2、3 (EXPE=1) ポート A 2、3 (EXPE=0) 1 A23〜A16 LWR/ 入出力ポート keep keep keep keep 入出力ポート 入出力ポート keep* keep* keep* keep* 入出力ポート 入出力ポート 2、3 (EXPE=1) A23〜A16/ 入出力ポート A23〜A16/ 入出力ポート 2、3 (EXPE=0) 入出力ポート 入出力ポート ポート B 1 D7〜D0 2、3 (EXPE=1) 2、3 (EXPE=0) 1098 LWR/ 入出力ポート T T T T T/keep keep T/keep keep T/keep keep T/keep keep D7〜D0/ D7〜D0/ 入出力ポート 入出力ポート 入出力ポート 入出力ポート 付 録 【記号説明】 H :High レベル L :Low レベル T :ハイインピーダンス keep :入力ポートはハイインピーダンス(DDR=0、PCR=1 の場合、入力プルアップ MOS は、 ON 状態を保持) 出力ポートは保持 なお、端子に より、内蔵周辺モジュール が初期化され、DD R、DR で決 まる入出力ポー トとなる場合があります。 DDR 【注】 :データディレクションレジスタ * アドレス出力の場合、最後にアクセスしたアドレスを保持。 1099 付 録 E. ハードウェアスタンバイモード遷移/復帰時の タイミングについて E.1 ハードウェアスタンバイモードの遷移タイミング (1)SYSCR の RAME ビットを 1 にセットした状態で RAM の内容を保持する場合 図 E .1 に示すように S TBY 信号の立ち下がりに対し、10 システムクロック前に R ES 信 号を Low としてください。 また、R ES 信号の立ち上がりは、S TBY 信号の立ち下がりに対し、0ns 以上としてくだ さい。 STBY t1≧10tcyc t2≧0ns RES 図 E.1 ハードウェアスタンバイモードの遷移タイミング (2)SYSCR の RAME ビットを 0 にクリアした状態または RAM の内容を保持しない場合 (1)のように RES 信号を Low にする必要はありません。 E.2 ハードウェアスタンバイモードからの復帰タイミング STBY 信号の立ち上がりに対し、100ns 以上前に RES 信号を Low にしてください。 STBY t≧100ns tOSC1 RES 図 E.2 ハードウェアスタンバイモードからの復帰タイミング 1100 付 録 F. ROM 発注手順 F.1 ROM 書き換え品開発の流れ(発注手順) マイコン応用システムプログラムの開発終了後、R OM データ(2 組以上)、注文仕様 書、オプションリストおよびマーク仕様を一緒に提出していただきます。これにより、弊 社では図 F.1 の流れ図に沿って ROM 書き換え品の開発を行います。 表 F.1 に R OM 発注時に必要な提出物を示します。なお、詳細については、弊社担当営 業へお問い合わせください。 御 社 日 SUNTREE JAPAN SIZE PGH12.5Y MH2TC101AG-15 RO M データ 立 各種チェック 製品型名決定 開発指示 注文仕様書 オプションリスト マーク仕様 計 算 機( C A D) 処 理 JAPAN SIZE SUNTREE PGH12.5Y MH2TC101AG-15 受領・確認後弊社営業担当へ 1部 ご 返 送 願 い ま す ( V e r i f y用 E P R O M) マスク作成 計算機処理 結果 前工程・後工程 W S 量 産 納品仕様書 受領・確認後弊社営業担当へ 1部 ご 返 送 願 い ま す 検査・入庫 図 F.1 ROM 書き換え品開発の流れ 表 F.1 ROM 発注時に必要な提出物 発注媒体 EPROM、または F-ZTAT™ 提出物 ROM データ 注文仕様書 オプションリスト* 1 マーク仕様例* 2 【注】 *1 製品シリーズにより必要ないものがあります。また、内容も異なります。 *2 特別仕様の場合には、提出してください。 1101 付 録 F.2 ROM 発注時の注意事項 提出 してい ただく R OM データは 、次の 注意事項 にした がって、 EP RO M、また は F ZTAT ™マイコンで提出してください。なお、EP RO M、または F -ZTAT™マイコン以外の 媒体(フロッピーディスク等)では対応できませんのでご注意ください。 (1)EP RO M に R OM データを書き込む際は、事前にデータを充分消去し、中途半端なレ ベルが出力されないことを確認してから使用してください。 (2)発注用 EP RO M において、R OM データの未使用(NOT US ED)領域またはリザーブ 領域には、必ず'FF'を書き込んでください。 (3)提出していただく EPROM には遮光ラベルを貼り、御社の品番等を記入してください。 (4)EP RO M に書き込みを行った後は、静電気による素子の破壊、紫外線や放射線による 書き込みデータの損失を招かないようにするとともに、運搬の際は導伝性のシートに 梱包するなど取り扱いに充分注意してください(アルミ箔、発泡スチロール等は不可)。 なお、これらによるデータの読み取りエラーに備え、同一内容の EP RO M を 2 組以上 提出してください。 1102 付 録 G. 型名一覧 表 G.1 H8S/2148 シリーズ、H8S/2144 シリーズ型名一覧(暫定) 製品分類 製品型名 マーク型名 パッケージ 備考 (日立パッケージコード) H8S/2148 H8S/2148 シリーズ マスク 標準品 ROM版 (5V 版,4V 版,3V 版) I2C バスインタ HD6432148S HD6432148S(V)(***)FA 100 ピン QFP(FP-100B) HD6432148S(V)(***)TE 100 ピン TQFP(TFP-100B) HD6432148SW HD6432148S(V)W(***) 100 ピン QFP(FP-100B) フェース内蔵版 FA (5V 版,4V 版,3V 版) HD6432148S(V)W(***) 100 ピン TQFP(TFP-100B) TE F-ZTAT 版 標準品 HD64F2148 (5V/4V 版) 低電圧版 HD64F2148V (3V 版) H8S/2147 マスク 標準品 ROM版 (5V 版,4V 版,3V 版) 2 I C バスインタ HD6432147S HD64F2148FA20 100 ピン QFP(FP-100B) HD64F2148TE20 100 ピン TQFP(TFP-100B) HD64F2148VFA10 100 ピン QFP(FP-100B) HD64F2148VTE10 100 ピン TQFP(TFP-100B) HD6432147S(V)(***)FA 100 ピン QFP(FP-100B) HD6432147S(V)(***)TE 100 ピン TQFP(TFP-100B) HD6432147SW フェース内蔵版 HD6432147S(V)W(***) 100 ピン QFP(FP-100B) FA HD6432147S(V)W(***) 100 ピン TQFP(TFP-100B) (5V 版,4V 版,3V 版) TE H8S/2148 H8S/2148A シリーズ F-ZTAT 版 標準品 A マスク品 (5V/4V 版) A マスク品 低電圧版 HD64F2148A HD64F2148AV (3V 版) H8S/2147A F-ZTAT 版 標準品 A マスク品 (5V/4V 版) 低電圧版 HD64F2147A HD64F2147AV (3V 版) H8S/2147N H8S/2147N F-ZTAT 版 標準品 HD64F2147N (5V 版) 低電圧版 (3V 版) HD64F2147NV HD64F2148AFA20 100 ピン QFP(FP-100B) HD64F2148ATE20 100 ピン TQFP(TFP-100B) HD64F2148AVFA10 100 ピン QFP(FP-100B) HD64F2148AVTE10 100 ピン TQFP(TFP-100B) HD64F2147AFA20 100 ピン QFP(FP-100B) HD64F2147ATE20 100 ピン TQFP(TFP-100B) HD64F2147AVFA10 100 ピン QFP(FP-100B) HD64F2147AVTE10 100 ピン TQFP(TFP-100B) HD64F2147NFA20 100 ピン QFP(FP-100B) HD64F2147NTE20 100 ピン TQFP(TFP-100B) HD64F2147NVFA10 100 ピン QFP(FP-100B) HD64F2147NVTE10 100 ピン TQFP(TFP-100B) 1103 付 録 製品分類 製品型名 マーク型名 パッケージ 備考 (日立パッケージコード) H8S/2144 H8S/2144 シリーズ マスク 標準品 ROM版 (5V 版,4V 版,3V 版) F-ZTAT 版 標準品 HD6432144S HD6432144S(V)(***)TE 100 ピン TQFP(TFP-100B) HD64F2144 (5V/4V 版) 低電圧版 HD64F2144V (3V 版) H8S/2143 H8S/2142 マスク 標準品 ROM版 (5V 版,4V 版,3V 版) マスク 標準品 ROM版 (5V 版,4V 版,3V 版) F-ZTAT 版 標準品 HD6432143S HD6432142 HD64F2142R HD64F2142RV (3V 版) H8S/2144 H8S/2144A シリーズ A マスク品 F-ZTAT 版 標準品 A マスク品 (5V/4V 版) 低電圧版 HD64F2144A HD64F2144AV (3V 版) 【注】 HD64F2144FA20 100 ピン QFP(FP-100B) HD64F2144TE20 100 ピン TQFP(TFP-100B) HD64F2144VFA10 100 ピン QFP(FP-100B) HD64F2144VTE10 100 ピン TQFP(TFP-100B) HD6432143S(V)(***)FA 100 ピン QFP(FP-100B) HD6432143S(V)(***)TE 100 ピン TQFP(TFP-100B) (5V/4V 版) 低電圧版 HD6432144S(V)(***)FA 100 ピン QFP(FP-100B) HD6432142(***)FA 100 ピン QFP(FP-100B) HD6432142(***)TE 100 ピン TQFP(TFP-100B) HD64F2142RFA20 100 ピン QFP(FP-100B) HD64F2142RTE20 100 ピン TQFP(TFP-100B) HD64F2142RVFA10 100 ピン QFP(FP-100B) HD64F2142RVTE10 100 ピン TQFP(TFP-100B) HD64F2144AFA20 100 ピン QFP(FP-100B) HD64F2144ATE20 100 ピン TQFP(TFP-100B) HD64F2144AVFA10 100 ピン QFP(FP-100B) HD64F2144AVTE10 100 ピン TQFP(TFP-100B) (***)は ROM コードです。 H8S/2148 の F-ZTAT 版には I 2C バスインタフェースを標準で内蔵しています。 F-ZTAT 版の 5V/4V 版は 5V 版と 4V 版の動作範囲をサポートしています。 F-ZTAT 版の低電圧版の動作範囲は別途定めます。 上記製品は開発中、計画中の製品も含まれます。各製品の状況につきましては当社営業担 当者に確認してください。 1104 付 外形寸法図 H8S /2148 シリーズ、H8S /2144 シリーズ、H8S /2147N の外形寸法図を図 H.1 、図 H.2 に 示します。 Unit: mm 16.0 ± 0.3 14 75 51 76 50 100 26 0.10 *Dimension including the plating thickness Base material dimension 図 H.1 *0.17 ± 0.05 0.15 ± 0.04 0.08 M 1.0 2.70 25 0.12 +0.13 –0.12 1 *0.22 ± 0.05 0.20 ± 0.04 3.05 Max 0.5 16.0 ± 0.3 H. 録 1.0 0° – 8° 0.5 ± 0.2 Hitachi Code JEDEC EIAJ Weight (reference value) FP-100B — Conforms 1.2 g FP-100B の外形寸法図 1105 付 録 Unit: mm 16.0 ± 0.2 14 75 51 50 100 26 0.10 *Dimension including the plating thickness Base material dimension 図 H.2 1106 TFP-100B の外形寸法図 1.00 1.0 *0.17 ± 0.05 0.15 ± 0.04 25 0.08 M 0.10 ± 0.10 1 *0.22 ± 0.05 0.20 ± 0.04 1.20 Max 0.5 16.0 ± 0.2 76 1.0 0° – 8° 0.5 ± 0.1 Hitachi Code JEDEC EIAJ Weight (reference value) TFP-100B — Conforms 0.5 g H8S/2148シリーズ、H8S/2144シリーズ、H8S/2148F-ZTATTM、 H8S/2147N F-ZTATTM、H8S/2144F-ZTATTM、H8S/2142F-ZTATTM ハードウェアマニュアル 発行年月 1997年 7 月 第1版 2001年11月 第4版 発 行 株式会社 日立製作所 半導体グループ ビジネス企画本部 編 集 株式会社 日立小平セミコン 技術ドキュメントグループ ©株式会社 日立製作所 1997