(57)【要約】【課題】迅速にメモリの不良検出作業を開始すること。【解決手段】本発明にかかるメモリの検査方法は、被検査データが格納されたメモリの検査方法であって、転送回路において、予め登録された転送設定情報に基づき、メモリから被検査データを読み出すステップと、転送回路において、読み出した被検査データを検査回路へ転送するステップと、検査回路において、転送された被検査データと、被検査データの参照用検査コードとを用いて当該メモリの検査を行う検査ステップと、を含む。【選択図】図１
2010262715.tif 000002
【特許請求の範囲】
【請求項１】
被検査データを格納するメモリと、
前記被検査データと、前記被検査データの参照用検査コードとを用いて当該メモリの検査を行う検査回路と、
予め登録された前記被検査データの転送設定情報に基づき、前記メモリから前記検査回路へ前記被検査データの転送を行う転送回路と、
を備えるメモリ検査システム。
【請求項２】
前記転送設定情報を含めて前記転送回路に対して転送指示を行う転送指示回路をさらに備え、
前記転送回路は、前記転送指示回路からの転送指示に含まれる転送設定情報に基づき、前記メモリから前記検査回路へ前記被検査データの転送を行うことを特徴とする請求項１に記載のメモリ検査システム。
【請求項３】
前記メモリは、前記被検査データの転送設定情報をさらに格納し、
前記転送指示回路は、当該メモリ検査システムの起動時に、前記メモリから前記転送設定情報を読み出すことを特徴とする請求項２に記載のメモリ検査システム。
【請求項４】
前記メモリは、前記被検査データの参照用検査コードをさらに格納し、
前記検査回路は、前記メモリから前記被検査データの参照用検査コードを読み出して前記メモリの検査を行うことを特徴とする請求項１乃至３のいずれか１項に記載のメモリ検査システム。
【請求項５】
前記転送設定情報は、前記被検査データの一部を指定した転送対象範囲を含み、
前記転送回路は、前記転送設定情報に含まれる転送対象範囲に対して、前記メモリから前記検査回路へ前記被検査データの転送を行うことを特徴とする請求項１乃至４のいずれか１項に記載のメモリ検査システム。
【請求項６】
前記転送設定情報は、前記被検査データの第１の領域を転送対象として指定する第１の指定情報と、前記被検査データの第２の領域を転送対象として指定する第２の指定情報とを含み、
前記転送回路は、前記第１の指定情報に基づき、前記メモリから前記被検査データの第１の領域を読み出して前記検査回路へ転送する第１の転送処理と、前記第２の指定情報に基づき、前記メモリから前記被検査データの第２の領域を読み出して前記検査回路へ転送する第２の転送処理とを並列実行し、
前記検査回路は、前記第１の転送処理により転送された第１の領域と、前記第２の転送処理により転送された第２の領域と、前記参照用検査コードとを用いて前記メモリの検査を行うことを特徴とする請求項１乃至５のいずれか１項に記載のメモリ検査システム。
【請求項７】
前記検査回路は、
前記第１の転送処理により転送された第１の領域から第１の検査コードを生成する第１の検査コード生成部と、
前記第２の転送処理により転送された第２の領域から第２の検査コードを生成する第２の検査コード生成部と、
前記第１の検査コードと、前記第１の参照用検査コードとを用いて当該第１の領域の検査を行い、前記第２の検査コードと、前記第２の参照用検査コードとを用いて当該第２の領域の検査を行う検査処理部と、
を含むことを特徴とする請求項６に記載のメモリ検査システム。
【請求項８】
前記転送回路は、ＤＭＡ（Direct Memory Access）コントローラであることを特徴とする請求項１乃至７のいずれか１項に記載のメモリ検査システム。
【請求項９】
被検査データが格納されたメモリの検査方法であって、
転送回路において、予め登録された転送設定情報に基づき、前記メモリから被検査データを読み出すステップと、
前記転送回路において、読み出した被検査データを検査回路へ転送するステップと、
前記検査回路において、転送された前記被検査データと、前記被検査データの参照用検査コードとを用いて当該メモリの検査を行う検査ステップと、
を含むメモリ検査方法。
【請求項１０】
前記転送設定情報を含めて前記転送回路に対して転送指示を行う転送指示ステップをさらに含み、
前記読み出すステップは、前記転送回路において、前記転送指示に含まれる転送設定情報に基づき、前記メモリから被検査データを読み出すことを特徴とする請求項９に記載のメモリ検査方法。
【請求項１１】
前記メモリは、前記被検査データの転送設定情報をさらに格納し、
前記転送指示ステップは、当該メモリの検査開始時に、前記メモリから前記転送設定情報を読み出すことを特徴とする請求項１０に記載のメモリ検査方法。
【請求項１２】
前記メモリは、前記被検査データの参照用検査コードをさらに格納し、
前記検査ステップは、前記検査回路において、前記メモリから前記被検査データの参照用検査コードを読み出して前記メモリの検査を行うことを特徴とする請求項９乃至１１のいずれか１項に記載のメモリ検査方法。
【請求項１３】
前記転送設定情報は、前記被検査データの一部を指定した転送対象範囲を含み、
前記読み出すステップは、前記転送回路において、前記転送設定情報に含まれる転送対象範囲に対して、前記メモリから被検査データを読み出すことを特徴とする請求項９乃至１２のいずれか１項に記載のメモリ検査方法。
【請求項１４】
前記転送設定情報は、前記被検査データの第１の領域を転送対象として指定する第１の指定情報と、前記被検査データの第２の領域を転送対象として指定する第２の指定情報とを含み、
前記読み出すステップは、前記転送回路において、前記第１の指定情報に基づき、前記メモリから前記被検査データの第１の領域を読み出す処理と、前記第２の指定情報に基づき、前記メモリから前記被検査データの第２の領域を読み出す処理とを並列実行し、
前記転送するステップは、前記転送回路において、読み出した第１の領域を前記検査回路へ転送する第１の転送処理と、読み出した第２の領域を前記検査回路へ転送する第２の転送処理とを並列実行し、
前記検査ステップは、前記検査回路において、前記第１の転送処理により転送された第１の領域と、前記第２の転送処理により転送された第２の領域と、前記参照用検査コードとを用いて前記メモリの検査を行うことを特徴とする請求項９乃至１３のいずれか１項に記載のメモリ検査方法。
【請求項１５】
前記検査ステップは、
前記第１の転送処理により転送された第１の領域から第１の検査コードを生成する第１の検査コード生成処理と、
前記第２の転送処理により転送された第２の領域から第２の検査コードを生成する第２の検査コード生成処理と、
前記第１の検査コードと、前記第１の参照用検査コードとを用いて当該第１の領域の検査を行い、前記第２の検査コードと、前記第２の参照用検査コードとを用いて当該第２の領域の検査を行う検査処理と、
を含むことを特徴とする請求項１４に記載のメモリ検査方法。
【請求項１６】
第１の領域と第２の領域とを含む被検査データを格納するメモリと、
前記第１の領域が指定された第１の転送設定情報に基づき、前記メモリから当該メモリの検査を行う検査回路へ前記被検査データの第１の領域の転送を行う第１の転送回路と、
前記第２の領域が指定された第２の転送設定情報に基づき、前記メモリから当該メモリの検査を行う検査回路へ前記被検査データの第２の領域の転送を行う第２の転送回路と、
前記第１の転送回路により第１の領域が転送された場合に、前記第１の参照用検査コードを用いて当該第１の領域の検査を行い、前記第２の転送回路により第２の領域が転送された場合に、前記第２の参照用検査コードを用いて当該第２の領域の検査を行うことにより、前記メモリの検査を行う検査回路と、
を備えるメモリ検査システム。
【請求項１７】
前記メモリは、前記第１の転送設定情報及び前記第２の転送設定情報をさらに格納し、
当該メモリ検査システムの起動時に、前記メモリから前記第１の転送設定情報及び前記第２の転送設定情報を読み出し、前記第１の転送設定情報を含めて前記第１の転送回路に対して転送指示を行い、前記第２の転送設定情報を含めて前記第２の転送回路に対して転送指示を行う転送指示回路をさらに備え、
前記第１の転送回路は、前記転送指示回路からの転送指示に含まれる第１の転送設定情報に基づき、前記メモリから前記検査回路へ前記被検査データの第１の領域の転送を行い、
前記第２の転送回路は、前記転送指示回路からの転送指示に含まれる第２の転送設定情報に基づき、前記メモリから前記検査回路へ前記被検査データの第２の領域の転送を行うことを特徴とする請求項１６に記載のメモリ検査システム。
【請求項１８】
前記検査回路は、
前記第１の転送回路により転送された第１の領域から第１の検査コードを生成する第１の検査コード生成部と、
前記第２の転送回路により転送された第２の領域から第２の検査コードを生成する第２の検査コード生成部と、
前記第１の検査コードと、前記第１の参照用検査コードとを用いて当該第１の領域の検査を行い、前記第２の検査コードと、前記第２の参照用検査コードとを用いて当該第２の領域の検査を行う検査処理部と、
を含むことを特徴とする請求項１７又は１８に記載のメモリ検査システム。
【請求項１９】
第１の領域と第２の領域とを含む被検査データが格納されたメモリの検査方法であって、
前記第１の領域が指定された第１の転送設定情報に基づき、第１の転送回路において、前記メモリから当該メモリの検査を行う検査回路へ前記被検査データの第１の領域の転送を行う第１の転送ステップと、
前記第２の領域が指定された第２の転送設定情報に基づき、第２の転送回路において、前記メモリから前記検査回路へ前記被検査データの第２の領域の転送を行う第２の転送ステップと、
前記第１の転送ステップにより第１の領域が転送された場合に、前記第１の領域における第１の参照用検査コードを用いて当該第１の領域の検査を行い、前記第２の転送ステップにより第２の領域が転送された場合に、前記第２の領域における第２の参照用検査コードを用いて当該第２の領域の検査を行うことにより、前記メモリの検査を行う検査ステップと、
を含むメモリ検査方法。
【請求項２０】
前記メモリは、前記第１の転送設定情報及び前記第２の転送設定情報をさらに格納し、
当該メモリの検査開始時に、前記メモリから前記第１の転送設定情報を読み出し、当該第１の転送設定情報を含めて前記第１の転送回路へ転送指示を行う第１の転送指示ステップと、
当該メモリの検査開始時に、前記メモリから前記第２の転送設定情報を読み出し、当該第２の転送設定情報を含めて前記第２の転送回路へ転送指示を行う第２の転送指示ステップと、をさらに含むことを特徴とする請求項１９に記載のメモリ検査方法。
【請求項２１】
前記第１の転送ステップにより第１の領域が転送された場合に、当該第１の領域から第１の検査コードを生成する第１の検査コード生成ステップと、
前記第２の転送ステップにより第２の領域が転送された場合に、当該第２の領域から第２の検査コードを生成する第２の検査コード生成ステップと、をさらに含み、
前記検査ステップは、前記第１の検査コードと、前記第１の参照用検査コードとを用いて当該第１の領域の検査を行い、前記第２の検査コードと、前記第２の参照用検査コードとを用いて当該第２の領域の検査を行うことを特徴とする請求項１９又は２０に記載のメモリ検査方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリ検査システム及びメモリ検査方法に関し、被検査データが格納されたメモリに対するメモリ検査システム及びメモリ検査方法に関する。
【背景技術】
【０００２】
マイクロコンピュータは、動作のための初期値である任意のデータを予め格納した記憶装置であるデータメモリを搭載していることが多い。そして、マイクロコンピュータは、起動時にデータメモリに格納されたデータを読み込み、所定の動作を開始する。ここで、データメモリは、経年劣化等により不良が発生している場合、データが欠落してしまう可能性がある。その場合、マイクロコンピュータは、データメモリから正常なデータを読み込むことができず、正常に動作することができない。そのため、マイクロコンピュータは、起動時にデータを読み込む際に、スタートアップルーチンにより、データメモリの不良検出処理を行うことが一般的である。そして、マイクロコンピュータは、不良検出処理により不良が検出されなかった場合に、本来の動作を開始するようにしている。
【０００３】
特許文献１には、ＲＯＭ（Read Only Memory）を内蔵した半導体集積回路について、ＲＯＭに実装したデータの機密性を保ち、かつ、ＲＯＭのテストを実行可能にする半導体集積回路及びその検査方法に関する技術が開示されている。特許文献１にかかる半導体集積回路が有するＲＯＭは、機密情報データを格納している。そして、ＲＯＭは、データチェック用の機密ＣＲＣ（Cyclic Redundancy Check）データをさらに格納している。また、チェック演算回路は、ＲＯＭから読み出された機密情報データに対し、機密ＣＲＣデータを生成するための演算を実行する。そして、比較回路は、チェック演算回路の演算結果と、ＲＯＭから読み出された機密ＣＲＣデータとの比較を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−３４４９９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１には、データが格納されたメモリであるデータメモリの不良検出処理を実行するためのデータ転送処理に多くの時間を要するという問題がある。その理由は、特許文献１にかかる半導体集積回路は、データメモリからＣＲＣデータを生成するＣＲＣ回路へのデータ転送処理をソフトウェアにより制御しているためである。ここで、ソフトウェアによる制御とは、例えば、半導体集積回路に内蔵されたＣＰＵ（Central Processing Unit）がデータ転送処理を実装したプログラムを読み込むことにより、実現されることを示す。
【課題を解決するための手段】
【０００６】
本発明の第１の態様にかかるメモリ検査システムは、被検査データを格納するメモリと、前記被検査データと前記被検査データの参照用検査コードとを用いて当該メモリの検査を行う検査回路と、予め登録された前記被検査データの転送設定情報に基づき、前記メモリから前記検査回路へ前記被検査データの転送を行う転送回路と、を備える。
【０００７】
本発明の第２の態様にかかるメモリの検査方法は、被検査データが格納されたメモリの検査方法であって、転送回路において、予め登録された転送設定情報に基づき、前記メモリから被検査データを読み出すステップと、前記転送回路において、読み出した被検査データを検査回路へ転送するステップと、前記検査回路において、転送された前記被検査データと、前記被検査データの参照用検査コードとを用いて当該メモリの検査を行う検査ステップと、を含む。
【０００８】
上述した本発明の第１及び第２の態様にかかるメモリ検査システム及び方法では、転送回路は、予め登録された転送設定情報に基づいて動作を行う。そして、当該転送回路によって被検査データの転送を行うため、上述したソフトウェア制御に比べて、短時間でよるデータ転送を行うことができる。
【０００９】
本発明の第３の態様にかかるメモリ検査システムは、第１の領域と第２の領域とを含む被検査データを格納するメモリと、前記第１の領域が指定された第１の転送設定情報に基づき、前記メモリから当該メモリの検査を行う検査回路へ前記被検査データの第１の領域の転送を行う第１の転送回路と、前記第２の領域が指定された第２の転送設定情報に基づき、前記メモリから当該メモリの検査を行う検査回路へ前記被検査データの第２の領域の転送を行う第２の転送回路と、前記第１の転送回路により第１の領域が転送された場合に、前記第１の参照用検査コードを用いて当該第１の領域の検査を行い、前記第２の転送回路により第２の領域が転送された場合に、前記第２の参照用検査コードを用いて当該第２の領域の検査を行うことにより、前記メモリの検査を行う検査回路と、を備える。
【００１０】
本発明の第４の態様にかかるメモリの検査方法は、第１の領域と第２の領域とを含む被検査データが格納されたメモリの検査方法であって、前記第１の領域が指定された第１の転送設定情報に基づき、第１の転送回路において、前記メモリから当該メモリの検査を行う検査回路へ前記被検査データの第１の領域の転送を行う第１の転送ステップと、前記第２の領域が指定された第２の転送設定情報に基づき、第２の転送回路において、前記メモリから前記検査回路へ前記被検査データの第２の領域の転送を行う第２の転送ステップと、前記第１の転送ステップにより第１の領域が転送された場合に、前記第１の領域における第１の参照用検査コードを用いて当該第１の領域の検査を行い、前記第２の転送ステップにより第２の領域が転送された場合に、前記第２の領域における第２の参照用検査コードを用いて当該第２の領域の検査を行うことにより、前記メモリの検査を行う検査ステップと、を含む。
【００１１】
また、上述した本発明の第３及び第４の態様にかかるメモリ検査システム及び方法では、被検査データの第１の領域と第２の領域を第１の転送回路と第２の転送回路を用いて並列にデータ転送を行うことができるため、上述したソフトウェア制御に比べて、短時間でよるデータ転送を行うことができる。
【発明の効果】
【００１２】
本発明により、迅速にメモリの不良検出作業を開始することができるメモリ検査システム及びメモリ検査方法を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の実施の形態１にかかるメモリ検査システムの構成を示すブロック図である。
【図２】本発明の実施の形態１にかかるメモリ検査方法の処理を表すフローチャート図である。
【図３】本発明の実施の形態２にかかるメモリ検査システムの構成を示すブロック図である。
【図４】本発明の実施の形態２にかかるメモリ検査方法の処理を表すフローチャート図である。
【図５】本発明の実施の形態４にかかるメモリ検査システムの構成を示すブロック図である。
【図６】本発明の実施の形態４にかかるメモリ検査方法の処理を表すフローチャート図である。
【発明を実施するための形態】
【００１４】
以下では、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略する。
【００１５】
＜発明の実施の形態１＞
図１は、本発明の実施の形態１にかかるメモリ検査システム１００の構成を示すブロック図である。メモリ検査システム１００は、メモリ１１と、転送回路１２と、検査回路１３とを備える。メモリ検査システム１００は、メモリ１１の検査を行うものである。例えば、メモリ検査システム１００は、メモリ１１が経年劣化等により不良が発生しているか否かを検出する不良検出処理を行う。そして、メモリ検査システム１００は、メモリ１１に不良を検出した場合、その旨をエラー信号等として出力する。メモリ検査システム１００は、例えば、メモリ１１を同梱した半導体装置又はマイクロコンピュータ等の組み込みシステムであってもよい。または、メモリ検査システム１００は、メモリ１１を着脱可能にし、接続された任意のメモリに対して検査を行うものであってもよい。
【００１６】
メモリ１１は、被検査データ１４が格納された記憶装置である。メモリ１１は、例えば、フラッシュメモリ又はＲＡＭ等の不揮発性記憶装置であるか、又は、ＲＯＭ等の揮発性記憶装置であってもよい。メモリ１１は、少なくとも予め被検査データ１４が格納されたものである。
【００１７】
転送回路１２は、予め登録された被検査データ１４の転送設定情報１５に基づき、メモリ１１から検査回路１３へ被検査データ１４の転送を行う。ここで、転送回路１２は、ハードウェアにより実現された転送専用の電子回路である。転送設定情報１５は、少なくとも転送元と転送先の情報を含む。例えば、転送設定情報１５には、転送元としてメモリ１１、転送先として検査回路１３が設定されている。また、転送設定情報１５は、少なくともメモリ１１における読み出しの開始アドレスを含む。つまり、転送回路１２は、転送設定情報１５に基づき、メモリ１１から被検査データ１４を読み出す。そして、転送回路１２は、読み出した被検査データ１４を検査回路１３へ転送する。
【００１８】
検査回路１３は、被検査データ１４と、被検査データ１４の参照用検査コード１６とを用いてメモリ１１の検査を行う。例えば、検査回路１３は、転送回路１２から転送された被検査データ１４について検査コードを生成する。そして、検査回路１３は、生成された検査コードと参照用検査コード１６とを比較して、エラーの有無を判定する。その後、エラーが有りの場合、検査回路１３は、メモリ１１が不良を含むものとして検出する。参照用検査コード１６は、被検査データ１４から算出された誤り検出のためのコードである。そして、参照用検査コード１６は、予め算出されたものである。そのため、検査回路１３は、被検査データ１４から参照用検査コード１６と同様の算出方法によりコードを求めることにより算出された検査コードが参照用検査コード１６と一致しない場合には、被検査データ１４がメモリ１１内でデータが欠落するなどの不良が発生したことを検出することができる。
【００１９】
尚、転送設定情報１５及び参照用検査コード１６は、予めメモリ１１に格納されていてもよい。または、転送設定情報１５及び参照用検査コード１６は、メモリ１１とは異なる他の記憶装置に予め格納されていてもよい。例えば、メモリ検査システム１００に内蔵された他の記憶装置又はメモリ検査システム１００に着脱可能な任意の記憶装置であっても構わない。
【００２０】
図２は、本発明の実施の形態１にかかるメモリ検査方法の処理を表すフローチャート図である。まず、転送回路１２は、転送設定情報１５に基づき、メモリ１１から被検査データ１４を読み出す（Ｓ１１）。次に、転送回路１２は、読み出した被検査データ１４を検査回路１３へ転送する（Ｓ１２）。そして、検査回路１３は、転送された被検査データ１４と、参照用検査コード１６とを用いてメモリ１１の検査を行う（Ｓ１３）。
【００２１】
このように本発明の実施の形態１により、メモリ１１の不良検出処理のためのデータ転送処理をソフトウェア制御ではなく、ハードウェアによる処理で実現することで、短時間でデータ転送を完了することができ、迅速にメモリの不良検出作業を開始することができる。
【００２２】
＜発明の実施の形態２＞
本発明の実施の形態２は、本発明の実施の形態１の実施例の一形態である。図３は、本発明の実施の形態２にかかるマイクロコンピュータ２００の構成を示すブロック図である。マイクロコンピュータ２００は、メモリ２１と、ＤＭＡ（Direct Memory Access）設定用専用回路２４と、ＤＭＡ２５と、ＣＲＣ回路２６と、ＣＰＵ２７とを備える。
【００２３】
メモリ２１は、メモリ１１と同等の記憶装置である。メモリ２１は、制御情報領域２２とプログラム領域２３とを有する。制御情報領域２２には、参照用ＣＲＣコード２２１とＤＭＡ設定情報２２２とが格納されている。プログラム領域２３には、ユーザコード２３１が格納されている。参照用ＣＲＣコード２２１は、予めユーザコード２３１から巡回冗長検査方式により生成されたコードである。ＤＭＡ設定情報２２２は、ＤＭＡ２５によるデータ転送処理のための転送設定情報である。ＤＭＡ設定情報２２２は、例えば、転送元、転送先及び読み出し開始アドレス等を含む。ここでは、ＤＭＡ設定情報２２２には、転送元としてメモリ２１、転送先としてＣＲＣ回路２６が設定されている。ユーザコード２３１は、マイクロコンピュータ２００を動作において使用されるデータであり、例えば、初期設定値等である。また、参照用ＣＲＣコード２２１、ＤＭＡ設定情報２２２、ユーザコード２３１は、予めメモリ２１に格納されている。このように、メモリ２１は、制御情報領域２２とプログラム領域２３とを備えているため、制御情報領域２２に不良が発生した場合であっても、不良の検出を行うことができる。
【００２４】
尚、参照用ＣＲＣコード２２１は、メモリ２１以外の記憶装置に格納されていても構わない。また、ＤＭＡ設定情報２２２も、メモリ２１以外の記憶装置に格納されていても構わない。例えば、ＤＭＡ設定情報２２２は、ＤＭＡ設定用専用回路２４に内蔵された記憶装置に格納されていても構わない。
【００２５】
ＤＭＡ設定用専用回路２４は、ＤＭＡ２５に対して転送指示を行う。ここで、ＤＭＡ設定用専用回路２４は、ハードウェアにより実現された転送指示専用の電子回路である。また、ＤＭＡ設定用専用回路２４は、マイクロコンピュータ２００の起動時に、メモリ２１からＤＭＡ設定情報２２２を読み出し、ＤＭＡ設定情報２２２を含めてＤＭＡ２５へ転送指示を行う。
【００２６】
ＤＭＡ２５は、転送回路１２の一実施例である。ＤＭＡ２５は、機械語の命令群によらず、メモリとメモリまたはメモリとＩ／Ｏデバイスの間で直接データを転送することができるＤＭＡコントローラである。ＤＭＡ２５は、ＤＭＡ設定情報２２２に基づき、転送元から、読み出し開始アドレス以降に格納されたデータを所定のサイズごとに順番に読み出し、読み出したデータを転送先へ順番に出力する。すなわち、ＤＭＡ２５は、ＤＭＡ設定用専用回路２４からの転送指示に含まれるＤＭＡ設定情報２２２に基づき、転送元であるメモリ２１から転送先であるＣＲＣ回路２６へユーザコード２３１の転送を行う。また、ＤＭＡ２５は、メモリ２１からＣＲＣ回路２６へのユーザコード２３１の転送が完了した場合、転送完了割り込みの信号をＣＰＵ２７に対して出力する。
【００２７】
ＣＲＣ回路２６は、入力されたデータから順番に、巡回冗長検査方式によりＣＲＣコードを生成し、ＣＲＣコード格納レジスタ２６１に格納する。ここで、ＣＲＣ回路２６は、ハードウェアにより実現されたＣＲＣコード生成を行う専用の電子回路である。但し、ＣＲＣ回路２６は、これに限定されない。例えば、巡回冗長検査方式以外の誤り検査方式によりコードを生成するものであってもよい。
【００２８】
ＣＰＵ２７は、マイクロコンピュータ２００の動作を制御するための中央処理装置である。尚、マイクロコンピュータ２００は、組み込み用システムであり、図示しない構成として任意の処理が実装されたユーザプログラム及びメモリ検査処理を行うためのメモリ検査プログラムを有する。マイクロコンピュータ２００は、ＣＰＵ２７がメモリ検査プログラムを読み込むことでメモリ２１のメモリ検査処理を行う。そして、メモリ検査処理によりメモリ２１に不良がないと判定された場合に、ＣＰＵ２７は、ユーザプログラムを読み込み、任意の所定を実行する。
【００２９】
ＣＰＵ２７は、ＤＭＡ２５から転送完了割り込みの信号を受信した場合に、ＣＲＣコード格納レジスタ２６１からＣＲＣコードを取得し、メモリ２１から参照用ＣＲＣコード２２１を取得する。そして、取得したＣＲＣコードと参照用ＣＲＣコード２２１とを比較し、一致しなければ、エラー信号を出力する。
【００３０】
尚、ＣＲＣ回路２６に相当するロジックをメモリ検査プログラムに含めて実装しても構わない。その場合、ＣＲＣ回路２６及びＣＰＵ２７を含めたものが、検査回路１３に相当する。
【００３１】
図４は、本発明の実施の形態２にかかるメモリ検査方法の処理を表すフローチャート図である。まず、ＤＭＡ設定用専用回路２４は、マイクロコンピュータ２００の起動時、つまり、メモリ２１の検査開始時に、メモリ２１からＤＭＡ設定情報２２２を読み出す（Ｓ２１）。このとき、ＣＰＵ２７は、メモリ検査プログラムの読み込みを開始しても構わない。次に、ＤＭＡ設定用専用回路２４は、読み出したＤＭＡ設定情報２２２を含めてＤＭＡ２５へ転送指示を行う（Ｓ２２）。
【００３２】
続いて、ＤＭＡ２５は、ＤＭＡ設定情報２２２に基づき、メモリ２１からユーザコード２３１を読み出す（Ｓ２３）。具体的には、まず、ＤＭＡ２５は、ＤＭＡ設定用専用回路２４から転送指示を受信する。次に、ＤＭＡ２５は、転送指示からＤＭＡ設定情報２２２を抽出する。そして、ＤＭＡ２５は、ＤＭＡ設定情報２２２に含まれる転送元がメモリ２１であるため、メモリ２１に接続する。さらに、ＤＭＡ２５は、ＤＭＡ設定情報２２２に含まれる読み出し開始アドレスを参照し、メモリ２１のプログラム領域２３に格納されたユーザコード２３１の内、当該読み出し開始アドレスから所定のサイズのデータを読み出す。以後、ＤＭＡ２５は、前回読み出したデータの次のアドレスから所定のサイズのデータを順番に読み出す。
【００３３】
そして、ＤＭＡ２５は、読み出したユーザコード２３１をＣＲＣ回路２６へ転送する（Ｓ２４）。具体的には、ＤＭＡ２５は、メモリ２１から所定のサイズごとに順番に読み出されたユーザコード２３１の領域を、順番にＣＲＣ回路２６へ出力する。尚、ＤＭＡ２５は、ユーザコード２３１の転送が終わり次第、ＣＰＵ２７に対して転送完了割り込みの信号を出力する。
【００３４】
その後、ＣＲＣ回路２６は、転送されたユーザコード２３１からＣＲＣコードを生成する（Ｓ２５）。具体的には、ＣＲＣ回路２６は、ＤＭＡ２５から所定のサイズごとに転送されたユーザコード２３１の領域ごとに、巡回冗長検査方式により演算を実行し、ＣＲＣコードを生成する。
【００３５】
そして、ＣＰＵ２７は、生成されたＣＲＣコードと、参照用ＣＲＣコードとを比較する（Ｓ２６）。具体的には、まず、ＣＰＵ２７は、ＤＭＡ２５から転送完了割り込みの信号を受信する。次に、ＣＰＵ２７は、ＣＲＣコード格納レジスタ２６１からＣＲＣコードを読み出す。また、ＣＰＵ２７は、メモリ２１から参照用ＣＲＣコード２２１を読み出す。そして、ＣＰＵ２７は、読み出したＣＲＣコードと参照用ＣＲＣコード２２１とを比較する。
【００３６】
尚、ステップＳ２３からＳ２５は、所定のサイズごとに連続して実行されるため、ＤＭＡ２５によるデータ転送処理の最中に、ＣＲＣ回路２６は、既に転送されたデータに対してＣＲＣコード生成処理を実行している。但し、データ転送処理に比べてＣＲＣコードの生成処理の実行時間は短い。そのため、ＤＭＡ２５は、データ転送処理が完了し次第、転送完了割り込みの信号を出力し、ＣＰＵ２７が転送完了割り込みの信号を受信する間に、ＣＲＣ回路２６による最後のＣＲＣコード生成処理が終了している。よって、ＣＰＵ２７は、転送完了割り込みを受信し次第、ＣＲＣコード格納レジスタ２６１からＣＲＣコードを読み出すことにより処理効率が良くなる。
【００３７】
その後、ＣＰＵ２７は、ステップＳ２６による比較結果によりエラーが発生しているか否かを判定する（Ｓ２７）。例えば、ＣＰＵ２７は、ＣＲＣ回路２６により生成されたＣＲＣコードと参照用ＣＲＣコード２２１とが一致しなければ、エラーが発生していると判定する。
【００３８】
ステップＳ２７において、エラーが発生していると判定された場合、ＣＰＵ２７は、エラー信号を出力する（Ｓ２８）。この場合、メモリ２１に格納されたユーザコード２３１が、参照用ＣＲＣコード２２１が生成された時点と比べて異なった値であることを示す。例えば、メモリ２１が劣化したことによりプログラム領域２３が破壊された可能性がある。または、制御情報領域２２が破壊されたことに伴い、参照用ＣＲＣコード２２１が生成時に比べて異なった値と可能性もある。いずれにしても、メモリ２１から不良を検出したこととなる。そのため、以後、マイクロコンピュータ２００は、ユーザプログラムの動作を行わずに、処理を停止することができる。
【００３９】
また、ステップＳ２７において、エラーが発生していると判定された場合、ＣＰＵ２７は、ユーザプログラムを読み込み、所定の処理を開始することができる。
【００４０】
このように本発明の実施の形態２では、マイクロコンピュータ２００の電源投入直後に、自動で、ユーザが介在することなく、データメモリの不良検出処理を開始する。そして、マイクロコンピュータ２００は、スタートアップルーチン中、電源を投入してから、ユーザプログラムが実行されるまでの時間中に、当該不良検出処理を完了することができる。
【００４１】
また、本発明の実施の形態２では、転送回路としてＤＭＡ２５を用いることによりメモリ２１からＣＲＣ回路２６へのデータ転送処理をハードウェアにより直接的に行うことができる。そのため、特許文献１と比較してデータ転送処理を高速化することができる。これにより、データメモリの不良検査処理の時間を短縮することができる。
【００４２】
尚、マイクロコンピュータの電源投入からユーザプログラムの実行開始までに要する時間を短くすることに対する顧客要求は、年々高まっている。例えば、数十ミリ秒程度で実現することが要求される。しかしながら、特許文献１に開示された方法では、ソフトウェア制御によりデータ転送を行うため、数秒程度要すると考えられる。さらに、特許文献１では、メモリ検査のためのソフトウェアを実行させる際に、ユーザの操作が介在することになる。そのため、自動的に開始することができない。さらに、作業に多くの時間を費やすことになり、結果的に、不良検出処理全体が長時間化してしまう。
【００４３】
本発明では、ＤＭＡ設定用の専用回路であるＤＭＡ設定用専用回路２４により、マイクロコンピュータ２００の起動時に、ＤＭＡ設定情報２２２をメモリ２１から読み出し、ＤＭＡ２５に設定することにより、自動的に不良検出処理のためのデータ転送を開始することができる。これにより、不良検出処理の開始をさらに早くすることができる。
【００４４】
また、ＤＭＡ設定用専用回路２４を設けることにより、ユーザが介在することなく、データメモリの不良検出処理を開始することが可能である。
【００４５】
尚、ＤＭＡは、マイクロコンピュータに内蔵されている既存のＤＭＡを転用することができ、実現性が容易である。
【００４６】
＜発明の実施の形態３＞
本発明の実施の形態３では、発明の実施の形態２に改良を加え、被検査データの一部のみの検査を行うことで、より不良検出処理の時間を短くするものである。本発明の実施の形態３にかかるマイクロコンピュータ２００の構成及び処理の流れは、図３及び図４と同等であるため、詳細な説明を省略する。
【００４７】
例えば、メモリ２１に格納されたユーザコード２３１の内、実際のデータは一部のみである場合がある。このとき、マイクロコンピュータ２００は、メモリ２１の不良検出処理を行うために、全てのユーザコード２３１についてメモリ検査を行う必要はない。
【００４８】
本発明の実施の形態３にかかるＤＭＡ設定情報２２２は、ユーザコード２３１の一部を指定した転送対象範囲を含む。転送対象範囲とは、例えば、開始アドレスとＤＭＡ２５による転送処理の上限回数である。ＤＭＡ２５は、開始アドレスから固定幅で順番に読み出しを行うため、回数により読み出し範囲を設定することができるためである。つまり、ユーザコード２３１の一部であるメモリ検査対象である領域が開始アドレスからＤＭＡ２５により読み出しを行う固定幅の整数倍した範囲に収まるように、開始アドレス及び当該整数を上限回数として設定するとよい。
【００４９】
そして、本発明の実施の形態３にかかる参照用ＣＲＣコード２２１は、ユーザコード２３１の転送対象範囲の領域に対するＣＲＣコードである。また、本発明の実施の形態３にかかるＤＭＡ２５は、ＤＭＡ設定情報２２２に含まれる転送対象範囲に対して、メモリ２１からＣＲＣ回路２６へユーザコード２３１の転送を行う。すなわち、本発明の実施の形態３にかかるＤＭＡ２５は、ＤＭＡ設定情報２２２に含まれる転送上限回数に達するまでの間、所定のサイズでメモリ２１からユーザコード２３１を読み出す。
【００５０】
これにより、ユーザは、任意の余分な転送作業、例えば、ユーザが未使用の領域の転送を省略することができる。これにより、メモリの不良検査処理の時間を短縮することができる。
【００５１】
＜発明の実施の形態４＞
本発明の実施の形態４は、本発明の実施の形態１の実施例の他の一形態である。また、  本発明の実施の形態４は、本発明の実施の形態２の変形例である。本発明の実施の形態４では、少なくとも２つのＤＭＡによりデータ転送処理を並列実行することで、データ転送処理の時間を短くし、迅速にメモリの不良検出作業を開始するものである。尚、以下では、本発明の実施の形態２との違いを中心に説明する。
【００５２】
図５は、本発明の実施の形態４にかかるマイクロコンピュータ３００の構成を示すブロック図である。マイクロコンピュータ３００は、メモリ３１と、ＤＭＡ設定用専用回路Ａ３４１と、ＤＭＡ設定用専用回路Ｂ３４２と、ＤＭＡ−Ａ３５１と、ＤＭＡ−Ｂ３５２と、ＣＲＣ回路Ａ３６１と、ＣＲＣ回路Ｂ３６２と、ＣＰＵ３８とを備える。尚、メモリ３１は、メモリ２１と同等の機能を有する記憶装置である。ＤＭＡ設定用専用回路Ａ３４１及びＤＭＡ設定用専用回路Ｂ３４２は、ＤＭＡ設定用専用回路２４と同等の機能を有する電子回路である。ＤＭＡ−Ａ３５１及びＤＭＡ−Ｂ３５２は、ＤＭＡ２５４と同等の機能を有するＤＭＡコントローラである。ＣＲＣ回路Ａ３６１及びＣＲＣ回路Ｂ３６２は、ＣＲＣ回路２６と同等の機能を有する電子回路である。ＣＰＵ３８は、ＣＰＵ２７と同等の機能を有する中央処理装置である。
【００５３】
メモリ３１は、制御情報領域３２とプログラム領域３３とを有する。制御情報領域３２は、制御情報領域２２との違いとして、参照用ＣＲＣコードＡ３２１と、参照用ＣＲＣコードＢ３２２と、ＤＭＡ設定情報Ａ３２３と、ＤＭＡ設定情報Ｂ３２４とが格納されている。プログラム領域３３は、プログラム領域２３との違いとして、ユーザコードＡ３３１と、ユーザコードＢ３３２とが格納されている。ユーザコードＡ３３１は、プログラム領域３３の一部である第１の領域に格納されたデータである。また、ユーザコードＢ３３２は、プログラム領域３３の一部である第２の領域に格納されたデータである。
【００５４】
参照用ＣＲＣコードＡ３２１は、予めユーザコードＡ３３１から巡回冗長検査方式により生成されたコードである。また、参照用ＣＲＣコードＢ３２２は、予めユーザコードＢ３３２から巡回冗長検査方式により生成されたコードである。そして、ＤＭＡ設定情報Ａ３２３は、ユーザコードＡ３３１が格納された第１の領域が指定された転送設定情報である。ここでは、ＤＭＡ設定情報Ａ３２３には、転送元としてメモリ３１、転送先としてＣＲＣ回路Ａ３６１が設定されている。また、ＤＭＡ設定情報Ａ３２３には、読み出し開始アドレスとして、ユーザコードＡ３３１の開始アドレスが設定されている。ＤＭＡ設定情報Ｂ３２４は、ユーザコードＢ３３２が格納された第２の領域が指定された転送設定情報である。ここでは、ＤＭＡ設定情報Ｂ３２４には、転送元としてメモリ３１、転送先としてＣＲＣ回路Ｂ３６２が設定されている。また、ＤＭＡ設定情報Ｂ３２４には、読み出し開始アドレスとして、ユーザコードＢ３３２の開始アドレスが設定されている。
【００５５】
ＤＭＡ設定用専用回路Ａ３４１は、マイクロコンピュータ３００の起動時に、メモリ３１からＤＭＡ設定情報Ａ３２３を読み出し、ＤＭＡ設定情報Ａ３２３を含めてＤＭＡ−Ａ３５１へ転送指示を行う。ＤＭＡ設定用専用回路Ｂ３４２は、マイクロコンピュータ３００の起動時に、メモリ３１からＤＭＡ設定情報Ｂ３２４を読み出し、ＤＭＡ設定情報Ｂ３２４を含めてＤＭＡ−Ｂ３５２へ転送指示を行う。尚、ＤＭＡ設定用専用回路Ａ３４１及びＤＭＡ設定用専用回路Ｂ３４２は、一つのＤＭＡ設定用専用回路により実現されても構わない。その場合、当該ＤＭＡ設定用専用回路は、マイクロコンピュータ３００の起動時に、メモリ３１からＤＭＡ設定情報Ａ３２３及びＤＭＡ設定情報Ｂ３２４を含めて読み出し、ＤＭＡ設定情報Ａ３２３を含めてＤＭＡ−Ａ３５１に対して転送指示を行い、ＤＭＡ設定情報Ｂ３２４を含めてＤＭＡ−Ｂ３５２に対して転送指示を行うものであるとよい。
【００５６】
ＤＭＡ−Ａ３５１は、ＤＭＡ設定情報Ａ３２３に基づき、メモリ３１からＣＲＣ回路Ａ３６１へユーザコードＡ３３１の転送を行う。すなわち、ＤＭＡ−Ａ３５１は、ＤＭＡ設定用専用回路Ａ３４１からの転送指示に含まれるＤＭＡ設定情報Ａ３２３に基づき、転送元であるメモリ３１から転送先であるＣＲＣ回路Ａ３６１へユーザコードＡ３３１の転送を行う。また、ＤＭＡ−Ａ３５１は、メモリ３１からＣＲＣ回路Ａ３６１へのユーザコードＡ３３１の転送が完了した場合、転送完了割り込みの信号をＣＰＵ３８に対して出力する。
【００５７】
ＤＭＡ−Ｂ３５２は、ＤＭＡ設定情報Ｂ３２４に基づき、メモリ３１からＣＲＣ回路Ｂ３６２へユーザコードＢ３３２の転送を行う。すなわち、ＤＭＡ−Ｂ３５２は、ＤＭＡ設定用専用回路Ｂ３４２からの転送指示に含まれるＤＭＡ設定情報Ｂ３２４に基づき、転送元であるメモリ３１から転送先であるＣＲＣ回路Ｂ３６２へユーザコードＢ３３２の転送を行う。また、ＤＭＡ−Ｂ３５２は、メモリ３１からＣＲＣ回路Ｂ３６２へのユーザコードＢ３３２の転送が完了した場合、転送完了割り込みの信号をＣＰＵ３８に対して出力する。
【００５８】
ＣＲＣ回路Ａ３６１は、ＤＭＡ−Ａ３５１により転送されたユーザコードＡ３３１から第１の検査コードを生成し、ＣＲＣコード格納レジスタ３７１に格納する。ＣＲＣ回路Ｂ３６２は、ＤＭＡ−Ｂ３５２により転送されたユーザコードＢ３３２から第２の検査コードを生成し、ＣＲＣコード格納レジスタ３７２に格納する。
【００５９】
ＣＰＵ３８は、ＤＭＡ−Ａ３５１からの転送完了割り込みの信号を受信した場合、ＣＲＣコード格納レジスタ３７１に格納された第１の検査コードと、参照用ＣＲＣコードＡ３２１とを用いてユーザコードＡ３３１の検査を行う。また、ＣＰＵ３８は、ＤＭＡ−Ｂ３５２からの転送完了割り込みの信号を受信した場合、ＣＲＣコード格納レジスタ３７２に格納された第２の検査コードと、参照用ＣＲＣコードＢ３２２とを用いてユーザコードＢ３３２の検査を行う。ＣＰＵ３８は、このようにしてメモリ３１の検査を行う。
【００６０】
図６は、本発明の実施の形態４にかかるメモリ検査方法の処理を表すフローチャート図である。まず、ＤＭＡ設定用専用回路Ａ３４１及びＤＭＡ−Ａ３５１は、ユーザコードＡ３３１のデータ転送処理を行う（Ｓ３１１）。すなわち、ＤＭＡ設定用専用回路Ａ３４１は、メモリ３１の検査開始時に、メモリ３１からＤＭＡ設定情報Ａ３２３を読み出し、ＤＭＡ設定情報Ａ３２３を含めてＤＭＡ−Ａ３５１へ転送指示を行う。そして、ＤＭＡ−Ａ３５１は、ＤＭＡ設定情報Ａ３２３に基づき、メモリ３１からＣＲＣ回路Ａ３６１へユーザコードＡ３３１の転送を行う。具体的には、ＤＭＡ−Ａ３５１は、ＤＭＡ設定情報Ａ３２３に含まれる転送元がメモリ３１であるため、メモリ３１に接続する。さらに、ＤＭＡ−Ａ３５１は、ＤＭＡ設定情報Ａ３２３に含まれる読み出し開始アドレスを参照し、メモリ３１のプログラム領域３３に格納されたユーザコードＡ３３１の内、当該読み出し開始アドレスから所定のサイズのデータを読み出す。以後、ＤＭＡ−Ａ３５１は、前回読み出したデータの次のアドレスから所定のサイズのデータを順番に読み出す。また、ＤＭＡ−Ａ３５１は、メモリ３１から所定のサイズごとに順番に読み出されたユーザコードＡ３３１の領域を、順番にＣＲＣ回路Ａ３６１へ出力する。尚、ＤＭＡ−Ａ３５１は、ユーザコードＡ３３１の転送が終わり次第、ＣＰＵ３８に対して転送完了割り込みの信号を出力する。
【００６１】
次に、ＣＲＣ回路Ａ３６１は、ＣＲＣコードＡの生成処理を行う（Ｓ３１２）。すなわち、ＣＲＣ回路Ａ３６１は、ステップＳ３１１によりユーザコードＡ３３１が転送された場合に、ユーザコードＡ３３１から第１の検査コードとしてＣＲＣコードＡを生成し、生成したＣＲＣコードＡをＣＲＣコード格納レジスタ３７１に格納する。
【００６２】
そして、ＣＰＵ３８は、生成されたＣＲＣコードＡと、参照用ＣＲＣコードＡ３２１とを比較する（Ｓ３１３）。具体的には、まず、ＣＰＵ３８は、ＤＭＡ−Ａ３５１から転送完了割り込みの信号を受信する。次に、ＣＰＵ３８は、ＣＲＣコード格納レジスタ３７１からＣＲＣコードＡを読み出す。また、ＣＰＵ３８は、メモリ３１から参照用ＣＲＣコードＡ３２１を読み出す。そして、ＣＰＵ３８は、読み出したＣＲＣコードＡと参照用ＣＲＣコードＡ３２１とを比較する。
【００６３】
また、ステップＳ３２１、Ｓ３２２及びＳ３２３は、ステップＳ３１１、Ｓ３１２及びＳ３１３と比べて、ＤＭＡ設定用専用回路Ａ３４１、ＤＭＡ−Ａ３５１及びＣＲＣ回路Ａ３６１が、ＤＭＡ設定用専用回路Ｂ３４２、ＤＭＡ−Ｂ３５２及びＣＲＣ回路Ｂ３６２に置き換わったものである。但し、動作内容は、上述したものと同等であるため、詳細な説明を省略する。
【００６４】
その後、ＣＰＵ３８は、ステップＳ３１３による比較結果及びＳ３２３による比較結果のいずれかにおいてエラーが発生しているか否かを判定する（Ｓ３３）。そして、いずれかにおいてエラーが発生していると判定された場合、ＣＰＵ３８は、エラー信号を出力する（Ｓ３４）。例えば、ＣＰＵ３８は、ステップＳ３１３による処理及びＳ３２３による処理のそれぞれが終了した後に判定を行っても良い。または、ＣＰＵ３８は、ステップＳ３１３及びＳ３２３のそれぞれの処理が終わり次第、判定を行っても良い。つまり、ＣＰＵ３８は、ＤＭＡ−Ａ３５１によりユーザコードＡ３３１が転送された場合に、参照用ＣＲＣコードＡ３２１を用いてユーザコードＡ３３１が格納された第１の領域の検査を行う。また、ＣＰＵ３８は、ＤＭＡ−Ｂ３５２によりユーザコードＢ３３２が転送された場合に、参照用ＣＲＣコードＢ３２２を用いてユーザコードＢ３３２が格納された第２の領域の検査を行う。これにより、ＣＰＵ３８は、メモリ３１の検査を行う。
【００６５】
このように、本発明の実施の形態４により、データ転送処理を並列実行することができ、不良検出処理の開始を特許文献１に比べて早くすることができる。
【００６６】
＜その他の実施の形態＞
尚、上述した本発明の実施の形態２において、ＤＭＡ２５以外の転送回路により、複数の転送処理を並列実行しても構わない。その場合、ＤＭＡ設定情報２２２は、プログラム領域２３の第１の領域を転送対象として指定する第１の指定情報と、プログラム領域２３の第２の領域を転送対象として指定する第２の指定情報とを含む。そして、転送回路は、第１の指定情報に基づき、メモリ２１からユーザコード２３１の内、第１の領域の部分から読み出してＣＲＣ回路２６へ転送する第１の転送処理と、第２の指定情報に基づき、メモリ２１からユーザコード２３１の内、第２の領域の部分から読み出してＣＲＣ回路２６へ転送する第２の転送処理とを並列実行する。そして、検査回路は、第１の転送処理により転送された第１の領域と、第２の転送処理により転送された第２の領域と、参照用ＣＲＣコード２２１とを用いてメモリ２１の検査を行うようにするとよい。
【００６７】
また、この場合さらに、検査回路は、第１の検査コード生成部と、第２の検査コード生成部と、検査処理部とを含むとよい。ここで、第１の検査コード生成部は、第１の転送処理により転送された第１の領域から第１の検査コードを生成する。第２の検査コード生成部は、第２の転送処理により転送された第２の領域から第２の検査コードを生成する。検査処理部は、第１の検査コードと、第１の参照用検査コードとを用いて第１の領域の検査を行い、第２の検査コードと、第２の参照用検査コードとを用いて第２の領域の検査を行うようにするとよい。
【００６８】
または、当該転送回路において、第１の指定情報に基づき、メモリ２１からプログラム領域２３の第１の領域を読み出す処理と、第２の指定情報に基づき、メモリ２１からプログラム領域２３の第２の領域を読み出す処理とを並列実行する。そして、当該転送回路において、読み出した第１の領域を検査回路へ転送する第１の転送処理と、読み出した第２の領域を検査回路へ転送する第２の転送処理とを並列実行する。そして、検査回路において、第１の転送処理により転送された第１の領域と、第２の転送処理により転送された第２の領域と、参照用ＣＲＣコード２２１とを用いてメモリ２１の検査を行うようにしてもよい。
【００６９】
さらに、本発明は上述した実施の形態のみに限定されるものではなく、既に述べた本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。
【符号の説明】
【００７０】
１００  メモリ検査システム
１１  メモリ
１２  転送回路
１３  検査回路
１４  被検査データ
１５  転送設定情報
１６  参照用検査コード
２００  マイクロコンピュータ
２１  メモリ
２２  制御情報領域
２２１  参照用ＣＲＣコード
２２２  ＤＭＡ設定情報
２３  プログラム領域
２３１  ユーザコード
２４  ＤＭＡ設定用専用回路
２５  ＤＭＡ
２６  ＣＲＣ回路
２６１  ＣＲＣコード格納レジスタ
２７  ＣＰＵ
３００  マイクロコンピュータ
３１  メモリ
３２  制御情報領域
３２１  参照用ＣＲＣコードＡ
３２２  参照用ＣＲＣコードＢ
３２３  ＤＭＡ設定情報Ａ
３２４  ＤＭＡ設定情報Ｂ
３３  プログラム領域
３３１  ユーザコードＡ
３３２  ユーザコードＢ
３４１  ＤＭＡ設定用専用回路Ａ
３４２  ＤＭＡ設定用専用回路Ｂ
３５１  ＤＭＡ−Ａ
３５２  ＤＭＡ−Ｂ
３６１  ＣＲＣ回路Ａ
３７１  ＣＲＣコード格納レジスタ
３６２  ＣＲＣ回路Ｂ
３７２  ＣＲＣコード格納レジスタ
３８  ＣＰＵ
【図１】
2010262715.tif 000003
【図２】
2010262715.tif 000004
【図３】
2010262715.tif 000005
【図４】
2010262715.tif 000006
【図５】
2010262715.tif 000007
【図６】
2010262715.tif 000008