JPH05265942A - Dma制御部におけるデータ入出力方法 - Google Patents

Dma制御部におけるデータ入出力方法

Info

Publication number
JPH05265942A
JPH05265942A JP6543392A JP6543392A JPH05265942A JP H05265942 A JPH05265942 A JP H05265942A JP 6543392 A JP6543392 A JP 6543392A JP 6543392 A JP6543392 A JP 6543392A JP H05265942 A JPH05265942 A JP H05265942A
Authority
JP
Japan
Prior art keywords
input
data
central processing
control unit
management table
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
JP6543392A
Other languages
English (en)
Other versions
JP3517884B2 (ja
Inventor
Toshiyuki Shimizu
俊幸 清水
Hiroaki Ishihata
宏明 石畑
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP06543392A priority Critical patent/JP3517884B2/ja
Publication of JPH05265942A publication Critical patent/JPH05265942A/ja
Application granted granted Critical
Publication of JP3517884B2 publication Critical patent/JP3517884B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

(57)【要約】 【目的】 本発明は、計算機のDMA 制御部におけるデー
タ入出力方法に関し、データの入出力の途中でも、副作
用の生じない部分のデータにアクセスする。 【構成】 中央処理装置(CPU) と, 主記憶装置(MSU)
と、入出力装置(I/O) と、該主記憶装置(MSU) と入出力
装置(I/O) との間でのデータ転送を行うDMA 制御部とか
らなり、アドレス変換バッファ(TLB) によりメモリ管理
を行い、データの入出力を行う計算機システムで、該DM
A 制御部が管理する入力バッファ, 及び、出力バッファ
の状態を保持するメモリ管理テーブルを、例えば、上記
アドレス変換バッファ(TLB) のレジスタと対応させて構
成し、該メモリ管理テーブルの「データ長(Len) 」部を
データ転送量に応じて制御し、該入力バッファに入出力
装置(I/O) からデータを読み込み中において、該読み込
み済みの部分のデータを, 或いは、出力バッファのデー
タを入出力装置(I/O) に書き出し途中において、該書き
出し済みの部分に、該中央処理装置(CPU) がアクセスす
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、計算機システムのDMA
制御部におけるデータ入出力方法に関する。最近の、計
算機システムの性能向上に対する要求に伴い、入出力処
理が効率良く行われる必要がある。
【0002】然して、最近の計算機システムに接続され
る入出力装置(I/O) の数の増大に伴い、中央処理装置(C
PU) からの主記憶装置(MSU) に対するアクセスと、該入
出力装置(I/0) からの主記憶装置(MSU) に対するアクセ
スとが競合することが多くなる動向にある。
【0003】特に、ディスク装置, メッセージ通信とい
った低速の入出力処理が存在する場合には、該高速の中
央処理装置(CPU) の主記憶装置(MSU) に対するアクセス
と競合し、該中央処理装置(CPU) の演算性能に影響を与
えることが多い。
【0004】このようなことから、中央処理装置(CPU)
と主記憶装置(MSU) と、入出力装置(I/O) が共通に使用
しているデータバスでの、上記入出力装置(I/O) と主記
憶装置(MSU) との間のデータ転送で生じる空き時間を有
効に利用するデータ入出力方法が要求される。
【0005】
【従来の技術】図6は、従来のダイレクト・メモリ・ア
クセス (以下、DMA という) 制御部の動作を説明する図
であり、(a) は計算機システムの構成例を示し、(b1),
(b2) はDMA によるデータ転送時の通常のアクセス可能
な範囲を示し、(c) は従来のDMAによるデータ転送時の
問題点を示している。
【0006】図6(a) に示したような、中央処理装置(C
PU) 1 と、主記憶装置(MSU) 2 と、入出力装置(I/O) 3
と、該主記憶装置(MSU) 2 と入出力装置(I/O) 3 との間
のデータ転送を制御するDMA 制御部(DMAC 、以下省略)
4 とからなり、それぞれの装置が、内部バス 6で接続さ
れており、上記中央処理装置(CPU) 1 内のアドレス変換
バッファ(TLB) 10によりメモリ管理を行い、データの入
出力を行うデータ処理システムにおいては、該DMA 制御
部 4は、中央処理装置(CPU) 1 から、主記憶装置(MSU)
2 上のデータ転送開始アドレス, カレントアドレス, 転
送バイト数を受信して、所定のレジスタに設定した後、
該中央処理装置(CPU) 1 からの起動指示に基づいて、
主記憶装置(MSU) 2 と入出力装置(I/0) との間で、上記
内部バス6を介して自律的にデータ転送を行う。
【0007】この場合、図6(b1),(b2) に示したよう
に、入出力装置(I/O) 3 から主記憶装置(MSU) 2 へのデ
ータの読み込みが完了するまで、該主記憶装置(MSU) 2
の該データの読み込まれた領域のデータをリードするこ
とはできない。
【0008】又、主記憶装置(MSU) 2 から入出力装置(I
/O) 3 へのデータの書き出しが完了する迄、該書き出し
領域に対して、中央処理装置(CPU) 1 から新たな書き込
みを行うことはできない。
【0009】
【発明が解決しようとする課題】従って、主記憶装置(M
SU) 2 と入出力装置(I/O) 3 との間で、該DMA によるデ
ータ転送が行われている間において、例えば、該入出力
装置(I/0) 3 が低速の入出力装置であって、内部バス 6
上でのデータ転送が、図6(c) に示したように、空き期
間を持っている場合、例えば、転送データCに対してア
クセスしようとしても、該転送データCが未だ、主記憶
装置(MSU) 2 に対して読み込み, 或いは、書き出しが行
われていることが認識できないので、中央処理装置(CP
U) 1 は、該一連のデータ転送が完了するまで、該主記
憶装置(MSU) 2 の、該データ転送領域に対して、アクセ
ス (リード, ライト) ができず、該中央処理装置(CPU)
1 の演算性能を妨げてしまうという問題があった。
【0010】本発明は上記従来の欠点に鑑み、中央処理
装置(CPU) と, 主記憶装置(MSU) と、入出力装置(I/O)
と、該主記憶装置(MSU) と入出力装置(I/O) との間での
データ転送を行うDMA 制御部とからなり、アドレス変換
バッファ(TLB) によりメモリ管理を行い、データの入出
力を行う計算機システムにおいて、該DMA 制御部におい
て、データの入出力の途中でも、副作用の生じない主記
憶装置(MSU) の部分のデータにアクセスすることができ
るDMA 制御部におけるデータ入出力方法を提供すること
を目的とするものである。
【0011】
【課題を解決するための手段】図1〜図3は、本発明の
原理説明図であり、図1,図2の(a1),(a2) はデータの
読み込みの場合を示し、(b1),(b2) はデータの書き出し
の場合を示し、(a1),(b1) はメモリ管理テーブルと、主
記憶装置(MSU) との関係を示し、(a2),(b2) は動作タイ
ムチャートを示しており、図3(a) はアドレス変換の原
理を示し、図3(b) はアドレス変換バッファ(TLB) の概
念を示している。上記の問題点は下記のように構成した
DMA 制御部におけるデータ入出力回路によって解決され
る。
【0012】(1) 中央処理装置(CPU) 1 と、主記憶装置
(MSU) 2 と、入出力装置(I/O) 3 と、該主記憶装置(MS
U) 2 と入出力装置(I/O) 3 との間のデータ転送を制御
するDMA 制御部とからなり、上記中央処理装置(CPU) 1
内のアドレス変換バッファ(TLB) 10によりメモリ管理を
行い、データの入出力を行うデータ処理システムにおい
て、該DMA 制御部 4の入力バッファ 40 の状態を保持す
るのに、上記アドレス変換バッファ(TLB) 10の「データ
長(Len) 」部に対応するメモリ管理テーブル 5を設け
て、該DMA 制御部 4でのデータ転送に応じて、該メモリ
管理テーブル 5の内容を更新し、該DMA 制御部 4でのデ
ータ転送中において、該更新された上記メモリ管理テー
ブル 5の内容が指示する、上記入出力装置(I/0) 3 か
ら、上記主記憶装置(MSU)2 に読み込み済みの領域に対
して、上記中央処理装置(CPU) 1 がアクセスするように
構成する。
【0013】(2) 中央処理装置(CPU) 1 と、主記憶装置
(MSU) 2 と、入出力装置(I/O) 3 と、該主記憶装置(MS
U) 2 と入出力装置(I/O) 3 との間のデータ転送を制御
するDMA 制御部 4とからなり、上記中央処理装置(CPU)
1 内のアドレス変換バッファ(TLB) 10によりメモリ管理
を行い、データの入出力を行うデータ処理システムにお
いて、該DMA 制御部 4の入力バッファ 40 の状態を保持
するのに、該DMA 制御部 4内に、上記アドレス変換バッ
ファ(TLB) 10と同じ構成のメモリ管理テーブル 42 を設
け、該DMA 制御部 4でのデータ転送に応じて、該メモリ
管理テーブル 42 の内容を更新し、該DMA 制御部 4での
データ転送中において、該更新された上記メモリ管理テ
ーブル 42 の内容が指示する、上記入出力装置(I/0) 3
から、上記主記憶装置(MSU) 2 に読み込み済みの領域
に対して、上記中央処理装置(CPU) 1 がアクセスするよ
うに構成する。
【0014】(3) 上記のデータ処理システムにおいて、
該DMA 制御部 4でのデータ転送中において、該更新され
た上記メモリ管理テーブル 42 の内容が指示する、上記
入出力装置(I/0) 3 から、上記主記憶装置(MSU) 2 に読
み込みが行われていない領域に対する、上記中央処理装
置(CPU) 1 からのアクセスを検出する手段 43 を設け
て、該検出手段が、該中央処理装置(CPU) 1 からのアク
セスが、上記入出力装置(I/0) 3 から、上記主記憶装置
(MSU) 2 に読み込みが行われていない領域に対するアク
セスであることを検出 (トラップの発生) したとき、該
中央処理装置(CPU)1 からのアクセスを所定の時間(T)
ホールドするように構成する。
【0015】(4) 中央処理装置(CPU) 1 と、主記憶装置
(MSU) 2 と、入出力装置(I/O) 3 と、該主記憶装置(MS
U) 2 と入出力装置(I/O) 3 との間のデータ転送を制御
するDMA 制御部 4とからなり、上記中央処理装置(CPU)
1 内のアドレス変換バッファ(TLB) 10によりメモリ管理
を行い、データの入出力を行うデータ処理システムにお
いて、該DMA 制御部 4の出力バッファ 41 の状態を保持
するのに、上記アドレス変換バッファ(TLB) 10の「デー
タ長(Len) 」部に対応するメモリ管理テーブル 5を設け
て、該DMA 制御部 4でのデータ転送に応じて、該メモリ
管理テーブル 5の内容を更新し、該DMA 制御部 4でのデ
ータ転送中において、該更新された上記メモリ管理テー
ブル 5の内容が指示する、上記主記憶装置(MSU) 2 か
ら、上記入出力装置(I/0)3 への、書き出し済みの領域
に対して、上記中央処理装置(CPU) 1 が書き込むよう
に構成する。
【0016】(5) 中央処理装置(CPU) 1 と、主記憶装置
(MSU) 2 と、入出力装置(I/O) 3 と、該主記憶装置(MS
U) 2 と入出力装置(I/O) 3 との間のデータ転送を制御
するDMA 制御部 4とからなり、上記中央処理装置(CPU)
1 内のアドレス変換バッファ(TLB) 10によりメモリ管理
を行い、データの入出力を行うデータ処理システムにお
いて、該DMA 制御部 4の出力バッファ 41 の状態を保持
するのに、該DMA 制御部 4内に、上記アドレス変換バッ
ファ(TLB) 10と同じ構成のメモリ管理テーブル 42 を設
け、該DMA 制御部 4でのデータ転送に応じて、該メモリ
管理テーブル 42 の内容を更新し、該DMA 制御部 4での
データ転送中において、該更新された上記メモリ管理テ
ーブル 42 の内容が指示する、上記主記憶装置(MSU) 2
から、上記入出力装置(I/0)(3)への書き出し済みの領域
に対して、上記中央処理装置(CPU) 1 が書き込みを行
うように構成する。
【0017】(6) 上記のデータ処理システムにおいて、
該DMA 制御部 4でのデータ転送中において、該更新され
た上記メモリ管理テーブル 42 の内容が指示する、上記
主記憶装置(MSU) 2 から、上記入出力装置(I/0) 3 への
書き出しが行われていない領域に対して、上記中央処理
装置(CPU) 1 からのアクセスを検出する手段 43 を設け
て、該検出手段 43 が、該中央処理装置(CPU) 1 からの
アクセスが、上記主記憶装置(MSU) 2 から、上記入出力
装置(I/0) 3 への書き出しが行われていない領域に対す
るアクセスであることを検出 (トラップの発生) したと
き、該中央処理装置(CPU) 1 からのアクセスを所定の時
間(T) ホールドするように構成する。
【0018】
【作用】図3(b) に示したアドレス変換バッファ(TLB)
10は、図3(a) に示したように、仮想メモリアドレス空
間の膨大な論理アドレス空間のブロックを指示する論理
アドレスを、実際の主記憶装置(MSU) 2 の物理アドレス
に変換するもので、図示されていない動的アドレス変換
機構(DAT) で得た論理アドレス−物理アドレスの対情報
が格納されている。
【0019】ここで、「Base」は、ヒットした論理アド
レス(上位)に対応する物理アドレスを格納しているベ
ースレジスタを示し、該ベースレジスタの中に、該論理
アドレス (上位) に対応する物理アドレス (上位) が格
納されている。「r,e,w 」等は、アクセスの正当性を示
す「アトリビュート」を示し、「Len 」は、当該論理ア
ドレスブロックの主記憶装置(MSU) 2 上での語方向のデ
ータ長を示している。
【0020】通常、メモリアドレスは、上記アドレス変
換バッファ(TLB) 10の、上記ベースレジスタ「Base」と
「r,e,w 」と「Len 」とで管理されており、これは、セ
グメント方法として知られているものである。
【0021】本発明は、上記アドレス変換バッファ(TL
B) 10の「Len 」に対するレジスタ「Len 」, 又は、該
「Len 」に代わる「Cnt 」を、データの入出力に同期し
て更新することにより、実際に、読み込んだ, 或いは、
書き出した (不要になった) データの領域を認識するこ
とができることに着目し、中央処理装置(CPU) 1 から、
主記憶装置(MSU) 2 にアクセスがあったとき、該「Bas
e」が示すメモリ空間の先頭アドレスと、該「Len 」が
示す領域内にあるとき、該中央処理装置(CPU) 1 からの
アクセスを許可し、該領域外にあることを検出したとき
には、トラップを発生させて、該アクセスを抑止した
り、一定時間アクセスをホールドして、該アクセス領域
が、上記転送領域内に入ったとき、該中央処理装置(CP
U) からのアクセスを許可するように動作させるもので
ある。
【0022】以下、図1により、本発明のDMA 制御部に
おけるデータ入出力回路の動作,作用を、より具体的に
説明する。図1(a1),(a2) は、入出力装置(I/O) 3 から
主記憶装置(MSU) 2 へのデータの読み込み時の動作を示
しているが、本発明においては、DMA 制御部 4内に、上
記アドレス変換バッファ(TLB) 10と同じ構成のメモリ管
理テーブル 42 を設け、主記憶装置(MSU) 2 上の転送開
始アドレスを、該メモリ管理テーブル 42 の「Base」欄
に設定した後、「Len 」欄を“0”として、該DMA 制御
部 4を起動する。
【0023】該DMA 制御部 4は、データ転送がある毎
に、該「Len 」欄を「+1」して、中央処理装置(CPU)
1 からのリードアクセス可能な領域 (斜線で示す) を増
加させる。この機構により、中央処理装置(CPU) 1 は、
該主記憶装置(MSU) 2 の該当の領域に対して、全てのデ
ータが入出力装置(I/O) 3 から到着するまで待つことな
く、アクセスすることができる。{図1(a2)の動作タイ
ムチャート参照} 主記憶装置(MSU) 2 から入出力装置(I/O) 3 へのデータ
の書き出し時には、該書き出すデータが変更されては困
るので、一般には、システムバッファにコピーしてから
(但し、該転送領域を書き込み禁止にしてコピーしない
方法も提案されている) 、該DMA 制御部 4を起動する。
【0024】そして、本発明の場合、図2(b1),(b2) に
示したように、該主記憶装置(MSU)2 から入出力装置(I/
O) 3 へのデータの書き出しの終了した部分 (斜線で示
す)について、データ転送中であっても、中央処理装置
(CPU) 1 からのデータの書き込みを許可するように動作
させるため、従来方法のように、コピーの必要がなくな
り、待ち時間が少なくなる。{図2(b2)の動作タイムチ
ャート参照} このように、本発明のDMA 制御部におけるデータ入出力
回路を用いたデータ転送方法においては、該DMA 制御部
でのデータ転送中においても、副作用の生じない部分デ
ータに対して、中央処理装置(CPU) からアクセスが可能
になるため、データ書き出し時のコピー時間が削減で
き、計算機システムの性能が向上する効果がある。
【0025】
【実施例】以下本発明の実施例を図面によって詳述す
る。前述の図1〜図3は、本発明の原理説明図であり、
図4,図5は、本発明の一実施例を示した図であって、
図4は、メモリ管理テーブルを、DMA 制御部外に設けた
場合を示しており、図5は、該メモリ管理テーブルを、
DMA 制御部内に設けた場合を示している。
【0026】本発明においては、中央処理装置(CPU) 1
と、主記憶装置(MSU) 2 と、入出力装置(I/O) 3 と、該
主記憶装置(MSU) 2 と入出力装置(I/O) 3 との間のデー
タ転送を制御するDMA 制御部 4とからなり、上記中央処
理装置(CPU) 1 内のアドレス変換バッファ(TLB) 10によ
りメモリ管理を行い、データの入出力を行うデータ処理
システムにおいて、該DMA 制御部 4の入力バッファ 40,
又は、出力バッファ 41 の状態を保持するのに、例え
ば、該DMA 制御部 4内に、上記アドレス変換バッファ(T
LB) 10と同じ構成のメモリ管理テーブル 42 を設け、
(図5参照)該DMA制御部 4でのデータ転送に応じて、
該メモリ管理テーブル 42 の内容を更新し、該DMA 制御
部 4でのデータ転送中において、該更新された上記メモ
リ管理テーブル 42 の内容が指示する、上記入出力装置
(I/0) 3 から、上記主記憶装置(MSU)2 に読み込み済み
の領域, 又は、該主記憶装置(MSU) 2 からの書き出し
済みの領域に対して、上記中央処理装置(CPU) 1 がア
クセス (リード, 或いは、ライト) する手段が、本発明
を実施するのに必要な手段である。尚、全図を通して同
じ符号は同じ対象物を示している。
【0027】以下、図1〜図3を参照しながら、図4,
図5によって、本発明のDMA 制御部におけるデータ入出
力回路の構成と動作を説明する。図4,図5は、アドレ
ス変換バッファ(TLB) 10と、DMA 制御部 4との相互関係
を示しており、図4は、該DMA 制御部 4が管理する入力
バッファ 40,又は、出力バッファ 41 の状態を保持する
メモリ管理テーブル 5を、該DMA 制御部 4の外、例え
ば、中央処理装置(CPU) 1 に設けた例として、その「Le
n 」部のみを「Cnt」として、チャネル対応に設けた例
を示しており、図5は、該メモリ管理テーブル 42 を、
DMA 制御部 4内に、上記アドレス変換バッファ(TLB) 10
と同じ構成で設けた例を示している。
【0028】先ず、図4の例では、中央処理装置(CPU)
1 が、これから、DMA 制御部 4を起動してデータ転送を
行うチャネルに対応して設けられている、上記アドレス
変換バッファ(TLB) 10の「Len 」部に対応したメモリ管
理テーブル 5のカウンタ「Cnt 」をリセットした後、該
DMA 制御部 4に、該DMA によりデータ転送を行うのに必
要な制御情報 (転送開始アドレス, 転送量等) を送出
し、該制御情報が、該DMA 制御部 4の所定の制御レジス
タに設定された時点で、該DMA 制御部 4を起動する。
【0029】該起動されたDMA 制御部 4が、主記憶装置
(MSU) 2 と入出力装置(I/O) 3 との間で、自律的なデー
タ転送を行う毎に、上記中央処理装置(CPU) 1 内の上記
チャネル対応に設けられているカウンタ「Cnt 」をカウ
ントアップする。
【0030】該DMA 制御部 4でのデータ転送中におい
て、該中央処理装置(CPU) 1 から主記憶装置(MSU) 2 に
対するアクセス命令 (リード, 又は、ライト) が発行さ
れると、該アクセスアドレス (論理アドレス) の上位ア
ドレスが、アドレス変換バッファ(TLB) 10の「Addr」部
と一致するかどうかが調べられ、一致する (即ち、ヒッ
トする) と、物理アドレスに変換された後、該論理アド
レスの下位アドレスと加算されて、該アクセスすべき物
理アドレスが生成されると共に、その下位アドレスが、
上記カウンタ「Cnt 」と比較され、データ転送済みの領
域, 又は、内であることが、検出手段 (領域チェッ
ク) 43で検出されると、該アクセス命令による主記憶装
置(MSU) 2 に対するアクセスが行われるが、該比較にお
いて、データ転送済みの領域外であることが、該検出手
段 43 で検出され、所謂、通常のアクセス例外とは異な
るトラップが発生すると、該メモリアクセスは、一旦中
央処理装置(CPU) 1 内で保持され、例えば、後述するよ
うに、他のプログラムの実行に遷移させる。
【0031】そして、該アクセスアドレスがデータ転送
済みの領域, 又は、内にあることが検出された時点
で、該当のアクセス命令を含むプログラムに戻り、該領
域に対するアクセス命令の実行が行われる。
【0032】このとき、アドレス変換バッファ(TLB) 10
のアトリビュート (リード不可, ライト可能, 〜等に対
するアクセスの正常性) も同時に調べられ、該アクセス
の正当性の確認が行われる。
【0033】次に、図5は、該DMA 制御部 4でのデータ
転送時の入力バッファ 40,又は、出力バッファ 41 の状
態を保持するメモリ管理テーブル 42 を、該DMA 制御部
4内に設け、且つ、上記アクセス変換バッファ(TLB) 10
と同じ構成とし、該「Len 」部には、データ転送のバイ
ト数をカウントする機能を持たせる。
【0034】ここで、上記DMA 制御部 4内の、上記メモ
リ管理テーブル 42 の、上記カウント機能を持っている
「Len 」部を“0”とした後、所定の制御情報を送出
し、該DMA 制御部 4内の所定の制御レジスタに設定され
た時点で、該DMA 制御部 4を起動する。
【0035】該DMA 制御部 4では、データ転送が行われ
る毎に、該「Len 」部をカウントアップする。一方、該
DMA 制御部 4でのデータ転送中において、該中央処理装
置(CPU) 1 から主記憶装置(MSU) 2 に対するアクセス命
令 (リード, 又は、ライト) が発行されると、中央処理
装置(CPU) 1 では、該アクセス命令の指示するアクセス
アドレス (論理アドレス) の上位アドレスが、該アクセ
ス変換バッファ(TLB) 10の「Addr」部と一致するかどう
かが調べられ、一致する (即ち、ヒット) と、該論理ア
ドレス (上位) が物理アドレスに変換され、該論理アド
レスの下位アドレスと加算されて、該アクセスすべき物
理アドレスが生成されると共に、当該DMA 制御部4内
の、上記メモリ管理テーブル 42 の「Len 」部を調べ、
該アクセス命令が指示する論理アドレスの下位アドレス
が、該DMA 制御部 4内の、上記「Len 」部が指示する領
域を越えていないかどうかかが調べられ、該領域, 又
は、内にあることが、検出手段 (領域チェック) 43で
検出された場合には、該DMA 制御部 4がデータ転送中で
あっても、主記憶装置(MSU) 2 に対して、該アクセス命
令が実行されるが、該アクセス命令が指示するアドレス
が、上記領域, 又は、の外であることが、該検出手
段 43 で検出 (即ち、トラップの発生) されると、通常
のアクセス例外とは別の例外を発生させ、該アクセス命
令の実行を一時保持して、他の処理、例えば、他のプロ
グラムに遷移させる。
【0036】そして、該DMA 制御部 4でのデータ転送が
進んで、上記アクセス命令が指示するアドレスが、該読
み込み済み, 或いは、書き出し済みの領域, 又は、
内に入ったことが検出されると、該保持されていたアク
セス命令のプログラムに遷移させて、該保持されている
アクセス命令を実行するように動作させる。
【0037】このとき、前述のように、アドレス変換バ
ッファ(TLB) 10のアトリビュート (リード不可, ライト
可能, 〜等に対するアクセスの正常性) も同時に調べら
れ、該アクセスの正当性の確認が行われる。
【0038】このように、本発明によるアドレス変換バ
ッファ(TLB) を用いたデータ入出力方法は、中央処理装
置(CPU) と, 主記憶装置(MSU) と、入出力装置(I/O)
と、該主記憶装置(MSU) と入出力装置(I/O) との間での
データ転送を行うDMA 制御部とからなり、アドレス変換
バッファ(TLB) によりメモリ管理を行い、データの入出
力を行う計算機システムにおいて、該DMA 制御部内が管
理する入力バッファ, 及び、出力バッファの状態を保持
するメモリ管理テーブルを、例えば、上記アドレス変換
バッファ(TLB) のレジスタと対応させて構成し、該メモ
リ管理テーブルの「データ長(Len) 」部をデータ転送量
に応じて制御し、該入力バッファに入出力装置(I/O) か
らデータを読み込み中において、該読み込み済みの部分
のデータを中央処理装置(CPU) がリードするか、出力バ
ッファのデータを入出力装置(I/O)に書き出し途中にお
いて、該書き出し済みの部分に、該中央処理装置(CPU)
がライトするようにした所に特徴がある。
【0039】
【発明の効果】以上、詳細に説明したように、本発明の
アドレス変換バッファ(TLB) を用いたデータ入出力回路
は、中央処理装置(CPU) と, 主記憶装置(MSU) と、入出
力装置(I/O) と、該主記憶装置(MSU) と入出力装置(I/
O) との間でのデータ転送を行うDMA 制御部とからな
り、アドレス変換バッファ(TLB) によりメモリ管理を行
い、データの入出力を行う計算機システムにおいて、該
DMA 制御部が管理する入力バッファ, 及び、出力バッフ
ァの状態を保持するメモリ管理テーブルを、例えば、上
記アドレス変換バッファ(TLB) のレジスタと対応させて
構成し、該メモリ管理テーブルの「データ長(Len) 」部
をデータ転送量に応じて制御し、該入力バッファに入出
力装置(I/O) からデータを読み込み中において、該読み
込み済みの部分のデータを中央処理装置(CPU) がリード
するか、出力バッファのデータを入出力装置(I/O) に書
き出し途中において、該書き出し済みの部分に、該中央
処理装置(CPU) がライトするようにしたものであるの
で、DMA 制御部においてデータ転送中においても、副作
用の生じない部分データに対して、中央処理装置(CPU)
からのアクセスが可能となり、データの書き出し時に
は、従来方法で必要であったコピー処理が削減でき、計
算機システムの性能を向上させることができる効果があ
る。
【図面の簡単な説明】
【図1】本発明の原理説明図(その1)
【図2】本発明の原理説明図(その2)
【図3】本発明の原理説明図(その3)
【図4】本発明の一実施例を示した図(その1)
【図5】本発明の一実施例を示した図(その2)
【図6】従来のダイレクト・メモリ・アクセス制御部の
動作を説明する図
【符号の説明】
1 中央処理装置(CPU) 2 主記憶装置
(MSU) 10 アドレス変換バッファ(TLB) 3 入出力装置(I/O) 4 DMA 制御部 40 入力バッファ 41 出力バッフ
ァ 42,5 メモリ管理テーブル 43 検出手段 DMA 制御部への起動信号, 又は、起動指示 読み込み済の領域 書き出し済
の領域

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】中央処理装置(1) と、主記憶装置(2) と、
    入出力装置(3) と、該主記憶装置(2) と入出力装置(3)
    との間のデータ転送を制御するDMA 制御部(4) とからな
    り、上記中央処理装置(1) 内のアドレス変換バッファ(1
    0)によりメモリ管理を行い、データの入出力を行うデー
    タ処理システムにおいて、 該DMA 制御部(4) の入力バッファ(40)の状態を保持する
    のに、上記アドレス変換バッファ(10)のデータ長(Len)
    部に対応するメモリ管理テーブル(5) を設けて、 該DMA 制御部(4) でのデータ転送に応じて、該メモリ管
    理テーブル(5) の内容を更新し、 該DMA 制御部(4) でのデータ転送中において、該更新さ
    れた上記メモリ管理テーブル(5) の内容が指示する、上
    記入出力装置(3) から、上記主記憶装置(2) に読み込み
    済みの領域 () に対して、上記中央処理装置(1) がア
    クセスすることを特徴とするDMA 制御部におけるデータ
    入出力方法。
  2. 【請求項2】中央処理装置(1) と、主記憶装置(2) と、
    入出力装置(3) と、該主記憶装置(2) と入出力装置(3)
    との間のデータ転送を制御するDMA 制御部とからなり、
    上記中央処理装置(1) 内のアドレス変換バッファ(10)に
    よりメモリ管理を行い、データの入出力を行うデータ処
    理システムにおいて、 該DMA 制御部(4) の入力バッファ(40)の状態を保持する
    のに、該DMA 制御部(4) 内に、上記アドレス変換バッフ
    ァ(10)と同じ構成のメモリ管理テーブル(42)を設け、 該DMA 制御部(4) でのデータ転送に応じて、該メモリ管
    理テーブル(42)の内容を更新し、 該DMA 制御部(4) でのデータ転送中において、該更新さ
    れた上記メモリ管理テーブル(42)の内容が指示する、上
    記入出力装置(3) から、上記主記憶装置(2) に読み込み
    済みの領域 () に対して、上記中央処理装置(1) がア
    クセスすることを特徴とするDMA 制御部におけるデータ
    入出力方法。
  3. 【請求項3】上記のデータ処理システムにおいて、該DM
    A 制御部(4) でのデータ転送中において、該更新された
    上記メモリ管理テーブル(42)の内容が指示する、上記入
    出力装置(3) から、上記主記憶装置(2) に読み込みが行
    われていない領域に対して、上記中央処理装置(1) から
    のアクセスを検出する手段(43)を設けて、 該検出手段が、該中央処理装置(1) からのアクセスが、
    上記入出力装置(3) から、上記主記憶装置(2) に読み込
    みが行われていない領域に対するアクセスであることを
    検出したとき、該中央処理装置(1) からのアクセスを所
    定の時間(T) ホールドすることを特徴とするDMA 制御部
    におけるデータ入出力方法。
  4. 【請求項4】中央処理装置(1) と、主記憶装置(2) と、
    入出力装置(3) と、該主記憶装置(2) と入出力装置(3)
    との間のデータ転送を制御するDMA 制御部とからなり、
    上記中央処理装置(1) 内のアドレス変換バッファ(10)に
    よりメモリ管理を行い、データの入出力を行うデータ処
    理システムにおいて、 該DMA 制御部(4) の出力バッファ(41)の状態を保持する
    のに、上記アドレス変換バッファ(10)のデータ長(Len)
    部に対応するメモリ管理テーブル(5) を設けて、 該DMA 制御部(4) でのデータ転送に応じて、該メモリ管
    理テーブル(5) の内容を更新し、 該DMA 制御部(4) でのデータ転送中において、該更新さ
    れた上記メモリ管理テーブル(5) の内容が指示する、上
    記主記憶装置(2) から、上記入出力装置(3) への、書き
    出し済みの領域 () に対して、上記中央処理装置(1)
    がアクセスすることを特徴とするDMA 制御部におけるデ
    ータ入出力方法。
  5. 【請求項5】中央処理装置(1) と、主記憶装置(2) と、
    入出力装置(3) と、該主記憶装置(2) と入出力装置(3)
    との間のデータ転送を制御するDMA 制御部とからなり、
    上記中央処理装置(1) 内のアドレス変換バッファ(10)に
    よりメモリ管理を行い、データの入出力を行うデータ処
    理システムにおいて、 該DMA 制御部(4) の出力バッファ(41)の状態を保持する
    のに、該DMA 制御部(4) 内に、上記アドレス変換バッフ
    ァ(10)と同じ構成のメモリ管理テーブル(42)を設け、 該DMA 制御部(4) でのデータ転送に応じて、該メモリ管
    理テーブル(42)の内容を更新し、 該DMA 制御部(4) でのデータ転送中において、該更新さ
    れた上記メモリ管理テーブル(42)の内容が指示する、上
    記主記憶装置(2) から、上記入出力装置(3) への書き出
    し済みの領域 () に対して、上記中央処理装置(1) が
    アクセスすることを特徴とするDMA 制御部におけるデー
    タ入出力方法。
  6. 【請求項6】上記のデータ処理システムにおいて、該DM
    A 制御部(4) でのデータ転送中において、該更新された
    上記メモリ管理テーブル(42)の内容が指示する、上記主
    記憶装置(2) から、上記入出力装置(3) への書き出しが
    行われていない領域に対する、上記中央処理装置(1) か
    らのアクセスを検出する手段(42)を設けて、 該検出手段(43)が、該中央処理装置(1) からのアクセス
    が、上記主記憶装置(2) から、上記入出力装置(3) への
    書き出しが行われていない領域に対するアクセスである
    ことを検出したとき、該中央処理装置(1) からのアクセ
    スを所定の時間(T) ホールドすることを特徴とするDMA
    制御部におけるデータ入出力方法。
JP06543392A 1992-03-24 1992-03-24 データ処理装置 Expired - Fee Related JP3517884B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP06543392A JP3517884B2 (ja) 1992-03-24 1992-03-24 データ処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP06543392A JP3517884B2 (ja) 1992-03-24 1992-03-24 データ処理装置

Publications (2)

Publication Number Publication Date
JPH05265942A true JPH05265942A (ja) 1993-10-15
JP3517884B2 JP3517884B2 (ja) 2004-04-12

Family

ID=13286976

Family Applications (1)

Application Number Title Priority Date Filing Date
JP06543392A Expired - Fee Related JP3517884B2 (ja) 1992-03-24 1992-03-24 データ処理装置

Country Status (1)

Country Link
JP (1) JP3517884B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100468408B1 (ko) * 1996-07-09 2005-06-16 아드밴스트 마이크로 디이바이시스 인코포레이티드 직접메모리엑세스동작을위해출력주변장치를프리챠징하는방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100468408B1 (ko) * 1996-07-09 2005-06-16 아드밴스트 마이크로 디이바이시스 인코포레이티드 직접메모리엑세스동작을위해출력주변장치를프리챠징하는방법

Also Published As

Publication number Publication date
JP3517884B2 (ja) 2004-04-12

Similar Documents

Publication Publication Date Title
JP3181515B2 (ja) データ転送方法及びその方法を用いたデータ転送装置
US4985826A (en) Method and device to execute two instruction sequences in an order determined in advance
JPS6319058A (ja) メモリ装置
JPH05265942A (ja) Dma制御部におけるデータ入出力方法
US4628450A (en) Data processing system having a local memory which does not use a directory device with distributed resident programs and a method therefor
JP3130798B2 (ja) バス転送装置
JPH0447350A (ja) 主記憶読み出し応答制御方式
JPH07146814A (ja) メモリ装置
JP2679440B2 (ja) 情報処理装置
JP3217348B2 (ja) 情報処理システム
JPH11338712A (ja) 割込順序保存回路
JPS6391756A (ja) 記憶装置の部分書き込み命令処理方式
JP2604604B2 (ja) スタック制御装置
JPS6125168B2 (ja)
JP3299147B2 (ja) キャッシュ制御回路
JP2759952B2 (ja) キャッシュメモリ
JPH0795288B2 (ja) マイクロコンピュータ
JP2735400B2 (ja) 非同期入出力制御方式
JPS63155346A (ja) Ramチエツク方式
JPH0391055A (ja) ハードウエアロックのセット方法、ハードウエアロック制御装置、ハードウエアロックの検出方法と装置
JPH04372032A (ja) キャッシュメモリシステム
JP2000099396A (ja) 情報処理装置
JPH09190405A (ja) 割り込み制御装置
JPH0479022B2 (ja)
JPH0667982A (ja) アドレス変換方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040106

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040119

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

Year of fee payment: 4

Free format text: PAYMENT UNTIL: 20080206

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

Free format text: PAYMENT UNTIL: 20090206

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090206

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100206

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110206

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees