(57)【要約】【課題】データを破綻させることなくデジタル信号とアナログ信号の双方のデータ転送を効率良く行うことのできる半導体装置を提供すること。【解決手段】Ｉ／Ｆコントローラ１１のＤＭＡ２７は、１３９４インタフェース２１及びシステムバス１３間、ＡＶインタフェース２２及びシステムバス１３間の双方のデータ転送を制御する。ＡＶインタフェース２２及びシステムバス１３間のデータ転送にはＤＭＡ２７のチャネルが割り当てられ、ＤＭＡ２７は、データ転送を擬似的なアイソクロナスパケットを用いて行う。これにより、ＡＶインタフェース２２及びシステムバス１３間のデータ転送が軽減される。【選択図】　　　図１
2004056376.tif 000002
【特許請求の範囲】
【請求項１】
複数の機器とデータ転送を行うための半導体装置であって、
デジタル信号の入出力を制御するデジタルインタフェースと、
アナログ信号の入出力を制御するアナログインタフェースと、
コンピュータ内部のメモリとバスを介して接続され前記デジタルインタフェースのデータ転送を制御する転送制御装置と、を備え、
該転送制御装置を用いて前記アナログインタフェースのデータ転送を制御することを特徴とする半導体装置。
【請求項２】
前記転送制御装置が前記メモリをアクセスして前記アナログインタフェースと前記バスとの間で転送するデータは、所定のデータ長毎に分割されたデータであることを特徴とする請求項１記載の半導体装置。
【請求項３】
前記アナログインタフェースが受信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダ及びトレーラデータを付加して擬似的なパケットデータを生成するパケット挿入回路を備えることを特徴とする請求項１又は２記載の半導体装置。
【請求項４】
前記転送制御装置は、前記アナログインタフェースが送信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダを付加して擬似的なパケットデータを生成する機能を有することを特徴とする請求項１乃至３の何れか一項記載の半導体装置。
【請求項５】
前記転送制御装置が生成したパケットデータに付加されているパケットヘッダを除去するためのパケット除去回路を備えることを特徴とする請求項４記載の半導体装置。
【請求項６】
前記転送制御装置が前記アナログインタフェースと前記バスとの間で行うデータ転送には、前記転送制御装置が前記デジタルインタフェースと前記バスとの間で行うデータ転送のためのチャネルが送信用と受信用に少なくとも１つずつ割り当てられることを特徴とする請求項１乃至５の何れか一項記載の半導体装置。
【請求項７】
複数の機器とデータ転送を行うためのデジタルインタフェースとアナログインタフェースとを含む半導体装置のデータ転送制御方法であって、
前記アナログインタフェースが受信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダ及びトレーラデータを付加して擬似的なパケットデータを生成し、該パケットデータを前記半導体装置が備える転送バッファから順次読み出してコンピュータ内部のメモリに転送するようにしたことを特徴とするデータ転送制御方法。
【請求項８】
前記パケットデータを前記メモリに格納する際に、前記パケットヘッダ及び前記トレーラデータを除去するようにしたことを特徴とする請求項７記載のデータ転送制御方法。
【請求項９】
複数の機器とデータ転送を行うためのデジタルインタフェースとアナログインタフェースとを含む半導体装置のデータ転送制御方法であって、
前記アナログインタフェースが送信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダを付加して生成した擬似的なパケットデータを生成し、該パケットデータをコンピュータ内部のメモリから順次読み出して前記半導体装置が備える転送バッファに転送するようにしたことを特徴とするデータ転送制御方法。
【請求項１０】
前記パケットデータを前記転送バッファに格納する際に、前記パケットヘッダを除去するようにしたことを特徴とする請求項９記載のデータ転送制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は半導体装置及びデータ転送制御方法に係り、詳しくはコンピュータと複数の周辺機器との間のデータ転送を制御する際に有用な半導体装置に関する。
【０００２】
近年、パーソナルコンピュータ（パソコン）の周辺機器はデジタル化が進み、それらのインタフェースとしてＩＥＥＥ１３９４インタフェースやＵＳＢインタフェースが普及している。一方、パソコンの周辺機器には、ビデオカメラやＴＶ等のアナログ信号で転送を実現する機器も未だ存在している。こうしたパソコンとそれに接続する複数の周辺機器との間でデジタル信号とアナログ信号の双方のデータ転送を扱う場合には、それらのデータを破綻させることなく転送を実現させることが必要である。
【０００３】
【従来の技術】
パソコンには様々な周辺機器が接続される。
図５は、パソコン５１にハードディスク５２とビデオカメラ５３を接続した例を示す構成図である。
【０００４】
パソコン５１とハードディスク５２とは、例えばＩＥＥＥ１３９４シリアルバスケーブル（以下、１３９４バス）５４により接続され、それらの間はデジタル信号でデータ転送が行われる。一方、パソコン５１とビデオカメラ５３とは、同軸ケーブル５５を介して接続され、それらの間はアナログ信号でデータ転送が行われる。
【０００５】
従来、これらのデータ転送を実現するパソコン５１のマザーボード、もしくはアドインカード上には、デジタル信号のインタフェースを制御する半導体装置（１３９４バスコントローラ）と、アナログ信号のインタフェースを制御する半導体装置（ＡＶ　Ｉ／Ｆコントローラ）が備えられる。
【０００６】
図６は、上記２つの半導体装置（インタフェースコントローラ）を搭載した従来構成を示すブロック図である。
パソコン５１内において、１３９４バスコントローラ６１及びＡＶ　Ｉ／Ｆコントローラ６２は同一のボード６３上に搭載され、各コントローラ６１，６２は例えばＰＣＩバスからなるシステムバス６４を介してメモリ６５と接続されている。
【０００７】
１３９４バスコントローラ６１は、物理層（ＰＨＹ），リンク層（ＬＩＮＫ）　を含む１３９４インタフェース７１と、受信バッファ７２及び送信バッファ７３と、ＤＭＡコントローラ（以下、単にＤＭＡという）７４と、ＰＣＩバスマスタ７５とを備える。１３９４インタフェース７１には、上記１３９４バス５４（図６では省略；図５参照）が接続されている。
【０００８】
尚、１３９４バスコントローラ６１は、１３９４−１９９５　規格に準拠したものであり、ＤＭＡ７４は、該１３９４バスコントローラ６１と上記パソコン５１（具体的にはＯＳ）間のインタフェースを定義した１３９４−ＯＨＣＩ（Ｏｐｅｎ　Ｈｏｓｔ　Ｃｏｎｔｒｏｌｌｅｒ　Ｉｎｔｅｒｆａｃｅ）　規格に準拠したものである。
【０００９】
ＤＭＡ７４は、メモリ６５内に格納されたコンテキストプログラムに従って、アシンクロナス（Ａｓｙｎｃｈｒｏｎｏｕｓ）転送、或いはアイソクロナス（Ｉｓｏｃｈｒｏｎｏｕｓ　）転送を実現する。このコンテキストプログラムには、ＤＭＡ７４のステータス情報、ＤＭＡ７４が次に処理すべきプログラムが格納されているアドレス、送信するパケットデータが格納されているアドレスやそのパケットのデータ長、受信したパケットデータを格納するアドレス、メモリ６５の容量等の情報が含まれる。
【００１０】
ＤＭＡ７４のチャネルは、アシンクロナス転送で使用するリクエストパケットの送受信、同アシンクロナス転送でのレスポンスパケットの送受信及びアイソクロナス転送で使用するパケットの送受信毎にそれぞれ設定され、そのうちアイソクロナスパケットの送受信には少なくとも４チャネルずつ設定されている。
【００１１】
例えば、アイソクロナス転送を行う場合において、１３９４バスコントローラ６１は、その転送用に設定されているＤＭＡ７４の４つのチャネルのうち１つを使用してパケットの送信／受信を行う。
【００１２】
詳述すると、アイソクロナスパケットの送信時、ＤＭＡ７４は、ＰＣＩバスマスタ７５を介してメモリ６５内のコンテキストプログラムを読み込み、そのプログラムに従って、２クワドレットのパケットヘッダが先頭に付加されたパケットデータを同メモリ６５内から順に読み込んで送信バッファ７３に格納する。そして、１３９４インタフェース７１は、送信バッファ７３からパケットデータを読み出し、２クワドレットあるパケットヘッダを１クワドレットに変換してシリアルデータでアイソクロナスパケットを１３９４バス５４（図５参照）へ送出する。尚、このデータ送信時において扱うパケットデータのフォーマットは、１３９４−ＯＨＣＩ　規格によって定義されたものである。
【００１３】
逆に、アイソクロナスパケットの受信時、１３９４インタフェース７１は、１３９４バス５４（図５参照）からシリアルデータで受け取ったアイソクロナスパケットをパラレルデータに変換し、そのパケットデータの最後にトレーラデータを付加して受信バッファ７２に格納する。そして、ＤＭＡ７４は、前記と同様にＰＣＩバスマスタ７５を介してメモリ６５内のコンテキストプログラムを読み込み、そのプログラムに従って、受信バッファ７２に格納されているパケットデータを順にメモリ６５内に格納する。尚、前記同様、このデータ受信時において扱うパケットデータのフォーマットは、１３９４−ＯＨＣＩ　規格によって定義されたものである。
【００１４】
このようにして、１３９４インタフェース７１とシステムバス６４との間のデータ転送は、１３９４−ＯＨＣＩ　規格や１３９４−１９９５　規格によって制定される転送規格に基づいて実現される。
【００１５】
一方、ＡＶ　Ｉ／Ｆコントローラ６２は、ＡＶインタフェース８１と、受信バッファ８２及び送信バッファ８３と、コントローラ８４と、ＰＣＩバスマスタ８５とを備える。ＡＶインタフェース８１は、ボード６３上に搭載されている図示しないＡ／Ｄコンバータ及びＤ／Ａコンバータを介して上記ケーブル５５（図６では省略；図５参照）と接続されている。
【００１６】
このようなＡＶ　Ｉ／Ｆコントローラ６２において、データ送信時、コントローラ８４は、ＰＣＩバスマスタ８５を介してメモリ６５内に格納されているデータを予め設定されているアドレスから順に読み込んで送信バッファ８３に格納する。そして、ＡＶインタフェース８１は、送信バッファ８３から読み出したデータをＤ／Ａコンバータを介してアナログ信号に変換して出力する。
【００１７】
逆に、データ送信時、ＡＶインタフェース８１は、Ａ／Ｄコンバータを介して受信したデータ（デジタル信号に変換されたデータ）を受信バッファ８２に格納する。そして、コントローラ８４は、受信バッファ８２から読み出したデータをＰＣＩバスマスタ８５を介して予め設定されているアドレスから順にメモリ６５に格納する。
【００１８】
【発明が解決しようとする課題】
ところで、上記のように、１３９４バスコントローラ６１とＡＶ　Ｉ／Ｆコントローラ６２の２つの半導体装置をボード６３に搭載する構成では、ボード６３上の実装面積が大きくなってしまうという問題があった。
【００１９】
また、各コントローラ６１，６２において、デジタル信号とアナログ信号の双方のインタフェース７１，８１が同時に転送を実行した場合に、パソコン５１のシステムバス６４の帯域が不足することにより、転送データが破綻してしまう可能性があった。
【００２０】
例えば、図７に示すように、ＡＶインタフェース８１がデータを送信している時に、１３９４インタフェース７１が１３９４バス５４からパケットを受信する。しかしながら、このときは、ＡＶ　Ｉ／Ｆコントローラ６２がデータ送信を行うためにシステムバス６４の帯域を占有している（図中、ＡＶ送信で示す）。このため、１３９４バスコントローラ６１は、システムバス６４を利用することはできない。即ち、１３９４バスコントローラ６１は、ＡＶ　Ｉ／Ｆコントローラ６２がデータ送信を終了するまで、受信したパケットをシステムバス６４へ送出することができない（受信データをメモリ６５に格納できない）。その結果、１３９４バスコントローラ６１が搭載する受信バッファ７２がオーバフローとなって、データが破綻してしまうことになる。こうした問題は、ＡＶインタフェース８１がデータを受信する場合にも同様に起こり得る可能性があった。
【００２１】
こうした転送データの破綻を防止するための手段としては、１３９４バスコントローラ６１内に容量の大きなバッファを内蔵することが考えられるが、このような大容量のバッファは、チップ面積が大きいためにボード６３上の実装面積が増大する、及びコストが上昇するという問題があった。
【００２２】
本発明は上記問題点を解決するためになされたものであって、その目的は、データを破綻させることなくデジタル信号とアナログ信号の双方のデータ転送を効率良く行うことのできる半導体装置及びデータ転送制御方法を提供することにある。
【００２３】
【課題を解決するための手段】
上記目的を達成するため、請求項１，７〜１０に記載の発明によれば、複数の機器との間のデータ転送を行うための半導体装置において、デジタル信号の入出力を制御するデジタルインタフェースとアナログ信号の入出力を制御するアナログインタフェースの双方が行うデータ転送は、デジタルインタフェースのデータ転送を制御する同一の転送制御装置によって制御される。この構成では、デジタルインタフェースとバス間の転送を制御する転送制御装置が制御しやすい擬似的なデータを用いてアナログインタフェースとバス間の転送が制御される。これにより、アナログインタフェースとバス間の転送を軽減させることができ、転送制御装置は、双方のインタフェースとバスとの間のデータ転送を該バスの帯域の占有率を考慮しながら制御することができる。
【００２４】
請求項２に記載の発明によれば、転送制御装置がメモリをアクセスしてアナログインタフェースとバス間で転送するデータは、所定のデータ長毎に分割されたデータである。このため、デジタルインタフェースとアナログインタフェースの双方が同時に転送を行う場合に、バスの帯域が不足して転送データが破綻することはない。
【００２５】
請求項３に記載の発明によれば、パケット挿入回路は、アナログインタフェースが受信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダ及びトレーラデータを付加して擬似的なパケットデータを生成する。これにより、転送制御装置は、アナログインタフェースが受信するデータを擬似的なアイソクロナスパケットとして扱う。
【００２６】
請求項４に記載の発明によれば、転送制御装置は、アナログインタフェースが送信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダを付加して擬似的なパケットデータを生成する。従って、転送制御装置は、アナログインタフェースが受信するデータを擬似的なアイソクロナスパケットとして扱う。
【００２７】
請求項５に記載の発明によれば、転送制御装置が生成したパケットデータに付加されているパケットヘッダは、パケット除去回路により除去される。これにより、アナログインタフェースの送信時に不要とするパケットヘッダを取り除くことが可能である。
【００２８】
請求項６に記載の発明によれば、転送制御装置がアナログインタフェースとバス間で行うデータ転送には、転送制御装置がデジタルインタフェースとバス間で行うデータ転送のためのチャネルが送信用と受信用に少なくとも１つずつ割り当てられる。同一の転送制御装置により各インタフェースが行うデータ転送が制御されるため、半導体装置に搭載する回路部品の点数を削減することができる。
【００２９】
【発明の実施の形態】
以下、本発明を具体化した一実施形態を図１〜図４に従って説明する。
図１は、本実施形態のインタフェースコントローラ（以下、Ｉ／Ｆコントローラ）１１を構成する半導体装置のブロック図である。尚、このＩ／Ｆコントローラ１１は、図５に示すように、例えば複数（図では２つ）の周辺機器としてのハードディスク５２及びビデオカメラ５３と接続されたパソコン５１に設けられている。
【００３０】
具体的には、Ｉ／Ｆコントローラ１１は、パソコン５１内に設けられるボード１２上に搭載され、システムバス（本実施形態ではＰＣＩバス）１３を介して同パソコン５１内部に設けられるメモリ１４と接続されている。このＩ／Ｆコントローラ１１は、デジタルインタフェースとしての１３９４インタフェース２１、アナログインタフェースとしてのＡＶインタフェース２２、第１及び第２の転送バッファ２３，２４、パケット除去回路２５、パケット挿入回路２６、転送制御装置としてのＤＭＡコントローラ（以下、ＤＭＡ）２７及びＰＣＩバスマスタ２８を備える。
【００３１】
第１の転送バッファ２３は、１３９４インタフェース２１とＤＭＡ２７との間に設けられ、該１３９４インタフェース２１が送受信するデータを格納するための受信バッファ３１及び送信バッファ３２を備えている。同様に、第２の転送バッファ２４は、ＡＶインタフェース２２とＤＭＡ２７との間に設けられ、該ＡＶインタフェース２２が送受信するデータを格納するための受信バッファ３３及び送信バッファ３４を備えている。
【００３２】
１３９４インタフェース２１は、パソコン５１及びハードディスク５２間を接続するための１３９４バス５４（図５参照）と接続されている。ここで、Ｉ／Ｆコントローラ１１を構成する１３９４インタフェース２１、受信バッファ３１、送信バッファ３２、ＤＭＡ２７、ＰＣＩバスマスタ２８は、上述した図６に示す１３９４バスコントローラ６１内の回路（７１〜７５）と同様に構成されている。即ち、Ｉ／Ｆコントローラ１１（具体的にはＤＭＡ２７）は、１３９４インタフェース２１とシステムバス１３との間のデータ（パケット）転送を１３９４−１９９５　規格及び１３９４−ＯＨＣＩ　規格に従って実行する。
【００３３】
また、ＡＶインタフェース２２は、ボード１２上に搭載されている図示しないＡ／Ｄコンバータ及びＤ／Ａコンバータを介してパソコン５１及びビデオカメラ５３間を接続するためのケーブル５５（図５参照）と接続されている。ここで、Ｉ／Ｆコントローラ１１を構成するＡＶインタフェース２２、受信バッファ３３及び送信バッファ３４は、上述した図６に示すＡＶ　Ｉ／Ｆコントローラ６２内の回路（８１〜８３）と同様に構成されている。
【００３４】
本実施形態において、このＡＶインタフェース２２とシステムバス１３との間で行うデータ転送は、パソコン５１及びハードディスク５２間のデータ転送を制御するＤＭＡ２７によって行われる。
【００３５】
詳述すると、アイソクロナス転送のために設定されている送信用と受信用の各々４つずつのＤＭＡ２７のチャネルのうち、それぞれ（送信用と受信用に）１つずつのチャネルが、ＡＶインタフェース２２とシステムバス１３との間で行うデータ転送のために割り当てられている。メモリ１４内には、その割り当てられたＤＭＡ２７のチャネルをパソコン５１のドライバソフトウェア（具体的にはＯＳ）により起動するためのコンテキストプログラムが格納され、このコンテキストプログラムに従ってＤＭＡ２７は、ＡＶインタフェース２２及びシステムバス１３間でのデータ転送を実現する。
【００３６】
以下、パソコン５１がビデオカメラ５３へデータ（アナログ信号）を送信する場合（即ちシステムバス１３からＡＶインタフェース２２へ送信データを転送する場合）について説明する。
【００３７】
ＤＭＡ２７は、メモリ１４内に格納されているコンテキストプログラムを読み出し、同メモリ１４内から送信データをＰＣＩバスマスタ２８を経由して読み出す。このとき、ＤＭＡ２７は、コンテキストプログラムに従って、送信データをアイソクロナスパケットに相当するデータ長毎に分割してメモリ１４内から読み出し、その分割したデータの先頭に、図２（ａ）に示すように、２クワドレットからなるパケットヘッダを付加する。
【００３８】
ここで、分割したデータに付加する２クワドレットのパケットヘッダは、該分割したデータのデータ長や転送レートを明記した情報を含む。即ち、ＤＭＡ２７は、メモリ１４内からパケットヘッダを読み出し、そのパケットヘッダを各々分割したデータに付加することにより、送信データを擬似的なアイソクロナスパケットに変換する。
【００３９】
ＤＭＡ２７は、こうしてメモリ１４内から取り込んだ送信データ（パケットデータ）をコンテキストプログラムに従って送信バッファ３４に格納する。
このとき、ＤＭＡ２７は、送信データ（パケットデータ）に付加されている２クワドレットのパケットヘッダをパケット除去回路２５により除去して送信バッファ３４に格納する。詳述すると、ＤＭＡ２７がメモリ１４内から送信データ（パケットデータ）を取り込む際に付加するパケットヘッダは、ＡＶインタフェース２２からのデータ送出時においては不要である。パケット除去回路２５は、送信データ（パケットデータ）のパケットヘッダを除去して、該送信データを送信バッファ３４に格納する。
【００４０】
これにより、ＡＶインタフェース２２は、送信バッファ３４からパケットヘッダが除去されたデータを読み出し、その読み出したデータをボード１２上の図示しないＤ／Ａコンバータを介してアナログ信号に変換して送出する。
【００４１】
次に、パソコン５１がビデオカメラ５３からデータ（アナログ信号）を受信する場合（即ちＡＶインタフェース２２からシステムバス１３へ受信データを転送する場合）について説明する。
【００４２】
ＡＶインタフェース２２は、ビデオカメラ５３から送信されるアナログ信号のデータを図示しないＡ／Ｄコンバータによりデジタル信号に変換して入力し、その受信データを受信バッファ３３に格納する。
【００４３】
パケット挿入回路２６は、その受信バッファ３３内の受信データを所定のデータ長毎に分割してデータ変換する。詳述すると、パケット挿入回路２６は、受信バッファ３３内の受信データをアイソクロナスパケットに相当するデータ長毎に分割し、その分割したデータの先頭と最後に、図２（ｂ）に示すように、それぞれ１クワドレットからなるパケットヘッダとトレーラデータを付加する。
【００４４】
ここで、分割したデータにそれぞれ付加するパケットヘッダは、該分割したデータのデータ長を明記した情報を含む。また、トレーラデータは、タイムスタンプの情報とＤＭＡ２７のステータス情報とを含む。これにより、パケット挿入回路２６は、受信バッファ３３内の受信データを擬似的なアイソクロナスパケットに変換する。
【００４５】
ＤＭＡ２７は、その変換された受信データ（パケットデータ）をメモリ１４内に格納されているコンテキストプログラムに従って受信バッファ３３から読み出し、その読み出した受信データ（パケットデータ）をＰＣＩバスマスタ２８を経由してメモリ１４に順次格納する。
【００４６】
尚、このとき、１３９４−ＯＨＣＩ　規格で規定されているＤＭＡ２７のパケットヘッダ除去機能を利用することにより、受信データ（パケットデータ）に付加されているパケットヘッダ及びトレーラデータをＤＭＡ２７が除去してメモリ１４に格納するようにしてもよい。
【００４７】
図３は、ＡＶインタフェース２２及びシステムバス１３間でのデータ取り込み方法を示すタイミングチャートである。
まず、送信データの取り込み方法を図３（ａ）に従って説明する。
【００４８】
ＤＭＡ２７は、システムバス１３を駆動するクロック信号に基づいて、２クワドレットからなるパケットヘッダを送信データに付加して生成した擬似的なアイソクロナスパケットをメモリ１４内から順次読み出す。
【００４９】
パケット除去回路２５は、そのＤＭＡ２７により読み出された送信データ（パケットデータ）に付加されている２クワドレットのパケットヘッダを除去する。具体的には、パケット除去回路２５は、ＤＭＡ２７が（２クワドレットの）パケットヘッダを送信バッファ３４に格納する際には、該送信バッファ３４への書き込みを行うためのライトイネーブル信号をマスクして無効化する。これにより、ＤＭＡ２７は、パケットヘッダを除去したデータのみを送信バッファ３４に格納する。
【００５０】
その後、ＡＶインタフェース２２は、該ＡＶインタフェース２２を駆動するクロック信号に基づいて、送信バッファ３４からデータ（パケットヘッダを除いたデータ）を順次読み出す。
【００５１】
ちなみに、図３（ａ）に示すように、システムバス１３のクロック信号は、ＡＶインタフェース２２のそれよりも高速である（即ち転送レートが高い）。従って、ＤＭＡ２７が読み出す分割されたデータ（パケットデータ）は、ＡＶインタフェース２２からは実質的にほぼ連続したデータで出力される。
【００５２】
次に、受信データの取り込み方法を図３（ｂ）に従って説明する。
ＡＶインタフェース２２は、Ａ／Ｄコンバータ（図示略）を介して受信したデータを、該ＡＶインタフェース２２のクロック信号に基づいて受信バッファ３３に順次格納する。
【００５３】
パケット挿入回路２６は、その受信バッファ３３内の受信データにそれぞれ１クワドレットからなるパケットヘッダとトレーラデータを付加して擬似的なアイソクロナスパケットを生成し、ＤＭＡ２７は、そのパケットデータをシステムバス１３のクロック信号に基づいて受信バッファ３３から読み出す。具体的には、パケット挿入回路２６は、ＤＭＡ２７が受信バッファ３３からデータを読み出す際に１クワドレットのパケットヘッダを付加し、その後、ＤＭＡ２７がアイソクロナスパケットのデータ長に相当するデータを受信バッファ３３から読み出した後に１クワドレットのトレーラデータを付加する。これにより、ＤＭＡ２７は、ＡＶインタフェース２２が受信するデータを、擬似的なアイソクロナスパケットとして受信バッファ３３から読み出す。
【００５４】
ちなみに、図３（ｂ）に示すように、システムバス１３のクロック信号は、ＡＶインタフェース２２のそれよりも高速である（即ち転送レートが高い）。従って、このような双方の転送レートの差異により、パケット挿入回路２６は、ＡＶインタフェース２２が受信するデータに上記パケットヘッダ及びトレーラデータを挿入する時間を確保することが可能である。
【００５５】
図４は、本実施形態のＩ／Ｆコントローラ１１を用いた場合のシステムバス１３の状態遷移図である。
今、Ｉ／Ｆコントローラ１１は、ＡＶインタフェース２２からデータ送信を行うためにシステムバス１３の帯域を使用している（図中、ＡＶ送信）。その際、Ｉ／Ｆコントローラ１１は、上記したように、ＡＶインタフェース２２から送信するデータを擬似的なアイソクロナスパケットに変換してメモリ１４内から取り込み、ＡＶインタフェース２２に転送する。
【００５６】
従って、ＡＶインタフェース２２から送信すべきデータの転送処理が全て終了するまでに１３９４インタフェース２１がデータを受信する場合、Ｉ／Ｆコントローラ１１は、システムバス１３を使用して同１３９４インタフェース２１が受信したデータをメモリ１４へ格納することが可能である（図中、１３９４受信）。
【００５７】
また、ＡＶインタフェース２２から送信すべきデータの転送処理が全て終了するまでに１３９４インタフェース２１がデータを送信する場合、同様にＩ／Ｆコントローラ１１は、システムバス１３を使用して同１３９４インタフェース２１から送信するデータをメモリ１４から取り込むことが可能である（図中、１３９４送信）。
【００５８】
さらに、ＡＶインタフェース２２から送信すべきデータの転送処理が全て終了するまでに該ＡＶインタフェース２２がデータを受信する場合、同様にＩ／Ｆコントローラ１１は、システムバス１３を使用してその受信データをメモリ１４へ格納することが可能である（図中、ＡＶ受信）。その際、Ｉ／Ｆコントローラ１１は、上記したように、ＡＶインタフェース２２が受信したデータを擬似的なアイソクロナスパケットに変換してメモリ１４へ格納する。
【００５９】
即ち、本実施形態では、ＤＭＡ２７は、ＡＶインタフェース２２及びシステムバス１３間のデータ転送を擬似的なアイソクロナスパケットを用いて行う。これにより、ＤＭＡ２７は、１３９４インタフェース２１及びＡＶインタフェース２２とシステムバス１３との間で行うデータ転送を、システムバス１３の帯域の占有率を考慮しながら制御することができる。言い換えれば、ＤＭＡ２７は、１３９４インタフェース２１及びＡＶインタフェース２２の双方が行う転送状況に応じて、各々の転送時に使用するシステムバス１３の帯域を確保する。
【００６０】
以上記述したように、本実施形態によれば、以下の効果を奏する。
（１）Ｉ／Ｆコントローラ１１は、デジタル信号の入出力を制御する１３９４インタフェース２１、アナログ信号の入出力を制御するＡＶインタフェース２２、及び各インタフェース２１，２２とシステムバス１３との間のデータ転送を制御するＤＭＡ２７を含む。ＡＶインタフェース２２及びシステムバス１３間のデータ転送にはＤＭＡ２７のチャネルが割り当てられ、ＤＭＡ２７は擬似的なアイソクロナスパケットを用いてデータ転送を行う。これにより、ＡＶインタフェース２２及びシステムバス１３間の転送を軽減させることができる。従って、ＤＭＡ２７は、１３９４インタフェース２１及びＡＶインタフェース２２の双方とシステムバス１３との間のデータ転送を、システムバス１３の帯域の占有率を考慮しながら行うことができる。その結果、パソコン５１と複数の周辺機器（ハードディスク５２，ビデオカメラ５３）との間で行うデータ転送の効率を向上させることができ、それらの間のデータ転送を実質的にほぼ同時に行うことが可能となる。
【００６１】
（２）ＡＶインタフェース２２とシステムバス１３との間の転送を擬似的なアイソクロナスパケットを用いて行うようにしたため、１３９４インタフェース２１とＡＶインタフェース２２の双方が同時に転送を実行した場合にも、システムバス１３の帯域が不足して転送データが破綻することが防止される。即ち、ＡＶインタフェース２２及びシステムバス１３間で行うデータ転送によりシステムバス１３の帯域が長時間占有されることが防止されるため、１３９４インタフェース２１が受信したデータを格納するための受信バッファ３１がオーバフローとなることが防止される。従って、Ｉ／Ｆコントローラ１１に大容量の受信バッファ３１を備える必要はない。
【００６２】
（３）ＤＭＡ２７のチャネルをＡＶインタフェース２２及びシステムバス１３間の転送に割り当て、１３９４インタフェース２１とＡＶインタフェース２２の双方が行うデータ転送を同一のＤＭＡ２７により制御するようにしたため、Ｉ／Ｆコントローラ１１を構成する回路部品点数を削減することができる。これにより、回路規模を縮小することができるため、マザーボードやアドインカード等のボード１２上の実装面積を削減することができる。
【００６３】
尚、上記実施形態は、以下の態様で実施してもよい。
・本実施形態では、１３９４インタフェース２１を搭載したが、ＵＳＢインタフェース等の他のデジタルインタフェースであってもよい。同様に、ＡＶインタフェース２２に替えて他のアナログインタフェースとしてもよい。即ち、アナログインタフェースとシステムバス１３との間のデータ転送でＤＭＡ２７が扱うデータを、そのＤＭＡ２７が制御しやすい擬似的なデータに変換するように構成することで、本実施形態と同様の効果を奏することが可能である。
【００６４】
・本実施形態では、ＤＭＡ２７は、ＰＣＩバスマスタ２８を介してシステムバス１３（ＰＣＩバス）上のメモリ１４にアクセスするバスマスタ方式を採用したが必ずしもこの形態に限定されない。尚、システムバス１３は必ずしもＰＣＩバスに限定されない。
【００６５】
上記実施形態の特徴をまとめると以下のようになる。
（付記１）　複数の機器とデータ転送を行うための半導体装置であって、
デジタル信号の入出力を制御するデジタルインタフェースと、
アナログ信号の入出力を制御するアナログインタフェースと、
コンピュータ内部のメモリとバスを介して接続され前記デジタルインタフェースのデータ転送を制御する転送制御装置と、を備え、
該転送制御装置を用いて前記アナログインタフェースのデータ転送を制御することを特徴とする半導体装置。
（付記２）　前記デジタルインタフェースと前記アナログインタフェースは少なくとも１つずつ設けられ、前記転送制御装置は１つ設けられていることを特徴とする半導体装置。
（付記３）　前記転送制御装置が前記メモリをアクセスして前記アナログインタフェースと前記バスとの間で転送するデータは、所定のデータ長毎に分割されたデータであることを特徴とする付記１又は２記載の半導体装置。
（付記４）　前記アナログインタフェースが受信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダ及びトレーラデータを付加して擬似的なパケットデータを生成するパケット挿入回路を備えることを特徴とする付記１乃至３の何れか一記載の半導体装置。
（付記５）　前記転送制御装置は、前記アナログインタフェースが送信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダを付加して擬似的なパケットデータを生成する機能を有することを特徴とする付記１乃至４の何れか一記載の半導体装置。
（付記６）　前記転送制御装置が生成したパケットデータに付加されているパケットヘッダを除去するためのパケット除去回路を備えることを特徴とする付記５記載の半導体装置。
（付記７）　前記転送制御装置が前記アナログインタフェースと前記バスとの間で行うデータ転送には、前記転送制御装置が前記デジタルインタフェースと前記バスとの間で行うデータ転送のためのチャネルが送信用と受信用に少なくとも１つずつ割り当てられることを特徴とする付記１乃至６の何れか一記載の半導体装置。
（付記８）　複数の機器とデータ転送を行うための半導体装置であって、
デジタル信号の入出力を制御する１３９４インタフェースと、
アナログ信号の入出力を制御するＡＶインタフェースと、
コンピュータ内部のメモリとバスを介して接続され前記各インタフェースが行うデータ転送を制御するＤＭＡコントローラと、
前記ＡＶインタフェースが受信するデータにパケットヘッダ及びトレーラデータを付加して擬似的なパケットデータを生成するパケット挿入回路と、
前記ＡＶインタフェースが送信するデータを擬似的なパケットデータに変換して前記メモリ内から順次読み出しを行う前記ＤＭＡコントローラが転送するデータからパケットヘッダを除去するパケット除去回路と、
を備えることを特徴とする半導体装置。
（付記９）　複数の機器とデータ転送を行うためのデジタルインタフェースとアナログインタフェースとを含む半導体装置のデータ転送制御方法であって、
前記アナログインタフェースが受信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダ及びトレーラデータを付加して擬似的なパケットデータを生成し、該パケットデータを前記半導体装置が備える転送バッファから順次読み出してコンピュータ内部のメモリに転送するようにしたことを特徴とするデータ転送制御方法。
（付記１０）　前記パケットデータを前記メモリに格納する際に、前記パケットヘッダ及び前記トレーラデータを除去するようにしたことを特徴とする付記９記載のデータ転送制御方法。
（付記１１）　複数の機器とデータ転送を行うためのデジタルインタフェースとアナログインタフェースとを含む半導体装置のデータ転送制御方法であって、
前記アナログインタフェースが送信するデータを所定のデータ長毎に分割し、該分割した各々のデータにパケットヘッダを付加して生成した擬似的なパケットデータを生成し、該パケットデータをコンピュータ内部のメモリから順次読み出して前記半導体装置が備える転送バッファに転送するようにしたことを特徴とするデータ転送制御方法。
（付記１２）　前記パケットデータを前記転送バッファに格納する際に、前記パケットヘッダを除去するようにしたことを特徴とする付記１１記載のデータ転送制御方法。
【００６６】
【発明の効果】
以上詳述したように、本発明によれば、データを破綻させることなくデジタル信号とアナログ信号の双方のデータ転送を効率良く行うことのできる半導体装置及びデータ転送制御方法を提供することができる。
【図面の簡単な説明】
【図１】本実施形態のインタフェースコントローラの構成を示すブロック図である。
【図２】分割したデータのフォーマットを示す説明図である。
【図３】データの取り込み方法を示すタイミングチャートである。
【図４】システムバスの状態遷移図である。
【図５】パソコンと周辺機器との接続例を示す構成図である。
【図６】従来のインタフェースコントローラの構成を示すブロック図である。
【図７】従来におけるシステムバスの状態遷移図である。
【符号の説明】
１１　半導体装置としてのインタフェースコントローラ
１３　バスとしてのシステムバス
１４　メモリ
２１　デジタルインタフェースとしての１３９４インタフェース
２２　アナログインタフェースとしてのＡＶインタフェース
２５　パケット除去回路
２６　パケット挿入回路
２７　転送制御装置としてのＤＭＡコントローラ（ＤＭＡ）
５１　コンピュータとしてのパソコン
５２，５３　複数の機器としてのハードディスク，ビデオカメラ
【図１】
2004056376.tif 000003
【図２】
2004056376.tif 000004
【図３】
2004056376.tif 000005
【図４】
2004056376.tif 000006
【図５】
2004056376.tif 000007
【図６】
2004056376.tif 000008
【図７】
2004056376.tif 000009