説明

メモリ装置及びメモリの初期化漏れ検出方法

【課題】
開発過程において検出が困難なメモリ初期化漏れ(未初期化)の発生を防止する。
【解決手段】
メモリ装置の各ワードに配設される付加ビット(パリティビットを含む)を備えるメモリ109において、パワーオン(電源オン)により付加ビット215をリセットし、初期化を行ったワードの付加ビット215を1回限り反転させる制御を行うメモリ初期化状態管理回路を備え、メモリの初期化漏れの検出機能を備えたメモリ装置が提供される。このメモリの初期化漏れを検出機能は、前記メモリ初期化状態管理回路が、読み出したワードの付加ビット215が未反転状態であれば割り込みを発生させ、該読み出しアドレスを出力することによって具現される。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、初期化漏れ検出機能を備えたメモリ装置及び初期化漏れ検出回路及び方法に関する。
【背景技術】
【0002】
メモリ装置の初期化制御に関する技術として、特開平11−242628号公報記載の技術がある。図5は、同公報に記載されたメモリクリア制御回路の構成を示す図である。同図において、109はメモリセルを示し、110、111はアドレスデコーダである。112はリード監視部であり、113はクリア制御部であり、114はデータマスク処理部である。
【0003】
101はメモリへの書き込みデータであるライトデータ入力信号である。102は書き込みアドレスであるライトアドレス入力信号である。103は書き込み動作のトリガとなるライトイネーブル入力信号である。104はメモリからの読み込みデータであるリードデータ出力信号である。105は読み込みアドレスであるリードアドレス入力信号である。106は読み込み動作のトリガとなるリードイネーブル入力信号である。107は電源投入時にリセットを行うためのパワーオンリセット信号である。108は分割したあるアドレス空間毎にクリアをするための、分割したアドレス空間毎のクリア制御信号である。119はメモリ109からのリードデータである。
【0004】
アドレスデコーダ110は、ライトアドレス入力信号102がメモリ109を示す場合にアドレスデコーダ1出力信号115を“H”にしてクリア制御部113に送出する。アドレスデコーダ111は、リードアドレス入力信号105がメモリ109を示す場合に、アドレスデコーダ2出力信号116を“H”にしてリード監視部112に送出する。クリア制御部113は、アドレスデコーダ1出力信号115とライトイネーブル入力信号103、パワーオンリセット信号107から、該アドレス空間に対するライト制御が行われていないと判定した時、または該アドレス空間をクリアするクリア制御信号108が入力された時に、ライト制御判定結果出力信号117としてリード監視部112に対して“L”レベルとしたライト制御判定結果出力信号117を出力する。
【0005】
リード監視部112は、メモリ109にリードイネーブル入力信号106が入力されると、アドレスデコーダ2出力信号116に該当するアドレス空間に対するライト制御判定結果出力信号117が“L”レベルの時に、データマスク処理部114に対してリードマスク制御信号118を“L”レベルにして出力する。データマスク処理部114はリードマスク制御信号118メモリ109からの出力データ(リードデータ出力信号104)をすべて“L”にマスクする。
【0006】
上記構成による従来技術は、以下のような動作を行う。まず、パワーオンによりパワーオンリセット信号が“H”になり、クリア制御部113がライト制御判定結果出力信号117を“L”にする。また、分割したアドレス空間毎のクリア制御信号が“H”になった場合でも、クリア制御部113はライト制御判定結果出力信号117を“L”にする。この状態でメモリリードが行われた場合、次のような動作になる 。
【0007】
リードアドレス入力信号105がメモリ109を示すアドレスであった場合、アドレスデコーダ111はアドレスデコーダ2出力信号116を“H”にする。そのときにリードイネーブル入力信号106が“H”になると、メモリ109はリードデータ119を出力するが、リードマスク制御信号118が“L”であるため、リードデータ出力信号104はすべて“L”にマスクされる。
【0008】
このようにメモリへの書き込みが行われる前にリード動作が行われると、リードデータ出力信号104はマスクされて“L”固定のデータが読み出される。
【0009】
続いてメモリ109に対して書き込みが行われた場合の動作を説明する。メモリ109にライトが行われると、アドレスデコーダ110よりアドレスデコーダ1出力信号115が“H”になり、クリア制御部113はライト制御判定結果出力信号117を“H”にする。この状態でメモリリードが行われると、リードアドレス入力信号105がメモリ109を示すアドレスであった場合、アドレスデコーダ111はアドレスデコーダ2出力信号116を“H”にする。そのときにリードイネーブル入力信号106が“H”になると、メモリ109はリードデータ119を出力し、リードマスク制御信号118が“H”であるため、そのままリードデータ出力信号104に出力され正常に読み出せるようになる 。
【0010】
このように一旦メモリ109への書き込みが行われると、リードデータ119に対するマスクは行われず、メモリ109からのデータがそのままリードデータ出力信号104に出力され正常に読み出せるようになる。
【0011】
【特許文献1】特開平11−242628号公報
【発明の開示】
【発明が解決しようとする課題】
【0012】
上記した従来技術では、初期化していない領域が読み出された場合、仮想的な初期化処理を行う(“L”レベルにマスクされた一定のデータを出力する)こととしているが、初期化されていない領域の読み出しが起こったことを検知することはできないという問題点がある。特に、シミュレーション又はデバッグ段階で、プログラム自体は正しく動作するものの、プログラム上のメモリの初期化の漏れ(メモリの初期化命令の記述を忘れること)が看過される可能性がある。また、プログラム側で期待する初期値が、“L”レベルにマスクされたデータと異なる場合にも動作不具合となって表れる可能性がある。
【0013】
また、メモリに初期化された領域と初期化されていない領域がある場合で、未初期化領域に対してリード動作がなされた場合はマスク処理がなされないため、やはり上述のように動作不具合となって表れる可能性がある。
【課題を解決するための手段】
【0014】
本発明の第1の視点によれば、メモリ装置の各ワードに配設される付加ビット(パリティビットを含む)を備えるメモリ装置において、パワーオン(電源オン)により前記付加ビットをリセットし、初期化を行ったワードの付加ビットを1回限り反転させる制御を行うメモリ初期化状態管理回路を備え、メモリの初期化漏れの検出機能を備えたメモリ装置が提供される。このメモリの初期化漏れを検出機能は、前記メモリ初期化状態管理回路が、読み出したワードの付加ビットが未反転状態であれば割り込みを発生させ、該読み出しアドレスを出力することによって具現される。
【0015】
また、本発明の第2の視点によれば、メモリ装置の各ワードに配設される付加ビットを備えるメモリ装置におけるメモリ初期化漏れ検出回路及び方法が提供される。この回路及び方法によれば、まず、パワーオンによりメモリ初期化漏れ検出回路がすべての付加ビットをリセットする。その後、メモリ初期化漏れ検出回路は、初期化を行ったワードの付加ビットを1回限り反転させ、読み出したワードの付加ビットが未反転状態であれば割り込みを発生させ、所定の報知処理を実行する。
【発明の効果】
【0016】
本発明によれば、開発過程において検出が困難なことの多い、メモリ初期化漏れ(未初期化)を確実に検出することが可能となる。
【発明を実施するための最良の形態】
【0017】
[第1の実施の形態]
続いて、本発明を実施するための最良の形態について説明する。図1は、本発明の第1の実施の形態に係るメモリ装置の構成を表したブロック図である。図1を参照すると、付加ビット制御部211と、付加ビット監視部(割り込み信号制御部)212と、パワーオンリセット回路(初期化回路)213と、アドレス保持レジスタ214と、付加ビット215と備えたメモリセル部218と、を備えたメモリ109が示されている。
【0018】
なお、図中の210は、メモリへの書き込み、読み込み時に使用されるアドレス入力信号である。また、101は書き込みデータであるライトデータ入力信号であり、103は書き込み動作のトリガとなるライトイネーブル入力信号である。また104はメモリからの読み込みデータであるリードデータ出力信号であり、106は読み込み動作のトリガとなるリードイネーブル入力信号である。また216は付加ビット制御部211及び付加ビット監視部212を付加ビット215を利用したパリティチェック処理手段として使用するかを指定するパリティ切替信号である。
【0019】
付加ビット制御部211は、付加ビット215を制御するための付加ビット制御信号219を送出し、付加ビット215を0または1に制御する。付加ビット監視部(割り込み信号制御部)212は、付加ビット215の状態(0か1か)を監視し、1だった場合は“H”レベルとしたアドレス保持指示信号221をアドレス保持レジスタに送出するとともに、割り込み信号217を発生させる。
【0020】
パワーオンリセット回路(初期化回路)213は、電源投入後、すべての付加ビット215をクリアする(0にする)ことのできるパワーオンリセット信号220を送出する動作を行う。アドレス保持レジスタ214は、アドレス保持を指示することを示す信号レベルが”H”であるアドレス保持指示信号221を受け取った場合に、アドレス入力信号210のアドレスを保存する動作を行う。
【0021】
付加ビット215は、パリティビットとしても利用可能なメモリセル部218のすべてのワードに対して付加される1ビットの冗長ビットである。
【0022】
続いて、図1及び上記メモリ109の動作を表した図2を参照して、本実施の形態の動作を説明する。まず、電源投入後、パリティ切替信号216が入力された場合、付加ビット制御部211と付加ビット監視部212は、付加ビット215をパリティビットとしての使用するパリティ制御に移行する(ステップS101、S102)。パリティビットとして使用した場合、付加ビット制御部211は、各ワードに対してパリティ・ビットを付加し、付加ビット監視部212は、パリティ・エラー発生時に割り込み信号217を発生し、”H”レベルにしたアドレス保持指示信号221を送出する。このようにすることにより、付加ビット215を、パリティチェック機能のパリティビットとして使用できる。なお、パリティ切替信号216は電源投入前に変更され、電源投入後は変化しないものとする。
【0023】
一方、ステップS101にてパリティ切替信号216が入力されなかった場合、パワーオンリセット回路(初期化回路)213がパワーオンリセット信号220を送出し、すべての付加ビット215を0にする(ステップS103)。電源投入当初は、未だ一度もライトが行われていないため、付加ビット215はすべて0の状態であり、各領域が未初期化ということを意味する。
【0024】
ここで、メモリにライトが行われた場合、付加ビット制御部211は、付加ビット制御信号219を出力し、該当する付加ビット215を1に変化させる(ステップS104、S105)。なお、この付加ビット215の反転処理は電源投入後1回限り行われ、ここで1にされた付加ビット215はその後電源断まで1を保持する。このようにすることで、付加ビット215が1の場合はその領域は初期化済みということが保証される。
【0025】
また付加ビット監視部212では、リードイネーブル信号106に基づいてメモリリード時に該当アドレスの付加ビット215を監視し、0だった場合は未初期化領域のリードであるため、割り込み信号217を発生させ、かつ“H”レベルとしたアドレス保持指示信号221をアドレス保持レジスタ214に送出し、リードアドレスを保存するよう指示する(ステップS106、S107、S108)。もちろん、該当する付加ビット215が1だった場合は何もしない 。
【0026】
このように、メモリのあるワード単位に割り付けた付加ビットを監視し、付加ビットが0の領域の読み込みが行われたら割込を発生させることで、未初期化領域の読み込みが発生したことを即座に検知することが出来る。また、本実施の形態では、併せて、アドレス保持レジスタにより、その読み込まれたアドレスを取得することが可能となっている。
【0027】
[第2の実施の形態]
続いて、本発明の第2の実施の形態について説明する。図3は、本発明の第2の実施の形態に係るメモリ装置の構成を表したブロック図である。図3を参照すると、付加ビット監視部212にビット操作命令信号322が入力されるよう構成されている点で上記第1の実施の形態と異なっている。ビット操作命令信号322は。ビット操作命令のときに“H”レベルになる信号である 。
【0028】
図4は、本発明の第2の実施の形態に係るメモリ装置の動作を表したフローチャートである。図4を参照すると、ステップS201〜S206までは、上記した第1の実施の形態の動作と同様であるが、メモリリード時に該当アドレスの付加ビット215を監視し、0だった場合であっても、ビット操作命令信号322が”H”レベルである場合は、後続する割り込み信号の発生やアドレス保持指示信号221の送信処理を行わないようにする(ステップS207)。
【0029】
ビット操作命令の場合、CPUは一度メモリリードを行い、該当ビットをセット(またはクリア)し、メモリライトを行うが、このとき、一度メモリリードが発生し、当該領域が未初期化状態であることも考えられるが、その後メモリライトが行われてしまうため、割り込み信号217は不要となる。
【0030】
本実施の形態によれば、上記第1の実施の形態の作用効果に加えて、ビット操作命令によって無駄な割り込み信号217が発生したり、アドレス保持が行われることを回避することが可能となる。
【0031】
以上、メモリの未初期化アドレスのリードが行われた時にリアルタイムに当該事実を知り、また、その読み込んだアドレスを知ることができるようにした本発明の実施の形態を開示したが、上記した付加ビット215として、従来からあるパリティ・ビットを使用できる。また、パリティチェック機能を設けない場合は、切替機能は省略可能であり、上記した各実施の形態のステップS101,S102、S201、S202の各処理も不要となる。
【0032】
また、上記した各実施の形態では、メモリ装置上に、付加ビット制御部211と、付加ビット監視部(割り込み信号制御部)212と、パワーオンリセット回路(初期化回路)213と、アドレス保持レジスタ214とを搭載し、メモリ初期化漏れ検出機能を実現する例を挙げて説明したが、これらをメモリ装置とは別のモジュールに構成し、メモリ装置を接続して動作させる用にしても良い。
【0033】
また、上記した各実施の形態では、アドレス保持レジスタ214を設け、アドレスを特定可能な構成としたが、アドレスの保持動作に代えて、割り込み信号217をトリガとして、図示しないCPU側でその他の処理を行わせるようにしても良いことはもちろんである。
【図面の簡単な説明】
【0034】
【図1】本発明の第1の実施の形態に係るメモリ装置の構成を表したブロック図である。
【図2】本発明の第1の実施の形態の動作を表したフローチャートである。
【図3】本発明の第2の実施の形態に係るメモリ装置の構成を表したブロック図である。
【図4】本発明の第2の実施の形態の動作を表したフローチャートである。
【図5】従来のメモリ装置の構成を表したブロック図である。
【符号の説明】
【0035】
101 ライトデータ入力信号
102 ライトアドレス入力信号
103 ライトイネーブル入力信号
104 リードデータ出力信号
105 リードアドレス入力信号
106 リードイネーブル入力信号
107 パワーオンリセット信号
108 分割したアドレス空間毎のクリア制御信号
109 メモリ
110、111 アドレスデコーダ
112 リード監視部
113 クリア制御部
114 データマスク処理部
115 アドレスデコーダ1出力信号
116 アドレスデコーダ2出力信号
117 ライト制御判定結果出力信号
118 リードマスク制御信号
119 リードデータ
210 アドレス入力信号
211 付加ビット制御部
212 付加ビット監視部(割り込み信号制御部)
213 パワーオンリセット回路(初期化回路)
214 アドレス保持レジスタ
215 付加ビット
216 パリティ切替信号
217 割り込み信号
218 メモリセル部
219 付加ビット制御信号
220 パワーオンリセット信号
221 アドレス保持指示信号
322 ビット操作命令信号

