(57)【要約】【課題】メモリへデータを書き込んでいる最中に、任意のタイミングで発生するシステムリセットからメモリのデータ内容を確実に保護する必要があった。【解決手段】外部から入力されるリセット信号に基づいてデータ記憶回路へのアクセスを制御するリセット時のアクセス制御回路１００であって、前記リセット信号を、基準クロックと同期させた同期リセット信号を出力する同期部１１０と、前記同期リセット信号に基づいて前記データ記憶回路へのアクセスを禁止するタイミングを検出し、検出したタイミングから前記リセット信号に基づくリセット処理を開始するまで期間であって、かつ、前記アクセスを禁止する前に発生したアクセスに必要な時間を保証する期間、前記データ記憶回路へのアクセスを禁止する制御信号を出力する制御信号生成部１２０と、を備える【選択図】図２
2008269442.tif 000002
【特許請求の範囲】
【請求項１】
外部から入力されるリセット信号に基づいてデータ記憶回路へのアクセスを制御するリセット時のアクセス制御回路であって、
前記リセット信号を、基準クロックと同期させた同期リセット信号を出力する同期部と、
前記同期リセット信号に基づいて前記データ記憶回路へのアクセスを禁止するタイミングを検出し、検出したタイミングから前記リセット信号に基づくリセット処理を開始するまで期間であって、かつ、前記アクセスを禁止する前に発生したアクセスに必要な時間を保証する期間、前記データ記憶回路へのアクセスを禁止する制御信号を出力する制御信号生成部と、を備えるリセット時のアクセス制御回路。
【請求項２】
前記制御信号生成部は、前記同期リセット信号がアクティブ状態になってから、少なくとも１クロック周期の期間、記データ記憶回路へアクセスを許可する制御信号を出力することを特徴とする請求項１記載のリセット時のアクセス制御回路。
【請求項３】
前記アクセスに必要な時間を保証する期間は、少なくとも前記データ記憶回路のアクセスに必要な時間であって、前記アクセスを許可した期間に要求された書き込みが終了するまでの時間間隔であり、
前記制御信号生成部は、前記リセット処理を開始するタイミングまで前記リセット信号を遅延させた遅延リセット信号により、前記アクセスに必要な時間を保証する期間の終了を検出すること特徴とする請求項２記載のリセット時のアクセス制御回路。
【請求項４】
データ記憶回路と、
外部から入力されたリセット信号に基づいて、前記データ記憶回路へのアクセスを制御するアクセス制御回路と、
前記データ記憶回路へのアクセスが禁止される前に発生したアクセスに少なくとも必要な時間、前記リセット信号を遅延させた遅延リセット信号を出力する遅延回路と、を備え、
前記アクセス制御回路は、
前記リセット信号を、基準クロックと同期させた同期リセット信号を出力する同期部と、
前記同期リセット信号に基づいて前記データ記憶回路へのアクセスを禁止するタイミングを検出し、検出したタイミングから前記遅延リセット信号が入力されるまでの期間、前記データ記憶回路へのアクセスを禁止する制御信号を出力する制御信号生成部と、を有するマイクロコンピュータ。
【請求項５】
前記遅延リセット信号がアクティブ状態になるタイミングで、前記基準クロックを発生させる回路を含めて前記リセット信号に基づくリセット処理が実行されることを特徴とする請求項４記載のマイクロコンピュータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リセット発生時にデータ記憶回路を保護する制御に関し、特に、システムリセット後もデータの内容について保証が必要となるバックアップメモリを搭載するシングルチップマイクロコンピュータにおけるメモリを保護する制御に関する。
【背景技術】
【０００２】
従来から、リセット時のメモリの保護については様々な技術が開発されている。例えば、特許文献１、２に開示されている技術がある。特許文献１では、メモリへの書込み読出し実行中リセットを保留し、書込み読出しが終了次第リセットを有効とする技術が開示されている。また、特許文献２には、リセットが入力されても、アドレスとデータがラッチされ、書込み許可信号がリセットされないような回路構成を取ることにより、リセット中でも書込みが継続して行われる技術が開示されている。
【０００３】
近年、マイクロコンピュータを使用するシステムの多様化、複雑化にともない、システムリセット入力後も、メモリ機能のデータを保証することが必要なケースが発生するようになった。例えば、マイクロコンピュータが有するＲＡＭ（Random Access Memory）等で必要とされている。この用途において、ＲＡＭへの書込み動作中にシステムリセットが発生した場合においても、マイクロコンピュータは、そのデータ内容を保証し、データを破壊することなく安全にリセットを行う必要がある。
【特許文献１】特開昭６３−２０８９５８号公報
【特許文献２】特開平１０−０６３５８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１、２に開示された従来技術では、回路構成やタイミング制約が複雑であり、同期化設計の妨げとなる危険性があった。例えば従来技術では、リセット入力されたタイミング、即ちその時のデバイスの状態によってリセットを保留する時間を変更する必要性がある為、回路構成が複雑になる。また、アドレス、データラッチといったＲＡＭにデータを書きこむ処理に必要な回路部分は、ＲＡＭアクセス中はリセットが割り込んでも、それらの信号が保持される構成にする必要があった。このため、セレクト信号のＲＥＳＥＴと、アドレス／データラインの信号の競合が発生する可能性があった。この状況の一例を図６に示している。図６では、論理積回路９２に、リセット信号とＲＡＭアクセス信号とが入力されているが、リセット信号は、システムのクロックと同期化されていないため、ＲＡＭアクセス信号とのタイミングの調整が取りにくかった。
【０００５】
このように、メモリへデータを書き込んでいる最中に、任意のタイミングで発生するシステムリセットからメモリのデータ内容を確実に保護する必要があった。
【課題を解決するための手段】
【０００６】
本発明に係るリセット時のアクセス制御回路の一態様は、外部から入力されるリセット信号に基づいてデータ記憶回路へのアクセスを制御するリセット時のアクセス制御回路であって、前記リセット信号を、基準クロックと同期させた同期リセット信号を出力する同期部と、前記同期リセット信号に基づいて前記データ記憶回路へのアクセスを禁止するタイミングを検出し、検出したタイミングから前記リセット信号に基づくリセット処理を開始するまで期間であって、かつ、前記アクセスを禁止する前に発生したアクセスに必要な時間を保証する期間、前記データ記憶回路へのアクセスを禁止する制御信号を出力する制御信号生成部と、を備える。
【０００７】
また、本発明に係るマイクロコンピュータの一態様は、データ記憶回路と、外部から入力されたリセット信号に基づいて、前記データ記憶回路へのアクセスを制御するアクセス制御回路と、前記データ記憶回路へのアクセスが禁止される前に発生したアクセスに少なくとも必要な時間、前記リセット信号を遅延させた遅延リセット信号を出力する遅延回路と、を備え、前記アクセス制御回路は、前記リセット信号を、基準クロックと同期させた同期リセット信号を出力する同期部と、前記同期リセット信号に基づいて前記データ記憶回路へのアクセスを禁止するタイミングを検出し、検出したタイミングから前記遅延リセット信号が入力されるまでの期間、前記データ記憶回路へのアクセスを禁止する制御信号を出力する制御信号生成部と、を有する。
【発明の効果】
【０００８】
本発明によれば、メモリ（例えば、ＲＡＭ等）へデータを書き込んでいる最中に、任意のタイミングで発生するシステムリセットからメモリのデータ内容を確実に保護することが可能となる。従って、バックアップメモリとしての信頼性向上を実現することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の実施形態について、図面を参照しながら説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略、及び簡略化がなされている。各図面において同一の構成または機能を有する構成要素および相当部分には、同一の符号を付し、その説明は省略する。
【００１０】
図１は、本発明に係るマイクロコンピュータの構成例を示すブロック図である。図１に示すマイクロコンピュータは、リセット入力端子１と、ＣＰＵ（Central Processing Unit）２、クロック生成回路３、メモリインターフェース（メモリＩ／Ｆ）４、メモリ９、及び遅延回路１０を備える。
【００１１】
リセット入力端子１は、任意（非同期）のタイミングで発生するリセット信号を外部から入力する。
ＣＰＵ２は、マイクロコンピュータ内の各処理を制御する。具体的にメモリ９アクセスでは、ＣＰＵ２は、メモリ９のアドレス、データ、リード／ライトのアクセスの区別をメモリＩ／Ｆ４へ出力する。また、メモリ９へアクセスするタイミングを指示するアクセス指示信号をメモリＩ／Ｆ４へ出力する。
【００１２】
クロック生成回路３は、基準クロックを生成し、出力する。ここでの基準クロックは、マイクロコンピュータ内の基準クロックであってもよいし、メモリ９を制御する回路の基準クロックであってもよい。
【００１３】
メモリＩ／Ｆ４は、ＣＰＵ２がメモリ９へアクセスする処理を仲介する。メモリＩ／Ｆ４は、アドレス保持部５、データ保持部６、リード／ライト保持部（Ｒ／Ｗ保持部）７、アクセス信号出力部８、及びアクセス制御回路１００を備える。なお、図１のメモリＩ／Ｆ４の構成は一例であり、これに限られることはなく、各保持部を備えない場合もあり得る。
【００１４】
アドレス保持部５は、ＣＰＵ２から出力されるアドレスを保持する。データ保持部６は、ＣＰＵから出力されるデータを保持する。Ｒ／Ｗ保持部７は、ＣＰＵ２から出力されるリード／ライトのアクセスの区別を保持する。保持されたそれぞれのデータは、アクセスが許可されたタイミングでメモリ９へ出力される。
【００１５】
アクセス信号出力部８は、ＣＰＵ２がメモリ９へアクセスすることを許可する信号を出力する。具体的には、アクセス信号出力部８は、ＣＰＵ２から出力されるアクセス指示信号と、クロック生成回路３から出力される基準クロックと、アクセス制御回路１００から出力される制御信号とに基づいて、メモリ９へのアクセスを許可するアクセス許可と、メモリ９へのアクセスを禁止するアクセス禁止のいずれかを示すアクセス信号をメモリ９へ出力する。
【００１６】
アクセス制御回路１００は、リセット信号に基づいて、メモリ９へのアクセスを許可するか、禁止するかを判断し、判断結果を制御信号としてアクセス信号出力部８へ出力する。制御信号を生成する詳細工程については、図２を用いて後述する。
【００１７】
メモリ９は、マイクロコンピュータ内でデータを記憶するデータ記憶回路である。例えば、ＲＡＭ（Random Access Memory）を用いる。本実施形態では、メモリ９の一例としてＲＡＭを想定して説明する。
【００１８】
遅延回路１０は、リセット入力端子１へ入力された非同期のリセット信号を入力し、入力したリセット信号を予め設定した時間遅延させた遅延リセット信号を出力する。予め設定した時間は、リセット信号の入力に基づいて、メモリ９へのアクセスを禁止する前に発生したアクセスに必要な時間であり、既に発生しているメモリ９へのアクセスを保証する時間である。ここでは、予め設定した時間が、１００ｎｓ（ナノ秒）である場合を想定して説明する。アクセスに必要な時間は、メモリ９の仕様に基づいて設定される。生成した遅延リセット信号は、システム全体のリセット処理を開始する信号となる。すなわち、遅延リセット信号は、クロック生成回路３を含めたシステム全体のリセット信号として用いられる。従って、遅延リセット信号がアクティブになったときに、リセット処理が開始されることになる。
【００１９】
続いて、アクセス制御回路１００の内部構成について説明する。図２は、アクセス制御回路１００の構成例を示すブロック図である。図２は、アクセス制御回路１００及びアクセス制御回路１００へ入力される信号に係る構成要素を示している。アクセス制御回路１００は、同期部（同期化回路）１１０、制御信号生成部１２０、及びフリップフロップ回路（Ｆ／Ｆ回路）１０１を備える。
【００２０】
同期部１１０は、リセット入力端子１へ入力されるリセット信号を基準クロックで同期化し、同期化した同期リセット信号を出力する。図２の例では、同期部１１０は、二つのＦ／Ｆ回路１１２、１１３で構成する例を示している。
【００２１】
制御信号生成部１２０は、同期リセット信号より、メモリ９への書込みクロック（アクセス指示信号）をマスクする為の制御信号を生成する。より具体的には、制御信号生成部１２０は、同期リセット信号に基づいて、メモリ９へのアクセスを禁止するタイミング（アクセス禁止を開始するタイミング）を検出する。続いて、検出したタイミングから遅延リセット信号がアクティブになる時間アクセスを禁止する制御信号を生成し、出力する。従って、アクセスを禁止する期間は、アクセス禁止を開始してから、リセット処理を開始するまでの期間である。この期間は、遅延リセット信号がアクティブになるときを終了時点とする。従って、遅延回路１０において、アクセスを禁止する前に発生したアクセス指示信号の実行に必要な時間、リセット信号を遅延させることによって、メモリ９へのアクセスの正常終了を保証することができる。図２の例では、制御信号生成部１２０は、論理積回路１２１、論理和回路１２２、及び二つのＦ／Ｆ回路１２３、１２４で構成する例を示している。
【００２２】
このように、同期リセット信号は、アクセス制御回路１００へリセットが発生したことを通知する。また、遅延リセット信号は、アクセス制御回路１００及びその他のマイクロコンピュータ内の構成要素へリセット処理を開始するタイミングを通知する。
【００２３】
次に、リセット入力端子１へリセット信号が入力されたときの動作を具体的なタイミングチャートを用いて説明する。図３から図５は、メモリ９へのアクセスに関係する各信号の変移例を示すタイミングチャートである。図３から図５において、Ｔ１〜Ｔ４、ＴＷ１〜ＴＷ５は、タイミングを示す。ＲＷＤＡＴＡは、ＣＰＵ２から出力されるデータを示し、図３から図５では、書込みデータを示している。また、以下の説明で"Ｌ"はＬｏｗ、"Ｈ"はＨｉｇｈである信号状態を示す。
【００２４】
まず、リセット信号の入力と制御信号の変化について説明する。リセット入力端子１へリセット信号が入力され、リセット信号がアクティブ（Ｌ）になる（Ｔ１）。同期部１１０は、リセット信号と基準クロックとの同期を取り、同期リセット信号をアクティブ（Ｌ）にする（Ｔ２）。制御信号生成部１２０は、同期リセット信号がアクティブ状態になってから、少なくとも１クロック周期（図３から図５では１クロック周期）経過後、制御信号をアクセス禁止状態（アクティブ：Ｈ）にする（Ｔ３）。これは、確実にアクセス指示信号をマスクするために、すなわち、タイミングのずれによって、アクセス指示信号がアクティブであって制御信号がアクセス禁止状態になることを回避するためである。制御信号は、遅延リセット信号に基づいてシステムがリセットされるときに、アクセス許可状態（Ｌ）にされる（Ｔ４）。このようにして生成された制御信号は、制御信号生成部１２０からアクセス信号出力部８へ出力される。続いて、図３から図５の各場合について、基準クロック、アクセス指示信号及び制御信号に基づいて、アクセス信号出力部８から出力されるアクセス信号の変化を説明する。
【００２５】
図３は、書き込みが許可される場合を示す。図３では、Ｔ１のタイミングでＣＰＵ１から出力される書き込みのアクセス指示信号がアクティブになっている。Ｔ１のタイミングは、同期リセット信号がアクティブ状態になる前である。アクセス信号出力部８は、ＴＷ１のタイミングでは、アクティブになったアクセス指示信号と、制御信号が反転された値、及び基準クロックとを入力する。ＴＷ１のタイミングでは、制御信号は、アクセス禁止状態になる前である。従って、アクセス信号出力部８は、ＴＷ１のタイミングにアクセスを許可するアクセス信号をメモリ９へ出力する。メモリ９では、書き込み動作が実施される。書き込み処理は、例えば、ＴＷ２タイミングで終了する。遅延リセット信号は、アクセスに充分な遅延時間をとって遅延されている。このため、遅延リセット信号は、メモリ９への書き込みが終了した後、アクティブになり、リセット処理が実施される（Ｔ４）。これにより、メモリ９は、安全にメモリ９への書き込みを実行することになり、データを確実に記憶することができる。
【００２６】
図４は、書き込みが禁止される場合を示す。図４では、Ｔ３のタイミングでＣＰＵ１から出力される書き込みのアクセス指示信号がアクティブになっている。Ｔ３のタイミングでは、制御信号がアクティブになり、アクセス禁止状態になっている。従って、このアクセス要求（アクセス指示信号）は、ＴＷ３のタイミングで制御信号によってマスクされる。図４では、マスクされた部分を点線で表している。このため、アクセス信号出力部８は、ＴＷ３のタイミングにアクセスを禁止するアクセス信号をメモリ９へ出力する。従って、このアクセス指示信号は、実行されることなく、リセット処理が実施される（Ｔ４）。このようにして、メモリ９へ確実に書き込む保証のないアクセス指示信号をマスクする。これにより、リセット前にメモリ９が保持しているデータを確実・安全に保持する。仮に、ＴＷ３のタイミングで書込みを行った場合、システムリセット発生までに十分な書き込み時間を確保することができないため、意図する値が正しく書きこまれる保証がない。
【００２７】
図５は、図３とは異なる書き込みが許可される場合を示す。図５では、Ｔ２のタイミングでＣＰＵ１から出力される書き込みのアクセス指示信号がアクティブになっている。Ｔ２のタイミングは、制御信号がメモリへのアクセスを禁止する前であるが、同期リセット信号がアクティブになっている。ＴＷ４のタイミングでは、同期リセット信号はアクティブ状態になっているものの、制御信号は、アクセス禁止状態になる前である。従って、アクセス信号出力部８は、ＴＷ４のタイミングにアクセスを許可するアクセス信号をメモリ９へ出力する。メモリ９では、書き込み動作が実施される。書き込み処理は、例えば、ＴＷ５タイミングで終了する。遅延リセット信号は、ＴＷ４のタイミングで書き込みを開始した処理が完了するように、遅延回路１０において遅延されている。このため、遅延リセット信号は、メモリ９への書き込みが終了した後、アクティブになり、リセット処理が実施される（Ｔ４）。
【００２８】
また、図２の構成では、アクセス制御回路１００は、同期リセット信号がアクティブ状態になってから、１クロック周期経過後、すなわち図５では、Ｔ３のタイミングで制御信号をアクセス禁止状態（アクティブ状態）に変化させる。このため、Ｔ２のタイミングでアクティブになったアクセス指示信号は、アクセスを許可される。さらに、本実施形態では、制御信号とアクセス指示信号は、基準クロックが立ち下がるタイミングで変化する。一方、アクセス信号は、基準クロックが立ち上がる状態で変化する。このような組み合わせにより、アクセス信号と、制御信号及びアクセス指示信号が変化するタイミングが同じになることを避けている。このため、タイミングのずれによる不具合を回避することができる。このようにして、メモリ９は、安全にメモリ９への書き込みを実行することになり、データを確実に記憶することができる。
【００２９】
ここで、先に挙げた従来技術（特許文献１、２）と比較すると、本発明に係るアクセス制御回路は、例えば、次のような利点がある。リセット発生時にアドレス、データラッチを保持する回路が不要である。また、リセット発生時のデバイスの状態によって保持時間を変更する必要が無い。さらに、メモリ（ＲＡＭ）に関係する特定回路のみ異なるリセット信号を使用する必要がなく、同じリセット信号を用いてシステム全体をリセットすることができる。従って、本発明に係るアクセス制御回路は、回路を従来技術に比較して簡易に構築することができる。また、リセット信号を一度同期化してから書込みクロックをマスクする信号を作り出す為、ヒゲ等がのることなく安全にクロックをマスクすることができる。さらに、本発明に係るアクセス制御回路は、大規模な追加回路を用いること無く、リセット発生時のメモリ９が保持するデータの保証が可能となる。また、ＲＡＭの仕様に合わせて用いるディレイの値を変更することにより、様々な製品への適用が可能となる。
【００３０】
以上のように、本発明に係る好適な実施形態によれば、外部から入力されるリセット信号を同期化した同期リセット信号を生成する。また、外部からリセット信号が入力されてから早いタイミングでアクティブ状態になる早いリセット信号（同期リセット信号）と、大きなディレイを用いる遅いリセット信号（遅延リセット信号）を作り出す。この２つのリセット信号に時間差が生じることを利用し、メモリ９への書き込みをリセット発生時にマスクする。また、同期リセット信号により、確実にアクセス指示信号をマスクする。このようにして、簡易な構成によって、リセット時に確実にメモリのテータを保護する制御回路を提供することができる。また、リセット信号を基準クロックと同期化することによって、回路設計において、タイミング制約が簡易になるため、回路設計に要する時間を抑制することができる。
【００３１】
なお、本発明は上記に示す実施形態に限定されるものではない。本発明の範囲において、上記実施形態の各要素を、当業者であれば容易に考えうる内容に変更、追加、変換することが可能である。
【図面の簡単な説明】
【００３２】
【図１】本発明に係るマイクロコンピュータの構成例を示すブロック図である。
【図２】アクセス制御回路の構成例を示すブロック図である。
【図３】メモリへのアクセスが許可される場合の各信号の変移例を示すタイミングチャートである。
【図４】メモリへのアクセスが禁止される場合の各信号の変移例を示すタイミングチャートである。
【図５】図３とは異なるメモリへのアクセスが許可される場合の各信号の変移例を示すタイミングチャートである。
【図６】従来のメモリ制御回路の構成例を示すブロック図である。
【符号の説明】
【００３３】
１  リセット入力端子
２  ＣＰＵ
３  クロック生成回路
４  メモリインターフェース（メモリＩ／Ｆ）
５  アドレス保持部
６  データ保持部
７  リード／ライト保持部（Ｒ／Ｗ保持部）
８  アクセス信号出力部
９  メモリ
１０  遅延回路
１００  アクセス制御回路
１０１、１１２、１１３、１２３、１２４  フリップフロップ回路（Ｆ／Ｆ回路）
１１０  同期部
１２０  制御信号生成部
１２１  論理積回路
１２２  論理和回路
【図１】
2008269442.tif 000003
【図２】
2008269442.tif 000004
【図３】
2008269442.tif 000005
【図４】
2008269442.tif 000006
【図５】
2008269442.tif 000007
【図６】
2008269442.tif 000008