JP3821281B2 - メモリ検査回路 - Google Patents
メモリ検査回路 Download PDFInfo
- Publication number
- JP3821281B2 JP3821281B2 JP2001383342A JP2001383342A JP3821281B2 JP 3821281 B2 JP3821281 B2 JP 3821281B2 JP 2001383342 A JP2001383342 A JP 2001383342A JP 2001383342 A JP2001383342 A JP 2001383342A JP 3821281 B2 JP3821281 B2 JP 3821281B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- sum value
- rom
- microprocessor
- address
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Description
【発明の属する技術分野】
本発明は、マイクロプロセッサが常時メモリにアクセスしているようなシステムにおいて、メモリの読み出し不良を検出するためのメモリ検査回路に関する。なお、本発明で言うサム値とは、メモリの全領域のうち、読み出し検査対象となる部分に格納された全データの内容から一意に決まる値のことで、例えば読み出し検査対象領域の全データの加算結果などである。
【0002】
【従来の技術】
図6は、従来技術による専用LSI(以下ASIC)の回路の機能ブロック図である。このASICは、例えば分散型制御装置を構成する要素とバスをインターフェイスする通信コントローラとして動作する。
【0003】
ASIC101は、通信カードを形成するプリント基板120に実装され、マイクロプロセッサ102を内蔵しており、ASIC外部においてプリント基板120に実装されたROM110に格納されたプログラムで動作する。
【0004】
マイクロプロセッサ102は、動作用プログラムにアクセスするため、ROMアドレス信号103を出力し、ROMデータ信号104を読み込む動作を繰り返している。そのため、ROMを正常に読み出せない不良状態(ROMの故障、ASICとROM間の接続不良など)になると、このASICは正常に動作できなくなる。
【0005】
【発明が解決しようとする課題】
ASIC101は、ROM110の読み出し不良状態(メモリエラー)を検出する手段を持っていない、という問題点がある。
メモリエラー検出手段としては、
(a)パリティビットやECCビットを付加する
(b)サム値を計算して真値と比較する
等の方法が一般的である。
【0006】
(a)の方法では、パリティビットやECCビット用にメモリを追加する必要があり、部品代のコストアップになる。
(b)の方法では、サム値を計算するためのROM読み出しが必要である。しかし、ASIC101に内蔵されたマイクロプロセッサ102は常時ROM110にアクセスしており、サム値計算に必要なROM読み出しの時間がとれない。
【0007】
本発明の目的は、マイクロプロセッサによるメモリ上に格納されたプログラムの実行と並行して、メモリの読み出し検査対象となる全領域をリードするサム値計算を実行可能とし、ASIC外部の回路構成を従来と同じにしたまま、メモリの不良状態を速やかに検出できるメモリ検査回路の提供にある。
【0008】
【課題を解決するための手段】
このような課題を達成するために、本発明のうち請求項1記載発明の特徴は、マイクロプロセッサによるメモリ上に格納されたプログラムの実行と並行して、前記メモリの読み出し検査対象となる全領域をリードしてサム値を計算するサム値計算手段と、
計算されたサム値と前記メモリ上に格納してある真のサム値との比較手段と、サム値比較で不一致が発生した場合にメモリの読み出し不良とみなしてこれを外部に通知するエラー通知手段と、を具備する点にある。
【0009】
また、前記マイクロプロセッサが前記メモリのある特定のアドレスにアクセスしたとき、
1回目は、そのアドレスへメモリアクセスを行い、読み出したメモリデータを前記マイクロプロセッサに渡すと共に、キャッシュデータとして保存しておき、
2回目以降は、前記キャッシュデータをマイクロプロセッサに渡し、代わりにサム値検査のためのメモリリードをその時に実行する点にある。
【0010】
請求項2記載発明の特徴は、
前記キャッシュデータとして保存するアドレスは、前記メモリ上の任意アドレスを選んで設定可能とした点にある。
【0011】
請求項3記載発明の特徴は、
マイクロプロセッサによるメモリ上に格納されたプログラムの実行期間中、前記サム値計算と前記真のサム値との比較による検査を繰り返す点にある。
【0012】
請求項4記載発明の特徴は、
前記サム値検査回路の動作/非動作が切り替え可能で、初期状態では非動作に設定されている点にある。
【0013】
請求項5記載発明の特徴は、
前記マイクロプロセッサ、前記メモリ並びに前記サム値計算手段、前記比較手段、前記エラー通知手段よりなる検査回路が同一プリント基板上に実装されてなる点にある。
【0014】
請求項6記載発明の特徴は、
前記マイクロプロセッサ並びに前記サム値計算手段、前記比較手段、前記エラー通知手段よりなる検査回路がASIC化されてなる点にある。
【0015】
【発明の実施の形態】
以下本発明実施態様を、図面を用いて説明する。図1は本発明を適用した専用LSI(以下ASIC)の一例を示す機能ブロック図である。図1において、ASIC201、マイクロプロセッサ202、ROM210、プリント基板220は、図6の従来回路で説明したASIC101、マイクロプロセッサ102、ROM110、プリント基板120に対応した同一要素である。
【0016】
ASIC201は通信コントローラであり、マイクロプロセッサ202、およびROMサム値検査回路205を内蔵している。ROM210はマイクロプロセッサ202の動作用プログラムを格納したメモリであり、ASIC201およびROM210は、プリント基板220に実装されている。
【0017】
マイクロプロセッサ202は動作用プログラムにアクセスするため、次の動作を繰り返している。ROMアドレス信号206を出力し、ROMサム値検査回路205経由でROMアドレス信号203として出力する。
ROMデータ信号204を、ROMサム値検査回路205経由でROMデータ信号207として読み込む。
【0018】
ROMサム値検査回路205は、本発明を利用したROM210の読み出し不良を検出するための回路であり、ROM210の読み出し不良を検出すると、メモリエラー信号208を出力する。
【0019】
図2はROM210のメモリマップであり、ゼロ番地から始まるマイクロプロセッサプログラムの最後のアドレスに引き続くアドレス310番地にROMサム値の真値(プログラムの総バイトの加算結果等)が格納されている。従って、ROMサム値検査の対象領域のアドレスは、ゼロ番地より「310番地−1番地」までの範囲Fである。
【0020】
図3はROMサム値検査回路205の具体的な構成の一例を示す機能ブロック図である。図3において、コントローラ301はROMサム値検査回路205全体の機能を制御する回路である。
アドレスセレクタ302は、どの信号をROMアドレス信号203として出力するかを選択する回路である。データセレクタ303は、どの信号をROMデータ信号207として出力するかを選択する回路である。
【0021】
サム値アドレス310は、ROMサム値の真値がROM210上のどのアドレスに格納してあるのかを指定するレジスタである。また、ROM210の読み出し検査対象となる領域の指定も兼ねており、ROM210のゼロ番地から「サム値アドレス(310番地)−1番地」まで(図2のF)が、検査対象領域となる。
【0022】
サム値データ320は、ROM210のサム値を計算するためのレジスタである。初期値はゼロで、ROMサム値検査用にリードした値が、順次サム値データ320の値に加算される。
アドレスカウンタ330は、ROM210の読み出し検査対象となる領域を順番にリードするためのカウンタである。初期値はゼロで、サム値アドレス310番地の値までカウントアップする。
【0023】
キャッシュデータ340は、ROM210の特定アドレスのデータを保存しておくためのレジスタである。
キャッシュアドレス350は、ROM210のどのアドレスのデータをキャッシュデータ340に保存するかを指定するレジスタである。
【0024】
次に、ROMサム値検査回路205の動作の詳細を図4、図5を用いて説明する。図4はROMサム値検査回路205の処理手順を示すフローチャート、図5はROMサム値検査回路205の動作を示す信号波形図であり、図中のDn及びDmは、ROM210のアドレスn番地及びm番地のデータ、+Dnは値Dnを加算することを表す。
【0025】
起動した初期状態(図4のステップS1)では、ROMサム値検査機能は非動作状態に設定されているため、ROMサム値検査回路205は停止している。この状態では、ROMアドレス信号206はそのままROMアドレス信号203として出力し、ROMデータ信号204はそのままROMデータ信号207として出力する。
【0026】
この状態で、ROMサム値検査機能に必要な設定を行う(ステップS2)。設定は、マイクロプロセッサ202のプログラム、もしくはASIC201外部からの制御で行う。設定項目は、サム値アドレス310(図5でm)、キャッシュアドレス350(図5でn)、の2つである。
【0027】
必要な設定が完了したら、ROMサム値検査機能を動作状態に設定する(ステップS3)。設定は、マイクロプロセッサ202のプログラム、もしくはASIC201外部からの制御で行う。
動作状態にしたとき、サム値データ320、アドレスカウンタ330が夫々初期化される(ステップS4、図5で初期値0)。
【0028】
ROMサム値検査機能が動作状態では、マイクロプロセッサ202がROM210をアクセスするたび(ステップS5)に、コントローラ301がROMアドレス信号206とキャッシュアドレス350を比較する(ステップS6)。
【0029】
不一致ならば通常のアクセスと判断し(ステップS7)、ROMアドレス信号206をそのままROMアドレス信号203として出力してROM210のアクセスを行い、読み出したROMデータ信号204をそのままROMデータ信号207として出力し、ステップS5に戻る。
【0030】
一致ならばROMサム値検査用のアクセスと判断し、ステップS8で次のように動作する。
1回目の一致の場合(ステップS9)には、ROMアドレス信号206をそのままROMアドレス信号203として出力してROM210へアクセスを行い、読み出したROMデータ信号204(図5でDn)をそのままROMデータ信号207(図5でDn)として出力するとともに、キャッシュデータ340に保存し、ステップS5に戻る。
【0031】
2回目以降の一致の場合(ステップS10)では、アドレスカウンタ330の値c(図5で初期値0)をROMアドレス信号203として出力してROM210へアクセスを行う。また、キャッシュデータ340の値DmをROMデータ信号207に出力する。
【0032】
ここで、アドレスカウンタ330の値cがサム値アドレス310の値mより小さいかどうかをチェックし(ステップS11)、小さければ、サム値はまだ計算途中である。サム値データ320には読み出したROMデータ信号204の値Dcを加算し、アドレスカウンタ330は値を1増やし、ステップS5に戻る(ステップS12)。
【0033】
アドレスカウンタ330の値cがサム値アドレス310の値mと等しければ、サム値の計算が完了し、読み出したROMデータ信号204がROMサム値の真値であることを示している。サム値データ320と読み出したROMデータ信号204の値を比較し(ステップS13)、一致ならば正常と判断してステップS4に戻り、サム値データ320、アドレスカウンタ330、をそれぞれ初期化し、ROMサム値検査機能を初期状態から繰り返す。
【0034】
サム値データ320と読み出したROMデータ信号204の値比較で、不一致ならば異常と判断し、メモリエラー信号208を出力し、ROMサム値検査機能を非動作状態にして、動作停止する(ステップS14)。
【0035】
すなわち、一旦ROMサム値検査機能を動作状態に設定すると、システム稼働中は無限にROMサム値検査機能を繰り返す。そしてROM210の読み出し不良を検出すると、すみやかにこれを通知する。
【0036】
以上述べたように、ROMサム値検査回路205は、マイクロプロセッサ202が常時ROM210にアクセスしているようなシステムにおいて、プログラムの実行と並行してROM210のサム値計算を行い、メモリエラーを検出することができる。
【0037】
また、ROMサム値検査回路205は、ASIC設計の際にASIC201に内蔵する設計とすれば、ASIC201及びROM210を実装するプリント基板220の構成は、従来のASIC101およびROM110を実装するプリント基板120の構成と全く同一とすることができ、旧カードのバージョンアップが極めて容易となる。
【0038】
なお、実施例ではROMの場合について説明したが、ROM以外のメモリに適用してもよい。
【0039】
【発明の効果】
以上説明したことから明らかなように、本発明によれば次の効果が期待できる。
(1)メモリのサム値検査をすることでメモリの読み出し不良を検出する方式のため、パリティビットのような追加メモリが不要である。
(2)メモリの特定アドレスのデータをキャッシュとして保存し、そのアドレスへのアクセスが発生したときにメモリサム値計算用のメモリアクセスを行う方式のため、メイン回路が常時メモリにアクセスしているシステムでも、メモリサム値検査が行える。
【0040】
(3)キャッシュとして保存するアドレスを任意に設定可能な方式のため、メイン回路からのアクセス頻度が高いメモリアドレスをキャッシュアドレスに選んで設定すれば、メモリサム値計算用のメモリアクセス頻度も高くなり、短時間でメモリサム値検査が完了できる。
(4)メモリサム値検査機能をシステム稼働中は繰り返す方式のため、システム稼働中に生じたメモリの読み出し不良を、発生後すみやかに検出できる。
【0041】
(5)メモリ検査回路の動作・非動作を切り替え可能で、初期状態では非動作とする方式のため、メモリサム値検査に対応していないサム値を持たないメモリが接続された場合でも、そのまま使える。
(6)メモリ検査回路をASIC内部だけで実現可能で、ASICとメモリの間の接続方法は従来と変わらない方式のため、回路を実装するプリント基板は従来のものがそのまま使える。
【図面の簡単な説明】
【図1】本発明を適用した専用LSI(ASIC)の一例を示す機能ブロック図である。
【図2】ROM210のメモリマップ図である。
【図3】ROMサム値検査回路205の具体的な構成の一例を示す機能ブロック図である。
【図4】図4はROMサム値検査回路205の処理手順を示すフローチャートである。
【図5】図5はROMサム値検査回路205の動作を示す信号波形図である。
【図6】従来技術による専用LSI(ASIC)の回路の機能ブロック図である。
【符号の説明】
201 ASIC
202 マイクロプロセッサ
203 ROMアドアレス信号
204 ROMデータ信号
205 ROMサム値検査回路
206 ROMアドアレス信号
207 ROMデータ信号
208 メモリエラー信号
210 ROM
220 プリント基板
Claims (6)
- マイクロプロセッサによるメモリ上に格納されたプログラムの実行と並行して、前記メモリの読み出し検査対象となる全領域をリードしてサム値を計算するサム値計算手段と、
計算されたサム値と前記メモリ上に格納してある真のサム値との比較手段と、
サム値比較で不一致が発生した場合にメモリの読み出し不良とみなしてこれを外部に通知するエラー通知手段と、を備え
前記マイクロプロセッサが前記メモリのある特定のアドレスにアクセスしたとき、
1回目は、そのアドレスへメモリアクセスを行い、読み出したメモリデータを前記マイクロプロセッサに渡すと共に、キャッシュデータとして保存しておき、
2回目以降は、前記キャッシュデータをマイクロプロセッサに渡し、代わりにサム値検査のためのメモリリードをその時に実行することで、前記特定のアドレスへのアクセスごとに前記メモリの読み出し検査対象となる全領域を順次リードしていくことを特徴とするメモリ検査回路。 - 前記キャッシュデータとして保存するアドレスは、前記メモリ上の任意アドレスを選んで設定可能な、
請求項1記載のメモリ検査回路。 - マイクロプロセッサによるメモリ上に格納されたプログラムの実行期間中、前記サム値計算と前記真のサム値との比較による検査を繰り返す、
請求項1又は2記載のメモリ検査回路。 - 前記サム値検査回路の動作/非動作が切り替え可能で、初期状態では非動作に設定されている、
請求項1乃至3のいずれかに記載のメモリ検査回路。 - 前記マイクロプロセッサ、前記メモリ並びに前記サム値計算手段、前記比較手段、前記エラー通知手段よりなる検査回路が同一プリント基板上に実装されてなる、
請求項1乃至4のいずれかに記載のメモリ検査回路。 - 前記マイクロプロセッサ並びに前記サム値計算手段、前記比較手段、前記エラー通知手段よりなる検査回路がASIC化されてなる、
請求項1乃至5のいずれかに記載のメモリ検査回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001383342A JP3821281B2 (ja) | 2001-12-17 | 2001-12-17 | メモリ検査回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001383342A JP3821281B2 (ja) | 2001-12-17 | 2001-12-17 | メモリ検査回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003186757A JP2003186757A (ja) | 2003-07-04 |
JP3821281B2 true JP3821281B2 (ja) | 2006-09-13 |
Family
ID=27593420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001383342A Expired - Fee Related JP3821281B2 (ja) | 2001-12-17 | 2001-12-17 | メモリ検査回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3821281B2 (ja) |
-
2001
- 2001-12-17 JP JP2001383342A patent/JP3821281B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003186757A (ja) | 2003-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20040237018A1 (en) | Dual decode scheme | |
US7398439B2 (en) | Semiconductor device with memory and method for memory test | |
US20070260934A1 (en) | Automated hardware parity and parity error generation technique for high availability integrated circuits | |
JP3570388B2 (ja) | メモリ診断装置及び診断方法 | |
JP3821281B2 (ja) | メモリ検査回路 | |
US7484147B2 (en) | Semiconductor integrated circuit | |
US20050102595A1 (en) | Method and apparatus for testing semiconductor memory device and related testing methods | |
US5357529A (en) | Error detecting and correcting apparatus and method with transparent test mode | |
US20100122150A1 (en) | Cpu instruction ram parity error procedure | |
US7320096B2 (en) | System and method for testing memory at full bandwidth | |
JP2006277133A (ja) | 半導体集積回路及びメモリデータチェック方法 | |
US7472328B1 (en) | Automatic testing of microprocessor bus integrity | |
JPH0863406A (ja) | メモリアクセス制御装置 | |
KR100802666B1 (ko) | 회로 장치 및 체크 방법 | |
JP2004334707A (ja) | メモリ検査装置およびメモリ検査方法 | |
JP2907114B2 (ja) | Eepromの1ビット誤り訂正方法とその装置 | |
JPH11120022A (ja) | プリント基板の試験装置 | |
JPH0546466A (ja) | メモリ容量設定検出回路 | |
US6185649B1 (en) | System for correcting an illegal addressing signal by changing a current bit from one to zero if a bit immediately left adjacent to the current bit is zero | |
JPH05225070A (ja) | メモリ装置 | |
JPH0553924A (ja) | 記憶装置の試験方式 | |
JPH054265U (ja) | メモリ装置 | |
JPH06290062A (ja) | データメモリicの実装不良検出方法 | |
JP2001067271A (ja) | メモリ回路のチェック方法 | |
JPH09204363A (ja) | データメモリ装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060306 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060425 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060601 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060614 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100630 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100630 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110630 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130630 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140630 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |