(57)【要約】【課題】  アプリケーションに依存する処理をソフトウェアで実現する電子機器を提供することを目的とする。【解決手段】  メモリ１３にはソフトウェア１３１がロードされる。ソフトウェア１３１は送信先に送信されるデータをパケット化し、時刻情報をはじめとする送信制御情報をパケットに付加する。スタート時刻設定部１４１はバッファ１４５に蓄積されるパケットを伝送開始する時刻がソフトウェア１３１によって設定される。送信要求部１４３はスタート時刻設定部１４１に設定された時刻とサイクルタイマ１４２にてカウントされる時刻とが一致した際、制御部１４４へパケット送信要求を発行する。送信要求部１４３が制御部１４４へ最初にパケット送信要求を発行した後、送信要求部１４３は所定の周期をもってパケット送信要求を発行する。【選択図】  図２
2005191846.tif 000002
【特許請求の範囲】
【請求項１】
リアルタイムデータを送信可能な電子機器において、
前記リアルタイムデータをパケット化するとともに生成されたパケットが送信される時刻を設定するソフトウェアと、
前記ソフトウェアによって生成されたパケットの送信制御を行う制御部と、
前記ソフトウェアによって設定された時刻に前記パケットの送信命令を前記制御部に発行することで前記パケットを送信する送信手段と、
を具備することを特徴とする電子機器。
【請求項２】
時刻をカウントするタイマをさらに具備し、
前記送信手段は
前記タイマが示す時刻と前記ソフトウェアによって設定された時刻とが一致する場合に前記パケットの送信命令を前記制御部に発行する手段を含む
ことを特徴とする請求項１記載の電子機器。
【請求項３】
リアルタイムデータを送信する電子機器において行われるデータ送信方法において、
前記電子機器の具備するソフトウェアによって前記リアルタイムデータをパケット化するとともに生成されたパケットが送信される時刻を設定し、
前記電子機器の具備する制御部によって前記ソフトウェアによって生成されたパケットの送信を制御し、
前記ソフトウェアによって設定された時刻に前記パケットの送信命令を前記制御部に発行することで前記パケットを送信することを特徴とするデータ送信方法。
【請求項４】
前記電子機器の具備するタイマによって時刻がカウントされ、
前記タイマが示す時刻と前記ソフトウェアによって設定された時刻とが一致する場合に前記パケットの送信命令を前記制御部に発行することを特徴とする請求項３記載のデータ伝送方法。
【請求項５】
パケット化されたリアルタイムデータを受信可能な電子機器において、
時刻をカウントするタイマと、
前記パケットを受信する制御部と、
前記タイマによって示される時刻を前記制御部によって受信された前記パケットに付加する付加手段と、
前記付加手段によって付加された前記時刻に基づいて前記パケットを前記リアルタイムデータを扱うアプリケーションに引き渡すソフトウェアと、
を具備することを特徴とする電子機器。
【請求項６】
パケット化されたリアルタイムデータを受信する電子機器において行われるデータ受信方法において、
前記電子機器の具備するタイマによって時刻がカウントされ、
前記電子機器の具備する制御部によって前記パケットを受信し、
前記タイマによって示される時刻を前記制御部によって受信された前記パケットに付加し、
前記電子機器の具備するソフトウェアによって、前記パケットに付加された前記時刻に基づいて前記パケットを前記リアルタイムデータを扱うアプリケーションに引き渡す
ことを特徴とするデータ受信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送技術に関し、特にリアルタイムデータ転送技術に関する。
【背景技術】
【０００２】
従来、連続的なデータの転送が望まれる映像データといったリアルタイムデータを例えばＩＥＥＥ１３９４といった特定のインタフェイスを介して転送する場合、リアルタイムデータの生成を行う専用回路（例えばＴＶチューナ回路）から送出されるデータをバッファに蓄積し、バッファに蓄積されたデータはハードウェアによってパケット化され、さらにハードウェアによって時刻情報が付加されたパケットを送信先へと送信する、といったように各アプリケーションに依存する処理をハードウェアによって実現していた。
【０００３】
送信側の機器から送信されたリアルタイムデータは受信側の機器によって受信される。受信側の機器は受信したパケットに付加されている時刻情報を参照し、有効な時刻情報を有するパケットをハードウェアによって処理することで、リアルタイムデータを再生していた。
【０００４】
上述における送信側の機器では、生成したパケットにハードウェアによって時刻情報が付加されていたが、トランスポートストリーム（ＴＳ）パケットをソフトウェアによって生成し、ハードウェアを使用して特定のパケットに対して時刻情報を変更するといった技術があった（特許文献１参照。）。
【特許文献１】特開平１１−３４１０５６号公報（第４頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
リアルタイムデータをハードウェアで処理する方式の場合、該ハードウェアに依存するリアルタイムデータのみしか処理することができない。また、リアルタイムデータ処理をハードウェアにて実現している機器は、機器のリリース後にソフトウェアの更新を行うことで実現されるリアルタイムデータ処理機能の追加に制限がある。
【０００６】
しかしながら、近年、プロセッサの高速化に伴って、従来ハードウェア処理によって実現していた機能をソフトウェア処理によって実現可能な状況にある。
【０００７】
そこで、本発明は、リアルタイムデータを扱うアプリケーションに依存する処理をソフトウェアで実現することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１に係る発明では、リアルタイムデータを送信可能な電子機器において、リアルタイムデータをパケット化するとともに生成されたパケットが送信される時刻を設定するソフトウェアと、ソフトウェアによって生成されたパケットの送信制御を行う制御部と、ソフトウェアによって設定された時刻にパケットの送信命令を制御部に発行することでパケットを送信する送信手段とを具備することを特徴とする。
【０００９】
また、上記目的を達成するために、請求項３に係る発明では、リアルタイムデータを送信する電子機器において行われるデータ送信方法において、電子機器の具備するソフトウェアによってリアルタイムデータをパケット化するとともに生成されたパケットが送信される時刻を設定し、電子機器の具備する制御部によってソフトウェアによって生成されたパケットの送信を制御し、ソフトウェアによって設定された時刻にパケットの送信命令を制御部に発行することでパケットを送信することを特徴とする。
【００１０】
また、上記目的を達成するために、請求項５に係る発明では、パケット化されたリアルタイムデータを受信可能な電子機器において、時刻をカウントするタイマと、パケットを受信する制御部と、タイマによって示される時刻を制御部によって受信されたパケットに付加する付加手段と、付加手段によって付加された時刻に基づいてパケットをリアルタイムデータを扱うアプリケーションに引き渡すソフトウェアとを具備することを特徴とする。
【００１１】
また、上記目的を達成するために、請求項６に係る発明では、パケット化されたリアルタイムデータを受信する電子機器において行われるデータ受信方法において、電子機器の具備するタイマによって時刻がカウントされ、電子機器の具備する制御部によってパケットを受信し、タイマによって示される時刻を制御部によって受信されたパケットに付加し、電子機器の具備するソフトウェアによって、パケットに付加された時刻に基づいてパケットをリアルタイムデータを扱うアプリケーションに引き渡すことを特徴とする
【発明の効果】
【００１２】
本発明によれば、リアルタイムデータを扱うアプリケーションに依存する処理をソフトウェアで実現することが可能となる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明に係る実施の形態を、図面を参照して説明する。
【００１４】
図１は、２台の情報処理装置をＩＥＥＥ１３９４規格に準拠したケーブル（以下、ＩＥＥＥ１３９４ケーブルと称す。）で接続した状態を表す図である。
【００１５】
情報処理装置１と情報処理装置２とはＩＥＥＥ１３９４ケーブル３を用いて接続される。情報処理機器１及び情報処理機器２はＩＥＥＥ１３９４ケーブル３を介してＩＥＥＥ１３９４規格に準拠する通信を行なう。
【００１６】
情報処理装置１の第１のブリッジ回路１２には、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１１、メモリ１３及び第２のブリッジ回路１４が接続される。
【００１７】
ＣＰＵ１１は、情報処理機器１全体の制御及びデータの演算等を行なう。
【００１８】
メモリ１３は、オペレーティングシステム、デバイスドライバ、実行対象のアプリケーションプログラム及び処理データ等を格納する。
【００１９】
第２のブリッジ回路１４は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）１５、ＩＥＥＥ１３９４コントローラ１６と接続される。
【００２０】
ＨＤＤ１５は、オペレーティングシステム、デバイスドライバ、実行対象のアプリケーションプログラム等が記憶されており、適時メインメモリ１３に転送される。
【００２１】
ＩＥＥＥ１３９４コントローラ１６はＩＥＥＥ１３９４インタフェイス（Ｉ／Ｆ）１７と接続される。ＩＥＥＥ１３９４コントローラ１６はＩＥＥＥ１３９４通信に関する制御を行う。
【００２２】
情報処理装置２の仕様は情報処理装置１の仕様と同様であるので説明を省略する。情報処理装置１のＩＥＥＥ１３９４インタフェイス１７および情報処理装置２のＩＥＥＥ１３９４インタフェイス１８にＩＥＥＥ１３９４ケーブル３を接続することで、情報処理装置１及び情報処理装置２はＩＥＥＥ１３９４に準拠した通信を行う。次に、情報処理装置１が情報処理装置２へとデータを伝送する場合を説明する。
【００２３】
図２は、データを送信する情報処理装置１側のシステム構成を示す図である。
【００２４】
情報処理装置１のシステム構成の一つであるメモリ１３には、ソフトウェア１３１がロードされる。ソフトウェア１３１は情報処理装置１から情報処理装置２へ送信されるデータをメモリ１３上にて第１のパケット１３２ないし第ｎのパケット１３４へとパケット化する。パケット化の対象となるデータとして、本発明において例えば連続的なデータの転送が望まれる映像データといったリアルタイムデータを考える。ソフトウェア１３１によって生成されるパケットのフォーマットは、リアルタイムデータを扱う各アプリケーションに適合させる。
【００２５】
生成されたパケット群には時刻情報をはじめとする送信制御情報がソフトウェア１３１によって付加される。時刻情報は例えば後述にて説明するスタート時刻設定部１４１に設定される時刻に基づいてパケット群それぞれに付加される。なお、時刻情報は必ずしもパケット群に付加される必要は無く、使用するアプリケーションに応じてパケット群に時刻情報を付加する。
【００２６】
第２のブリッジ回路１４は、スタート時刻設定部１４１、サイクルタイマ１４２、送信要求部１４３、制御部１４４を有する。
【００２７】
スタート時刻設定部１４１は例えばレジスタで構成されており、後述にて説明するバッファ１４５に蓄積されるパケットを転送開始する時刻がソフトウェア１３１によって設定される。この時刻は次に説明するサイクルタイマ１４２によってカウントされる時刻に基づいて設定される。
【００２８】
サイクルタイマ１４２はデータをリアルタイム転送するために設けられるタイマであり、例えばＩＥＥＥ１３９４インタフェイスにて接続される情報処理装置１と情報処理装置２とが時刻合わせをする場合に使用される。時刻合わせについては後述にて説明する。
【００２９】
送信要求部１４３はスタート時刻設定部１４１に設定された時刻とサイクルタイマ１４２にてカウントされる時刻とが一致した際、制御部１４４へパケット送信要求を発行する。また、送信要求部１４３が制御部１４４へ最初にパケット送信要求を発行した（第１のパケット１３２に対するパケット送信要求を発行した）後は、リアルタイムデータの転送を実現するために、送信要求部１４３は所定の周期をもってパケット送信要求を制御部１４４へ発行する。
【００３０】
制御部１４４にはバッファ１４５が設けられる。バッファ１４５には、メモリ１４３上に生成された第１のパケット１３２ないし第ｎのパケット１３４が順次、読み込まれる。メモリ１３上のパケット群はバッファ１４５の容量分まで読み込むことが可能である。制御部１４４はバッファ１４５に読み込まれた各パケットの有する時刻情報をはじめとする送信制御情報に基づいて、各パケットにスタートフラグおよびストップフラグを付加し、各パケットの送信動作制御をおこなう。
【００３１】
バッファ１４５に読み込まれた各パケットは送信要求部１４３から発行される送信要求に基づいて送信先である情報処理装置２へ送信される。メモリ１３上の第１のパケット１３２が送信された後、送信要求部１４３から周期的に発行されるパケット送信要求に基づいて、順次、第２のパケット、第３のパケットが送信先へと送信される。
【００３２】
図３は、パケット送信を説明するフローチャートである。以下、図２および図３を用いて、パケットの生成からパケットの送信までの手順を以下に説明する。
【００３３】
ソフトウェア１３１は情報処理装置１から情報処理装置２へ送信されるデータをメモリ１３上にてパケット化する（ステップ  Ｓ１００）。生成されたパケット群にはソフトウェア１３１によって送信制御情報が付加される（ステップ  Ｓ１０１）。バッファ１４５には、メモリ１４３上に生成されたパケット群が順次、読み込まれる（ステップ  Ｓ１０２）。
【００３４】
バッファ１４５に所望のパケットが読み込まれている状態において、スタート時刻設定部１４１に設定された時刻とサイクルタイマ１４２にてカウントされる時刻とが一致した際（ステップ  Ｓ１０３  Ｙｅｓ）、送信要求部１４３から制御部１４４へ発行されるパケット送信要求に基づいて、該所望のパケットは送信先へと送信される（ステップ  Ｓ１０４）。
【００３５】
送信されるパケット全てが制御部１４４を介して送信先へ送信された場合（ステップ  Ｓ１０５  Ｙｅｓ）送信制御を終了する。一方、送信されるパケットが全て送信先へ送信されてなく、またバッファ１４５に読み込まれていない場合、ステップＳ１０２以降の処理が行われる。
【００３６】
上述にて説明したとおり、ソフトウェアがリアルタイムデータのパケット化およびパケットの転送開始時刻の設定を行い、ハードウェアがソフトウェアの設定した時刻にパケットの送信要求を制御部に発行する処理を行うことで、リアルタイムデータを扱うアプリケーションに依存する処理をソフトウェアにて実現することが可能となる。また、該ソフトウェアの更新を行うことで、機能追加および変更等が可能となる。
【００３７】
図４は、データを受信する情報処理装置２側のシステム構成を示す図である。
【００３８】
第２のブリッジ回路２４は、サイクルタイマ２４１および制御部２４２を有する。サイクルタイマ１４２はデータをリアルタイム転送するために設けられるタイマであり、例えばＩＥＥＥ１３９４インタフェイスにて接続される情報処理装置１と情報処理装置２とが時刻合わせをする場合に使用される。
【００３９】
時刻あわせとは、情報処理装置１の有するクロックジェネレータが発生するクロックの値と情報処理装置２の有するクロックジェネレータが発生するクロックの値とをあわせる操作である。情報処理装置１から送信されるパケットに該情報処理装置１のクロックジェネレータが発生するクロックの値を定期的に付加し、情報処理装置２はクロックの値が付加されたパケットを受信する。情報処理装置２はパケットに付加されている、情報処理装置１のクロックジェネレータが発生したクロックの値を参照することで、情報処理装置２のクロックの値を調整する。
【００４０】
制御部２４２にはバッファ２４３が設けられる。バッファ２４３には、送信側の情報処理装置１から送信されたパケット群が順次、読み込まれる。送信側から送られたパケット群はバッファ２４３の容量分だけ読み込まれることが可能である。バッファ２４３に読み込まれたパケットにはサイクルタイマ２４１によって例えばバッファ２４３に読み込まれた時刻情報が付加される。
【００４１】
サイクルタイマ２４１によって時刻情報が付加されたパケットはメモリ２３に保存される。バッファ２４３に読み込まれ時刻情報が付加されたパケットから例えば第１のパケット２３２、第２のパケット２３３ないし第ｎのパケット２３４といった順番でメモリ２３に記憶される。
【００４２】
メモリ２３に保存されたパケット群はソフトウェア２３１によって処理される。ソフトウェア２３１によるメモリ２３上のパケット群の処理は、使用されるアプリケーションに依存した処理である。ソフトウェアによってパケット群を処理する際、パケット群に付加された時刻情報を用いて処理される。
【００４３】
上述にて説明したとおり、受信したパケットにサイクルタイマ２４１が時刻情報を付加し、該時刻情報が付加されたパケットをメモリ２３上に記憶させることで、ソフトウェア２３１はパケット群それぞれの受信時刻に基づいたリアルタイム処理を行うことが可能となる。
【００４４】
さらに、本発明は上記実施形態をそのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示されている全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００４５】
【図１】２台の情報処理装置をＩＥＥＥ１３９４ケーブルで接続した状態を表す図。
【図２】データを送信する情報処理装置１側のシステム構成を示す図。
【図３】パケット送信を説明するフローチャート。
【図４】データを受信する情報処理装置２側のシステム構成を示す図。
【符号の説明】
【００４６】
１，２…情報処理装置、３…ＩＥＥＥ１３９４ケーブル、
１１…ＣＰＵ、１２，２２…第１のブリッジ回路、１３，２３…メモリ、
１４，２４…第２のブリッジ回路、１５，２５…ＨＤＤ、
１６，２６…ＩＥＥＥ１３９４コントローラ、
１７，２７…ＩＥＥＥ１３９４インタフェイス、
【図１】
2005191846.tif 000003
【図２】
2005191846.tif 000004
【図３】
2005191846.tif 000005
【図４】
2005191846.tif 000006