JPH06282944A - Disk device and data block writing method - Google Patents
Disk device and data block writing methodInfo
- Publication number
- JPH06282944A JPH06282944A JP6894993A JP6894993A JPH06282944A JP H06282944 A JPH06282944 A JP H06282944A JP 6894993 A JP6894993 A JP 6894993A JP 6894993 A JP6894993 A JP 6894993A JP H06282944 A JPH06282944 A JP H06282944A
- Authority
- JP
- Japan
- Prior art keywords
- command
- write
- data
- writing
- data blocks
- 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
Links
Abstract
(57)【要約】
【目的】 ディスク装置に関し、書込み処理効率を向上
させることを目的とする。
【構成】 複数のデータブロックを記憶するバッファメ
モリ18を備え、ディスク媒体19上の指定された領域
のイレーズを実行した後、データブロックを書込むディ
スク装置2であって、上位装置1からデータ書込みを指
示するコマンドを受信した場合、コマンドが指示する書
込みデータブロックをバッファメモリ18に格納した
時、上位装置1にコマンド受領完了報告又はコマンド実
行終了報告を行って、次のコマンドの受信準備を完了す
ると共に、受信した複数のコマンドがディスク媒体19
の連続した領域にデータブロックを書込むことを指示
し、先に受信したコマンドに対するイレーズ処理の完了
前に、次のコマンドが受信された場合、複数のコマンド
に対して一括してイレーズ処理を実行した後、複数のデ
ータブロックを一括して書込む構成とする。
(57) [Abstract] [Purpose] An object of the present invention is to improve the write processing efficiency of a disk device. A disk device 2 having a buffer memory 18 for storing a plurality of data blocks, which writes data blocks after erasing a designated area on a disk medium 19 and writes data from a host device 1 When the write data block designated by the command is stored in the buffer memory 18, when the command indicating the command is received, the host device 1 is notified of the command reception completion or the command execution end report, and the next command reception preparation is completed. A plurality of received commands are sent to the disk medium 19
Instructs to write a data block in a continuous area, and if the next command is received before the completion of the erase processing for the previously received command, the erase processing is executed collectively for multiple commands. After that, a plurality of data blocks are collectively written.
Description
【0001】[0001]
【産業上の利用分野】本発明はディスク媒体のイレーズ
処理を行った後にデータを書込むか、又はデータを書込
んだ後に該書込みデータの妥当性を確認するベリファイ
処理を行うか、又はイレーズ処理とベリファイ処理とを
共に実行するディスク装置に係り、特にディスク媒体の
連続した領域に複数のコマンドによってデータの書込み
を順次指示された時、イレーズ処理又はベリファイ処理
を該複数のコマンドに対して一括して実行し、書込み処
理効率を向上させるディスク装置及びデータブロック書
込み方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to erasing a disk medium and then writing the data, or writing the data and then performing a verifying process for confirming the validity of the written data, or an erasing process. The present invention relates to a disk device that executes both the verifying process and the verifying process, and particularly when the writing of data is sequentially instructed by a plurality of commands in a continuous area of the disk medium, the erasing process or the verifying process is collectively performed on the plurality of commands The present invention relates to a disk device and a data block writing method, which are executed by the above method and improve write processing efficiency.
【0002】一般に光ディスク装置はエラーレートが悪
いため、ディスク媒体にデータを書込んだ後、このデー
タを読出して書込みデータと比較し、エラーがあるか調
べてデータの妥当性を確認するベリファイ処理が必要で
ある。In general, an optical disk device has a low error rate. Therefore, after writing data on a disk medium, this data is read out and compared with the written data, and a verify process for checking whether there is an error and confirming the validity of the data is performed. is necessary.
【0003】又、磁気ディスク装置においても、高記録
密度のものには同様な傾向が見られるため、特に重要な
データに付いてはベリファイ処理を実施することが少な
くない。Also in the magnetic disk apparatus, the same tendency is observed in the case of high recording density, so that it is not rare that the verify processing is carried out for particularly important data.
【0004】更に、光磁気ディスク装置ではデータの書
込み処理をする前に、予めイレーズ処理が必要であり、
且つ、ベリファイ処理も必要である。従って、ヘッドの
位置付け回数が増加して、データの書込み処理効率が低
下するが、この処理効率を向上させ得ることが望まし
い。Further, in the magneto-optical disk device, an erase process is required in advance before the data write process,
In addition, verify processing is also necessary. Therefore, although the number of times the head is positioned increases and the data write processing efficiency decreases, it is desirable to be able to improve this processing efficiency.
【0005】[0005]
【従来の技術】図8はディスク装置の一例を説明するブ
ロック図で、図9はコマンドテーブルの一例を説明する
図である。2. Description of the Related Art FIG. 8 is a block diagram illustrating an example of a disk device, and FIG. 9 is a diagram illustrating an example of a command table.
【0006】ディスク装置2のプロセッサ3は、ROM
9に格納されているプログラムを読出して動作し、イン
タフェース回路4を制御して、上位装置1が送出するコ
マンドを受信すると、RAM10に設けてある図9(A)
に示す如きコマンドテーブル13に、アドレスポインタ
の指示に従い、図示省略したディスク媒体上の書込みア
ドレスa0 〜an と、この書込みアドレスに夫々対応し
て、データブロック長l0 〜ln とを順次記録する。The processor 3 of the disk device 2 is a ROM
9 (A) which is provided in the RAM 10 when the program stored in the RAM 9 is read and operated to control the interface circuit 4 to receive the command sent by the host device 1.
The command table 13 as shown in accordance with an instruction address pointer, a write address a 0 ~a n on the disk medium (not shown) and respectively corresponding to the write address, sequentially and the data block length l 0 to l n Record.
【0007】RAM10は図示する如く、プロセッサ3
の処理上必要なデータを格納する作業領域11と、バッ
ファメモリとして転送するデータブロックを格納するバ
ッファ領域12と、前記の如きコマンドテーブル13と
が設けられている。The RAM 10 includes a processor 3 as shown in the drawing.
There is provided a work area 11 for storing data necessary for processing, a buffer area 12 for storing a data block to be transferred as a buffer memory, and a command table 13 as described above.
【0008】プロセッサ3はコマンドテーブル13の記
録が済むと、位置付け制御回路7にヘッド6を位置付け
するトラックを指示して、キャリッジ8に駆動電流を供
給させ、キャリッジ8の図示省略したモータを駆動し
て、キャリッジ8に取付けられているヘッド6を指定さ
れたトラックに位置付けさせる。After the command table 13 is recorded, the processor 3 instructs the positioning control circuit 7 to the track on which the head 6 is positioned, supplies a drive current to the carriage 8, and drives a motor (not shown) of the carriage 8. Then, the head 6 attached to the carriage 8 is positioned on the designated track.
【0009】プロセッサ3は、受信したコマンドが書込
みを指示していると、同時にインタフェース回路4を経
て上位装置1から書込みデータを送出させ、インタフェ
ース回路4からバスを介してRAM10に設けたバッフ
ァ領域12にデータを格納させる。When the received command instructs writing, the processor 3 causes the host device 1 to send the write data through the interface circuit 4 at the same time, and the buffer area 12 provided in the RAM 10 from the interface circuit 4 via the bus. To store the data.
【0010】プロセッサ3はヘッド6が指定されたアド
レスに位置付けされると、書込み/読出し回路5を制御
して、コマンドテーブル13に記録されているデータブ
ロック長に対応するディスク媒体上の領域をイレーズさ
せた後、再びヘッド6が指定されたアドレスに位置付け
されると、書込み/読出し回路5を制御して、RAM1
0のバッファ領域12に格納されたデータをバスを介し
て書込み/読出し回路5に転送させ、書込みデータをヘ
ッド6に送出させて、指定されたアドレスから指定され
た長さのデータブロックを書込ませる。When the head 6 is positioned at the designated address, the processor 3 controls the write / read circuit 5 to erase the area on the disk medium corresponding to the data block length recorded in the command table 13. After that, when the head 6 is again positioned at the designated address, the write / read circuit 5 is controlled to make the RAM 1
The data stored in the buffer area 12 of 0 is transferred to the write / read circuit 5 via the bus, the write data is sent to the head 6, and the data block of the specified length is written from the specified address. No
【0011】プロセッサ3は受信したコマンドが読出し
を指示していると、ヘッド6を指定されたトラックに位
置付けさせ、ヘッド6が読出すデータブロックを書込み
/読出し回路5を経てバッファ領域12に格納させた
後、インタフェース回路4を経て上位装置1に転送させ
る。When the received command directs reading, the processor 3 positions the head 6 on the designated track and stores the data block read by the head 6 in the buffer area 12 via the write / read circuit 5. After that, the data is transferred to the host device 1 via the interface circuit 4.
【0012】図10は従来技術の動作を説明するタイム
チャートである。インタフェース回路4は、図10の上
位装置に示す如く、上位装置1から例えば、C1 〜C3
で示す3つのコマンドを連続して受信した場合、図10
のIFに示す如く、各コマンド毎にCMDで示すコマン
ドと、DATAで示すデータを受信すると、バッファ領
域12に格納すると共に、コマンドテーブル13にもア
ドレスポインタの指示する欄にアドレスai とデータブ
ロック長li とを記録し、上位装置1にSで示すステー
タスを送出する動作を3回実行する。FIG. 10 is a time chart for explaining the operation of the prior art. The interface circuit 4 is, for example, C 1 to C 3 from the host device 1 as shown in the host device of FIG.
When three commands shown by are received continuously,
As indicated by IF, when a command indicated by CMD for each command and data indicated by DATA are received, they are stored in the buffer area 12 and the command table 13 also stores the address a i and the data block in the column designated by the address pointer. The length l i is recorded, and the operation of sending the status indicated by S to the host device 1 is executed three times.
【0013】そして、ディスク媒体に対するデータの書
込みは、図10の書込み動作に示す如く、Pで示す期間
でヘッド6の位置付けを行い、ERASEで示す期間で
イレーズを実行し、再びPで示す期間でヘッド6の位置
付けを行い、WRITEで示す期間でデータの書込みを
行う動作を3回繰り返す。To write data on the disk medium, as shown in the write operation of FIG. 10, the head 6 is positioned during the period indicated by P, erase is performed during the period indicated by ERASE, and again during the period indicated by P. The operation of positioning the head 6 and writing data in the period indicated by WRITE is repeated three times.
【0014】最初のPで示す期間が長いのは、キャリッ
ジ8の移動時間があるためで、2回目以降はディスク媒
体の回転待ちとなるだけの場合が多いため、その期間は
短くなる。The first period indicated by P is long because there is a movement time of the carriage 8 and the second and subsequent times are often waiting for the rotation of the disk medium, so that the period is short.
【0015】この2回目以降が回転待ちとなるのは、コ
マンドC1 の指示するデータ書込み処理完了から、コマ
ンドC2 のイレーズ処理に移行する準備時間が、データ
ブロック間のギャップをヘッド6が移動する時間内に完
了すれば、回転待ちは不要となるが、ヘッド6の磁界の
極性変換や内部回路の条件設定変更等に要する時間が必
要であるため、ギャップ通過時間内に準備が整わず通常
はディスク媒体の回転待ちが必要となる。The second and subsequent rotations wait for rotation because the head 6 moves in the gap between the data blocks during the preparation time for shifting from the data write processing instructed by the command C 1 to the erase processing of the command C 2. If it is completed within the time period required for rotation, waiting for rotation is not necessary, but since it takes time required for changing the polarity of the magnetic field of the head 6 and changing the condition setting of the internal circuit, preparation is not completed within the gap passage time. Requires waiting for rotation of the disk medium.
【0016】図11は従来技術の動作を説明するフロー
チャートである。プロセッサ3はアイドル状態の時に、
ステップ(1) でコマンドテーブル13に未実行で実行中
でないコマンドがあるか調べる動作を繰り返す。即ち、
図9(A)に示すコマンドテーブル13のコマンド終了を
示すフラグf0 〜fn の中で、フラグのセットされてい
ないものがあるか調べる。FIG. 11 is a flow chart for explaining the operation of the prior art. When the processor 3 is idle,
In step (1), the operation of checking the command table 13 for unexecuted commands that are not being executed is repeated. That is,
Of the flags f 0 to f n indicating the command end of the command table 13 shown in FIG.
【0017】そして、未実行で実行中でないコマンドが
存在するとステップ(2) で書込みコマンドか調べ、書込
みコマンドで無ければ、ステップ(3) で、書込みコマン
ド以外のコマンド処理を行って、ステップ(1) の処理に
戻る。If there is a command that has not been executed and is not being executed, it is checked if it is a write command in step (2). If it is not a write command, command processing other than the write command is performed in step (3) and step (1 ) Return to processing.
【0018】プロセッサ3は、ステップ(2) で書込みコ
マンドであると、ステップ(4) で、このコマンドが記録
されているコマンドテーブル13のアドレスai を指示
するアドレスポインタに、書込みコマンドのポインタ値
iを設定し、ステップ(5) でヘッド6をアドレスai に
位置付けする。If the write command is the write command in step (2), the processor 3 writes the pointer value of the write command to the address pointer pointing to the address a i of the command table 13 in which this command is recorded in step (4). i is set, and the head 6 is positioned at the address a i in step (5).
【0019】そして、ステップ(6) でコマンドテーブル
13から読出したデータブロック長li の範囲のイレー
ズを開始する。プロセッサ3は、ステップ(7) でイレー
ズ処理終了を監視しており、イレーズが終了するとステ
ップ(8) でエラー発生か調べ、エラー発生ならばステッ
プ(14)でエラー処理を行うが、エラー発生が無ければス
テップ(9) でヘッド6をアドレスai に位置付けする。Then, in step (6), erase in the range of the data block length l i read from the command table 13 is started. The processor 3 monitors the end of the erase processing in step (7). When the erase is completed, the processor 3 checks in step (8) whether an error has occurred. If an error occurs, error processing is performed in step (14). If not, the head 6 is positioned at the address a i in step (9).
【0020】そして、ステップ(10)でディスク媒体にl
i の長さのデータブロックを書込ませ、ステップ(11)で
書込み処理終了を監視し、書込み処理が終了するとステ
ップ(12)でエラー発生か調べ、エラー発生ならばステッ
プ(14)でエラー処理を行うが、エラー発生が無ければ、
ステップ(13)でコマンドテーブル13のフラグfi をセ
ットして、ステップ(1) の処理に戻る。Then, in step (10), the l
Write a data block of length i , monitor the end of the writing process in step (11), and when the writing process ends, check whether an error has occurred in step (12). If an error occurs, process the error in step (14). But if there are no errors,
In step (13), the flag f i of the command table 13 is set, and the process returns to step (1).
【0021】上記の如く、例えば、計算機システムに接
続されて動作する光磁気ディスク装置は、データの書込
みを行う際に、予めデータを書込むディスク媒体の領域
をイレーズしてから、データの書込みを行う。As described above, for example, in a magneto-optical disk device which is connected to a computer system to operate, when writing data, the area of the disk medium in which the data is to be written is erased in advance, and then the data is written. To do.
【0022】そして、書込みデータの品質を保証する場
合には、データの書込み終了後、このデータを読出し
て、書込みデータと比較し、エラーがないか調べるベリ
ファイ処理を実行する。In order to guarantee the quality of the write data, after the data writing is finished, this data is read out, compared with the write data, and a verify process for checking whether there is an error or not is executed.
【0023】従って、一つの書込みコマンドを終了させ
るのに、先ずディスク媒体の指定されたアドレス領域に
ヘッド6を位置付けしてイレーズ処理を実行し、再び指
定されたアドレス領域にヘッド6を位置付けしてデータ
の書込みを行い、データを保証する際は、再び指定され
たアドレス領域にヘッド6を位置付けしてデータを読出
す処理を実行する。Therefore, in order to complete one write command, first, the head 6 is positioned in the designated address area of the disk medium, the erase process is executed, and the head 6 is positioned again in the designated address area. When the data is written and the data is guaranteed, the head 6 is again positioned in the designated address area to read the data.
【0024】このため、一つの書込みコマンドを終了さ
せるため、少なくともヘッド6の位置付け処理を2回実
行し、ベリファイ処理を行う場合は3回のヘッド位置付
け処理が実行される。Therefore, in order to complete one write command, the positioning process of the head 6 is performed at least twice, and when the verify process is performed, the head positioning process is performed three times.
【0025】[0025]
【発明が解決しようとする課題】上記の如く、従来は一
つの書込みコマンドを終了させるのに、複数回のヘッド
位置付け処理が必要であるが、通常は複数の連続するデ
ータブロックに対してコマンドが発行されるので、バッ
ファ領域12の容量分のデータブロック数までの書込み
コマンドならば、2回又は3回のヘッド位置付け処理で
データの書込み処理が完了する。As described above, conventionally, it is necessary to perform the head positioning processing a plurality of times to complete one write command, but normally a command is issued to a plurality of consecutive data blocks. Since the write command is issued up to the number of data blocks corresponding to the capacity of the buffer area 12, the data writing process is completed by the head positioning process twice or three times.
【0026】しかし、上位装置1が小さいデータブロッ
ク単位で連続して書込みコマンドを発行するような計算
機システムの場合は、ディスク装置2がコマンド毎に逐
次処理を実行するため、バッファ領域12の容量に関係
無く、コマンド回数×2又はコマンド回数×3のヘッド
位置付け処理回数が発生するため、書込み処理効率が悪
化して、計算機システムの性能を著しく低下させるとい
う問題がある。However, in the case of a computer system in which the higher-level device 1 issues write commands continuously in small data block units, the disk device 2 executes sequential processing for each command, so the capacity of the buffer area 12 is reduced. Regardless of this, since the number of times of head positioning processing of the number of commands × 2 or the number of commands × 3 occurs, there is a problem that the write processing efficiency is deteriorated and the performance of the computer system is significantly reduced.
【0027】本発明はこのような問題点に鑑み、ディス
ク媒体上の連続した大きなデータブロック領域に対し
て、小さいデータブロック毎に分割されて連続的に書込
みコマンドが指示されるような場合に、複数の書込みコ
マンドに対して、一括してイレーズ処理又はベリファイ
処理を実行させることにより、ヘッド6の位置付け処理
回数を最小にすることを目的としている。In view of such a problem, the present invention divides a small data block into a continuous large data block area on a disk medium, and when a write command is continuously given, The purpose is to minimize the number of positioning processes of the head 6 by collectively executing erase processing or verify processing for a plurality of write commands.
【0028】[0028]
【課題を解決するための手段】図1は本発明の原理を説
明するブロック図である。ディスク装置2は、書込みを
指示された複数のデータブロックを記憶するバッファメ
モリ18を備え、データの書込みを実施する前に、ヘッ
ド6を用いてディスク媒体19上の書込みを指定された
領域のイレーズ処理を実行した後、この指定領域にバッ
ファメモリ18から読出したデータブロックを書込む。FIG. 1 is a block diagram for explaining the principle of the present invention. The disk device 2 includes a buffer memory 18 for storing a plurality of data blocks instructed to be written, and erases a specified area on the disk medium 19 for writing using the head 6 before writing data. After the processing is executed, the data block read from the buffer memory 18 is written in this designated area.
【0029】そして、上位装置1からのデータ書込みを
指示する一つのコマンドを受信して、前記一つのコマン
ドが指示する書込みデータブロックを前記バッファメモ
リ18に格納した時、上位装置1にコマンド受領の完了
報告又はコマンド実行の終了報告を行って、次のコマン
ドの受信準備を完了する報告手段14と、受信した複数
のコマンドが前記ディスク媒体19上で連続した領域に
複数のデータブロックを書込むことを指示しているか否
かを検出する検出手段15と、先に受信したコマンドに
対するイレーズ処理が完了する前に、次のコマンドが受
信されたことを検出して通知する通知手段16と、複数
のコマンドに対して一括してイレーズ処理を実行させた
後、この複数のコマンドに対応する複数のデータブロッ
クを一括して書込ませる書込み手段17とを設けてお
り、前記検出手段15が複数のデータブロックの書込み
指示を検出した場合、前記通知手段16が次のコマンド
受信を通知している間は、イレーズ処理を継続して実行
した後、このイレーズ処理が完了した前記ディスク媒体
19上の領域に対し、複数のデータブロックを一括して
書込む。Then, when one command instructing data writing from the host device 1 is received and the write data block instructed by the one command is stored in the buffer memory 18, the host device 1 receives the command A report means 14 for making a completion report or a command execution completion report to complete preparation for receiving the next command, and writing a plurality of data blocks in a continuous area on the disk medium 19 by the plurality of received commands. Detecting means 15 for detecting whether or not the command is received, and notifying means 16 for detecting and notifying that the next command has been received before the completion of the erase process for the previously received command. Erase processing is executed collectively for the commands, and then multiple data blocks corresponding to these multiple commands are collectively written. When the detection unit 15 detects a write instruction of a plurality of data blocks, the erase process is continued while the notification unit 16 notifies the reception of the next command. After the execution, a plurality of data blocks are collectively written in the area on the disk medium 19 where the erase processing is completed.
【0030】又、ディスク装置2は、書込みを指示され
た複数のデータブロックを記憶するバッファメモリ(18)
を備え、ディスク媒体(19)上の書込みを指定された領域
に、ヘッド6を用いて該バッファメモリ(18)から読出し
たデータブロックの書込みを実施した後、該書込んだデ
ータブロックの妥当性を確認するためのベリファイ処理
を行う。The disk device 2 also has a buffer memory (18) for storing a plurality of data blocks instructed to be written.
And executing the writing of the data block read from the buffer memory (18) using the head 6 on the area designated for writing on the disk medium (19), and then validating the written data block. Verify processing for confirming
【0031】そして、上位装置1からのデータ書込みを
指示する一つのコマンドを受信して、この一つのコマン
ドが指示する書込みデータブロックを前記バッファメモ
リ18に格納した時、前記上位装置1にコマンド受領の
完了報告又はコマンド実行の終了報告を行って、次のコ
マンドの受信準備を完了する報告手段14と、受信した
複数のコマンドが前記ディスク媒体19上で連続した領
域に複数のデータブロックを書込むことを指示している
か否かを検出する検出手段15と、先に受信したコマン
ドの指示するデータブロックの書込みが完了する前に、
次のコマンドが受信されたことを検出して通知する通知
手段16と、複数のコマンドが指示する複数のデータブ
ロックの書込み処理を一括して実行させた後、この複数
のコマンドに対応する複数のデータブロックに対するベ
リファイ処理を一括して実行させる書込み手段17とを
設けており、前記検出手段15が複数のデータブロック
の書込み指示を検出した場合、前記通知手段16が次の
コマンド受信を通知している間は、データブロックの書
込み処理を継続して実行した後、この書込みが完了した
複数のデータブロックに対するベリファイ処理を一括し
て実行する。Then, when one command instructing data writing from the host device 1 is received and the write data block instructed by this one command is stored in the buffer memory 18, the command is received by the host device 1. And a command execution end report to complete preparations for receiving the next command, and a plurality of received commands write a plurality of data blocks in a continuous area on the disk medium 19. Before the completion of writing of the data block designated by the previously received command, the detection means 15 for detecting whether or not
After the notification means 16 that detects and notifies that the next command has been received and the write processing of the plurality of data blocks designated by the plurality of commands are collectively executed, the plurality of commands corresponding to the plurality of commands are executed. Write means 17 for collectively executing verification processing on data blocks is provided, and when the detecting means 15 detects a write instruction of a plurality of data blocks, the notifying means 16 notifies the next command reception. While the data block is being written, the writing process is continuously executed, and then the verifying process is collectively performed on the plurality of data blocks for which the writing is completed.
【0032】又、ディスク装置2は、書込みを指示され
た複数のデータブロックを記憶するバッファメモリ18
を備え、データの書込みを実施する前に、ヘッド6を用
いてディスク媒体19上の書込みを指定された領域のイ
レーズ処理を実行した後、このバッファメモリ18から
読出したデータブロックの書込みを実施してから、更
に、この書込んだデータブロックの妥当性を確認するた
めのベリファイ処理を行う。The disk device 2 also has a buffer memory 18 for storing a plurality of data blocks instructed to be written.
Before executing the data writing, the head 6 is used to perform the erase process on the area specified for writing on the disk medium 19, and then the data block read from the buffer memory 18 is written. After that, a verify process is performed to confirm the validity of the written data block.
【0033】そして、上位装置1からのデータ書込みを
指示する一つのコマンドを受信して、この一つのコマン
ドが指示する書込みデータブロックを前記バッファメモ
リ18に格納した時、前記上位装置1にコマンド受領の
完了報告又はコマンド実行の終了報告を行って、次のコ
マンドの受信準備を完了する報告手段14と、受信した
複数のコマンドが前記ディスク媒体19上で連続した領
域に複数のデータブロックを書込むことを指示している
か否かを検出する検出手段15と、先に受信したコマン
ドに対するイレーズ処理が完了する前に、次のコマンド
が受信されたことを検出して通知する通知手段16と、
複数のコマンドに対して一括してイレーズ処理を実行さ
せた後、この複数のコマンドに対応する複数のデータブ
ロックを一括して書込ませてから、前記複数のコマンド
に対応する複数のデータブロックに対するベリファイ処
理を一括して実行させる書込み手段17とを設けてお
り、前記検出手段15が複数のデータブロックの書込み
指示を検出した場合、前記通知手段16が次のコマンド
受信を通知している間は、イレーズ処理を継続して実行
した後、このイレーズ処理が完了した前記ディスク媒体
19上の領域に対し、前記複数のデータブロックを一括
して書込む処理を継続して実行してから、この書込みが
完了した複数のデータブロックに対するベリファイ処理
を一括して実行するThen, when one command instructing data writing from the host device 1 is received and the write data block instructed by this one command is stored in the buffer memory 18, the command is received by the host device 1. And a command execution end report to complete preparations for receiving the next command, and a plurality of received commands write a plurality of data blocks in a continuous area on the disk medium 19. A detection means 15 for detecting whether or not the following command is received, and a notification means 16 for detecting and notifying that the next command has been received before the erase process for the previously received command is completed,
After the erase process is executed collectively for a plurality of commands, a plurality of data blocks corresponding to the plurality of commands are collectively written, and then a plurality of data blocks corresponding to the plurality of commands are written. A writing means 17 for collectively executing the verify process is provided, and when the detecting means 15 detects a write instruction of a plurality of data blocks, while the notifying means 16 notifies the next command reception, After the erase process is continuously executed, the process of collectively writing the plurality of data blocks to the area on the disk medium 19 where the erase process is completed is continuously executed, and then the writing is performed. Collectively executes verification processing for multiple data blocks that have completed
【0034】[0034]
【作用】上記の如く構成することにより、ディスク装置
2は、ディスク媒体19上の連続した大きなデータブロ
ック領域に対して、小さいデータブロック毎に分割され
て連続的に書込みコマンドが指示されるような場合に、
複数の書込みコマンドに対するイレーズ処理とデータブ
ロック書込み処理とベリファイ処理とを、夫々一括して
実行させることが可能となるため、ヘッド6の位置付け
処理回数を最小にすることが出来る。With the above-described configuration, the disk device 2 divides a large data block area on the disk medium 19 into small data blocks and continuously issues write commands. In case,
Since the erase process, the data block write process, and the verify process for a plurality of write commands can be executed at the same time, the number of positioning processes of the head 6 can be minimized.
【0035】[0035]
【実施例】図2は本発明の動作を説明するタイムチャー
トである。本発明では図8に示すディスク装置2のプロ
セッサ3の動作と、コマンドテーブル13が従来技術と
は相違している。そして、コマンドテーブル13は、図
9(B) に示す如く、図9(A) に対し、データブロックの
転送が完了したか否かを示すビットo0 〜on を記録す
るOp欄が追加して設けられている。FIG. 2 is a time chart for explaining the operation of the present invention. In the present invention, the operation of the processor 3 of the disk device 2 shown in FIG. 8 and the command table 13 are different from those of the prior art. Then, as shown in FIG. 9 (B), the command table 13 has an Op column added to FIG. 9 (A) to record bits o 0 to o n indicating whether or not the data block transfer is completed. Is provided.
【0036】プロセッサ3はROM9から読出したプロ
グラムの指示により動作し、インタフェース回路4を制
御して、図2の上位装置に示す如く、上位装置1から例
えば、C1 〜C3 で示す3つのコマンドを連続して受信
した場合、各コマンド毎にCMDで示すコマンドと、D
ATAで示すデータを受信すると、RAM10のバッフ
ァ領域12に格納すると共に、図9(B) に示すコマンド
テーブル13にも、アドレスポインタが指示する欄に、
アドレスai とデータブロック長li とを記録し、上位
装置1にSで示すステータスを送出する動作を3回実行
する。The processor 3 operates according to the instructions of the program read from the ROM 9, controls the interface circuit 4, and as shown in the host device of FIG. 2, the host device 1 sends three commands, for example, C 1 to C 3. , The command indicated by CMD and D
When the data indicated by ATA is received, it is stored in the buffer area 12 of the RAM 10, and the command table 13 shown in FIG.
The operation of recording the address a i and the data block length l i and transmitting the status indicated by S to the higher-level device 1 is executed three times.
【0037】プロセッサ3は、インタフェース回路4が
SCSIー2(米国規格協会ANSI X3T9.2/
86ー109)に記載されているコマンドキューイング
方式を使用している場合は、コマンド受領の完了報告
(コマンドは受領したが実行は未完)を前記ステータス
送出時に上位装置1に対して行う。In the processor 3, the interface circuit 4 is SCSI-2 (American National Standards Institute ANSI X3T9.2 /
When the command queuing method described in 86-109) is used, a command reception completion report (a command is received but execution is not completed) is sent to the host device 1 when the status is transmitted.
【0038】又、プロセッサ3は、インタフェース回路
4が前記コマンドキューイング方式を使用していない場
合は、コマンド実行の終了報告(コマンドの実行が終了
した、即ち、ディスク媒体に対するデータの書込みが完
了したことを示す)を前記ステータス送出時に上位装置
1に対して行う。When the interface circuit 4 does not use the command queuing method, the processor 3 reports the end of command execution (command execution is completed, that is, data writing to the disk medium is completed. (Indicating that) is performed to the host device 1 at the time of sending the status.
【0039】そして、ディスク媒体に対するデータの書
込みは、図2の書込み動作に示す如く、イレーズを実
行した後、データブロックを書込む場合、プロセッサ3
はPで示す期間でヘッド6の位置付けを行い、ERAS
Eで示す期間で3つのコマンドで指示されたデータブロ
ック長に対応するディスク媒体上の領域に対し連続して
イレーズを実行する。Data writing to the disk medium is performed by the processor 3 when writing a data block after executing erase as shown in the writing operation of FIG.
Position the head 6 in the period indicated by P, and
During the period indicated by E, the erase is continuously executed on the area on the disk medium corresponding to the data block length designated by the three commands.
【0040】この場合、コマンドC1 に対するイレーズ
処理が終了する前に、コマンドC2が受信されるため、
コマンドC1 でデータブロックが書込まれるディスク媒
体上の領域に対し、コマンドC2 が書込みを指示するデ
ィスク媒体上の領域が連続している時は、続いてイレー
ズを実行する。In this case, since the command C 2 is received before the erase process for the command C 1 is completed,
When the area on the disk medium where the data block is written by the command C 1 is continuous with the area on the disk medium where the command C 2 writes, the erase is subsequently executed.
【0041】そして、コマンドC2 に対するイレーズ処
理が終了する前に、コマンドC3 が受信されるため、コ
マンドC2 でデータブロックが書込まれるディスク媒体
上の領域に対し、コマンドC3 が書込みを指示するディ
スク媒体上の領域が連続している時は、続いてイレーズ
を実行する。[0041] Before the erase processing for the command C 2 is completed, since the command C 3 is received, for a region on the disk media data block with the command C 2 is written, the command C 3 is written When the designated area on the disk medium is continuous, the erase is continuously executed.
【0042】本実施例では、コマンドC3 のイレーズ終
了前に次のコマンドが受信されないため、プロセッサ3
は再びPで示す期間でヘッド6の位置付けを行い、WR
ITEで示す期間で、コマンドテーブル13の内容を参
照して、3つのコマンドで指示されたデータブロックの
書込みを連続して行う。In the present embodiment, since the next command is not received before the erase of the command C 3 , the processor 3
Position the head 6 again during the period indicated by P, and
During the period indicated by ITE, the contents of the command table 13 are referred to and the data blocks designated by the three commands are continuously written.
【0043】又、データを書込んだ後ベリファイ処理を
行う場合は、図2の書込み動作に示す如く、Pで示す
期間でヘッド6の位置付けを行い、WRITEで示す期
間で3つのコマンドで指示されたデータブロックをディ
スク媒体上の指定された領域に対し連続して書込む動作
を実行する。When the verify process is performed after writing the data, as shown in the write operation of FIG. 2, the head 6 is positioned during the period indicated by P, and three commands are issued during the period indicated by WRITE. The data block is continuously written to a designated area on the disk medium.
【0044】この場合、コマンドC1 に対する書込み処
理が終了する前に、コマンドC2 が受信されるため、コ
マンドC1 で書込まれたディスク媒体上のデータブロッ
クの領域に対し、コマンドC2 が書込みを指示するディ
スク媒体上の領域が連続している時は、続いて書込み処
理を実行する。[0044] In this case, before the writing process for the command C 1 is completed, since the command C 2 is received, for a region of the data blocks on the disk medium has been written in the command C 1, the command C 2 is When the area on the disk medium for which writing is instructed is continuous, the writing process is subsequently executed.
【0045】そして、コマンドC2 に対する書込み処理
が終了する前に、コマンドC3 が受信されるため、コマ
ンドC2 で書込まれたディスク媒体上のデータブロック
の領域に対し、コマンドC3 が書込みを指示するディス
ク媒体上の領域が連続している時は、続いて書込み処理
を実行する。Since the command C 3 is received before the writing process for the command C 2 is completed, the command C 3 is written in the area of the data block written by the command C 2 on the disk medium. When the area on the disk medium instructing is continuous, the writing process is executed subsequently.
【0046】本実施例では、コマンドC3 の書込み処理
終了前に次のコマンドが受信されないため、プロセッサ
3は再びPで示す期間でヘッド6の位置付けを行い、V
ERIFYで示す期間で3つのデータブロックに対する
ベリファイ処理を連続して行う。In the present embodiment, since the next command is not received before the writing process of the command C 3 is completed, the processor 3 positions the head 6 again during the period indicated by P, and V
The verify process for three data blocks is continuously performed in the period indicated by ERIFY.
【0047】又、イレーズを実行した後、データブロッ
クの書込みを行い、更にベリファイ処理を行う場合は、
図2の書込み動作に示す如く、Pで示す期間でヘッド
6の位置付けを行い、前記同様ERASEで示す期間で
3つのコマンドで指示されたデータブロック長に対応す
るディスク媒体上の領域に対し連続してイレーズを実行
し、再びPで示す期間でヘッド6の位置付けを行い、W
RITEで示す期間で3つのコマンドで指示されたデー
タブロックをディスク媒体上の指定された領域に対し連
続して書込む動作を実行し、再びPで示す期間でヘッド
6の位置付けを行い、VERIFYで示す期間で3つの
データブロックに対するベリファイ処理を連続して行
う。When the data block is written after the erase is executed and the verify process is further performed,
As shown in the write operation of FIG. 2, the head 6 is positioned during the period indicated by P, and similarly to the above, during the period indicated by ERASE, the head 6 is continuously positioned in the area on the disk medium corresponding to the data block length designated by the three commands. Erase is performed, the head 6 is positioned again in the period indicated by P, and W
The operation of continuously writing the data blocks designated by the three commands to the designated area on the disk medium is executed during the period indicated by RITE, the head 6 is positioned again during the period indicated by P, and VERIFY is performed. The verify process for three data blocks is continuously performed in the period shown.
【0048】図3、図4、図5、図6及び図7は本発明
の動作を説明するフローチャートである。図3〜図5は
上位装置1とインタフェース回路4との間のコマンド及
びデータブロックの授受に関するものである図3におい
て、プロセッサ3はインタフェース回路4がコマンドキ
ューイング方式を使用している場合、アイドル状態の時
に、ステップ(1) に示す如くインタフェース回路4を経
て上位装置1からの起動を監視している。そして、上位
装置1から機番を指定されて起動されると、ステップ
(2) でコマンドを受領し、ステップ(3) で書込みコマン
ドであるか調べる。FIGS. 3, 4, 5, 6 and 7 are flow charts for explaining the operation of the present invention. 3 to 5 relate to the transfer of command and data blocks between the higher-level device 1 and the interface circuit 4, in FIG. 3, the processor 3 is idle when the interface circuit 4 uses the command queuing method. In the state, the activation from the host device 1 is monitored via the interface circuit 4 as shown in step (1). Then, when the device number is specified by the higher-level device 1 and activated, the step
The command is received in (2), and it is checked in step (3) whether it is a write command.
【0049】書込みコマンドで無ければ、ステップ(7)
で他のコマンドを処理した後ステップ(1) の処理に戻
り、書込みコマンドであると、ステップ(4) でデータ転
送可能か調べる。即ち、バッファ領域12(以後バッフ
ァメモリと略す)にデータブロックを格納する余地があ
るか調べ、データ転送が可能であれば、ステップ(8) で
バッファメモリにデータブロックを転送して格納した
後、ステップ(5) の処理に移行する。If it is not a write command, step (7)
After processing other commands with, return to the processing of step (1), and if it is a write command, check whether data transfer is possible in step (4). That is, it is checked whether or not there is room for storing a data block in the buffer area 12 (hereinafter abbreviated as a buffer memory), and if data transfer is possible, after the data block is transferred and stored in the buffer memory in step (8), Move to the processing in step (5).
【0050】若し、バッファメモリにデータブロックを
格納する余地が無ければ、ステップ(5) でコマンド情報
をコマンドテーブル13に格納する。即ち、RAM10
に設けてある図9(B) に示す如きコマンドテーブル13
に、アドレスポインタの指示に従い、ディスク媒体上の
書込みアドレスai と、この書込みアドレスに対応して
データブロック長li と、前記Op欄にステップ(8) で
データブロックの格納が出来た場合にはビットoi を記
録する。If there is no room to store the data block in the buffer memory, the command information is stored in the command table 13 in step (5). That is, the RAM 10
Command table 13 shown in FIG. 9 (B)
In the case where the write address a i on the disk medium, the data block length l i corresponding to the write address, and the data block can be stored in the Op column in step (8) according to the instruction of the address pointer. Records bit o i .
【0051】そして、ステップ(6) で上位装置1との結
合を解除することで、コマンド受領完了を上位装置1に
報告し、ステップ(1) の処理に戻る。プロセッサ3はア
イドル状態の時に、ステップ(9) でコマンドテーブル1
3上に終了したコマンドが有るか調べる。即ち、コマン
ドテーブル13のコマンド終了を示すフラグf0 〜fn
の中で、アドレスポインタが指定する欄のフラグfiが
セットされているコマンドが有るとステップ(10)で上位
装置1と再結合して、ステップ(11)でフラグfi のセッ
トされているコマンドに付いて、コマンド終了ステータ
スを上位装置1に報告し、ステップ(9) の処理に戻る。Then, in step (6), the command reception completion is reported to the host device 1 by releasing the connection with the host device 1, and the process returns to step (1). When the processor 3 is in the idle state, in step (9) the command table 1
Check if there is a completed command on 3. That is, the flags f 0 to f n indicating the command end of the command table 13
Among recombine the command there flag f i of column address pointer specifies is set an upper apparatus 1 in step (10), is set in the flag f i in step (11) With respect to the command, the command end status is reported to the host device 1, and the process returns to step (9).
【0052】又、プロセッサ3はアイドル状態の時、ス
テップ(12)でコマンドテーブル13にデータ未転送のコ
マンドがあるか調べる。即ち、コマンドテーブル13の
コマンドとデータブロック長が記録されていて、データ
転送終了を示すOp欄のビットo0 〜on の中で、アド
レスポインタが指定する欄のビットoi が記録されてい
ないコマンドがあるか調べる。Further, when the processor 3 is in the idle state, it checks in step (12) if there is a command for which data has not been transferred in the command table 13. That is, commands and data block length of the command table 13 have been recorded, in a bit o 0 ~ O n the Op field indicating the end of data transfer, bit o i of column address pointer specifies is not recorded Check if there is a command.
【0053】プロセッサ3はデータ未転送のコマンドが
あると、ステップ(13)で上位装置1と再結合して、ステ
ップ(14)でバッファメモリにデータブロックを転送して
格納する。When there is a command for which data has not been transferred, the processor 3 rejoins the host device 1 in step (13) and transfers and stores the data block in the buffer memory in step (14).
【0054】そして、ステップ(15)で上位装置1との結
合を解除し、ステップ(12)の処理に戻る。図3に示すス
テップ(1) 〜ステップ(8) の処理と、ステップ(9) 〜ス
テップ(11)と、ステップ(12)〜ステップ(15)の処理は、
割込み機能等によって非同期に且つ平行して実行され
る。Then, in step (15), the connection with the host device 1 is released, and the process returns to step (12). The processes of steps (1) to (8), steps (9) to (11), and steps (12) to (15) shown in FIG.
It is executed asynchronously and in parallel by an interrupt function or the like.
【0055】図4において、プロセッサ3はインタフェ
ース回路4がコマンドキューイング方式を使用していな
い場合、アイドル状態の時に、ステップ(1) に示す如く
インタフェース回路4を経て上位装置1からの起動を監
視している。そして、上位装置1から機番を指定されて
起動されると、ステップ(2) でコマンドを受領し、ステ
ップ(3) で書込みコマンドであるか調べる。In FIG. 4, when the interface circuit 4 does not use the command queuing method, the processor 3 monitors the start-up from the host device 1 via the interface circuit 4 as shown in step (1) in the idle state. is doing. When the host device 1 is activated by designating a machine number, the command is received in step (2), and it is checked in step (3) whether it is a write command.
【0056】書込みコマンドで無ければ、ステップ(8)
で他のコマンドを処理した後ステップ(1) の処理に戻
り、書込みコマンドであると、ステップ(4) でデータ転
送可能か調べる。即ち、バッファメモリにデータブロッ
クを格納する余地があるか調べ、データ転送が可能であ
れば、ステップ(9) でバッファメモリにデータブロック
を転送して格納した後、ステップ(5) の処理に移行す
る。If it is not a write command, step (8)
After processing other commands with, return to the processing of step (1), and if it is a write command, check whether data transfer is possible in step (4). That is, it is checked whether there is room to store the data block in the buffer memory, and if data transfer is possible, the data block is transferred and stored in the buffer memory in step (9), and then the process of step (5) is performed. To do.
【0057】若し、バッファメモリにデータブロックを
格納する余地が無ければ、ステップ(5) でコマンド情報
をコマンドテーブル13に格納する。即ち、RAM10
に設けてある図9(B) に示す如きコマンドテーブル13
に、アドレスポインタの指示に従い、ディスク媒体上の
書込みアドレスai と、この書込みアドレスに対応して
データブロック長li と、前記Op欄にステップ(9) で
データブロックの格納が出来た場合にはビットoi を記
録する。If there is no room to store the data block in the buffer memory, the command information is stored in the command table 13 in step (5). That is, the RAM 10
Command table 13 shown in FIG. 9 (B)
In the case where the write address a i on the disk medium, the data block length l i corresponding to this write address, and the data block can be stored in the Op column in step (9) according to the instruction of the address pointer. Records bit o i .
【0058】プロセッサ3は、ステップ(6) でデータ転
送は終了したか調べ、一つの書込みコマンドに対するデ
ータブロックの転送が完了すると、ステップ(10)でコマ
ンド終了ステータスを上位装置1に報告し、ステップ
(1) の処理に戻り、ステップ(6) でデータ転送が終了し
なければ、ステップ(7) で上位装置1との結合を解除し
てステップ(1) の処理に戻る。The processor 3 checks in step (6) whether the data transfer is completed. When the transfer of the data block for one write command is completed, the processor 3 reports the command completion status to the host device 1 in step (10).
Returning to the process of (1), if the data transfer is not completed in step (6), the connection with the host device 1 is released in step (7) and the process returns to step (1).
【0059】プロセッサ3は、図5のステップ(1) に示
す如く、アイドル状態では、残りのデータ転送は可能か
調べ、バッファメモリにデータブロックを格納する余地
が発生し、データ転送が可能となると、ステップ(2) で
上位装置1と再結合し、ステップ(3) でバッファメモリ
にデータブロックを転送して格納する。As shown in step (1) of FIG. 5, the processor 3 checks whether the remaining data transfer is possible in the idle state, and there is room for storing the data block in the buffer memory, and the data transfer becomes possible. , At step (2), it is rejoined with the host device 1, and at step (3), the data block is transferred and stored in the buffer memory.
【0060】そして、ステップ(4) でデータ転送は終了
したか調べ、一つのコマンドに対するデータブロックの
転送が終了すると、ステップ(6) でコマンド終了ステー
タスを上位装置1に報告して、ステップ(1) の処理に戻
り、データ転送が終了しなければステップ(5) で上位装
置1との結合を解除して、ステップ(1) の処理に戻る。Then, it is checked in step (4) whether the data transfer is completed, and when the data block transfer for one command is completed, the command completion status is reported to the higher-level device 1 in step (6) and the step (1 ), If the data transfer is not completed, the connection with the host device 1 is released in step (5), and the process returns to step (1).
【0061】図4と図5の処理も、前記同様割込み機能
等によって、非同期に且つ平行して実行される。図6は
イレーズ処理後にデータブロックの書込みを行う場合の
動作を示す。プロセッサ3はステップ(1) でコマンドテ
ーブル13に未実行で実行中でないコマンドがあるか監
視しており、未実行で実行中でないコマンドがあると、
ステップ(2) で書込みコマンドか調べる。The processes of FIGS. 4 and 5 are also executed asynchronously and in parallel by the interrupt function or the like as described above. FIG. 6 shows an operation in the case of writing a data block after the erase processing. In step (1), the processor 3 monitors the command table 13 for unexecuted and unexecuted commands. If there is an unexecuted or unexecuted command,
Check if it is a write command in step (2).
【0062】書込みコマンドで無ければ、ステップ(11)
で書込みコマンド以外のコマンドを処理してステップ
(1) の処理に戻り、書込みコマンドであれば、ステップ
(3) でアドレスポインタに書込みコマンドのポインタ値
iをセットし、コマンドのポインタオフセット値jを0
に初期化する。If it is not a write command, step (11)
Steps after processing commands other than write commands with
Return to the process of (1), if it is a write command, step
In (3), set the pointer value i of the write command to the address pointer and set the pointer offset value j of the command to 0.
Initialize to.
【0063】プロセッサ3は、ステップ(4) で、RAM
10上の作業領域11に設定しているデータブロックの
アドレス変数Aにアドレスai を、データブロック長の
変数Lにブロック長li をセットする。The processor 3 executes the RAM in step (4).
Address a i is set in the address variable A of the data block set in the work area 11 on 10 and block length l i is set in the variable L of the data block length.
【0064】そして、ステップ(5) で設定したアドレス
Aにヘッド6を位置付けさせる。即ち、アドレスai に
ヘッド6を位置付けし、ステップ(6) でイレーズ処理を
開始する。即ち、書込み/読出し回路5を制御して、ヘ
ッド6にイレーズ用の電流を供給し、コマンドテーブル
13のアドレスai が指定するデータブロック長liを
読出し、ディスク媒体のアドレスai からli の長さの
領域をイレーズする処理を開始する。Then, the head 6 is positioned at the address A set in step (5). That is, the head 6 is positioned at the address a i , and the erase process is started in step (6). That is, the write / read circuit 5 is controlled to supply an erase current to the head 6, the data block length l i designated by the address a i of the command table 13 is read, and the address a i to l i of the disk medium is read. The process of erasing the area of length is started.
【0065】プロセッサ3は次にステップ(7) でコマン
ドテーブル13に未実行で実行中でない書込みコマンド
が有るか調べる。即ち、コマンドテーブル13でフラグ
のセットされていないコマンドで実行中でないコマンド
を探し、存在する場合はステップ(12)でデータブロック
は連続しているか調べる。Next, the processor 3 checks in step (7) if there is a write command in the command table 13 that has not been executed and is not being executed. That is, the command table 13 is searched for a command whose flag is not set and which is not being executed, and if there is a command, it is checked in step (12) whether the data blocks are continuous.
【0066】即ち、アドレスポインタが指定するアドレ
スai のデータブロック長li から得られるディスク媒
体上の領域の境界から、次のアドレスai+1 が指定する
境界が連続している場合、ステップ(13)で前記ポインタ
オフセット値jに1を加算し、Lにli+j を加算する。[0066] That is, from the boundary of the area on the disk medium obtained from the data block length l i of the address a i address pointer specifies, if the boundary next address a i + 1 designates are continuous, step At (13), 1 is added to the pointer offset value j, and l i + j is added to L.
【0067】そして、ステップ(7) の処理に戻る動作を
コマンドC1 〜C3 の連続する回数繰り返す。そして、
ステップ(8) でLブロックイレーズ処理が終了したか調
べる。即ち、コマンドC1 〜C3 の連続したデータブロ
ック長の合計長のイレーズが終了したか調べる。Then, the operation of returning to the process of step (7) is repeated the number of times the commands C 1 to C 3 are repeated. And
In step (8), it is checked whether the L block erase processing is completed. That is, it is checked whether the erase of the total length of the continuous data block lengths of the commands C 1 to C 3 is completed.
【0068】終了でなければ、ステップ(7) の処理に戻
り、終了しているとステップ(9) でエラー発生か調べ、
エラー発生ならばステップ(18)でエラー処理を行う。こ
のエラー処理はコマンドキューイング方式の場合、タグ
情報により各コマンドに対するエラーを通知することが
可能であり、コマンドキューイング方式でない場合は、
デファードエラーの形式(エラー発生コマンドを指定す
る形式)でエラー報告を行う。If it is not finished, the process returns to the step (7). If it is finished, it is checked in the step (9) whether an error has occurred.
If an error occurs, error processing is performed in step (18). In the case of the command queuing method, this error processing can notify an error for each command by the tag information, and when it is not the command queuing method,
The error is reported in the deferred error format (the format that specifies the error occurrence command).
【0069】プロセッサ3は、ステップ(9) でエラーが
発生していなければ、ステップ(10)でLをli +li+1
+・・+li+j とする。プロセッサ3は、ステップ(14)
でLが示す領域に対しデータ書込みを開始し、ステップ
(15)でデータ書込処理終了を待ち、終了するとステップ
(16)でエラー発生か調べる。エラー発生ならばステップ
(18)の処理に移行し、エラー発生でなければ、ステップ
(17)でコマンドテーブル13のコマンド終了を示すフラ
グfi,・・・, fi+j をセットする。即ち、データ書込
み処理の済んだアドレスに対応するフラグを全てセット
する。そして、ステップ(1) の処理に戻る。If no error has occurred in step (9), the processor 3 sets L to l i + l i + 1 in step (10).
+ ··· + l i + j Processor 3 goes to step (14)
To start writing data to the area indicated by L,
In (15), wait for the end of the data writing process, and then step
Check in (16) if an error has occurred. If an error occurs, step
Move to the process of (18), and if there is no error, step
At (17), flags f i, ... , F i + j indicating the command end in the command table 13 are set. That is, all the flags corresponding to the addresses for which the data writing process has been completed are set. Then, the process returns to step (1).
【0070】図7はデータ書込み処理後にベリファイ処
理を行う場合の動作を示す。図6と図7では、ステップ
(1) がコマンドテーブルに未実行で実行中でなく書込み
データがバッファメモリに転送済のコマンドが有るかと
なり、ステップ(6) がデータ書込み処理を開始するとな
り、ステップ(7) がコマンドテーブルに未実行で実行中
でなく書込みデータがバッファメモリに転送済の書込み
コマンドが有るかとなり、ステップ(8) が、Lブロック
書込み処理終了かとなり、ステップ(14)がLが示す領域
に対しベリファイ処理を開始するとなり、ステップ(15)
がベリファイ処理終了かとなっている点が相違するのみ
で、その他の動作は同様である。FIG. 7 shows the operation when the verify process is performed after the data write process. 6 and 7, the steps
Whether (1) has not been executed in the command table and there is a command whose write data has been transferred to the buffer memory because it is not being executed, step (6) starts the data writing process, and step (7) writes to the command table. Whether there is a write command that has not been executed and is not being executed and the write data has been transferred to the buffer memory, step (8) is the end of the L block write processing, and step (14) is the verify processing for the area indicated by L. Start and step (15)
The other operations are the same, except that the verify processing is completed.
【0071】又、イレーズ処理を行って、データ書込み
処理を行い、更にベリファイ処理を行う場合は、図6の
ステップ(16)の次に図7のステップ(14)以降を継続する
ことで実現させることが出来る。When the erase process is performed, the data write process is performed, and the verify process is further performed, the step (16) in FIG. 6 is followed by the step (14) in FIG. 7 and subsequent steps. You can
【0072】[0072]
【発明の効果】以上説明した如く、本発明は連続してコ
マンドが高速に発行されて、イレーズ処理後、データ書
込みを行う場合と、データ書込み後、ベリファイ処理を
行う場合は、上位装置のコマンド発行回数に関係無く、
ヘッド位置付け処理は最高で2回だけで良く、イレーズ
処理とベリファイ処理が必要な場合でも、最高で3回の
ヘッド位置付け処理で良いため、ディスク装置の性能低
下を最小限に押さえることが出来る。As described above, according to the present invention, commands are continuously issued at high speed, and data is written after erase processing, and data is written and verify processing is performed. Regardless of the number of issues,
The head positioning process only needs to be performed a maximum of two times, and even if the erase process and the verify process are required, the head positioning process can be performed a maximum of three times, so that the performance degradation of the disk device can be minimized.
【図1】 本発明の原理を説明するブロック図FIG. 1 is a block diagram illustrating the principle of the present invention.
【図2】 本発明の動作を説明するタイムチャートFIG. 2 is a time chart explaining the operation of the present invention.
【図3】 本発明の動作を説明するフローチャート(そ
の1)FIG. 3 is a flowchart (1) for explaining the operation of the present invention.
【図4】 本発明の動作を説明するフローチャート(そ
の2)FIG. 4 is a flowchart (part 2) explaining the operation of the present invention.
【図5】 本発明の動作を説明するフローチャート(そ
の3)FIG. 5 is a flowchart (No. 3) for explaining the operation of the present invention.
【図6】 本発明の動作を説明するフローチャート(そ
の4)FIG. 6 is a flowchart (part 4) explaining the operation of the present invention.
【図7】 本発明の動作を説明するフローチャート(そ
の5)FIG. 7 is a flowchart (5) explaining the operation of the present invention.
【図8】 ディスク装置の一例を説明するブロック図FIG. 8 is a block diagram illustrating an example of a disk device.
【図9】 コマンドテーブルの一例を説明する図FIG. 9 is a diagram illustrating an example of a command table.
【図10】 従来技術の動作を説明するタイムチャートFIG. 10 is a time chart explaining the operation of the conventional technology.
【図11】 従来技術の動作を説明するフローチャートFIG. 11 is a flowchart illustrating the operation of the conventional technique.
1 上位装置 2 ディスク装置 3 プロセッサ 4 インタフェース回路 5 書込み/読出し回路 6 ヘッド 7 位置付け制御回路 8 キャリッジ 9 ROM 10 RAM 11 作業領域 12 バッファ領域 13 コマンドテーブル 14 報告手段 15 検出手段 16 通知手段 17 書込み手段 18 バッファメモリ 19 ディスク媒体 1 host device 2 disk device 3 processor 4 interface circuit 5 writing / reading circuit 6 head 7 positioning control circuit 8 carriage 9 ROM 10 RAM 11 working area 12 buffer area 13 command table 14 reporting means 15 detecting means 16 notifying means 17 writing means 18 Buffer memory 19 Disk medium
Claims (4)
クを記憶するバッファメモリ(18)を備え、データの書込
みを実施する前に、ディスク媒体(19)上の書込みを指定
された領域のイレーズ処理を実行した後、該指定領域に
該バッファメモリ(18)から読出したデータブロックを書
込むディスク装置(2) であって、 上位装置(1) からのデータ書込みを指示する一つのコマ
ンドを受信して、該一つのコマンドが指示する書込みデ
ータブロックを前記バッファメモリ(18)に格納した時、
該上位装置(1) にコマンド受領の完了報告又はコマンド
実行の終了報告を行って、次のコマンドの受信準備を完
了する報告手段(14)と、 受信した複数のコマンドが前記ディスク媒体(19)上で連
続した領域に複数のデータブロックを書込むことを指示
しているか否かを検出する検出手段(15)と、 先に受信したコマンドに対するイレーズ処理が完了する
前に、次のコマンドが受信されたことを検出して通知す
る通知手段(16)と、 複数のコマンドに対して一括してイレーズ処理を実行さ
せた後、該複数のコマンドに対応する複数のデータブロ
ックを一括して書込ませる書込み手段(17)と、 を設け、前記検出手段(15)が複数のデータブロックの書
込み指示を検出した場合、前記通知手段(16)が次のコマ
ンド受信を通知している間は、イレーズ処理を継続して
実行した後、該イレーズ処理が完了した前記ディスク媒
体(19)上の領域に対し、複数のデータブロックを一括し
て書込むことを特徴とするディスク装置。1. An erasing process for an area designated for writing on a disk medium (19), comprising a buffer memory (18) for storing a plurality of data blocks instructed to be written, before writing the data. The disk device (2) that writes the data block read from the buffer memory (18) to the specified area after executing the command, and receives one command instructing the data writing from the upper device (1). When the write data block designated by the one command is stored in the buffer memory (18),
A command means (14) for sending a command reception completion report or a command execution completion report to the host device (1) to complete preparations for receiving the next command, and a plurality of received commands for the disk medium (19). The detection means (15) that detects whether or not it is instructed to write multiple data blocks in the continuous area above, and the next command is received before the erase processing for the previously received command is completed. A notification means (16) for detecting and notifying that a plurality of commands have been erased, and a plurality of data blocks corresponding to the plurality of commands are collectively written after the erase processing is collectively executed. When the detecting means (15) detects the write instruction of a plurality of data blocks, the erase means is provided while the notifying means (16) is notifying the reception of the next command. Continue processing After, the area of the disc on the medium (19) in which the erase process is complete to the disk device, characterized in that writing collectively a plurality of data blocks.
クを記憶するバッファメモリ(18)を備え、ディスク媒体
(19)上の書込みを指定された領域に、該バッファメモリ
(18)から読出したデータブロックの書込みを実施した
後、該書込んだデータブロックの妥当性を確認するため
のベリファイ処理を行うディスク装置(2) であって、 上位装置(1) からのデータ書込みを指示する一つのコマ
ンドを受信して、該一つのコマンドが指示する書込みデ
ータブロックを前記バッファメモリ(18)に格納した時、
該上位装置(1) にコマンド受領の完了報告又はコマンド
実行の終了報告を行って、次のコマンドの受信準備を完
了する報告手段(14)と、 受信した複数のコマンドが前記ディスク媒体(19)上で連
続した領域に複数のデータブロックを書込むことを指示
しているか否かを検出する検出手段(15)と、 先に受信したコマンドの指示するデータブロックの書込
みが完了する前に、次のコマンドが受信されたことを検
出して通知する通知手段(16)と、 複数のコマンドが指示する複数のデータブロックの書込
み処理を一括して実行させた後、該複数のコマンドに対
応する複数のデータブロックに対するベリファイ処理を
一括して実行させる書込み手段(17)と、 を設け、前記検出手段(15)が複数のデータブロックの書
込み指示を検出した場合、前記通知手段(16)が次のコマ
ンド受信を通知している間は、データブロックの書込み
処理を継続して実行した後、該書込みが完了した複数の
データブロックに対するベリファイ処理を一括して実行
することを特徴とするディスク装置。2. A disk medium comprising a buffer memory (18) for storing a plurality of data blocks instructed to be written.
(19) Write the buffer memory in the specified area
A disk device (2) that performs verification processing to confirm the validity of the written data block after writing the data block read from (18), and the data from the host device (1). When receiving one command instructing to write and storing the write data block instructed by the one command in the buffer memory (18),
A command means (14) for sending a command reception completion report or a command execution completion report to the host device (1) to complete preparations for receiving the next command, and a plurality of received commands for the disk medium (19). The detection means (15) for detecting whether or not it is instructed to write a plurality of data blocks in a continuous area above, and before the completion of writing the data blocks instructed by the previously received command, Notification means (16) for detecting and notifying that the command has been received, and after collectively executing the write processing of the plurality of data blocks designated by the plurality of commands, a plurality of commands corresponding to the plurality of commands are executed. Writing means (17) for collectively executing verification processing on the data blocks of, and when the detecting means (15) detects a write instruction of a plurality of data blocks, the notifying means (16) While notifying the command reception, after continuously executing the write processing of the data blocks, the disk apparatus characterized by performing collectively verifying process for a plurality of data blocks 該書 lump is completed.
クを記憶するバッファメモリ(18)を備え、データの書込
みを実施する前に、ディスク媒体(19)上の書込みを指定
された領域のイレーズ処理を実行した後、該バッファメ
モリ(18)から読出したデータブロックの書込みを実施し
てから、更に、該書込んだデータブロックの妥当性を確
認するためのベリファイ処理を行うディスク装置(2) で
あって、 上位装置(1) からのデータ書込みを指示する一つのコマ
ンドを受信して、該一つのコマンドが指示する書込みデ
ータブロックを前記バッファメモリ(18)に格納した時、
該上位装置(1) にコマンド受領の完了報告又はコマンド
実行の終了報告を行って、次のコマンドの受信準備を完
了する報告手段(14)と、 受信した複数のコマンドが前記ディスク媒体(19)上で連
続した領域に複数のデータブロックを書込むことを指示
しているか否かを検出する検出手段(15)と、 先に受信したコマンドに対するイレーズ処理が完了する
前に、次のコマンドが受信されたことを検出して通知す
る通知手段(16)と、 複数のコマンドに対して一括してイレーズ処理を実行さ
せた後、該複数のコマンドに対応する複数のデータブロ
ックを一括して書込ませてから、該複数のコマンドに対
応する複数のデータブロックに対するベリファイ処理を
一括して実行させる書込み手段(17)と、 を設け、前記検出手段(15)が複数のデータブロックの書
込み指示を検出した場合、前記通知手段(16)が次のコマ
ンド受信を通知している間は、イレーズ処理を継続して
実行した後、該イレーズ処理が完了した前記ディスク媒
体(19)上の領域に対し、該複数のデータブロックを一括
して書込む処理を継続して実行してから、該書込みが完
了した複数のデータブロックに対するベリファイ処理を
一括して実行することを特徴とするディスク装置。3. An erase process of a region designated for writing on a disk medium (19), comprising a buffer memory (18) for storing a plurality of data blocks instructed to be written, before writing the data. After executing, write the data block read from the buffer memory (18), and then perform a verify process to confirm the validity of the written data block. When receiving one command instructing data writing from the upper device (1) and storing the write data block instructed by the one command in the buffer memory (18),
A command means (14) for sending a command reception completion report or a command execution completion report to the host device (1) to complete preparations for receiving the next command, and a plurality of received commands for the disk medium (19). The detection means (15) that detects whether or not it is instructed to write multiple data blocks in the continuous area above, and the next command is received before the erase processing for the previously received command is completed. A notification means (16) for detecting and notifying that a plurality of commands have been erased, and a plurality of data blocks corresponding to the plurality of commands are collectively written after the erase processing is collectively executed. Write means (17) for collectively executing verify processing on a plurality of data blocks corresponding to the plurality of commands, and the detection means (15) is provided for writing a plurality of data blocks. When the notifying means (16) is notifying the reception of the next command, the erase process is continuously executed, and then the erase process is completed in the area on the disk medium (19). On the other hand, the disk device is characterized in that, after continuously executing a process of collectively writing the plurality of data blocks, a verify process is collectively performed on the plurality of data blocks for which writing has been completed.
クを記憶するバッファメモリ(18)を備え、データの書込
みを実施する前に、ディスク媒体(19)上の書込みを指定
された領域のイレーズ処理を実行した後、該バッファメ
モリ(18)から読出したデータブロックの書込みを実施し
てから、更に、該書込んだデータブロックの妥当性を確
認するためのベリファイ処理を行うディスク装置(2) に
おいて、 上位装置(1) からのデータ書込みを指示する一つのコマ
ンドを受信して、該一つのコマンドが指示する書込みデ
ータブロックを前記バッファメモリ(18)に格納した時、
該上位装置(1) にコマンド受領の完了報告又はコマンド
実行の終了報告を行うことにより、該一つのコマンドが
指示する前記ディスク媒体(19)上の領域に対するイレー
ズ処理を開始すると共に、該上位装置(1) から次のコマ
ンドを送出させて、該イレーズ処理終了前にコマンドキ
ューイングを作成し、該コマンドキューイングを参照し
て、受信した複数のコマンドが前記ディスク媒体(19)上
で連続した領域に複数のデータブロックを書込むことを
指示している場合、該複数のコマンドが指示するディス
ク媒体(19)上の連続した領域に対し、一括してイレーズ
処理を行わせた後、該コマンドキューイングで処理待ち
のコマンドが指定するデータブロックを一括して書込ん
でから、該一括して書込んだ複数のデータブロックに対
するベリファイ処理を一括して実行するようにしたこと
を特徴とするデータブロック書込み方法。4. An erasing process of a region designated for writing on a disk medium (19), comprising a buffer memory (18) for storing a plurality of data blocks instructed to be written, before writing the data. In the disk device (2) that executes the verification process for confirming the validity of the written data block after executing the writing of the data block read from the buffer memory (18). When receiving one command instructing data writing from the higher-level device (1) and storing the write data block instructed by the one command in the buffer memory (18),
By issuing a command reception completion report or a command execution completion report to the host device (1), the erase process for the area on the disk medium (19) designated by the one command is started, and the host device The next command is sent from (1) to create command queuing before the end of the erase process, and referring to the command queuing, a plurality of received commands are consecutive on the disk medium (19). When it is instructed to write multiple data blocks to the area, the erase operation is collectively performed on the continuous area on the disk medium (19) specified by the multiple commands, and then the command is executed. After writing the data blocks specified by the command waiting for processing by queuing all at once, the verify process is performed on the multiple data blocks that have been written all at once. Data block writing method being characterized in that so as to run.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP06894993A JP3147575B2 (en) | 1993-03-29 | 1993-03-29 | Data writing device and data block writing method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP06894993A JP3147575B2 (en) | 1993-03-29 | 1993-03-29 | Data writing device and data block writing method |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH06282944A true JPH06282944A (en) | 1994-10-07 |
| JP3147575B2 JP3147575B2 (en) | 2001-03-19 |
Family
ID=13388429
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP06894993A Expired - Lifetime JP3147575B2 (en) | 1993-03-29 | 1993-03-29 | Data writing device and data block writing method |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3147575B2 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2006033342A1 (en) * | 2004-09-21 | 2006-03-30 | Pioneer Corporation | Recording device and method, and computer program |
| US7428612B2 (en) | 2004-12-24 | 2008-09-23 | Hitachi Global Storage Technologies Netherlands B.V. | Magnetic disk drive and method for controlling write operation |
-
1993
- 1993-03-29 JP JP06894993A patent/JP3147575B2/en not_active Expired - Lifetime
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2006033342A1 (en) * | 2004-09-21 | 2006-03-30 | Pioneer Corporation | Recording device and method, and computer program |
| US8018826B2 (en) | 2004-09-21 | 2011-09-13 | Pioneer Corporation | Recording device and method, and computer program |
| US7428612B2 (en) | 2004-12-24 | 2008-09-23 | Hitachi Global Storage Technologies Netherlands B.V. | Magnetic disk drive and method for controlling write operation |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3147575B2 (en) | 2001-03-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6389508B1 (en) | Information storing apparatus having a data prewrite unit | |
| KR950004214B1 (en) | Nonsynchronous direct access memory control method and system therefor | |
| JPS627572B2 (en) | ||
| JP3147575B2 (en) | Data writing device and data block writing method | |
| US5469546A (en) | Method for retrying recording information into a next logical block by sending sense data including address information to host computer and responding to command therefrom | |
| WO2002035338A1 (en) | Data recorder | |
| JP2734865B2 (en) | Continuous write processing method for disk device | |
| JP5044822B2 (en) | Apparatus and method for writing data to tape medium | |
| JPH0793101A (en) | Data backup device | |
| JPH0684283A (en) | Transfer method for magneto-optical disk data | |
| JP3870024B2 (en) | Information recording apparatus and information recording method | |
| JPH05241736A (en) | File control method for magnetic tape storage device | |
| JP2005038290A (en) | Disk control device and control method of disk control device | |
| JPH054693B2 (en) | ||
| JP2835844B2 (en) | Magnetic tape unit | |
| JP2864751B2 (en) | Nonvolatile memory management method for disk controller | |
| JP2634025B2 (en) | Format write control method for magnetic disk controller | |
| JPH05217286A (en) | Magnetic disk controller | |
| JPH07160436A (en) | Disk array device | |
| JPS62288926A (en) | Magnetic disk access control system | |
| JPH11237955A (en) | External storage subsystem and record creation method | |
| JPH11305951A (en) | Magnetic disk device | |
| JPS59157813A (en) | Controller for magnetic memory of rotor | |
| JPS58171724A (en) | Copy controller of magnetic disc tape | |
| JPH07334311A (en) | Magnetic disk device and data transfer method to buffer memory in magnetic disk device |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20001212 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080112 Year of fee payment: 7 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090112 Year of fee payment: 8 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100112 Year of fee payment: 9 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110112 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110112 Year of fee payment: 10 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120112 Year of fee payment: 11 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130112 Year of fee payment: 12 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130112 Year of fee payment: 12 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140112 Year of fee payment: 13 |