(57)【特許請求の範囲】
【請求項１】
少なくとも、先頭にスタートビットが付加された命令ビット列からなるシリアルデータ、該シリアルデータに同期したクロック信号、当該装置を指定するチップイネーブル信号、当該装置をリセットするリセット信号を入力するためのインターフェイス手段と、
前記チップイネーブル信号が入力されているアクティブ期間の間、前記クロック信号に従って前記シリアルデータを格納するシリアルデータ格納手段と、
該シリアルデータ格納手段に格納された命令ビット列の内容に従ってメモリアクセスを行うアクセス制御手段と、
前記アクティブ期間の終了タイミングに基づいて、前記アクセス制御手段の動作を許可する許可信号を生成する許可信号生成手段と、
を備え、シリアルデータを用いてメモリを制御するメモリ制御装置において、前記アクティブ期間中に当該装置がリセットされた場合、そのアクティブ期間の終了タイミングに基づく許可信号の生成を禁止する第１の禁止手段を設けたことを特徴とするメモリ制御装置。
【請求項２】
前記許可信号生成手段は、前記アクティブ期間の終了タイミングで前記許可信号を生成する第１のフリップフロップ回路からなり、
前記第１の禁止手段は、当該装置がリセットされてから前記アクティブ期間の開始タイミングまでの間、前記第１のフリップフロップ回路をリセット状態に保持するための保持信号を生成する第２のフリップフロップ回路からなる
ことを特徴とする請求項１記載のメモリ制御装置。
【請求項３】
前記アクティブ期間中に前記シリアルデータ格納手段に格納されたデータが予め指定されたビット長に達していない場合、前記許可信号の生成を禁止する第２の禁止手段を備えることを特徴とする請求項１又は請求項２記載のメモリ制御装置。
【請求項４】
少なくとも、先頭にスタートビットが付加された命令ビット列からなるシリアルデータ、該シリアルデータに同期したクロック信号、当該装置を指定するチップイネーブル信号を入力するためのインターフェイス手段と、
前記チップイネーブル信号が入力されているアクティブ期間の間、前記クロック信号に従って前記シリアルデータを格納するシリアルデータ格納手段と、
該シリアルデータ格納手段に格納された命令ビット列の内容に従ってメモリアクセスを行うアクセス制御手段と、
前記アクティブ期間の終了タイミングに基づいて、前記アクセス制御手段の動作を許可する許可信号を生成する許可信号生成手段と、
を備え、シリアルデータを用いてメモリを制御するメモリ制御装置において、
前記アクティブ期間中に前記シリアルデータ格納手段に格納されるデータが予め指定されたビット長に達していない場合、前記許可信号の生成を禁止する第２の禁止手段を備えることを特徴とするメモリ制御装置。
【請求項５】
前記命令ビット列は、それぞれが固定のビット長Ｍi （ｉ＝１〜ｘ）を有する複数の部分ビット列Ｐ1 〜Ｐx からなり、
前記シリアルデータ格納手段は、
前記部分ビット列Ｐ1 〜Ｐx のそれぞれに対応して設けられ、格納すべき部分ビット列Ｐi より１ビット長いＭi ＋１ビットのシリアルデータを、前記クロック信号に従って格納し、且つ該シリアルデータの格納を開始する前には、前記スタートビットの信号レベルを反転させた信号レベルに初期化されるシフトレジスタＳＦ1 〜ＳＦx と、
前記シフトレジスタＳＦi に対応する所定の開始信号が入力されると、該シフトレジスタＳＦi の最上位ビットであるＭi ＋１ビット目の信号レベルが変化するまでの間、該シフトレジスタＳＦi に前記クロック信号を供給するクロック供給制御手段と、
前記スタートビットを検出すると、１段目のシフトレジスタＳＦ1 に対する開始信号を生成すると共に、前記シフトレジスタＳＦj （ｊ＝１〜ｘ−１）のＭj ビット目の信号レベルが変化すると、次段のシフトレジスタＳＦj+1 に対する開始信号を生成する開始信号生成手段と、
前記シフトレジスタＳＦj のＭj ＋１ビット目の信号レベルが変化する時に、前記スタートビットと同じ信号レベルを有する疑似スタートビットを、前記シリアルデータの代わりに次段のシフトレジスタＳＦj+1 に供給する疑似スタートビット供給手段と、
を備え
前記第２の禁止手段は、前記シフトレジスタＳＦ１〜ＳＦｘの最上位ビットの信号レベルに基づいて、前記シリアルデータ格納手段に格納されたデータが予め指定されたビット長に達しているか否かを判断することを特徴とする請求項３又は請求項４記載のメモリ制御装置。
【請求項６】
請求項１ないし請求項５いずれか記載のメモリ制御装置、及び該メモリ制御装置によって制御されるメモリを、１チップの半導体集積回路として構成したことを特徴とするシリアルメモリ。
【請求項７】
前記メモリは電気的にデータを書換可能な不揮発性メモリであることを特徴とする請求項６記載のシリアルメモリ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、シリアルデータを用いてメモリ制御を行うメモリ制御装置に関する。
【０００２】
【従来の技術】
従来より、電気的にデータを書換可能な不揮発性メモリであるＥＥＰＲＯＭ（Erasable Programmable Read Only Memory）が知られている。このＥＥＰＲＯＭは、小型でデータの書換も容易であることから、マイクロコンピュータを応用したシステム等において、モード設定，ＩＤコード記憶，ディップスイッチの代替など幅広く利用されている。
【０００３】
そして、特に、ＥＥＰＲＯＭのデータ量が少ない場合には、ＥＥＰＲＯＭへのアクセスにシリアルインターフェイスを用いることが行われている。この場合、シリアル入力されたシリアルデータ中のコマンド部分をデコードしたり、同じくシリアルデータ中のアドレス部分やデータ部分をパラレルデータに変換してＥＥＰＲＯＭに供給したり、またＥＥＰＲＯＭから読み出したパラレルデータをシリアル変換して出力したりするためのメモリ制御装置が必要となる。
【０００４】
このメモリ制御装置は、通常、シリアルデータの他、クロック信号、チップイネーブル信号、リセット信号等を入力信号とし、チップイネーブル信号が入力されているアクティブ期間中に供給されるシリアルデータを、クロックに従って取り込み、そのアクティブ期間の終了後に、取り込んだシリアルデータの内容に従って、ＥＥＰＲＯＭへのアクセスを実行するように構成されている。
【０００５】
【発明が解決しようとする課題】
しかし、このようなメモリ制御装置を用いた場合、電源の異常、静電気等により入力信号にノイズが重畳されると、ＥＥＰＲＯＭに対して意図しないアクセス（関係ないアドレスへの書込，消去命令など）が実行され、重要なデータが破壊されてしまう危険性があり、その結果、プログラムの暴走やシステムの復旧不能という重大な事態に繋がる可能性があるという問題があった。
【０００６】
例えば、書込命令を表すコマンドを‘110’ とし、アドレス‘0011’番地へのデータ‘01100010’を書き込む際に入力されるシリアルデータ‘110001101100010’ について考える。
図９（ａ）に示すように、４番目のクロックに対応する期間（以下「スロット」という）Ｓ４でチップイネーブル信号ＣＥにノイズが乗った場合、それ以前に取り込んだスロットＳ１〜Ｓ３のデータ列がキャンセルされる。しかし、ノイズの影響がなくなった後も、チップイネーブル信号ＣＥは入力され続けているため、再びデータの取り込みを開始する。その結果、スロットＳ６のデータがシリアルデータの先頭として誤認識されることにより、アドレス‘1100’番地へのデータ‘010XXXXX’の書込命令であるものとして、使用者の意図とは異なるメモリアクセスが実行されてしまうのである。
【０００７】
また、図９（ｂ）に示すように、リセット信号ＲＳＴにノイズが乗った場合にも、上述の場合と全く同様に命令を誤認識してしまう可能性があった。即ち、リセット信号ＲＳＴに乗ったノイズによって装置内部がリセットされることにより、それ以前に取り込んだスロットＳ１〜Ｓ３のデータ列がキャンセルされ、そのノイズによるリセットが解消された後も、チップイネーブル信号ＣＥが入力され続けていれば、上述の場合と同様に、再びデータの取り込みを開始してしまうからである。
【０００８】
そこで、本発明は、ノイズ等の影響により使用者の意図とは異なるメモリアクセスが実行されることを防止できるメモリ制御装置及びシリアルメモリを提供することを目的とする。
【０００９】
【課題を解決するための手段】
上記目的を達成するための発明である請求項１記載のメモリ制御装置では、インタフェース手段を介して、少なくとも、先頭にスタートビットが付加された命令ビット列からなるシリアルデータ、このシリアルデータに同期したクロック信号、当該装置を指定するチップイネーブル信号、当該装置をリセットするリセット信号が入力される。
【００１０】
そして、チップイネーブル信号が入力されているアクティブ期間の間、シリアルデータ格納手段が、クロック信号に従ってシリアルデータを格納し、許可信号生成手段が、アクティブ期間の終了タイミングに基づいて許可信号を生成する。すると、アクセス制御手段が、シリアルデータ格納手段に格納された命令ビット列の内容に従ってメモリアクセスを行う。
【００１１】
但し、アクティブ期間中に当該装置がリセットされた場合には、第１の禁止手段が、そのアクティブ期間の終了タイミングに基づく許可信号の生成を禁止する。
つまり、本発明のメモリ制御装置では、アクティブ期間中に、リセット信号にノイズが乗るなどして当該装置がリセットされ、そのリセット状態が解消された後も、先のアクティブ期間が継続していることにより、シリアルデータを途中から取り込んでしまったとしても、その取り込んだシリアルデータの内容に基づいて、使用者の意図とは異なるメモリアクセスが実行されることがない。
【００１２】
従って、本発明のメモリ制御装置によれば、リセット信号に乗ったノイズによる誤動作に基づいて、メモリの記憶内容が使用者の意図しないものに書き替えられてしまうことを確実に防止できる。
なお、請求項２記載のように、許可信号生成手段と第１の禁止手段とは、例えば、アクティブ期間の終了タイミングで前記許可信号を生成する第１のフリップフロップ回路と、当該装置がリセットされてからアクティブ期間の開始タイミングまでの間、第１のフリップフロップ回路をリセット状態に保持するための保持信号を生成する第２のフリップフロップ回路という簡易な構成により実現することができる。
【００１３】
次に、請求項３記載のメモリ制御装置では、アクティブ期間中にシリアルデータ格納手段に格納されたデータが予め指定されたビット長に達していない場合、第２の禁止手段が、許可信号生成手段による許可信号の生成を禁止する。
つまり、本発明のメモリ制御装置では、アクティブ期間中に、チップイネーブル信号やクロック信号にノイズが乗るなどして、アクティブ期間が分割されたり、クロック数が不足することにより、取り込んだシリアルデータの一部が欠けていたとしても、その取り込んだシリアルデータの内容に基づいて、使用者の意図とは異なるメモリアクセスが実行されることがない。
【００１４】
従って、本発明のメモリ制御装置によれば、チップイネーブル信号やクロック信号に乗ったノイズによる誤動作に基づいて、メモリの記憶内容が使用者の意図しないものに書き替えられてしまうことを確実に防止できる。
なお、第２の禁止手段は、必ずしも第１の禁止手段と組み合わせて用いる必要はなく、請求項４記載のように、第２の禁止手段を単独で用いてもよい。
【００１５】
次に、請求項５記載のメモリ制御装置では、命令ビット列が、それぞれが固定のビット長Ｍi （ｉ＝１〜ｘ）を有する複数の部分ビット列Ｐ1 〜Ｐx からなるシリアルデータを扱う。そして、シリアルデータ格納手段では、部分ビット列Ｐ1 〜Ｐx のそれぞれに対応してシフトレジスタＳＦ1 〜ＳＦx が設けられている。
【００１６】
なお、各シフトレジスタＳＦｉは、それぞれが格納すべき部分ビット列Ｐi より１ビット長いＭi ＋１ビットのシリアルデータをクロック信号に従って格納するように構成され、シリアルデータの格納を開始する前に、スタートビットの信号レベルを反転させた信号レベルに初期化される。
【００１７】
そして、開始信号生成手段が、スタートビットを検出して１段目のシフトレジスタＳＦ1 に対する開始信号を生成すると、クロック供給制御手段は、シフトレジスタＳＦ1 の最上位ビットであるＭ1 ＋１ビット目の信号レベルが変化するまでの間、即ち、スタートビットと部分ビット列Ｐ1 の全てとがシフトレジスタＳＦ1 に格納され、スタートビットがシフトレジスタＳＦ1 の最上位ビットに到達するまでの間、シフトレジスタＳＦ1 にクロック信号を供給する。
【００１８】
また、開始信号生成手段は、シフトレジスタＳＦj （ｊ＝１〜ｘ−１）のＭj ビット目の信号レベルが変化すると、次段のシフトレジスタＳＦj+1 に対する開始信号を生成する。そして、シフトレジスタＳＦj のＭj ＋１ビット目の信号レベルが変化する時、即ちシフトレジスタＳＦj+1 への部分ビット列Ｐj+1 の供給が開始される直前に、疑似スタートビット供給手段は、スタートビットと同じ信号レベルを有する疑似スタートビットを、シリアルデータの代わりに次段のシフトレジスタＳＦj+1 に供給する。
【００１９】
そして、クロック供給制御手段は、シフトレジスタＳＦj+1 の最上位ビットの信号レベルが変化するまでの間、シフトレジスタＳＦj+1 にクロック信号を供給し、以下同様に動作する。
その結果、シリアルデータの取り込みが正常に終了した時に、各シフトレジスタレジスタＳＦ1 〜ＳＦx には、それぞれ対応する部分ビット列Ｐ1 〜Ｐx が格納されるだけでなく、その最上位ビットには、いずれもスタートビット或いは疑似スタートビットが格納された状態となる。このため、第２の禁止手段は、これら各シフトレジスタＳＦ1 〜ＳＦx の最上位ビットの信号レベルに基づいて、シリアルデータ格納手段（シフトレジスタＳＦ1 〜ＳＦx ）に格納されたデータが予め指定されたビット長に達しているか否かを判断することが可能となる。
【００２０】
このように、本発明のメモリ制御装置によれば、取り込んだデータが予め指定されたビット長に達しているか否かの判断を、回路規模の大きいカウンタを用いることなく可能としているため、装置規模を小さくすることができる。
なお、請求項１ないし請求項５いずれか記載のメモリ制御装置は、請求項６記載のように、そのメモリ制御装置によって制御されるメモリと共に、１チップの半導体集積回路からなるシリアルメモリとして構成してもよい。
【００２１】
この場合、メモリは、例えば請求項７記載のように、電気的にデータを書換可能な不揮発性メモリを用いることができる。
【００２２】
【発明の実施の形態】
以下に本発明の実施形態を図面と共に説明する。
［第１実施形態］
図１（ａ）は、マイクロコンピュータ（以下「マイコン」という）２からのシリアルデータを入力し、複数ビット単位でデータが入出力されるメモリ（ここではＥＥＰＲＯＭ）６に対するアクセス制御等を行う本実施形態のメモリ制御装置４の構成を表すブロック図、図１（ｂ）は、マイコン２からメモリ制御装置４に入力されるシリアルデータのフレーム構成を表す説明図である。
【００２３】
図１（ａ）に示すように、本実施形態のメモリ制御装置４は、マイコン２との間でシリアルデータＤＩＯを入出力すると共に、マイコン２からシリアルデータＤＩＯに同期したクロック信号ＣＬＫ、当該装置４を指定するチップイネーブル信号ＣＥ、当該装置４をリセットするための外部リセット信号ＲＳＴを入力するためのインターフェイス手段としてのインターフェイス部１０を備えている。
【００２４】
なお、ここでは、チップイネーブル信号ＣＥの論理はハイアクティブであり、そのハイレベルが保持されている期間を、以下ではアクティブ期間とよぶ。また、外部リセット信号ＲＳＴの論理もハイアクティブである。
また、シリアルデータＤＩＯは、図１（ｂ）に示すように、メモリ６に対する制御の内容を表す命令ビット列の先頭に、１ビットのスタートビットＳを付加したフレーム構成を有している。そして、命令ビット列は、書込命令や読込命令などのコマンドを表すｍビットの第１部分ビット列Ｐ１、メモリ６の格納位置を指定するアドレスを表すｎビットの第２部分ビット列Ｐ２、メモリ６との間で入出力されるデータを表すｐビットの第３部分ビット列Ｐ３からなる。また、無通信時における信号線の信号レベルはロウレベル、スタートビットＳの信号レベルはハイレベルに設定されているものとする。
【００２５】
図１（ａ）に戻り、メモリ制御装置４は、インターフェイス部１０を介して入力されるシリアルデータＤＩを、同様に入力されるクロック信号ＣＬＫに基づいて取り込み、パラレルデータに変換して出力するシリアルデータ格納手段としてのレジスタ部１１と、レジスタ部１１から出力されるパラレルデータのうち、第１部分ビット列Ｐ１（即ちコマンド）に対応するパラレルデータＣＭＤの内容をデコードし、デコード結果に応じた指令を各部に出力するデコード部１２と、インターフェイス部１０からの外部リセット信号ＲＳＴ及びデコード部１２からの指令に基づいて、当該装置の各部をリセットするための内部リセット信号ＣＲ（但し外部リセット信号ＲＳＴとは反対のロウアクティブ）を生成するリセット制御部１３と、インターフェイス部１０からのチップイネーブル信号ＣＥ及びリセット制御部１３からの内部リセット信号ＣＲに基づいて、メモリアクセスの可否を表す許可信号ＥＮを生成する有効性判定部１４と、許可信号ＥＮによってメモリアクセスが許可されている場合に、デコード部１２からの指令に基づき、メモリ６へのアクセスのために必要な制御信号ＣＴＲを生成し、メモリアクセスを実行するアクセス制御手段としてのメモリ制御部１５とを備えている。
【００２６】
なお、レジスタ部１１は、第２部分ビット列Ｐ２（即ちアドレス）に対応するパラレルデータＡＤＲ、及び第３部分ビット列Ｐ３（即ちデータ）に対応するパラレルデータＤＡＴについては、メモリ６に直接供給するように構成されている。
【００２７】
また、デコード部１２は、メモリ制御部１５によるメモリアクセスが正常に終了した場合、及びデコードの際にエラーを検出した場合に、リセット制御部１３に対してリセットを要求する指令を出力するように構成されている。
ここで図２は、（ａ）が有効性判定部１４の構成を示す回路図、（ｂ）がその動作を説明するためのタイミング図である。
【００２８】
図２（ａ）に示すように、有効性判定部１４は、データ入力がハイレベルに固定され、チップイネーブル信号ＣＥをクロック入力とするフリップフロップ（ＦＦ）回路２１と、チップイネーブル信号ＣＥを反転させる反転（ＩＮＶ）回路２４と、データ入力がハイレベルに固定され、ＦＦ回路２１の正出力をリセット入力、ＩＮＶ回路２４の出力をクロック入力とするＦＦ回路２２と、ＦＦ回路２１の正出力をデータ入力、ＦＦ回路２２の正出力をクロック入力、内部リセット信号ＣＲをリセット入力とするＦＦ回路２３と、ＦＦ回路２２の反転出力及び内部リセット信号ＣＲを入力とし、出力がＦＦ回路２１のリセット入力となる論理積（ＡＮＤ）回路２５とからなる。
【００２９】
なお、以下では、ＦＦ回路２１の正出力を立上り検出信号ＦＥ、ＦＦ回路２２の正出力を立下り検出信号ＲＥ、ＦＦ回路２３の正出力を許可信号ＥＮとよぶ。また、ＦＦ回路２２，２３、ＩＮＶ回路２４が許可信号生成手段に相当し、ＦＦ回路２１、ＡＮＤ回路２５が第１の禁止手段に相当する。
【００３０】
このように構成された有効性判定部１４では、図２（ｂ）に示すように、立上り検出信号ＦＥは、チップイネーブル信号ＣＥの立上りエッジ、即ちアクティブ期間の開始タイミングが検出されるとハイレベルとなる（ｔ１１，ｔ１４）。
また、立下り検出信号ＲＥは、立上り検出信号ＦＥがハイレベルにある時に、チップイネーブル信号ＣＥの立下りエッジ、即ちアクティブ期間の終了タイミングが検出されるとハイレベルとなり、これと同時に、許可信号ＥＮがハイレベルにセットされる（ｔ１５）。またこの時、ＦＦ回路２２の反転出力がロウレベルとなるため、ＦＦ回路２１がリセットされることにより、立上り検出信号ＦＥがロウレベルに変化し、その結果、ＦＦ回路２２もリセットされることにより、立下り検出信号ＲＥもロウレベルに変化する。つまり、立下り検出信号ＲＥは、パルス状の信号となる。
【００３１】
このようにして、アクティブ期間の終了タイミングで許可信号ＥＮがセットされた場合には、アクティブ期間中にレジスタ部１１が取り込んだシリアルデータに基づくメモリアクセスを、メモリ制御部１５が実行することになる。なお、許可信号ＥＮは、メモリアクセスの終了時にデコード部１２が出す指令に基づく内部リセット信号ＣＲにより、ロウレベルにリセットされる。
【００３２】
また、立上り検出信号ＦＥがハイレベルにある時に、外部リセット信号ＲＳＴにノイズが乗る等して、内部リセット信号ＣＲがロウレベル（アクティブ）になると、ＦＦ回路２１がリセットされることにより、立上り検出信号ＦＥはロウレベルに変化する（ｔ１２）。この場合、その後にチップイネーブル信号ＣＥの立下りエッジが検出されても、ＦＦ回路２２はリセットされたままであるため、立下り検出信号ＲＥはロウレベルのまま保持される（ｔ１３）。従って、許可信号ＥＮもセットされることなくロウレベルのまま保持される。
【００３３】
つまり、アクティブ期間中に何らかの原因でリセットが発生した場合、そのリセットの解消後もアクティブ期間が継続していると、レジスタ部１１がシリアルデータを取り込んでしまうが、そのアクティブ期間の終了タイミングでは許可信号ＥＮがセットされないため、メモリ制御部１５によるメモリアクセスは実行されることがない。
【００３４】
以上説明したように、本実施形態のメモリ制御装置４によれば、外部リセット信号ＲＳＴに乗ったノイズにより、レジスタ部１１に誤ったデータが書き込まれてしまったとしても、その誤ったデータに基づいてメモリアクセスが実行されることがないようにされているため、メモリ６の記憶内容が、使用者の意図しないものに書き替えられてしまうことを確実に防止できる。
［第２実施形態］
次に第２実施形態について説明する。
【００３５】
図２は、本実施形態のメモリ制御装置４ａの構成を表すブロック図である。
なお、本実施形態のメモリ制御装置４ａは、第１実施形態のものとはレジスタ部１１ａ，デコード部１２ａ，有効性判定部１４ａの構成が異なるだけであるため、同じ構成については同一の符号を付して説明を省略し、構成の相違する部分を中心に説明する。
【００３６】
即ち、本実施形態のメモリ制御装置において、レジスタ部１１ａは、レジスタ部１１が出力するパラレルデータＣＭＤ，ＡＤＲ，ＤＡＴ以外に、後述する格納完了信号ＣＣ，ＣＡ，ＣＤを出力し、デコード部１２ａは、デコード部１２が出力する指令以外に、コマンドの内容から特定されるフレーム長に応じて生成される切替信号Ｘを出力し、有効性判定部１４ａは、チップイネーブル信号ＣＥ及び内部リセット信号ＣＲに加えて、レジスタ部１１ａからの格納完了信号ＣＣ，ＣＡ，ＣＤ、デコード部１２からの切替信号Ｘに基づいて、許可信号ＥＮを生成するように構成されている。
【００３７】
なお、切替信号Ｘは、命令ビット列を構成する部分ビット列Ｐ１〜Ｐ３のうち、部分ビット列Ｐ１のみを有効とするか、部分ビット列Ｐ１，Ｐ２を有効とするか、全ての部分ビット列Ｐ１〜Ｐ３を有効とするかを切り替えるためのものである。例えば、シリアルデータＤＩＯのコマンドの内容が書込命令である場合には、全ての部分ビット列Ｐ１〜Ｐ３が有効であり、コマンドの内容が読込命令である場合には、部分ビット列Ｐ１，Ｐ２のみが有効であることを示す切替信号Ｘが生成される。
【００３８】
ここで図４は、レジスタ部１１ａの構成を示す回路図である。
図４に示すように、レジスタ部１１ａは、スタートビットＳを検出するとハイレベルになるスタートビット検出信号ＳＴＢを生成するスタートビット検出手段としてのスタートビット検出回路３０と、クロック信号ＣＬＫに従ってシリアルデータＤＩＯを順次格納し、格納したデータをそれぞれパラレルデータＣＭＤ，ＡＤＲ，ＤＡＴに変換して出力する制御ブロックＢ１〜Ｂ３とからなる。
【００３９】
なお、スタートビット検出回路３０は、スタートビット検出信号ＳＴＢが一度ハイレベルになると、以後、内部リセット信号ＣＲによってリセットされるまでの間、その状態を保持するように構成されている。
そして、制御ブロックＢ１は、部分ビット列Ｐ１のビット長より１ビット大きいｍ＋１ビット（Ｑ０〜Ｑｍ）のデータを格納するシフトレジスタＳＦ１と、クロック信号ＣＬＫ，スタートビット検出信号ＳＴＢ，シフトレジスタＳＦ１の最上位ビットＱｍに基づいてシフトレジスタＳＦ１を動作させる動作クロック信号ＣＫ１の供給を制御するクロック供給制御回路３２とを備えており、シフトレジスタＳＦ１の最上位ビットＱｍが格納完了信号ＣＣ、それ以外のｍビットＱ０〜Ｑm-1 がパラレルデータＣＭＤとなる。
【００４０】
なお、クロック供給制御回路３２は、クロック信号ＣＬＫ及びスタートビット検出信号ＳＴＢを入力とする論理積（ＡＮＤ）回路３２ｂと、ＡＮＤ回路３２ｂの出力及びシフトレジスタＳＦ１の最上位ビットＱｍを入力として動作クロック信号ＣＫ１を生成するＯＲ回路３２ａとからなる。つまり、ＡＮＤ回路３２ｂは、スタートビット検出信号ＳＴＢがロウレベルの間、クロック信号ＣＬＫをマスクすることにより、シフトレジスタＳＦ１に動作クロック信号ＣＫ１が供給されることを阻止し、一方、ＯＲ回路３２ａは、シフトレジスタＳＦ１の最上位ビットＱｍがハイレベルになると、ＡＮＤ回路３２ｂの出力をマスクして、シフトレジスタＳＦ１への動作クロック信号ＣＫ１の供給を遮断する。
【００４１】
このように構成された制御ブロックＢ１では、内部リセット信号ＣＲによりシフトレジスタＳＦ１の出力がロウレベルにリセットされ、その後、図５に示すように、スタートビットＳの検出（スタートビット検出信号ＳＴＢがハイレベル）によって、動作クロック信号ＣＫ１の供給が開始されると、この動作クロック信号ＣＫ１に従って、シリアルデータＤＩＯはシフトレジスタＳＦ１に順次格納される。そして、スタートビットＳが最上位ビットＱｍ（図ではｍ＝３）に到達することにより、最上位ビットＱｍの信号レベルがハイレベルに変化すると、動作クロック信号ＣＫ１が遮断され、シフトレジスタＳＦ１の動作が停止する。これにより、スタートビットＳに続くｍビットの第１部分ビット列Ｐ１が、スタートビットと共にシフトレジスタＳＦ１に保持されることになる。
【００４２】
なお、図５において斜線は、スタートビットＳ（制御ブロックＢ１の場合）、及び後述する疑似スタートビットＧ（制御ブロックＢ２，Ｂ３の場合）の位置を示す。
次に制御ブロックＢ２は、部分ビット列Ｐ２のビット長より１ビット大きいｎ＋１ビット（Ｑ０〜Ｑｎ）のデータを格納するシフトレジスタＳＦ２と、クロック信号ＣＬＫ、シフトレジスタＳＦ１の上位２ビットＱｍ，Ｑm-1 、シフトレジスタＳＦ２の最上位ビットＱｎに基づいてシフトレジスタＳＦ２を動作させる動作クロック信号ＣＫ２の供給を制御するクロック供給制御回路３３と、シリアルデータＤＩＯ及びシフトレジスタＳＦ１の出力Ｑm-1 に基づいて、シフトレジスタＳＦ２へのシリアルデータの供給を制御するデータ供給制御回路３４とを備えており、シフトレジスタＳＦ２の最上位ビットＱｎ（図ではｎ＝４）が格納完了信号ＣＡ、それ以外のｍビットＱ０〜Ｑn-1 がパラレルデータＡＤＲとなる。
【００４３】
なお、クロック供給制御回路３３は、シフトレジスタＳＦ１の出力Ｑｍ，Ｑm-1 を入力とする論理和（ＯＲ）回路３３ｃと、クロック信号ＣＬＫ及びＯＲ回路３３ｃの出力を入力とするＡＮＤ回路３３ｂと、ＡＮＤ回路３３ｂの出力及びシフトレジスタＳＦ２の最上位ビットＱｎを入力として動作クロック信号ＣＫ２を生成するＯＲ回路３３ａとからなる。
【００４４】
つまり、クロック供給制御回路３３は、スタートビット検出信号ＳＴＢの代わりにＯＲ回路３３ｃの出力が用いられている以外は、クロック供給制御回路３２と同様に動作し、第２部分ビット列Ｐ２の供給が開始される１ビット前から、シフトレジスタＳＦ２に対して動作クロック信号ＣＫ２の供給を開始する。
【００４５】
一方、データ供給制御回路３４は、シフトレジスタＳＦ１の出力Ｑm-1 を反転させる反転（ＩＮＶ）回路３４ｂと、シフトレジスタＳＦ１の出力Ｑｍ及びシリアルデータＳＩＯを入力とするＡＮＤ回路３４ｃ、ＩＮＶ回路３４ｂの出力がロウレベルの時にＡＮＤ回路３４ｃの出力をシフトレジスタＳＦ２に供給するＯＲ回路３４ａとからなる。
【００４６】
つまり、データ供給制御回路３４は、シフトレジスタＳＦ２に対して、クロック供給制御回路３３によって最初の動作クロック信号ＣＫ２が供給される時に、ハイレベルの疑似スタートビットＧを供給し、以後、シリアルデータＤＩＯを供給するように構成されている。
【００４７】
このように構成された制御ブロックＢ２では、内部リセット信号ＣＲによりシフトレジスタＳＦ２の出力がロウレベルにリセットされ、その後、図５に示すように、動作クロック信号ＣＫ２の供給が開始されると、この動作クロック信号ＣＫ２に従って、最初に疑似スタートビットＧ、続けてシリアルデータＤＩＯがシフトレジスタＳＦ２に順次格納される。そして、疑似スタートビットＧが最上位ビットＱｎに到達することにより、最上位ビットＱｎの信号レベルがハイレベルに変化すると、動作クロック信号ＣＫ２が遮断され、シフトレジスタＳＦ２の動作が停止する。これにより、第１部分ビット列Ｐ１に続くｎビットの第２部分ビット列Ｐ２が疑似スタートビットＧと共にシフトレジスタＳＦ２に保持されることになる。
【００４８】
なお、制御ブロックＢ３は、シフトレジスタＳＦ２の代わりに、部分ビット列Ｐ３のビット長より１ビット大きいｐ＋１ビット（Ｑ０〜Ｑｐ）のデータを格納するシフトレジスタＳＦ３が設けられ、シフトレジスタＳＦ１の上位２ビットＱｍ，Ｑm-1 の代わりにシフトレジスタＳＦ２の上位２ビットＱｎ，Ｑn-1 が入力され、シフトレジスタＳＦ３の最上位ビットＱｐが格納完了信号ＣＤ、それ以外のｐビットＱ０〜Ｑp-1 がパラレルデータＤＡＴとなる以外は、制御ブロックＢ２と同様に構成されている。
【００４９】
従って、制御ブロックＢ３では、第２部分ビット列Ｐ２に続くｐ（図ではｐ＝８）ビットの第３部分ビット列Ｐ３が疑似スタートビットＧと共にシフトレジスタＳＦ３に保持されることになる。
そして、各シフトレジスタＳＦ１〜ＳＦ３へのデータの格納が正常に行われた時には、格納完了信号ＣＣ，ＣＡ，ＣＤは、いずれもハイレベルとなる。
【００５０】
次に有効性判定部１４ａは、第１実施形態における有効性判定部１４に、一部構成を追加しただけであるため、その追加された構成を中心に説明する。
即ち、有効性判定部１４ａは、図６（ａ）に示すように、有効性判定部１４にＡＮＤ回路２６及びゲート回路２７が追加された構成を有している。このうち、ゲート回路２７は、デコード部１２ａからの切替信号Ｘに従って、レジスタ部１１ａからの格納完了信号ＣＣ，ＣＡ，ＣＤの有効，無効を切り替えるものであり、有効である場合には、そのまま信号を通過させ、無効である場合にはロウレベルの信号を出力する。具体的には、切替信号Ｘが、部分ビット列Ｐ１〜Ｐ３が全て有効であることを示している時は、全ての格納完了信号ＣＣ，ＣＡ，ＣＤを有効とし、部分ビット列Ｐ１，Ｐ２のみが有効であることを示している時は、格納完了信号ＣＣ，ＣＡのみを有効とし、部分ビット列Ｐ１のみが有効であることを示している時は、格納完了信号ＣＣのみを有効とする。
【００５１】
そして、ＡＮＤ回路２６は、このゲート回路２７の各出力がいずれもハイレベルの時に、立下り検出信号ＲＥをＦＦ回路２３に供給するように構成されている。なお、ＡＮＤ回路２６，ゲート回路２７が第２の禁止手段に相当する。
このように構成された有効性判定部１４ａでは、例えば、切替信号Ｘによって格納完了信号ＣＤが無効とされている場合、図６（ｂ）に示すように、格納完了信号ＣＣ，ＣＡがハイレベル、即ち、第１部分ビット列Ｐ１と第２部分ビット列Ｐ２がシフトレジスタＳＦ１，ＳＦ２にそれぞれ完全に格納されている場合には、許可信号ＥＮがセットされ、メモリ制御部１５によるメモリアクセスが実行される（ｔ２１）。
【００５２】
一方、何らかの理由でレジスタ部１１ａへのシリアルデータＳＩＯの取り込みが不完全である場合には、これに対応する格納完了信号（図中ではＣＡ）がローレベルのままとなることにより、立下り検出信号ＲＥが生成されても、許可信号ＥＮはセットされないため、メモリ制御部１５によるメモリアクセスは実行されることがない。（ｔ２２）。
【００５３】
以上説明したように、本実施形態のメモリ制御装置４ａによれば、第１実施形態と同様の作用効果が得られるのに加えて、チップイネーブル信号ＣＥやクロック信号ＣＬＫに乗ったノイズ等により、レジスタ部１１ａに不完全なデータが書き込まれてしまったとしても、その不完全なデータに基づいてメモりアクセスが実行されることがないため、メモリ６の記憶内容が、使用者の意図しないものに書き替えられてしまうことをより確実に防止できる。
［第３実施形態］
次に第３実施形態について説明する。
【００５４】
本実施形態のメモリ制御装置４ｂは、第２実施形態のものとはレジスタ部１１ｂ及び有効性判定部１４ｂの構成が一部異なるだけであるため、この構成の相違する部分を中心に説明する。
なお、図７は、レジスタ部１１ｂの構成を示すブロック図、図８は、有効性判定部１４ｂの構成の一部を表す回路図である。
【００５５】
図７に示すように、レジスタ部１１ｂは、第２実施形態におけるレジスタ部１１ａの構成に加えて、各制御ブロック毎Ｂ１〜Ｂ３毎に、それぞれ超過クロック検出回路４１，４２，４３が設けられている。
この超過クロック検出回路４１では、シフトレジスタＳＦ１の最上位ビットＱｍとクロック信号ＣＬＫとに基づき、最上位ビットＱｍがハイレベルになった後に、クロック信号ＣＬＫの入力が継続している場合に、ハイレベルとなる超過クロック検出信号ＯＣ１を生成する。
【００５６】
同様に、超過クロック検出回路４２（４３）では、それぞれシフトレジスタＳＦ２（ＳＦ３）の最上位ビットＱｎ（Ｑｐ）とクロック信号ＣＬＫとに基づき、最上位ビットＱｎ（Ｑｐ）がハイレベルになった後に、クロック信号ＣＬＫの入力が継続している場合に、ハイレベルとなる超過クロック検出信号ＯＣ２（ＯＣ３）を生成する。
【００５７】
一方、有効性判定部１４ｂは、図７に示すように、第２実施形態における有効性判定部１４ａの構成に加えて、切替信号Ｘに従って、レジスタ部１１ｂからの超過クロック検出信号ＯＣ１〜ＯＣ３のうち、いずれか一つを選択し、これを反転させて出力するセレクタ２８を備えている。そして、ＡＮＤ回路２６の代わりに、ゲート回路２７の各出力、及びセレクタ２８の出力がいずれもハイレベルの時に、立下り検出信号ＲＥをＦＦ回路２３に供給するＡＮＤ回路２６ａが設けられている。
【００５８】
なお、セレクタ２８は、切替信号Ｘが、部分ビット列Ｐ１〜Ｐ３が全て有効であることを示している時には、超過クロック検出信号ＯＣ３を選択し、部分ビット列Ｐ１，Ｐ２のみが有効であることを示している時には、超過クロック検出信号ＯＣ２を選択し、部分ビット列Ｐ１のみが有効であることを示している時には、超過クロック検出信号ＯＣ１を選択するように構成されている。
【００５９】
このように構成された有効性判定部１４ｂでは、レジスタ部１１ｂにシリアルデータＳＩＯを格納する際に、必要以上のクロック信号ＣＬＫが供給された時には、許可信号ＥＮがセットされないため、メモリ制御部１５によるメモリアクセスが実行されることがない。
【００６０】
以上説明したように、本実施形態のメモリ制御装置４ｂによれば、第２実施形態と同様の作用効果が得られるのに加えて、何らかの理由で必要以上のクロック信号ＣＬＫが供給されたこと、つまり誤動作を起こしている可能性がある事態を検出した時には、メモリアクセスを実行しないようにされているため、メモリ６の記憶内容が使用者の意図しないものに書き替えられてしまうことをより一層確実に防止できる。
【００６１】
以上本発明のいくつかの実施形態について説明したが、本発明は上記実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において、様々な態様にて実施することが可能である。
例えば、上記実施形態では、メモリ制御装置４，４ａ，４ｂとメモリ６とがべ別体に構成されているが、これらを１チップの半導体集積回路にて形成することにより、シリアルメモリとして構成してもよい。
【００６２】
また、上記実施形態では、メモリ６としてＥＥＰＲＯＭを用いているが、ＲＯＭ，ＲＡＭに拘わらず、複数ビット単位でデータが入出力されるのもであれば、どのようなメモリであってもよい。
【図面の簡単な説明】
【図１】  （ａ）は第１実施形態のメモリ制御装置４の構成を示すブロック図、（ｂ）はシリアルデータＳＩＯのフレーム構成を示す説明図である。
【図２】  （ａ）は有効性判定部１４の構成を示す回路図、（ｂ）はその動作を説明するためのタイミング図である。
【図３】  第２実施形態のメモリ制御装置４ａの構成を示すブロック図である。
【図４】  レジスタ部１１ａの構成を示す回路図である。
【図５】  レジスタ部１１ａの動作を説明するためのタイミング図である。
【図６】  （ａ）有効性判定部１４ａの一部を抽出した回路図、（ｂ）はその動作を説明するためのタイミング図である。
【図７】  第３実施形態のメモリ制御装置４ｂにおけるレジスタ部１１ｂの構成を示すブロック図である。
【図８】  有効性判定部１４ｂの一部を抽出した回路図である。
【図９】  従来の問題点を説明するためのタイミング図である。
【符号の説明】
２…マイクロコンピュータ、４，４ａ，４ｂ…メモリ制御装置、６…メモリ、１０…インターフェイス部、１１，１１ａ，１１ｂ…レジスタ部、１２，１２ａ…デコード部、１３…リセット制御部、１４，１４ａ，１４ｂ…有効性判定部、１５…メモリ制御部、２１〜２３…フリップフロップ（ＦＦ）回路、２４…反転（ＩＮＶ）回路、２５，２６，２６ａ…論理積（ＡＮＤ）回路、２７…ゲート回路、２８…セレクタ、３０…スタートビット検出回路、３２，３３…クロック供給制御回路、３４…データ供給制御回路、４１〜４３…超過クロック検出回路、Ｂ１〜Ｂ３…制御ブロック、ＳＦ１〜ＳＦ３…シフトレジスタ。
【図１】
0003882628.tif 000002
【図２】
0003882628.tif 000003
【図３】
0003882628.tif 000004
【図４】
0003882628.tif 000005
【図５】
0003882628.tif 000006
【図６】
0003882628.tif 000007
【図７】
0003882628.tif 000008
【図８】
0003882628.tif 000009
【図９】
0003882628.tif 000010