(57)【要約】      （修正有）【課題】ＩＥＥＥ１３９４などのバスを介して接続された外部機器とＣＰＵバスに接続されたワークメモリとの間のデータ伝送を行うデータ伝送装置について、データ伝送のパフォーマンスを向上する。【解決手段】データ伝送装置は、バスマスタ回路２０を備えている。バスマスタ回路２０は、ＣＰＵバス１００の使用権を得て、ＣＰＵインタフェース部１０及びＣＰＵバス１００を通じて、ＣＰＵバス１００に接続されたワークメモリ１２０との間で直接的にデータ伝送を行う。【選択図】図１
2006293929.tif 000002
【特許請求の範囲】
【請求項１】
第１のバスを介して接続された外部機器と、ＣＰＵが接続された第２のバスに接続されたワークメモリとの間のデータ伝送を行うデータ伝送装置であって、
前記第２のバスに接続されたＣＰＵインタフェース部と、
前記第２のバスの使用権を得て、前記ＣＰＵインタフェース部及び前記第２のバスを通じて、前記ワークメモリとの間でデータ伝送を行うバスマスタ回路とを備えた
ことを特徴とするデータ伝送装置。
【請求項２】
請求項１に記載のデータ伝送装置において、
前記外部機器の要求に係る仮想アドレスから前記ワークメモリにおける実アドレスへの変換に係るアドレス変換情報、及び当該アドレス変換情報に対応する情報であって前記ワークメモリとの間で伝送すべきデータ量を示す伝送情報を格納する情報テーブルを備え、
前記バスマスタ回路は、前記アドレス変換情報を参照して変換した実アドレスに対して、前記伝送情報によって示された量のデータ伝送を行う
ことを特徴とするデータ伝送装置。
【請求項３】
請求項２に記載のデータ伝送装置において、
前記アドレス変換情報及び前記伝送情報は、前記伝送情報によって示された量のデータ伝送が完了した後のトランザクションの合間に更新される
ことを特徴とするデータ伝送装置。
【請求項４】
請求項２に記載のデータ伝送装置において、
前記情報テーブルは、前記アドレス変換情報及び伝送情報の組を複数格納するものであり、
前記バスマスタ回路は、前記複数の組からいずれか一つを順次選択し、当該選択した組に係るアドレス変換情報を参照して変換した実アドレスに対して、当該選択した組に係る伝送情報によって示された量のデータ伝送を行うものである
ことを特徴とするデータ伝送装置。
【請求項５】
請求項２に記載のデータ伝送装置において、
前記バスマスタ回路は、前記ワークメモリとの間でバースト転送を行うものであり、
当該データ伝送装置は、
前記バースト転送に係るデータを一時的に格納するキャッシュを備えた
ことを特徴とするデータ伝送装置。
【請求項６】
請求項１に記載のデータ伝送装置において、
前記バスマスタ回路によるデータ伝送の有効及び無効のいずれかを選択する機能選択部を備えた
ことを特徴とするデータ伝送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ伝送装置に関し、特に、ＩＥＥＥ１３９４バスなどで接続された外部機器とＣＰＵバスに接続されたワークメモリとの間のデータ伝送技術に関する。
【背景技術】
【０００２】
ＩＥＥＥ（Institute of Electrical and Electronic Engineers）１３９４は、１つの機器（ノード）上の仮想的な４８ビットアドレス空間により機器情報（Config-ROM）のやりとりや、コマンド／データ転送を行うことのできる規格であり、高速なデータ転送が可能である。最近、ＳＴＢ（セットトップボックス）とデジタルＴＶとを接続してＥＰＧ（電子プログラムガイド）データの転送を行う用途にＩＥＥＥ１３９４が採用された。ＥＰＧはデータ量が大きく、また、ＥＰＧを使ったメニュー操作の場合、その応答速度の面から、高速なデータ転送性能が要望されているところである。
【０００３】
ＩＥＥＥ１３９４を利用した高速／大容量のデータ転送技術として、ＤＭＡ転送機能を有するデータ伝送装置が公知である（例えば、特許文献１及び２参照）。しかし、デジタルＴＶなどでは、ＣＰＵバス（ローカルバス）１００上にＣＰＵ１１０、ワークメモリ１２０及びデータ伝送装置が接続される構成が一般的であるため、図４に示したように、従来のデータ伝送装置において、ＤＭＡ転送を行うＤＭＡインタフェース部２１０は、ＣＰＵインタフェース部１０及びＣＰＵバス１００を通じてワークメモリ１２０にアクセスする。
【特許文献１】特開２０００―２２４１９５号公報
【特許文献２】特開２００１―３０８９５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
図５は、図４に示したデータ伝送装置によるＣＰＵバスアクセスのタイミングを示す。図５（ａ）は、外部機器へのデータ送信時のタイミングチャートであり、図５（ｂ）は、外部機器からのデータ受信時のタイミングチャートである。図４に示したデータ伝送装置では、ワークメモリ１２０に対するデータ読み出し／書き込みとデータ伝送装置に対するデータ書き込み／読み出しとが交互に発生するため、データ伝送のパフォーマンスが低下してしまう。
【０００５】
また、外部機器のメモリ空間における連続領域がワークメモリ１２０においてそのまま連続領域として確保されているとは言えず、ワークメモリ１２０において複数の領域に分断されて確保されている場合には、外部機器の仮想アドレスとワークメモリ１２０の実アドレスとを対応付ける必要がある。そして、このような対応付けもまた、データ伝送のパフォーマンス低下の原因となる。
【０００６】
上記のようなデータ伝送のパフォーマンスの低下により、例えば、ＩＥＥＥ１３９４を用いてＳＴＢからデジタルＴＶへＥＰＧデータを転送するに際に、画面表示が遅れたり、メニュー操作の反応が鈍くなったりといった問題が生じる。
【０００７】
上記問題に鑑み、本発明は、ＩＥＥＥ１３９４などのバスを介して接続された外部機器とＣＰＵバスに接続されたワークメモリとの間のデータ伝送を行うデータ伝送装置について、データ伝送のパフォーマンスを向上することを課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために本発明が講じた手段は、第１のバスを介して接続された外部機器とＣＰＵが接続された第２のバスに接続されたワークメモリとの間のデータ伝送を行うデータ伝送装置として、第２のバスに接続されたＣＰＵインタフェース部と、第２のバスの使用権を得て、ＣＰＵインタフェース部及び第２のバスを通じてワークメモリとの間でデータ伝送を行うバスマスタ回路とを備えたものとする。
【０００９】
この発明によると、ＣＰＵが接続された第２のバスに接続されたワークメモリに対して、バスマスタ回路がそのバス使用権を得て、直接的にアクセスすることができる。したがって、第１のバスを介して接続された外部機器と第２のバスに接続されたワークメモリとの間のデータ伝送のパフォーマンスが向上する。
【００１０】
好ましくは、上記のデータ伝送装置は、外部機器の要求に係る仮想アドレスからワークメモリにおける実アドレスへの変換に係るアドレス変換情報、及びこのアドレス変換情報に対応する情報であってワークメモリとの間で伝送すべきデータ量を示す伝送情報を格納する情報テーブルを備えたものとする。そして、バスマスタ回路は、アドレス変換情報を参照して変換した実アドレスに対して伝送情報によって示された量のデータ伝送を行うものとする。
【００１１】
さらに好ましくは、アドレス変換情報及び伝送情報は、伝送情報によって示された量のデータ伝送が完了した後のトランザクションの合間に更新される。
【００１２】
一方、好ましくは、情報テーブルは、アドレス変換情報及び伝送情報の組を複数格納するものであり、バスマスタ回路は、これら複数の組からいずれか一つを順次選択し、この選択した組に係るアドレス変換情報を参照して変換した実アドレスに対して、この選択した組に係る伝送情報によって示された量のデータ伝送を行うものとする。
【００１３】
また、好ましくは、バスマスタ回路は、ワークメモリとの間でバースト転送を行うものとする。そして、上記のデータ伝送装置は、バースト転送に係るデータを一時的に格納するキャッシュを備えているものとする。
【００１４】
一方、好ましくは、上記のデータ伝送装置は、バスマスタ回路によるデータ伝送の有効及び無効のいずれかを選択する機能選択部を備えているものとする。
【発明の効果】
【００１５】
以上説明したように本発明によると、ＩＥＥＥ１３９４などのバスを介して接続された外部機器と、ＣＰＵが接続されたバスに接続されたワークメモリとの間で直接的にデータ伝送が行われ、パフォーマンスが向上する。これにより、例えば、ＳＴＢとデジタルＴＶとが接続されたシステムにおいて、ＥＰＧデータの転送が高速化され、また、メニュー操作の反応が機敏になり、快適な操作性が実現される。
【発明を実施するための最良の形態】
【００１６】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００１７】
図１は、本発明に係るデータ伝送装置の一実施形態を示す。本実施形態に係るデータ伝送装置は、バスマスタ回路２０、情報テーブル３０、キャッシュ４０及び機能選択部５０を備えている。
【００１８】
バスマスタ回路２０は、ＣＰＵバス１００の使用権を得ることによって、ＣＰＵインタフェース部１０及びＣＰＵバス１００を通じてワークメモリ１２０との間で直接的にデータ伝送を行う。このとき、バスマスタ回路２０は、情報テーブル３０を参照して、外部機器の要求に係る仮想アドレスをワークメモリ１２０の実アドレスに変換し、この実アドレスに対して、情報テーブル３０に格納された伝送情報によって示された量のデータを伝送する。具体的には、バスマスタ回路２０は、変換した実アドレスを先頭アドレスとして、ワークメモリ１２０との間で伝送したデータの量をカウント（カウントアップ又はカウントダウン）し、このカウント値が伝送情報によって示された量に達したとき、データ伝送を完了する。
【００１９】
図２は、本実施形態に係るデータ伝送装置によるＣＰＵバスアクセスのタイミングを示す。図２（ａ）は、外部機器へのデータ送信時のタイミングチャートであり、図２（ｂ）は、外部機器からのデータ受信時のタイミングチャートである。本実施形態に係るデータ伝送装置は、バスマスタ回路２０がＣＰＵバス１００の使用権を得て直接的にワークメモリ１２０にアクセスするため、ワークメモリ１２０に対するデータ読み出し／書き込みとデータ伝送装置に対するデータ書き込み／読み出しとが交互に発生する（例えば、図５参照）ことがなく、データ伝送装置によるワークメモリ１２０へのアクセスが高速化される。
【００２０】
情報テーブル３０は、ＩＥＥＥ１３９４バス２００を介して接続された外部機器の仮想アドレスをワークメモリ１２０の実アドレスに変換するためのアドレス変換情報、及びこの変換された実アドレスに対して伝送すべきデータ量を示す伝送情報を格納している。これら情報は、バスマスタ回路２０によるデータ伝送ごとにＣＰＵ１１０によって更新される。また、データ伝送装置の起動時には初期設定される。
【００２１】
図３は、外部機器のアドレス空間とワークメモリのアドレス空間との対応関係を例示したものである。図３に示したように、例えば、ＩＥＥＥ１３９４規格準拠の外部機器では４８ビットのアドレス空間が定義されいる一方、ワークメモリ１２０のアドレス空間は通常３２ビットである。情報テーブル３０は、外部機器の仮想アドレスからワークメモリ１２０の実アドレスへの変換に係るアドレス変換情報としてアドレスオフセットなどを格納する。
【００２２】
例えば、外部機器から機器情報の要求があった場合、情報テーブル３０には、外部機器における機器情報（Config-ROM）の仮想アドレスからワークメモリ１２０の実アドレスへの変換に係るアドレス変換情報と、その機器情報のデータ量を示す伝送情報が書き込まれる。バスマスタ回路２０は、情報テーブル３０を参照して、ワークメモリ１２０における機器情報領域に直接アクセスして機器情報を読み出す。そして、読み出された機器情報は、パケット処理などが施された後、外部機器に伝送される。したがって、機器情報が可変長であっても一回の機器情報要求でワークメモリ１２０に格納された機器情報をすべて読み出すことができ、上記のワークメモリ１２０へのアクセスの高速化と相まって機器認証に要する時間が短縮される。
【００２３】
ＥＰＧデータなどの比較的大きなデータは、ワークメモリ１２０において不連続な領域に確保されている場合がある。例えば、図３において、ワークメモリ１２０においてＥＰＧデータは３つの領域に分断されている。このような場合には、情報テーブル３０には、ワークメモリ１２０において不連続となっているＥＰＧデータ領域ごとに、そのアドレス変換情報、及びその領域サイズを表した伝送情報からなる組が書き込まれる。バスマスタ回路２０は、情報テーブル３０を参照してアドレス変換情報及び伝送情報からなる組を順次選択し、ワークメモリ１２０における各ＥＰＧデータ領域に直接アクセスしてＥＰＧデータの送受信を行う。このように情報テーブル３０に、ワークメモリ１２０の不連続領域に関してのアドレス変換情報及び伝送情報からなる組を複数格納しておくことによって、バスマスタ回路２０はその不連続領域に対して連続的にデータ伝送を行うことができ、データ伝送のパフォーマンスが向上する。
【００２４】
情報テーブル３０がアドレス変換情報及び伝送情報を一組しか格納できないような構成であっても、次の手順により上述したような連続的なデータ伝送が実現可能である。すなわち、
１）外部機器の要求が発生したとき、情報テーブル３０に、ワークメモリ１２０における不連続領域の先頭領域に係るアドレス変換情報及び伝送情報を設定し、
２）バスマスタ回路２０によって上記の先頭領域データの伝送が完了すると、情報テーブル３０に次の領域に係るアドレス変換情報及び伝送情報を設定し、バスマスタ回路２０によるデータ伝送を再起動し、
３）上記の手順２をワークメモリ１２０における不連続領域の最終領域まで繰り返す。
これにより、外部機器からの一回の要求で、ワークメモリ１２０において不連続となっているデータが伝送される。
【００２５】
なお、通常、データ伝送は、書き込み要求パケット及び応答パケットによるトランザクションで実現されているため、このトランザクションの合間にバスマスタ回路２０を再起動することが好ましい。これにより、外部機器との間のデータ伝送が途切れることがなく、極めて効率のよいデータ伝送が実現される。
【００２６】
デジタルＴＶなどのシステムでは、データ伝送装置の内部クロックよりもＣＰＵバス１００の外部クロックの方が周波数が高い。すなわち、送受信バッファ６０によるデータバッファリング速度よりもＣＰＵインタフェース部１０によるメモリアクセス速度の方が速い。したがって、バスマスタ回路２０とワークメモリ１２０との間でバースト転送を行うようにすることによって、より効率的なデータ伝送が実現される。キャッシュ４０は、バスマスタ回路２０がワークメモリ１２０との間でバースト転送を行う場合に、このバースト転送に係るデータを一時的に格納するためのものである。すなわち、キャッシュ４０により、送受信バッファ６０によるデータバッファリングの速度とＣＰＵインタフェース部１０によるメモリアクセス速度の差異によるパフォーマンス低下が低減され、より高速なデータ伝送が実現される。なお、キャッシュ４０は送受信バッファ６０よりも小容量ものでよい。
【００２７】
機能選択部５０は、バスマスタ回路２０によるデータ伝送の有効及び無効のいずれかを選択するものである。すなわち、機能選択部５０によって、バスマスタ回路２０によるデータ伝送を行うか否かが切り替え可能となっている。なお、機能選択部５０は、例えば、半導体集積回路の端子、内部レジスタなどで実現される。
【００２８】
なお、キャッシュ４０及び機能選択部５０は本発明に係るデータ伝送装置からは特に省略してもよい。また、外部機器との間のインタフェースはＩＥＥＥ１３９４以外にも、ＵＳＢ（Universal Serial Bus)、ＨＤＭＩ（High-Definition Multimedia interface）などの規格であってもよい。
【産業上の利用可能性】
【００２９】
本発明に係るデータ伝送装置は、外部機器とワークメモリとの間で高速なデータ伝送を行うため、ＩＥＥＥ１３９４インタフェースを有するデジタルＴＶなどの電子機器、通信機器に有用である。
【図面の簡単な説明】
【００３０】
【図１】本発明の一実施形態に係るデータ伝送装置の構成図である。
【図２】図１のデータ伝送装置によるＣＰＵバスアクセスのタイミングチャートである。
【図３】外部機器のアドレス空間とワークメモリのアドレス空間との対応関係を例示した図である。
【図４】従来のデータ伝送装置の構成図である。
【図５】図４のデータ伝送装置によるＣＰＵバスアクセスのタイミングチャートである。
【符号の説明】
【００３１】
１０  ＣＰＵインタフェース部
２０  バスマスタ回路
３０  情報テーブル
４０  キャッシュ
５０  機能選択部
【図１】
2006293929.tif 000003
【図２】
2006293929.tif 000004
【図３】
2006293929.tif 000005
【図４】
2006293929.tif 000006
【図５】
2006293929.tif 000007