(57)【要約】【課題】  データ通信を行う機器が複数台接続されたシリアルバス上において、データ転送方式に見合ったデータ処理方法を事前に選択することによって、データ転送の高速化とＣＰＵに対する負荷の低減を可能とするシリアルデータ送受信機器を提供する。【解決手段】  ＰＣ等のイニシエータ機器１００とＨＤＤ等のターゲット機器１０１とが接続されたシリアルバス３上において、イニシエータ機器１００には、ターゲット機器の種類、データ転送能力、対応プロトコル等の送受信情報を取得し解析する機器情報解析手段１０５と、ターゲット機器１０５のデータ転送方法に対して有効であると判断されたデータ処理手法を選択するデータ制御方法選択手段１０６とを備えている。ターゲット機器１０５からのデータ転送の順番は、選択されたデータ処理手法で予想される順となり、データ転送を高速化しＣＰＵに対する負荷を低減させることができる。【選択図】        図２
2006330968.tif 000002
【特許請求の範囲】
【請求項１】
データ通信を行う機器が複数台接続されたシリアルバス上において、相手機器の種類、データ転送能力、対応プロトコル等の送受信情報を取得し解析する機器情報解析手段と、前記相手機器より受け取ったデータを処理するデータ処理手法を選択するデータ制御方法選択手段とを備え、前記送受信情報は前記相手機器のデータ転送方法についての情報を含んでおり、前記データ制御方法選択手段は、前記機器情報解析手段が取得し解析した前記送受信情報から得られた前記相手機器の前記データ転送方法に対して有効であると判断された前記データ処理手法を選択することを特徴とするシリアルデータ送受信機器。
【請求項２】
前記シリアルバスは、ＩＥＥＥ１３９４であることを特徴とするシリアルデータ送受信機器。
【請求項３】
前記送受信情報は、前記機器の接続の際に前記機器間で遣り取りされるシリアルデータに含まれていることを特徴とする請求項１又は２に記載のシリアルデータ送受信機器。
【請求項４】
前記シリアルデータは、カンパニーＩＤ及びＶｅｄｅｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎを含むＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭであり、前記送受信情報は、少なくとも前記Ｖｅｄｅｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎに記載されていることを特徴とする請求項３に記載のシリアルデータ送受信機器。
【請求項５】
前記シリアルデータは、ＩＮＱＵＩＲＹコマンドと当該ＩＮＱＵＩＲＹコマンドに応答すべきＩＮＱＵＩＲＹデータを含むＳＣＳＩのコマンドセットであり、前記送受信情報は、少なくとも前記ＩＮＱＵＩＲＹコマンド又は前記ＩＮＱＵＩＲＹデータ内に含まれていることを特徴とする請求項３に記載のシリアルデータ送受信機器。
【請求項６】
シリアルバス上に接続される複数台のデータ通信を行う機器のうち相手側となる前記機器の種類、データ転送能力、対応プロトコル等からなる送受信情報に前記相手機器のデータ転送方法に関する情報を含めておき、受信する側の前記機器は前記送受信情報を取得・解析し、前記送受信情報に含まれる前記データ転送方法に基づいて、前記相手機器より受け取ったデータに対して有効であると判断されたデータ処理手法を選択することを特徴とするシリアルデータ送受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、送受信装置、特に、複数のデータ通信可能な機器がシリアルバスで繋がれた系（システム）において、一方的に又は互いにシリアルデータを転送するシリアルデータ送受信方法及びシリアルデータ送受信機器に関する。
【背景技術】
【０００２】
近年、デジタル信号処理技術の進展及びメディアの異なる機器間のデータ共有の必要性が高まるに従って、よく知られたＩＥＥＥ１３９４シリアルバス搭載の機器が数多く商品化されている。ＩＥＥＥ１３９４シリアルバス上に接続された複数の機器は、バス上において各機器固有のノード番号を割り当てられており、相手のノード番号を指定することにより、指定された機器に対して所望のパケットを送信することができる。
【０００３】
ここに、一般的なデータの流れのうち、図５及び図６に示す模式図を参照して、送信側のノードから受信側のノードへデータを書き込む、いわゆるライトトランザクションと呼ばれる動作について説明する。尚、トランザクションには２通りの方式が有り、一つはユニファイドトランザクションと呼ばれる方式であり、もう一つはスプリットトランザクションと呼ばれる方式である。
【０００４】
まず、ユニファイドトランザクション方式について説明する。図５は、最も単純な前記ＩＥＥＥ１３９４シリアルバス上に２台のノードが接続された場合に、ユニファイドトランザクションにおけるライトトランザクション動作の一例を示す模式図である。図５において、２００は送信側ノード、２０１は受信側ノード、２０２及び２０５は互いに異なるデータ送信パケット、２０３及び２０６はデータ受信完了通知信号、２０４はビジー状態通知信号である。
【０００５】
ユニファイドトランザクションにおけるライトトランザクション動作において、まず、送信側ノード２００は、データ送信パケット２０２を受信側ノード２０１へ送信する。受信側ノード２０１では、データ送信パケット２０２を受信可能であれば、データ受信完了通知信号２０３を送信側ノード２００へ送信し、パケットの転送が完了する。一方、受信側ノード２０１で、次のデータ送信パケット２０５＃１を受信不可能であれば、受信できなかったことを示すビジー状態通知信号２０４を送信側ノード２００へ送信する。ビジー状態通知信号２０４を受信した送信側ノード２００は、準備ができ次第、再度同一のデータ送信パケット２０５＃２を送信し、受信側ノード２０１からデータ受信完了通知信号２０６を受信すれば、パケットの転送が完了する。ここで、送信側ノード２００が、再度、ビジー状態通知信号２０４を受信すれば、再度同一のデータ送信パケット２０５＃３（図示せず）を送信する。このようして、送信側ノード２００は、受信側ノード２０１からデータ受信完了通知信号２０６を受信するまで、送信データパケット２０５の送信を繰り返すことで、所望のパケットの送信を行うことができる。
【０００６】
次に、スプリットトランザクションを説明する。図６は、図５と同様、最も単純なＩＥＥＥ１３９４シリアルバス上に２台のノードが接続された場合に、スプリットトランザクションを用いたライトトランザクション動作の一例を示す模式図である。図６において、３０１は送信側ノード、３０２は受信側ノード、３０３及び３０６は互いに異なるデータ送信パケット、３０８及び３０９は待ち状態通知信号、３０４及び３０７はデータ受信完了通知信号、３０５はビジー状態通知信号、３１０及び３１１はデータ受信完了パケットである。
【０００７】
スプリットトランザクションにおけるライトトランザクション動作において、まず、送信側ノード３０１は、データ送信パケット３０３を受信側ノード３０２へ送信する。受信側ノード３０２では、データ送信パケット３０３を受信可能であっても、待ち状態通知信号３０８を送信し、その後、データ受信完了パケット３１０を送信側ノード３０１へ送信し、前記パケットに対する応答として送信側ノード３０１はデータ受信完了通知信号３０４を送信し、パケットの転送が完了する。
【０００８】
一方、受信側ノード３０２で、次のデータ送信パケット３０６＃１を受信不可能であれば、受信できなかったことを示すビジー状態通知信号３０５を送信側ノード３０１へ送信する。ビジー状態通知信号３０５を受信した送信側ノード３０１は、準備ができ次第、再度同一のデータ送信パケット３０６＃２を送信し、受信側ノード３０２から待ち状態通知信号３０９を受信すれば、前述のようにデータ受信完了パケット３１１を受信し、前記パケットに対するデータ受信完了通知信号３０７を送信する。また、データ送信パケット３０６＃２に対する受信側ノード３０２の応答がビジー状態通知信号であった場合には、再度図示しないデータ送信パケット３０６＃３を送信する。尚、パケットの再送信回数は規格や実装手法に依るので、ここでは言及しない。このようして、送信側ノード３０１は、受信側ノード３０２から待ち状態通知信号３０９とデータ受信完了パケット３１１を受信するまで、送信データパケット３０６の送信を繰り返すことで、所望のパケットの送信を行うことができる。
【０００９】
また、前記ＩＥＥＥ１３９４の上位プロトコルとしては、ＳＢＰ−２が良く知られている。ＳＢＰ−２は、イニシエータ機器とターゲット機器との２者間においてデータの送受信を行うことを目的としているプロトコルである。
【００１０】
ここで、ＳＢＰ−２の動作について簡単に説明する。イニシエータ機器とターゲット機器間での遣り取りについては、イニシエータ機器側が図７に図示するＯｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｂｌｏｃｋ（以下、ＯＲＢと称す）と呼ばれる、ＳＢＰ−２で規定されたＭａｎａｇｅｍｅｎｔ  Ｆｕｎｃｔｉｏｎ又はＳＣＳＩのコマンドをほぼそのままの形で含んだデータをあるアドレス空間に設置し、当該アドレス空間をターゲット機器に通知し、ターゲット機器が上記通知されたアドレス空間上のＯＲＢを取得することで行われる。ここで、ターゲット機器は、取得した前記ＯＲＢ内のＭａｎａｇｅｍｅｎｔ  Ｆｕｎｃｔｉｏｎ又はＳＣＳＩコマンドに対応したデータ送受信や各種初期化等の動作を行い、ＯＲＢ記載の要求コマンド通りの動作を終えた後、応答完了をイニシエータ機器に通知する形式で、動作は進行する。
【００１１】
具体的な動作としては、まず、イニシエータ機器とターゲット機器が接続された場合、ＩＥＥＥ１３９４機器として、ＩＥＥＥ１２１２にて規定されている４８ｂｉｔで表される空間のうち、機器固有情報が書かれているＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭと呼ばれる１０２４バイトの空間の情報の中で必要なものを、少なくともイニシエータ側機器は取得する。イニシエータ機器は、取得した相手機器の情報から相手機器がプロトコルＳＢＰ−２を搭載したターゲット機器であることを認識した場合、ＬＯＧＩＮコマンドを含んだＯＲＢを当該ターゲット機器に取得させ、必要に応じて数回のネゴシエーションを経て互いにターゲット機器とイニシエータ機器から構成されるＳＢＰ−２の機器として接続される。
【００１２】
次に、イニシエータ機器からターゲット機器へのデータ送信は、所望のデータを自身のアドレス空間に配置し、ＯＲＢにＷＲＩＴＥコマンドとデータ長、及びデータを書き込みたいターゲット側機器の論理アドレスを書き込むことで行われる。ページテーブルを使用しないのであれば、前記自身のアドレス空間をＯＲＢにそのまま書き込む。また、ページテーブルを使用するのであれば、ページテーブルデータを配置したアドレス及びページテーブル数をＯＲＢに書き込み、ターゲット機器にＯＲＢ取得を促すパケットを送信し、ターゲット機器に当該ＯＲＢを取得させ、イニシエータ機器はターゲット機器との間でページテーブルについてのデータ転送を行う。このとき、ＷＲＩＴＥコマンド動作はターゲット機器よりイニシエータ機器へのＲＥＡＤ＿ＲＥＱＵＥＳＴ動作形式にて行われる。
【００１３】
次に、ターゲット機器からイニシエータ機器へのデータ転送は、ＯＲＢにＲＥＡＤコマンドとデータ長、及び取得したいターゲット側機器のデータが配置されている論理アドレスを書き込むことで行われる。ページテーブルを使用しないのであれば、データを書き込んで欲しい自身のアドレス空間をＯＲＢに書き込む。また、ページテーブルを使用するのであれば、ページテーブルデータを配置したアドレス、及びページテーブル数をＯＲＢに書き込み、ターゲット機器にＯＲＢ取得を促すパケットを送信し、ターゲット機器に当該ＯＲＢを取得させ、ターゲット機器はイニシエータ機器との間でページテーブルデータのデータ転送を行う。このとき、ＲＥＡＤコマンド動作は、ターゲット機器よりイニシエータ機器へのＷＲＩＴＥ−ＲＥＱＵＥＳＴ動作形式にて行われる。
【００１４】
例えば、前述のＩＥＥＥ１３９４シリアルバスを使用してＰＣとＣＤ−ＲＯＭドライブを接続し、ＳＢＰ−２プロトコルを用いてファイルデータをＰＣよりＣＤ−ＲＯＭに書き込む場合、既に述べたようにイニシエータ機器であるＰＣに対してターゲット機器であるＣＤ−ＲＯＭドライブが、ＲＥＡＤ＿ＲＥＱＵＥＳＴパケットを発行することで書き込みが行われる。このとき、ターゲット機器としては自身のＲＥＡＤ＿ＲＥＱＵＥＳＴによってデータを取得することになるが、ＲＥＡＤ＿ＲＥＱＵＥＳＴ発行のタイミングはタイムアウトが発生しない限り任意である。また、連続データの転送においても、ターゲット機器の都合によっては同一データを重複して要求することも可能である。また、同様にターゲット機器の都合によっては、連続データ転送において、データのアクセス順番を入れ替えたりすることも可能となっている。実際、前記現象は市販の多くの記録可能なＨＤＤ、ＣＤ及びＤＶＤドライブ等に見られる現象である。
【００１５】
このような現象が発生した場合、使用可能なメモリが少ない、或いはキャッシュフローが整備されていないイニシエータ機器によっては、データ転送要求が予想していた順番でないことがある。その結果、データ転送に応答するためにデータを内部でＤＭＡ転送等にて準備を行わなければならず、ＣＰＵの負荷増大及び転送速度の低下を招き、データ転送の効率を著しく下げてしまうという問題が生じる。この問題を未然に防ぐためには、イニシエータ機器側にデータキャッシュとして使用可能なメモリを充分に設置し、高速な内部ＤＭＡ転送を確立させ、且つ動作に余裕を持たせたＣＰＵの選択が必須となるが、コストと効果の面から勘案すると、こうした方策を採用することは難しい。
【発明の開示】
【発明が解決しようとする課題】
【００１６】
そこで、データ通信を行う機器が複数台接続されたシリアルバス上において、データ転送の順番を受信側で予想される順番と同じとし、データ転送方式に見合ったデータ処理方法を採ることを可能にする点で解決すべき課題がある。
【００１７】
この発明の目的は、データ通信を行う機器が複数台接続されたシリアルバス上において、データ転送の順番が異なることに起因した無駄を省いた処理方法を選択可能とし、そうしたデータ処理方法の選択によって、データ転送の高速化やＣＰＵに対する負荷の低減も合わせて見込むことが可能なシリアルデータ送受信方法及びシリアルデータ送受信機器を提供することである。
【課題を解決するための手段】
【００１８】
上記の課題を解決するため、本発明によるシリアルデータ送受信機器は、データ通信を行う機器が複数台接続されたシリアルバス上において、相手機器の種類、データ転送能力、対応プロトコル等の送受信情報を取得し解析する機器情報解析手段と、相手機器より受け取ったデータを処理するデータ処理手法を選択するデータ制御方法選択手段とを備え、送受信情報は相手機器のデータ転送方法についての情報を含んでおり、データ制御方法選択手段は、機器情報解析手段が取得し解析した送受信情報から得られた相手機器の前記データ転送方法に対して有効であると判断されたデータ処理手法を選択することを特徴としている。
【００１９】
また、本発明によるシリアルデータ送受信方法は、シリアルバス上に接続される複数台のデータ通信を行う機器のうち相手側となる機器の種類、データ転送能力、対応プロトコル等からなる送受信情報に相手機器のデータ転送方法に関する情報を含めておき、受信する側の機器は送受信情報を取得・解析し、送受信情報に含まれるデータ転送方法に基づいて、相手機器より受け取ったデータに対して有効であると判断されたデータ処理手法を選択することを特徴としている。
【００２０】
上記のように構成されたシリアルデータ送受信方法及び機器によれば、シリアルバス上において接続された複数台の機器間では、送受信情報の中にデータ転送元の機器のデータ転送方式についての情報がデータ転送先の機器に事前に伝えられる。シリアルデータ送受信機器の場合は、データ転送先の機器に備わる機器情報解析手段は、相手機器の種類、データ転送能力、対応プロトコル等の送受信情報を取得し解析し、データ制御方法選択手段は、取得・解析された送受信情報から得られたデータ転送元である相手機器のデータ転送方法に対して有効であると判断されたデータ処理手法を選択する。シリアルデータ送受信方法の場合には、受信する側の機器は送受信情報を取得・解析し、送受信情報に含まれるデータ転送方法に基づいて、相手機器より受け取ったデータに対して有効であると判断されたデータ処理手法を選択する。送受信情報は、機器間を接続した際に交換される通信プロトコルの一部分を利用して行うことが可能である。
【００２１】
ターゲット機器がイニシエータ機器から取得したページテーブルの順番を遵守してデータ通信を行うことが可能である場合、その事実をイニシエータ機器が知ることにより、以後、イニシエータ機器側では指定ページテーブル等の順番通りにアクセスがあると予測可能である。これは、ＷＲＩＴＥ動作、ＲＥＡＤ動作に関わらず、ターゲット機器がアクセスする未来のデータアドレスを絶対的に予測できるということと等価である。このように、予想していた順番でのデータ転送を行えるようになるので、キャッシュ動作を非常に有効に働かせることが可能となる。また、キャッシュが外れることも無いので、キャッシュフローも簡略化することが可能となり、ＣＰＵの負荷も軽減される。
【００２２】
このシリアルデータ送受信機器において、前記シリアルバスをＩＥＥＥ１３９４とすることができる。シリアルバスとして、映像データ等の高速通信が可能なＩＥＥＥ１３９４を選択することが可能である。
【００２３】
上記のシリアルデータ送受信機器において、送受信情報を、機器の接続の際に機器間で遣り取りされるシリアルデータに含ませることができる。機器をシリアルバスに接続する際に、送受信情報を機器間で遣り取りされるシリアルデータの中に含ませることで、機器の接続の際に、伝達された送受信情報に基づいてデータ転送方式等の準備が整う。
【００２４】
送受信情報がシリアルデータに含められる上記のシリアルデータ送受信機器において、シリアルデータをカンパニーＩＤ及びＶｅｄｅｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎを含むＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭとし、送受信情報を少なくともＶｅｄｅｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎに記載することができる。Ｃｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭは、カンパニーＩＤ及びＶｅｄｅｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎ等の機器固有情報が記載されているデータ空間であり、この空間内のデータが機器の接続の際に機器間で遣り取りされる。このデータ空間の空きを利用して、また、空間内のカンパニーＩＤのようなデータとの組合せを利用してデータ転送方式を含む送受信情報が記載されるので、機器の接続の際に送受信情報が機器間で遣り取りされ、データ転送方式等の準備が整う。
【００２５】
送受信情報がシリアルデータに含められる上記のシリアルデータ送受信機器において、シリアルデータをＩＮＱＵＩＲＹコマンドと当該ＩＮＱＵＩＲＹコマンドに応答すべきＩＮＱＵＩＲＹデータを含むＳＣＳＩのコマンドセットとし、送受信情報を少なくともＩＮＱＵＩＲＹコマンド又はＩＮＱＵＩＲＹデータ内に含めることができる。コンピュータに周辺機器を接続する際に、インターフェイス規格としてＳＣＳＩが採用される場合、問い合わせのためのＩＮＱＵＩＲＹコマンドと当該ＩＮＱＵＩＲＹコマンドに応答すべきＩＮＱＵＩＲＹデータ又はその拡張されたデータ中に、データ転送方式を含む送受信情報が記載又は他のコードと組み合わせて記載されるので、機器の接続の際に送受信情報が機器間で遣り取りされ、データ転送方式等の準備が整う。
【発明の効果】
【００２６】
この発明によるシリアルデータ送受信機器は、上記のように構成されているので、データ通信を行う機器が複数台接続されたシリアルバス上において、データ転送に関する機器の送受信情報をもう一方の機器に対してデータ転送前に伝えることにより、そのデータ転送方式に見合ったデータ処理方法を事前に選択することが可能となり、データ転送の順番が異なることに起因した無駄を省いた処理方法を選択することができ、データ転送を高速化することができる。更に、そうしたデータ処理方法の選択によって、データ転送の高速化やＣＰＵに対する負荷の低減も合わせて見込むことができる。また、シリアルバス上において機器を接続する際に、データ転送方式に見合ったデータ処理方法の事前の伝達を、機器間で行われる既存の通信プロトコルの一部を利用して行うことができるので、データ処理方法の伝達のために別途の遣り取りする機会を設けることや、データ処理方法専用のためのデータを用意する必要がないので、データ転送方式に見合ったデータ処理方法を簡便に選択することができる。
【発明を実施するための最良の形態】
【００２７】
以下、添付した図面に基づいて、この発明によるシリアルデータ送受信機器の実施例を説明する。図１は本発明によるシリアルデータ送受信機器を用いたシステムの一例を示す概略図、図２は本発明によるシリアルデータ送受信機器の一例を示すブロック図、図３は基本的なＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭのテーブルの一例を示す図である。図４は図３に示すＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭのテーブル中のＶｅｎｄｏｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎ領域の一例を示す説明図である。
【００２８】
以下、図１を用いて本発明によるシリアルデータ送受信機器の一実施例を具体的に説明する。図１は、本発明によるシリアルデータ送受信機器がＩＥＥＥ１３９４を用いて、ＳＢＰ−２プロトコルを適用して接続したシリアルバスに繋げられた系（システム）の一例である。１００はパーソナル・コンピュータのようなイニシエータ機器、１０１はＨＤＤのようなターゲット機器である。これらＳＢＰ−２対応機器をＩＥＥＥ１３９４で接続した場合、前述のＩＥＥＥ１２１２にて規定された相手機器のＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭの空間上のデータはＲＥＡＤ＿Ｔｒａｎｓａｃｔｉｏｎを用いて取得される。
【００２９】
図２には、図１に示すシリアルデータ送受信機器の送受信に関するブロック図である。図２に示すように、シリアルデータ送受信機器としてのイニシエータ機器１００は、データ通信を行う機器が複数台接続されたシリアルバス１０３上において、相手機器であるターゲット機器１０１のＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭ１１０に記載されている機器の種類、データ転送能力、対応プロトコル等の送受信情報を取得し解析する機器情報解析手段１０５と、機器情報解析手段１０５が取得し解析した送受信情報から得られたターゲット機器１０１のデータ転送方法に対して有効であると判断されたデータ処理手法を選択するデータ制御方法選択手段１０６とを備えている。データ制御方法選択手段１０６で選択されたデータ処理手法はデータ処理手段１０７において指定され、データ処理手段１０７は、ターゲット機器１０１の例えばページテーブル１１１に保存されているパケット形式等データを予め予測する順序で受け取ることができ、選択されたデータ処理手法で処理し、メモリ１０８等に保存することができる。
【００３０】
図３に一例として示すＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭ１１０のテーブルの内容を簡単に説明する。“１３９４”とアスキーコードで書かれているデータは１３９４機器であることを表す。９バイト目から１６バイトまでの８バイトは、ＩＥＥＥ１３９４対応機器が一台一台持つユニークなシリアル番号である。なお、上位３バイト“Ｎｏｄｅ＿ｖｅｎｄｏｒ＿ｉｄ“は各メーカーを表すカンパニーＩＤと呼ばれている。”Ｉｒｍｃ“や”“Ｃｍｃは、このノードが対応する機能等を表す。また、”Ｖｅｎｄｏｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎ“は、各社で自由に意味付けの可能な領域である。
【００３１】
図３に示されているようなＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭ１１０の取得が終わり、イニシエータ機器１００が、接続相手がターゲット機器１０１であることを認識できた場合、前述のＳＢＰ−２機器としてのＬＯＧＩＮ動作が行われる。その後、イニシエータ機器１００がターゲット機器１０１にアクセスするときに、各種コマンドが存在することは前述の通りである。このうち、ＩＮＱＵＩＲＹコマンドの使用によって、ターゲット機器１０１のメーカー名や機種名をアスキーコードにて入手できる場合がある。
【００３２】
次に、本発明によるシリアルデータ送受信機器の第一の実施例を説明する。第一の実施例においては、ターゲット機器１０１は、イニシエータ機器１００とのデータ転送の際には、必ず取得したページテーブル１１１に記載の順番を遵守した転送を行うものとする。今、例えば、ターゲット機器１０１側に備わるＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭ１１０のテーブル中の前述の”Ｖｅｎｄｏｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎ“と呼ばれる領域の中に、図４で示すように８ｂｉｔの領域を設ける。当該８ｂｉｔの値がすべて“１”であれば、前述した“ターゲット機器１０１はイニシエータ機器１００とのデータ転送の際には、必ず取得したページテーブル１１１に記載の順番を遵守した転送を行う”機能を持っていることを表すとする。ＩＥＥＥ１３９４を用いてこれらの機器を接続した際には、上記したように、Ｃｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭ１１０データの取得フェイズが必ず発生するが、この取得フェイズにおいて、イニシエータ機器１００側は、機器情報解析手段１０５による解析によってターゲット機器１０１が該機能を持つことを確認できた場合、データ制御方法選択手段１０６を用いて、不必要と思われるキャッシュ動作の抑制又はページテーブル１１１順のアクセスのみに対応したキャッシュ動作に切り替える。
【００３３】
以上の動作の説明から明らかなように、イニシエータ機器１００側では、ターゲット機器１０１側のＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭ１１０のデータの取得によって、データ転送の際に発生するであろうターゲット機器１０１側の都合によるページテーブル１１１の順番を無視したデータ転送による負荷増加が無いことが、事前に予測可能となる。したがって、ターゲット機器１０１側のデータ転送に見合ったキャッシュ動作を行うことにより、キャッシュの非的中率が大幅に低下され、転送速度の改善が見込まれる。また、複雑なキャッシュ動作フローが必要なくなるため、ＣＰＵ１０４の負荷も軽くなる。以上の手法は、ＩＥＥＥ１２１２で規定されたＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭ１１０の空間を利用するものであるから、ＩＥＥＥ１３９４を用いたデータ処理機器全てに対して適応することが可能である。なお、ここで挙げた手法はあくまで例であり、例えば前記”Ｖｅｎｄｏｒ＿ｄｅｐｅｎｄｅｎｔ＿ｉｎｆｏｒｍａｔｉｏｎ“の中の８ｂｉｔのみで判断した場合は、誤認識してしまうことが多分に考えられるので、該ｂｉｔの拡張や、カンパニーＩＤとの組み合わせで判断する等の手法が必要である。
【００３４】
次に、本発明によるシリアルデータ送受信機器の第二の実施例を説明する。第二の実施例においても第一の実施例と同様に、ターゲット機器１０１は、イニシエータ機器１００とのデータ転送の際には、必ず取得したページテーブル１１１に記載の順番を遵守した転送を行うものとする。今、例えば第一の実施例とは異なり、ターゲット機器１０１側の前述したＳＢＰ−２のＩＮＱＵＩＲＹコマンドで応答すべきデータ領域の中に８ｂｉｔの領域を設け、当該８ビットの値がすべて“１”であれば、前述した“ターゲット機器１０１はイニシエータ機器１００とのデータ転送の際には、必ず取得したページテーブル１１１に記載の順番を遵守した転送を行う”という機能を持っていることを表すとする。ＳＢＰ−２を用いてこれらの機器を接続した際に、イニシエータ機器１００が発行するＩＮＱＵＩＲＹコマンドに対するターゲット機器１０１からのＩＮＱＵＩＲＹデータの取得フェイズにて、イニシエータ機器１００側においては、機器情報解析手段１０５を用いてターゲット機器１０１が該機能を持つことを確認できた場合、データ制御方法選択手段１０６を用いて不必要と思われるキャッシュ動作の抑制又はページテーブル順のアクセスのみに対応したキャッシュ動作に切り替える。
【００３５】
以上の動作により、イニシエータ機器１００側では、データ転送の際に発生するであろうターゲット機器１０１側の都合によるページテーブル１１１の順番を無視したデータ転送に起因した負荷増加が無いことが、ＩＮＱＵＩＲＹデータの取得により事前に予測可能となる。したがって、イニシエータ機器１００側は、ターゲット機器１０１側のデータ転送に見合ったキャッシュ動作を行うことにより、キャッシュの非的中率が大幅に低下されて転送速度の改善が見込まれる。また、複雑なキャッシュ動作フローが必要なくなるので、ＣＰＵの負荷も軽くなる。以上の手法は、ＩＮＱＵＩＲＹコマンドを利用するものであるから、ＳＢＰ−２を用いたデータ処理機器に対して適応することが可能である。なお、ここで挙げた手法はあくまで例であり、例えば前記ＩＮＱＵＩＲＹの中の８ｂｉｔのみで判断した場合は、誤認識してしまうことが多分に考えられるので、該ｂｉｔの拡張や、ＩＮＱＵＩＲＹデータ中の他のコードとの組み合わせで判断する等の手法が必要である。
【図面の簡単な説明】
【００３６】
【図１】本発明によるシリアルデータ送受信機器を用いた系の一例を示す概略図。
【図２】本発明によるシリアルデータ送受信機器の一例を示すブロック図
【図３】基本的なＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭのテーブルの一例を示す図。
【図４】図３に示すＣｏｎｆｉｇｕｒａｔｉｏｎ＿ＲＯＭのテーブル中の領域の中に、設けられる８ｂｉｔの領域を示す図。
【図５】送信側のノードから受信側のノードへデータを書き込むライトトランザクションと呼ばれる動作の一例を示す模式図。
【図６】送信側のノードから受信側のノードへデータを書き込むライトトランザクションと呼ばれる動作の別の例を示す模式図。
【図７】Ｏｐｅｒａｔｉｏｎ  Ｒｅｑｕｅｓｔ  Ｂｌｏｃｋ（ＯＲＢ）と呼ばれるデータの一例を示す図。
【符号の説明】
【００３７】
１００  イニシエータ機器
１０１  ターゲット機器
１０３  シリアルバス
１０５  機器情報解析手段
１０６  データ制御方法選択手段
１０７  データ処理手段
１０８  メモリ
１１０  Ｃｏｎｆｉｈｕｒａｔｉｏｎ＿ＲＯＭ
１１１  ページテーブル
【図１】
2006330968.tif 000003
【図２】
2006330968.tif 000004
【図３】
2006330968.tif 000005
【図４】
2006330968.tif 000006
【図５】
2006330968.tif 000007
【図６】
2006330968.tif 000008
【図７】
2006330968.tif 000009