(57)【特許請求の範囲】
【請求項１】
オリジナルタイム値を生成し、出力可能なオリジナルタイムカウンタと、
外部からネットワークタイム値が入力され、前記オリジナルタイムカウンタから前記オリジナルタイム値が入力され、前記ネットワークタイム値から前記オリジナルタイム値を減算したサイクルタイム差分値を出力可能な減算部と、
外部からオフセット値が入力され、前記オリジナルタイムカウンタから前記オリジナルタイム値が入力され、前記オフセット値と前記オリジナルタイム値とを加算したオリジナルタイムスタンプ値を出力可能な第２加算部と、
外部からリアルタイムデータが入力され、前記第２加算部から前記オリジナルタイムスタンプ値が入力され、前記リアルタイムデータに前記オリジナルタイムスタンプ値を付加したオリジナルタイムスタンプ値付加リアルタイムデータを出力可能なオリジナルタイムスタンプ値付加部と、
前記オリジナルタイムスタンプ値付加部から前記オリジナルタイムスタンプ値付加リアルタイムデータが入力され、先入れ先出し方式で前記オリジナルタイムスタンプ値付加リアルタイムデータを出力可能な記憶部と、
前記記憶部から前記オリジナルタイムスタンプ値付加リアルタイムデータが入力され、前記オリジナルタイムスタンプ値付加リアルタイムデータを前記オリジナルタイムスタンプ値と前記リアルタイムデータとに分割して出力可能なオリジナルタイムスタンプ値分割部と、
前記オリジナルタイムスタンプ値分割部から出力される前記オリジナルタイムスタンプ値が入力され、前記減算部から前記サイクルタイム差分値が入力され、前記オリジナルタイムスタンプ値と前記サイクルタイム差分値とを加算したタイムスタンプ値を出力可能な第１加算部とを、備えることを特徴とするタイムスタンプ補正回路。
【請求項２】
前記第１加算部から前記タイムスタンプ値が入力され、前記タイムスタンプ値を含むＣＩＰ(Common Isochronous Packet)ヘッダを生成して
出力するＣＩＰヘッダ生成部と、
外部からＩＳＯ(Isochronous)ヘッダが入力され、前記ＣＩＰヘッダ生成部から前記ＣＩＰヘッダが入力され、前記オリジナルタイムスタンプ値分割部から前記リアルタイムデータが入力され、前記ＩＳＯヘッダと前記ＣＩＰヘッダと前記リアルタイムデータとを含むＩＳＯパケットを生成するＩＳＯパケット生成部とを、さらに備えることを特徴とする請求項１に記載のタイムスタンプ補正回路。
【請求項３】
ＣＩＰ(Common Isochronous Packet)ヘッダを生成して出力するＣＩＰヘッダ生成部と、
外部からＩＳＯ(Isochronous)ヘッダが入力され、前記ＣＩＰヘッダ生成部から前記ＣＩＰヘッダが入力され、前記第１加算部から前記タイムスタンプ値が入力され、前記オリジナルタイムスタンプ値分割部から前記リアルタイムデータが入力され、前記ＩＳＯヘッダと前記ＣＩＰヘッダと前記タイムスタンプ値と前記リアルタイムデータとを含むＩＳＯパケットを生成するＩＳＯパケット生成部とを、さらに備えることを特徴とする請求項２に記載のタイムスタンプ補正回路。
【請求項４】
減算部が、ネットワークタイム値とオリジナルタイム値とを入力され、前記ネットワークタイム値から前記オリジナルタイム値を減算してサイクルタイム差分値を出力し、
第２加算部が、オフセット値を入力され、また前記オリジナルタイムカウンタから前記オリジナルタイム値を入力され、前記オフセット値と前記オリジナルタイム値とを加算したオリジナルタイムスタンプ値を出力し、
オリジナルタイムスタンプ値付加部が、リアルタイムデータを入力され、また前記第２加算部から前記オリジナルタイムスタンプ値を入力され、前記リアルタイムデータに前記オリジナルタイムスタンプ値を付加したオリジナルタイムスタンプ値付加リアルタイムデータを出力し、
記憶部が、前記オリジナルタイムスタンプ値付加部から前記オリジナルタイムスタンプ値付加リアルタイムデータを入力され、先入れ先出し方式で前記オリジナルタイムスタンプ値付加リアルタイムデータを出力し、
オリジナルタイムスタンプ値分割部が、前記記憶部から前記オリジナルタイムスタンプ値付加リアルタイムデータを入力され、前記オリジナルタイムスタンプ値付加リアルタイムデータを前記オリジナルタイムスタンプ値と前記リアルタイムデータとに分割して出力し、
第１加算部が、前記減算部から前記サイクルタイム差分値を入力され、また前記オリジナルタイムスタンプ値分割部から前記オリジナルタイムスタンプ値を入力され、前記サイクルタイム差分値と前記オリジナルタイムスタンプ値とを加算してタイムスタンプ値を出力する、ことを特徴とするタイムスタンプ補正方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、デジタルビデオカメラ（ＤＶカメラ）、テレビジョン（ＴＶ）、パーソナルコンピュータ（ＰＣ）などを接続して構成されるネットワークにおいて、リアルタイムデータの円滑な再生を可能にするタイムスタンプ補正回路及び補正方法に関する。
【０００２】
【従来の技術】
ネットワークでは、接続される機器間で時間情報（以後、ネットワーク時間という）を共有する場合がある。例えば、図４に示すように、第１ノード、第２ノード（例えば、ＤＶカメラ）、第３ノード（例えば、ＴＶ）、第４ノード（例えば、ＰＣ）及び第５ノードからなるＩＥＥＥ１３９４ネットワークＮ１においては、第１〜４の各ノードは、サイクルマスタである第５ノードから送信されるサイクルスタートパケットによって通知されるサイクルタイムを共有する。サイクルタイムとはＩＥＥＥ１３９４におけるネットワーク時間の呼び名である。
【０００３】
図５（Ａ）に示すように、ＩＥＥＥ１３９４ネットワークにおいては、サイクルスタートパケット１０a,b・・・・・が１２５マイクロ秒毎に送信され、その後に楽曲データ、動画データなどのリアルタイムデータを有するＩＳＯパケット１２a,b・・・・・が送信される。
【０００４】
図５（Ｂ）に示すように、サイクルスタートパケット１０は、リアルタイムデータを送信する機器（以後、送信機器という）を特定するソース(source)ＩＤ、リアルタイムデータを受信する機器（以後、受信機器という）を特定するデスティネーション（destination)ＩＤと共に、サイクルタイム（CYCLE_TIME）を有する。
【０００５】
図５（Ｃ）に示すように、ＩＳＯパケット１２は、楽曲データ、動画データなどのリアルタイムデータと共にタイムスタンプを有する。タイムスタンプ値は、受信機器がリアルタイムデータを再生する時間を示し、サイクルタイム値にオフセット値を加算して算出される。
【０００６】
ネットワーク時間に同期してリアルタイムデータを送信するためにリアルタイムデータを同期ＦＩＦＯ（先入れ先出し）メモリなどの記憶装置に一旦保持するが、サイクルタイムが不連続に変化するとリアルタイム性を保つことができなくなることがある。異なるサイクルタイムを有する複数のＩＥＥＥ１３９４ネットワークが統合されて、いずれか一つのネットワークになった場合などにサイクルタイムの不連続変化が生じる。
【０００７】
図６に示すように、第１ノードと第６ノードが接続され、第１〜５ノードからなる第１ネットワークＮ１と、第６〜８ノードからなるネットワークＮ２とが統合されて、統合後の第１〜８ノードからなる新たなネットワークＮ３のサイクルマスタが第８ノードになったとする。この場合、第１〜４ノードは、ネットワーク統合前は、第５ノードからサイクルスタートパケットを受信していたが、ネットワーク統合後は、第８ノードからサイクルスタートパケットを受信する。
【０００８】
このようにサイクルマスタが代わってしまうと、図７に示すように、サイクルパケットに含まれるサイクルタイム値ＣＴが、例えば「６１」から「２０」へと不連続に変化しうる。
【０００９】
図７に示すように、従来のＩＥＥＥ１３９４規格の送信機器ではサイクルタイム値ＣＴにオフセット値ＯＦＴを加算して得られるタイムスタンプ値ＴＳを有するＩＳＯ(Isochronous)パケットを同期ＦＩＦＯメモリに入力し、所定クロック（例えば、６クロック）経過後に同期ＦＩＦＯメモリから出力する。また、サイクルタイムカウンタを複数用いるものもある（例えば、特許文献１参照。）。同期ＦＩＦＯメモリから出力されたＩＳＯパケットは、ＩＥＥＥ１３９４規格に従って送信され、受信機器のＦＩＦＯメモリに入力された後、出力可能となる。ＩＳＯパケットが、受信機器のＦＩＦＯメモリ内においても数クロックとどまるとしても良いが、説明を簡単にするために受信機器のＦＩＦＯメモリに入力された後すぐにＦＩＦＯメモリから出力可能な状態になるものとする。そして、タイムスタンプ値ＴＳとサイクルタイム値ＣＴとが一致すると、ＩＳＯパケットに含まれるリアルタイムデータが再生される。
【００１０】
例えば、図７に示すように、サイクルタイム値ＣＴ「５２」にオフセット値ＯＦＴ「８」を加算して得られたタイムスタンプ値「６０」を有するＩＳＯパケットがＦＩＦＯメモリに入力され、サイクルタイム値ＣＴ「５８」の時に送信機器のＦＩＦＯメモリから出力され、受信機器のＦＩＦＯメモリから出力可能となり、２クロック経過時にサイクルタイム値ＣＴが「６０」となり、タイムスタンプ値ＴＳ「６０」を含むＩＳＯパケット内のデータが再生される。
【００１１】
【特許文献１】
特開平１１−２６１５７９号公報（第２図）
【００１２】
【発明が解決しようとする課題】
しかしながら、図７に示すように、サイクルタイムＣＴ「５６」にオフセット値ＯＦＴ「８」を加算して得られたタイムスタンプ値「６４」を有するＩＳＯパケットがＦＩＦＯメモリに入力され、ＦＩＦＯメモリから出力される直前にサイクルタイム値ＣＴが「６１」から「２０」へ不連続に変化したとする。そして、サイクルタイムＣＴ「２０」の時に受信機器のＦＩＦＯメモリから出力可能となるが、２クロック経過してもサイクルタイムＣＴは「２２」であって、タイムスタンプ値「６４」と一致しないので、そのＩＳＯパケット内のデータは再生されない。
【００１３】
同様に、サイクルタイム値ＣＴ「６０」にオフセット値ＯＦＴ「８」を加算して得られたタイムスタンプ値「６８」を有するＩＳＯパケットも、ＦＩＦＯメモリに入力された後ＦＩＦＯメモリから出力される前に、サイクルタイム値ＣＴが「６１」から「２０」へ不連続に変化している。そして、サイクルタイム値ＣＴ「２４」の時に受信機器のＦＩＦＯメモリから出力可能となるが、２クロック経過してもサイクルタイム値ＣＴは「２６」であって、タイムスタンプ値「６８」と一致しないので、そのＩＳＯパケット内のデータが再生されない。
【００１４】
このように送信機器の同期ＦＩＦＯメモリに入力後、出力前にサイクルタイム値ＣＴが不連続に変化してしまうと、サイクルタイム値変化前に同期ＦＩＦＯメモリに入力されたＩＳＯパケットは、受信機器の同期ＦＩＦＯメモリにおいて出力可能な状態になっても、ＩＳＯパケット中のタイムスタンプ値とサイクルタイム値ＣＴとが一致しないため再生されない。そのため、受信機器側の再生映像などの一部に欠落が生じてしまうことになる。
【００１５】
また、再生されないＩＳＯパケットは、同期ＦＩＦＯメモリ中に蓄積されてしまう。そして、このような再生されないパケットの蓄積数が次第に増加し、やがて受信機器の同期ＦＩＦＯメモリはこのような不再生パケットによって満杯になり、新たなパケットを受信することができなくなってしまう。
【００１６】
【課題を解決するための手段】
本発明は、上記課題を解決するためになされたものであり、その第１の特徴は、タイムスタンプ補正回路であって（１）オリジナルタイム値を生成し、出力可能なオリジナルタイムカウンタと、（２）外部からネットワークタイム値が入力され、オリジナルタイムカウンタからオリジナルタイム値が入力され、ネットワークタイム値からオリジナルタイム値を減算したサイクルタイム差分値を出力可能な減算部と、（３）オリジナルタイム値から生成されるオリジナルタイムスタンプ値が入力され、減算部からサイクルタイム差分値が入力され、オリジナルタイムスタンプ値とサイクルタイム差分値とを加算したタイムスタンプ値を出力可能な第１加算部とを、備えることにある。
【００１７】
このような第１の特徴によれば、ネットワーク統合の際に不連続変化をする可能性がある「ネットワークタイム値」から、ネットワーク統合がなされても不連続変化をすることがない「オリジナルタイム値」を差し引いて得られる「サイクルタイム差分値」を用いて、タイムスタンプ値を生成することができる。このため、ネットワーク統合によってネットワークタイム値が不連続変化した場合であっても、その不連続変化の影響を受けることなく、リアルタイムデータの連続再生が可能となる。
【００１８】
また、本発明の第２の特徴は、タイムスタンプ補正方法であって（１）減算部が、ネットワークタイム値とオリジナルタイム値とを入力され、ネットワークタイム値からオリジナルタイム値を減算してサイクルタイム差分値を出力し、（２）第１加算部が、オリジナルタイムスタンプ値とサイクルタイム差分値とを入力され、オリジナルタイムスタンプ値とサイクルタイム差分値とを加算してタイムスタンプ値を出力する、ことにある。
【００１９】
このような第２の特徴によっても、ネットワーク統合の際に不連続変化をする可能性がある「ネットワークタイム値」から、ネットワーク統合がなされても不連続変化をすることがない「オリジナルタイム値」を差し引いて得られる「サイクルタイム差分値」を用いて、タイムスタンプ値を生成することができ、ネットワーク統合によってネットワークタイム値が不連続変化した場合であっても、その不連続変化の影響を受けることなく、リアルタイムデータの連続再生が可能となる。
【００２０】
【発明の実施の形態】
以下、図面を参照しながら本発明の実施の形態を説明する。
図１に示すように、本発明の実施の形態に係るタイムスタンプ補正回路１００は、オリジナルタイムカウンタ１０２、減算部１０４、第１加算部１０６、第２加算部１０８、オリジナルタイムスタンプ値付加部１１０、同期ＦＩＦＯメモリ１１２、オリジナルタイムスタンプ値分割部１１４、ＣＩＰ生成部１１６、ＩＳＯパケット生成部１１８、出力制御部１２０から構成される。
【００２１】
オリジナルタイムカウンタ１０２は、クロックに同期してタイムスタンプ補正回路に固有の時間（オリジナルタイム）をカウントする。「タイムスタンプ補正回路に固有の時間」とは、サイクルマスタが代わってサイクルタイムが不連続に変化しても、その影響を何ら受けない時間をいう。
【００２２】
減算部１０４は、タイムスタンプ補正回路１００の外部からサイクルタイム値ＣＴが入力され、オリジナルタイムカウンタ１０２からオリジナルタイム値ＯＴＭが入力され、サイクルタイム値ＣＴからオリジナルタイム値ＯＴＭを減算したサイクルタイム差分値ＳＵＢを出力する。サイクルタイム値ＣＴは、タイムスタンプ補正回路１００と同じノード又は異なるノードのサイクルマスタから入力される。ここで言う「ノード」とは、図４又は図６に示す第１〜第８のノードを意味する。第２加算部１０８、オリジナルタイムスタンプ値付加部１１０及びＩＳＯパケット生成部１１８に関する下記の記載においても同様である。
【００２３】
第１加算部１０６は、オリジナルタイムスタンプ値分割部１１４からオリジナルタイムスタンプ値ＯＴＳが入力され、減算部１０４からサイクルタイム差分値ＳＵＢが入力され、オリジナルタイムスタンプ値ＯＴＳとサイクルタイム差分値ＳＵＢとを加算したタイムスタンプ値ＴＳを出力する。
【００２４】
第２加算部１０８は、タイムスタンプ補正回路１００の外部からオフセット値ＯＦＴが入力され、オリジナルタイムカウンタ１０２からオリジナルタイム値ＯＴＭが入力され、オフセット値ＯＦＴとオリジナルタイム値ＯＴＭとを加算したオリジナルタイムスタンプ値ＯＴＳを出力する。オフセット値ＯＦＴは、タイムスタンプ補正回路１００と同じノード内のレジスタから入力される。
【００２５】
オリジナルタイムスタンプ値付加部１１０は、タイムスタンプ補正回路１００の外部からリアルタイムデータが入力され、第２加算部１０８からオリジナルタイムスタンプ値ＯＴＳが入力され、リアルタイムデータにオリジナルタイムスタンプ値ＯＴＳを付加したオリジナルタイムスタンプ値付加リアルタイムデータを出力する。リアルタイムデータは、タイムスタンプ補正回路１００と同じノード内から入力される。
【００２６】
同期ＦＩＦＯメモリ１１２は、オリジナルタイムスタンプ値付加部１１０からオリジナルタイムスタンプ値付加リアルタイムデータが入力され、所定クロック経過後に先入れ先出し方式でオリジナルタイムスタンプ値付加リアルタイムデータを出力する。
【００２７】
オリジナルタイムスタンプ値分割部１１４は、同期ＦＩＦＯメモリ１１２からオリジナルタイムスタンプ値付加リアルタイムデータが入力され、オリジナルタイムスタンプ値付加リアルタイムデータをオリジナルタイムスタンプ値ＯＴＳとリアルタイムデータとに分割して出力する。
【００２８】
ＣＩＰヘッダ生成部１１６は、第１加算部１０６からタイムスタンプ値ＴＳが入力され、ＣＩＰ(Common Isochronous Packet：コモンアイソクロナスパケット)ヘッダを生成して出力する。ＣＩＰヘッダは、ＩＳＯパケットのデータフィールドの最初に位置し、ＩＥＥＥ１３９４プロトコルに従い、これに続くデータフィールドに含まれるリアルタイムデータに関する情報（タイムスタンプなど）を含む場合もある。
【００２９】
ＩＳＯパケット生成部１１８は、タイムスタンプ補正回路１００の外部からＩＳＯ(Isochronous)ヘッダが入力され、ＣＩＰヘッダ生成部１１６からＣＩＰヘッダが入力され、第１加算部１０６からタイムスタンプ値ＴＳが入力され、オリジナルタイムスタンプ値分割部１１４からリアルタイムデータが入力される。ＩＳＯヘッダは、タイムスタンプ補正回路１００と同じノード内から入力される。ＣＩＰヘッダにタイムスタンプ値が含まれる場合は、ＩＳＯヘッダとＣＩＰヘッダとリアルタイムデータとを含むＩＳＯパケットを生成し、ＣＩＰヘッダにタイムスタンプ値が含まれない場合は、ＩＳＯヘッダとＣＩＰヘッダとタイムスタンプ値とリアルタイムデータとを含むＩＳＯパケットを生成する。ＩＳＯヘッダは、データ長(Data_length)、アイソクロナスデータフォーマットタグ(tag)、アイソクロナスチャンネル番号(Ch)、トランザクションコード(tcode)、同期コード(sy)、ヘッダーＣＲＣを含む。
【００３０】
出力制御部１２０は、ＩＳＯパケットが入力され、このデータパケットをＩＥＥＥ１３９４プロトコルに従って送信する。
【００３１】
次に、図２を用いて、本実施形態の処理の流れを説明する。図２に示すように、本実施形態では、第２加算部１０８を用いて、オリジナルタイム値ＯＴＭとオフセット値ＯＦＴとを加算して、オリジナルタイムスタンプ値ＯＴＳを生成し（ステップＳ２０２）。
【００３２】
次に、オリジナルタイムスタンプ値付加部１１０によって、リアルタイムデータにオリジナルタイムスタンプ値ＯＴＳを付加し（ステップＳ２０４）、同期ＦＩＦＯメモリ１１２へ入力する（ステップＳ２０６）。
【００３３】
数クロック経過後に同期ＦＩＦＯメモリからオリジナルタイムスタンプ値付加リアルタイムデータを出力し（ステップＳ２０８）、オリジナルタイムスタンプ値分割部１１４によってリアルタイムデータとオリジナルタイムスタンプ値ＯＴＳとに分割する（ステップＳ２１０）。
【００３４】
また、減算部１０４によってサイクルタイム値ＣＴからオリジナルタイム値ＯＴＭを減算してサイクルタイム差分値ＳＵＢを得る（ステップＳ２１２）。そして、第１加算部１０６によってサイクルタイム差分値ＳＵＢとオリジナルタイムスタンプ値ＯＴＳとを加算して、タイムスタンプ値ＴＳを生成する（ステップＳ２１４）。
【００３５】
ＣＩＰヘッダにタイムスタンプ値が含まれる場合（ステップＳ２１５でＹＥＳ）は、タイムスタンプ値ＴＳは、ＣＩＰヘッダ生成部１１６に入力され、ＣＩＰヘッダが生成される（ステップＳ２１６）。ＩＳＯパケット生成部１１８は、外部からＩＳＯヘッダを受け取り、ＣＩＰヘッダ生成部１１６からＣＩＰヘッダを受け取り、オリジナルタイムスタンプ値分割部１１４からリアルタイムデータを受け取り、ＩＳＯパケットを生成する（ステップＳ２１８）。
【００３６】
ＣＩＰヘッダにタイムスタンプ値が含まれない場合は（ステップＳ２１５でＮＯ）、ＣＩＰヘッダ生成部１１６でタイムスタンプ値ＴＳを含まないCIPヘッダが生成される（ステップＳ２１７）。ＩＳＯパケット生成部１１８は、外部からＩＳＯヘッダを受け取り、ＣＩＰヘッダ生成部１１６からＣＩＰヘッダを受け取り、第１加算部１０６からタイムスタンプ値ＴＳを受け取り、オリジナルタイムスタンプ値分割部１１４からリアルタイムデータを受け取り、ＩＳＯパケットを生成する（ステップＳ２１９）。
【００３７】
そして、出力制御部１２０は、ＩＳＯパケット生成部１１８からＩＳＯパケットを受け取り、ＩＥＥＥ１３９４プロトコルに従って出力する（ステップＳ２２０）。
【００３８】
次に、タイムチャートを用いて本実施形態を説明する。図３に示す例では、サイクルタイム値ＣＴ「５２」の時、オリジナルタイム値ＯＴＭ「６」、オフセット値ＯＦＴ「８」であるから、オリジナルタイムスタンプ値ＯＴＳは「１４」になる。このオリジナルタイムスタンプ値ＯＴＳ「１４」を含むデータパケットは、サイクルタイム値ＣＴ「５２」の時に同期ＦＩＦＯメモリ１１２に入力され、６クロック経過したサイクルタイム値ＣＴ「５８」の時に同期ＦＩＦＯメモリ１１２から出力される。サイクルタイム値「５８」の時、オリジナルタイム値ＯＴＭは「１２」であるから、サイクルタイム差分値ＳＵＢは「４６」である。よって、オリジナルタイムスタンプ値ＯＴＳ「１４」とサイクルタイム差分値ＳＵＢ「４６」との和であるタイムスタンプ値ＴＳは「６０」になる。
【００３９】
そして受信機器のＦＩＦＯメモリ（図示せず）から出力可能な状態になってから２クロック経過時に、サイクルタイム値ＣＴが「６０」となり、サイクルタイム値ＣＴとタイムスタンプ値ＴＳとが一致するので、ＩＳＯパケット中のリアルタイムデータが再生される。
【００４０】
また、サイクルタイム値ＣＴ「５６」の時、オリジナルタイム値ＯＴＭ「１０」、オフセット値ＯＦＴ「８」であるから、オリジナルタイムスタンプ値ＯＴＳは「１８」になる。このオリジナルタイムスタンプ値ＯＴＳ「１８」を含むデータパケットは、サイクルタイム値ＣＴ「５６」の時に同期ＦＩＦＯメモリ１１２に入力され、６クロック経過した時に同期ＦＩＦＯメモリ１１２から出力される。このデータパケットが同期ＦＩＦＯメモリ１１２から出力される直前にサイクルタイム値ＣＴが「６１」から不連続に「２０」へ変化する。この新たなサイクルタイム値ＣＴが「２０」の時、オリジナルタイム値ＯＴＭは「１６」であるから、サイクルタイム差分値ＳＵＢは「４」である。よって、オリジナルタイムスタンプ値ＯＴＳ「１８」とサイクルタイム差分値ＳＵＢ「４」との和であるタイムスタンプ値ＴＳは「２２」になる。
【００４１】
そして受信機器のＦＩＦＯメモリから出力可能な状態になってから２クロック経過時に、サイクルタイム値ＣＴが「２２」となり、サイクルタイム値ＣＴとタイムスタンプ値ＴＳとが一致するので、データパケット中のリアルタイムデータが再生される。
【００４２】
同様に、サイクルタイム値ＣＴ「６０」の時、オリジナルタイム値ＯＴＭ「１４」、オフセット値ＯＦＴ「８」であるから、オリジナルタイムスタンプ値ＯＴＳは「２２」になる。このオリジナルタイムスタンプ値ＯＴＳ「２２」を含むデータパケットは、サイクルタイム値ＣＴ「６０」の時に同期ＦＩＦＯメモリ１１２に入力され、６クロック経過した時に同期ＦＩＦＯメモリ１１２から出力される。このデータパケットが同期ＦＩＦＯメモリ１１２から出力される前にサイクルタイム値ＣＴが「６１」から不連続に「２０」へ変化した。そして、この新たなサイクルタイム値ＣＴが「２４」の時、オリジナルタイム値ＯＴＭは「２０」であるから、サイクルタイム差分値ＳＵＢは「４」である。よって、オリジナルタイムスタンプ値ＯＴＳ「２２」とサイクルタイム差分値ＳＵＢ「４」との和であるタイムスタンプ値ＴＳは「２６」になる。
【００４３】
そして受信機器のＦＩＦＯメモリから出力可能な状態になってから２クロック経過時に、サイクルタイム値ＣＴが「２６」となり、サイクルタイム値ＣＴとタイムスタンプ値ＴＳとが一致するので、データパケット中のリアルタイムデータが再生される。
【００４４】
このように本実施形態では、オリジナルタイムスタンプ値付加リアルタイムデータが送信機器の同期ＦＩＦＯメモリ１１２に入力された後、出力される前に、サイクルタイム値ＣＴが不連続に変化したとしても、オリジナルタイムスタンプ値付加リアルタイムデータが同期ＦＩＦＯメモリ１１２から出力された後にオリジナルタイムスタンプ値ＯＴＳとサイクルタイム差分値ＳＵＢとを用いてタイムスタンプ値ＴＳを求めているので、サイクルタイム値ＣＴの不連続変化の影響を受けない。このため、リアルタイムデータの再生に空白期間が生じることはない。また再生されないデータが受信機器の同期ＦＩＦＯメモリ１１２に蓄積されて、同期ＦＩＦＯメモリ１１２が満杯になってしまい、そのため同期ＦＩＦＯメモリ１１２が新たなデータを受信できなくなることもない。
【００４５】
前記実施の形態では、（１）サイクルタイム値ＣＴからオリジナルタイム値ＯＴＭを減算してサイクルタイム差分値ＳＵＢを生成する、（２）オリジナルタイム値ＯＴＭとオフセット値ＯＦＴとを加算してオリジナルタイムスタンプ値ＯＴＳを生成する、（３）オリジナルタイムスタンプ値ＯＴＳとサイクルタイム差分値ＳＵＢとを加算してタイムスタンプ値ＴＳを生成する、という各処理をタイムスタンプ補正装置１００の内部に設けられた第１，第２加算部または減算部を用いて行っているが、これら処理の一部又は全部をタイムスタンプ補正装置１００の外部に設けられた加算部または減算部を用いて行っても良い。
【００４６】
例えば、サイクルタイム差分値ＳＵＢとオリジナルタイムスタンプ値ＯＴＳをタイムスタンプ補正回路の外部に設けられたＣＰＵに入力し、（サイクルタイム差分値ＳＵＢ＋オリジナルタイムスタンプ値ＯＴＳ）を計算させ、その計算結果をＣＩＰヘッダ生成部１１６とＩＳＯパケット生成部１１８へ戻すことによって第２加算部の処理を外部のＣＰＵに行わせるとしても良い。
【００４７】
また、サイクルタイム値ＣＴとオリジナルタイム値ＯＴＭとオリジナルタイムスタンプ値ＯＴＳとを外部のＣＰＵに入力し、（サイクルタイム値ＣＴ−オリジナルタイム値ＯＴＭ＋オリジナルタイムスタンプ値ＯＴＳ）を計算させ、その計算結果をＣＩＰヘッダ生成部１１６とＩＳＯパケット生成部１１８へ戻すことによって減算部と第２加算部の処理を外部のＣＰＵに行わせるとしても良い。
【００４８】
前記実施の形態は本発明をＩＥＥＥ１３９４上で実施する場合について説明したが、本発明がＩＥＥＥ１３９４以外にも適用可能であることは言うまでも無い。異なるネットワーク時間を有する複数のネットワークが統合された結果、新たなネットワークの少なくとも一部においてネットワーク時間が不連続に変化してしまう場合であれば、本発明を適用することができる。
【００４９】
【発明の効果】
本発明によれば、ネットワークタイムが不連続に変化してもリアルタイムデータを連続的に再生することが可能となる。
【図面の簡単な説明】
【図１】本発明の実施の形態に係るタイムスタンプ補正回路の全体構成を示すブロック図である。
【図２】本発明の実施の形態に係るタイムスタンプ補正方法の処理の流れを示すフローチャートである。
【図３】本発明の実施の形態におけるクロック、サイクルタイム値ＣＴ、オリジナルタイム値ＯＴＭ、サイクルタイム差分値ＳＵＢ、オフセット値ＯＦＴ、オリジナルタイムスタンプ値ＯＴＳ、タイムスタンプ値ＴＳなどの関係を示すタイミングチャートである。
【図４】第１〜第５ノードからなるネットワークＮ１を示す図である。
【図５】従来の（Ａ）はサイクルスタートパケット、ＩＳＯパケットの関係を示し、（Ｂ）はサイクルスタートパケットのフォーマットを示し、（Ｃ）はＩＳＯパケットのフォーマットを示す図である。
【図６】第１〜５ノードからなるネットワークＮ１と第６〜８ノードからなるネットワークＮ２とを連結したネットワークＮ３を示す図である。
【図７】従来のクロック、サイクルタイム値ＣＴ、オフセット値ＯＦＴ、タイムスタンプ値ＴＳなどの関係を示すタイミングチャートである。
【符号の説明】
１００  タイムスタンプ補正回路    １０２  オリジナルタイムカウンタ
１０４  減算部    １０６  第１加算部
１０８  第２加算部    １１０  オリジナルタイムスタンプ値付加部
１１２  同期ＦＩＦＯメモリ    １１４  オリジナルタイムスタンプ値分割部
１１６  ＣＩＰヘッダ生成部    １１８  ＩＳＯパケット生成部
１２０  出力制御部
【図１】
0003702261.tif 000002
【図２】
0003702261.tif 000003
【図３】
0003702261.tif 000004
【図４】
0003702261.tif 000005
【図５】
0003702261.tif 000006
【図６】
0003702261.tif 000007
【図７】
0003702261.tif 000008