(57)【要約】【課題】ブロードキャストライトアクセス方式を採用したデータ入出力システムにおいて、ローカルバスの使用効率を低下させることなく、正確な読出し動作を実現する。【解決手段】マスタ機器と複数のスレーブ機器とから構成され、各スレーブ機器は、マスタ機器の書込み要求に応じてデータ及び読出し対象識別情報をバッファリングした後記憶すると共に、読出し要求に応じて読出し対象識別情報とスレーブ識別情報とが一致した場合にデータを出力するデータ入出力システムであって、各スレーブ機器は、書込み要求に応じてデータ及び読出し対象識別情報をバッファに出力すると共に読出し要求に応じてデータをマスタ機器に出力するインタフェースと、読み出し要求時にインタフェースからの要求に応じて読出し対象識別情報とスレーブ識別情報とが一致しているか否かを判定する判定部とを具備し、インタフェースは判定部にて一致と判定された場合にデータを出力する。【選択図】図１
2007156935.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも１つのマスタ機器と、前記マスタ機器と各々接続された複数のスレーブ機器とから構成され、前記マスタ機器は各スレーブ機器に対して並行にデータ及び読出しの対象となるスレーブ機器を示す読出し対象識別情報の書込み要求を行い、各スレーブ機器は前記書込み要求に応じて前記データ及び読出し対象識別情報を一旦内部に設けられたバッファにバッファリングした後、同じく内部に設けられた記憶部に記憶する一方、前記マスタ機器からのデータの読出し要求に応じて前記読出し対象識別情報と事前に設定された自身を示すスレーブ識別情報とが一致した場合に前記記憶部に記憶されているデータを前記マスタ機器に出力するデータ入出力システムであって、
各スレーブ機器は、
バスを介して前記マスタ機器と接続され、当該マスタ機器からのデータの書込み要求に応じて前記データ及び読出し対象識別情報を前記バッファを介して記憶部に記憶させる一方、前記読出し要求に応じて読出し指示信号を前記バッファを介して出力するインタフェースと、
前記読出し要求時において、前記バッファを介して読出し指示信号が入力された場合、前記読出し対象識別情報とスレーブ識別情報とが一致しているか否かを判定する判定部とを具備し、
前記インタフェースは、前記判定部にて前記読出し対象識別情報とスレーブ識別情報とが一致していると判定された場合に、前記記憶部に記憶されているデータを取得し、前記バスを介してマスタ機器に出力する
ことを特徴とするデータ入出力システム。
【請求項２】
２つのマスタ機器を備え、各スレーブ機器は、各マスタ機器に個別に対応する２つのインタフェース及び２つのバッファと、当該２つのバッファにてそれぞれバッファリングされた前記データ及び読出し対象識別情報を選択的に取得して前記記憶部に出力するデータ選択部とを具備することを特徴とする請求項１記載のデータ入出力システム。
【請求項３】
少なくとも１つのマスタ機器とバスを介して接続され、前記マスタ機器からのデータ及び読出しの対象となるスレーブ機器を示す読出し対象識別情報の書込み要求に応じて、前記データ及び読出し対象識別情報を一旦内部に設けられたバッファにバッファリングした後、同じく内部に設けられた記憶部に記憶すると共に、前記マスタ機器からのデータの読出し要求に応じて前記読出し対象識別情報と事前に設定された自身を示すスレーブ識別情報とが一致した場合に前記記憶部に記憶されているデータを前記マスタ機器に出力するスレーブ機器であって、
前記バスを介して前記マスタ機器と接続され、当該マスタ機器からのデータの書込み要求に応じて前記データ及び読出し対象識別情報を前記バッファを介して記憶部に記憶させる一方、前記読出し要求に応じて読出し指示信号を前記バッファを介して出力するインタフェースと、
前記読出し要求時において、前記バッファを介して読出し指示信号が入力された場合、前記読出し対象識別情報とスレーブ識別情報とが一致しているか否かを判定する判定部とを具備し、
前記インタフェースは、前記判定部にて前記読出し対象識別情報とスレーブ識別情報とが一致していると判定された場合に、前記記憶部に記憶されているデータを取得し、前記バスを介してマスタ機器に出力する
ことを特徴とするスレーブ機器。
【請求項４】
２つのマスタ機器と接続され、各マスタ機器に個別に対応する２つのインタフェース及び２つのバッファと、当該２つのバッファにてそれぞれバッファリングされた前記データ及び読出し対象識別情報を選択的に取得して前記記憶部に出力するデータ選択部とを具備することを特徴とする請求項３記載のスレーブ機器。
【請求項５】
少なくとも１つのマスタ機器とバスを介して接続され、前記マスタ機器からのデータ及び読出しの対象となるスレーブ機器を示す読出し対象識別情報の書込み要求に応じて、前記データ及び読出し対象識別情報を一旦内部に設けられたバッファにバッファリングした後、同じく内部に設けられた記憶部に記憶すると共に、前記マスタ機器からのデータの読出し要求に応じて前記読出し対象識別情報と事前に設定された自身を示すスレーブ識別情報とが一致した場合に前記記憶部に記憶されているデータを前記マスタ機器に出力するスレーブ機器における信号処理方法であって、
読出し対象識別情報とスレーブ識別情報とが一致するとの判定結果が得られているか否かを判断する第１のステップと、
当該第１のステップにおいて前記判定結果が得られていないと判断された場合、マスタ機器からの要求がデータの書込み要求か読出し要求かを判定する第２のステップと、
当該第２のステップにおいてマスタ機器からの要求はデータの書込み要求であると判定された場合、マスタ機器から入力されたデータ及び読出し対象識別情報を前記バッファを介して記憶部に記憶する第３のステップと、
前記第２のステップにおいてマスタ機器からの要求はデータの読出し要求であると判定された場合、読出し指示信号を前記バッファを介して出力する第４のステップと、
前記読出し指示信号に基づいて読出し対象識別情報とスレーブ識別情報とが一致しているか否かを判定する第５のステップと、
前記第１のステップにおいて前記第５のステップの判定処理により読出し対象識別情報とスレーブ識別情報とが一致するとの判定結果が得られたと判断された場合、前記記憶部に記憶されているデータを前記マスタ機器に出力する第６ステップと
を有することを特徴とするスレーブ機器の信号処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ入出力システム、スレーブ機器及びその信号処理方法に関する。
【背景技術】
【０００２】
少なくとも１つのマスタ機器と、当該マスタ機器からのデータの書込み要求（ライトアクセス）または読出し要求（リードアクセス）に応じてデータを記憶または出力する複数のスレーブ機器とからなるデータ入出力システムにおいて、一度のライトアクセスによって全てのスレーブ機器に同一のデータを記憶させるブロードキャストライトアクセス方式が知られている（例えば、下記特許文献１参照）。
【０００３】
図３は、上記のようなブロードキャストライトアクセス方式を採用したデータ入出力システムの構成ブロック図である。以下では、この図に示すように、２つのマスタ機器（第１のホスト１、第２のホスト３）と、３つのスレーブ機器（第１のスレーブ５、第２のスレーブ６、第３のスレーブ７）とから構成されたデータ入出力システムを例示して説明する。
【０００４】
第１のホスト１は、第１のスレーブ５、第２のスレーブ６及び第３のスレーブ７の一方のマスタ機器であり、第１のローカルバス２を介してライトアクセス信号またはリードアクセス信号を第１のスレーブ５（具体的には第１のバスインタフェース５ａ）、第２のスレーブ６及び第３のスレーブ７に出力する。なお、第１のスレーブ５、第２のスレーブ６及び第３のスレーブ７は全て同じ内部構成を有しており、以下では第１のスレーブ５を代表的に用いて説明する。
【０００５】
第２のホスト３は、第１のホスト１と同様に、第１のスレーブ５、第２のスレーブ６及び第３のスレーブ７の他方のマスタ機器であり、第２のローカルバス４を介してライトアクセス信号またはリードアクセス信号を第１のスレーブ５（具体的には第２のバスインタフェース５ｇ）、第２のスレーブ６及び第３のスレーブ７に出力する。
【０００６】
第１のローカルバス２及び第２のローカルバス４は、ＰＣＩバス規格準拠の汎用バスであり、書込み用データ（ライトデータ）と当該ライトデータを記憶するレジスタのアドレスとを示すアドレス・データ（ＡＤ）信号を伝送するＡＤ信号バス、ライトアクセスかリードアクセスかを示すライト・リード（ＲＷ）信号を伝送するＲＷ信号バス、アドレスが有効であることを示すアドレス・ストローブ（ＡＳ）信号を伝送するＡＳ信号バス及びデータが有効であることを示すデータ・ストローブ（ＤＳ）信号を伝送するＤＳ信号バスから構成されている。つまり、第１のホスト１及び第２のホスト３から出力されるライトアクセス信号及びリードアクセス信号は、ＡＤ信号、ＲＷ信号、ＡＳ信号、ＤＳ信号から構成されている。また、ライトアクセス信号を構成するＡＤ信号には、データの読出し対象となるスレーブを示す読出し対象スレーブＩＤ（読出し対象識別情報）が含まれている。
【０００７】
第１のスレーブ５は、第１のバスインタフェース５ａ、第１のバッファ５ｂ、アービタ５ｃ、レジスタ５ｄ、選択レジスタ５ｅ、リード判定部５ｆ、外部端子設定部５ｇ、第２のバスインタフェース５ｈ及び第２のバッファ５ｉから構成されている。
【０００８】
第１のバスインタフェース５ａは、第１のローカルバス２を介して入力されるＡＤ信号、ＲＷ信号、ＡＳ信号及びＤＳ信号に基づいて、第１のホスト１からの要求がライトアクセスかリードアクセスかを判断し、ライトアクセスであった場合、第１のバッファ５ｂに対し、ライトアクセスを示すライト信号ｗ１（例えば１パルスのＨｉ信号）、アドレスを示すアドレス信号ａｄ１、ライトデータを示すライトデータ信号ｗｄａ１（読出し対象スレーブＩＤを含む）を出力する。また、この第１のバスインタフェース５ａは、第１のホスト１からの要求がリードアクセスであった場合、第１のバッファ５ｂに対し、リードアクセスを示すリード信号ｒ１（例えば１パルスのＨｉ信号）、アドレスを示すアドレス信号ａｄ１を出力する。
【０００９】
さらに、この第１のバスインタフェース５ａは、リードアクセス時において、レジスタ５ｄから入力されるリード完了信号ｒｃ１及びリードデータ信号ｒｄａ１とリード判定部５ｆから入力される読出しスレーブ確定信号ｓ１とに基づいて、リードデータ信号ｒｄａ１を第１のローカルバス２を介して第１のホスト１に出力する。
【００１０】
第１のバッファ５ｂは、上記ライト信号ｗ１、リード信号ｒ１、アドレス信号ａｄ１、ライトデータ信号ｗｄａ１のバッファリングを行い、アービタ５ｃの要求に応じて上記各信号をアービタ５ｃに出力する。アービタ５ｃ（データ選択部）は、アービトレーション・アルゴリズムに従って、上記第１のバッファ５ｂと第２のバッファ５ｉとにそれぞれ格納されている各信号の内、第１のバッファ５ｂに格納されている各信号を選択的に取得し、当該各信号をレジスタ５ｄに出力する。
【００１１】
レジスタ５ｄは、選択レジスタ５ｅとリード判定部５ｆとを有し、ライト信号ｗ１が入力された場合（つまりライトアクセスの場合）、ライトデータを記憶し、また、リード信号ｒ１が入力されると（つまりリードアクセスの場合）、記憶しているライトデータをリードデータ信号ｒｄａ１として第１のバスインタフェース５ａに出力すると共に、有効なデータを出力していることを示すリード完了信号ｒｃ１（例えば１パルスのＨｉ信号）を出力する。選択レジスタ５ｅは、読出し対象スレーブＩＤを記憶し、また、リード判定部５ｆの要求に応じて上記読出し対象スレーブＩＤをリード判定部５ｆに出力する。
【００１２】
リード判定部５ｆは、ライトアクセスの場合、選択レジスタ５ｅに記憶されている読出し対象スレーブＩＤと、外部端子設定部５ｇによって事前に設定されている第１のスレーブ５の識別ＩＤ（スレーブ識別情報）とを比較し、双方のＩＤが一致している場合、双方のＩＤが一致していることを示す読出しスレーブ確定信号ｓ１（例えば１パルスのＨｉ信号）を第１のバスインタフェース５ａに出力する。外部端子設定部５ｇは、例えばディップスイッチであり、第１のスレーブ５の識別ＩＤを設定し、当該識別ＩＤを示す信号をリード判定部５ｆに出力する。この識別ＩＤは、各スレーブ毎に異なる値が設定されている。
【００１３】
一方、第２のバスインタフェース５ｈ及び第２のバッファ５ｉは、第２のホスト３に対して備えられた構成要素であり、上記第１のバスインタフェース５ａ及び第１のバッファ５ｂと同様の機能を有し、各信号の入出力動作も同様なので説明を省略する。
【００１４】
次に、このように構成されたデータ入出力システムの動作について説明する。なお、以下では、第１のホスト１からライトアクセス信号及びリードアクセス信号が出力された場合について説明する。
【００１５】
[ライトアクセス]
まず、ライトアクセス時の動作について図４及び５を用いて説明する。
図４（ａ）は、ライトアクセス時において、第１のホスト１が第１のローカルバス２のＡＤ信号バス、ＲＷ信号バス、ＡＳ信号バス及びＤＳ信号バスに出力する各信号のタイムチャートである。この図に示すように、ＡＤ信号にはアドレス信号及びライトデータ（読出し対象スレーブＩＤを含む）信号が含まれ、ＲＷ信号にはライトアクセスを示す情報が含まれ、ＡＳ信号にはアドレス信号に同期した１パルスのＨｉ信号が含まれ、また、ＤＳ信号にはライトデータ信号に同期した１パルスのＨｉ信号が含まれている。なお、これらの信号は、ライトアクセス時に全てのスレーブに入力され、全てのスレーブにおいて同様の動作が行われる。以下では、第１のスレーブ５を代表的に用いて説明する。
【００１６】
図５は、第１のバスインタフェース５ａの動作を示すフローチャートである。まず、第１のバスインタフェース５ａは、信号受信待ち受け状態（アイドル状態）にある（ステップＳ２０）。第１のバスインタフェース５ａは、第１のローカルバス２を介して上記図４（ａ）に示すような各信号を受信し、ＡＳ信号の立下りエッジを検出すると、その時、ＲＷ信号がライトアクセスを示す情報を含んでいるかリードアクセスを示す情報を含んでいるかを判定する（ステップＳ２１）。このステップＳ２１において、ＲＷ信号がライトアクセスを示す情報を含んでいた場合、第１のバスインタフェース５ａは、ライトアクセスルーチンであるステップＳ２２、Ｓ２３の処理を行う。
ここでは、ＲＷ信号にライトアクセスを示す情報が含まれているので、ステップＳ２２に移行する。
【００１７】
次に、第１のバスインタフェース５ａは、ＤＳ信号の立下りエッジが検出されたか否かを判定し（ステップＳ２２）、「ＹＥＳ」、つまりＤＳ信号の立下りエッジが検出された場合、第１のバッファ５ｂにライト信号ｗ１、アドレス信号ａｄ１及びライトデータ信号ｗｄａ１を出力する（ステップＳ２３）。なお、ステップＳ２２において、「Ｎｏ」、つまりＤＳ信号の立下りエッジが検出されない場合、第１のバスインタフェース５ａは、ＤＳ信号の立下りエッジが検出されるまで待機する。
第１のバスインタフェース５ａは、ステップＳ２３の処理が終了するとステップＳ２０、つまりアイドル状態に移行する。
【００１８】
一方、ライト信号ｗ１、アドレス信号ａｄ１及びライトデータ信号ｗｄａ１は、第１のバッファ５ｂにてバッファリングされた後、アービタ５ｃを介してレジスタ５ｄに伝送され、ライトデータ信号ｗｄａ１に含まれる読出し対象スレーブＩＤは選択レジスタ５ｅに記憶され、ライトデータはレジスタ５ｄのアドレス信号ａｄ１が示すアドレスに記憶される。
【００１９】
そして、リード判定部５ｆは、選択レジスタ５ｅに記憶されている読出し対象スレーブＩＤと、外部端子設定部５ｇによって事前に設定されている第１のスレーブ５の識別ＩＤ（個別識別情報）とが同一か否かを判定し、双方のＩＤが一致している場合、双方のＩＤが一致していることを示す読出しスレーブ確定信号ｓ１（例えば１パルスのＨｉ信号）を第１のバスインタフェース５ａに出力する。
【００２０】
上記のように、ライトアクセス時には、全スレーブにおいて、同一のライトデータ及び読出し対象スレーブＩＤが記憶され、当該読出し対象スレーブＩＤと各スレーブに割り振られた識別ＩＤとが一致したスレーブだけが、Ｈｉ信号のスレーブ確定信号ｓ１を第１のバスインタフェース５ａに出力する。
【００２１】
[リードアクセス]
次に、リードアクセス時の動作について説明する。
図４（ｂ）は、リードアクセス時において、第１のホスト１及び第１のスレーブ５（より具体的には第１のバスインタフェース５ａ）が第１のローカルバス２のＡＤ信号バス、ＲＷ信号バス、ＡＳ信号バス及びＤＳ信号バスに出力する各信号のタイムチャートである。この図に示すように、第１のホスト１から出力されるＡＤ信号にはアドレス信号が含まれ、
ＲＷ信号にはリードアクセスを示す情報が含まれ、ＡＳ信号にはアドレス信号に同期した１パルスのＨｉ信号が含まれている。一方、第１のバスインタフェース５ａから出力されるＡＤ信号には第１のホスト１からの読出し要求に応じて出力されたリードデータ信号が含まれ、また、ＤＳ信号にはリードデータ信号に同期した１パルスのＨｉ信号が含まれている。なお、リードアクセス時においても全てのスレーブにおいて同様の動作が行われるため、以下では、第１のスレーブ５を代表的に用いて説明する。
【００２２】
まず、図５のステップＳ２１において、ＲＷ信号がリードアクセスを示す情報を含んでいた場合、第１のバスインタフェース５ａは、リードアクセスルーチンであるステップＳ２４〜Ｓ３０の処理を行う。
【００２３】
第１のバスインタフェース５ａは、スレーブ確定信号ｓ１がＨｉ信号か否かを判定し（ステップＳ２４）、「Ｎｏ」、つまりスレーブ確定信号ｓ１がＬｏ信号であった場合、ステップＳ２０に戻り、アイドル状態に移行する。すなわち、スレーブ確定信号ｓ１がＬｏ信号であった場合、自身のスレーブ（第１のスレーブ５）は読出し対象スレーブではないと判断してライトデータの読出し処理を行わない。
【００２４】
一方、ステップＳ２４において、「ＹＥＳ」、つまりスレーブ確定信号ｓ１がＨｉ信号であった場合、第１のバスインタフェース５ａは、第１のバッファ５ｂにリード信号ｒ１及びアドレス信号ａｄ１を出力する（ステップＳ２５）。これらリード信号ｒ１及びアドレス信号ａｄ１は、第１のバッファ５ｂにてバッファリングされた後、アービタ５ｃを介してレジスタ５ｄに伝送される。
【００２５】
レジスタ５ｄは、リード信号ｒ１及びアドレス信号ａｄ１が入力されると、アドレス信号ａｄ１が示すアドレスに記憶しているライトデータをリードデータ信号ｒｄａ１として第１のバスインタフェース５ａに出力すると共に、有効なデータを出力していることを示すリード完了信号ｒｃ１を出力する。
【００２６】
第１のバスインタフェース５ａは、リード完了信号ｒｃ１が検出されたか否かを判定し（ステップＳ２６）、「ＹＥＳ」、つまりリード完了信号ｒｃ１が検出された場合、リードデータ信号ｒｄａ１をＡＤ信号バスに出力する（ステップＳ２７）。なお、ステップＳ２６において、「Ｎｏ」、つまりリード完了信号ｒｃ１が検出されない場合、第１のバスインタフェース５ａは、リード完了信号ｒｃ１が検出されるまで待機する。
【００２７】
続いて、一定時間経過後、第１のバスインタフェース５ａは、ＤＳ信号バスにＨｉ信号を出力する（ステップＳ２８）。そして、第１のバスインタフェース５ａは、一定時間、上記のようにＡＤ信号バスにリードデータ信号ｒｄａ１を、ＤＳ信号バスにＨｉ信号を出力し（ステップＳ２９）、その後、ＤＳ信号バスにＬｏ信号を、ＡＤ信号バスにＨｉｇｈ−Ｚ信号を出力した後、ステップＳ２０に戻る（ステップＳ３０）。
【００２８】
以上のように、ブロードキャストライトアクセス方式を採用したデータ入出力システムでは、一度のライトアクセスで、全てのスレーブに同一のデータを記憶させ、リードアクセス時にはスレーブ自身が読出し対象スレーブか否かを判断してデータを出力することで、複数のスレーブが接続されたローカルバスに競合が発生することを防止している。
【特許文献１】特開２００２−２８８１２２号公報
【発明の開示】
【発明が解決しようとする課題】
【００２９】
ところで、図５からわかるように、ライトアクセス時において、第１のバッファ５ｂにライト信号ｗ１、アドレス信号ａｄ１及びライトデータ信号ｗｄａ１がバッファリングされている最中にも関わらず、第１のホスト１からリードアクセス指示が下りてきた場合、リード判定部５ｆにて読出し対象スレーブＩＤと第１のスレーブ５の識別ＩＤとの一致判定が行われないまま、第１のバスインタフェース５ａにおいてリードアクセスルーチンが開始されてしまうことになる。
【００３０】
つまり、ステップＳ２４の処理において誤った判定が行われることになり、この場合、第１のホスト１が希望する読出し対象スレーブとは異なるスレーブからデータ読出しが行われる等、所望の読出し動作を実現することができなくなってしまう。これを解決するために、第１のバッファ５ｂを削除する、つまりレジスタ５ｄの前段にバッファを設けない構成にする方法が考えられる。しかしながら、レジスタ５ｄの前段にバッファを設けない場合、第１のローカルバス２や第２のローカルバス４の使用効率が著しく低下するという問題が生じる。
【００３１】
本発明は、このような事情に鑑みてなされたものであり、ブロードキャストライトアクセス方式を採用したデータ入出力システムにおいて、ローカルバスの使用効率を低下させることなく、正確な読出し動作を実現することを目的とする。
【課題を解決するための手段】
【００３２】
上記課題を解決するために、本発明では、データ入出力システムに係る第１の解決手段として、少なくとも１つのマスタ機器と、前記マスタ機器と各々接続された複数のスレーブ機器とから構成され、前記マスタ機器は各スレーブ機器に対して並行にデータ及び読出しの対象となるスレーブ機器を示す読出し対象識別情報の書込み要求を行い、各スレーブ機器は前記書込み要求に応じて前記データ及び読出し対象識別情報を一旦内部に設けられたバッファにバッファリングした後、同じく内部に設けられた記憶部に記憶する一方、前記マスタ機器からのデータの読出し要求に応じて前記読出し対象識別情報と事前に設定された自身を示すスレーブ識別情報とが一致した場合に前記記憶部に記憶されているデータを前記マスタ機器に出力するデータ入出力システムであって、各スレーブ機器は、バスを介して前記マスタ機器と接続され、当該マスタ機器からのデータの書込み要求に応じて前記データ及び読出し対象識別情報を前記バッファを介して記憶部に記憶させる一方、前記読出し要求に応じて読出し指示信号を前記バッファを介して出力するインタフェースと、前記読出し要求時において、前記バッファを介して読出し指示信号が入力された場合、前記読出し対象識別情報とスレーブ識別情報とが一致しているか否かを判定する判定部とを具備し、前記インタフェースは、前記判定部にて前記読出し対象識別情報とスレーブ識別情報とが一致していると判定された場合に、前記記憶部に記憶されているデータを取得し、前記バスを介してマスタ機器に出力する、という手段を採用する。
【００３３】
また、本発明では、データ入出力システムに係る第２の解決手段として、上記第１の解決手段において、２つのマスタ機器を備え、各スレーブ機器は、各マスタ機器に個別に対応する２つのインタフェース及び２つのバッファと、当該２つのバッファにてそれぞれバッファリングされた前記データ及び読出し対象識別情報を選択的に取得して前記記憶部に出力するデータ選択部とを具備することを特徴とする。
【００３４】
また、本発明では、スレーブ機器に係る第１の解決手段として、少なくとも１つのマスタ機器とバスを介して接続され、前記マスタ機器からのデータ及び読出しの対象となるスレーブ機器を示す読出し対象識別情報の書込み要求に応じて、前記データ及び読出し対象識別情報を一旦内部に設けられたバッファにバッファリングした後、同じく内部に設けられた記憶部に記憶すると共に、前記マスタ機器からのデータの読出し要求に応じて前記読出し対象識別情報と事前に設定された自身を示すスレーブ識別情報とが一致した場合に前記記憶部に記憶されているデータを前記マスタ機器に出力するスレーブ機器であって、前記バスを介して前記マスタ機器と接続され、当該マスタ機器からのデータの書込み要求に応じて前記データ及び読出し対象識別情報を前記バッファを介して記憶部に記憶させる一方、前記読出し要求に応じて読出し指示信号を前記バッファを介して出力するインタフェースと、前記読出し要求時において、前記バッファを介して読出し指示信号が入力された場合、前記読出し対象識別情報とスレーブ識別情報とが一致しているか否かを判定する判定部とを具備し、前記インタフェースは、前記判定部にて前記読出し対象識別情報とスレーブ識別情報とが一致していると判定された場合に、前記記憶部に記憶されているデータを取得し、前記バスを介してマスタ機器に出力する、という手段を採用する。
【００３５】
また、本発明では、スレーブ機器に係る第２の解決手段として、上記第１の解決手段において、２つのマスタ機器と接続され、各マスタ機器に個別に対応する２つのインタフェース及び２つのバッファと、当該２つのバッファにてそれぞれバッファリングされた前記データ及び読出し対象識別情報を選択的に取得して前記記憶部に出力するデータ選択部とを具備することを特徴とする。
【００３６】
さらに、本発明では、スレーブ機器の信号処理方法に係る第１の解決手段として、少なくとも１つのマスタ機器とバスを介して接続され、前記マスタ機器からのデータ及び読出しの対象となるスレーブ機器を示す読出し対象識別情報の書込み要求に応じて、前記データ及び読出し対象識別情報を一旦内部に設けられたバッファにバッファリングした後、同じく内部に設けられた記憶部に記憶すると共に、前記マスタ機器からのデータの読出し要求に応じて前記読出し対象識別情報と事前に設定された自身を示すスレーブ識別情報とが一致した場合に前記記憶部に記憶されているデータを前記マスタ機器に出力するスレーブ機器における信号処理方法であって、読出し対象識別情報とスレーブ識別情報とが一致しているとの判定結果が得られているか否かを判断する第１のステップと、当該第１ステップにおいて前記判定結果が得られていないと判断された場合、マスタ機器からの要求がデータの書込み要求か読出し要求かを判定する第２ステップと、当該第２ステップにおいてマスタ機器からの要求はデータの書込み要求であると判定された場合、マスタ機器から入力されたデータ及び読出し対象識別情報を前記バッファを介して記憶部に記憶する第３ステップと、前記第２ステップにおいてマスタ機器からの要求はデータの読出し要求であると判定された場合、読出し指示信号を前記バッファを介して出力する第４ステップと、前記読出し指示信号に基づいて読出し対象識別情報とスレーブ識別情報とが一致しているか否かを判定する第５ステップと、前記第１ステップにおいて前記第５ステップの判定処理により読出し対象識別情報とスレーブ識別情報とが一致しているとの判定結果が得られたと判断された場合、前記記憶部に記憶されているデータを前記マスタ機器に出力する第６ステップとを有する、という手段を採用する。
【発明の効果】
【００３７】
本発明では、マスタ機器から読出し要求が下りてきた場合に、スレーブ機器側において、インタフェースからバッファを介して読出し指示信号を出力し、当該読出し指示信号に同期して、判定部は読出し対象識別情報とスレーブ識別情報とが一致しているか否かを判定する。そして、前記インタフェースは、前記判定部にて前記読出し対象識別情報とスレーブ識別情報とが一致していると判定された場合に、記憶部に記憶されているデータを取得し、バスを介してマスタ機器に出力する。これにより、確実に書込み要求時に更新された新たな読出し対象識別情報とスレーブ識別情報との一致判定処理が行われることになる。従って、本発明によれば、バッファを削除することなく、つまり、ローカルバスの使用効率を低下させることなく、正確な読出し動作を実現することが可能である。
【発明を実施するための最良の形態】
【００３８】
以下、図面を参照して、本発明の一実施形態について説明する。
図１は、本発明の実施形態に係るブロードキャストライトアクセス方式を採用したデータ入出力システムの構成ブロック図である。なお、図１において、図３と同じ構成要素には同一符号を付し、説明を省略する。
【００３９】
従来と比べて構成上異なる点として、本データ入出力システムにおけるレジスタ５ｄ’は、リード信号ｒ１（読出し指示信号）が入力されると（つまりリードアクセスの場合）、リード判定部５ｆ’による判定結果に応じて、リード完了信号ｒｃ１’及びリードデータ信号ｒｄａ１を第１のバスインタフェース５ａに出力する。
【００４０】
また、リード判定部５ｆ’は、リードアクセス時において、選択レジスタ５ｅに記憶されている読出し対象スレーブＩＤと、外部端子設定部５ｇによって事前に設定されている第１のスレーブ５の識別ＩＤとを比較し、双方のＩＤが一致しているか否かの判定を行い、その判定結果を示す信号をレジスタ５ｄ’に出力する。
【００４１】
より具体的には、レジスタ５ｄ’は、リード判定部５ｆ’にて読出し対象スレーブＩＤと識別ＩＤとが一致していると判定された場合、リードデータ信号ｒｄａ１を出力すると共に１パルスのＨｉ信号のリード完了信号ｒｃ１’を出力する。また、レジスタ５ｄ’は、リード判定部５ｆ’にて読出し対象スレーブＩＤと識別ＩＤとが一致していないと判定された場合、リードデータ信号ｒｄａ１を出力せず、Ｌｏ信号のリード完了信号ｒｃ１’を出力する。
【００４２】
さらに、第１のバスインタフェース５ａ’は、上記リード完了信号ｒｃ１’に基づいて、リードアクセス時に所定の読出し処理を行う。この読出し処理についての詳細は後述する。
【００４３】
次に、このように構成された本データ入出力システムの動作について説明する。なお、以下では、第１のホスト１からライトアクセス信号及びリードアクセス信号が出力された場合について説明する。また、第１のホスト１及び第１のバスインタフェース５ａから第１のローカルバス２に出力される各信号は従来の図４と同様である。
【００４４】
図２は、第１のバスインタフェース５ａ’の動作フローチャートである。まず、第１のバスインタフェース５ａ’は、信号受信待ち受け状態、つまりアイドル状態にある（ステップＳ１）。続いて、第１のバスインタフェース５ａ’は、レジスタ５ｄ’からＨｉ信号のリード完了信号ｒｃ１’が入力されたか否かを判定する（ステップＳ２）。このステップＳ２において、「Ｎｏ」、つまりＬｏ信号のリード完了信号ｒｃ１’を検出した場合、第１のバスインタフェース５ａ’は、第１のローカルバス２を介して図４（ａ）に示すような各信号を受信し、ＡＳ信号の立下りエッジを検出すると、その時、ＲＷ信号がライトアクセスを示す情報を含んでいるかリードアクセスを示す情報を含んでいるかを判定する（ステップＳ３）。
【００４５】
このステップＳ３において、ＲＷ信号がライトアクセスを示す情報を含んでいた場合、第１のバスインタフェース５ａ’は、ライトアクセスルーチンであるステップＳ４及びＳ５の処理を行う。これらステップＳ４及びＳ５の処理は、図５のステップＳ２２及びＳ２３と同様なので説明を省略する。
【００４６】
ライトアクセスの場合、ライト信号ｗ１、アドレス信号ａｄ１及びライトデータ信号ｗｄａ１は、第１のバッファ５ｂにてバッファリングされた後、アービタ５ｃを介してレジスタ５ｄ’に伝送され、ライトデータ信号ｗｄａ１に含まれる読出し対象スレーブＩＤは選択レジスタ５ｅに記憶され、ライトデータはレジスタ５ｄ’のアドレス信号ａｄ１が示すアドレスに記憶される。
【００４７】
一方、ステップＳ３において、ＲＷ信号がリードアクセスを示す情報を含んでいた場合、第１のバスインタフェース５ａ’は、リードアクセスルーチンであるステップＳ６の処理を行う。つまり、第１のバスインタフェース５ａ’は、第１のバッファ５ｂにリード信号ｒ１及びアドレス信号ａｄ１を出力し（ステップＳ６）、その後、ステップＳ１のアイドル状態に移行する。
【００４８】
これらリード信号ｒ１及びアドレス信号ａｄ１は、第１のバッファ５ｂにてバッファリングされた後、アービタ５ｃを介してレジスタ５ｄ’に伝送される。そして、レジスタ５ｄ’は、リード判定部５ｆ’にて読出し対象スレーブＩＤと識別ＩＤとが一致していると判定された場合、リードデータ信号ｒｄａ１を出力すると共に１パルスのＨｉ信号のリード完了信号ｒｃ１’を出力する。ここで、この読出し対象スレーブＩＤはライトアクセス時に更新された新たなＩＤである（なぜなら、リード信号ｒ１が第１のバッファ５ｂから出力されたということは、それ以前に第１のバッファ５ｂに格納されていたライトデータや読出し対象スレーブＩＤは既にレジスタ５ｄ’に出力されているからである）。つまり、正確な読出し対象スレーブＩＤを用いて識別ＩＤとの一致判定が行われている。
【００４９】
また、レジスタ５ｄ’は、リード判定部５ｆ’にて読出し対象スレーブＩＤと識別ＩＤとが一致していないと判定された場合、リードデータ信号ｒｄａ１を出力せず、Ｌｏ信号のリード完了信号ｒｃ１’を出力する。
【００５０】
さらに、ステップＳ２において、「ＹＥＳ」、つまりＨｉ信号のリード完了信号ｒｃ１’を検出した場合、第１のバスインタフェース５ａ’は、リードレスポンスルーチンとしてステップＳ７〜Ｓ１０の処理を行う。
【００５１】
リードレスポンスルーチンにおいて、第１のバスインタフェース５ａ’は、レジスタ５ｄ’から取得したリードデータ信号ｒｄａ１をＡＤ信号バスに出力し（ステップＳ７）、
一定時間経過後、ＤＳ信号バスにＨｉ信号を出力する（ステップＳ８）。そして、第１のバスインタフェース５ａ’は、一定時間、上記のようにＡＤ信号バスにリードデータ信号ｒｄａ１を、ＤＳ信号バスにＨｉ信号を出力し（ステップＳ９）、その後、ＤＳ信号バスにＬｏ信号を、ＡＤ信号バスにＨｉｇｈ−Ｚ信号を出力した後、ステップＳ１に移行する（ステップＳ１０）。
【００５２】
このように、ステップＳ２において、Ｈｉ信号のリード完了信号ｒｃ１’を検出した場合、つまりライトアクセス時に更新された新たな読出し対象スレーブＩＤと識別ＩＤとの一致判定処理の結果に応じてリードレスポンスルーチンは実行されることになり、正確な読出し対象スレーブＩＤと識別ＩＤとが一致した場合のみ、リードデータが第１のローカルバス２に出力される。
【００５３】
具体的には、ライトアクセス時において、第１のバッファ５ｂにライト信号ｗ１、アドレス信号ａｄ１及びライトデータ信号ｗｄａ１がバッファリングされている最中にも関わらず、第１のホスト１からリードアクセス指示が下りてきた場合、まず、リードアクセスルーチンが実行される。その間に第１のバッファ５ｂから各信号がレジスタ５ｄ’に出力され、読出し対象スレーブＩＤが選択レジスタ５ｅに記憶された後、リード判定部５ｆ’にて読出し対象スレーブＩＤと識別ＩＤとの一致判定処理が行われる。そして、その判定結果に応じてレジスタ５ｄ’からリード完了信号ｒｃ１’及びリードデータ信号ｒｄａ１が出力され、Ｈｉ信号のリード完了信号ｒｃ１’を検出した場合にリードレスポンスルーチンが実行されることになる。
【００５４】
以上のように、本実施形態によれば、ライトアクセス時において、第１のバッファ５ｂにライト信号ｗ１、アドレス信号ａｄ１及びライトデータ信号ｗｄａ１がバッファリングされている最中にも関わらず、第１のホスト１からリードアクセス指示が下りてきた場合であっても、確実に更新された読出し対象スレーブＩＤを用いて識別ＩＤとの一致判定が行われているため、誤動作が発生しない。従って、第１のバッファ５ｂを削除することなく、つまり、ローカルバスの使用効率を低下させることなく、正確な読出し動作を実現することが可能である。
【００５５】
なお、第２のバスインタフェース５ｈ’の動作についても第１のバスインタフェース５ａ’と同様である。また、他のスレーブ（第２のスレーブ６、第３のスレーブ７）も、第１のスレーブ５と同様の機能を有している。
【００５６】
さらに、本発明は、上記実施形態に限定されるものではなく、例えば以下のような変形例が考えられる。
【００５７】
（１） 上記実施形態では、２つのマスタ機器（第１のホスト１、第２のホスト３）と、
３つのスレーブ機器（第１のスレーブ５、第２のスレーブ６、第３のスレーブ７）とから構成されたデータ入出力システムを例示して説明したが、これに限らず、マスタ機器はさらに複数でも良いし、１つでも良い。マスタ機器が１つであっても、データ通信速度が遅い場合はスレーブ機器にバッファが必要となるので、本発明は有効である。また、スレーブ機器の数も３つに限定されない。
【００５８】
（２）上記実施形態では、スレーブの識別ＩＤを外部端子設定部５ｇ（ディップスイッチ）によって設定したが、これに限らず、例えばスレーブの識別ＩＤを記憶する専用のレジスタを設けても良い。
【図面の簡単な説明】
【００５９】
【図１】本発明の一実施形態におけるデータ入出力システムの構成ブロック図である。
【図２】本発明の一実施形態における第１のバスインタフェース５ａ’の動作フローチャートである。
【図３】従来のデータ入出力システムの構成ブロック図である。
【図４】従来のローカルバスに出力される各信号のタイムチャートである。
【図５】従来のデータ入出力システムにおける第１のバスインタフェース５ａの動作フローチャートである。
【符号の説明】
【００６０】
１…第１のホスト、２…第１のローカルバス、３…第２のホスト、４…第２のローカルバス、５…第１のスレーブ、５ａ、５ａ’…第１のバスインタフェース、５ｂ…第１のバッファ、５ｃ…アービタ、５ｄ、５ｄ’…レジスタ、５ｅ…選択レジスタ、５ｆ、５ｆ’ …リード判定部、５ｇ…外部端子設定部、５ｈ、５ｈ’…第２のバスインタフェース、５ｉ…第２のバッファ、６…第２のスレーブ、７…第３のスレーブ
【図１】
2007156935.tif 000003
【図２】
2007156935.tif 000004
【図３】
2007156935.tif 000005
【図４】
2007156935.tif 000006
【図５】
2007156935.tif 000007