JP2000506295A - アプリケーションとバス間の非同期データ転送を自動的に管理する非同期データパイプ - Google Patents

アプリケーションとバス間の非同期データ転送を自動的に管理する非同期データパイプ

Info

Publication number
JP2000506295A
JP2000506295A JP9531780A JP53178097A JP2000506295A JP 2000506295 A JP2000506295 A JP 2000506295A JP 9531780 A JP9531780 A JP 9531780A JP 53178097 A JP53178097 A JP 53178097A JP 2000506295 A JP2000506295 A JP 2000506295A
Authority
JP
Japan
Prior art keywords
data
packet
bus
asynchronous
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP9531780A
Other languages
English (en)
Other versions
JP4155413B2 (ja
Inventor
ディー スマイヤーズ スコット
Original Assignee
ソニー エレクトロニクス インク
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー エレクトロニクス インク filed Critical ソニー エレクトロニクス インク
Publication of JP2000506295A publication Critical patent/JP2000506295A/ja
Application granted granted Critical
Publication of JP4155413B2 publication Critical patent/JP4155413B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40071Packet processing; Packet format

Abstract

(57)【要約】 アプリケーションがバスを介して行う非同期データ転送を遂行するために必要なトランザクションを自動的に生成する非同期データパイプ(ADP)。非同期データパイプは、アプリケーションによりプログラミングされ、開始されるレジスタファイルを備える。レジスタファイルは、バス速度、トランザクションラベル、トランザクションコード、転送先ノード識別情報、転送先オフセットアドレス、各データパケットのデータ長、パケットカウンタ、パケットカウンタバンプフィールド、制御フィールド及びステータスフィールドを有する。転送処理中、ADPは、レジスタファイルに格納された情報をテンプレートとして用い、適切な範囲のアドレスとの転送処理の遂行に必要なトランザクションを生成する。インクリメント機能がオフであり、トランザクションが固定のアドレスに対して生成されるものではない場合、ADPは、各トランザクションの転送先オフセットアドレスに各データパケットのパケット長を加える。パケットカウンタは、生成するべきトランザクションの残りの数を示す。パケットカウンタ値は、各パケットデータが転送される度に減少する。アプリケーションは、パケットバンプフィールドに書込を行うことによりパケットカウンタ値を増加させることができる。複数のADPを備える装置は、マルチプレクサを有し、マルチプレクサは、ADPから供給されたデータを多重化してバスに送信する。複数のADPを備える装置は、デマルチプレクサを有し、デマルチプレクサは、バスからの情報を適切なADPにルーチングする。

Description

【発明の詳細な説明】 アプリケーションとバス間の非同期データ転送を自動的に管理する 非同期データパイプ 技術分野 本発明は、アプリケーションとバスとの間で行われるデータ転送の自動的な管 理に関する。詳しくは、本発明は、アプリケーションとバス間の非同期データ転 送の遂行に必要なトランザクションを自動的に生成する手法に関する。 背景技術 1995年6月16日に作成されたIEEE1394標準「P1394高性能 シリアルバスのための標準」ドラフト8.01vl(The IEEE 1394 standard," P1394 Standard For A High Performance Serial Bus," Draft8.01vl,June 16 ,1995)は、非同期データ転送及びアイソクロナスデータ転送に対応し、比較的 安価に高速シリアルバスアーキテクチャを実現する国際標準規格である。アイソ クロナスデータ転送は、リアルタイム転送の一種であり、このアイソクロナスデ ータ転送では、送信側アプリケーションと受信側アプリケーションにおいて、特 定のデータの転送間隔が等しい。アイソクロナスデータ転送においては、各パケ ットは、それぞれ固有の周期で転送される。アイソクロナスデータ転送の理想的 なアプリケ ーションとしては、例えばビデオ記録装置とテレビジョン受像機がある。ビデオ 記録装置は、映像と音声を記録し、記録したデータを個別の塊、すなわちパケッ トに分割する。さらに、ビデオ記録装置は、映像と音声の各パケットを一定の周 期で送信し、テレビジョン受像機において映像と音声が再生される。IEEE1 394標準に準拠したバス技術により、マルチチャンネルによるアプリケーショ ン間のアイソクロナスデータ転送が実現される。これによれば、データと共に6 ビットのチャンネル番号が送信され、このチャンネル番号に基づいて適切なアプ リケーションがパケットを受信する。また、マルチチャンネルにより、バスを介 して複数のアプリケーションが同時にアイソクロナスデータを送受できる。非同 期データ転送は、比較的古くから用いられているデータ転送方式であり、非同期 データ転送では、できるだけ早く、可能な限り多くのデータが送信側から受信側 へ転送される。 IEEE1394標準は、デジタル装置を汎用入出力接続により相互接続する 高速シリアルバスを提供するものである。IEEE1394標準は、デジタルイ ンターフェイスを規定しており、これによりアプリケーションは、デジタルデー タをアナログデータに変換する必要がなく、バスを介してデータをデジタルフォ ーマットのまま送信することができる。したがって、受信側のアプリケーション が受信するデータはアナログデータではなくデジタルデータであり、受信側のア プリケーションでは、アナログデータをデジタルデータに変換する手間が省かれ る。IEEE1394標準に必要なケーブルは、デジタル装置間の接続に用いて 大量にデータを転送する他のケーブルに比べてかなり細くすることができる。ま た、IEEE1 394バスがアクティブな状態であっても、新たな装置をバスに接続したり、切 り離したりできる。バスに新たな装置が接続され、あるいは切り離された場合に は、IEEE1394バスは、現ノード間でデータの送受ができるよう自動的に バス環境の再設定を行う。ノードは、バスにおいて固有のアドレスを有する論理 的なエンティティーとみなされる。各ノードは、識別ROMと、制御レジスタの 標準セットと、ノード自身のアドレス空間とを有している。 IEEE1394標準で規定されているプロトコルを図1に示す。このプロト コルは、シリアルバス管理ブロック10と、このシリアルバス管理ブロック10 にそれぞれ接続されたトランザクションレイヤ12と、リンクレイヤ14と、物 理レイヤ16とを有する。物理レイヤ16は、装置又はアプリケーションとIE EE1394ケーブルとを電気的且つ機械的に接続する。さらに物理レイヤ16 は、アービトレーション機能を有し、IEEE1394バスに接続されている全 ての装置が実際にデータの送信及び受信を行うアクセス経路を有しているかにつ いて確認する。リンクレイヤ14は、非同期データ転送及びアイソクロナスデー タ転送の両方に対応したパケットの配信を行う。リンクレイヤ14は、肯定応答 プロトコル(acknowledgement protocol)を用いて非同期データ転送をサポート し、さらにジャストインタイムデータ配信(just-in-time data delivery)を行 うリアルタイム帯域保証プロトコル(real-time guaranteed band width protoc ol)を用いてアイソクロナスデータ転送をサポートしている。トランザクション レイヤ12は、読出、書込及びロックを含む非同期データ転送を行うために必要 なコマンドをサポートしている。シリアルバス管理ブロック10は、アイソクロ ナスデ ータ転送を管理するアイソクロナスリソースマネージャを備えている。さらに、 シリアルバス管理ブロック10は、アービトレーションのタイミングを最適化し 、バス上の全ての装置に供給される電力が適切な値となるような調整を行い、サ イクルマスターの割当を行い、アイソクロナスチャンネル及び帯域リソースの割 当を行い、及びエラーの基本通知を行うことによりシリアルバス全体の環境を制 御する。 アイソクロナスデータ転送の初期化を行うために、いくつかの非同期データ転 送を行って、アプリケーションの環境設定を行い、及びデータの転送に用いる特 定のチャンネルを決定する必要がある。チャンネルが決定されると、送信側のア プリケーションでは、バッファを用いてデータをバッファリングした後に、デー タを送信し、受信側のアプリケーションでは、バッファを用いてデータをバッフ ァリングした後に、データを処理する。いくつかの周辺機器については、その機 器をシステムに導入するにあたり、多数の非同期トランザクションを用いて大量 のデータを送信する必要がある。これらのトランザクションを高速且つ効果的に 生成するためには、汎用CPU又はマイクロコントローラに各要求パケットの生 成処理を任せることは望ましくない。 そこで、API及びアプリケーションのプロセッサに処理負担を負わせること なく、非同期データ転送の遂行に必要なトランザクションを自動的に生成する非 同期データパイプが必要である。 発明の開示 非同期データパイプ(ADP)は、アプリケーションによるバスを介した非同 期データ転送の遂行に必要なトランザクションを自動的に生成する。ADPは、 アプリケーションによってプログラミングされるレジスタファイルを備える。レ ジスタファイルは、アプリケーションにデータ転送処理の要求及び特性をプログ ラミングさせる。レジスタファイルは、バス速度と、トランザクションラベルと 、トランザクションコードと、転送先の識別情報と、各データパケットのパケッ ト長と、パケットカウンタと、パケットカウンタダンプフィールドと、制御フィ ールドと、ステータスフィールドとを備えている。アプリケーションによりレジ スタファイルがプログラミングされ、初期設定されると、ADPは、トランザク ションとヘッダとを生成するためのテンプレートとしてこのレジスタファイルの 情報を用いることにより、適切な範囲内の複数のアドレス間で行われるデータ転 送処理の遂行に必要な読出又は書込トランザクションを自動的に生成する。イン クリメント機能が停止されていない場合、すなわちトランザクション実行される アドレスが単一ではない場合、ADPは、各トランザクションが終了するたびに 、転送先のオフセットアドレス値に各データパケットのパケット長に応じた値を 自動的に加える。パケットカウンタ値は、生成すべき残りのトランザクションの 数を示す。パケットカウンタ値は、各データパケットが転送されるたびに減少さ れる。アプリケーションは、パケットカウンタバンプフィールドに書込を行うこ とにより、パケットカウンタ値を増加させることができる。 複数の非同期データ転送処理を行うために、装置内に複数のADPを設けるよ うにしてもよい。このような装置では、各ADPは、固有のトランザクションラ ベル値又は一定範囲の値を有している。各ADPには、マルチプレクサが接続さ れ、マルチプレクサは、複数のADPから供給されるトランザクションを多重化 してバスに送信する。さらに、各ADPには、デマルチプレクサも接続されてお り、デマルチプレクサは、バスから受理信号及びデータパケットを受け取り、ト ランザクションコード及びトランザクションラベル値を用いて、受理信号及びデ ータパケットを適切なADPにルーチングする。 図面の簡単な説明 図1は、IEEE1394標準に定義されるプロトコルを示す図である。 図2は、本発明を適用した3つの非同期データパイプを備えるリンクチップの ブロック図である。 図3は、各非同期データパイプ内のレジスタファイルを示す図である。 発明を実施するための最良の形態 本発明を適用した非同期データパイプは、バスを介してアプリケーションがデ ータを送受する非同期データ転送を実現するために必要な非同期トランザクショ ンを自動的に生成する。本明細書で用い るアプリケーションという用語は、アプリケーション又はデバイスドライバの両 方を指す。データ転送処理が行われるバスは、例えばIEEE1394標準バス である。なお、当業者には明らかであるが、本発明の非同期データパイプは、他 の種類のバスを介して行われるデータ転送の管理にも用いることができる。非同 期データパイプは、アプリケーションに制御され、アプリケーションによって供 給されるローカルデータバッファ又はFIFOとバス上の一定範囲内の複数のア ドレスとの間で、1又は複数の非同期トランザクションを用いて、大量のデータ 転送を行うことができる。 非同期データパイプは、アプリケーションによりプログラミングされるレジス タファイルを有し、これを用いてデータ転送処理が行われる。このレジスタファ イルにより、アプリケーションは、データ転送の要求、例えば、トランザクショ ンを生成すべきバス速度、トランザクションの種類を示すトランザクションラベ ル及びトランザクションコード、データ転送が実施される転送先の識別情報、転 送が開始される開始アドレスを示す転送先のオフセットアドレス、各データパケ ットのパケット長等をプログラミングすることができる。レジスタファイルは、 さらに、生成すべき残りのパケット数を監視するパケットカウンタと、アプリケ ーションによりこのパケットカウンタ値を増加させるパケットカウンタバンプフ ィールドと、制御フィールドと、ステータスフィールドとを有する。なお、トラ ンザクションがバス上の単一のアドレスで実行される場合、アプリケーションは 、非同期データパイプのインクリメント機能をオフにすることができる。 レジスタファイルがアプリケーションによってプログラミングさ れた後、起動された非同期データパイプは、適切な範囲のアドレス間で行われる データ転送処理の遂行に必要な読出又は書込トランザクションを自動的に生成す る。非同期データパイプは、レジスタファイル内の情報をテンプレートとして用 いて、データ転送処理の遂行に必要なトランザクションと適切なヘッダを生成す る。インクリメント機能がオンになっていれば、非同期データパイプは、各トラ ンザクション用の転送先オフセットアドレスフィールド内の値を転送中のパケッ トのサイズに応じて自動的に増加させる。このように、非同期データパイプが必 要なトランザクションを自動的に生成するので、起動中のアプリケーションによ るプロセッサの直接の制御又は管理は不要となる。したがって、本発明の非同期 データパイプがデータ転送処理を行う間、アプリケーションは、他のタスクを実 行することができる。また、レジスタファイルは、パケットカウンタバンプフィ ールドを有し、これによりアプリケーションは、非同期データパイプにより実行 されるべきトランザクションの残りの数を増加させることができる。このように 、非同期データパイプは、データ転送処理の遂行に必要なトランザクションの生 成を必要に応じて制御することができる。 複数のデータ転送処理を管理するために、1つの装置に複数の非同期データパ イプを組み込むことができる。このような装置では、バスと各非同期データパイ プとの間にマルチプレクサを挿入し、これにより複数の非同期データパイプから バスへ送信されるトランザクション等のデータパケットを多重化する。各非同期 データパイプには、デマルチプレクサも接続されており、これによりバスから受 信する信号等のデータパケットを適切な非同期データパイプにルー チングする。デマルチプレクサは、情報を送るべき適切な非同期データパイプを 選択するために、トランザクションコードとトランザクションラベルを用いる。 この装置内では、各非同期データパイプは、それぞれ固有のトランザクションラ ベル値又は固有の範囲のトランザクションラベル値を有している。 本発明を適用した3つの非同期データパイプ(ADP)を備えるリンク回路を 図2に示す。この好適な実施の形態において、リンク回路10は、単一の集積回 路又はチップに形成されている。リンク回路10は、アプリケーション12,1 4とバス58とをリンクするものである。アプリケーション12,14は、それ ぞれシステムバス16に接続されている。システムバス16は、ファーストイン ファーストアウトバッファ(FIFO)32,34,36のそれぞれに接続され ている。アプリケーション12,14は、さらにアプリケーションインターフェ イス回路18に接続されている。アプリケーションインターフェイス回路18は 、制御レジスタ38と、1組の非同期データパイプ20,22,24と、リンク コア44とに接続されている。各非同期データパイプ20,22,24は、それ ぞれレジスタ26,28,30を備えている。各FIFO32,34,36は、 それぞれ適切な非同期データパイプ20,22,24に対応している。すなわち 、FIFO32は、非同期データパイプ20に接続されており、FIFO34は 、非同期データパイプ22に接続されており、FIFO36は、非同期データパ イプ24に接続されている。制御レジスタ38は、各非同期データパイプ20, 22,24に接続されている。各非同期データパイプ20,22,24は、送信 データ転送処理に用いるマルチプレクサ40と、受信 データ転送処理に用いるデマルチプレクサ42とに接続されている。ここで、送 信データ転送処理とは、アプリケーションからバスの方向に行われるデータ転送 処理であり、受信データ転送処理とは、バスからアプリケーションの方向に行わ れるデータ転送処理である。リンクコア44は、送信機46と、受信機48と、 周期タイマ50と、周期モニタ52と、CRCエラーチェック回路58と、バス 58への物理的インターフェイスを司る物理的インターフェイス回路56とを備 える。送信機46は、マルチプレクサ40と、周期タイマ50と、CRCエラー チェック回路54と、物理的インターフェイス56とに接続されている。受信機 48は、デマルチプレクサ42と、周期モニタ52と、CRCエラーチェック回 路54と、物理的インターフェイス56とに接続されている。物理的インターフ ェイス回路56は、バス58に接続されている。 図2に示す装置は、3つの非同期データパイプ20,22,24を備えている 。この非同期データパイプの数は、装置用途に応じて、いかなる数であってもよ いことは、当業者には明らかである。各非同期データパイプは、アプリケーショ ンのデータ転送を自動的に制御することができる。したがって、後の説明により 明らかとなるが、装置に非同期データパイプを追加することにより、同時に実行 できるデータ転送処理の量が増え、すなわち装置の処理能力を高めることができ る。 各非同期データパイプは、非同期トランザクションによりバス58とアプリケ ーション間で送受されるデータの双方向データパスを構成する。非同期データパ イプにおける処理に先立って、非同期データパイプ内のレジスタファイルを外部 エンティティによってプロ グラミングする必要がある。この外部エンティティは、アプリケーション自身で あってもよく、システム内の他のインテリジェンス装置又はステート装置であっ てもよい。この本発明の実施の形態においては、非同期データパイプ内のレジス タファイルは、アプリケーションによってプログラミングされる。各非同期デー タパイプは、レジスタファイルをテンプレートとして用いて、送信データに必要 なヘッダを生成し、又は受信データのヘッダを調べ、分離する。 非同期データパイプのレジスタファイルは、後に詳細に説明するが、バスの開 始アドレスと、トランザクションの種類及びサイズに関するデータを含んでいる 。この実施の形態においては、トランザクションの種類とは、クワドレット読出 、クワドレット書込、ブロック読出、ブロック書込の内のいずれかである。クワ ドレットトランザクションにおけるトランザクションのサイズ、又はブロックト ランザクションにおけるブロック要求サイズは、4バイトである。 非同期データパイプは、起動されると、レジスタファイルにプログラミングさ れたパラメータに基づく非同期トランザクションを用いてアプリケーションデー タの転送処理を行う。アプリケーションからバス上の他のノードへの書込トラン ザクションを実行する場合、非同期データパイプは、そのFIFOインターフェ イスから入手可能なアプリケーションデータを受信し、リンクコア44の要求を 満たす形式で適切なヘッダ情報をデータに付加して、マルチプレクサ40を介し てリンクコア44に供給する。バスに接続された他のノードからアプリケーショ ンへの読出トランザクションを実行する場合、非同期データパイプは、適切な読 出要求パケットを送信し、データを受信すると、受信したデータを対応する読出 応答パケットに ルーチングしてFIFOインターフェイスを介してアプリケーションに供給する 。読出トランザクション及び書込トランザクションの両方が実行される場合、非 同期データパイプは、リンクコア44の要求に応じて、データをバスに規定され た特定のフォーマットに変換する。非同期データパイプは、アプリケーションの 要求を遂行するために、範囲が増加するアドレスのためのアドレス計算を行う。 すなわち、バスのアドレス空間内のアドレスの範囲を増加させて、次のトランザ クションのアドレスを指定する。 各非同期データパイプのFIFOインターフェイスは、直接FIFO32,3 4,36に接続されており、これらFIFO32,34,36は、それぞれ非同 期データパイプが制御するデータパスとして機能する。各FIFO32,34, 36は、それぞれ単一の非同期データパイプに対応している。各非同期データパ イプのリンクインターフェイスは、マルチプレクサ40とデマルチプレクサ42 とをそれぞれ介してリンクコア44に接続されている。各非同期データパイプか らリンクコア44に供給されるデータは、リンクコア44で処理可能なフォーマ ットを有している。各非同期データパイプは、リンクコア44から供給されるリ ンクコア44の仕様により規定されるフォーマットのデータを受信できるよう設 計されている。装置内に複数の非同期データパイプが備えられている場合、各非 同期データパイプは、マルチプレクサ40とデマルチプレクサ42を介してリン クコア44に接続されている。 リンクコア44からの非同期データパイプ20,22,24に供給されるデー タは、デマルチプレクサ42によってルーチングされる。デマルチプレクサ42 は、トランザクションコードとトランザ クションラベルを用いて、データを適切な非同期データパイプにルーチングする 。デマルチプレクサ42は、パケットヘッダのトランザクションコードフィール ド及びパケットヘッダのトランザクションラベルフィールドの値を用いて、バス 58からの応答パケットを適切な非同期データパイプにルーチングする。この適 切な非同期データパイプは、この応答パケットを対応する要求パケットにマッチ ングさせる。 デマルチプレクサ42がリンクコア44から非同期データパイプにパケットを ルーチングしても、パケット内の情報は変化しない。したがって、リンクコア4 4により生成された全ての情報は、所定の非同期データパイプに供給される。非 同期データパイプは、リンクコア44から供給されたデータをアプリケーション に供給する前に、バスプロトコルにより要求されるヘッダ情報を分離する等、リ ンクコア44からのデータに必要な全ての処理を施す。送信データに対しては、 非同期データパイプは、アプリケーションから受信したデータをリンクコア44 に要求される適正なフォーマットに変換する。このとき、各非同期データパイプ は、適切なヘッダ情報を生成し、アプリケーションから供給されたデータにこの 情報を付加した後に、このデータをマルチプレクサ40を介してリンクコア44 に供給する。 全ての非同期データパイプ20,22,24に対して、リンクインターフェイ スは、リンクコア44における処理に対応するフォーマットを有するデータを生 成及び使用する。非同期データパイプ20,22,24は、書込処理時、リンク コア44の要求に対応すべく、要求されたバスに応じた特定のヘッダ情報を生成 し、アプリケ ーションから供給されたデータにこのヘッダ情報を付加する。また、非同期デー タパイプ20,22,24には、読出処理時、リンクコア44からそのフォーマ ットのデータが供給される。すなわち、データリンクコア44から適切な非同期 データパイプ20,22,24のいずれかにデータを移動するにあたり、データ を処理する必要はない。 装置内の非同期データパイプが1つのみである場合、非同期データパイプとリ ンクコア44とを直接接続してもよい。一方、装置内に非同期データパイプを複 数設ける場合、複数の非同期データパイプとリンクコア44との間に適切なマル チプレクサ40及びデマルチプレクサ42を配設する必要がある。マルチプレク サ44は、非同期データパイプ20,22,24のリンクインターフェイスから データが供給され、これらのデータを多重化してリンクコア44に供給し、さら にこのデータはパケット単位でバス58に送信される。これらのデータは、送信 元のアプリケーションにおける順番に基づいてルーチングされ、バス58に送信 される。デマルチプレクサ42は、バス58から供給される各パケットのトラン ザクションコードフィールド及びトランザクションラベルフィールドの各値と、 非同期応答パケットのヘッダのトランザクションラベル値とを用いて、そのパケ ットを適切な非同期データパイプ20,22,24にルーチングする。 本発明を適用した非同期データパイプは、対応するFIFOとリンクコア44 との間の双方向データパスを形成する。対応するFIFOからリンクコア44に データを転送する場合、非同期データパイプは、適切なヘッダ情報を生成し、デ ータにその情報を付加し、 ヘッダが付加されたデータをリンクコア44に供給する。リンクコア44は、非 同期データパイプにより生成された情報を用いてバス58を介した書込処理を行 う。リンクコア44からFIFOにデータを供給する場合、非同期データパイプ は、読出トランザクションのための適切なヘッダ情報を生成する。非同期データ パイプは、リンクコア44にこのヘッダ情報を供給し、リンクコア44は、読出 要求パケットをバス58に送信する。続いて、応答側のノードは、読出応答パケ ットを返す。リンクコア44は、この読出応答パケットを検出して、デマルチプ レクサ42に供給し、さらにこのデマルチプレクサ42はトランザクションコー ド及びトランザクションフィールドの各値に基づいて適切な非同期データパイプ を判別してこの読出応答パケットを読出要求を発した非同期データパイプに供給 する。非同期データパイプは、このパケットからヘッダ情報を分離し、対応する FIFOにデータを供給する。データはさらにFIFOからアプリケーションに 供給され、処理される。非同期データパイプは、バス56を介して送信される要 求が読出要求であるか書込要求であるかにかかわらず、アプリケーションからの 、又はアプリケーションへの全てのデータ転送が完了するまで適切な要求を生成 し続ける。 複数の非同期データパイプを備える装置では、複数のデータ転送処理を同時に 行うことができる。これは、例えばディスク駆動装置等のアプリケーションを起 動するために一連のコマンドを読み込む、又はステータス情報を報告する等の処 理を行いながら記録媒体に書き込まれたデータを転送するようなアプリケーショ ンにとって好適である。デマルチプレクサ42は、各非同期データパイプに対し て 適切なデータを供給する機能を有する。本発明の好ましい実施の形態においては 、各非同期データパイプは、それぞれ固有のトランザクションコード又はトラン ザクションラベル値の範囲を有する。デマルチプレクサ42は、トランザクショ ンラベル及びトランザクションコードフィールドの各値に基づいて適切な非同期 データパイプを判別する。各非同期データパイプは、後に詳細に説明する専用の レジスタファイルを有する。レジスタファイルは、例えばデータ転送処理を開始 するアプリケーション等の外部のアプリケーションによりプログラミングされる 。レジスタファイルがプログラミングされると、非同期データパイプは、バス5 8を介して、範囲が増加するアドレスに対して、又は固定のアドレスに対して書 込及び読出処理を行うことができるようになる。このトランザクションの大きさ は、ブロックサイズであってもクアドレットサイズであってもよい。アプリケー ションは、データ転送処理のプログラミングを行うにあたり、転送されるデータ ブロックの総数を供給するとしてもよく、随時ブロックカウンタを「バンプ」す るとしてもよく、また、この両方を組み合わせて用いるようにしてもよい。非同 期データパイプは、転送すべきデータブロックの総数がプログラミングされる場 合、アプリケーションが他の処理又は他のタスクを実行している間に転送処理の 実行に必要なトランザクションを生成する。各非同期データパイプは、ブロック カウンタの値が0になるまで、バスに関する特定のアドレスポインタコンテキス トを保持し、読出及び書込トランザクションを実行する。 各非同期データパイプは、専用のレジスタファイルを備え、レジスタファイル は、データ転送を開始するアプリケーションによりプ ログラミングされ、バス58を介して行われるデータ転送の実行に必要なトラン ザクションの生成に用いられる。本実施の形態における各非同期データパイプの 有するレジスタファイルの構成を図3に示す。レジスタファイル80は、それぞ れ16進法で00から1Fの番号が付された32バイトのデータを有する。図3 では、それぞれが4バイトを示す8本の水平方向の列を備える表の形式でレジス タファイル80を示している。図3に示すオフセット欄82は、各列の開始バイ トの、レジスタファイル80の開始アドレスからのオフセットを示すものである 。読出(R)/書込(W)欄84は、各列のフィールドが読出及び書込可能なも のであるか(R/W)、読出専用のものであるか(R)、あるいは書込専用のも のであるか(W)を示している。 速度フィールドspは、レジスタファイルのバイト1中の2ビットのフィールド である。速度フィールドspに対しては、読出及び書込処理が行える。速度フィー ルドspは、要求パケットが生成されるバス速度を定義するフィールドである。速 度フィールドsp内の値は、書込処理により更新される。このフィールドに対する 読出処理により、このフィールドに書き込まれた最新の値が返される。速度フィ ールドspに格納された値は、バス58に対する各要求パケットが生成される速度 を示す2ビットの値である。下記の表1は、バス速度と速度フィールドspの値と の関係を示す表である。 この表1に示すように、速度フィールドspにおける値00は、すべての要求パケッ トが生成されるバス速度を100Mbpsと定めるものであり、値01は、要求パ ケットが生成されるバス速度を200Mbpsとするものであり、値10は、要求 パケットを生成するバス速度を400Mbpsとするものである。 トランザクションラベルフィールドt1は、レジスタファイル80のバイト2に おける6ビットのフィールドである。トランザクションフィールドt1に対しては 、読出及び書込処理が行える。トランザクションラベルフィールドt1には、対応 する非同期データパイプにより生成される各要求パケットに用いるトランザクシ ョンラベルの値が格納される。この変化例として、単一の非同期データパイプが 一定範囲のトランザクションラベルを管理するようにしてもよい。トランザクシ ョンラベルフィールドt1の値は、書込処理により更新される。トランザクション ラベルフィールドに対する読出処理によりこのフィールドに書き込まれた最新の 値が返される。装置内に複数の非同期データパイプが存在する場合、デマルチプ レクサ42が要求のあった非同期データパイプに応答パケットを適切にルーチン グできるようにするために、トランザクションラベルフィールドt1 には、各非同期データパイプに固有の値が格納される。 この好ましい実施の形態においては、レジスタフィル80のバイト2における 下位2ビットは、常に論理値Lとなるようにプログラミングされている。 トランザクションコードフィールドtCodeは、レジスタファイル80内のバイ ト3における4ビットのフィールドである。トランザクションフィールドtCode に対しても、読出及び書込処理が行える。トランザクションコードフィールドtC odeには、対応する非同期データパイプにより生成された各要求パケットに用い るトランザクションコードが格納される。トランザクションコードフィールドtC odeの値は、書込処理により更新される。トランザクションコードフィールドtCo deに対して読出処理を行うことにより、ここに書き込まれた最新の値が返される 。トランザクションコードフィールドtCodeの値は、実行されるべき処理を示す 4ビットの値である。トランザクションコードフィールドtCodeに格納される値 と実行されるべき処理の種類との関係を次の表2に示す。トランザクションフィールドtCodeに格納されている値が0000である場合、実行 されるデータ転送処理は、クワドレット書込処理である。トランザクションコー ドフィールドtCodeに格納されている値が0001である場合、実行されるデータ転 送処理は、ブロック書込処理である。トランザクションコードフィールドtCode に格納されている値が0100である場合、実行されるデータ転送処理は、クワドレ ット読出処理である。トランザクションコードフィールドtCodeに格納されてい る値が0101である場合、実行される処理は、ブロック読出処理である。トランザ クションコードフィールドtCodeに格納されている値が1001である場合、実行さ れるべき処理は、ロック処理である。 好ましい実施の形態においては、レジスタファイル80のバイト3における下 位4ビットは、バス転送に用いるパケットヘッダ用の予備的フィールドとして用 いることができるようにするため、常に論理値Lを示すようにプログラミングさ れている。 転送先識別フィールドdestination_IDは、レジスタファイル80のバイト4及 びバイト5にあたる16ビットのフィールドである。この転送先フィールドdest ination IDに対しては、読出及び書込処理を行うことができる。この転送先識別 フィールドdestination_IDには、データ転送処理のために、対応する非同期デー タパイプにより生成される各要求パケットの転送先ノードのIDを示す16ビッ トの値が格納される。転送先識別フィールドdestination_IDの値は書込処理によ り更新される。このフィールドに対する読出処理を行うと、転送先識別フィール ドdestination_IDに書き込まれた最新の値が返される。転送先識別フィールドde stination_IDの値は、転送処理を行うバス上のノードを示す。なお、バス上の各 ノードは、そ れぞれ固有の識別情報を有している。 上位転送先オフセットフィールドdestination_offset Hiは、レジスタファイ ル80のバイト6及びバイト7にあたる16ビットのフィールドである。この上 位転送先オフセットフィールドdestination_offset Hiに対しては、読出及び書 込処理を行うことができる。上位転送先オフセットフィールドdestination_offs et Hiには、生成された次の要求パケットの転送先オフセットアドレスの上位1 6ビットが格納される。この上位転送先オフセットフィールドdestination_offs et Hiの値は、書込処理により更新される。上位転送先オフセットフィールドdes tination offset Hiに対して読み出し処理を行うと、このフィールドに現在格納 されている転送先オフセットアドレスの上位16ビットの値が返される。 下位転送先オフセットフイールドdestination_offset Loは、レジスタファイ ル80のバイト8〜Bにあたる32ビットのフィールドである。下位転送オフセ ットフィールドdestination_offset Loに対しては、読出及び書込処理を行うこ とができる。この下位転送先オフセットフィールドdestination_offset Loには 、生成された次の要求パケットに用いる転送先オフセットアドレスの下位32ビ ットが格納される。下位転送先オフセットフィールドdestination_offset Loの 値は、書込処理により更新される。この転送先オフセットフィールドdestinatio n_offset Loに対する読出処理により、転送先オフセットアドレスの下位32ビ ットが返される。上位転送先オフセットフィールドdestination_offset Hiと下 位転送先オフセットアドレスdestination_offset Loとを組み合わせることによ り、現トランザクションが生成する48ビットの転送先オフセットアドレスが形 成 される。コントロールフィールド内の後に説明する非インクリメントフラグが論 理値Lを示している場合、非同期データパイプは、読出又は書込トランザクショ ンが生成された後に、上位転送先オフセットフィールドdestination_offset Hi 及び下位転送先オフセットフィールドdestination_offset Loからなる48ビッ トの転送先オフセットフィールドにデータ長フィールドに格納されている値を加 える。 データ長フィールドdata_lengthは、レジスタファイル80のバイトC及びD にあたる16ビットのフィールドである。データ長フィールドdata_lengthに対 しては、読出及び書込処理が行える。データ長フィールドdata_lengthには、対 応する非同期データパイプにより生成された各要求パケットの大きさを示す2進 数の値が格納される。データ長フィールドdata_lengthは、書込処理により更新 される。また、データ長フィールドdata_lengthに対して読出処理を行うと、こ のフィールドに書き込まれている最新の値が返される。データ長フィールドdata _lengthの値は、下記の表3に示すように、レジスタファイル80内の他のフィ ールド値によって制限される。 拡張トランザクションコードフィールドextended_tCodeは、レジスタファイル 80のバイトE及びFにあたる16ビットのフィールドである。拡張トランザク ションコードフィールドextended_tCodeに対しては読出及び書込処理を行うこと ができる。拡張トランザクションコードフィールドextended_tCodeは、書込処理 によって更新される。拡張トランザクションコードフィールドextended_tCodeに 対して読出処理を行うと、このフィールドに書き込まれた最新の値が返される。 拡張トランザクションコードフィールドextended_tCo deは、ロックトランザクション以外の全てのトランザクションに対して0の値を とる。トランザクションコードフィールドtCodeの値が1001である場合、これは ロック要求であることを示し、このとき拡張トランザクションコードフィールド extended_tCodeは、ロックトランザクションについての拡張トランザクションコ ード値を格納する。 パケットカウンタフィールドは、レジスタファイル80のバイト10から13 にあたるフィールドであり、システム環境に応じて8〜32ビットの値を格納す る。パケットカウンタフィールドに対しては、読出及び書込処理を行うことがで きる。パケットカウンタフィールドは、データ転送処理を遂行するために生成さ れるべきのこりの要求パケット数を格納する。パケットカウンタフィールドの値 は書込処理により更新される。パケットカウンタフィールドに対して読出処理を 行うと、現時点における生成されるべき残りの要求パケットの数が返される。パ ケットカウンタフィールドの値は、各トランザクションが生成される毎に減少さ れる。生成されるパケットの数を完全に制御するために、パケットカウンタフィ ールド値が0になると、パケットカウンタフィールドは書込専用となる。 パケットカウンタバンプフィールドは、レジスタファイル80のバイト14〜 17にあたる書込専用のフィールドである。このパケットカウンタバンプフィー ルドに書込が行われると、対応する非同期データパイプは、パケットカウンタフ ィールドの値を増加させる。パケットカウンタバンプフィールドに対して読出処 理をおこなっても、返される値は予測不能である。パケットカウンタバンプフィ ールドを設けることにより、要求を出したアプリケーションは、現在 の転送処理のために生成されたトランザクションをさらに多く処理することがで きる。この好ましい実施の形態においては、パケットカウンタフィールドの値が 0ではない場合に、パケットカウンタフィールドの値を増加させるものは、非同 期データパイプによるこのパケットカウンタバンプフィールドへの書込処理のみ である。 制御フィールドは、レジスタファイル80のバイト18〜1Bにあたる32ビ ットのフィールドである。制御フィールドに対しては読出及び書込処理を行うこ とができる。制御フィールドにおいて、ビット0〜29は、予備のビットであり 、ビット30は、非インクリメント制御ビットnon_incrであり、ビット31は、 動作制御ビットgoである。動作制御ビットgoを論理値Hに設定すると非同期デー タパイプの動作が開始される。この動作制御ビットgoを論理値Lに変更すると、 即座に、あるいは非同期データパイプがトランザクション処理中であるときは、 そのトランザクションの終了時に、非同期データパイプの動作が終了される。こ のように、非同期データパイプは、この動作制御ビットgoが論理値Hに設定され ている間にのみ動作する。非同期データパイプにより生成される要求パケットが 固定のアドレス、すなわち増加しないアドレスに対するものである場合、非イン クリメント制御ビットnon_incrは、論理値Hに設定される。非インクリメント制 御ビットnon_incrが論理値Lに設定された場合は、対応する非同期データパイプ は、各トランザクションを完了する毎に、転送先オフセット値にデータ長フィー ルドdata_lengthの値を加える。 ステータスフィールドは、レジスタファイル80のバイト1C〜1Fにあたる 32ビットのフィールドである。このステータスフィ ールドに対しては、読出処理及び書込処理を行うことができる。ステータスフィ ールドには、対応する非同期データパイプにより生成された要求パケットの受理 応答コード及び応答コートが格納される。ステータスフィールドは、エラーフィ ールドと、応答コードフィールドと、受理信号受信フィールドと、受理信号送信 フィールドとを有している。 エラーフィールドは、対応する非同期データパイプの動作を中断させるエラー が発生した場合、そのエラーを示す4ビットの値を格納する。動作制御ビットgo が論理値Hに設定されると、エラーフィールドは、クリアされる。一方、エラー フィールドが有効になると、動作制御ビットgoは、非同期データパイプによって 論理値Lにクリアされる。表4は、エラーフィールドに格納される値と、その意 味との関係を示す表である。エラーフィールド内の値0000は、エラーが発生していないことを示す。エラーフ ィールド内の値0001は、以前に送信した要求パケットに対して受信された受理信 号が正しくなかったためにエラーが発生したことを示す。エラーフィールド内の 値0010は、応答パケットに対して送信された受理信号が正しくなかったためにエ ラーが発生したことを示す。エラーフィールド内の値0100は、分割トランザクシ ョンの時間切れによりエラーが発生したことを示す。エラーフィールド内の値10 00は、バスリセットが発生したことを示す。 応答コードフィールドは、直前の応答コードを格納する4ビットのフィールド である。直前に行われたトランザクションが書込トランザクションであり、この 書込トランザクションが統合されたトランザクションとして遂行された場合、応 答コードフィールドには、値1111が格納される。 受理信号受信フィールドは、4ビットのフィールドからなり、非同期データパ イプにより生成された直前の要求パケットに対してリモートのノードから送られ てきた最新の受理信号を格納する。 受理信号送信フィールドは、対応する非同期データパイプにより生成された要 求パケットに対する応答パケットに応じて非同期データパイプが生成した最新の 受理信号を格納する4ビットのフィールドである。 ステータスフィールドは、書込処理により更新される。このステータスフィー ルドに対して読出処理を行うと、非同期データパイプ及びデータ転送処理の現在 の状態が返される。要求パケットのうちの1つ又は対応する応答パケットにエラ ーが生じた場合、非同期データパイプは、即座にさらなる要求パケットの生成を 停止する。続 いて、非同期データパイプは、応答コードフィールドrcodeと、受理信号受信フ ィールドack_inと、受理信号送信フィールドack_outとに格納されている値をス テータスフィールドにラッチする。これらの値をステータスフィールドにラッチ した後、非同期データパイプは、アプリケーションインターフェイスを介してア プリケーションに中断信号を供給し、現データ転送処理中にエラーが発生したこ とをアプリケーションに知らせる。 読出処理 読出処理を実行してバスを介して接続された他のノードからデータを入手する にあたり、非同期データパイプは、レジスタファイル80に登録された情報をテ ンプレートとして用いて適切な読出要求パケットを生成する。転送先のノードか らデータを受信する場合、デマルチプレクサ42は、トランザクションコードフ ィールド及びトランザクションラベルフィールドの値に基づいて、このデータを 適切な非同期データパイプにルーチングする。非同期データパイプは、データパ ケットからヘッダ情報を分離して、このデータパケットをFIFOに供給する。 アプリケーションはこのFIFOからデータを受信する。 非同期データパイプは、起動されてバス58からデータをFIFOに供給する とき、下記の表5に示すように、データ受信ステート装置として機能する。FIFOインターフェイスは、バスインターフェイスに同期したクロック信号を 用いて、非同期データパイプから対応するFIFOへのデータの供給のタイミン グを制御する。FIFOは、常に、非同期データパイプから入手可能な1ワード 分のデータを受信する状態にある。FIFOにデータを受け入れる余地がないと きに、要求信号が供給された場合、FIFOのオーバーランが発生する。これに よりFIFOは、エラー状態となり、このエラー状態は、対応する非同期データ パイプにより検出される。このFIFOオーバーランが発生すると、FIFO内 のデータがクリアされてさらなるデータを受信できる状態となるまで、残りのト ランザクションは中断される。この場合、ステータスフィールド内の受理信号送 信フィールドは、このエラーを反映した値を示す。 バスからデータを読み出すために、処理元のアプリケーションは、適切な非同 期データパイプのレジスタファイルに適切な情報をプロ グラミングする。処理に用いるバス速度として、例えば100Mbps、200 Mbps、400Mbps等のうちのいずれかの値が速度フィールドspに格納さ れる。この使用されるバス速度は、物理的インターフェイス56の性能及びバス 58にサポートされている範囲内で設定される。トランザクションコードフィー ルドtCodeには、遂行すべき特定のトランザクションを示す適切な値が格納され る。転送先識別フィールドdestination_IDには、全ての要求パケットに対して、 バス上の転送先ノードの識別情報に対応する適切な値がプログラミングされる。 上位転送先オフセットフィールドdestination_offset Hi及び下位転送先オフ セットフィールドdestination_offset Loは、48ビットの開始転送先オフセッ ト値を格納する。制御フィールドの非インクリメントビットが論理値Lである場 合、転送先オフセットフィールドの値は、各要求トランザクションが生成された 後に増加される。生成されるべき各要求パケットのバイト数は、データ長フィー ルドdata_lengthにプログラミングされる。トランザクションコードフィールドt Codeが0100、すなわちこのトランザクションがクワドレット読出トランザクショ ンであることを示している場合、データ長フィールドdata_lengthに格納される 値は、4である。トランザクションコードフィールドtCodeが0101、すなわちこ のトランザクションがブロック読出トランザクションであることを示している場 合、データ長フィールドdata_lengthには、上述の表3で示す、プログラミング されたバス速度において許容される範囲内で、適切な値がプログラミングされる 。ここでは、実行されるトランザクションは、読出処理であり、ロックトランザ クションではないため、拡張トランザク ションフィールドextend_tCodeの値は0である。 パケットカウンタフィールドには、現在のデータ転送処理を遂行するために生 成及び送信するべきトランザクションの数が格納される。アプリケーションが適 切なトランザクションを生成するためにパケットカウンタバンプフィールドに書 込を行い、その都度パケットカウンタフィールドの値を1ずつ増加させるような 場合であれば、パケットカウンタフィールドの値の初期値を0とすることもでき る。全ての要求パケットを同一の転送先オフセットアドレスに送信する場合、制 御フィールドの非インクリメントビットは、論理値Hに設定される。一方、要求 パケットを送信するアドレスの範囲が増加する場合、制御フィールドの非インク リメントビットは、論理値Lに設定される。非同期データパイプを起動してデー タ転送処理に必要な適切なトランザクションの生成を開始させるために、制御フ ィールド内の動作制御ビットgoは、論理値Hに設定される。 制御フィールド内の動作制御ビットgoが論理値Hに設定されると、非同期デー タパイプが起動される。非同期データパイプは、起動されると、表6に示すよう な読出ステート装置として機能し、読出要求パケットを生成する。 処理元のアプリケーションは、パケットカウンタバンプフィールドに対していつ でも書込処理を行うことができ、これによりパケットカウンタフィールドの値に 1を加える。表6に示すような、非同期データパイプ読出ステート装置は、動作 中の非同期データパイプに接続されたFIFO内に1パケット分以上のデータを 受信する余地がある場合、読出要求パケットを生成する。また、非同期データパ イプによって実現された読出ステート装置は、非同期データパイプに対応するF IFOが完全に空である場合も読出要求パケットを生 成する。実際のアプリケーションにおいて、非同期データパイプに対応するFI FOからデータが十分速く、十分短い待ち間隔で確実に送信されるような場合で は、FIFOの容量は、レジスタファイル80のデータ長フィールドdata_lengt hの値により特定されるバイト数より小さくすることができる。 非同期データパイプは、読出要求パケットを生成及び送信することにより、こ れに対応する応答パケットを転送先ノードに生成させる。装置内に複数の非同期 データパイプが存在する場合、デマルチプレクサは、読出応答パケットのトラン ザクションコードtCode及びトランザクションラベルt1を用いて、そのパケット を適切な非同期データパイプにルーチングする。データが供給された非同期デー タパイプは、パケットのヘッダを分離し、対応するFIFOインターフェイスが 使用できるデータフィールドを作成する。 制御フィールドの非インクリメントビットが論理値Hである場合、非同期デー タパイプは、各読出要求パケットを生成した後に、次のデータ要求パケットの生 成を準備するために、転送先オフセットアドレスの値にデータ長フィールドdata _lengthの値を加える。表6の読出ステート装置には示していないが、非同期デ ータパイプは、自らが生成する各書込要求パケットについて、受理信号受信フィ ールド及び対応する読出応答パケットの応答コードフィールドrCodeを調査する 。受理信号受信フィールド又は応答コードフィールドrCodeがエラーを示してい る場合、又は非同期データパイプが何らかのエラーのために読出応答パケットに 対して不正な受理コードを返さざるを得ないような場合、非同期データパイプは 、直ちに動作を停止し、受理コード及び応答コードrCodeの両方をレジスタファ イル80の非 同期データパイプステータスフィールドに保存する。スプリットトランザクショ ンのために、非同期データパイプは応答時間を計測する。要求パケットの送信か ら応答パケットの受信までの時間間隔が100ミリ秒以上である場合、非同期デ ータパイプは、動作を停止し、レジスタファイル80のステータスフィールドに 所定のステータス情報を格納する。 書込処理 非同期データパイプは、書込処理の実行時、処理元のアプリケーションからバ スに接続された他のノードにデータを送信するにあたり、レジスタファイル80 に格納された情報をテンプレートとして用いて、適切なヘッダ情報を生成する。 生成されたヘッダは、適切なデータパケットに付加され、リンクコア44を介し てバス58に送信される。インクリメント機能が動作中であれば、非同期データ パイプは、転送先オフセットフィールドの値を増加させた後、次のデータパケッ トのヘッダを生成する。各トランザクションが生成される毎に、パケットカウン タの値は減少される。この処理は、パケットカウンタの値が0になるまで繰り返 される。 起動された各非同期データパイプは、FIFOからバスへのデータ転送を行う とき、下記の表7に定義するようなデータ送信ステート装置として機能する。 FIFOインターフェイスは、バスインターフェイスに同期したクロックを用い てFIFOから対応する非同期データパイプにデータを送信するタイミングを制 御する。FIFOは、非同期データパイプから要求があったときにいつでも送信 することのできる1ワード分のデータを保持している。要求信号Reqが送信され たが、FIFOにデータが存在しない場合、FIFOアンダーランが発生する。 対応する非同期データパイプは、これによって発生するエラーを検知し、適切な 処理を施す。アプリケーションは、バスを介して送信すべき適切なデータがFI FOに確実に保存されるよう動作する。FIFOアンダーランが発生すると、F IFOにデータが追加されるまで、残りのトランザクションが停止される。 バスを介した書込処理を行うために、アプリケーションは、適切な非同期デー タパイプ内のレジスタファイルに適切な情報をプログラミングする。速度フィー ルドspには、使用される適切なバス速度、 例えば100Mbps、200Mps、400Mbps等を示す値が格納される 。バス速度は、物理的インターフェイスの性能及びバス58が対応できる範囲を 考慮して選択される。トランザクションコードフィールドtCodeには、実行され るべき特定のトランザクションを示す値が格納される。例えば、要求がクワドレ ット書込要求である場合、トランザクションコードフィールドtCodeには、値000 0が格納される。要求がブロック書込要求である場合、トランザクションコード フィールドtCodeには、値0001が格納される。転送先識別情報フィールドdestina ion_IDには、それぞれの要求パケットに対する、バス上の転送先ノードの識別情 報に対応する適切な値が格納される。 上位転送先オフセットフィールドdestinaion_offset Hiと、下位転送先オフセ ットフィールドdestinaion_offset Loとには、48ビットの開始転送先オフセッ ト値が格納される。制御フィールド内の非インクリメントビットが論理値を示し ている場合、レジスタファイル80の転送先オフセットフィールドの値は、各要 求トランザクションが完了する度に増加される。データ長フィールドdata_lengt hには、生成される各要求パケットのバイト数が格納される。トランザクション コードフィールドtCodeの値が0000、すなわちこのトランザクションがクワドレ ット書込トランザクションであることを示している場合、データ長フィールドda ta_lengthに格納される値は、4である。トランザクションコードフィールドtCo deの値が0001、すなわちことトランザクションがブロック書込トランザクション であることを示している場合、データ長フィールドdata_lengthには、上述した 表3に示すような、指定されたバス速度において使用できる範囲内で、適切な値 を格納する。ここで遂行される処理は、書込処 理であるため、拡張トランザクションフィールドextended_tCodeの値は0である 。 パケットカウンタフィールドには、このトランザクションを遂行するために生 成及び送信するべきパケットの数を示す値が格納される。アプリケーションがパ ケットカウンタバンプフィールドに書込を行って適切なトランザクションを生成 し、その都度パケットカウンタフィールドに1を加えるような場合は、パケット カウンタフィールドの初期値を0に設定することができる。すべての要求パケッ トを同一の転送先オフセットアドレスに送信する場合、制御フィールド内の非イ ンクリメントビットは、論理値Hに設定される。要求パケットを転送するアドレ スの範囲が増加する場合、制御フィールドの非インクリメントビットは、論理値 Lに設定される。データ転送処理の遂行に必要な適切なトランザクションを非同 期データパイプに生成させるために、制御フィールドの動作制御ビットgoは、論 理値Hに設定される。 レジスタファイル80の制御フィールド内の動作制御ビットgoが論理値Hに設 定されると、非同期データパイプが起動される。非同期データパイプは、起動中 、表8に示すような書込ステート装置として機能し、要求パケットを生成する。転送元のアプリケーションは、パケットカウンタバンプフィールドに常時書込処 理を行うことができ、これによりパケットカウンタフィールドの値に1を加える 。上述した表8に定義したような非同期データパイプ書込ステート装置は、起動 中の非同期データパイプに接続されたFIFO内に1パケット分以上のデータが 存在する場合、常に書込要求パケットを生成する。非同期データパイプ書込ステ ート装置は、また、この非同期データパイプに対応するFIFOが完全に一杯の 状態である場合も、常に書込要求パケットを生成する。 実際のアプリケーションにおいて、非同期データパイプに対応するFIFOから データが十分速く、十分短い待ち間隔で確実に送信されるような場合では、FI FOの容量は、レジスタファイル80のデータ長フィールドdata_lengthの値に より特定されるバイト数より小さくすることができる。 制御フィールドの非インクリメントビットが論理値Lに設定されている場合、 非同期データパイプは、各書込要求パケットを生成する毎に、次の書込要求パケ ットの生成の準備のために転送先オフセット値にデータ長フィールドdata_lengt hの値を加える。表8には示していないが、非同期データパイプは、自らが生成 する各書込要求パケットについて、受理信号受信フィールド及び、転送先ノード が書込応答パケットを生成する場合は、対応する応答コードフィールドrCodeを 調査する。受理信号受信フィールド又は応答コードフィールドrCodeがエラーを 示している場合、又は非同期データパイプが何らかのエラーにより、読出応答パ ケットに対して不正な受理コードを返さざるを得ないような場合、非同期データ パイプは、直ちに動作を停止し、受理コード及び応答コードrCodeの両方をレジ スタファイル80の非同期データパイプステータスフィールドに保存する。スプ リットトランザクションのために、非同期データパイプは応答時間を計測する。 要求パケットの送信から応答パケットの受信までの時間間隔が100ミリ秒以上 である場合、非同期データパイプは、動作を中断し、レジスタファイル80のス テータスフィールドに所定のステータス情報を格納する。 本発明の好ましい実施の形態においては、バス58は、IEEE1394標準 規格に準拠したバスである。したがって、各非同期デ ータパイプは、IEEE1394標準規格に対応する形式でトランザクション、 ヘッダ、要求パケット、応答パケットを生成する。しかしながら、当業者には明 らかであるが、本発明に係る非同期データパイプを他の種類のバスとともに用い てもよい。この場合、非同期データパイプは、採用された特定のバスに適応する ようなトランザクション、ヘッダ、要求パケット、応答パケットを生成する。 本発明の構成や動作の理解を容易にするために、細部を詳細に特定した実施の 形態を説明したが、ここで述べた特定の形態や細部は、添付の特許請求の範囲を 制限するものではない。当業者は、ここで説明した実施の形態を変形して用いる ことができるが、そのような変形は、本発明の技術的範囲内にある。
【手続補正書】特許法第184条の8第1項 【提出日】1998年5月21日(1998.5.21) 【補正内容】 請求の範囲 1. アプリケーション(12)とバス(58)とを接続し、アプリケーション による直接のプロセッサ制御又は介入によらず、アプリケーション(12)とバ ス(58)との間で行われる非同期データ転送処理を自動的に制御する非同期デ ータパイプであって、 a.データ転送処理に関する指示を受信する受信手段と、 b.アプリケーション(12)と、バスに接続されたノードとの間のデータ転 送の遂行に必要なトランザクションを自動的に生成する生成手段とを備える非同 期データパイプ(20)。 2. 上記アプリケーション(12)は、上記データ転送処理に関する指示を格 納するレジスタファイル(26)を備えることを特徴とする請求の範囲第1項記 載の非同期データパイプ(20)。 3. 上記レジスタファイル(26)は、アプリケーション(20)による直接 のプロセッサ制御又は管理によらず、上記データデータ転送処理の遂行に必要な トランザクション及びヘッダを生成するためのテンプレートとして用いられるこ とを特徴とする請求の範囲第2項記載の非同期データパイプ(20)。 4. 上記レジスタファイル(26)に保存された指示には、バス(58)のア ドレス空間内の転送先アドレスと、転送されるデータのデータ長と、転送される 各データパケットのパケット長と、転送 方向とが含有されることを特徴とする請求の範囲第3項記載の非同期データパイ プ(20)。 5. 当該非同期データパイプ(20)とアプリケーション(12)との間に接 続され、アプリケーションとデータを送受するデータバッファ(32)に接続さ れた通信手段を備えることを特徴とする請求の範囲第2項記載の非同期データパ イプ(20)。 6. 上記バス(56)は、IEEE1394標準に準拠したバスであることを 特徴とする請求の範囲第5項記載の非同期データパイプ(20)。 7. 上記データ転送処理に必要なトランザクションは、各トランザクションが 生成される毎に、転送先アドレスに各データパケットのデータ長を加えることに より範囲が増加させられるアドレスに対して生成されることを特徴とする請求の 範囲第4項記載の非同期データパイプ(20)。 8.上記データ転送処理に必要なトランザクションは、固定のアドレスに対して 生成されることを特徴とする請求の範囲第4項記載の非同期データパイプ(20) 。 9. レジスタファイル(26)は、転送すべきパケットの残りの数を示すパケ ット計数値を有することを特徴とする請求の範囲第4項記載の非同期データパイ プ(20)。 10. 上記アプリケーション(12)は、上記レジスタファイル(26)の所 定のフィールドに書込を行うことでパケット計数値を増加させることを特徴とす る請求の範囲第9項記載の非同期データパイプ(20)。 11. アプリケーション(12)と、バス(58)に接続されたノードとの間 のデータ転送処理を管理する管理方法であって、 a.アプリケーション(12)kら転送データ書込処理に関する指示を受信す るステップと、 b.アプリケーションからパケットデータを入手するステップと、 c.アプリケーションによる直接のプロセッサ制御又は管理によらず、データ 転送処理の遂行に必要なヘッダを生成するステップと、 d.上記パケットデータの転送先アドレスの情報を有する上記ヘッダを該パケ ットデータに付加するステップと、 e.上記ヘッダを有するパケットをバス(58)へ送信するステップとを有す る管理方法。 12. 上記アプリケーション(12)から受信する指示は、レジスタファイル (26)に保存されることを特徴とする請求の範囲第11項記載の管理方法。 13. 上記指示には、転送先アドレスと、転送されるデータのデータ長と、転 送される各データパケットのパケット長と、転送されるべきパケットの数を示す パケット計数値とが含有されることを特 徴とする請求の範囲第12項記載の管理方法。 14. 上記レジスタファイル(26)は、アプリケーション(12)による直 接のプロセッサ制御又は管理によらず、バス(58)を介してデータパケットの 書込処理を行うために必要なヘッダ及び複数のトランザクションを生成するため のテンプレートとして用いられることを特徴とする請求の範囲第13項記載の管 理方法。 15. f.データパケットのパケット長によって転送先アドレスを増加させる ステップと、 g.上記パケット計数値を減少させるステップと、 h.上記パケット計数値が0になるまで各データパケットに対して上記bから gのステップを繰り返すステップとを有することを特徴とする請求の範囲第14 項記載の管理方法。 16. 上記データパケットは、上記アプリケーション(12)によりロードさ れたデータメモリバッファ(32)から入手されることを特徴とする請求の範囲 第15項記載の管理方法。 17. アプリケーション(12)と、バス(58)に接続されたノードとの間 の転送データの読出処理を管理する管理方法であって、 a.上記アプリケーション(12)から転送データ読出処理に関する指示を受 信するステップと、 b.アプリケーション(12)による直接のプロセッサ制御又は管理によらず 、上記バス(58)に接続されたノードからデータパ ケットを要求するために必要なトランザクションを生成するステップと、 c.上記バス(58)からデータパケットを受信するステップと、 d.上記データパケットからヘッダを分離するステップと、 e.上記ヘッダ情報を分離したデータパケットを上記アプリケーション(12 )に供給するステップとを有する管理方法。 18. 上記アプリケーション(12)から受信される指示は、レジスタファイ ル(26)に保存されることを特徴とする請求の範囲第17項記載の管理方法。 19. 上記指示には、データが送信されるノード内の開始アドレスを示す転送 先アドレスと、転送されるデータのデータ長と、転送される各データパケットの パケット長と、転送されるべきパケットの数を示すパケット計数値とが含有され ることを特徴とする請求の範囲第18項記載の管理方法。 20. 上記レジスタファイル(26)は、プロセッサによる直接の制御又は管 理によらず、上記ノードからデータパケットを読み出すために必要なトランザク ション及びヘッダを生成するためのテンプレートとして用いられることを特徴と する請求の範囲第19項記載の管理方法。 21. f.データパケットのパケット長によって転送先アドレスを増加させる ステップと、 g.上記パケット計数値を減少させるステップと、 h.上記パケット計数値が0になるまで各データパケットに対して上記bから gのステップを繰り返すステップとを有することを特徴とする請求の範囲第20 項記載の管理方法。 22. 上記データパケットは、データメモリバッファ(32)を介して上記ア プリケーション(12)に供給されることを特徴とする請求の範囲第21項記載 の管理方法。 23. 1又は複数のアプリケーション(12,14)とバス(58)との間で 行われる非同期データ転送を管理する管理装置であって、 f.1又は複数のアプリケーションとバスとの間に接続され、 i.上記アプリケーションに接続されてデータ転送処理に関する指示を 受信する受信手段と、 ii.上記データ転送処理の遂行に必要なトランザクションを自動的に生 成する生成手段と を備える複数の非同期データパイプ(20,22,24)と、 g.バス(58)にデータを送信し、及びバスからデータを受信するようバス (58)に接続された物理的バスインターフェイス(44)と、 h.各非同期データパイプ(20,22,24)と上記物理的バスインターフ ェイス(44)との間に接続され、該非同期データパイプ(20,22,24) から上記バス(58)にデータパケットを転送するマルチプレクサ(40)と、 i.各非同期データパイプ(20,22,24)と上記物理的バスインターフ ェイス(44)との間に接続され、上記バス(58)から受信したデータパケッ トが複数のデータパイプ(20,22,24)のうちの適切な1つに供給される ようルーチングを行うデマルチプレクサ(42)とを備える管理装置。 24. 上記各非同期データパイプ(20,22,24)は、データ転送に関す るデータ及び指示が保存されるレジスタファイル(26,28,30)を備える ことを特徴とする請求の範囲第23項記載の管理装置。 25. 上記データ及び指示は、上記アプリケーション(12,14)によって 上記レジスタファイル(26)保存されることを特徴とする請求の範囲第24項 記載の管理装置。 26. 上記レジスタファイル(26)は、データ転送が行われるべきノードを 特定する、バス(58)のアドレス空間内の転送先のアドレスと、転送されるデ ータのデータ長と、各パケットのパケット長と、データ転送の方向とに関する情 報を含有することを特徴とする請求の範囲第24項記載の管理装置。 27. 上記レジスタファイルは、データ転送処理がルーチングされるべき非同 期データパイプ(20)を特定するトランザクションラベル値を含有し、各非同 期データパイプ(20,22,24)は、それぞれ固有のトランザクションラベ ル値を有することを特徴とす る請求の範囲第26項記載の管理装置。 28. 上記レジスタファイルは、データ転送処理が行われるべき非同期データ パイプ(20)を特定する一定範囲のトランザクションラベル値を含有し、各非 同期データパイプ(20,22,24)は、それぞれ固有の範囲のトランザクシ ョンラベル値を有することを特徴とする請求の範囲第26項記載の管理装置。 29. 上記レジスタファイル(26)は、プロセッサによる直接の制御又は管 理によらず、上記データ転送処理の遂行に必要なトランザクション及びヘッダを 生成するためのテンプレートとして用いられることを特徴とする請求の範囲第2 7項記載の管理装置。 30. 上記デマルチプレクサ(42)は、データパケット内のトランザクショ ンラベル値に基づいて、該データパケットをどの非同期データパイプ(20)に ルーチングするかを判定することを特徴とする請求の範囲第29項記載の管理装 置。 31. 上記デマルチプレクサ(42)は、書込応答パケット内のトランザクシ ョンラベル値に基づいて、該書込応答パケットをどの非同期データパイプ(20 )にルーチングするかを判定することを特徴とする請求の範囲第30項記載の管 理装置。 32. 上記データ転送に必要なトランザクションは、各トランザクションが生 成される毎に、転送先アドレスに各データパケットの パケット長を加えることにより増加する範囲のアドレスに対して制せされること を特徴とする請求の範囲第30項記載の管理装置。 33. 上記データ転送に必要なトランザクションは、固定のアドレスに対して 生成されることを特徴とする請求の範囲第30項記載の管理装置。 34. 上記バス(58)は、IEEE1394標準に準拠したバスであること を特徴とする請求の範囲第30項記載の管理装置。 35. アプリケーション(12)とIEEE1394標準に準拠したバス(5 8)との間に接続され、該アプリケーションと該バス(58)との間で行われる 非同期データ転送を管理する非同期データパイプ(20)であって、 a. レジスタファイル(26)と、 b. 上記レジスタファイル(26)と上記アプリケーション(12)とに接 続され、該アプリケーション(12)からデータ転送に関する指示を受信し、該 指示を上記レジスタファイル(26)に保存するプログラミング回路と、 c. 上記レジスタファイル(26)に接続され、プロセッサによる直接の制 御又は管理によらず、データ転送処理の遂行に必要なトランザクション及びヘッ ダを自動的に生成する自動トランザクション生成回路とを備える非同期データパ イプ。 36. 上記レジスタファイル(26)は、転送先のアドレスと、 転送されるデータのデータ長と、転送される各データパケットのパケット長と、 転送方向とに関する情報を有することを特徴とする請求の範囲第35項記載の非 同期データパイプ(20)。 37. 上記データ転送処理に必要なトランザクションは、増加する範囲のアド レスに対して生成されることを特徴とする請求の範囲第36項記載の非同期デー タパイプ(20)。 38. 上記データ転送処理に必要なトランザクションは、固定のアドレスに対 して生成されることを特徴とする請求の範囲第36項記載の非同期データパイプ (20)。 39. 上記レジスタファイル(26)は、転送されるべきデータパケットの残 りの数を示すパケット計数値を有し、該パケット計数値は、各データパケットが 転送される毎に減少することを特徴とする請求の範囲第36項記載の非同期デー タパイプ(20)。 40. 上記アプリケーション(12)は、上記レジスタファイル(26)内の 所定のフィールドに書込を行うことにより、上記パケット計数値を自動的に増加 させることを特徴とする請求の範囲第39項記載の非同期データパイプ(20)。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(KE,LS,MW,SD,S Z,UG),UA(AM,AZ,BY,KG,KZ,MD ,RU,TJ,TM),AL,AM,AT,AU,AZ ,BA,BB,BG,BR,BY,CA,CH,CN, CU,CZ,DE,DK,EE,ES,FI,GB,G E,HU,IL,IS,JP,KE,KG,KP,KR ,KZ,LC,LK,LR,LS,LT,LU,LV, MD,MG,MK,MN,MW,MX,NO,NZ,P L,PT,RO,RU,SD,SE,SG,SI,SK ,TJ,TM,TR,TT,UA,UG,US,UZ, VN 【要約の続き】 れる度に減少する。アプリケーションは、パケットバン プフィールドに書込を行うことによりパケットカウンタ 値を増加させることができる。複数のADPを備える装 置は、マルチプレクサを有し、マルチプレクサは、AD Pから供給されたデータを多重化してバスに送信する。 複数のADPを備える装置は、デマルチプレクサを有 し、デマルチプレクサは、バスからの情報を適切なAD Pにルーチングする。

Claims (1)

  1. 【特許請求の範囲】 1. アプリケーションとバスとを接続し、アプリケーションとバスとの間で行 われる非同期データ転送処理を自動的に制御する非同期データパイプであって、 a.データ転送処理に関する指示を受信する受信手段と、 b.アプリケーションと、バスに接続されたノードとの間のデータ転送の遂行 に必要なトランザクションを自動的に生成する生成手段とを備える非同期データ パイプ。 2. 上記アプリケーションは、上記データ転送処理に関する指示を格納するレ ジスタファイルを備えることを特徴とする請求の範囲第1項記載の非同期データ パイプ。 3. 上記レジスタファイルは、プロセッサによる直接の制御又は管理によらず 、上記データデータ転送処理の遂行に必要なトランザクション及びヘッダを生成 するためのテンプレートとして用いられることを特徴とする請求の範囲第2項記 載の非同期データパイプ。 4. 上記レジスタファイルに保存された指示には、バスのアドレス空間内の転 送先アドレスと、転送されるデータのデータ長と、転送される各データパケット のパケット長と、転送方向とが含有されることを特徴とする請求の範囲第3項記 載の非同期データパイプ。 5. 当該非同期データパイプとアプリケーションとの間に接続さ れ、アプリケーションとデータを送受するデータバッファに接続された通信手段 を備えることを特徴とする請求の範囲第2項記載の非同期データパイプ。 6. 上記バスは、IEEE1394標準に準拠したバスであることを特徴とす る請求の範囲第5項記載の非同期データパイプ。 7. 上記データ転送処理に必要なトランザクションは、各トランザクションが 生成される毎に、転送先アドレスに各データパケットのデータ長を加えることに より範囲が増加させられるアドレスに対して生成されることを特徴とする請求の 範囲第4項記載の非同期データパイプ。 8. 上記データ転送処理に必要なトランザクションは、固定のアドレスに対し て生成されることを特徴とする請求の範囲第4項記載の非同期データパイプ。 9. レジスタファイルは、転送すべきパケットの残りの数を示すパケット計数 値を有することを特徴とする請求の範囲第4項記載の非同期データパイプ。 10. 上記アプリケーションは、上記レジスタファイルの所定のフィールドに 書込を行うことでパケット計数値を増加させることを特徴とする請求の範囲第9 項記載の非同期データパイプ。 11. アプリケーションと、バスに接続されたノードとの間のデータ転送処理 を管理する管理方法であって、 a.転送データ書込処理に関する指示を受信するステップと、 b.アプリケーションからパケットデータを入手するステップと、 c.上記パケットデータの転送先アドレスを指定するヘッダを該パケットデー タに付加するステップと、 d.上記ヘッダを有するパケットをバスへ送信するステップとを有する管理方 法。 12. 上記アプリケーションから受信する指示は、レジスタファイルに保存さ れることを特徴とする請求の範囲第11項記載の管理方法。 13. 上記指示には、転送先アドレスと、転送されるデータのデータ長と、転 送される各データパケットのパケット長と、転送されるべきパケットの数を示す パケット計数値とが含有されることを特徴とする請求の範囲第12項記載の管理 方法。 14. 上記レジスタファイルは、プロセッサによる直接の制御又は管理によら ず、バスを介してデータパケットの書込処理を行うために必要なトランザクショ ン及びヘッダを生成するためのテンプレートとして用いられることを特徴とする 請求の範囲第13項記載の管理方法。 15. e.データパケットのパケット長によって転送先アドレス を増加させるステップと、 f.上記パケット計数値を減少させるステップと、 g.上記パケット計数値が0になるまで各データパケットに対して上記bから fのステップを繰り返すステップとを有することを特徴とする請求の範囲第14 項記載の管理方法。 16. 上記データパケットは、上記アプリケーションによりロードされたデー タメモリバッファから入手されることを特徴とする請求の範囲第15項記載の管 理方法。 17. アプリケーションと、バスに接続されたノードとの間の転送データの読 出処理を管理する管理方法であって、 a.上記アプリケーションから転送データ読出処理に関する指示を受信するス テップと、 b.上記バスに接続されたノードからデータパケットを要求するために必要な トランザクションを生成するステップと、 c.上記バスからデータパケットを受信するステップと、 d.上記データパケットからヘッダを分離するステップと、 e.上記ヘッダ情報を分離したデータパケットを上記アプリケーションに供給 するステップとを有する管理方法。 18. 上記アプリケーションから受信される指示は、レジスタファイルに保存 されることを特徴とする請求の範囲第17項記載の管理方法。 19. 上記指示には、データが送信されるノードを示す転送先アドレスと、転 送されるデータのデータ長と、転送される各データパケットのパケット長と、転 送されるべきパケットの数を示すパケット計数値とが含有されることを特徴とす る請求の範囲第18項記載の管理方法。 20. 上記レジスタファイルは、プロセッサによる直接の制御又は管理によら ず、上記ノードからデータパケットを読み出すために必要なトランザクション及 びヘッダを生成するためのテンプレートとして用いられることを特徴とする請求 の範囲第19項記載の管理方法。 21. f.データパケットのパケット長によって転送先アドレスを増加させる ステップと、 g.上記パケット計数値を減少させるステップと、 h.上記パケット計数値が0になるまで各データパケットに対して上記bから gのステップを繰り返すステップとを有することを特徴とする請求の範囲第20 項記載の管理方法。 22. 上記データパケットは、データメモリバッファを介して上記アプリケー ションに供給されることを特徴とする請求の範囲第21項記載の管理方法。 23. 1又は複数のアプリケーションとバスとの間で行われる非同期データ転 送を管理する管理装置であって、 a.1又は複数のアプリケーションとバスとの間に接続され、 i.上記アプリケーションに接続されてデータ転送処理に関する指示を 受信する受信手段と、 ii.上記データ転送処理の遂行に必要なトランザクションを自動的に生 成する生成手段と を備える複数の非同期データパイプと、 b.バスにデータを送信し、及びバスからデータを受信するようバスに接続さ れた物理的バスインターフェイスと、 c.各非同期データパイプと上記物理的バスインターフェイスとの間に接続さ れ、該非同期データパイプから上記バスにデータパケットを転送するマルチプレ クサと、 d.各非同期データパイプと上記物理的バスインターフェイスとの間に接続さ れ、上記バスから受信したデータパケットが複数のデータパイプのうちの適切な 1つに供給されるようルーチングを行うデマルチプレクサとを備える管理装置。 24. 上記各非同期データパイプは、データ転送に関するデータ及び指示が保 存されるレジスタファイルを備えることを特徴とする請求の範囲第23項記載の 管理装置。 25. 上記データ及び指示は、上記アプリケーションによって保存されること を特徴とする請求の範囲第24項記載の管理装置。 26. 上記レジスタファイルは、バスのアドレス空間内の転送先のアドレスと 、転送されるデータのデータ長と、各パケットのパケ ット長と、データ転送の方向とに関する情報を含有することを特徴とする請求の 範囲第24項記載の管理装置。 27. 上記レジスタファイルは、さらに非同期データパイプのトランザクショ ンラベル値を含有し、各非同期データパイプは、それぞれ固有のトランザクショ ンラベル値を有することを特徴とする請求の範囲第26項記載の管理装置。 28. 上記レジスタファイルは、さらに非同期データパイプの一定範囲のトラ ンザクションラベル値を含有し、各非同期データパイプは、それぞれ固有の範囲 のトランザクションラベル値を有することを特徴とする請求の範囲第26項記載 の管理装置。 29. 上記レジスタファイルは、プロセッサによる直接の制御又は管理によら ず、上記データ転送処理の遂行に必要なトランザクション及びヘッダを生成する ためのテンプレートとして用いられることを特徴とする請求の範囲第27項記載 の管理装置。 30. 上記デマルチプレクサは、データパケット内のトランザクションラベル 値に基づいて、該データパケットをどの非同期データパイプにルーチングするか を判定することを特徴とする請求の範囲第29項記載の管理装置。 31. 上記デマルチプレクサは、書込応答パケット内のトランザクションラベ ル値に基づいて、該書込応答パケットをどの非同期デ ータパイプにルーチングするかを判定することを特徴とする請求の範囲第30項 記載の管理装置。 32. 上記データ転送に必要なトランザクションは、各トランザクションが生 成される毎に、転送先アドレスに各データパケットのパケット長を加えることに より増加する範囲のアドレスに対して制せされることを特徴とする請求の範囲第 30項記載の管理装置。 33. 上記データ転送に必要なトランザクションは、固定のアドレスに対して 生成されることを特徴とする請求の範囲第30項記載の管理装置。 34. 上記バスはIEEE1394標準に準拠したバスであることを特徴とす る請求の範囲第30項記載の管理装置。 35. アプリケーションとIEEE1394標準に準拠したバスとの間に接続 され、該アプリケーションと該バスとの間で行われる非同期データ転送を管理す る非同期データパイプであって、 a. レジスタファイルと、 b. 上記レジスタファイルと上記アプリケーションとに接続され、該アプリ ケーションからデータ転送に関する指示を受信し、該指示を上記レジスタファイ ルに保存するプログラミング回路と、 c. 上記レジスタファイルに接続され、該レジスタファイルに保存された情 報をテンプレートとして用いて、プロセッサによる直接の制御又は管理によらず 、データ転送処理の遂行に必要なトラン ザクション及びヘッダを自動的に生成する自動トランザクション生成回路とを備 える非同期データパイプ。 36. 上記レジスタファイルは、転送先のアドレスと、転送されるデータのデ ータ長と、転送される各データパケットのパケット長と、転送方向とに関する情 報を有することを特徴とする請求の範囲第35項記載の非同期データパイプ。 37. 上記データ転送処理に必要なトランザクションは、増加する範囲のアド レスに対して生成されることを特徴とする請求の範囲第36項記載の非同期デー タパイプ。 38. 上記データ転送処理に必要なトランザクションは、固定のアドレスに対 して生成されることを特徴とする請求の範囲第36項記載の非同期データパイプ 。 39. 上記レジスタファイルは、転送されるべきデータパケットの残りの数を 示すパケット計数値を有し、該パケット計数値は、各データパケットが転送され る毎に減少することを特徴とする請求の範囲第36項記載の非同期データパイプ 。 40. 上記アプリケーションは、上記レジスタファイル内の所定のフィールド に書込を行うことにより、上記パケット計数値を自動的に増加させることを特徴 とする請求の範囲第39項記載の非同期データパイプ。
JP53178097A 1996-03-07 1997-02-19 アプリケーションとバス間の非同期データ転送を自動的に管理する非同期データパイプ Expired - Lifetime JP4155413B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/612,321 US6519268B1 (en) 1996-03-07 1996-03-07 Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure
US08/612,321 1996-03-07
PCT/US1997/002546 WO1997033230A1 (en) 1996-03-07 1997-02-19 Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure

Publications (2)

Publication Number Publication Date
JP2000506295A true JP2000506295A (ja) 2000-05-23
JP4155413B2 JP4155413B2 (ja) 2008-09-24

Family

ID=24452676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53178097A Expired - Lifetime JP4155413B2 (ja) 1996-03-07 1997-02-19 アプリケーションとバス間の非同期データ転送を自動的に管理する非同期データパイプ

Country Status (10)

Country Link
US (4) US6519268B1 (ja)
EP (1) EP0885418B1 (ja)
JP (1) JP4155413B2 (ja)
KR (1) KR100439539B1 (ja)
AT (1) ATE198237T1 (ja)
AU (1) AU2129997A (ja)
CA (1) CA2247341C (ja)
DE (1) DE69703732T2 (ja)
TW (1) TW381233B (ja)
WO (1) WO1997033230A1 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7577782B2 (en) * 1996-02-02 2009-08-18 Sony Corporation Application programming interface for data transfer and bus management over a bus structure
US6233637B1 (en) * 1996-03-07 2001-05-15 Sony Corporation Isochronous data pipe for managing and manipulating a high-speed stream of isochronous data flowing between an application and a bus structure
US6519268B1 (en) * 1996-03-07 2003-02-11 Sony Corporation Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure
US6128669A (en) * 1997-09-30 2000-10-03 Compaq Computer Corporation System having a bridge with distributed burst engine to decouple input/output task from a processor
US5978858A (en) * 1997-09-30 1999-11-02 Compaq Computer Corporation Packet protocol and distributed burst engine
US6292844B1 (en) * 1998-02-12 2001-09-18 Sony Corporation Media storage device with embedded data filter for dynamically processing data during read and write operations
US6912566B1 (en) * 1998-07-28 2005-06-28 Siemens Aktiengesellschaft Memory device and method for operating the memory device
US6505255B1 (en) 1999-04-29 2003-01-07 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Method for formatting and routing data between an external network and an internal network
US6496862B1 (en) 1998-08-25 2002-12-17 Mitsubishi Electric Research Laboratories, Inc. Remote monitoring and control of devices connected to an IEEE 1394 bus via a gateway device
US6445711B1 (en) * 1999-04-23 2002-09-03 Sony Corporation Method of and apparatus for implementing and sending an asynchronous control mechanism packet used to control bridge devices within a network of IEEE STD 1394 serial buses
US6523064B1 (en) 1999-04-29 2003-02-18 Mitsubishi Electric Research Laboratories, Inc Network gateway for collecting geographic data information
US6378000B1 (en) 1999-04-29 2002-04-23 Mitsubish Electric Research Laboratories, Inc Address mapping in home entertainment network
US6633547B1 (en) 1999-04-29 2003-10-14 Mitsubishi Electric Research Laboratories, Inc. Command and control transfer
JP2001244952A (ja) * 2000-02-29 2001-09-07 Sony Corp 通信制御装置
FR2813408B1 (fr) * 2000-08-29 2006-08-04 Canon Kk Procedes de transfert de types multiples de donnees au sein d'un noeud de communication, et reseaux comportant un tel noeud
US8370517B2 (en) * 2001-09-27 2013-02-05 International Business Machines Corporation Conserving energy in a data processing network
US7248568B1 (en) 2002-02-26 2007-07-24 Marvell International, Ltd. Apparatus for detecting hidden nodes in a wireless network
DE10302363A1 (de) * 2003-01-22 2004-08-05 Deutsche Thomson-Brandt Gmbh Verfahren zum Betreiben eines Netzwerks von Schnittstellenknoten und Schnittstelleneinrichtung
US7983142B2 (en) 2004-03-30 2011-07-19 Intel Corporation Apparatus, systems, and methods for the reception and synchronization of asynchronous signals
DE102004045118A1 (de) * 2004-09-17 2006-03-23 Robert Bosch Gmbh Verfahren und Vorrichtung zur Datenübertragung
US8156220B1 (en) * 2007-09-28 2012-04-10 Emc Corporation Data storage system
US9063922B2 (en) 2012-12-18 2015-06-23 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Firmware generated register file for use in hardware validation
US10223407B2 (en) * 2014-10-31 2019-03-05 Cisco Technology, Inc. Asynchronous processing time metrics
US9977853B2 (en) 2015-11-04 2018-05-22 Chronos Tech Llc Application specific integrated circuit link
US10073939B2 (en) 2015-11-04 2018-09-11 Chronos Tech Llc System and method for application specific integrated circuit design
US11550982B2 (en) 2015-11-04 2023-01-10 Chronos Tech Llc Application specific integrated circuit interconnect
US10708842B2 (en) * 2016-01-13 2020-07-07 Locus Control LLC Low power communications system
US10181939B2 (en) 2016-07-08 2019-01-15 Chronos Tech Llc Systems and methods for the design and implementation of an input and output ports for circuit design
US10637592B2 (en) 2017-08-04 2020-04-28 Chronos Tech Llc System and methods for measuring performance of an application specific integrated circuit interconnect
CN109919359A (zh) * 2019-02-01 2019-06-21 陕西科技大学 一种基于adp算法的车辆路径规划方法
US11087057B1 (en) 2019-03-22 2021-08-10 Chronos Tech Llc System and method for application specific integrated circuit design related application information including a double nature arc abstraction

Family Cites Families (141)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2221629C3 (de) 1972-05-03 1978-04-27 Siemens Ag, 1000 Berlin Und 8000 Muenchen Verfahren zur Synchronisierung in Zeitmultiplex-Übertragungssystemen
US3906484A (en) 1972-09-13 1975-09-16 Westinghouse Electric Corp Decoder input circuit for receiving asynchronous data bit streams
NL7313756A (ja) * 1972-10-11 1974-04-16
US4067059A (en) 1976-01-29 1978-01-03 Sperry Rand Corporation Shared direct memory access controller
US4218756A (en) 1978-06-19 1980-08-19 Bell Telephone Laboratories, Incorporated Control circuit for modifying contents of packet switch random access memory
US4409656A (en) 1980-03-13 1983-10-11 Her Majesty The Queen, In Right Of Canada As Represented By The Minister Of National Defense Serial data bus communication system
US4395710A (en) 1980-11-26 1983-07-26 Westinghouse Electric Corp. Bus access circuit for high speed digital data communication
US4379294A (en) 1981-02-12 1983-04-05 Electric Power Research Institute, Inc. Data highway access control system
US4493021A (en) 1981-04-03 1985-01-08 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Multicomputer communication system
US4507732A (en) * 1981-10-05 1985-03-26 Burroughs Corporation I/O subsystem using slow devices
US4633392A (en) 1982-04-05 1986-12-30 Texas Instruments Incorporated Self-configuring digital processor system with logical arbiter
GB8304950D0 (en) 1983-02-22 1983-03-23 Int Computers Ltd Data communication systems
US4897783A (en) 1983-03-14 1990-01-30 Nay Daniel L Computer memory system
US4857910A (en) 1983-12-19 1989-08-15 Pitney Bowes Inc. Bit-map CRT display control
US4739323A (en) 1986-05-22 1988-04-19 Chrysler Motors Corporation Serial data bus for serial communication interface (SCI), serial peripheral interface (SPI) and buffered SPI modes of operation
EP0267974B1 (en) 1986-11-14 1992-02-19 International Business Machines Corporation Control interface for transferring data between a data processing unit and input/output devices
US4972470A (en) 1987-08-06 1990-11-20 Steven Farago Programmable connector
US4998245A (en) * 1987-12-17 1991-03-05 Matsushita Electric Industrial Co., Ltd. Information transmission system having collective data transmission and collection devices
US5005151A (en) * 1988-05-13 1991-04-02 Dallas Semiconductor Corporation Interleaved arbitration scheme for interfacing parallel and serial ports to a parallel system port
US5140679A (en) 1988-09-14 1992-08-18 National Semiconductor Corporation Universal asynchronous receiver/transmitter
US5008879B1 (en) 1988-11-14 2000-05-30 Datapoint Corp Lan with interoperative multiple operational capabilities
US5359713A (en) 1989-06-01 1994-10-25 Legato Systems, Inc. Method and apparatus for enhancing synchronous I/O in a computer system with a non-volatile memory and using an acceleration device driver in a computer operating system
JPH03123232A (ja) 1989-10-06 1991-05-27 Matsushita Electric Ind Co Ltd データ伝送制御処理方法
JPH03156554A (ja) 1989-11-14 1991-07-04 Hitachi Ltd データ転送制御方式
FR2658971B1 (fr) 1990-02-23 1995-07-28 Europ Rech Electr Lab Procede de traitement des donnees numeriques de controle associees a un signal video de type hd-mac et dispositif pour la mise en óoeuvre du procede.
EP0447145B1 (en) 1990-03-12 2000-07-12 Hewlett-Packard Company User scheduled direct memory access using virtual addresses
US5325510A (en) 1990-05-25 1994-06-28 Texas Instruments Incorporated Multiprocessor system and architecture with a computation system for minimizing duplicate read requests
US5343469A (en) 1990-06-14 1994-08-30 Nec Corporation Communication system and communication devices having lock function
US5546553A (en) 1990-09-24 1996-08-13 Texas Instruments Incorporated Multifunctional access devices, systems and methods
US5307491A (en) 1991-02-12 1994-04-26 International Business Machines Corporation Layered SCSI device driver with error handling circuit providing sense data from device directly to the driver on the occurrence of an error
DE4129205A1 (de) 1991-03-28 1992-10-01 Bosch Gmbh Robert Verfahren zum aufbau von botschaften fuer den datenaustausch und/oder fuer die synchronisation von prozessen in datenverarbeitungsanlagen
US5369773A (en) 1991-04-26 1994-11-29 Adaptive Solutions, Inc. Neural network using virtual-zero
US5276684A (en) 1991-07-22 1994-01-04 International Business Machines Corporation High performance I/O processor
JP3243803B2 (ja) 1991-08-28 2002-01-07 ソニー株式会社 Av機器
US5487153A (en) 1991-08-30 1996-01-23 Adaptive Solutions, Inc. Neural network sequencer and interface apparatus
DE69230093T2 (de) * 1991-11-19 2000-04-13 Ibm Multiprozessorsystem
US5471632A (en) 1992-01-10 1995-11-28 Digital Equipment Corporation System for transferring data between a processor and a system bus including a device which packs, unpacks, or buffers data blocks being transferred
US5475860A (en) 1992-06-15 1995-12-12 Stratus Computer, Inc. Input/output control system and method for direct memory transfer according to location addresses provided by the source unit and destination addresses provided by the destination unit
US5485594A (en) * 1992-07-17 1996-01-16 International Business Machines Corporation Apparatus and method using an atomic fetch and add for establishing temporary ownership of a common system resource in a multiprocessor data processing system
US5497466A (en) 1992-07-17 1996-03-05 Texas Instruments Inc. Universal address generator
EP0588046A1 (en) 1992-08-14 1994-03-23 International Business Machines Corporation IEEE standard 802.2 virtual device driver
US5647057A (en) * 1992-08-24 1997-07-08 Texas Instruments Incorporated Multiple block transfer mechanism
US5499344A (en) 1992-10-07 1996-03-12 Texas Instruments Incorporated Programmable dual port data unit for interfacing between multiple buses
US5544324A (en) 1992-11-02 1996-08-06 National Semiconductor Corporation Network for transmitting isochronous-source data using a frame structure with variable number of time slots to compensate for timing variance between reference clock and data rate
EP0596651A1 (en) 1992-11-02 1994-05-11 National Semiconductor Corporation Network for data communication with isochronous capability
US5361261A (en) 1992-11-02 1994-11-01 National Semiconductor Corporation Frame-based transmission of data
EP0596648A1 (en) 1992-11-02 1994-05-11 National Semiconductor Corporation Network link endpoint capability detection
US5550802A (en) 1992-11-02 1996-08-27 National Semiconductor Corporation Data communication network with management port for isochronous switch
KR100305268B1 (ko) 1992-11-02 2001-11-22 아담 씨. 스트리겔 스위칭메카니즘에서의등시(等時)데이타의국부루프백
KR940017376A (ko) 1992-12-21 1994-07-26 오오가 노리오 송신 방법, 수신 방법, 통신 방법 및 쌍방향 버스 시스템
EP0607733A1 (en) 1993-01-08 1994-07-27 International Business Machines Corporation Apparatus and method for data communications between nodes
US5400340A (en) 1993-03-04 1995-03-21 Apple Computer, Inc. End of packet detector and resynchronizer for serial data buses
GB2275852B (en) 1993-03-05 1997-02-26 Sony Broadcast & Communication Signal synchroniser with resynchronise control
US5689678A (en) 1993-03-11 1997-11-18 Emc Corporation Distributed storage array system having a plurality of modular control units
US5509126A (en) 1993-03-16 1996-04-16 Apple Computer, Inc. Method and apparatus for a dynamic, multi-speed bus architecture having a scalable interface
US5412698A (en) 1993-03-16 1995-05-02 Apple Computer, Inc. Adaptive data separator
US5559967A (en) * 1993-03-18 1996-09-24 Apple Computer, Inc. Method and apparatus for a dynamic, multi-speed bus architecture in which an exchange of speed messages occurs independent of the data signal transfers
US5684954A (en) 1993-03-20 1997-11-04 International Business Machine Corp. Method and apparatus for providing connection identifier by concatenating CAM's addresses at which containing matched protocol information extracted from multiple protocol header
DE4323405A1 (de) 1993-07-13 1995-01-19 Sel Alcatel Ag Zugangskontrollverfahren für einen Pufferspeicher sowie Vorrichtung zum Zwischenspeichern von Datenpaketen und Vermittlungsstelle mit einer solchen Vorrichtung
US5887145A (en) 1993-09-01 1999-03-23 Sandisk Corporation Removable mother/daughter peripheral card
JP3373607B2 (ja) * 1993-09-01 2003-02-04 富士通株式会社 プロセッサの制御機構検証用命令列の自動生成方法及び装置
US5444709A (en) 1993-09-30 1995-08-22 Apple Computer, Inc. Protocol for transporting real time data
US5446854A (en) * 1993-10-20 1995-08-29 Sun Microsystems, Inc. Virtual memory computer apparatus and address translation mechanism employing hashing scheme and page frame descriptor that support multiple page sizes
US5682493A (en) 1993-10-21 1997-10-28 Sun Microsystems, Inc. Scoreboard table for a counterflow pipeline processor with instruction packages and result packages
CA2134061A1 (en) 1993-10-28 1995-04-29 Aaron William Ogus Frame buffering of network packets
JP3307085B2 (ja) * 1993-12-10 2002-07-24 ソニー株式会社 通信方法及び電子機器
US5835726A (en) 1993-12-15 1998-11-10 Check Point Software Technologies Ltd. System for securing the flow of and selectively modifying packets in a computer network
US5659780A (en) 1994-02-24 1997-08-19 Wu; Chen-Mie Pipelined SIMD-systolic array processor and methods thereof
DE69531012T2 (de) * 1994-03-09 2004-05-19 Matsushita Electric Industrial Co., Ltd., Kadoma Datenübertragungssystem und Verfahren
US5465402A (en) 1994-03-23 1995-11-07 Uniden America Corp. Automatic frequency transfer and storage method
US5566174A (en) 1994-04-08 1996-10-15 Philips Electronics North America Corporation MPEG information signal conversion system
JP3129143B2 (ja) 1994-05-31 2001-01-29 松下電器産業株式会社 データ転送方法
JP3578220B2 (ja) * 1994-06-15 2004-10-20 トムソン コンシユーマ エレクトロニクス インコーポレイテツド マイクロプロセッサの介入のないスマートカードメッセージ転送
US5689244A (en) 1994-06-24 1997-11-18 Sony Corporation Communication system and electronic apparatus
JP3458469B2 (ja) 1994-07-15 2003-10-20 ソニー株式会社 信号受信装置及び通信方法
JP3203978B2 (ja) 1994-07-25 2001-09-04 ソニー株式会社 データ送受信装置、データ受信装置及びデータ送信装置
US5706439A (en) 1994-09-27 1998-01-06 International Business Machines Corporation Method and system for matching packet size for efficient transmission over a serial bus
US5687316A (en) 1994-07-29 1997-11-11 International Business Machines Corporation Communication apparatus and methods having P-MAC, I-MAC engines and buffer bypass for simultaneously transmitting multimedia and packet data
US6205538B1 (en) * 1994-08-24 2001-03-20 Sun Microsystems, Inc. Instruction result labeling in a counterflow pipeline processor
JP3561969B2 (ja) * 1994-08-30 2004-09-08 ソニー株式会社 編集方法及び編集制御機器
US5668948A (en) 1994-09-08 1997-09-16 International Business Machines Corporation Media streamer with control node enabling same isochronous streams to appear simultaneously at output ports or different streams to appear simultaneously at output ports
US5603058A (en) 1994-09-08 1997-02-11 International Business Machines Corporation Video optimized media streamer having communication nodes received digital data from storage node and transmitted said data to adapters for generating isochronous digital data streams
US5586264A (en) 1994-09-08 1996-12-17 Ibm Corporation Video optimized media streamer with cache management
US5548587A (en) 1994-09-12 1996-08-20 Efficient Networks, Inc. Asynchronous transfer mode adapter for desktop applications
US5617419A (en) * 1994-09-20 1997-04-01 International Business Machines Corporation Adapting switch port and work station communication adapters to data frame types with disparate formats and data rates
JP3371174B2 (ja) 1994-09-22 2003-01-27 ソニー株式会社 パケット受信装置
US5619646A (en) 1994-09-27 1997-04-08 International Business Machines Corporation Method and system for dynamically appending a data block to a variable length transmit list while transmitting another data block over a serial bus
US5632016A (en) 1994-09-27 1997-05-20 International Business Machines Corporation System for reformatting a response packet with speed code from a source packet using DMA engine to retrieve count field and address from source packet
US5504757A (en) * 1994-09-27 1996-04-02 International Business Machines Corporation Method for selecting transmission speeds for transmitting data packets over a serial bus
US5828903A (en) 1994-09-30 1998-10-27 Intel Corporation System for performing DMA transfer with a pipeline control switching such that the first storage area contains location of a buffer for subsequent transfer
US5640592A (en) 1994-09-30 1997-06-17 Mitsubishi Kasei America, Inc. System for transferring utility algorithm stored within a peripheral device to a host computer in a format compatible with the type of the host computer
GB2308533B (en) 1994-10-31 1999-04-07 Intel Corp M & A for exchanging data, status, and commands over a hierarchical
US5602853A (en) * 1994-11-03 1997-02-11 Digital Equipment Corporation Method and apparatus for segmentation and reassembly of ATM packets using only dynamic ram as local memory for the reassembly process
US5704052A (en) 1994-11-06 1997-12-30 Unisys Corporation Bit processing unit for performing complex logical operations within a single clock cycle
US5664124A (en) 1994-11-30 1997-09-02 International Business Machines Corporation Bridge between two buses of a computer system that latches signals from the bus for use on the bridge and responds according to the bus protocols
KR0138964B1 (ko) 1994-12-14 1998-06-15 김주용 데이타 포멧 변화기를 포함한 차분 펄스 코드 변조기
US5526353A (en) 1994-12-20 1996-06-11 Henley; Arthur System and method for communication of audio data over a packet-based network
US5533018A (en) 1994-12-21 1996-07-02 National Semiconductor Corporation Multi-protocol packet framing over an isochronous network
US5872983A (en) 1994-12-22 1999-02-16 Texas Instruments Incorporated Power management interface system for use with an electronic wiring board article of manufacture
US5835733A (en) 1994-12-22 1998-11-10 Texas Instruments Incorporated Method and apparatus for implementing a single DMA controller to perform DMA operations for devices on multiple buses in docking stations, notebook and desktop computer system
US5533021A (en) 1995-02-03 1996-07-02 International Business Machines Corporation Apparatus and method for segmentation and time synchronization of the transmission of multimedia data
DE69638018D1 (de) * 1995-02-13 2009-10-15 Intertrust Tech Corp Systeme und Verfahren zur Verwaltung von gesicherten Transaktionen und zum Schutz von elektronischen Rechten
US5559796A (en) 1995-02-28 1996-09-24 National Semiconductor Corporation Delay control for frame-based transmission of data
US5784712A (en) * 1995-03-01 1998-07-21 Unisys Corporation Method and apparatus for locally generating addressing information for a memory access
US5594732A (en) 1995-03-03 1997-01-14 Intecom, Incorporated Bridging and signalling subsystems and methods for private and hybrid communications systems including multimedia systems
US5519701A (en) 1995-03-29 1996-05-21 International Business Machines Corporation Architecture for high performance management of multiple circular FIFO storage means
JP3249334B2 (ja) 1995-04-06 2002-01-21 株式会社東芝 ディジタルインターフェース装置及びディジタルインターフェース方法
US5655138A (en) 1995-04-11 1997-08-05 Elonex I. P. Holdings Apparatus and method for peripheral device control with integrated data compression
FI98028C (fi) 1995-05-03 1997-03-25 Nokia Mobile Phones Ltd Datasovitin
US5761464A (en) * 1995-05-22 1998-06-02 Emc Corporation Prefetching variable length data
US5793953A (en) * 1995-07-07 1998-08-11 Sun Microsystems, Inc. Method and apparatus for allowing packet data to be separated over multiple bus targets
US5841771A (en) * 1995-07-07 1998-11-24 Northern Telecom Limited Telecommunications switch apparatus and method for time switching
US5815678A (en) 1995-07-14 1998-09-29 Adaptec, Inc. Method and apparatus for implementing an application programming interface for a communications bus
US5606559A (en) * 1995-08-11 1997-02-25 International Business Machines Corporation System and method for an efficient ATM adapter/device driver interface
US5787298A (en) 1995-08-18 1998-07-28 General Magic, Inc. Bus interface circuit for an intelligent low power serial bus
US5752076A (en) 1995-08-31 1998-05-12 Intel Corporation Dynamic programming of bus master channels by intelligent peripheral devices using communication packets
US5832492A (en) * 1995-09-05 1998-11-03 Compaq Computer Corporation Method of scheduling interrupts to the linked lists of transfer descriptors scheduled at intervals on a serial bus
US5692211A (en) 1995-09-11 1997-11-25 Advanced Micro Devices, Inc. Computer system and method having a dedicated multimedia engine and including separate command and data paths
US6122279A (en) * 1995-10-02 2000-09-19 Virata Limited Asynchronous transfer mode switch
US5701302A (en) 1995-10-25 1997-12-23 Motorola, Inc, Method and apparatus for adaptively companding data packets in a data communication system
US5751951A (en) * 1995-10-30 1998-05-12 Mitsubishi Electric Information Technology Center America, Inc. Network interface
US5872569A (en) * 1995-10-30 1999-02-16 Xerox Corporation Apparatus and method for programming and/or controlling output of a job in a document processing system
US5970236A (en) 1995-11-14 1999-10-19 Compaq Computer Corporation Circuit for selectively performing data format conversion
US5812883A (en) 1995-11-22 1998-09-22 Mitsubishi Chemical America, Inc. System for reading and storing formatting information after formatting a first storage medium and using the stored formatting information to format a second storage medium
US6631435B1 (en) * 1996-02-02 2003-10-07 Sony Corporation Application programming interface for data transfer and bus management over a bus structure
US5991520A (en) * 1996-02-02 1999-11-23 Sony Corporation Application programming interface for managing and automating data transfer operations between applications over a bus structure
US7577782B2 (en) * 1996-02-02 2009-08-18 Sony Corporation Application programming interface for data transfer and bus management over a bus structure
US5799041A (en) 1996-02-05 1998-08-25 Xinex Networks Inc. Network for multimedia asynchronous transfer mode digital signal transmission and components thereof
US6519268B1 (en) * 1996-03-07 2003-02-11 Sony Corporation Asynchronous data pipe for automatically managing asynchronous data transfers between an application and a bus structure
US6233637B1 (en) * 1996-03-07 2001-05-15 Sony Corporation Isochronous data pipe for managing and manipulating a high-speed stream of isochronous data flowing between an application and a bus structure
US5828416A (en) 1996-03-29 1998-10-27 Matsushita Electric Corporation Of America System and method for interfacing a transport decoder to a elementary stream video decorder
US5761430A (en) 1996-04-12 1998-06-02 Peak Audio, Inc. Media access control for isochronous data packets in carrier sensing multiple access systems
EP0860823A4 (en) 1996-07-15 2001-05-02 Toshiba Kk DEVICE WITH DIGITAL INTERFACE, NETWORK SYSTEM WITH THIS DEVICE AND COPY PROTECTION PROCEDURE
US5951019A (en) * 1996-09-05 1999-09-14 Centre For Engineering Research Inc. Method of forming a metal-to-metal seal in high pressure applications with low contact stress
US5761457A (en) 1996-10-21 1998-06-02 Advanced Micro Devices Inc. Inter-chip bus with fair access for multiple data pipes
US5832245A (en) 1996-10-21 1998-11-03 Advanced Micro Devices, Inc. Method for isochronous flow control across an inter-chip bus
US5774683A (en) 1996-10-21 1998-06-30 Advanced Micro Devices, Inc. Interconnect bus configured to implement multiple transfer protocols
US5835793A (en) 1997-05-02 1998-11-10 Texas Instruments Incorporated Device and method for extracting a bit field from a stream of data
US5938752C1 (en) * 1997-05-20 2002-02-05 Microsoft Corp System and method for encapsulating legacy data transport protocols for ieee 1394 serial bus
US6085270A (en) 1998-06-17 2000-07-04 Advanced Micro Devices, Inc. Multi-channel, multi-rate isochronous data bus
JP4318649B2 (ja) 2005-02-01 2009-08-26 因幡電機産業株式会社 コーナー用化粧カバー

Also Published As

Publication number Publication date
AU2129997A (en) 1997-09-22
US20030123475A1 (en) 2003-07-03
DE69703732T2 (de) 2001-06-13
EP0885418B1 (en) 2000-12-20
TW381233B (en) 2000-02-01
CA2247341C (en) 2008-11-04
US7567590B2 (en) 2009-07-28
US20060291508A1 (en) 2006-12-28
DE69703732D1 (de) 2001-01-25
CA2247341A1 (en) 1997-09-12
US7944952B2 (en) 2011-05-17
WO1997033230A1 (en) 1997-09-12
EP0885418A1 (en) 1998-12-23
US6519268B1 (en) 2003-02-11
KR19990087389A (ko) 1999-12-27
US7145921B2 (en) 2006-12-05
KR100439539B1 (ko) 2004-11-03
JP4155413B2 (ja) 2008-09-24
US20090268760A1 (en) 2009-10-29
ATE198237T1 (de) 2001-01-15

Similar Documents

Publication Publication Date Title
JP2000506295A (ja) アプリケーションとバス間の非同期データ転送を自動的に管理する非同期データパイプ
US6445711B1 (en) Method of and apparatus for implementing and sending an asynchronous control mechanism packet used to control bridge devices within a network of IEEE STD 1394 serial buses
US7545822B2 (en) Information communication system, information communication method, information signal processing device and information signal processing method, and storage medium
US5748634A (en) Method and apparatus for implementing a two-port ethernet bridge using a semaphoring technique
WO1999008198A1 (en) Method and system for optimizing the flow of isochronous data and clock rate information
US6754184B2 (en) Information processing apparatus and method, and distribution medium
US7187655B1 (en) Information communication method and apparatus
US20030179719A1 (en) Method and apparatus for transmitting packets at a transfer rate that depends on a response from a destination
JP2003174486A (ja) 情報通信装置、情報通信方法および情報通信処理プログラム
US20020061025A1 (en) Data transmitting and receiving apparatus and data transmitting and receiving method
US6950408B1 (en) Speed converter for IEEE-1394 serial bus network
EP1156423A2 (en) Information processing apparatus, information processing method and bridge utilizing the same
JP4033915B2 (ja) データストリーム制御方法及び装置
JP2002521942A (ja) メモリ装置およびメモリ装置の作動方法
EP1255377A1 (en) Interface circuit
US6421745B1 (en) Asynchronous connections with scattering page tables for transmitting data from a producer device to a consumer device over an IEEE 1394 serial data bus
JPH1155297A (ja) 伝送媒体接続装置および記憶媒体
JP4244474B2 (ja) 情報処理装置及び方法
JP4062829B2 (ja) シリアルインタフェース回路
JP2001326669A (ja) ディジタルシリアルデータのインタフェース装置およびそれを利用したブリッジポータル
JP2002366508A (ja) データ転送方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070206

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070330

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070521

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070806

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080617

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080602

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080703

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110718

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080723

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110718

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120718

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120718

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130718

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term