【特許請求の範囲】
【請求項1】
メモリ装置の各ワードに配設される付加ビットを備えるメモリ装置において、
パワーオンにより前記付加ビットをリセットし、
初期化を行ったワードの付加ビットを1回限り反転させ、
読み出したワードの付加ビットが未反転状態であれば割り込みを発生させ、所定の報知処理を実行するメモリ初期化漏れ検出回路を備えたこと、
を特徴とするメモリ装置。
【請求項2】
前記報知処理は、付加ビットが未反転状態であったメモリアドレスを出力する処理であること、
を特徴とするメモリ装置。
【請求項3】
パワーオフ時にオンオフ設定されてパリティ切替信号を送出するパリティ切替部を有し、
前記メモリ初期化漏れ検出回路は、パリティ切替信号を受信した場合に、
前記付加ビットをパリティビットとして利用し、パリティチェックを実行すること、
を特徴とする請求項1又は2に記載のメモリ装置。
【請求項4】
前記メモリ初期化漏れ検出回路は、
ビット操作命令によって読み出したワードの付加ビットが未反転状態である場合は、前記割り込み処理を抑止すること、
を特徴とする請求項1乃至3いずれか一に記載のメモリ装置。
【請求項5】
メモリ装置の各ワード毎に配設される付加ビットと、
パワーオンによりすべての付加ビットを初期化する初期化回路と、
初期化を行ったワードの付加ビットを1回限り反転させる付加ビット制御部と、
読み出したワードの付加ビットが未反転状態であれば割り込み信号を出力する割り込み信号制御部と、
前記割り込み信号に基づいて、読み出したワードのアドレスを保持する保持レジスタと、を備えること、
を特徴とするメモリ装置。
【請求項6】
前記付加ビット制御部は、
前記付加ビットをパリティビットとして用いるパリティ切り替え信号を受信した際は、任意の1ワードに書き込みが行われた際にパリティを演算し、演算結果を前記付加ビットに格納すること、
を特徴とする請求項5に記載のメモリ装置。
【請求項7】
メモリ装置の各ワードに配設される付加ビットを備えるメモリ装置に接続され、
パワーオンにより前記付加ビットをリセットし、
初期化を行ったワードの付加ビットを1回限り反転させ、
読み出したワードの付加ビットが未反転状態であれば割り込みを発生させ、所定の報知処理を実行するメモリ初期化漏れ検出回路。
【請求項8】
メモリ装置の各ワードに配設される付加ビットを備えるメモリ装置におけるメモリ初期化漏れ検出方法であって、
パワーオンによりメモリ初期化漏れ検出回路がすべての付加ビットをリセットするステップ、
前記メモリ初期化漏れ検出回路が初期化を行ったワードの付加ビットを1回限り反転させるステップ、
前記メモリ初期化漏れ検出回路が読み出したワードの付加ビットが未反転状態であれば割り込みを発生させ、該読み出しアドレスを出力するステップと、を含むこと、
を特徴とするメモリ初期化漏れ検出方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate