JPH10222456A - データ転送装置 - Google Patents

データ転送装置

Info

Publication number
JPH10222456A
JPH10222456A JP33187397A JP33187397A JPH10222456A JP H10222456 A JPH10222456 A JP H10222456A JP 33187397 A JP33187397 A JP 33187397A JP 33187397 A JP33187397 A JP 33187397A JP H10222456 A JPH10222456 A JP H10222456A
Authority
JP
Japan
Prior art keywords
command
disk
data transfer
data
dma
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
JP33187397A
Other languages
English (en)
Other versions
JP3477056B2 (ja
Inventor
Shinji Furuya
晋二 古屋
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP33187397A priority Critical patent/JP3477056B2/ja
Publication of JPH10222456A publication Critical patent/JPH10222456A/ja
Application granted granted Critical
Publication of JP3477056B2 publication Critical patent/JP3477056B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Abstract

(57)【要約】 【課題】 【解決手段】 プロセッサ4は、メモリのデ−タ転送先
領域の先頭アドレスと転送すべきデ−タサイズとを示す
DMAコマンドが配列されてなるDMAコマンドテーブ
ルを生成する。ディスクアクセス部3は、DMAコマン
ドテーブルに従ってディスク装置とメモリとの間でデー
タ転送を行う。その間プロセッサ4は、デ−タ転送中の
ディスク装置がバス使用権を一時的に解放したことを検
出すると、当該ディスク装置のデータ転送再開用に実行
済みDMAコマンドの削除と新たなDMAコマンドの追
加によりDMAコマンドテーブルを更新する。これによ
りテーブル更新割込みが解消又は低減される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のディスク装
置と主記憶装置との間でのデータ転送を行うデータ転送
装置に関する。
【0002】
【従来の技術】近年、複数のユーザ要求に対応して各ユ
ーザに映像データを配信するビデオオンデマンドシステ
ムやビデオサーバシステムなどが実用化されている。こ
れらのシステムでは、複数のディスク装置からバッファ
用メモリに映像データを高速に転送するデータ転送装置
が用いられている。
【0003】データ転送装置では、ユーザ要求に応じて
定まる映像データを複数のディスク装置から順次読み出
し、その映像データをバッファ用メモリに転送する必要
がある。図20は、従来のビデオサーバに備えられるデ
ータ転送装置の構成を示すブロック図である。このデー
タ転送装置は、ユーザ要求に応じた映像データをディス
ク装置から順次読み出して、配信すべき映像データとし
て主記憶(映像データのバッファ用メモリ)に格納する
ため、磁気ディスク装置22a、22b、22c、ディ
スクアクセス部23、プロセッサ24、主記憶25を有
する。
【0004】磁気ディスク装置22a、22b、22c
は、SCSI(Small Computer System Interface)バス
に接続され、映画などの圧縮された映像データを記憶す
る。各磁気ディスク装置は、読み出し又は書き込みデー
タを一時的に記憶する内部バッファ(ディスクキャッシ
ュ)を有し、バス使用権を獲得したときデータの読み出
し/書き込みを行う。また、各磁気ディスク装置は、デ
ィスコネクト機能及びリコネクト機能とを有する。ディ
スコネクト機能は、ヘッドシークが発生したときや、デ
ータの読み出し/書き込中に内部バッファが空になった
ときに一時的に他のディスク装置にバスを解放する機能
である。各磁気ディスク装置は、ディスコネクト時にデ
ィスクアクセス部23を介してプロセッサ24に割込み
を発生する。またリコネクト機能は、ディスコネクト後
に、内部バッファにデータを蓄積したときに、一時的に
解放していたバスを再度獲得する機能である。
【0005】ディスクアクセス部23は、磁気ディスク
装置22a、22b、22cに対する読み出し及び書き
込みの制御(ディスクアクセス制御)と、磁気ディスク
装置22a、22b、22cの読み出し/書き込みデー
タを主記憶25と各ディスク装置との間でに直接転送す
る制御(DMA(Direct Memory Access)制御)とを行
う。上記ディスクアクセス制御に関して、ディスクアク
セス部23は、プロセッサからの磁気ディスク装置の読
み出し/書き込みコマンド(以下ディスクコマンドと呼
ぶ)を受けて、SCSIバスの解放状態(バスフリーフ
ェーズ)から調停状態(アービトレーションフェーズ)
を経てバス使用権を獲得した場合に、バス占有状態(セ
レクションフェーズ、転送フェーズ)に移ってバスを使
用することができる。
【0006】また上記DMA制御に関して、ディスクア
クセス部23は、プロセッサ24により主記憶25上に
作成されるDMAコマンドテーブルを順次読み出して、
磁気ディスク装置から読み出されたデータを主記憶25
のデータ領域に直接書き込む(DMAチェーンコマンド
方式)。DMAコマンドテーブルの一例を図21に示
す。同図のようにDMAコマンドテーブルは、主記憶2
5の転送先となるデータ領域の先頭アドレスと、データ
領域に転送すべきデータの数(データサイズ)とからな
るDMAコマンドの配列である。1つのDMAコマンド
は、例えばアドレス、データサイズそれぞれ4バイトず
つからなる。通常、DMAコマンドで指定されるデータ
サイズは、主記憶が仮想記憶である場合には、仮想記憶
の1ページ(例えば4kバイト)を超えない範囲で指定
される。したがってビデオサーバのように一度に大量の
映像データ(数百kバイトから数Mバイト)を読み出す
場合には、多数のDMAコマンドを配列したDMAコマ
ンドテーブルが必要になる。また、1つのDMAコマン
ドテーブルも1ページを超えないように作成する必要が
あるため、1つのDMAコマンドテーブルで指定できる
データサイズ限界がある。
【0007】プロセッサ24は、主記憶25に記憶され
たプログラムを実行することにより以下の機能を発揮す
る。すなわちプロセッサ24は、ユーザ要求に応じた映
像データを所定サイズ(例えば1秒間の映像に相当する
サイズ)ずつ各ディスク装置から順次読み出して主記憶
25に格納するために、上記DMAコマンドテーブルの
作成、上記ディスクコマンドの発行、DMA起動指示、
ディスクアクセス部23からの割込み要求の処理などを
行う。プロセッサ24が受ける割込み要求には、主とし
てテーブル更新割込み要求とディスコネクト割込み要求
とがある。
【0008】テーブル更新割込み要求は、データ転送の
途中でDMAコマンドテーブル中に未実行のDMAコマ
ンドが欠乏したときに発生する。つまり、ディスクコマ
ンドで指定したデータサイズがDMAコマンドテーブル
で指定したデータサイズよりも大きい場合に、DMAコ
マンドテーブル末尾のDMAコマンドに従ってデータ転
送を終了したときに発生する。例えば、DMAコマンド
テーブルにおいて512Kバイトの主記憶領域が指定さ
れていて、1Mバイトのデータを読み出すディスクコマ
ンドが実行されている場合、約512Kバイトのデータ
転送がなされた時点で、DMAコマンドテーブルの更新
を要求する割込みが発生する。この割り込み要求に対し
てプロセッサ24は、DMAコマンドテーブルを更新す
る割り込み処理を行う。ディスコネクト割込み要求は、
磁気ディスク装置が上記ディスコネクトをしたときに発
生する。この割り込み要求に対してプロセッサ24は、
後のリコネクトに備えて、状態保存や残りの転送バイト
数の計算等を行いDMAコマンドのアドレス、サイズを
修正する回復処理を行う。
【0009】図22は、SCSIバスの占有タイミング
及びプロセッサ24の割込み処理タイミングの一例を示
す説明図である。
【0010】同図においてバスタイミングを示す時間軸
上で、実線部分は磁気ディスク装置がバス使用権を獲得
している区間を、波線部分はバスが解放されている区間
をそれぞれ示す。「R」はリコネクト又はコネクト(最
初のバス権獲得)のタイミングを、「D」はディスコネ
クトのタイミングをそれぞれ示す。また、割り込み処理
タイミングを示す時間軸上で、「d」はディスコネクト
割り込み処理の区間を、「c」はテーブル更新割込み処
理の区間をそれぞれ示す。同図のように、テーブル更新
割込み処理においてプロセッサ24がDMAコマンドテ
ーブルを更新する間、ディスクアクセス部23は、バス
を解放することなくテーブル更新後にデータ転送を続行
する。また、ディスコネクト割込み処理においてプロセ
ッサ24は上記の回復処理を行う。ディスコネクト割り
込み処理の後、解放されたバスは、他の磁気ディスク装
置からのリコネクト又はプロセッサによるディスクコマ
ンドの発行によりディスク装置に占有されることにな
る。
【0011】図23は、一の磁気ディスク装置がディス
クコマンドを受けて、ディスクコマンドで指定されたサ
イズのデータ転送を終えるまでの状態変化を示す説明図
である。同図のようにディスクアクセス部23は、バス
解放状態においてプロセッサ24からディスクコマンド
が発行される(S41)と、DMAコマンドテーブルを
参照して磁気ディスク装置とメモリとの間でデータ転送
を実行する(S42)。その間DMAコマンドテーブル
中に未実行のDMAコマンドが欠乏する毎に割り込み処
理によりテーブルが更新される。さらにディスク内部バ
ッファが空になった時点でディスコネクトし、ディスク
内部のバッファにデータが蓄積された時点でリコネクト
してデータ転送を再開するという動作を繰り返す(S4
3→S44→S42)。ディスコネクト時には割り込み
処理が発生する。その後ディスクコマンドで指定された
サイズのデータ転送が終了した場合ディスクコマンドの
実行終了(S45)を知らせる割込みが発生する(I4
3)。このようにして1台の磁気ディスク装置への1つ
のディスクコマンドに対するデータ転送がなされる。図
20では3台の磁気ディスク装置22a、22b、22
cに対して順次ディスクコマンドが発行されるので、あ
る磁気ディスク装置がディスコネクトしたときに、他の
磁気ディスク装置がリコネクトすることになる。
【0012】
【発明が解決しようとする課題】ところで上記従来のデ
ータ転送装置によればプロセッサのオーバーヘッドが生
じるためデータ転送のスループットが向上しないという
問題があった。
【0013】オーバーヘッドが生じる理由は、第1に、
テーブル更新割込みとディスコネクト割込みが頻繁に発
生し、それぞれの割込み処理の間データ転送が実質的に
停止してしまうからである。
【0014】第2に、ディスコネクトによりバスが解放
されると、プロセッサは、新たなディスクコマンドを発
行するためにバス使用権獲得処理を繰り返し試みるの
で、プロセッサの次のデータ転送のための処理(DMA
コマンドテーブル作成、ディスクコマンド作成、DMA
起動指示作成など)を進めることができないからであ
る。ここでいうバス使用権獲得処理は、プロセッサがデ
ィスクアクセス部を介してバスの解放状態をチェック
し、調停フェーズを経てバス使用権をディスクアクセス
部23に獲得させる処理である。
【0015】上記の点に鑑み本発明は、バス接続された
複数のディスク装置とメモリとの間でデータ転送するデ
ータ転送装置であって、データ転送のスループットを向
上させたデータ転送装置を提供することを目的とする。
【0016】さらに本発明は、ディスクコマンドの発行
を迅速にするがことができるデータ転送装置提供するこ
とを目的とする。
【0017】
【課題を解決するための手段】上記課題を解決するため
本発明のデータ転送装置は、ダイレクトメモリアクセス
(以下DMAと略す)コマンドテーブルに従って、バス
接続された複数のディスク装置とメモリとの間でDMA
転送するデータ転送装置であって、前記ディスク装置
は、その内部状態に応じてバス使用権を一時的に解放
し、さらに一時的に解放したバス使用権を再獲得し、前
記データ転送装置は、メモリのデ−タ転送先領域の先頭
アドレスと転送すべきデ−タサイズとを示すDMAコマ
ンドが配列されてなるDMAコマンドテーブルを生成す
るテーブル生成手段と、前記DMAコマンドテーブルに
従ってディスク装置とメモリとの間でデータ転送を行う
転送手段と、デ−タ転送中のディスク装置がバス使用権
を一時的に解放したことを検出する一時解放検出手段
と、バス使用権の一時的解放が検出されたとき、当該デ
ィスク装置のデータ転送再開用に実行済みDMAコマン
ドの削除と新たなDMAコマンドの追加によりDMAコ
マンドテーブルを更新するテーブル更新手段とを備えて
いる。この構成によれば、一時解放手段によってバス使
用権の一時的解放が検出されたときに、当該ディスク装
置のデータ転送再開用にコマンドテーブルを更新するの
で、テーブル更新処理の発生を解消又は低減するができ
る。その結果データ転送装置のオーバヘッドを低減して
データ転送のスループットを向上させることができる。
【0018】また、前記データ転送装置は、さらに所定
周期毎に各ディスク装置に対して、一定数までの読み出
し又は書き込みを指示するディスクコマンドを生成する
コマンド生成手段と、コマンド生成手段により生成され
たディスクコマンドをキューにして保持するキュー保持
手段と、一時解放検出手段によりバス使用権の一時的解
放が検出されたとき、キューからディスクコマンドを取
り出してディスク装置に発行するコマンド発行手段とを
備え、前記転送手段は、ディスク装置が発行手段により
ディスクコマンドを発行されたときデータ転送を開始
し、バス使用権を一時解放していたディスク装置がバス
使用権を再獲得したときデータ転送を再開するように構
成してもよい。
【0019】
【発明の実施の形態】
<第1実施形態> <ビデオサーバの構成>図1は、本発明の実施形態にお
けるデータ転送装置を有するビデオサーバの構成を示す
ブロック図である。このビデオサーバは、データ転送装
置1、映像情報送出部11、タイムスロット管理部1
2、交換機13を備え、複数のユーザ端末(以下端末と
呼ぶ)に対して映像データをリアルタイムに配信する。
【0020】データ転送装置1は、磁気ディスク装置
(以下HDDと略す)2a、2b、2c、ディスクアク
セス部3、プロセッサ4、主記憶5を備え、各HDDに
記憶された映像データを主記憶5に転送する。映像情報
送出部11は、データ転送装置1によって各HDDから
主記憶5に転送された映像データを交換機13を通して
各端末へ送出する。
【0021】タイムスロット管理部12は、複数の端末
からの映像要求に応じて、一定周期(ここでは1秒とす
る)毎にどの磁気ディスク装置のどの映像データを読み
出すべきかを示したタイムスロットテーブルを管理す
る。本実施例では各HDDは、最大3タイムスロットを
サポートする(最大3つの端末に対する映像データを供
給可能である)ものとする。タイムスロットテーブル
は、所定サイズの映像データの読み出しを指示する読出
情報(端末番号と読み出し位置)を、HDDのタイムス
ロットに割り当てたテーブルである。ここで所定サイズ
とは、再生時間が1秒間に相当するサイズであり、本実
施例では1024kバイトであるものとする。
【0022】図2(a)、図2(b)は、タイムスロッ
トテーブルの一例を示す。図2(a)において、例えば
HDD2aのタイムスロット1には、読出情報「T07
−P10」が割り当てられている。T07は端末番号
を、P10は読み出し位置をそれぞれ表している。同図
では8台の合計端末装置がビデオサーバを利用中である
ことを示している。また図2(b)は、図2(a)の次
の周期(1秒後)のタイムスロットテーブルを示す。同
図は図2(a)に比べて各タイムスロットの読み出し位
置が更新されていることがわかる。
【0023】図3は、タイムスロットテーブルが更新さ
れる周期を示す説明図である。同図のように、タイムス
ロット管理部12は、各周期の最初に読み出し位置を更
新する。各周期の残りに時間内に、更新された読み出し
位置従ってデータ転送装置により映像データが読み出さ
れる。交換機13は、映像情報送出部11によって主記
憶5から読み出された映像データをタイムスロットテー
ブルに指定された端末に配信する。
【0024】<データ転送装置の構成>次にデータ転送
装置1内部の構成を説明する。HDD2a−2cは、S
CSI(Small Computer System Interface)バスに接続
され、それぞれ異なる映画などの圧縮された映像データ
を記憶している。これらは従来技術で説明した磁気ディ
スク装置と同等のものであるので詳細な説明は省略す
る。ただし、本実施例では各HDDは、図4に示すよう
なID番号を有し、SCSIバスにおける調停状態(ア
ービトレーションフェーズ)において、数字が大きい方
が優先する。各HDDの内部バッファは256kバイト
の容量であるものとする。また、各HDD内部でディス
クから内部バッファへの読み出し速度が5Mバイト/
秒、SCSIバスのデータ転送速度が10Mバイト/秒
であるものとする。
【0025】ディスクアクセス部3は、各HDDに対す
る読み出し及び書き込み制御(ディスクアクセス制御)
と、各HDDの読み出し/書き込みデータを主記憶5と
の間でに直接転送する制御(DMA(Direct Memory Acc
ess)制御)とを行う。上記ディスクアクセス制御に関し
て、ディスクアクセス部3は、プロセッサ4からHDD
に対する読み出し/書き込みコマンド(以下ディスクコ
マンドと呼ぶ)を受けて、SCSIバスの解放状態(バ
スフリーフェーズ)から調停状態(アービトレーション
フェーズ)を経てバス使用権を獲得した場合に、バス占
有状態(セレクションフェーズ、転送フェーズ)に移っ
てバスを使用することができる。
【0026】また上記DMA制御に関して、ディスクア
クセス部3は、プロセッサ4により主記憶5上に作成さ
れるDMAコマンドテーブルのDMAコマンドを順次読
み出して、HDDから読み出されたデータを主記憶5の
データ領域に直接書き込む。DMAコマンドテーブル
は、図21に示したものと同様である。ただし、本実施
例では後述のようにDMAコマンドテーブル全体により
指定されるデータ転送サイズは、HDDのテーブル更新
割込み要求を発生させないように設定される。
【0027】プロセッサ4は、主記憶5に記憶されたプ
ログラムを実行することにより、各周期においてタイム
スロットテーブルに指定された読出情報に従って、各H
DDからの映像データの読み出しと、読み出された映像
データを主記憶にDMA転送するようディスクアクセス
部3を制御する。具体的には、プロセッサ4は、タイム
スロットテーブルに指定された読出情報のそれぞれにつ
いて、(1)DMAコマンドテーブルの作成、(2)ディスク
アクセス部3へのDMA起動指示、(3)ディスクアクセ
ス部3への読出情報に従った映像データの読み出しを指
示するディスクコマンドの作成・発行、(4)ディスクア
クセス部3からの割込み処理要求を受けて割込み処理を
行う。
【0028】(1) DMAコマンドテーブルは、図21
に示したように、主記憶5のデータ格納領域の(先頭)
アドレスと転送データサイズとからなるDMAコマンド
の配列である。このアドレス、サイズはともに4バイト
ずつであるものとする。本実施例ではプロセッサ4は、
DMAコマンドテーブル全体により指定されるデータ転
送サイズを、512kバイト以上の大きさになるように
設定する。
【0029】図5に本実施例におけるDMAコマンドテ
ーブルの一例を示す。同図のようにDMAコマンドテー
ブルは、DMAコマンド1からDMAコマンド128か
らなる。1つのDMAコマンドはデータサイズとして4
kバイトを指定している。これは、主記憶5の仮想記憶
方式で1ページが4kバイトだからである。同図の12
8個のDMAコマンドにより指定されるデータ転送サイ
ズは、512kバイトとしている。このサイズは、テー
ブル更新割込み要求が発生しないようためのサイズであ
り、(数3)により決定される。
【数3】 ここで、S_transはDMAコマンドテーブル全体により
指定されるデータ転送サイズ、B_innerはHDD内部に
おけるディスクから内部バッファへのデータ転送速度、
B_scsiはSCSIバスにおけるデータ転送速度、S_in
ner_buffは各HDDの内部バッファの容量である。nは
1以上の整数である(n=1、2、3、・・・)。本実
施例では、B_innerは5Mバイト/秒、B_scsiは10
Mバイト/秒、S_inner_buffは256kバイトであ
る。この場合、HDDは、内部バッファフルの状態で2
56kバイトデータをSCSIバスに送出する間に、デ
ィスクから内部バッファに128kバイトデータを読み
出すことができる。これを順次繰り返すことにより上記
右辺は、256+128+64+32+・・・=512
kバイトとなる。(数3)の右辺は、HDDから連続的
にSCSIバスにデータを供給できる理論上の最大数を
意味する。
【0030】したがって、DMAコマンドテーブルによ
るデータ転送サイズS_transが512kバイト以上であ
れば、内部バッファフル状態からデータを送出し始めた
場合はテーブル更新割込みが発生しないことになる。
【0031】(2) ディスクアクセス部3へのDMA起
動指示は、DMAコマンドテーブルの格納先を示す主記
憶5のアドレスとDMA転送のイネーブル指示とからな
る。
【0032】(3) ディスクコマンドは、HDDのI
D、コマンド種別(ここでは読み出し)、ディスクのセ
クタ番号、読み出しサイズとからなる。本実施例ではコ
マンド種別が読み出しで、読み出しサイズは1024k
バイトである。
【0033】(4) ディスクアクセス部3からの割込み
処理要求には、主としてディスコネクト割込み要求と、
テーブル更新割込み要求とがある。テーブル更新割込み
要求は、通常、データ転送の途中でDMAコマンドテー
ブル中に未実行のDMAコマンドが欠乏したときに発生
する割り込みである。つまり、ディスクコマンドで指定
したデータサイズがDMAコマンドテーブルで指定した
データサイズよりも大きい場合に、DMAコマンドテー
ブル末尾のDMAコマンドに従ってデータ転送を終了し
たときに発生する。例えば、DMAコマンドテーブルに
おいて512Kバイトの主記憶領域が指定されていて、
1Mバイトのデータを読み出すディスクコマンドが実行
されている場合、約512Kバイトのデータ転送がなさ
れた時点で、DMAコマンドテーブルの更新を要求する
割込みが発生する。
【0034】この割り込み要求に対してプロセッサ4
は、DMAコマンドテーブルを更新する割り込み処理を
行う。具体的にはプロセッサ4は、ディスクコマンドで
指定されている残りのデータ転送用に新たなDMAコマ
ンドテーブルを作成し、DMA再開をディスクアクセス
部3に指示する。本発明のデータ転送装置では、テーブ
ル更新割込み要求は、原則として発生しないように構成
されている。また、ディスコネクト割込み要求は、磁気
ディスク装置が上記ディスコネクトをしたときに発生す
る。本実施例では、各HDDが最大512kバイトのデ
ータを送出した時点でディスコネクトすると同時にディ
スコネクト割込みが発生する。
【0035】この割り込み要求に対してプロセッサ4
は、後のリコネクトに備えて状態保存や残りの転送バイ
ト数の計算等を行い、その結果を反映してDMAコマン
ドのアドレス、サイズを修正する回復処理を行い、これ
に加えて上記のテーブル更新処理も実行する。ここでの
テーブル更新処理は、実行済みのDMAコマンドの削除
と、そのDMAコマンドテーブルによる転送サイズが前
記S_transになるまで又は転送済みのデータサイズも含
めてDMAコマンドテーブルで指定した全データサイズ
がディスクコマンドで指定されたデータサイズに達する
まで、新たなDMAコマンドの追加することによりなさ
れるこのように本実施例のデータ転送部1では、プロセ
ッサ4がディスコネクト割込み処理においてテーブル更
新処理も併せて実行することと、上記の(数3)による
DMAコマンドテーブルによるデータサイズとが相俟っ
てテーブル更新割込み要求は発生しない。
【0036】<プロセッサの処理内容>図6(a)、図
6(b)は、プロセッサ4により1周期(1秒間)内に
なされる処理内容を示すより詳細なフローチャートであ
る。図6(a)において、プロセッサ4は、タイムスロ
ット管理部12によりタイムスロットテーブルが更新さ
れると(ステップ100)、タイムスロットテーブルを
参照して未発行の読出情報があれば(ステップ10
1)、それに対応するDMAコマンドテーブル、DMA
起動指示、ディスクコマンドを作成する(ステップ10
2)。このDMAコマンドテーブルは、上記したように
512kバイトの転送データサイズを指定し、仮想記憶
方式の1ページ内に作成される。また、このディスクコ
マンドは、1024kバイトの映像データの読み出しを
指示する。
【0037】次に、プロセッサ4は、バスがディスコネ
クトされるまで(バスフリーになるまで)待機し(ステ
ップ103)、バスフリー状態においてディスクアクセ
ス部3をバス使用権の調停に参加させてバス使用権の獲
得を試みる(ステップ104)。バス使用権を獲得でき
ないとき、例えばバスがディスコネクトされてから調停
に参加するまでの間に他のHDDがリコネクトしたとき
は、バス使用権を獲得するまでその試みをを繰り返す
(ステップ103〜105)。バス使用権を獲得したと
き、DMA起動指示及びディスクコマンドを発行する
(ステップ106)。これらのコマンド発行後、プロセ
ッサ4はタイムスロットテーブルの次の未発行の読出情
報があれば、上記と同様の処理を繰り返す。
【0038】このようにしてプロセッサ4は、タイムス
ロットテーブルの全ての読出情報に対して、1周期の間
にコマンド発行処理を行う。図6(b)は、プロセッサ
4の割込み処理を示すフローチャートである。
【0039】プロセッサ4は、割込み要求が発生した場
合それがディスコネクト割り込み要求であれば上記した
回復処理及びDMAコマンドテーブル更新処理を行う
(ステップ107、108)。ディスコネクト割り込み
要求でなければ(つまりディスクコマンドの実行終了を
知らせる割込みであれば)ディスクアクセス部3のDM
Aステータスをチェックし当該DMAを終了させる(ス
テップ107、109)。
【0040】<ディスクアクセス部の処理内容>
【0041】図7は、ディスクアクセス部3の処理内容
を示すフローチャートである。同図においてディスクア
クセス部3は、プロセッサ4から調停開始命令を受ける
と(ステップ110、111)、バス使用権の獲得を試
み(ステップ112)、バス使用権を獲得できたときは
プロセッサ4からのディスクコマンドに従ってSCSI
コマンドをHDDに発行し(ステップ112、11
3)、主記憶5のDMAコマンドテーブルの最初のエン
トリから順にDMAコマンドを読み出してデータ転送を
実行する(ステップ114、115)。
【0042】また、ディスクアクセス部3は、何れかの
HDDからリコネクト要求を受けた場合(ステップ11
0、111:no)は、当該HDDのデータ転送を再開す
る(ステップ114、115)。
【0043】データ転送の間HDDがディスコネクトし
た場合は、当該HDDからのデータ転送が停止するが、
HDD内部ではディスクから内部バッファへのデータ書
き込みが引き続き続行されている。この間ディスコネク
ト割込み処理によりDMAコマンドテーブルが更新され
る。内部バッファがフルになった時点又はある程度のデ
ータが蓄積された時点でHDDからリコネクトされ、更
新されたDMAコマンドテーブルにしたがってデータ転
送が再開される。以上のように構成された本発明の第1
実施形態におけるデータ転送装置について、その動作を
説明する。
【0044】図8は、従来技術と本実施形態におけるS
CSIバスの占有タイミング及びプロセッサ4の割込み
処理タイミングの一例を対比した図である。同図におい
てバスタイミングを示す時間軸上で、実線部分は磁気デ
ィスク装置がバス使用権を獲得している区間を、波線部
分はバスが解放されている区間をそれぞれ示す。「R」
はリコネクト又はコネクト(最初のバス権獲得)のタイ
ミングを、「D」はディスコネクトのタイミングをそれ
ぞれ示す。また、割り込み処理タイミングを示す時間軸
上で、「d」はディスコネクト割り込み処理の区間を、
「c」はテーブル更新割込み処理の区間を、「d/c」
は本実施形態のディスコネクト割込みをそれぞれ示す。
【0045】同図(B)では、既にHDD2a、2bに
対してはディスクコマンド発行済みでありHDD2cに
対してディスクコマンドを発行するタイミング以降の様
子を記してある。同図(A)についても同様である。同
図(B)のように、ディスコネクト割込み処理において
プロセッサ4が回復処理と併せてDMAコマンドテーブ
ルを更新するので、テーブル更新割込み要求はもはや発
生しない。図9は、一のHDDがディスクコマンドを受
けて、ディスクコマンドで指定されたサイズのデータ転
送を終えるまでの状態変化を示す説明図である。
【0046】同図のようにディスクアクセス部3は、バ
ス解放状態においてプロセッサ4からディスクコマンド
が発行される(S131)と、DMAコマンドテーブル
を参照して磁気ディスク装置とメモリとの間でデータ転
送を実行する(S132)。その間ディスク内部バッフ
ァが空になった時点でHDDがディスコネクトし、ディ
スク内部のバッファがフル又はある程度のデータが蓄積
された時点でHDDがリコネクトし、ディスクアクセス
部3がデータ転送を再開するという動作を繰り返す(S
133→S134→S132)。その後ディスクコマン
ドで指定されたサイズのデータ転送が終了した場合ディ
スクコマンドの実行終了(S135)を知らせる割込み
が発生する(I132)。このように、HDDは、DM
Aコマンドテーブルの未実行のDMAコマンドが欠乏す
ることがないので、ディスクアクセス部3からのテーブ
ル更新割込みが発生しない。以上説明してきたように本
実施形態におけるデータ転送装置によれば、テーブル更
新割込み発生要因を以下の二点により解消している。
【0047】第1に、プロセッサ4がディスコネクト割
り込み処理において、回復処理とテーブル更新処理とを
行うことである。第2に、DMAコマンドテーブルに指
定されるデータ転送サイズを、HDDのディスコネクト
なしで連続アクセスできる最大サイズ以上にしたことで
ある。第1の点だけ、あるいは第2の点だけでもテーブ
ル更新割込みの発生頻度を低減するができる。また上記
二点によりテーブル更新割込みの発生を完全に解消して
いる。これによりデータ転送装置1ではプロセッサのオ
ーバヘッドを低減してデータ転送のスループットを向上
させることができる。
【0048】<第2実施形態> <全体構成>本発明の第2の実施形態におけるデータ転
送装置を備えたビデオサーバについて説明する。本実施
形態におけるビデオサーバの全体構成を示すブロック図
は、プロセッサ4と主記憶5を除いて第1実施形態の図
1と同じである。同図においてプロセッサ4、主記憶5
以外の構成要素については第1実施形態と同じであるの
で、以下異なる点を主として説明する。
【0049】主記憶5は、第1実施形態の機能に加え
て、さらにDMAコマンド及びディスクコマンドを蓄積
するキューバッファ(単にキューとも呼ぶ)を有する。
図10にキューバッファの構成を示す。同図において、
キューバッファは、同一の映像データについてのDMA
起動指示とディスクコマンドの組であるコマンドセット
を複数格納し、プロセッサ4によりFIFO(First In
First Out)式に格納される。以下コマンドセットを特に
区別するとき以外は単にコマンドと呼ぶ。プロセッサ4
は、第1実施形態の図6(a)に示したコマンド発行処
理の代わりに、キューバッファへのコマンドセット登録
処理及びキューバッファからディスクアクセス部3への
コマンドセット発行処理とを行う。コマンドセット登録
処理とコマンド発行処理とは、それぞれ通常処理(割り
込み処理以外)と割り込み処理との双方において行われ
る。
【0050】<プロセッサ4のキューへのコマンド登録
処理>図11は、通常処理(割込み処理以外)における
プロセッサ4によるコマンド登録及び発行処理を示すフ
ローチャートである。同図においてプロセッサ4は、タ
イムスロット管理部12によりタイムスロットテーブル
が更新されると(ステップ151)、タイムスロットテ
ーブルを参照して未発行の読出情報があれば(ステップ
152)、それに対応するDMAコマンドテーブル、D
MA起動指示、ディスクコマンドを作成し、このうちD
MA起動指示とディスクコマンドとを主記憶5のキュー
バッファに登録する(ステップ153)。また、タイム
スロットテーブルに未発行の読出情報がなくてキューバ
ッファにコマンドがない場合は(ステップ152、15
5)、タイムスロットテーブルの更新待ちになる。
【0051】キューバッファに登録後、プロセッサ4は
キューバッファからのコマンド発行処理を行う(ステッ
プ154)。図12は、割込み処理におけるプロセッサ
4によるコマンド発行処理を示すフローチャートであ
る。同図においてプロセッサ4は、割込み要求が発生し
た場合それがディスコネクト割り込み要求であれば上記
の回復処理及びDMAコマンドテーブル更新処理を行う
(ステップ161、162)。ディスコネクト割り込み
要求でなければ(つまり)ディスクコマンドの実行終了
を知らせる割込みであれば)ディスクアクセス部3のD
MAステータスをチェックし当該DMAを終了させる
(ステップ161、163)。さらにプロセッサ4は、
キューバッファからのコマンド発行処理を行う(ステッ
プ164)。
【0052】<プロセッサ4のキューからのコマンド発
行処理>図13は、上記ステップ154におけるコマン
ド発行処理を示すフローチャートである。上記ステップ
164についても同じである。
【0053】プロセッサ4は、まずキューバッファ内に
コマンドが存在し、バスフリー状態であれば、ディスク
アクセス部3をバス使用権の調停に参加させてバス使用
権の獲得を試みる(ステップ171−173)。バス使
用権を獲得した場合、キューバッファからコマンドを取
り出して、そのコマンドをディスクアクセス部3に発行
し(ステップ174)、さらにそのコマンドをキューバ
ッファから削除する。このときプロセッサ4は、キュー
バッファの先頭のコマンドから順に取り出す。また、キ
ューバッファ内にコマンドが存在しない場合(ステップ
171)、バスフリーでない場合(ステップ172)、
バス使用権が獲得できなかった場合(ステップ174)
にはいずれも発行しないまま発行処理を終える。以上の
ように構成された本発明の第2の実施形態におけるデー
タ転送装置について、その動作を説明する。
【0054】図14は、本実施形態におけるデータ転送
装置のコマンドの発行タイミングを示す説明図である。
同図には、ある周期におけるタイムスロットテーブル、
プロセッサ4によるコマンドセット生成タイミング、コ
マンド登録(キューイン)のタイミング、コマンド発行
(キューアウト)のタイミング、HDD2a−2cの読
み出しタイミングをそれぞれ示している。プロセッサ4
は、図11に示したフローチャートに従ってタイムスロ
ットテーブルの各読出情報から順次コマンドを生成す
る。このコマンドは、一旦キューバッファに蓄積される
ため、同図のようにバスの状態とは無関係に、コマンド
の発行タイミングよりも先行して生成される。同図と対
比するため、図15に従来技術におけるデータ転送装置
のコマンドの発行タイミングを示す。本実施形態のデー
タ転送装置では、図15に比べると、プロセッサ4がバ
スの状態チェックから解放され、コマンド発行を迅速に
行っているいることがわかる。これは、キューバッファ
を設けたことと、割り込み処理(特にディスコネクト割
込み処理)においてキューからのコマンド発行処理を行
うことによる。特にディスコネクト割り込み処理におい
てコマンド発行処理を行うので、バスがフリーになった
ときに直ちに新たなコマンドを発行することができ、プ
ロセッサ4のオーバーヘッドを低減している。
【0055】<第3実施形態>本実施形態にデータ転送
装置は第1の実施形態のデータ転送装置に比べて、プロ
セッサ4が割り込み処理を用いない点のみが異なってい
る。これ以外は第1の実施形態と同じなので、以下異な
る点のみを説明する。プロセッサ4は、第1実施形態に
比べ、ハードウェアにより割り込み要求を検出するので
はなくて、ソフトウェアにより割込み要求を検出するよ
うに構成されている。
【0056】図16は、本実施形態におけるプロセッサ
4の処理内容を示すフローチャートである。同図におい
て、破線枠で示したステップは、第1の実施形態では割
り込み処理として実行されるステップを表している。同
図において第1の実施形態の図6(a)、図6(b)と
異なる点は、ステップ201、203、207において
割込み要求が発生しているか否かをプログラムによりチ
ェックする点である。これ以外の処理については図6
(a)、図6(b)とほぼ同様の処理を行うので説明を
省略する。以上の構成により、本実施形態では、ハード
ウェア割り込みを用いないで、第1実施形態と同様に、
テーブル更新割込み要求を解消するという効果を得るこ
とができる。
【0057】<第4の実施形態>本実施形態のデータ転
送装置は第2の実施形態のデータ転送装置に比べて、プ
ロセッサ4が割り込み処理を用いない点のみが異なって
いる。これ以外は第2の実施形態と同じなので、以下異
なる点のみを説明する。プロセッサ4は、第2実施形態
に比べ、ハードウェアによる割り込み要求を検出するの
ではなくて、ソフトウェアにより割込み要求を検出する
ように構成されている。
【0058】図17、図18、図19は、本実施形態に
おけるプロセッサ4による処理内容を示すフローチャー
トである。同図において、破線枠で示したステップは、
第2の実施形態では割り込み処理として実行されるステ
ップを表している。これらの図は、第2実施形態の図1
1、図12、図13と同等の処理であり、特に図17の
ステップ223、224、図18のステップ232にお
いて割込み要求が発生しているか否かをプログラムによ
りチェックするよう構成されている。これ以外の処理に
ついては図11、図12、図13とほぼ同様の処理を行
うので説明を省略する。以上の構成により、本実施形態
では、ハードウェア割り込みを用いないで、第3実施形
態と同様に、テーブル更新割込み要求を解消し、しかも
プロセッサの御ーヘッドを低減するという効果を得るこ
とができる。
【0059】なお、上記各実施形態では、プロセッサ4
がDMAコマンドテーブルの更新処理として未実行のD
MAコマンドをDMAコマンドテーブルの先頭から順に
詰めるようにシフトさせた後残りのフィールドに対し新
たなDMAコマンドを生成してDMAコマンドテーブル
全体を更新し、ディスクアクセス部3がリコネクト後に
DMAコマンドテーブルの最初のエントリからDMAコ
マンドを実行するように構成していた。これに代えて、
プロセッサ4がテーブル更新処理としてDMAコマンド
テーブル中の実行済みのDMAコマンドのみを書き換え
て、ディスクアクセス部3がリコネクト後に中断してい
たDMAコマンドからデータ転送を再開し、DMAコマ
ンドテーブルの最後のエントリのDMAコマンドの実行
後に最初のエントリのDMAコマンドを実行を継続する
ようにしてもよい。
【0060】また、上記第2、第4実施形態ではプロセ
ッサ4は、キューバッファの先頭から順にコマンドを取
り出しているが、次のようにしてもよい。すなわちプロ
セッサは、先頭のコマンドを発行できない場合に、次の
コマンドが同じディスク装置宛であれば発行待ちとな
り、次のコマンドが他のディスク装置宛であればそれを
発行するようにしてもよい。上記は、HDD自身がコマ
ンドをキューイングしない場合を前提としている。も
し、HDD内部にコマンドをキューイングする機能を有
している場合には、先頭のコマンドを発行できないとい
う問題が解消されている。
【0061】また、上記各実施形態におけるHDDの代
わりに、ディスコネクト及びリコネクトする記憶装置、
例えば光ディスクドライブ、光磁気ディスクドライブな
どを用いてもよい。
【0062】さらに、上記各実施形態におけるデータ転
送装置の動作はプロセッサにより制御されるので、本発
明のデータ転送装置は、従来のデータ転送装置の主記憶
に、各実施形態中に示した各フローチャートの処理を記
述したプログラムを新たに書き込むことによって実現す
ることができる。この場合、データ転送装置のプロセッ
サが読み取り可能な記憶媒体に上記プログラムを記録さ
せておき、プロセッサが記憶媒体から主記憶に上記プロ
グラムを書き込めばよい。
【0063】
【発明の効果】本発明のデータ転送装置は、DMAコマ
ンドテーブルに従って、バス接続された複数のディスク
装置とメモリとの間でDMA転送するデータ転送装置で
あって、前記ディスク装置は、その内部状態に応じてバ
ス使用権を一時的に解放し、さらに一時的に解放したバ
ス使用権を再獲得し、前記データ転送装置は、メモリの
デ−タ転送先領域の先頭アドレスと転送すべきデ−タサ
イズとを示すDMAコマンドが配列されてなるDMAコ
マンドテーブルを生成するテーブル生成手段と、前記D
MAコマンドテーブルに従ってディスク装置とメモリと
の間でデータ転送を行う転送手段と、デ−タ転送中のデ
ィスク装置がバス使用権を一時的に解放したことを検出
する一時解放検出手段と、バス使用権の一時的解放が検
出されたとき、当該ディスク装置のデータ転送再開用に
実行済みDMAコマンドの削除と新たなDMAコマンド
の追加によりDMAコマンドテーブルを更新するテーブ
ル更新手段とを備えている。この構成によれば、一時解
放手段によってバス使用権の一時的解放が検出されたと
きに、当該ディスク装置のデータ転送再開用にコマンド
テーブルを更新するので、テーブル更新処理の発生を解
消又は低減するができる。これによりデータ転送装置1
ではオーバヘッドを低減してデータ転送のスループット
を向上させることができる。
【0064】また前記データ転送装置は、さらに所定周
期毎に各ディスク装置に対して、一定数までの読み出し
又は書き込みを指示するディスクコマンドを生成するコ
マンド生成手段と、コマンド生成手段により生成された
ディスクコマンドをキューにして保持するキュー保持手
段と、一時解放検出手段によりバス使用権の一時的解放
が検出されたとき、キューからディスクコマンドを取り
出してディスク装置に発行するコマンド発行手段とを備
え、前記転送手段は、ディスク装置が発行手段によりデ
ィスクコマンドを発行されたときデータ転送を開始し、
バス使用権を一時解放していたディスク装置がバス使用
権を再獲得したときデータ転送を再開する構成である。
この構成によれば、生成されたコマンドは、一旦キュー
にしてキュー保持手段に蓄積されるため、バスの状態
(使用中か解放中か)とは無関係に、ディスクコマンド
の実際の発行タイミングよりも先行して生成することが
でき、さらにデータ転送装置のオーバヘッドを低減して
データ転送のスループットを向上させることができる。
【0065】また本発明のデータ転送装置は、メモリの
デ−タ転送先領域の先頭アドレスと転送すべきデ−タサ
イズとを示すDMAコマンドが配列されてなるDMAコ
マンドテーブルを生成するテーブル生成手段と、ディス
ク装置に所定サイズのデータ読み出し又は書き込みを指
示する一定数までのディスクコマンドを所定周期毎に各
ディスク装置に対して生成する生成手段と、前記DMA
コマンドテーブルに従ってディスク装置とメモリとの間
でデータ転送を行う転送手段と、ディスクコマンドに従
ってデータ読み出し又は書き込みのディスク装置がバス
使用権を一時的に解放したことを検出する一時解放検出
手段と、バス使用権の一時的解放が検出されたとき、当
該ディスク装置のデータ転送再開用に、実行済みのDM
Aコマンドの削除し、前記所定数のDMAコマンドにな
るまで又は転送済みデータサイズも含めてDMAコマン
ドテーブルで指定した全データサイズが前記所定サイズ
に達するまで、新たなDMAコマンドを追加することに
よりコマンドテーブルを更新するテーブル更新手段とを
備えている。この構成によれば、一時解放手段によって
バス使用権の一時的解放が検出されたときに、当該ディ
スク装置のデータ転送再開用にコマンドテーブルを更新
するので、テーブル更新処理の発生を解消又は低減する
ができる。これによりデータ転送装置1ではオーバヘッ
ドを低減してデータ転送のスループットを向上させるこ
とができる。
【0066】前記データ転送装置は、さらにディスクコ
マンド生成手段により生成されたディスクコマンドをキ
ューにして保持するキュー保持手段と、一時解放検出手
段によりバス使用権の一時的解放が検出されたとき、キ
ューからディスクコマンドを取り出してディスク装置に
発行するコマンド発行手段とを備え、前記転送手段は、
ディスク装置がコマンド発行手段によりディスクコマン
ドを発行されたときデータ転送を開始し、バス使用権を
一時解放していたディスク装置がバス使用権を再獲得し
たときデータ転送を再開するよう構成されている。この
構成によれば、生成されたコマンドは、一旦キューにし
てキュー保持手段に蓄積されるため、バスの状態(使用
中か解放中か)とは無関係に、ディスクコマンドの実際
の発行タイミングよりも先行して生成することができ、
さらにデータ転送装置のオーバヘッドを低減してデータ
転送のスループットを向上させることができる。
【0067】前記テーブル生成手段は、DMAコマンド
テーブルに指定される転送データサイズを、ディスク装
置がバス使用権を解放することなく連続してデータ転送
できる最大の転送サイズ以上にするよう前記DMAコマ
ンドテーブルを生成するよう構成されている。この構成
によれば、ディスク装置がバス使用権を一時解放するま
での間に、DMAコマンドテーブルの未実行のDMAコ
マンドが欠乏することがないので、テーブル更新処理の
発生を完全に解消することができる。
【0068】前記ディスク装置は、内部バッファを有
し、内部バッファからバスへのデータ送出と、ディスク
から内部バッファへのデータ書き込みとを並行して実行
し、前記第1のデータサイズS_transは、上記(数1)
を満たすように構成される。この構成によれば、さら
に、ディスク装置内部におけるディスクから内部バッフ
ァへのデータ転送速度、バスのデータ転送速度、ディス
ク装置の内部バッファの容量に応じて第1のデータサイ
ズを適切に定めることできる。また、本発明にかかるプ
ロセッサが読み取り可能なプログラムを記憶した記憶媒
体によれば、従来のデータ転送装置に対して、記憶媒体
に記憶されたプログラムを実行させることにより、上記
と同様の効果を得ることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施形態におけるデータ転送装
置を有するビデオサーバの構成を示すブロック図であ
る。
【図2】タイムスロットテーブルの一例を示す。
【図3】タイムスロットテーブルが更新される周期を示
す説明図である。
【図4】各磁気ディスク装置及びディスクアクセス部の
ID番号(SCSI ID)を示す。
【図5】本実施例におけるDMAコマンドテーブルの一
例を示す。
【図6】プロセッサにより1周期(1秒間)内になされ
る処理内容を示すより詳細なフローチャートである。
【図7】ディスクアクセス部の処理内容を示すフローチ
ャートである。
【図8】従来技術と本実施形態におけるSCSIバスの
占有タイミング及び割込み処理タイミングの一例を対比
した図である。
【図9】HDDがディスクコマンドを受けて、ディスク
コマンドで指定されたサイズのデータ転送を終えるまで
の状態変化を示す説明図である。
【図10】本発明の第2の実施形態におけるキューバッ
ファの構成を示す。
【図11】通常処理(割込み処理以外)におけるプロセ
ッサによるコマンド登録及び発行処理を示すフローチャ
ートである。
【図12】割込み処理におけるプロセッサによるコマン
ド発行処理を示すフローチャートである。
【図13】コマンド発行処理を示すフローチャートであ
る。
【図14】コマンドの発行タイミングを示す説明図であ
る。
【図15】従来技術におけるデータ転送装置のコマンド
の発行タイミングを示す。
【図16】第3の実施形態におけるプロセッサの処理内
容を示すフローチャートである。
【図17】第4の実施形態におけるプロセッサによる処
理内容を示すフローチャートである。
【図18】プロセッサによる処理内容を示すフローチャ
ートである。
【図19】プロセッサによる処理内容を示すフローチャ
ートである。
【図20】従来のビデオサーバに備えられるデータ転送
装置の構成を示すブロック図である。
【図21】DMAコマンドテーブルの一例を示す。
【図22】従来技術におけるSCSIバスの占有タイミ
ング及び割込み処理タイミングの一例を示す。
【図23】磁気ディスク装置がディスクコマンドを受け
て、ディスクコマンドで指定されたサイズのデータ転送
を終えるまでの状態変化を示す。
【符号の説明】
1 データ転送装置 2a 磁気ディスク装置 2b 磁気ディスク装置 2c 磁気ディスク装置 3 ディスクアクセス部 4 プロセッサ 5 主記憶 11 映像情報送出部 12 タイムスロット管理部 13 交換機

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 ダイレクトメモリアクセス(以下DMA
    と略す)コマンドテーブルに従って、バス接続された複
    数のディスク装置とメモリとの間でDMA転送するデー
    タ転送装置であって、 前記ディスク装置は、その内部状態に応じてバス使用権
    を一時的に解放し、さらに一時的に解放したバス使用権
    を再獲得し、 前記データ転送装置は、 メモリのデ−タ転送先領域の先頭アドレスと転送すべき
    デ−タサイズとを示すDMAコマンドが配列されてなる
    DMAコマンドテーブルを生成するテーブル生成手段
    と、 前記DMAコマンドテーブルに従ってディスク装置とメ
    モリとの間でデータ転送を行う転送手段と、 デ−タ転送中のディスク装置がバス使用権を一時的に解
    放したことを検出する一時解放検出手段と、 バス使用権の一時的解放が検出されたとき、当該ディス
    ク装置のデータ転送再開用に実行済みDMAコマンドの
    削除と新たなDMAコマンドの追加によりDMAコマン
    ドテーブルを更新するテーブル更新手段とを備えること
    を特徴とするデータ転送装置。
  2. 【請求項2】 前記データ転送装置は、さらに所定周期
    毎に各ディスク装置に対して、一定数までの読み出し又
    は書き込みを指示するディスクコマンドを生成するコマ
    ンド生成手段と、 コマンド生成手段により生成されたディスクコマンドを
    キューにして保持するキュー保持手段と、 一時解放検出手段によりバス使用権の一時的解放が検出
    されたとき、キューからディスクコマンドを取り出して
    ディスク装置に発行するコマンド発行手段とを備え、 前記転送手段は、ディスク装置が発行手段によりディス
    クコマンドを発行されたときデータ転送を開始し、バス
    使用権を一時解放していたディスク装置がバス使用権を
    再獲得したときデータ転送を再開することを特徴とする
    請求項1記載のデータ転送装置。
  3. 【請求項3】 ダイレクトメモリアクセス(以下DMA
    と略す)コマンドテーブルに従って、バス接続された複
    数のディスク装置とメモリとの間でDMA転送するデー
    タ転送装置であって、 前記ディスク装置は、その内部状態に応じてバス使用権
    を一時的に解放し、さらに一時的に解放したバス使用権
    を再獲得し、 前記データ転送装置は、 メモリのデ−タ転送先領域の先頭アドレスと転送すべき
    デ−タサイズとを示すDMAコマンドが配列されてなる
    DMAコマンドテーブルを生成するテーブル生成手段
    と、 ディスク装置に所定サイズのデータ読み出し又は書き込
    みを指示する一定数までのディスクコマンドを、所定周
    期毎に各ディスク装置に対して生成するディスクコマン
    ド生成手段と、 前記DMAコマンドテーブルに従ってディスク装置とメ
    モリとの間でデータ転送を行う転送手段と、 ディスクコマンドに従ってデータ読み出し又は書き込み
    のディスク装置がバス使用権を一時的に解放したことを
    検出する一時解放検出手段と、 バス使用権の一時的解放が検出されたとき、当該ディス
    ク装置のデータ転送再開用に、実行済みのDMAコマン
    ドの削除し、前記所定数のDMAコマンドになるまで又
    は転送済みデータサイズも含めてDMAコマンドテーブ
    ルで指定した全データサイズが前記所定サイズに達する
    まで、新たなDMAコマンドを追加することによりコマ
    ンドテーブルを更新するテーブル更新手段とを備えるこ
    とを特徴とするデータ転送装置。
  4. 【請求項4】 前記データ転送装置は、さらにディスク
    コマンド生成手段により生成されたディスクコマンドを
    キューにして保持するキュー保持手段と、 一時解放検出手段によりバス使用権の一時的解放が検出
    されたとき、キューからディスクコマンドを取り出して
    ディスク装置に発行するコマンド発行手段とを備え、 前記転送手段は、ディスク装置がコマンド発行手段によ
    りディスクコマンドを発行されたときデータ転送を開始
    し、バス使用権を一時解放していたディスク装置がバス
    使用権を再獲得したときデータ転送を再開することを特
    徴とする請求項3記載のデータ転送装置。
  5. 【請求項5】 前記テーブル生成手段は、DMAコマン
    ドテーブルに指定される転送データサイズを、ディスク
    装置がバス使用権を解放することなく連続してデータ転
    送できる最大の転送サイズ以上にするよう前記DMAコ
    マンドテーブルを生成することを特徴とする請求項1、
    2、3又は4記載のデータ転送装置。
  6. 【請求項6】 前記ディスク装置は、内部バッファを有
    し、内部バッファからバスへのデータ送出と、ディスク
    から内部バッファへのデータ書き込みとを並行して実行
    し、 前記第1のデータサイズS_transは、(数1)を満たし 【数1】 ここで、B_innerはディスク装置内部におけるディスク
    から内部バッファへのデータ転送速度、B_busはバスの
    データ転送速度、S_inner_buffはディスク装置の内部
    バッファの容量、nは1以上の整数であることを特徴と
    する請求項5記載のデータ転送装置。
  7. 【請求項7】 プロセッサ、メモリ、バス接続されたデ
    ィスク装置及びディスク制御部を備えたデータ転送装置
    であって、前記ディスク制御部は、ディスク装置の読み
    出し又は書き込みと、ダイレクトメモリアクセス(以下
    DMAと略す)コマンドテーブルに従ったディスク装置
    とメモリとの間のDMA転送とを制御し、前記ディスク
    装置は、その内部状態に応じてバス使用権を一時的に解
    放し、さらに一時的に解放したバス使用権を再獲得する
    よう構成されたデータ転送装置に適用されるプロセッサ
    が読み取り可能なプログラムを記憶した記憶媒体であっ
    て、 メモリのデ−タ転送先領域の先頭アドレスと転送すべき
    デ−タサイズとを示すDMAコマンドが配列されてなる
    DMAコマンドテーブルを生成するテーブル生成手段
    と、 ディスク装置に所定サイズのデータ読み出し又は書き込
    みを指示する一定数までのディスクコマンドを、所定周
    期毎に各ディスク装置に対して生成するディスクコマン
    ド生成手段と、 ディスク制御部を起動することにより、前記DMAコマ
    ンドテーブルに従ってディスク装置とメモリとの間でデ
    ータ転送を行う転送手段とディスクコマンドに従ってデ
    ータ読み出し又は書き込みのディスク装置がバス使用権
    を一時的に解放したことを、割込み処理要求として検出
    する一時解放検出手段と、 バス使用権の一時的解放が検出されたとき、当該ディス
    ク装置のデータ転送再開用に、実行済みのDMAコマン
    ドの削除し、前記所定数のDMAコマンドになるまで又
    は転送済みデータサイズも含めてDMAコマンドテーブ
    ルで指定した全データサイズが前記所定サイズに達する
    まで、新たなDMAコマンドを追加することによりコマ
    ンドテーブルを更新するテーブル更新手段として機能さ
    せるためのプログラムを記憶することを特徴とする記憶
    媒体。
  8. 【請求項8】 前記記憶媒体は、さらにディスクコマン
    ド生成手段により生成されたディスクコマンドをキュー
    にして保持するキュー保持手段と、 一時解放検出手段によりバス使用権の一時的解放が検出
    されたとき、キューからディスクコマンドを取り出して
    ディスク装置に発行するコマンド発行手段ととして機能
    させるプログラムを記憶し、 前記転送手段は、ディスク装置がコマンド発行手段によ
    りディスクコマンドを発行されたときデータ転送を開始
    し、バス使用権を一時解放していたディスク装置がバス
    使用権を再獲得したときデータ転送を再開するようにプ
    ログラムされていることを特徴とする請求項7記載の記
    憶媒体。
  9. 【請求項9】 前記テーブル生成手段は、DMAコマン
    ドテーブルに指定される転送データサイズを、ディスク
    装置がバス使用権を解放することなく連続してデータ転
    送できる最大の転送サイズ以上にするよう前記DMAコ
    マンドテーブルを生成するようにプログラムされている
    ことを特徴とする請求項7又は8記載の記憶媒体。
  10. 【請求項10】 前記ディスク装置は、内部バッファを
    有し、内部バッファからバスへのデータ送出と、ディス
    クから内部バッファへのデータ書き込みとを並行して実
    行し、 前記第1のデータサイズS_transは、(数2)を満た
    し、 【数2】 ここで、B_innerはディスク装置内部におけるディスク
    から内部バッファへのデータ転送速度、B_busはバスの
    データ転送速度、S_inner_buffはディスク装置の内部
    バッファの容量、nは1以上の整数であることを特徴と
    する請求項9記載の記憶媒体。
JP33187397A 1996-12-03 1997-12-02 データ転送装置 Expired - Fee Related JP3477056B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33187397A JP3477056B2 (ja) 1996-12-03 1997-12-02 データ転送装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP32256696 1996-12-03
JP8-322566 1996-12-03
JP33187397A JP3477056B2 (ja) 1996-12-03 1997-12-02 データ転送装置

Publications (2)

Publication Number Publication Date
JPH10222456A true JPH10222456A (ja) 1998-08-21
JP3477056B2 JP3477056B2 (ja) 2003-12-10

Family

ID=26570858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33187397A Expired - Fee Related JP3477056B2 (ja) 1996-12-03 1997-12-02 データ転送装置

Country Status (1)

Country Link
JP (1) JP3477056B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001202327A (ja) * 2000-01-20 2001-07-27 Fujitsu Ltd バス使用効率を高めた集積回路装置のバス制御方式
JP2003316721A (ja) * 2002-04-24 2003-11-07 Oki Electric Ind Co Ltd データ転送制御装置、データ転送装置及びデータ転送制御方法
JP2006338538A (ja) * 2005-06-03 2006-12-14 Nec Electronics Corp ストリームプロセッサ
US10268388B2 (en) 2016-01-15 2019-04-23 Fujitsu Limited Access control method, storage device, and system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001202327A (ja) * 2000-01-20 2001-07-27 Fujitsu Ltd バス使用効率を高めた集積回路装置のバス制御方式
JP2003316721A (ja) * 2002-04-24 2003-11-07 Oki Electric Ind Co Ltd データ転送制御装置、データ転送装置及びデータ転送制御方法
JP2006338538A (ja) * 2005-06-03 2006-12-14 Nec Electronics Corp ストリームプロセッサ
US10268388B2 (en) 2016-01-15 2019-04-23 Fujitsu Limited Access control method, storage device, and system

Also Published As

Publication number Publication date
JP3477056B2 (ja) 2003-12-10

Similar Documents

Publication Publication Date Title
US7529950B2 (en) Information processing system, control method for information processing system, and storage system
US8266375B2 (en) Automated on-line capacity expansion method for storage device
JP3364572B2 (ja) 多重パスi/o要求機構を有するデータ処理システム及びキュー・ステータス更新方法
US5802345A (en) Computer system with a reduced number of command end interrupts from auxiliary memory unit and method of reducing the number of command end interrupts
EP0405926A2 (en) Method and apparatus for managing a shadow set of storage media
US6636951B1 (en) Data storage system, data relocation method and recording medium
JPH076099A (ja) リモート・データの2重化のためのシステム及び方法
JP2000099277A (ja) ファイルユニット間のリモート転送方法
JPH05502314A (ja) データ転送方法
JPH10500503A (ja) ディスクドライブシステムのデータバッファ監視装置
JP2000181773A (ja) 記憶装置システム
JP2001188710A (ja) データ・セットをアクセスする方法、システム、及び製造物
JP2002245022A (ja) マルチプロセッサシステムとその共有メモリ制御方法、及び共有メモリ制御プログラム
JP2000259468A (ja) ファイルシステムにおけるバッファキャッシュ方法および装置
JP3477056B2 (ja) データ転送装置
JP3288213B2 (ja) サーバ
US6098121A (en) Data transfer apparatus with improved throughput due to reduced processing overhead in interrupt process
JP7073737B2 (ja) 通信ログ記録装置、通信ログ記録方法、および、通信ログ記録プログラム
US6988166B1 (en) Method for snooping raid 1 read transactions by a storage device
JPH1185594A (ja) リモートコピー用情報処理システム
KR100622621B1 (ko) 운영-대기(Active-Standby) 모드로이중화된 IP 통신 시스템에서 주 시스템과 부 시스템간구성 데이터를 동기화하기 위한 방법 및 그 시스템
JP3056000B2 (ja) マルチメディアデータネットワーク転送方式
JP3940701B2 (ja) ディスクアレイ装置及び同装置に適用されるキャッシュ一致化制御方法
JP2000172623A (ja) チャネルインタフェース再結合制御方法およびファイル制御装置
JPH11184715A (ja) データ処理プロセス実行制御装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees