JP2009301595A - Disk drive and its recording method - Google Patents

Disk drive and its recording method Download PDF

Info

Publication number
JP2009301595A
JP2009301595A JP2008151220A JP2008151220A JP2009301595A JP 2009301595 A JP2009301595 A JP 2009301595A JP 2008151220 A JP2008151220 A JP 2008151220A JP 2008151220 A JP2008151220 A JP 2008151220A JP 2009301595 A JP2009301595 A JP 2009301595A
Authority
JP
Japan
Prior art keywords
track
data
writing
unit
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2008151220A
Other languages
Japanese (ja)
Inventor
Yuichi Kobayashi
悠一 小林
Keitaro Okazaki
啓太郎 岡▲崎▼
Yasushi Nagai
靖 永井
Takeshi Asahi
猛 朝日
Hirotaka Moribe
博貴 森部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2008151220A priority Critical patent/JP2009301595A/en
Publication of JP2009301595A publication Critical patent/JP2009301595A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To shorten waiting time for readout in a storage medium having storage regions arranged in concentric circles. <P>SOLUTION: In reading out data from the storage medium having storage regions arranged in concentric circles, the waiting time for readout from the storage medium having the storage regions arranged in concentric circles is shortened by assigning a physical address of the storage medium using a semiconductor between the last physical address of a circle and the first physical address of the next circle immediately after changeover thereto and conducting readout from the storage medium using the semiconductor during the waiting time for readout. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、ディスク状の記録媒体と半導体記録媒体とを備えたディスク装置に関する。   The present invention relates to a disk device including a disk-shaped recording medium and a semiconductor recording medium.

HDD(Hard Disk Drive)は、PC(Personal Computer)の周辺機器としてOS(Operating System)やアプリケーションプログラム、ユーザ作成のテキストデータ等を格納するストレージデバイスとして用いられてきた。しかし、最近では、映像や音声といったストリームデータの格納手段として、HDDレコーダやSTB(Set Top Box)、カムコーダ等の様々なコンシューマ向けデジタル機器で用いられるようになってきている。   An HDD (Hard Disk Drive) has been used as a storage device for storing an OS (Operating System), application programs, user-created text data, and the like as a peripheral device of a PC (Personal Computer). However, recently, it has come to be used in various consumer digital devices such as HDD recorders, STBs (Set Top Boxes), and camcorders as means for storing stream data such as video and audio.

HDDや光ディスク等の円盤型記録媒体を用いるディスク装置は、データを記録するセクタが配置された円盤と、セクタを読み書きするヘッドとを備えている。このようなディスク装置は、データ読出/書込時、円盤を回転させて読出/書込の対象となるセクタ上へヘッドを移動し、読出/書込を行うように構成されている。   A disk device using a disk-type recording medium such as an HDD or an optical disk includes a disk on which a sector for recording data is arranged and a head for reading and writing the sector. Such a disk device is configured to perform reading / writing by rotating a disk to move the head onto a sector to be read / written at the time of data reading / writing.

そのため、ディスク装置は、HDDや光ディスクに対して読み出し処理を指示してから、実際に読み出しが開始されるまでに、一般に、シーク待ち時間と呼ばれる円盤の回転やヘッドの移動といった物理的な動作の完了を待つ時間が必要となる。   For this reason, the disk device generally performs physical operations such as disk rotation and head movement, which are called seek latency, after instructing the reading process to the HDD or optical disk until the actual reading is started. Time to wait for completion is required.

また、ディスク装置に代わるものとして、大容量の不揮発性メモリを用いた記憶装置も市場に出回り始めている。不揮発性メモリは、HDDと比較して、最高読出速度(MB/s)は低いが、HDDに存在するシーク待ち時間がないため、読出開始までの時間を短縮することができる。   As an alternative to the disk device, a storage device using a large-capacity nonvolatile memory is also on the market. The non-volatile memory has a lower maximum reading speed (MB / s) than the HDD, but does not have a seek waiting time existing in the HDD, so that the time until the start of reading can be shortened.

前述のようなHDDのシーク待ち時間を短縮するための従来技術として、特許文献1等に記載された技術が知られている。この従来技術では、比較的高頻度でシーク待ち時間が発生するファイルの先頭を不揮発性メモリに保存し、残りをディスク装置に保存する。このことにより、ファイルの先頭から読出しを行う場合に、読出し開始までの時間が短い不揮発性メモリを利用し、HDDのシーク待ち時間を短縮することができる。   As a conventional technique for shortening the HDD seek waiting time as described above, a technique described in Patent Document 1 is known. In this prior art, the head of a file that has a relatively high seek latency is stored in a nonvolatile memory, and the rest is stored in a disk device. As a result, when reading from the beginning of the file, a nonvolatile memory having a short time until the start of reading can be used, and the seek waiting time of the HDD can be shortened.

以下に、図14を用いて従来技術について説明を行う。図14は従来技術におけるディスク装置とホスト装置の構成を示すブロック図である。この図において、符号1140はディスク装置、符号102はディスク部、符号103は半導体により構成される不揮発性メモリ部、符号104は外部I/F部、符号1402は従来制御部、符号114はホスト装置、符号115はディスク装置用I/F、符号116はデコード部I/F、符号117は映像出力I/F、符号118はTVである。
ホスト装置114はディスク装置1401に対してデータの書込み、読出の命令を発行する装置であり、ディスク装置と読出/書込命令を含むデータのやり取りを行うディスク装置用I/F115と、映像デコーダと接続されるデコード部I/F116、TV118に映像データの出力を行う映像出力I/F117を備える。ディスク装置1401はホスト装置114に接続し、ホスト装置114の命令に従ってデータの書込み、読出を行うものであり、ディスク部102、不揮発性メモリ部103、外部I/F部104、従来制御部1402から構成されている。ディスク部102は、同心円状の複数のトラックを有する円盤状の媒体(ディスク)に対し、円盤回転制御、HD R/W制御等を行い、ヘッドを用いることよりことによってデータの読出/書込を行うことが可能な装置であり、従来制御部1402と接続されている。不揮発性メモリ部103は通電状態でないときも、書き込まれた情報を保持できるとともに、ディスク部102よりも読出開始までの応答性に優れるという特徴を持つ記録装置であり、従来制御部1402と接続されている。ここで、ディスク部102と不揮発性メモリ部103にはそれぞれ仮想アドレス領域が割り当てられており、ホスト装置114からの読出/書込を行うアドレスによって両者の書込/読出を制御することができる。
外部I/F部104はホスト装置114と接続するためのI/Fであり、ディスク装置用I/F115、従来制御部1402と接続されている。従来制御部1402は接続されている記憶装置の制御を行う装置であり、ディスク部102、不揮発性メモリ部103、外部I/F部104と接続されている。
ホスト装置114がディスク装置1401に対して読出/書込命令を発行する場合、ディスク装置用I/F115を用いて、ディスク装置1401に読出/書込命令を伝達する。このとき、従来制御部1402はホスト装置114からの命令を受け、ディスク部102と不揮発性メモリ部103に対して読出/書込動作を行う。また、読出/書込命令に用いる仮想アドレス空間は、不揮発性メモリ部103の物理アドレス空間とディスク部102の物理アドレス空間を併せたものになっており、不揮発性メモリ部103とディスク部102への書込みは、ホスト装置114が任意に行う。
例えば、映像データファイルを書き込む際、ホスト装置114は、各ファイルの先頭部分を不揮発性メモリ部103に保存する。この際、不揮発性メモリ部103に保存するデータサイズは、先頭部分のデータを1倍速で再生した場合の再生時間が、少なくともディスク部102の読出し開始待ち時間以上となるサイズである。このとき、残りのデータはディスク部102に書込む。読出しを行う際には、データの先頭は不揮発性メモリ部103から読出し、残りのデータをディスク部102から読み出す。このことにより、図14に示す従来技術によるディスク装置1401は、ファイル先頭開始されるデータ読み出しに際、読出し遅延が発生しない。
Hereinafter, the prior art will be described with reference to FIG. FIG. 14 is a block diagram showing configurations of a disk device and a host device in the prior art. In this figure, reference numeral 1140 is a disk device, reference numeral 102 is a disk unit, reference numeral 103 is a non-volatile memory unit composed of a semiconductor, reference numeral 104 is an external I / F unit, reference numeral 1402 is a conventional control unit, and reference numeral 114 is a host device. Reference numeral 115 denotes a disk device I / F, reference numeral 116 denotes a decoding unit I / F, reference numeral 117 denotes a video output I / F, and reference numeral 118 denotes a TV.
The host device 114 is a device that issues data write / read commands to the disk device 1401, a disk device I / F 115 that exchanges data including read / write commands with the disk device, a video decoder, A decoding unit I / F 116 and a video output I / F 117 for outputting video data to the TV 118 are provided. The disk device 1401 is connected to the host device 114, and writes and reads data according to instructions from the host device 114. From the disk unit 102, the nonvolatile memory unit 103, the external I / F unit 104, and the conventional control unit 1402 It is configured. The disk unit 102 performs disk rotation control, HD R / W control, etc. on a disk-shaped medium (disk) having a plurality of concentric tracks, and reads / writes data by using a head. This is a device that can be performed, and is connected to the conventional control unit 1402. The non-volatile memory unit 103 is a recording device characterized by being capable of holding written information even when not energized and having excellent response until the start of reading than the disk unit 102, and is connected to the conventional control unit 1402. ing. Here, virtual address areas are allocated to the disk unit 102 and the nonvolatile memory unit 103, respectively, and writing / reading of both can be controlled by an address for reading / writing from the host device 114.
The external I / F unit 104 is an I / F for connecting to the host device 114, and is connected to the disk device I / F 115 and the conventional control unit 1402. The conventional control unit 1402 is a device that controls the connected storage device, and is connected to the disk unit 102, the nonvolatile memory unit 103, and the external I / F unit 104.
When the host device 114 issues a read / write command to the disk device 1401, the read / write command is transmitted to the disk device 1401 using the disk device I / F 115. At this time, the conventional control unit 1402 receives a command from the host device 114 and performs read / write operations on the disk unit 102 and the nonvolatile memory unit 103. In addition, the virtual address space used for the read / write command is a combination of the physical address space of the nonvolatile memory unit 103 and the physical address space of the disk unit 102, and is sent to the nonvolatile memory unit 103 and the disk unit 102. Is arbitrarily performed by the host device 114.
For example, when writing a video data file, the host device 114 stores the head portion of each file in the nonvolatile memory unit 103. At this time, the data size stored in the nonvolatile memory unit 103 is a size in which the reproduction time when the data of the head part is reproduced at 1 × speed is at least equal to or longer than the read start waiting time of the disk unit 102. At this time, the remaining data is written to the disk unit 102. When reading, the top of the data is read from the nonvolatile memory unit 103 and the remaining data is read from the disk unit 102. As a result, the disk device 1401 according to the prior art shown in FIG. 14 does not cause a read delay when reading data at the beginning of the file.

