JPH03105541A - Buffer control method for disk devices, etc. - Google Patents
Buffer control method for disk devices, etc.Info
- Publication number
- JPH03105541A JPH03105541A JP24227789A JP24227789A JPH03105541A JP H03105541 A JPH03105541 A JP H03105541A JP 24227789 A JP24227789 A JP 24227789A JP 24227789 A JP24227789 A JP 24227789A JP H03105541 A JPH03105541 A JP H03105541A
- Authority
- JP
- Japan
- Prior art keywords
- data
- buffer
- disk
- read
- phase
- 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
Abstract
Description
【発明の詳細な説明】
〔概 要〕
インタフェースにSCS Iを持ち、SCSIの仕様に
定めるモードセレクトパラメータのバッファフル・レシ
オに従ってバスのディスコネクト/コネクトを制御しな
がらリード/ライトするディスクシステムのバッファ制
御方式に関し、連続リード動作中でかつ残り転送データ
量が所定データ量より少ない場合は、SCSIバスをデ
ィスコネクトすることなく転送を続けることにより、デ
ィスクからのデータリード時のスルーブットを向上させ
ることを目的とし、
インタフェースにSCS Iを持ち、上位装置よりリー
ド/ライトのコマンドを受けたとき、SCSIの仕様に
従ってバッファを介してディスク部に対するリード/ラ
イトを行うディスクシステムのバッファ制御方式におい
て、バッファ内のデータ量が規定のデータ量以下に低下
したことにより、SCS Iバスをディスコネクトする
タイミングを検出し、
前記SCSIバスをディスコネクトするタイミングが検
出されたとき、連続リード動作中でかつ残り転送データ
量が所定のデータ量以下である場合に、SCSIバスの
ディスコネクト開始タイミングを一定時間だけ遅らせ、
該一定時間内にリードされた残りデータ量をディスコネ
クトを介さずに上位装置に転送するように構或する。[Detailed Description of the Invention] [Summary] A buffer for a disk system that has SCSI as an interface and reads/writes while controlling bus disconnect/connect according to the buffer full ratio of the mode select parameter specified in the SCSI specifications. Regarding the control method, when continuous read operation is in progress and the amount of remaining transfer data is less than the predetermined amount of data, the throughput when reading data from the disk is improved by continuing the transfer without disconnecting the SCSI bus. In the buffer control method of a disk system that has SCSI as an interface and reads/writes to the disk section via the buffer according to the SCSI specifications when a read/write command is received from the host device, The timing to disconnect the SCSI bus is detected when the amount of data falls below the specified amount of data, and when the timing to disconnect the SCSI bus is detected, if a continuous read operation is in progress and the amount of data remaining to be transferred is is less than a predetermined amount of data, the SCSI bus disconnection start timing is delayed by a certain amount of time,
The remaining amount of data read within the certain period of time is configured to be transferred to the host device without going through a disconnect.
本発明は、インタフェースにSCSIを持ち、上位装置
よりリード/ライトのコマンドを受けたとき、SCSI
の仕様に従ってバッファを介して磁気ディスク装置や光
ディスク等のディスク装置に対するリード/ライトを行
うディスク装置又はディスク制御部において、データが
リード/ライトされるディスク部からのデータリード時
にSCSIバスのディスコネクトするタイミングを制御
するハッファ制御方式に関する。The present invention has a SCSI interface, and when a read/write command is received from a host device, the SCSI
Disconnects the SCSI bus when reading data from the disk unit where data is being read/written in a disk unit or disk control unit that reads/writes data to/from a disk unit such as a magnetic disk unit or optical disk via a buffer according to the specifications of This invention relates to a Huffer control method for controlling timing.
近年の小型磁気ディスク装置は、従来のインタフェース
であったE S D T ( Enhanced Sm
all Device Interface)やST5
01に代わり、汎用性の高いS C S I ( S
mall Computer System Inte
rface)に移行して来ている。In recent years, small magnetic disk drives have been using the conventional interface ESDT (Enhanced Sm).
all Device Interface) and ST5
01, the highly versatile S C S I (S
mall computer system
rface).
SCSIは小型コンピュータの周辺装置インタフェース
として、磁気ディスク装置に限らず第4図に示すように
、磁気テープ、光ディスク、プリンタ等の周辺装置を1
本のケーブルで接続することができる。SCSI is used as a peripheral device interface for small computers, not only for magnetic disk devices but also for peripheral devices such as magnetic tapes, optical disks, printers, etc. as shown in Figure 4.
Can be connected with a real cable.
第4図は、SCSIを使用したシステム構或を示したも
のである。図において、10.〜10,はディスク装置
やプリンタ等の周辺装置であり、20.及び20.は周
辺装置10o〜10,の上位装置であり、30は各上位
装置及び周辺装置を接続するscs rバスである。FIG. 4 shows a system configuration using SCSI. In the figure, 10. ~10, are peripheral devices such as disk devices and printers, and 20. and 20. is a host device of the peripheral devices 10o to 10, and 30 is an SCSR bus that connects each host device and peripheral device.
各周辺装置10o〜10sは、I/Oコントローラ11
.〜11,により、SCSIバス30を介して上位装置
20。又は20,と接続し、データ転送を行う。周辺装
置中の10oは、磁気ディスク装置や光ディスク装置等
のディスク装置であり、バンファ111を備えたI/O
コントローラ(以下ディスク制御部という)11。によ
り複数のディスク部12o〜12mの一つをSCSIバ
ス30に接続して上位装置20。又は20,との間のデ
ータ転送を制御する。Each peripheral device 10o to 10s is an I/O controller 11
.. ~11, to the host device 20 via the SCSI bus 30. or 20, to transfer data. 10o in the peripheral device is a disk device such as a magnetic disk device or an optical disk device, and is an I/O device equipped with a bumper 111.
Controller (hereinafter referred to as disk control unit) 11. The host device 20 connects one of the plurality of disk units 12o to 12m to the SCSI bus 30. or 20.
上位装置20oにおいて、21はプロセッサ、22はメ
モリ、23はDMA転送を制御するDMAコントローラ
、24はホストバス、25はホストバス24とSCS
Iバス30との接続及びデータ転送を制御するホストア
ダプタである。この構或は、上位装置20,についても
同様である。In the host device 20o, 21 is a processor, 22 is a memory, 23 is a DMA controller that controls DMA transfer, 24 is a host bus, and 25 is a host bus 24 and an SCS.
This is a host adapter that controls connection with the I bus 30 and data transfer. This structure also applies to the host device 20.
このようにインタフェースにSCSIを持つシステムで
は、次のような特徴を有している。A system having SCSI as an interface as described above has the following characteristics.
■ ホストバスの負担の軽減化
すなわち、従来システムはSCS Iバス30がなく、
各周辺装置の■/○コントローラ11.〜115が直接
1台の上位装置(20.とする)のホストバス24に接
続される構或になっていたため、ホストバス24の負担
が大きかった。これに対して、インタフェースにSCS
Iを持つシステムでは、ホストバス24とは別にsc
siバス30を設けて各周辺装置20G及び20.と接
続するようにし、各周辺装置のコントロールをそれらの
I/Oコントローラ11.〜115に任せるようにした
ので、ホストバス24の負担を軽減することがてきる。■ Reducing the load on the host bus In other words, the conventional system did not have an SCSI bus 30,
■/○ controller for each peripheral device 11. 115 were configured to be directly connected to the host bus 24 of one host device (20.), which placed a heavy burden on the host bus 24. On the other hand, the SCS
In systems with I, the sc
An si bus 30 is provided to connect each peripheral device 20G and 20. and control each peripheral device from its I/O controller 11. 115, the load on the host bus 24 can be reduced.
■ バス上に多数の装置が接続可能
scs rバス24上には、各I/Oコントローラ及び
それらの上位装置を含めて、最大8台(図では、上位装
置2台、周辺装置6台)まで接続可能である。したがっ
て、従来システムよりも遥かに多くの種類及び数量の周
辺装置をバス上に接続することができる。■ Many devices can be connected on the bus. Up to 8 devices can be connected on the SCS R bus 24, including each I/O controller and their host devices (in the figure, 2 host devices and 6 peripheral devices). Connectable. Therefore, a much greater variety and quantity of peripheral devices can be connected on the bus than in conventional systems.
@ I/Oコントローラ同士間の通信が可能SCSI
では、上位装置と各I/Oコントローラとの間で通信が
可能である他、上位装置を介することなく、I/Oコン
トローラ同士で通信することができる。@SCSI allows communication between I/O controllers
In addition to being able to communicate between a host device and each I/O controller, the I/O controllers can also communicate with each other without going through a host device.
■ マルチタスク処理が可能
コマンド実行中のI/Oコントローラは、処理と処理の
間でSCSIバス30を切り離し、その間他のI/Oコ
ントローラがSCS Iバス30を使用して処理を行う
ことができる。■ Multitask processing is possible The I/O controller that is executing a command disconnects the SCSI bus 30 between processes, and other I/O controllers can use the SCSI bus 30 to perform processing during that time. .
次に、インタフェースにSCSIを持つシステムでは、
次の8フエーズ■〜■によりイニシェークとターゲット
間の通信が行われる。イニシェークはSCS Iバス3
0の使用権を獲得した装置であり、通常は上位装置であ
るが、SCSIではI/Oコントローラもイニシェーク
になることができる。ターゲットは、イニシェークの通
信相手装置である。Next, in systems with SCSI as an interface,
Communication between the initiator and the target is performed through the following eight phases (1) to (2). Initial shake is SCS I bus 3
This is a device that has acquired the right to use 0, and is usually a higher-level device, but in SCSI, an I/O controller can also be an initiator. The target is the device with which the inishke communicates.
■ ハス゛フリー゜フエーズ(bus free ph
ase )SCSIハス30をいかなる装置も使用して
いない状態である。■ Bus free ph
) The SCSI bus 30 is not being used by any device.
■ アービトレーション・フェーズ(arbitrat
ionphase)
バス・フリー状態にあるSCSIバス30に対する複数
装置からの使用権獲得要求に対し、一つの装置(例えば
最高優先順位の装置)がバス使用権を獲得する処理が行
われる。■ Arbitration phase
ionphase) In response to requests from a plurality of devices to acquire the right to use the SCSI bus 30 in the bus free state, one device (for example, the device with the highest priority) acquires the right to use the bus.
■ セレクション・フエーズ(selection p
hase)アービトレーシゴンの実行によりSCSIバ
スの使用権を獲得した装置すなわちイニシェークが、メ
ッセージアクトフェーズの説明、特定のターゲットを選
択する処理が行われる。■ Selection phase
(hase) The device that has acquired the right to use the SCSI bus by executing the arbitration process, that is, the initiator, explains the message act phase and selects a specific target.
■ コマンド●フェーズ(command phase
)選択されたターゲットは、イニシェークからのコマン
ドを受け取る。■ Command phase
) The selected target receives commands from the inishek.
■ データ・フェーズ(data phase)イニシ
ェークからのコマンドに従ったデータの転送が行われる
。■ Data phase (data phase) Data is transferred in accordance with commands from the inishake.
■ ステータス・フェーズ(status phase
)コマンドの実行を完了したターゲットは、その実行が
正常終了したか異常終了したか等の実行結果を知らせる
ステータスをイニシェークに送る。■ Status phase
) The target that has completed the execution of the command sends a status to the initiator indicating the execution result, such as whether the execution ended normally or abnormally.
■ メ・ノセージ・イン・フェーズ(message
in phase)
ステータス・フェーズに続いて、ターゲットがイニシェ
ークに、有効なステータスバイトを通知したことを示す
メッセージ(コマンドコンブリート メッセージ)を通
知する。■ message in phase
(in phase) Following the status phase, the target notifies the inishek of a message (command complete message) indicating that it has notified a valid status byte.
またコマンドフェーズの後に本フエーズによりDisc
onnectメッセージをイニシェークに送信し、SC
SIバスをDisconnectすることを通知する。Also, after the command phase, this phase
onnect message to the inishek and the SC
Notifies that the SI bus will be disconnected.
■ リセレクション・フエーズ(reselectio
n phase)
リセレクション・フエーズは、scs rの特徴をなす
フエーズである。すなわち、イニシェー夕より受け取っ
たコマンドがその結果を直ちにイニシェークに返す必要
のないものであるとき、ターゲットはイニシェークとの
接続を一時切り離す(ディスコネクトする)ことができ
、この間他の倉庫にscs rパス30が開放される。■Reselection Phase
n phase) The reselection phase is a characteristic phase of scs r. In other words, when the command received from the initiator does not require the result to be immediately returned to the initiator, the target can temporarily disconnect from the initiator, and during this time send the scsr path to another warehouse. 30 will be released.
リセレクション・フエーズは、ディスコネクトされたに
よって中断されたコマンドの再実行と、バスを再接続(
リコネクト)するためのフエーズである。The reselection phase consists of re-execution of commands interrupted by disconnection and reconnection of the bus (
This is the phase for reconnecting.
このリセレクシゴン・フェーズに入る前には、前述のア
ービトレーション・フエーズが実行される。SCSIで
は、このディスコネクト/リコネクト機能及びアービト
レーション機能により、マルチタスク機能を可能にして
いる。Before entering this reseleccigon phase, the aforementioned arbitration phase is executed. SCSI enables multitasking functionality through the disconnect/reconnect function and arbitration function.
SCSIで使用されるコマンドの仕様として、ANSI
(米国規格協会)の提案するCCS(Common C
ommand Set)が広く一般的に使用されている
。As a specification for commands used in SCSI, ANSI
CCS (Common C) proposed by (American National Standards Institute)
command Set) is widely and commonly used.
CCSでは、ディスク装置に対し、SCS Iハスの占
有率を必要最小限に規定するために、ディスク装置又は
ディスク制御部(第4図のディスク制御部11)が持つ
バッファ111内のデータ量によってSCS Iバスの
使用率を制御するようなバッファ制御用のパラメータを
定めている。In the CCS, in order to specify the occupancy rate of the SCS I hash to the minimum necessary for the disk device, the SCS Buffer control parameters are defined to control the usage rate of the I bus.
このパラメータは、バッファフル・レシオ(buffe
r full ratio)又はバッファエンプテイ・
レシオ(buffer empty ratio)であ
り、イニシェークからのモードセレクト・コマンド(m
ode selectcomman )により定められ
る。This parameter is the buffer full ratio (buffe
r full ratio) or buffer empty
mode select command (m
ode selectcomman).
このパラメータにより、例えばディスク部12。からデ
ータをリードして上位装置(20oとする)のコンピュ
ータ本体に転送する際に、バッファ111内にある程度
リードデータが溜まってからSCSIバス30上て上位
装置20。のコンピュータ本体と論理的に結合し、DM
A転送により高速でデータを転送することが可能になる
。これにより、ディスク装置100がデータをリードす
るに要する時間よりも短い時間で、SCSIバス30上
でのデータ転送を行うことができる。This parameter determines, for example, the disk unit 12. When reading data from and transferring it to the computer main body of the host device (20o), a certain amount of read data has accumulated in the buffer 111, and then the data is transferred on the SCSI bus 30 to the host device 20. DM
A transfer allows data to be transferred at high speed. Thereby, data can be transferred on the SCSI bus 30 in a shorter time than the time required for the disk device 100 to read data.
また、上位装置から転送されるデータをディスク部ヘラ
イトする場合には、バッファ111が満杯(フル)にな
った場合、速やかにscs rバス30とデータ制御部
10.をディスコネクトし、他の周辺装置がSCSIバ
ス30を利用できるようにする。このようにディスク装
置10。は、満杯になったバ・ンファ111内のデータ
をある程度ディスク部12。にライトするまで、又は空
(エンプティ)になったバッファ内にある程度ディスク
部12。からリードするまで、次のりコネクト(再結合
)するタイミングを遅らせて、その間は他の周辺装置が
SCSIバス30を利用できるようにする。このように
することにより、前述のようにマルチタスクを可能にし
、かつ、SCSIハスを有効的に使用できる。Further, when writing data transferred from a host device to the disk unit, when the buffer 111 becomes full, the data is immediately transferred to the SCS R bus 30 and the data control unit 10. The SCSI bus 30 is then disconnected to allow other peripheral devices to use the SCSI bus 30. In this way, the disk device 10. The data in the full buffer 111 is transferred to the disk unit 12 to some extent. The disk unit 12 remains in the buffer until it is written to or becomes empty. The next reconnection (reconnection) timing is delayed until the SCSI bus 30 is read from the SCSI bus 30, and other peripheral devices can use the SCSI bus 30 during that time. By doing so, multitasking is enabled as described above, and the SCSI bus can be used effectively.
ただし、これらのパラメータはディスクのり一ド/ライ
ト速度と比べSCS Iパス上での転送速度の方が速い
場合にのみ意味をもつ。However, these parameters have meaning only when the transfer speed on the SCSI path is faster than the disk read/write speed.
次に、第5図及び第6図を参照して、インタフェースに
SCSIを持ち、SCSIの仕様に従ってバッファII
Iを介してディスク装置10.に対するリード/ライト
を行うディスク装置又はディスク制御部のバッファ制御
方式について説明する。Next, with reference to FIGS. 5 and 6, if the interface has SCSI and Buffer II is configured according to the SCSI specifications,
Disk device 10. A buffer control method for a disk device or a disk control unit that reads/writes data will be explained.
データがライトされているディスク部12oからデータ
をリードする場合は、ディスク部l2上の指定されたブ
ロック(記録単位)を指定数だけ連続的にリードしてバ
ッファ111に格納する。When reading data from the disk section 12o on which data has been written, a specified number of blocks (recording units) on the disk section l2 are successively read and stored in the buffer 111.
この操作は連続的に行われるが、一般的に1つのブロッ
クのデータはブロック最後に付加されているエラー検出
用コードによるエラーチェックを行ないデータの正当性
が確認されてからでないと、すなわち1つのブロックの
リードが完結してからでないと、SCS Iバス30上
にデータは出力されない。This operation is performed continuously, but generally, the data in one block must be checked for errors using an error detection code attached to the end of the block, and the validity of the data has been confirmed. Data is not output onto the SCSI bus 30 until the reading of the block is completed.
したがって、SCSIバス30に出力すべきデータ量を
バッファ111内のデータ量と見なす場合、1つのブロ
ックのリードが完結してから、そのブロックのデータ量
だけバッファ111内のデータ量が増加すると考えた方
が理解し易い。そこで、以下で説明する第5図及び第6
図では、1つのブロックのリードが完結してから、その
ブロックのデータ量だけバッファlll内のデータ量が
増加するように図示されている。Therefore, when considering the amount of data to be output to the SCSI bus 30 as the amount of data in the buffer 111, it is assumed that after the read of one block is completed, the amount of data in the buffer 111 increases by the amount of data in that block. easier to understand. Therefore, Figures 5 and 6, which will be explained below,
In the figure, after reading of one block is completed, the amount of data in the buffer ll increases by the amount of data of that block.
また、前述のようにリコネクトは、リードコマンドで指
定されたブロック数に対し、ある割合(バッファフル・
レシオ)たけバッファ111内にデータが溜まった時に
開始されるが、第5図及び第6図の場合は、一例として
リードブロック数を8とし、2ブロックだけリードした
時にリコネクト(セレクション・フェーズ)を行うよう
に、モ一ドセレクト・コマンドのパラメータが指定され
ているとする。In addition, as mentioned above, reconnect performs a certain proportion (buffer full) of the number of blocks specified in the read command.
The reconnection (selection phase) starts when data is accumulated in the buffer 111 (ratio), but in the case of FIGS. Assume that the parameters of the mode select command are specified as follows.
先ず、理想的な場合のバッファ制御方式を、第5図の動
作タイミングチャートを参照して説明する。なお、説明
を簡単にするためデータ制御部10oがSCS Iバス
30の使用権を獲得するアービトレーション・フェーズ
等のりセレクション・フェーxRS前の各フエーズに関
する処理は、以下の説明では省略されている。First, the buffer control method in an ideal case will be explained with reference to the operation timing chart of FIG. In order to simplify the explanation, processing related to each phase before the selection phase xRS, such as the arbitration phase in which the data control unit 10o acquires the right to use the SCSI bus 30, is omitted in the following explanation.
■ ディスク12oよりデータリードが開始されると(
時間t0)、1ブロック分のデータリードが完結する毎
に、ノタッファ111に1ブロック分のリードデータの
格納が完了したと見なされる(第5図中)、(C)、時
間t。% l j2等)。■ When data reading starts from disk 12o (
At time t0), each time data read for one block is completed, it is considered that storage of one block of read data in the notuffer 111 is completed (see FIG. 5), (C), time t. % l j2 etc.).
t
■ 指定されたバッファフル・レシオである2ブロック
のリードデータがバッファ111に格納されると、ディ
スク制御部1lはリセレクション・フェーズRSを実行
して、所定のイニシエータ(上位装置20.とする)と
結合する処理を行う(第5図(a)のRS)。t ■ When two blocks of read data with a specified buffer full ratio are stored in the buffer 111, the disk control unit 1l executes a reselection phase RS and selects a predetermined initiator (upper device 20. ) (RS in FIG. 5(a)).
■ リセレクション・フェーズRSが終了すると、ディ
スク制御部1lは、メッセージ・イン・フェーズMSG
I aを実行して上位装置20。との間でメッセージ
の交換を行ない、上位装置20oにデータリードを行う
ディスク部12。の機番(ディスク部を識別するID番
号)を通知する(第6図(a)のMSG I a)。■ When the reselection phase RS ends, the disk control unit 1l sends the message in phase MSG.
The host device 20 executes Ia. The disk unit 12 exchanges messages with the disk unit 12 and reads data from the host device 20o. (MSG Ia in FIG. 6(a)).
なお、リセレクション・フェーズRS及びメッセージ・
イン・フェーズMSGlaの実行中にも、ディスク部1
2。からのリードデータは、ブロック単位でバッファ1
11に格納されている(第5図(b))。In addition, the reselection phase RS and message
Even during the execution of in-phase MSGla, the disk unit 1
2. The read data from is stored in buffer 1 in blocks.
11 (FIG. 5(b)).
■ メッセージ・イン・フェーズMSGI aの実行が
終了すると、ディスク制御部11は、データ・フェーズ
を実行し、ディスク部12oよりデータリードを行ない
ながら、バッファ111に格納されたデータをブロック
単位で上位装置20.に転送する。■ When the execution of the message-in-phase MSGI a is completed, the disk control unit 11 executes the data phase, and while reading data from the disk unit 12o, transfers the data stored in the buffer 111 to the host device in blocks. 20. Transfer to.
今、上位装置20。へのデータの転送速度はディスク1
2.からのデータリード速度より高速であると仮定する
と、バッファ111のデータは減少して行き、時間t,
lで所定の8ブロック分のデータかディスク部12。よ
りリードされると、時間t3よりも僅かに遅れた時間t
4において、データ転送は終了する(第5図(b))。Currently, the host device is 20. The data transfer speed to disk 1 is
2. Assuming that the data read speed is faster than the data read speed from t, the data in the buffer 111 decreases until time t
The data for the predetermined 8 blocks is stored in the disk section 12. When the time t is led, the time t is slightly delayed from the time t3.
4, the data transfer ends (FIG. 5(b)).
■ データ・フェーズが終了すると、ディスク制御部1
1はステータス・フェーズSTSを実行して、コマンド
が正常終了したか異常終了したか等の実行結果を知らせ
るステータス情報を上位装置200に送る。次いでメッ
セージ・イン・フェーズMSGIbを実行して、コマン
ド・コンプリートのメッセージを上位装置20。に送り
、SCSIバス30からディスコネクトする(第5図(
a)のSTS及びMSG I b)。■ When the data phase ends, disk controller 1
1 executes the status phase STS and sends status information to the host device 200 to notify the execution result, such as whether the command ended normally or abnormally. Next, the message-in-phase MSGIb is executed and a command complete message is sent to the higher-level device 20. and disconnect from the SCSI bus 30 (see Figure 5).
a) STS and MSGI b).
以上のようにして、上位装置20。より受けたデータリ
ードコマンドは、正常に終了する。As described above, the host device 20. The data read command received from the above ends normally.
なお、第5図において、T1はバッファフル・レシオで
指定する値によって決まる時間で、磁気ディスクからの
データリードを開始してからSCSIバス30とのディ
スコネクトを開始するまでの時間を示す。また、T2は
、磁気ディスクからのデータリードを終了してから、デ
ータ・フェーズ、ステータス・フェーズ等のSCSI上
のフェーズを実行してバスフリーに移行するまでの時間
を示す。In FIG. 5, T1 is a time determined by the value specified by the buffer full ratio, and indicates the time from the start of data reading from the magnetic disk until the start of disconnection with the SCSI bus 30. Further, T2 indicates the time from the end of reading data from the magnetic disk to the time when phases on the SCSI, such as the data phase and the status phase, are executed and the transition to the bus free state occurs.
以上説明したバンファ制御方式は、上位装置20oへの
データ転送中にバッファ111が空になってSCSIバ
ス30のディスコネクトが行われない理想的な場合の動
作例である。The bumper control method described above is an example of an operation in an ideal case where the buffer 111 becomes empty and the SCSI bus 30 is not disconnected during data transfer to the host device 20o.
次に、上位装置20。へのデータ転送中にバッファ11
1が空になってSCSIバス30のディスコネクトが行
われる場合のバッファ制御方式を、第6図を参照して説
明する。Next, the host device 20. buffer 11 during data transfer to
A buffer control method when SCSI bus 30 is disconnected when SCSI bus 30 becomes empty will be described with reference to FIG.
■ ディスク12oよりデータリードが開始されると(
時間L。Llブロック分のデータリードが完結する毎に
、バッファ111に1プロック分のリードデータの格納
が完了したと見なされる(第6図(b)、(C)、時間
t0、 ,、t2等)。■ When data reading starts from disk 12o (
Time L. Each time data read for L1 blocks is completed, it is considered that storage of read data for one block in the buffer 111 is completed (FIG. 6(b), (C), times t0, . . . , t2, etc.).
t
■ 指定されたバッファフル・レシオである2ブロック
のリードデータがバッファ111に格納されると、ディ
スク制御部l1はリセレクション・フェーズRSを実行
して、上位装置20oと結合する処理を行う(第6図(
a)のRS)。t ■ When two blocks of read data at the specified buffer full ratio are stored in the buffer 111, the disk control unit l1 executes the reselection phase RS and performs the process of combining with the host device 20o ( Figure 6 (
a) RS).
■ セレクション・フエーズRSが終了すると、データ
制御部11は、メッセージ・イン・フェーズMSG I
aを実行して上位装置20.との間でメッセージの交
換を行ない、上位装置20。にデータリードを行うディ
スク部12。を識別するID番号を通知する(第6図(
a)のMSGIa)。■ When the selection phase RS ends, the data control unit 11 starts the message in phase MSG I
Execute step a on the host device 20. The host device 20 exchanges messages with the host device 20. A disk unit 12 performs data reading. (Figure 6 (
a) MSGIa).
なお、セレクション・フエーズRS及びメッセージ・イ
ン・フエーズMSGIaの実行中にも、ディスク部12
。からのリ−ドデータは、ブロック単位でバッファ11
1に格納されている(第6図(b))。Note that even during execution of selection phase RS and message in phase MSGIa, the disk unit 12
. The read data from is sent to the buffer 11 in block units.
1 (FIG. 6(b)).
■ メッセージ・イン・フェーズMSGI aの実行が
終了すると、データ制御部1lは、データ・フェーズを
実行し、ディスク部12。よりデータリードを行ないな
がら、ハッファ111に格納されたデータをブロック単
位で上位装置20。に転送する。■ Message-in-phase When the execution of MSGI a is completed, the data control unit 1l executes the data phase, and the data control unit 1l executes the data phase. The host device 20 reads data stored in the huffer 111 block by block while reading data. Transfer to.
以上の■〜■までの動作は、第5図における■〜■まで
の動作と同しである。The above operations from 1 to 2 are the same as those from 1 to 2 in FIG. 5.
■ 本発明が有効となる環境条件として、上位装置20
。へのデータの転送速度は、ディスク12。からのデー
タリード速度より高速であることを仮定しているので、
いま、ディスク部12。からブロック7までのデータリ
ードが終了してバッファ111に格納され、次のブロッ
ク8のデータをリード中に上位装置20。に対するブロ
ック7までのデータ転送が終了したとする(第6図中)
、(C)、L,)。■ As an environmental condition under which the present invention is effective, the host device 20
. The data transfer speed to the disk is 12. Since it is assumed that the data read speed from
Now, disk part 12. The data read from block 7 to block 7 is completed and stored in the buffer 111, and the host device 20 is reading the data of the next block 8. Assume that the data transfer up to block 7 has been completed for (in Figure 6)
,(C),L,).
ディスク制御部1lは、バンファ111が空になったこ
と検出すると、メッセージ・イン・フェーズMSG I
cとMSG T dを実行し、セーブ・データ・ポイ
ンタ・メッセージとディスコネクト・メッセージを上位
装置20.に送り、SCS Iバス30をディスコネク
トする処理を行う(第6図(a)のMSGIc,MSG
Id)。When the disk control unit 1l detects that the buffer 111 is empty, it sends a message in phase MSG I
c and MSG T d, and sends the save data pointer message and disconnect message to the upper device 20. and performs processing to disconnect the SCS I bus 30 (MSGIc, MSG
Id).
しかしながら、残りリードブロンクはわずかなので、こ
のメッセージ・イン・フエーズMSGlc及びMSG
I dを実行中にディスク部12。からのブロック8の
リードは終了して、バシッ7111に格納される(第6
図(b)、(C)、t4)。However, there are only a few lead broncs left, so this message in phase MSGlc and MSG
Disk unit 12 while executing I d. The reading of block 8 from
Figures (b), (C), t4).
■ ディスク制御部1lは、ディスク部■2。からのデ
ータリードが終了すると、前述の■及び■と同様にして
第6図(a)のt,以降に示すようにリセレクション・
フエーズRS及びメッセージ・イン・フェーズMSGT
aを実行し、SCSIバス30及び上位装置20.と
リコ不クトする。■ The disk control unit 1l is a disk unit ■2. When the data read from 1 is completed, reselection is performed as shown in t and after in FIG. 6(a) in the same manner as in the above
Phase RS and Message in Phase MSGT
Execute SCSI bus 30 and host device 20.a. ``I don't know what to do.''
■ 上位装置20。とりコネクトすると、データ制御部
11はデータ・フェーズを実行して、ハッファ111に
格納されている残りブロック8のリードデータを上位装
置20。に転送する。■ Host device 20. When connected, the data control unit 11 executes the data phase and transfers the read data of the remaining block 8 stored in the huffer 111 to the host device 20. Transfer to.
■ 時間t6でブロック8のデータ転送が終了すると、
ディスク制御部11は、前述の第5図の■の場合と同様
にして、ステータス・フエーズSTS及びメッセージ・
イン・フエーズMSGIbを実行して、SCSIバス3
0とディスコネクトする。■ When the data transfer of block 8 ends at time t6,
The disk control unit 11 receives the status phase STS and the message in the same manner as in the case (2) in FIG.
Run in-phase MSGIb to connect SCSI bus 3
Disconnect from 0.
以上のようにして、上位装置200へのデータ転送中に
バッファ111が空になった場合のバッファ制御はを終
了する。なお、第6図に示されているT,及びT2の意
味内容は、第7図に示されているT,及びT2の意味内
容と同じである。As described above, buffer control when the buffer 111 becomes empty during data transfer to the host device 200 ends. The meanings of T and T2 shown in FIG. 6 are the same as those of T and T2 shown in FIG.
インタフェースにSCSIを持ち、CCSの仕様に従っ
てバッファ111を介してディスク装置10oに対する
リードを行うディスク装置又はディスク制御部のバッフ
ァ制御方式においては、上位装置l2。にデータ転送中
にバッファが空になるとSCSIバスを一時ディスコネ
クトし、バッファ111に規定量のデータが溜まった段
階で再びリコネクトする処理が行われる。SCS Iハ
ス30を一旦ディスコネクトすると、その間に他の装置
がSCSIバス30の使用権を獲得するようになるので
、リコネクトが直ちに可能になるという保証はない。こ
のため、このリコネクトに要した時間だけ、所定ディス
ク部12。からのデータリードを終了してからSCS
I上のフェーズを実行してバスフリーへ移行するまでの
時間(第6図及び第7図の時間T2)が増大し、コマン
ドの要処理時間が増大する。In a buffer control method for a disk device or a disk controller that has SCSI as an interface and reads from the disk device 10o via the buffer 111 according to the CCS specifications, the host device l2. When the buffer becomes empty during data transfer, the SCSI bus is temporarily disconnected, and when a specified amount of data has accumulated in the buffer 111, the process is performed to reconnect it again. Once the SCSI bus 30 is disconnected, there is no guarantee that reconnection will be possible immediately, since other devices will have acquired the right to use the SCSI bus 30 in the meantime. Therefore, the predetermined disk unit 12 is closed for the time required for this reconnection. SCS after finishing reading data from
The time required to execute the phase I and transition to bus free (time T2 in FIGS. 6 and 7) increases, and the time required to process the command increases.
従来のバッファ制御方式においては、上位装置12。へ
のデータ転送中にディスコネクトを生しさせないために
は、データリード時はバッファ11lがデータ転送途中
で空にならないようにする必要がある。すなわち、パラ
メータTI (バッファフル・レシオで指定する値に
よって決まる時間で、ディスク部12.からのデータリ
ードを開始してからSCSIバス30とのりコネクトを
開始するまでの時間TI、第6図及び第7図参照)を長
くし、バッファ111に十分なり−ドデータが溜まって
から、データ転送を開始させることが必要である。In the conventional buffer control method, the host device 12. In order to prevent disconnection from occurring during data transfer, it is necessary to prevent the buffer 11l from becoming empty during data transfer when reading data. In other words, the parameter TI (the time determined by the value specified by the buffer full ratio; the time TI from the start of data read from the disk unit 12. to the start of connection with the SCSI bus 30, as shown in FIGS. 6 and 6). It is necessary to make the buffer 111 long (see FIG. 7) and start data transfer after enough code data has accumulated in the buffer 111.
このリコネクト開始時間T,は、リコネクト時のりセレ
クション・フェーズRS及びメッセージ・イン・フエー
ズMSG I aの実行に要する時間、SCSI上のデ
ータ転送速度、ディスク部のり一ド/ライト速度、コマ
ンドで指定するり一ド/ライトブロック数等の要素を考
慮し、データ転送途中でパッファが空にならない範囲で
最小になるように決定するのが望ましい。This reconnection start time T, is specified by the time required to execute the selection phase RS and message in phase MSG Ia during reconnection, the data transfer rate on the SCSI, the disk unit read/write speed, and the command. It is desirable to consider factors such as the number of read/write blocks and to determine the minimum number of buffers without emptying the buffer during data transfer.
しかしながら、前記要素の数が多くかつ変動するため、
第5図の理想状態が実現するようにリコネクト開始時間
T1を最適値に設定することは困難であるので、実際に
は各要素の変動を考慮して、T,に一定のマージンを持
たせるようにしている。However, because the number of said elements is large and variable,
Since it is difficult to set the reconnection start time T1 to an optimal value so as to realize the ideal state shown in Fig. 5, in reality, it is necessary to take into account fluctuations in each element and set a certain margin for T. I have to.
リコネクト開始時間T1にマージンが無い場合は、第6
図で説明したように指定ブロック数のデータをすべてリ
ードする前にハッファエンブティが検出されて、残り転
送ブロックがわずかであるにもかかわらずSCSIバス
30をディスコネクトする事態が発生しやすくなる。こ
の場合は、第6図のようにデータ転送中にディスコネク
トを生しない理想的な場合に比べて、ディスコネクトと
リコネクトに要する時間、すなわちメッセージ・イン・
フエーズMSGI c,メッセージ・イン・フェーズM
SGI d,リセレクション・フェーズRS及びメッセ
ージ・イン・フエーズMSGIaの各フェーズの実行時
間だけT2が増加し、結果的にリードコマンドの実行時
間が増加するようになるという問題を生じる。If there is no margin for reconnection start time T1, the 6th
As explained in the figure, a situation where a huffer entity is detected before all the data of the specified number of blocks is read, and the SCSI bus 30 is disconnected even though there are only a few transfer blocks remaining, is likely to occur. . In this case, compared to the ideal case where disconnection does not occur during data transfer as shown in Figure 6, the time required for disconnection and reconnection, that is, the message in
Phase MSGI c, Message in Phase M
T2 increases by the execution time of each phase of SGI d, reselection phase RS, and message in phase MSGIa, resulting in a problem that the execution time of the read command increases.
一方、T.を長くしてリコネクト開始時間T,のマージ
ンを十分にとると、T2もT1のマージン分だけ長くな
るので、やはりリードコマンドの実行時間が増加するよ
うになる。T,のマージンの取り過ぎによるT2の増加
はリードコマンド実行毎に生しるので、第6図に示すよ
うにTIのマージン不足により時々発生するT2の増加
よりも結果的に大きくなり、システム性能に与える影響
は大きくなるという問題を生じる。したがって、T,の
マージンは大きく取れず、その場合は必然的に第6図の
ような状態が発生するのを許さなければならなかった。On the other hand, T. If T2 is lengthened to provide a sufficient margin for the reconnection start time T, T2 will also be lengthened by the margin of T1, which will also increase the execution time of the read command. Since the increase in T2 due to taking too much margin for T occurs every time a read command is executed, the result is larger than the increase in T2 that sometimes occurs due to insufficient margin for TI, as shown in Figure 6, and the system performance decreases. The problem arises that the impact on Therefore, it is not possible to provide a large margin for T, and in that case, it is necessary to allow the situation shown in FIG. 6 to occur.
このように、従来のインタフェースにSCSIを持ち、
CCSの仕様に従ってバッファを介してディスク装置に
対するリード/ライトを行うディスク装置又はディスク
制御部のバッファ制御方式においては、リコネクト開始
時間T1のマージンを大きく取れず、このため、データ
転送途中にバッファエンブティになってSCS Iバス
をディスコネク卜する事態が発生してリードコマンドの
実行時間が長くなり、スループットが低下するという問
題があった。In this way, having SCSI as a conventional interface,
In the buffer control method of the disk device or the disk controller that reads/writes to the disk device via the buffer according to the CCS specifications, it is not possible to secure a large margin for the reconnection start time T1, and therefore, the buffer emptying is performed during data transfer. There is a problem in that a situation occurs in which the SCSI bus is disconnected, which increases the execution time of the read command and reduces throughput.
本発明は、連続リード動作中でかつ残り転送データ量が
所定データ量より少ない場合は、SCSIバスのディス
コネクト開始を一定時間以上延ばすことにより、磁気デ
ィスクからのデータリード時のスループットを向上させ
るように改良したディスク装置又はディスク制御部のバ
ッファ制御方式を提供することを目的とする。The present invention improves the throughput when reading data from a magnetic disk by delaying the start of SCSI bus disconnection for a certain period of time or more when a continuous read operation is in progress and the amount of remaining transfer data is less than a predetermined amount of data. It is an object of the present invention to provide a buffer control method for a disk device or a disk control unit that is improved.
前述の課題を解決するために本発明が採用した手段を、
第1図を参照して説明する。第1図は、本発明の原理図
を示したもので、同図(A)は本発明の実施システムの
基本構成を示すブロック図、同図(B)は本発明の動作
タイミングチャートである。The means adopted by the present invention to solve the above-mentioned problems are as follows:
This will be explained with reference to FIG. FIG. 1 shows a principle diagram of the present invention. FIG. 1(A) is a block diagram showing the basic configuration of a system for implementing the present invention, and FIG. 1(B) is an operation timing chart of the present invention.
第1図(A)において、先に第4図で説明したシステム
の構或と共通する構戒には、同じ符号が付されている。In FIG. 1(A), the same reference numerals are given to structures common to those of the system previously explained in FIG. 4.
すなわち、10は磁気ディスク、光ディスク等を記録媒
体とするディスク装置であり、その中の1台だけが図示
されている。That is, numeral 10 is a disk device that uses a magnetic disk, an optical disk, etc. as a recording medium, and only one of them is shown.
20はディスク装置10の上位装置であり、その中の1
台だけが図示されている。30は各上位装置20及びデ
ィスク装置10を接続するSCSIバスである。20 is a host device of the disk device 10, one of which
Only the stand is shown. Reference numeral 30 denotes a SCSI bus that connects each host device 20 and disk device 10.
ディスク装置10は、バッファ111を備えたディスク
制御部11により複数のディスク部12(1台だけが図
示されている)の一つをSCSIバス30に接続して上
位装置20との間のデータ転送を制御する。The disk device 10 connects one of the plurality of disk units 12 (only one is shown) to the SCSI bus 30 by a disk control unit 11 equipped with a buffer 111, and transfers data between it and the host device 20. control.
本発明は以上説明したシステムによって実施されるもの
であって、以下のように構或される。The present invention is implemented by the system described above, and is constructed as follows.
すなわち、インタフェースにSCSIを持ち、上位装置
(20)からり一ド/ライトのコマンドを受けたときC
CSの仕様に従ってバッファ(l11)を介してディス
ク部(12)に対するり一ド/ライトを行うディスク装
置(lO)又はディスク制御部(11)のパッファ制御
方式において、(a) バッファ(111)内のデー
タ量が空になったことにより、scs rバス(30)
をディスコネク卜するタイミングを検出し、
(b) 前記scsiバス(30)をディスコネクト
するタイミングが検出されたとき、連続リード動作中で
かつ残り転送データ量が所定のデータ量以下である場合
に、SCSIバスのディスコネクト開始を一定時間だけ
延ばし、該一定時間内にリードされた残りデータ量を上
位装置(20)に転送する、ように構威される。In other words, when the interface has SCSI and a read/write command is received from the host device (20), the C
In a puffer control method of a disk device (lO) or a disk controller (11) that performs read/write to a disk unit (12) via a buffer (l11) according to CS specifications, (a) inside the buffer (111); The amount of data in the scs r bus (30) has become empty.
(b) When the timing to disconnect the scsi bus (30) is detected, if a continuous read operation is in progress and the remaining transfer data amount is less than a predetermined data amount, The start of disconnection of the SCSI bus is delayed by a certain period of time, and the remaining amount of data read within the certain period of time is transferred to the host device (20).
前記所定データ量は、ディスコネクトとリコネクトに要
する時間、すなわち第6図におけるMSGIc,MSG
Id,RS,MSGIaの各フェーズの実行時間の合計
時間を、■ブロック毎に発生するT3 (無転送時間と
いう)で割った値であり、単位はブロック数である。The predetermined data amount is the time required for disconnection and reconnection, that is, MSGIc and MSG in FIG.
It is a value obtained by dividing the total execution time of each phase of Id, RS, and MSGIa by (1) T3 (referred to as non-transfer time) that occurs for each block, and the unit is the number of blocks.
本発明の作用を、第1図(B)の動作タイミングチャー
トを参照して説明する。The operation of the present invention will be explained with reference to the operation timing chart of FIG. 1(B).
第1図(B)の(a)はSCS Iの仕様で上位装置2
0(イニシェーク)とディスク装710(夕一ゲット)
間のデータ転送する場合の処理フエーズを示したもので
、RSはリセレクシゴン・フェーズ、MSGIa及びM
SGIbはメッセージ・イン・フェーズ、データ・フェ
ーズはデータ転送を行うフェーズであり、それらの内容
については、既に説明したとおりである。(a) in Figure 1 (B) is the specification of SCS I, and the host device 2
0 (inishek) and disk mounting 710 (Yuichi get)
RS is the reseleccigon phase, MSGIa and M
SGIb is a message-in phase, and data phase is a phase for data transfer, the contents of which have already been described.
同図(B)の(b)は、リードにおける各動作タイミン
グにおけるバンファ111内のデータ量の変化状態を示
し、同図(B)の(C)は、ディスク部12よりデータ
がブロック単位でリードされる様子を示す。(B) of the same figure shows the state of change in the amount of data in the bumper 111 at each operation timing in reading, and (C) of the same figure (B) shows that data is read from the disk unit 12 in blocks. This shows how it is done.
なお、前述のようにリコネクトは、リードコマンドで指
定されたブロック数に対し、指定されたバッファフル・
レシオだけバッファ111内にデータが溜まった時に開
始されるが、第1図(B)の場合は、リードブロック数
を8とし、2ブロックだけリードした時にリコネクトを
行うように、モードセレクト・コマンドのバッファ制御
パラメータが指定されているとする。Note that, as mentioned above, reconnect is performed when the specified buffer is full for the number of blocks specified in the read command.
It starts when the data is accumulated in the buffer 111 by the ratio, but in the case of FIG. 1(B), the number of read blocks is set to 8, and the mode select command is set so that the reconnection is performed when only 2 blocks have been read. Assume that buffer control parameters are specified.
説明を簡単にするためデータ制御部lO0がSCSIバ
ス30の使用権を獲得するアービトレーシゴン・フエー
ズに関する処理はフェーズの実行時間が他のフェーズに
以べて十分に短いので、以下の説明では省略する。To simplify the explanation, the processing related to the arbitration phase in which the data control unit lO0 acquires the right to use the SCSI bus 30 has a sufficiently shorter execution time than other phases, so the following explanation will not be given. Omitted.
■ ディスク部12よりデータリードが開始され(時間
t。)、■ブロック分のデータリードが完結する毎に、
バッファ111に1ブロック分のリードデータの格納が
完了したと見なされる(第1図(B)の(ロ)、(C)
、時間to、tl,t2等)。■ Data reading is started from the disk unit 12 (time t), and ■ Each time data reading for a block is completed,
It is assumed that one block of read data has been stored in the buffer 111 ((B) and (C) in FIG. 1(B)).
, time to, tl, t2, etc.).
■ 指定されたバッファフル・レシオである2ブロック
のリードデータがバッファ111に格納されると、ディ
スク制御部11はリセレクション・フェーズRSを実行
して、上位装置20と結合する処理を行う(第1図(B
)の(a)のRS)。■ When two blocks of read data at the specified buffer full ratio are stored in the buffer 111, the disk control unit 11 executes the reselection phase RS to perform the process of combining with the host device 20 (the first Figure 1 (B
) of (a) RS).
■ リセレクション・フェーズRSが終了すると、ディ
スク制御部11は、メッセージ・イン・フェーズMSG
I aを実行して上位装置20との間でメッセージの
交換を行ない、上位装置20にデータリードを行うディ
スク部12の機番、すなわち該ディスク部12置を識別
するID番号を通知する(第1図(B)(a)のMSC
la)。■ When the reselection phase RS ends, the disk control unit 11 sends the message in phase MSG.
Ia is executed to exchange messages with the host device 20, and the host device 20 is notified of the machine number of the disk unit 12 from which data is to be read, that is, the ID number that identifies the location of the disk unit 12. MSC in Figure 1 (B) (a)
la).
なお、リセレクション・フェーズRS及びメッセージ・
イン・フェーズMSGIaの実行中にも、ディスク部l
2からのリードデータは、ブロック単位でバンファ11
1に格納されている(第1図(B)の(b))。In addition, the reselection phase RS and message
Even during the execution of in-phase MSGIa, the disk unit
Read data from 2 is sent to buffer 11 in block units.
1 ((b) in FIG. 1(B)).
■ メッセージ・イン・フエーズMSG I aの実行
が終了すると、ディスク制御部1lは、データ・フェー
ズを実行し、ディスク部l2よりデータリードを行ない
ながら、パッファ111に格納されたデータをブロック
単位で上位装置20に転送する。■ When the execution of the message-in-phase MSG Ia is completed, the disk control unit 1l executes the data phase, and while reading data from the disk unit l2, transfers the data stored in the buffer 111 to the upper block in units of blocks. Transfer to device 20.
■ いま、ディスク部11からブロック7までのデータ
リードが終了してバッファ111に格納され、次のブロ
ック8のデータをリード中に上位装置20に対するブロ
ック7までのデータ転送が終了したとする(第1図(B
)のい)、(C)、t3)。■ Suppose now that data read from the disk unit 11 to block 7 has been completed and stored in the buffer 111, and while data from the next block 8 is being read, data transfer to the host device 20 up to block 7 has been completed (the Figure 1 (B
), (C), t3).
ディスク制御部11は、バッファ111内のデータ量が
無くなったことにより、scsiバスをディスコネク卜
するタイミングを検出する。The disk control unit 11 detects the timing to disconnect the SCSI bus when the amount of data in the buffer 111 is exhausted.
■ SCSIバスをディスコネクトするタイ旦ングが検
出されると、ディスク制御部l1は、連続リード動作中
でかつ残り転送データ量が所定データ量より少ないかを
判別し、両者の条件が成立した場合にSCSIバス30
のディスコネクトを一定の無転送時間T3以上延ばすよ
うにする(第l図(B)(b)のT3)。■ When timing to disconnect the SCSI bus is detected, the disk control unit l1 determines whether continuous read operation is in progress and the amount of remaining transfer data is less than the predetermined amount of data, and if both conditions are met, SCSI bus 30
The disconnection is extended for a certain non-transfer time T3 or more (T3 in FIG. 1(B)(b)).
■ 連続リード動作中の場合は、無転送時間T3の間に
ディスク部12から残りブロック8の残りデータがリー
ドされて、バッファIIIに格納される(第1図(B)
(b)のtz 、t4、Ty )。■ When a continuous read operation is in progress, the remaining data of the remaining block 8 is read from the disk unit 12 during the non-transfer time T3 and is stored in the buffer III (Fig. 1 (B)).
(b) tz, t4, Ty).
■ ディスク制御部11はデータ・フェーズ実行中であ
るので、バッファ111にリードデータが格納されると
直ちにデータ転送を再開して、上位装置20に残りブロ
ック8の残りデータを送る((第■図( B ) (b
)のts)。■ Since the disk control unit 11 is executing the data phase, as soon as the read data is stored in the buffer 111, it resumes data transfer and sends the remaining data of the remaining block 8 to the host device 20 ((Fig. (B) (b
)'s).
■ 時間t5でブロック8の残りデータの転送が終了す
ると、データ制御部11は、ステータス・フェーズST
S及びメッセージ・イン・フェーズMSGIbを実行し
て、SCSIバス30とディスコネクトする。■ When the transfer of the remaining data of block 8 is completed at time t5, the data control unit 11 transfers the status phase ST
S and message in phase MSGIb to disconnect from the SCSI bus 30.
以上のようにして、上位装置20へのデータ転送中にバ
ッファ111が空になった場合にも、連続リード動作中
でかつ残り転送データ量が所定データ量より少ないとき
は、SCSIバス30はディスコネクトされず、残りデ
ータがり−ドされて上位装置20に転送される。As described above, even if the buffer 111 becomes empty while data is being transferred to the host device 20, the SCSI bus 30 will be disconnected from the disk drive if continuous read operations are in progress and the amount of remaining transfer data is less than the predetermined amount. The remaining data is loaded and transferred to the host device 20 without being connected.
なお、前述の動作説明ではディスク制御部11とディス
ク部12とか分離している設けられているが、両者が一
体となったディスク装置10とした場合にもそのバッフ
ァ制御動作は同じである。In the above description of the operation, the disk control section 11 and the disk section 12 are provided separately, but the buffer control operation is the same even when the disk device 10 is made up of an integrated disk control section 11 and disk section 12.
以上のように、上位装置20へのデータ転送中にバッフ
ァ111が空になった場合にも、連続リード動作中でか
つ残り転送データ量が所定データ量より少ないときは、
SCSIバス30のディスコネクトを一定時間T3以上
延ばすようにしたので、SCSIバス30のディスコネ
クトすることなく、残りデータを連続して転送できるの
で、リードコマンドの実行時間を短縮することができる
。As described above, even if the buffer 111 becomes empty during data transfer to the host device 20, if continuous read operation is in progress and the remaining transfer data amount is less than the predetermined data amount,
Since the disconnection of the SCSI bus 30 is extended for a certain period of time T3 or more, the remaining data can be transferred continuously without disconnecting the SCSI bus 30, so that the execution time of the read command can be shortened.
残りデータ量でディスコネクト実行のタイミングを制御
するようにしたので、残りデータ量が多い場合に不用意
にSCSIバス30を占有してシステム性能を低下させ
ることを阻止することができる。Since the timing of disconnection execution is controlled based on the amount of remaining data, it is possible to prevent the SCSI bus 30 from being inadvertently occupied and degrading system performance when there is a large amount of remaining data.
また、バッファ制御パラメータにより指定されるリコネ
クト開始時間T1の値にマージンが不要となるので、デ
ィスク部l2からのデータリードを終了したから、バス
・フリーへ移行するまでの時間T2が最小の値となるよ
うにパラメータを決定すればよく、データリード時のス
ルーブットを向上させることができる。Furthermore, since no margin is required for the value of the reconnection start time T1 specified by the buffer control parameter, the time T2 from the end of data reading from the disk unit l2 to the transition to the bus free state is the minimum value. It is only necessary to determine the parameters so that the data read throughput can be improved.
更に、最適なバッファ制御パラメータの決定は困難であ
るが、パラメータT1の値を誤って小さく設定されたた
めに、上位装置20へのデータ転送中にバンファ111
が空になった場合にも、残り転送量が少ない場合は、s
cs rバス30をディスコネクトすることなく、残り
データを連続して転送できるので、従来のバッファ制御
方式よりもリードコマンドの実行時間を大幅に短縮する
ことができる。Furthermore, although it is difficult to determine the optimal buffer control parameter, because the value of parameter T1 is erroneously set to a small value, buffer 111 during data transfer to host device 20
Even if s is empty, if the remaining transfer amount is small, s
Since the remaining data can be transferred continuously without disconnecting the CSR bus 30, the execution time of a read command can be significantly reduced compared to the conventional buffer control method.
〔実施例〕
本発明の実施例を、第1図乃至第3図を参照して説明す
る。第2図は本発明の一実施例の実施システムの構戒の
説明図、第3図は同実施例の動作フローチャートである
。第1図については、既に説明したとおりである。[Example] An example of the present invention will be described with reference to FIGS. 1 to 3. FIG. 2 is an explanatory diagram of the structure of an implementation system according to an embodiment of the present invention, and FIG. 3 is an operational flowchart of the embodiment. FIG. 1 has already been explained.
(A)実施例の構成
第2図において、ディスク装置10、ディスク制御部1
l、ディスク部l2、バッファIll、上位装置20及
びSCSIパス30については、第1図(A)で説明し
たとおりである。SCSIバス30にはディスク装置及
び上位装置が最大8台接続可能であるが、それぞれ1台
だけが図示されている。(A) Configuration of the embodiment In FIG. 2, a disk device 10, a disk controller 1
1, the disk unit 12, the buffer Ill, the host device 20, and the SCSI path 30 are as described in FIG. 1(A). Although up to eight disk devices and host devices can be connected to the SCSI bus 30, only one of each is shown in the figure.
ディスク制御部1lにおいて、バッファillは、F
I F O (first in first out
)形式でリード及びライトが並行して実行可能なデュア
ルポー} (dual port) R A Mである
。In the disk control unit 1l, the buffer ill is F
I F O (first in first out
) format in which reading and writing can be executed in parallel.
112はLSIチップからなるSCSI制御部テアリ、
SCS Iパス30とのディスコネクト及びリコネクト
を制御し、上位装置20と通信してそのコマンドを受信
する。112aはSCSI制で卸部112内に設けられ
たパイトカウンタであり、データ・フェーズ開始時にリ
ードコマンドで転送すべきデータのバイト数がセントさ
れ、データ転送が行われる毎にそのバイト数が城算され
る。したがって、パイトカウンタ112aのカウント個
は、残り転送データのバイト数を示すことになる。112 is a SCSI control unit Tearly consisting of an LSI chip;
It controls disconnection and reconnection with the SCS I path 30, communicates with the host device 20, and receives its commands. Reference numeral 112a denotes a byte counter provided in the wholesale section 112 according to the SCSI system, in which the number of bytes of data to be transferred with a read command is counted at the start of the data phase, and the number of bytes is calculated each time data transfer is performed. be done. Therefore, the count of the byte counter 112a indicates the number of bytes of remaining transfer data.
113はLSIチップからなるリード/ライト制御部で
あり、ライト時はバッファ111に格納されたデータを
ディスク部12にライトする制御を行い、リード時はデ
ィスク部12からリードしたデータをバッファに格納す
る制御を行う。113aはリード/ライト制御部113
内に設けられた状態表示レジスタであり、リード/ライ
ト制御部113の状態を表示する。この状態表示レジス
タ113aをリードすることにより、リード/ライト制
御部113が連続リード中であるか否かを判定すること
ができる。Reference numeral 113 denotes a read/write control unit consisting of an LSI chip, which controls writing the data stored in the buffer 111 to the disk unit 12 during writing, and stores the data read from the disk unit 12 in the buffer during reading. Take control. 113a is a read/write control unit 113
This is a status display register provided therein, and displays the status of the read/write control unit 113. By reading this status display register 113a, it is possible to determine whether the read/write control unit 113 is in continuous read mode.
114はバッファ制御部であり、バッファ111をFI
F○として制御するためのデュアルポートDMA制御を
行なうとともに、バッファ111がバッファフル又はバ
ッファエンブティ、及びデ−タ量がモードセレクトパラ
メータに従うしきい値に達したことを検出して割込み信
号を発生し、プロセッサ(MPU)1 1 5に送る。114 is a buffer control unit, which controls the buffer 111 as an FI
Performs dual port DMA control for control as F○, and generates an interrupt signal when detecting that the buffer 111 is full or empty, and that the amount of data has reached a threshold according to the mode select parameter. and sends it to processors (MPU) 1 1 5.
MPtJI15は、コマンドの解析、リード/ライト動
作の制御、割込み信号に対する処理等、各部の動作及び
ディスク装置10全体の動作を制御する。The MPtJI 15 controls the operations of each section and the overall operation of the disk device 10, such as command analysis, control of read/write operations, and processing of interrupt signals.
116はMPU115の制御用プログラムが格納される
ROMであり、117はMPU115が制御処理時に使
用する作業領域のあるRAMである。118は、MPU
115のアドレス/データパスである。116 is a ROM in which a control program for the MPU 115 is stored, and 117 is a RAM with a work area used by the MPU 115 during control processing. 118 is MPU
115 address/data paths.
(B)実施例の動作
第2図の動作すなわち本発明の一実施例の動作を、第1
図(B)のタイミングチャート及び第3図の動作フロー
チャートを参照し、動作順序に従って説明する。なお、
先に説明したように第1図(B)の場合は、リードブロ
ック数を8とし、2ブロックだけリードした時にリコネ
クトを行うように、モードセレクト・コマンドのハッフ
ァ制御パラメータが指定されているとする。(B) Operation of Embodiment The operation of FIG. 2, that is, the operation of one embodiment of the present invention, is
The operation sequence will be explained with reference to the timing chart in FIG. 3(B) and the operation flowchart in FIG. In addition,
As explained earlier, in the case of FIG. 1(B), it is assumed that the number of read blocks is 8 and the huffer control parameter of the mode select command is specified so that reconnection is performed when only 2 blocks have been read. .
説明を簡単にするためデータ制御部10oがSCSIバ
ス30の使用権を獲得するアービトレーション・フェー
ズに関する処理は、以下の説明では省略されている。To simplify the explanation, processing related to the arbitration phase in which the data control unit 10o acquires the right to use the SCSI bus 30 is omitted in the following explanation.
■ データリード時、ディスク制御部1lのリード/ラ
イト制御部113はディスク部12よりデータリードを
開始してバッファ111に格納する(時間t。)。1ブ
ロツク分のデータリードが完結する毎に、バッファ11
1に1ブロック分のリードデータの格納が完了したと見
なされる(第1図(B)の(b)、(C)、時間t。,
t1、tz等)。(2) When reading data, the read/write control unit 113 of the disk control unit 1l starts reading data from the disk unit 12 and stores it in the buffer 111 (time t). Every time data reading for one block is completed, the buffer 11
It is assumed that storage of one block of read data is completed at 1 ((b) and (C) in FIG. 1(B), time t.
t1, tz, etc.).
■ バッファ制御部116は、指定されたセレクション
・フェーズRSの開示タイミングである2ブロックのリ
ードデータがパッファ111に格納されたことを検出す
ると、割込み信号を発生してMPU115に割込みをか
ける。(2) When the buffer control unit 116 detects that two blocks of read data have been stored in the buffer 111 at the designated opening timing of the selection phase RS, it generates an interrupt signal to interrupt the MPU 115.
■ MPU115は、この割込み信号を受けると、SC
SI制御部112を制御して指定されたりコネクト開始
時間T1にリセレクション・フ工−ズRSを開始し、上
位装置20と結合させる(第1図(B)の(a)のRS
)。■ When the MPU 115 receives this interrupt signal, the
The SI control unit 112 is controlled to start the reselection process RS at the specified time or connection start time T1, and connect it to the host device 20 (RS in (a) of FIG. 1(B)).
).
■ リセレクション・フェーズRSが終了すると、MP
U115は、メッセージ・イン・フェーズMSG I
aを実行して上位装置20との間でメッセージの交換を
行ない、上位装置20にデータリードを行うディスク部
機番、すなわち該ディスク部I2を識別するID番号を
通知する(第1図( B ) (a)のMSGIa)。■ When the reselection phase RS ends, the MP
U115 is the message in phase MSG I
Execute step a to exchange messages with the higher-level device 20, and notify the higher-level device 20 of the disk unit machine number from which data is to be read, that is, the ID number that identifies the disk unit I2 (Fig. 1 (B) ) (a) MSGIa).
なお、リセレクション・フェーズRS及びメノセージ・
イン・フェーズMSGTaの実行中にもリード/ライト
制御部113によりデータリードが行われ、ディスク部
12からのり−ドデータは、ブロック単位でハッファ1
11に格納されている(第1図(B)の(b))。In addition, reselection phase RS and menosage
Even during the execution of the in-phase MSGTa, data reading is performed by the read/write control unit 113, and the read data from the disk unit 12 is transferred to the huffer 1 in block units.
11 ((b) in FIG. 1(B)).
■ メッセージ・イン・フエーズMSGIaの実行が終
了すると、MPU115はデータ・フェーズを実行し、
パッファ制御部114に指示してデータ転送を開始させ
る。■ When the execution of the message in phase MSGIa is completed, the MPU 115 executes the data phase,
It instructs the puffer control unit 114 to start data transfer.
■ この指示を受けると、バッファ制御部114は、バ
ッファ111に格納されているリードデータをDMA転
送により上位装置20に転送する。このデータ転送中も
、リード/ライト制御部114によりディスク部12か
らデータリードが並行して行われており、バッファ11
1にブロック単位で格納されている。(2) Upon receiving this instruction, the buffer control unit 114 transfers the read data stored in the buffer 111 to the host device 20 by DMA transfer. During this data transfer, the read/write controller 114 is reading data from the disk unit 12 in parallel, and the buffer 11
1 is stored in blocks.
■ 上位装置20へのデータの転送速度は、ディスク部
11からのデータリード速度より高速であるので、いま
、ディスク部12からブロック7までのデータリードが
終了して八ッファl1lに格納され、次のブロック8の
データをリード中に上位装置20に対するブロノク7ま
でのデータ転送が終了したとする(第1図(B)の(b
)、(C)、1:+)。■ Since the data transfer speed to the host device 20 is faster than the data read speed from the disk unit 11, the data read from the disk unit 12 to block 7 has now been completed and is stored in the eight buffer l1l, and the next Suppose that the data transfer to block 7 from the host device 20 is completed while reading the data of block 8 ((b) in FIG. 1(B)).
), (C), 1:+).
バッファ制御部114は、バッファ111内のデータ量
が空になったことを検出すると、割込み信号を発生して
MPU115にエンプティ割込みをかける。When the buffer control unit 114 detects that the amount of data in the buffer 111 is empty, it generates an interrupt signal and issues an empty interrupt to the MPU 115.
以下、第3図の処理フローチャートを参照して、その処
理ステップに従ってバッファエンプティ時の処理につい
て説明する。Hereinafter, with reference to the processing flowchart of FIG. 3, the processing when the buffer is empty will be explained according to its processing steps.
[相] ステップS,
エンプティ割込みを受けると、MPU115は、リード
/ライト制御部113にある状態表示レジスタ113a
の内容をリードして、り−ド/ライト制御部113が連
続リード動作中か判定する。[Phase] Step S: Upon receiving an empty interrupt, the MPU 115 sets the status display register 113a in the read/write control unit 113.
The read/write control unit 113 determines whether a continuous read operation is in progress.
リード/ライト制御部113が連続リード動作中でない
ときは、直ちに新しいデータがバッファ111内に入っ
てくることは期待できないので、ステップS6に移行し
て従来と同様のディスコネクト処理を行う。When the read/write control unit 113 is not in continuous read operation, it is not expected that new data will immediately enter the buffer 111, so the process moves to step S6 and performs the same disconnection process as the conventional one.
■ リード/ライト制御部113が連続リード動作中の
ときは、MPU115は、SCS I制御部112のパ
イトカウンタ112aの値をリードして、残りブロンク
数Bnが期待値Bx以下であるか判定する。(2) When the read/write control unit 113 is in continuous read operation, the MPU 115 reads the value of the bite counter 112a of the SCSI control unit 112, and determines whether the remaining number of broncs Bn is less than or equal to the expected value Bx.
この期待値Bxは、本発明のバッファ制御方式によりI
ブロック毎に発生する無転送時間T3の合計がディスコ
ネクトとリコネクトに要する時間(第6図の時間t3以
降のメッセージ・イン・7.z−ズMSGI c,MS
GI d,リセレクション・フェーズRS及びメッセー
ジ・イン・フエーズMSG I aを実行するに要する
時間)になるような値に設定する。This expected value Bx is determined by the buffer control method of the present invention.
The total non-transfer time T3 that occurs for each block is the time required for disconnection and reconnection (message in 7.zz MSGI c, MS after time t3 in Figure 6).
GI d, the time required to execute the reselection phase RS and the message in phase MSG I a).
残りブロック数Bnが期待値Bxより大きい場合は、デ
ィスコネクト及びリコネクトを行った方がSCSIバス
を有効に使用することができるので、ステップS6に移
行して従来と同様のディスコネクト処理を行う。If the number of remaining blocks Bn is larger than the expected value Bx, the SCSI bus can be used more effectively by performing disconnection and reconnection, so the process moves to step S6 and performs the same disconnection process as the conventional one.
@ ステップS3
連続してリード中の場合でも、トラックスイッチやシリ
ンダスイッチを行なう場合あるいはリードデータにおけ
るエラー検出等の要因で、リード処理が中断する場合が
ある。このような中断に対する処理は一般に時間を要す
るので、システム性能の点からSCSIバス30を他の
装置に開放すべきである。そこで、この場合もステップ
S6に移行して従来と同様のディスコネクト処理を行う
。@Step S3 Even when reading is in progress continuously, the reading process may be interrupted due to factors such as track switching or cylinder switching, or detection of an error in read data. Processing such interruptions generally takes time, so from the standpoint of system performance, the SCSI bus 30 should be opened to other devices. Therefore, in this case as well, the process moves to step S6 and the same disconnection process as in the prior art is performed.
なお、連続してリード中である限り、1ブロック分のデ
ータ転送毎にT3時間だけscs rバス30上で無転
送時間が生しるが、それらの合計が期待値Bxを越えな
いことをステップS2で確認しているので、ディスコネ
クトを行わない方がT2を短縮することができる。Note that as long as data is being read continuously, a non-transfer time occurs on the SCS R bus 30 for T3 time every time one block of data is transferred. Since it is confirmed in S2, T2 can be shortened by not disconnecting.
@ ステップS4
MPUI15は、連続リード動作中でかつ残り転送デー
タ量が所定データ量より少ない場合にSCSIバス30
のディスコネクトを行なわないようにする(第1図(
B ) (b)のT,)。@ Step S4 When the MPUI 15 is in continuous read operation and the remaining transfer data amount is less than the predetermined data amount, the MPUI 15 transfers the SCSI bus 30
(Figure 1)
B) (b) T,).
■ ステップS5
ディスク制御部11はデータ・フェーズ実行中であるの
で、ハッファ制御部114はバッファ111にリードデ
ータが格納されると直ちにデータ転送を再開して、上位
装置20に残りブロック8の残りデータを送る((第l
図(B)(b)のts)。■ Step S5 Since the disk control unit 11 is executing the data phase, the huffer control unit 114 resumes data transfer as soon as the read data is stored in the buffer 111, and sends the remaining data of block 8 to the host device 20. Send ((th
Figure (B) (b) ts).
残りデータ量が複数ブロックある場合は、前述の処理が
複数回繰り返されて無転送時間T3は1ブロック分のデ
ータを転送する毎に現れる。If there are a plurality of blocks of remaining data, the above-described process is repeated a plurality of times, and the non-transfer time T3 appears every time one block of data is transferred.
いま、説明を簡単にするため残りブロック数をlとし、
1回の無転送時間T3を介して残りデータの転送が終了
したものとする。Now, to simplify the explanation, let the remaining number of blocks be l,
It is assumed that the transfer of the remaining data is completed after one non-transfer period T3.
■ ステップS6
時間t5で残りのデータ転送が終了すると、MPU11
5は、ステータス・フェーズSTS及びメッセージ・イ
ン・フェーズMSGIbを実行して、SCSIバス30
をディスコネクトする。■ Step S6 When the remaining data transfer is completed at time t5, the MPU 11
5 executes the status phase STS and the message in phase MSGIb to connect the SCSI bus 30.
Disconnect.
以上のようにして、上位装置20へのデータ転送中にバ
ッファ111が空になった場合にも、連続リード動作中
でかつ残り転送データ量が所定データ量より少ないとき
は、SCS Iハス30はディスコネクトされず、残り
データがリードされて上位装置20に転送される。As described above, even if the buffer 111 becomes empty during data transfer to the host device 20, if the continuous read operation is in progress and the remaining transfer data amount is less than the predetermined data amount, the SCS I hash 30 The remaining data is read and transferred to the host device 20 without being disconnected.
以上本発明の一実施例について説明したが、本発明はこ
の実施例に限定されるものではなく、発明の主旨に従っ
た種々の変形が可能である。例えば、パンファエンプテ
ィ時にバッファ制御部114が割込み信号を発生する代
わりに、MPUII5がプログラムによりパッファ制御
部114の状態をアドレス/データハス18を介して監
視することにより、バッファ111のエンプティを検出
するようにしてもよい。Although one embodiment of the present invention has been described above, the present invention is not limited to this embodiment, and various modifications can be made in accordance with the gist of the invention. For example, instead of the buffer control unit 114 generating an interrupt signal when the buffer is empty, the MPU II 5 may detect the empty state of the buffer 111 by monitoring the state of the buffer control unit 114 via the address/data hash 18 using a program. You may also do so.
以上説明したように、本発明によれば次の諸効果が得ら
れる。As explained above, according to the present invention, the following effects can be obtained.
(1)上位装置20へのデータ転送中にバンファl11
が空になった場合にも、連続リード動作中でかつ残り転
送データ量が所定データ量より少ないときは、SCSI
バス30のディスコネクトを一定時間以上延ばすように
したので、SCSIバス30をディスコネクトすること
なく、残りデータを連続して転送できるので、リードコ
マンドの実行時間を短縮することができる。(1) During data transfer to the host device 20, the buffer l11
Even if the SCSI is empty, if continuous read operation is in progress and the remaining transfer data amount is less than the specified data amount, the SCSI
Since the disconnection of the bus 30 is extended for a certain period of time or more, the remaining data can be transferred continuously without disconnecting the SCSI bus 30, so that the execution time of the read command can be shortened.
(2)残りデータ量でディスコネクト実行のタイミング
を制御するようにしたので、残りデータ量が多い場合に
不用意にSCSIバス30を占有してシステム性能を低
下させることを阻止することができる。(2) Since the timing of disconnection execution is controlled based on the amount of remaining data, it is possible to prevent the SCSI bus 30 from being inadvertently occupied and degrading system performance when there is a large amount of remaining data.
(3) バッファ制御パラメータにより指定されるリ
コネクト開始時間T1の値にマージンが不要となるので
、ディスク部12からのデータリードを終了してから、
バス・フリーへ移行するまでの時間T2が最小の値とな
るようにパラメータを決定すればよく、データリード時
のスルーブットを向上させることができる。(3) Since no margin is required for the value of reconnection start time T1 specified by the buffer control parameter, after data reading from the disk unit 12 is completed,
Parameters may be determined so that the time T2 until transition to bus-free status becomes the minimum value, and throughput during data reading can be improved.
(4)最適なバッファ制御パラメータの決定は困難であ
るが、パラメータT1の値を誤って小さく設定されたた
めに、上位装置2oへのデータ転送中にバッファ111
が空になった場合にも、SCSIバス30のディスコネ
クトすることなく、残りデータを連続して転送できるの
で、従来のバッファ制御方式よりもリードコマンドの実
行時間を大幅に短縮することができる。(4) Although it is difficult to determine the optimal buffer control parameters, because the value of parameter T1 was erroneously set to a small value, the buffer 111
Even when the SCSI bus 30 becomes empty, the remaining data can be transferred continuously without disconnecting the SCSI bus 30, so the execution time of a read command can be significantly reduced compared to the conventional buffer control method.
第1図は本発明の原理図、
第2図は本発明の一実施例の実施システムの構或の説明
図、
第3図は同実施例のバッファエンプティ時の処理フロー
チャート、
第4図はscs rを持つ従来システムのバッファ制御
方式の説明図、
第5図は従来システムの理想状態時のバッファ制御方式
の動作タイミングチャート、
第6図は従来システムのバッファエンプテイ時のバッフ
ァ制御方式の動作タイ案ングチャートである。
第1図及び第2図において、
10・・・ディスク装置、11・・・ディスク制御部、
12・・・ディスク部、111・・・バッファ、20・
・・上位装置、30・・・SCS Iバス。
貿なL仔11171ハ゛・ンノアニ〉フ゜−f4時の又
と多里フローテマート
第3図Fig. 1 is a diagram of the principle of the present invention, Fig. 2 is an explanatory diagram of the configuration of an implementation system of an embodiment of the present invention, Fig. 3 is a processing flowchart when the buffer is empty in the same embodiment, and Fig. 4 is a scs An explanatory diagram of the buffer control method of the conventional system with r, Fig. 5 is an operation timing chart of the buffer control method in the conventional system in an ideal state, and Fig. 6 is an operation timing chart of the buffer control method in the conventional system when the buffer is empty. This is a planning chart. In FIGS. 1 and 2, 10...disk device, 11...disk control unit,
12... Disk unit, 111... Buffer, 20...
...Host device, 30...SCS I bus. Trade L child 11171 Ha Nno Ani〉F゜-F4 Tokimata and Tari Frothe Mart Figure 3
Claims (1)
らリード/ライトのコマンドを受けたときSCSIの仕
様に従ってバッファ(111)を介してディスク部(1
2)に対するリード/ライトを行うディスク装置(10
)又はディスク制御部(11)のバッファ制御方式にお
いて、 (a)バッファ(111)内のデータ量が規定のデータ
量以下に低下したことより、SCSIバス(30)をデ
ィスコネクトするタイミングを検出し、 (b)前記SCSIバス(30)をディスコネクトする
タイミングが検出されたとき、連続リード動作中でかつ
残り転送データ量が所定のデータ量以下である場合に、
SCSIバスのディスコネクト開始タイミングを一定時
間だけ遅らせ、該一定時間内にリードされた残りデータ
量をディスコネクトを介さずに上位装置(20)に転送
すること を特徴とするディスク装置またはディスク制御部のバッ
ファ制御方式。[Claims] Having SCSI as an interface, when a read/write command is received from a host device (20), the disk unit (1
2) A disk device (10
) or in the buffer control method of the disk control unit (11), (a) detects the timing to disconnect the SCSI bus (30) because the amount of data in the buffer (111) has fallen below the specified amount; (b) When the timing to disconnect the SCSI bus (30) is detected, if continuous read operation is in progress and the amount of remaining transfer data is less than a predetermined amount of data,
A disk device or a disk control unit characterized by delaying the start timing of SCSI bus disconnection by a certain period of time and transferring the remaining data amount read within the certain period of time to a host device (20) without going through the disconnection. buffer control method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24227789A JPH03105541A (en) | 1989-09-20 | 1989-09-20 | Buffer control method for disk devices, etc. |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP24227789A JPH03105541A (en) | 1989-09-20 | 1989-09-20 | Buffer control method for disk devices, etc. |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03105541A true JPH03105541A (en) | 1991-05-02 |
Family
ID=17086870
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP24227789A Pending JPH03105541A (en) | 1989-09-20 | 1989-09-20 | Buffer control method for disk devices, etc. |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03105541A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0690369A3 (en) * | 1994-06-30 | 2003-01-02 | Sony Corporation | Disk control method and control apparatus capable of lowering data transfer load of computer |
-
1989
- 1989-09-20 JP JP24227789A patent/JPH03105541A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0690369A3 (en) * | 1994-06-30 | 2003-01-02 | Sony Corporation | Disk control method and control apparatus capable of lowering data transfer load of computer |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6078970A (en) | System for determining adapter interrupt status where interrupt is sent to host after operating status stored in register is shadowed to host memory | |
JP5159900B2 (en) | Computer program, apparatus, and method for reducing access conflict of reserved device | |
EP2097828B1 (en) | Dmac to handle transfers of unknown lengths | |
JPH077327B2 (en) | Data transfer method | |
US6055598A (en) | Arrangement and method for allowing sequence-independent command responses across a computer bus bridge | |
JPH01229354A (en) | DMA controller | |
JPH03150659A (en) | Data transfer system | |
CN113553101A (en) | PCIE (peripheral component interface express) exchange chip port register initialization method with variable loading frequency | |
CN113296899A (en) | Transaction master machine, transaction slave machine and transaction processing method based on distributed system | |
JPH03105541A (en) | Buffer control method for disk devices, etc. | |
US6968409B1 (en) | Method and apparatus of establishing a dynamically adjustable loop of delayed read commands for completion in a queue buffer | |
US7921238B2 (en) | USB host system and method for transferring transfer data | |
JP3261665B2 (en) | Data transfer method and data processing system | |
CN100371916C (en) | SCSI magnetic disc recording device and mehtod | |
JPS63228856A (en) | Communication controller | |
JPS63293660A (en) | Communication controller | |
JPH0581165A (en) | Data transfer circuit | |
JP2803270B2 (en) | SCSI host adapter circuit | |
JPH0743687B2 (en) | Data storage subsystem | |
CN117891761A (en) | Direct memory access system and data handling method | |
CN118642986A (en) | Interrupt processing method, electronic device and storage medium | |
JPH0233643A (en) | Data transfer control method | |
JPH05210616A (en) | Computer device | |
JPH0727510B2 (en) | Asynchronous transfer control device | |
JPS63245755A (en) | Input/output device controller |