JP2000181856A - 入出力制御装置 - Google Patents

入出力制御装置

Info

Publication number
JP2000181856A
JP2000181856A JP10357257A JP35725798A JP2000181856A JP 2000181856 A JP2000181856 A JP 2000181856A JP 10357257 A JP10357257 A JP 10357257A JP 35725798 A JP35725798 A JP 35725798A JP 2000181856 A JP2000181856 A JP 2000181856A
Authority
JP
Japan
Prior art keywords
input
transfer
instruction
dma
main storage
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
Application number
JP10357257A
Other languages
English (en)
Inventor
Hidenori Takahashi
秀徳 高橋
Osamu Ishihara
修 石原
Hitoshi Koyanagi
仁 小柳
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP10357257A priority Critical patent/JP2000181856A/ja
Publication of JP2000181856A publication Critical patent/JP2000181856A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Bus Control (AREA)

Abstract

(57)【要約】 (修正有) 【課題】入出力デバイスとのDMA転送時の誤動作の発
生を防止し、且つ、主記憶性能を向上する。 【解決手段】入出力制御装置4は、主記憶装置3のアド
レス領域が設定される転送情報空間定義部と、入出力デ
バイスインタフェース5から主記憶装置に対する転送先
のアドレスを比較し、DMA転送指示の書込み内容が転
送情報部であるか、または、データ部であるか判定し、
書き込み順序保証命令を生成する。DMA転送書込み内
容が転送情報部の場合に、その命令の後にDMA転送指
示を送信する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、入出力デバイスか
ら主記憶装置へのDMA−Write転送において、転
送情報部とデータ部の書き込み順序を保証する入出力制
御装置に関する。
【0002】
【従来の技術】従来から、入出力デバイスからのデータ
転送は割り込みによって制御されている。
【0003】即ち、入出力デバイスからのデータ転送終
了は割り込みによってプロセッサへ報告され、入出力デ
バイスや入出力デバイスインタフェースを制御するプロ
グラム(OSの一部)である入出力ドライバが転送終了
を認識し、その後の各処理を行っている。
【0004】一方、データ転送時、データと共にデータ
転送終了及びその他の付加情報を示すデータ転送情報を
主記憶装置へ書き込んでおき、この情報をプロセッサが
読み出すことにより、入出力デバイスからの主記憶装置
に対するデータ転送の終了を入出力ドライバに認識させ
る方法も用いられている。
【0005】この方法を図1に示すコンピュータシステ
ムを例にとって説明する。
【0006】図1において、コンピュータシステムは、
プロセッサ(0)〜(n)2と、複数バンク構成の主記
憶装置(0)〜(n)3と、入出力制御装置(0)〜
(1)4と、これらを接続するスイッチ7と、入出力デ
バイスが接続する入出力デバイスインタフェース5とを
含むコンピュータ装置1と、これに接続された複数の入
出力デバイス6から構成されている。
【0007】主記憶装置3と何れかの入出力デバイス6
の間でDMA−Write転送(入出力デバイスから主
記憶装置への書き込み)を行う場合、入出力デバイス6
が転送するデータ(データ部)と共に上記したデータ転
送情報(転送情報部)がスイッチ7を介して主記憶装置
3へ転送され、所望のアドレスに書き込まれる。プロセ
ッサ2は、主記憶装置3に書き込まれた転送情報部を読
み出し、データ部の転送、即ち、主記憶装置3への書き
込みが終了していることを認識して、データ部を読み出
す等の処理を行う。この場合、当然ながら転送情報部が
書き込まれるより先にデータ部が書き込まれていること
が必要である。
【0008】この方法を用いると、プロセッサへの割り
込み回数を削減することができ、プロセッサが行う割り
込み処理によるオーバヘッドを減らす事ができる。その
結果、システムの負荷を大幅に減らすことが可能となり
コンピュータシステムの性能を向上することができる。
【0009】
【発明が解決しようとする課題】近年、図1に示したよ
うなコンピュータ装置1では、プロセッサ等と主記憶装
置との結合は、システム性能を向上するために、従来の
バス結合から図1に示すようなスイッチ結合へと変わっ
てきている。但し、従来のバス結合と同様に、プロセッ
サ2と入出力制御装置4からの主記憶装置3の同一アド
レスへのアクセスについては、スイッチ7への到着順を
保証して主記憶装置3へのアクセスを実現している。そ
して、このような到着順を保証したアクセスのため、主
記憶性能が低下してしまう。
【0010】これに対し、プロセッサ2と入出力制御装
置側4からの主記憶装置3の同一アドレスへのアクセス
を、スイッチ7への到着順を保証せずに実現する場合に
は、到着順の制限がないため主記憶性能を向上させるこ
とができる。
【0011】しかし、上記したデータ転送情報を用いた
データ転送を実行するシステムの場合、スイッチ7への
到着順を保証しないことによって、プロセッサ2から見
て、上記したDMA−Write転送のデータ部と転送
情報部の書き込み順序が保証されないケースが発生し得
る。このようなケースでは、データ部の主記憶装置3へ
の書き込みが完了する前に、転送情報部が主記憶装置へ
書き込まれることにより、この転送情報部を読み出した
プロセッサにおいて入出力ドライバがデータ転送は終了
したものと誤って認識してしまう。そして、データ部の
書き込みが完了する前に、そのデータ部の読み出しアク
セスを主記憶装置へ発行し、その読み出しアクセスがス
イッチ7でデータ部の書き込みアクセスを追い越してし
まうことによって、誤ったデータを読み出してしまう等
の誤動作を引き起こすことになる。
【0012】以上のように、従来システムでは、複数の
プロセッサと入出力制御装置からの主記憶アクセスがス
イッチ7へ到着した順序を保証して主記憶アクセスを実
行する場合には、主記憶性能を低下させてしまう一方、
主記憶性能を向上させるために、スイッチ7への到着順
を保証せずに主記憶アクセスを実行するようにすると、
データ転送情報を使用したDMA転送を行う場合に、デ
ータ部と転送情報部の主記憶装置への書き込みと、プロ
セッサからの転送情報部とデータ部の主記憶装置からの
読み出しの間に追い越しが発生し、転送情報部は正しく
読み出せるが、データ部がまだ書き込まれていないとい
う状態が発生し、誤動作を引き起こす恐れがある。
【0013】従って、本発明の目的は、上記したような
誤動作の発生を防止し、且つ、主記憶性能を向上するこ
とができるコンピュータシステムを提供することであ
る。
【0014】
【課題を解決するための手段】上記目的を達成するた
め、本発明では、データ転送情報が記憶される前記主記
憶装置のアドレス領域が設定される転送情報空間定義部
と、この転送情報空間定義部を用いて、入出力デバイス
から発行されたDMA転送における書き込み内容が、通
常のデータ部であるか転送情報部であるかを判定する手
段を入出力制御装置に設ける。入出力制御装置は、DM
A転送における書き込み内容が転送情報部と判断した
ら、この転送情報部以前に発行されたデータ部の主記憶
装置への書き込みを保証するために、主記憶書き込み順
序保証命令を発行し、続けて転送情報部の書き込み指示
を発行する。ここで、主記憶書き込み順序保証命令と
は、この命令が発行される以前に入出力制御装置から発
行された書き込み指示が完了することを保証する命令で
ある。
【0015】これにより、転送情報部が主記憶装置に書
き込まれたときには、主記憶書き込み保証命令以前に書
き込み指示が発行されたデータ部は主記憶装置へ書き込
まれていることを保証することができ、入出力ドライバ
の誤動作を防止し、且つ、複数のプロセッサと入出力制
御装置からの主記憶アクセス間の追い越しを可能とで
き、主記憶性能を向上できる。
【0016】
【発明の実施の形態】以下、本発明の一実施例を図面を
用いて具体的に説明する。
【0017】実施例1 本実施例では、データ転送情報を記憶するための転送情
報空間を定義する転送情報空間定義部を用いる方式につ
いて説明する。
【0018】図1は、本実施例におけるコンピュータシ
ステムの構成を示す。既に説明したように、図1のコン
ピュータ装置1は、1乃至複数のプロセッサ(0)〜
(n)2と、1乃至複数のバンク構成の主記憶装置
(0)〜(m)3と、1乃至複数の入出力制御装置
(0)〜(1)4と、入出力制御装置4に接続され、入
出力デバイスとのデータ転送を管理する入出力デバイス
インタフェース5を含み、プロセッサ2、主記憶装置
3、入出力制御装置4は、それぞれの間でデータ及び制
御信号のやり取りを行うためスイッチ7により接続され
ている。また、入出力デバイスインタフェース5には、
1乃至複数の入出力デバイス6が接続されている。
【0019】主記憶装置3と何れかの入出力デバイス6
との間でDMA−Write転送(入出力デバイスから
主記憶装置への書き込み)を行う場合、入出力デバイス
6からの転送データを入出力デバイスインターフェース
5が受け取り、これを編集して複数のデータ部とし、各
データ部のDMA−Write転送指示を発行する。ま
た、入出力デバイスインターフェース5は、データ部の
DMA−Write転送指示を発行し終えると、データ
転送情報(転送情報部)のDMA−Write転送指示
を発行する。各データ部及び転送情報部のDMA−Wr
ite転送指示は入出力制御装置4に至り、ここからス
イッチ7で主記憶装置3へ転送され、所望のアドレスに
書き込まれる。また、何れかの入出力デバイス6がDM
A−Read転送(主記憶装置からの読み出し)を行う
場合は、入出力デバイス6からのDMA−Read転送
アクセスは、入出力デバイスインタフェース5、入出力
制御装置4及びスイッチ7を通って主記憶装置3をアク
セスし、読み出されたデータは、スイッチ7から入出力
制御装置4、入出力デバイスインタフェース5を通って
入出力デバイス6へ転送される。
【0020】一方、プロセッサ2からの主記憶書き込み
アクセスは、スイッチ7を介して主記憶装置3へデータ
が転送され、書き込まれる。また、プロセッサ2からの
主記憶読み出しアクセスは、スイッチ7を介して主記憶
装置3をアクセスし、読み出されたデータは、再度スイ
ッチ7を通ってプロセッサ2へ転送される。
【0021】このコンピュータシステムにおいては、各
プロセッサ2及び各入出力デバイス6からの主記憶アク
セスの主記憶装置3に対するアクセス順序は、スイッチ
7への到着順が保証されず、スイッチ7において主記憶
アクセスの追い越しが可能である。即ち、スイッチ7に
おける転送ルートが確保できた主記憶アクセスから先に
主記憶装置3をアクセスする。但し、同一プロセッサ2
または同一入出力制御装置4からの主記憶装置3の同一
アドレスへのアクセスについてはスイッチ7への到着順
序が保証される。
【0022】プロセッサ2は、入出力デバイスの起動及
び設定を行うために、MMR(Memory Mapp
ed Register)アクセス要求を発行する。こ
のMMRアクセス要求は、スイッチ7で、入出力制御装
置4に転送され、入出力デバイスインタフェース5を通
って入出力デバイス6をアクセス可能である。
【0023】図2は、上記した転送情報部のフォーマッ
トを示している。
【0024】図2において「Flag」は、書き込み完
了フラグであり、主記憶装置へのデータ部の書き込み完
了を示す。「Write Address」は、DMA
−Write転送先(書き込み先)の主記憶アドレスを
示す。また、「Data Size」は、書き込むデー
タのサイズを示す。入出力デバイスからのDMA−Wr
ite転送時、入出力デバイスインタフェース5は、デ
ータ部の転送終了後にこの転送情報部のDMA−Wri
te転送指示を発行する。
【0025】図5は、入出力制御装置4の具体的な構成
例を示す。
【0026】送受信回路B401は、インタフェース4
15を通して入出力デバイスインタフェース5とデータ
等の送受信を行う。DMA受信回路402は、入出力デ
バイスインタフェース5からのDMA転送指示の受信部
である。コマンドラッチ回路403は、DMA受信回路
402から受け取った命令の種類を保持する。アドレス
ラッチ回路404は、DMA受信回路402から受け取
った命令における主記憶アドレスを保持する。データラ
ッチ回路405は、DMA受信回路402から受け取っ
た命令における書き込みデータを保持する。転送情報空
間定義部406は、MMR(Memory Mappe
d Register)アクセス要求により、MMR受
信回路414、インタフェース418を通して、転送情
報空間が設定される。転送情報比較回路407は、転送
情報空間定義部406の保持するアドレスとアドレスラ
ッチ回路404のアドレスを比較し、DMA−Writ
e転送の内容が転送情報部であるか、または、データ部
であるか判定する。書き込み順序保証命令生成回路40
9は、書き込み順序保証命令を生成し、送受信回路A4
12へ発行する。アドレスラッチ回路(2)408は、
発行すべきDMA転送先のアドレスを保持する。制御回
路410は、転送情報比較回路407の判定結果と、コ
マンドラッチ回路403からの命令種類に従って、書き
込み順序保証命令生成回路409に対し、インタフェー
ス417を通して命令生成を要求し、また、発行順序等
を制御する。DMA送信回路411は、DMA転送指示
を送受信回路A412へ発行する。送受信回路A412
は、インタフェース416を通してスイッチ7とデータ
等の送受信を行う。MMR受信回路414は、プロセッ
サ2から発行されたMMRアクセス要求を受信する。M
MR送信回路413は、入出力デバイスインタフェース
5、入出力デバイス6へMMRアクセス要求を発行す
る。
【0027】図3は、入出力制御装置内の転送情報空間
定義部406に設定された転送情報空間のイメージを示
す。転送情報空間(0)30と転送情報空間(1)31
は、転送情報空間定義部406に設定された転送情報部
が記憶される主記憶アドレス領域を示す。データ空間3
2は、同じく転送情報空間定義部406に設定されたデ
ータ部が記憶される主記憶アドレス領域を示す。データ
部のDMA−Write転送では、データ空間32に従
って、データ部が主記憶装置3内のデータ領域(0)3
5やデータ領域(1)36へ書き込まれる。また、転送
情報部のDMA−Write転送では、転送情報空間
(0)30または転送情報空間(1)31に従って、転
送情報が主記憶装置3内の転送情報領域(0)33や転
送情報領域(1)34へ書き込まれる。主記憶装置3内
の転送情報領域(0)33、(1)34は、図2で示し
たフォーマットで定義されており、例えば、転送情報領
域(0)の「Write Address」、「Dat
a Size」は、それぞれデータ領域(0)35の先
頭アドレス、記憶されるデータサイズを示している。
【0028】図4は、入出力制御装置4、入出力デバイ
スインターフェース5、入出力デバイス6の動作フロー
チャートを示す。
【0029】図4に従い、図5を用いてDMA−Wri
te転送の動作を説明する。
【0030】ステップST1では、ソフトウェア、ここ
ではコンピュータシステムのOSにより転送情報空間が
設定される。具体的には、プロセッサ2より発行された
MMRアクセス要求が、スイッチ7、インタフェース4
16を介して送受信回路A412、MMR受信回路41
4で受信され、インタフェース418を通して転送情報
空間定義部406へ上記した転送情報空間及びデータ空
間を設定する。
【0031】ステップST2では、MMRアクセス要求
がMMR送信回路413から送受信回路B401を通し
て送信され、入出力デバイスインターフェース5を介し
て所望の入出力デバイス6をアクセスし、入出力デバイ
ス6が起動される。
【0032】ステップST3では、起動された入出力デ
バイス6と主記憶装置3との間でDMA−Write転
送が開始される。ここでは、入出力デバイス6及び入出
力デバイスインタフェース5が、MMRアクセスによる
OSの設定に従って、DMA−Write転送を開始す
る。
【0033】ステップST4では、入出力制御装置4に
て、入出力デバイスインターフェース5から転送されて
きたDMA−Write転送指示における転送先アドレ
スから転送情報部の転送であるか、または、データ部の
転送であるかを判定する。即ち、入出力デバイスインタ
フェース5からインタフェース415、送受信回路Bを
介してDMA受信回路402で受信されたDMA−Wr
ite転送指示は、コマンド部、アドレス部、データ部
に分けられ、それぞれコマンドラッチ回路403、アド
レスラッチ回路404、データラッチ回路405に格納
される。アドレスラッチ回路404から読み出されたア
ドレスと転送情報空間定義部406に設定されたアドレ
ス領域とを転送情報比較回路407で比較し、転送指示
が転送情報部の転送であるか、または、データ部の転送
であるかを判定する。判定後、アドレスラッチ回路40
4から読み出されたアドレスは、転送情報比較回路40
7を介して、アドレスラッチ回路(2)408へ書き込
まれる。一方、判定結果はインタフェース419を介し
て制御部へ通知される。判定結果がデータ部の転送であ
ればステップST8へ進む。
【0034】ステップST8では、データ部のDMA−
Write転送指示をDMA送信回路411及び送受信
回路A412からインタフェース416を介してスイッ
チ7へ発行する。
【0035】ステップST9では、インタフェース41
6を介して送られてきたデータ部のDMA−Write
転送指示がスイッチ7から主記憶装置3へ送信され、主
記憶装置3の所望のアドレスにデータ部が書き込まれ
る。
【0036】一方、ステップST4での判定結果が転送
情報部の転送であった場合、即ち、転送情報比較回路4
07において転送指示が転送情報部の転送であると判定
したとき、判定結果をインタフェース419を介して制
御回路410へ通知する。制御回路410は、その判定
結果を受けて書き込み順序保証命令生成回路409をイ
ンタフェース417を介して起動する。一方、アドレス
ラッチ回路404から読み出されたアドレスは、アドレ
スラッチ回路(2)408へ書き込まれる。
【0037】ステップST5では、DMA送信回路41
1は、転送情報比較回路407で転送情報部の転送と判
定されたDMA−Write転送指示より前に受信した
DMA−Write転送指示を全て送受信回路A412
を通してスイッチ7へ発行する。起動された書き込み順
序保証命令生成回路409は、書き込み順序保証命令を
生成し、送受信回路A412へ発行する。送受信回路A
412は、インタフェース416を介して、スイッチ7
へ書き込み順序保証命令を発行する。
【0038】ステップST6では、書き込み順序保証命
令が発行された後、制御回路410は、アドレスラッチ
回路(2)408に書き込まれたアドレスを用いて、転
送情報部のDMA−Write転送指示をDMA送信回
路411及び送受回路A412を通して、スイッチ7へ
発行する。
【0039】ステップST7では、スイッチ7は、受信
した書き込み順序保証命令により、この命令以前に入出
力制御装置4から発行されたDMA−Write転送指
示を全て主記憶装置3に送信し、転送されたデータ部が
主記憶装置3に書き込まれることを保証する。その後、
書き込み順序保証命令に続いて受信した転送情報部のD
MA−Write転送指示を主記憶装置3へ送信する。
これにより、転送されたデータ部が全て主記憶装置3に
書き込まれた後に転送情報部が主記憶装置3に書き込ま
れる。ステップST7終了後、ステップST10へ進
む。
【0040】ステップST10では、OSにより転送情
報空間の再設定の必要性が判断される。即ち、DMA−
Write転送終了後、OSでは転送情報空間の再設定
の必要性を判断し、必要であればステップST1から処
理を行い、必要でなければステップST3から他のDM
A−Write転送が開始されるまで待つ。
【0041】ここで、上記したスイッチ7の書き込み順
序保証命令実行時の動作を更に詳しく説明する。
【0042】図8、図9は、上記した書き込み順序保証
命令の実行時におけるスイッチ7の状態図を示す。
【0043】スイッチ7は、入出力制御装置4から発行
される書き込み順序保証命令を受信すると、この命令よ
りも前に受信した主記憶装置3へのアクセス要求を全て
主記憶装置3へ送信する。この間、スイッチ7は書き込
み順序保証命令以降に発行されるアクセス要求の受信を
行わない。そして、アクセス要求を主記憶装置3へ送信
し終えると、書き込み順序保証命令以降の後続するアク
セス要求の受信を開始する。この動作における各状態
を、上記したDMA−Write転送を例にとり、図面
を用いて説明する。
【0044】まず、図8(a)に示す[状態1]では、
入出力デバイスインタフェース5からデータ部のDMA
−Write転送指示(D1)が発行されている。
【0045】次に、図8(b)に示す[状態2]では、
(D1)に続けて入出力デバイスインターフェース5か
ら発行された複数のデータ部のDMA−Write転送
指示(D2)〜(Dx)が、入出力制御装置4からスイ
ッチ7に転送され、スイッチ7から主記憶装置3の所望
のバンクに送信されている。更に、入出力デバイスイン
タフェース5からは、転送情報部のDMA−Write
転送指示(DS)が発行されている。
【0046】続いて図9(a)に示す[状態3]では、
入出力制御装置4において、入出力デバイスインターフ
ェース5からの転送指示(DS)が転送情報部のDMA
−Write転送指示であると判定され、書き込み順序
保証命令が入出力制御装置4からスイッチ7へ発行され
ている。このとき、入出力制御装置4から転送情報部の
DMA−Write転送指示(DS)も発行されるが、
書き込み順序保証命令によってスイッチ7には受信され
ない。
【0047】図9(b)に示す[状態4]では、書き込
み順序保証命令によってスイッチ7内にあったデータ部
のDMA−Write転送指示(D2)〜(Dx)が主
記憶装置3へ送信される。これらが送信されたことによ
り、スイッチ7では、書き込み順序保証命令に後続する
転送情報部のDMA−Write転送指示(DS)が受
信される。
【0048】このように動作することにより、転送情報
部の転送指示がデータ部の転送指示を追い越して主記憶
装置3へアクセスしないことが保証される。尚、主記憶
装置3では、スイッチ7からアクセス要求を受けとる
と、その受け取った順にアクセスを実行する。
【0049】以上の通り、本実施例によれば、DMA−
Write転送におけるデータ部の主記憶装置3への書
き込みが保証されてから、転送情報部の主記憶装置3へ
の書き込みが行われる。一方、プロセッサ2は、主記憶
装置3から転送情報部を読み出し、図2に示した「Fl
ag」によりデータ部の書き込み完了を確認した後、転
送情報部内の「Write Address」、「Da
ta Size」を確認し、対応するデータ部へのアク
セスを行う。このとき、スイッチ7において、プロセッ
サ2からの主記憶アクセスと、入出力制御装置4からの
主記憶アクセスの到着順が保証されていなくても正しく
動作を続けることができる。なぜなら、上記したよう
に、データ部の書き込みが保証された後に転送情報部の
書き込みが行われるため、プロセッサ2は常にデータ部
の書き込み完了を正しく判定することができるからであ
る。
【0050】実施例2 次に本発明の他の実施例を説明する。
【0051】本実施例では、実施例1とは異なり、アド
レス変換情報に転送情報空間を定義する方式について説
明する。
【0052】但し、以下の説明では、実施例1と同一の
構成については同一の符号を付し、その詳しい説明は省
略する。
【0053】図6は、アドレス変換機構を備える入出力
制御装置4を示す。
【0054】図6において、入出力制御装置4は、実施
例1(図5)で説明した構成に加えて、アドレス変換回
路420と、アドレス変換回路420を制御するアドレ
ス変換制御回路421を備えている。アドレス変換回路
420は、入出力デバイスインタフェース5から送受信
回路B401及びDMA受信回路402で受信される転
送指示に含まれる転送先アドレスを、アドレスラッチ回
路404を介して入力し、そのアドレスをアドレス変換
制御回路421より渡されるアドレス変換情報を用いて
主記憶装置3の実アドレスに変換する。この変換で使用
されるアドレス変換情報は、予めOSやその他のソフト
ウェアにより作成され、主記憶装置3の所定の領域、ま
たは、アドレス変換制御回路421内等に格納されてい
る。また、アドレス変換の方式については種々の方式を
採用することができるが、ここでは特に限定しない。
【0055】図7に上記したアドレス変換情報のフォー
マット例を示す。
【0056】図7において、「RD」は主記憶装置3か
らの読み出しが可能か否かを示し、「WT」は主記憶装
置3への書き込みが可能か否か示し、「DES」は転送
情報空間に関する情報を示し、「変換後アドレス」は変
換されたアドレスを示す。
【0057】ここでは「DES」は1ビットからなり、
「DES」=“1”であるとき、変換後の実アドレスが
指す領域が転送情報空間内にあることを示し、「DE
S」=“0”であるとき、変換後の実アドレスが指す領
域がデータ空間(転送情報空間以外の空間)内にあるこ
とを示す。アドレス変換制御回路421から渡されるア
ドレス変換情報の「DES」が“1”であるとき、転送
情報比較回路407では転送情報部のDMA−Writ
e転送指示であると判断し、実施例1と同様に、書き込
み順序保証命令生成回路409から書き込み順序保証命
令が発行される。また、「DES」=“0”であると
き、このアドレス変換情報を使用するDMA−Writ
e転送指示は、データ部の転送指示であると判断する。
尚、DMA-Read転送の場合は、主記憶読み出しで
あるため、転送情報空間に対するアクセスであっても、
データ空間に対する読み出しと同様に動作する。
【0058】以下、図6を用いて転送情報部のDMA−
Write転送の動作を説明する。
【0059】図6において、入出力デバイスインタフェ
ース5から発行された転送情報部のDMA−Write
転送指示は、インタフェース415、送受信回路B40
1を介してDMA受信回路402で受信される。DMA
−Write転送指示は、コマンド部、アドレス部、デ
ータ部に分けられ、それぞれコマンドラッチ回路40
3、アドレスラッチ回路404、データラッチ回路40
5へ格納される。アドレスラッチ回路404から読み出
されたアドレスは、アドレス変換回路420へ送られ、
特定のアドレス変換規則(本実施例では特に限定しな
い)に従い、アドレス変換制御回路421から与えられ
るアドレス変換情報を用いて主記憶装置3に対する実ア
ドレスに変換され、アドレスラッチ回路(2)408に
書き込まれる。また、アドレスラッチ回路404から読
み出されたアドレスは、転送情報比較回路407へも送
られる。転送情報比較回路407では、そのアドレスを
変換するためにアドレス変換制御装置421から与えら
れるアドレス変換情報の「DES」の値を検査し、受信
したDMA−Write転送指示が、転送情報空間への
転送であるかを判定し、その判定結果を制御回路410
へ通知する。制御回路410は、転送情報比較回路40
7の判定結果を受けて転送情報部へのDMA−Writ
e転送と判断し、書き込み順序保証命令生成回路409
をインタフェース417を介し起動する。DMA送信回
路411は、転送情報部へのDMA−Write転送指
示より前に受信したDMA−Write転送指示を全て
送受回路A412、インタフェース416を介してスイ
ッチ7へ発行する。その後、書き込み順序保証命令生成
回路409は、主記憶装置3に対する書き込み順序保証
命令を生成し、送受信回路A412を介してスイッチ7
へ発行する。制御回路410は、アドレスラッチ回路
(2)408に書き込まれたアドレスを用いて、転送情
報部のDMA−Write転送指示をDMA送信回路4
11及び送受回路A412を通して、スイッチ7へ発行
する。スイッチ7は、実施例1と同様に、受信した書き
込み順序保証命令により、この命令以前に入出力制御装
置4から発行されたDMA−Write転送指示を全て
主記憶装置3に送信し、転送されたデータ部が主記憶装
置3に書き込まれることを保証する。その後、書き込み
順序保証命令に続いて受信した転送情報部のDMA−W
rite転送指示を主記憶装置3へ送信する。これによ
り、転送されたデータ部が全て主記憶装置3に書き込ま
れた後に転送情報部が主記憶装置3に書き込まれる。
【0060】本実施例2によれば、アドレス変換情報に
転送情報空間に関する情報を持たせるため、実施例1で
説明したような図6内の転送情報空間定義部406の機
能を使用することなくDMA転送がデータ部と転送情報
部の何れのものかを判定可能である。従って、アドレス
変換機能を使用する場合には、例えば、転送情報空間定
義部406に対して転送情報空間の定義を行わないか、
または、アドレス変換情報の「DES」による転送情報
空間定義と転送情報空間定義部406の定義を同時に有
効にする等、入出力制御装置4を制御するOSまたはそ
の他のソフトウェアにより適宜選択可能である。
【0061】
【発明の効果】本発明によれば、データ転送情報が記憶
される主記憶アドレス領域を定義する転送情報空間定義
部を設け、或いは、入出力制御装置内でアドレス変換の
ために使用するアドレス変換情報に転送情報空間を定義
することにより、入出力デバイスインターフェースから
のDMA転送指示がデータ部ものか転送情報部のものか
を入出力制御装置に判定可能とさせ、転送情報部の転送
指示の場合には書き込み順序保証命令の発行の後、転送
情報部の転送指示を発行させる。これにより、主記憶装
置と入出力制御装置とを結合するスイッチにおいて、転
送情報部の書き込みがデータ部の書き込みを追い越すこ
とがなく、転送情報部が主記憶装置に書き込まれたとき
には、データ部が全て主記憶装置に書き込まれているこ
とを保証できる。従って、主記憶装置に書き込まれた転
送情報部によりDMA転送の完了を判定する入出力ドラ
イバ等では、常に正しい判定を行うことができ、誤った
判定による誤動作を防止できる。一方、上記以外の主記
憶アクセスについて、スイッチにて到着順を保証しない
ことにより、システムにおける主記憶性能を向上するこ
とができる。
【図面の簡単な説明】
【図1】本発明の一実施例におけるコンピュータシステ
ムの構成を示す図。
【図2】本発明の一実施例における転送情報部のフォー
マットを示す図。
【図3】転送情報空間定義部に設定された転送情報空間
のイメージを示す図。
【図4】本発明の一実施例におけるデータ転送動作のフ
ローチャート。
【図5】本発明の一実施例における入出力制御装置の構
成を示す図。
【図6】本発明の他の実施例における入出力制御装置の
構成を示す図。
【図7】本発明の他の実施例におけるアドレス変換情報
のフォーマットを示す図。
【図8】本発明の一実施例におけるスイッチの状態図。
【図9】本発明の一実施例におけるスイッチの状態図。
【符号の説明】
1…コンピュータ装置 2…プロセッサ 3…主記憶装置 4…入出力制御装置 5…入出力デバイスインタフェース 6…入出力デバイス 7…スイッチ 401…送受信回路B 402…DMA受信回路 403…コマンドラッチ回路 404、408…アドレスラッチ回路 405…データラッチ回路 406…転送情報空間定義部 407…転送情報比較回路 409…書き込み順序保証命令生成回路 410…制御回路 411…DMA送信回路 412…送受信回路A 413…MMR送信回路 414…MMR受信回路 420…アドレス変換回路 421…アドレス変換制御回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 小柳 仁 神奈川県秦野市堀山下1番地 株式会社日 立インフォメーションテクノロジー内 Fターム(参考) 5B014 EA03 GD05 GD22 GD23 GD24 HB14 5B061 BA03 DD01 DD11 GG02 GG11 QQ01

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】入出力デバイスが接続される入出力デバイ
    スインターフェースと、主記憶装置が接続されるスイッ
    チとの間でDMA転送を制御する入出力制御装置におい
    て、データ転送情報が記憶される前記主記憶装置のアド
    レス領域が設定される転送情報空間定義部と、前記入出
    力デバイスインターフェースからの前記主記憶装置に対
    するDMA転送指示に含まれる転送先アドレスと前記転
    送情報空間定義部に設定されたアドレス領域とを比較
    し、前記DMA転送指示の書き込み内容が前記データ転
    送情報かデータかを判定する比較部と、前記比較部の判
    定結果に応じて、前記DMA転送指示に対する前記主記
    憶装置への書き込み順序を保証するよう前記スイッチに
    命令する書き込み順序保証制御部と、前記DMA転送指
    示の書き込み内容が前記データ転送情報である場合に、
    前記命令を発行した後に、前記DMA転送指示を送信す
    るDMA送信制御部とを有することを特徴とする入出力
    制御装置。
  2. 【請求項2】入出力デバイスが接続される入出力デバイ
    スインターフェースと、主記憶装置が接続されるスイッ
    チとの間でDMA転送を制御する入出力制御装置におい
    て、前記入出力デバイスインターフェースからの前記主
    記憶装置に対するDMA転送指示に含まれる転送先アド
    レスを所定のアドレス変換情報を用いて変換するアドレ
    ス変換部と、前記アドレス変換情報に含まれ、変換後ア
    ドレスが前記主記憶装置のデータ転送情報が記憶される
    アドレス領域に含まれるか否かを示す空間情報と、前記
    アドレス変換情報を前記アドレス変換部から受け取って
    前記空間情報を検査し、前記DMA転送指示が前記デー
    タ転送情報の転送指示であるかを判定する判定部と、前
    記判定部の判定結果に応じて、前記DMA転送指示に対
    する前記主記憶装置への書き込み順序を保証するよう前
    記スイッチに命令する書き込み順序保証制御部と、前記
    DMA転送指示が前記データ転送情報の転送指示である
    場合に、前記命令を発行した後に、前記DMA転送指示
    を送信するDMA送信制御部とを有することを特徴とす
    る入出力制御装置。
  3. 【請求項3】1乃至複数のプロセッサと、主記憶装置
    と、前記プロセッサと前記主記憶装置を接続するスイッ
    チと、前記スイッチに接続される1乃至複数の入出力制
    御装置と、1乃至複数の入出力デバイスと、前記入出力
    制御装置と前記入出力デバイスとを接続し、入出力デバ
    イスとのデータ転送を管理する入出力デバイスインタフ
    ェースとを有するコンピュータシステムにおいて、前記
    入出力制御装置は、データ転送情報が記憶される前記主
    記憶装置のアドレス領域が設定される転送情報空間定義
    部と、前記入出力デバイスインターフェースからの前記
    主記憶装置に対するDMA転送指示に含まれる転送先ア
    ドレスと前記転送情報空間定義部に設定されたアドレス
    領域とを比較し、前記DMA転送指示の書き込み内容が
    前記データ転送情報かデータかを判定する比較部と、前
    記比較部の判定結果に応じて、前記DMA転送指示に対
    する前記主記憶装置への書き込み順序を保証するよう前
    記スイッチに命令する書き込み順序保証制御部と、前記
    DMA転送指示の書き込み内容が前記データ転送情報で
    ある場合に、前記命令を発行した後に、前記DMA転送
    指示を送信するDMA送信制御部とを有し、前記スイッ
    チは、前記命令がされる以前に受け取っていた前記入出
    力制御装置からのDMA転送指示を全て前記主記憶装置
    に送信した後、前記命令以降に発行されるDMA転送指
    示を前記主記憶装置に送信することを特徴とするコンピ
    ュータシステム。することを特徴とするコンピュータシ
    ステム。
JP10357257A 1998-12-16 1998-12-16 入出力制御装置 Pending JP2000181856A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10357257A JP2000181856A (ja) 1998-12-16 1998-12-16 入出力制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10357257A JP2000181856A (ja) 1998-12-16 1998-12-16 入出力制御装置

Publications (1)

Publication Number Publication Date
JP2000181856A true JP2000181856A (ja) 2000-06-30

Family

ID=18453201

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10357257A Pending JP2000181856A (ja) 1998-12-16 1998-12-16 入出力制御装置

Country Status (1)

Country Link
JP (1) JP2000181856A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9921983B2 (en) 2013-10-29 2018-03-20 Socionext Inc. Direct memory access controller, control method thereof, and information processing system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9921983B2 (en) 2013-10-29 2018-03-20 Socionext Inc. Direct memory access controller, control method thereof, and information processing system

Similar Documents

Publication Publication Date Title
EP0230664B1 (en) Master slave microprocessor system with virtual memory
US7640375B2 (en) DMA controller, method, information processing system, and program for transferring information blocks comprising data and descriptors
JPH01277928A (ja) 印刷装置
US20060190637A1 (en) Control apparatus, information processing apparatus, and data transferring method
US6907480B2 (en) Data processing apparatus and data input/output apparatus and data input/output method
US9473273B2 (en) Memory system capable of increasing data transfer efficiency
JPH07225727A (ja) 計算機システム
US6366877B1 (en) Method and device for emulation of peripheral input/output (I/O) controller of a computer system
JPS6131485B2 (ja)
US6484218B1 (en) Method for improving direct memory access performance
US7702820B2 (en) Hardware accelerator and data transmission system and method using the same
JP2000181856A (ja) 入出力制御装置
CN208077160U (zh) 基于spi模式的sd卡驱动器
EP0169909B1 (en) Auxiliary memory device
US7921238B2 (en) USB host system and method for transferring transfer data
JP2004288147A (ja) シリアルメモリに対するxipシステム及びその方法
US6418491B1 (en) Apparatus and method for controlling timing of transfer requests within a data processing apparatus
JP2000155738A (ja) データ処理装置
JP3110024B2 (ja) メモリ制御システム
JPH11252150A (ja) ネットワーク接続装置、及びネットワーク接続制御方法
JP2835487B2 (ja) プリンタバッファ
JP2524620B2 (ja) 入出力制御方法
JP2001306335A (ja) コンピュータ
JP2573790B2 (ja) 転送制御装置
JPH09305536A (ja) バス転送方法及びそのための情報処理装置