特開2005-302276号公報Japanese Patent Laid-Open No. 2005-302276

前述した従来技術は、データの先頭として保存された限られた容量のデータについて、シーク待ち時間を短縮するものであった。   The above-described prior art reduces the seek waiting time for a limited amount of data stored as the head of data.

ところで、ディスク上のデータは円盤状の記憶媒体に同心円状に配置されており、この同心円の1周分はトラックと呼ばれている。大容量のデータをシーケンシャルに読み込む際には、このトラックをまたいだ読出が必要であり、これをトラックスイッチと呼ぶ。このトラックスイッチが発生した場合も数msのシーク待ち時間が発生する。   By the way, the data on the disk is arranged concentrically on a disk-shaped storage medium, and one round of this concentric circle is called a track. When sequentially reading a large amount of data, it is necessary to read across this track, which is called a track switch. When this track switch occurs, a seek waiting time of several ms occurs.

従来技術では、このトラックスイッチに係るシーク待ち時間の短縮することは考慮されておらず、トラックスイッチ発生の際、読出し停止時間が発生していた。   The prior art does not consider reducing the seek waiting time related to the track switch, and a read stop time occurs when the track switch is generated.

また、従来技術では、ホスト装置114が任意に不揮発性メモリ部103とディスク部102に対する読出、書込を制御している。しかし、トラックごとのデータ配置や、ディスク上の不良セクタの存在等ディスク装置しか持ち得ない情報が存在するため、トラックスイッチ時に不揮発性メモリ部103から読出可能なようにデータを配置することは困難であった。   In the prior art, the host device 114 arbitrarily controls reading and writing with respect to the nonvolatile memory unit 103 and the disk unit 102. However, since there is information that can only be possessed by the disk device, such as the data arrangement for each track and the presence of defective sectors on the disk, it is difficult to arrange the data so that it can be read from the nonvolatile memory unit 103 at the time of track switching. Met.

上記に示した、従来技術の問題点に対し、本発明の目的は、トラックスイッチが発生した際にも、途切れなくデータの読出しを行うことである。   The object of the present invention with respect to the problems of the prior art described above is to read data without interruption even when a track switch occurs.

不揮発性メモリを備えたディスク装置において、トラックの先頭部分に対するシーク(トラックスイッチ)時間も読出が可能なディスク装置を構成する。すなわち、以下(1)〜(4)のような構成を持ったディスク装置を実現することによって、複数トラックにまがるようなデータを読出すとき、トラックスイッチ待ち時間中に不揮発性メモリからデータを読み出すことで、ディスク装置の読出性能低下を防ぐ。   In a disk device provided with a non-volatile memory, a disk device that can read the seek (track switch) time for the head portion of the track is configured. In other words, by implementing a disk device having the following configurations (1) to (4), when reading data that spans multiple tracks, the data is read from the nonvolatile memory during the track switch waiting time. This prevents a decrease in the reading performance of the disk device.

(1)ディスク装置と不揮発性メモリの両方を含むアドレス空間について、トラックの先頭部分直前に不揮発性メモリを割り当てる。   (1) For an address space including both a disk device and a nonvolatile memory, a nonvolatile memory is allocated immediately before the head portion of the track.

(2)ホストからの読出命令に対して、トラックスイッチが発生している時間は不揮発性メモリから読出、その他の時間はディスク装置から読出を行う。   (2) In response to a read command from the host, the time when the track switch is generated is read from the nonvolatile memory, and the other time is read from the disk device.

(3)あるトラックにおける不揮発性メモリの容量を( 該当トラックのディスク読出性能 * トラックスイッチ待ち時間)とする。   (3) Let the capacity of the non-volatile memory in a certain track be (the disk reading performance of the corresponding track * track switch waiting time).

(4)ホストからの命令を受け、ディスク装置は、ディスク装置自身が管理するトラック上のセクタ配置情報や、不良セクタ情報等の情報を用いて、(1)〜(3)の動作を行う。   (4) Upon receiving a command from the host, the disk device performs the operations (1) to (3) using information such as sector arrangement information on a track managed by the disk device itself and information on defective sectors.

本発明によれば、トラックスイッチ待ち時間を要する記録媒体を用いるディスク装置において、トラックスイッチ待ち時間短縮し、あるいは、不要とし、ディスク装置の読出/書込速度を向上させることができる。   According to the present invention, in a disk device using a recording medium that requires a track switch waiting time, the track switch waiting time can be reduced or eliminated, and the reading / writing speed of the disk device can be improved.

また、本発明によれば、トラックスイッチ中、不揮発性メモリからデータを読出すことにより、データを途切れなく出力することができる。例えば、映像データの読出しを行う際には、安定したレートでデータを出力することにより、映像デコーダに対して、安定的にデータを供給することができる。   Further, according to the present invention, data can be output without interruption by reading data from the nonvolatile memory during the track switch. For example, when video data is read, the data can be stably supplied to the video decoder by outputting the data at a stable rate.

以下、本発明の実施例を説明する。   Examples of the present invention will be described below.

以下、本発明の一実施形態について、以降図1〜5を用いて説明する。図1は本発明の第1の実施形態によるディスク装置101とホスト装置114の構成を示すブロック図である。   Hereinafter, an embodiment of the present invention will be described with reference to FIGS. FIG. 1 is a block diagram showing the configuration of a disk device 101 and a host device 114 according to the first embodiment of the present invention.

図1に示す本発明の実施形態によるディスク装置101は、図15により従来技術として説明したものと以下の部分が異なる。   The disc device 101 according to the embodiment of the present invention shown in FIG. 1 is different from that described as the prior art in FIG.

ディスク装置101がデータ構造の記録を行う揮発性メモリ部106を備える。揮発性メモリ部106は、ディスク部102と不揮発性メモリ部103に対する読出/書込命令を保存するための待ち行列であるデータ読出/書込キュー109と、キュー生成用命令記憶領域108を備える。   The disk device 101 includes a volatile memory unit 106 that records a data structure. The volatile memory unit 106 includes a data read / write queue 109 serving as a queue for storing read / write commands for the disk unit 102 and the nonvolatile memory unit 103, and a queue generation command storage area 108.

制御部105が、ホスト装置114が発行した読出/書込命令を、ディスク部102と不揮発性メモリ部103への読出/書込命令に変換するための、仮想/物理セクタ変換テーブル107を備えること。仮想/物理セクタ変換テーブル107は制御部105上の読出し専用メモリまたは不揮発性メモリ部103に保存されており、ディスク部102が持つトラック数と同数のフィールドを持つ。   The control unit 105 includes a virtual / physical sector conversion table 107 for converting a read / write command issued by the host device 114 into a read / write command to the disk unit 102 and the nonvolatile memory unit 103. . The virtual / physical sector conversion table 107 is stored in the read-only memory or the nonvolatile memory unit 103 on the control unit 105, and has the same number of fields as the number of tracks that the disk unit 102 has.

ここで、実施例1については、不揮発性メモリ書込領域一時記憶110、シーク判断用テーブル111、シーク先変換テーブル112、AV I/F113、デコード部I/F116、映像出力I/F117及びTV118は使用しない。   Here, for Example 1, the nonvolatile memory writing area temporary storage 110, the seek determination table 111, the seek destination conversion table 112, the AV I / F 113, the decoding unit I / F 116, the video output I / F 117, and the TV 118 are do not use.

図2はキュー生成用命令記憶領域108を示す図である。これは、揮発性メモリ部106にあり、ホスト装置114からの読出/書込命令を記憶する領域である。「読出/書込開始物理セクタ番号」201はディスク部102と不揮発性メモリ部103に対する読出開始セクタ番号であり、「読出/書込サイズ」202には読出/書込サイズがセクタ単位で記載される。例えば、行203は読出/書込開始セクタ番号が1であり、読出/書込サイズが1300セクタ分であることを示す。   FIG. 2 is a diagram showing the queue generation instruction storage area 108. This is an area in the volatile memory unit 106 that stores read / write commands from the host device 114. “Read / write start physical sector number” 201 is the read start sector number for the disk unit 102 and the nonvolatile memory unit 103, and “read / write size” 202 describes the read / write size in units of sectors. The For example, row 203 indicates that the read / write start sector number is 1 and the read / write size is 1300 sectors.

図3は仮想/物理セクタ変換テーブル107を示す図である。これは、制御部105内にあり、ディスク部102と不揮発性メモリ部103のアドレスを管理するテーブルである。このテーブルは、仮想セクタ開始アドレス301、物理セクタ開始アドレス302とデータ保存先303の情報を持ち、ホスト装置114からの読出/書込命令をディスク部102と不揮発性メモリ部103それぞれへの読出/書込命令に変換するために利用される。このテーブルにおいて、「仮想セクタ開始アドレス」301はディスク装置101全体が持つ仮想アドレス、「物理セクタ開始アドレス」302はディスク部102と不揮発性メモリ部103に直接対応する物理アドレス、「データ保存先」303はデータが保存される部分がそれぞれ記載される。   FIG. 3 is a diagram showing the virtual / physical sector conversion table 107. This is a table in the control unit 105 that manages the addresses of the disk unit 102 and the nonvolatile memory unit 103. This table has information on a virtual sector start address 301, a physical sector start address 302, and a data storage destination 303, and reads / write commands from the host device 114 are read / written to the disk unit 102 and the nonvolatile memory unit 103, respectively. Used to convert to a write command. In this table, “virtual sector start address” 301 is a virtual address of the entire disk device 101, “physical sector start address” 302 is a physical address directly corresponding to the disk unit 102 and the nonvolatile memory unit 103, and “data storage destination” A part 303 stores data.

ホスト装置114からの命令をディスク装置101が受信した場合、命令は制御部105の仮想/物理セクタ変換テーブル107を用いて、以下のように変換される。   When the disk device 101 receives a command from the host device 114, the command is converted as follows using the virtual / physical sector conversion table 107 of the control unit 105.

例えば、行304は仮想セクタ開始アドレス1が不揮発性メモリ部103の物理セクタ開始アドレス1と対応していることを示す。行305は仮想セクタ開始アドレス101番がディスク部102の物理セクタ開始アドレス1番と対応していることを示す。行306は仮想セクタ開始アドレス1001番が不揮発性メモリ部103の物理セクタ開始アドレス101番と対応していることを示す。行307は仮想セクタ開始アドレス1101番がディスク部102の物理セクタ開始アドレス901番と対応していることを示す。   For example, the row 304 indicates that the virtual sector start address 1 corresponds to the physical sector start address 1 of the nonvolatile memory unit 103. A row 305 indicates that the virtual sector start address 101 corresponds to the physical sector start address 1 of the disk unit 102. A row 306 indicates that the virtual sector start address 1001 corresponds to the physical sector start address 101 of the nonvolatile memory unit 103. A row 307 indicates that the virtual sector start address 1101 corresponds to the physical sector start address 901 of the disk unit 102.

このとき、ディスク部102と不揮発性メモリ部103の境界を、ディスク部102におけるトラックの境界に合わせることとする。すなわち、トラックスイッチが発生する、トラック先頭部分直前に不揮発性メモリ部103の領域を割り当てる。このとき、あるトラックにおける不揮発性メモリ部103の領域を( 該当トラックのディスク読出性能 × トラックスイッチ待ち時間)とする。   At this time, the boundary between the disk unit 102 and the nonvolatile memory unit 103 is aligned with the track boundary in the disk unit 102. That is, an area of the nonvolatile memory unit 103 is allocated immediately before the track head portion where the track switch occurs. At this time, the area of the nonvolatile memory unit 103 in a certain track is defined as (disc reading performance of the corresponding track × track switch waiting time).

図4はデータ読出/書込キュー109を示す図である。これは、揮発性メモリ106内にあり、ディスク部102と不揮発性メモリ部103に対する読出/書込命令を管理するキューである。このキューは、読出/書込開始物理セクタ番号401と読出/書込サイズ402とデータ読出/書込先403の情報を持ち、ディスク部102と不揮発性メモリ部103それぞれへの読出/書込命令を管理するために利用される。「読出/書込開始物理セクタ番号」401は仮想/物理セクタ変換テーブルで変換された物理セクタ番号、「読出/書込サイズ」402は読出/書込を行うサイズ、「データ読出/書込先」403はデータが保存されている部分が記載される。   FIG. 4 shows the data read / write queue 109. This is a queue in the volatile memory 106 that manages read / write commands for the disk unit 102 and the nonvolatile memory unit 103. This queue has read / write start physical sector number 401, read / write size 402, and data read / write destination 403 information, and read / write commands to disk unit 102 and nonvolatile memory unit 103, respectively. Used to manage “Read / write start physical sector number” 401 is the physical sector number converted in the virtual / physical sector conversion table, “Read / write size” 402 is the size to read / write, “Data read / write destination” "403" describes a portion where data is stored.

例えば、仮想セクタ1から1030までの書込みを行う場合、このキューにおいて、始めに、行404に示すように不揮発性メモリ部103の1セクタから100セクタ書込み、次に、行405に示すようにディスク部102の1セクタから900セクタ書込み、最後に、行406に示すように不揮発性メモリ部103の101セクタから30セクタ書込むといった待ち行列を保持する。   For example, when writing from virtual sector 1 to 1030, in this queue, first, 100 sectors are written from 1 sector of the nonvolatile memory unit 103 as shown in line 404, and then the disk is written as shown in line 405. A queue is held such that 1 sector to 900 sectors are written in the unit 102, and finally 30 sectors are written from 101 sectors in the nonvolatile memory unit 103 as shown in the row 406.

図5は読出/書込処理を示す図である。これは、ホスト装置114から読出/書込命令があったとき、制御部105が仮想/物理セクタ変換テーブル107を用いてデータ読出/書込キュー109を生成し、このキューに従ってディスク部102と不揮発性メモリ部103に対して読出/書込動作を行う処理を示したものである。   FIG. 5 is a diagram showing a read / write process. This is because when a read / write command is issued from the host device 114, the control unit 105 generates a data read / write queue 109 using the virtual / physical sector conversion table 107, and the disk unit 102 and the non-volatile memory according to this queue. 4 shows a process of performing a read / write operation on the volatile memory unit 103.

ステップ501は制御部105がキュー生成用命令記憶領域108に読出/書込命令をコピーする処理である。   Step 501 is processing in which the control unit 105 copies the read / write command to the queue generation command storage area 108.

ステップ502は制御部105が読出/書込範囲に不揮発性メモリ部103領域とディスク部102領域両方を含むかどうか調べる処理である。すなわち、キュー生成用命令記憶領域108の示す読出/書込開始物理セクタ番号201から(読出/書込開始物理セクタ番号201 + 読出/書込サイズ202)までの間に、仮想/物理セクタ変換テーブル107の仮想セクタ開始アドレス301が示す値を2行以上含むかどうかによって判断を行う。もし、読出/書込範囲に不揮発性メモリ部103領域とディスク装置101領域の両方を含むのであれば、ステップ503へ進む。あるいは読出/書込範囲に不揮発性メモリ部103領域とディスク装置101領域両方を含むのでなければ、ステップ506へ進む。   Step 502 is a process in which the control unit 105 checks whether the read / write range includes both the non-volatile memory unit 103 area and the disk unit 102 area. That is, the virtual / physical sector conversion table between the read / write start physical sector number 201 indicated by the queue generation instruction storage area 108 and (read / write start physical sector number 201 + read / write size 202). The determination is made based on whether or not the value indicated by the virtual sector start address 301 of 107 includes two or more rows. If the read / write range includes both the nonvolatile memory unit 103 area and the disk device 101 area, the process proceeds to step 503. Alternatively, if the read / write range does not include both the nonvolatile memory unit 103 area and the disk device 101 area, the process proceeds to step 506.

ステップ503は制御部105がキュー生成用命令記憶領域108が示す命令の先頭から、ディスク部102または不揮発性メモリ部103への命令を1件取り出し、データ読出/書込キュー109に追加する処理である。すなわち、ステップ503はキュー生成用命令記憶領域108が保持する読出/書込範囲までの間で最も値の小さい仮想セクタ開始アドレス301 -1までの読出/書込命令をデータ読出/書込キュー109に追加する。このとき、キュー生成用命令記憶領域108の開始アドレスから、ひとつずつアドレス値を加算して行き、キュー生成用命令記憶領域108が保持する読出/書込範囲内で最小の仮想セクタ開始アドレス301と同じ値になったとき、そこまで加算してきたサイズと開始アドレスをデータ読出/書込キュー109に追加する。   Step 503 is a process in which the control unit 105 takes one instruction to the disk unit 102 or the nonvolatile memory unit 103 from the head of the instruction indicated by the queue generation instruction storage area 108 and adds it to the data read / write queue 109. is there. That is, in step 503, read / write commands up to the virtual sector start address 301-1 having the smallest value up to the read / write range held by the queue generation command storage area 108 are transferred to the data read / write queue 109. Add to. At this time, the address value is incremented one by one from the start address of the queue generation instruction storage area 108, and the minimum virtual sector start address 301 within the read / write range held by the queue generation instruction storage area 108 When the same value is reached, the size and start address added so far are added to the data read / write queue 109.

ステップ504は制御部105がキュー生成用命令記憶領域108の読出/書込サイズからキューに追加した命令分のサイズを差引く処理である。すなわち、キュー生成用命令記憶領域108の読出/書込サイズを(読出/書込サイズ − データ読出/書込キュー109に追加した読出/書込命令のサイズ)に変更する。   Step 504 is a process of subtracting the size of the instruction added to the queue from the read / write size of the queue generation instruction storage area 108 by the control unit 105. That is, the read / write size of the queue generation instruction storage area 108 is changed to (read / write size−size of the read / write instruction added to the data read / write queue 109).

ステップ505は制御部105がキュー生成用命令記憶領域108の読出/書込開始物理セクタ番号201をキューに追加した命令の次のアドレスに変更する処理である。すなわち、キュー生成用命令記憶領域108の読出/書込開始物理セクタ番号201をデータ読出/書込キュー109の末尾に記された読出/書込開始物理セクタ番号401の次のセクタ番号に変更する。ステップ505が終了すると、ステップ502を再び行う。すなわち、ステップ503、504、505を繰り返し行うことで、ホスト装置114からの読出/書込命令を逐次解釈し、読出/書込範囲に不揮発性メモリ部領域とディスク部領域の両方を含んでいる読出/書込キューからディスク部102または不揮発性メモリ部103の片方のみへの読出/書込み命令を生成することができる。   Step 505 is a process in which the control unit 105 changes the read / write start physical sector number 201 of the queue generation instruction storage area 108 to the next address of the instruction added to the queue. That is, the read / write start physical sector number 201 in the queue generation instruction storage area 108 is changed to the sector number next to the read / write start physical sector number 401 written at the end of the data read / write queue 109. . When step 505 ends, step 502 is performed again. That is, by repeatedly performing steps 503, 504, and 505, the read / write command from the host device 114 is sequentially interpreted, and the read / write range includes both the nonvolatile memory area and the disk area. A read / write command for only one of the disk unit 102 or the nonvolatile memory unit 103 can be generated from the read / write queue.

ステップ506はステップ502において、キュー生成用命令記憶領域108に保持されている読出/書込命令が、ディスク部102領域、不揮発性メモリ部103領域は片方を含む、あるいは書込みサイズが0の場合に実行される。ディスク部102領域、不揮発性メモリ部103領域の片方を含む場合は、制御部105がディスク部102と不揮発性メモリ部103どちらか一方に対する読出/書込命令をキュー生成用命令記憶領域108からデータ読出/書込キュー109に追加する。また、書込みサイズが0の場合はデータ読出/書込キュー109への追加を行わない。   In step 502, when the read / write instruction held in the instruction memory area 108 for queue generation includes one of the disk part 102 area and the non-volatile memory part 103 area, or the write size is 0 Executed. When one of the disk unit 102 area and the non-volatile memory unit 103 area is included, the control unit 105 receives a read / write command for either the disk unit 102 or the non-volatile memory unit 103 from the queue generation instruction storage area 108. Add to read / write queue 109. When the write size is 0, addition to the data read / write queue 109 is not performed.

ステップ507は制御部105が不揮発性メモリ部103に対する読出/書込キューが存在するかどうか、すなわち不揮発性メモリ部103に対する読出/書込キューか、ディスク部に対する読出/書込キューかを調べる処理である。もし不揮発性メモリ部103に対する読出/書込キューが存在するのであれば、ステップ508へ進み、存在しないのであればディスク部に対する読出/書込キューであるので、ステップ509へ進む。   Step 507 is a process in which the control unit 105 checks whether a read / write queue for the non-volatile memory unit 103 exists, that is, whether the read / write queue for the non-volatile memory unit 103 is a read / write queue for the disk unit. It is. If there is a read / write queue for the nonvolatile memory unit 103, the process proceeds to step 508, and if not, the process proceeds to step 509 because the read / write queue is for the disk unit.

ステップ508はディスク部102の書込み開始アドレスへシークしながら不揮発性メモリ部103領域へ読出/書込する処理である。ここでシークとは、磁気ディスク(図示せず)に記録/再生を行う記録/再生素子を有する磁気ヘッド(図示せず)を、トラック上に移動させることであり、本実施例では特に隣接するトラック上に移動させること(トラックスイッチ)をのことである。すなわち、制御部105は、不揮発性メモリ部103領域の読出/書込を行い、その際、ディスク部102は読出/書込対象となる不揮発性メモリ部103領域と仮想セクタアドレス301において連続する、次の物理セクタ開始アドレス302へのシークを行う。   Step 508 is a process of reading / writing to the non-volatile memory unit 103 area while seeking to the write start address of the disk unit 102. Here, the seek is to move a magnetic head (not shown) having a recording / reproducing element for recording / reproducing to / from a magnetic disk (not shown) onto the track. To move on a track (track switch). That is, the control unit 105 reads / writes the nonvolatile memory unit 103 area, and at that time, the disk unit 102 is continuous with the nonvolatile memory unit 103 area to be read / written in the virtual sector address 301. Seek to the next physical sector start address 302 is performed.

ステップ509は、読出/書込キューに存在する命令が、ディスク部102への命令のみであったときに、制御部105が磁気ヘッドを制御してディスク部102へ読出/書込を行う処理である。   Step 509 is a process in which the control unit 105 controls the magnetic head to read / write data to / from the disk unit 102 when the only commands in the read / write queue are commands to the disk unit 102. is there.

上記で説明した、ステップ501〜506までの、仮想/物理セクタ変換テーブル107とキュー生成用命令記憶領域108とを用いたデータ読出/書込キュー109生成処理と、ステップ507〜509のデータ読出/書込キュー109を用いた読出/書込処理を行うことによって、トラックの先頭部分に対するシーク(トラックスイッチ)時間も読出/書込が可能となる。すなわち、連続したデータをディスク部102のトラックに書込み、トラックのうち次に書込を行う隣接するトラックへシークを移動させる時間に、不揮発性メモリ部103に当該連続したデータを書き込むことができ、書込速度を向上させることができる。また、上記のような書込を行えば、連続したデータがディスク部102と不揮発性メモリ部103に分けて記憶してあるので、読出時に、連続したデータをディスク部102のトラックから読出し、トラックのうち次に読出を行う隣接するトラックへシークを移動させる時間に、不揮発性メモリ部に当該連続したデータを読出すことができ、読出し速度を向上させることができ、本発明の意図する効果が得られる。例えば、5200rpm、トラックスイッチ時間1msのHDDにおいて、HDD容量の8%分不揮発性メモリを使用すると、トラックスイッチが発生する場合も転送の途切れなく読み出すことができる。   The data read / write queue 109 generation processing using the virtual / physical sector conversion table 107 and the queue generation instruction storage area 108 in steps 501 to 506 described above, and the data read / By performing read / write processing using the write queue 109, it is possible to read / write the seek (track switch) time for the head portion of the track. That is, the continuous data can be written to the track of the disk unit 102, and the continuous data can be written to the nonvolatile memory unit 103 at the time of moving the seek to the adjacent track to be written next among the tracks. The writing speed can be improved. If the above writing is performed, continuous data is stored separately in the disk unit 102 and the non-volatile memory unit 103. Therefore, at the time of reading, the continuous data is read from the track of the disk unit 102, Of these, the continuous data can be read to the non-volatile memory portion during the time of moving the seek to the adjacent track to be read next, the reading speed can be improved, and the intended effect of the present invention is achieved. can get. For example, in an HDD with 5200 rpm and a track switch time of 1 ms, if a non-volatile memory is used for 8% of the HDD capacity, even if a track switch occurs, data can be read without interruption.

第2の実施形態ついて、 以降図1及び図6〜10を用いて説明する。図1において、第2の実施形態によるディスク装置101は、実施例1として説明した装置と以下の部分が異なる。すなわち、図1に示すディスク装置101において、制御部105が、ホスト装置114からの読出/書込命令に対し、次のトラックに対するシーク動作を制御する機能を備える。揮発性メモリ部106が、ホスト装置114からの書込命令が連続的なものであったかどうかを記録する、シーク判断用テーブル111を備える。また、揮発性メモリ部106は、制御部105が不揮発性メモリ部103に対する書込みを行ったときに、ホスト装置114からの不揮発性メモリ部103に対する書込命令が連続的なものであったかどうかを記録する、不揮発性メモリ書込領域一時記憶110を備える。ここでいう書込命令/読込命令が連続的とは、書込命令/読込命令が、不揮発性メモリ部への書込/読込の後に、ディスク部102への書込/読込を行う命令になっていることである。   Hereinafter, the second embodiment will be described with reference to FIG. 1 and FIGS. In FIG. 1, a disk device 101 according to the second embodiment differs from the device described as Example 1 in the following parts. That is, in the disk device 101 shown in FIG. 1, the control unit 105 has a function of controlling a seek operation for the next track in response to a read / write command from the host device 114. The volatile memory unit 106 includes a seek determination table 111 that records whether or not the write command from the host device 114 is continuous. In addition, the volatile memory unit 106 records whether or not the write command from the host device 114 to the nonvolatile memory unit 103 is continuous when the control unit 105 writes to the nonvolatile memory unit 103. A nonvolatile memory writing area temporary storage 110 is provided. The continuous write / read command here means that the write / read command is a command for writing / reading to / from the disk unit 102 after writing / reading to / from the non-volatile memory unit. It is that.

図6はシーク判断用テーブル111を示す図である。これは、ディスク装置101からデータの読出を行う際、過去の書込み状況を参照することにより、次のトラック(隣接するトラック)に対してシーク動作を行うかどうかを判断するためのテーブルである。シーク判断用テーブル111において、「トラック番号」601はディスク部102のトラック番号である。「連続データ開始セクタ」602はディスク部102の各トラックに割り当てられた不揮発性メモリ部103において、最終セクタを含む連続データがどこから始まるかを、各トラックの先頭セクタ番号からのオフセットで表現した値が記載される。「次のトラックとの連続性」603はディスク部102の各トラックに割り当てられた不揮発性メモリ部103において、最終セクタに値が書き込まれているかどうかが記載される。   FIG. 6 is a diagram showing the seek determination table 111. This is a table for determining whether or not to perform a seek operation on the next track (adjacent track) by referring to the past writing situation when reading data from the disk device 101. In the seek determination table 111, “track number” 601 is the track number of the disk unit 102. "Consecutive data start sector" 602 is a value that expresses where the continuous data including the last sector starts in the nonvolatile memory unit 103 allocated to each track of the disk unit 102 by an offset from the first sector number of each track Is described. “Continuity with next track” 603 describes whether or not a value is written in the last sector in the nonvolatile memory unit 103 assigned to each track of the disk unit 102.

例えば、行604に示すように、トラック番号601が1であるものに対して、連続データ開始セクタ602が0であり、次のトラックとの連続性603がtrueである場合、ディスク部102のトラック番号が1である部分に対応した不揮発性メモリ部103の領域において、最初のセクタから最後のセクタまで連続したデータが書き込まれており、さらに、不揮発性メモリ部103領域の直後に割り当てられたディスク部102の領域へも連続したデータが書き込まれていることを示す。   For example, as shown in the row 604, when the continuous data start sector 602 is 0 for the track number 601 of 1 and the continuity 603 with the next track is true, the track of the disk unit 102 In the area of the non-volatile memory unit 103 corresponding to the part with the number 1, continuous data is written from the first sector to the last sector, and the disk allocated immediately after the non-volatile memory unit 103 area This indicates that continuous data is also written in the area of the unit 102.

また、行605に示すように、トラック番号601が2であるものに対して、連続データ開始セクタ602が -1であり、次のトラックとの連続性603がfalseである場合、該当トラックが初期状態にあることを示す。すなわち、ディスク部102のトラック番号が2である部分に対応した不揮発性メモリ部103の領域において、データが書き込まれておらず、不揮発性メモリ部103領域の直後に割り当てられたディスク部102の領域への連続性が無いことを示す。   Also, as shown in line 605, when the continuous data start sector 602 is -1 and the continuity 603 with the next track is false for the track number 601 of 2, the corresponding track is the initial Indicates that it is in a state. That is, in the area of the non-volatile memory unit 103 corresponding to the part of the disk unit 102 having the track number 2, the area of the disk unit 102 allocated immediately after the non-volatile memory unit 103 area in which no data is written Indicates that there is no continuity to.

また、行606に示すように、トラック番号601が3であるものに対して、連続データ開始セクタ602が20であり、次のトラックとの連続性603がfalseである場合、ディスク部102のトラック番号が3である部分に対応した不揮発性メモリ部103の領域において、20セクタ目から連続したデータが書き込まれているが、連続データが書き込まれた領域は不揮発性メモリ部103領域内で途切れており、不揮発性メモリ部103領域の直後に割り当てられたディスク部102の領域への連続性は無いことを示す。   Also, as shown in the row 606, when the track number 601 is 3, the continuous data start sector 602 is 20, and the continuity 603 with the next track is false, the track of the disk unit 102 In the area of the non-volatile memory unit 103 corresponding to the part with the number 3, continuous data is written from the 20th sector, but the area where the continuous data is written is interrupted in the non-volatile memory unit 103 area. This indicates that there is no continuity to the area of the disk unit 102 allocated immediately after the non-volatile memory unit 103 area.

また、行607に示すように、トラック番号601が4であるものに対して、連続データ開始セクタ602が10であり、次のトラックとの連続性603がtrueである場合、ディスク部102のトラック番号が4である部分に対応した不揮発性メモリ部103の領域において、10 セクタ目から連続したデータが書き込まれており、不揮発性メモリ部103領域の直後に割り当てられたディスク部102の領域への連続性があることを示す。   Also, as shown in line 607, if the continuous data start sector 602 is 10 and the continuity 603 with the next track is true for the track number 601 of 4, the track of the disk unit 102 In the area of the non-volatile memory unit 103 corresponding to the part having the number 4, continuous data is written from the 10th sector, and the data to the area of the disk unit 102 allocated immediately after the non-volatile memory unit 103 area is written. Indicates that there is continuity.

図7は不揮発性メモリ書込領域一時記憶110を示す図である。これは、不揮発性メモリ部103に対する書込領域を管理し、不揮発性メモリ部103領域内で連続データ書込が行われているかどうかを判断するために利用するものである。不揮発性メモリ書込領域一時記憶110において、「書込開始物理セクタ番号」701は不揮発性メモリ部103領域に対して連続して書込みを行う際の始点となるセクタ番号であり、「書込サイズ」702は連続して書込まれるサイズがセクタ単位で記載される。   FIG. 7 is a diagram showing the nonvolatile memory write area temporary storage 110. This is used for managing a writing area for the nonvolatile memory unit 103 and determining whether or not continuous data writing is performed in the nonvolatile memory unit 103 area. In the nonvolatile memory write area temporary storage 110, the “write start physical sector number” 701 is the sector number that is the starting point for continuous writing to the nonvolatile memory unit 103 area. "702" describes the size of continuous writing in units of sectors.

例えば、行703に示すように、書込み開始物理セクタ番号701が1001であり、書込サイズ702が200である場合、不揮発性メモリ部103領域の物理セクタ1001番から200セクタの連続書込みが行われる。   For example, as shown in row 703, when the write start physical sector number 701 is 1001 and the write size 702 is 200, 200 sectors are continuously written from the physical sector 1001 in the nonvolatile memory unit 103 area. .

図8は不揮発性メモリ書込み処理を示す図である。これは、制御部105が不揮発性メモリ部103への書込処理を行うと共に、不揮発性メモリ書込領域一時記憶110を用いてシーク判断用テーブル111の値を更新する処理を表すものであり、実施例2における書込み処理は図5で説明した処理のステップ508(不揮発性メモリ部103に対する書込み)を以下に説明する処理に置き換えたものである。   FIG. 8 is a diagram showing a nonvolatile memory write process. This represents a process in which the control unit 105 performs a write process to the nonvolatile memory unit 103 and updates the value of the seek determination table 111 using the nonvolatile memory write area temporary storage 110. In the writing process in the second embodiment, step 508 (writing to the nonvolatile memory unit 103) described in FIG. 5 is replaced with the process described below.

ステップ801は制御部105が不揮発性メモリ部103への書込命令に従って書込みを行う処理である。   Step 801 is processing in which the control unit 105 performs writing in accordance with a write command to the nonvolatile memory unit 103.

ステップ802は制御部105が直前の書込命令と連続したアドレスかどうか調べる処理である。すなわち、ステップ801において実行した書込み命令の書込み開始物理セクタ番号と、不揮発性メモリ書込領域一時記憶110が保持している、(書込開始物理セクタ番号710 + 書込サイズ702)の値が等しかったとき、直前の書込命令と連続したアドレスとみなし、ステップ803へ進む。ここで、もし直前の書込命令と連続したアドレスでなければ、ステップ804へ進む。   Step 802 is processing in which the control unit 105 checks whether the address is continuous with the immediately preceding write command. That is, the write start physical sector number of the write command executed in step 801 is equal to the value of (write start physical sector number 710 + write size 702) held in the nonvolatile memory write area temporary storage 110. If this is the case, it is considered that the address is continuous with the immediately preceding write command, and the process proceeds to step 803. If the address is not continuous with the immediately preceding write command, the process proceeds to step 804.

ステップ803は制御部105が不揮発性メモリ書込領域一時記憶110の書込サイズに、ステップ801で実行した、直前の命令の書込サイズを加算して保存する処理である。   Step 803 is a process in which the control unit 105 adds the write size of the immediately preceding instruction executed in step 801 to the write size of the nonvolatile memory write area temporary storage 110 and saves it.

ステップ804は制御部105が不揮発性メモリ部103に対して、連続した書込が行われていない場合、前回までの不揮発性メモリ部103に対する書込み状態を初期化するために、不揮発性メモリ書込領域一時記憶110に今回の命令を書込む処理である。   In step 804, when the control unit 105 does not continuously write to the nonvolatile memory unit 103, the nonvolatile memory writing is performed to initialize the writing state to the nonvolatile memory unit 103 until the previous time. This is a process of writing the current instruction in the area temporary storage 110.

ステップ805は制御部105がディスク部102の1トラック分に割り当てられた不揮発性メモリ部103領域の最後のセクタを含むかどうかを調べる処理である。もし不揮発性メモリ部103領域最後のセクタを含むのであれば、ステップ806へ進む。もし不揮発性メモリ部103領域最後のセクタを含むのでなければ、処理を終了する。   Step 805 is a process for examining whether or not the control unit 105 includes the last sector of the nonvolatile memory unit 103 area allocated to one track of the disk unit 102. If the last sector of the nonvolatile memory unit 103 area is included, the process proceeds to step 806. If the last sector of the non-volatile memory unit 103 area is not included, the process ends.

ステップ806は制御部105がシーク判断用テーブル111の連続データ開始セクタ602を不揮発性メモリ書込領域一時記憶110の開始セクタの値に書換えを行う処理である。   Step 806 is a process in which the control unit 105 rewrites the continuous data start sector 602 in the seek determination table 111 to the value of the start sector in the nonvolatile memory write area temporary storage 110.

ステップ807は制御部105がデータ読出/書込みキュー109の書込みキューが空でないかどうか調べる処理である。もしデータ読出/書込みキュー109の書込みキューが空でないのであれば、ステップ808へ進む。仮想アドレスにおいて、不揮発性メモリ部103の領域の次にはディスク部102領域が必ず存在するので、ステップ808において、データ書込みキュー112が空でないのなら連続した書込みが行われているとわかる。また、もしデータ書込みキュー112が空でないのでなければ、処理を終了する。   Step 807 is a process in which the control unit 105 checks whether the write queue of the data read / write queue 109 is not empty. If the write queue of the data read / write queue 109 is not empty, the process proceeds to step 808. In the virtual address, the disk unit 102 area always exists after the area of the nonvolatile memory unit 103. Therefore, in step 808, if the data write queue 112 is not empty, it is understood that continuous writing is performed. If the data write queue 112 is not empty, the process is terminated.

ステップ808は制御部105がシーク判断用テーブル111の次トラックとの連続性603をtrueに変更する処理である。   Step 808 is processing in which the control unit 105 changes the continuity 603 with the next track of the seek determination table 111 to true.

図9は読出処理を示す図である。これは、制御部105が、 シーク判断用テーブル111を参照して、不揮発性メモリ部103とディスク部102の読出処理を行う処理を表す。   FIG. 9 is a diagram showing a reading process. This represents processing in which the control unit 105 performs read processing of the nonvolatile memory unit 103 and the disk unit 102 with reference to the seek determination table 111.

ステップ901はデータ読出キュー生成処理であり、図5に示すデータ読出/書込キュー生成処理のステップ501〜506と同様の処理を行う。   Step 901 is data read queue generation processing, which is the same processing as steps 501 to 506 of the data read / write queue generation processing shown in FIG.

ステップ902はデータ読出キューから1件取出す処理である。   Step 902 is a process for extracting one item from the data read queue.

ステップ903は902で取出したデータ読出しキューのデータ読出元が不揮発性メモリ部103かどうか調べる処理である。もしデータ読出元が不揮発性メモリ部103であれば、ステップ904へ進む。もしデータ読出元が不揮発性メモリ部103でなければ、ステップ907へ進む。   Step 903 is a process for checking whether or not the data reading source of the data reading queue taken out at 902 is the nonvolatile memory unit 103. If the data reading source is the nonvolatile memory unit 103, the process proceeds to step 904. If the data reading source is not the nonvolatile memory unit 103, the process proceeds to step 907.

ステップ904は命令がシーク判断用テーブル111の範囲を含み、かつ次のトラックとの連続性603がtrueかどうか調べる処理である。もし命令がシーク判断用テーブル111の範囲を含み、かつ次のトラックとの連続性603がtrueであれば、ステップ905へ進む。もし命令がシーク判断用テーブル111の範囲を含まない、あるいは次のトラックとの連続性がfalseであれば、ステップ903へ進む。   Step 904 is a process of checking whether the instruction includes the range of the seek determination table 111 and whether the continuity 603 with the next track is true. If the command includes the range of the seek determination table 111 and the continuity 603 with the next track is true, the process proceeds to step 905. If the command does not include the range of the seek determination table 111 or the continuity with the next track is false, the process proceeds to step 903.

ステップ905は読出し対象データから連続する最初のディスク部102領域にシークして先読みを開始する処理である。   Step 905 is a process of starting prefetching by seeking to the first continuous disk unit 102 area from the data to be read.

ステップ906はデータ読出しキューの内容を参照して、不揮発性メモリ部103から読出する処理である。   Step 906 is a process of reading from the nonvolatile memory unit 103 with reference to the contents of the data read queue.

ステップ907はデータ読出しキューの内容を参照して、ディスク装置101から読出する処理である。   Step 907 is a process of reading from the disk device 101 with reference to the contents of the data read queue.

ステップ908はデータ読出しキューが空かどうか調べる処理である。もしデータ読出しキューが空でなければ、ステップ902へ戻る。また、データ読出しキューが空であれば、処理を終了する。   Step 908 is processing to check whether the data read queue is empty. If the data read queue is not empty, the process returns to step 902. If the data read queue is empty, the process is terminated.

上記で説明した、ステップ801〜808までの、不揮発性メモリ部103への書込み処理において、不揮発性メモリ書込領域一時記憶110を用いてシーク判断用テーブル111を更新し、ステップ901〜908においてシーク判断用テーブル111を用いて読出しを行うことによって、読出/書込を行う際、不揮発性メモリ部103領域の途中で連続データが終了した場合や、連続データに含まれない不揮発性メモリ部103のデータを読み出した際にディスク部102のヘッドが次のトラックに対してシーク動作を行うことを防ぐことができ、自動的に次のトラックにヘッドをシークすることによって発生するシークの失敗をなくすことができる。   In the writing process to the nonvolatile memory unit 103 in steps 801 to 808 described above, the seek determination table 111 is updated using the nonvolatile memory write area temporary storage 110, and the seek is performed in steps 901 to 908. When reading / writing is performed by performing reading using the determination table 111, when continuous data ends in the middle of the nonvolatile memory unit 103 area, or when the nonvolatile memory unit 103 not included in the continuous data is stored. When the data is read, the head of the disk unit 102 can be prevented from performing a seek operation on the next track, and the seek failure that occurs by automatically seeking the head to the next track is eliminated. Can do.

第3の実施形態ついて、以降図1及び図10〜13を用いて説明する。図1において、第3の実施形態によるディスク装置101は、実施例2として説明した装置と以下の部分が異なる。すなわち、図1に示すディスク装置101において、制御部105が、ホスト装置114からの読出/書込命令に対し、次のトラックに対するシーク動作を制御する動作が異なる。また、揮発性メモリ部106が、ホスト装置114からの書込命令が連続的なものであったかどうかを記録する、シーク先変換テーブル112を備え、シーク判断用テーブル111を備えない。   Hereinafter, the third embodiment will be described with reference to FIGS. 1 and 10 to 13. In FIG. 1, a disk device 101 according to the third embodiment is different from the device described as Example 2 in the following parts. That is, in the disk device 101 shown in FIG. 1, the control unit 105 operates differently in response to a read / write command from the host device 114 to control a seek operation for the next track. In addition, the volatile memory unit 106 includes a seek destination conversion table 112 that records whether or not the write command from the host device 114 is continuous, and does not include the seek determination table 111.

図10はシーク先変換テーブル112を示す図である。これは、揮発性メモリ部103に存在し、不揮発性メモリ部103への読出/書込処理中に、ディスク部102のヘッドがどこへシークするかを決定するためのテーブルである。   FIG. 10 shows the seek destination conversion table 112. As shown in FIG. This is a table that exists in the volatile memory unit 103 and determines where the head of the disk unit 102 seeks during read / write processing to the nonvolatile memory unit 103.

