(57)【特許請求の範囲】
【請求項１】
物理層およびリンク層を備えたチップセットを用いて通信相手とデータ通信を行う通信装置であって、
前記通信装置のチップセットと前記通信相手のチップセットとの間の不具合を修正し、前記通信装置と前記通信相手との間のコネクションを確立し易くするための複数のファームウェアを記憶する記憶手段と、
前記通信相手のチップセットに対応するファームウェアを前記複数のファームウェアの中から選択する選択手段とを有し、
前記選択手段によって選択されたファームウェアを用いて前記通信装置のチップセットを制御することを特徴とする通信装置。
【請求項２】
前記複数のファームウェアの一つを新しいバージョンのファームウェアに修正する機能を有することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記通信装置のチップセットと前記通信相手のチップセットとの間の不具合を修正し、前記通信装置と前記通信相手との間のコネクションを確立し易くするための新しいファームウェアを前記記憶手段に追加する機能を有することを特徴とする請求項１または２に記載の通信装置。
【請求項４】
前記新しいバージョンのファームウェアを前記通信装置に接続された記録媒体から得ることを特徴とする請求項２に記載の通信装置。
【請求項５】
前記新しいバージョンのファームウェアを他の機器から得ることを特徴とする請求項２に記載の通信装置。
【請求項６】
前記新しいバージョンのファームウェアを所定のウェブサイトから得ることを特徴とする請求項２に記載の通信装置。
【請求項７】
前記新しいファームウェアを前記通信装置に接続された記録媒体から得ることを特徴とする請求項３に記載の通信装置。
【請求項８】
前記新しいファームウェアを他の機器から得ることを特徴とする請求項３に記載の通信装置。
【請求項９】
前記新しいファームウェアを所定のウェブサイトから得ることを特徴とする請求項３に記載の通信装置。
【請求項１０】
前記チップセットは、ＩＥＥＥ１３９４−１９９５規格に準拠することを特徴とする請求項１〜９の何れか１項に記載の通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えば、複数のファームウェアを備えた通信装置に関するものである。
【０００２】
【従来の技術】
近年、ＩＥＥＥ１３９４−１９９５規格に準拠したディジタル通信インターフェースが開発され、ディジタルビデオレコーダやカメラ一体型ディジタルビデオレコーダ等のＡＶ（オーディオ／ビデオ）機器のディジタル通信インターフェースとして採用されている。
【０００３】
【発明が解決しようとする課題】
ＩＥＥＥ１３９４−１９９５規格に準拠したディジタル通信インターフェースは、通常、ＩＥＥＥ１３９４−１９９５規格に準拠した物理層、リンク層及びそれらの上位層の一部を備えたチップセットを内蔵している。
【０００４】
しかしながら、異なるメーカによって製造されたチップセットを備えたディジタル通信インターフェースと通信を行う場合には、同じ規格に準拠したチップセットを備えているにもかかわらず、正常に動作しない場合があるという問題がある。特に、複雑な通信手順を備えた通信プロトコルに従ってデータ通信を行う場合には、コネクション（通信相手との間の論理的な通信路）が確立できない場合や、データ通信を正常に開始または終了することができない場合があるという問題がある。
【０００５】
また、同じメーカによって製造されたチップセットを備えたディジタル通信インターフェースと通信を行う場合であっても、チップセットのバージョンが異なる場合には、やはり正常に動作しない場合があるという問題がある。
【０００６】
本発明は、上述の問題にかんがみてなされたものであり、コネクションを確立し易くし、安定したデータ通信を行うことを目的とする。
【０００７】
【課題を解決するための手段】
本発明に係る通信装置は、例えば、物理層およびリンク層を備えたチップセットを用いて通信相手とデータ通信を行う通信装置であって、前記通信装置のチップセットと前記通信相手のチップセットとの間の不具合を修正し、前記通信装置と前記通信相手との間のコネクションを確立し易くするための複数のファームウェアを記憶する記憶手段と、前記通信相手のチップセットに対応するファームウェアを前記複数のファームウェアの中から選択する選択手段とを有し、前記選択手段によって選択されたファームウェアを用いて前記通信装置のチップセットを制御することを特徴とする。
【００１１】
【発明の実施の形態】
以下、本発明の実施の形態について図面を用いて説明する。
【００１２】
図１は、本実施の形態に係るデータ通信システムの一例を示す図である。
【００１３】
図１において、１０１はディジタルビデオレコーダ、１０２はカメラ一体型ディジタルビデオレコーダ、１０３はディジタルテレビジョン受像機（以下、ＤＴＶ）、１０４はパーソナルコンピュータ（以下、ＰＣ）である。
【００１４】
電子機器１０１〜１０４のそれぞれは、ディジタル通信インターフェース２００を備える。各ディジタル通信インターフェース２００は、ＩＥＥＥ１３９４−１９９５規格に準拠した物理層、リンク層及びそれら上位層を備えたチップセット（以下、ＩＥＥＥ１３９４チップセット）を備える。
【００１５】
また、ＤＴＶ１０３及びＰＣ１０４は、図１に示すように、インターネット１０５と接続可能である。ＤＴＶ１０３及びＰＣ１０４は、所定のウェブサイトから新しいＩＥＥＥ１３９４チップセットに最適なファームウェアや新しいバージョンのファームウェアをダウンロードする。
【００１６】
また、電子機器１０１〜１０４のそれぞれは、記録媒体１０６と接続可能である。記録媒体１０６には、新しいＩＥＥＥ１３９４チップセットに最適なファームウェアや新しいバージョンのファームウェアが記録されている。尚、記録媒体１０６は、半導体メモリ（メモリカード等）、フロッピーディスク、磁気ディスク、光ディスク、ハードディスクなどである。
【００１７】
次に、図２を用いて、本実施の形態に係るディジタル通信インターフェース２００の内部構成の一例を説明する。
【００１８】
図２において、２０１はＩＥＥＥ１３９４チップセット、２０２は種別コード生成部、２０３は選択コード生成部、２０４はファームウェア管理部、２０５はファームウェア記憶部、２０６は制御部、２０７はファームウェア選択部、２０８は記憶媒体である。
【００１９】
ファームウェア記憶部２０５は、複数個のファームウェアを記憶する。各ファームウェアは、自身が備えるＩＥＥＥ１３９４チップセット２０１を制御することによって、自身が備えるＩＥＥＥ１３９４チップセット２０１と通信相手が備えるＩＥＥＥ１３９４チップセット２０１との間の不具合を修正し、コネクション（通信相手との間の論理的な通信路）を確立し易くし、安定したデータ通信を行うための制御プログラムである。各ファームウェアの機能は、通信相手が備えるＩＥＥＥ１３９４チップセットの種類に応じて異なる。
【００２０】
ＩＥＥＥ１３９４チップセット２０１は、通信相手の機器情報を要求するコマンドを送信し、そのコマンドに対応するレスポンスを受信する。本実施の形態では、通信相手の機器情報として、ベンダーＩＤとシリアル番号とを要求する場合について説明する。ＩＥＥＥ１３９４チップセット２０１は、レスポンスを受信し、そのレスポンスに含まれるベンダーＩＤ及びシリアル番号をファームウェア選択部２０７に供給する。
【００２１】
ファームウェア選択部２０７は、図２に示すように、種別コード生成部２０２と選択コード生成部２０３とを含む。種別コード生成部２０２は、通信相手から取得したベンダーＩＤ及びシリアル番号に基づいて、通信相手が具備するＩＥＥＥ１３９４チップセットの種類を判別し、それに対応する種別コードを生成する。また、選択コード生成部２０３は、種別コードに対応する選択コードを生成する。この選択コードは、ファームウェア記憶部２０５が記憶するファームウェアの中の一つを特定するコードである。
【００２２】
図３は、ベンダーＩＤ及びシリアル番号と種別コードとの対応関係の一例を示すテーブルである。種別コード生成部２０２は、図３に示すテーブルを用いて、ベンダーＩＤ及びシリアル番号に対応する種別コードを生成する。
【００２３】
例えば、カメラ一体型ディジタルビデオレコーダ１０２から取得したベンダーＩＤが「００００８０」であり、シリアル番号が「０ｘ００００００００００」〜「０ｘ０１００００００００」の範囲内にある場合、種別コード生成部２０２は、種別コード「０」を生成する。尚、ベンダーＩＤ及びシリアル番号に対応する種別コードが存在しない場合、種別コード生成部２０２は、種別コード「０」を生成する。
【００２４】
図４は、種別コードと選択コードとの対応関係の一例を示すテーブルである。選択コード生成部２０３は、図４に示すテーブルを用いて、種別コードに対応する選択コードを生成する。
【００２５】
例えば、種別コードが「０」を入力した場合、選択コード生成部２０３は、選択コード「００００００００ｂ」を生成する。このコードは、ファームウェア記憶部２０５に記憶されているファームウェアＡを示す。ファームウェアＡは、自身のＩＥＥＥ１３９４チップセット２０１を初期設定に戻す。
【００２６】
また、例えば、種別コードが「１」を入力した場合、選択コード生成部２０３は、選択コード「０１００００００ｂ」を生成する。このコードは、ファームウェア記憶部２０５に記憶されているファームウェアＢを示す。ファームウェアＢは、自身が備えるＩＥＥＥ１３９４チップセット２０１を制御し、通信相手をルートノードにする。尚、ルートノードとは、全ての機器の親となるノードのことであり、ＩＥＥＥ１３９４−１９９５規格で規定されたツリー認識処理（これは、機器間の親子関係を決定してシステムのトポロジを再認識する処理である）で自動的に決定される。
【００２７】
また、例えば、種別コードが「２」を入力した場合、選択コード生成部２０３は、選択コード「１０１１１１１１ｂ」を生成する。このコードは、ファームウェア記憶部２０５に記憶されているファームウェアＣを示す。ファームウェアＣは、自身が備えるＩＥＥＥ１３９４チップセット２０１を制御し、自身及び通信相手が備えるＩＥＥＥ１３９４チップセット２０１のギャップカウント（gap#count）を所定値（例えば、「０ｘ３Ｆ」）に設定する。
【００２８】
また、例えば、種別コードが「３」を入力した場合、選択コード生成部２０３は、選択コード「１１０１１０１０ｂ」を生成する。このコードは、ファームウェア記憶部２０５に記憶されているファームウェアＤを示す。ファームウェアＤは、自身が備えるＩＥＥＥ１３９４チップセット２０１を制御し、通信相手からのＣＴＳコマンドを受信してからそれに対応するＣＴＳレスポンスを返信するまで応答時間を所定値（例えば、「０ｘ１Ａ（＝２６）」ｍｓ）に設定する。尚、ＣＴＳコマンド及びＣＴＳレスポンスについては、ＩＥＣ６１８８３−１規格で規定されている。
【００２９】
ファームウェア管理部２０４は、通信相手の選択コードとその通信相手のノードＩＤとの対応関係を記録し、管理する。制御部２０６は、バスリセットが発生するごとに、ファームウェア管理部２０４が管理する対応関係を更新する。
【００３０】
次に、図５を用いて、本実施の形態に係るディジタル通信インターフェース２００の処理手順の一例を説明する。尚、この手順の一部又は全ては、記憶媒体２０８に格納された制御プログラムに従って、制御部２０６が備えるマイクロコンピュータが実現する。
【００３１】
ステップＳ５０１：
制御部２０６は、ＩＥＥＥ１３９４−１９９５規格に準拠したバスリセットが発生した後、各機器に対して機器情報（本実施の形態では、ベンダーＩＤ及びシリアル番号である）を要求するコマンドを送信する。尚、このコマンドは、ＩＥＥＥ１３９４−１９９５規格に準拠したアイソクロナス転送モードを用いて送信される。また、バスリセットの発生を検出した場合、各機器のＩＥＥＥ１３９４チップセット２０１は、バスの初期化処理（これは、バスリセットが発生する前のシステムのトポロジに関する情報をリセットする処理である）、ツリー認識処理（これは、機器間の親子関係を決定してシステムのトポロジを再認識する処理である）、自己認識処理（これは、各機器のアドレスであるノードＩＤを自動的に設定する処理である）を自動的に実行する。
【００３２】
ステップＳ５０２：
ファームウェア選択部２０７は、各機器から取得したベンダーＩＤ及びシリアル番号に対応する選択コードを生成し、各機器が備えるＩＥＥＥ１３９４チップセット２０１に最適なファームウェアを選択する。ファームウェア管理部２０４は、各機器のノードＩＤと選択コードとの対応関係を記録する。
【００３３】
ステップＳ５０３：
制御部２０６は、最適なファームウェアを選択していない機器があるか否かを判別する。そのような機器がない場合には、ステップＳ５０４に進む。
【００３４】
ステップＳ５０４：
制御部２０６は、通信相手のノードＩＤに対応する選択コードをファームウェア管理部２０４から読み出し、その選択コードに対応するファームウェアに従って自身が備えるＩＥＥＥ１３９４チップセット２０１を制御する。
【００３５】
ステップＳ５０５：
次に制御部２０６は、所定の通信プロトコルに従ってコネクション（通信相手との間の論理的な通信路）を確立する。例えば、ＩＥＥＥ１３９４−１９９５規格が規定するアイソクロナス転送モードを利用したデータ通信を行う場合には、ＩＥＣ６１８８３規格で規定された通信プロトコル手順に従ってコネクションを確立する。ＩＥＥＥ１３９４−１９９５規格が規定するアシンクロナス転送モードを利用したデータ通信を行う場合には、１３９４ＴＡ（1394 Trade Association）で策定されたAsynchronous Serial Bus Connectionsで規定された手順に従ってコネクションを確立する。
【００３６】
ステップＳ５０６：
コネクションを設定した後、制御部２０６は、所定の通信プロトコルに従ってデータ通信を開始する。
【００３７】
ステップＳ５０７：
データ通信を開始した後、制御部２０６は、上述のバスリセットが発生したが否かを判定する。バスリセットの発生が検出された場合、制御部２０６は、ファームウェア管理部２０４に記録された対応関係を更新するために、再びステップＳ５０１の処理を実行する。これにより、システムのトポロジが更新されても、各機器に最適なファームウェアを選択することができる。
【００３８】
以上説明したように、本実施の形態に係るディジタル通信インターフェース２００によれば、通信相手が備えるＩＥＥＥ１３９４チップセットに最適なファームウェアに従って自身が備えるＩＥＥＥ１３９４チップセットを制御することができる。これにより、自身が備えるＩＥＥＥ１３９４チップセットと通信相手が備えるＩＥＥＥ１３９４チップセットとの間の不具合を修正することができ、コネクションの確立し易くすることができ、安定したデータ通信を行うことができる。
【００３９】
次に、ディジタル通信インターフェース２００に新しいファームウェアを追加する手順について説明する。
【００４０】
第１の方法は、記録媒体１０６から新しいファームウェアを読み出し、これをディジタル通信インターフェース２００に追加する方法である。第２の方法は、他の電子機器から新しいファームウェアを受信し、これをディジタル通信インターフェース２００に追加する方法である。第３の方法は、所定のウェブサイトから新しいファームウェアをダウンロードし、これをディジタル通信インターフェース２００に追加する方法である。
【００４１】
電子機器１０１〜１０４のそれぞれは、上述の第１又は第２の方法に従って、新しいファームウェアをディジタル通信インターフェース２００に追加することができる。また、ＤＴＶ１０３及びＰＣ１０４は、更に、上述の第３の方法に従って、新しいファームウェアをディジタル通信インターフェース２００に追加することができる。
【００４２】
まず、第１の方法について詳細に説明する。電子機器１０１〜１０４のそれぞれは、新しいファームウェアとその付加情報（新しいファームウェアに対応する機器情報、種別コード、選択コードを含む）とを記録媒体１０６から読み出し、これらを制御部２０６に供給する。制御部２０６は、新しいファームウェアをファームウェア記憶部２０５に追加したり、古いバージョンのファームウェアを新しいバージョンのファームウェアに修正したりする。また、制御部２０６は、付加情報に含まれる機器情報と種別コードとを種別コード生成部２０２に追加し、付加情報に含まれる種別コードとコードとを選択コード生成部２０３に追加する。
【００４３】
次に、第２の方法について詳細に説明する。電子機器１０１〜１０４のそれぞれは、新しいファームウェアとその付加情報（新しいファームウェアに対応する機器情報、種別コード、選択コードを含む）とを他の電子機器から受信し、これらを制御部２０６に供給する。制御部２０６は、新しいファームウェアをファームウェア記憶部２０５に追加したり、古いバージョンのファームウェアを新しいバージョンのファームウェアに修正したりする。また、制御部２０６は、付加情報に含まれる機器情報と種別コードとを種別コード生成部２０２に追加し、付加情報に含まれる種別コードとコードとを選択コード生成部２０３に追加する。
【００４４】
次に、第３の方法について詳細に説明する。ＤＴＶ１０３及びＰＣ１０４は、新しいファームウェアとその付加情報（新しいファームウェアに対応する機器情報、種別コード、選択コードを含む）とを所定のウェブサイトからダウンロードし、これらを制御部２０６に供給する。制御部２０６は、新しいファームウェアをファームウェア記憶部２０５に追加したり、古いバージョンのファームウェアを新しいバージョンのファームウェアに修正したりする。また、制御部２０６は、付加情報に含まれる機器情報と種別コードとを種別コード生成部２０２に追加し、付加情報に含まれる種別コードと選択コードとを選択コード生成部２０３に追加する。
【００４５】
以上説明したように、本実施の形態に係るディジタル通信インターフェース２００によれば、新しいファームウェアを追加することができるので、新しいＩＥＥＥ１３９４チップセットを備えた電子機器を通信相手とした場合であっても、通信相手が備えるＩＥＥＥ１３９４チップセットに最適なファームウェアに従って自身が備えるＩＥＥＥ１３９４チップセットを制御することができる。これにより、自身が備えるＩＥＥＥ１３９４チップセットと通信相手が備えるＩＥＥＥ１３９４チップセットとの間の不具合を修正することができ、コネクションの確立し易くすることができ、安定したデータ通信を行うことができる。
【００４６】
尚、本実施の形態では、ベンダーＩＤ及びシリアル番号に基づいて通信相手が備えるＩＥＥＥ１３９４チップセットの種類を判別する構成について説明したが、本発明はそのような構成に限るものではない。ベンダーＩＤやシリアル番号以外の機器情報に基づいて通信相手が備えるＩＥＥＥ１３９４チップセットの種類を判別することも可能である。
【００４７】
【発明の効果】
以上説明したように、本発明によれば、コネクションを確立し易くすることができ、安定したデータ通信を行うことができる。
【図面の簡単な説明】
【図１】本実施の形態に係るデータ通信システムの一例を示す図である。
【図２】本実施の形態に係るディジタル通信インターフェース２００の内部構成の一例を示す図である。
【図３】機器情報と種別コードとの対応関係の一例を示す図である。
【図４】種別コードと選択コードとの対応関係の一例を示す図である。
【図５】本実施の形態に係るディジタル通信インターフェース２００の処理手順の一例を説明するフローチャートである。
【符号の説明】
２００  ディジタル通信インターフェース
２０１  ＩＥＥＥ１３９４チップセット
２０２  種別コード生成部
２０３  選択コード生成部
２０４  ファームウェア管理部
２０５  ファームウェア記憶部
２０６  制御部
２０７  ファームウェア選択部
２０８  記憶媒体
【図１】
0003667235.tif 000002
【図２】
0003667235.tif 000003
【図３】
0003667235.tif 000004
【図４】
0003667235.tif 000005
【図５】
0003667235.tif 000006