JP2011045025A - データ転送方法及びデータ転送装置 - Google Patents

データ転送方法及びデータ転送装置 Download PDF

Info

Publication number
JP2011045025A
JP2011045025A JP2009193499A JP2009193499A JP2011045025A JP 2011045025 A JP2011045025 A JP 2011045025A JP 2009193499 A JP2009193499 A JP 2009193499A JP 2009193499 A JP2009193499 A JP 2009193499A JP 2011045025 A JP2011045025 A JP 2011045025A
Authority
JP
Japan
Prior art keywords
opcr
channel number
unused
data transfer
plug
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2009193499A
Other languages
English (en)
Other versions
JP5321349B2 (ja
Inventor
Yasuyuki Kubota
康之 久保田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2009193499A priority Critical patent/JP5321349B2/ja
Priority to US12/861,823 priority patent/US20110047307A1/en
Publication of JP2011045025A publication Critical patent/JP2011045025A/ja
Application granted granted Critical
Publication of JP5321349B2 publication Critical patent/JP5321349B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40065Bandwidth and channel allocation

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Systems (AREA)

Abstract

【課題】コネクションを確立するために転送されるパケット数を低減することのできるデータ転送方法及びデータ転送装置を提供する。
【解決手段】問い合わせを受けたチャネル番号が未使用の場合に、未使用のoPCRの番号がオペランド4に格納され、そのoPCRのレジスタ値がオペランド5〜8に格納されたレスポンスフォーマット(図4(a)参照)を含むライトパケットをシンク機器に送信する。また、問い合わせを受けたチャネル番号が使用中の場合に、そのチャネル番号の設定されたoPCRのレジスタ値がオペランド5〜8に格納されたレスポンスフォーマット(図4(b)参照)を含むライトパケットをシンク機器に送信する。
【選択図】図4

Description

本発明は、データ転送方法及びデータ転送装置に関するものである。
近年、大量の音声データや動画データを扱うパーソナルコンピュータやデジタルビデオカメラといったノード間を互いに結ぶシリアルインタフェースの一つとしてIEEE1394規格が注目されている。このIEEE1394には、音声データや動画データなどをリアルタイム転送する際に使用されるアイソクロナス(Isochronous)転送モードと、静止画像データや制御コマンドなどを確実に伝送する際に使用されるアシンクロナス(Asyncronous)転送モードが規定されている。
アイソクロナス(Iso)転送では、アイソクロナスリソースマネージャ(IRM)から取得されたアイソクロナスチャネル番号(チャネル番号)と帯域を使用して、プラグコネクションを確立した機器間でIsoデータの転送が行なわれる。ここで、チャネル番号は、データ(パケット)を識別するための論理的な番号である。このチャネル番号と帯域は、バスに接続されている全てのノードの資源(リソース)であり、これらリソースを管理するのが上記IRMである。そして、チャネル番号及び帯域の取得は、IRMの公開するレジスタを書き換えることによって行われる。
また、上記プラグコネクションの確立としては、1台の機器の出力プラグと別の1台の機器の入力プラグとを接続するpoint-to-point接続(PtoP接続)と、一つの出力プラグ又は入力プラグを一つのアイソクロナスチャネルに接続するブロードキャスト接続とがある。このようなプラグコネクションの確立は、各機器に設けられるプラグレジスタを用いて行われる。このプラグレジスタは、各機器間におけるIsoデータの転送を制御するときに、アナログインタフェースに類似した信号経路を形成するために、プラグという概念をレジスタで仮想的に構成させて実体化したものである。プラグレジスタは、IEC61883規格で規定されており、マスタプラグレジスタ(MPR)とプラグコントロールレジスタ(PCR)とを有する。
図9に示すように、マスタプラグレジスタ(MPR)には、入力マスタープラグレジスタ(iMPR)と出力マスタープラグレジスタ(oMPR)とが設けられる。これらiMPR及びoMPRは、各機器内に一つだけ存在し、入力プラグ全体及び出力プラグ全体をそれぞれ管理している。
一方、プラグコントロールレジスタ(PCR)には、入力プラグ(接続プラグ)の属性を制御する入力プラグコントロールレジスタ(iPCR)と、出力プラグ(接続プラグ)の属性を制御する出力プラグコントロールレジスタ(oPCR)とが設けられる。これらiPCR及びoPCRは、図9に示すように各機器内に最大31個設けられる。ここで、図10にoPCRのデータフォーマットを示し、図11にiPCRのデータフォーマットを示す。これらのフォーマットは規格化されている。なお、各フォーマットの図中下部に付された数字は、フォーマットを形成する各データのビット数を示している。
図10に示すように、oPCRは、on-line領域と、Broadcast connection counter領域と、Point-to-point connection counter(pcc)領域と、Reserved領域と、Channel number(ch)領域と、Data rate領域と、Overhead ID領域と、Payload領域とを有する。このoPCRのレジスタ値のうちのon-line領域は、当該oPCRに対応する出力プラグの使用状態を示す領域である。すなわち、on-line領域の値が1であれば出力プラグがIsoデータの送信可能なオンライン状態であり、0であれば出力プラグがIsoデータを送信できないオフライン状態であることを示す。また、pcc領域は、当該oPCRに対応する出力プラグを経由して形成されるPtoP接続の数を示す領域である。また、ch領域は、当該oPCRに対応する出力プラグが接続されるアイソクロナスチャネル番号(チャネル番号)を示す領域である。
また、図11に示すように、iPCRは、on-line領域と、Broadcast connection counter領域と、pcc領域と、Reserved領域と、ch領域と、Reserved領域とを有する。このiPCRのレジスタ値のうちのon-line領域は、当該iPCRに対応する入力プラグがIsoデータの受信可能なオンライン状態(=1)であるか、Isoデータを受信できないオフライン状態(=0)であるかを示す領域である。また、pcc領域は、当該iPCRに対応する入力プラグを経由して形成されるPtoP接続の数を示す領域である。また、ch領域は、当該iPCRに対応する入力プラグが接続されるチャネル番号を示す領域である。
これらoPCR及びiPCRのレジスタ値を適切に設定することにより、上記PtoP接続等のプラグコネクションを確立することができ、任意の機器間でのIsoデータの転送が可能となる。
次に、PtoP接続の接続形態について図12に従って説明する。なお、図12では、oPCR及びiPCRのレジスタ値(とくに、on-line領域、pcc領域及びch領域の値)を用いてPtoP接続を示している。
図12(a)に示すように、PtoP接続は、一つのソース機器(送信機器)B1のoPCR[0]と一つのシンク機器(受信機器)A1のiPCR[0]とを、一つのチャネルCH2(2はチャネル番号)に結び付ける接続形態である。このとき、ソース機器B1のoPCR[0]のレジスタ値は、on-lineがオンライン状態である[1]となり、PtoP接続の数が一つであるためpccが[1]となり、さらにチャネル番号が[2]となる。同様に、シンク機器A1のiPCR[0]のレジスタ値は、on-lineがオンライン状態である[1]となり、pccが[1]となり、さらにチャネル番号が[2]となる。
このPtoP接続では、ソース機器のoPCRのチャネル番号は一意に決定し、他のソース機器と重複することはない。但し、図12(b)に示すように、シンク機器については一つのチャネル番号を共有することができる。すなわち、例えばソース機器B2のoPCR[0]とシンク機器A2のiPCR[0]とを一つのチャネルCH3に結び付けてPtoP接続を確立し、更にソース機器B2のoPCR[0]とシンク機器C2のiPCR[0]との間で同じチャネルCH3を利用して別のPtoP接続を重ね張り(オーバーレイ)することができる。このとき、ソース機器のoPCR[0]のpccは、PtoP接続の数が二つであるため[2]となる。
また、PtoP接続では、図12(c)に示すように、一つのソース機器B3が複数のチャネルを保有することができる。すなわち、ソース機器B3のoPCR[0]とシンク機器A3のiPCR[0]とを一つのチャネルCH4に結び付けてPtoP接続を確立し、更にそのソース機器B3のoPCR[1]とシンク機器C3のiPCR[0]とを、上記チャネルCH4とは別のチャネルCH6に結び付けてPtoP接続を確立することができる。このとき、ソース機器B3のoPCR[0]のchは[4]となり、ソース機器B3のoPCR[1]のchは[6]となる。
次に、このようなPtoP接続を確立するための処理手順について図13に従って説明する。
今、各機器の電源投入などによってバスリセットが発生される。すると、そのバスリセット後に、シンク機器は、接続したいアイソクロナスチャネル番号の使用状態を、AV/C接続コマンドとして規格定義されているchannel usageステータスコマンドによって全てのソース機器に問い合わせる(ステップS41)。その問い合わせを受けたソース機器は、該当するチャネル番号を使用しているか否かを示す応答パケットをシンク機器に送信する。シンク機器は、ソース機器からの応答パケットに基づいて問い合わせたチャネル番号が使用中であるか否かを判断する(ステップS42)。
ここで、上述したようなAV/Cコマンド、及びその応答は、AV/Cの下位プロトコルであるFCP(Function Control Protocol)フレーム(図14参照)にAV/Cコマンドフレーム(図15参照)がカプセル化されて送受信される。なお、このFCPフレームにカプセル化されたAV/Cコマンドフレームは、アシンクロナス転送を利用して、図14に示すシリアルバスブロックライトパケットとしてバスケーブル上を転送される。以下に、シリアルバスブロックライトパケット(ライトパケット)及びAV/Cコマンドフレームのデータフォーマットについて図14〜図16に従って説明する。
図14に示すように、ライトパケットは、パケットヘッダと、ヘッダCRC(header_CRC)と、FCPフレームと、データCRC(data_CRC)とを有する構造である。パケットヘッダには、データの転送先のノードIDを示すdestination_ID、パケット番号を示すtransact label(tl)や、当該パケットがはじめて伝送されたパケットであるか、再送されたパケットであるかを示すretry code(rt)の情報が格納されている。また、パケットヘッダには、指令コードを示すtcode、パケットの優先順位を示すpriority(pri)、データの転送元のノードIDを示すsource_ID、destination_offset、FCPデータのデータサイズを示すdata_lengthや、extended_tcode等の情報が格納されている。ヘッダCRCには、パケットヘッダに対して所定の方式により生成された誤り検出符号が格納されている。また、データCRCには、FCPデータに対して所定の方式により生成された誤り検出符号が格納されている。
FCPフレームには、図15に示すAV/Cコマンドフレームがカプセル化されて格納される。このAV/Cコマンドフレーム(FCPフレーム)の先頭となる上位4ビットには、Command and Transaction Set(cts)が記述される。このctsは、当該ライトパケットのコマンドセットのIDを示すもので、例えば図15に示すように[0000]と設定されている場合には、当該ライトパケットがAV/Cコマンドパケットであることが示されることになる。
また、AV/Cコマンドフレームには、上記ctsに続いて、コマンドの機能分類を示すCommand type(ctype)、送信元機器のサブユニットの種類(モニタやVCR等)を示すsubunit_type、各サブユニットを特定するためのsubunit_ID等が格納される。
さらに、AV/Cコマンドフレームには、上記subunit_IDに続いて、オペレーションコード(オペコード:opcode)と、そのオペコードが必要とする情報(パラメータ)であるオペランド(operand)とが格納される。このオペコードは、サブユニット毎に各種コマンドが定義され、そのオペコードごとにオペランドが定義されている。そのオペコードの一つとして、AV/C Digital Interface Command Set General SpecificationではAV/C接続コマンドとしてchannel usageステータスコマンド[12h](なお、「h」はその値が16進数であることを示す。)が規格定義されている。このchannel usageステータスコマンドは、Iso転送をしているソース機器のチャネル番号設定状態を問い合わせ、ソース機器のノードID、チャネル番号を設定してあるoPCR番号をレスポンスとして送信するコマンドである。
図16に示すように、上記channel usageステータスコマンドが設定されると、すなわちAV/Cコマンドフレームのオペコードとして[12h]が設定されると、オペランドには当該コマンドが必要とする情報が格納される。具体的には、オペランド0にはチャネル番号が格納され、オペランド1,2にはノードIDが格納され、オペランド3にはoPCR番号が格納される。
さらに、上記ステップS41でシンク機器からソース機器に問い合わせるときのchannel usageステータスコマンドのリクエストフォーマットについて図16(a)に従って説明する。図16(a)に示すように、リクエストフォーマットでは、オペランド0にはシンク機器が接続したいチャネル番号、オペランド1,2には[FFFFh]、オペランド3には[FFh]がそれぞれ格納される。なお、上記ステップS41では、図16(a)に示すフォーマットのリクエストデータがFCPフレームにカプセル化されたライトパケットが、シンク機器から各ソース機器に送信される。
続いて、上記リクエストフォーマットに対するchannel usageステータスコマンドのレスポンスフォーマットについて図16(b)に従って説明する。図16(b)に示すように、レスポンスフォーマットでは、シンク機器から問い合わせされたチャネル番号を使用しているときにはオペランド1,2に該当するノードID、オペランド3に該当するoPCR番号が格納される。一方、レスポンスフォーマットでは、シンク機器から問い合わせされたチャネル番号に対して使用していない場合には、オペランド1〜3には[FFFFFFh]が格納される。なお、このchannel usageステータスコマンドでは、図15に示すオペランド4以降のオペランドは未使用の状態である。
図13のステップS42において、シンク機器は、図16(b)に示すフォーマットのレスポンスデータがFCPフレームにカプセル化されたライトパケットをソース機器から受信し、そのオペランド0〜3の情報に基づいて、問い合わせたチャネル番号が使用中であるかを判断する。ここで、問い合わせたチャネル番号が使用中である場合、すなわち問い合わせたチャネル番号の設定されたoPCRが存在する場合には、そのチャネル番号を使用しているソース機器の送信フォーマットの確認やユニット情報の確認が行われる(ステップS43,S44)。
そして、該当ソース機器がシンク機器のサポート可能な機器である場合には(ステップS45でYES)、そのソース機器側のプラグ(oPCR)がロックされる(ステップS46)。これにより、問い合わせたチャネル番号の設定されたoPCRがロックされ、他のシンク機器が設定変更できなくなる。続いて、そのロックされたoPCRのレジスタ値(図10参照)が取得される(ステップS47)。具体的には、シンク機器はソース機器から受信したライトパケットからノードID及びoPCR番号を取得し、それらの情報を用いたリードリクエストによってソース機器からoPCRのレジスタ値を取得する。この取得したoPCRのレジスタ値のpcc(図10参照)が[0]の場合には(ステップS48でYES)、IRMに対して帯域の取得とチャネル番号の登録が行われる(ステップS49,S50)。続いて、上記ステップS46でロックされたoPCRのロックが解除される(ステップS51)。そして、ロックトランザクションを使用して、その解除されたソース機器のoPCRと、問い合わせたシンク機器のiPCRとに対して、上記ステップS50で登録したチャネル番号等の設定(更新)が行われる(ステップS52)。この設定が完了すると、それらソース機器のoPCRとシンク機器のiPCRとの間にPtoP接続が確立し、ソース機器のoPCRからシンク機器のiPCRへのIsoデータの転送が可能になる。
なお、上記ステップS48において、oPCRのpccが[0]でない場合には、当該oPCRに対して既にPtoP接続の確立されたシンク機器が存在し、IRMに対して帯域取得及びチャネル登録が既に完了している。このため、この場合にはステップS49,S50を省略してステップS51に移る。このとき、チャネル番号を問い合わせたシンク機器は、上記登録済みのチャネル番号を自身のiPCRに設定し、ソース機器のoPCRに対してはロックトランザクションを使用してpccの更新等を行う。この設定・更新が完了すると、図12(b)に示すようなオーバーレイPtoP接続が確立される。また、上記ステップS45において、チャネル番号を使用しているソース機器がシンク機器でサポート可能でない機器の場合には、そのシンク機器は、上記説明したステップS46〜S52の処理を終了し、別のチャネル番号を問い合わせる処理に移る。
一方、ステップS42において、シンク機器が問い合わせたチャネル番号が未使用中の場合、すなわち問い合わせチャネル番号の設定されたoPCRが一つも存在しない場合には、各ソース機器からコンフィグレーションROMが読み出される(ステップS53)。その読み出したコンフィグレーションROMに基づきソース機器が対応するAV機器でないと判断された場合には(ステップS54でNO)、処理を終了する。一方、読み出したコンフィグレーションROMに基づきソース機器が対応するAV機器であると判断された場合には(ステップS54でYES)、IRMに対して帯域の取得とチャネル番号の登録が行われる(ステップS55,S56)。
続いて、シンク機器は、ソース機器のoPCR[n]の中から未使用の出力プラグ(oPCR)を検索する。すなわち、シンク機器は、リードリクエストによってソース機器のoPCR番号とそのoPCRのレジスタ値をoPCR[0]から一つずつ取得する(ステップS57,S58)。そして、シンク機器は、取得したoPCRのレジスタ値に基づき未使用のoPCRであるか否かを判断する(ステップS59)。シンク機器は、未使用のoPCRが見つかるまでソース機器のoPCRのレジスタ値をoPCR[0]からoPCR[30]まで一つずつ読み出し(ステップS60,S61)、未使用のoPCRが見つかると(ステップS59でYES)、ステップS62に移る。このステップS62では、ソース機器の未使用oPCRのフォーマット設定が行われる。続いて、シンク機器は、ロックトランザクションを使用して、未使用oPCR及び当該シンク機器のiPCRに対して、上記ステップS56で登録したチャネル番号の設定等を行う(ステップS63)。この設定が完了すると、それらソース機器のoPCRとシンク機器のiPCRとの間にPtoP接続が確立し、ソース機器のoPCRからシンク機器のiPCRへのIsoデータの転送が可能になる。
なお、上記従来技術に関連する先行技術として、特許文献1,2が開示されている。
特開2005−347953号公報 特開2001−045030号公報
ところで、上述したようにシンク機器が問い合わせたチャネル番号が未使用であった場合に(ステップS42でNO)、シンク機器は、未使用のoPCRを検索するために、リードリクエストでoPCRの番号及びレジスタ値をソース機器に問い合わせる必要がある。ここで、ソース機器はoPCRを最大31個有しているが、上記リードリクエストでは各oPCRに対してリクエストパケットを発行しなければならない。このため、未使用のoPCRが見つかるまでに最大31回の問い合わせを行われなければならず、PtoP接続の確立までに要する時間が長く、その確立タイミングが遅くなるという問題がある。
また、シンク機器の接続数が増加した場合には、そのシンク機器の分だけoPCRの番号等を問い合わせるためのリクエストパケット数が増大する。すると、ソース機器側でそのパケット処理が追いつかなくなり、これに伴ってシンク機器側からはack_busyにより上記リクエストパケットが再送されることになる。このようなリクエストパケットの再送が繰り返されると、パケット送信回数の限度を超えて、PtoP接続が確立しないまま処理が終了するという問題が発生する。さらに、リクエストパケット数が増大すると、結果としてネットワーク内のパケット数が増大するため、他の機器間のデータ転送のための帯域を圧迫するという問題もある。
開示のデータ転送方法は、データを識別するためのチャネル番号を含む接続プラグの情報を、前記接続プラグの情報を複数設定可能な送信側に設定して、前記チャネル番号を特定してデータを転送するデータ転送方法であって、前記チャネル番号の問い合わせを受け、前記チャネル番号が未使用の場合に、前記問い合わせに対して、未使用の接続プラグの情報を通知する。
開示のデータ転送方法によれば、プラグコネクションを確立するために転送されるパケット数を低減することができるという効果を奏する。
ソース機器のIPCの内部構成を示すブロック図。 ネットワークシステムを示すブロック図。 本実施形態のリクエストフォーマットを示す説明図。 (a)、(b)本実施形態のレスポンスフォーマットを示す説明図。 プラグコネクションの確立方法を説明するためのフローチャート。 プラグコネクションの確立方法を説明するためのフローチャート。 変形例のプラグコネクションの確立方法を説明するためのフローチャート。 変形例のプラグコネクションの確立方法を説明するためのフローチャート。 プラグレジスタのアドレスマップを示す説明図。 oPCRのデータフォーマットを示す説明図。 iPCRのデータフォーマットを示す説明図。 (a)〜(c)PtoP接続の接続形態を説明するための説明図。 従来のプラグコネクションの確立方法を説明するためのフローチャート。 シリアルバスブロックライトパケットのデータフォーマットを示す説明図。 AV/Cコマンドフレームのデータフォーマットを示す説明図。 (a)、(b)従来のリクエストフォーマット及びレスポンスフォーマットを示す説明図。
(第1実施形態)
以下、第1実施形態を図1〜図6に従って説明する。
図2は、IEEE1394規格に準拠したシステム構成(トポロジ)を示す。ノードAにはIEEE1394バスケーブル(バスケーブル)1aを介してノードBが接続され、ノードBにはバスケーブル1bを介してノードCが接続されている。なお、ノードA〜Cは、例えばDVDプレーヤー、デジタルテレビジョン、デジタルセットトップボックス等の接続ポイントの総称である。ここでは、ノードA,Cは、デジタルテレビジョン等のシンク機器(受信機器)であり、ノードBは、DVDプレーヤーやデジタルセットトップボックス等のソース機器(送信機器)である。
これらノードA〜Cは、IEEE1394プロトコルコントローラ(IPC)を備える。ここでは、ソース機器であるノードBの備えるIPC10の内部構成について詳しく説明する。
図1に示すように、ノードBのIPC10は、1394用インタフェース(I/F)11,12と、物理層処理回路13と、リンク層処理回路14と、アイソクロナス転送制御回路15と、アイソクロナスデータI/F16と、アシンクロナス転送制御回路17と、アシンクロナスバッファ18と、MPUI/F19と、接続制御回路20とを備える。
1394用I/F11は上記バスケーブル1aを介してノードAに接続され、1394用I/F12は上記バスケーブル1bを介してノードCに接続されている。これら1394用I/F11,12は、他ノードから受信する電気信号を装置内部で扱う電気信号に変換して物理層処理回路13に出力する。また、1394用I/F11,12は、物理層処理回路13からの電気信号をIEEE1394規格の電気信号に変換して他ノードに送信する。
物理層処理回路13は、バスの状態モニタ、バスリセット発生時の初期化動作、スピードシグナリング、アービトレーションなどを行う。また、この物理層処理回路13は、1394用I/F11,12から入力される電気信号をリンク層処理回路14が扱う論理信号に変換してリンク層処理回路14に出力する。一方、物理層処理回路13は、リンク層処理回路14から入力される論理信号を電気信号に変換して1394用I/F11,12に出力する。
リンク層処理回路14は、物理層処理回路13から入力される論理信号(パケットデータ)のヘッダ部に基づいて、自身宛のパケットであるかを判断する。リンク層処理回路14は、受信したパケットデータが自身宛であるときには、そのパケットデータがアイソクロナス(Iso)パケットかアシンクロナス(Asyn)パケットかを、該パケットのヘッダ部の内容から判断する。そして、リンク層処理回路14は、受信したパケットがIsoパケットの場合には、そのIsoパケットをIso転送制御回路15に供給する。また、リンク層処理回路14は、受信したパケットがAsynパケットの場合には、そのAsynパケットをAsyn転送制御回路17に供給する。
一方、リンク層処理回路14は、Iso転送制御回路15及びAsyn転送制御回路17から入力されるデータに基づいて、IEEE1394規格に準拠した標準パケットを生成して物理層処理回路13に出力する。
Iso転送制御回路15は、リンク層処理回路14から入力されるIsoパケットのヘッダ部とデータ部とを分離し、それらヘッダ部及びデータ部に対して誤り訂正処理を行う。そして、Iso転送制御回路15は、誤り訂正処理後のデータをIsoデータI/F16に供給する。一方、Iso転送制御回路15は、IsoデータI/F16から入力されるデータに基づいて、Isoパケットフォーマットを生成してリンク層処理回路14に供給する。
Asyn転送制御回路17は、リンク層処理回路14から入力されるAsynパケットのヘッダ部とデータ部とを分離し、それらヘッダ部及びデータ部に対して誤り訂正処理を行う。そして、Asyn転送制御回路17は、誤り訂正処理後のデータをAsynバッファ18に出力する。一方、Asyn転送制御回路17は、Asynバッファ18から入力されるデータに基づいて、Asynパケットを生成してリンク層処理回路14に供給する。
Asynバッファ18は、Asyn転送制御回路17から入力されるAsynパケットをMPUI/F19に出力する。一方、Asynバッファ18は、MPUI/F19から入力されるデータをAsyn転送制御回路17に出力する。なお、このMPUI/F19は、図示しないマイクロプロセッサユニット(MPU)とAsynバッファ18との間においてデータの送受信等を行う。
また、Asynバッファ18は、Asyn転送制御回路17から入力されるAsynパケットを接続制御回路20に出力する。この接続制御回路20は、受信したAsynパケットが図3に示すchannel usageステータスコマンドのリクエストフォーマットのデータを含む場合には、図4に示すchannel usageステータスコマンドのレスポンスフォーマットのデータを生成する。
ここで、本実施形態では、channel usageステータスコマンドのリクエストフォーマットを従来のフォーマット(図16(a)参照)から図3に示すフォーマットに変更している。また、channel usageステータスコマンドのレスポンスフォーマットを従来のフォーマット(図16(b)参照)から図4(a)、(b)に示すフォーマットに変更している。以下に、それぞれの変更後のフォーマットについて説明する。
図3及び図4に示すように、channel usageステータスコマンドのリクエストフォーマット及びレスポンスフォーマットは、オペコードに[12h]が格納され、オペランド0〜8には当該コマンドが必要とする情報が格納される。具体的には、オペランド0にはチャネル番号、オペランド1,2にはノードID、オペランド3にはoPCR番号が格納される。また、オペランド4には未使用のoPCR番号、オペランド5〜8にはoPCRの値が格納される。すなわち、変更後のリクエストフォーマット及びレスポンスフォーマットでは、従来のフォーマット(図16参照)に対してオペランド4〜8が追加されている。そこで、その追加されたオペランド4〜8に格納される情報についてさらに詳述する。
図3に示すリクエストフォーマットでは、オペランド4には[FFh]が格納され、オペランド5〜8には[FFFFFFFFh]が格納される。なお、このリクエストフォーマットにおけるオペランド4〜8は、レスポンスフォーマットと整合をとるために追加されたものであり、未使用のoPCR番号やoPCRの値を問い合わせる情報として機能する。
また、図4に示すレスポンスフォーマットでは、さらにシンク機器から問い合わせされたチャネル番号が設定されたoPCRが存在するか否かによって、オペランド4〜8に格納される情報が異なる。すなわち、問い合わせされたチャネル番号が当該ソース機器の全てのoPCR[n]に未設定の場合のレスポンスフォーマットでは、図4(a)に示すように、オペランド4にはoPCR[n]のうち未使用のoPCRの番号(ここでは[01h])が格納される。また、オペランド5〜8には上記未使用oPCR[1]の値(現在値)、具体的には未使用oPCR[1]のレジスタ値(図10参照)が格納される。この未使用のoPCRのレジスタ値は、通常[00000000h]となる。なお、これら未使用のoPCRの番号及びレジスタ値は、未使用の接続プラグの情報に含まれる。
一方、問い合わせされたチャネル番号の設定された設定済みoPCRが存在する場合のレスポンスフォーマットでは、図4(b)に示すように、オペランド4には[FFh]が格納される。また、オペランド5〜8には上記設定済みoPCRの値(現在値)、具体的には設定済みoPCRのレジスタ値(ここでは[81100000h])が格納される。なお、この場合のオペランド4に格納される[FFh]は、oPCR番号の上限よりも大きい値であれば特に制限されない。
次に、上記接続制御回路20の内部構成を説明する。
図1に示すように、接続制御回路20は、ラッチ回路21と、第1比較回路22と、FIFO(First In First Out)23と、バッファ24と、レジスタ部25と、第2及び第3比較回路26,27と、マルチプレクサ28と、記憶部29とを備える。
ラッチ回路21は、上記Asynバッファ18から入力されるAsynパケットから、リクエストフォーマット内のオペコードと、シンク機器から問い合わせされたチャネル番号と、送信元のノードIDと、リクエストフォーマットの長さを記憶する。
第1比較回路22は、ラッチ回路21からオペコードとリクエストフォーマットの長さとを読み出し、オペコードが[12h]と一致するかを判断し、更にリクエストフォーマットの長さが図3又は図16(a)に示すリクエストフォーマットの長さに一致するかを判断する。双方が一致した場合に、第1比較回路22は、ラッチ回路21から読み出したオペコードと、チャネル番号と、送信元のノードIDと、リクエストフォーマットの長さとをFIFO23に格納するとともに、上記チャネル番号をバッファ24に格納する。なお、FIFO23は、複数のシンク機器からリクエストパケットが転送された場合にも対応可能なように、FIFO配列の数は多いことが好ましい。また、FIFO23に格納されたデータは、バスリセット発生時にクリアされる。
レジスタ部25は、当該ノードBの備えるoPCR[0]〜oPCR[30]の各レジスタ値を格納する。
第2比較回路26は、各oPCRのレジスタ値に含まれるチャネル番号とバッファ24に格納されたチャネル番号、すなわちシンク機器から問い合わせされたチャネル番号とを比較する。このとき、両チャネル番号が一致した場合には、そのoPCRに所望のチャネル番号が設定されていることになる、すなわち上記チャネル番号の一致したoPCRが設定済みoPCRになる。そこで、第2比較回路26は、その設定済みoPCRの番号及びレジスタ値を第1出力信号D1としてマルチプレクサ28に出力する。
第3比較回路27は、oPCRの初期値と各oPCRのレジスタ値(現在値)とを比較する。ここで、oPCRのレジスタ値が初期値と一致すれば、そのoPCRが未使用oPCRであると判断することができる。そこで、第3比較回路27は、その未使用oPCRの番号及びレジスタ値を第2出力信号D2としてマルチプレクサ28に出力する。なお、これら第2及び第3比較回路26,27は、例えばoPCR[n]の番号昇順で上記比較動作を行う。
マルチプレクサ28は、第2及び第3比較回路26,27の第1及び第2出力信号D1,D2のうちの一方を第3出力信号D3として記憶部29に出力する。具体的には、マルチプレクサ28は、第2比較回路26から第1出力信号D1が入力されている場合には、その第1出力信号D1(設定済みoPCRの番号及びレジスタ値)を記憶部29に出力する。また、マルチプレクサ28は、第2比較回路26から第1出力信号D1が入力されていない場合には、第3比較回路27から入力される第2出力信号D2(未使用oPCRの番号及びレジスタ値)を記憶部29に出力する。
記憶部29は、マルチプレクサ28から入力される第3出力信号D3、FIFO23から入力されるデータ及び番号取得フラグを記憶する。すなわち、記憶部29は、チャネル番号と、そのチャネル番号が設定されたoPCR番号又は未使用oPCR番号と、そのoPCRのレジスタ値と、リクエストフォーマットの長さと、番号取得フラグとを処理結果として記憶する。ここで、番号取得フラグは、未使用oPCRを処理結果として格納する場合に、問い合わせたシンク機器とは別のシンク機器に当該未使用oPCRを使用されないように予約するためのものである。このため、上記第3比較回路27では、上記比較動作時に、比較対象のoPCR[n]に番号取得フラグが設定されているかが判断され、番号取得フラグが設定されている場合にはそのoPCRが未使用oPCRと判断されない。
この記憶部29では、上記処理結果がリクエストフォーマットの長さに応じたレスポンスフォーマットと同様に整形されて記憶される。すなわち、リクエストフォーマットの長さが図3に示すフォーマットの長さと一致する場合には、上記処理結果のうちのチャネル番号、oPCR番号、oPCRのレジスタ値が図4に示したレスポンスフォーマットのオペランド0〜8と同様に整形されて記憶される。また、リクエストフォーマットの長さが図16(a)に示すフォーマットの長さと一致する場合には、上記処理結果のうちのチャネル番号及びoPCR番号が図16(b)に示すレスポンスフォーマットのオペランド0〜4と同様に整形されて記憶される。なお、この記憶部29は、複数のシンク機器からの問い合わせに応じてそれぞれの処理結果を記憶できるようにノード台数制限の63台分の処理結果を記憶できる記憶容量を有し、例えばノード番号順に処理結果を記憶する。また、記憶部29に格納されたデータは、バスリセット発生時にクリアされる。
そして、この記憶部29に記憶された処理結果(レスポンスフォーマットと同様に整形されたデータ)がFCPフレームにカプセル化されてライトパケットが生成され、そのライトパケットがシンク機器に返送される。なお、記憶部29に記憶された処理結果がMPUI/F19に読み出されると、MPU、MPUI/F19、Asynバッファ18、Asyn転送制御回路17及びリンク層処理回路14等によって、上記処理結果からライトパケットが生成される。すなわち、これら記憶部29、MPU、MPUI/F19、Asynバッファ18、Asyn転送制御回路17及びリンク層処理回路14は、上記処理結果をシンク機器に通知する通知手段として機能する。
次に、このように構成されたノードBとノードA間でプラグコネクションを確立するための処理手順を図5及び図6に従って説明する。
今、各機器の電源投入などによってバスリセットが発生される。すると、そのバスリセット後に、シンク機器であるノードAは、接続したいチャネル番号[10h]の使用状態を、channel usageステータスコマンドによって全てのソース機器(ここでは、ノードB)に問い合わせる(ステップS1)。具体的には、ノードAは、図3に示すリクエストフォーマットのデータがカプセル化されたライトパケットをノードBに送信する。そのライトパケットを受信したノードBは、図4に示すレスポンスフォーマットのデータがカプセル化されたライトパケットを生成し、そのライトパケットをノードAに送信する。ここで、ノードBにおけるライトパケットの生成方法について図6に従って説明する。
ノードBは、他ノードからのAsynパケット(ここでは、ライトパケット)を読み込むと(ステップS20)、リンク層処理回路14やアシンクロナス転送制御回路17において、上記Asynパケットを分離・解析する(ステップS21)。この分離・解析されたAsynパケットは、Asynバッファ18を介して接続制御回路20内のラッチ回路21に格納される。すると、第1比較回路22において、Asynパケット内のAV/Cコマンドフレームのオペコードが[12h]であるか否かが判断される(ステップS22)。ここでは、図3に示すchannel usageステータスコマンドのリクエストフォーマットを含むライトパケットを受信しているため、そのライトパケットのAV/Cコマンドフレームのオペコードは[12h]である。このため、受信したAsynパケットがchannel usageステータスコマンドのパケットであると判断される(ステップ22でYES)。
続いて、第1比較回路22において、上記channel usageステータスコマンドのリクエストフォーマットの長さが図3に示すリクエストフォーマット(第1リクエストフォーマット)の長さ「10」又は図16(a)に示すリクエストフォーマット(第2リクエストフォーマット)の長さ「5」であるかが判断される(ステップS23)。本例では、図3に示すリクエストフォーマットであるため、そのリクエストフォーマットのオペランド0に格納されたチャネル番号が取得される(ステップS24)。なお、リクエストフォーマットの長さが「5」である場合でも、同様にオペランド0に格納されたチャネル番号が取得される。すなわち、受信したAsynパケットに図3又は図16(a)のリクエストフォーマットが含まれる場合に、そのオペランド0に格納されたチャネル番号、つまりノードAが使用状態を問い合わせたチャネル番号が取得される。なお、リクエストフォーマットの長さが「5」、「10」でない場合、及び上記ステップS22でオペコードが[12h]でない場合には、処理を終了する。
続いて、上記取得されたチャネル番号の設定された設定済みoPCRが存在するか否かが検索される。まず、レジスタ部25に格納されたoPCR[n]のレジスタ値、具体的には、はじめにoPCR[0]のレジスタ値が読み出される(ステップS25,S26)。この読み出されたoPCR[n]のレジスタ値に含まれるチャネル番号と上記取得されたチャネル番号とが一致するか否かが第2比較回路26で判断される(ステップS27)。このとき、両チャネル番号が一致せずに(ステップS27でNO)、且つ上記リクエストフォーマットの長さが「10」である場合には(ステップS28でYES)、さらに以下の未使用oPCRの検索処理が行われる。本例では、リクエストフォーマットの長さが「10」であるため、以下の未使用oPCRの検索処理が行われる。
すなわち、上記読み出されたoPCR[n]のレジスタ値とoPCRの初期値が一致するかを比較することで、oPCR[n]が未使用oPCRであるか否かが第3比較回路27で判断される(ステップS29)。このとき、レジスタ値と初期値とが一致して上記oPCR[n]が未使用と判断された場合には(ステップS29でYES)、そのoPCR[n]に番号取得フラグが設定されているか否かが第3比較回路27で判断される(ステップS30)。ここで、oPCR[n]に番号取得フラグが設定されていない場合には(ステップS30でNO)、そのoPCR[n]に番号取得フラグを設定し(ステップS31)、そのoPCR番号について使用の予約をして(ステップS32)、ステップS33に移る。
なお、リクエストフォーマットの長さが「5」(図16(a)に示す従来のリクエストフォーマットの長さ)の場合には(ステップS28でNO)、直ちにステップS33に移る。すなわち、従来のリクエストフォーマットの場合には、未使用oPCRの検索処理が行われない。また、oPCR[n]が未使用oPCRでない場合(ステップS29でNO)、及びoPCR[n]が未使用oPCRであるが番号取得フラグが設定されている場合には、そのoPCR[n]を使用できないため、ステップS33に移る。
その後、設定済みoPCRが見つかるまで、あるいは設定済みoPCRが無く、未使用oPCRが見つかるまで、oPCR[1]からoPCR[30]のレジスタ値が番号昇順で読み出される(ステップS33,S34及びステップS26)。そして、ステップS26において、設定済みoPCR(例えばoPCR[6])が見つかった場合には、ステップS35に移る。このステップS35では、まずリクエストフォーマットの長さが判断され、本例のように「10」である場合には、チャネル番号、自ノードのノードID、設定済みoPCRの番号及びレジスタ値が図4(b)に示すレスポンスフォーマットのオペランド0〜8と同様に整形される。なお、この場合には、上記設定済みoPCR[6]が見つかるまでの未使用oPCRの検索処理において設定された番号取得フラグの設定は解除される。また、リクエストフォーマットの長さが「5」である場合には、チャネル番号、自ノードのノードID及び設定済みoPCR番号が図16(b)に示すレスポンスフォーマットのオペランド0〜3と同様に整形される。これにより、従来のリクエストフォーマットに対してもそのフォーマットに応じたデータを整形することができる。
一方、問い合わせされたチャネル番号が全てのoPCR[0]〜oPCR[30]に設定されていない場合には(ステップS33でYES)、ステップS31で番号取得フラグの設定された所定のoPCR(例えば最初に番号取得フラグの設定されたoPCR)が未使用oPCRとして設定される。そして、ステップS35において、チャネル番号、未使用oPCRの番号及びレジスタ値が図4(a)に示すレスポンスフォーマットのオペランド0〜8と同様に整形される。なお、この場合には、未使用oPCRとして設定されなかったoPCRに対して設定された番号取得フラグの設定は解除される。また、リクエストフォーマットの長さが「5」の場合には、未使用oPCRの検索処理が行われないため、従来と同様に、図16(b)に示すレスポンスフォーマットにおけるオペランド0〜3には「FFFFFFh」が格納される。
続いて、上述のようにフォーマット整形された処理結果が記憶部29に格納され、さらにフォーマット整形された処理結果(レスポンスフォーマット)を含むライトパケットが生成される(ステップS36)。すなわち、本例では、問い合わせされたチャネル番号の設定された設定済みoPCRが存在する場合には、その設定済みoPCRの番号及びレジスタ値の格納されたレスポンスフォーマット(図4(b)参照)を含むライトパケットが生成される。また、設定済みoPCRが存在しない場合には、未使用oPCRの番号及びレジスタ値の格納されたレスポンスフォーマット(図4(a)参照)を含むライトパケットが生成される。なお、リクエストフォーマットの長さが「5」の場合には、従来のレスポンスフォーマット(図16(b)参照)を含むライトパケットが生成される。これにより、既存のリクエストフォーマットに対してもそのフォーマットに応じたレスポンスフォーマットを作成することができる。
そして、ノードBは、その生成したライトパケットを、チャネル番号の使用状態を問い合わせたノードAに送信する。
図5に示すステップS2において、上記レスポンスフォーマットを含むライトパケットをノードAが受信すると、そのノードAはレスポンスフォーマットの内容に基づいて問い合わせたチャネル番号が使用中であるか否かを判断する。
例えば図4(b)に示すレスポンスフォーマットがライトパケットに含まれる場合には、問い合わせたチャネル番号が使用中であると判断され、ステップS3に移る。このステップS3〜S6は、先の図13で説明したステップS43〜S46と同様の処理である。ここで、従来の処理手順では、上記ソース機器から受信されるレスポンスフォーマットには設定済みoPCRの番号のみしか格納されていないため、上記ステップS46の後にリードリクエストを利用して設定済みoPCRのレジスタ値を取得する必要があった。これに対し、図4(b)に示すレスポンスフォーマットでは、設定済みoPCRの番号及びレジスタ値が格納されている。このため、本実施形態の処理手順では、リードリクエストによる設定済みoPCRのレジスタ値の読み出し(図13のステップS47)を行う必要がない。従って、本例のノードAは、上記ステップS6に続いて、図4(b)に示すレスポンスフォーマット内の設定済みoPCRの番号及びレジスタ値に基づいて、ステップS8〜S12の処理(ステップS48〜S52と同様の処理)を行ってPtoP接続を確立する。
一方、ノードBから受信されるライトパケットに図4(a)に示すレスポンスフォーマットが含まれる場合には、問い合わせたチャネル番号が未使用であると判断し(ステップS2でNO)、ステップS13に移る。このステップS13〜S16は、先の図13で説明したステップS53〜S56と同様の処理である。ここで、従来の処理手順では、未使用oPCRを検索するためにリードリクエストを利用してシンク機器がソース機器のoPCR[n]のレジスタ値を一つずつ読み出す必要があった。これに対し、図4(a)に示すレスポンスフォーマットでは、未使用oPCRの番号及びレジスタ値が格納されている。このため、本実施形態の処理手順では、リードリクエストによるoPCRの番号及びレジスタ値の読み出し(図13のステップS57〜S61)を行う必要がない。従って、本例のノードAは、上記ステップS16に続いて、図4(a)に示すレスポンスフォーマット内の未使用oPCRの番号及びレジスタ値に基づいて、ステップS18,S19(ステップS62,S63と同様の処理)を行ってPtoP接続を確立する。なお、この図4(a)に示すレスポンスフォーマットでは、ノードB(ソース機器)のノードIDを取得できない。このため、この場合にはライトパケット内のsource_IDからノードBのノードIDを取得する。
以上説明したように、本実施形態によれば、以下の効果を奏することができる。
(1)channel usageステータスコマンドのレスポンスフォーマットに、未使用oPCRの番号が格納されるオペランド4を追加し、このレスポンスフォーマットを含むライトパケットをシンク機器に送信するようにした。これにより、ソース機器とシンク機器とで未使用oPCRの番号を速やかに共有できるため、その未使用のoPCRを検索するためのリクエストパケット数を減らすことができる。従って、シンク機器とソース機器との間でのパケットの送受信が減少するため、ソース機器におけるパケット処理にかかる負荷を小さくすることができる。この結果、プラグコネクションが確立しないまま処理が終了するという不具合の発生を好適に抑制することができる。また、リクエストパケット数が減少すると、結果としてネットワーク内のパケット数が減少するため、他の機器間によるデータ転送のための帯域を十分に確保することができる。これにより、他のシンク機器とソース機器とのデータ転送のリアルタイム性を担保することができる。この効果は、ネットワークに接続するノード数が増大するほど顕著なものとなる。
さらに、シンク機器では、上記レスポンスフォーマットから取得した未使用のoPCR番号に基づいて、そのoPCRに対してチャネル番号の設定等を速やかに行うことができるため、プラグコネクションの確立を迅速に行うことができる。
(2)channel usageステータスコマンドのレスポンスフォーマットに、未使用oPCRのレジスタ値が格納されるオペランド5〜8を追加するようにした。これにより、問い合わせたチャネル番号が未使用であった場合に、リードリクエストを用いた未使用のoPCRの番号とレジスタ値の検索処理(図13のステップS57〜S61)を行うことなく、プラグコネクションを確立することができる。このため、プラグコネクションを確立するために転送されるパケット数(とくに、リクエストパケット数)を更に減少させることができる。
(3)channel usageステータスコマンドのレスポンスフォーマットに、設定済みoPCRのレジスタ値が格納されるオペランド5〜8を追加するようにした。これにより、問い合わせたチャネル番号が使用中であった場合に、リードリクエストを用いた設定済みoPCRのレジスタ値の読み出し(図13のステップS47)を行うことなく、プラグコネクションを確立することができる。このため、問い合わせたチャネル番号が使用中の場合であっても、プラグコネクションを確立するために転送されるパケット数を減少させることができる。
(4)レスポンスフォーマットの変更に伴ってリクエストフォーマットにもオペランド4〜8を追加し、そのリクエストフォーマットの長さから従来のリクエストフォーマット(図16(a)参照)であるか図3に示すリクエストフォーマットであるかを判定するようにした。そして、従来のリクエストフォーマットである場合には、未使用oPCRの検索処理を行わずに、従来のレスポンスフォーマット(図16(b)参照)を含むライトパケットをシンク機器に送信するようにした。これにより、図3に示すリクエストフォーマットを生成することのできない既存のシンク機器とネットワークを構築しても、従前通りのプラグコネクションの確立処理を支障なく行うことができる。
(5)設定済みoPCRの検索処理や未使用oPCRの検索処理をハードウェアである接続制御回路20で実行するようにした。従って、パケット処理にかかるMPU等の負荷を軽減できるとともに、上記両処理のためのプログラムをプログラム領域に格納する必要がない。
なお、上記実施形態は、これを適宜変更した以下の態様にて実施することもできる。
・上記実施形態におけるノードB(ソース機器)では、設定済みoPCRの検索処理及び未使用oPCRの検索処理等の処理(図6に示した処理)を接続制御回路20、すなわちハードウェアにて行うようにした。これに限らず、これらの処理(図6に示した処理)の一部又は全部をソフトウェアにて実行するようにしてもよい。
・図5のステップS2において、チャネル番号が使用中であると判断された後の処理(ステップS3〜S12)を、図7に示される処理に変更してもよい。すなわち、ステップS6の後に、ソース機器から受信したライトパケット内のレスポンスフォーマットの長さが「10」(図4に示すフォーマットの長さ)であるかを判断する処理(ステップS7)を追加するようにしてもよい。このステップS7において、レスポンスフォーマットの長さが「10」である場合には、図5の処理手順と同様に、直ちにステップS8に移る。一方、ステップS7において、レスポンスフォーマットの長さが「10」でない場合、すなわち「5」(図16(b)に示すフォーマットの長さ)である場合には、従来の処理手順と同様に、リードリクエストによってoPCRのレジスタ値を取得(ステップS47)してから、ステップS8に移る。これにより、シンク機器は、従来のレスポンスフォーマットを受信した場合であっても、従前通りのプラグコネクションの確立処理を支障なく行うことができる。
・図5のステップS2において、チャネル番号が未使用であると判断された後の処理(ステップS13〜S19)を、図8に示される処理に変更してもよい。すなわち、ステップS16の後に、ソース機器から受信したライトパケット内のレスポンスフォーマットの長さが「10」(図4に示すフォーマットの長さ)であるかを判断する処理(ステップS17)を追加するようにしてもよい。このステップS17において、レスポンスフォーマットの長さが「10」である場合には、図5の処理手順と同様に、直ちにステップS18に移る。一方、ステップS17において、レスポンスフォーマットの長さが「10」でない場合、すなわち「5」(図16(b)に示すフォーマットの長さ)である場合には、従来の処理手順と同様に、リードリクエストによって未使用のoPCRを検索する処理(ステップS57〜S61)を行ってから、ステップS18に移る。これにより、シンク機器は、従来のレスポンスフォーマットを受信した場合であっても、従前通りのプラグコネクションの確立処理を支障なく行うことができる。
・上記実施形態において、設定済みoPCRが存在する場合には、図4(b)のレスポンスフォーマットではなく、図16(b)に示す従来のレスポンスフォーマットを含むライトパケットを生成するようにしてもよい。すなわち、問い合わせたチャネル番号が未使用の場合にのみ、レスポンスフォーマットを図4(a)のレスポンスフォーマットに変更するようにしてもよい。この場合にも、上記実施形態の(1)、(2)、(4)、(5)と同様の効果を奏することができる。
・上記実施形態における図4のレスポンスフォーマットからオペランド5〜8を省略してもよい。すなわち、図16(b)に示す従来のフォーマットに対して、未使用oPCRの番号が格納されるオペランド4のみを追加するようにしてもよい。この場合には、図5のステップS16の後に、リードリクエストによって未使用oPCRのレジスタ値を読み出す必要が生じる場合もあるが、そのoPCRの番号はレスポンスフォーマットから取得されるため、リクエストパケットは多くても1個で済む。このため、このような構成であっても、最大31個のリクエストパケットが必要であった従来よりも、大幅にリクエストパケット数を減少させることができる。
・上記実施形態では、設定済みoPCRの検索処理と未使用oPCRの検索処理とを並行して実行しているが、例えば設定済みoPCRの検索処理によって設定済みoPCRが存在しないと判断されてから未使用oPCRの検索処理を開始するようにしてもよい。
・上記実施形態におけるステップS28(図6参照)の処理を省略してもよい。
・上記実施形態におけるステップS30〜S32(図6参照)の処理を省略してもよい。
・上記実施形態におけるネットワーク内のノード数に特に制限はない。
・上記実施形態では、ノードA〜CはIEEE1394規格に準拠した装置に具体化したが、これに限らず、例えばIDB−1394規格に準拠した装置に具体化してもよい。
以上の様々な実施の形態をまとめると、以下のようになる。
(付記1)
データを識別するためのチャネル番号を含む接続プラグの情報を、前記接続プラグの情報を複数設定可能な送信側に設定して、前記チャネル番号を特定してデータを転送するデータ転送方法であって、
前記チャネル番号の問い合わせを受け、
前記チャネル番号が未使用の場合に、前記問い合わせに対して、未使用の接続プラグの情報を通知する
ことを特徴とするデータ転送方法。
(付記2)
前記未使用の接続プラグの情報は、前記未使用の接続プラグに対応するプラグコントロールレジスタの番号であることを特徴とする付記1に記載のデータ転送方法。
(付記3)
前記未使用の接続プラグの情報は、前記未使用の接続プラグに対応するプラグコントロールレジスタの番号と現在値であることを特徴とする付記1又は2に記載のデータ転送方法。
(付記4)
前記チャネル番号が使用中の場合に、前記問い合わせに対して、前記チャネル番号が設定されている接続プラグに対応するプラグコントロールレジスタの番号と現在値を通知することを特徴とする付記1〜3のいずれか1つに記載のデータ転送方法。
(付記5)
前記送信側において、該送信側の各出力プラグコントロールレジスタの現在値とその初期値とを比較して、前記未使用の接続プラグを検索する検索処理を含む
ことを特徴とする付記1〜4のいずれか1つに記載のデータ転送方法。
(付記6)
前記チャネル番号を問い合わせるために定義された接続コマンドの既存の第1リクエストフォーマットによって前記チャネル番号の問い合わせを受けた場合には、前記検索処理を行わず、
前記第1リクエストフォーマットに前記未使用の接続プラグの情報を問い合わせる情報が追加された第2リクエストフォーマットによって前記チャネル番号の問い合わせを受けた場合に、前記検索処理を行うことを特徴とする付記5に記載のデータ転送方法。
(付記7)
前記通知した前記未使用の接続プラグの情報にフラグを設定し、
前記検索処理において、前記検索された前記未使用の接続プラグの情報に前記フラグが設定されているか否かを判定する処理を更に行う
ことを特徴とする付記5又は6に記載のデータ転送方法。
(付記8)
前記未使用の接続プラグの情報を、前記チャネル番号を問い合わせるために定義された接続コマンドのレスポンスフォーマットに格納して通知することを特徴とする付記1〜7のいずれか1つに記載のデータ転送方法。
(付記9)
データを識別するためのチャネル番号を含む接続プラグの情報を設定して、前記チャネル番号を特定してデータを転送するデータ転送装置であって、
当該データ転送装置の有する複数の接続プラグのうちの未使用の接続プラグを検索する検索手段と、
使用状態の問い合わせを受けたチャネル番号が未使用の場合に、前記問い合わせに対して、前記検索手段にて検索された前記未使用の接続プラグの情報を通知する通知手段と
を含むことを特徴とするデータ転送装置。
(付記10)
前記未使用の接続プラグの情報は、前記未使用の接続プラグに対応するプラグコントロールレジスタの番号であることを特徴とする付記9に記載のデータ転送装置。
(付記11)
前記未使用の接続プラグの情報は、前記未使用の接続プラグに対応するプラグコントロールレジスタの番号と現在値であることを特徴とする付記9又は10に記載のデータ転送装置。
(付記12)
前記通知手段は、前記問い合わせを受けたチャネル番号が使用中の場合に、前記問い合わせに対して、前記チャネル番号が設定されている接続プラグに対応するプラグコントロールレジスタの番号と現在値を通知することを特徴とする付記9〜11のいずれか1つに記載のデータ転送装置。
(付記13)
前記検索手段は、当該データ転送装置の有する出力プラグコントロールレジスタの現在値とその初期値とを比較する第1比較手段を含むことを特徴とする付記9〜12のいずれか1つに記載のデータ転送装置。
(付記14)
前記問い合わせを受けたチャネル番号と当該データ転送装置の有する出力プラグコントロールレジスタの現在値内のチャネル番号とを比較して、前記問い合わせを受けたチャネル番号が使用中であるか否かを判定する第2比較手段を含むことを特徴とする付記9〜13のいずれか1つに記載のデータ転送装置。
B ノード(データ転送装置)
10 IPC
14 リンク層処理回路
17 アシンクロナス転送制御回路
18 アシンクロナスバッファ
19 MPUI/F
20 接続制御回路
22 第1比較回路
25 レジスタ部
26 第2比較回路(検索手段、第1比較手段)
27 第3比較回路(第2比較手段)
28 マルチプレクサ
29 記憶部

Claims (10)

  1. データを識別するためのチャネル番号を含む接続プラグの情報を、前記接続プラグの情報を複数設定可能な送信側に設定して、前記チャネル番号を特定してデータを転送するデータ転送方法であって、
    前記チャネル番号の問い合わせを受け、
    前記チャネル番号が未使用の場合に、前記問い合わせに対して、未使用の接続プラグの情報を通知する
    ことを特徴とするデータ転送方法。
  2. 前記未使用の接続プラグの情報は、前記未使用の接続プラグに対応するプラグコントロールレジスタの番号であることを特徴とする請求項1に記載のデータ転送方法。
  3. 前記未使用の接続プラグの情報は、前記未使用の接続プラグに対応するプラグコントロールレジスタの番号と現在値であることを特徴とする請求項1又は2に記載のデータ転送方法。
  4. 前記チャネル番号が使用中の場合に、前記問い合わせに対して、前記チャネル番号が設定されている接続プラグに対応するプラグコントロールレジスタの番号と現在値を通知することを特徴とする請求項1〜3のいずれか1つに記載のデータ転送方法。
  5. 前記送信側において、該送信側の各出力プラグコントロールレジスタの現在値とその初期値とを比較して、前記未使用の接続プラグを検索する検索処理を含む
    ことを特徴とする請求項1〜4のいずれか1つに記載のデータ転送方法。
  6. 前記チャネル番号を問い合わせるために定義された接続コマンドの既存の第1リクエストフォーマットによって前記チャネル番号の問い合わせを受けた場合には、前記検索処理を行わず、
    前記第1リクエストフォーマットに前記未使用の接続プラグの情報を問い合わせる情報が追加された第2リクエストフォーマットによって前記チャネル番号の問い合わせを受けた場合に、前記検索処理を行うことを特徴とする請求項5に記載のデータ転送方法。
  7. 前記通知した前記未使用の接続プラグの情報にフラグを設定し、
    前記検索処理において、前記検索された前記未使用の接続プラグの情報に前記フラグが設定されているか否かを判定する処理を更に行う
    ことを特徴とする請求項5又は6に記載のデータ転送方法。
  8. データを識別するためのチャネル番号を含む接続プラグの情報を設定して、前記チャネル番号を特定してデータを転送するデータ転送装置であって、
    当該データ転送装置の有する複数の接続プラグのうちの未使用の接続プラグを検索する検索手段と、
    使用状態の問い合わせを受けたチャネル番号が未使用の場合に、前記問い合わせに対して、前記検索手段にて検索された前記未使用の接続プラグの情報を通知する通知手段と
    を含むことを特徴とするデータ転送装置。
  9. 前記検索手段は、当該データ転送装置の有する出力プラグコントロールレジスタの現在値とその初期値とを比較する第1比較手段を含むことを特徴とする請求項8に記載のデータ転送装置。
  10. 前記問い合わせを受けたチャネル番号と当該データ転送装置の有する出力プラグコントロールレジスタの現在値内のチャネル番号とを比較して、前記問い合わせを受けたチャネル番号が使用中であるか否かを判定する第2比較手段を含むことを特徴とする請求項8又は9に記載のデータ転送装置。
JP2009193499A 2009-08-24 2009-08-24 データ転送方法及びデータ転送装置 Expired - Fee Related JP5321349B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009193499A JP5321349B2 (ja) 2009-08-24 2009-08-24 データ転送方法及びデータ転送装置
US12/861,823 US20110047307A1 (en) 2009-08-24 2010-08-23 Data transfer method and data transfer apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009193499A JP5321349B2 (ja) 2009-08-24 2009-08-24 データ転送方法及びデータ転送装置

Publications (2)

Publication Number Publication Date
JP2011045025A true JP2011045025A (ja) 2011-03-03
JP5321349B2 JP5321349B2 (ja) 2013-10-23

Family

ID=43606197

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009193499A Expired - Fee Related JP5321349B2 (ja) 2009-08-24 2009-08-24 データ転送方法及びデータ転送装置

Country Status (2)

Country Link
US (1) US20110047307A1 (ja)
JP (1) JP5321349B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11355326A (ja) * 1998-06-03 1999-12-24 Kenwood Corp Ieee1394バス装備avシステム
JP2001237860A (ja) * 2000-02-21 2001-08-31 Sony Corp 通信制御方法及び通信制御装置
JP2002112367A (ja) * 2000-09-29 2002-04-12 Canon Inc 情報処理システム、および、情報処理方法
JP2003249934A (ja) * 2001-12-17 2003-09-05 Matsushita Electric Ind Co Ltd ディジタルデータ処理装置、バス制御方法、バス制御プログラム及び記録媒体

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577782B2 (en) * 1996-02-02 2009-08-18 Sony Corporation Application programming interface for data transfer and bus management over a bus structure
EP0984352A2 (en) * 1998-09-01 2000-03-08 Sony Corporation Information processing apparatus and method, and providing medium
US7032024B1 (en) * 1999-07-29 2006-04-18 Samsung Electronics Co., Ltd. Connection management method for devices connected digital interface and command structure therefor
JP2001045030A (ja) * 1999-07-29 2001-02-16 Nec Corp 接続制御装置
US7068674B1 (en) * 1999-08-23 2006-06-27 Lg Electronics Inc. Method of controlling connection between nodes in digital interface
JP2001077831A (ja) * 1999-09-08 2001-03-23 Sony Corp 通信制御装置および方法、通信システム、並びにプログラム格納媒体
JP2001086419A (ja) * 1999-09-14 2001-03-30 Sony Corp 電子機器
JP2001168915A (ja) * 1999-12-10 2001-06-22 Nec Corp Ipパケット転送装置
AU776277B2 (en) * 2000-01-27 2004-09-02 Thomson Licensing S.A. Method for isochronous resource management in a network based on Hiperlan 2 technology
EP1327327A1 (en) * 2000-10-19 2003-07-16 Thomson Licensing S.A. Method for reserving isochronous resources in a network comprising a wireless link
MXPA03003415A (es) * 2000-10-19 2003-08-07 Thomson Licensing Sa Metodo para enlazar diversas lineas de comunicacion utilizando enlaces inalambricos.
EP1263172A3 (en) * 2001-05-29 2002-12-18 Thomson Licensing S.A. Method for managing resources of a link in a communication network
JP3719180B2 (ja) * 2001-09-27 2005-11-24 ソニー株式会社 通信方法、通信システム及び出力機器
JP3972288B2 (ja) * 2001-10-11 2007-09-05 ソニー株式会社 信号処理システム、信号出力装置、信号入力装置及び通信制御方法
US6985979B2 (en) * 2001-12-17 2006-01-10 Matsushita Electric Industrial Co., Ltd. Digital data processing device, bus controlling method, bus controlling program and recording medium
JP3739087B2 (ja) * 2002-03-15 2006-01-25 株式会社東芝 Av機器及びその制御方法、av機器ネットワークシステム
EP1376937A1 (en) * 2002-06-28 2004-01-02 Deutsche Thomson-Brandt Gmbh Method for establishing a default connection in network, and associated source and sink devices
JP2004147251A (ja) * 2002-10-28 2004-05-20 Matsushita Electric Ind Co Ltd データ転送装置およびインタフェース制御半導体集積回路、ならびにプロトコル処理回路制御方法
AU2003288690A1 (en) * 2003-01-31 2004-08-23 Koninklijke Philips Electronics N.V. Method and bridging device for priortizing transfer of data streams
JP4336536B2 (ja) * 2003-07-18 2009-09-30 パイオニア株式会社 伝送速度設定装置、伝送速度設定方法、情報伝送システム並びに伝送速度設定用プログラム及び情報記録媒体
JP2005243159A (ja) * 2004-02-27 2005-09-08 Canon Inc データ出力装置及び制御方法
KR20090092503A (ko) * 2008-02-27 2009-09-01 주식회사 휴커넥스 하나의 아이피 주소로 복수의 아이피 장비들을 지원할 수있는 멀티포트 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11355326A (ja) * 1998-06-03 1999-12-24 Kenwood Corp Ieee1394バス装備avシステム
JP2001237860A (ja) * 2000-02-21 2001-08-31 Sony Corp 通信制御方法及び通信制御装置
JP2002112367A (ja) * 2000-09-29 2002-04-12 Canon Inc 情報処理システム、および、情報処理方法
JP2003249934A (ja) * 2001-12-17 2003-09-05 Matsushita Electric Ind Co Ltd ディジタルデータ処理装置、バス制御方法、バス制御プログラム及び記録媒体

Also Published As

Publication number Publication date
JP5321349B2 (ja) 2013-10-23
US20110047307A1 (en) 2011-02-24

Similar Documents

Publication Publication Date Title
US9276772B2 (en) Method and apparatus for transmitting and receiving data based on secured path bandwidth in network established by using audio/video interface
US7751439B2 (en) Method of allocation of resources for transmission of a data content, corresponding computer program product, storage means and device
US7389338B2 (en) Information processing method and system for reserving an information processing apparatus having globally unique identification information
US7251703B1 (en) Method of time stamping to enable device bridging over dissimilar buses
US7489697B2 (en) IEEE 1394-based unidirectional ring system for indoor backbone network
WO2007037117A1 (ja) 中継装置及び中継方法、変換装置及び変換方法、中継処理用プログラム及び変換処理用プログラム並びに情報記録媒体
JP5321349B2 (ja) データ転送方法及びデータ転送装置
JP2000196624A (ja) 伝送管理装置、情報処理装置及び情報伝送システム
JP3643575B2 (ja) ネットワークブリッジ装置及び方法
KR20010007376A (ko) 제어장치, 통신시스템 및 제어방법
KR100677143B1 (ko) 등시성 스트림 전송 방법 및 장치
EP1499071A1 (en) Apparatus, method, program and information recording medium for data rate setting
JP2002057683A (ja) 制御機器および制御方法
KR100763716B1 (ko) 정보 제어 방법, 정보 처리 장치, 및 정보 제어 시스템
JP2003229857A (ja) シリアルバスシステム、シリアルバスの帯域管理機器および通信機器
JP4261992B2 (ja) 情報データの送受信装置及び送受信方法
JP2006324869A (ja) ネットワークシステムにおける通信処理方法および通信機器
JP2005223545A (ja) データ伝送機器管理装置
JP2003078537A (ja) 機器認識方法及び電子機器
JP5618805B2 (ja) 通信装置、ネットワークシステム及び通信方法
JP4502653B2 (ja) パケット送受信装置及びそれに用いるパケット識別方法
JP2004104839A (ja) 情報処理装置および方法、並びに通信システム
JP2004072634A (ja) データ通信装置およびデータ通信方法
JP2004282501A (ja) ネットワーク間の通信端末及び複数のネットワーク間での機器管理方法
JP2006129125A (ja) 非同期パケット通信方法及び非同期パケット通信装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120510

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130607

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130618

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130701

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees