JPH03212753A - 入出力装置に対するアトミックアクセス装置及び方法 - Google Patents
入出力装置に対するアトミックアクセス装置及び方法Info
- Publication number
- JPH03212753A JPH03212753A JP2311224A JP31122490A JPH03212753A JP H03212753 A JPH03212753 A JP H03212753A JP 2311224 A JP2311224 A JP 2311224A JP 31122490 A JP31122490 A JP 31122490A JP H03212753 A JPH03212753 A JP H03212753A
- Authority
- JP
- Japan
- Prior art keywords
- input
- processor
- output device
- command packet
- host data
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Bus Control (AREA)
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はダイレクトメモリアクセス(DMA)入出力(
Ilo)装置に対してデータを転送するための装置と方
法で、ユーザがアトミックに入出力装置にアクセスでき
るようになったものに関する。アトミックにアクセスす
るとは、2つ以上の個別処理からなる命令が、他の処理
に対する割り込みなしに完全に実行されることを意味す
る。殊に、本発明は多数のプロセッサが単一のI10装
置を平行してアクセスするようなマルチプロセッサシス
テムにおける装置と方法に関する。
Ilo)装置に対してデータを転送するための装置と方
法で、ユーザがアトミックに入出力装置にアクセスでき
るようになったものに関する。アトミックにアクセスす
るとは、2つ以上の個別処理からなる命令が、他の処理
に対する割り込みなしに完全に実行されることを意味す
る。殊に、本発明は多数のプロセッサが単一のI10装
置を平行してアクセスするようなマルチプロセッサシス
テムにおける装置と方法に関する。
一個のI10装置は、通常の場合、データと命令をシス
テムの主要計算資源から次の2つの方法の何れかによっ
て受取るようになっている。即ち、I10レジスタの直
接メモリマツピングアクセスによるか、I10装置が直
接、データを主メモリサブシステム間で転送しあうよう
なりMA機構によるかの何れかによって行われる。何れ
の場合にも、データ転送の大きさがシステムバス上のア
トミックアクセスよりも大きく、I10装置に対して同
時平行的なユーザが多数存在し、I10装置が一つの入
力の流れを有する場合には、数人のユーザ間でI10装
置を同期化する機構が存在しなければならない。
テムの主要計算資源から次の2つの方法の何れかによっ
て受取るようになっている。即ち、I10レジスタの直
接メモリマツピングアクセスによるか、I10装置が直
接、データを主メモリサブシステム間で転送しあうよう
なりMA機構によるかの何れかによって行われる。何れ
の場合にも、データ転送の大きさがシステムバス上のア
トミックアクセスよりも大きく、I10装置に対して同
時平行的なユーザが多数存在し、I10装置が一つの入
力の流れを有する場合には、数人のユーザ間でI10装
置を同期化する機構が存在しなければならない。
I10装置の相互排除やその他の共有資源の相互排除ソ
フトウェアインタロックにより行われるのが普通である
。処理命令集合によってはインターロックされた命令を
含んでいるものがあり、そのことによってI10装置の
ユーザのプロセッサは多数の論理命令を単一のアトミッ
ク命令として実行することができる。例えば、プロセッ
サはメモリ内の1ビツトをテストし、もしそれがクリア
されていれば、分岐した後、ビットを単一の命令中に全
てセットすることかできる。このため共用資源上の相互
排除をソフトウェアロックによって実施することが可能
となる。I10装置その他の共用資源は、ビットがセッ
トされている場合には[ロック」されている、即ち利用
不可能であると考えられる。ビットをセットする処理は
資源を「所有する」。命令がインターロックされない複
数のシステムは、その他のアトミックプロトコルを通過
しなければならず、恐らくオペレーティングシステム又
はその他の独自な処理を通して同期する。
フトウェアインタロックにより行われるのが普通である
。処理命令集合によってはインターロックされた命令を
含んでいるものがあり、そのことによってI10装置の
ユーザのプロセッサは多数の論理命令を単一のアトミッ
ク命令として実行することができる。例えば、プロセッ
サはメモリ内の1ビツトをテストし、もしそれがクリア
されていれば、分岐した後、ビットを単一の命令中に全
てセットすることかできる。このため共用資源上の相互
排除をソフトウェアロックによって実施することが可能
となる。I10装置その他の共用資源は、ビットがセッ
トされている場合には[ロック」されている、即ち利用
不可能であると考えられる。ビットをセットする処理は
資源を「所有する」。命令がインターロックされない複
数のシステムは、その他のアトミックプロトコルを通過
しなければならず、恐らくオペレーティングシステム又
はその他の独自な処理を通して同期する。
殊に、マルチユーザ、多重処理環境におけるグラフィッ
クサブシステムは先の処理でセットアツプされ同じプロ
セッサにより後続の処理のために待機する状態を内部に
維持している。もう一つのプロセッサにより割り込みか
生ずると、それらの状態が維持されるという保証はない
。それ故、この環境においてアトミック命令を実行する
ための手法が必要とされている。
クサブシステムは先の処理でセットアツプされ同じプロ
セッサにより後続の処理のために待機する状態を内部に
維持している。もう一つのプロセッサにより割り込みか
生ずると、それらの状態が維持されるという保証はない
。それ故、この環境においてアトミック命令を実行する
ための手法が必要とされている。
本発明による直接メモリアクセスにより入出力装置に対
してアトミックアクセスを行う装置は、少なくとも一つ
のホストデータプロセッサを備えている。1つのメモリ
が一本のバスによって少なくとも1つのホストデータプ
ロセッサに接続される。入出力装置を備えるグラフィッ
クサブシステムが上記バスに接続される。上記メモリは
グラフィックサブシステム用に複数の命令を含むコマン
ドパケットを格納するロツ。クダウンバッファを有する
。上記少なくとも一つのホストデータプロセッサは、コ
マンドパケットを生成する第1のプログラムを備えてい
る。グラフィックサブシステムは、第1のプログラムの
制御の下に少なくとも一つのホストデータプロセッサに
よってアドレッシング可能なグラフィックプロセッサを
備えることによってグラフィックプロセッサの可用性を
判断するようになっている。グラフィックプロセッサは
、それが利用可能な場合に、コマンドパケットのグラフ
ィックサブシステムに対する転送を入出力読取りトラン
ザクションとして開始するための第2のプログラムを備
えている。上記第2のプログラムは複数の命令をアトミ
ックに実行する。
してアトミックアクセスを行う装置は、少なくとも一つ
のホストデータプロセッサを備えている。1つのメモリ
が一本のバスによって少なくとも1つのホストデータプ
ロセッサに接続される。入出力装置を備えるグラフィッ
クサブシステムが上記バスに接続される。上記メモリは
グラフィックサブシステム用に複数の命令を含むコマン
ドパケットを格納するロツ。クダウンバッファを有する
。上記少なくとも一つのホストデータプロセッサは、コ
マンドパケットを生成する第1のプログラムを備えてい
る。グラフィックサブシステムは、第1のプログラムの
制御の下に少なくとも一つのホストデータプロセッサに
よってアドレッシング可能なグラフィックプロセッサを
備えることによってグラフィックプロセッサの可用性を
判断するようになっている。グラフィックプロセッサは
、それが利用可能な場合に、コマンドパケットのグラフ
ィックサブシステムに対する転送を入出力読取りトラン
ザクションとして開始するための第2のプログラムを備
えている。上記第2のプログラムは複数の命令をアトミ
ックに実行する。
本発明に従い直接メモリアクセスによってI10装置に
アトミックにアクセスする方法は、入出力装置に対して
複数の命令を含む1つのコマンドパケットを生成するこ
とを伴う。上記コマンドパケットは物理的に隣接するロ
ックダウンメモリバッファを有する一定のメモリ内に格
納される。入出力装置は、質問されて、入出力装置の可
用性が判断される。コマンドパケットが入出力読取りト
ランザクションとして入出力装置へ転送される作業は、
入出力装置が利用可能な場合に、開始される。上記複数
の命令はアトミックに実行される。
アトミックにアクセスする方法は、入出力装置に対して
複数の命令を含む1つのコマンドパケットを生成するこ
とを伴う。上記コマンドパケットは物理的に隣接するロ
ックダウンメモリバッファを有する一定のメモリ内に格
納される。入出力装置は、質問されて、入出力装置の可
用性が判断される。コマンドパケットが入出力読取りト
ランザクションとして入出力装置へ転送される作業は、
入出力装置が利用可能な場合に、開始される。上記複数
の命令はアトミックに実行される。
本発明の上記の並びにそれに関連する目的、利点および
特徴は、図面と相俟って、以下の詳細な解説を検討する
ことによって当業者により理解可能な筈である。
特徴は、図面と相俟って、以下の詳細な解説を検討する
ことによって当業者により理解可能な筈である。
さて図面について述べると、殊に第1図には、DMAに
よってI10装置にアトミックアクセスするためのシス
テム30のブロック線図が示されている。CPU32は
バス36によって浮動小数点プロセッサ(FPU)34
に接続されている。
よってI10装置にアトミックアクセスするためのシス
テム30のブロック線図が示されている。CPU32は
バス36によって浮動小数点プロセッサ(FPU)34
に接続されている。
上記CPU32は32ビツトシステムバス38により、
グラフィックサブシステム45におけるランダムアクセ
スメモリ(RAM)40、キャッシュ42およびインタ
ーフェース44に接続れている。インターフェース44
はバス46によりグラフィックプロセッサ48へ接続さ
れている。グラフィックプロセッサ48は120ビツト
グラフイツクバス50によりフレームバッファ52に接
続されている。フレームバッファ52は、バス56によ
りビデオデジタル・アナログ変換器(DAC)54へ接
続されている。DAC54は、ライン60によりビデオ
デイスプレィ58に接続されている。このシステムでは
、グラフィックサブシステム45は■/○装置であり、
それに対するアトミックアクセスが必要になる。
グラフィックサブシステム45におけるランダムアクセ
スメモリ(RAM)40、キャッシュ42およびインタ
ーフェース44に接続れている。インターフェース44
はバス46によりグラフィックプロセッサ48へ接続さ
れている。グラフィックプロセッサ48は120ビツト
グラフイツクバス50によりフレームバッファ52に接
続されている。フレームバッファ52は、バス56によ
りビデオデジタル・アナログ変換器(DAC)54へ接
続されている。DAC54は、ライン60によりビデオ
デイスプレィ58に接続されている。このシステムでは
、グラフィックサブシステム45は■/○装置であり、
それに対するアトミックアクセスが必要になる。
グラフィックサブシステム45に対するコマンドパケッ
トインターフェース44はメインメモリ40からグラフ
ィックサブシステム45に対して形状とグラフィックの
コンテキスト情報を転送する。かかる転送において、一
定のアプリケーションでは、コマンドのリストがそれ自
身のアドレス空間における物理的に隣接するロックダウ
ンメモリバッファ47へ書込まれる。上記システム30
はDMAを有するため、バッファ47はメインメモリシ
ステム40内に存在する。システム30は書戻しキャッ
シュ42を有するため、バ・ノファ47の内容をキャッ
シュ42内へ転記して、バッファへの書込み時にバス3
8に対して殆んどもしくは全くトラヒックを発生させる
ことはない。
トインターフェース44はメインメモリ40からグラフ
ィックサブシステム45に対して形状とグラフィックの
コンテキスト情報を転送する。かかる転送において、一
定のアプリケーションでは、コマンドのリストがそれ自
身のアドレス空間における物理的に隣接するロックダウ
ンメモリバッファ47へ書込まれる。上記システム30
はDMAを有するため、バッファ47はメインメモリシ
ステム40内に存在する。システム30は書戻しキャッ
シュ42を有するため、バ・ノファ47の内容をキャッ
シュ42内へ転記して、バッファへの書込み時にバス3
8に対して殆んどもしくは全くトラヒックを発生させる
ことはない。
DMAのないシステム上では、このバッファはグラフィ
ックサブシステム上に局部的に存在することになろう。
ックサブシステム上に局部的に存在することになろう。
バッファ47が一杯になると、CPU32は、グラフィ
ックサブシステム45上のI10アドレスからの読取り
を介してグラフィックサブシステム45に、それがコマ
ンドパケットの転送を開始すべきことを知らせる。処理
の状態はI10読取りトランザクションの結果として復
帰される。
ックサブシステム45上のI10アドレスからの読取り
を介してグラフィックサブシステム45に、それがコマ
ンドパケットの転送を開始すべきことを知らせる。処理
の状態はI10読取りトランザクションの結果として復
帰される。
ゴマンドパケット転送の開始後、グラフィ・ツクサブシ
ステム45は、パケットを解析し、適当な処理を実行し
、コマンドパケットの最初のロングワード内に符号化さ
れたトランザクションシンタクスの詳細を見い出す。パ
ケット内のコマンドの実行はアトミックであり、これは
1パケツト内のコマンドが次のパケット内のどのコマン
ドよりも先に全て実行されたことを意味する。更に、そ
の実行順序はコマンドがパケット内で現われる順序であ
ることが保証される。
ステム45は、パケットを解析し、適当な処理を実行し
、コマンドパケットの最初のロングワード内に符号化さ
れたトランザクションシンタクスの詳細を見い出す。パ
ケット内のコマンドの実行はアトミックであり、これは
1パケツト内のコマンドが次のパケット内のどのコマン
ドよりも先に全て実行されたことを意味する。更に、そ
の実行順序はコマンドがパケット内で現われる順序であ
ることが保証される。
以下の論説はコマンドパケットインターフェース44を
使用するアプリケーションソフトウェアの一般的枠組を
述べるものである。その次にコマンドプロトコルについ
て論する。
使用するアプリケーションソフトウェアの一般的枠組を
述べるものである。その次にコマンドプロトコルについ
て論する。
以下のテーブルIはコマンドを発してフレームバッファ
52内に線を引く手続の概要を示す。
52内に線を引く手続の概要を示す。
Line(Xl、 yl、 X2. y2)(
/1
ネ
各クリ
ッ
ピング矩形のループ
for(i=0; i<numcIip Rects
; i+t) (μ 本頂点データをコマンドパケット内へ書込み9) fillLinePacket(pPacket、
XI、yl、X2.y2゜clipRect[i]); While(”staml) ! = GOOD)
pPacket = 5w1tchPacket();
) ) 大域的変数pPacketは、グラフィックサブシステ
ム45のコマンドバッファ47として機能する物理的に
隣接するロックダウンメモリバッファの仮想アドレスで
ある。コマンドパケットメモリに関す′る同期問題を回
避するために、2つのコマンドパケットバッフ747を
交互に使用する。このコマンドパケットの交替は5w1
tchPacket()ルーチンにより処理される。
; i+t) (μ 本頂点データをコマンドパケット内へ書込み9) fillLinePacket(pPacket、
XI、yl、X2.y2゜clipRect[i]); While(”staml) ! = GOOD)
pPacket = 5w1tchPacket();
) ) 大域的変数pPacketは、グラフィックサブシステ
ム45のコマンドバッファ47として機能する物理的に
隣接するロックダウンメモリバッファの仮想アドレスで
ある。コマンドパケットメモリに関す′る同期問題を回
避するために、2つのコマンドパケットバッフ747を
交互に使用する。このコマンドパケットの交替は5w1
tchPacket()ルーチンにより処理される。
Lineプロシージャはまづヘッダ情報と頂点データに
よりコマンドパケットを満たさなければならない。その
後I10アドレスstampから読出しを行い、システ
ムバス38上の状態を受取る。テーブルIIはI10読
取りの結果としてグラフィックサブシステム45により
復帰可能な状態値を列挙したものである。
よりコマンドパケットを満たさなければならない。その
後I10アドレスstampから読出しを行い、システ
ムバス38上の状態を受取る。テーブルIIはI10読
取りの結果としてグラフィックサブシステム45により
復帰可能な状態値を列挙したものである。
テーブルII
OGOOD データ受取る。
矩形クリッピングがハードウェアで行われる場合、ライ
ンはウィンドウのクリップリスト内のそれぞれのクリッ
ピング矩形に逐次クリップされる。
ンはウィンドウのクリップリスト内のそれぞれのクリッ
ピング矩形に逐次クリップされる。
クリップ矩形はfjllLinePacket()ルー
チンニよりコマンドパケット内に配置される。
チンニよりコマンドパケット内に配置される。
Lineプロシージャは110読取りトランザクション
の状態をチエツクする。もし状態か良好(GOOD)で
あれば、グラフィックサブシステム45は即座にコマン
ドパケットの転送を開始する。プロシージャはただ状態
ワード上を旋回するだけだから、BUSY状態は、ソフ
トウェア再試行を惹起する。
の状態をチエツクする。もし状態か良好(GOOD)で
あれば、グラフィックサブシステム45は即座にコマン
ドパケットの転送を開始する。プロシージャはただ状態
ワード上を旋回するだけだから、BUSY状態は、ソフ
トウェア再試行を惹起する。
高性能のグラフィックに対してはテーブル■のコードも
テーブルIIの手続きインターフェースも適当ではない
。それらは、コマンドパケットインターフェースの枠組
の些細な例を与えるために示したものである。
テーブルIIの手続きインターフェースも適当ではない
。それらは、コマンドパケットインターフェースの枠組
の些細な例を与えるために示したものである。
コマンドパケットインターフェースは線や矩形を描くよ
うに高水準の命令に対するアトミックなアクセスを可能
にする。グラフィックサブシステム45に対するアクセ
スは上記の枠組を通じて得られる。アプリケーションに
よって発せられるI/○読取り処理とグラフィックサブ
システム45により発せられるコマンドパケットトラン
ザクションの双方を含むアトミック処理を保証するため
に、コマンドパケットの物理アドレスはI10読取りト
ランザクションのアドレス中に符号化される。この符号
化によって、グラフィックサブシステム45に対してパ
ケットアドレスが得られ、コマンドパケット転送が実行
可能となる一方、アプリケーションは同じアトミック処
理の一部としての状態を受取る。
うに高水準の命令に対するアトミックなアクセスを可能
にする。グラフィックサブシステム45に対するアクセ
スは上記の枠組を通じて得られる。アプリケーションに
よって発せられるI/○読取り処理とグラフィックサブ
システム45により発せられるコマンドパケットトラン
ザクションの双方を含むアトミック処理を保証するため
に、コマンドパケットの物理アドレスはI10読取りト
ランザクションのアドレス中に符号化される。この符号
化によって、グラフィックサブシステム45に対してパ
ケットアドレスが得られ、コマンドパケット転送が実行
可能となる一方、アプリケーションは同じアトミック処
理の一部としての状態を受取る。
第2図は、一定のシステム30aのマルチプロセッサ形
式を示し、同形式では第1のCPU32aはバス36a
によってFPU34aに接続されている。キャッシュ4
2aはバス38aによりCPU32aに接続されている
。キャッシュ42bはバス38aによりCPU32bに
接続されている。これ以外の構造、システム30aがマ
ルチプロセッサモードで動作するという事実、第2図の
実施例の構造と動作は、第1図の実施例におけると同一
である。
式を示し、同形式では第1のCPU32aはバス36a
によってFPU34aに接続されている。キャッシュ4
2aはバス38aによりCPU32aに接続されている
。キャッシュ42bはバス38aによりCPU32bに
接続されている。これ以外の構造、システム30aがマ
ルチプロセッサモードで動作するという事実、第2図の
実施例の構造と動作は、第1図の実施例におけると同一
である。
第3図に示すように、I10読取りトランザクションア
ドレス70のビット2I:2は、コマンドパケットアド
レス72のビット3011を含む。実際には、正確なビ
ット位置は、使用されるシステムバスに依存する。指定
位置は32ビツトシステムバス38に対するものである
。もし利用可能な物理アドレス空間が32ビツトよりも
小さい場合、高次ビットは無視される。I10読取りト
ランザクションのアドレスの残りのビットは、グラフィ
ックサブシステム45によりデコードされた実行特有の
基底アドレスであって、1つのパケット転送が開示され
るべきことを示す。コマンドパケットのアドレスが次の
ようにつくりだされる。コマンドパケットアドレス72
のビット100かゼロで、パケットを2048バイト境
界上に整合させる。ビット30:11はI10読取りト
ランサクションアドレス70のビット21:2に等しい
。コマンドパケットアドレスのビット31はゼロである
。第2図は、I/○読取りトランザクションのアドレス
70からコマンドパケット転送の基底アドレス72への
マツピングを示す。
ドレス70のビット2I:2は、コマンドパケットアド
レス72のビット3011を含む。実際には、正確なビ
ット位置は、使用されるシステムバスに依存する。指定
位置は32ビツトシステムバス38に対するものである
。もし利用可能な物理アドレス空間が32ビツトよりも
小さい場合、高次ビットは無視される。I10読取りト
ランザクションのアドレスの残りのビットは、グラフィ
ックサブシステム45によりデコードされた実行特有の
基底アドレスであって、1つのパケット転送が開示され
るべきことを示す。コマンドパケットのアドレスが次の
ようにつくりだされる。コマンドパケットアドレス72
のビット100かゼロで、パケットを2048バイト境
界上に整合させる。ビット30:11はI10読取りト
ランサクションアドレス70のビット21:2に等しい
。コマンドパケットアドレスのビット31はゼロである
。第2図は、I/○読取りトランザクションのアドレス
70からコマンドパケット転送の基底アドレス72への
マツピングを示す。
第1図は本発明によるシステムのブロック線図、第2図
は本発明によるシステムのもう一つの実施例のブロック
線図、第3図は本発明を実施する際にI10読取りトラ
ンザクションアドレスからコマンドパケット転送の基底
アドレスヘマッピングする方法を示す線図。 30・・・アトミックアクセスシステム、36・バス、
34・・・浮動小数点プロセッサ、32・・・CPU、
38・・・32ビツトシステムバス、45・ ・グラフ
ィックサブシステム、42・・・キャッシュ、44・・
・インターフェース、52・・・フレームバッファ、4
4・コマンドパケットインターフェース。 手 続 補 正 書 (方式) ■、事件の表示 平成2年特許願第311224号 3、補正をする者 事件との関係 出 願 人 4、代 理 人 5、補正命令の日付 平成3年2月12日
は本発明によるシステムのもう一つの実施例のブロック
線図、第3図は本発明を実施する際にI10読取りトラ
ンザクションアドレスからコマンドパケット転送の基底
アドレスヘマッピングする方法を示す線図。 30・・・アトミックアクセスシステム、36・バス、
34・・・浮動小数点プロセッサ、32・・・CPU、
38・・・32ビツトシステムバス、45・ ・グラフ
ィックサブシステム、42・・・キャッシュ、44・・
・インターフェース、52・・・フレームバッファ、4
4・コマンドパケットインターフェース。 手 続 補 正 書 (方式) ■、事件の表示 平成2年特許願第311224号 3、補正をする者 事件との関係 出 願 人 4、代 理 人 5、補正命令の日付 平成3年2月12日
Claims (3)
- (1)入出力装置に対するアトミックアクセス装置にお
いて、少なくとも一つのホストデータプロセッサと、一
本のバスによって、上記少なくとも一つのホストデータ
プロセッサに接続されるメモリと、上記バスに対して接
続される入出力装置を備えるグラフィックサブシステム
と、から成り、上記メモリが上記グラフィックサブシス
テムに対する複数の命令を含む1つのコマンドパケット
を記憶するロックダウンバッファを備え、上記少なくと
も一つのホストデータプロセッサがコマンドパケットを
生成する第1のプログラムを備え、上記グラフィックサ
ブシステムが上記第1のプログラムの制御の下に上記少
なくとも一つのホストデータプロセッサによってアドレ
ッシング可能なグラフィックプロセッサを備えることに
よって上記グラフィックプロセッサの可用性を判断し、
上記グラフィックプロセッサはこのグラフィックプロセ
ッサが利用可能である場合に上記コマンドパケットの上
記グラフィックサブシステムへの転送を入出力読取り処
理として開始し、上記複数の命令をアトミックに実行す
る第2のプログラムを備える前記装置。 - (2)入出力装置に対するアトミックアクセス装置にお
いて、少なくとも一つのホストデータプロセッサと、1
本のバスにより上記少なくとも一つのホストデータプロ
セッサに接続されるメモリと、上記バスに接続される入
出力装置を備えるサブシステムと、から成り、上記メモ
リが上記サブシステムに対する複数の命令を含むコマン
ドパケットをストアするロックダウンバッファを有し、
上記少なくとも一つのホストデータプロセッサがコマン
ドパケットを生成する第1のプログラムを含み、上記サ
ブシステムが上記第1のプログラムの制御の下に上記少
なくとも一つのホストデータプロセッサによってアドレ
ッシング可能のプロセッサを備えることによって上記プ
ロセッサの可用性を判断し、上記プロセッサが、このプ
ロセッサが利用可能な場合に上記コマンドパケットの上
記サブシステムへの転送を入出力読取り処理として開始
し、上記複数の命令をアトミックに実行する第2のプロ
グラムを備える前記装置。 - (3)入出力装置に対するアトミックアクセス方法にお
いて、入出力装置に対する複数の命令を含むコマンドパ
ケットを生成し、上記コマンドパケットを物理的に隣接
するロックダウンメモリバッファを備えるメモリ内に記
憶し、入出力装置をアドレッシングして入出力装置の可
用性を判断し、入出力装置が利用可能な場合にコマンド
パケットの入出力装置に対する転送を入出力読取り処理
として開始し、上記複数の命令をアトミックに実行する
前記方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US440588 | 1989-11-17 | ||
| US07/440,588 US5218678A (en) | 1989-11-17 | 1989-11-17 | System and method for atomic access to an input/output device with direct memory access |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03212753A true JPH03212753A (ja) | 1991-09-18 |
Family
ID=23749363
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2311224A Pending JPH03212753A (ja) | 1989-11-17 | 1990-11-16 | 入出力装置に対するアトミックアクセス装置及び方法 |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US5218678A (ja) |
| EP (1) | EP0430500B1 (ja) |
| JP (1) | JPH03212753A (ja) |
| CA (1) | CA2030021A1 (ja) |
| DE (1) | DE69028492T2 (ja) |
Families Citing this family (9)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5488569A (en) * | 1993-12-20 | 1996-01-30 | At&T Corp. | Application-oriented telecommunication system interface |
| US5666509A (en) * | 1994-03-24 | 1997-09-09 | Motorola, Inc. | Data processing system for performing either a precise memory access or an imprecise memory access based upon a logical address value and method thereof |
| US5835742A (en) * | 1994-06-14 | 1998-11-10 | Apple Computer, Inc. | System and method for executing indivisible memory operations in multiple processor computer systems with multiple busses |
| US5548780A (en) * | 1994-07-21 | 1996-08-20 | Apple Computer, Inc. | Method for semaphore communication between incompatible bus locking architectures |
| JP3209140B2 (ja) | 1997-04-04 | 2001-09-17 | 株式会社セガ | 画像処理装置 |
| US6128674A (en) * | 1997-08-08 | 2000-10-03 | International Business Machines Corporation | Method of minimizing host CPU utilization in driving an adapter by residing in system memory a command/status block a soft interrupt block and a status block queue |
| US6160560A (en) * | 1998-08-10 | 2000-12-12 | Diamond Multimedia Systems, Inc. | Graphic request management system |
| US6430628B1 (en) * | 1998-12-08 | 2002-08-06 | Intel Corporation | Method and apparatus for reducing direct memory access transfers using smart coalescing |
| US7752340B1 (en) * | 2006-03-31 | 2010-07-06 | Emc Corporation | Atomic command retry in a data storage system |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4402046A (en) * | 1978-12-21 | 1983-08-30 | Intel Corporation | Interprocessor communication system |
| US4491916A (en) * | 1979-11-05 | 1985-01-01 | Litton Resources Systems, Inc. | Large volume, high speed data processor |
| US4449182A (en) * | 1981-10-05 | 1984-05-15 | Digital Equipment Corporation | Interface between a pair of processors, such as host and peripheral-controlling processors in data processing systems |
| US4777595A (en) * | 1982-05-07 | 1988-10-11 | Digital Equipment Corporation | Apparatus for transferring blocks of information from one node to a second node in a computer network |
| US4689739A (en) * | 1983-03-28 | 1987-08-25 | Xerox Corporation | Method for providing priority interrupts in an electrophotographic machine |
| US4814977A (en) * | 1983-10-18 | 1989-03-21 | S&C Electric Company | Apparatus and method for direct memory to peripheral and peripheral to memory data transfers |
| US4604694A (en) * | 1983-12-14 | 1986-08-05 | International Business Machines Corporation | Shared and exclusive access control |
| JPS61107456A (ja) * | 1984-10-30 | 1986-05-26 | Toshiba Corp | 割込制御方式 |
| US4719621A (en) * | 1985-07-15 | 1988-01-12 | Raytheon Company | Packet fastbus |
| US4847754A (en) * | 1985-10-15 | 1989-07-11 | International Business Machines Corporation | Extended atomic operations |
| US5014186A (en) * | 1986-08-01 | 1991-05-07 | International Business Machines Corporation | Data-processing system having a packet transfer type input/output system |
| US4953101A (en) * | 1987-11-24 | 1990-08-28 | Digital Equipment Corporation | Software configurable memory architecture for data processing system having graphics capability |
| EP0330425B1 (en) * | 1988-02-23 | 1995-12-06 | Digital Equipment Corporation | Symmetric multi-processing control arrangement |
| US5175837A (en) * | 1989-02-03 | 1992-12-29 | Digital Equipment Corporation | Synchronizing and processing of memory access operations in multiprocessor systems using a directory of lock bits |
-
1989
- 1989-11-17 US US07/440,588 patent/US5218678A/en not_active Expired - Lifetime
-
1990
- 1990-11-15 EP EP90312471A patent/EP0430500B1/en not_active Expired - Lifetime
- 1990-11-15 CA CA002030021A patent/CA2030021A1/en not_active Abandoned
- 1990-11-15 DE DE69028492T patent/DE69028492T2/de not_active Expired - Lifetime
- 1990-11-16 JP JP2311224A patent/JPH03212753A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| EP0430500A3 (en) | 1992-03-04 |
| CA2030021A1 (en) | 1991-05-18 |
| EP0430500A2 (en) | 1991-06-05 |
| EP0430500B1 (en) | 1996-09-11 |
| DE69028492T2 (de) | 1997-04-03 |
| DE69028492D1 (de) | 1996-10-17 |
| US5218678A (en) | 1993-06-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5404522A (en) | System for constructing a partitioned queue of DMA data transfer requests for movements of data between a host processor and a digital signal processor | |
| US6046752A (en) | Peer-to-peer parallel processing graphics accelerator | |
| US6470380B1 (en) | Signal processing device accessible as memory | |
| JPH08278918A (ja) | エンディアンタスクを実行するシステム及び方法 | |
| JP2557199B2 (ja) | インターフェース・システムおよび方法 | |
| JPH1078873A (ja) | エミュレーション・システムで非同期信号を処理する方法 | |
| US5790887A (en) | Method and apparatus for processing programmed input/output (PIO) operations in a computer system | |
| US5218678A (en) | System and method for atomic access to an input/output device with direct memory access | |
| US5887190A (en) | System for determining from a command storing in a storage circuit an application program which has initiated the command to determine an input/output device address | |
| US5129065A (en) | Apparatus and methods for interface register handshake for controlling devices | |
| JPH1173365A (ja) | データ移動操作を最適化する方法 | |
| CN119645903A (zh) | 一种提高实时图像数据输入处理和输出效率的优化方法 | |
| JPS623347A (ja) | エラ−回復情報退避方式 | |
| US20020143967A1 (en) | Bit-granular writes of control registers | |
| JPS63118969A (ja) | 情報処理装置 | |
| JPS6097459A (ja) | デ−タ処理システム同期方法 | |
| JPH09134326A (ja) | コンピュータシステム | |
| JP2933569B2 (ja) | 中央演算処理装置 | |
| CN120541012A (zh) | 基于MPSoC的用户态固态存储系统 | |
| JPH0262651A (ja) | 並列計算機における相互排除方式 | |
| JPH07320070A (ja) | グラフィックス専用ハードウェアへのデータ転送方法及びその装置とグラフィックスシステム | |
| Yin et al. | Implementing high performance remote method invocation in cca | |
| JPH02188865A (ja) | プロセッサ間共有メモリ管理装置 | |
| JPS61273659A (ja) | デ−タ処理方式 | |
| JPS62236061A (ja) | Cpu間通信方式 |