(57)【特許請求の範囲】
【請求項１】
第１周波数の発振信号を出力する第１発振回路及び前記第１周波数より低い第２周波数の発振信号を出力する第２発振回路を用途に応じて切り換えて使用し、前記第１又は第２周波数の発振信号に基づいて複数のシステムクロックを順次繰り返し発生し、前記複数のシステムクロックの１周期をメモリに記憶されたプログラム命令を実行する為の１マシンサイクルとするマイクロコンピュータにおいて、
前記第１周波数の発振信号又は前記第２周波数の発振信号の何れか一方の選択入力に基づいて、前記複数のシステムクロックと、前記第１の発振回路又は前記第２の発振回路の何れか一方を選択する為の選択信号と、を出力する切換制御回路と、
前記第１発振回路を使用した場合の、１マシンサイクル当たりの前記メモリのアクセス時間に設定される前記所定幅のパルスを出力するゲートと、
前記ゲートの出力、又は、前記第２発振回路を使用した場合の、１マシンサイクル当たりの前記メモリのアクセス時間に設定される前記所定幅のパルスの何れか一方を前記選択信号に基づいて選択して、前記選択した一方の期間だけ前記メモリを読み出し可能状態とする切換回路と、を有し、
前記第１発振回路を使用した場合の１マシンサイクル当たりの前記メモリのアクセス時間の割合に比べて、前記第２発振回路を使用した時の１マシンサイクル当たりの前記メモリのアクセス時間の割合を少なくすることを特徴とするメモリのアクセス時間の制御装置。
【請求項２】
前記メモリは、データを電気的消去でき、データを書き換えできる不揮発性メモリであることを特徴とする請求項１記載のメモリのアクセス時間の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、高速動作用発振回路又は低速動作用発振回路を用途に応じて切り換えて使用する場合、メモリのアクセス時間を調整できる、マイクロコンピュータに好適な、メモリのアクセス時間の制御装置に関する。
【０００２】
【従来の技術】
一般に、１チップマイクロコンピュータは、高速動作用発振回路（ＲＣ発振回路、セラミック発振回路等）及び低速動作用発振回路（水晶発振回路等）を内蔵し、両発振回路は用途に応じて切り換えて使用される。高速動作用発振回路は通常動作処理に使用され、低速動作用発振回路は計時動作処理に使用され、消費電流の低減が図られる。
【０００３】
さて、通常動作処理、計時動作処理の何れを行う場合であっても、ＲＯＭからプログラム命令を読み出し、当該プログラム命令を解読する必要がある。ところで、前記ＲＯＭからプログラム命令を読み出す為の前記ＲＯＭのアクセス時間の割合は、プログラム命令を実行する為の１マシンサイクルに対して、高速動作用発振回路、低速動作用発振回路の何れを使用する場合でも一定であった。例えば、高速動作用発振回路を使用する場合、前記ＲＯＭの最低限必要なアクセス時間は１マシンサイクルの１／２程度であり、従って、前記ＲＯＭの実際のアクセス時間は余裕を持って１マシンサイクルの２／３程度の割合に設定される。よって、低速動作用発振回路を使用する場合も、高速動作用発振回路の使用に準じて、前記ＲＯＭの実際のアクセス時間は１マシンサイクルの２／３程度に設定されていた。
【０００４】
【発明が解決しようとする課題】
しかしながら、高速動作用発振回路、低速動作用発振回路の何れを使用する場合であっても、前記ＲＯＭのアクセス時間の割合は１マシンサイクルに対して同じである為、以下の問題を生じる。
つまり、高速動作用発振回路を使用している時は、１マシンサイクルが比較的短い（例えばｎｓｅｃ単位）為、前記ＲＯＭのアクセス時間は短くて済む。一方、低速動作用発振回路を使用している時は、１マシンサイクルが比較的長い（例えばμｓｅｃ単位）為、前記ＲＯＭのアクセス時間は、高速動作用発振回路を使用している時のマシンサイクルの数百〜数千倍と非常に長くなってしまい、消費電流を無視できなくなってしまう。特に、この問題は、データを電気的に消去でき且つデータを書き換えできる不揮発性メモリ（ＥＥＰＲＯＭ）を使用した場合、当該不揮発性メモリの構造に起因して顕著に現れる。
【０００５】
そこで、本発明は、高速動作用発振回路、低速動作用発振回路、データを電気的消去できる不揮発性メモリを内蔵した１チップマイクロコンピュータにおいて、不揮発性メモリのアクセス時間を制御して消費電流を低減させる装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
本発明は、前記問題点を解決する為に成されたものであり、第１周波数の発振信号を出力する第１発振回路及び前記第１周波数より低い第２周波数の発振信号を出力する第２発振回路を用途に応じて切り換えて使用し、前記第１又は第２周波数の発振信号に基づいて複数のシステムクロックを順次繰り返し発生し、前記複数のシステムクロックの１周期をメモリに記憶されたプログラム命令を実行する為の１マシンサイクルとするマイクロコンピュータにおいて、前記第１周波数の発振信号又は前記第２周波数の発振信号の何れか一方の選択入力に基づいて、前記複数のシステムクロックと、前記第１の発振回路又は前記第２の発振回路の何れか一方を選択する為の選択信号と、を出力する切換制御回路と、前記第１発振回路を使用した場合の、１マシンサイクル当たりの前記メモリのアクセス時間に設定される前記所定幅のパルスを出力するゲートと、前記ゲートの出力、又は、前記第２発振回路を使用した場合の、１マシンサイクル当たりの前記メモリのアクセス時間に設定される前記所定幅のパルスの何れか一方を前記選択信号に基づいて選択して、前記選択した一方の期間だけ前記メモリを読み出し可能状態とする切換回路と、を有し、前記第１発振回路を使用した場合の１マシンサイクル当たりの前記メモリのアクセス時間の割合に比べて、前記第２発振回路を使用した時の１マシンサイクル当たりの前記メモリのアクセス時間の割合を少なくすることを特徴とする。
【０００７】
また、前記メモリは、データを電気的消去でき、データを書き換えできる不揮発性メモリであることを特徴とする。
【０００８】
【発明の実施の形態】
本発明の詳細を図面に従って具体的に説明する。
図１は本発明のメモリのアクセス時間の制御装置を示す回路ブロック図である。
図１において、（１）はセラミック発振回路（請求項１に言う第１発振回路）であり、セラミック振動子（１ａ）の発振周波数の発振信号ＯＳＣ１を出力するものである。セラミック発振回路（１）の発振信号ＯＳＣ１は、通常動作即ち高速動作処理に使用される。（２）は水晶発振回路（請求項１に言う第２発振回路）であり、発振周波数がセラミック振動子（１ａ）より低い水晶振動子（２ａ）が接続され、水晶振動子（２ａ）の発振周波数に基づき発振信号ＯＳＣ２を出力するものである。水晶発振回路（２）の発振信号ＯＳＣ２は、計時動作等の低速動作処理に使用される。（３）はデータを電気的消去でき且つデータを書き換えできるＥＥＰＲＯＭ（不揮発性メモリ）であり、１チップマイクロコンピュータを動作制御する為のプログラム命令が予め記憶されている。（４）はプログラムカウンタＰＣであり、ＥＥＰＲＯＭ（３）をアドレス指定し、当該アドレスからプログラム命令を読み出させるものである。（５）はインストラクションレジスタＩＲであり、ＥＥＰＲＯＭ（３）からの読み出しデータを保持するものである。（６）はインストラクションデコーダＩＤＥＣであり、インストラクションレジスタ（５）の保持データを解読するものである。１チップマイクロコンピュータはインストラクションデコーダ（６）の解読出力に基づき動作制御される。
【０００９】
（７）は切換制御回路であり、プログラム命令の解読結果に基づいて動作するものである。詳しくは、切換制御回路（７）は、発振信号ＯＳＣ１、ＯＳＣ２の何れか一方の選択入力に基づいて１チップマイクロコンピュータの動作制御の為のシステムクロックＳ１〜Ｓ６を出力し、且つ、セラミック発振回路（１）又は水晶発振回路（２）の何れか一方を選択する為の選択信号ＳＥＬＥＣＴを出力する。システムクロックＳ１〜Ｓ６は、図３に示す様に、所定幅のパルスが順次繰り返されるものである。尚、システムクロックＳ１の立ち上がりからシステムクロックＳ６の立ち下がりまでの期間が１マシンサイクルである。
【００１０】
ＡＮＤゲート（８）（９）及びＯＲゲート（１０）は切換回路を構成し、ＡＮＤゲート（８）の一方の入力端子にはシステムクロックＳ１〜Ｓ４がＯＲゲート（１１）を介して印加され、他方の入力端子には選択信号ＳＥＬＥＣＴが印加される。また、ＡＮＤゲート（９）の一方の入力端子にはシステムクロックＳ１が印加され、他方の入力端子には選択信号ＳＥＬＥＣＴが反転印加される。即ち、選択信号ＳＥＬＥＣＴが論理値「１」の時はＡＮＤゲート（８）が開状態となり、ＥＥＰＲＯＭ（３）はシステムクロックＳ１〜Ｓ４の発生期間だけ読み出し可能状態となる。一方、選択信号ＳＥＬＥＣＴが論理値「０」の時はＡＮＤゲート（９）が開状態となり、ＥＥＰＲＯＭ（３）はシステムクロックＳ１の発生期間だけ読み出し可能状態となる。
【００１１】
以下、図１の動作を図２のフローチャートを用いて説明する。
先ず、プログラム命令の解読結果に従って、セラミック発振回路（１）が選択されると、発振信号ＯＳＣ１に基づいてシステムクロックＳ１〜Ｓ６が発生し、同時に、選択信号ＳＥＬＥＣＴが論理値「１」となる。よって、ＥＥＰＲＯＭ（３）はシステムクロックＳ１〜Ｓ４の発生期間だけ読み出し可能状態となり、プログラムカウンタ（４）で指定されたアドレスからプログラム命令が読み出され、インストラクションデコーダ（６）で当該プログラム命令が解読され、高速動作処理が実行される。尚、ＥＥＰＲＯＭ（３）のアクセス期間Ｓ１〜Ｓ４は、図４に示す様に、１マシンサイクルＳ１〜Ｓ６（ｎｓｅｃ単位）の２／３に相当し、ＥＥＰＲＯＭ（３）からプログラム命令を確実に読み出すのに十分な時間である（ステップ▲１▼）。
【００１２】
その後、プログラム命令の解読結果に従って、セラミック発振回路（１）が引き続き選択されている場合は、上記の高速動作処理を繰り返す（ステップ▲２▼ＮＯ）。反対に、水晶発振回路（２）が選択されると、発振信号ＯＳＣ１より発振周波数が低い発振信号ＯＳＣ２に基づいてシステムクロックＳ１〜Ｓ６が発生し、同時に、選択信号ＳＥＬＥＣＴが論理値「０」に変化する。よって、ＥＥＰＲＯＭ（３）はシステムクロックＳ１の発生期間だけ読み出し可能状態となり、プログラムカウンタ（４）で指定されたアドレスからプログラム命令が読み出され、インストラクションデコーダ（６）で当該プログラム命令が解読され、低速動作処理が実行される。尚、水晶発振回路（２）が選択された時のシステムクロックＳ１の発生期間は、図５に示す様に１マシンサイクルの１／６に相当するもののμｓｅｃ単位であり、セラミック発振回路（１）が選択された時のシステムクロックＳ１〜Ｓ４の発生期間に比べて非常に長い為、ＥＥＰＲＯＭ（３）からプログラム命令を確実に読み出すのに十分な時間である（ステップ▲３▼）。
【００１３】
その後、ステップ▲２▼の判定動作が繰り返され、用途に応じて高速動作処理又は低速動作処理が実行される。
以上より、高速動作処理用のセラミック発振回路（１）が選択されている場合は、ＥＥＰＲＯＭ（３）をアドレス指定するアクセス時間は１マシンサイクルの２／３に設定されるが、低速動作処理用の水晶発振回路（２）が選択されている場合は、ＥＥＰＲＯＭ（３）のアクセス時間は１マシンサイクルの１／６に設定される。即ち、低速動作処理時のＥＥＰＲＯＭ（３）のアクセス時間の割合を、高速動作処理時のＥＥＰＲＯＭ（３）のアクセス時間の割合に比べて低くなる様に制御できる為、消費電流を低減できることになる。
【００１４】
【発明の効果】
本発明によれば、低速動作処理時の不揮発性メモリ（ＥＥＰＲＯＭ）のアクセス時間の割合を、高速動作処理時の不揮発性メモリのアクセス時間の割合に比べて低くなる様に制御できる為、消費電流を低減できる利点が得られる。
【図面の簡単な説明】
【図１】本発明のメモリのアクセス時間の制御装置を示す回路ブロック図である。
【図２】図１の動作を示すフローチャートである。
【図３】システムクロックを示すタイムチャートである。
【図４】高速動作処理時の不揮発性メモリのアクセス時間の割合を示す図である。
【図５】低速動作処理時の不揮発性メモリのアクセス時間の割合を示す図である。
【符号の説明】
（１）  セラミック発振回路
（２）  水晶発振回路
（３）  ＥＥＰＲＯＭ
（７）  切換制御回路
（８）（９）  ＡＮＤゲート
（１０）  ＯＲゲート
【図１】
0003619629.tif 000002
【図２】
0003619629.tif 000003
【図３】
0003619629.tif 000004
【図４】
0003619629.tif 000005
【図５】
0003619629.tif 000006