JP2501737B2 - デ―タ転送方法及び装置 - Google Patents
デ―タ転送方法及び装置Info
- Publication number
- JP2501737B2 JP2501737B2 JP4344542A JP34454292A JP2501737B2 JP 2501737 B2 JP2501737 B2 JP 2501737B2 JP 4344542 A JP4344542 A JP 4344542A JP 34454292 A JP34454292 A JP 34454292A JP 2501737 B2 JP2501737 B2 JP 2501737B2
- Authority
- JP
- Japan
- Prior art keywords
- value
- requesting
- responding
- data
- address
- 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.)
- Expired - Lifetime
Links
- 238000012546 transfer Methods 0.000 title claims description 75
- 238000000034 method Methods 0.000 title claims description 18
- 230000004044 response Effects 0.000 claims description 21
- 238000013519 translation Methods 0.000 claims description 12
- 230000006870 function Effects 0.000 claims description 6
- 230000005055 memory storage Effects 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims 1
- 239000002609 medium Substances 0.000 description 30
- 238000010586 diagram Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 11
- 239000000872 buffer Substances 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 239000000835 fiber Substances 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 239000006630 dma medium Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000012536 storage buffer Substances 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
Description
【0001】
【産業上の利用分野】本発明は、コンピユータのメモリ
・ストレージ・セルをアドレスする技術に関する。より
詳細に言えば、本発明は、複数個のコンピユータ・プロ
セツサまたは他の装置が単一のデータ・バス、即ち入/
出力チヤネルに接続されており、そして、あるプロセツ
サが、データ・バスを介してデータを転送するために他
のプロセツサのストレージ媒体に直接にアクセスするこ
とができるような、直接メモリ・アクセス(direct mem
ory access-DMA)動作におけるメモリ・ストレージ
のアドレス動作に関する。また、本発明は、共有式及び
切換え式の光フアイバ接続媒体のような接続媒体及び他
のプロトコルにも使用することができ、これらの媒体に
対するDMAのメカニズムの一般的な利益を享有させる
ものである。本発明の技術思想の範囲内において、「D
MA」、「DMA用バス」及び「通信バス」などの用語
は、従来のDMAシステムその他のすべての適用可能な
プロトコル及び媒体を包含するものとして理解された
い。
・ストレージ・セルをアドレスする技術に関する。より
詳細に言えば、本発明は、複数個のコンピユータ・プロ
セツサまたは他の装置が単一のデータ・バス、即ち入/
出力チヤネルに接続されており、そして、あるプロセツ
サが、データ・バスを介してデータを転送するために他
のプロセツサのストレージ媒体に直接にアクセスするこ
とができるような、直接メモリ・アクセス(direct mem
ory access-DMA)動作におけるメモリ・ストレージ
のアドレス動作に関する。また、本発明は、共有式及び
切換え式の光フアイバ接続媒体のような接続媒体及び他
のプロトコルにも使用することができ、これらの媒体に
対するDMAのメカニズムの一般的な利益を享有させる
ものである。本発明の技術思想の範囲内において、「D
MA」、「DMA用バス」及び「通信バス」などの用語
は、従来のDMAシステムその他のすべての適用可能な
プロトコル及び媒体を包含するものとして理解された
い。
【0002】本発明の特徴は、包括的に言うと、処理装
置及び周辺装置のエレメントを接続するためのデータ・
バス、即ちチヤネルのような共有媒体上での、記憶参照
及びデータ記述プロトコルの実施に関している。より具
体的に言えば、本発明は、上述のようなエレメントの一
方によつて、他方のエレメント、即ちターゲツト・エレ
メントのストレージのストレージ・バツフアを特定する
方法に関する。
置及び周辺装置のエレメントを接続するためのデータ・
バス、即ちチヤネルのような共有媒体上での、記憶参照
及びデータ記述プロトコルの実施に関している。より具
体的に言えば、本発明は、上述のようなエレメントの一
方によつて、他方のエレメント、即ちターゲツト・エレ
メントのストレージのストレージ・バツフアを特定する
方法に関する。
【0003】
【従来の技術】直接メモリ・アクセス(DMA)のプロ
トコルは、公知である。このプロトコルは、一方のエレ
メントから他方のエレメントへデータ部を転送するため
の、上述のエレメント間の接続媒体における通常の動作
プロトコルの一部として、通信する2つのエレメントの
一方、あるいは両方のストレージを直接に参照するDM
A「ポート(port)」フアシリテイの存在によつて特徴
付けられる。DMA「ポート」フアシリテイは、通信す
る1対のエレメントの一方、または両方のエレメントの
構成要素であつてもよく、あるいは、一方、または両方
のエレメントのストレージを同時に参照する別個の第3
のエンテイテイであつてもよい。従来技術における主た
る特徴は、DMA「ポート」フアシリテイが一方、また
は両方のエレメントの動作範囲内で決められた実ストレ
ージ・アドレスを使用することである。その結果、DM
A「ポート」フアシリテイは、そのストレージが参照さ
れるエレメントのストレージ・アーキテクチヤに適合し
て、実行されねばならない。この制限は、DMA「ポー
ト」によつて参照されたエレメント中のデータの物理的
構造に関して明白な知識を持たねばならないと言う責任
を、そのDMA「ポート」の動作を管理するエンテイテ
イに与えることになる。
トコルは、公知である。このプロトコルは、一方のエレ
メントから他方のエレメントへデータ部を転送するため
の、上述のエレメント間の接続媒体における通常の動作
プロトコルの一部として、通信する2つのエレメントの
一方、あるいは両方のストレージを直接に参照するDM
A「ポート(port)」フアシリテイの存在によつて特徴
付けられる。DMA「ポート」フアシリテイは、通信す
る1対のエレメントの一方、または両方のエレメントの
構成要素であつてもよく、あるいは、一方、または両方
のエレメントのストレージを同時に参照する別個の第3
のエンテイテイであつてもよい。従来技術における主た
る特徴は、DMA「ポート」フアシリテイが一方、また
は両方のエレメントの動作範囲内で決められた実ストレ
ージ・アドレスを使用することである。その結果、DM
A「ポート」フアシリテイは、そのストレージが参照さ
れるエレメントのストレージ・アーキテクチヤに適合し
て、実行されねばならない。この制限は、DMA「ポー
ト」によつて参照されたエレメント中のデータの物理的
構造に関して明白な知識を持たねばならないと言う責任
を、そのDMA「ポート」の動作を管理するエンテイテ
イに与えることになる。
【0004】従来の技術の他の特徴は、一方、または両
方の通信エレメント中のデータのストレージ位置の特定
(specification)が、当該ストレージ位置と関連する
接続媒体を介したデータの転送と同期関係になければな
らないということである。このことは、DMA動作のデ
ータ特定フエーズとデータ転送フエーズの間に待ち時間
がある場合には欠点となる。何故ならば、この待ち時間
は、DMA動作の間に、接続媒体の利用度を減少させる
接続媒体のアイドル期間を発生し、接続媒体を共有する
他のエレメントが、事実上待ち時間の間、接続媒体を使
用できなくなるからである。この待ち時間は、ターゲツ
ト・エレメントのデータ特定フエーズ中に内部処理及び
ストレージ・アクセス処理の遅延を発生し、その結果、
接続媒体上のデータ特定またはデータそれ自身の伝播遅
延を生じる。特に、後者の伝播遅延は、高バンド幅で、
直列の光フアイバ接続媒体の場合のような場合、すなわ
ちエレメント間の距離を長距離にすることが可能で、こ
れが媒体の信号周波数に対して、接続媒体に非常に大き
な伝播の待ち時間を生じるには著しく大きい。
方の通信エレメント中のデータのストレージ位置の特定
(specification)が、当該ストレージ位置と関連する
接続媒体を介したデータの転送と同期関係になければな
らないということである。このことは、DMA動作のデ
ータ特定フエーズとデータ転送フエーズの間に待ち時間
がある場合には欠点となる。何故ならば、この待ち時間
は、DMA動作の間に、接続媒体の利用度を減少させる
接続媒体のアイドル期間を発生し、接続媒体を共有する
他のエレメントが、事実上待ち時間の間、接続媒体を使
用できなくなるからである。この待ち時間は、ターゲツ
ト・エレメントのデータ特定フエーズ中に内部処理及び
ストレージ・アクセス処理の遅延を発生し、その結果、
接続媒体上のデータ特定またはデータそれ自身の伝播遅
延を生じる。特に、後者の伝播遅延は、高バンド幅で、
直列の光フアイバ接続媒体の場合のような場合、すなわ
ちエレメント間の距離を長距離にすることが可能で、こ
れが媒体の信号周波数に対して、接続媒体に非常に大き
な伝播の待ち時間を生じるには著しく大きい。
【0005】
【発明が解決しようとする課題】本発明の目的は、2つ
の装置を接続する他の接続媒体上の装置のDMA動作及
びストレージ・アクセスの方法を提供することにある。
特に、一方の装置が、他方の装置へのデータ転送に含ま
れるストレージ・アドレスの実際の知識を持たなくと
も、他方の装置のストレージ領域を特定することができ
るようにすることを目的とする。
の装置を接続する他の接続媒体上の装置のDMA動作及
びストレージ・アクセスの方法を提供することにある。
特に、一方の装置が、他方の装置へのデータ転送に含ま
れるストレージ・アドレスの実際の知識を持たなくと
も、他方の装置のストレージ領域を特定することができ
るようにすることを目的とする。
【0006】本発明の他の目的は、同じ通信バスを介す
る他の転送動作と、連続的に、間欠的に、または順次に
インターリーブされる他のI/O相互接続媒体上のDM
A動作及びストレージ・アクセスを実施する方法を提供
することにある。
る他の転送動作と、連続的に、間欠的に、または順次に
インターリーブされる他のI/O相互接続媒体上のDM
A動作及びストレージ・アクセスを実施する方法を提供
することにある。
【0007】
【課題を解決するための手段】本発明は、DMA「ポー
ト」フアシリテイが、DMA動作のターゲツト・エレメ
ント内のストレージ・アーキテクチヤ、またはデータ構
造に関する明白な知識を必要としないデータ仕様の代替
技術を与えることによつて、従来の技術の欠点を克服す
るものである。第2に、本発明は、DMA動作のデータ
特定フエーズ及びデータ転送フエーズの夫々のフエーズ
が、他方に対して非同期で、接続媒体上の独立した動作
として進行するようなDMA動作のデータ特定フエーズ
及び転送フエーズに関するものである。この非同期の動
作は、データ特定フエーズとデータ転送フエーズとの間
の待ち時間の間に、他方のエレメントに通信することを
可能にすることと、複数のデータ特定及びデータ転送フ
エーズをインターリーブするために、エレメント相互間
の通信を可能にすることとの両方によつて接続媒体の使
用度を高めることを可能にする。
ト」フアシリテイが、DMA動作のターゲツト・エレメ
ント内のストレージ・アーキテクチヤ、またはデータ構
造に関する明白な知識を必要としないデータ仕様の代替
技術を与えることによつて、従来の技術の欠点を克服す
るものである。第2に、本発明は、DMA動作のデータ
特定フエーズ及びデータ転送フエーズの夫々のフエーズ
が、他方に対して非同期で、接続媒体上の独立した動作
として進行するようなDMA動作のデータ特定フエーズ
及び転送フエーズに関するものである。この非同期の動
作は、データ特定フエーズとデータ転送フエーズとの間
の待ち時間の間に、他方のエレメントに通信することを
可能にすることと、複数のデータ特定及びデータ転送フ
エーズをインターリーブするために、エレメント相互間
の通信を可能にすることとの両方によつて接続媒体の使
用度を高めることを可能にする。
【0008】本発明は、要求装置及び応答装置の両方
が、転送されるデータの他方の装置の実際のソース・ア
ドレス、または宛先アドレスについての特定の知識を必
要とすることなく、DMA用の通信バス、即ちI/Oチ
ヤネルを介してデータを選択し、転送する方法を与え
る。要求装置は、本発明において「トークン」と呼ばれ
る間接アドレス参照(indirect addressing referenc
e)を構成し、そして、応答装置にこのデータ・トーク
ンを転送する。応答装置は、応答装置中の1つ、または
それ以上の実ストレージ・アドレス、即ち実ストレージ
・アドレスのセツトにこのデータ・トークンを変換し、
そして、DMA動作は、ローカルの実ストレージ・アド
レスの参照により応答装置内で進行する。同様に、要求
装置は、要求装置のストレージ中に、データ・トークン
に対応する実ストレージ・アドレス、即ちストレージ・
アドレスのセツトを構成し、そして、DMA動作におい
て要求されたストレージ参照を実行するためにこれらの
実アドレスを使用する。従つて、DMA動作は、実スト
レージ・アドレス、即ち実ストレージ・アドレスのセツ
トの参照ではなく、データ・トークンの参照によつて進
行する。更に、データ・トークンを使用することは、同
じ通信バスを介する他のデータ転送動作とインターリー
ブされた連続的または間欠的、あるいは順次に進行する
DMA動作を可能にする。
が、転送されるデータの他方の装置の実際のソース・ア
ドレス、または宛先アドレスについての特定の知識を必
要とすることなく、DMA用の通信バス、即ちI/Oチ
ヤネルを介してデータを選択し、転送する方法を与え
る。要求装置は、本発明において「トークン」と呼ばれ
る間接アドレス参照(indirect addressing referenc
e)を構成し、そして、応答装置にこのデータ・トーク
ンを転送する。応答装置は、応答装置中の1つ、または
それ以上の実ストレージ・アドレス、即ち実ストレージ
・アドレスのセツトにこのデータ・トークンを変換し、
そして、DMA動作は、ローカルの実ストレージ・アド
レスの参照により応答装置内で進行する。同様に、要求
装置は、要求装置のストレージ中に、データ・トークン
に対応する実ストレージ・アドレス、即ちストレージ・
アドレスのセツトを構成し、そして、DMA動作におい
て要求されたストレージ参照を実行するためにこれらの
実アドレスを使用する。従つて、DMA動作は、実スト
レージ・アドレス、即ち実ストレージ・アドレスのセツ
トの参照ではなく、データ・トークンの参照によつて進
行する。更に、データ・トークンを使用することは、同
じ通信バスを介する他のデータ転送動作とインターリー
ブされた連続的または間欠的、あるいは順次に進行する
DMA動作を可能にする。
【0009】
【実施例】図1を参照すると、従来の技術に従つたDM
A動作用の接続媒体の例が示されている。DMAプロト
コルを用いて、エレメントBは、エレメントAのストレ
ージに対してDMA動作を遂行するDMAポート・フア
シリテイを含んでおり、エレメントA及びBの間で転送
されたデータは、エレメントAのストレージ中の不連続
の領域「Xデータ」、「Yデータ」及び「Zデータ」に
よつて分散されている。このDMA転送を行なうために
は、エレメントAのストレージへの直接メモリ・アクセ
スを使用することによつて、エレメントA及びエレメン
トBの間ですべてのデータを完全に転送するために、エ
レメントBは、エレメントA中の各ストレージ領域に関
する明白な知識を持つていなければならない。これは、
従来の技術の1つの欠点である。つまり、エレメントB
のDMAポート・フアシリテイは、エレメントAのスト
レージ・アーキテクチヤの知識をもつて特別に実行され
なければならず、かつ、エレメントBには、エレメント
AとエレメントBの間で転送されたすべてのデータの、
エレメントAのストレージ内における特定の物理構造を
知らされなければならない。
A動作用の接続媒体の例が示されている。DMAプロト
コルを用いて、エレメントBは、エレメントAのストレ
ージに対してDMA動作を遂行するDMAポート・フア
シリテイを含んでおり、エレメントA及びBの間で転送
されたデータは、エレメントAのストレージ中の不連続
の領域「Xデータ」、「Yデータ」及び「Zデータ」に
よつて分散されている。このDMA転送を行なうために
は、エレメントAのストレージへの直接メモリ・アクセ
スを使用することによつて、エレメントA及びエレメン
トBの間ですべてのデータを完全に転送するために、エ
レメントBは、エレメントA中の各ストレージ領域に関
する明白な知識を持つていなければならない。これは、
従来の技術の1つの欠点である。つまり、エレメントB
のDMAポート・フアシリテイは、エレメントAのスト
レージ・アーキテクチヤの知識をもつて特別に実行され
なければならず、かつ、エレメントBには、エレメント
AとエレメントBの間で転送されたすべてのデータの、
エレメントAのストレージ内における特定の物理構造を
知らされなければならない。
【0010】従来の技術の他の特徴は、図2に示されて
いる。一方、または両方の通信エレメント中のデータの
ストレージ位置の特定は、接続媒体を介してこれらのス
トレージ位置と関連するデータの転送と同期関係になけ
ればならない。図2は従来の技術のDMAプロトコルの
特性を示している。エレメントB中のDMAポート・フ
アシリテイは、ステツプ1において、エレメントA中の
ストレージに対してDMA動作を行なうために、接続媒
体の制御を獲得する。接続媒体上のエレメントA及びB
の間に専用通信路を設定した後、DMAポート・フアシ
リテイは、エレメントAにおける接続インターフエース
へ、ストレージ・アドレスと、そのストレージ位置で始
まる転送データの数量とを与えることによつてデータ特
定フエーズに入る。この動作はステツプ2で生じる。
いる。一方、または両方の通信エレメント中のデータの
ストレージ位置の特定は、接続媒体を介してこれらのス
トレージ位置と関連するデータの転送と同期関係になけ
ればならない。図2は従来の技術のDMAプロトコルの
特性を示している。エレメントB中のDMAポート・フ
アシリテイは、ステツプ1において、エレメントA中の
ストレージに対してDMA動作を行なうために、接続媒
体の制御を獲得する。接続媒体上のエレメントA及びB
の間に専用通信路を設定した後、DMAポート・フアシ
リテイは、エレメントAにおける接続インターフエース
へ、ストレージ・アドレスと、そのストレージ位置で始
まる転送データの数量とを与えることによつてデータ特
定フエーズに入る。この動作はステツプ2で生じる。
【0011】データ転送の主題であるエレメントA中の
ストレージ位置がこのようにして特定された後、エレメ
ントB中のDMAポート・フアシリテイは、ステツプ3
のデータ転送フエーズに進む。このフエーズにおいて、
エレメントBは、接続媒体の特定のプロトコルに従つ
て、エレメントBと、エレメントA中の特定されたスト
レージ位置との間のデータ転送に進む。特定された数量
のデータが転送されると、エレメントB中のDMAポー
ト・フアシリテイは、エレメントAとエレメントBの間
の接続媒体の通信路を放棄するステツプ4に入る。この
ステツプにおいて、接続媒体に接続された他のエレメン
ト間の通信路が使用可能となる。従来の技術の例を示し
た図2は、DMA動作のデータ特定フエーズと、データ
転送フエーズとの間の関係を示している。
ストレージ位置がこのようにして特定された後、エレメ
ントB中のDMAポート・フアシリテイは、ステツプ3
のデータ転送フエーズに進む。このフエーズにおいて、
エレメントBは、接続媒体の特定のプロトコルに従つ
て、エレメントBと、エレメントA中の特定されたスト
レージ位置との間のデータ転送に進む。特定された数量
のデータが転送されると、エレメントB中のDMAポー
ト・フアシリテイは、エレメントAとエレメントBの間
の接続媒体の通信路を放棄するステツプ4に入る。この
ステツプにおいて、接続媒体に接続された他のエレメン
ト間の通信路が使用可能となる。従来の技術の例を示し
た図2は、DMA動作のデータ特定フエーズと、データ
転送フエーズとの間の関係を示している。
【0012】この同期させる方式の弱点は、DMA動作
のデータ特定フエーズとデータ転送フエーズとの間に待
ち時間がある場合には接続媒体の利用度に損失が生じる
ことであり、この損失は接続媒体の信号のバンド幅に対
して著しく大きくなる。この待ち時間は、従来のDMA
動作の観点と、その媒体を共有する他のエレメントがこ
の待ち時間の間で媒体を使用できないという全体的な観
点との両面から見て、媒体の利用度を減少させる接続媒
体のアイドル期間を生じる。この待ち時間は、ターゲツ
ト・エレメント(エレメントA)におけるデータ特定フ
エーズ中の内部処理及びストレージ・アクセス動作か、
あるいは、接続媒体上でのデータ特定、またはデータそ
れ自身の伝播遅延かに起因しうる。
のデータ特定フエーズとデータ転送フエーズとの間に待
ち時間がある場合には接続媒体の利用度に損失が生じる
ことであり、この損失は接続媒体の信号のバンド幅に対
して著しく大きくなる。この待ち時間は、従来のDMA
動作の観点と、その媒体を共有する他のエレメントがこ
の待ち時間の間で媒体を使用できないという全体的な観
点との両面から見て、媒体の利用度を減少させる接続媒
体のアイドル期間を生じる。この待ち時間は、ターゲツ
ト・エレメント(エレメントA)におけるデータ特定フ
エーズ中の内部処理及びストレージ・アクセス動作か、
あるいは、接続媒体上でのデータ特定、またはデータそ
れ自身の伝播遅延かに起因しうる。
【0013】図6は、図1及び図2を参照して説明した
従来の装置の転送から生じたDMA用バスの使用例を示
す図である。エレメントBがDMA媒体を獲得した後、
その媒体は、エレメントA中のストレージ・アドレス
と、転送されるデータ・ブロツクの数を識別するための
或る形式の標識とをエレメントAに転送する。装置Aが
この情報を受け取ると、図6の矢印6で示したように、
DMA動作のデータ転送フエーズが進行する。このフエ
ーズを開始するのに必要な待ち時間は、参照されたスト
レージ位置を認識するためにエレメントAによつて費さ
れる時間と、ストレージ位置Xへ、またはストレージ位
置Xからのデータ転送を内部的に開始するためにエレメ
ントAによつて費される時間との関数である。その後、
ストレージ位置Xへの、またはストレージ位置Xからの
データ転送は、図6で示した矢印7で示された時間にお
いてエレメントBへ転送し戻される。次に、エレメント
Bは、DMA用バス上の制御を放棄する。この順序は、
例えば、エレメントA中のストレージ位置Yのデータ転
送及びストレージ位置Zのデータ転送のような他のデー
タ転送の各DMA動作について繰り返される。このよう
に、従来の装置の各データ・ブロツクの転送に対してD
MA用バスを使用するということは、エレメントA及び
Bが同期されるということ、並びにDMA用バスは、そ
の転送動作によつて完全に占領され、DMAバスに接続
された他のすべての装置を排除することは明らかであ
る。
従来の装置の転送から生じたDMA用バスの使用例を示
す図である。エレメントBがDMA媒体を獲得した後、
その媒体は、エレメントA中のストレージ・アドレス
と、転送されるデータ・ブロツクの数を識別するための
或る形式の標識とをエレメントAに転送する。装置Aが
この情報を受け取ると、図6の矢印6で示したように、
DMA動作のデータ転送フエーズが進行する。このフエ
ーズを開始するのに必要な待ち時間は、参照されたスト
レージ位置を認識するためにエレメントAによつて費さ
れる時間と、ストレージ位置Xへ、またはストレージ位
置Xからのデータ転送を内部的に開始するためにエレメ
ントAによつて費される時間との関数である。その後、
ストレージ位置Xへの、またはストレージ位置Xからの
データ転送は、図6で示した矢印7で示された時間にお
いてエレメントBへ転送し戻される。次に、エレメント
Bは、DMA用バス上の制御を放棄する。この順序は、
例えば、エレメントA中のストレージ位置Yのデータ転
送及びストレージ位置Zのデータ転送のような他のデー
タ転送の各DMA動作について繰り返される。このよう
に、従来の装置の各データ・ブロツクの転送に対してD
MA用バスを使用するということは、エレメントA及び
Bが同期されるということ、並びにDMA用バスは、そ
の転送動作によつて完全に占領され、DMAバスに接続
された他のすべての装置を排除することは明らかであ
る。
【0014】本発明は、データ特定の代替手段を記載す
ることによりDMAプロトコルを特徴付ける従来技術の
上述の2つの短所を取り除くものであり、本発明に従つ
たDMAポート・フアシリテイは、DMA動作のターゲ
ツト・エレメント内のストレージ・アーキテクチヤ、あ
るいはデータ構造に関する明白な知識を必要としない。
第2に、本発明は、DMA動作のデータ特定フエーズ及
びデータ転送フエーズの各々が他のエレメントに対し
て、接続媒体内で非同期の独立した動作として進行する
ように、DMA動作のデータ仕様フエーズ及びデータ転
送フエーズを記載するものである。この非同期の動作
は、接続媒体のデータ転送フエーズの使用度を高め、そ
して、通信エレメントがデータ特定フエーズとデータ転
送フエーズを複数の動作にインターリーブするのを可能
にする。これら両方の機能は、長い待ち時間が発生する
のを防止する。
ることによりDMAプロトコルを特徴付ける従来技術の
上述の2つの短所を取り除くものであり、本発明に従つ
たDMAポート・フアシリテイは、DMA動作のターゲ
ツト・エレメント内のストレージ・アーキテクチヤ、あ
るいはデータ構造に関する明白な知識を必要としない。
第2に、本発明は、DMA動作のデータ特定フエーズ及
びデータ転送フエーズの各々が他のエレメントに対し
て、接続媒体内で非同期の独立した動作として進行する
ように、DMA動作のデータ仕様フエーズ及びデータ転
送フエーズを記載するものである。この非同期の動作
は、接続媒体のデータ転送フエーズの使用度を高め、そ
して、通信エレメントがデータ特定フエーズとデータ転
送フエーズを複数の動作にインターリーブするのを可能
にする。これら両方の機能は、長い待ち時間が発生する
のを防止する。
【0015】図3は、DMA用バスを介した、2つのプ
ロセツサの間のDMA転送に関する本発明の論理構造を
示す図である。本発明の実施例を説明するために、プロ
セツサ100は、用語「DMAの要求側」を用いて説明
し、プロセツサ200は、用語「DMAの応答側」を用
いて説明する。任意の所与の時間において、いずれのプ
ロセツサでも一方がDMAの要求側で、他方がDMAの
応答側になり得る。図示された論理構造において、DM
Aの要求側は、関連インターフエース及びDMA接続バ
スを介して、DMAの応答側からDMAの要求側に、デ
ータを転送するためのDMA動作を開始する。この実施
例において、DMAの要求側は、DMA用バスを介し
て、実ストレージ・アドレスをDMAの応答側に転送せ
ず、代わりに、データ・トークンで表わされる論理バツ
フア参照(logical reference buffer)を転送する。こ
れは、DMAの応答側のアドレス用のアーキテクチヤ及
び特定のデータ・アドレスを、DMAの要求側が知つて
いる必要性を無くす。論理バツフア参照を実ストレージ
・アドレスに翻訳する処理は、DMAの応答側に発生す
るので、応答側がストレージへのアクセスを承認し、認
可するのを可能にする。
ロセツサの間のDMA転送に関する本発明の論理構造を
示す図である。本発明の実施例を説明するために、プロ
セツサ100は、用語「DMAの要求側」を用いて説明
し、プロセツサ200は、用語「DMAの応答側」を用
いて説明する。任意の所与の時間において、いずれのプ
ロセツサでも一方がDMAの要求側で、他方がDMAの
応答側になり得る。図示された論理構造において、DM
Aの要求側は、関連インターフエース及びDMA接続バ
スを介して、DMAの応答側からDMAの要求側に、デ
ータを転送するためのDMA動作を開始する。この実施
例において、DMAの要求側は、DMA用バスを介し
て、実ストレージ・アドレスをDMAの応答側に転送せ
ず、代わりに、データ・トークンで表わされる論理バツ
フア参照(logical reference buffer)を転送する。こ
れは、DMAの応答側のアドレス用のアーキテクチヤ及
び特定のデータ・アドレスを、DMAの要求側が知つて
いる必要性を無くす。論理バツフア参照を実ストレージ
・アドレスに翻訳する処理は、DMAの応答側に発生す
るので、応答側がストレージへのアクセスを承認し、認
可するのを可能にする。
【0016】この実施例は、DMAの要求側が、DMA
の応答側のストレージ・アーキテクチヤも、DMAの応
答側のストレージ中のデータの物理的構造も知る必要が
ないという点で本発明の主要な利点を示している。例え
ば、DMA動作が開始された時に、DMAの応答側は、
転送されるデータのテーブル、即ちマツピングを共通に
発生する。このマツピングは、DMAの応答側のストレ
ージ・アーキテクチヤによつて、DMAの応答側のスト
レージ中のデータの実ストレージ・アドレスを特定す
る。例えば、若し、DMAの応答側のストレージ・アー
キテクチヤが、通常、「セグメント化されている」こと
で特徴付けられている形式、つまり、そのセグメントの
中で、ストレージ・アドレスが、基本セグメント・アド
レスと、関連バイトのオフセツトとで構成される形式を
持つているならば、従来の技術においては、DMAの要
求側は、応答側のこのストレージ・アーキテクチヤに関
する完全な知識を持つていることが要求される。従来の
技術において、DMAの要求側は、応答側のストレージ
中のデータのマツプ方式、即ち、問題のバイトがどのセ
グメント中のどのオフセツト位置にあるかについての両
方の知識を持つていなければならず、そして、DMAの
要求側は、DMA動作によつて要求されたデータにアク
セスするために、応答側のストレージのセグメント化さ
れたストレージ・アドレスを処理する能力を持たなけれ
ばならない。論理バツフア参照としての本発明のトーク
ン及びオフセツト値を使用することによつて、DMAの
要求側は、応答側のデータ・マツプも、ストレージ・ア
ーキテクチヤも知る必要がない。
の応答側のストレージ・アーキテクチヤも、DMAの応
答側のストレージ中のデータの物理的構造も知る必要が
ないという点で本発明の主要な利点を示している。例え
ば、DMA動作が開始された時に、DMAの応答側は、
転送されるデータのテーブル、即ちマツピングを共通に
発生する。このマツピングは、DMAの応答側のストレ
ージ・アーキテクチヤによつて、DMAの応答側のスト
レージ中のデータの実ストレージ・アドレスを特定す
る。例えば、若し、DMAの応答側のストレージ・アー
キテクチヤが、通常、「セグメント化されている」こと
で特徴付けられている形式、つまり、そのセグメントの
中で、ストレージ・アドレスが、基本セグメント・アド
レスと、関連バイトのオフセツトとで構成される形式を
持つているならば、従来の技術においては、DMAの要
求側は、応答側のこのストレージ・アーキテクチヤに関
する完全な知識を持つていることが要求される。従来の
技術において、DMAの要求側は、応答側のストレージ
中のデータのマツプ方式、即ち、問題のバイトがどのセ
グメント中のどのオフセツト位置にあるかについての両
方の知識を持つていなければならず、そして、DMAの
要求側は、DMA動作によつて要求されたデータにアク
セスするために、応答側のストレージのセグメント化さ
れたストレージ・アドレスを処理する能力を持たなけれ
ばならない。論理バツフア参照としての本発明のトーク
ン及びオフセツト値を使用することによつて、DMAの
要求側は、応答側のデータ・マツプも、ストレージ・ア
ーキテクチヤも知る必要がない。
【0017】本発明の下では、DMAの要求側が、「ト
ークン」、「タグ」、「オフセツト」及び「長さ」を含
む選択情報110を転送するためのDMA特定プロトコ
ルが必要とされる。トークンは、DMAの要求側が意図
するストレージ・アクセスの単なる論理名である。DM
Aの応答側は、DMAの転送動作の前にDMAの要求側
にこのトークンを供給するか、あるいは、DMAの要求
側は、どのトークンを使用するかについて内在的な知識
を持つている。DMAの応答側は、トークンを受け取
り、そして、そのトークンを応答側の特定のストレージ
位置に翻訳するために、内部のデータ・バツフア・テー
ブル、即ち翻訳テーブル120を参照する。DMAの応
答側は、トークンによつて定義された最初のストレージ
位置からのオフセツトである開始ストレージ転送ロケー
シヨン130を選択するために、増分値としてオフセツ
ト値を受け取る。DMAの応答側は、DMAアドレス1
60の増分オフセツト値を、特定のDMAの応答側のデ
ータ・バツフア・テーブル又は翻訳メカニズムと関連付
けることを可能にするインデツクスもしくはポインタ1
40としてタグ翻訳を受け取る。また、タグは、DMA
選択フエーズに対して非同期であるデータ転送フエーズ
の間に、要求側の初期選択情報に関連するデータを要求
側及び応答側の両方に識別させる。DMAの応答側は、
選択されたストレージ位置から転送されるバイトの合計
数の標識として長さ識別子を受け取る。
ークン」、「タグ」、「オフセツト」及び「長さ」を含
む選択情報110を転送するためのDMA特定プロトコ
ルが必要とされる。トークンは、DMAの要求側が意図
するストレージ・アクセスの単なる論理名である。DM
Aの応答側は、DMAの転送動作の前にDMAの要求側
にこのトークンを供給するか、あるいは、DMAの要求
側は、どのトークンを使用するかについて内在的な知識
を持つている。DMAの応答側は、トークンを受け取
り、そして、そのトークンを応答側の特定のストレージ
位置に翻訳するために、内部のデータ・バツフア・テー
ブル、即ち翻訳テーブル120を参照する。DMAの応
答側は、トークンによつて定義された最初のストレージ
位置からのオフセツトである開始ストレージ転送ロケー
シヨン130を選択するために、増分値としてオフセツ
ト値を受け取る。DMAの応答側は、DMAアドレス1
60の増分オフセツト値を、特定のDMAの応答側のデ
ータ・バツフア・テーブル又は翻訳メカニズムと関連付
けることを可能にするインデツクスもしくはポインタ1
40としてタグ翻訳を受け取る。また、タグは、DMA
選択フエーズに対して非同期であるデータ転送フエーズ
の間に、要求側の初期選択情報に関連するデータを要求
側及び応答側の両方に識別させる。DMAの応答側は、
選択されたストレージ位置から転送されるバイトの合計
数の標識として長さ識別子を受け取る。
【0018】DMA選択情報が処理された後、DMAの
要求側は、タグ及びオフセツト値を含むDMAアドレス
160をDMAの応答側に送る。DMAの応答側は、タ
グを、前に受け取つた識別子140に関連付け、そし
て、DMAアドレス160のオフセツト値を、特定の実
アドレスを指示する、前に受け取つたオフセツト値に関
連付ける。DMAの応答側は、上述の実アドレスで始ま
るデータ170をDMAの要求側に転送する。データ
は、1サイクル、またはそれ以上のサイクルの期間で転
送することができるが、しかし、DMAの応答側及び要
求側の両方は、転送されているバイト数に対応する長さ
値を、各サイクル毎に減分する。また、DMAの要求側
及び応答側の両方は、転送されているバイト数に対応す
るオフセツト値を増分し、そして、転送されたバイト数
と一致して、要求側及び応答側の関連する内部実アドレ
スを増分する。DMAの応答側の実アドレスを増加する
動作は、すべてDMAの要求側において行なわれ、増分
された実アドレスをDMAの要求側に送ることはない。
同様に、DMAの要求側の内部実アドレスを増分する動
作は、すべてDMAの要求側によつて行なわれ、増加さ
れた実アドレスをDMAの応答側に送ることはない。D
MAの応答側が長さ値をゼロに減分した時、DMAの応
答側は転送動作が完了されたことを認識し、DMA動作
を終了する。
要求側は、タグ及びオフセツト値を含むDMAアドレス
160をDMAの応答側に送る。DMAの応答側は、タ
グを、前に受け取つた識別子140に関連付け、そし
て、DMAアドレス160のオフセツト値を、特定の実
アドレスを指示する、前に受け取つたオフセツト値に関
連付ける。DMAの応答側は、上述の実アドレスで始ま
るデータ170をDMAの要求側に転送する。データ
は、1サイクル、またはそれ以上のサイクルの期間で転
送することができるが、しかし、DMAの応答側及び要
求側の両方は、転送されているバイト数に対応する長さ
値を、各サイクル毎に減分する。また、DMAの要求側
及び応答側の両方は、転送されているバイト数に対応す
るオフセツト値を増分し、そして、転送されたバイト数
と一致して、要求側及び応答側の関連する内部実アドレ
スを増分する。DMAの応答側の実アドレスを増加する
動作は、すべてDMAの要求側において行なわれ、増分
された実アドレスをDMAの要求側に送ることはない。
同様に、DMAの要求側の内部実アドレスを増分する動
作は、すべてDMAの要求側によつて行なわれ、増加さ
れた実アドレスをDMAの応答側に送ることはない。D
MAの応答側が長さ値をゼロに減分した時、DMAの応
答側は転送動作が完了されたことを認識し、DMA動作
を終了する。
【0019】本発明に従つてDMA用バスを使用する実
施例の動作を説明する図が図7に示されている。図7に
おいて、エレメントB(DMAの要求側)は、タグT
(T=1)を持つDMAアドレスA、Xを送り、これに
続いて、新しいタグ(T=2)を持つ異なつたDMAア
ドレスA、Yを送り、次に、新しいタグ(T=3)を持
つ異なつたDMAアドレスA、Zを送る。DMA用バス
が転送可能な時にはいつでも、DMAアドレスを送るこ
とができる。続いて、エレメントA(DMAの応答側)
は、タグ1(T=1)によつて表示され、アドレスA、
Xにより表示されたデータを取出し、そして、DMA用
バスを介してこのデータを転送し、タグ(T=1)を使
用して要求側にデータを識別させる。その後、エレメン
トAは、タグT=2に対するデータを組み立て、そし
て、DMA用バスを介してこのデータを送り、タグ(T
=2)を使用して要求側にデータを識別させる。その
後、エレメントAは、タグT=3に対するデータを組み
立て、そして、DMA用バスを介してこのデータを送
り、タグ(T=3)を使用して要求側にデータを識別さ
せる。応答側がタグT=1、T=2及びT=3に対して
データを転送する順序は、要求側が関連選択情報を転送
した順序とは異なつてもよい。従来の技術によるDMA
用バスの使用を示す図6と、本発明のDMAの使用を示
す図7を比較すれば、本発明の利点は明白である。
施例の動作を説明する図が図7に示されている。図7に
おいて、エレメントB(DMAの要求側)は、タグT
(T=1)を持つDMAアドレスA、Xを送り、これに
続いて、新しいタグ(T=2)を持つ異なつたDMAア
ドレスA、Yを送り、次に、新しいタグ(T=3)を持
つ異なつたDMAアドレスA、Zを送る。DMA用バス
が転送可能な時にはいつでも、DMAアドレスを送るこ
とができる。続いて、エレメントA(DMAの応答側)
は、タグ1(T=1)によつて表示され、アドレスA、
Xにより表示されたデータを取出し、そして、DMA用
バスを介してこのデータを転送し、タグ(T=1)を使
用して要求側にデータを識別させる。その後、エレメン
トAは、タグT=2に対するデータを組み立て、そし
て、DMA用バスを介してこのデータを送り、タグ(T
=2)を使用して要求側にデータを識別させる。その
後、エレメントAは、タグT=3に対するデータを組み
立て、そして、DMA用バスを介してこのデータを送
り、タグ(T=3)を使用して要求側にデータを識別さ
せる。応答側がタグT=1、T=2及びT=3に対して
データを転送する順序は、要求側が関連選択情報を転送
した順序とは異なつてもよい。従来の技術によるDMA
用バスの使用を示す図6と、本発明のDMAの使用を示
す図7を比較すれば、本発明の利点は明白である。
【0020】図4は、DMAの応答側において本発明を
適用した実施例を示すブロツク図である。この実施例に
おいて、トークンは、「n」個のリストから、応答側の
内部のストレージ・リスト「i」を選択する翻訳アルゴ
リズム501によつて処理される。内部のストレージ・
リスト「i」は、ストレージ・アクセス領域の複数の参
照を含んでおり、各参照は、最初のストレージ・アドレ
スと、ストレージ領域の長さを表わす値とによつて識別
される。オフセツト値は、選択されたストレージ・リス
ト「i」によつて表わされたデータ中の最初のバイト・
オフセツト502を選択するために、応答側によつて直
接に使用されるので、オフセツト値はストレージ・リス
ト「i」の中の特定のエントリを参照する。次に、この
特定のエントリは、DMAの応答側によつて使用され、
データを実際に転送するための、応答側ストレージの最
初の実アドレスを識別する。最初のバイト・オフセツト
502は、ストレージ・リスト「i」中のエントリによ
つて指定されるストレージ領域の最初のバイトに必ずし
も対応しない。この実施例において、参照領域中のオフ
セツト値に対応する正しい最初のストレージ・アドレス
を選択するために、更に他のステツプが適用されること
は、当業者には容易に理解できることである。
適用した実施例を示すブロツク図である。この実施例に
おいて、トークンは、「n」個のリストから、応答側の
内部のストレージ・リスト「i」を選択する翻訳アルゴ
リズム501によつて処理される。内部のストレージ・
リスト「i」は、ストレージ・アクセス領域の複数の参
照を含んでおり、各参照は、最初のストレージ・アドレ
スと、ストレージ領域の長さを表わす値とによつて識別
される。オフセツト値は、選択されたストレージ・リス
ト「i」によつて表わされたデータ中の最初のバイト・
オフセツト502を選択するために、応答側によつて直
接に使用されるので、オフセツト値はストレージ・リス
ト「i」の中の特定のエントリを参照する。次に、この
特定のエントリは、DMAの応答側によつて使用され、
データを実際に転送するための、応答側ストレージの最
初の実アドレスを識別する。最初のバイト・オフセツト
502は、ストレージ・リスト「i」中のエントリによ
つて指定されるストレージ領域の最初のバイトに必ずし
も対応しない。この実施例において、参照領域中のオフ
セツト値に対応する正しい最初のストレージ・アドレス
を選択するために、更に他のステツプが適用されること
は、当業者には容易に理解できることである。
【0021】図5は本発明の第2の実施例を示す図であ
る。この実施例において、基本ストレージ・アドレス値
を計算するための代数的翻訳機能601によつてトーク
ンが翻訳される。また、基本ストレージ・アドレス値
は、オフセツト値を受け取る代数的翻訳機能602に接
続されている。代数的翻訳機能602は、DMA動作の
応答側ストレージの最初の実アドレスを計算するため
に、受け取つた基本ストレージ・アドレス値にオフセツ
ト値を加える。
る。この実施例において、基本ストレージ・アドレス値
を計算するための代数的翻訳機能601によつてトーク
ンが翻訳される。また、基本ストレージ・アドレス値
は、オフセツト値を受け取る代数的翻訳機能602に接
続されている。代数的翻訳機能602は、DMA動作の
応答側ストレージの最初の実アドレスを計算するため
に、受け取つた基本ストレージ・アドレス値にオフセツ
ト値を加える。
【0022】特定の要求及び目的に適合させるために、
上述の実施例を変更することは、当業者には自明のこと
である。本発明の技術思想の範囲内で、DMA動作を行
なう送り側の装置及び受取り側の装置は、関連したアド
レス・モデルの知識なしで他方のメモリのアクセスを遂
行することができる。DMA動作に含まれ、相互に異な
る送り側の装置及び受取り側の装置は、内部的なローカ
ル・アドレス・モデルにマツプされる。この動作モデル
は、独立したメモリ・ユニツトの直線的に進行するアド
レス動作、連続ブロツク・アドレス動作、不連続的アド
レス動作、即ちスキヤツタ・アドレス動作及び同時アド
レス動作を必要とする動作をサポートする。
上述の実施例を変更することは、当業者には自明のこと
である。本発明の技術思想の範囲内で、DMA動作を行
なう送り側の装置及び受取り側の装置は、関連したアド
レス・モデルの知識なしで他方のメモリのアクセスを遂
行することができる。DMA動作に含まれ、相互に異な
る送り側の装置及び受取り側の装置は、内部的なローカ
ル・アドレス・モデルにマツプされる。この動作モデル
は、独立したメモリ・ユニツトの直線的に進行するアド
レス動作、連続ブロツク・アドレス動作、不連続的アド
レス動作、即ちスキヤツタ・アドレス動作及び同時アド
レス動作を必要とする動作をサポートする。
【0023】
【発明の効果】本発明は、DMAに関する従来技術の欠
点、即ち、DMA動作を遂行する装置がストレージ・ア
ーキテクチヤに依存するという欠点を、全体としてDM
A概念の利点を保持しながら解決する。
点、即ち、DMA動作を遂行する装置がストレージ・ア
ーキテクチヤに依存するという欠点を、全体としてDM
A概念の利点を保持しながら解決する。
【図1】従来の技術によるDMA接続を説明するための
ブロツク図である。
ブロツク図である。
【図2】従来のDMA動作のデータ仕様及び転送フエー
スを示す図である。
スを示す図である。
【図3】本発明に従つたアドレス動作及びデータ転送の
実施例を示す図である。
実施例を示す図である。
【図4】本発明のDMA動作方法の実施例を説明するた
めの図である。
めの図である。
【図5】本発明のDMA動作方法の他の実施例の図であ
る。
る。
【図6】従来のDMA用バスの使用を説明するための図
である。
である。
【図7】本発明に従つたDMA用バスの使用を説明する
ための図である。
ための図である。
100 要求側のプロセツサ 110 選択情報 120 翻訳テーブル 130 ストレージの転送位置 140 識別子(ポインタ) 160 DMAアドレス 170 DMAの転送データ 200 応答側のプロセツサ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 フェルナンド・オウグスト・ルイツ アメリカ合衆国カリフォルニア州、モン テ・セレノ、パイン・コーン・コート 17537 (72)発明者 グレゴリー・マイケル・ノードストーム アメリカ合衆国ミネソタ州、オロノコ、 ウッズビュー・レーン 745 (72)発明者 マーチン・ウイリアム・サチス アメリカ合衆国コネチカット州、ウエス トポート、ワーノック・ドライブ 28 (72)発明者 キャリル・エイ・ソーン アメリカ合衆国ミネソタ州、ロチェスタ ー、マナー・ウッズ・ドライブ、ノース ウエスト 4117 (56)参考文献 IBM TECHINICAL DI SCLOSURE BULLETIN VOL.27 NO.7A(DEC. 1984) MC6809−MC6809E マイクロプロ セッサ プログラミングマニュアル 第 2版(昭57−7)日本モトローラ株式会 社P.19−23
Claims (10)
- 【請求項1】 直接メモリ・アクセス(DMA)動作に
おいて、または、入出力チヤネルもしくはその他の接続
媒体上において、要求側と応答側との間でデータを転送
する方法であって、 (a) 要求側及び応答側の各々が、それぞれの第1のロ
ーカル・メモリ・アドレスを指定して論理トークン値に
関連付けるステツプと、 (b) データ転送動作の開始時に、要求側が、応答側へ
上記論理トークン値を転送するステツプと、 (c) 応答側が、転送された論理トークン値を応答側の
第1のローカル・メモリ・アドレスに翻訳するステツプ
と、 (d) 要求側と応答側が、要求側の第1のローカル・メ
モリ・アドレスと応答側の第1ローカル・メモリ・アド
レスとの間でデータを転送するステツプと、 を含むデータ転送方法。 - 【請求項2】 データ転送動作の開始時に、要求側が、
応答側にオフセツト値を転送するステツプと、上記オフセット値に応答して、応答側が、上記応答側の
第1のローカル・メモリ・アドレスをオフセットして、
応答側の第2のローカル・メモリ・アドレスを作成する
ステツプと、 を含み、上記データを転送するステップ(d)が、 要求側の第1
のローカル・メモリ・アドレスと応答側の第2のローカ
ル・メモリ・アドレスとの間でデータを転送するステツ
プを含む、 請求項1に記載のデータ転送方法。 - 【請求項3】 データ転送の開始時に、要求側が特定の
トークン値及びオフセツト値を一意的に指定するタグ識
別子を作成し、応答側に当該タグ識別子を転送するステ
ツプと、 その後、応答側が上記タグ識別子を上記トークン値及び
上記オフセツト値として認識するステツプと、 を含む請求項2に記載のデータ転送方法。 - 【請求項4】 応答側がトークン値及びオフセツト値を
認識する上記ステツプが、 ストレージ・リストを識別するための翻訳アルゴリズム
においてトークン値を翻訳するステツプと、 上記ストレージ・リストにおいて特定のストレージ・ア
ドレスを識別するために、オフセツト値を翻訳するステ
ツプと、を含む、 請求項3に記載のデータ転送方法。 - 【請求項5】 応答側がトークン値及びオフセツト値を
認識する上記ステツプが、 第1基本ストレージ・アドレスを発生するために、第1
翻訳機能中でトークン値を翻訳するステツプと、 上記応答側のメモリ・ストレージ中の開始アドレスを発
生するために、第2翻訳機能において、上記第1基本ス
トレージ・アドレスと組み合わせてオフセツト値を翻訳
するステツプと、を含む、 請求項3に記載のデータ転送方法。 - 【請求項6】 要求装置と応答装置との間で行なわれる
直接メモリ・アドレス指定によってデータ転送を行う方
法であって、 上記要求装置が、 トークン値、タグ識別子、オフセツト
値及び長さ識別子を作成し、それらの情報を上記応答装
置に転送するステップと、 上記応答装置が、上記トークン値及びオフセツト値を、
応答装置の第1のローカル・ストレージ・アドレスに翻
訳するステップと、 上記応答装置が、 上記長さ識別子を応答装置の最終ロー
カル・ストレージ・アドレスに翻訳するステップと、 上記応答装置が、 上記トークン値、上記オフセツト値及
び上記長さ識別子を応答装置の記録ロケーシヨンに記録
するステップと、 上記応答装置が、 上記タグ識別子を使用して、上記応答
装置の記録ロケーシヨンを識別するステップと、 を含むデータ転送方法。 - 【請求項7】 要求装置と応答装置の間に接続された直
接メモリ・アクセス ・バスを介して直接メモリ・アドレ
ス指定によってデータ転送を行う装置であって、 (a) 上記要求装置中にトークン値及びオフセツト値を
作成し、上記トークン値及びオフセツト値を参照するタ
グ識別子を該要求装置中に作成する手段と、 (b) 上記トークン値、上記オフセツト値及び上記タグ
識別子を上記応答装置中に転送し、該タグ識別子に関連
する応答装置中に該トークン及びオフセツト値を記録す
る手段と、 (c) 上記トークン値及び上記オフセツト値の参照によ
つて上記応答装置中のローカル・アドレスを選択し、該
選択されたローカル・アドレスに参照データのDMA転
送を開始する手段と、 を含むデータ転送装置。 - 【請求項8】 要求装置及び応答装置が相手方のメモリ
・アドレス・モデルの知識を持たない一組の要求装置及
び応答装置において関連するメモリ・アドレスの間でデ
ータを転送する方法であって、 (a) 上記要求装置及び応答装置へ論理トークン値を送
信し、該要求装置が該論理トークン値を用いて要求装置
の第1のメモリ・アドレスを識別し、かつ、該応答装置
が該論理トークン値を用いて応答装置の第1のメモリ・
アドレスを識別するステツプと、 (b) 上記要求装置が上記論理トークン値及びオフセツ
ト値を上記応答装置に転送するステツプと、 (c) 上記応答装置が、上記論理トークン値に応答し
て、上記オフセツト値により増分された、応答装置の上
記第1メモリ・アドレスに対応する応答装置の第2メモ
リ・アドレスを識別するステツプと、 (d) 応答装置の上記第2メモリ・アドレスと要求装置
の上記第1メモリ・アドレスとの間でデータを転送する
ステツプと、 を含むデータ転送方法。 - 【請求項9】 要求装置及び応答装置が相手方のメモリ
・アドレス・モデルの知識を持たない一組の要求装置及
び応答装置であつて、要求装置及び応答装置の各々はそ
のデータ転送のためのローカル・メモリ・アドレスを持
つているが、そのローカル・メモリ・アドレスは相互の
装置に未知である要求装置及び応答装置の間でデータを
転送する装置であって、 (a) 転送されるデータを表す論理トークン値を要求装
置及び応答装置に送信する手段と、 (b) 要求装置が、データ転送動作の標識を表わすタグ
値を識別するための手段と、 (c) 要求装置が、データ転送動作の開始時に、論理ト
ークン値及びタグ値を応答装置に転送する手段と、 (d) 応答装置が、上記論理トークン値に対応するロー
カル・メモリ・アドレスを参照する上記データ転送動作
を開始し、上記タグ値を持つ1つまたはそれ以上の順次
セグメントに上記データを転送する手段と、 (e) 上記の各セグメントを、要求装置の1つまたはそ
れ以上のローカル・メモリ・アドレスに関連付けるよう
に、上記要求装置が上記タグ値を読み取る手段と、 を
含むデータ転送装置。 - 【請求項10】 要求装置及び応答装置の各々が相手方
のメモリ・アドレス・モデルの知識を持たない一組の要
求装置及び応答装置であつて、各装置は直接メモリ・ア
ドレス指定動作におけるデータ転送のための関連ローカ
ル・メモリ・アドレスを持つているような要求装置及び
応答装置の間で直接メモリ・アドレス指定動作を遂行す
るデータ転送装置であって、 (a) 上記直接メモリ・アドレス指定動作を遂行するた
めに、上記要求装置中のローカル・メモリ・アドレスを
識別するための標識として上記要求装置によつて認識可
能な論理トークン値及びオフセツト値を指定する手段
と、 (b) 上記論理トークン値及びオフセツト値を上記応答
装置に転送し、上記応答装置が、上記論理トークン値及
びオフセツト値に対応するローカル・メモリ・アドレス
を選択する手段と、 (c) 上記要求装置において、直接メモリ・アドレス指
定動作を開始させ、上記直接メモリ・アドレス指定動作
を識別するための標識としてのタグ値を指定し、上記要
求装置から上記応答装置に該タグ値を転送する手段と、 (d) 上記応答装置において、非同期に順序付けられた
セグメント中で、上記直接メモリ・アドレス指定動作を
遂行し、該各セグメントが、上記論理トークン値及びオ
フセツト値によつて識別されるローカル・メモリ・アド
レスから上記タグ値と共に上記要求装置に転送される手
段と、 (e) 上記要求装置において、上記転送されるタグ値に
よつて上記直接メモリ・アドレス指定動作を識別し、上
記論理トークン値及びオフセツト値によつて識別される
ローカル・メモリ・アドレスに対して上記直接メモリ・
アドレス指定動作を遂行する手段と、 を含む直接メモリ・アドレス指定動作を遂行するデータ
転送装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US84375092A | 1992-02-28 | 1992-02-28 | |
US843750 | 1992-02-28 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH05289977A JPH05289977A (ja) | 1993-11-05 |
JP2501737B2 true JP2501737B2 (ja) | 1996-05-29 |
Family
ID=25290912
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP4344542A Expired - Lifetime JP2501737B2 (ja) | 1992-02-28 | 1992-12-24 | デ―タ転送方法及び装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US5634007A (ja) |
EP (1) | EP0558433A2 (ja) |
JP (1) | JP2501737B2 (ja) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6311286B1 (en) * | 1993-04-30 | 2001-10-30 | Nec Corporation | Symmetric multiprocessing system with unified environment and distributed system functions |
US6343102B1 (en) * | 1995-05-01 | 2002-01-29 | Fujitsu Limited | In-station control system and method |
US6256683B1 (en) * | 1998-12-23 | 2001-07-03 | Bops, Inc. | Methods and apparatus for providing direct memory access control |
US7793038B2 (en) | 2007-06-26 | 2010-09-07 | International Business Machines Corporation | System and method for programmable bank selection for banked memory subsystems |
US8140925B2 (en) | 2007-06-26 | 2012-03-20 | International Business Machines Corporation | Method and apparatus to debug an integrated circuit chip via synchronous clock stop and scan |
US7984448B2 (en) * | 2007-06-26 | 2011-07-19 | International Business Machines Corporation | Mechanism to support generic collective communication across a variety of programming models |
US8458282B2 (en) | 2007-06-26 | 2013-06-04 | International Business Machines Corporation | Extended write combining using a write continuation hint flag |
US8103832B2 (en) * | 2007-06-26 | 2012-01-24 | International Business Machines Corporation | Method and apparatus of prefetching streams of varying prefetch depth |
US8010875B2 (en) | 2007-06-26 | 2011-08-30 | International Business Machines Corporation | Error correcting code with chip kill capability and power saving enhancement |
US7877551B2 (en) * | 2007-06-26 | 2011-01-25 | International Business Machines Corporation | Programmable partitioning for high-performance coherence domains in a multiprocessor system |
US7802025B2 (en) | 2007-06-26 | 2010-09-21 | International Business Machines Corporation | DMA engine for repeating communication patterns |
US7827391B2 (en) | 2007-06-26 | 2010-11-02 | International Business Machines Corporation | Method and apparatus for single-stepping coherence events in a multiprocessor system under software control |
US8756350B2 (en) | 2007-06-26 | 2014-06-17 | International Business Machines Corporation | Method and apparatus for efficiently tracking queue entries relative to a timestamp |
US8032892B2 (en) * | 2007-06-26 | 2011-10-04 | International Business Machines Corporation | Message passing with a limited number of DMA byte counters |
US8230433B2 (en) | 2007-06-26 | 2012-07-24 | International Business Machines Corporation | Shared performance monitor in a multiprocessor system |
US8468416B2 (en) | 2007-06-26 | 2013-06-18 | International Business Machines Corporation | Combined group ECC protection and subgroup parity protection |
US8108738B2 (en) * | 2007-06-26 | 2012-01-31 | International Business Machines Corporation | Data eye monitor method and apparatus |
US7886084B2 (en) | 2007-06-26 | 2011-02-08 | International Business Machines Corporation | Optimized collectives using a DMA on a parallel computer |
US8509255B2 (en) * | 2007-06-26 | 2013-08-13 | International Business Machines Corporation | Hardware packet pacing using a DMA in a parallel computer |
US7886205B2 (en) * | 2008-06-24 | 2011-02-08 | Unisys Corporation | Verification of a data processing system using overlapping address ranges |
CN111461326B (zh) * | 2020-03-31 | 2022-12-20 | 中科寒武纪科技股份有限公司 | 一种基于设备内存的指令寻址方法及计算机可读存储介质 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5898893A (ja) * | 1981-12-09 | 1983-06-11 | Toshiba Corp | 情報処理装置 |
US4481578A (en) * | 1982-05-21 | 1984-11-06 | Pitney Bowes Inc. | Direct memory access data transfer system for use with plural processors |
CA1226638A (en) * | 1982-08-19 | 1987-09-08 | Mitsuji Takao | Data communication method |
JPS5945527A (ja) * | 1982-09-07 | 1984-03-14 | Hitachi Ltd | バス制御方法 |
US4556974A (en) * | 1983-10-07 | 1985-12-03 | Honeywell Inc. | Method for passing a token in a local-area network |
US4807109A (en) * | 1983-11-25 | 1989-02-21 | Intel Corporation | High speed synchronous/asynchronous local bus and data transfer method |
CA1244555A (en) * | 1985-06-17 | 1988-11-08 | Walter H. Schwane | Process transparent multi storage mode data transfer and buffer control |
JPS62239641A (ja) * | 1986-04-11 | 1987-10-20 | Hitachi Ltd | 同報通信方式 |
US4866421A (en) * | 1987-06-18 | 1989-09-12 | Texas Instruments Incorporated | Communications circuit having an interface for external address decoding |
-
1992
- 1992-12-24 JP JP4344542A patent/JP2501737B2/ja not_active Expired - Lifetime
-
1993
- 1993-01-26 EP EP93480004A patent/EP0558433A2/en not_active Withdrawn
-
1995
- 1995-03-02 US US08/398,053 patent/US5634007A/en not_active Expired - Lifetime
Non-Patent Citations (2)
Title |
---|
IBMTECHINICALDISCLOSUREBULLETINVOL.27NO.7A(DEC.1984) |
MC6809−MC6809Eマイクロプロセッサプログラミングマニュアル第2版(昭57−7)日本モトローラ株式会社P.19−23 |
Also Published As
Publication number | Publication date |
---|---|
JPH05289977A (ja) | 1993-11-05 |
EP0558433A3 (ja) | 1994-03-16 |
US5634007A (en) | 1997-05-27 |
EP0558433A2 (en) | 1993-09-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2501737B2 (ja) | デ―タ転送方法及び装置 | |
EP1046111B1 (en) | Data transferring in source-synchronous and common clock protocols | |
US4843542A (en) | Virtual memory cache for use in multi-processing systems | |
US6189062B1 (en) | Apparatus and method for address translation in bus bridge devices | |
US5978872A (en) | Method and system for concurrent computer transaction processing | |
US5699516A (en) | Method and apparatus for implementing a in-order termination bus protocol within a data processing system | |
JP2002351817A (ja) | メモリにアクセスする方法及び装置 | |
EP1010085B1 (en) | System and method of flow control for a high speed bus | |
US6101566A (en) | Computer system with bridge logic that includes an internal modular expansion bus and a common target interface for internal target devices | |
JPH10293744A (ja) | Pciバス・システム | |
US5249297A (en) | Methods and apparatus for carrying out transactions in a computer system | |
US6105080A (en) | Host adapter DMA controller with automated host reply capability | |
US5717931A (en) | Method and apparatus for communicating between master and slave electronic devices where the slave device may be hazardous | |
US5708783A (en) | Data bus arbiter for pipelined transactions on a split bus | |
JP2505298B2 (ja) | スプリットバスにおける可変バス幅指定方式及び可変バス幅情報受信方式 | |
JP3157513B2 (ja) | 拡張記憶装置 | |
US6845402B1 (en) | Descriptor burst read-ahead | |
JP2000293454A (ja) | データ通信装置、データ通信方法、および記録媒体 | |
JP2001318906A (ja) | マルチプロセッサ装置 | |
JP2003067322A (ja) | データ転送方法、ブリッジ回路、及びデータ転送システム | |
JPS6019023B2 (ja) | デ−タ処理装置 | |
JPS6341973A (ja) | マルチプロセツサシステム | |
JPH0644192A (ja) | データ共有方式 | |
JPH0236011B2 (ja) | ||
JPH11110364A (ja) | 異種cpu系機器間のデータ転送方法 |