JP2001308868A - Ieee1394バス接続装置、媒体及び情報集合体 - Google Patents

Ieee1394バス接続装置、媒体及び情報集合体

Info

Publication number
JP2001308868A
JP2001308868A JP2000117088A JP2000117088A JP2001308868A JP 2001308868 A JP2001308868 A JP 2001308868A JP 2000117088 A JP2000117088 A JP 2000117088A JP 2000117088 A JP2000117088 A JP 2000117088A JP 2001308868 A JP2001308868 A JP 2001308868A
Authority
JP
Japan
Prior art keywords
cycle
bus connection
bus
ieee
value
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.)
Pending
Application number
JP2000117088A
Other languages
English (en)
Inventor
Yasuo Hamamoto
康男 浜本
Tatsuhiko Ikeda
達彦 池田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2000117088A priority Critical patent/JP2001308868A/ja
Publication of JP2001308868A publication Critical patent/JP2001308868A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Transfer Systems (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

(57)【要約】 【課題】 異なったIEEE1394バスを接続する接
続用ノードのうちいずれかのノードがサイクルマスタに
なれない場合、異なったバス間の同期が取れなくなり、
他のバスへのアイソクロナス転送が出来なくなる。 【解決手段】 複数のIEEE1394バス2、3と、
IEEE1394バス2、3を接続するバス接続装置1
とを備え、バス接続装置1は、前記各バス2、3に接続
される各接続用ノード5、6を有し、バス3がバスリセ
ットされた際、少なくともバス接続用ノードB6がサイ
クルマスターとなった際、同期手段25はバス接続用ノ
ードB6をバス接続用ノードA5に同期させる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、異なるIEEE1
394バスに接続されたノード間でデータやコマンドを
転送することを可能にするIEEE1394バス接続装
置、媒体及び情報集合体に関するものである。
【0002】
【従来の技術】近年、音声や動画像などのディジタルデ
ータをリアルタイムに伝送可能な高速シリアルバスであ
るIEEE Std 1394−1995シリアルバス
(以下、IEEE1394バス)が実用化され、AV機器
やPCを中心に実装され始めている。
【0003】IEEE1394バスは、その高速性に加
えて、電源を落とすことなく機器の接続や取り外し(い
わゆるホットプラグ)が可能な利便性を有することか
ら、様々な用途で普及が期待されているが、この利便性
の代償として、ホットプラグ時にアイソクロナス伝送
(AVデータ等のリアルタイム伝送)が一時的に中断する
問題点も併せ持つ。この伝送中断は、ホットプラグ時の
IEEE1394バスの初期化動作(バスリセット動作)
に起因する現象で、同一バス内においては完全に防止す
ることは規格上不可能である。そこで、複数のIEEE
1394バスを相互接続し、各々のIEEE1394バ
ス内でのバスリセットを他バスに伝播させないことによ
り、進行中のアイソクロナス伝送を保護するための装置
であるIEEE1394バス接続装置の開発が進められ
ている。
【0004】IEEE1394バス接続装置では、異な
るバス間でアイソクロナスパケットや非同期パケットの
相互転送を実現する必要があるが、アイソクロナスパケ
ットを転送するためには、転送元バスと転送先バスのサ
イクル同期を実現する必要がある。
【0005】以下、従来のIEEE1394バス接続装
置におけるバス間のサイクル同期の実現について説明す
る。
【0006】図7に、従来のIEEE1394バス接続
装置を用いたシステムの基本構成を示す。
【0007】IEEE1394バス接続装置50は、バ
ス接続用ノードA47、バス接続用ノードB48、内部
バス4、基準サイクルタイマー51、同期手段52から
構成される。そしてバス接続用ノードA47は、IEE
E1394バス2と内部バス4に接続され、バス接続用
ノードB48は、IEEE1394バス3と内部バス4
にぞれぞれ接続されている。バス接続用ノードは、内部
に各々のサイクルタイマー10、サイクルタイマー11
を有する。これらの、サイクルタイマーは、同一のクロ
ックで動作している。
【0008】また、IEEE1394バス2には、ノー
ド0(7)が、IEEE1394バス3には、ノード1
(49)、ノード2(50)がそれぞれ接続されてい
る。
【0009】同期手段52は、バスリセット後に、バス
接続用ノードA47とバス接続用ノードB48がサイク
ルマスターになった際、各々のバス接続用ノードに内蔵
のサイクルタイマーに、基準サイクルタイマー51の示
すサイクルタイム値を供給するよう動作し、両者の同期
を確立させる手段である。これらサイクルタイマー1
0、11は、IEEE1394バス規格においてCSR
空間に定義されているサイクルタイムレジスタの物理的
実体である。
【0010】次に、このようなIEEE1394バス接
続装置50と、それぞれのIEEE1394バスに接続
されたノード群で構成されたシステムの動作を説明す
る。
【0011】IEEE1394バスに於いて、アイソク
ロナス伝送が行われる場合、バス上でサイクルマスター
ノードが決定され、サイクルマスターノードは内蔵のサ
イクルタイマーの値をサイクルスタートパケットとして
自らが接続されたバスにブロードキャストする。このサ
イクルスタートパケットは、通常、125マイクロ秒に
1回送信される。このサイクルスタートパケットに記述
されたサイクルタイマー値が、バスの基準時刻となる。
【0012】そして、バスに接続されたノードは、先の
サイクルスタートパケットを受信し、サイクルスタート
パケット内に記述されたサイクルタイムを自ら内蔵して
いるサイクルタイマーにセットする事により、バスの基
準時刻と内蔵しているサイクルタイマーの時刻を合わせ
る事により同期を確立する。
【0013】図7のバスシステムに於いて、バス接続用
ノードA47、B48がサイクルマスターとなっている
場合、バス接続用ノードA47は、サイクルスタートパ
ケットをブロードキャストする。
【0014】同様に、バス接続用ノードB48は、IE
EE1394バス3にサイクルスタートパケットをブロ
ードキャストする。
【0015】各々のバス接続用ノードA47とB48
は、バスリセット後にサイクルマスターとなった際に、
唯一の基準サイクルタイマー51の値を各々のサイクル
タイマー10,11にセットしており、さらに、各々の
サイクルタイマーは、同一のクロックでカウント動作を
行っているので、バス接続用ノードA47とB48が接
続されたIEEE1394バスは、同一の基準時刻を有
することになる。
【0016】このようにして、2つの独立したIEEE
1394バスが同期させられ、バスに接続されたノード
も同期を確立できる。
【0017】図8に、IEEE1394バス2のノード
0(7)からIEEE1394バス接続装置50を介し
て、IEEE1394バス3に一つのアイソクロナスチ
ャンネルを用いてアイソクロナスパケットを転送する場
合のタイムチャートを示す。
【0018】タイムチャート53は、ノード0(7)か
ら送出されたアイソクロナスパケットを時系列に示した
図であり、125マイクロ秒の周期を持つアイソクロナ
ス周期に一回、ノード0(7)からアイソクロナスパケ
ットが送出されている様子を示している。
【0019】タイムチャート54は、バス接続用ノード
A47によって受信されたアイソクロナスパケットが、
内部バス4に出力される様子を時系列に示した図であ
る。
【0020】タイムチャート55は、バス接続用ノード
A47により内部バス4に出力されたアイソクロナスパ
ケットが、バス接続用ノードB48により内部バス4よ
り受信された後、IEEE1394バス3に出力される
様子を時系列に示した図である。
【0021】タイムチャート53,54,55に示され
る様に、各バスのアイソサイクルはサイクル同期が確立
しているため、一方のIEEE1394バス2からもう
一方のIEEE1394バス3へ、固定サイクル遅延
(この例では、サイクル遅延=2サイクル)で、アイソク
ロナスパケットを転送することが可能になる。
【0022】そして、IEEE1394バス2とIEE
E1394バス3に接続されているアイソクロナス送受
信可能なノードのサイクルタイマーはバス基準時刻と同
期しているため、異なったバスのノード間でアイソクロ
ナスパケットの送受信をパケットの消失等の不具合無く
行うことが出来る。
【0023】
【発明が解決しようとする課題】しかしながら、IEE
E1394バスは、その規格上、特定のノードが必ずし
もサイクルマスターになれないことがある。例えば、接
続されるノードの特性によっては、バス接続用ノードA
47またはバス接続用ノードB48が必ずしもサイクル
マスターとなれず、バスに接続されている他のノードが
サイクルマスターになることもある。この場合、サイク
ルマスターとなった他のノードは、バス接続用ノードの
クロックとは無関係なクロックでサイクルタイムをカウ
ントし、バス上にそれをブロードキャストするため、I
EEE1394バス2とIEEE1394バス3はバス
間同期が確立出来ない。
【0024】すなわち、このようなIEEE1394バ
ス接続装置に於いては、アイソクロナスパケットの転送
元バスと転送先バスのバス接続用ノードのいずれか一方
でもサイクルマスターになっていない場合、バス間のア
イソクロナスパケット転送が出来なくなるという課題が
ある。
【0025】本発明は、IEEE1394バス接続装置
のバス接続用ノードのうち特定のノードがサイクルマス
タになっていない場合でもそのバスと他のバスとの間で
アイソクロナス転送を行うことが出来るIEEE139
4バス接続装置、媒体及び情報集合体を提供することを
目的とするものである。
【0026】
【課題を解決するための手段】上述した課題を解決する
ために、第1の本発明(請求項1に対応)は、複数の独
立したIEEE1394バスを接続し、前記独立したI
EEE1394バス間で、少なくともアイソクロナスパ
ケットを転送するIEEE1394バス接続装置であっ
て、前記独立した各々のIEEE1394バス上に、前
記パケットを送信もしくは受信するための各々のバス接
続用ノードと、前記バス接続用ノードのいずれか1つを
基準ノードとし、前記基準ノードを除く他のバス接続用
ノードの少なくとも1つがサイクルマスターになった
際、前記基準ノードのサイクルタイマーに、前記基準ノ
ード以外のサイクルマスターになったバス接続用ノード
のサイクルタイマーを同期させる同期手段とを備えたこ
とを特徴とするIEEE1394バス接続装置である。
【0027】また、第2の本発明(請求項2に対応)
は、前記同期手段は、前記他のバス接続用ノードのサイ
クルタイマー値を穏やかに可変し、少なくともサイクル
周期を同期させることを特徴とする第1の本発明に記載
のIEEE1394バス接続装置である。
【0028】また、第3の本発明(請求項3に対応)
は、前記同期手段は、前記他のバス接続用ノードのサイ
クルタイマーのサイクルカウント部のカウントアップ時
刻を前記基準ノードのサイクルタイマーのサイクルカウ
ント部のカウントアップ時刻に実質上一致させることを
特徴とする第2の本発明に記載のIEEE1394バス
接続装置である。
【0029】また、第4の本発明(請求項4に対応)
は、前記サイクル周期の同期は、前記他のバス接続用ノ
ードのサイクルタイマーのうち、サイクルオフセット部
のカウントアップ値を、一時的に1より大きい値に設定
することによりサイクル周期を減少させることによって
行われることを特徴とする第2または3の本発明に記載
のIEEE1394バス接続装置である。
【0030】また、第5の本発明(請求項5に対応)
は、前記サイクル周期の同期は、前記他のバス接続用ノ
ードのサイクルタイマーのうち、サイクルオフセット部
のカウントアップ値を、一時的に1より小さい値に設定
することによりサイクル周期を増加させることによって
行われることを特徴とする第2または3の本発明に記載
のIEEE1394バス接続装置である。
【0031】また、第6の本発明(請求項6に対応)
は、前記サイクル周期の同期は、前記他のバス接続用ノ
ードのサイクルタイマーのうち、サイクルオフセット部
がサイクルカウント部へキャリーアップする時の値を、
通常の3071から増加させることによりサイクル周期
を増加させることによって行われることを特徴とする第
2または3本発明に記載のIEEE1394バス接続装
置である。
【0032】また、第7の本発明(請求項7に対応)
は、前記サイクル周期の同期は、前記他のバス接続用ノ
ードのサイクルタイマーのうち、サイクルオフセット部
がサイクルカウント部へキャリーアップする時の値を、
通常の3071から減少させることによりサイクル周期
を減少させることによって行われることを特徴とする第
2または3の本発明に記載のIEEE1394バス接続
装置である。
【0033】また、第8の本発明(請求項8に対応)
は、前記同期手段は、前記他のバス接続用ノードのサイ
クルタイマーのサイクルオフセットのさらに下位に少数
点以下をカウントするM(Mは正の整数)ビットのカウ
ンタ値を付加し、少数点以下の精度で前記カウントアッ
プ値または前記キャリーアップ値を制御可能なことを特
徴とする第4〜7の本発明のいずれかに記載のIEEE
1394バス接続装置である。
【0034】また、第9の本発明(請求項9に対応)
は、前記サイクルタイマー値の穏やかな可変は、サイク
ル周期を100ppm以内で可変することを特徴とする
第8の本発明に記載のIEEE1394バス接続装置で
ある。
【0035】また、第10の本発明(請求項10に対
応)は、前記同期手段は、前記基準ノードのサイクルタ
イマーと前記他のバス接続用ノードのサイクルタイマー
を監視することにより、同期誤差を計算する誤差計算手
段と、前記計算された同期誤差を基にしたフィードバッ
ク制御により、サイクル同期を行うフィードバック制御
手段とを有することを特徴とする第2〜9の本発明のい
ずれかに記載のIEEE1394バス接続装置である。
【0036】また、第11の本発明(請求項11に対
応)は、前記フィードバック制御手段は、バスリセット
後のサイクル同期位置の誤差を基に、サイクル周期の増
加もしくは減少のうち、いずれの方向が引き込み時間が
より短いかを判断し、より引き込み時間が短い方向へ初
期制御を行うことを特徴とする第3〜10の本発明のい
ずれかに記載のIEEE1394バス接続装置である。
【0037】また、第12の本発明(請求項12に対
応)は、前記同期手段は、バスリセット後に、サイクル
同期位置の誤差が一定値に達する時刻まで、サイクル周
期の増加もしくは減少のいずれかの制御を行い、前記誤
差が一定値に達した後は前記制御をオフとし、前記基準
ノードのサイクル周期もしくはサイクル同期位置を基準
に、前記他のバス接続用ノードのサイクルタイマーにサ
イクル位置をセットすることを特徴とする第3〜9の本
発明のいずれかに記載のIEEE1394バス接続装置
である。
【0038】また、第13の本発明(請求項13に対
応)は、前記サイクル周期の増加もしくは減少の制御
は、バスリセット後のサイクル同期位置の誤差を基に、
いずれの方向が引き込み時間より短いかを判断し、より
引き込み時間が短い方向へ制御を行うことを特徴とする
第12の本発明に記載のIEEE1394バス接続装置
である。
【0039】また、第14の本発明(請求項14に対
応)は、前記サイクル位置をセットするとは、サイクル
オフセット部がサイクルカウント部へキャリーアップす
る動作を直接制御し、前記他のバス接続用ノードのサイ
クルタイマーのサイクル位置を、前記基準ノードのサイ
クルタイマーのサイクル位置に強制的に実質上一致させ
る動作であることを特徴とする第12の本発明に記載の
IEEE1394バス接続装置である。
【0040】また、第15の本発明(請求項15に対
応)は、前記サイクル位置をセットするとは、前記サイ
クル同期位置の誤差が一定値に達した時刻の、前記基準
ノードのサイクルタイマー値と前記バス接続用ノードの
サイクルタイマー値の差分値を用いて、前記基準ノード
のサイクルタイマー値を基準に前記差分値で補正された
値を、前記バス接続用ノードのサイクルタイマーに周期
的にセットし、間接的にサイクル位置を実質上一致させ
る動作である事を特徴とする第12の本発明に記載のI
EEE1394バス接続装置である。
【0041】また、第16の本発明(請求項16に対
応)は、前記サイクル同期位置の誤差が一定値に達した
後とは、前記サイクル同期位置の誤差が、異なるIEE
E1394バス間でアイソクロナスパケットの転送が行
える範囲内に達した後であることを特徴とする第12の
本発明に記載のIEEE1394バス接続装置である。
【0042】また、第17の本発明(請求項17に対
応)は、前記独立したIEEE1394バス間で、アイ
ソクロナスパケットを転送する際、転送元のIEEE1
394バスのバス接続用ノードでのアイソクロナスパケ
ット受信時のサイクルタイムと前記転送先のIEEE1
394バスのバス接続用ノードでの前記アイソクロナス
パケット送信時のサイクルタイムの差分値を計算する差
分計算手段と、前記差分値の少なくとも一部を、前記転
送するアイソクロナスパケットに含まれるタイムスタン
プに加算もしくは減算する演算手段とを備えたことを特
徴とする第1〜16の本発明のいずれかに記載のIEE
E1394バス接続装置である。
【0043】また、第18の本発明(請求項18に対
応)は、前記差分計算手段は、前記アイソクロナスパケ
ット受信時の転送元バスのサイクルタイムと転送先バス
のサイクルタイムの差分と、前記アイソクロナスパケッ
ト受信から送信までの所要時間を用いて計算することを
特徴とする第17の本発明に記載のIEEE1394バ
ス接続装置である。
【0044】また、第19の本発明(請求項19に対
応)は、前記差分値の少なくとも一部は、サイクルカウ
ントの差分値の一部を含むことを特徴とする第17また
は18の本発明に記載のIEEE1394バス接続装置
である。
【0045】また、第20の本発明(請求項20に対
応)は、前記アイソクロナスパケットの転送は、前記転
送元のIEEE1394バスと前記転送先のIEEE1
394バスの同期が確立した後に受信したパケットから
転送を開始することを特徴とする第17〜19の本発明
のいずれかに記載のIEEE1394バス接続装置であ
る。
【0046】また、第21の本発明(請求項21に対
応)は、第1〜20の本発明のいずれかに記載のIEE
E1394バス接続装置本発明の全部または一部の手段
の全部または一部の機能をコンピュータにより実行させ
るためのプログラム及び/またはデータを担持した媒体
であってコンピュータにより処理可能なことを特徴とす
る媒体である。
【0047】また、第22の本発明(請求項22に対
応)は、第1〜20の本発明のいずれかに記載のIEE
E1394バス接続装置の全部または一部の手段の全部
または一部の機能をコンピュータにより実行させるため
のプログラム及び/またはデータであることを特徴とす
る情報集合体である。
【0048】
【発明の実施の形態】以下に、本発明の実施の形態につ
いて図面を参照して説明する。
【0049】(第1の実施の形態)図1に、第1の実施
の形態のIEEE1394バス接続装置を用いたバスシ
ステムを示す。
【0050】IEEE1394バス接続装置1は、バス
接続用ノードA5、バス接続用ノードB6、内部バス
4、同期手段25から構成されている。そして、バス接
続用ノードA5は、IEEE1394バス2と内部バス
4に接続され、バス接続用ノードB6は、IEEE13
94バス3と内部バス4にぞれぞれ接続されている。バ
ス接続用ノードは、内部に各々のサイクルタイマー1
0、サイクルタイマー11を有する。これらサイクルタ
イマー10、11は、IEEE1394バス規格におい
てCSR空間に定義されているサイクルタイムレジスタ
の物理的実体である。
【0051】また、IEEE1394バス2には、ノー
ド0(7)が接続されており、IEEE1394バス3
には、ノード1(8)、ノード2(9)がそれぞれ接続
されている。
【0052】同期手段25は、バス接続用ノードA5か
らのサイクル同期信号(もしくは、それに準ずる信号)を
利用して、バス接続用ノードB6をバス接続用ノードA
5にサイクル同期させる手段である。
【0053】図3に、サイクルタイマーのビット構成を
示す。サイクルタイマーは24.576MHzのクロッ
クでカウントアップする32ビットのカウンタである。
【0054】この32ビットのうち、下位12ビット
は、Cycle_offset41と呼ばれ、0〜30
71の3072カウントで125マイクロ秒の時間を計
測する。
【0055】また、次の13ビットはCycle_co
unt40と呼ばれ、先の125マイクロ秒周期でカウ
ントアップし、0〜7999の8000カウントで1秒
の時間を計測する。
【0056】また、次の7ビットは、Second_c
ount39と呼ばれ、128秒間に128カウントす
る。
【0057】IEEE1394バスのサイクルマスタ
は、自らのサイクルタイマーのCycle_offse
t41の値が0になったタイミングでサイクルスタート
パケットの送信準備を開始し、送信時点でのサイクルタ
イマーの値が記述されたサイクルスタートパケットをI
EEE1394バスにブロードキャストする。
【0058】また、IEEE1394バス3上に於いて
は、バス接続用ノードB6が、バスリセット後に、常に
サイクルマスターになるよう、予め設計されているもの
とする。例えば、IEEE1394バス3に接続される
ノードを限定し、それらのノードは、IEEE1394
バス3上に接続された場合、サイクルマスターにならな
いように設計する事により、バス接続用ノードB6を必
ずサイクルマスターにする事は可能である。IEEE1
394バス3が筐体の内部バス等の場合がこれにあた
る。
【0059】図2に、IEEE1394バス接続装置1
のブロック図を示す。
【0060】IEEE1394バス接続装置1は、バス
接続用ノードA5、バス接続用ノードB6、制御マイコ
ン13、送信バッファ21、受信バッファ22、差分計
算手段16、ラッチ17、Cycle_offset一
致検出手段18、送信バッファ23、受信バッファ2
4、加算器19、加算器20を備えている。
【0061】制御マイコン13は、IEEE1394の
トランザクションを管理し、バス接続用ノードA5とバ
ス接続用ノードB6のアイソクロナスパケットの送受信
を制御する手段である。
【0062】受信バッファ22は、バス接続用ノードA
5がIEEE1394バス2から受信したアイソクロナ
スパケットを一時的に格納し、バス接続用ノードB6側
の送信バッファ23に再送信するためのバッファであ
る。
【0063】送信バッファ21は、バス接続用ノードB
6から送られてきたアイソクロナスパケットを一時的に
格納し、バス接続用ノードA5を通じてIEEE139
4バス2へ再送信するためのバッファである。
【0064】受信バッファ24は、バス接続用ノードB
5がIEEE1394バス3から受信したアイソクロナ
スパケットを一時的に格納し、バス接続用ノードA5側
の送信バッファ21に再送信するためのバッファであ
る。
【0065】送信バッファ23は、バス接続用ノードA
5から送られてきたアイソクロナスパケットを一時的に
格納し、バス接続用ノードB6を通じてIEEE139
4バス3へ再送信するためのバッファである。
【0066】加算器19は、受信バッファ24からのア
イソクロナスパケットに含まれるタイムスタンプの値に
受信サイクルから送信サイクルに至るサイクル遅延時間
(送受信バッファにより遅延させるサイクル数)を補正す
るための値を加算し、さらにサイクルタイマー10のS
econd_countとCycle_offsetか
らサイクルタイマー11のSecond_countと
Cycle_countを引いた差分値を加算(すなわ
ち、バス間の固定サイクル誤差の補正)した値にタイム
スタンプの値を書き替える手段である。
【0067】加算器20は、受信バッファ22からのア
イソクロナスパケットに含まれるタイムスタンプの値に
受信サイクルから送信サイクルに至るサイクル遅延時間
(送受信バッファにより遅延させるサイクル数)を補正す
るための値を加算し、さらにサイクルタイマー10のS
econd_countとCycle_offsetか
らサイクルタイマー11のSecond_countと
Cycle_countを引いた差分値を減算(すなわ
ち、バス間の固定サイクル誤差の補正)した値にタイム
スタンプの値を書き替える手段である。
【0068】差分計算手段16は、サイクルタイマー1
0とサイクルタイマー11の値のうち、Second_
countとCycle_countの差分を求める手
段である。加算機19と加算機20は、パケットの転送
方向が逆であるので、バス間の固定サイクル誤差の補正
時の符号は逆になる。
【0069】Cycle_offset一致検出手段1
8は、サイクルタイマー10とサイクルタイマー11の
Cycle_offsetの値が一致しているかどうか
を検出し、検出結果等を出力する手段である。
【0070】ラッチ17は、Cycle_offset
一致検出手段18からのCycle_offsetが一
致していることを示す一致パルス36を利用して、差分
計算手段16が求めたSecond_countとCy
cle_countの差分34をラッチし、バス間の固
定サイクル誤差を加算器19と加算器20に入力する手
段である。
【0071】なお、本実施の形態のバス接続用ノードA
5は本発明の基準ノードの例であり、本実施の形態の差
分計算手段16は本発明の誤差計算手段の例であり、本
実施の形態の差分計算手段16、ラッチ17は本発明の
差分計算手段の例であり、本実施の形態の加算器19、
加算器20はそれぞれ本発明の演算手段の例である。
【0072】次に、以上の様に構成された本実施の形態
の動作を説明する。
【0073】バス接続用ノードB6は、例えば筐体の内
部バス接続用であり、IEEE1394バス3でバスリ
セットが起こった際、かならずサイクルマスタになるよ
う配慮されている。
【0074】一方、バス接続用ノードA5は、例えば筐
体外部のバス接続用であり、IEEE1394バス2で
バスリセットが起こった際、必ずしもサイクルマスタに
ならない。
【0075】IEEE1394バス2でバスリセットが
起こり、ノード0(7)がサイクルマスタになったとす
る。
【0076】このような場合、バス接続用ノードA5
は、ノード0(7)がIEEE1394バス2にブロー
ドキャストしたサイクルスタートパケットを受信し、こ
のサイクルスタートパケット内に記述されたサイクルタ
イムを、バス接続用ノードA5内部のサイクルタイマー
10にセットし、バス接続用ノードA5をバスの基準時
刻に同期させる。そして、同期手段25を用いて、バス
接続用ノードB6に内蔵のサイクルタイマー11をバス
接続用ノードA5のサイクルタイマー10に同期させ
る。
【0077】バス接続用ノードB6は、サイクルマスタ
ーになっているので、サイクルタイマー11に基づいて
サイクルスタートパケットをIEEE1394バス3に
ブロードキャストする。このようにして、IEEE13
94バス2とIEEE1394バス3のサイクル同期が
確立される。
【0078】また、IEEE1394バス上で、アイソ
クロナスパケットを送受信しようとするノードは、全て
サイクルスタートパケットに記述されたサイクルタイム
を内蔵のサイクルタイマーにセットすることにより同期
を確立するので、IEEE1394バス2とIEEE1
394バス3に接続されたノードのサイクル同期が確立
される。
【0079】すなわち、従来の技術のIEEE1394
バス接続装置50とは異なり、ノードA5がサイクルマ
スタになっていなくても、IEEE1394バス2とI
EEE1394バス3を同期させることが出来る。
【0080】ところで、同期手段25の動作に於いて、
バス接続用ノードA5に内蔵のサイクルタイマー10の
値をバス接続用ノードB5に内蔵のサイクルタイマー1
1に単純にセットすると以下のような不具合が生じる。
【0081】このことを、図4を用いて説明する。図4
は、IEEE1394バス2にバスリセットが発生した
際の、サイクルタイマー10のCycle_count
値とサイクルタイマー11のCyle_count値及
びそれぞれのサイクルタイマーの示すサイクル位置(C
ycle_countがカウントアップする時刻)が時
刻の経過とともにどのように変化していくかを示すもの
である。図4では、紙面左側から右側に向かって時刻が
経過している。
【0082】タイムチャート43は、サイクルタイマー
10のCycle_count値とサイクル位置が時刻
の経過とともにどのように変化していくかを示すタイム
チャートである。
【0083】タイムチャート44は、サイクルタイマー
11のCycle_count値とサイクル位置が時刻
の経過とともにどのように変化していくかを示すタイム
チャートである。
【0084】タイムチャート43,44に於いて、サイ
クル位置60、61にふられた数値がそれぞれのサイク
ルタイマーの示すCycle_count値である。
【0085】IEEE1394バス2でバスリセットが
発生すると、IEEE1394バス2が初期化される。
そして、初期化が完了し、ノード0(7)がサイクルマ
スターになったとする。バス接続用ノードA5は、ノー
ド0(7)がブロードキャストするサイクルスタートパ
ケット内に記述されたサイクルタイムをサイクルタイマ
ー10にセットするので、ノード0(7)内部のクロッ
クで生成されたサイクルタイムに同期することになる。
【0086】一方、サイクルタイマー11は、ノード0
(7)とは異なる独自のクロックでカウント動作を行っ
ているため、サイクルタイマー10とはサイクル周期,
Cycle_count値とも異なっている。
【0087】同期手段25が、例えば、図4のAに示す
時点で、サイクルタイマー10の値をサイクルタイマー
11へ単純にセットしたとする。
【0088】そうすると、サイクルタイマー11のサイ
クル周期の長さが、本来の125マイクロ秒より極端に
短くなるとともに、Aの時点で、サイクルタイマー10
のCycle_count値が不連続になる。
【0089】このような、周期のばらつきやサイクルの
不連続性は、IEEE1394では規格違反となり、実
行中のアイソクロナス伝送に支障が生じる。
【0090】例えば、Aの時点で、ノード1(8)やノ
ード2(9)などIEEE1394バス3に接続されて
いるノード間で、アイソクロナス伝送が行われていた場
合、アイソクロナス周期が短くなった影響で、本来送出
すべきアイソクロナスパケットが送出不能になる等の悪
影響が生じることが予想される。あるいは、サイクルタ
イマー10のCycle_count値が不連続になっ
たため、Cycle_count値を基準に動作してい
る受信後のアイソクロナスパケットの処理に支障をきた
す事が予想される。
【0091】このようにサイクルタイマー10の値をサ
イクルタイマー11に単純にセットするとこのような不
具合が発生するため、本実施の形態の同期手段25は、
サイクル周期の極端な変動やCycle_count値
の不連続性を生じさせないように、サイクルタイマー1
1をサイクルタイマー10に緩やかに同期させる。
【0092】このことを、図5を用いて説明する。図5
は、IEEE1394バス2にバスリセットが発生した
際の、サイクルタイマー10のCycle_count
値とサイクルタイマー11のCyle_count値及
びそれぞれのサイクルタイマーの示すサイクル位置が時
刻の経過とともにどのように変化していくかを示すもの
である。図5に於いても、紙面左側から右側に向かって
時刻が経過している。
【0093】タイムチャート45は、サイクルタイマー
10のCycle_count値とサイクル位置が時刻
の経過とともにどのように変化していくかを示すタイム
チャートである。
【0094】タイムチャート46は、サイクルタイマー
11のCycle_count値とサイクル位置が時刻
の経過とともにどのように変化していくかを示すタイム
チャートである。
【0095】IEEE1394バス2でバスリセットが
発生すると、IEEE1394バス2が初期化される。
そして、初期化が完了し、ノード0(7)がサイクルマ
スターになったとする。バス接続用ノードA5は、ノー
ド0(7)が送信したサイクルスタートパケットを受信
し、内蔵のサイクルタイマー10にサイクルスタートパ
ケット内に記述されたサイクルタイムをセットする。そ
してサイクル位置62を同期手段25に提供する。サイ
クル位置62にふられた数値は、サイクル位置62に付
加されているサイクルタイマー10のCycle_co
unt値である。
【0096】一方、サイクルタイマー11はサイクルタ
イマー10とは異なったカウントをしているので、サイ
クル位置62のタイミングは、サイクル位置63のタイ
ミングとは異なっている。
【0097】同期手段25は、サイクル位置62を受け
取った時点で、その時刻がノードB6の次のサイクル位
置64か、直前のサイクル位置63かどちらに時間的に
近いかを判断する。
【0098】例えば、直前のサイクル位置63に時間的
に近いと判断したとする。
【0099】このような場合、同期手段25は、サイク
ルタイマー11のCycle_offsetのカウント
数を少し小さくする。すなわち、通常Cycle_of
fsetは0〜3071の3072カウントすると、サ
イクルタイマー11はCycle_countを1増加
させるが、Cycle_offsetが通常のカウント
数より1少ない3071カウント行った時点(すなわ
ち、Cycle_offsetが0〜3070をカウン
トし終わった時点)で、Cycle_countの値を
1増加させる制御を両者のサイクル位置が所定の誤差以
内に達するまで行う。
【0100】この制御により、バス接続用ノードB6内
蔵のサイクルタイマーの示すサイクル位置の時間間隔が
短くなるので、徐々に、サイクル位置62とサイクル位
置63が一致していく。
【0101】逆にサイクル位置62が、次のサイクル位
置64に時間的に近い場合、同期手段25は、サイクル
タイマー11のCycle_offsetのカウント数
を少し大きくする。すなわち、Cycle_offse
tが通常のカウント数より1多い3073カウント行っ
たになった時点(すなわち、Cycle_offset
が0〜3072をカウントし終わった時点)で、Cyc
le_countの値を1増加させる制御を両者のサイ
クル位置が一致するまで行う。
【0102】この制御により、バス接続用ノードB6内
蔵のサイクルタイマーの示すサイクルサイクル位置の時
間間隔が長くなるので、徐々に、サイクル位置62とサ
イクル位置63が一致していく。
【0103】図5のBの時点で、バス接続用ノードA5
に内蔵のサイクルタイマー10の示すサイクル位置62
とバス接続用ノードB6に内蔵のサイクルタイマー11
の示すサイクル位置63が所定の値以内で一致したとす
る。すなわち、IEEE1394バス2とIEEE13
94バス3の間でアイソクロナスパケットの転送が行え
る範囲以内で、ノードA5のサイクル同期信号62とノ
ードB6のサイクル同期信号63のタイミングが一致し
たとする。
【0104】Bの時点が経過すると、同期手段25は、
サイクルタイマー10の示すサイクル位置62を利用し
て、サイクルタイマー11のCycle_offset
のキャリーアップ時刻を制御することにより、サイクル
位置62にサイクル位置63の一致を維持する。
【0105】上記は、同期の基準となるIEEE139
4バス2でバスリセットが発生したとして説明したが、
IEEE1394バス3側でバスリセットが発生しても
同様である。また、バス接続用ノードA5はサイクルマ
スターでは無い場合を例に説明したが、自らサイクルマ
スターとなっていても構わない。
【0106】以上のようにIEEE1394バス間の同
期が確立した後に、IEEE1394バス2上のノード
7からIEEE1394バス接続装置1を経由して、I
EEE1394バス3にアイソクロナスパケットを転送
する場合について、次に説明する。
【0107】図5に於いて、Bの時刻が経過してから
は、サイクルタイマー10の示すサイクル位置62とサ
イクルタイマー11の示すサイクル位置63は一致する
が、サイクルタイマーの値は、Second_coun
t39とCycle_count40の値が一定の値だ
け異なっている。
【0108】この場合、バス接続用ノードA5がIEE
E1394バス2上で受信したアイソクロナスパケット
を、バス接続用ノードB6からIEEE1394バス3
に送信する際に同期手段25は、アイソクロナスパケッ
トに含まれているタイムスタンプ(通常、CIPヘッダ
ー内もしくはソースパケットヘッダー内に記述されてい
る)の値を書き替える。すなわち、上述したように、サ
イクルタイマー10とサイクルタイマー11のSeco
nd_count39とCycle_cout40の値
が一定の値だけ異なっているので、その差分値(すなわ
ち、サイクルタイマー11の値からサイクルタイマー1
0の値を引いた値)を求め、タイムスタンプの値に加算
する。さらに、バス接続装置1を経由して、IEEE1
394バス3に伝送される際の遅延時間を見越した値を
加算する。このような値にタイムスタンプの値を書き替
える。
【0109】バス接続用ノードB6は、このようにタイ
ムスタンプの値が書き替えられたアイソクロナスパケッ
トをIEEE1394バス3に送信する。
【0110】また、逆にノード2(9)などのIEEE
1394バス3に接続されているノードからアイソクロ
ナスパケットをIEEE1394バス3に伝送し、IE
EE1394バス接続装置1を経由して、IEEE13
94バス2に伝送する場合は、先ほどの差分値を減算す
ればよい。
【0111】このようにすることによって、ノードA5
がサイクルマスターになっていなくても、アイソクロナ
スパケットを一方のIEEE1394バスから他方のI
EEE1394バスに問題なく転送することが出来る。
【0112】次に、図2のブロック図を用いて、上記の
動作を詳細に説明する。
【0113】制御マイコン13は、IEEE1394の
トランザクションを実現し、バス接続用ノードA5、バ
ス接続用ノードB6の送受信を制御している。
【0114】ここで、IEEE1394バス2でバスリ
セットが発生したとする。その結果IEEE1394バ
ス2が初期化され、バス接続用ノードを含む任意のノー
ドがサイクルマスターになったとする。
【0115】バス接続用ノードA5は、サイクルマスタ
ーノードから送信されたサイクルスタートパケットを受
信すると、そのサイクルスタートパケットに記述された
サイクルタイムをサイクルタイマー10にセットする
(バス接続用ノードA5自身がサイクルマスターである
場合は、サイクルスタートパケットを送信するのみ)。
【0116】バス接続用ノードA5とバス接続用ノード
B5各々に内蔵のサイクルタイマー10,11は、その
値をCycle_offset検出手段及び差分計算手
段にに供給している。
【0117】バス接続用ノードA5は、内蔵しているサ
イクルタイマーのサイクル位置を基準に、例えば、1サ
イクルに1回のCycleSyncパルス32をバス接
続用ノードB5のサイクルタイマー11及び、Cycl
e_offset一致検出手段18に供給している。
【0118】Cycle_offset一致検出手段1
8は、いずれかのIEEE1394バス上でバスリセッ
トが発生すると、サイクルタイマー10とサイクルタイ
マー11のCycle_offsetの比較を開始す
る。これは、先のCycle_syncパルス32を用
いて、1サイクルに一回行われる。
【0119】通常、バスリセット直後は、サイクルタイ
マー値30とサイクルタイマー値38のCycle_o
ffsetは、まだ一致していないので、Cycle_
offset一致検出手段18は、値が一致していない
ことを示す不一致パルス37を送出する。
【0120】同時に、サイクルタイマー10のサイクル
位置が、サイクルタイマー11の直前のサイクル位置に
時間的に近いか、サイクルタイマー11の次のサイクル
位置に時間的に近いかを検出する。この検出は、サイク
ルタイマー値30のCycle_offsetの値とサ
イクルタイマー値38のCycle_offsetの値
とを比較することによって行う。
【0121】サイクル同期信号のタイミングが図5のよ
うであったとする。すなわち、サイクルタイマー10の
示すサイクル位置が、サイクルタイマー11の示す直前
のサイクル位置に時間的に近いとする。この場合、Cy
cle_offset一致検出手段18は、サイクルタ
イマー11がCycle_offsetを3071カウ
ントするように制御する。従って、サイクルタイマー1
1のCycle_offsetがキャリーアップする時
間は通常より短くなる。また、サイクルタイマー10の
示すサイクル位置が、サイクルタイマー11の示す直後
のサイクル位置に時間的に近い場合には、Cycle_
offset一致検出手段18は、サイクルタイマー1
1がCycle_offsetを3073カウントする
ように制御する。
【0122】以下、ノードA5のサイクル位置が、ノー
ドB6の直前のサイクル位置に時間的に近いとして説明
する。
【0123】サイクルタイマー11のCycle_of
fsetがキャリーアップする時間は通常より短くなっ
ているので、徐々にサイクルタイマー11のCycle
_offsetの値はサイクルタイマー10のCycl
e_offsetの値に近づいて行く。
【0124】Cycle_offset一致検出手段1
8は、サイクルタイマー値30とサイクルタイマー値3
8の誤差が所定の値以内になったときに両者の値が一致
したと判断する。ここで、所定の値とは、IEEE13
94バス2とIEEE1394バス3の間で送受信バッ
ファがオーバーフローやアンダーフローすることなく正
常にアイソクロナスパケットを転送することが出来るよ
うなる値であり、設計によって異なる。
【0125】Cycle_offset一致検出手段1
8は、サイクルタイマー値30とサイクルタイマー値3
8のCycle_offsetが一致したと判断する
と、一致パルス36を送出する。
【0126】サイクルタイマー11が、Cycle_o
ffset一致検出手段18から一致パルス36を受信
した後は、CycleSyncパルス32を基準に、サ
イクルタイマー10のCycle_countのカウン
トアップ時刻と同期して、サイクルタイマー11のCy
cle_offsetをCycle_countにキャ
リーアップする。このように、一致パルス6を受信して
からは、サイクルタイマー11は、CycleSync
パルス32をキャリー制御の基準パルスとして用いるこ
とにより、サイクル同期を維持する。
【0127】キャリー制御の基準パルスは、Cycle
Syncパルス32でなくとも、バス接続ノードA5が
サイクルスタートパケットを送信または受信したことを
示す信号(CycleStartPacket送受信パ
ルス)や、サイクル位置よりも時間的に手前の信号など
を基準に生成しても良い。
【0128】一方、差分計算手段16は、サイクルタイ
マー11の値からサイクルタイマー10の値を引き算し
た差分を計算し、その値を差分34として出力してい
る。
【0129】ラッチ17は、一致パルス36を受け取っ
たタイミングで、差分34を記憶し、加算器19と加算
器20に供給する。
【0130】ノード0(7)がIEEE1394バス2
に転送すべきアイソクロナスパケットを送信すると、バ
ス接続用ノードA5はそのアイソクロナスパケットを受
信し、受信バッファ22に格納する。
【0131】加算器20は、このアイソクロナスパケッ
トに含まれるタイムスタンプの値を取り出し、その値に
差分34を加算し、加算後の値に、さらに受信サイクル
から送信サイクルに至るサイクル遅延時間(送受信バッ
ファにより遅延させるサイクル数)を見越した値を加算
し、この値にタイムスタンプの値を書き替えて、送信バ
ッファ23に格納する。
【0132】ノードB6は、次のアイソクロナス周期が
始まると、送信バッファ23に格納されているアイソク
ロナスパケットをIEEE1394バス3に出力する。
【0133】また、ノード2(9)がIEEE1394
バス2に転送すべきアイソクロナスパケットを送信する
と、ノードB6はそのアイソクロナスパケットを受信
し、受信バッファ24に格納する。
【0134】加算器19は、このアイソクロナスパケッ
トに含まれるタイムスタンプの値を取り出し、その値か
ら差分34を減算し、減算後の値に、さらに受信サイク
ルから送信サイクルに至るサイクル遅延時間(送受信バ
ッファにより遅延させるサイクル数)を見越した値を加
算し、この値にタイムスタンプの値を書き替えて、送信
バッファ21に格納する。
【0135】ノードA5は、次のアイソクロナス周期が
始まると、送信バッファ21に格納されているアイソク
ロナスパケットをIEEE1394バス2に出力する。
【0136】このように、バス接続装置1は、バス接続
用ノードA5がサイクルマスタになっているか、いない
かに関わらす、アイソクロナスパケットを一方のIEE
E1394バスから他方のIEEE1394バスに問題
なく転送することが出来る。
【0137】なお、本実施の形態では、バス接続装置1
がIEEE1394バス2、IEEE1394バス3の
2つIEEE1394バスに接続されているとして説明
したが、これに限らない。
【0138】IEEE1394バス接続装置1が3つ以
上の独立したIEEE1394バスに接続されていても
構わない。
【0139】例えば、図6に、4つのIEEE1394
バスが接続されたバス接続装置80を示す。バス接続用
ノードA5は、IEEE1394バス2にバスリセット
が起こった際、必ずしもIEEE1394バス2のサイ
クルマスタになるとは限らない。またバス接続用ノード
B6、バス接続用ノードC81、バス接続用ノードD8
4は、必ずサイクルマスターになるものである。同期手
段81は、本実施の形態で説明したようにして、バス接
続用ノードA5に、バス接続用ノードB6、バス接続用
ノードC81、バス接続用ノードD84の各ノードを同
期させる。従って、バス接続用ノードA5がサイクルマ
スターになっていない場合でも、IEEE1394バス
2のノード0(7)から他のIEEE1394バスに接
続されているどのノードにもアイソクロナスパケットを
転送することが出来る。また、IEEE1394バス2
以外のIEEE1394バスに接続されたどのノードか
らでも、IEEEバス2に接続されたノードにアイソク
ロナスパケットを転送することが出来る。
【0140】要するに、IEEE1394バス接続装置
が、複数のIEEE1394バスを接続する場合にも本
実施の形態を適用することが出来る。
【0141】さらに、本実施の形態のIEEE1394
バス接続装置が3つ以上の独立したIEEE1394バ
スに接続されている場合で、IEEE1394バス接続
装置のノードのうち各IEEE1394バスのサイクル
マスタにならないノードが二つ以上現れても、アイソク
ロナスパケットを転送することが出来る。
【0142】例えば、図6で、バス接続用ノードA5
は、IEEE1394バス2にバスリセットが起こった
際、必ずしもIEEE1394バス2のサイクルマスタ
ーになるとは限らず、さらに、バス接続用ノードB6、
バス接続用ノードC81、バス接続用ノードD84もそ
れぞれのバスのサイクルマスタに必ずしもなるとは限ら
ないとする。この場合、バス接続用ノードC81がサイ
クルマスターになった場合、同期手段81は本実施の形
態で説明したようにバス接続用ノードA5にバス接続用
ノードC81を同期させる。従って、バス接続用ノード
C81がサイクルマスターになった場合、IEEE13
94バス2に接続されている任意のノードとIEEE1
394バス86に接続されている任意のノードとの間で
アイソクロナスパケットを転送することが出来るように
なる。このように、バス接続用ノードB6、バス接続用
ノードC81、バス接続用ノードD84のうちサイクル
マスターになったノードのIEEE1394バスとIE
EE1394バス2との間でアイソクロナスパケットの
転送が可能になる。
【0143】さらに、本実施の形態では、Cycle_
offsetのキャリーアップするタイミングを通常の
3072カウントから3071または3073カウント
にして制御するとして説明したが、これに限らない。3
070または3074カウントなど、要するにアイソク
ロナスパケットの転送及び送受信に支障が生じない範囲
であれば任意のカウント数で制御して構わない。ここ
で、アイソクロナスパケットの転送に支障がない範囲と
は、送受信用バッファがオーバーフローやアンダーフロ
ーを起こすことなくアイソクロナスパケットの送受信が
可能な範囲と、サイクル周期が変化することによって接
続されたノードが誤動作を起こさない範囲である。
【0144】さらに、本実施の形態では、バスリセット
後に、サイクル同期位置の誤差が所定の値以内に達する
時刻まで、サイクル周期の増加または減少のいずれかの
制御をおこなって、その誤差が所定の値以内に達した後
は、キャリー制御パルス90を受信したタイミングで、
サイクルタイマー11のCycle_offsetをC
ycle_coutにキャリーアップさせて同期を維持
するとして説明したがこれに限らない。サイクル同期位
置の誤差が所定の値以内に達した後、サイクル同期位置
の誤差が所定の値以内に達した時の差分計算手段16で
計算されたサイクルタイマー11からサイクルタイマー
10を減算した差分値を保持しておき、この差分値を周
期的にサイクルタイマー5の値に加えたものをサイクル
タイマー11の値にセットするようにしても同期を維持
することが出来る。
【0145】さらに、本実施の形態では、バスリセット
後に、サイクル同期位置の誤差が所定の値以内に達する
時刻まで、サイクル周期の増加または減少のいずれかの
制御を行って、その誤差が所定の値以内に達した後は前
記制御をオフとするとして説明したが、これに限らな
い。サイクルタイマー10、サイクルタイマー11の値
を常時監視し、サイクル同期位置の誤差を計算し、計算
された誤差を基にフィードバック制御によりサイクル同
期をとるようにしても構わない。つまり、バスリセット
後のサイクルタイマー10とサイクルタイマー11のサ
イクル同期位置の誤差を計算し、その誤差を少なくする
ように、Cycle_contのカウント数を大きくま
たは小さくすることによって、サイクルタイマー11の
サイクル周期を短くまたは長くするように制御する。そ
して、サイクルタイマー10とサイクルタイマー11の
サイクル同期位置の誤差が小さくなると、サイクルカウ
ンタ11のサイクル周期をもとに戻す。さらに、再びこ
の誤差が大きくなると、この誤差を小さくするように、
サイクルカウンタ11のサイクル周期を短くまたは長く
する。このようにフィードバック制御を用いて、サイク
ル同期を確立、維持することも出来る。
【0146】さらに、本実施の形態では、サイクルタイ
マー11のサイクルオフセットがサイクルカウントへキ
ャリーアップする時の値を、通常の3071から増加ま
たは減少させることによってサイクル周期のタイミング
をサイクルタイマー10に一致させるとして説明した
が、これに限らない。
【0147】サイクルタイマー11のサイクルオフセッ
トのカウントアップ値を一時的に1より大きい値に設定
することによって、サイクル周期を減少させるか、また
は、サイクルタイマー11のサイクルオフセットのカウ
ントアップ値を一時的に1より小さな値に設定すること
によって、サイクル周期を増加させることによってサイ
クル周期のタイミングをサイクルタイマー10に一致さ
せても構わない。
【0148】ただし、サイクルタイマー11のサイクル
オフセットのカウントアップ値を一時的に1より大きい
値に設定するとは、例えばサイクルオフセットが300
0から3002にカウントアップすることであり、また
一時的に1より小さな値に設定するとは、例えばサイク
ルオフセットが一時的にカウントアップしないことや、
3001から3000のように一時的に減少すること
(カウントアップ値を負の数に設定)である。
【0149】また、サイクル周期のさらなる緩やかな可
変を実現するために、サイクルオフセットの下位に小数
点以下をカウントするM(Mは整数)ビットのカウンタ
を付加し、小数点以下の精度で上記カウントアップ値ま
たはキャリーアップ値を制御しても構わない。このよう
にサイクルタイマーにさらに下位ビットを付加すること
により、IEEE1394規格で規定された100pp
mの精度内でサイクル周期を制御することが可能にな
る。
【0150】さらに、本発明のIEEE1394バス接
続装置の全部または一部の手段の全部または一部の機能
をコンピュータにより実行させるためのプログラム及び
/またはデータを担持した媒体であって、コンピュータ
により処理可能なことを特徴とする媒体も本発明に属す
る。
【0151】さらに、本発明のIEEE1394バス接
続装置の全部または一部の手段の全部または一部の機能
をコンピュータにより実行させるためのプログラム及び
/またはデータであることを特徴とする情報集合体も本
発明に属する。
【0152】さらに、本発明のデータとは、データ構
造、データフォーマット、データの種類などを含む。ま
た、本発明の媒体とは、ROM等の記録媒体、インター
ネット等の伝送媒体、光・電波・音波等の伝送媒体を含
む。また、本発明の担持した媒体とは、例えば、プログ
ラム及び/またはデータを記録した記録媒体、やプログ
ラム及び/またはデータを伝送する伝送媒体等を含む。
また、本発明のコンピュータにより処理可能とは、例え
ば、ROMなどの記録媒体の場合であれば、コンピュー
タにより読みとり可能であることであり、伝送媒体の場
合であれば、伝送対象となるプログラム及び/またはデ
ータが伝送の結果として、コンピュータにより取り扱え
ることであることを含む。
【0153】さらに、上記実施の形態のいずれかに記載
のIEEE1394バス接続装置1の全部または一部の
手段の全部または一部の機能をコンピュータにより実行
させるためのプログラム及び/またはデータを記録した
プログラム記録媒体は、コンピュータにより読み取り可
能であり、読み取られた前記プログラム及び/またはデ
ータが前記コンピュータと協動して前記機能を実行する
プログラム記録媒体であっても良い。
【0154】さらに、本発明の情報集合体とは、例え
ば、プログラム及び/またはデータ等のソフトウエアを
含むものである。
【0155】
【発明の効果】以上説明したところから明らかなよう
に、本発明は、IEEE1394バス接続装置のバス接
続用ノードのいずれかのノードがサイクルマスタになれ
なくても、他のバスへアイソクロナス転送を行うことが
出来るIEEE1394バス接続装置、媒体及び情報集
合体を提供することが出来る。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態におけるIEEE1
394バスシステムの構成を示す図
【図2】本発明の第1の実施の形態におけるバス接続装
置の構成を示すブロック図
【図3】本発明の第1の実施の形態におけるサイクルタ
イマーを説明する図
【図4】本発明の第1の実施の形態にバスリセットが発
生した場合に、徐々に同期を取る必要があることを示す
ためのサイクルタイマーの値とサイクル位置を示すタイ
ムチャート図
【図5】本発明の第1の実施の形態にバスリセットが発
生した場合のサイクルタイマーの値とサイクル位置を示
すタイムチャート図
【図6】本発明の第1の実施の形態における3つ以上の
IEEE1394バスが接続されたバス接続装置の構成
を示す図
【図7】従来のIEEE1394バスシステムの構成を
示す図
【図8】従来のIEEE1394バスシステムにおける
一方のバスから他方のバスへアイソクロナスパケットが
転送される際のタイムチャート図
【符号の説明】
1 バス接続装置 2 IEEE1394バス 3 IEEE1394バス 4 内部バス 5 バス接続用ノードA 6 バス接続用ノードB 7 ノード0 8 ノード1 9 ノード2 10 サイクルタイマー 11 サイクルタイマー 12 コンポーネント 13 制御マイコン 16 差分計算手段 17 ラッチ 18 Cycle_offset一致検出手段 19 加算器 20 加算器 21 送信バッファ 22 受信バッファ 23 送信バッファ 24 受信バッファ
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B077 AA02 FF02 GG11 NN02 5K033 AA09 CB08 CB14 CC01 DA01 DA15 DB04 EA03 5K034 AA20 BB06 DD03 EE05 FF11 HH01 HH02 HH04 HH65 KK04 PP05 QQ04

Claims (22)

    【特許請求の範囲】
  1. 【請求項1】 複数の独立したIEEE1394バスを
    接続し、前記独立したIEEE1394バス間で、少な
    くともアイソクロナスパケットを転送するIEEE13
    94バス接続装置であって、 前記独立した各々のIEEE1394バス上に、前記パ
    ケットを送信もしくは受信するための各々のバス接続用
    ノードと、 前記バス接続用ノードのいずれか1つを基準ノードと
    し、前記基準ノードを除く他のバス接続用ノードの少な
    くとも1つがサイクルマスターになった際、前記基準ノ
    ードのサイクルタイマーに、前記基準ノード以外のサイ
    クルマスターになったバス接続用ノードのサイクルタイ
    マーを同期させる同期手段とを備えたことを特徴とする
    IEEE1394バス接続装置。
  2. 【請求項2】 前記同期手段は、前記他のバス接続用ノ
    ードのサイクルタイマー値を穏やかに可変し、少なくと
    もサイクル周期を同期させることを特徴とする請求項1
    記載のIEEE1394バス接続装置。
  3. 【請求項3】 前記同期手段は、前記他のバス接続用ノ
    ードのサイクルタイマーのサイクルカウント部のカウン
    トアップ時刻を前記基準ノードのサイクルタイマーのサ
    イクルカウント部のカウントアップ時刻に実質上一致さ
    せることを特徴とする請求項2記載のIEEE1394
    バス接続装置。
  4. 【請求項4】 前記サイクル周期の同期は、前記他のバ
    ス接続用ノードのサイクルタイマーのうち、サイクルオ
    フセット部のカウントアップ値を、一時的に1より大き
    い値に設定することによりサイクル周期を減少させるこ
    とによって行われることを特徴とする請求項2または3
    に記載のIEEE1394バス接続装置。
  5. 【請求項5】 前記サイクル周期の同期は、前記他のバ
    ス接続用ノードのサイクルタイマーのうち、サイクルオ
    フセット部のカウントアップ値を、一時的に1より小さ
    い値に設定することによりサイクル周期を増加させるこ
    とによって行われることを特徴とする請求項2または3
    に記載のIEEE1394バス接続装置。
  6. 【請求項6】 前記サイクル周期の同期は、前記他のバ
    ス接続用ノードのサイクルタイマーのうち、サイクルオ
    フセット部がサイクルカウント部へキャリーアップする
    時の値を、通常の3071から増加させることによりサ
    イクル周期を増加させることによって行われることを特
    徴とする請求項2または3に記載のIEEE1394バ
    ス接続装置。
  7. 【請求項7】 前記サイクル周期の同期は、前記他のバ
    ス接続用ノードのサイクルタイマーのうち、サイクルオ
    フセット部がサイクルカウント部へキャリーアップする
    時の値を、通常の3071から減少させることによりサ
    イクル周期を減少させることによって行われることを特
    徴とする請求項2または3に記載のIEEE1394バ
    ス接続装置。
  8. 【請求項8】 前記同期手段は、前記他のバス接続用ノ
    ードのサイクルタイマーのサイクルオフセットのさらに
    下位に少数点以下をカウントするM(Mは正の整数)ビ
    ットのカウンタ値を付加し、少数点以下の精度で前記カ
    ウントアップ値または前記キャリーアップ値を制御可能
    なことを特徴とする請求項4〜7のいずれかに記載のI
    EEE1394バス接続装置。
  9. 【請求項9】 前記サイクルタイマー値の穏やかな可変
    は、サイクル周期を100ppm以内で可変することを
    特徴とする請求項8記載のIEEE1394バス接続装
    置。
  10. 【請求項10】 前記同期手段は、前記基準ノードのサ
    イクルタイマーと前記他のバス接続用ノードのサイクル
    タイマーを監視することにより、同期誤差を計算する誤
    差計算手段と、 前記計算された同期誤差を基にしたフィードバック制御
    により、サイクル同期を行うフィードバック制御手段と
    を有することを特徴とする請求項2〜9のいずれかに記
    載のIEEE1394バス接続装置。
  11. 【請求項11】 前記フィードバック制御手段は、バス
    リセット後のサイクル同期位置の誤差を基に、サイクル
    周期の増加もしくは減少のうち、いずれの方向が引き込
    み時間がより短いかを判断し、より引き込み時間が短い
    方向へ初期制御を行うことを特徴とする請求項3〜10
    のいずれかに記載のIEEE1394バス接続装置。
  12. 【請求項12】 前記同期手段は、バスリセット後に、
    サイクル同期位置の誤差が一定値に達する時刻まで、サ
    イクル周期の増加もしくは減少のいずれかの制御を行
    い、前記誤差が一定値に達した後は前記制御をオフと
    し、前記基準ノードのサイクル周期もしくはサイクル同
    期位置を基準に、前記他のバス接続用ノードのサイクル
    タイマーにサイクル位置をセットすることを特徴とする
    請求項3〜9のいずれかに記載のIEEE1394バス
    接続装置。
  13. 【請求項13】 前記サイクル周期の増加もしくは減少
    の制御は、バスリセット後のサイクル同期位置の誤差を
    基に、いずれの方向が引き込み時間より短いかを判断
    し、より引き込み時間が短い方向へ制御を行うことを特
    徴とする請求項12記載のIEEE1394バス接続装
    置。
  14. 【請求項14】 前記サイクル位置をセットするとは、
    サイクルオフセット部がサイクルカウント部へキャリー
    アップする動作を直接制御し、前記他のバス接続用ノー
    ドのサイクルタイマーのサイクル位置を、前記基準ノー
    ドのサイクルタイマーのサイクル位置に強制的に実質上
    一致させる動作であることを特徴とする請求項12記載
    のIEEE1394バス接続装置。
  15. 【請求項15】 前記サイクル位置をセットするとは、
    前記サイクル同期位置の誤差が一定値に達した時刻の、
    前記基準ノードのサイクルタイマー値と前記バス接続用
    ノードのサイクルタイマー値の差分値を用いて、前記基
    準ノードのサイクルタイマー値を基準に前記差分値で補
    正された値を、前記バス接続用ノードのサイクルタイマ
    ーに周期的にセットし、間接的にサイクル位置を実質上
    一致させる動作である事を特徴とする請求項12記載の
    IEEE1394バス接続装置。
  16. 【請求項16】 前記サイクル同期位置の誤差が一定値
    に達した後とは、前記サイクル同期位置の誤差が、異な
    るIEEE1394バス間でアイソクロナスパケットの
    転送が行える範囲内に達した後であることを特徴とする
    請求項12記載のIEEE1394バス接続装置。
  17. 【請求項17】 前記独立したIEEE1394バス間
    で、アイソクロナスパケットを転送する際、転送元のI
    EEE1394バスのバス接続用ノードでのアイソクロ
    ナスパケット受信時のサイクルタイムと前記転送先のI
    EEE1394バスのバス接続用ノードでの前記アイソ
    クロナスパケット送信時のサイクルタイムの差分値を計
    算する差分計算手段と、 前記差分値の少なくとも一部を、前記転送するアイソク
    ロナスパケットに含まれるタイムスタンプに加算もしく
    は減算する演算手段とを備えたことを特徴とする請求項
    1〜16のいずれかに記載のIEEE1394バス接続
    装置。
  18. 【請求項18】 前記差分計算手段は、前記アイソクロ
    ナスパケット受信時の転送元バスのサイクルタイムと転
    送先バスのサイクルタイムの差分と、前記アイソクロナ
    スパケット受信から送信までの所要時間を用いて計算す
    ることを特徴とする請求項17記載のIEEE1394
    バス接続装置。
  19. 【請求項19】 前記差分値の少なくとも一部は、サイ
    クルカウントの差分値の一部を含むことを特徴とする請
    求項17または18に記載のIEEE1394バス接続
    装置。
  20. 【請求項20】 前記アイソクロナスパケットの転送
    は、前記転送元のIEEE1394バスと前記転送先の
    IEEE1394バスの同期が確立した後に受信したパ
    ケットから転送を開始することを特徴とする請求項17
    〜19のいずれかに記載のIEEE1394バス接続装
    置。
  21. 【請求項21】 請求項1〜20のいずれかに記載のI
    EEE1394バス接続装置本発明の全部または一部の
    手段の全部または一部の機能をコンピュータにより実行
    させるためのプログラム及び/またはデータを担持した
    媒体であってコンピュータにより処理可能なことを特徴
    とする媒体。
  22. 【請求項22】 請求項1〜20のいずれかに記載のI
    EEE1394バス接続装置の全部または一部の手段の
    全部または一部の機能をコンピュータにより実行させる
    ためのプログラム及び/またはデータであることを特徴
    とする情報集合体。
JP2000117088A 2000-04-18 2000-04-18 Ieee1394バス接続装置、媒体及び情報集合体 Pending JP2001308868A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000117088A JP2001308868A (ja) 2000-04-18 2000-04-18 Ieee1394バス接続装置、媒体及び情報集合体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000117088A JP2001308868A (ja) 2000-04-18 2000-04-18 Ieee1394バス接続装置、媒体及び情報集合体

Publications (1)

Publication Number Publication Date
JP2001308868A true JP2001308868A (ja) 2001-11-02

Family

ID=18628457

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000117088A Pending JP2001308868A (ja) 2000-04-18 2000-04-18 Ieee1394バス接続装置、媒体及び情報集合体

Country Status (1)

Country Link
JP (1) JP2001308868A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005011201A1 (ja) * 2003-07-24 2005-02-03 Kabushiki Kaisha Yaskawa Denki マスター・スレーブ同期通信方式
US7055050B2 (en) 2001-06-15 2006-05-30 Nec Corporation Network synchronization technique
JP2008504725A (ja) * 2004-06-26 2008-02-14 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング バスシステムの制御方法、バスシステムの装置およびバスシステム
JP2008537243A (ja) * 2005-04-22 2008-09-11 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 2つのバスシステムを同期する方法および装置、並びに2つのバスシステムから成る構成
JP2009239454A (ja) * 2008-03-26 2009-10-15 Nec Electronics Corp 時間帯予約型ネットワークシステム、フレーム転送方法及びネットワーク装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7055050B2 (en) 2001-06-15 2006-05-30 Nec Corporation Network synchronization technique
WO2005011201A1 (ja) * 2003-07-24 2005-02-03 Kabushiki Kaisha Yaskawa Denki マスター・スレーブ同期通信方式
GB2419070A (en) * 2003-07-24 2006-04-12 Yaskawa Denki Seisakusho Kk Master-slave synchronization communication method
GB2419070B (en) * 2003-07-24 2007-07-11 Yaskawa Denki Seisakusho Kk Master-slave synchronization communication method
JP2008504725A (ja) * 2004-06-26 2008-02-14 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング バスシステムの制御方法、バスシステムの装置およびバスシステム
US9319237B2 (en) 2004-06-26 2016-04-19 Robert Bosch Gmbh Method and device for controlling a bus system and a corresponding bus system
JP2008537243A (ja) * 2005-04-22 2008-09-11 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング 2つのバスシステムを同期する方法および装置、並びに2つのバスシステムから成る構成
US8321612B2 (en) 2005-04-22 2012-11-27 Robert Bosch Gmbh Method and device for synchronizing two bus systems by transmission of a time associated trigger signal from one system to another
JP2009239454A (ja) * 2008-03-26 2009-10-15 Nec Electronics Corp 時間帯予約型ネットワークシステム、フレーム転送方法及びネットワーク装置

Similar Documents

Publication Publication Date Title
US6128318A (en) Method for synchronizing a cycle master node to a cycle slave node using synchronization information from an external network or sub-network which is supplied to the cycle slave node
US11050501B2 (en) Performing PHY-level hardware timestamping and time synchronization in cost-sensitive environments
US10931391B2 (en) One-step time stamping of synchronization packets for networked devices
US7730230B1 (en) Floating frame timing circuits for network devices
JP3698074B2 (ja) ネットワーク同期方法、lsi、バスブリッジ、ネットワーク機器、およびプログラム
EP1525693B1 (en) Clock synchronizing method over fault-tolerant etherent
US6959017B2 (en) Synchronizing system using IEEE 1394 serial bus standard
US7058729B1 (en) Method and device for the synchronisation between two networks
US11316605B2 (en) Method, device, and computer program for improving synchronization of clocks in devices linked according to a daisy-chain topology
JP3977044B2 (ja) 同期方法及び同期装置
JP5127482B2 (ja) タイミング同期方法、同期装置、同期システム及び同期プログラム
CN101977104A (zh) 基于ieee1588精确时钟同步协议***及其同步方法
JP2008113457A (ja) 多数のバスのサイクルタイムを同期させる方法と装置及び対応するバスシステム
JPH0373636A (ja) データ同期伝送方式
WO2010057398A1 (zh) 透传时钟的实现装置和方法
US20130238826A1 (en) Device and method for global time information in event-controlled bus communication
KR20030084984A (ko) 버스 시스템의 적어도 하나의 노드의 동기화를 위한 방법및 장치 및 이에 상응하는 버스 시스템
JP2000307557A (ja) ネットワーク同期システム及びネットワーク同期方法
US6757304B1 (en) Method and apparatus for data communication and storage wherein a IEEE1394/firewire clock is synchronized to an ATM network clock
US10853288B2 (en) Bus system
JP2001308868A (ja) Ieee1394バス接続装置、媒体及び情報集合体
JPH11266236A (ja) 情報処理装置および方法、情報処理システムおよび方法、並びに提供媒体
WO2023203772A1 (ja) デバイストランスレータ、通信システム、通信方法、および通信プログラム
US7684530B2 (en) Circuit arrangement and method for synchronised transmission of audio data streams in a bus system
CN115396059A (zh) 一种时间同步方法和装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041005

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041012

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050222