(57)【要約】【課題】ブート処理の完了を待たずにプロセッサがメモリ上のプログラム実行を開始することができる情報処理装置を提供する。【解決手段】ＨＤＤ装置５に記憶されているデータを、ＤＲＡＭ７にＤＭＡ転送するＤＭＡコントローラ４と、ＤＭＡ転送が実行された転送済領域を、記憶するＤＭＡ開始アドレスレジスタ６３３及びＤＭＡ済サイズレジスタ６３４と、プロセッサの出力したアドレスが、ＤＭＡ開始アドレスレジスタ６３３及びＤＭＡ済サイズレジスタ６３４により記憶されている転送済領域を示すとき、当該アクセスを許可し、当該アドレスが、ＤＭＡ開始アドレスレジスタ６３３及びＤＭＡ済サイズレジスタ６３４により記憶されている転送済領域の範囲外を示すとき、当該アクセスを待たせるメモリアクセス制御部６１１とを備えた。【選択図】図１
2009199258.tif 000002
【特許請求の範囲】
【請求項１】
メモリと、
前記メモリにアクセスするプロセッサと、
データを記憶する記憶装置と、
前記記憶装置に記憶されているデータを、前記メモリにＤＭＡ転送するＤＭＡコントローラと、
前記メモリにおける前記ＤＭＡコントローラによるＤＭＡ転送が実行された転送済領域を、記憶する転送済領域記憶部と、
前記プロセッサが前記メモリへのアクセス要求を出力した場合、当該アクセス要求で指定されるアドレスが、前記転送済領域記憶部により記憶されている転送済領域を示すとき、当該アクセスを許可し、当該アクセス要求で指定されるアドレスが、前記転送済領域記憶部により記憶されている転送済領域の範囲外を示すとき、当該アクセス要求に基づくアクセスを待たせるメモリアクセス制御部と
を備えることを特徴とする情報処理装置。
【請求項２】
前記ＤＭＡコントローラによるＤＭＡ転送が予定されている領域を、ＤＭＡ領域として予め記憶するＤＭＡ領域記憶部をさらに備え、
前記メモリアクセス制御部は、さらに、
前記プロセッサが前記メモリへのアクセス要求を出力した場合において、当該アクセス要求で指定されるアドレスが、前記ＤＭＡ領域記憶部により記憶されているＤＭＡ領域の範囲外を示すとき、当該アクセス要求に基づくアクセスを許可すること
を特徴とする請求項１記載の情報処理装置。
【請求項３】
前記メモリが正常か否かをテストするメモリテスト部と、
前記メモリにおいて、前記メモリテスト部によるテストが実行された領域を、テスト済領域として記憶するテスト済領域記憶部とをさらに備え、
前記メモリアクセス制御部は、さらに、
前記プロセッサが前記メモリへのアクセス要求を出力した場合において、当該アクセス要求で指定されるアドレスが、前記テスト済領域記憶部により記憶されているテスト済領域の範囲外を示すとき、当該アクセス要求に基づくアクセスを待たせること
を特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記ＤＭＡコントローラが前記メモリへのアクセス要求を出力した場合、当該アクセス要求で指定されるアドレスが、前記テスト済領域記憶部により記憶されているテスト済領域を示すとき、当該ＤＭＡコントローラのアクセスを許可し、当該アクセス要求で指定されるアドレスが、前記テスト済領域記憶部により記憶されているテスト済領域の範囲外を示すとき、当該アクセス要求に基づくＤＭＡコントローラのアクセスを待たせるＤＭＡアクセス制御部をさらに備えること
を特徴とする請求項３記載の情報処理装置。
【請求項５】
前記転送済領域記憶部は、
ＤＭＡ開始アドレス記憶部と、
ＤＭＡ済サイズ記憶部とを備え、
前記ＤＭＡコントローラによるＤＭＡ転送を監視して、当該ＤＭＡ転送が開始されたアドレスを前記ＤＭＡ開始アドレス記憶部によってＤＭＡ開始アドレスとして記憶させ、前記ＤＭＡ転送が実行されたデータサイズを計数して前記ＤＭＡ済サイズ記憶部によってＤＭＡ済サイズとして記憶させることにより、当該ＤＭＡ開始アドレスと当該ＤＭＡ済サイズとを用いて前記転送済領域を示すこと
を特徴とする請求項１〜４のいずれか１項に記載の情報処理装置。
【請求項６】
前記転送済領域記憶部は、
前記メモリの記憶領域を複数のブロックに分割し、この各ブロックに対応するフラグを記憶するＤＭＡフラグ記憶部を備え、
前記ＤＭＡコントローラによるＤＭＡ転送を監視して、前記ＤＭＡフラグ記憶部における当該ＤＭＡ転送が終了したブロックに対応するフラグをオンさせることで、前記転送済領域を示すこと
を特徴とする請求項１〜４のいずれか１項に記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリにＤＭＡ転送されたデータに、プロセッサがアクセスする情報処理装置に関する。
【背景技術】
【０００２】
従来より、パーソナルコンピュータや複写機、複合機等の情報処理装置を起動する際に、メモリが正常にアクセスできるか否かをテストするメモリテストや、外部記憶装置からメモリにプログラムをＤＭＡ（Direct Memory Access）転送するいわゆるブート処理が実行されている。
【０００３】
そして、このような情報処理装置の起動を高速化するために、物理メモリ空間を複数のブロックに分割し、ブロック毎に順次メモリテストを実行し、メモリテストの終了したブロックに対して（全てのメモリテスト完了を待たずに）、ＲＯＭ（Read Only Memory）やＨＤＤ（Hard Disk Drive）等の外部記憶装置からのプログラムのＤＭＡ転送を開始する技術が知られている（例えば、特許文献１参照。）。
【０００４】
この技術によれば、全てのメモリテスト完了を待たずにＤＭＡ転送を開始することができるので、メモリテストの開始からブート処理の終了までの時間を短縮することができる。
【特許文献１】特開平６−３４８５０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の技術では、ＤＭＡ転送によるブート処理が完了する前にプロセッサがメモリ上のプログラム実行を開始すると、ジャンプ先のプログラムがまだメモリに転送されておらず、プロセッサが暴走してしまうおそれがある。そのため、プロセッサは、ブート処理が完了するまでメモリ上のプログラム実行を開始することができないという、不都合があった。
【０００６】
本発明は、このような事情に鑑みて為された発明であり、ブート処理の完了を待たずにプロセッサがメモリ上のプログラム実行を開始することができる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る情報処理装置は、メモリと、前記メモリにアクセスするプロセッサと、データを記憶する記憶装置と、前記記憶装置に記憶されているデータを、前記メモリにＤＭＡ転送するＤＭＡコントローラと、前記メモリにおける前記ＤＭＡコントローラによるＤＭＡ転送が実行された転送済領域を、記憶する転送済領域記憶部と、前記プロセッサが前記メモリへのアクセス要求を出力した場合、当該アクセス要求で指定されるアドレスが、前記転送済領域記憶部により記憶されている転送済領域を示すとき、当該アクセスを許可し、当該アクセス要求で指定されるアドレスが、前記転送済領域記憶部により記憶されている転送済領域の範囲外を示すとき、当該アクセス要求に基づくアクセスを待たせるメモリアクセス制御部とを備える。
【０００８】
この構成によれば、転送済領域記憶部によって、ＤＭＡコントローラによるメモリへのＤＭＡ転送が実行された転送済領域が記憶される。また、プロセッサがメモリへのアクセス要求を出力した場合、当該アクセス要求で指定されるアドレスが、転送済領域記憶部により記憶されている転送済領域を示すとき、メモリアクセス制御部によって、当該アクセスが許可される。これにより、ブート処理がまだ完了していなくても、プロセッサがアクセスしようとするアドレスのデータがメモリにＤＭＡ転送されていれば、プロセッサがメモリにアクセスすることができるので、ブート処理の完了を待たずにプロセッサがメモリ上のプログラム実行を開始することができる。
【０００９】
一方、プロセッサがメモリへのアクセス要求を出力した場合、当該アクセス要求で指定されるアドレスが、転送済領域記憶部により記憶されている転送済領域の範囲外を示すとき、メモリアクセス制御部によって、当該アクセス要求に基づくプロセッサのアクセスが待たされるので、まだＤＭＡ転送が実行されていないメモリエリアにプロセッサがアクセスするおそれが低減される。
【００１０】
また、前記ＤＭＡコントローラによるＤＭＡ転送が予定されている領域を、ＤＭＡ領域として予め記憶するＤＭＡ領域記憶部をさらに備え、前記メモリアクセス制御部は、さらに、前記プロセッサが前記メモリへのアクセス要求を出力した場合において、当該アクセス要求で指定されるアドレスが、前記ＤＭＡ領域記憶部により記憶されているＤＭＡ領域の範囲外を示すとき、当該アクセス要求に基づくアクセスを許可することが好ましい。
【００１１】
メモリは、必ずしも全領域にプログラムがＤＭＡ転送されるとは限らず、例えば作業領域として用いられる領域等、ＤＭＡ転送が実行されない領域もある。そこで、この構成によれば、ＤＭＡ領域記憶部により、ＤＭＡ転送の予定されている領域が、ＤＭＡ領域として記憶されている。そして、プロセッサのアクセス要求で指定されるアドレスが、ＤＭＡ領域記憶部により記憶されているＤＭＡ領域の範囲外を示すとき、メモリアクセス制御部によって、当該アクセス要求に基づくアクセスが許可される。これにより、プロセッサが、ＤＭＡ転送の予定されていない領域へアクセスすることが可能となる。
【００１２】
また、前記メモリが正常か否かをテストするメモリテスト部と、前記メモリにおいて、前記メモリテスト部によるテストが実行された領域を、テスト済領域として記憶するテスト済領域記憶部とをさらに備え、前記メモリアクセス制御部は、さらに、前記プロセッサが前記メモリへのアクセス要求を出力した場合において、当該アクセス要求で指定されるアドレスが、前記テスト済領域記憶部により記憶されているテスト済領域の範囲外を示すとき、当該アクセス要求に基づくアクセスを待たせることが好ましい。
【００１３】
この構成によれば、メモリテスト部によって、メモリのテストが実行される。また、テスト済領域記憶部によって、メモリテスト部によるテストが実行された領域が、テスト済領域として記憶される。そして、プロセッサのアクセス要求で指定されるアドレスが、テスト済領域記憶部により記憶されているテスト済領域の範囲外を示すとき、メモリアクセス制御部によって、プロセッサのアクセスが待たせるので、またテストされていないメモリ領域を、プロセッサがアクセスするおそれが低減される。
【００１４】
また、前記ＤＭＡコントローラが前記メモリへのアクセス要求を出力した場合、当該アクセス要求で指定されるアドレスが、前記テスト済領域記憶部により記憶されているテスト済領域を示すとき、当該ＤＭＡコントローラのアクセスを許可し、当該アクセス要求で指定されるアドレスが、前記テスト済領域記憶部により記憶されているテスト済領域の範囲外を示すとき、当該アクセス要求に基づくＤＭＡコントローラのアクセスを待たせるＤＭＡアクセス制御部をさらに備えることが好ましい。
【００１５】
この構成によれば、ＤＭＡコントローラがＤＭＡ転送を実行するべく指定したアドレスが、テスト済領域記憶部により記憶されているテスト済領域を示すとき、ＤＭＡアクセス制御部によって、ＤＭＡコントローラのアクセスが許可される。一方、ＤＭＡコントローラが指定したアドレスが、テスト済領域記憶部により記憶されているテスト済領域の範囲外を示すとき、ＤＭＡアクセス制御部によって、ＤＭＡコントローラのアクセスが待たされる。これにより、テスト済みのメモリ領域にのみ、ＤＭＡ転送が実行される。
【００１６】
また、前記転送済領域記憶部は、ＤＭＡ開始アドレス記憶部と、ＤＭＡ済サイズ記憶部とを備え、前記ＤＭＡコントローラによるＤＭＡ転送を監視して、当該ＤＭＡ転送が開始されたアドレスを前記ＤＭＡ開始アドレス記憶部によってＤＭＡ開始アドレスとして記憶させ、前記ＤＭＡ転送が実行されたデータサイズを計数して前記ＤＭＡ済サイズ記憶部によってＤＭＡ済サイズとして記憶させることにより、当該ＤＭＡ開始アドレスと当該ＤＭＡ済サイズとを用いて前記転送済領域を示すことが好ましい。
【００１７】
この構成によれば、ＤＭＡ開始アドレスとＤＭＡ済サイズとを用いて転送済領域が記憶されるので、少ないデータ量で転送済領域を記憶することができ、転送済領域の管理が容易である。
【００１８】
また、前記転送済領域記憶部は、前記メモリの記憶領域を複数のブロックに分割し、この各ブロックに対応するフラグを記憶するＤＭＡフラグ記憶部を備え、前記ＤＭＡコントローラによるＤＭＡ転送を監視して、前記ＤＭＡフラグ記憶部における当該ＤＭＡ転送が終了したブロックに対応するフラグをオンさせることで、前記転送済領域を示すようにしてもよい。
【００１９】
この構成によれば、メモリの記憶領域が、複数のブロックに分割されて管理され、ＤＭＡ転送が終了したブロックに対応するフラグがオンされて転送済領域が示されるので、例えば転送済領域が離散的に存在する場合であっても、転送済領域を示すことが容易である。
【発明の効果】
【００２０】
このような構成の情報処理装置は、転送済領域記憶部によって、ＤＭＡコントローラによるメモリへのＤＭＡ転送が実行された転送済領域が記憶される。また、プロセッサがメモリへのアクセス要求を出力した場合、当該アクセス要求で指定されるアドレスが、転送済領域記憶部により記憶されている転送済領域を示すとき、メモリアクセス制御部によって、当該アクセスが許可される。これにより、ブート処理がまだ完了していなくても、プロセッサがアクセスしようとするアドレスのデータがメモリにＤＭＡ転送されていれば、プロセッサがメモリにアクセスすることができるので、ブート処理の完了を待たずにプロセッサがメモリ上のプログラム実行を開始することができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明に係る実施形態を図面に基づいて説明する。なお、各図において同一の符号を付した構成は、同一の構成であることを示し、その説明を省略する。図１は、本発明の一実施形態に係る情報処理装置の構成の一例を示すブロック図である。図１に示す情報処理装置１は、ＣＰＵ（Central Processing Unit）２（プロセッサ）、メモリテスト回路３（メモリテスト部）、ＤＭＡコントローラ４、ＨＤＤ（Hard Disk Drive）装置５（記憶装置）、制御回路６、及びＤＲＡＭ（Dynamic Random Access Memory）７（メモリ）を備えている。
【００２２】
制御回路６は、例えばＡＳＩＣ（Application Specific Integrated Circuit）を用いて構成された制御回路であり、ＣＰＵＩ／Ｆ部６１、テスト回路Ｉ／Ｆ部６２（テスト済領域記憶部）、ＤＭＡＩ／Ｆ部６３（転送済領域記憶部）、及びメモリＩ／Ｆ部６４を備えている。
【００２３】
メモリテスト回路３は、例えばステートマシンや論理回路等を用いて構成されている。そして、メモリテスト回路３は、制御回路６を介してＤＲＡＭ７にアクセスし、ＤＲＡＭ７のアドレスを順次更新しながら例えばデータの書き込み、読み出し、及び照合を繰り返すことにより、ＤＲＡＭ７が正常であるか否かをテストする。
【００２４】
ＨＤＤ装置５は、例えばＣＰＵ２のプログラムを記憶している。ＤＭＡコントローラ４は、制御回路６を介してＤＲＡＭ７にアクセスすることで、ＨＤＤ装置５に記憶されているデータ、例えばＣＰＵ２のプログラムをＤＲＡＭ７へＤＭＡ転送する。
【００２５】
ＣＰＵＩ／Ｆ部６１は、ＣＰＵ２によるＤＲＡＭ７のアクセスを制御するメモリアクセス制御部６１１を備えている。
【００２６】
テスト回路Ｉ／Ｆ部６２は、テスト開始アドレスレジスタ６２１と、テスト済サイズレジスタ６２２と、テスト済最終アドレスレジスタ６２３とを備えている。また、テスト回路Ｉ／Ｆ部６２は、例えばステートマシン、カウンタ回路、加算回路、及び論理回路等を用いて構成されている。
【００２７】
そして、テスト回路Ｉ／Ｆ部６２は、メモリテスト回路３によるＤＲＡＭ７へのアクセス信号を監視し、メモリテストの開始アドレスを取得して、テスト開始アドレスレジスタ６２１に記憶させる。
【００２８】
また、テスト回路Ｉ／Ｆ部６２は、メモリテスト回路３によるＤＲＡＭ７へのアクセス信号を監視し、メモリテスト回路３によるメモリテストの実行が終わったデータサイズ（アドレス数）を計数し、テスト済サイズとしてテスト済サイズレジスタ６２２に記憶させる。
【００２９】
また、テスト回路Ｉ／Ｆ部６２は、テスト開始アドレスレジスタ６２１に記憶されたテスト開始アドレスと、テスト済サイズレジスタ６２２に記憶されたテスト済サイズとの加算値を、テスト済最終アドレスとしてテスト済最終アドレスレジスタ６２３に記憶させる。
【００３０】
なお、テスト開始アドレスレジスタ６２１、テスト済サイズレジスタ６２２、及びテスト済最終アドレスレジスタ６２３の代わりに、ＤＲＡＭ７の記憶領域を複数のブロックに分割し、この各ブロックに対応するフラグを記憶するテストフラグレジスタを、テスト済領域記憶部として備えてもよい。そして、テスト回路Ｉ／Ｆ部６２は、メモリテスト回路３によるメモリテストが終了したブロックに対応するフラグをオンさせることで、テストフラグレジスタにテスト済みのメモリ領域、すなわちテスト済領域を記憶させるようにしてもよい。
【００３１】
ＤＭＡＩ／Ｆ部６３は、ＤＭＡアクセス制御部６３１、ＤＭＡ領域レジスタ６３２、ＤＭＡ開始アドレスレジスタ６３３（ＤＭＡ開始アドレス記憶部）、ＤＭＡ済サイズレジスタ６３４（ＤＭＡ済サイズ記憶部）、及びＤＭＡ済最終アドレスレジスタ６３５を備えている。また、ＤＭＡＩ／Ｆ部６３は、例えばステートマシン、カウンタ回路、加算回路、及び論理回路等を用いて構成されている。
【００３２】
ＤＭＡアクセス制御部６３１は、ＤＭＡコントローラ４から出力されたアドレスを監視し、当該アドレスが、テスト開始アドレスレジスタ６２１に記憶されているテスト開始アドレスから、テスト済最終アドレスレジスタ６２３に記憶されているテスト済最終アドレスまでの間、すなわちテスト済領域に入っている場合、ＤＭＡコントローラ４のアクセスを許可して当該アクセス要求をメモリＩ／Ｆ部６４へ出力する。
【００３３】
その一方、ＤＭＡアクセス制御部６３１は、ＤＭＡコントローラ４から出力されたアドレスを監視し、当該アドレスが、上記テスト済領域の範囲外であるとき、ＤＭＡコントローラ４のアクセスを待機させる。
【００３４】
具体的には、ＤＭＡアクセス制御部６３１は、例えばウェイトサイクルを要求するＷＡＩＴ信号をＤＭＡコントローラ４へ出力することでＤＭＡコントローラ４を待機させてもよい。また、例えばＤＭＡコントローラ４とＤＭＡＩ／Ｆ部６３との間でハンドシェイクを行う構成において、ＤＭＡアクセス制御部６３１は、ＤＭＡコントローラ４のアクセス要求に対して応答信号を返さないことによって、ＤＭＡコントローラ４のアクセスを待機させてもよい。
【００３５】
なお、上述のように、テストフラグレジスタがテスト済領域記憶部として備えられている場合、ＤＭＡアクセス制御部６３１は、テストフラグレジスタにおけるフラグのオン、オフ状態に基づき、ＣＰＵ２から出力されたアドレスがテスト済領域内であるか否かを判定するようにしてもよい。
【００３６】
ＤＭＡ領域レジスタ６３２には、ＤＭＡコントローラ４によるＤＭＡ転送が予定されているアドレス領域が、例えばＣＰＵ２によってＤＭＡ領域として書き込まれて記憶されている。
【００３７】
また、ＤＭＡＩ／Ｆ部６３は、ＤＭＡコントローラ４によるＤＲＡＭ７へのアクセス信号を監視し、ＤＭＡ転送の開始アドレスを取得して、ＤＭＡ開始アドレスレジスタ６３３に記憶させる。
【００３８】
さらに、ＤＭＡＩ／Ｆ部６３は、ＤＭＡコントローラ４によるＤＲＡＭ７へのアクセス信号を監視し、ＤＭＡコントローラ４によるＤＭＡ転送が終わったデータサイズ（アドレス数）を計数し、ＤＭＡ済サイズとしてＤＭＡ済サイズレジスタ６３４に記憶させる。
【００３９】
また、ＤＭＡＩ／Ｆ部６３は、ＤＭＡ開始アドレスレジスタ６３３に記憶されたＤＭＡ開始アドレスと、ＤＭＡ済サイズレジスタ６３４に記憶されたＤＭＡ済サイズとの加算値を、ＤＭＡ済最終アドレスとしてＤＭＡ済最終アドレスレジスタ６３５に記憶させる。
【００４０】
なお、ＤＭＡ開始アドレスレジスタ６３３、ＤＭＡ済サイズレジスタ６３４、及びＤＭＡ済最終アドレスレジスタ６３５の代わりに、ＤＲＡＭ７の記憶領域を複数のブロックに分割し、この各ブロックに対応するフラグを記憶するＤＭＡフラグレジスタ（ＤＭＡフラグ記憶部）を、転送済領域記憶部として備えてもよい。そして、ＤＭＡＩ／Ｆ部６３は、ＤＭＡコントローラ４によるＤＭＡ転送が終了したブロックに対応するフラグをオンさせることで、ＤＭＡフラグレジスタにＤＭＡ転送済みのメモリ領域、すなわち転送済領域を記憶させるようにしてもよい。
【００４１】
ＣＰＵＩ／Ｆ部６１は、例えばステートマシンや論理回路等を用いて構成されており、メモリアクセス制御部６１１を備えている。
【００４２】
メモリアクセス制御部６１１は、ＣＰＵ２によるＤＲＡＭ７へのアクセス要求を監視し、ＣＰＵ２から出力されたアドレスが、上記テスト済領域外であった場合、ＣＰＵ２のアクセスを待機させる。
【００４３】
具体的には、メモリアクセス制御部６１１は、例えばウェイトサイクルを要求するＷＡＩＴ信号をＣＰＵ２へ出力することでＣＰＵ２を待機させてもよい。また、例えばＣＰＵ２とＣＰＵＩ／Ｆ部６１との間でハンドシェイクを行う構成において、メモリアクセス制御部６１１は、ＣＰＵ２のアクセス要求に対して応答信号を返さないことによって、ＣＰＵ２のアクセスを待機させてもよい。
【００４４】
また、メモリアクセス制御部６１１は、ＣＰＵ２によるＤＲＡＭ７へのアクセス要求を監視し、ＣＰＵ２から出力されたアドレスが、上記テスト済領域内であって、かつＤＭＡ領域レジスタ６３２に記憶されているＤＭＡ領域外である場合、ＣＰＵ２のアクセスを許可して当該アクセス要求をメモリＩ／Ｆ部６４へ出力する。
【００４５】
また、メモリアクセス制御部６１１は、ＣＰＵ２によるＤＲＡＭ７へのアクセス要求を監視し、ＣＰＵ２から出力されたアドレスがＤＭＡ領域内であっても、ＤＭＡ開始アドレスレジスタ６３３に記憶されているＤＭＡ開始アドレスから、ＤＭＡ済最終アドレスレジスタ６３５に記憶されているＤＭＡ済最終アドレスまでの間、すなわち転送済領域内であって、かつ上記テスト済領域内であった場合、ＣＰＵ２のアクセスを許可して当該アクセス要求をメモリＩ／Ｆ部６４へ出力する。
【００４６】
その一方、メモリアクセス制御部６１１は、ＣＰＵ２から出力されたアドレスを監視し、当該アドレスが、上記テスト済領域内であった場合においても、ＤＭＡ領域内であって、かつ転送済領域外である場合、ＣＰＵ２のアクセスを待機させる。
【００４７】
なお、上述のように、テストフラグレジスタがテスト済領域記憶部として備えられている場合、メモリアクセス制御部６１１は、テストフラグレジスタにおけるフラグのオン、オフ状態に基づき、ＣＰＵ２から出力されたアドレスがテスト済領域内であるか否かを判定するようにしてもよい。また、上述のように、ＤＭＡフラグレジスタが転送済領域記憶部として備えられている場合、メモリアクセス制御部６１１は、ＤＭＡフラグレジスタにおけるフラグのオン、オフ状態に基づき、ＣＰＵ２から出力されたアドレスが転送済領域内であるか否かを判定するようにしてもよい。
【００４８】
メモリＩ／Ｆ部６４は、ＣＰＵ２からのＤＲＡＭ７へのアクセス要求を、ＣＰＵＩ／Ｆ部６１を介して受け付け、メモリテスト回路３からのＤＲＡＭ７へのアクセス要求を、テスト回路Ｉ／Ｆ部６２を介して受け付け、ＤＭＡコントローラ４からのアクセス要求を、ＤＭＡＩ／Ｆ部６３を介して受け付ける。
【００４９】
メモリＩ／Ｆ部６４は、例えばＤＲＡＭ７のメモリ領域を複数のブロックに分割して管理している。そして、メモリＩ／Ｆ部６４は、ＣＰＵ２、メモリテスト回路３、及びＤＭＡコントローラ４から、互いに異なるブロックに対するアクセス要求を受け付けた場合、各アドレス要求に応じて、ＣＰＵ２、メモリテスト回路３、及びＤＭＡコントローラ４によるＤＲＡＭ７へのアクセスを並行して実行させる。また、メモリＩ／Ｆ部６４は、ＣＰＵ２、メモリテスト回路３、及びＤＭＡコントローラ４によるＤＲＡＭ７へのアクセスが同一のブロックにおいて競合した場合、バスの調停を行う。
【００５０】
次に、上述のように構成された情報処理装置１の動作について説明する。図２は、図１に示す情報処理装置１の動作の一例を示すタイミングチャートである。まず、情報処理装置１が起動されると（タイミングＴ１）、ＣＰＵ２は、例えば図略のＲＯＭ（Read Only Memory）に記憶されたブートプログラムを実行することにより、初期処理として、メモリテスト回路３によるメモリテストと、ＤＭＡコントローラ４によるＤＭＡ転送とを開始させる。
【００５１】
そうすると、メモリテスト回路３によるメモリテストが開始され（タイミングＴ２）、テスト回路Ｉ／Ｆ部６２において、テスト開始アドレスレジスタ６２１にメモリテストの開始アドレスが記憶され、テスト済サイズが計数されてテスト済サイズレジスタ６２２に記憶され、さらにテスト開始アドレスにテスト済サイズが加算されて、テスト済最終アドレスとしてテスト済最終アドレスレジスタ６２３に記憶される。
【００５２】
一方、ＤＭＡコントローラ４は、例えばＨＤＤ装置５に記憶されているＣＰＵ２のプログラムをＤＲＡＭ７に転送するべくＤＭＡＩ／Ｆ部６３へアクセス要求を出力する（タイミングＴ２）。しかしながら、タイミングＴ２においては、まだメモリテスト回路３によるメモリテストの終了済みエリアがないので、ＤＭＡコントローラ４から出力されたアドレスは、テスト開始アドレスレジスタ６２１及びテスト済最終アドレスレジスタ６２３によって示されるテスト済領域の範囲外となる。そうすると、ＤＭＡアクセス制御部６３１は、ＤＭＡコントローラ４のアクセスを待機させる。
【００５３】
これにより、ＤＲＡＭ７メモリテストが実行されていない、故障しているおそれのあるエリアにＤＭＡコントローラ４によってＨＤＤ装置５からプログラムやデータが転送されることが防止され、メモリテストの実行済みエリアにプログラムやデータが記憶されるので、ＤＲＡＭ７に記憶されるデータの信頼性を向上させることができる。
【００５４】
また、ＣＰＵ２は、ＤＲＡＭ７からプログラムをフェッチするべくＣＰＵＩ／Ｆ部６１へ、ＤＲＡＭ７におけるＤＭＡ領域へのアクセス要求を出力する。（タイミングＴ２）。しかしながら、タイミングＴ２においては、まだメモリテスト回路３によるメモリテストの終了済みエリアがないので、ＣＰＵ２から出力されたアドレスは、テスト開始アドレスレジスタ６２１及びテスト済最終アドレスレジスタ６２３によって示されるテスト済領域の範囲外となる。
【００５５】
そうすると、メモリアクセス制御部６１１は、ＣＰＵ２のアクセスを待機させる。これにより、ＣＰＵ２が、まだメモリテストが実行されていないエリアをアクセスして、誤動作するおそれが低減される。
【００５６】
次に、メモリテスト回路３によるＤＲＡＭ７のメモリテストが進むにつれて、テスト回路Ｉ／Ｆ部６２によって、テスト済最終アドレスレジスタ６２３に記憶されているテスト済最終アドレスが更新される。そして、タイミングＴ２においてＤＭＡコントローラ４から出力されたアドレスが、テスト開始アドレスレジスタ６２１に記憶されているテスト開始アドレスからテスト済最終アドレスレジスタ６２３に記憶されているテスト済最終アドレスまでの間に入ると、ＤＭＡアクセス制御部６３１によって、ＤＭＡコントローラ４のアクセスが許可される。
【００５７】
そうすると、ＤＭＡコントローラ４によって、ＨＤＤ装置５からＤＲＡＭ７へ、ＣＰＵ２のプログラムやデータの転送が実行される（ステップＳ３）。そして、ＤＭＡＩ／Ｆ部６３において、ＤＭＡ開始アドレスレジスタ６３３にＤＭＡ開始アドレスが記憶され、ＤＭＡ転送済サイズが計数されてＤＭＡ済サイズレジスタ６３４に記憶され、さらにＤＭＡ開始アドレスにＤＭＡ転送済サイズが加算されて、ＤＭＡ済最終アドレスとしてＤＭＡ済最終アドレスレジスタ６３５に記憶される。
【００５８】
この場合、ＤＭＡコントローラ４がＤＭＡ転送を実行しようとするエリアのメモリテストが終了すると、全メモリエリアのメモリテストが終了するまで待つことなく、メモリテストが終了したエリアへすみやかにＤＭＡコントローラ４によるＤＭＡ転送が開始されるので、メモリテストとＤＭＡ転送とを並列に実行することができる。その結果、ＨＤＤ装置５からＤＲＡＭ７へのブート処理を短縮することができる。
【００５９】
タイミングＴ３においては、例えタイミングＴ２においてＣＰＵ２が出力したＤＭＡ領域内のアドレスが、テスト開始アドレスレジスタ６２１及びテスト済最終アドレスレジスタ６２３によって示されるテスト済領域に入ったとしても、まだＤＭＡ転送が実行されていない。
【００６０】
そのため、ＣＰＵ２が出力したアドレスが、ＤＭＡ開始アドレスレジスタ６３３及びＤＭＡ済最終アドレスレジスタ６３５により示される転送済領域外となる結果、メモリアクセス制御部６１１は、ＣＰＵ２のアクセスを待機させる。これにより、ＣＰＵ２が、まだプログラムが転送されていないエリアからプログラムをフェッチしてしまうおそれが低減される。
【００６１】
次に、ＤＭＡコントローラ４によるＤＭＡ転送が進むにつれて、ＤＭＡＩ／Ｆ部６３によって、ＤＭＡ済最終アドレスレジスタ６３５が更新される。そして、ＣＰＵ２から出力されたアドレスが、ＤＭＡ開始アドレスレジスタ６３３に記憶されているＤＭＡ開始アドレスからＤＭＡ済最終アドレスレジスタ６３５に記憶されているＤＭＡ済最終アドレスまでの間に入ると、メモリアクセス制御部６１１によって、ＣＰＵ２のアクセスが許可される（タイミングＴ４）。
【００６２】
これにより、ＣＰＵ２は、アクセスしようとするＤＲＡＭ７のアドレスに、ＤＭＡ転送が実行されると、予定されている全ＤＭＡ領域へのＤＭＡ転送が終了するまで待つことなく、メモリアクセス、例えばプログラムフェッチを開始して、プログラムを実行することができる。その結果、ＣＰＵ２は、ブート処理の完了を待たずにＤＲＡＭ７上のプログラム実行を開始することができるので、情報処理装置１が起動されてからＣＰＵ２がＤＲＡＭ７上のプログラム実行を開始するまでの時間を短縮することができる。
【００６３】
なお、例えばＤＲＡＭ７における作業領域には、ＤＭＡ転送が行われない場合がある。そうすると、このような作業領域は、ＤＭＡ領域レジスタ６３２に記憶されているＤＭＡ領域の範囲外となっている。従って、ＣＰＵ２が作業領域にアクセスする場合には、当該エリアがテスト開始アドレスレジスタ６２１及びテスト済最終アドレスレジスタ６２３により示されるテスト済領域に入っていれば、ＤＭＡ開始アドレスレジスタ６３３及びＤＭＡ済最終アドレスレジスタ６３５により示される転送済領域に入っていなくても、メモリアクセス制御部６１１によって、ＣＰＵ２の作業領域へのアクセスが許可される。
【図面の簡単な説明】
【００６４】
【図１】本発明の一実施形態に係る情報処理装置の構成の一例を示すブロック図である。
【図２】図１に示す情報処理装置の動作の一例を示すタイミングチャートである。
【符号の説明】
【００６５】
１  情報処理装置
２  ＣＰＵ
３  メモリテスト回路
４  ＤＭＡコントローラ
５  ＨＤＤ装置
６  制御回路
７  ＤＲＡＭ
６１  ＣＰＵＩ／Ｆ部
６２  テスト回路Ｉ／Ｆ部
６３  ＤＭＡＩ／Ｆ部
６４  メモリＩ／Ｆ部
６１１  メモリアクセス制御部
６２１  テスト開始アドレスレジスタ
６２２  テスト済サイズレジスタ
６２３  テスト済最終アドレスレジスタ
６３１  ＤＭＡアクセス制御部
６３２  ＤＭＡ領域レジスタ
６３３  ＤＭＡ開始アドレスレジスタ
６３４  ＤＭＡ済サイズレジスタ
６３５  ＤＭＡ済最終アドレスレジスタ
【図１】
2009199258.tif 000003
【図２】
2009199258.tif 000004