(57)【特許請求の範囲】
【請求項１】
プロセッサを有するメイン基板と複数のメモリを有する周辺基板とを有する処理装置であって、
前記周辺基板に設けられ、複数のメモリのうち一部又は全部のメモリを指定する指定情報を記憶する記憶部と、
前記メイン基板に設けられ、前記周辺基板から前記指定情報を読み出す指定情報読み出し部と、
前記メイン基板に設けられ、前記指定情報読み出し部により読み出した前記指定情報を参照し、前記指定情報により指定されたメモリを選択し、前記メモリにアクセスするためのバスのウエイト時間を変更しながら、選択した前記メモリにデータを書き込んでから、選択した前記メモリから前記データを読み出す試行部と、
前記メイン基板に設けられ、前記試行部によって読み出したデータと書き込んだデータとが一致する場合における前記ウエイト時間を、指定されたメモリのウエイト時間と決定するウエイト時間測定部と、
前記メイン基板に設けられ、前記試行部の動作モードを第１の動作モードと第２の動作モードとに切り替える切替部と、
を備え、
前記試行部は、前記第１の動作モードでは前記指定情報を参照し、前記指定情報により指定された前記メモリを選択して、選択した前記メモリについて前記ウエイト時間を測定し、前記第２の動作モードでは前記指定情報を参照せずに全ての前記メモリについて前記ウエイト時間を測定する、処理装置。
【請求項２】
前記試行部は、前記メモリのアドレスごとに異なるデータを前記メモリに書き込む、請求項１に記載の処理装置。
【請求項３】
前記メイン基板に設けられ、前記ウエイト時間測定部によって決定された前記ウエイト時間を提示する提示部
をさらに有する、請求項１または請求項２に記載の処理装置。
【請求項４】
前記ウエイト時間測定部は、前記試行部が前記メモリに所定回数以上アクセスしても、前記読み出したデータと書き込んだデータとが一致しなかった場合、前記試行部が前記メモリにアクセスできなかったと決定する、請求項１から請求項３のいずれか一項に記載の処理装置。
【請求項５】
プロセッサを有するメイン基板と複数のメモリを有する周辺基板とを有する処理装置におけるウエイト時間測定方法であって、
複数のメモリのうち一部又は全部のメモリを指定する指定情報を読み出し、読み出した指定情報を参照し、前記指定情報により指定されたメモリを選択し、前記メモリにアクセスするためのバスのウエイト時間を変更しながら、選択した前記メモリにデータを書き込んでから、選択した前記メモリから前記データを読み出す試行ステップと、
読み出したデータと書き込んだデータとが一致する場合における前記ウエイト時間を、指定されたメモリのウエイト時間と決定するウエイト時間測定ステップと、
前記試行ステップにおける動作モードを第１の動作モードと第２の動作モードとに切り替える切替ステップとを含み、
前記第１の動作モードでは前記指定情報を参照し、前記指定情報により指定された前記メモリを選択して、選択した前記メモリについて前記ウエイト時間を測定し、前記第２の動作モードでは前記指定情報を参照せずに全ての前記メモリについて前記ウエイト時間を測定する、
ウエイト時間測定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、処理装置、及びウエイト時間測定方法に関する。
【背景技術】
【０００２】
プロセッサを有するメイン基板と、メモリを有する周辺基板とを組み合わせた装置では、プロセッサがメモリにアクセスするためのバスのウエイト（Wait）時間は、メイン基板と周辺基板の組み合わせごとに異なる。これは、メイン基板と周辺基板の組み合わせごとに、配線のバッファが異なること等に起因する。しかしながら、従来の装置では、組み合わされた基板における処理速度を向上させることができない場合があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２２０５０２号公報
【特許文献２】特開２００４−３２６６９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、組み合わされた基板における処理速度を向上させることができる処理装置、及びウエイト時間測定方法を提供することである。
【課題を解決するための手段】
【０００５】
実施形態の処理装置は、プロセッサを有するメイン基板と複数のメモリを有する周辺基板とを有する処理装置であって、記憶部と、指定情報読み出し部と、試行部と、ウエイト時間測定部と、切替部とを備える。記憶部は、周辺基板に設けられ、複数のメモリのうち一部又は全部のメモリを指定する指定情報を記憶する。指定情報読み出し部は、メイン基板に設けられ、周辺基板から指定情報を読み出す。試行部は、メイン基板に設けられ、指定情報読み出し部により読み出した指定情報を参照し、指定情報により指定されたメモリを選択し、メモリにアクセスするためのバスのウエイト時間を変更しながら、選択したメモリにデータを書き込んでから、選択したメモリからデータを読み出す。ウエイト時間測定部は、メイン基板に設けられ、試行部によって読み出したデータと書き込んだデータとが一致する場合におけるウエイト時間を、指定されたメモリのウエイト時間と決定する。切替部は、前記メイン基板に設けられ、前記試行部の動作モードを第１の動作モードと第２の動作モードとに切り替える。前記試行部は、前記第１の動作モードでは前記指定情報を参照し、前記指定情報により指定された前記メモリを選択して、選択した前記メモリについて前記ウエイト時間を測定し、前記第２の動作モードでは前記指定情報を参照せずに全ての前記メモリについて前記ウエイト時間を測定する。
【図面の簡単な説明】
【０００６】
【図１】一実施形態における、処理装置の構成図。
【図２】一実施形態における、メモリマップの図。
【図３】一実施形態における、書き込み処理時のウエイト時間と、読み出し処理時のウエイト時間とを個別に設定する場合のウエイト時間測定モードを表すフローチャート。
【図４】一実施形態における、書き込み処理時のウエイト時間と、読み出し処理時のウエイト時間とを一体で設定する場合のウエイト時間測定モードを表すフローチャート。
【図５】一実施形態における、書き込み処理時のウエイト時間と、読み出し処理時のウエイト時間とを個別に設定する場合の診断モードを表すフローチャート。
【図６】一実施形態における、書き込み処理時のウエイト時間と、読み出し処理時のウエイト時間とを一体で設定する場合の診断モードを表すフローチャート。
【発明を実施するための形態】
【０００７】
以下、実施形態の処理装置、及びウエイト時間測定方法を、図面を参照して説明する。
図１は、一実施形態における、処理装置１の構成図である。処理装置１は、例えば、情報処理装置、改札機、精算機、ＩＣカードチャージ機、郵便仕分け機等に組み込まれる。処理装置１は、所定の情報処理を実行する。所定の情報処理は、例えば、画像信号処理や音声信号処理である。処理装置１が組み込まれた改札機は、ＩＣ（Integrated Circuit）カードや切符に記録されたデータに基づく処理を実行する。処理装置１が組み込まれた精算機は、電子マネー等のデータや、投入された現金の金額に基づく処理を実行する。処理装置１が組み込まれたＩＣカードチャージ機は、電子マネー、定期券や切符等のデータをＩＣカードにチャージする処理を実行する。処理装置１が組み込まれた郵便仕分け機は、郵便物等の仕分け処理を実行する。
【０００８】
処理装置１の構成を説明する。
処理装置１は、周辺基板１０と、メイン基板２０とを備える。処理装置１は、周辺基板１０とメイン基板２０とが組み合わされた状態で、周辺基板１０のメモリにメイン基板２０からアクセスするためのバスのウエイト（Wait）時間を測定する。ウエイト時間は、マイクロ秒といった単位で表現されてもよいし、クロック信号のサイクル数で表現されてもよい。
【０００９】
周辺基板１０は、少なくとも一つのメモリと、コネクタ１３と、記憶部１４とを備える。図１では、周辺基板１０は、メモリ１１とメモリ１２を備える。周辺基板１０は、更に多くのメモリを備えてもよい。以下では、一例として、メモリ１１とメモリ１２を周辺基板１０が備える場合について説明する。
【００１０】
メモリ１１は、例えば、ＲＡＭ（Random Access Memory）やレジスタなどの揮発性の記憶媒体（一時的な記憶媒体）を有する。メモリ１１は、フラッシュメモリなどの不揮発性の記憶媒体（非一時的な記憶媒体）を有していてもよい。メモリ１２についても同様である。
【００１１】
コネクタ１３は、周辺基板１０をメイン基板２０に接続するためのコネクタである。つまり、コネクタ１３は、メモリ１１と、メモリ１２と、記憶部１４とをメイン基板２０に接続する。
【００１２】
記憶部１４は、フラッシュメモリなどの不揮発性の記憶媒体（非一時的な記憶媒体）を有する。記憶部１４は、メモリマップを記憶する。このメモリマップは、周辺基板１０のメモリ１１とメモリ１２を含む複数のメモリについてのメモリマップである。記憶部１４は、メイン基板２０が出力したリードイネーブル信号等に応じて、メイン基板２０にメモリマップを転送する。
【００１３】
図２は、一実施形態における、メモリマップの図である。メモリマップは、テーブル数を表す情報と、テーブルデータとを含む。このメモリマップは、テーブルデータをメモリごとに含む。すなわち、テーブル数は、周辺基板１０のメモリの数を表す。例えば、周辺基板１０のメモリの数が２である場合、テーブル数は２である。
【００１４】
テーブルデータＭ１１は、テーブルデータＭ１１のフラグ情報と、テーブルデータＭ１１のバス幅情報と、テーブルデータＭ１１のスタートアドレス情報と、テーブルデータＭ１１のエンドアドレス情報とを含む。テーブルデータＭ１１のフラグ情報は、テーブルデータＭ１１の先頭であることを表す情報を含む。また、テーブルデータＭ１１のフラグ情報は、メモリ１１を指定する指定情報を含む。指定情報は、例えば、周辺基板１０が製造される際に定められ、メモリ１１がウエイト時間の測定が必要であるか否かを示すものである。テーブルデータＭ１１のバス幅情報は、メモリ１１にアクセスするためのバスのバス幅である。バス幅は、例えば１６ビットである。テーブルデータＭ１１のスタートアドレス情報は、メモリ１１にアクセスする場合における、メモリ１１の先頭のアドレスを表す情報である。テーブルデータＭ１１のエンドアドレス情報は、メモリ１１にアクセスする場合における、メモリ１１の最終のアドレスを表す情報である。
【００１５】
テーブルデータＭ１２は、テーブルデータＭ１２のフラグ情報と、テーブルデータＭ１２のバス幅情報と、テーブルデータＭ１２のスタートアドレス情報と、テーブルデータＭ１２のエンドアドレス情報とを含む。テーブルデータＭ１２のフラグ情報は、テーブルデータＭ１２の先頭であることを表す情報を含む。また、テーブルデータＭ１２のフラグ情報は、メモリ１２を指定する指定情報を含む。指定情報は、例えば、周辺基板１０が製造される際に定められ、メモリ１２がウエイト時間の測定が必要であるか否かを示すものである。テーブルデータＭ１２のバス幅情報は、メモリ１２にアクセスするためのバスのバス幅である。テーブルデータＭ１２のスタートアドレス情報は、メモリ１２にアクセスする場合における、メモリ１２の先頭のアドレスを表す情報である。テーブルデータＭ１２のエンドアドレス情報は、メモリ１２にアクセスする場合における、メモリ１２の最終のアドレスを表す情報である。
【００１６】
メイン基板２０は、コネクタ２１と、切替部２２と、メモリ２３と、処理部２４、提示部２５とを備える。コネクタ２１は、周辺基板１０をメイン基板２０に接続するためのコネクタである。
【００１７】
切替部２２は、処理部２４の動作モードを指定する。切替部２２は、例えば、ＤＩＰ（Dual In-line Package）スイッチである。切替部２２は、オペレータによる操作に応じて、処理部２４の動作モードを切り替えるための信号を出力する。動作モードは、例えば、通常モードと、第１のモードであるウエイト時間測定モードと、第２のモードである診断モードとがある。
【００１８】
メモリ２３は、例えば、ＲＯＭ（Read Only Memory）、フラッシュメモリなどの不揮発性の記憶媒体（非一時的な記憶媒体）を有する。メモリ２３は、例えば、ＲＡＭやレジスタなどの揮発性の記憶媒体（一時的な記憶媒体）を有していてもよい。メモリ２３は、周辺基板１０のメモリ１１やメモリ１２に記憶されているデータを、処理部２４による制御に基づいて一時的に記憶してもよい。
【００１９】
処理部２４は、例えば、ＣＰＵ（Central Processing Unit）等のプロセッサが、メモリ２３に記憶されたプログラムを実行することにより機能するソフトウェア機能部である。また、処理部２４は、ＬＳＩ（Large Scale Integration）やＡＳＩＣ（Application Specific Integrated Circuit）等のハードウェア機能部であってもよい。
【００２０】
処理部２４は、指定情報読み出し部２４ａと、試行部２４ｂと、ウエイト時間測定部２４ｃと、チップセレクトピンＣＳ０と、チップセレクトピンＣＳ１とを備える。処理部２４のチップセレクトピンＣＳ０は、周辺基板１０のメモリ１１に接続される。処理部２４は、メモリ１１にアクセスする場合、チップセレクトピンＣＳ０の出力電圧を変更することにより、メモリ１１を選択することができる。処理部２４は、メモリ１１にデータを書き込む場合、アドレス信号と、データ信号と、チップセレクト信号と、ライトイネーブル信号とを、メモリ１１に出力する。処理部２４は、メモリ１１からデータを読み出す場合、アドレス信号と、チップセレクト信号と、リードイネーブル信号とを、メモリ１１に出力する。
【００２１】
処理部２４のチップセレクトピンＣＳ１は、周辺基板１０のメモリ１２に接続される。処理部２４は、メモリ１２にアクセスする場合、チップセレクトピンＣＳ１の出力電圧を変更することにより、メモリ１２を選択することができる。処理部２４は、メモリ１２にデータを書き込む場合、アドレス信号と、データ信号と、チップセレクト信号と、ライトイネーブル信号とを、メモリ１２に出力する。処理部２４は、メモリ１２からデータを読み出す場合、アドレス信号と、チップセレクト信号と、リードイネーブル信号とを、メモリ１２に出力する。
【００２２】
処理部２４は、リセットされて通常モードで起動した場合、周辺基板１０に接続された状態で、予め定められた処理を実行する。この予め定められた処理は、どのような処理でもよく、特定の処理に限定されない。この予め定められた処理は、例えば、画像処理等の所定の情報処理である。この予め定められた処理は、処理装置１が改札機に組み込まれている場合、例えば、電子マネー等のデータに基づく処理である。
【００２３】
指定情報読み出し部２４ａは、リセットされて第１のモードであるウエイト時間測定モードで起動した場合、メモリマップを記憶部１４から取得し、メモリ２３に記憶する。その後、試行部２４ｂは、メモリ２３に記憶されたメモリマップに含まれている指定情報を参照する。試行部２４ｂは、周辺基板１０の複数のメモリから、指定情報により指定されたメモリを選択する。すなわち、試行部２４ｂは、指定情報によりウエイト時間の測定が必要であると指定されているメモリを選択する。ウエイト時間測定部２４ｃは、選択したメモリにアクセスするためのバスのウエイト時間を、周辺基板１０がメイン基板２０に接続された状態で測定する。
【００２４】
ウエイト時間測定部２４ｃは、データが正しく読み出されたか否かを判定する。つまり、ウエイト時間測定部２４ｃは、書き込んだデータと、読み出したデータとが一致するか否かを判定する。ウエイト時間測定部２４ｃは、データが正しく読み出された場合における測定したウエイト時間を、提示部２５に提示させる。
【００２５】
試行部２４ｂは、データが正しく読み出されなかった場合、ウエイト時間を長くして、再度データの書き込みと読み出しを実行する。ウエイト時間測定部２４ｃは、再度の一致チェックを実行する。ウエイト時間測定部２４ｃは、ウエイト時間を最も長い時間に設定しても正しく読み出せなかったときは、ウエイト時間に基づくエラー情報を、提示部２５に提示させる。
【００２６】
指定情報読み出し部２４ａは、リセットされて第２のモードである診断モードで起動した場合、メモリマップを記憶部１４から取得する。試行部２４ｂは、診断モードで起動した場合、指定情報を参照しない。ウエイト時間測定部２４ｃは、周辺基板１０の全てのメモリにアクセスが可能であるか否かを、周辺基板１０がメイン基板２０に接続された状態で、周辺基板１０の全てのメモリについて診断する。
【００２７】
試行部２４ｂは、選択したメモリにアクセスするためのバスのウエイト時間を変更しながら、周辺基板１０の全てのメモリに、予め定められたデータを書き込む。試行部２４ｂは、選択したメモリのアドレスごとに異なるデータを書き込んでもよい。その後、試行部２４ｂは、周辺基板１０の複数のメモリから選択したメモリから、データを読み出す。
【００２８】
ウエイト時間測定部２４ｃは、データが正しく読み出されたか否かを判定する。つまり、ウエイト時間測定部２４ｃは、書き込んだデータと、読み出したデータとが一致するか否かを判定する。ウエイト時間測定部２４ｃは、データが正しく読み出された場合における、ウエイト時間に基づく情報を提示部２５に提示させる。試行部２４ｂは、データが正しく読み出されなかった場合、ウエイト時間を長くして、再度データの書き込みと読み出しを実行する。ウエイト時間測定部２４ｃは、再度の一致チェックを実行する。ウエイト時間測定部２４ｃは、ウエイト時間をもっとも長い時間に設定しても正しく読み出せなかったときは、ウエイト時間に基づくエラー情報を、提示部２５に提示させる。
【００２９】
提示部２５は、データがウエイト時間測定部２４ｃによって正しく読み出された場合における、バスのウエイト時間を提示する。提示部２５は、ウエイト時間に基づくエラー情報を提示してもよい。このエラー情報は、周辺基板１０のメモリ１１又はメモリ１２に試行部２４ｂがアクセスできなかったことを表す情報である。提示部２５は、例えば、７セグメントＬＥＤ（Light Emitting Diode）である。提示部２５は、例えば、液晶画面を有していてもよい。
【００３０】
処理装置１の動作を説明する。
図３は、書き込み処理時のウエイト時間と、読み出しのウエイト時間とを個別に設定する場合における、ウエイト時間測定モードを表すフローチャートである。すなわち、書き込み処理時のウエイト時間と、読み出しのウエイト時間とを、処理部２４の仕様として個別に設定できる場合、試行部２４ｂは、切替部２２によって指定された第１のモードであるウエイト時間測定モードに基づく処理として、図３に表す処理を実行する。
【００３１】
試行部２４ｂは、第１のモードであるウエイト時間測定モードで起動する（ステップＳ１０１）。
指定情報読み出し部２４ａは、メモリマップ情報を、周辺基板１０の記憶部１４から受信する（ステップＳ１０２）。
試行部２４ｂは、周辺基板１０のメモリ１１とメモリ１２とのうち、フラグ情報に含まれる指定情報により指定されたメモリについて、書き込み処理時のウエイト時間を最短にする（ステップＳ１０３）。最短のウエイト時間は、処理部２４、バスやメモリの仕様として予め定められる。試行部２４ｂは、指定されたメモリの特定のアドレスについてのみ、書き込み処理時のウエイト時間を最短にしてもよい。
【００３２】
試行部２４ｂは、周辺基板１０のメモリ１１とメモリ１２とのうち、フラグ情報に含まれる指定情報により指定されたメモリについて、読み出し処理時のウエイト時間を最長にする（ステップＳ１０４）。最長のウエイト時間は、処理部２４、バスやメモリの仕様として予め定められる。
試行部２４ｂは、周辺基板１０のメモリ１１とメモリ１２とのうち、指定されたメモリから選択したメモリの所定のアドレスに、データを書き込む。この所定のアドレスは、どのアドレスでもよく、特定のアドレスに限定されない。次に、試行部２４ｂは、書き込んだデータを読み出す（ステップＳ１０５）。
【００３３】
ウエイト時間測定部２４ｃは、書き込んだデータが正しく読み出されたか否かを判定する。すなわち、ウエイト時間測定部２４ｃは、書き込んだデータと、読み出したデータとが一致しているか否かを判定する（ステップＳ１０６）。
【００３４】
書き込んだデータと、読み出したデータとが一致していない場合（ステップＳ１０６：ＮＯ）、試行部２４ｂは、書き込み処理時のウエイト時間を、所定時間だけ長くする（ステップＳ１０７）。この所定時間（時間の刻み幅）は、処理部２４の仕様として予め定められる。この所定時間は、例えば、クロックの周期の整数倍で表現される。試行部２４ｂは、ステップＳ１０５に処理を戻す。
【００３５】
書き込んだデータと、読み出したデータとが一致している場合（ステップＳ１０６：ＹＥＳ）、ウエイト時間測定部２４ｃは、そのときのウエイト時間を、書き込み処理時のウエイト時間と決定する（ステップＳ１０８）。
試行部２４ｂは、周辺基板１０のメモリ１１とメモリ１２とのうち、指定されたメモリについて、読み出し処理時のウエイト時間を最短にする（ステップＳ１０９）。
【００３６】
試行部２４ｂは、周辺基板１０のメモリ１１とメモリ１２とのうち、指定されたメモリから選択したメモリの所定のアドレスに、データを書き込む。試行部２４ｂは、選択したメモリから、書き込んだデータを読み出す（ステップＳ１１０）。
ウエイト時間測定部２４ｃは、書き込んだデータが正しく読み出されたか否かを判定する。すなわち、ウエイト時間測定部２４ｃは、書き込んだデータと、読み出したデータとが一致しているか否かを判定する（ステップＳ１１１）。
【００３７】
書き込んだデータと、読み出したデータとが一致していない場合（ステップＳ１１０：ＮＯ）、試行部２４ｂは、読み出し処理時のウエイト時間を、所定時間だけ長くする（ステップＳ１１２）。この所定時間（時間の刻み幅）は、処理部２４の仕様として予め定められる。この所定時間は、例えば、クロックの周期の整数倍で表現される。試行部２４ｂは、ステップＳ１１０に処理を戻す。
【００３８】
書き込んだデータと、読み出したデータとが一致している場合（ステップＳ１１１：ＹＥＳ）、ウエイト時間測定部２４ｃは、書き込んだデータと読み出したデータとが一致したときのウエイト時間を、読み出し処理時のウエイト時間と決定する（ステップＳ１１３）。
【００３９】
ウエイト時間測定部２４ｃは、決定した書き込み処理時と読み出し処理時のウエイト時間を測定した結果を、提示部２５に提示させる。提示部２５は、ウエイト時間測定部２４ｃによって測定されたウエイト時間を提示する（ステップＳ１１４）。
ウエイト時間測定部２４ｃは、指定情報により指定された全てのメモリについてウエイト時間の測定が完了したか否かを判定する（ステップＳ１１３）。指定されたメモリのうち測定が完了していないメモリが存在する場合、すなわち、測定されていないメモリが残っている場合（ステップＳ１１３：ＮＯ）、ウエイト時間測定部２４ｃは、ステップＳ１０４に処理を戻す。
指定された全てのメモリについて測定結果を提示した場合（ステップＳ１１３：ＹＥＳ）、試行部２４ｂは、図３に表す処理を終了する。
【００４０】
図４は、書き込みの処理時ウエイト時間と、読み出し処理時のウエイト時間とを一体で設定する場合における、ウエイト時間測定モードを表すフローチャートである。書き込みの処理時ウエイト時間と、読み出しのウエイト時間とを、処理部２４の仕様として個別には設定できない場合、試行部２４ｂは、切替部２２によって指定されたウエイト時間測定モードに基づく処理として、図４に表す処理を実行する。
【００４１】
ステップＳ２０１の処理は、図３に表されたステップＳ１０１の処理と同様である。
ステップＳ２０２の処理は、図３に表されたステップＳ１０２の処理と同様である。
試行部２４ｂは、周辺基板１０のメモリ１１とメモリ１２とのうち、指定されたメモリについて、書き込み処理時及び読み出し処理時のウエイト時間を最短にする（ステップＳ２０３）。
ステップＳ２０４の処理は、図３に表されたステップＳ１０５の処理と同様である。
ステップＳ２０５の処理は、図３に表されたステップＳ１０６の処理と同様である。
【００４２】
書き込んだデータと、読み出したデータとが一致していない場合（ステップＳ２０５：ＮＯ）、試行部２４ｂは、書き込み処理時及び読み出し処理時のウエイト時間を、所定時間だけ長くする（ステップＳ２０６）。この所定時間（時間の刻み幅）は、処理部２４の仕様として予め定められる。この所定時間は、例えば、クロックの周期の整数倍で表現される。試行部２４ｂは、ステップＳ２０４に処理を戻す。
【００４３】
書き込んだデータと、読み出したデータとが一致している場合（ステップＳ２０５：ＹＥＳ）、ウエイト時間測定部２４ｃは、書き込んだデータと読み出したデータとが一致したときのウエイト時間を、書き込み処理時及び読み出し処理時のウエイト時間と決定する（ステップＳ２０７）。
【００４４】
ウエイト時間測定部２４ｃは、決定した書き込み処理時と読み出し処理時のウエイト時間を測定した結果を、提示部２５に提示させる。提示部２５は、ウエイト時間測定部２４ｃによって測定されたウエイト時間を提示する（ステップＳ２０８）。
【００４５】
ウエイト時間測定部２４ｃは、指定された全てのメモリについて測定結果を提示部２５が提示したか否かを判定する（ステップＳ２０９）。指定されたメモリのうち測定結果を提示していないメモリが存在する場合、すなわち、測定されていないメモリが残っている場合（ステップＳ２０９：ＮＯ）、試行部２４ｂは、ステップＳ２０４に処理を戻す。
指定された全てのメモリについて測定結果を提示した場合（ステップＳ２０９：ＹＥＳ）、試行部２４ｂは、図４に表す処理を終了する。
【００４６】
図５は、書き込み処理時のウエイト時間と、読み出し処理時のウエイト時間とを個別に設定する場合における、診断モードを表すフローチャートである。書き込み処理時のウエイト時間と、読み出しのウエイト時間とを、処理部２４の仕様として個別に設定できる場合、試行部２４ｂは、切替部２２によって指定された診断モードに基づく処理として、図５に表す処理を実行する。
【００４７】
試行部２４ｂは、診断モードで起動し、メイン基板２０のメモリ２３にデータをコピーする（ステップＳ３０１）。
指定情報読み出し部２４ａは、メモリマップ情報を、周辺基板１０の記憶部１４から受信する（ステップＳ２０２）。
試行部２４ｂは、周辺基板１０の全てのメモリについて、書き込み処理時のウエイト時間を最短にする（ステップＳ３０３）。
【００４８】
試行部２４ｂは、周辺基板１０の全てのメモリについて、読み出し処理時のウエイト時間を最長にする（ステップＳ３０４）。
試行部２４ｂは、周辺基板１０の全てのメモリの所定のアドレスに、データを書き込む。試行部２４ｂは、周辺基板１０の全てのメモリから、書き込んだデータを読み出す（ステップＳ３０５）。
【００４９】
ウエイト時間測定部２４ｃは、書き込んだデータが正しく読み出されたか否かを判定する。すなわち、ウエイト時間測定部２４ｃは、書き込んだデータと、読み出したデータとが一致しているか否かを判定する（ステップＳ３０６）。
【００５０】
書き込んだデータと、読み出したデータとが一致していない場合（ステップＳ３０６：ＮＯ）、試行部２４ｂは、書き込み処理時のウエイト時間を、所定時間だけ長くする（ステップＳ３０７）。この所定時間（時間の刻み幅）は、処理部２４の仕様として予め定められる。この所定時間は、例えば、クロックの周期の整数倍で表現される。試行部２４ｂは、ステップＳ３０５に処理を戻す。
【００５１】
書き込んだデータと、読み出したデータとが一致している場合（ステップＳ３０６：ＹＥＳ）、ウエイト時間測定部２４ｃは、そのときのウエイト時間を、書き込み処理時のウエイト時間と決定する（ステップＳ３０８）。
試行部２４ｂは、周辺基板１０の全てのメモリについて、読み出し処理時のウエイト時間を最短にする（ステップＳ３０９）。
【００５２】
試行部２４ｂは、周辺基板１０のメモリ１１とメモリ１２とのうち、指定されたメモリから選択したメモリの所定のアドレスに、データを書き込む。試行部２４ｂは、選択したメモリから、書き込んだデータを読み出す（ステップＳ３１０）。
ウエイト時間測定部２４ｃは、書き込んだデータが正しく読み出されたか否かを判定する。すなわち、ウエイト時間測定部２４ｃは、書き込んだデータと、読み出したデータとが一致しているか否かを判定する（ステップＳ３１１）。
【００５３】
書き込んだデータと、読み出したデータとが一致していない場合（ステップＳ３１１：ＮＯ）、試行部２４ｂは、読み出し処理時のウエイト時間を、所定時間だけ長くする（ステップＳ３１２）。この所定時間（時間の刻み幅）は、処理部２４の仕様として予め定められる。この所定時間は、例えば、クロックの周期の整数倍で表現される。試行部２４ｂは、ステップＳ３１０に処理を戻す。
【００５４】
書き込んだデータと、読み出したデータとが一致している場合（ステップＳ３１１：ＹＥＳ）、ウエイト時間測定部２４ｃは、そのときのウエイト時間を、読み出し処理時のウエイト時間と決定する（ステップＳ３１３）。
【００５５】
ウエイト時間測定部２４ｃは、ウエイト時間を測定した結果を、提示部２５に提示させる。提示部２５は、ウエイト時間測定部２４ｃによって測定されたウエイト時間を提示する（ステップＳ３１４）。
ウエイト時間測定部２４ｃは、周辺基板１０の全てのメモリについて測定結果を提示したか否かを判定する（ステップＳ３１５）。
【００５６】
指定された全てのメモリについて測定結果を提示した場合（ステップＳ３１５：ＹＥＳ）、ウエイト時間測定部２４ｃは、ステップＳ３０４からステップＳ３１１までの処理を実行した回数が所定回数以内であるか否かを判定する（ステップＳ３１６）。この所定回数は、例えば、３回である。なお、ウエイト時間測定部２４ｃは、所定回数以内であるか否かを判定するのではなく、ステップＳ３０４からステップＳ３１５までの処理を実行した回数が所定回数以上であるか否かを判定してもよい。
【００５７】
ステップＳ３０４からステップＳ３１５までの処理を実行した回数が所定回数以内であると判定された場合（ステップＳ３１６：ＹＥＳ）、試行部２４ｂは、メイン基板２０のメモリのデータを、周辺基板１０のメモリに書き戻す（ステップＳ３１７）。試行部２４ｂは、図５に表す処理を終了する。
【００５８】
ステップＳ３０４からステップＳ３１５までの処理を実行した回数が所定回数以内でないと判定された場合（ステップＳ３１６：ＮＯ）、ウエイト時間測定部２４ｃは、エラー情報を提示部２５に表示させる（ステップＳ３１６）。試行部２４ｂは、図５に表す処理を終了する。
【００５９】
指定されたメモリのうち測定結果を提示していないメモリが存在する場合、すなわち、測定されていないメモリが残っている場合（ステップＳ３１５：ＮＯ）、試行部２４ｂは、ステップＳ３０４に処理を戻す。
【００６０】
図６は、書き込み処理時のウエイト時間と、読み出し処理時のウエイト時間とを一体で設定する場合における、診断モードを表すフローチャートである。書き込み処理時のウエイト時間と、読み出しのウエイト時間とを、処理部２４の仕様として個別には設定できない場合、試行部２４ｂは、切替部２２によって指定された診断モードに基づく処理として、図６に表す処理を実行する。
【００６１】
ステップＳ４０１の処理は、図５に表されたステップＳ３０１の処理と同様である。
ステップＳ４０２の処理は、図５に表されたステップＳ３０２の処理と同様である。
試行部２４ｂは、周辺基板１０の全てのメモリについて、書き込み処理時及び読み出し処理時のウエイト時間を最短にする（ステップＳ４０３）。
ステップＳ４０４の処理は、図５に表されたステップＳ３０５の処理と同様である。
ステップＳ４０５の処理は、図５に表されたステップＳ３０６の処理と同様である。
【００６２】
書き込んだデータと、読み出したデータとが一致していない場合（ステップＳ４０５：ＮＯ）、試行部２４ｂは、書き込み処理時及び読み出し処理時のウエイト時間を、所定時間だけ長くする（ステップＳ４０６）。この所定時間（時間の刻み幅）は、処理部２４の仕様として予め定められる。この所定時間は、例えば、クロックの周期の整数倍で表現される。試行部２４ｂは、ステップＳ４０４に処理を戻す。
【００６３】
書き込んだデータと、読み出したデータとが一致している場合（ステップＳ４０５：ＹＥＳ）、ウエイト時間測定部２４ｃは、書き込んだデータと読み出したデータとが一致したときのウエイト時間を、書き込み処理時及び読み出し処理時のウエイト時間と決定する（ステップＳ４０７）。
【００６４】
ウエイト時間測定部２４ｃは、決定した書き込み処理時と読み出し処理時のウエイト時間を測定した結果を、提示部２５に提示させる。提示部２５は、ウエイト時間測定部２４ｃによって測定されたウエイト時間を提示する（ステップＳ４０８）。
【００６５】
ウエイト時間測定部２４ｃは、指定された全てのメモリについて測定結果を提示部２５が提示したか否かを判定する（ステップＳ４０９）。指定されたメモリのうち測定結果を提示していないメモリが存在する場合、すなわち、測定されていないメモリが残っている場合（ステップＳ４０９：ＮＯ）、試行部２４ｂは、ステップＳ４０４に処理を戻す。
【００６６】
指定された全てのメモリについて測定結果を提示した場合（ステップＳ４０９：ＹＥＳ）、ウエイト時間測定部２４ｃは、ステップＳ４０４からステップＳ４０９までの処理を実行した回数が所定回数以内であるか否かを判定する（ステップＳ４１０）。この所定回数は、例えば、３回である。なお、ウエイト時間測定部２４ｃは、所定回数以内であるか否かを判定するのではなく、ステップＳ４０４からステップＳ４０９までの処理を実行した回数が所定回数以上であるか否かを判定してもよい。
【００６７】
ステップＳ４０４からステップＳ４０９までの処理を実行した回数が所定回数以内であると判定された場合（ステップＳ４１０：ＹＥＳ）、試行部２４ｂは、メイン基板２０のメモリのデータを、周辺基板１０のメモリに書き戻す（ステップＳ４１１）。試行部２４ｂは、図６に表す処理を終了する。
【００６８】
ステップＳ４０４からステップＳ４０９までの処理を実行した回数が所定回数以内でないと判定された場合（ステップＳ４１０：ＮＯ）、ウエイト時間測定部２４ｃは、エラー情報を提示部２５に表示させる（ステップＳ４１１）。試行部２４ｂは、図６に表す処理を終了する。
【００６９】
指定されたメモリのうち測定結果を提示していないメモリが存在する場合、すなわち、測定されていないメモリが残っている場合（ステップＳ４０９：ＮＯ）、試行部２４ｂは、ステップＳ４０４に処理を戻す。
【００７０】
以上のように、実施形態の処理装置１は、プロセッサを有するメイン基板２０と、複数のメモリを有する周辺基板１０とを有する処理装置であって、記憶部１４と、指定情報読み出し部２４ａと、試行部２４ｂと、ウエイト時間測定部２４ｃを備える。記憶部１４は、周辺基板１０に設けられ、周辺基板１０の複数のメモリのうち一部又は全部のメモリを指定する指定情報を記憶する。指定情報読み出し部２４ａは、メイン基板２０に設けられ、周辺基板１０から指定情報を読み出す。試行部２４ｂは、メイン基板２０に設けられ、指定情報読み出し部２４ａにより読み出した指定情報を参照する。試行部２４ｂは、指定情報により指定されたメモリを選択する。試行部２４ｂは、メモリにアクセスするためのバスのウエイト時間を変更しながら、選択したメモリにデータを書き込む。試行部２４ｂは、選択したメモリからデータを読み出す。ウエイト時間測定部２４ｃは、メイン基板２０に設けられる。ウエイト時間測定部２４ｃは、試行部２４ｂによって読み出したデータと書き込んだデータとが一致する場合におけるウエイト時間を、指定されたメモリのウエイト時間と決定する。
【００７１】
実施形態のウエイト時間測定方法は、プロセッサを有するメイン基板２０と複数のメモリを有する周辺基板１０とを有する処理装置１におけるウエイト時間測定方法であって、読み出すステップと、決定するステップとを含む。読み出すステップでは、指定情報読み出し部２４ａは、メイン基板２０に設けられ、周辺基板１０から指定情報を読み出す。試行部２４ｂは、メイン基板２０に設けられ、指定情報読み出し部２４ａにより読み出した指定情報を参照する。試行部２４ｂは、指定情報により指定されたメモリを選択する。試行部２４ｂは、メモリにアクセスするためのバスのウエイト時間を変更しながら、選択したメモリにデータを書き込む。試行部２４ｂは、選択したメモリからデータを読み出す。決定するステップでは、ウエイト時間測定部２４ｃは、試行部２４ｂによって読み出したデータと書き込んだデータとが一致する場合におけるウエイト時間を、指定されたメモリのウエイト時間と決定する。
【００７２】
この構成によって、試行部２４ｂは、指定情報を参照する。試行部２４ｂは、指定情報により指定されたメモリを選択する。試行部２４ｂは、メモリにアクセスするためのバスのウエイト時間を変更しながら、選択したメモリにデータを書き込む。試行部２４ｂは、選択したメモリからデータを読み出す。実施形態の処理装置１、及びウエイト時間測定方法は、組み合わされた基板における処理速度を向上させることができる。
【００７３】
実施形態の処理装置１、及びウエイト時間測定方法は、複数のメモリに対し、ウエイト時間を設定することが必要なメモリに対してのみ、ウエイト時間を設定することができる。実施形態の処理装置１、及びウエイト時間測定方法は、ウエイト時間を設定するために必要な時間を、短縮することができる。実施形態の処理装置１、及びウエイト時間測定方法は、メモリの不具合を検査する場合、診断モードで起動して、周辺基板１０の全てのメモリを検査することができる。
【００７４】
実施形態の処理装置１は、以下のように表現できる。
プロセッサを有するメイン基板２０と複数のメモリを有する周辺基板１０とを有する処理装置１であって、
周辺基板１０に設けられ、周辺基板１０の複数のメモリうち一部又は全部のメモリを選択するための指定情報を記憶する記憶部１４と、
メイン基板２０に設けられ、周辺基板１０から指定情報を読み出す指定情報読み出し部２４ａと、
メイン基板２０に設けられ、指定情報を参照し、記憶部１４により指定されたメモリを選択し、選択したメモリにアクセスすることによって最短のウエイト時間を求める試行部２４ｂと、
メイン基板２０に設けられ、試行部２４ｂによって読み出したデータと書き込んだデータとが一致する場合におけるウエイト時間を、指定されたメモリのウエイト時間と決定するウエイト時間測定部２４ｃと、
を備える処理装置。
【００７５】
以上述べた少なくともひとつの実施形態の処理装置１によれば、プロセッサを有するメイン基板と複数のメモリを有する周辺基板とを有する処理装置の試行部２４ｂであって、指定情報を参照し、指定情報により指定されたメモリを選択し、メモリにアクセスするためのバスのウエイト時間を変更しながら、選択したメモリにデータを書き込んでから、選択したメモリからデータを読み出す試行部２４ｂを持つことにより、組み合わされた基板における処理速度を向上させることができる。
【００７６】
以上、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれると同様に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
【符号の説明】
【００７７】
１…処理装置、１０…周辺基板、１１…メモリ、１２…メモリ、１３…コネクタ、１４…記憶部、２０…メイン基板、２１…コネクタ、２２…切替部、２３…メモリ、２４…制御部、２４…処理部、２４ａ…指定情報読み出し部、２４ｂ…試行部、２４ｃ…ウエイト時間測定部、２５…提示部、Ｍ１１…テーブルデータ、Ｍ１２…テーブルデータ、ＣＳ０…チップセレクトピン、ＣＳ１…チップセレクトピン
【図１】
0006316145.tif 000002
【図２】
0006316145.tif 000003
【図３】
0006316145.tif 000004
【図４】
0006316145.tif 000005
【図５】
0006316145.tif 000006
【図６】
0006316145.tif 000007