JPH07191935A - データ処理システム及びデータ転送方法 - Google Patents

データ処理システム及びデータ転送方法

Info

Publication number
JPH07191935A
JPH07191935A JP20636294A JP20636294A JPH07191935A JP H07191935 A JPH07191935 A JP H07191935A JP 20636294 A JP20636294 A JP 20636294A JP 20636294 A JP20636294 A JP 20636294A JP H07191935 A JPH07191935 A JP H07191935A
Authority
JP
Japan
Prior art keywords
data
memory
memory means
information
transmission
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
JP20636294A
Other languages
English (en)
Other versions
JP2784459B2 (ja
Inventor
Cory A Cherichetti
コリー・アンセル・チェリチェッティ
Paul D Dinicola
ポール・デビッド・デニクラ
Charles R Johns
チャールズ・レイ・ジョンズ
Omar M Rahim
オマー・マーマウド・ラヒム
David A Rice
デビッド・アンドリュー・ライス
Nostrand Mark Van
マーク・アーネスト・バン・ノストランド
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH07191935A publication Critical patent/JPH07191935A/ja
Application granted granted Critical
Publication of JP2784459B2 publication Critical patent/JP2784459B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • G06F5/12Means for monitoring the fill level; Means for resolving contention, i.e. conflicts between simultaneous enqueue and dequeue operations
    • 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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/06Indexing scheme relating to groups G06F5/06 - G06F5/16
    • G06F2205/064Linked list, i.e. structure using pointers, e.g. allowing non-contiguous address segments in one logical buffer or dynamic buffer space allocation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/06Indexing scheme relating to groups G06F5/06 - G06F5/16
    • G06F2205/066User-programmable number or size of buffers, i.e. number of separate buffers or their size can be allocated freely
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/12Indexing scheme relating to groups G06F5/12 - G06F5/14
    • G06F2205/126Monitoring of intermediate fill level, i.e. with additional means for monitoring the fill level, e.g. half full flag, almost empty flag

Abstract

(57)【要約】 (修正有) 【目的】 ホストとサブシステムとの間でデータを効率
的に転送する。 【構成】 データがシステム・バス40により、ホスト
・システムからホスト・システムに接続されるサブシス
テムに、ホスト・メモリ30内の1個以上の仮想ファー
ストイン−ファーストアウト(FIFO)・レジスタ、
及びサブシステム・メモリ50内に配置される対応する
仮想FIFOのセットを用いて効率的に転送される。伝
送制御装置がホストFIFOからサブシステムFIFO
へのデータ転送を制御し、サブシステム・プロセッサが
サブシステムFIFOからデータを読出して処理する。
データをサブシステムに転送する以前に、ホストFIF
Oに蓄積することにより、システム・バス40上におけ
るデータ転送の開始及び停止に関するオーバヘッドが実
質的に低減される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はホスト・システム及び通
信サブシステムによりホストに接続される周辺サブシス
テムを有するデータ処理システムに関し、特に通信サブ
システムにより周辺サブシステムに接続されるホスト・
システムを有し、データがホスト・システムと周辺サブ
システムとの間を直接メモリ・アクセスにより伝送され
るデータ処理システムに関する。
【0002】
【従来の技術】ここ数年の間に、ほとんどのデータ処理
システムが特定のタイプのグラフィックス出力を標準機
能として提供するようになった。このグラフィックス出
力には、単純な2次元(2D)グラフィックス再生機能
から、非常に高度な3次元(3D)グラフィックス再生
機能まである。グラフィックス・サブシステムは複雑
性、パーツ数及びコストの点で多様である。例えば、2
次元グラフィックス・サブシステムは、フレーム・バッ
ファ及びビデオ論理だけを含むが、3次元グラフィック
ス・サブシステムは、通常、1個以上の浮動小数点プロ
セッサ、幾つかのカスタム超大規模集積回路(VLS
I)、1個以上のフレーム・バッファ及びビデオ論理を
含む。どちらの場合も、ホストがグラフィックス・アプ
リケーション・プログラムを実行し、グラフィックス・
サブシステムのための適切なデータ・ストリームを生成
する。比較的単純な2Dグラフィックスと、より複雑な
3Dグラフィックスとの差は、グラフィックス命令処理
及びラスタリゼーションにおいて見られる。単純な2D
グラフィックス・サブシステムの例では、ホスト・プロ
セッサはグラフィックス命令処理及びラスタリゼーショ
ンをソフトウェアで実行するが、より複雑な3Dグラフ
ィックス・サブシステムの例では、グラフィックス・サ
ブシステム内のハードウェア及びマイクロコードがグラ
フィックス命令及び他のグラフィックス処理を処理す
る。カスタマがかれらのニーズに最も適合するように、
より柔軟にシステムを構成できるように、通常、グラフ
ィックス・サブシステムはスタンド・アロン機構として
提供される。
【0003】グラフィックス・サブシステムは、通常、
汎用バスによりホスト・プロセッサ・コンプレックスに
接続される。ホスト・プロセッサとグラフィックス・サ
ブシステムとの間のデータ転送は、2つの方法の内の一
方により発生する。第1は、ホスト・プロセッサがプロ
グラマブル入出力(PIO)転送を用い、データを直接
グラフィックス・サブシステムに記憶する。第2は、グ
ラフィックス・サブシステムが直接メモリ・アクセス
(DMA)を用い、データをホスト・メモリから読出
す。PIOはホスト・プロセッサ内の命令を用い、単一
ワードのデータをホスト・プロセッサ内のレジスタから
グラフィックス・サブシステムに、或いはその逆に転送
するデータ転送機構である。DMAオペレーションは大
きな転送サイズに対して最も効率的であるが、グラフィ
ックス・アプリケーションは通常、小さな転送サイズを
生成するので、データ転送のためのDMA機構はグラフ
ィックス・アプリケーションではほとんど使用されな
い。PIOはグラフィックス・サブシステムへのデータ
の転送に使用される典型的な機構である。PIOはホス
ト・プロセッサがデータを直接グラフィックス・サブシ
ステムに送信することを可能にする。しかしながら、P
IO機構は、通常、ホスト・プロセッサとグラフィック
ス・サブシステムを接続するバスの帯域幅を効率的に使
用しない。
【0004】直接メモリ・アクセス(DMA)方法及び
装置が、Christiansenらによる米国特許第381247
5号で開示されており、この特許は本願においても参照
される。
【0005】米国特許第4430699号は分散データ
処理システムを開示し、一般にシステム相互通信プロセ
ッサにより制御される幾つかの局所システムの相互接続
を示す。システム相互通信プロセッサは、協調及び通信
制御初期化、並びに局所システム間の通信に関連するシ
ミュレーションを請け負う。機能通信層は通信プロトコ
ルを請け負う。トランスポート・モジュール及びループ
式光バスを含むトランスポート層は、局所システムと分
散データ処理システムとの間のデータ伝送用のハードウ
ェア層を提供する。
【0006】この特許の分散データ処理システムは、局
所システム間の伝送に対応してデータを記憶するために
ファーストイン−ファーストアウト(FIFO)・レジ
スタを使用するが、この特許はホストとサブシステムと
の間のデータ転送効率を向上させ、データ転送開始及び
停止時の短いバーストに固有のオーバヘッドを排除する
ために、独立のプロセッサの制御下で動作するホスト・
メモリ内の複数の仮想FIFO及びサブシステム・メモ
リの使用を教示しない。
【0007】
【発明が解決しようとする課題】本発明の第1の目的
は、転送される所定の最小量のデータを蓄積するため
に、最初にデータをシステム・メモリ内に配置される1
個以上の仮想FIFOレジスタに書込み、次にその最小
量のデータを転送プロセッサの制御下で動作する直接メ
モリ・アクセス技術を用い、サブシステム・メモリ内に
配置されるFIFOレジスタの対応するセットに転送す
ることにより、ホストとサブシステムとの間でデータを
効率的に転送することである。転送以前にFIFOレジ
スタにデータを蓄積することにより、システム・バス上
におけるデータ転送の開始及び停止に関連するオーバヘ
ッドの影響が最小化される。
【0008】
【課題を解決するための手段】従って、本データ処理シ
ステムは、ホスト・メモリを有するホスト・プロセッサ
と、ホスト・プロセッサからのデータを処理するプロセ
ッサを有する入出力サブシステムと、ホストとサブシス
テムとの間で伝送される情報を記憶するサブシステム・
メモリと、ホスト・メモリと直接メモリ・アクセスを用
いるサブシステム・メモリとの間のデータ転送を制御す
る通信プロセッサとを含む。
【0009】好適な実施例では、データ処理システムは
主メモリ、データ転送用のシステム・バス及びシステム
・バスに接続され、ホスト・プロセッサにより生成され
るグラフィックス命令を実行するグラフィックス・サブ
システムを有するワークステーション・ホストを含む。
1個以上の仮想FIFOがシステム・メモリ内に設けら
れ、更に仮想FIFOの対応するセットがグラフィック
ス・サブシステム・メモリ内に設けられて、蓄積データ
或いはシステム・バスを介して転送されるデータを記憶
する。通信プロセッサは所定量のデータがホスト・メモ
リFIFOに蓄積されると、直接メモリ・アクセス技術
を用いて転送を制御する。
【0010】
【実施例】一般に、グラフィックス描画サブシステムな
どの特定の周辺サブシステムの性能は、ホスト・プロセ
ッサなどのアプリケーション・プログラム・プロセッサ
から、グラフィックス・プロセッサなどのサブシステム
・プロセッサに転送されるデータ量により制限される。
この転送における主な制限要素は、任意の時間周期内に
入出力バスを介して伝送される制御情報及びデータ情報
の量である。近年、回路及びメモリ技術が飛躍的に改良
されたため、処理能力もまた少なくとも10倍以上に強
化された。しかしながら、ある期間、システム・バス上
のデータ転送レートは、おおよそ2倍乃至3倍程度向上
されるに過ぎなかった。
【0011】汎用バスは、増分デマンド応答技術又はP
IOを用いる少量のデータ転送ではなく、直接メモリ・
アクセスを用いる大量のデータ転送においてより効率的
である。
【0012】グラフィックス処理アプリケーションにお
いては、一般に、1回の転送により、比較的少量のデー
タ及び制御情報が、アプリケーション・プログラム・プ
ロセッサからグラフィックス・プロセッサに転送されな
ければならない。グラフィックス・データ又は制御情報
の転送サイズは小さいので、DMAオーバヘッドはDM
A機構の使用を正当化せず、従って、ホストとサブシス
テムとの間の情報転送にとって、PIO機構が2つの乏
しい選択の内では好適であった。遅いデマンド応答入出
力オペレーション(PIO)は、アプリケーション・プ
ログラム・プロセッサを妨害し、アプリケーション・プ
ログラムに使用可能な処理帯域幅を減少させる。ホスト
・プロセッサを遅いPIO転送の実行から解放すること
により、ホストとサブシステムとの間の情報のより効率
的な転送が、比較的小さな情報転送に対して直接メモリ
・アクセス(DMA)技術を用いて達成される。
【0013】次に図を参照しながら、本発明について説
明する。
【0014】図1を参照して、本発明を具現する装置に
ついて説明する。情報処理システム10は、オペレーテ
ィング・システム・プログラムの制御の下でアプリケー
ション・プログラム処理を実行するホスト・プロセッサ
20を含む。ホスト・プロセッサ20はシステム・バス
40及びホスト・メモリ30に接続され、ホスト・メモ
リ30はホスト・プロセッサ20において実行される処
理に関連するプログラム及びデータ情報を記憶する。シ
ステム・バス40は、プログラム及びデータ情報を周辺
サブシステムに伝送する。周辺サブシステムは、サブシ
ステム・アプリケーション・プロセッサ70、サブシス
テム・メモリ50、及びグラフィックス・ディスプレイ
・システム80を含む。伝送制御プロセッサ60がシス
テム・バス40に接続され、ホスト・メモリ30とサブ
システム・メモリ50との間における、システム・バス
40を介するプログラム及びデータ情報の伝送を制御す
る。サブシステム・アプリケーション・プロセッサ70
はグラフィックス命令及び関連データを処理し、グラフ
ィックス・ディスプレイ・サブシステム80にサブシス
テム・バス90を介して、表示されるイメージの画素ベ
ースの表現を生成するための入力を提供する。
【0015】図2及び図3を参照して、ホスト・メモリ
30及びサブシステム・メモリ50内の一時レジスタの
割当てについて述べる。ホスト・プロセッサ20により
処理される各アプリケーションは自身に対して、ホスト
・メモリ30内の一時レジスタ、例えばFIFO−1
32、FIFO−2 34、FIFO−3 3
6、...FIFO−n 38を割当てる。サブシステ
ム・メモリ50には対応する一時記憶レジスタ、例えば
FIFO−1 52、FIFO−2 54、...FI
FO−n 56が存在する。ホスト・プロセッサ20は
アプリケーション・プログラムを実行し、適切な制御情
報又はデータ情報をホスト・メモリ30内の32などの
所定のFIFOバッファに書込む。伝送制御プロセッサ
60はFIFO−1 32内の情報のシステム・バス4
0を介する、サブシステム・メモリ50内の対応する一
時レジスタFIFO−1 52への伝送を制御する。サ
ブシステム・アプリケーション・プロセッサ70は次
に、サブシステム・メモリ50内のFIFO−1 52
から情報を読出し、グラフィックス・ディスプレイ・サ
ブシステム80に入力を供給するために前記情報を処理
する。
【0016】図4を参照すると、グラフィックス・ディ
スプレイ・サブシステム80は、グラフィックス命令を
表示のための一連の画素表現に変換するグラフィックス
・プロセッサ82、表示されるイメージの表現を電子的
に記憶するビデオ・フレーム・バッファ・メモリ84、
及びビデオ・フレーム・バッファ・メモリ84に記憶さ
れるイメージの可視表示を提供するビデオ表示装置86
を含む。
【0017】各アプリケーションがホスト・プロセッサ
20において開始されると、ホスト・メモリ内のFIF
O−1 32などのFIFOが、そのアプリケーション
による排他的使用のために割当てられる。任意の時点に
おいて、複数のアプリケーションがオペレーション状態
にあり、各々が専用の一時記憶レジスタ、例えばホスト
・メモリ30内のFIFO32、34、36、38な
ど、及びサブシステム・メモリ50内の対応するFIF
Oを有することが予想される。
【0018】FIFO32、34、36、38、52、
54、56の管理は、各こうしたFIFOに対してポイ
ンタが読出し、書込み、トップ及びボトムに対応して維
持されることを要求する。
【0019】トップ及びボトム・ポインタは、システム
・メモリ30内のFIFO32、34、36及び38の
それぞれの開始及び終了アドレスを定義する。読出しポ
インタはグラフィックス・サブシステム80に転送され
るデータ又は制御情報の最終ワードのアドレスを定義す
る。書込みポインタはホスト・プロセッサ20により書
込まれたデータ又は制御情報の最終ワードのアドレスを
定義する。
【0020】伝送制御プロセッサ60は、読出しポイン
タにより示されるアドレスから開始し、書込みポインタ
により示されるアドレスで終了するデータ又は制御情報
のブロックの転送を制御する。
【0021】図5を参照して、伝送制御プロセッサ60
の制御による、ホスト・メモリ30からサブシステム・
メモリ50へのシステム・バス40を介する制御情報及
びデータ情報の伝送について説明する。
【0022】読出し及び書込みポインタが、サブシステ
ム・メモリ50及びホスト・メモリ30内のリンク・リ
スト57に保持される。伝送制御プロセッサ60はデー
タの要求時にリンク・リスト57を走査し、データを転
送する。リンク・リスト57は、システムから新たなF
IFOが追加又は消去される時、更新される。FIFO
はそれらがアプリケーション・プログラムに割当てられ
ると、リンク・リスト57に追加される。FIFOはア
プリケーション・プログラムが終了すると、リンク・リ
スト57から消去される。追加のアプリケーションがホ
スト・プロセッサ20上で実行されると、追加のFIF
Oポインタがリンク・リスト57に追加される。同様に
アプリケーションがホスト・プロセッサ20上での実行
を終了すると、その対応するFIFOポインタがリンク
・リスト57から除去される。
【0023】リンク・リストは非常によく知られた構造
であり、レジスタがリンク・リストに如何に追加又は消
去されるかに関しては、当業者には既知である。
【0024】情報伝送プロセス100は伝送制御プロセ
ッサ60の制御の下で、データをシステム・バス40を
介して、ホスト・メモリ30からサブシステム・メモリ
50に転送するように動作する。これについて説明す
る。FIFO−1 52などのサブシステム・メモリ5
0内の第1のFIFOがステップ104で、FIFO内
の使用可能な記憶空間の量を判断するために調査され
る。伝送制御プロセッサ60はステップ106で、FI
FO52に関連する読出しポインタ及び書込みポインタ
を読出し比較することにより、サブシステム・メモリの
FIFO52内の使用可能記憶空間の量が、データ伝送
を受諾するのに十分かどうかを判断する。ポインタがF
IFO52がフルであることを示す場合、伝送制御プロ
セッサ60はステップ120でカウンタを更新し、FI
FO52のアクセスにおいて試行が不成功であったこと
を示す。ステップ106において十分な空間が存在する
と判断されると、伝送制御プロセッサ60は次に、ホス
ト・メモリ30内のFIFO32などの対応するFIF
Oに関し、それがシステム・バス40の資源の効率的使
用を生成するために十分な転送データを有するかどうか
を判断する。
【0025】同様にステップ108及びステップ110
において、伝送制御プロセッサはシステムFIFO32
の読出しポインタ及び書込みポインタを調査する。FI
FO32の読出しポインタ及び書込みポインタがFIF
Oが空であることを示すと、カウンタがステップ120
で増分され、試行が不成功であったことを示す。次に伝
送制御プロセッサ60はステップ118で、リスト上の
次のFIFO34に処理を進める。ホスト・メモリ30
内の32、34、36、...38などのFIFOの読
出し及び書込みポインタが、十分な量のデータがサブシ
ステム・メモリ50に転送されることを示すと、伝送制
御プロセッサ60はシステム・バス40を介してデータ
転送を開始する。伝送制御プロセッサ60はステップ1
12で、米国特許第3812475号において述べられ
るような直接メモリ・アクセス技術を用いて、システム
・バス40上へのデータ転送を生じる。情報転送が完了
すると、伝送制御プロセッサ60はステップ114で、
ホスト・メモリ30及びサブシステム・メモリ50内の
読出し及び書込みポインタをそれぞれ更新し、次にリン
ク・リスト57内の次のFIFOに移行する。ステップ
116において1個のFIFOだけしか検出されない場
合には、プロセス100はプロセスの開始102に戻
り、伝送制御プロセッサ60の制御の下で次の転送を実
行する。上述のステップは、リンク・リスト内の次の各
連続するFIFO34、36、...38に対して、或
いはアプリケーション・プログラムが実行を完了するか
又は終了されるまで実行される。
【0026】図6を参照すると、ここで述べられる本発
明は、ホスト・メモリ30内の複数のFIFOからサブ
システム・メモリ50内の複数のFIFOに情報を転送
するためにも使用される。このオペレーションは伝送制
御プロセッサ60の制御の下で実行され、各FIFO3
2、34、36、52、54、56は、リンク・リスト
57内の次のFIFO34、36、54、56を指すポ
インタを含み、最後のFIFO36、56は最初のFI
FO32、52を指し返す。この構成を使用し、32−
52、34−54などの複数のFIFO対間の情報転送
が、リンク・リスト57を横断することにより処理され
る。
【0027】101、103及び105などの複数のア
プリケーション・プログラムがホスト・プロセッサ20
内で同時に動作し、サブシステム・アプリケーションの
ためのデータ及び制御情報を生成する。各アプリケーシ
ョン・プログラム101、103及び105はデータ又
は制御ストリームを生成し、情報をアプリケーション・
プログラムに関連するFIFOレジスタに記憶する。例
えば、アプリケーション・プログラム101はFIFO
−1 32に割当てられ、アプリケーション・プログラ
ム103は自身にFIFO−2 34を割当て、アプリ
ケーション・プログラム105は自身にFIFO−3
36を割当てる。全てのFIFOはシステム・メモリ3
0内に存在する。各アプリケーションはデータ又は制御
情報をサブシステム・メモリ50へ伝送するために、そ
れらをそれぞれのFIFOに記憶する。各システム・メ
モリFIFO32、34及び36は、仮想アダプタとし
て動作し、データ又は制御情報をサブシステム・メモリ
50内のFIFO52、54及び56の形式の対応する
仮想アダプタに伝送する。これらは全て伝送制御プロセ
ッサ60の制御の下で実行される。
【0028】DMAデータ転送は、データ及び制御情報
が伝送制御プロセッサの制御の下で、32−52、34
−54及び36−56などの仮想アダプタ対間で交換さ
れる時に、ホスト・プロセッサ20が他の処理を継続で
きるように解放する。
【0029】伝送制御プロセッサ60は、図6におい
て、FIFO34と伝送制御プロセッサ60を結ぶ実
線、及び伝送制御プロセッサ60とサブシステム・メモ
リFIFO54を結ぶ実線で示されるように、システム
・メモリ30内のFIFO34、及びサブシステム・メ
モリ50内のFIFO54などの仮想アダプタ間の情報
フローを制御する。FIFO32と伝送制御プロセッサ
60との間の破線、及びFIFO36と伝送制御プロセ
ッサ60との間の破線は、FIFO34に含まれる情報
の終りに達した後に、データ及び制御情報を伝送するた
めに使用される別の使用可能なパスを示す。同様に伝送
制御プロセッサ60とFIFO52との間、及び伝送制
御プロセッサ60とFIFO56との間を結ぶ破線も存
在し、これらはFIFO34とFIFO54との間の伝
送の完了後に使用可能なデータ・パスを示す。
【0030】更に例として、FIFO52は表示装置8
6(図4参照)上に表示されるグラフィックス表現を生
成するために使用されるデータ及び制御情報をサブシス
テム・アプリケーション・プロセッサ70に提供するよ
うに、活動化される。
【0031】実質的に、伝送制御プロセッサ60の制御
の下で、FIFO対32−52、34−54及び36−
56を使用することにより、システム・メモリ30とサ
ブシステム・メモリ50との間でDMA転送の使用によ
るオーバヘッドを正当化するのに十分な量のデータを転
送可能となり、同時にホスト・プロセッサを他の処理の
ために解放することにより、システム・バス40の効率
的使用が可能となる。
【0032】伝送制御プロセッサはまた、システム・バ
ス40上において、ホスト・メモリ30とサブシステム
・メモリ50との間で伝送される情報を走査し、プログ
ラム・オペレーション・コードを探索することができ
る。転送において所定のオペレーション・コードに遭遇
すると、伝送制御プロセッサ60はプロセスを停止し、
割込みをホスト・プロセッサ20及びシステム・アプリ
ケーション・プロセッサ70に通知したりする。
【0033】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0034】(1)オペレーティング・システム・プロ
グラムの制御の下でアプリケーション・プログラムを実
行する第1の処理手段と、前記第1の処理手段に接続さ
れ、前記第1の処理手段に関連するプログラム及びデー
タの形式の情報を記憶し、1個以上の周辺サブシステム
に伝送する前記情報を蓄積する1個以上の一時記憶レジ
スタを含む第1のメモリ手段と、前記第1のメモリ手段
に接続され、前記情報を前記1個以上の周辺サブシステ
ムに伝送する伝送手段と、前記伝送手段に接続される1
個以上の周辺サブシステムであって、各前記周辺サブシ
ステムが、前記伝送手段に接続され、前記第1のメモリ
と前記周辺サブシステムとの間の情報の伝送を制御する
伝送制御手段と、前記伝送手段及び前記伝送制御手段に
接続され、前記第1のメモリ手段から受信される情報及
び前記第1のメモリ手段に伝送される情報を記憶する第
2のメモリ手段であって、前記第1のメモリ手段から受
信される前記情報を記憶し、前記第2のメモリ手段から
前記第1のメモリ手段に伝送されるデータを蓄積する1
個以上の一時レジスタと、前記第2のメモリ手段に接続
され、前記第1のメモリ手段から前記第2のメモリ手段
に伝送される情報を処理する第2のプロセッサとを含む
前記第2のメモリ手段と、を含む各前記周辺サブシステ
ムとを含むデータ処理システム。 (2)前記第2のプロセッサに接続され、前記第2のプ
ロセッサによる処理情報結果を表示するビデオ表示シス
テムを含む、前記(1)記載のデータ処理システム。 (3)前記ビデオ表示システムが前記第2のプロセッサ
による処理の結果生じる情報のグラフィック表現を表示
する、前記(2)記載のデータ処理システム。 (4)前記第1のメモリ内の前記一時記憶レジスタがフ
ァーストイン−ファーストアウト・レジスタを含む、前
記(1)記載のデータ処理システム。 (5)前記第2のメモリ手段内の前記1個以上の一時レ
ジスタが、ファーストイン−ファーストアウト・レジス
タを含む、前記(1)記載のデータ処理システム。 (6)情報処理システムにおける第1のメモリ手段と第
2のメモリ手段との間のデータの効率的伝送方法であっ
て、第1のメモリ手段内の1個以上の一時レジスタ内の
データ量が第1の所定レベルに達したかどうかを判断す
る第1の判断ステップと、前記第1の判断ステップによ
り前記第1の所定レベルに達したと判断されると、直接
メモリ・アクセス転送を用いる伝送制御手段の制御によ
り、前記第1のメモリ手段内の前記一時レジスタから、
前記第2のメモリ手段内の対応する1個以上の一時レジ
スタにデータを伝送するステップとを含むデータ効率的
伝送方法。 (7)前記第2のメモリ手段内の前記1個以上の一時レ
ジスタ内に、伝送されるデータ量を収容する十分な空間
が存在するかどうかを判断するステップを含む、前記
(6)記載のデータ効率的伝送方法。 (8)情報を伝送するための多数の試行を表すカウント
を含む1個以上のカウンタを更新するステップを含む、
前記(6)記載のデータ効率的伝送方法。 (9)前記第1のメモリ手段内に、前記第2のメモリ手
段に伝送される情報を含む複数の一時記憶レジスタが存
在するかどうかを判断し、複数存在すると判断される
と、前の一時記憶レジスタからのデータ転送の完了後
に、次の一時記憶レジスタに移行するステップを含む、
前記(6)記載のデータ効率的伝送方法。
【0035】
【発明の効果】以上説明したように、本発明によれば、
転送以前にFIFOレジスタにデータを蓄積することに
より、システム・バス上におけるデータ転送の開始及び
停止に関連するオーバヘッドの影響が最小化され、ホス
トとサブシステムとの間でデータを効率的に転送するこ
とが可能となる。
【図面の簡単な説明】
【図1】本発明の好適な実施例のブロック図である。
【図2】図1の実施例のホスト・メモリのFIFOレジ
スタ割当てを示す図である。
【図3】図1の実施例のサブシステム・メモリのFIF
Oレジスタ割当てを示す図である。
【図4】図1の実施例のグラフィックス・ディスプレイ
・サブシステムのブロック図である。
【図5】本発明の好適な実施例によるホストとサブシス
テム・メモリとの間の情報転送プロセスの流れ図であ
る。
【図6】複数データ・パスを示す本発明の好適な実施例
のデータ流れ図である。
【符号の説明】
10 情報処理システム 20 ホスト・プロセッサ 30 ホスト・メモリ 32、52 FIFO−1 34、54 FIFO−2 36 FIFO−3 38、56 FIFO−n 40 システム・バス 50 サブシステム・メモリ 57 リンク・リスト 60 伝送制御プログラム 70 サブシステム・アプリケーション・プロセッサ 80 グラフィックス・ディスプレイ・システム 82 グラフィックス・プロセッサ 84 ビデオ・フレーム・バッファ・メモリ 86 ビデオ表示装置 90 サブシステム・バス 100 情報伝送プロセス 101、103、105 アプリケーション・プログラ
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ポール・デビッド・デニクラ アメリカ合衆国、ニューヨーク州ハーレ イ、レイナ・ストリート 125 (72)発明者 チャールズ・レイ・ジョンズ アメリカ合衆国、テキサス州オースティ ン、カシア・ドライブ 10703 (72)発明者 オマー・マーマウド・ラヒム アメリカ合衆国、ニューヨーク州シラキュ ーズ、ウエストブルック・ヒルズ・ドライ ブ 252 (72)発明者 デビッド・アンドリュー・ライス アメリカ合衆国、ニューヨーク州シラキュ ーズ、ウエストウブルック・ヒルズ・ドラ イブ 256 (72)発明者 マーク・アーネスト・バン・ノストランド アメリカ合衆国、ニューヨーク州スタッツ バーグ、ヘインズ・コート 2

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】オペレーティング・システム・プログラム
    の制御の下でアプリケーション・プログラムを実行する
    第1の処理手段と、 前記第1の処理手段に接続され、前記第1の処理手段に
    関連するプログラム及びデータの形式の情報を記憶し、
    1個以上の周辺サブシステムに伝送する前記情報を蓄積
    する1個以上の一時記憶レジスタを含む第1のメモリ手
    段と、 前記第1のメモリ手段に接続され、前記情報を前記1個
    以上の周辺サブシステムに伝送する伝送手段と、 前記伝送手段に接続される1個以上の周辺サブシステム
    であって、 前記伝送手段に接続され、前記第1のメモリと前記周辺
    サブシステムとの間の情報の伝送を制御する伝送制御手
    段と、 前記伝送手段及び前記伝送制御手段に接続され、前記第
    1のメモリ手段から受信される情報及び前記第1のメモ
    リ手段に伝送される情報を記憶する第2のメモリ手段で
    あって、前記第1のメモリ手段から受信される前記情報
    を記憶し、前記第2のメモリ手段から前記第1のメモリ
    手段に伝送されるデータを蓄積する1個以上の一時レジ
    スタと、前記第2のメモリ手段に接続され、前記第1の
    メモリ手段から前記第2のメモリ手段に伝送される情報
    を処理する第2のプロセッサとを含む前記第2のメモリ
    手段と、を含む各前記周辺サブシステムとを含むデータ
    処理システム。
  2. 【請求項2】前記第2のプロセッサに接続され、前記第
    2のプロセッサによる処理情報結果を表示するビデオ表
    示システムを含む、 請求項1記載のデータ処理システム。
  3. 【請求項3】前記ビデオ表示システムが前記第2のプロ
    セッサによる処理の結果生じる情報のグラフィック表現
    を表示する、請求項2記載のデータ処理システム。
  4. 【請求項4】前記第1のメモリ内の前記一時記憶レジス
    タがファーストイン−ファーストアウト・レジスタを含
    む、請求項1記載のデータ処理システム。
  5. 【請求項5】前記第2のメモリ手段内の前記1個以上の
    一時レジスタが、ファーストイン−ファーストアウト・
    レジスタを含む、請求項1記載のデータ処理システム。
  6. 【請求項6】情報処理システムにおける第1のメモリ手
    段と第2のメモリ手段との間のデータの効率的伝送方法
    であって、 第1のメモリ手段内の1個以上の一時レジスタ内のデー
    タ量が第1の所定レベルに達したかどうかを判断する第
    1の判断ステップと、 前記第1の判断ステップにより前記第1の所定レベルに
    達したと判断されると、直接メモリ・アクセス転送を用
    いる伝送制御手段の制御により、前記第1のメモリ手段
    内の前記一時レジスタから、前記第2のメモリ手段内の
    対応する1個以上の一時レジスタにデータを伝送するス
    テップとを含むデータ効率的伝送方法。
  7. 【請求項7】前記第2のメモリ手段内の前記1個以上の
    一時レジスタ内に、伝送されるデータ量を収容する十分
    な空間が存在するかどうかを判断するステップを含む、
    請求項6記載のデータ効率的伝送方法。
  8. 【請求項8】情報を伝送するための多数の試行を表すカ
    ウントを含む1個以上のカウンタを更新するステップを
    含む、請求項6記載のデータ効率的伝送方法。
  9. 【請求項9】前記第1のメモリ手段内に、前記第2のメ
    モリ手段に伝送される情報を含む複数の一時記憶レジス
    タが存在するかどうかを判断し、複数存在すると判断さ
    れると、前の一時記憶レジスタからのデータ転送の完了
    後に、次の一時記憶レジスタに移行するステップを含
    む、請求項6記載のデータ効率的伝送方法。
JP20636294A 1993-10-27 1994-08-31 データ処理システム Expired - Lifetime JP2784459B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14417593A 1993-10-27 1993-10-27
US144175 1993-10-27

Publications (2)

Publication Number Publication Date
JPH07191935A true JPH07191935A (ja) 1995-07-28
JP2784459B2 JP2784459B2 (ja) 1998-08-06

Family

ID=22507421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20636294A Expired - Lifetime JP2784459B2 (ja) 1993-10-27 1994-08-31 データ処理システム

Country Status (4)

Country Link
US (1) US5765041A (ja)
EP (1) EP0651334A1 (ja)
JP (1) JP2784459B2 (ja)
CA (1) CA2130064C (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581141B1 (en) 1999-05-18 2003-06-17 International Business Machines Corporation Toggle for split transaction mode of PCI-X bridge buffer

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5967675A (en) * 1996-07-05 1999-10-19 Esselte N.V. Printing apparatus
GB2314957A (en) * 1996-07-05 1998-01-14 Esselte Nv Label printer
US6269413B1 (en) * 1998-10-30 2001-07-31 Hewlett Packard Company System with multiple dynamically-sized logical FIFOs sharing single memory and with read/write pointers independently selectable and simultaneously responsive to respective read/write FIFO selections
US6304936B1 (en) * 1998-10-30 2001-10-16 Hewlett-Packard Company One-to-many bus bridge using independently and simultaneously selectable logical FIFOS
US6614438B1 (en) * 2000-05-30 2003-09-02 Koninlijke Philips Electronics N.V. Data-processing arrangement for processing different types of data
US6658525B1 (en) * 2000-09-28 2003-12-02 International Business Machines Corporation Concurrent access of an unsegmented buffer by writers and readers of the buffer
US7461131B2 (en) * 2003-03-07 2008-12-02 International Business Machines Corporation Use of virtual targets for preparing and servicing requests for server-free data transfer operations
US20070260777A1 (en) * 2003-11-25 2007-11-08 Timpe Barrie R Queues for information processing and methods thereof
US20090086750A1 (en) * 2007-09-27 2009-04-02 Integrated Device Technology, Inc. Non-Random Access Rapid I/O Endpoint In A Multi-Processor System
US7945716B2 (en) * 2007-09-27 2011-05-17 Integrated Device Technology, Inc. Serial buffer supporting virtual queue to physical memory mapping
US20100005199A1 (en) * 2008-07-07 2010-01-07 Texas Instruments Incorporated Direct memory access (dma) data transfers with reduced overhead

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61283952A (ja) * 1985-06-10 1986-12-13 Mitsubishi Electric Corp デ−タ転送装置
JPH0344886A (ja) * 1989-07-13 1991-02-26 Fujitsu Ltd ファーストイン・ファーストメモリ装置
JPH0348964A (ja) * 1989-07-18 1991-03-01 Fuji Facom Corp システムバスのデータ転送方法
JPH04290150A (ja) * 1990-11-30 1992-10-14 Internatl Business Mach Corp <Ibm> Fifoバッファの制御装置及び制御方法並びにデータ転送を制御する装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2476349A1 (fr) * 1980-02-15 1981-08-21 Philips Ind Commerciale Systeme de traitement de donnees reparti
US4697233A (en) * 1984-04-02 1987-09-29 Unisys Corporation Partial duplication of pipelined stack with data integrity checking
US4757440A (en) * 1984-04-02 1988-07-12 Unisys Corporation Pipelined data stack with access through-checking
US5109520A (en) * 1985-02-19 1992-04-28 Tektronix, Inc. Image frame buffer access speedup by providing multiple buffer controllers each containing command FIFO buffers
US4864629A (en) * 1985-12-31 1989-09-05 Schlumberger Technologies, Inc. Image correlation system
US5113494A (en) * 1987-02-27 1992-05-12 Eastman Kodak Company High speed raster image processor particularly suited for use in an image management system
JPS6482275A (en) * 1987-09-25 1989-03-28 Minolta Camera Kk Digital image processor
US4885703A (en) * 1987-11-04 1989-12-05 Schlumberger Systems, Inc. 3-D graphics display system using triangle processor pipeline
US4809323A (en) * 1988-03-04 1989-02-28 Keptel, Inc. Telephone network interface apparatus
US5065343A (en) * 1988-03-31 1991-11-12 Yokogawa Electric Corporation Graphic display system for process control using a plurality of displays connected to a common processor and using an fifo buffer
KR920007920B1 (ko) * 1989-05-30 1992-09-19 재단법인 한국전자통신연구소 비디오폰 시스템
EP0454605A3 (en) * 1990-04-25 1992-04-22 International Business Machines Corporation Bus request device in a direct memory access (dma) system
US5210749A (en) * 1990-05-29 1993-05-11 Advanced Micro Devices, Inc. Configuration of srams as logical fifos for transmit and receive of packet data
US5043981A (en) * 1990-05-29 1991-08-27 Advanced Micro Devices, Inc. Method of and system for transferring multiple priority queues into multiple logical FIFOs using a single physical FIFO
US5444853A (en) * 1992-03-31 1995-08-22 Seiko Epson Corporation System and method for transferring data between a plurality of virtual FIFO's and a peripheral via a hardware FIFO and selectively updating control information associated with the virtual FIFO's
US5289577A (en) * 1992-06-04 1994-02-22 International Business Machines Incorporated Process-pipeline architecture for image/video processing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61283952A (ja) * 1985-06-10 1986-12-13 Mitsubishi Electric Corp デ−タ転送装置
JPH0344886A (ja) * 1989-07-13 1991-02-26 Fujitsu Ltd ファーストイン・ファーストメモリ装置
JPH0348964A (ja) * 1989-07-18 1991-03-01 Fuji Facom Corp システムバスのデータ転送方法
JPH04290150A (ja) * 1990-11-30 1992-10-14 Internatl Business Mach Corp <Ibm> Fifoバッファの制御装置及び制御方法並びにデータ転送を制御する装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6581141B1 (en) 1999-05-18 2003-06-17 International Business Machines Corporation Toggle for split transaction mode of PCI-X bridge buffer

Also Published As

Publication number Publication date
US5765041A (en) 1998-06-09
CA2130064C (en) 1999-05-18
JP2784459B2 (ja) 1998-08-06
CA2130064A1 (en) 1995-04-28
EP0651334A1 (en) 1995-05-03

Similar Documents

Publication Publication Date Title
US4956771A (en) Method for inter-processor data transfer
US5917502A (en) Peer-to-peer parallel processing graphics accelerator
US5444853A (en) System and method for transferring data between a plurality of virtual FIFO&#39;s and a peripheral via a hardware FIFO and selectively updating control information associated with the virtual FIFO&#39;s
USRE38134E1 (en) System for communications where first priority data transfer is not disturbed by second priority data transfer and where allocated bandwidth is removed when process terminates abnormally
EP0550164B1 (en) Method and apparatus for interleaving multiple-channel DMA operations
JP3275051B2 (ja) バスブリッジにおけるトランザクション順序を維持し、遅延応答をサポートする方法及びそのための装置
CN101115054B (zh) 用于网络接口控制器的存储器映射的缓冲器
EP0447228A2 (en) Data stream concentrator providing attribute data storage and graphics pipeline access
US4757441A (en) Logical arrangement for controlling use of different system displays by main proessor and coprocessor
EP0550163A1 (en) Circuit architecture for supporting multiple-channel DMA operations
US4833596A (en) Logical arrangement for controlling use of different system displays by main processor and co-processor
EP1880277B1 (en) Command execution controlling apparatus, command execution instructing apparatus and command execution controlling method
EP0908826A2 (en) Packet protocol and distributed burst engine
JPH04290150A (ja) Fifoバッファの制御装置及び制御方法並びにデータ転送を制御する装置
JP2784459B2 (ja) データ処理システム
EP0584982A2 (en) A method and system for processing graphics data streams utilizing multiple processing nodes
US4456970A (en) Interrupt system for peripheral controller
JP4761487B2 (ja) バスアーキテクチャ及びそれを用いた情報処理装置
JPH0217818B2 (ja)
EP0260693B1 (en) Program mode access control system
US6795075B1 (en) Graphic processor having multiple geometric operation units and method of processing data thereby
JPH0997184A (ja) 効率的な割込み処理を含む情報処理システム
US5513365A (en) Display adapter interface layer
KR100370637B1 (ko) 컴퓨터구조
WO2006124460A2 (en) Concurrent read response acknowledge enhanced direct memory access unit