(57)【特許請求の範囲】
【請求項１】
メモリの記憶内容を初期化するためのメモリ初期化制御方法であって、
前記メモリへのアクセス状態を、通常データを記憶する通常データ記憶回路とは別に設けられ、該通常データ記憶回路におけるアドレスに１対１に対応するアドレスを指定可能であって、該各アドレスに、該各アドレスに対応する前記通常データ記憶回路上のアドレスに対する前記通常データのアクセス状態を示す複数ビットからなるアクセス保証データを記憶するアクセス保証データ記憶回路であって、電源立ち上げ時に同一アドレス内の前記複数ビットが同じ値となるDRAMからなるアクセス保証データ記憶回路に記録し、
該記録されたアクセス状態に従って、前記メモリに記録されたデータの出力と固定値の出力とを選択的に切り替える、
過程を含むことを特徴とするメモリ初期化制御方法。
【請求項２】
メモリの記憶内容を初期化する機構を有するメモリ装置であって、
通常データを記憶する通常データ記憶回路とは別に設けられ、該通常データ記憶回路におけるアドレスに１対１に対応するアドレスを指定可能であって、該各アドレスに、該各アドレスに対応する前記通常データ記憶回路上のアドレスに対する前記通常データのアクセス状態を示す複数ビットからなるアクセス保証データを記憶するアクセス保証データ記憶回路であって、電源投入時に同一アドレス内の前記複数ビットが同じ値となるDRAMからなるアクセス保証データ記憶回路と、
前記通常データ記憶回路の所望のアドレスへの前記通常データのアクセス動作時に、該所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに、前記アクセス動作に対応するアクセス保証データを設定する第１の制御回路と、
前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、該所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに記憶されている前記アクセス保証データに基づいて、前記所望のアドレスに対応する前記通常データ記憶回路上のアドレスの前記通常データを選択して出力するか否かを決定する第２の制御回路と、
を含むことを特徴とするメモリ装置。
【請求項３】
前記第１の制御回路は、前記通常データ記憶回路の所望のアドレスへの前記通常データの書込み動作時に、該所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに、前記通常データの書込みが発生したことを示す情報を含む前記アクセス保証データを設定し、
前記第２の制御回路は、前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、該所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに記憶されている前記アクセス保証データが、前記通常データの書込みが発生したことを示す情報を含んでいる場合においてのみ、前記所望のアドレスに対応する前記通常データ記憶回路上のアドレスの前記通常データを選択して出力する、
ことを特徴とする請求項２に記載のメモリ装置。
【請求項４】
前記第２の制御回路は、前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、該所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに記憶されている前記アクセス保証データが、前記通常データの書込みが発生したことを示す情報を含んでいない場合には、固定値のデータを選択して出力する、
ことを特徴とする請求項３に記載のメモリ装置。
【請求項５】
前記第２の制御回路は、前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、該所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに記憶されている前記アクセス保証データが、前記通常データの書込みが発生したことを示す情報を含んでいない場合には、デフォルトデータ記憶回路に記憶されたデフォルトデータを選択して出力する、
ことを特徴とする請求項３に記載のメモリ装置。
【請求項６】
前記第１の制御回路は、前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、該所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに、前記通常データの読出しが発生したことを示す情報を含む前記アクセス保証データを更に設定する、
ことを特徴とする請求項３乃至５の何れか１項に記載のメモリ装置。
【請求項７】
前記アクセス保証データに含まれる、前記通常データの書込みが発生したことを示す情報は、該通常データに対するサムチェック演算の結果得られるサムチェックデータであり、
前記第２の制御回路は、前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、該読み出された通常データに対して前記サムチェック演算を実行し、その演算結果が、前記所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに記憶されている前記アクセス保証データであるサムチェックデータと一致する場合においてのみ、前記通常データ記憶回路から読み出された前記通常データを選択して出力する、
ことを特徴とする請求項３乃至６の何れか１項に記載のメモリ装置。
【請求項８】
前記アクセス保証データに含まれる、前記通常データの書込みが発生したことを示す情報は、該通常データに対する巡回冗長符号演算の結果得られる巡回冗長符号データであり、
前記第２の制御回路は、前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、該読み出された通常データに対して前記巡回冗長符号演算を実行し、その演算結果が、前記所望のアドレスに対応する前記アクセス保証データ記憶回路上のアドレスに記憶されている前記アクセス保証データである巡回冗長符号データと一致する場合においてのみ、前記通常データ記憶回路から読み出された前記通常データを選択して出力する、
ことを特徴とする請求項３乃至６の何れか１項に記載のメモリ装置。
【請求項９】
前記通常データの書込みが発生したことを示す情報データ値と前記第２の制御回路が前記通常データの書込みが発生したことを示す情報を検出するための判定値の組を、複数の組の中で切り換えることを前記第１の制御回路および前記第２の制御回路に設定する制御データ切換え回路を更に含み、
前記通常データ記憶回路の全てのデータを読み出した後に、該制御データ切換え回路による切換え動作によって、前記第２の制御回路が前記通常データ記憶回路の全てのアドレスに対して固定値を出力させることにより前記通常データ記憶回路のすべての記憶内容を仮想的に瞬時にクリアする、
ことを特徴とする請求項３乃至６の何れか一項に記載のメモリ装置。
【請求項１０】
前記通常データの書込みが発生したことを示す情報のデータ値と前記第２の制御回路が前記通常データの書込みが発生したことを示す情報を検出するための判定値の組を、前記通常データ記憶回路及び前記アクセス保証データ記憶回路の複数のアドレス領域毎に個別に設定し切り換えることによって、該アドレス領域毎にその記憶内容を仮想的に瞬時にクリアする、
ことを特徴とする請求項３乃至６の何れか１項に記載のメモリ装置。
【請求項１１】
メモリの記憶内容を初期化する機構を有するメモリ装置であって、
通常データを記憶する通常データ記憶回路に対する通常データの書込み動作毎にカウントアップするカウンタ回路と、
前記通常データ記憶回路とは別に設けられ、該通常データ記憶回路におけるアドレスに１対１に対応するアドレスを指定可能であって、該各アドレスに、前記カウンタ回路のカウント値を記憶するカウント値記憶回路と、
前記通常データ記憶回路及び前記カウント値記憶回路とは別に設けられ、前記カウンタ回路のカウント値に１対１に対応するアドレスを指定可能であって、該各アドレスに、前記通常データ記憶回路に対して指定されるアドレスに対応するアドレスデータを記憶するアドレスデータ記憶回路と、
前記通常データ記憶回路の所望のアドレスへの前記通常データの書込み動作時に、該所望のアドレスに対応する前記カウント値記憶回路上のアドレスに、現在の前記カウンタ回路のカウント値を書き込む第３の制御回路と、
前記通常データ記憶回路の所望のアドレスへの前記通常データの書込み動作時に、前記アドレスデータ記憶回路上の前記現在のカウンタ回路のカウント値に対応するアドレスに、前記所望のアドレスに対応するアドレスデータを書き込む第４の制御回路と、
前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、現在の前記カウンタ回路のカウント値と、該所望のアドレスに対応する前記カウント値記憶回路上のアドレスに記憶されている前記カウント値と、該カウント値に対応する前記アドレスデータ記憶回路上のアドレスに記憶されている前記アドレスデータとに基づいて、前記所望のアドレスに対応する前記通常データ記憶回路上のアドレスの前記通常データを選択して出力するか否かを決定する第５の制御回路と、
を含むことを特徴とするメモリ装置。
【請求項１２】
前記第５の制御回路は、前記通常データ記憶回路の所望のアドレスからの前記通常データの読出し動作時に、現在の前記カウンタ回路のカウント値が０ではなく、かつ該所望のアドレスに対応する前記カウント値記憶回路上のアドレスに記憶されている前記カウント値が前記現在のカウンタ回路のカウント値未満であって、かつ前記記憶されているカウント値に対応する前記アドレスデータ記憶回路上のアドレスに記憶されている前記アドレスデータが示すアドレス前記所望のアドレスに一致する場合においてのみ、前記通常データ記憶回路から読み出された前記通常データを選択して出力する、
ことを特徴とする請求項１１に記載のメモリ装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、メモリの記憶内容の初期化技術に関する。
【０００２】
【従来の技術及び発明が解決しようとする課題】
マイクロプロセッサ（ＣＰＵ）を使用したシステムは、図１１に示されるように、プログラムＲＯＭ、ＲＡＭ、入出力制御装置（Ｉ／Ｏ）等の周辺回路が、アドレスバス、データバス、コントロールバス等の各種バスによって、ＣＰＵに接続されている。そして、システムの起動時又は各種処理の起動時等においては、初期化処理（イニシャライズ）が実行されることにより、これらの周辺回路内に残存しているデータが初期化され、この結果、誤った情報処理が防止される。
【０００３】
近年、各種装置の実現のためにほとんどと言っていいほどＣＰＵが使用され、最近特に、ＣＰＵの処理能力の向上に伴い、システムの規模が増大している。更に、大量の情報を扱うイメージ／画像処理においては、システムに搭載されるメモリの記憶容量が増大する傾向にあり、数十メガバイト程度の記憶容量はごく一般的になってきている。そして、搭載されるメモリの記憶容量が大きくなれば、システム立上げ時等におけるメモリの初期化処理に要する時間もかかり、システムの起動が完了するまでにかなりの時間を要する結果となる。
【０００４】
例えば、１クロックサイクルを２５０ナノ秒として、１６メガバイトの記憶容量を有するメモリの記憶内容を初期化するためには、バイトアクセス方式を用いた場合に約４．２秒、ワードアクセス方式を用いた場合に約２．１秒の時間が必要となる。
【０００５】
また、ソフトウエア処理によって初期化処理が実行される場合には、初期化に要するステップ数を加味した時間が必要となる。
スタンドアロンマシン等の、個別に存在するシステムでは、その起動に多少の時間がかかっても、周囲のシステム環境に与える影響は少ない。
【０００６】
しかし、ネットワーク又は他のシステムに接続されて各種サービスを提供等しているシステムでは、その起動に時間がかかると、上記サービスの提供等が中段され、場合によっては、ネットワークに接続された他のシステム又は上記サービスを要求した他のシステム等のシステムダウンを引き起こす要因にもなる。
【０００７】
そのような事態を回避するためにも、システムを迅速に起動する必要があり、最近の傾向としてその記憶容量が増大しているメモリの初期化処理を、速やかに完了することが課題となっている。
【０００８】
従来のＣＰＵを用いたシステムでは、図１１に示されるように、ＣＰＵとＲＯＭ、ＲＡＭ等のメモリとが接続され、初期化処理の実行時に、ＲＯＭ（プログラムＲＯＭ）に書き込まれているメモリの初期化ルーチンが呼び出され、ＣＰＵが直接、メモリの各記憶領域に“０”を書き込んでゆく方式が一般的である。
【０００９】
また、メモリが、ＣＰＵからアクセスされるアドレスに基づいて動作する機能とは別に、アドレスカウンタ、書込み制御回路等の特別なハードウエアを搭載して、初期化処理の実行時に、そのアドレスカウンタと書込み制御回路が起動されることによりメモリの各記憶領域に“０”が書き込まれてゆく、ハードウエア初期化方式も存在する。
【００１０】
初期化の目的は、ＣＰＵ又は周辺Ｉ／Ｏがメモリに記憶されているデータを最初に読み出したときに、そのデータの値がある特定の固定値（通常は“０”）になることを保証するためである。
【００１１】
しかし、上述した従来の、ＣＰＵがＲＯＭに記憶されている初期化ルーチンを実行する方式又は特別なハードウエアが初期化処理を実行する方式では、メモリの記憶容量に比例してその初期化に要する時間が増大してしまうという問題点を有している。即ち、メモリの記憶容量が２倍になれば、その初期化に要する時間も２倍になってしまう。
【００１２】
また、従来、ＲＯＭに記憶されているデータをＲＡＭに転送した後にそのＲＡＭ内のデータの書換えを可能とさせる、画像メモリ等のデータ書換えシステムにおいては、上記転送に要する時間だけ待ってから上記書換え処理が開始されるため、この場合にも、ＲＡＭの記憶容量に比例して、そのＲＡＭに対する書換え処理が実行可能な状態になるまでの時間が増大してしまうという問題点を有していた。
【００１３】
本発明の課題は、システムの起動時又は各種処理の起動時等において、メモリの記憶内容の初期化処理を不要とすることにある。
【００１４】
【課題を解決するための手段】
本発明の一の態様は、メモリの記憶内容を初期化するためのメモリ初期化制御方法を前提とする。
【００１５】
まず、メモリへのアクセス状態が記録される。
そして、その記録されたアクセス状態に従って、メモリに記録されたデータの出力と固定値の出力とが選択的に切り替えられる。
【００１６】
上述の発明の構成によれば、メモリに対して初期化処理を実行しなくても、内容が書き換わっていないメモリのアドレスからは、必ず固定値（例えば“０”）が出力されるように動作させることができ、仮想的なメモリクリアを実現できる。
【００１７】
本発明の他の態様として、以下の構成を有する。
本発明は、メモリの記憶内容を初期化する機構を有するメモリ装置を前提とする。
【００１８】
まず、アクセス保証データ記憶回路（第２ＤＲＡＭ２０３、４０８）は、通常データを記憶する通常データ記憶回路（第１ＤＲＡＭ２０２、４０７）とは別に設けられ、その通常データ記憶回路におけるアドレスに１対１に対応するアドレスを指定可能であって、その各アドレスに、その各アドレスに対応する通常データ記憶回路上のアドレスに対する通常データのアクセス状態を示すアクセス保証データを記憶する。
【００１９】
次に、第１の制御回路（保証ビット比較／ジェネレート回路２０４、リード・モディファイ・ライトタイミング生成回路４０９、リード時データレジスタ４２３、ライト時データレジスタ４２２、ナンド回路４３０、入力ゲート４３１）は、通常データ記憶回路の所望のアドレスへの通常データのアクセス動作時に、その所望のアドレスに対応するアクセス保証データ記憶回路上のアドレスに、アクセス動作に対応するアクセス保証データを設定する。この第１の制御回路は、例えば、通常データ記憶回路の所望のアドレスへの通常データの書込み動作時に、その所望のアドレスに対応するアクセス保証データ記憶回路上のアドレスに、通常データの書込みが発生したことを示す情報を含むアクセス保証データを設定する。また、この第１の制御回路は、通常データ記憶回路の所望のアドレスからの通常データの読出し動作時に、その所望のアドレスに対応するアクセス保証データ記憶回路上のアドレスに、通常データの読出しが発生したことを示す情報を含むアクセス保証データを更に設定するように構成することもできる。
【００２０】
そして、第２の制御回路（保証ビット比較／ジェネレート回路２０４、ラッチ４１６、ビットマスク回路４１７、４１８、ビット比較回路４１９、比較データレジスタ４２０、比較ビットレジスタ４２１、セレクタ４１３）は、通常データ記憶回路の所望のアドレスからの通常データの読出し動作時に、その所望のアドレスに対応するアクセス保証データ記憶回路上のアドレスに記憶されているアクセス保証データに基づいて、所望のアドレスに対応する通常データ記憶回路上のアドレスの通常データを選択して出力するか否かを決定する。より具体的には、第２の制御回路は、通常データ記憶回路の所望のアドレスからの通常データの読出し動作時に、その所望のアドレスに対応するアクセス保証データ記憶回路上のアドレスに記憶されているアクセス保証データが、通常データの書込みが発生したことを示す情報を含んでいる場合においてのみ、所望のアドレスに対応する通常データ記憶回路上のアドレスの通常データを選択して出力する。更に、第２の制御回路は、通常データ記憶回路の所望のアドレスからの通常データの読出し動作時に、その所望のアドレスに対応するアクセス保証データ記憶回路上のアドレスに記憶されているアクセス保証データが、通常データの書込みが発生したことを示す情報を含んでいない場合には、固定値のデータ、又はデフォルトデータ記憶回路に記憶されたデフォルトデータを選択して出力する。
【００２１】
上述の発明の構成によれば、通常データ記憶回路に対して初期化処理を実行しなくても、内容が書き換わっていない通常データ記憶回路のアドレスからは、必ず固定値（例えば“０”）が出力されるように動作させることができ、仮想的なメモリクリアを実現できる。
【００２２】
また、内容が書き換わっていない通常データ記憶回路のアドレスからは、固定値ではなく特定のＲＯＭ等からのデフォルト値が出力されるように構成されることにより、例えば、ＲＯＭのデータをデフォルトとすることができ、書換えが行われた記憶内容のみがＲＡＭから読み出される。これにより、例えば、ＲＯＭの内容をＲＡＭに転送する必要なく、書換え可能なＲＯＭ等が構築可能となる。
【００２３】
上述の発明の構成において、アクセス保証データ記憶回路はダイナミックランダムアクセスメモリであり、アクセス保証データに含まれる、通常データの書込みが発生したことを示す情報は、メモリ装置への電源の投入時に、アクセス保証データ記憶回路の各アドレスに出現することのないデータ値を有するように構成することができる。
【００２４】
この発明の構成により、安価なＤＲＡＭを用いて、初期化時間を大幅に短縮可能なメモリシステムを構成することが可能となる。
又は、アクセス保証データに含まれる、通常データの書込みが発生したことを示す情報は、その通常データに対するサムチェック演算又は巡回冗長符号演算の結果得られるサムチェックデータ又は巡回冗長符号データであり、第２の制御回路は、通常データ記憶回路の所望のアドレスからの通常データの読出し動作時に、その読み出された通常データに対してサムチェック演算又は巡回冗長符号演算を実行し、その演算結果が、所望のアドレスに対応するアクセス保証データ記憶回路上のアドレスに記憶されているアクセス保証データであるサムチェックデータ又は巡回冗長符号データと一致する場合においてのみ、通常データ記憶回路から読み出された通常データを選択して出力するように構成することができる。
【００２５】
この発明の構成によっても、安価なメモリ素子を用いて、初期化時間を大幅に短縮可能なメモリシステムを構成することが可能となる。
ここまでの発明の構成において、通常データの書込みが発生したことを示す情報のデータ値と第２の制御回路が通常データの書込みが発生したことを示す情報を検出するための判定値の組を、複数の組の中で切り換える制御データ切換え回路（比較データレジスタ４２０、比較ビットレジスタ４２１、リード時データレジスタ４２３、ライト時データレジスタ４２２）を更に含み、その制御データ切換え回路による切換え動作によって、通常データ記憶回路の全ての記憶内容を瞬時にクリアするように構成することができる。
【００２６】
この発明の構成により、通常データの書込みが発生したことを示す情報のデータ値と第２の制御回路が通常データの書込みが発生したことを示す情報を検出するための判定値の組を切り換える操作のみで、通常データ記憶回路の全記憶領域のメモリクリアが実現され、画像メモリ等における記憶内容の瞬時のクリア操作が可能となる。
【００２７】
或いは、通常データの書込みが発生したことを示す情報のデータ値と第２の制御回路が通常データの書込みが発生したことを示す情報を検出するための判定値の組を、通常データ記憶回路及びアクセス保証データ記憶回路の複数のアドレス領域毎に個別に設定し切り換えることによって、そのアドレス領域毎にその記憶内容を瞬時にクリアするように構成することができる。
【００２８】
この発明の構成により、通常データ記憶回路上の複数のアドレス領域毎に、その記憶内容の瞬時のクリア操作が可能となる。
本発明の更に他の態様として、以下の構成を有する。
【００２９】
まず、カウンタ回路（カウンタ８１２）は、通常データを記憶する通常データ記憶回路（第１ＲＡＭ８０１）に対する通常データの書込み動作毎にカウントアップする。
【００３０】
カウント値記憶回路（第２ＲＡＭ８０２）は、通常データ記憶回路とは別に設けられ、その通常データ記憶回路におけるアドレスに１対１に対応するアドレスを指定可能であって、その各アドレスに、カウンタ回路のカウント値を記憶する。
【００３１】
アドレスデータ記憶回路（第３ＲＡＭ８０３）は、通常データ記憶回路及びカウント値記憶回路とは別に設けられ、カウンタ回路のカウント値に１対１に対応するアドレスを指定可能であって、その各アドレスに、通常データ記憶回路に対して指定されるアドレスに対応するアドレスデータを記憶する。
【００３２】
第３の制御回路（入力ゲート８０７）は、通常データ記憶回路の所望のアドレスへの通常データの書込み動作時に、その所望のアドレスに対応するカウント値記憶回路上のアドレスに、現在のカウンタ回路のカウント値を書き込む。
【００３３】
第４の制御回路（セレクタ８１１、入力ゲート８０８）は、通常データ記憶回路の所望のアドレスへの通常データの書込み動作時に、アドレスデータ記憶回路上の現在のカウンタ回路のカウント値に対応するアドレスに、所望のアドレスに対応するアドレスデータを書き込む。
【００３４】
第５の制御回路（第１比較回路８１８、第２比較回路８１９、アンド回路８１７、セレクタ８１０）は、通常データ記憶回路の所望のアドレスからの通常データの読出し動作時に、現在のカウンタ回路のカウント値と、その所望のアドレスに対応するカウント値記憶回路上のアドレスに記憶されているカウント値と、そのカウント値に対応するアドレスデータ記憶回路上のアドレスに記憶されているアドレスデータとに基づいて、所望のアドレスに対応する通常データ記憶回路上のアドレスの通常データを選択して出力するか否かを決定する。より具体的には、第５の制御回路は、通常データ記憶回路の所望のアドレスからの通常データの読出し動作時に、現在のカウンタ回路のカウント値が０ではなく、かつその所望のアドレスに対応するカウント値記憶回路上のアドレスに記憶されているカウント値が現在のカウンタ回路のカウント値未満であって、かつ記憶されているカウント値に対応するアドレスデータ記憶回路上のアドレスに記憶されているアドレスデータが示すアドレス所望のアドレスに一致する場合においてのみ、通常データ記憶回路から読み出された通常データを選択して出力する、
以上の発明の構成によって、電源投入直後に記憶内容が全く保証されないような、ＤＲＡＭ以外の任意のメモリ素子においても、瞬時のメモリクリア操作が実現される。
【００３５】
【発明の実施の形態】
以下、図面を参照しながら、本発明の各実施の形態につき詳細に説明する。
＜第１の実施の形態＞
図１(a) は、第１の実施の形態において使用されるメモリＬＳＩチップの構成図である。
【００３６】
このメモリＬＳＩチップは、ダイナミックＲＡＭ（ＤＲＡＭ）チップである。このＤＲＡＭチップは、ローアドレス信号（ＲＡＳ）とコラムアドレス信号（ＣＡＳ）とが供給されることにより、特定の１ビットの記憶領域に対してリード動作又はライト動作を実行することができる。
【００３７】
ＤＲＡＭには、その外部からの入力データ又はその外部への出力データの状態とそれを構成するセルの内部データの保持状態とが、同じ状態であるＴｒｕｅセルと、反転している状態であるＮｏｔセルとがある。
【００３８】
ＤＲＡＭの品種によりこの２種類のセルの並び方異なるが、一般にＤＲＡＭは規則的に配置されているため、電源オン時においてセルにチャージが無い状態であるときには、ＴｒｕｅセルとＮｏｔセルの並びにより、図１(a) に示されるように、“０”が出力されるアドレス領域と“１”が出力されるアドレス領域が存在する。
【００３９】
そこで、本発明の第１の実施の形態では、図１(b) に示されるように、上述の特性を有するＤＲＡＭチップが３チップ並べられ、例えば３ビットを１アクセス単位（１アドレス）とする特別なメモリ素子が構成される。
【００４０】
このメモリ素子の特徴として、電源投入時には、図１(a) で説明したＤＲＡＭチップの特性により、図１(b) に示されるように構成されたメモリ素子の各アドレスの３ビットデータは、必ず“０００”又は“１１１”の何れかとなる。
【００４１】
図２は、上述の特別なメモリ素子を使用した本発明の第１の実施の形態の原理構成図である。
図２において、第２ＤＲＡＭ２０３が、図１(b) に示される特別なメモリ素子に対応し、各アドレスには、３ビットデータ（以下、保証ビットデータという）が記憶される。
【００４２】
第１ＤＲＡＭ２０２には、通常データが記憶され、この各アドレスは、第２ＤＲＡＭ２０３の各アドレスに１対１に対応している。
本発明の第１の実施の形態では、第１ＤＲＡＭ２０２の所望のアドレスに通常データが新たに書き込まれた場合に、第２ＤＲＡＭ２０３の上記アドレスに対応するアドレスに記憶される保証ビットデータの値が、書込済みを示す値にセットされる。図１を用いて前述したように、第２ＤＲＡＭ２０３の各アドレスに記憶される保証ビットデータは、電源投入直後は、必ず“０００”又は“１１１”の何れかとなるため、上述の書込済を示す値はこれらの値以外の値に設定される（具体例については図３を用いて後述する）。以後、第１ＤＲＡＭ２０２の所望のアドレスから通常データが読み出される場合に、そのアドレスに対応する第２ＤＲＡＭ２０３のアドレスに記憶されている保証ビットデータの値が書込済みを示している場合に、上記第１ＤＲＡＭ２０２から読み出された通常データがリードデータとしてデータバス２０７に出力され、上記保証ビットデータの値が書込済みを示していない場合には、強制的に固定値“０”がリードデータとしてデータバス２０７に出力される。
【００４３】
このようにして、第１ＤＲＡＭ２０２に対して初期化処理を実行しなくても、内容が書き換わっていない第１ＤＲＡＭ２０２のアドレスからは、必ず固定値“０”が出力されることになり、仮想的なメモリクリアが実現される。これが、本発明に関連する特徴である。
【００４４】
以下に、本発明の第１の実施の形態の、より詳細な動作について説明する。
今、特には図示しないＣＰＵが、アドレスバス２０６及びデータバス２０７に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータ及び通常データであるライトデータをそれぞれ出力すると共に、ライトイネーブル信号２０８をアクティブにしてライト動作を指定する。この結果、上記アドレスデータがアドレスバス２０６から第１ＤＲＡＭ２０２に入力すると共に、上記ライトデータがデータドライバ２０１（ライトイネーブル信号２０８がアクティブになると動作する）を介して第１ＤＲＡＭ２０２に入力する。これにより、上記アドレスデータに対応する第１ＤＲＡＭ２０２のアドレスに、ライトデータが書き込まれる。
【００４５】
これと同時に、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することにより、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスが指定される。
【００４６】
保証ビット比較／ジェネレート回路２０４は、第１の制御状態において、ライトイネーブル信号２０８がアクティブである場合に、第２ＤＲＡＭ２０３の上記アドレスに対して、図３(a) の左列として示される設定データ“ｎ０１”を書き込む。ここで、“ｎ”は、それが指定されているビット（この場合は、ビットｂ２）に対して何も書き込まれないことを示している。この結果、第２ＤＲＡＭ２０３の上記アドレスに記憶される保証ビットデータのうち、ビットｂ１が“０”に、またビットｂ０（最下位ビット）が“１”に変更され、ビットｂ２（最上位ビット）は元の値が残される。
【００４７】
上記第１の制御状態におけるライト動作時の保証ビットデータ制御動作によって、図３(b) の(1) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が初期状態“０００”である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“００１”に変化する。
【００４８】
また、図３(b) の(2) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が初期値状態“１１１”である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“１０１”に変化する。
【００４９】
また、図３(b) の(3) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が今までライト動作のみが実行されていた後の状態“００１”（図３(b) の(1) 又は(3) 自身）である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“００１”を維持する。
【００５０】
また、図３(b) の(4) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が今までライト動作のみが実行されていた後の状態又は既にライト動作とリード動作とが実行された後の状態であってその値が“１０１”である場合に（図３(b) の(2) 又は(4) 自身又は後述する(5) 、或いは、後述する図３(c) の(4) 又は(5) ）、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“１０１”を維持する。
【００５１】
更に、図３(b) の(5) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が今までリード動作のみが実行されていた後の状態“１００”（後述する図３(c) の(1) 又は(2) 又は(3) ）である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“１０１”に変化する。
【００５２】
図３(b) の(6) については後述する。
一方、特には図示しないＣＰＵが、アドレスバス２０６に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータを出力すると共に、ライトイネーブル信号２０８をインアクティブにしてリード動作を指定すると、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することにより、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスが指定される。
【００５３】
保証ビット比較／ジェネレート回路２０４は、第１の制御状態において、ライトイネーブル信号２０８がインアクティブである場合に、第２ＤＲＡＭ２０３の上記アドレスに対して、図３(a) の右列として示される設定データ“１０ｎ”を書き込む。この結果、第２ＤＲＡＭ２０３の上記アドレスに記憶される保証ビットデータのうち、ビットｂ２が“１”に、またビットｂ１が“０”に変更され、ビットｂ０は元の値が残される。
【００５４】
上記第１の制御状態におけるリード動作時の保証ビットデータ制御動作によって、図３(c) の(1) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が初期状態“０００”である場合に、そのアドレスに対してリード動作が実行されると、その保証ビットデータの値は“１００”に変化する。
【００５５】
また、図３(c) の(2) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が初期値状態“１１１”である場合には、そのアドレスに対してリード動作が実行された場合に、例外的にその保証ビットデータの値は“１００”に変化させられる。これを実現するために、ラッチ４１６の３ビットの出力値とライトイネーブル信号ＷＥとを入力とするナンド（ＮＡＮＤ）回路４３０と、ナンド回路４３０の出力によって制御されるゲート回路４３１とが設けられている。ナアンド回路４３０は、ラッチ４１６にラッチされている第２ＤＲＡＭ４０８における現在の保証ビットデータの値がオール“１”で、かつリード動作時においてライトイネーブル信号ＷＥがインアクティブ（ハイレベル＝“１”）である場合においてのみ、“０”を出力する。ゲート回路４３１は、ナンド回路４３０の出力が“１”のときは、リード時データレジスタ４２３の出力値をそのまま通過させ、ナンド回路４３０の出力が“０”のときは、リード時データレジスタ４２３の出力値のうちビットｂ０（最下位ビット）を“０”にして出力する。この結果、第２ＤＲＡＭ４０８の上記アドレスには、値“１００”を有する保証ビットデータが書き込まれる。
【００５６】
次に、図３(c) の(3) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が今までリード動作のみが実行されていた後の状態“１００”（図３(c) の(1) 又は(2) 又は(3) 自身）である場合に、そのアドレスに対してリード動作が実行されると、その保証ビットデータの値は“１００”を維持する。
【００５７】
また、図３(c) の(4) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が今までライト動作のみが実行されていた後の状態“００１”（図３(b) の(1) 又は(3) ）である場合に、そのアドレスに対しライト動作が実行されると、その保証ビットデータの値は“１０１”に変化する。
【００５８】
更に図３(c) の(5) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が今までライト動作のみが実行されていた後の状態又は既にライト動作とリード動作とが実行された後の状態であってその値が“１０１”である場合に（図３(b) の(2) 又は(4) 又は(5) 、或いは、図３(c) の(4) 又は(5) 自身）、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“１０１”を維持する。
【００５９】
図３(c) の(6) については後述する。
以上説明した第１の制御状態のもとでのライト動作時及びリード動作時の保証ビットデータ制御動作の詳細からわかるように、第１ＤＲＡＭ２０２の所望のアドレスに対して通常データのライト動作が実行されると、そのアドレスに対応する第２ＤＲＡＭ２０３のアドレスに記憶される保証ビットデータの内容は、図３(b) の(1) 〜(6) 或いは図３(c) の(4) 又は(5) に示されるように、その下位２ビット（ビットｂ１とｂ０）が必ず“０１”に変化し、逆に、保証ビットデータの下位２ビットが“０１”である場合には、その保証ビットデータが記憶されるアドレスに対応する第１ＤＲＡＭ２０２のアドレスに対して、必ずライト動作が実行されてその内容が書き換わっていることがわかる。
【００６０】
以上の事実に基づいて、第１の制御状態において、保証ビット比較／ジェネレート回路２０４及びデータセレクタ２０５は、以下に説明する制御動作を実行する。
【００６１】
即ち、特には図示しないＣＰＵが、アドレスバス２０６に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータを出力すると共に、ライトイネーブル信号２０８をインアクティブにしてリード動作を指定すると、上記アドレスデータがアドレスバス２０６から第１ＤＲＡＭ２０２に入力することにより、上記アドレスデータに対応する第１ＤＲＡＭ２０２のアドレスから、リードデータが読み出される。このリードデータは、データセレクタ２０５に入力する。
【００６２】
これと同時に、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することにより、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスから保証ビット比較／ジェネレート回路２０４に、保証ビットデータが読み出される。
【００６３】
第１の制御状態において、保証ビット比較／ジェネレート回路２０４は、ライトイネーブル信号２０８がインアクティブである場合に、上記読み出された保証ビットデータのうち下位２ビット（ビットｂ１とｂ０）が“０１”であるか否かを判定する。
【００６４】
その結果、上記読み出された保証ビットデータのうち下位２ビットが“０１”である場合には、保証ビット比較／ジェネレート回路２０４はデータセレクタ２０５に対して、第１ＤＲＡＭ２０２から読み出されたリードデータを選択してデータバス２０７に出力させる。
【００６５】
逆に、上記読み出された保証ビットデータのうち下位２ビットが“０１”でない場合は、保証ビット比較／ジェネレート回路２０４はデータセレクタ２０５に対して、固定値“０”をリードデータとしてデータバス２０７に出力させる。
【００６６】
このようにして、第１ＤＲＡＭ２０２に対して初期化処理を実行しなくても、内容が書き換わっていない第１ＤＲＡＭ２０２のアドレスからは、必ず固定値“０”が出力されることになり、仮想的なメモリクリアが実現される。
【００６７】
次に、図２に示されるメモリが画像処理等において使用される画像メモリである場合の使用例について説明する。
今、上述の第１の制御状態のもとで、例えば第１ＤＲＡＭ２０２の全アドレスに対して画面走査処理等のリード処理が実行された後、その全記憶内容がクリア（画面クリア）される場合には、特には図示しないＣＰＵから保証ビット比較／ジェネレート回路２０４に対し、次のような第２の制御状態が設定される。
【００６８】
まず、特には図示しないＣＰＵが、アドレスバス２０６及びデータバス２０７に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータ及びライトデータを出力すると共に、ライトイネーブル信号２０８をアクティブにしてライト動作を指定すると、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することによって、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスが指定される。
【００６９】
保証ビット比較／ジェネレート回路２０４は、第２の制御状態において、ライトイネーブル信号２０８がアクティブである場合に、第２ＤＲＡＭ２０３の上記アドレスに対して、図３(d) の左列として示される設定データ“ｎ１ｎ”を書き込む。この結果、第２ＤＲＡＭ２０３の上記アドレスに記憶される保証ビットデータのうち、ビットｂ１が“１”に変更され、ビットｂ２とｂ０は元の値が残される。
【００７０】
ここで、前述したように例えば第１ＤＲＡＭ２０２の全アドレスに対して画面走査処理等のリード処理が実行された後は、第２ＤＲＡＭ２０３の全てのアドレスに記憶されている全ての保証ビットデータの内容は、図３(c) に示されるように、“１００”又は“１０１”の何れかの状態になっている。
【００７１】
今、上記第２の制御状態におけるライト動作時の保証ビットデータ制御動作によって、図３(e) の(1) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第１の制御状態から移行した直後の初期状態“１００”である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“１１０”に変化する。
【００７２】
また図３(e) の(2) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第１の制御状態から移行した直後の初期値状態“１０１”である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“１１１”に変化する。
【００７３】
また、図３(e) の(3) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第２の制御状態に移行した後に今までライト動作のみが実行されていた後の状態“１１０”（図３(e) の(1) 又は(3) 自身）である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“１１０”を維持する。
【００７４】
また図３(e) の(4) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第２の制御状態に移行した後にやはり今までライト動作のみが実行されていた後の状態“１１１”（図３(e) の(2) 又は(4) 自身）である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“１１１”を維持する。
【００７５】
また、図３(e) の(5) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第２の制御状態に移行した後に今までリード動作のみが実行されていた後の状態“０００”（後述する図３(f) の(1) 又は(2) 又は(3) ）である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“０１０”に変化する。
【００７６】
更に、図３(e) の(6) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が既にライト動作とリード動作とが実行された後の状態“０１０”である場合に（図３(e) の(5) 又は(6) 自身、或いは、図３(f) の(4) 又は(5) 又は(6) ）、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“０１０”を維持する。
【００７７】
一方、特には図示しないＣＰＵが、アドレスバス２０６に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータを出力すると共に、ライトイネーブル信号２０８をインアクティブにしてリード動作を指定すると、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することにより、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスが指定される。
【００７８】
保証ビット比較／ジェネレート回路２０４は、第２の制御状態において、ライトイネーブル信号２０８がインアクティブである場合に、第２ＤＲＡＭ２０３の上記アドレスに対して、図３(d) の右列として示される設定データ“０ｎ０”を書き込む。この結果、第２ＤＲＡＭ２０３の上記アドレスに記憶される保証ビットデータのうち、ビットｂ２とｂ０が共に“０”に変更され、ビットｂ１は元の値が残される。
【００７９】
上述の第２の制御状態におけるリード動作時の保証ビットデータ制御動作によって、図３(f) の(1) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第１の制御状態から移行した直後の初期状態“１００”である場合に、そのアドレスに対してリード動作が実行されると、その保証ビットデータの値は“０００”に変化する。
【００８０】
また図３(f) の(2) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第１の制御状態から移行した直後の初期値状態“１０１”である場合に、そのアドレスに対してリード動作が実行されると、その保証ビットデータの値はやはり“０００”に変化する。
【００８１】
また、図３(f) の(3) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第２の制御状態に移行した後に今までリード動作のみが実行されていた後の状態“０００”（図３(f) の(1) 又は(2) 又は(3) 自身）である場合に、そのアドレスに対してリード動作が実行されると、その保証ビットデータの値は“０００”を維持する。
【００８２】
また、図３(f) の(4) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第２の制御状態に移行した後に今までライト動作のみが実行されていた後の状態“１１０”（図３(e) の(1) 又は(3) ）である場合に、そのアドレスに対しライト動作が実行されると、その保証ビットデータの値は“０１０”に変化する。
【００８３】
更に、図３(f) の(5) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が第２の制御状態に移行した後にやはり今までライト動作のみが実行されていた後の状態“１１１”（図３(e) の(2) 又は(4) ）である場合に、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“０１０”に変化する。
【００８４】
更に図３(f) の(6) に示されるように、第２ＤＲＡＭ２０３の所望のアドレスの保証ビットデータの内容が既にライト動作とリード動作とが実行された後の状態“０１０”である場合に（図３(e) の(5) 又は(6) 、或いは、図３(f) の(4) 又は(5) 又は(6) 自身）、そのアドレスに対してライト動作が実行されると、その保証ビットデータの値は“０１０”を維持する。
【００８５】
以上説明した第２の制御状態のもとでのライト動作時及びリード動作時の保証ビットデータ制御動作の詳細からわかるように、第１ＤＲＡＭ２０２の所望のアドレスに対して通常データのライト動作が実行されると、そのアドレスに対応する第２ＤＲＡＭ２０３のアドレスに記憶される保証ビットデータの内容は、図３(e) の(1) 〜(6) 或いは図３(f) の(4) 〜(6) に示されるように、ビットｂ１が必ず“１”に変化し、逆に、保証ビットデータのうちのビットｂ１が“１”である場合には、その保証ビットデータが記憶されるアドレスに対応する第１ＤＲＡＭ２０２のアドレスに対して、必ずライト動作が実行されてその内容が書き換わっていることがわかる。
【００８６】
以上の事実に基づいて、第２の制御状態において、保証ビット比較／ジェネレート回路２０４及びデータセレクタ２０５は、以下に説明する制御動作を実行する。
【００８７】
即ち、特には図示しないＣＰＵが、アドレスバス２０６に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータを出力すると共に、ライトイネーブル信号２０８をインアクティブにしてリード動作を指定すると、上記アドレスデータがアドレスバス２０６から第１ＤＲＡＭ２０２に入力することにより、上記アドレスデータに対応する第１ＤＲＡＭ２０２のアドレスから、リードデータが読み出される。このリードデータは、データセレクタ２０５に入力する。
【００８８】
これと同時に、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することにより、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスから保証ビット比較／ジェネレート回路２０４に、保証ビットデータが読み出される。
【００８９】
第２の制御状態において、保証ビット比較／ジェネレート回路２０４は、ライトイネーブル信号２０８がインアクティブである場合に、上記読み出された保証ビットデータのうちビットｂ１が“１”であるか否かを判定する。
【００９０】
その結果、上記読み出された保証ビットデータのうちのビットｂ１が“１”である場合には、保証ビット比較／ジェネレート回路２０４はデータセレクタ２０５に対して、第１ＤＲＡＭ２０２から読み出されたリードデータを選択してデータバス２０７に出力させる。
【００９１】
逆に、上記読み出された保証ビットデータのうちのビットｂ１が“１”でない場合は、保証ビット比較／ジェネレート回路２０４はデータセレクタ２０５に対して、固定値“０”をリードデータとしてデータバス２０７に出力させる。
【００９２】
このようにして、第１の制御状態のもとで例えば第１ＤＲＡＭ２０２の全アドレスに対して画面走査処理等のリード処理が実行された後に、特には図示しないＣＰＵから保証ビット比較／ジェネレート回路２０４に対して、第２の制御状態が設定されることによって、第１ＤＲＡＭ２０２に対して改めてメモリクリア処理を実行しなくても、その全内容を仮想的に瞬時にクリアすることができる。
【００９３】
続いて、上述の第２の制御状態のもとで、例えば第１ＤＲＡＭ２０２の全アドレスに対して画面走査処理等のリード処理が実行された後、その全記憶内容が再びクリア（画面クリア）される場合には、特には図示しないＣＰＵによって、保証ビット比較／ジェネレート回路２０４での制御状態が、上述した第２の制御状態から前述した第１の制御状態に再び切り替えられる。
【００９４】
この切替えの直後に、特には図示しないＣＰＵが、アドレスバス２０６に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータを出力すると共に、ライトイネーブル信号２０８をインアクティブにしてリード動作を指定すると、上記アドレスデータがアドレスバス２０６から第１ＤＲＡＭ２０２に入力することによって、上記アドレスデータに対応する第１ＤＲＡＭ２０２のアドレスから、リードデータが読み出される。このリードデータは、データセレクタ２０５に入力する。
【００９５】
これと同時に、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することにより、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスから保証ビット比較／ジェネレート回路２０４に、保証ビットデータが読み出される。この保証ビットデータは、第２の制御状態から移行した後の初期状態“０１０”を示している。
【００９６】
前述したように、第１の制御状態においては、保証ビット比較／ジェネレート回路２０４は、ライトイネーブル信号２０８がインアクティブである場合に、上述の読み出された保証ビットデータのうち下位２ビット（ビットｂ１とｂ０）が“０１”であるか否かを判定する。
【００９７】
その結果、上述の、第２の制御状態から移行した後の保証ビットデータの初期状態“０１０”において、その下位２ビットは“０１”ではない。従って、保証ビット比較／ジェネレート回路２０４はデータセレクタ２０５に対して、固定値“０”をリードデータとしてデータバス２０７に出力させる。
【００９８】
このようにして、第２の制御状態のもとで例えば第１ＤＲＡＭ２０２の全アドレスに対し画面走査処理等のリード処理が実行された後に、特には図示しないＣＰＵから保証ビット比較／ジェネレート回路２０４に対して、再び第１の制御状態が設定されることにより、第１ＤＲＡＭ２０２に対して改めてメモリクリア処理を実行しなくても、その全内容を仮想的に瞬時にクリアすることができる。
【００９９】
続いて、以上説明した本発明の第１の実施の形態の機能を実現する具体的な実施例について、図４の回路構成図と図５及び図６のタイミングチャートに基づいて説明する。
【０１００】
なお、図４〜図６の説明では、全ての信号は、それがローレベルのときにアクティブ状態を示し、それがハイレベルのときにインアクティブ状態を示すものとする。即ち、全ての回路は、負論理に従って動作する。
【０１０１】
図４において、第１ＤＲＡＭ４０７は、図２の第１ＤＲＡＭ２０２に対応し、通常データを記憶する。第１ＤＲＡＭ４０７は、Ｌｏｗ側８ビット＋Ｈｉｇｈ側８ビットのデータ部と、それぞれに対応した１ビットずつ（１ビット×２）のパリティビット部とから構成される。
【０１０２】
また図４において、第２ＤＲＡＭ４０８は、図２の第２ＤＲＡＭ２０３に対応し、保証ビットデータを記憶する。第２ＤＲＡＭ２０３は、Ｌｏｗ側８ビットのデータ部とＨｉｇｈ側８ビットのデータ部のそれぞれに対応した３ビットずつの保証ビットデータ部（３ビット×２）から構成される。従って、この構成では、Ｌｏｗ側８ビットのデータ部とＨｉｇｈ側８ビットのデータ部に対して個別に、メモリクリア処理を実行することが可能である。
【０１０３】
また、図４において、セレクタ４１３及びラッチ４１５は、図２のデータセレクタ２０５に対応する。
更に、図４において、リード・モディファイ・ライトタイミング生成回路４０９、ラッチ４１６、ビットマスク回路４１７、４１８、ビット比較回路４１９、比較データレジスタ４２０、比較ビットレジスタ４２１、ライト時データレジスタ４２２、リード時データレジスタ４２３、及びオア回路４２８は、図２の保証ビット比較／ジェネレート回路２０４に対応する。
リード動作時における実施例の詳細動作
まず、入力ゲート４０１は、常にアクティブ状態（ローレベル：０Ｖ（ボルト））のイネーブル信号ＥＮを与えられており、特には図示しないクロック発生回路からのクロックＣＬＫ（Ｃｌｏｃｋ：図５(a) 、図６(a) ）と、特には図示しないＣＰＵからのメモリリード信号ＲＤ（メモリＲｅａｄ：図５(d) 、図６(d) ）及びメモリライト信号（メモリＷｒｉｔｅ：図５(e) 、図６(e) ）を常に入力している。
【０１０４】
タイミング発生回路４０６及びリード・モディファイ・ライトタイミング生成回路４０９は、入力ゲート４０１を介して入力するクロックＣＬＫに同期して動作する。
【０１０５】
特には図示しないＣＰＵにおいて、リード命令が実行されると、まず、アドレスデータがアドレスバス４２４に出力される（図５(b) のt1）。
入力ゲート４０２は、常にアクティブ状態（ローレベル：０Ｖ）のイネーブル信号ＥＮを与えられており、アドレスバス２０６上のアドレスデータを常に入力している。
【０１０６】
入力ゲート４０２の出力側に配置されるアドレスデコーダ（アドレスＤＥＣ）４１０は、アドレスバス４２４に出力されたアドレスデータをデコードした結果、そのデコードされたアドレスがそのアドレスデコーダ自身が含まれるメモリ装置宛てのものである場合には、タイミング発生回路４０６に出力されるチップセレクト信号ＣＳを、アクティブにする（図５(f) のt2）。
【０１０７】
タイミング発生回路４０６は、チップセレクト信号ＣＳがアクティブになると、入力ゲート４０１を介して入力するクロックＣＬＫが最初にハイレベルからローレベルになるのに同期して、１クロックサイクルの間、セレクタ４１２に供給されるアドレス選択信号ＡＤＳＥＬをアクティブとする。この結果、アドレスバス４２４にアドレスが出力されてから最初の１クロックサイクルの間は、アドレス選択信号ＡＤＳＥＬがインアクティブとなることにより（図５(k) のt1〜t4）、セレクタ４１２は、入力ゲート４０２及び後述するセレクタ４１１を介してアドレスバス４２４から入力するアドレスデータの上位９ビットからなるローアドレスデータ（ローＡＤＲ）を選択し、それを第１ＤＲＡＭ４０７に出力する（図５(l) 参照）。また、アドレスバス４２４にアドレスが出力されてから次の１クロックサイクルの間は、アドレス選択信号ＡＤＳＥＬがアクティブとなることにより（図５(k) のt4〜t9）、セレクタ４１２は、上記アドレスデータの下位９ビットからなるコラムアドレスデータ（コラムＡＤＲ）を選択し、それを第１ＤＲＡＭ４０７に出力する（図５(l) 参照）。
【０１０８】
上記動作と並行して、タイミング発生回路４０６は、チップセレクト信号ＣＳがアクティブになった後、クロックＣＬＫが最初にローレベルからハイレベルになるのに同期して、ローアドレス信号ＲＡＳをアクティブにし（図５(i) のt3）、クロックＣＬＫが次にローレベルからハイレベルになるのに同期して、コラムアドレス信号ＣＡＳをアクティブにする（図５(j) のt6）。
【０１０９】
この結果、第１ＤＲＡＭ４０７は、ローアドレス信号ＲＡＳがアクティブになるタイミング（図５(i) のt3）において、セレクタ４１２から出力されているローアドレスデータ（図５(l) ）を取り込み、それに続いてコラムアドレス信号ＣＡＳがアクティブになるタイミング（図５(j) のt6）において、セレクタ４１２から出力されているコラムアドレスデータ（図５(l) ）を取り込む。
【０１１０】
また、アドレスデータがアドレスバス４２４に出力された後（図５(b) のt1）に、特には図示しないＣＰＵから入力ゲート４０１を介してタイミング発生回路４０６に入力しているメモリリード信号ＲＤ（メモリＲｅａｄ）がアクティブになる（図５(d) のt4）。
【０１１１】
タイミング発生回路４０６は、メモリリード信号ＲＤがアクティブになると、アウトプットイネーブル信号ＯＥをアクティブにする（図５(g) のt5）。この結果、第１ＤＲＡＭ４０７は、タイミングt1〜t9の間に入力したローアドレスデータ及びコラムアドレスデータ（図５(l) ）に対応するアドレスから、通常データを読み出す（図５(c) のt8）。
【０１１２】
第１ＤＲＡＭ４０７から読み出された通常データは、タイミング発生回路４０６から出力されるアウトプットイネーブル信号ＯＥがインアクティブになるタイミング（図５の(g) のt16 ）で、ラッチ４１５にラッチされる。
【０１１３】
タイミング発生回路４０６から出力されるアウトプットイネーブル信号ＯＥがインアクティブになった後、第１ＤＲＡＭ４０７は、通常データの出力を停止する（図５(c) のt19 ）。更に、特には図示しないＣＰＵから入力ゲート４０１を介してタイミング発生回路４０６に入力しているメモリリード信号ＲＤがインアクティブになった後（図５(d) のt18 ）、上記ＣＰＵからアドレスバス２０６へのアドレスデータの出力が停止するタイミング（図５(b) のt20 ）で、アドレスデコーダ４１０からタイミング発生回路４０６に出力されるチップセレクト信号ＣＳがインアクティブになり、上記ＣＰＵから第１ＤＲＡＭ４０７へのリード動作が完了する。
【０１１４】
上記第１ＤＲＡＭ４０７に対するリード動作と並行して、本発明に特に関連する、第２ＤＲＡＭ４０８に対する保証ビットデータ制御動作が実行される。
まず、第２ＤＲＡＭ４０８は、第１ＤＲＡＭ４０７の場合と同様に、タイミング発生回路４０６が出力するローアドレス信号ＲＡＳがアクティブになるタイミング（図５(i) のt3）において、セレクタ４１２から出力されているローアドレスデータ（図５(l) ）を取り込み、それに続いてコラムアドレス信号ＣＡＳがアクティブになるタイミング（図５(j) のt6）において、セレクタ４１２から出力されているコラムアドレスデータ（図５(l) ）を取り込む。
【０１１５】
またリード・モディファイ・ライトタイミング生成回路４０９は、タイミング発生回路４０６が出力するアウトプットイネーブル信号ＯＥがアクティブになると、アウトプットイネーブル信号ＯＥ２を１クロックサイクルだけアクティブにする（図５(m) のt7〜t11 ）。これに同期して、第２ＤＲＡＭ４０８は、タイミングt1〜t9の間に入力したローアドレスデータ及びコラムアドレスデータ（図５(l) ）に対応するアドレスから、保証ビットデータを読み出す（図５(o) のt10 〜t12 ）。
【０１１６】
第２ＤＲＡＭ４０８から読み出された保証ビットデータは、リード・モディファイ・ライトタイミング生成回路４０９から出力されるアウトプットイネーブル信号ＯＥ２がインアクティブになるタイミング（図５の(m) のt11 ）で、リード・モディファイ・ライトタイミング生成回路４０９からの制御によって、ラッチ４１６にラッチされる。
【０１１７】
リード・モディファイ・ライトタイミング生成回路４０９から第２ＤＲＡＭ４０８に出力されるアウトプットイネーブル信号ＯＥ２がインアクティブになることにより（図５(m) のt11 ）、第２ＤＲＡＭ４０８からの保証ビットデータの出力が停止する（図５(o) のt12 ）。
【０１１８】
ここで、タイミング発生回路４０６からは、メモリレディ信号ＲＤＹ（メモリＲｅａｄｙ）が、図５(q) に示されるタイミングで出力される。このメモリレディ信号ＲＤＹは、アクティブ状態のチップセレクト信号ＣＳによってイネーブルされる出力ゲート４０４を介して、特には図示しないＣＰＵに出力される。
【０１１９】
保証ビットデータがラッチ４１６にラッチされた後、ビット比較回路４１９がビット比較演算を実行する。ビット比較回路４１９は、前述した第１の制御状態においては、ラッチ４１６にラッチされた保証ビットデータのうち下位２ビットが“０１”であるか否かを判定し、前述した第２の制御状態においては、ラッチ４１６にラッチされた保証ビットデータのうちビットｂ１が“１”であるか否かを判定する。
【０１２０】
この判定を実現するために、以下の動作が実行される。
まず、比較データレジスタ４２０には、前述した第１の制御状態においては、特には図示しないＣＰＵからデータバス２０７を介して、比較データ“＊０１”が設定され、前述した第２の制御状態においては、特には図示しないＣＰＵからデータバス２０７を介して、比較データ“＊１＊”が設定される。なお、“＊”は、不定値を示す。
【０１２１】
上述の比較データレジスタ４２０への各比較データの設定動作は、特には図示しないＣＰＵが、ｉ／ｏＷｒｉｔｅ信号をアクティブ（ローレベル）にし、ＤＭＡイネーブル信号をインアクティブ（ハイレベル）にして、オア回路４２８の出力をアクティブ（ローレベル）にすることにより、データバス２０７を介して必要な比較データを転送する動作として実現される。
【０１２２】
また、比較ビットレジスタ４２１には、前述した第１の制御状態においては、特には図示しないＣＰＵからデータバス２０７を介して、ビットマスクデータ“０１１”が設定され、前述した第２の制御状態においては、特には図示しないＣＰＵからデータバス２０７を介して、ビットマスクデータ“０１０”が設定される。
【０１２３】
上述の比較ビットレジスタ４２１への各ビットマスクデータの設定動作は、比較データレジスタ４２０の場合と同様にして、特には図示しないＣＰＵが、ｉ／ｏＷｒｉｔｅ信号をアクティブにし、ＤＭＡイネーブル信号をインアクティブにして、オア回路４２８の出力をアクティブにすることにより、データバス２０７を介して必要なビットマスクデータを転送する動作として実現される。
【０１２４】
ビットマスク回路４１７は、ラッチ４１６にラッチされた保証ビットデータと、比較ビットレジスタ４２１に設定されているビットマスクデータとの間で、ビット単位のアンド演算を実行する。この結果、ビットマスク回路４１７からビット比較回路４１９へは、前述した第１の制御状態においてはデータ“０ｘｙ”が入力し、前述した第２の制御状態においてはデータ“０ｘ０”が入力する。ここで、ビット値“ｘ”は、ラッチ４１６にラッチされた保証ビットデータのビットｂ１の値であり、ビット値“ｙ”は、ラッチ４１６にラッチされた保証ビットデータのビットｂ０の値である。
【０１２５】
一方、ビットマスク回路４１８は、比較データレジスタ４２０に設定されている比較データと、比較ビットレジスタ４２１に設定されているビットマスクデータとの間で、ビット単位のアンド演算を実行する。この結果、ビットマスク回路４１８からビット比較回路４１９へは、前述した第１の制御状態においてはデータ“００１”が入力し、前述した第２の制御状態においてはデータ“０１０”が入力する。
【０１２６】
ビット比較回路４１９は、ビットマスク回路４１７から入力する３ビットデータと、ビットマスク回路４１８から入力する３ビットデータとの間で、ビット単位の排他論理和（ＥＯＲ）演算を実行し、更に、各ビットの演算結果を入力とするノア（ＮＯＲ）演算を実行する。
【０１２７】
即ち、前述した第１の制御状態においては、ビット比較回路４１９は、まず、ビットマスク回路４１７から入力する３ビットデータ“０ｘｙ”と、ビットマスク回路４１８から入力する３ビットデータ“００１”との間で、ビット単位の排他論理和演算を実行する。この結果、ビットｂ２（最上位ビット）の演算結果は必ず“０”となる。また、ビットｂ１及びｂ０（最下位ビット）の各演算結果は、ビット値“ｘ”が“０”でかつビット値“ｙ”が“１”のときに共に“０”となる。従って、この場合においてのみ、上記各ビットの演算結果を入力とするノア演算の結果が“１”となる。
【０１２８】
一方、前述した第２の制御状態においては、ビット比較回路４１９は、まず、ビットマスク回路４１７から入力する３ビットデータ“０ｘ０”と、ビットマスク回路４１８から入力する３ビットデータ“０１０”との間で、ビット単位の排他論理和演算を実行する。この結果、ビットｂ２（最上位ビット）及びビットｂ０（最下位ビット）の各演算結果は共に必ず“０”となる。また、ビットｂ１の演算結果は、ビット値“ｘ”が“１”のときに“０”となる。従って、この場合においてのみ、上記各ビットの演算結果を入力とするノア演算の結果が“１”となる。
【０１２９】
以上のようにして、ビット比較回路４１９は、前述した第１の制御状態においては、第２ＤＲＡＭ４０８からラッチ４１６に読み出された保証ビットデータのうち下位２ビットが“０１”であるか否か、また、前述した第２の制御状態においては、第２ＤＲＡＭ４０８からラッチ４１６に読み出された保証ビットデータのうちビットｂ１が“１”であるか否かを判定することができる。
【０１３０】
次に、セレクタ４１３は、ビット比較回路４１９の上記演算結果が“１”である場合には、ラッチ４１５にラッチされる第１ＤＲＡＭ４０７からのリードデータを選択し、一方、ビット比較回路４１９の上記演算結果が“０”である場合には、固定値“０”（ローレベル：０Ｖ）を選択して、その選択したデータを、出力ゲート４０５を介してデータバス２０７に出力する。出力ゲート４０５は、アドレスデコーダ４１０が出力するチップセレクト信号ＣＳがアクティブ（ローレベル）で、かつ入力ゲート４０１を介して入力するメモリリード信号ＲＤがアクティブ（ローレベル）である場合に、オア回路４２６の出力がアクティブ（ローレベル）になることによって、イネーブル状態にされる。
【０１３１】
このようにして、第１ＤＲＡＭ２０２に対して初期化処理を実行しなくても、内容が書き換わっていない第１ＤＲＡＭ２０２のアドレスからは、必ず固定値“０”が出力されることになり、仮想的なメモリクリアが実現される。
【０１３２】
次に、リード・モディファイ・ライトタイミング生成回路４０９は、アウトプットイネーブル信号ＯＥ２をインアクティブにしてから（図５(m) のt11 ）、１クロックサイクルが経過した後に、例えば２クロックサイクルの期間だけ、リード時データレジスタ４２３に対して供給しているリード時データイネーブル信号をアクティブにする（図５(p) のt13 〜t17 ）。
【０１３３】
この結果リード時データレジスタ４２３から、リード動作時における設定データ（前述した図３(a) 又は図３(d) の各右列として示される各設定データ）が、第２ＤＲＡＭ４０８に入力される（図５(o) のt14 以降）。
【０１３４】
リード・モディファイ・ライトタイミング生成回路４０９は、リード時データイネーブル信号をアクティブにしてから（図５(p) のt13 ）、１クロックサイクルが経過した後に、例えば１クロックサイクルの期間だけ、ライトイネーブル信号ＷＥ２をアクティブにする（図５(n) のt15 〜t16 ）。
【０１３５】
第２ＤＲＡＭ４０８は、上述のライトイネーブル信号ＷＥ２がインアクティブに戻るタイミングで（図５(n) のt16 ）、リード時データレジスタ４２３から入力する保証ビットデータを、タイミングt1〜t9の間に入力したローアドレスデータ及びコラムアドレスデータ（図５(l) ）に対応するアドレスに書き込む。
【０１３６】
リード・モディファイ・ライトタイミング生成回路４０９から出力されるリード時データイネーブル信号がインアクティブになった後、リード時データレジスタ４２３は保証ビットデータの出力を停止する（図５(o) のt17 ）。
【０１３７】
この結果、前述した図３(c) 又は(f) に示される、保証ビットデータのリード動作時の変更処理が、実現される。
ここで、特には図示しないＣＰＵは、前述した第１の制御状態を図４に示される構成を有するメモリに指定する場合には、ｉ／ｏＷｒｉｔｅ信号をアクティブ（ローレベル）にし、ＤＭＡイネーブル信号をインアクティブ（ハイレベル）にして、オア回路４２８の出力をアクティブ（ローレベル）にすることにより、データバス２０７を介してリード時データレジスタ４２３に、図３(a) の右列として示される設定データを転送する。
【０１３８】
同様にして、上記ＣＰＵは、前述した第２の制御状態を上記メモリに指定する場合には、ｉ／ｏＷｒｉｔｅ信号をアクティブにし、ＤＭＡイネーブル信号をインアクティブにして、オア回路４２８の出力をアクティブにすることにより、データバス２０７を介してリード時データレジスタ４２３に、図３(d) の右列として示される設定データを転送する。
【０１３９】
本発明には特には関連しないが、タイミング発生回路４０６は、通常のメモリアクセス時には、制御信号ＲＡＤにより、セレクタ４１１に対して、アドレスバス２０６から入力ゲート４０２を介して入力するアドレスデータを選択させている。そして、タイミング発生回路４０６は、一定時間毎、例えば１０マイクロ秒毎に、リフレッシュコントローラー４１４に対してリフレッシュタイミング信号ＲＴＭを出力すると共に、制御信号ＲＡＤにより、セレクタ４１１に対して、リフレッシュコントローラー４１４から出力されるアドレスデータを選択させる。これにより、第１ＤＲＡＭ４０７及び第２ＤＲＡＭ４０８に対するリフレッシュ動作が実行される。
ライト動作時における実施例の詳細動作
特には図示しないＣＰＵにおいて、ライト命令が実行されると、まず、アドレスデータがアドレスバス４２４に出力される。これ以後、第１ＤＲＡＭ４０７及び第２ＤＲＡＭ４０８に対するローアドレスデータとコラムアドレスデータの指定動作までは、前述したリード動作時の場合と同様である。この場合、図６の各タイミングT1〜T4、T5、及びT6は、それぞれ、図５の各タイミングt1〜t4、t6、及びt9に対応する。
【０１４０】
次に、図６(c) のタイミングT7において、特には図示しないＣＰＵによってデータバス２０７に、通常データであるライトデータが出力される。このライトデータは、入力ゲート４０３を介して入力される。入力ゲート４０３は、アドレスデコーダ４１０が出力するチップセレクト信号ＣＳがアクティブ（ローレベル）で、かつ入力ゲート４０１を介して入力するメモリリード信号ＲＤがインアクティブ（ハイレベル）である場合に、インバータ回路４２９の出力がアクティブ（ローレベル）となって、オア回路４２７の出力がアクティブ（ローレベル）になることによって、イネーブル状態にされる。
【０１４１】
更に、上記ＣＰＵから入力ゲート４０１を介してタイミング発生回路４０６に入力しているメモリライト信号ＷＲ（メモリＷｒｉｔｅ）がアクティブになる（図６(e) のT8）。
【０１４２】
タイミング発生回路４０６は、メモリライト信号ＷＲがアクティブになってから１クロックサイクル後に、１クロックサイクル期間だけ、ライトイネーブル信号ＷＥをアクティブにする（図６(h) のt11 〜t12 ）。この結果、第１ＤＲＡＭ４０７は、ライトイネーブル信号ＷＥがインアクティブに戻るタイミング（図６(h) のt12 ）において、タイミングT1〜T6の間に入力したローアドレスデータ及びコラムアドレスデータ（図６(l) ）に対応するアドレスに、データバス２０７から入力した通常データを書き込む（図６(c) のt12 ）。
【０１４３】
特には図示しないＣＰＵから入力ゲート４０１を介してタイミング発生回路４０６に入力しているメモリライト信号ＷＲとタイミング発生回路４０６から出力されるライトイネーブル信号ＷＥとが共にインアクティブになった後、上記ＣＰＵからアドレスバス２０６へのアドレスデータの出力が停止するタイミング（図６(b) のT15 ）で、アドレスデコーダ４１０からタイミング発生回路４０６に出力されるチップセレクト信号ＣＳがインアクティブになり、上記ＣＰＵから第１ＤＲＡＭ４０７へのライト動作が完了する。
【０１４４】
上記第１ＤＲＡＭ４０７に対するライト動作と並行して、本発明に特に関連する、第２ＤＲＡＭ４０８に対する保証ビットデータ制御動作が実行される。
まず、第２ＤＲＡＭ４０８は、第１ＤＲＡＭ４０７の場合と同様に、タイミング発生回路４０６が出力するローアドレス信号ＲＡＳがアクティブになるタイミング（図６(i) のT3）において、セレクタ４１２から出力されているローアドレスデータ（図６(l) ）を取り込み、それに続いてコラムアドレス信号ＣＡＳがアクティブになるタイミング（図６(j) のT6）において、セレクタ４１２から出力されているコラムアドレスデータ（図６(l) ）を取り込む。
【０１４５】
また、リード・モディファイ・ライトタイミング生成回路４０９は、タイミング発生回路４０６が出力するローアドレス信号ＲＡＳがアクティブになった後、図６(p) のタイミングT9から、例えば２クロックサイクルの期間だけ、ライト時データレジスタ４２２に対して供給しているライト時データイネーブル信号をアクティブにする（図６(p) のT9〜T13 ）。
【０１４６】
この結果ライト時データレジスタ４２２から、ライト動作時における設定データ（前述した図３(a) 又は図３(d) の各左列として示される各設定データ）が、第２ＤＲＡＭ４０８に入力される（図６(o) のT10 以降）。
【０１４７】
リード・モディファイ・ライトタイミング生成回路４０９は、タイミング発生回路４０６から出力されるライトイネーブル信号ＷＥに完全に同期させて、ライトイネーブル信号ＷＥ２をアクティブにする（図６(n) のT11 〜T12 ）。
【０１４８】
第２ＤＲＡＭ４０８は、上述のライトイネーブル信号ＷＥ２がインアクティブに戻るタイミングで（図６(n) のT12 ）、ライト時データレジスタ４２２から入力する保証ビットデータを、タイミングT1〜T6の間に入力したローアドレスデータ及びコラムアドレスデータ（図６(l) ）に対応するアドレスに書き込む。
【０１４９】
リード・モディファイ・ライトタイミング生成回路４０９から出力されるライト時データイネーブル信号がインアクティブになった後、ライト時データレジスタ４２２は保証ビットデータの出力を停止する（図６(o) のT14 ）。
【０１５０】
この結果、前述した図３(b) 又は(e) に示される、保証ビットデータのライト動作時の変更処理が、実現される。
ここで、特には図示しないＣＰＵは、前述した第１の制御状態を図４に示される構成を有するメモリに指定する場合には、ｉ／ｏＷｒｉｔｅ信号をアクティブ（ローレベル）にし、ＤＭＡイネーブル信号をインアクティブ（ハイレベル）にして、オア回路４２８の出力をアクティブ（ローレベル）にすることにより、データバス２０７を介してライト時データレジスタ４２２に、第３(a) の左列として示される設定データを転送する。
【０１５１】
同様にして、上記ＣＰＵは、前述した第２の制御状態を上記メモリに指定する場合には、ｉ／ｏＷｒｉｔｅ信号をアクティブにし、ＤＭＡイネーブル信号をインアクティブにして、オア回路４２８の出力をアクティブにすることにより、データバス２０７を介してライト時データレジスタ４２２に、第３(d) の左列として示される設定データを転送する。
＜第２の実施の形態＞
次に、本発明の第２の実施の形態について説明する。
【０１５２】
本発明の第２の実施の形態の原理構成は、本発明の第１の実施の形態における図１及び図２の原理構成と同様である。
但し、本発明の第２の実施の形態の構成が本発明の第１の実施の形態の構成と異なる点は、図２の第２ＤＲＡＭ４０８に記憶される保証ビットデータが、図３で説明したようなデータではなく、ＳＵＭチェックデータである点である。
【０１５３】
今、特には図示しないＣＰＵが、アドレスバス２０６及びデータバス２０７に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータ及び通常データであるライトデータをそれぞれ出力すると共に、ライトイネーブル信号２０８をアクティブにしてライト動作を指定する。この結果、上記アドレスデータがアドレスバス２０６から第１ＤＲＡＭ２０２に入力すると共に、上記ライトデータがデータドライバ２０１（ライトイネーブル信号２０８がアクティブになると動作する）を介して第１ＤＲＡＭ２０２に入力する。これにより、上記アドレスデータに対応する第１ＤＲＡＭ２０２のアドレスに、ライトデータが書き込まれる。
【０１５４】
これと同時に、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することにより、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスが指定される。
【０１５５】
ここまでの動作は、本発明の第１の実施の形態の場合と同様である。
保証ビット比較／ジェネレート回路２０４は、第１の制御状態において、ライトイネーブル信号２０８がアクティブである場合に、第１ＤＲＡＭ４０７に書き込まれるライトデータについて、第１の制御状態に対応する所定の基数を基準とするＳＵＭチェックデータを算出し、第２ＤＲＡＭ２０３の上記アドレスに対して、そのＳＵＭチェックデータを保証ビットデータとして書き込む。
【０１５６】
以上説明した第１の制御状態のもとでのライト動作時の保証ビットデータ制御動作からわかるように、第１ＤＲＡＭ２０２の所望のアドレスに対して通常データのライト動作が実行されると、そのアドレスに対応する第２ＤＲＡＭ２０３のアドレスに記憶される保証ビットデータの内容は、上記通常データに対応し第１の制御状態に対応する所定の基数を基準とする正しいＳＵＭチェック演算の結果を示す内容となっている。逆に、第１ＤＲＡＭ２０２の所望のアドレスに対して通常データのライト動作が一度も実行されていなければ、そのアドレスに対応する第２ＤＲＡＭ２０３のアドレスに記憶される保証ビットデータの内容は、正しいＳＵＭチェック演算の結果を示してはいない。
【０１５７】
以上の事実に基づいて、第１の制御状態において、保証ビット比較／ジェネレート回路２０４及びデータセレクタ２０５は、以下に説明する制御動作を実行する。
【０１５８】
即ち、特には図示しないＣＰＵが、アドレスバス２０６に第１ＤＲＡＭ２０２にアクセスするためのアドレスデータを出力すると共に、ライトイネーブル信号２０８をインアクティブにしてリード動作を指定すると、上記アドレスデータがアドレスバス２０６から第１ＤＲＡＭ２０２に入力することにより、上記アドレスデータに対応する第１ＤＲＡＭ２０２のアドレスから、リードデータが読み出される。このリードデータは、データセレクタ２０５に入力する。
【０１５９】
これと同時に、上記アドレスデータが第２ＤＲＡＭ２０３にも入力することにより、そのアドレスデータに対応する第２ＤＲＡＭ２０３のアドレスから保証ビット比較／ジェネレート回路２０４に、保証ビットデータが読み出される。
【０１６０】
第１の制御状態において、保証ビット比較／ジェネレート回路２０４は、ライトイネーブル信号２０８がインアクティブである場合に、第１ＤＲＡＭ４０７から出力されたリードデータに対してＳＵＭチェック演算を実行し、その演算結果を、第２ＤＲＡＭ４０８から読み出された保証ビットデータと比較する。
【０１６１】
その結果、上記ＳＵＭチェック演算の結果と第２ＤＲＡＭ４０８から読み出された保証ビットデータとが一致する場合には、保証ビット比較／ジェネレート回路２０４はデータセレクタ２０５に対して、第１ＤＲＡＭ２０２から読み出されたリードデータを選択してデータバス２０７に出力させる。
【０１６２】
逆に、上記ＳＵＭチェック演算の結果と第２ＤＲＡＭ４０８から読み出された保証ビットデータとが一致しない場合には、保証ビット比較／ジェネレート回路２０４はデータセレクタ２０５に対して、固定値“０”をリードデータとしてデータバス２０７に出力させる。
【０１６３】
このようにして、第１ＤＲＡＭ２０２に対して初期化処理を実行しなくても、内容が書き換わっていない第１ＤＲＡＭ２０２のアドレスからは、必ず固定値“０”が出力されることになり、仮想的なメモリクリアが実現される。
【０１６４】
今、上述の第１の制御状態のもとで、その全記憶内容をクリアする場合には、特には図示しないＣＰＵから保証ビット比較／ジェネレート回路２０４に対し、ＳＵＭチェック演算において用いられる基数として、第１の制御状態に対応する所定の基数とは異なる、第２の制御状態に対応する所定の基数が設定される。
【０１６５】
この結果、上記基数の切換え動作の直後に、第１ＤＲＡＭ４０７の各アドレスから通常データが読み出されるときには、第１ＤＲＡＭ４０７から出力されたリードデータに対して実行されたＳＵＭチェック演算の結果と、第２ＤＲＡＭ４０８から読み出された保証ビットデータとが一致しないため、全てのアドレスにおいて、データセレクタ２０５からは固定値“０”がリードデータとしてデータバス２０７に出力されることになる。
【０１６６】
このようにして、第１の制御状態のもとで例えば第１ＤＲＡＭ２０２の各記憶内容に対して画像処理等が実行された後に、特には図示しないＣＰＵから保証ビット比較／ジェネレート回路２０４に対して、第２の制御状態が設定されることによって、第１ＤＲＡＭ２０２に対して改めてメモリクリア処理を実行しなくても、その全内容を仮想的に瞬時にクリアすることができる。
【０１６７】
再び、全記憶内容がクリアされる場合には、特には図示しないＣＰＵから保証ビット比較／ジェネレート回路２０４に対し、ＳＵＭチェック演算において用いられる基数として、再び第１の制御状態に対応する所定の基数が設定される。
【０１６８】
続いて、以上説明した本発明の第２の実施の形態の機能を実現する具体的な実施例について、図７の回路構成図に基づいて説明する。
なお、図７の説明では、全ての信号は、それがローレベルのときにアクティブ状態を示し、それがハイレベルのときにインアクティブ状態を示すものとする。即ち、全ての回路は、負論理に従って動作する。
【０１６９】
また、図７において、本発明の第１の実施の形態の実施例における図４の回路構成図と同じ番号又は記号が付された部分は、本発明の第１の実施の形態の実施例の場合と同じ機能を有するものとする。
リード動作時における実施例の詳細動作
図７において、リード動作時における第１ＤＲＡＭ４０７に対するリード制御動作は、図４に示される本発明の第１の実施の形態の実施例の場合と全く同様である。
【０１７０】
その第１ＤＲＡＭ４０７に対するリード動作と並行して、本発明に特に関連する、第２ＤＲＡＭ４０８に対する保証ビットデータ制御動作が実行される。
まず、第２ＤＲＡＭ４０８は、第１ＤＲＡＭ４０７の場合と同様に、タイミング発生回路４０６が出力するローアドレス信号ＲＡＳがアクティブになるタイミング（図５(i) のt3を参照）において、セレクタ４１２から出力されているローアドレスデータ（図５(l) を参照）を取り込み、それに続いてコラムアドレス信号ＣＡＳがアクティブになるタイミング（図５(j) のt6を参照）において、セレクタ４１２から出力されているコラムアドレスデータ（図５(l) を参照）を取り込む。
【０１７１】
またリード・ライトタイミング生成回路７０８は、タイミング発生回路４０６が出力するアウトプットイネーブル信号ＯＥがアクティブになると、アウトプットイネーブル信号ＯＥ２を１クロックサイクルだけアクティブにする（図５(m) のt7〜t11 を参照）。これに同期して、第２ＤＲＡＭ４０８は、タイミングt1〜t9の間に入力したローアドレスデータ及びコラムアドレスデータ（図５(l) を参照）に対応するアドレスから、保証ビットデータを読み出す（図５(o) のt10 〜t12 を参照）。
【０１７２】
第２ＤＲＡＭ４０８から読み出された保証ビットデータは、リード・ライトタイミング生成回路７０８から出力されるアウトプットイネーブル信号ＯＥ２がインアクティブになるタイミング（図５の(m) のt11 を参照）で、リード・ライトタイミング生成回路７０８からの制御により、ラッチ７０１にラッチされる。
【０１７３】
ここで、リード動作時には、アドレスデコーダ４１０が出力するチップセレクト信号ＣＳがアクティブ（ローレベル）となり、かつ入力ゲート４０１を介して入力するメモリリード信号ＲＤがアクティブ（ローレベル）となって、オア回路４２６の出力がアクティブ（ローレベル）になることによって、セレクタ７０２が、ラッチ４１５にラッチされている第１ＤＲＡＭ４０７からのリードデータを選択する。
【０１７４】
この結果、ビット加算回路７０３は、上記リードデータのビットｂ０〜ｂ１５までの“１”の数を加算する。
続いて、減算回路７０５が、特には図示しないＣＰＵから基数レジスタ７０４に予め設定されている所定の基数から、ビット加算回路７０３が出力する加算結果を減算することにより、上記所定の基数を基準とするＳＵＭチェックデータを算出する。
【０１７５】
そして、ビット比較回路７０６は、ラッチ７０１にラッチされた保証ビットデータと、減算回路７０５が出力するＳＵＭチェックデータとが一致するか否かを判定し、上記２つのデータが一致する場合に判定結果“１”を出力し、そうでない場合に判定結果“０”を出力する。
【０１７６】
セレクタ４１３は、ビット比較回路７０６の上記判定結果が“１”である場合には、ラッチ４１５にラッチされる第１ＤＲＡＭ４０７からのリードデータを選択し、一方、ビット比較回路７０６の上記判定結果が“０”である場合には、固定値“０”（ローレベル：０Ｖ）を選択して、その選択したデータを、出力ゲート４０５を介してデータバス２０７に出力する。
【０１７７】
このようにして、第１ＤＲＡＭ２０２に対して初期化処理を実行しなくても、内容が書き換わっていない第１ＤＲＡＭ２０２のアドレスからは、必ず固定値“０”が出力されることになり、仮想的なメモリクリアが実現される。
ライト動作時における実施例の詳細動作
図７において、ライト動作時における第１ＤＲＡＭ４０７に対するライト制御動作は、図４に示される本発明の第１の実施の形態の実施例の場合と全く同様である。
【０１７８】
その第１ＤＲＡＭ４０７に対するライト動作と並行して、本発明に特に関連する、第２ＤＲＡＭ４０８に対する保証ビットデータ制御動作が実行される。
ライト動作時には、アドレスデコーダ４１０が出力するチップセレクト信号ＣＳがアクティブ（ローレベル）となり、かつ入力ゲート４０１を介して入力するメモリリード信号ＲＤがインアクティブ（ハイレベル）となり、その結果、オア回路４２６の出力がインアクティブ（ハイレベル）になることによって、セレクタ７０２が、データバス２０７から入力ゲート４０３を介して入力するライトデータを選択する。
【０１７９】
この結果、ビット加算回路７０３は、上記ライトデータのビットｂ０〜ｂ１５までの“１”の数を加算する。
続いて、減算回路７０５が、特には図示しないＣＰＵから基数レジスタ７０４に予め設定されている所定の基数から、ビット加算回路７０３が出力する加算結果を減算することにより、上記所定の基数を基準とするＳＵＭチェックデータを算出する。
【０１８０】
このＳＵＭチェックデータは、バッファ回路７０７に保持される。
リード・ライトタイミング生成回路７０８は、タイミング発生回路４０６が出力するローアドレス信号ＲＡＳがアクティブになった後に、バッファ回路７０７に対して供給しているデータイネーブル信号をアクティブにする（図６(p) のT9〜T13 を参照）。
【０１８１】
この結果、バッファ回路７０７から、第１ＤＲＡＭ４０７に対するライトデータに対応するＳＵＭチェックデータが、第２ＤＲＡＭ４０８に保証ビットデータとして入力される。
【０１８２】
リード・ライトタイミング生成回路７０８は、タイミング発生回路４０６から出力されるライトイネーブル信号ＷＥに完全に同期させて、ライトイネーブル信号ＷＥ２をアクティブにする（図６(n) のT11 〜T12 参照）。
【０１８３】
第２ＤＲＡＭ４０８は、上述のライトイネーブル信号ＷＥ２がインアクティブに戻るタイミングで（図６(n) のT12 を参照）、バッファ回路７０７から入力する保証ビットデータを、先に入力したローアドレスデータ及びコラムアドレスデータ（図６(l) を参照）に対応するアドレスに書き込む。
【０１８４】
ここで、特には図示しないＣＰＵは、前述した第１の制御状態を図７に示される構成を有するメモリに指定する場合には、ｉ／ｏＷｒｉｔｅ信号をアクティブ（ローレベル）にし、ＤＭＡイネーブル信号をインアクティブ（ハイレベル）にして、オア回路４２８の出力をアクティブ（ローレベル）にすることにより、データバス２０７を介して基数レジスタ７０４に、第１の制御状態に対応する所定の基数を転送する。
【０１８５】
同様にして、上記ＣＰＵは、前述した第２の制御状態を上記メモリに指定する場合には、ｉ／ｏＷｒｉｔｅ信号をアクティブにし、ＤＭＡイネーブル信号をインアクティブにして、オア回路４２８の出力をアクティブにすることにより、データバス２０７を介して基数レジスタ７０４に、第２の制御状態に対応する所定の基数を転送する。
【０１８６】
上述の構成において、第２ＤＲＡＭ４０８からの読出しデータを比較するためのＳＵＭチェックの結果がオール“０”又はオール“１”になっても、第１ＤＲＡＭ４０７から読み出されたデータが電源オン後に選択されないように、数ビットの余剰ビットを基数レジスタ７０４と第２ＤＲＡＭ４０８とビット比較回路７０６に設けるように構成することができる。そして、基数の設定時に、“１”又は“０”が偏らないビットデータが上記余剰ビットとして設定されることによって、演算が実行されない状態のままでビット比較回路７０６での比較動作や第２ＤＲＡＭ４０８への設定動作（ライト動作時のみ）が実行される。
【０１８７】
これにより、電源オン後やソフト処理後に基数の書換えのみで、メモリクリアを実施することができる。
＜第３の実施の形態＞
次に、本発明の第３の実施の形態について説明する。
【０１８８】
図８は、本発明の第３の実施の形態の機能を実現する具体的な実施例の回路構成図である。
なお、図８の説明では、全ての信号は、それがローレベルのときにアクティブ状態を示し、それがハイレベルのときにインアクティブ状態を示すものとする。即ち、全ての回路は、負論理に従って動作する。
【０１８９】
本発明の第３の実施の形態では、第１ＲＡＭ８０１が通常データを記憶し、また、第２ＲＡＭ８０２及び第３ＲＡＭ８０３に、それぞれ異なる種類の保証ビットデータが記憶される。この場合に、第１ＲＡＭ８０１の各アドレスは、第２ＲＡＭ８０２の各アドレスに１対１に対応している。また、第３ＲＡＭ８０３の各アドレスは、カウンタ８１２が出力可能な各カウンタ値に対応している。
【０１９０】
本発明の第３の実施の形態では、第１ＲＡＭ８０１、第２ＲＡＭ８０２、及び第３ＲＡＭ８０３は、ＤＲＡＭに限定されないことが特徴である。従って、図８の構成では、アドレス信号やその他の制御信号の供給機構は、簡略化して示されている。
ライト動作時における実施例の詳細動作
まず、カウンタ８１２は、電源投入時に、特には図示しないＣＰＵが、Ｉ／ＯＷｒｉｔｅ信号をアクティブ（ローレベル）にし、ＤＭＡイネーブル信号をインアクティブ（ハイレベル）にする結果、オア回路８１５の出力がアクティブ（ローレベル）となることによって、クリアされる。その後、このカウンタ８１２は、常にアクティブ状態（ローレベル：０Ｖ）のイネーブル信号ＥＮを与えられている入力ゲート８０６を介してライトイネーブル信号ＷＥとして入力するメモリライト信号（メモリＷｒｉｔｅ）がローレベルからハイレベルに変化するタイミングでカウントアップされる（図９のＡ）。即ち、第１ＲＡＭ８０１に対する通常データの書込みが１回発生する毎に、カウンタ８１２がカウントアップされる。
【０１９１】
また、メモリリード信号（メモリＲｅａｄ）は、入力ゲート８０６を介してアウトプットイネーブル信号ＯＥとして入力される。
特には図示しないＣＰＵにおいて、ライト命令が実行されると、まず、アドレスデータがアドレスバス８２０に出力される。入力ゲート８０４は、常にアクティブ状態（ローレベル：０Ｖ）のイネーブル信号ＥＮを与えられており、アドレスバス８２０上のアドレスデータを常に入力している。このアドレスデータは、第１ＲＡＭ８０１及び第２ＲＡＭ８０２に供給される。
【０１９２】
一方、上記ＣＰＵにより、ライトデータがデータバス８２１に出力される。
ここで、入力ゲート８０４の出力側に配置されるアドレスデコーダ８２２は、アドレスバス８２０に出力されたアドレスデータをデコードした結果、そのデコードされたアドレスがそのアドレスデコーダ自身が含まれるメモリ装置宛てのものである場合に、それが出力するチップセレクト信号ＣＳをアクティブにする。また、ライト動作時には、ライトイネーブル信号ＷＥ（＝メモリライト信号）はアクティブにされ、アウトプットイネーブル信号ＯＥ（＝メモリリード信号）はインアクティブにされる。
【０１９３】
この結果、インバータ回路８１６の出力がアクティブとなることにより、オア回路８１３の出力がアクティブとなる。
一方、アウトプットイネーブル信号ＯＥがインアクティブ（ハイレベル）になることによって、オア回路８１４の出力もインアクティブ（ハイレベル）となる。
【０１９４】
オア回路８１３の出力がアクティブとなることによって、入力ゲート８０５がイネーブル状態にされ、データバス８２１上のライトデータが第１ＲＡＭ８０１に取り込まれる。
【０１９５】
第１ＲＡＭ８０１は、ライトイネーブル信号ＷＥに同期して、アドレスバス８２０から入力ゲート８０４を介して指定されたライトアドレスに、データバス８２１から入力ゲート８０５を介して入力したライトデータを書き込む。
【０１９６】
一方、オア回路８１３の出力がアクティブとなることによって入力ゲート８０７及び８０８がイネーブル状態にされ、また、オア回路８１４の出力がインアクティブ（ハイレベル＝“１”）となることによって、セレクタ８１１は、カウンタ８１２のカウント出力値Ｑを選択する。
【０１９７】
この結果、第２ＲＡＭ８０２は、ライトイネーブル信号ＷＥに同期して、第１ＲＡＭ８０１に対して指定されたライトアドレスと同じアドレスに、入力ゲート８０７を介してカウンタ８１２のカウント出力値Ｑを書き込む（図９のＢ）。
【０１９８】
また、第３ＲＡＭ８０３は、ライトイネーブル信号ＷＥに同期して、セレクタ８１１を介して入力されるカウンタ８１２のカウント出力値Ｑに対応するアドレスに、入力ゲート８０８を介して上記ライトアドレス値を書き込む（図９のＣ）。
【０１９９】
以上のように、図８の構成において、ライト動作時には、第１ＲＡＭ８０１の指定されたライトアドレスに通常データが書き込まれ、第２ＲＡＭ８０２の上記ライトアドレスと同じアドレスに現在のカウント出力値Ｑが書き込まれ、第３ＲＡＭ８０３の上記カウント出力値Ｑに対応するアドレスに上記ライトアドレスが書き込まれる。
リード動作時における実施例の詳細動作
特には図示しないＣＰＵにおいて、リード命令が実行されると、まず、アドレスデータがアドレスバス８２０に出力され、そのアドレスデータは、入力ゲート８０４を介して、第１ＲＡＭ８０１及び第２ＲＡＭ８０２に供給される。
【０２００】
リード動作時には、ライトイネーブル信号ＷＥ（＝メモリライト信号）はインアクティブにされ、アウトプットイネーブル信号ＯＥ（＝メモリリード信号）はアクティブにされる。
【０２０１】
この結果、インバータ回路８１６の出力がインアクティブとなることにより、オア回路８１３の出力がインアクティブ（ハイレベル）となる。逆に、オア回路８１４の出力はアクティブ（ローレベル）となる。
【０２０２】
オア回路８１３の出力がインアクティブとなることによって、入力ゲート８０５、８０７、及び８０８が、それぞれディスエーブル状態にされる。一方、オア回路８１４の出力がアクティブとなることによって、出力ゲート８０９がイネーブル状態にされ、セレクタ８１１が第２ＲＡＭ８０２からのリードデータを選択する。
【０２０３】
第１ＲＡＭ８０１は、アウトプットイネーブル信号ＯＥに同期して、アドレスバス８２０から入力ゲート８０４を介して指定されたリードアドレスより、通常データを読み出し、それをセレクタ８１０に出力する。
【０２０４】
第２ＲＡＭ８０２は、アウトプットイネーブル信号ＯＥに同期して、第１ＲＡＭ８０１に対して指定されたリードアドレスと同じアドレスから、カウント出力値Ｑである保証ビットデータを読み出す。
【０２０５】
第３ＲＡＭ８０３は、アウトプットイネーブル信号ＯＥに同期して、第２ＲＡＭ８０２から読み出されセレクタ８１１を介して入力するカウント出力値に対応するアドレスから、アドレスデータである保証ビットデータを読み出す。
【０２０６】
第１比較回路８１８は、カウンタ８１２の現在のカウント出力値Ｑが“０”ではなく、かつ第２ＲＡＭ８０２から読み出されたカウント出力値がカウンタ８１２の現在のカウント出力値Ｑ未満である場合に、判定結果“１”を出力し、それ以外の場合に、判定結果“０”を出力する（図１０のＡ、Ｂ）。
【０２０７】
また第２比較回路８１９は、第１ＲＡＭ８０１及び第２ＲＡＭ８０２に対して現在指定されているリードアドレスと、第３ＲＡＭ８０３から読み出されたアドレスデータとが一致する場合に、判定結果“１”を出力し、それ以外の場合に、判定結果“０”を出力する（図１０のＣ、Ｄ）。
【０２０８】
アンド回路８１７は、第１比較回路８１８及び第２比較回路８１９の判定結果が共に“１”である場合においてのみ、その出力を“１”にし、それ以外の場合には、その出力を“０”にする。
【０２０９】
このようにして、カウンタ８１２の現在のカウント出力値Ｑが“０”でなく、かつ第２ＲＡＭ８０２から読み出されたカウント出力値がカウンタ８１２の現在のカウント出力値Ｑ未満であり、かつ第１ＲＡＭ８０１及び第２ＲＡＭ８０２に対して現在指定されているリードアドレスと、第３ＲＡＭ８０３から読み出されたアドレスデータとが一致する場合においてのみ、アンド回路８１７は“１”を出力し、それ以外の場合にはアンド回路８１７は“０”を出力する。
【０２１０】
今、電源投入後、第１ＲＡＭ８０１の所望のアドレスに一度も通常データが書き込まれていない場合には、カウンタ８１２の現在のカウント出力値Ｑが“０”となるか、又は第２ＲＡＭ８０２から読み出されたカウント出力値がカウンタ８１２の現在のカウント出力値Ｑ未満とはならないか、又は第１ＲＡＭ８０１及び第２ＲＡＭ８０２に対して現在指定されているリードアドレスと、第３ＲＡＭ８０３から読み出されたアドレスデータとが一致しないはずである。そのような場合には、アンド回路８１７は“０”を出力する。
【０２１１】
そこで、セレクタ８１０は、アンド回路８１７の出力が“１”である場合は、第１ＲＡＭ８０１から出力されているリードデータを選択し、一方、アンド回路８１７の出力が“０”である場合は、固定値“０”（ローレベル：０Ｖ）を選択し、その選択したデータを、出力ゲート８０９を介してデータバス２０７に出力する。出力ゲート８０９は、前述したように、リード動作時には、イネーブル状態にされている。
【０２１２】
このようにして、第１ＲＡＭ８０１に対して初期化処理を実行しなくても、内容が書き換わっていない第１ＲＡＭ８０１のアドレスからは、必ず固定値“０”が出力されることになり、仮想的なメモリクリアが実現される。
【０２１３】
ここで、例えば第１ＲＡＭ８０１の全アドレスの内容がクリアされる場合は、特には図示しないＣＰＵが、Ｉ／Ｏ  Ｗｒｉｔｅ信号をアクティブ（ローレベル）にし、ＤＭＡイネーブル信号をインアクティブ（ハイレベル）にして、オア回路８１５の出力をアクティブ（ローレベル）にすることにより、カウンタ８１２をクリアする。この結果、カウンタ８１２の現在のカウント出力値Ｑが“０”となって、全リードアドレスに対して第１比較回路８１８が判定結果“０”を出力するため、データバス２０７には全リードアドレスに対して固定値“０”が出力される。
【０２１４】
第１ＲＡＭ８０１に対して改めてメモリクリア処理を実行しなくても、その全内容を仮想的に瞬時にクリアすることができる。
上述した本発明の第３の実施の形態の構成は、電源投入直後に記憶内容が全く保証されないような、ＤＲＡＭ以外の任意のメモリ素子に対しても適用できる、という特徴を有する。
＜他の実施の形態＞
上述の各実施の形態は、記憶内容が書き換えられていないＲＡＭのアドレスからは必ず固定値“０”が出力されるように構成されているが、本発明はこれに限られるものではない。即ち、記憶内容が書き換えられていないＲＡＭのアドレスからは固定値“０”ではなく特定のＲＯＭの内容が出力されるように構成されることにより、ＲＯＭのデータがデフォルトとなり、書換えが行われた記憶内容のみがＲＡＭから読み出される。これにより、書換え可能なプログラム／テーブルＲＯＭ等が構築可能となる。
【０２１５】
また、メモリシステムが、本発明が適用される複数の並列なＲＡＭによって構成され、各ＲＡＭが切り換えられることにより、デフォルトの状態から差異のある複数の状態を記憶することが可能となる。これにより、例えばマルチタスクから構成されるプログラムにおいて、同じアドレス領域を使用するタスクのメモリ管理等も、本発明が適用されるＲＡＭの切換え制御により、容易に実現できる。この場合、各タスク間でのメモリ領域の重複を回避できる。
【０２１６】
また、前述した本発明の第２の実施の形態の構成では、保証ビットデータとしてＳＵＭチェックデータが使用されているが、本発明はこれに限られるものではなく、ＣＲＣチェックデータ等が使用されてもよい。
【０２１７】
上述の各実施の形態は、メモリ領域全体に対して、１組の保証ビットデータの設定データ（図３(a) 又は(d) に対応）と判定値が設定され、その組が切り換えられることにより、メモリ領域全体が瞬時に初期化される構成を有しているが、本発明はこれに限られるものではない。即ち、メモリ領域を分割して得られる各区分領域毎に、それぞれ個別の上記設定データと判定値の組が設定され、それらの組が順次切り換えられることにより、区分領域毎の瞬時の初期化を実現することができる。
【０２１８】
【発明の効果】
本発明によれば、メモリ又は通常データ記憶回路に対して初期化処理を実行しなくても、内容が書き換わっていないメモリ又は通常データ記憶回路のアドレスからは、必ず固定値（例えば“０”）が出力されるように動作させることができ、仮想的なメモリクリアを実現するとが可能となる。
【０２１９】
また、内容が書き換わっていない通常データ記憶回路のアドレスからは、固定値ではなく特定のＲＯＭ等からのデフォルト値が出力されるように構成されることにより、例えば、ＲＯＭのデータをデフォルトとすることができ、書換えが行われた記憶内容のみがＲＡＭから読み出される。これにより、例えば、ＲＯＭの内容をＲＡＭに転送する必要なく、書換え可能なＲＯＭ等が構築可能となる。
【０２２０】
また、本発明によれば、安価なＤＲＡＭ等のメモリ素子を用いて、初期化時間を大幅に短縮可能なメモリシステムを構成することが可能となる。
更に、本発明によれば、通常データの書込みが発生したことを示す情報のデータ値と第２の制御回路が通常データの書込みが発生したことを示す情報を検出するための判定値の組を切り換える操作のみで、通常データ記憶回路の全記憶領域のメモリクリアが実現され、画像メモリ等における記憶内容の瞬時のクリア操作が可能となる。
【０２２１】
また、本発明によれば、通常データ記憶回路上の複数のアドレス領域毎に、その記憶内容の瞬時のクリア操作も可能となる。
更に、本発明によれば、電源投入直後に記憶内容が全く保証されないような、ＤＲＡＭ以外の任意のメモリ素子においても、瞬時のメモリクリア操作を実現することが可能となる。
【図面の簡単な説明】
【図１】メモリＬＳＩの構成図である。
【図２】第１及び第２の実施の形態の原理構成図である。
【図３】保証ビットデータの説明図である。
【図４】第１の実施の形態の実施例の回路構成図である。
【図５】第１の実施の形態の実施例の動作タイミングチャートチャネル（リード動作時）である。
【図６】第１の実施の形態の実施例の動作タイミングチャートチャネル（ライト動作時）である。
【図７】第２の実施の形態の実施例の回路構成図である。
【図８】第３の実施の形態の実施例の回路構成図である。
【図９】第３の実施の形態の動作説明図（ライト動作時）である。
【図１０】第３の実施の形態の動作説明図（リード動作時）である。
【図１１】マイクロプロセッサシステムの構成図である。
【符号の説明】
２０１      データドライバ
２０２      第１ＤＲＡＭ
２０３      第２ＤＲＡＭ
２０４      保証ビット比較／ジェネレート回路
２０５      データセレクタ
２０６      アドレスバス
２０７      データバス
２０８      ライトイネーブル信号
【図１】
0003821911.tif 000002
【図２】
0003821911.tif 000003
【図３】
0003821911.tif 000004
【図４】
0003821911.tif 000005
【図５】
0003821911.tif 000006
【図６】
0003821911.tif 000007
【図７】
0003821911.tif 000008
【図８】
0003821911.tif 000009
【図９】
0003821911.tif 000010
【図１０】
0003821911.tif 000011
【図１１】
0003821911.tif 000012