(57)【要約】【課題】ディスクリプタ制御によるＤＭＡコントローラの制御において、メモリおよび共有バスを効率良く使用することができ、通信処理速度が早いデータ転送を実現する。【解決手段】このデータ転送装置は、ディスクリプタを使用してＤＭＡコントローラを制御することによりＤＭＡ転送を実行するものであって、複数のディスクリプタで共用可能な情報であるディスクリプタ共用情報を格納する第一の記憶機構と、個々のディスクリプタごとに異なる情報であるディスクリプタ個別情報を格納する第二の記憶機構と、前記第一の記憶機構から読み出されるディスクリプタ共用情報と前記第二の記憶機構から読み出されるディスクリプタ個別情報とを入力して、ＤＭＡコントローラに供給されるべきディスクリプタ情報を出力する変換回路と、を含む。【選択図】　　　図１
2004005382.tif 000002
【特許請求の範囲】
【請求項１】
ディスクリプタを使用してＤＭＡコントローラを制御することによりＤＭＡ転送を実行するデータ転送装置であって、
複数のディスクリプタで共用可能な情報であるディスクリプタ共用情報を格納する第一の記憶機構と、
個々のディスクリプタごとに異なる情報であるディスクリプタ個別情報を格納する第二の記憶機構と、
前記第一の記憶機構から読み出されるディスクリプタ共用情報と前記第二の記憶機構から読み出されるディスクリプタ個別情報とを入力して、ＤＭＡコントローラに供給されるべきディスクリプタ情報を出力する変換回路と、
を具備するデータ転送装置。
【請求項２】
前記第一の記憶機構は、複数のディスクリプタ共用情報を格納し得るものである、請求項１に記載のデータ転送装置。
【請求項３】
前記ディスクリプタ個別情報は、複数のディスクリプタ共用情報のうちの一つを選択する選択情報を含む、請求項２に記載のデータ転送装置。
【請求項４】
前記ディスクリプタ共用情報は、ＤＭＡ転送を開始すべきアドレスのうちの上位アドレスに関する情報を含む、請求項３に記載のデータ転送装置。
【請求項５】
前記ディスクリプタ個別情報は、ＤＭＡ転送を開始すべきアドレスのうちの下位アドレスに関する情報を含む、請求項４に記載のデータ転送装置。
【請求項６】
前記変換回路は、入力されたディスクリプタ個別情報に基づいて一つのディスクリプタ共用情報を選択し、該選択されたディスクリプタ共用情報内の上位アドレスと該ディスクリプタ個別情報内の下位アドレスとを組み合わせてアドレス情報を作成しＤＭＡコントローラに供給する、請求項５に記載のデータ転送装置。
【請求項７】
前記ディスクリプタ個別情報は、ＤＭＡ転送データ量を示すバイト・カウントに関する情報を含む、請求項１に記載のデータ転送装置。
【請求項８】
前記ディスクリプタ個別情報は、ディスクリプタ・チェインの有無を示すチェイン情報を含む、請求項１に記載のデータ転送装置。
【請求項９】
前記第二の記憶機構は、複数のディスクリプタ個別情報を格納するＦＩＦＯ構造を有する、請求項８に記載のデータ転送装置。
【請求項１０】
ディスクリプタを使用してＤＭＡコントローラを制御することにより該ＤＭＡコントローラにＤＭＡ転送を実行させるデータ転送方法であって、
（ａ）複数のディスクリプタで共用可能な情報であるディスクリプタ共用情報を第一の記憶機構に格納するステップと、
（ｂ）個々のディスクリプタごとに異なる情報であるディスクリプタ個別情報を第二の記憶機構に格納するステップと、
（ｃ）前記第一の記憶機構から読み出されるディスクリプタ共用情報と前記第二の記憶機構から読み出されるディスクリプタ個別情報とに基づいて、ＤＭＡコントローラに供給されるべきディスクリプタ情報を生成するステップと、
を具備するデータ転送方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ転送装置および方法に関し、特に、ＤＭＡ（Ｄｉｒｅｃｔ　Ｍｅｍｏｒｙ　Ａｃｃｅｓｓ）コントローラを有するデータ転送装置および方法に関する。
【０００２】
【従来の技術】
小型のコンピュータでは、入出力装置とメモリとの間、あるいはメモリ間のデータの受け渡しをＣＰＵ経由でなく直接行うＤＭＡ転送が行われており、かかるＤＭＡ転送のためにＤＭＡコントローラが使用されている。ＤＭＡコントローラは、メモリ・アドレス、転送サイズ等を設定されて起動されることで、ＤＭＡ転送を行う。
【０００３】
さらに、近年においては、ホスト・システムがリアルタイムにデータ転送を制御することによるシステム効率の低下を防ぐため、ディスクリプタ制御によるＤＭＡコントローラの制御方式が提案されている（例えば、下記特許文献１参照）。
【０００４】
図２０は、従来技術におけるディスクリプタの一構成例を示すフォーマット図である。同図に示される例では、一つのアドレス情報（ＡＤ）と一つのバイト・カウント情報（ＢＣ）とが組になって一つのディスクリプタ情報になる。
【０００５】
アドレス情報（ＡＤ）は、記憶機構内にあるＤＭＡ転送データの先頭位置（ａｄｄｒｅｓｓ）を示しており、３２ビット（Ｂｉｔ　３１−００）で構成される。バイト・カウント情報（ＢＣ）は、ＤＭＡ転送データの量を示しており、３２ビット（Ｂｉｔ　３１−００）で構成され、ビット３１−１４はリザーブ（Ｒｅｓｅｒｖｅ）領域であり、ビット１３−００は実際のバイト・カウント（Ｂｙｔｅ　ｃｏｕｎｔ）領域である。
【０００６】
図２１は、図２０に示されるディスクリプタを格納するディスクリプタ記憶機構の構成例を示す概略図である。同図に示されるように、このディスクリプタ記憶機構には、アドレス情報ＡＤｉとバイト・カウント情報ＢＣｉとで構成されるディスクリプタが複数個（同図ではｉ＝１，２，…，５に対応する５個）存在し得る。
【０００７】
図２２は、従来技術におけるＤＭＡコントローラのディスクリプタ情報の取り込み方法を説明する図である。ＤＭＡコントローラとディスクリプタ記憶機構とは共有バスを介して接続されており、ＤＭＡコントローラはその共有バスを介してディスクリプタ記憶機構に格納されているアドレス情報とバイト・カウント（Ｂｙｔｅ　ｃｏｕｎｔ）とを取り込む。ＤＭＡコントローラは、取り込んだアドレス情報とバイト・カウントとに基づいてＤＭＡ転送を行う。
【０００８】
図２３は、従来技術におけるディスクリプタの他の構成例を示すフォーマット図である。同図に示される例では、一つのアドレス情報（ＡＤ）と一つのバイト・カウント情報（ＢＣ）と一つのネクスト・ディスクリプタ・アドレス（ＮＤ）とが組になって一つのディスクリプタ情報になる。
【０００９】
図２０に示される例との相違点について説明すると、バイト・カウント情報（ＢＣ）のビット３１がチェイン・ビット（Ｃｈａｉｎ　ｂｉｔ）（Ｃ）になっている。このチェイン・ビット（Ｃ）は、複数のＤＭＡ転送を連続して行うかどうか、すなわちディスクリプタ・チェインを行うかどうか、を示すビットであり、このビットがオンの場合には、次の領域にネクスト・ディスクリプタ・アドレス（Ｎｅｘｔ　Ｄｅｓｃｒｉｐｔｏｒ　Ａｄｄｒｅｓｓ）が存在する。ネクスト・ディスクリプタ・アドレスとは、次に読み込むべきディスクリプタ情報の格納場所を示している。
【００１０】
図２４は、図２３に示されるディスクリプタを格納するディスクリプタ記憶機構の構成例を示す概略図である。同図に示されるように、このディスクリプタ記憶機構には、アドレス情報ＡＤｉとバイト・カウント情報ＢＣｉとネクスト・ディスクリプタ・アドレスＮＤｉとで構成されるディスクリプタが複数個（同図ではｉ＝１，２，…，５に対応する５個）存在し得る。
【００１１】
図２５は、ＤＭＡコントローラによる、図２４のディスクリプタ記憶機構に格納されているディスクリプタ情報の取り込み方法を説明する図である。図２５に示されるように、ディスクリプタ・チェインをサポートする場合、ＤＭＡコントローラは、アドレス情報およびバイト・カウントに加え、ネクスト・ディスクリプタ・アドレスをも取り込んで、ＤＭＡ転送を行う。
【００１２】
【特許文献１】
特開平５−２０４８２９号公報
【００１３】
【発明が解決しようとする課題】
ところで、前述のようにディスクリプタ情報をそのままディスクリプタ記憶機構に格納すると、ＤＭＡ制御対象の記憶領域などが多大・多数な場合、ディスクリプタに記載される情報も多大になり、ディスクリプタ情報を格納するための記憶機構も多大にならざるを得ないため、ハードウェア構成量が増加することになる。
【００１４】
また、ディスクリプタに記載される情報が多大になると、ディスクリプタ情報の転送回数が増加し、共有バスの使用回数が増加するため、共有バスをその他の処理に使えなくなりシステム性能が低下するおそれがある。
【００１５】
加えて、ディスクリプタ・チェインを行う場合には、ネクスト・ディスクリプタ・アドレスが必要になり、ディスクリプタに記載される情報が増加し、ディスクリプタ情報を格納するための記憶機構も増大するので、ハードウェア構成量がさらに増加することになる。
【００１６】
また、ネクスト・ディスクリプタ・アドレスが追加されると、ディスクリプタ情報の転送回数が増加し、共有バスの使用回数が増加し、共有バスをその他の処理に使用することができなくなるので、システム性能の更なる低下を招くおそれがある。
【００１７】
本発明は、上記のような課題に鑑みてなされたものであり、その目的は、メモリおよび共有バスを効率良く使用することができ、通信処理速度が早いデータ転送装置および方法を提供することにある。
【００１８】
【課題を解決するための手段】
上記目的を達成するために、本発明の第一の面によれば、ディスクリプタを使用してＤＭＡコントローラを制御することによりＤＭＡ転送を実行するデータ転送装置であって、複数のディスクリプタで共用可能な情報であるディスクリプタ共用情報を格納する第一の記憶機構と、個々のディスクリプタごとに異なる情報であるディスクリプタ個別情報を格納する第二の記憶機構と、前記第一の記憶機構から読み出されるディスクリプタ共用情報と前記第二の記憶機構から読み出されるディスクリプタ個別情報とを入力して、ＤＭＡコントローラに供給されるべきディスクリプタ情報を出力する変換回路と、を具備するデータ転送装置が提供される。
【００１９】
また、本発明の第二の面によれば、前記第一の面によるデータ転送装置において、前記第一の記憶機構は、複数のディスクリプタ共用情報を格納し得るものである。
【００２０】
また、本発明の第三の面によれば、前記第二の面によるデータ転送装置において、前記ディスクリプタ個別情報は、複数のディスクリプタ共用情報のうちの一つを選択する選択情報を含む。
【００２１】
また、本発明の第四の面によれば、前記代参の面によるデータ転送装置において、前記ディスクリプタ共用情報は、ＤＭＡ転送を開始すべきアドレスのうちの上位アドレスに関する情報を含む。
【００２２】
また、本発明の第五の面によれば、前記第四の面によるデータ転送装置において、前記ディスクリプタ個別情報は、ＤＭＡ転送を開始すべきアドレスのうちの下位アドレスに関する情報を含む。
【００２３】
また、本発明の第六の面によれば、前記第五の面によるデータ転送装置において、前記変換回路は、入力されたディスクリプタ個別情報に基づいて一つのディスクリプタ共用情報を選択し、該選択されたディスクリプタ共用情報内の上位アドレスと該ディスクリプタ個別情報内の下位アドレスとを組み合わせてアドレス情報を作成しＤＭＡコントローラに供給する。
【００２４】
また、本発明の第七の面によれば、前記第一の面によるデータ転送装置において、前記ディスクリプタ個別情報は、ＤＭＡ転送データ量を示すバイト・カウントに関する情報を含む。
【００２５】
また、本発明の第八の面によれば、前記第一の面によるデータ転送装置において、前記ディスクリプタ個別情報は、ディスクリプタ・チェインの有無を示すチェイン情報を含む。
【００２６】
また、本発明の第九の面によれば、前記第八の面によるデータ転送装置において、前記第二の記憶機構は、複数のディスクリプタ個別情報を格納するＦＩＦＯ構造を有する。
【００２７】
また、本発明の第十の面によれば、ディスクリプタを使用してＤＭＡコントローラを制御することにより該ＤＭＡコントローラにＤＭＡ転送を実行させるデータ転送方法であって、（ａ）複数のディスクリプタで共用可能な情報であるディスクリプタ共用情報を第一の記憶機構に格納するステップと、（ｂ）個々のディスクリプタごとに異なる情報であるディスクリプタ個別情報を第二の記憶機構に格納するステップと、（ｃ）前記第一の記憶機構から読み出されるディスクリプタ共用情報と前記第二の記憶機構から読み出されるディスクリプタ個別情報とに基づいて、ＤＭＡコントローラに供給されるべきディスクリプタ情報を生成するステップと、を具備するデータ転送方法が提供される。
【００２８】
上述したような構成を採ることにより、ディスクリプタ情報を共用情報と個別情報とに分けて格納すると、必要な記憶領域を減少させることができるため、ハードウェア構成量を削減することができる。また、ディスクリプタ共用情報をデータ転送ごとに転送する必要がなくなるため、転送すべき情報量を少なくすることが可能となり、バス使用率が削減される。その結果、バスを他の処理に使用することが可能となるため、システム性能の向上が図られる。
【００２９】
また、ディスクリプタ・チェインを行う場合、ディスクリプタ情報にディスクリプタ・チェインの有無を示すチェイン・ビットを設け、ディスクリプタ情報の記憶機構をＦＩＦＯ構造とし、チェイン・ビットがオンのとき、ＦＩＦＯ内にある次のディスクリプタが自動的に選択され得るようにすることで、ネクスト・ディスクリプタ・アドレスが不要となり、ディスクリプタに記載されるべき情報が減少し、ディスクリプタ情報を格納するための記憶機構が減少する結果、ハードウェア構成量を削減することが可能となる。さらに、ネクスト・ディスクリプタ・アドレスを転送する必要がなくなるため、バス使用率が削減され、バスを他の処理に使用することが可能となり、システム性能の向上が図られる。
【００３０】
【発明の実施の形態】
以下、図面を参照して本発明の好適な実施の形態を詳細に説明する。
【００３１】
＜第一実施形態＞
図１は、本発明を適用したＬＡＮカードの一実施形態の機能的な構成を示すブロック図である。ＬＡＮカードは、ＬＡＮ（Ｌｏｃａｌ　Ａｒｅａ　Ｎｅｔｗｏｒｋ）との接続をサポートする通信制御処理装置である。同図において、ＬＡＮカード本体１０は、情報処理装置１２とＤＭＡ（Ｄｉｒｅｃｔ　Ｍｅｍｏｒｙ　Ａｃｃｅｓｓ）処理装置１３とＰＣＩバス（Ｐｅｒｉｐｈｅｒａｌ　Ｃｏｍｐｏｎｅｎｔ　Ｉｎｔｅｒｃｏｎｎｅｃｔ　Ｂｕｓ）インタフェース１４とが共有バス１１で接続された構成を有している。
【００３２】
情報処理装置１２は、制御機構１８と記憶機構１９とを有する。記憶機構１９は、ソフトウェアやデータ等を蓄える装置（Ｍｅｍｏｒｙ）であり、ＤＭＡ転送データ格納領域２０を備えている。制御機構１８は、ソフトウェアを実行する装置（ＣＰＵ）であり、ディスクリプタ情報をＤＭＡ処理装置１３内の第一のディスクリプタ記憶機構２１および第二のディスクリプタ記憶機構２２へ書き込む作業と、ＤＭＡ転送データを記憶機構１９内のＤＭＡ転送データ格納領域２０へ書き込む作業とを行う。
【００３３】
ＤＭＡ処理装置１３は、ＤＭＡコントローラ２４を内蔵している装置であり、ディスクリプタの格納領域として共用情報を格納する第一のディスクリプタ記憶機構２１と個別情報を格納する第二のディスクリプタ機構２２とを備え、さらにディスクリプタの共用情報および個別情報を変換してＤＭＡコントローラ２４に渡すディスクリプタ変換回路２３を備えている。
【００３４】
ＰＣＩバスインタフェース１４は、ＰＣＩカードエッジ１７を介してＬＡＮカード本体の外部にあるホストのＰＣＩバスと内部の共有バス１１とをつなぐ装置である。
【００３５】
また、ＬＡＮカード１０は、ＭＡＣ（Ｍｅｄｉａ　Ａｃｃｅｓｓ　Ｃｏｎｔｒｏｌ）１５を備える。ＭＡＣ１５は、ＩＯバス２５を介してＤＭＡ処理装置１３と接続され、ＤＭＡ転送されるデータを所定のフレームフォーマットに変換し、ＬＡＮインタフェース１６を介して外部へ送信し、あるいはＬＡＮインタフェース１６から受信したフレームフォーマットによるデータを解読し、自分宛のデータであるか否かを判断する。
【００３６】
図２（Ａ）および（Ｂ）は、本実施形態におけるディスクリプタの構成を示すフォーマット図である。ディスクリプタ情報は、図２（Ａ）に示されるディスクリプタ共用情報と図２（Ｂ）に示されるディスクリプタ個別情報とからなる。すなわち、一つの共用情報と一つの個別情報とが組になって一つのディスクリプタ情報が構成される。
【００３７】
ディスクリプタ共用情報は、３２ビットで構成され、ＤＭＡ転送データの送受信を行う際の先頭アドレスの上位２バイト（上位アドレス）を設定・表示するものである。アラインメント（Ａｌｉｇｎｍｅｎｔ）は６４キロバイト（ｋｂｙｔｅｓ）単位である。ビット３１−１６は上位アドレス領域（Ｈｅａｄ　ａｄｄｒｅｓｓ）であり、ビット１５−００はリザーブ（Ｒｅｓｅｒｖｅ）領域である。
【００３８】
ディスクリプタ個別情報は、３２ビットで構成され、ＤＭＡ転送データの送受信を行う際の先頭アドレス・セレクト符号、バイト・カウント（Ｂｙｔｅ　ｃｏｕｎｔ）、下位アドレスを設定・表示するものである。
【００３９】
具体的には、ビット３１はセレクト（Ｓｅｌｅｃｔ）領域（Ｓ）であり、この領域の値が「０」のとき先頭アドレスとして後述するディスクリプタ共用情報Ａが選択され、「１」のとき先頭アドレスとして後述するディスクリプタ共用情報Ｂが選択されることになる。
【００４０】
ビット３０はリザーブ（Ｒｅｓｅｒｖｅ）領域（Ｒ）であり、ビット２９−１６はバイト・カウント（Ｂｙｔｅ　ｃｏｕｎｔ）すなわちバイト長（Ｂｙｔｅ　ｌｅｎｇｔｈ）領域であり、ビット１５−００はオフセット（Ｏｆｆｓｅｔ）すなわち下位アドレス領域である。
【００４１】
図３（Ａ）および（Ｂ）は、本実施形態における第一のディスクリプタ記憶機構２１および第二のディスクリプタ機構２２の構成をそれぞれ示す概略図である。これらの図に示されるように、ディスクリプタ情報は、ディスクリプタ共用情報とディスクリプタ個別情報とに分けて対応する記憶機構に格納され、共用情報を格納するものを第一のディスクリプタ記憶機構（図３（Ａ））、個別情報を格納するものを第二のディスクリプタ記憶機構（図３（Ｂ））とし、ディスクリプタ共用情報およびディスクリプタ個別情報とも対応する記憶機構に複数個存在しうる。
【００４２】
なお、図３（Ａ）および（Ｂ）では、第一のディスクリプタ記憶機構２１にはディスクリプタ共用情報ＡおよびＢという二つの共用情報が格納されており、第二のディスクリプタ記憶機構２２にはディスクリプタ個別情報１−５という五つの個別情報が格納されている例を示しているが、本発明はこれに限られるものではない。
【００４３】
例えば、ディスクリプタ共用情報が二つ（ＡおよびＢ）から四つ（Ａ，Ｂ，ＣおよびＤ）になると、四つのディスクリプタ共用情報の一つを選択するためにディスクリプタ個別情報のセレクト領域がリザーブ領域のビット３０まで拡張されることになる。
【００４４】
図４は、本実施形態におけるディスクリプタ変換回路２３の機能的な構成を示す概念図である。ディスクリプタ変換回路２３は、第一のディスクリプタ記憶機構２１に格納されているディスクリプタ共用情報Ａおよびディスクリプタ共用情報Ｂのうち、ディスクリプタ個別情報内のセレクト領域の値（Ｓｅｌｅｃｔ）に基づいて、いずれか一方のディスクリプタ共用情報内の先頭アドレス上位２バイトすなわち上位アドレス（Ｈｅａｄ　ａｄｄｒｅｓｓ）を選択するセレクタ４１を備えている。
【００４５】
また、選択された上位アドレス（先頭アドレス上位２バイト）とディスクリプタ個別情報内の下位アドレスすなわちオフセット（Ｏｆｆｓｅｔ）とを組み合わせて（すなわち、合流させて）アドレス情報を作成する回路４２と、ディスクリプタ個別情報内のバイト・カウント（Ｂｙｔｅ　ｃｏｕｎｔ）を抽出する回路４３とが備えられている。
【００４６】
ディスクリプタ変換回路２３は、第二のディスクリプタ記憶機構２２に任意のディスクリプタ個別情報が入力されると、ディスクリプタ情報の変換を行う。すなわち、入力されたディスクリプタ個別情報内のセレクト領域の値（Ｓｅｌｅｃｔ）に応じて、所定のディスクリプタ共用情報内の先頭アドレス（Ｈｅａｄ　ａｄｄｒｅｓｓ）すなわち上位アドレスを選択し、ディスクリプタ個別情報内のオフセット（Ｏｆｆｓｅｔ）すなわち下位アドレスと組み合わせてアドレス情報を作成し、ディスクリプタ個別情報内のバイト・カウント（Ｂｙｔｅ　ｃｏｕｎｔ）を切り出してバイト・カウント情報を作成する。こうして作成されたアドレス情報とバイト・カウント情報とはＤＭＡコントローラ２４へ送出される。
【００４７】
以上の構成を有する本実施形態におけるＬＡＮカードの動作を、図１および図５〜図７を参照して説明する。図５〜図７は本実施形態のＬＡＮカードの主要動作を示すフローチャートであり、図５は制御機構１８によるディスクリプタ共用情報の転送動作を示すフローチャートであり、図６は制御機構１８によるディスクリプタ個別情報の転送動作を示すフローチャートであり、図７はＤＭＡ処理装置１３によるＤＭＡ転送の動作を示すフローチャートである。
【００４８】
先ず、図５において、制御機構１８は共有バス１１が空いているかどうかを確認し（ステップ５０１）、共有バス１１が空いている場合にはステップ５０２へ進み、空いていない場合には共有バス１１が空くまで所定時間待つ。
【００４９】
共有バス１１が空いていると、制御機構１８は、共有バス１１を介して、ディスクリプタ共用情報をＤＭＡ処理装置１３内の第一のディスクリプタ記憶機構２１へ格納し（ステップ５０２）、ディスクリプタ共用情報の格納を終えると、他の処理へ移行する。
【００５０】
次に、図６において、制御機構１８は、ＤＭＡ転送の要求が発生すると（ステップ６０１）、共有バス１１が空いているか確認し（ステップ６０２）、共有バス１１が空いている場合にはステップ６０３へ進み、空いていない場合には共有バス１１が空くまで所定時間待つ。
【００５１】
共有バスが空いていると、ステップ６０３において、制御機構１８は、ＤＭＡの対象となるデータを情報処理装置１２内の記憶機構１９のＤＭＡ転送データ格納領域２０に格納し、ステップ６０４へ進む。そして、制御機構１８は、ディスクリプタ個別情報をＤＭＡ処理装置１３内の第二のディスクリプタ記憶機構２２へ格納し（ステップ６０４）、ディスクリプタ個別情報の格納を終えると、他の処理へ移行する。
【００５２】
一方、図７において、ＤＭＡ処理装置１３は、第二のディスクリプタ記憶機構２２にディスクリプタ個別情報が書き込まれたかどうか常時チェックし（ステップ７０１）、新しいディスクリプタ個別情報が書き込まれるとステップ７０２へ進む。
【００５３】
そして、ディスクリプタ変換回路２３は、書き込まれたディスクリプタ個別情報と既に格納済みのディスクリプタ共用情報とを読取り、ＤＭＡコントローラ２４が認識し得る形式のアドレス情報およびバイト・カウント（Ｂｙｔｅ　ｃｏｕｎｔ）へ変換し（ステップ７０２）、変換が完了したディスクリプタ情報（アドレス情報とバイト・カウント）をＤＭＡコントローラ２４へ送出する（ステップ７０３）。
【００５４】
次に、ＤＭＡコントローラ２４は、変換されたディスクリプタ情報（アドレス情報とバイト・カウント）を解析する（ステップ７０４）。次いで、共有バス１１およびＩＯバス２５が空いているか確認し（ステップ７０５）、共有バス１１およびＩＯバス２５が空いている場合にはステップ７０６へ進み、空いていない場合には共有バス１１およびＩＯバス２５が空くまで所定時間待つ。
【００５５】
共有バス１１およびＩＯバス２５が空いていると、ＤＭＡコントローラ２４は、記憶機構１９内のＤＭＡ対象データを特定し、解析したディスクリプタ情報にしたがって共有バス１１およびＩＯバス２５を使用してＤＭＡ転送を行う（ステップ７０６）。転送が終わると、ＤＭＡ処理装置１３は、次のディスクリプタ個別情報の書き込みがあるまで待機する。
【００５６】
図８は、本実施形態におけるディスクリプタ情報の転送タイミングを示すタイミングチャートである。同図において、「Ａ」と「Ｂ」はそれぞれディスクリプタ共用情報Ａとディスクリプタ共用情報Ｂを表し、「１」〜「５」はそれぞれディスクリプタ個別情報１〜５を表している。本実施形態のＤＭＡ転送において、ディスクリプタ情報をＤＭＡ処理装置１３へ送るときには、予めディスクリプタ共用情報を送っておき、その後ＤＭＡ転送が必要になったときにディスクリプタ個別情報のみを送る。
【００５７】
図８の例では、サイクルτ１とτ２にそれぞれディスクリプタ共用情報ＡとＢを送り、サイクルτ３にディスクリプタ個別情報１を送り、サイクルτ４にディスクリプタ個別情報２を、サイクルτ５にディスクリプタ個別情報３を、サイクルτ６にディスクリプタ個別情報４を、サイクルτ７にディスクリプタ個別情報５を順次送っている。しかしながら、ディスクリプタ個別情報の送り方はこれに限られるものではなく、ＤＭＡ転送の要求に応じて適時送られることになる。
【００５８】
一方、図９は、従来技術におけるディスクリプタ情報の転送タイミングを示すタイミングチャートである。同図において、「ＡＤ１」〜「ＡＤ５」はそれぞれディスクリプタ情報内のアドレス情報を表し、「ＢＣ１」〜「ＢＣ５」はそれぞれディスクリプタ情報内のバイト・カウント情報を表している。
【００５９】
従来技術のＤＭＡ転送において、ディスクリプタ情報をＤＭＡ処理装置へ送るときには、各ディスクリプタ情報内のアドレス情報とバイト・カウント情報とをそれぞれ送っている。すなわち、サイクルτ１にディスクリプタ情報１のアドレス情報を送り、サイクルτ２にディスクリプタ１のバイト・カウント情報を送る。
【００６０】
同様に、サイクルτ３にディスクリプタ２のアドレス情報を、サイクルτ４にディスクリプタ２のバイト・カウント情報を、サイクルτ５にディスクリプタ３のアドレス情報を、サイクルτ６にディスクリプタ３のバイト・カウント情報を、サイクルτ７にディスクリプタ４のアドレス情報を、サイクルτ８にディスクリプタ４のバイト・カウント情報を、サイクルτ９にディスクリプタ５のアドレス情報を、サイクルτ１０にディスクリプタ５のバイト・カウント情報をそれぞれ送っている。
【００６１】
従来技術のＤＭＡ転送では、すべてのディスクリプタ１〜５の情報を転送するのにかかる時間はτ１〜τ１０であるのに対し、本実施形態の場合、ディスクリプタ１〜５のすべての情報を転送するのにかかる時間はτ１〜τ７となり、共有バスを占有する時間が短く、従来技術に比べて改善が図られる。
【００６２】
このように本実施形態では、ディスクリプタ情報の共用情報を抜き出し、分離格納することによりハードウェア構成量を削減することができる。また、共有バス上を転送する情報が減るので、共有バスの使用率が下がり、その分共有バスをその他の処理に使用することができるため性能向上が期待される。
【００６３】
図１０は、本発明を適用したＬＡＮカードを搭載したサーバの一実施形態の構成を示すブロック図である。同図において、サーバ本体５０は、ＣＰＵ５１、メモリ５２、ハードディスクドライブ（ＨＤＤ）５３、バスインタフェース５４、および複数のＬＡＮカード１０を備えており、ＣＰＵ５１、メモリ５２、ＨＤＤ５３はバスインタフェース５４を介して相互に接続されている。各ＬＡＮカード１０は、ＰＣＩバス５５を介してバスインタフェース５４と接続されており、ＬＡＮケーブル５６を介して外部のＬＡＮとも接続することが可能である。
【００６４】
＜第二実施形態＞
図１１は、本発明を適用したＬＡＮカードの他の実施形態の機能的な構成を示すブロック図である。同図におけるＬＡＮカード本体１０においては、情報処理装置１２とＤＭＡ（Ｄｉｒｅｃｔ　Ｍｅｍｏｒｙ　Ａｃｃｅｓｓ）処理装置１３とＰＣＩバス（Ｐｅｒｉｐｈｅｒａｌ　Ｃｏｍｐｏｎｅｎｔ　Ｉｎｔｅｒｃｏｎｎｅｃｔ　Ｂｕｓ）インタフェース１４とが共有バス１１で接続されている。
【００６５】
情報処理装置１２は、制御機構１８と記憶機構１９とを有する。記憶機構１９は、ソフトウェアやデータ等を蓄える装置（Ｍｅｍｏｒｙ）であり、ＤＭＡ転送データ格納領域２０、第一のディスクリプタ記憶機構２１および第二のディスクリプタ記憶機構２２を備えている。制御機構１８は、ソフトウェアを実行する装置（ＣＰＵ）であり、ディスクリプタ情報を記憶機構１９内の第一のディスクリプタ記憶機構２１および第二のディスクリプタ記憶機構２２へ書き込む作業と、ＤＭＡ転送データを記憶機構１９内のＤＭＡ転送データ格納領域２０へ書き込む作業とを行う。
【００６６】
ＤＭＡ処理装置１３は、ＤＭＡコントローラ２４を内蔵している装置であり、送られてきたディスクリプタ情報を保持するためのメモリ３０を備え、さらにディスクリプタの共用情報および個別情報を変換してＤＭＡコントローラ２４に渡すディスクリプタ変換回路２３を備えている。
【００６７】
ＰＣＩバスインタフェース１４は、ＰＣＩカードエッジ１７を介してＬＡＮカード本体の外部にあるホストのＰＣＩバスと内部の共有バス１１とをつなぐ装置である。
【００６８】
また、ＬＡＮカード１０は、ＭＡＣ（Ｍｅｄｉａ　Ａｃｃｅｓｓ　Ｃｏｎｔｒｏｌ）１５を備える。ＭＡＣ１５は、ＩＯバス２５を介してＤＭＡ処理装置１３と接続され、ＤＭＡ転送されたデータを所定フレームフォーマットに変換し、ＬＡＮインタフェース１６を介して外部へ送信する、あるいはＬＡＮインタフェース１６から受信したフレームフォーマットによるデータを解読し、自分宛のデータであるか否かを判断する。
【００６９】
本実施形態におけるディスクリプタの構成は第一実施形態において説明した図２（Ａ）および（Ｂ）と同様であり、第一および第二のディスクリプタ記憶機構の構成も図３（Ａ）および（Ｂ）と同様であり、ディスクリプタ変換回路２３の機能的な構成も図４と同様のため、ここでは説明を省略する。
【００７０】
以上の構成を有する本実施形態におけるＬＡＮカードの動作を、図１１および図１２〜図１４を参照して説明する。図１２〜図１４は本実施形態のＬＡＮカードの主要動作を示すフローチャートであり、図１２は制御機構１８によるディスクリプタ情報の転送動作を示すフローチャートであり、図１３および図１４はＤＭＡ処理装置１３によるＤＭＡ転送の動作を示すフローチャートである。
【００７１】
先ず、図１２において、制御機構１８は、ＤＭＡ転送の要求が発生すると（ステップ１２０１）、共有バス１１が空いているか確認し（ステップ１２０２）、共有バスが空いている場合にはステップ１２０３へ進み、空いていない場合には共有バス１１が空くまで所定時間待つ。
【００７２】
共有バス１１が空いていると、制御機構１８は、ＤＭＡの対象となるデータを情報処理装置１２の記憶機構１９内のＤＭＡ転送データ格納領域２０に格納し（ステップ１２０３）、次のステップ１２０４へ進む。ステップ１２０４において、制御機構１８は、ディスクリプタ共用情報および個別情報を第一および第二のディスクリプタ記憶機構２１および２２へそれぞれ格納し、ディスクリプタ情報の格納を終えると、他の処理へ移行する。なお、ディスクリプタ共用情報が既に第一のディスクリプタ記憶機構２１内に格納されている場合には、ディスクリプタ個別情報の格納のみが行われる。
【００７３】
一方、図１３において、ＤＭＡ処理装置１３は、タイマ等により一定時間経ったかどうか常時チェックし（ステップ１３０１）、所定時間毎にステップ１３０２へ進み、共有バス１１が空いているか確認し、共有バス１１が空いている場合にはステップ１３０３へ進み、空いていない場合には共有バス１１が空くまで所定時間待つ。
【００７４】
共有バス１１が空いていると、ＤＭＡ処理装置１３は、情報処理装置１２内の第一および第二のディスクリプタ記憶機構２１および２２を読み込み（ステップ１３０３）、新しいディスクリプタ情報がディスクリプタ記憶機構にあるかどうかチェックし（ステップ１３０４）、新しいディスクリプタ情報がある場合にはステップ１３０５へ進み、新しいディスクリプタ情報がない場合にはステップ１３０１へ戻る。
【００７５】
新しいディスクリプタ情報がある場合には、共有バス１１が空いているか確認し（ステップ１３０５）、共有バス１１が空いている場合にはステップ１３０６へ進み、空いていない場合には共有バス１１が空くまで所定時間待つ。
【００７６】
そして、図１４のステップ１３０６では、ディスクリプタ記憶機構２１および２２からメモリ３０へとディスクリプタ共用情報および個別情報が読み込まれる。ディスクリプタ変換回路２３は、そのディスクリプタ共用情報および個別情報を、ＤＭＡコントローラ２４が認識し得る形式のアドレス情報およびバイト・カウントへ変換し、変換済みの情報をＤＭＡコントローラ２４へ送出する（ステップ１３０７）。
【００７７】
なお、情報処理装置１２内の第一のディスクリプタ記憶機構２１から読み込まれたディスクリプタ共用情報をＤＭＡ処理装置１３内のメモリ３０に保持しておけば、ディスクリプタ共用情報の読み込みは最初の一回だけで済み、二回目以降の読み込み処理を省略することが可能であり、共有バスの占有時間を短縮することができる。
【００７８】
次に、ＤＭＡコントローラ２４は、変換されたディスクリプタ情報（アドレス情報とバイト・カウント）を解析し（ステップ１３０８）、共有バス１１およびＩＯバス２５が空いているか確認し（ステップ１３０９）、共有バス１１およびＩＯバス２５が空いている場合にはステップ１３１０へ進み、空いていない場合には共有バス１１およびＩＯバス２５が空くまで所定時間待つ。
【００７９】
共有バス１１およびＩＯバス２５が空いていると、ＤＭＡコントローラ２４は、記憶機構１９内のＤＭＡ対象データを特定し、解析したディスクリプタ情報に従い共有バス１１およびＩＯバス２５を使用してＤＭＡ転送を行う（ステップ１３１０）。転送を終えると次のディスクリプタの書き込みがあるまで待機する。
【００８０】
前述した第一実施形態では、ディスクリプタ共用情報を格納する第一のディスクリプタ記憶機構２１およびディスクリプタ個別情報を格納する第二のディスクリプタ記憶機構２２をともにＤＭＡ処理装置１３内に設ける一方、第二実施形態では、第一のディスクリプタ記憶機構２１および第二のディスクリプタ記憶機構２２をともに情報処理装置１２に設けているが、ディスクリプタ共用情報を格納する第一のディスクリプタ記憶機構２１はＤＭＡ処理装置１３内に設けるとともにディスクリプタ個別情報を格納する第二のディスクリプタ記憶機構２２は情報処理装置１２に設ける構成としてもよい。
【００８１】
＜第三実施形態＞
最後に、本発明を適用したＬＡＮカードの第三実施形態について説明する。この第三実施形態の基本的な構成は、前述した第一実施形態に関する図１の構成と同一となるが、第一実施形態に対してディスクリプタ・チェインをサポートするための改造が追加されている。
【００８２】
図１５（Ａ）および（Ｂ）は、それぞれ、本実施形態におけるディスクリプタ共用情報およびディスクリプタ個別情報の構成を示すフォーマット図である。前述した第一実施形態に係る図２（Ａ）および（Ｂ）と比較してわかるように、本実施形態におけるディスクリプタ共用情報（図１５（Ａ））は第一実施形態のもの（図２（Ａ））と同一である。
【００８３】
一方、本実施形態におけるディスクリプタ個別情報（図１５（Ｂ））は第一実施形態のもの（図２（Ｂ））と若干異なり、ビット３０がチェイン・ビット（Ｃｈａｉｎ　ｂｉｔ）（Ｃ）として使用されるようになっている。このチェイン・ビット（Ｃ）は、複数のＤＭＡ転送を連続して行うかどうか、すなわちディスクリプタ・チェインを行うかどうか、を示すビットである。
【００８４】
図１６（Ａ）および（Ｂ）は、本実施形態における第一のディスクリプタ記憶機構２１および第二のディスクリプタ機構２２の構成をそれぞれ示す概略図である。前述した第一実施形態に係る図３（Ａ）および（Ｂ）と比較してわかるように、本実施形態における第一のディスクリプタ記憶機構２１（図１６（Ａ））は第一実施形態のもの（図３（Ａ））と同一である。
【００８５】
一方、本実施形態における第二のディスクリプタ機構２２（図１６（Ｂ））は第一実施形態のもの（図３（Ｂ））と若干異なり、ビット３０がチェイン・ビット（Ｃｈａｉｎ　ｂｉｔ）（Ｃ）として使用されるようになっている。また、本実施形態における第二のディスクリプタ機構２２（図１６（Ｂ））は、ＦＩＦＯ（Ｆｉｒｓｔ　Ｉｎ　Ｆｉｒｓｔ　Ｏｕｔ）構造となっている。
【００８６】
図１７は、本実施形態におけるディスクリプタ変換回路２３の機能的な構成を示す図である。前述した第一実施形態に係る図４のディスクリプタ変換回路と比較してわかるように、本実施形態におけるディスクリプタ変換回路では、ディスクリプタ個別情報内のチェイン・ビット（Ｃｈａｉｎ　ｂｉｔ）を抽出する回路４４が追加されている。
【００８７】
次に、ディスクリプタ・チェインをサポートする第三実施形態に係るＬＡＮカードの動作について説明する。制御機構１８によるディスクリプタ共用情報の転送動作は、前述した第一実施形態に係る図５のフローチャートに示されるものと同一となり、また、制御機構１８によるディスクリプタ個別情報の転送動作も、前述した第一実施形態に係る図６のフローチャートに示されるものと同一となる。
【００８８】
一方、ＤＭＡ処理装置１３によるＤＭＡ転送動作は、図１８に示されるフローチャートのようになる。この図１８のフローチャートと、前述した第一実施形態に係る図７のフローチャートとを比較してわかるとおり、図１８のステップ１８０１〜１８０６は図７のステップ７０１〜７０６と同一となるが、図１８では新たなステップ１８０７および１８０８が追加されている。
【００８９】
ステップ１８０７では、チェイン・ビットがＯＮか否かが判定され、チェイン・ビットがＯＮでない、すなわちＯＦＦの場合には、処理が終了する。一方、チェイン・ビットがＯＮである場合には、ステップ１８０８に進む。ステップ１８０８では、ディスクリプタ変換回路２３は、ＦＩＦＯ構造における次のディスクリプタ個別情報を読み取り、対応するディスクリプタ共用情報を選択し、そしてＤＭＡコントローラ２４が認識し得る形式のアドレス情報およびバイト・カウントを作成する。そして、ステップ１８０３に戻る。
【００９０】
このように、本実施形態におけるディスクリプタ・チェインでは、ディスクリプタ個別情報の記憶機構がＦＩＦＯ構造とされ、チェイン・ビットがオンのとき、ＦＩＦＯ内にある次のディスクリプタが自動的に選択されるように構成されているため、ネクスト・ディスクリプタ・アドレスが不要となる。その結果、ディスクリプタに記載されるべき情報が減少し、ディスクリプタ情報を格納するための記憶機構が減少するため、ハードウェア構成量を削減することが可能となる。
【００９１】
また、本実施形態におけるディスクリプタ情報の転送タイミングを示すタイミングチャートは、前述した第一実施形態に係る図８に示されるものと同一となる。一方、図２４に示される従来技術のように、ディスクリプタ情報を共用情報と個別情報とに分離することなく、さらにネクスト・ディスクリプタ・アドレスをも有してディスクリプタ・チェインをサポートする場合には、ディスクリプタ情報の転送タイミングは図１９に示されるようになる。
【００９２】
図８と図１９との比較から明らかなように、本実施形態においては、ネクスト・ディスクリプタ・アドレスを転送する必要がなくなるため、バス使用率が削減され、バスを他の処理に使用することが可能となり、システム性能の向上が図られる。
【００９３】
以上、図面に基づいて本発明に係る実施形態を説明してきたが、当業者にとっては種々の変更が可能であり、例えば、本発明をＬＡＮカード以外のデータ転送装置に適用することも可能であり、ＬＡＮに代えてＡＤＳＬ等の他の通信網を採用することも可能である。
【００９４】
また、ＬＡＮカードのＤＭＡコントローラに適用した場合について説明したが、それに限定されるものではなく、例えば、単独で構成される汎用のＤＭＡコントローラやコンピュータネットワークを構成する各種の端末機器及びワークステーション等にも広く適用できる。
【００９５】
以上、本発明を特にその好ましい実施の形態を参照して詳細に説明した。本発明の容易な理解のため、本発明の具体的な形態を以下に付記する。
【００９６】
（付記１）　ディスクリプタを使用してＤＭＡコントローラを制御することによりＤＭＡ転送を実行するデータ転送装置であって、
複数のディスクリプタで共用可能な情報であるディスクリプタ共用情報を格納する第一の記憶機構と、
個々のディスクリプタごとに異なる情報であるディスクリプタ個別情報を格納する第二の記憶機構と、
前記第一の記憶機構から読み出されるディスクリプタ共用情報と前記第二の記憶機構から読み出されるディスクリプタ個別情報とを入力して、ＤＭＡコントローラに供給されるべきディスクリプタ情報を出力する変換回路と、
を具備するデータ転送装置。
【００９７】
（付記２）　前記第一の記憶機構は、複数のディスクリプタ共用情報を格納し得るものである、付記１に記載のデータ転送装置。
【００９８】
（付記３）　前記ディスクリプタ個別情報は、複数のディスクリプタ共用情報のうちの一つを選択する選択情報を含む、付記２に記載のデータ転送装置。
【００９９】
（付記４）　前記ディスクリプタ共用情報は、ＤＭＡ転送を開始すべきアドレスのうちの上位アドレスに関する情報を含む、付記３に記載のデータ転送装置。
【０１００】
（付記５）　前記ディスクリプタ個別情報は、ＤＭＡ転送を開始すべきアドレスのうちの下位アドレスに関する情報を含む、付記４に記載のデータ転送装置。
【０１０１】
（付記６）　前記変換回路は、入力されたディスクリプタ個別情報に基づいて一つのディスクリプタ共用情報を選択し、該選択されたディスクリプタ共用情報内の上位アドレスと該ディスクリプタ個別情報内の下位アドレスとを組み合わせてアドレス情報を作成しＤＭＡコントローラに供給する、付記５に記載のデータ転送装置。
【０１０２】
（付記７）　前記ディスクリプタ個別情報は、ＤＭＡ転送データ量を示すバイト・カウントに関する情報を含む、付記１に記載のデータ転送装置。
【０１０３】
（付記８）　前記変換回路は、入力されたディスクリプタ個別情報内のバイト・カウントをＤＭＡコントローラに供給する、付記７に記載のデータ転送装置。
【０１０４】
（付記９）　前記ディスクリプタ個別情報は、ディスクリプタ・チェインの有無を示すチェイン情報を含む、付記１に記載のデータ転送装置。
【０１０５】
（付記１０）　前記第二の記憶機構は、複数のディスクリプタ個別情報を格納するＦＩＦＯ構造を有する、付記９に記載のデータ転送装置。
【０１０６】
（付記１１）　前記チェイン情報がディスクリプタ・チェイン有りを示すときに、前記変換回路が連続して動作する、付記１０に記載のデータ転送装置。
【０１０７】
（付記１２）　付記１から付記１１までのいずれか一項に記載のデータ転送装置を具備するＬＡＮカード。
【０１０８】
（付記１３）　制御機構及びＤＭＡ転送データ格納領域を有する記憶機構を備えた情報処理装置と、
前記第一の記憶機構、第二の記憶機構、変換回路及びＤＭＡコントローラを備えたＤＭＡ処理装置と、
前記情報処理装置と前記ＤＭＡ処理装置とを接続する共有バスと、
を具備する、付記１２に記載のＬＡＮカード。
【０１０９】
（付記１４）　付記１２に記載のＬＡＮカードを具備するサーバ。
【０１１０】
（付記１５）　ディスクリプタを使用してＤＭＡコントローラを制御することにより該ＤＭＡコントローラにＤＭＡ転送を実行させるデータ転送方法であって、
（ａ）複数のディスクリプタで共用可能な情報であるディスクリプタ共用情報を第一の記憶機構に格納するステップと、
（ｂ）個々のディスクリプタごとに異なる情報であるディスクリプタ個別情報を第二の記憶機構に格納するステップと、
（ｃ）前記第一の記憶機構から読み出されるディスクリプタ共用情報と前記第二の記憶機構から読み出されるディスクリプタ個別情報とに基づいて、ＤＭＡコントローラに供給されるべきディスクリプタ情報を生成するステップと、
を具備するデータ転送方法。
【０１１１】
（付記１６）　ステップ（ａ）は、複数のディスクリプタ共用情報を格納するものである、付記１５に記載のデータ転送方法。
【０１１２】
（付記１７）　前記ディスクリプタ個別情報は、複数のディスクリプタ共用情報のうちの一つを選択する選択情報を含む、付記１６に記載のデータ転送方法。
【０１１３】
（付記１８）　前記ディスクリプタ共用情報は、ＤＭＡ転送を開始すべきアドレスのうちの上位アドレスに関する情報を含む、付記１７に記載のデータ転送方法。
【０１１４】
（付記１９）　前記ディスクリプタ個別情報は、ＤＭＡ転送を開始すべきアドレスのうちの下位アドレスに関する情報を含む、付記１８に記載のデータ転送方法。
【０１１５】
（付記２０）　ステップ（ｃ）は、一つのディスクリプタ個別情報に基づいて一つのディスクリプタ共用情報を選択し、該選択されたディスクリプタ共用情報内の上位アドレスと該ディスクリプタ個別情報内の下位アドレスとを組み合わせてアドレス情報を作成しＤＭＡコントローラに供給することを含む、付記１９に記載のデータ転送方法。
【０１１６】
（付記２１）　前記ディスクリプタ個別情報は、ＤＭＡ転送データ量を示すバイト・カウントに関する情報を含む、付記１５に記載のデータ転送方法。
【０１１７】
（付記２２）　ステップ（ｃ）は、ディスクリプタ個別情報内のバイト・カウントをＤＭＡコントローラに供給することを含む、付記２１に記載のデータ転送方法。
【０１１８】
（付記２３）　前記ディスクリプタ個別情報は、ディスクリプタ・チェインの有無を示すチェイン情報を含む、付記１５に記載のデータ転送方法。
【０１１９】
（付記２４）　前記第二の記憶機構は、複数のディスクリプタ個別情報を格納するＦＩＦＯ構造を有する、付記２３に記載のデータ転送方法。
【０１２０】
（付記２５）　前記チェイン情報がディスクリプタ・チェイン有りを示すときに、ステップ（ｃ）が連続して実行される、付記２４に記載のデータ転送方法。
【０１２１】
【発明の効果】
以上説明したように、本発明によれば、ディスクリプタ情報を共用情報と個別情報とに分けて格納することで、必要な記憶領域を減少させることができるため、ハードウェア構成量を削減することができる。また、ディスクリプタにおける共通の情報をデータ転送ごとに転送する必要がなくなるため、転送すべき情報量を少なくすることが可能となり、バス使用率が削減される。その結果、バスを他の処理に使用することが可能となるため、システム性能の向上が図られる。
【０１２２】
また、ディスクリプタ・チェインを行う場合、ＦＩＦＯ構造を採用することで、ネクスト・ディスクリプタ・アドレスが不要となり、ディスクリプタに記載されるべき情報が減少し、ディスクリプタ情報を格納するための記憶機構が減少するので、ハードウェア構成量を削減することが可能となる。また、ネクスト・ディスクリプタ・アドレスを転送する必要がなくなるため、バス使用率が削減され、バスを他の処理に使用することが可能となり、システム性能の向上が図られる。
【図面の簡単な説明】
【図１】本発明を適用したＬＡＮカードの第一実施形態の機能的な構成を示すブロック図である。
【図２】（Ａ）および（Ｂ）は、それぞれディスクリプタ共用情報およびディスクリプタ個別情報の構成を示すフォーマット図である。
【図３】（Ａ）および（Ｂ）は、それぞれ第一のディスクリプタ記憶機構および第二のディスクリプタ機構の構成を示すブロック図である。
【図４】ディスクリプタ変換回路の機能的な構成を示すブロック図である。
【図５】制御機構によるディスクリプタ共用情報の転送動作を示すフローチャートである。
【図６】制御機構によるディスクリプタ個別情報の転送動作を示すフローチャートである。
【図７】ＤＭＡ処理装置によるＤＭＡ転送の動作を示すフローチャートである。
【図８】本実施形態におけるディスクリプタ情報の転送タイミングを示すタイミングチャートである。
【図９】従来技術におけるディスクリプタ情報の転送タイミングを示すタイミングチャートである。
【図１０】本発明を適用したＬＡＮカードを搭載したサーバの一実施形態の構成を示すブロック図である。
【図１１】本発明を適用したＬＡＮカードの第二実施形態の機能的な構成を示すブロック図である。
【図１２】第二実施形態における、制御機構によるディスクリプタ情報の転送動作を示すフローチャートである。
【図１３】第二実施形態における、ＤＭＡ処理装置によるＤＭＡ転送の動作を示すフローチャート（１／２）である。
【図１４】第二実施形態における、ＤＭＡ処理装置によるＤＭＡ転送の動作を示すフローチャート（２／２）である。
【図１５】（Ａ）および（Ｂ）は、第三実施形態におけるそれぞれディスクリプタ共用情報およびディスクリプタ個別情報の構成を示すフォーマット図である。
【図１６】（Ａ）および（Ｂ）は、第三実施形態におけるそれぞれ第一のディスクリプタ記憶機構および第二のディスクリプタ機構の構成を示すブロック図である。
【図１７】第三実施形態におけるディスクリプタ変換回路の機能的な構成を示すブロック図である。
【図１８】第三実施形態における、ＤＭＡ処理装置によるＤＭＡ転送の動作を示すフローチャートである。
【図１９】従来技術におけるディスクリプタ情報の転送タイミング（ディスクリプタ・チェイン有りの場合）を示すタイミングチャートである。
【図２０】従来技術におけるディスクリプタの構成を示すフォーマット図である。
【図２１】従来技術におけるディスクリプタ記憶機構を示す概略図である。
【図２２】従来技術におけるＤＭＡコントローラのディスクリプタ情報の取り込み方法を説明する図である。
【図２３】従来技術におけるディスクリプタの他の構成例を示すフォーマット図である。
【図２４】図２３に示されるディスクリプタを格納するディスクリプタ記憶機構の構成例を示す概略図である。
【図２５】ＤＭＡコントローラが図２４のディスクリプタ記憶機構に格納されているディスクリプタ情報を取り込む方法を説明する図である。
【符号の説明】
１０…ＬＡＮカード
１１…共有バス
１２…情報処理装置
１３…ＤＭＡ（Ｄｉｒｅｃｔ　Ｍｅｍｏｒｙ　Ａｃｃｅｓｓ）処理装置
１４…ＰＣＩバス（Ｐｅｒｉｐｈｅｒａｌ　Ｃｏｍｐｏｎｅｎｔ　Ｉｎｔｅｒｃｏｎｎｅｃｔ　Ｂｕｓ）インタフェース１５…ＭＡＣ（Ｍｅｄｉａ　Ａｃｃｅｓｓ　Ｃｏｎｔｒｏｌ）
１６…ＬＡＮインタフェース
１７…ＰＣＩカードエッジ
１８…制御機構
１９…記憶機構
２０…ＤＭＡ転送データ格納領域
２１…第一のディスクリプタ記憶機構
２２…第二のディスクリプタ記憶機構
２３…ディスクリプタ変換回路
２４…ＤＭＡコントローラ
２５…ＩＯバス
３０…メモリ
４１…セレクタ
４２…アドレス情報を作成する回路
４３…バイト・カウントを抽出する回路
４４…チェイン・ビットを抽出する回路
５０…サーバ
５１…ＣＰＵ
５２…メモリ
５３…ハードディスクドライブ（ＨＤＤ）
５４…バスインタフェース
５５…ＰＣＩバス
５６…ＬＡＮケーブル
【図１】
2004005382.tif 000003
【図２】
2004005382.tif 000004
【図３】
2004005382.tif 000005
【図４】
2004005382.tif 000006
【図５】
2004005382.tif 000007
【図６】
2004005382.tif 000008
【図７】
2004005382.tif 000009
【図８】
2004005382.tif 000010
【図９】
2004005382.tif 000011
【図１０】
2004005382.tif 000012
【図１１】
2004005382.tif 000013
【図１２】
2004005382.tif 000014
【図１３】
2004005382.tif 000015
【図１４】
2004005382.tif 000016
【図１５】
2004005382.tif 000017
【図１６】
2004005382.tif 000018
【図１７】
2004005382.tif 000019
【図１８】
2004005382.tif 000020
【図１９】
2004005382.tif 000021
【図２０】
2004005382.tif 000022
【図２１】
2004005382.tif 000023
【図２２】
2004005382.tif 000024
【図２３】
2004005382.tif 000025
【図２４】
2004005382.tif 000026
【図２５】
2004005382.tif 000027