「トラック番号」1001はディスク部102のトラック番号である。「連続データ終了セクタ」1002はディスク部102の各トラックに割り当てられた不揮発性メモリ部103において、不揮発性メモリ部103領域の先頭から連続したデータがどこで途切れるかを、書込みが行われたセクタ数で示す。「シーク先セクタ」1003はディスク部102の各トラックに割り当てられた不揮発性メモリ部103において、最終セクタに値が書き込まれているかどうかが記載される。   “Track number” 1001 is a track number of the disk unit 102. “Continuous data end sector” 1002 is the number of sectors written in the non-volatile memory unit 103 assigned to each track of the disk unit 102 where the continuous data from the beginning of the non-volatile memory unit 103 area is interrupted It shows with. “Seek destination sector” 1003 describes whether or not a value is written in the last sector in the nonvolatile memory unit 103 assigned to each track of the disk unit 102.

図11は書込処理を示す図である。これは、不揮発性メモリ部103に存在し、ホスト装置114から書き込み命令を受信した時、制御部105において実行されるものである。   FIG. 11 is a diagram showing a writing process. This exists in the nonvolatile memory unit 103 and is executed by the control unit 105 when a write command is received from the host device 114.

ステップ1101はデータ書込キュー生成処理であり、図5に示すデータ読出/書込キュー生成処理のステップ501〜506と同様の処理を行う。   Step 1101 is data write queue generation processing, which is the same processing as steps 501 to 506 of the data read / write queue generation processing shown in FIG.

ステップ1102はデータ書込キューから1件取出す処理である。   Step 1102 is a process for extracting one item from the data write queue.

ステップ1103はシーク先情報生成処理であり、詳細は図12にて述べる。   Step 1103 is seek destination information generation processing, and details will be described with reference to FIG.

ステップ1104はデータ書込先が不揮発性メモリ部103かどうか調べる処理である。もしデータ書込先が不揮発性メモリ部103であれば、ステップ1105へ進む。もしデータ書込先が不揮発性メモリ部103でなければ、ステップ1106へ進む。   Step 1104 is a process for checking whether the data write destination is the nonvolatile memory unit 103. If the data write destination is the nonvolatile memory unit 103, the process proceeds to step 1105. If the data write destination is not the non-volatile memory unit 103, the process proceeds to step 1106.

ステップ1105は書込みキューを参照し、不揮発性メモリ部103へ書込みする処理である。   Step 1105 is a process of referring to the write queue and writing to the nonvolatile memory unit 103.

ステップ1106は書込みキューを参照し、ディスク部102へ書込を行う処理である。   Step 1106 is a process of referring to the write queue and writing to the disk unit 102.

ステップ1107はデータ書込キューが空かどうか調べる処理である。もしデータ書込キューが空であれば、ステップ1102へ戻る。あるいはデータ書込キューが空でなければ、処理を終了する。   Step 1107 is a process for checking whether the data write queue is empty. If the data write queue is empty, the process returns to step 1102. Alternatively, if the data write queue is not empty, the process ends.

図12はシーク先変生成処理を示す図である。これは、図11におけるシーク情報生成処理1105を詳細に説明するものである。   FIG. 12 is a diagram showing seek destination change generation processing. This explains the seek information generation processing 1105 in FIG. 11 in detail.

ステップ1201は不揮発性メモリ部103領域の最初のセクタを含むかどうかを調べる処理である。もし不揮発性メモリ部103領域の最初のセクタを含むのであれば、ステップ1202へ進む。もし不揮発性メモリ部103領域最初のセクタを含むのでなければ、ステップ1203へ進む。   Step 1201 is a process for examining whether or not the first sector of the nonvolatile memory unit 103 area is included. If the first sector of the non-volatile memory unit 103 area is included, the process proceeds to step 1202. If the first sector of the non-volatile memory unit 103 area is not included, the process proceeds to step 1203.

ステップ1202は不揮発性メモリ書込領域一時記憶110にデータ書込キューから取り出した今回の命令を書込する処理である。   Step 1202 is a process of writing the current instruction fetched from the data write queue into the nonvolatile memory write area temporary storage 110.

ステップ1203は不揮発性メモリ書込領域一時記憶110に値が入っているかどうか調べる処理である。もし不揮発性メモリ書込領域一時記憶110に値が入っているのであれば、ステップ1204へ進む。もし不揮発性メモリ書込領域一時記憶110に値が入っているのでなければ、処理を終了する。   Step 1203 is a process for examining whether or not a value is stored in the nonvolatile memory write area temporary storage 110. If there is a value in the nonvolatile memory write area temporary storage 110, the process proceeds to step 1204. If there is no value in the nonvolatile memory write area temporary storage 110, the process is terminated.

ステップ1204は直前の書込命令と連続したアドレスかどうか調べる処理である。もし直前の書込命令と連続したアドレスのであれば、ステップ1205へ進む。もし直前の書込命令と連続したアドレスでなければ、ステップ1206へ進む。例えば、不揮発性メモリ部103への書込命令と、ディスク部102への書込命令では書込対象の物理アドレスが異なるので、連続したアドレスとはみなさない。   Step 1204 is a process for checking whether the address is continuous with the immediately preceding write command. If the address is continuous with the immediately preceding write command, the process proceeds to step 1205. If the address is not continuous with the immediately preceding write command, the process proceeds to step 1206. For example, the write address to the nonvolatile memory unit 103 and the write command to the disk unit 102 are different from each other because the physical addresses to be written are different.

ステップ1205は不揮発性メモリ書込領域一時記憶110の書込サイズに今回データ書き込みキューから取り出した命令の書込サイズを加算する処理である。   Step 1205 is a process of adding the write size of the instruction fetched from the current data write queue to the write size of the nonvolatile memory write area temporary storage 110.

ステップ1206はシーク先変換テーブル112の連続データ終了セクタを不揮発性メモリ書込領域一時記憶110の(開始セクタ+書込サイズ−1)の値に書換えを行う処理である。   Step 1206 is a process of rewriting the continuous data end sector of the seek destination conversion table 112 to the value of (start sector + write size−1) in the nonvolatile memory write area temporary storage 110.

ステップ1207はシーク先変換テーブル112のシーク先セクタを今回の命令の書込開始セクタの値に書換えを行う処理である。   Step 1207 is processing for rewriting the seek destination sector of the seek destination conversion table 112 to the value of the write start sector of the current instruction.

ステップ1208は不揮発性メモリ書込領域一時記憶110を初期化する処理である。   Step 1208 is processing for initializing the nonvolatile memory write area temporary storage 110.

図13は読出処理を示す図である。これは、不揮発性メモリ部103に存在し、ホスト装置114から書き込み命令受信時、制御部105において実行されるものである。   FIG. 13 is a diagram showing a reading process. This exists in the non-volatile memory unit 103, and is executed by the control unit 105 when a write command is received from the host device 114.

ステップ1301はデータ読出キュー生成処理であり、図5に示すデータ読出/書込キュー生成処理のステップ501〜506と同様の処理を行う。   Step 1301 is data read queue generation processing, which is the same processing as steps 501 to 506 of the data read / write queue generation processing shown in FIG.

ステップ1302はデータ読出キューから1件取出す処理である。   Step 1302 is a process for fetching one item from the data read queue.

ステップ1303はデータ読出元が不揮発性メモリ部103かどうか調べる処理である。もしデータ読出元が不揮発性メモリ部103であれば、ステップ1304へ進む。もしデータ読出元が不揮発性メモリ部103でなければ、ステップ1307へ進む。   Step 1303 is a process for examining whether the data reading source is the nonvolatile memory unit 103. If the data reading source is the nonvolatile memory unit 103, the process proceeds to step 1304. If the data reading source is not the non-volatile memory unit 103, the process proceeds to step 1307.

ステップ1304は読出し命令がシーク先変換テーブル112の範囲を含んでいるかどうか調べる処理である。もし読出し命令がシーク先変換テーブル112の範囲を含んでいるのであれば、ステップ1305へ進む。もし読出し命令がシーク先変換テーブル112の範囲を含んでいないのであれば、処理を終了する。   Step 1304 is a process for checking whether or not the read command includes the range of the seek destination conversion table 112. If the read command includes the range of the seek destination conversion table 112, the process proceeds to step 1305. If the read command does not include the range of the seek destination conversion table 112, the process ends.

ステップ1305はシーク先変換テーブル112が示すセクタにシーク開始する処理である。   Step 1305 is a process of starting a seek to the sector indicated by the seek destination conversion table 112.

ステップ1306は不揮発性メモリ部103からホスト装置114へ転送する処理である。   Step 1306 is a process of transferring data from the nonvolatile memory unit 103 to the host device 114.

ステップ1307はデータ読出しキューを参照してディスク装置101から読出する処理である。   Step 1307 is a process of reading from the disk device 101 with reference to the data read queue.

ステップ1308はデータ読出しキューが空かどうか調べる処理である。もしデータ読出しキューが空であれば、ステップ1302へ戻る。あるいはデータ読出しキューが空でなければ、処理を終了する。   Step 1308 is processing to check whether the data read queue is empty. If the data read queue is empty, the process returns to step 1302. Alternatively, if the data read queue is not empty, the process ends.

上記で説明した、ステップ1101〜1107までの、シーク先情報生成処理において、不揮発性メモリ書込領域一時記憶110を用いてシーク先変換テーブル112を更新し、ステップ1301〜1308においてシーク先変換テーブル112を用いて読出しを行うことによって、不揮発性メモリ部103の読み込み中、ディスク部102の不特定の場所に対する読出しが必要となるような場合でも、データを途切れなく読出し続けることができる。   In the seek destination information generation process from steps 1101 to 1107 described above, the seek destination conversion table 112 is updated using the nonvolatile memory write area temporary storage 110, and the seek destination conversion table 112 is updated in steps 1301 to 1308. Thus, even when it is necessary to read an unspecified location on the disk unit 102 during reading of the nonvolatile memory unit 103, data can be continuously read.

第4の実施形態ついて、図1を用いて説明する。図1において、第4の実施形態によるディスク装置101は、実施例1〜3に示した部分の他にAVI/F113を備えてもよい。   A fourth embodiment will be described with reference to FIG. In FIG. 1, the disk device 101 according to the fourth embodiment may include an AVI / F 113 in addition to the portions shown in Examples 1 to 3.

本実施形態によるディスク装置101はAVI/F113を備えることにより、ホスト装置114のデコード部I/F116と直接接続することが可能となる。ホスト装置114が外部I/F104を経由してディスク装置101内の制御部105に命令を出すと、制御部105はAV I/F113経由で映像データを出力する。ホスト装置114はデコードされたデータを用いて、映像出力I/F118からTV119に対して出力を行うことができる。   Since the disk device 101 according to the present embodiment includes the AVI / F 113, it can be directly connected to the decoding unit I / F 116 of the host device 114. When the host device 114 issues a command to the control unit 105 in the disk device 101 via the external I / F 104, the control unit 105 outputs video data via the AV I / F 113. The host device 114 can output from the video output I / F 118 to the TV 119 using the decoded data.

このとき、実施例1〜3に示した本発明の効果により、デコード部I/F116に接続されたデコーダは中間バッファなしでも映像を乱れさせることのないように映像出力I/F117経由でTV118に対して出力を行うことができる。   At this time, due to the effects of the present invention described in the first to third embodiments, the decoder connected to the decoding unit I / F 116 does not disturb the video even without an intermediate buffer, so that the video 118 is connected to the TV 118 via the video output I / F 117. Output can be performed.

本発明のディスク装置におけるハードウェアおよびシステム構成図である。2 is a hardware and system configuration diagram of the disk device of the present invention. FIG. キュー生成用命令記憶領域の構造を示す図である。It is a figure which shows the structure of the instruction storage area for queue production | generation. 仮想/物理セクタ変換テーブルの構造を示す図である。It is a figure which shows the structure of a virtual / physical sector conversion table. データ読出/書込キューの構造を示す図である。It is a figure which shows the structure of a data read / write queue. 実施例1の読出/書込処理を示す図である。FIG. 6 is a diagram illustrating read / write processing according to the first embodiment. シーク判断用テーブルの構造を示す図である。It is a figure which shows the structure of the table for seek judgment. 不揮発性メモリ書込領域一時記憶の構造を示す図である。It is a figure which shows the structure of a non-volatile memory write-in area temporary storage. 実施例2の不揮発性メモリ書込み処理を示す図である。FIG. 6 is a diagram illustrating a nonvolatile memory write process according to a second embodiment. 実施例2の読出処理を示す図である。FIG. 6 is a diagram illustrating a reading process according to the second embodiment. シーク先変換テーブルの構造を示す図である。It is a figure which shows the structure of a seek destination conversion table. 実施例3の書込み処理を示す図である。FIG. 10 is a diagram illustrating a writing process according to the third embodiment. 実施例3のシーク先情報生成処理を示す図である。FIG. 10 is a diagram illustrating seek destination information generation processing according to the third embodiment. 実施例3の読出処理を示す図である。FIG. 10 is a diagram illustrating a reading process according to the third embodiment. 従来のディスク装置を表す図である。It is a figure showing the conventional disc apparatus.

符号の説明Explanation of symbols

101…ディスク装置
102…ディスク部
103…不揮発性メモリ部
104…外部I/F部
105…制御部
106…揮発性メモリ部
107…仮想/物理セクタ変換テーブル
108…キュー生成用命令記憶領域
109…データ読出キュー
110…不揮発性メモリ書込領域一時記憶
111…シーク判断用テーブル
112…シーク先変換テーブル
113…AVI/F
114…ホスト装置
115…ディスク装置用I/F
116…デコード部I/F
117…映像出力I/F
118…TV
201…読出/書込開始物理セクタ番号
202…読出/書込サイズ
301…仮想セクタ開始アドレス
302…物理セクタ開始アドレス
303…データ保存先
401…読出/書込開始物理セクタ番号
402…読出/書込サイズ
403…データ読出/書込先
501…キュー生成用命令記憶領域に読出/書込命令をコピーする処理
502…読出/書込範囲に不揮発性メモリ部領域とディスク装置領域両方を含むかどうか調べる処理
503…キュー生成用命令記憶領域が示す命令の先頭から、ディスク部または不揮発性メモリ部への命令を1件取り出し、データ読出/書込キューに追加する処理
504…キュー生成用命令記憶領域の読出/書込サイズからキューに追加した命令分サイズを差引く処理
505…キュー生成用命令記憶領域の読出/書込開始物理セクタ番号をキューに追加した命令の次のアドレスに変更する処理
506…キュー生成用命令記憶領域から読出/書込サイズ分の命令をデータ読出/書込キューに追加する処理
507…不揮発性メモリ部に対する読出/書込キューが存在かどうか調べる処理
508…ディスク装置の書込み開始アドレスへシークしながら読出/書込する処理
509…キューを参照して読出/書込する処理
601…トラック番号
602…連続データ開始セクタ
603…次のトラックとの連続性
701…読込開始物理セクタ番号
702…読込サイズ
801…不揮発性メモリへ書込みする処理
802…直前の書込命令と連続したアドレスかどうか調べる処理
803…不揮発性メモリ書込領域一時記憶の書込サイズに今回の命令の書込サイズを加算する処理
804…不揮発性メモリ書込領域一時記憶に今回の命令を書込する処理
805…不揮発性メモリ部領域最後のセクタを含むかどうか調べる処理
806…シーク判断用テーブルの連続データ開始セクタを不揮発性メモリ書込領域一時記憶110の開始セクタの値に書換えを行う処理
807…データ書込みキューが空でないかどうか調べる処理
808…シーク判断用テーブルの”次トラックの連続性”をtrueに変更する処理
901…データ読出キュー生成処理
902…データ読出キューから1件取出す処理
903…データ読込元が不揮発性メモリかどうか調べる処理
904…命令がシーク判断用テーブルの範囲を含み、かつ次のトラックとの連続性がtrueかどうか調べる処理
905…読出し対象データから連続する最初のディスク部領域にシークして先読みを開始する処理
906…不揮発性メモリから読出する処理
907…ディスク装置から読出する処理
908…データ読出しキューが空かどうか調べる処理
1001…トラック番号
1002…連続データ終了セクタ
1003…シーク先セクタ
1101…データ書込キュー生成処理
1102…データ書込キューから1件取出す処理
1103…シーク先情報生成処理
1104…データ書込先が不揮発性メモリかどうか調べる処理
1105…不揮発性メモリへ書込みする処理
1106…ディスク装置へ書込する処理
1107…データ書込キューが空かどうか調べる処理
1201…不揮発性メモリ部領域最初のセクタを含むかどうか調べる処理
1202…不揮発性メモリ書込領域一時記憶に今回の命令を書込する処理
1203…不揮発性メモリ書込領域一時記憶に値が入っているかどうか調べる処理
1204…直前の書込命令と連続したアドレスかどうか調べる処理
1205…不揮発性メモリ書込領域一時記憶の書込サイズに今回の命令の書込サイズを加算する処理
1206…シーク先変換テーブルの連続データ終了セクタを不揮発性メモリ書込領域一時記憶の(開始セクタ+書込サイズ−1)の値に書換えを行う処理
1207…シーク先変換テーブルのシーク先セクタを今回の命令の書込開始セクタの値に書換えを行う処理
1208…不揮発性メモリ書込領域一時記憶を初期化する処理
1301…データ読出キュー生成処理
1302…データ読出キューから1件取出す処理
1303…データ読込元が不揮発性メモリかどうか調べる処理
1304…読出し命令がシーク先変換テーブルの範囲を含んでいるかどうか調べる処理
1305…シーク先変換テーブルが示すセクタにシーク開始する処理
1306…不揮発性メモリからホストへ転送する処理
1307…ディスク装置から読出する処理
1308…データ読出しキューが空かどうか調べる処理
1401…従来制御部
101 ... Disk device
102: Disc part
103 ... Non-volatile memory
104 ... External I / F section
105 ... Control unit
106… Volatile memory
107… Virtual / physical sector conversion table
108: Instruction storage area for queue generation
109: Data read queue
110… Non-volatile memory writing area temporary storage
111 ... Seek judgment table
112 ... Seek conversion table
113… AVI / F
114 ... Host device
115 ... I / F for disk unit
116 ... Decoding part I / F
117… Video output I / F
118 ... TV
201 ... Read / write start physical sector number
202 ... Read / write size
301 ... Virtual sector start address
302 ... Physical sector start address
303: Data save destination
401 ... Read / write start physical sector number
402 ... Read / write size
403 ... Data read / write destination
501 ... Processing to copy read / write instructions to the instruction storage area for queue generation
502 ... Processing for checking whether the read / write range includes both the nonvolatile memory area and the disk device area
503: Processing to extract one instruction to the disk unit or nonvolatile memory unit from the beginning of the instruction indicated by the instruction storage area for queue generation and add it to the data read / write queue
504: Processing to subtract the size of the instruction added to the queue from the read / write size of the instruction storage area for queue generation
505 ... Processing to change the read / write start physical sector number of the instruction storage area for queue generation to the address next to the instruction added to the queue
506: Processing to add instructions for the read / write size from the queue generation instruction storage area to the data read / write queue
507 ... Processing for checking whether there is a read / write queue for the non-volatile memory section
508 ... Processing to read / write while seeking to the write start address of the disk unit
509 ... Processing to read / write with reference to the queue
601 ... Track number
602: Continuous data start sector
603… Continuity with the next track
701 ... Read start physical sector number
702 ... Reading size
801 ... Processing to write to nonvolatile memory
802 ... Processing to check if the address is continuous with the previous write command
803: Processing to add the write size of the current instruction to the write size of the nonvolatile memory write area temporary storage
804 ... Processing to write the current instruction to the non-volatile memory writing area temporary storage
805 ... Processing to check whether the last sector of the nonvolatile memory area is included
806: Processing for rewriting the continuous data start sector of the seek determination table to the value of the start sector of the nonvolatile memory write area temporary storage 110
807 ... Processing to check whether the data write queue is not empty
808… Process to change “continuity of the next track” in the seek judgment table to true
901 ... Data read queue generation processing
902 ... Processing to retrieve one item from the data read queue
903 ... Checking whether the data reading source is a non-volatile memory
904 ... Processing for checking whether the instruction includes the range of the seek determination table and the continuity with the next track is true
905: Processing to seek to the first continuous disk area from the data to be read and start prefetching
906 ... Processing to read from nonvolatile memory
907 ... Processing to read from disk device
908 ... Processing to check whether data read queue is empty
1001 ... Track number
1002 ... Sequential data end sector
1003 ... Seek destination sector
1101 ... Data write queue generation processing
1102 ... Processing to retrieve one item from the data write queue
1103 ... Seek destination information generation processing
1104: Processing to check whether data write destination is non-volatile memory
1105: Processing to write to nonvolatile memory
1106: Processing to write to disk device
1107: Processing to check whether the data write queue is empty
1201 ... Processing to check whether the first sector of the non-volatile memory area is included
1202 ... Processing to write the current instruction to the non-volatile memory write area temporary storage
1203 ... Processing to check whether the value is in the nonvolatile memory write area temporary storage
1204 ... Processing to check if the address is continuous with the previous write command
1205 ... Processing to add the write size of the current instruction to the write size of the non-volatile memory write area temporary storage
1206: Processing to rewrite the continuous data end sector of the seek destination conversion table to the value of (start sector + write size-1) in the nonvolatile memory write area temporary storage
1207: Processing to rewrite the seek destination sector in the seek destination conversion table to the value of the write start sector of the current instruction
1208: Processing to initialize nonvolatile memory write area temporary storage
1301 ... Data read queue generation processing
1302: Processing to retrieve one item from the data read queue
1303 ... Processing to check whether data is read from non-volatile memory
1304: Processing to check whether read command includes range of seek destination conversion table
1305: Processing to start seeking in the sector indicated by the seek destination conversion table
1306: Processing to transfer from non-volatile memory to host
1307 ... Processing to read from disk unit
1308: Checking whether the data read queue is empty
1401 ... Conventional control unit

Claims (11)

データを記憶する同心円状に配置させた複数のトラックと、前記トラックへ書込/読出を行う書込/読出手段とを有するディスク部と、
半導体の記憶媒体である不揮発性メモリ部と、
前記ディスク部及び前記不揮発性メモリ部への書込み及び読出しを制御する制御部とを備えたディスク装置において、
前記トラックのアドレスと、前記トラックに隣接するトラックのアドレスとの間のアドレスを、前記不揮発性メモリ部の記憶領域が有していることを特徴とするディスク装置。
A disk unit having a plurality of concentrically arranged tracks for storing data, and writing / reading means for writing / reading the tracks;
A non-volatile memory unit which is a semiconductor storage medium;
In a disk device comprising a control unit for controlling writing and reading to and from the disk unit and the nonvolatile memory unit,
The disk device, wherein a storage area of the nonvolatile memory unit has an address between an address of the track and an address of a track adjacent to the track.
請求項1において、
前記ディスク部が持つ物理空間の同心円状に連続的に配置された1周分の最後の物理アドレスと、次の1周に切り替わる最初の物理アドレスの間に、前記不揮発性メモリの物理アドレスを割り当てることを特徴としたディスク装置
In claim 1,
The physical address of the non-volatile memory is allocated between the last physical address of one turn arranged continuously in a concentric manner in the physical space of the disk unit and the first physical address switched to the next turn. Disk device characterized by that
請求項2において、
前記トラックのアドレスと前記隣接するトラックのアドレスの間のアドレスに前記不揮発性メモリを割当てる容量を、前記トラック1周分に対して、(前記ディスク部における読出性能(MB/s)× 読出し中断時間(s))以上とすることを特徴とするディスク装置。
In claim 2,
The capacity for allocating the non-volatile memory to the address between the track address and the address of the adjacent track is expressed as (read performance in the disk unit (MB / s) × read interruption time) for one track. (s)) A disk device characterized by the above.
請求項1において、
連続するデータを書込むときに、
前記ディスク部のトラック、前記不揮発性メモリ部、前記トラックに隣接するトラックの順に書き込みを行うことを特徴とするディスク装置。
In claim 1,
When writing continuous data,
2. A disk device according to claim 1, wherein writing is performed in the order of a track of the disk unit, the nonvolatile memory unit, and a track adjacent to the track.
請求項1において、
連続するデータを読出すときに、
前記ディスク部のトラック、前記不揮発性メモリ部、前記トラックに隣接するトラックの順に読出しを行うことを特徴とするディスク装置。
In claim 1,
When reading continuous data,
A disk device comprising: a disk unit that performs reading in the order of a track of the disk unit, the nonvolatile memory unit, and a track adjacent to the track.
請求項4または請求項5において、
前記不揮発性メモリについて書込みまたは読出しを行っているときに、前記トラックから前記隣接するトラックへのシークを行うことを特徴とするディスク装置。
In claim 4 or claim 5,
A disk device characterized in that when writing to or reading from the nonvolatile memory, a seek is performed from the track to the adjacent track.
請求項1において、
前記不揮発性メモリへの書込みの場合に、前記不揮発性メモリと、前記ディスク部のトラックとでのデータの連続性を記憶し、
前記記憶されたデータの連続性に基づいて、前記ディスク部における読出し中断時間に前記不揮発性メモリを読出すときに、読出/書込手段を前記トラックへ移動させる前記ディスク部の先読みの制御を行うかどうか判断することを特徴とするディスク装置。
In claim 1,
In the case of writing to the non-volatile memory, storing the continuity of data in the non-volatile memory and the track of the disk unit,
Based on the continuity of the stored data, when the nonvolatile memory is read during the reading interruption time in the disk unit, the read / write means is moved to the track to control read-ahead of the disk unit. A disk device characterized by determining whether or not.
データを記憶する同心円状に配置させた複数のトラックと、前記トラックからデータを読出/書込する読出/書込手段とを有するディスク部と、
半導体の記憶媒体である不揮発性メモリ部と、
前記ディスク部及び前記不揮発性メモリ部への書込み及び読出しを制御する制御部とを備えたディスク装置において、
前記不揮発性メモリへの書込む場合に、前記不揮発性メモリに対する次の書込みを記憶し、
データの読出しの際に記憶した第一の記憶媒体に対する書き込み開始場所を先読みの対象とすることを特徴とするディスク装置。
A disk unit having a plurality of concentrically arranged tracks for storing data, and read / write means for reading / writing data from the tracks;
A non-volatile memory unit which is a semiconductor storage medium;
In a disk device comprising a control unit for controlling writing and reading to and from the disk unit and the nonvolatile memory unit,
When writing to the non-volatile memory, store the next write to the non-volatile memory;
A disk device characterized in that a write start location with respect to a first storage medium stored at the time of reading data is a target of prefetching.
請求項1において、映像デコーダと接続する専用のI/Fを備えることを特徴とするディスク装置。   2. The disk device according to claim 1, comprising a dedicated I / F connected to the video decoder. データを記憶する同心円状に配置させた複数のトラックと、前記トラックへ書込/読出を行う書込/読出手段とを有するディスク部と、
半導体の記憶媒体である不揮発性メモリ部と、
前記ディスク部及び前記不揮発性メモリ部への書込み及び読出しを制御する制御部とを備えたディスク装置の記録方法において、
前記制御部が、受信したデータの第一のデータを第一の前記トラックに書込を指示する第一の書込命令と、前記データの第二のデータを第二の前記トラックに書込を指示するする第二の書込命令と、前記データの第三のデータを前記不揮発メモリに書込を指示する第三の書込命令とを生成する命令生成ステップと、
前記制御部が、前記第一の書込命令に対して、前記書込/読出手段を制御して前記第一のトラックへ前記第一のデータの書込を行う第一の書込ステップと、
前記第一の書込ステップ後に、前記制御部が、前記第三の書込命令に対して、前記不揮発性メモリ部へ前記第三のデータの書込を行う第三の書込ステップと、
前記第三の書込ステップと並行して、前記書込/記録手段を前記第一のトラック上から前記第二のトラック上へ移動させるシークステップと、
前記第三の書込ステップ及び前記シークステップ後に、前記制御部が、前記第二の書込命令に対して、前記書込/読出手段を制御して前記第二のトラックへ前記第二のデータの書込を行う第二の書込ステップとを行うことを特徴とするディスク装置の記録方法。
A disk unit having a plurality of concentrically arranged tracks for storing data, and writing / reading means for writing / reading the tracks;
A non-volatile memory unit which is a semiconductor storage medium;
In a recording method of a disk device comprising a control unit that controls writing and reading to and from the disk unit and the nonvolatile memory unit,
The control unit writes the first data of the received data to the first track, and writes the second data of the data to the second track. An instruction generation step of generating a second write instruction to instruct and a third write instruction to instruct writing of the third data of the data to the nonvolatile memory;
A first writing step in which the control unit controls the writing / reading unit to write the first data to the first track in response to the first writing command;
A third writing step in which, after the first writing step, the control unit writes the third data to the nonvolatile memory unit in response to the third writing command;
In parallel with the third writing step, a seek step for moving the writing / recording means from the first track onto the second track;
After the third writing step and the seek step, the control unit controls the writing / reading means in response to the second writing command to transfer the second data to the second track. And a second writing step for performing writing of the disk device.
請求項10において、
前記第一のトラックと前記第二のトラックとは、隣接していることを特徴とするディスク装置の記録方法。
In claim 10,
The recording method for a disk device, wherein the first track and the second track are adjacent to each other.
JP2008151220A 2008-06-10 2008-06-10 Disk drive and its recording method Pending JP2009301595A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008151220A JP2009301595A (en) 2008-06-10 2008-06-10 Disk drive and its recording method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008151220A JP2009301595A (en) 2008-06-10 2008-06-10 Disk drive and its recording method

Publications (1)

Publication Number Publication Date
JP2009301595A true JP2009301595A (en) 2009-12-24

Family

ID=41548360

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008151220A Pending JP2009301595A (en) 2008-06-10 2008-06-10 Disk drive and its recording method

Country Status (1)

Country Link
JP (1) JP2009301595A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022046413A (en) * 2020-09-10 2022-03-23 ウェスタン デジタル テクノロジーズ インコーポレーテッド Enhanced read-ahead capability for storage devices

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022046413A (en) * 2020-09-10 2022-03-23 ウェスタン デジタル テクノロジーズ インコーポレーテッド Enhanced read-ahead capability for storage devices
JP7170093B2 (en) 2020-09-10 2022-11-11 ウェスタン デジタル テクノロジーズ インコーポレーテッド Improved read-ahead capabilities for storage devices

Similar Documents

Publication Publication Date Title
JP4886877B2 (en) Recording medium control apparatus and method
US7472219B2 (en) Data-storage apparatus, data-storage method and recording/reproducing system
US6779081B2 (en) Apparatus and method for defragmentation in disk storage system
US20040258390A1 (en) Systems and methods for PVR real time distributed storage, playback, and archival of programs on a network
JP2009020986A (en) Disk drive apparatus, and method for storing table for managing data in nonvolatile semiconductor memory in disk drive apparatus
JP2009146500A (en) Disk storage device and data writing method
US7676140B2 (en) Recording apparatus
JP2009205719A (en) Device and method of writing data to tape medium
US8077567B2 (en) Recording and reproducing apparatus and recording and reproducing method
JP4264777B2 (en) Data reproduction method and data reproduction apparatus
JP4802791B2 (en) Data storage device and data access method
US20050259542A1 (en) Reproduction device and method, recording medium, and program
US8165454B2 (en) Recording control apparatus, recording control method and recording apparatus integral with camera
JP2009301595A (en) Disk drive and its recording method
JP4301026B2 (en) Data recording apparatus, data recording method, and recording / reproducing system
JP4269915B2 (en) Recording / reproducing apparatus and method, and recording / reproducing system
JP2010055702A (en) Hard disk device
JP5385971B2 (en) Information reproducing apparatus and information reproducing method
US7406011B2 (en) Recording medium and methods of and device for recording information on the recording medium
JP2009026368A (en) Method and device for recording/reproducing
JP2006059400A (en) Recording/reproducing device
JP2010027145A (en) Recording apparatus, recording method, reproducing apparatus, and reproducing method
JP2002247519A (en) Recording and reproducing device and recording and reproducing method
JP2015158959A (en) Reproduction device
JP2011123939A (en) Optical disk device and method of replacing program in the same