JPH09160726A - Data processor - Google Patents

Data processor

Info

Publication number
JPH09160726A
JPH09160726A JP31910995A JP31910995A JPH09160726A JP H09160726 A JPH09160726 A JP H09160726A JP 31910995 A JP31910995 A JP 31910995A JP 31910995 A JP31910995 A JP 31910995A JP H09160726 A JPH09160726 A JP H09160726A
Authority
JP
Japan
Prior art keywords
data
line
portable storage
units
stored
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
JP31910995A
Other languages
Japanese (ja)
Inventor
Hiroshi Watanabe
浩 渡邉
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP31910995A priority Critical patent/JPH09160726A/en
Publication of JPH09160726A publication Critical patent/JPH09160726A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To vary the line size and to suppress the read of unnecessary data, and to improve the preread effect by detecting an access pattern and varying the number of blocks constituting a line according to the detected access pattern. SOLUTION: When an external request is made, a CPU 1 reads out the request from an external I/O 2. When the request is a line size variation command for varying the line size of a device, a cache is used to detect distance. When one data D (logical block address Ad) is accessed, the minimum value Lmin=MIN(Ad-Am) of the distance to data Cn is found from the logical block address An (Ad>An) of the data Cn on the cache while retrieving whether the data D is on the cache or not retrieved, and the line size is determined according to the trend of the value Lmin. Consequently, the preread effect is improved. Further, the line size is dynamically varied to cope with changes in access pattern.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】この発明は、複数の可搬型情
報記憶媒体としての光ディスクからなる大容量記憶装置
であるデータ処理装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing device which is a mass storage device including optical disks as a plurality of portable information storage media.

【0002】[0002]

【従来の技術】近年、オフィス内で管理するデータ量が
増大しており、これらの大量のデータを管理するため
に、大容量である可搬型光ディスク(書き換え可能な光
磁気ディスクや、CD−ROMなど)を複数枚格納する
格納スロット部と、複数の光ディスクドライブ部と、光
ディスクドライブ部と格納スロット部間で光ディスクを
移動させるアクセッサ部とからなる集合光ディスク装置
(オートチェンジャ)を用いたものが多く提案されてい
る。
2. Description of the Related Art In recent years, the amount of data managed in an office is increasing, and in order to manage such a large amount of data, a large capacity portable optical disk (rewritable magneto-optical disk or CD-ROM) is used. Many proposals use a collective optical disc device (autochanger) that includes a storage slot unit that stores a plurality of optical discs, a plurality of optical disc drive units, and an accessor unit that moves an optical disc between the optical disc drive unit and the storage slot units. Has been done.

【0003】このような集合光ディスク装置を用いて情
報を記憶するデータ処理装置においては、従来、次のよ
うな三つの技術がある。第1に、図13に示すように大
量のデータを扱うために、光ディスクとオートチェンジ
ャを用いたものでは、アイテム社のLASER DIS
Kシリーズなどのように数枚の光ディスクを1つのハー
ドディスクとして扱えるような製品が多くある。
Conventionally, there are the following three techniques in a data processing device for storing information by using such a collective optical disc device. First, in order to handle a large amount of data as shown in FIG. 13, one using an optical disc and an autochanger is a LASER DIS manufactured by Item Co.
Many products, such as the K series, can handle several optical disks as one hard disk.

【0004】このような外部インターフェースとして光
ディスクをハードディスクのように見せるのは、通常コ
ンピュータの外部記憶装置の接続方法としてはハードデ
ィスクが一般的であり、オートチェンジャと光ディスク
の取り扱いがコンピュータで簡単に行えるようにするた
めのものである。
The optical disk is made to look like a hard disk as such an external interface because a hard disk is generally used as a method for connecting an external storage device of a computer so that the computer can easily handle the autochanger and the optical disk. It is for doing.

【0005】さらに、オートチェンジャでの光ディスク
の交換回数を減らすために、データの最適配置を行うも
のとして、例えば、特願平5−238437号、特願平
6−207771号、特願平7−59499号などが提
案されている。
Further, in order to reduce the number of times of exchanging optical disks in an autochanger, as an optimum data arrangement, for example, Japanese Patent Application No. 5-238437, Japanese Patent Application No. 6-207771, Japanese Patent Application No. 7-59499. No. etc. have been proposed.

【0006】この最適配置は、外部インターフェースの
論理ブロックアドレスで特定されるデータへのアクセス
頻度によって、物理的にそのデータを格納する場所を可
変にするもので、アクセス頻度の高いデータを特定の光
ディスクに格納することで、アクセス頻度の高いこの光
ディスクがドライブに存在する確率が高くなり、オート
チェンジャでの交換回数を少なくすることができる。
This optimal arrangement makes the location of physically storing the data variable according to the frequency of access to the data specified by the logical block address of the external interface. By storing the optical disk in the drive, the probability that this optical disk having a high access frequency is present in the drive is increased, and the number of times of exchange in the autochanger can be reduced.

【0007】第2に、1つのファイルなどを連続したブ
ロックに割り当て、1つのファイルのアクセス中でのシ
ーク時間を短縮し、ファイルアクセスの性能を改善する
ファイルシステム(例えば、マイクロソフト社のMS−
DOSなど)やアプリケーション(例えば、マイクロデ
ータ社のノストラダムス、セマンテック社のスピードデ
ィスクなど)や、さらに同程度のアクセス頻度のファイ
ルのデータを物理的に近い場所に格納してファイル間の
シーク時間の短縮をはかったもの(例えば、USP53
33311)や、アクセス頻度だけでなく同時期にアク
セスされたファイルを集めるもの(例えば、特願平7−
60633号)等がある。
Secondly, a file system that allocates one file or the like to consecutive blocks, shortens seek time during access of one file, and improves file access performance (for example, MS-
DOS, etc.) and applications (for example, Microdata's Nostradamus, Semantec's speed disk, etc.) and data of files with similar access frequency are stored in physically close places to shorten the seek time between files. (For example, USP53
33311), or a collection of files accessed at the same time as the access frequency (for example, Japanese Patent Application No. 7-
No. 60633).

【0008】第3に、UNIXファイルシステムでは、
ファイルシステムがコンピュータ内の主記憶をキャッシ
ュとして二次記憶装置からデータを読出し、アプリケー
ションソフトにデータを転送している。キャッシュにデ
ータがない場合は、二次記憶装置からデータをキャッシ
ュに転送するが、このとき要求のあったデータのブロッ
クだけでなく次のブロックもキャッシュに読み込んでお
く「先読み」という手法がある。これは、アクセスが連
続するであろうことを期待して、一回の転送サイズを大
きくすることで、シークや回転待ちなどで転送のオーバ
ーヘッドの大きな二次記憶装置へのアクセス回数を減ら
して、システム全体の性能を改善するものである。
Third, in the UNIX file system,
The file system uses the main memory in the computer as a cache to read data from the secondary storage device and transfer the data to the application software. When there is no data in the cache, the data is transferred from the secondary storage device to the cache. At this time, there is a method called "prefetch" in which not only the requested block of data but also the next block is read into the cache. This is because the number of accesses to the secondary storage device, which has a large transfer overhead due to seek or rotation wait, is reduced by increasing the size of one transfer in the expectation that accesses will continue. It improves the performance of the entire system.

【0009】上述した第1の技術を使用し、光ディスク
交換回数を低減するという意味では、アクセス頻度を測
定するデータの領域を小さくすることが望ましいが、ブ
ロック単位では管理テーブルが大きくなってしまうだけ
でなく、論理ブロックアドレスが連続していても、物理
的に連続している可能性が小さくなってしまうために、
コンピュータ上の第2の技術が生かせなくなってしま
う。
In order to reduce the number of optical disk exchanges by using the above-mentioned first technique, it is desirable to make the area of the data for measuring the access frequency small, but only the management table becomes large in block units. However, even if the logical block addresses are consecutive, the possibility that they are physically consecutive is reduced,
The second technology on the computer cannot be used.

【0010】このため、図14に示すように、ある一定
数の連続した論理ブロックアドレスのデータを実際に格
納する領域も連続して配置する。図14の(a)の場合
は、16ブロック単位で、ブロックの連続性を保ちなが
らアクセス頻度によって最適配置を行っている。この連
続性を保ったデータをラインと呼ぶ。またラインの大き
さをラインサイズと呼ぶ。
For this reason, as shown in FIG. 14, areas for actually storing data of a certain fixed number of continuous logical block addresses are also arranged continuously. In the case of (a) of FIG. 14, optimal allocation is performed in units of 16 blocks according to access frequency while maintaining block continuity. Data that maintains this continuity is called a line. The size of the line is called the line size.

【0011】図14の(b)は、ラインサイズ32ブロ
ックで最適配置を行った場合の例である。二次記憶装置
上のデータは、キャッシュ上にデータ転送する場合、常
にライン単位で転送することで、「先読み」が行える。
FIG. 14B shows an example in which the optimum arrangement is performed with a line size of 32 blocks. When data is transferred to the cache, the data in the secondary storage device can be "read ahead" by always transferring in line units.

【0012】ただし、無意味にラインサイズを大きくす
ることは、アクセスされない可能性のあるデータをキャ
ッシュに読み込み、近い従来にアクセスするかもしれな
いデータをキャッシュから追い出してしまう可能性が大
きくなる。このために、アクセスの統計的なパターンか
ら、あるブロックがアクセスされた場合に、近い将来に
アクセスを期待できるブロックが、どれくらい離れたブ
ロックかを求めることが必要になる。この距離がライン
サイズとなる。
However, if the line size is unnecessarily increased, the data that may not be accessed may be read into the cache and the data that may be accessed in the near future may be expelled from the cache. Therefore, from a statistical pattern of access, when a block is accessed, it is necessary to find out how far away the block that can be expected to be accessed in the near future. This distance is the line size.

【0013】[0013]

【発明が解決しようとする課題】上記したように、ブロ
ックの連続性を保ちながらアクセス頻度によって最適配
置を行っているこの連続性を保ったデータをラインと呼
び、ラインの大きさをラインサイズと呼び、キャッシュ
上のデータの転送を常にライン単位で転送することで
「先読み」が行えるが、無意味にラインサイズを大きく
することは、アクセスされない可能性のあるデータをキ
ャッシュに読み込み、近い従来にアクセスするかもしれ
ないデータをキャッシュから追い出してしまう可能性が
大きくなるという問題があった。
As described above, the optimum placement is performed according to the access frequency while keeping the continuity of blocks. The data that maintains the continuity is called a line, and the size of the line is called the line size. Calling the data on the cache can be done by "read ahead" by always transferring it in units of lines. However, increasing the line size meaninglessly reads data that may not be accessed into the cache, and it is possible to use it in the near future. There was a problem that the possibility of expelling data that may be accessed from the cache increases.

【0014】そこで、この発明は、ラインサイズを動的
に変更することで無駄なデータを読み込むことを抑え、
「先読み」効果を向上させることのできるデータ処理装
置を提供することを目的とする。
Therefore, the present invention suppresses the reading of useless data by dynamically changing the line size,
It is an object of the present invention to provide a data processing device capable of improving the "look-ahead" effect.

【0015】[0015]

【課題を解決するための手段】この発明のデータ処理装
置は、データがブロック単位に記憶される複数枚の可搬
型記憶媒体を用い、これらの可搬型記憶媒体に記憶され
るブロックをある一定数の連続したデータとしてライン
を構成し、このライン単位にアクセスされるデータ処理
装置において、上記可搬型記憶媒体がアクセスされた
際、このアクセスパターンを検出する検出手段と、この
検出手段で検出されたアクセスパターンに応じて上記ラ
インを構成するブロック数を変更する変更手段とから構
成されている。
A data processing apparatus of the present invention uses a plurality of portable storage media in which data is stored in block units, and a certain number of blocks are stored in these portable storage media. A line as continuous data of, and in the data processing device accessed in units of this line, when the portable storage medium is accessed, detection means for detecting this access pattern, and detection means for detecting this access pattern It comprises a changing means for changing the number of blocks forming the line according to an access pattern.

【0016】この発明のデータ処理装置は、データがブ
ロック単位に記憶される複数枚の可搬型記憶媒体を用
い、これらの可搬型記憶媒体に記憶されるブロックをあ
る一定数の連続したデータとしてラインを構成し、この
ライン単位にアクセスされるデータ処理装置において、
上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、上記可搬型記憶媒体に
対するキャッシュデータが記憶される記憶手段と、外部
からのアクセス要求を受信する受信手段と、この受信手
段で受信されたアクセス要求のデータが上記記憶手段に
記憶されていない場合、上記アクセス要求のデータのブ
ロックアドレスと対応する上記可搬型記憶媒体のブロッ
クアドレスとから上記可搬型記憶媒体から上記記憶手段
に読出すライン数を決定する決定手段とから構成されて
いる。
The data processor of the present invention uses a plurality of portable storage media in which data is stored in block units, and blocks stored in these portable storage media are lined as a certain number of continuous data. And in the data processing device that is accessed in line units,
A plurality of read / write means for loading the portable storage medium and reading / writing data on / from the loaded portable storage medium line by line, and storage means for storing cache data for the portable storage medium. And receiving means for receiving an access request from the outside, and the portable type corresponding to the block address of the access request data when the access request data received by the receiving means is not stored in the storage means. It comprises a block address of the storage medium and a determination means for determining the number of lines to be read from the portable storage medium to the storage means.

【0017】この発明のデータ処理装置は、データがブ
ロック単位に記憶される複数枚の可搬型記憶媒体を用
い、これらの可搬型記憶媒体に記憶されるブロックをあ
る一定数の連続したデータとしてラインを構成し、この
ライン単位にアクセスされるデータ処理装置において、
上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、上記可搬型記憶媒体に
対するキャッシュデータが記憶される記憶手段と、外部
からのアクセス要求を受信する受信手段と、この受信手
段で受信されたアクセス要求のデータが上記記憶手段に
記憶されていない場合、上記アクセス要求のデータのブ
ロックアドレスと対応する上記可搬型記憶媒体のブロッ
クアドレスとから上記可搬型記憶媒体から上記記憶手段
に読出すライン数を決定する決定手段と、この決定手段
で決定されたライン数のデータを上記読み書き手段を用
いて上記可搬型記憶媒体から読出して上記記憶手段に記
憶し、上記受信手段で受信されたアクセス要求に応じた
処理を行う処理手段とから構成されている。
The data processing apparatus of the present invention uses a plurality of portable storage media in which data is stored in block units, and blocks stored in these portable storage media are lined as a certain number of continuous data. And in the data processing device that is accessed in line units,
A plurality of read / write means for loading the portable storage medium and reading / writing data on / from the loaded portable storage medium line by line, and storage means for storing cache data for the portable storage medium. And receiving means for receiving an access request from the outside, and the portable type corresponding to the block address of the access request data when the access request data received by the receiving means is not stored in the storage means. Determining means for determining the number of lines to be read from the portable storage medium to the storage means from the block address of the storage medium, and data for the number of lines determined by the determining means is stored in the portable storage means using the read / write means. A processor that reads out from the medium, stores it in the storage means, and performs processing according to the access request received by the reception means. It is composed of a.

【0018】この発明のデータ処理装置は、データがブ
ロック単位に記憶される複数枚の可搬型記憶媒体を用
い、これらの可搬型記憶媒体に記憶されるブロックをあ
る一定数の連続したデータとしてラインを構成し、この
ライン単位にアクセスされるデータ処理装置において、
上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、この読み書き手段毎に
上記ラインを構成する一定数のブロック数と対応する上
記可搬型記憶媒体とを管理する管理手段とから構成され
ている。
The data processing apparatus of the present invention uses a plurality of portable storage media in which data is stored in block units, and blocks stored in these portable storage media are lined as a certain number of continuous data. And in the data processing device that is accessed in line units,
A plurality of read / write means in which the portable storage medium is loaded, and data is read / written on a line-by-line basis with respect to the loaded portable storage medium, and a fixed number of blocks configuring the line for each read / write means. And a management means for managing the number of portable storage media corresponding to the number.

【0019】この発明のデータ処理装置は、データがブ
ロック単位に記憶される複数枚の可搬型記憶媒体を用
い、これらの可搬型記憶媒体に記憶されるブロックをあ
る一定数の連続したデータとしてラインを構成し、この
ライン単位にアクセスされるデータ処理装置において、
上記一定数の連続したブロックを構成する最小ライン単
位毎に論理ブロックアドレスから物理ブロックアドレス
へ変換する変換手段から構成されている。
The data processing device of the present invention uses a plurality of portable storage media in which data is stored in block units, and blocks stored in these portable storage media are lined as a certain number of continuous data. And in the data processing device that is accessed in line units,
The conversion unit is configured to convert a logical block address into a physical block address for each minimum line unit that constitutes the above-mentioned fixed number of continuous blocks.

【0020】この発明のデータ処理装置は、データがブ
ロック単位に記憶される複数枚の可搬型記憶媒体を用
い、これらの可搬型記憶媒体に記憶されるブロックをあ
る一定数の連続したデータとしてラインを構成し、この
ライン単位にアクセスされるデータ処理装置において、
上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、この読み書き手段で読
み書きがなされる論理ブロックアドレスとキャッシュに
存在するラインの論理ブロックアドレスとのアドレス差
の最小値を上記読み書き毎に求め、最小値の出現頻度を
記録する記録手段とから構成されている。
The data processing apparatus of the present invention uses a plurality of portable storage media in which data is stored in block units, and blocks stored in these portable storage media are lined as a certain number of continuous data. And in the data processing device that is accessed in line units,
The portable storage medium is loaded, and a plurality of read / write means for reading / writing data in line units from / to the loaded portable storage medium, and a logical block address and a cache for reading / writing by the read / write means are stored in the cache. It comprises a recording means for obtaining the minimum value of the address difference from the logical block address of the existing line for each reading and writing and recording the appearance frequency of the minimum value.

【0021】この発明のデータ処理装置は、データがブ
ロック単位に記憶される複数枚の可搬型記憶媒体を用
い、これらの可搬型記憶媒体に記憶されるブロックをあ
る一定数の連続したデータとしてラインを構成し、この
ライン単位にアクセスされるデータ処理装置において、
上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、外部からのアクセス要
求を受信する受信手段と、この受信手段で受信されたア
クセス要求に応じて上記読み書き手段を用いてデータの
読出し、または書込みの処理を行う処理手段と、上記受
信手段で受信されたアクセス要求が上記読み書き手段で
データの読み書きがなされるラインを構成するブロック
数の変更であった場合に、要求に応じてラインを構成す
るブロック数を変更する変更手段と、この変更手段の変
更に応じて上記ライン単位のアクセス頻度に応じて最適
配置を行う最適配置手段とから構成されている。
The data processing apparatus of the present invention uses a plurality of portable storage media in which data is stored in block units, and blocks stored in these portable storage media are lined as a certain fixed number of continuous data. And in the data processing device that is accessed in line units,
A plurality of read / write means for loading / unloading the portable storage medium and reading / writing data to / from the loaded portable storage medium on a line-by-line basis, receiving means for receiving an access request from the outside, and this receiving means Processing means for reading or writing data using the read / write means in response to the access request received by the means, and the access request received by the receiving means is read / written by the read / write means. When the number of blocks forming a line is changed, changing means for changing the number of blocks forming the line according to a request, and optimal placement according to the access frequency in line units according to the change of the changing means And the optimal placement means for performing.

【0022】[0022]

【発明の実施の形態】以下、この発明の一実施の形態に
ついて図面を参照して説明する。図1は、この発明に係
るデータ処理装置の概略構成を示すものである。すなわ
ち、このデータ処理装置は、CPU1、外部I/O2、
RAM3、NVM4、ROM5、タイマ6、I/O7、
I/O8、I/O9、オートチェンジャ10、及びバッ
テリ30とから構成されている。
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 shows a schematic configuration of a data processing device according to the present invention. That is, this data processing device includes a CPU 1, an external I / O 2,
RAM3, NVM4, ROM5, timer 6, I / O7,
It is composed of an I / O 8, an I / O 9, an auto changer 10, and a battery 30.

【0023】CPU1、外部I/O2、RAM3、NV
M4、ROM5、タイマ6、I/O7、I/O8、I/
O9は、内部バス20により接続されている。また、バ
ッテリ30は、NVM4とタイマ6に接続されている。
CPU 1, external I / O 2, RAM 3, NV
M4, ROM5, timer 6, I / O7, I / O8, I /
The O9 is connected by the internal bus 20. Further, the battery 30 is connected to the NVM 4 and the timer 6.

【0024】CPU1は、データ処理装置の全ての処理
を制御するプロセッサである。転送手段(受信手段)と
しての外部I/O2は、外部からの要求を内部バス20
に伝え、内部バス20と外部間のデータを転送する。
The CPU 1 is a processor that controls all the processes of the data processing device. The external I / O 2 as a transfer means (reception means) receives a request from the outside on the internal bus 20.
To transfer data between the internal bus 20 and the outside.

【0025】RAM3は、プログラムを実行する際のデ
ータセグメント・スタックセグメントなどのソフト制御
データと、光ディスク(二次記憶手段)のキャッシュと
そのキャッシュ管理テーブル3aを格納する記憶手段で
ある。
The RAM 3 is a storage means for storing software control data such as a data segment and a stack segment when executing a program, a cache of an optical disk (secondary storage means) and its cache management table 3a.

【0026】NVM(nonvolatile RAM )4は、バッテ
リ30にバックアップされた不揮発性メモリであり、停
電が起こってもNVM4上のデータを失うことはない。
このNVM4は、運用とともに変更され、しかも失うこ
とのできない重要な管理データを記憶するようになって
いる。この管理手段としての管理データが記憶されるテ
ーブルとして、OD管理テーブル4a、デバイス管理テ
ーブル4b、論理物理変換テーブル4c、アクセスパタ
ーン特徴テーブル4dを有している。
The NVM (nonvolatile RAM) 4 is a non-volatile memory backed up by the battery 30, and does not lose the data on the NVM 4 even if a power failure occurs.
The NVM 4 is adapted to store important management data that is changed with the operation and cannot be lost. As a table in which management data as this management means is stored, an OD management table 4a, a device management table 4b, a logical-physical conversion table 4c, and an access pattern characteristic table 4d are provided.

【0027】ROM5は、プログラムなど変更すること
のないデータが格納されている。電源起動時には、CP
U1がROM5の特定のアドレスからのプログラムの実
行を開始する。外部から要求されるコマンドを処理する
プログラムもこのROM5に格納されている。
The ROM 5 stores data that does not change, such as programs. When power is turned on, CP
U1 starts executing the program from a specific address in ROM5. A program for processing a command requested from the outside is also stored in the ROM 5.

【0028】I/O7〜9は、例えば,SCSIコント
ローラのようなもので、デバイスを制御してデータを転
送する。オートチェンジャ10は、ドライブ11,…、
アクセッサ12、格納スロット13、光ディスク14,
…、投入取出口15から構成される。
The I / Os 7 to 9 are, for example, SCSI controllers, which control devices to transfer data. The auto changer 10 includes a drive 11, ...
Accessor 12, storage slot 13, optical disk 14,
.., which is composed of the input / output port 15.

【0029】ドライブ11,…は、光ディスク14のリ
ード/ライトを行う読み書き手段であり、たとえば2台
で構成されている。ドライブ11には、光ディスク14
の取り込み、取外しのための出し入れ口があり、アクセ
ッサ12により光ディスク14を出し入れする。ドライ
ブ11に装填するとは、出し入れ口の光ディスク14を
内部に取り込み、リード/ライトが可能になるように光
ディスク14を回転させることである。このような状態
を装填されていると呼ぶ。また取外しとは,光ディスク
14の回転を停止して、出し入れ口に出すことである。
The drives 11, ... Are read / write means for reading / writing the optical disk 14, and are composed of, for example, two units. The drive 11 includes an optical disk 14
There is a loading / unloading port for loading and unloading, and the optical disk 14 is loaded and unloaded by the accessor 12. Loading into the drive 11 means taking in the optical disk 14 at the loading / unloading port and rotating the optical disk 14 so that reading / writing is possible. Such a state is called loaded. The removal is to stop the rotation of the optical disk 14 and take it out of the loading / unloading slot.

【0030】格納スロット13は、光ディスク14,…
をしまっておく棚である。アクセッサ12は、格納スロ
ット13とドライブ11と投入取出口15間で光ディス
ク14を搬送する場合に使用され、以下の2つの機能を
持っている。格納スロット13、ドライブ11または投
入取出口15の正面にアクセッサ12を移動する移動機
能と、光ディスク14をスライドさせてアクセッサ12
へ光ディスク14を抜き取る、またはアクセッサ12の
光ディスク14を格納スロット13などに差し込むスラ
イド機能とを持っている。
The storage slot 13 includes optical disks 14, ...
It is a shelf for storing. The accessor 12 is used when the optical disc 14 is transported between the storage slot 13, the drive 11 and the loading / unloading port 15, and has the following two functions. A moving function of moving the accessor 12 to the front of the storage slot 13, the drive 11 or the loading / unloading port 15, and the accessor 12 by sliding the optical disk 14.
It has a sliding function of pulling out the optical disk 14 or inserting the optical disk 14 of the accessor 12 into the storage slot 13 or the like.

【0031】光ディスク14は、可搬型の大容量安価型
記憶媒体である。ブロック(本実施例では1Kバイト)
単位でランダムアクセス可能な媒体である。各光ディス
ク14には、光ディスクIDが付けられている。
The optical disk 14 is a portable, large-capacity, inexpensive storage medium. Block (1K bytes in this embodiment)
It is a medium that can be randomly accessed in units. An optical disk ID is attached to each optical disk 14.

【0032】投入取出口15は、オートチェンジャ10
内の格納スロット13に外部から光ディスク14を投入
する、あるいは格納スロット13の光ディスク14を外
部に取り出すための、オートチェンジャ10と光ディス
ク14を出し入れするための出入口である。これには、
扉と扉を開ける機構と、この内部に光ディスク14が存
在しているかを検査する図示しないセンサがある。通常
扉は閉まっているが、扉投入時と取出時にオートチェン
ジャ10が自動的にオープンする。
The loading / unloading port 15 is used for the auto changer 10.
It is an entrance / exit for inserting / removing the auto changer 10 and the optical disk 14 into / from the storage slot 13 in which the optical disk 14 is inserted from the outside or the optical disk 14 in the storage slot 13 is taken out. This includes
There are a door, a mechanism for opening the door, and a sensor (not shown) for inspecting whether the optical disk 14 is present inside. Although the door is normally closed, the autochanger 10 automatically opens when the door is inserted and when it is taken out.

【0033】バッテリ30は、本システムに電力の供給
が停止したときに、NVM4のデータを保持し、また、
タイマ6を動かすためのものである。通常の運用時、こ
のデータ処理装置は外部の電源(図示しない)を使用す
るものとし、バッテリ30はその外部の電源により充電
されている。
The battery 30 holds the data of the NVM 4 when the power supply to this system is stopped, and
This is for moving the timer 6. During normal operation, this data processing device uses an external power source (not shown), and the battery 30 is charged by the external power source.

【0034】なお、この実施例ではブロックの大きさを
1Kバイトとして説明する。図2は、NVM4に記録さ
れるOD管理テーブル4aの例を示すものである。本発
明のデータ処理装置内の光ディスク14には、光ディス
クIDが付けられいる。OD管理テーブル4aは、光デ
ィスクIDの順番に、光ディスク14が格納スロット1
3内のどこにあるか、またはドライブ11のどこにある
かを示す位置情報と、所属するデバイスIDを記録す
る。位置情報のSは格納スロット13を表し、Dは光デ
ィスク14のドライブ11を表していている。例えば、
光ディスクIDが「0」の光ディスク14は、位置情報
「D0」で光ディスクのドライブ11の機種番号0にあ
ることを表し、所属するデバイスIDが「0」であるこ
とを表している。
In this embodiment, the block size will be described as 1 Kbyte. FIG. 2 shows an example of the OD management table 4a recorded in the NVM 4. An optical disk ID is attached to the optical disk 14 in the data processing apparatus of the present invention. The OD management table 4a stores the optical disk 14 in the storage slot 1 in the order of the optical disk ID.
The location information indicating where in 3 or where in the drive 11 it is and the device ID to which it belongs are recorded. The position information S represents the storage slot 13, and D represents the drive 11 of the optical disc 14. For example,
The optical disc 14 having the optical disc ID "0" indicates that it is in the model number 0 of the drive 11 of the optical disc in the position information "D0", and the device ID to which it belongs is "0".

【0035】図3は、NVM4に記録されるデバイス管
理テーブル4bの例を示すものである。デバイス管理テ
ーブル4bは、データ処理装置が外部に見せているデバ
イスを構成する光ディスク14と、ブロック単位で表し
たラインの大きさラインサイズを表す。
FIG. 3 shows an example of the device management table 4b recorded in the NVM 4. The device management table 4b represents the optical disk 14 that constitutes the device that the data processing apparatus is showing to the outside and the size of the line expressed in block units.

【0036】図4は、RAM3に記録されるキャッシュ
管理テーブル3aの例を示すものである。キャッシュ
は、最小ラインサイズ単位に分割してキャッシュIDを
つけて管理する。この実施例では最小ラインサイズを1
6ブロックにしている。キャッシュ管理テーブル3a
は、キャッシュID、そのキャッシュに格納されている
データのデバイスID、16ブロックの先頭の論理ブロ
ックアドレス、及びフラグとを格納する。
FIG. 4 shows an example of the cache management table 3a recorded in the RAM 3. The cache is managed by dividing it into minimum line size units and assigning cache IDs. In this embodiment, the minimum line size is 1
It has 6 blocks. Cache management table 3a
Stores the cache ID, the device ID of the data stored in the cache, the leading logical block address of 16 blocks, and the flag.

【0037】フラグは、キャッシュの状態を表すもの
で、キャッシュにデータがないことを示す「フリー」、
キャッシュのデータは光ディスク(二次記憶装置)14
から読み出されたまま変更が加えられていないことを示
す「クリーン」、キャッシュのデータには変更があり二
次記憶装置にあるデータと異なっているためキャッシュ
から二次記憶装置に書き出す必要があることを示す「ダ
ーティ」の3種類がある。
The flag represents the state of the cache, "free" indicating that there is no data in the cache,
The data in the cache is the optical disk (secondary storage device) 14
“Clean” indicating that no changes have been made while being read from the cache, the data in the cache has changed and is different from the data in the secondary storage device, so it is necessary to write it from the cache to the secondary storage device. There are three types of "dirty" to indicate that.

【0038】このキャッシュ管理テーブル3aは、キャ
ッシュにアクセスがあった順番に並べておく。キャッシ
ュ管理テーブル3aの先頭にあるキャッシュが一番最近
アクセスされたキャッシュで、末尾のキャッシュほどア
クセスが古いことを示している。
The cache management table 3a is arranged in the order in which the cache is accessed. The cache at the head of the cache management table 3a is the most recently accessed cache, and the cache at the end indicates that the access is older.

【0039】図5は、NVM4に記録される論理物理変
換テーブル4cの例を示すものである。論理物理変換テ
ーブル4cは、変換手段として外部インターフェースで
のデバイス内の論理ブロックアドレスを実際物理的に格
納されている光ディスク14とその光ディスク14内の
ブロックアドレスに変換するためのテーブルである。
FIG. 5 shows an example of the logical-physical conversion table 4c recorded in the NVM 4. The logical / physical conversion table 4c is a table for converting the logical block address in the device at the external interface as the conversion means to the optical disk 14 which is actually physically stored and the block address in the optical disk 14.

【0040】この実施例では最低のラインサイズを16
ブロックとしているので、16ブロック単位ごとに論理
ブロックアドレスから物理ブロックアドレスへの変換が
でき、全ての論理ブロックアドレスの変換が可能であ
る。
In this embodiment, the minimum line size is 16
Since blocks are used, it is possible to convert a logical block address to a physical block address in units of 16 blocks, and it is possible to convert all logical block addresses.

【0041】図6は、NVM4に記録されるアクセスパ
ターン特徴テーブル4dの例を示すものである。アクセ
スパターン特徴テーブル4dは、あるブロックにアクセ
スが発生した場合に、そのブロックアドレスが最近アク
セスのあったブロックの論理ブロックアドレスとの距離
の概略をデバイスごとに記録しておくものである。
FIG. 6 shows an example of the access pattern feature table 4d recorded in the NVM 4. The access pattern feature table 4d is used to record, for each device, an outline of the distance between the block address and the logical block address of the block that has been accessed most recently when the block is accessed.

【0042】例えば、アクセスした論理ブロックアドレ
スが18で、最近アクセスしたブロックの論理ブロック
アドレスのうちで最も18に近いものが30であるな
ら、距離は12である。距離が0から15までならアク
セスカウンタAの項目を加算し、距離が16から31ま
でならアクセスカウンタBの項目を加算し、距離が32
から63までならアクセスカウンタCの項目を加算し、
距離が64から127までならアクセスカウンタDの項
目を加算する。距離が128以上ならアクセスカウンタ
の加算は行わない。
For example, if the accessed logical block address is 18 and the closest logical block address of the recently accessed block is 30, the distance is 12. If the distance is 0 to 15, the item of access counter A is added, and if the distance is 16 to 31, the item of access counter B is added, and the distance is 32.
From 63 to 63, add the items of access counter C,
If the distance is from 64 to 127, the item of the access counter D is added. If the distance is 128 or more, the access counter is not added.

【0043】図7は、ソフトのモジュール構成を示すも
のである。本発明のデータ処理装置は、他のコンピュー
タなどに接続しており、コマンド受け付け部40でその
外部装置からコマンドを受け付け、コマンドの内容によ
って、コマンドを処理するためのモジュールを起動す
る。
FIG. 7 shows a software module configuration. The data processing device of the present invention is connected to another computer or the like, the command receiving unit 40 receives a command from the external device, and activates a module for processing the command according to the content of the command.

【0044】データ転送処理部41は、処理手段として
本データ処理装置へのデータ読み出し、または書き込み
の処理を実行するモジュールである。また、最適配置手
段としての最適配置部43へデータアクセスがあったこ
とを通知する。
The data transfer processing unit 41 is a module that executes a process of reading or writing data to this data processing device as a processing means. In addition, the optimum placement unit 43 as the optimum placement unit is notified of the data access.

【0045】ラインサイズ変更処理部42は、変更手段
としてデバイスごとに決められているラインサイズを変
更するモジュールである。ラインサイズ変更によるデー
タの再配置を最適配置部43に通知する。
The line size change processing unit 42 is a module for changing the line size determined for each device as a changing means. The optimal rearrangement unit 43 is notified of the rearrangement of data due to the line size change.

【0046】なお、アクセス頻度による最適配置は、特
願平5−238437号公開公報、特願平6ー2077
71号、特願平7−59499号などで提案されてい
る。まず、コマンド受け付け部40について説明する。
The optimum arrangement according to the access frequency is disclosed in Japanese Patent Application No. 5-238437 and Japanese Patent Application No. 6-2077.
No. 71 and Japanese Patent Application No. 7-59499. First, the command receiving unit 40 will be described.

【0047】データ処理装置の電源がオンされ、電源が
入るとCPU1は、ROM5上のプログラムを実行す
る。まず、最初にキャッシュ管理テーブル3aの設定を
行う。全てのフラグを「フリー」に、それ以外の部分に
は「−1」をセットする。
When the power of the data processor is turned on and the power is turned on, the CPU 1 executes the program on the ROM 5. First, the cache management table 3a is set. All flags are set to "free" and other parts are set to "-1".

【0048】外部から要求があった場合、外部I/O2
がCPU1に割り込みをかけ、コマンド受け付け部40
が実行される。CPU1は外部I/O2から要求を読み
出す。要求には、本データ処理装置から外部にデータ転
送を行う「リードコマンド」と、外部から本データ処理
装置にデータ転送を行う「ライトコマンド」と、デバイ
スのラインサイズ変更を行う「ラインサイズ変更コマン
ド」の3種類がある。
When there is a request from the outside, the external I / O2
Interrupts the CPU 1 and the command receiving unit 40
Is executed. The CPU 1 reads the request from the external I / O 2. The request includes a "read command" that transfers data from the data processing device to the outside, a "write command" that transfers data to the data processing device from the outside, and a "line size change command" that changes the line size of the device. There are three types.

【0049】「リードコマンド」「ライトコマンド」の
場合はデータ転送処理部41を起動し、「ラインサイズ
変更コマンド」の場合はラインサイズ変更処理部42を
実行する。
In the case of "read command" or "write command", the data transfer processing unit 41 is activated, and in the case of "line size change command", the line size change processing unit 42 is executed.

【0050】「リードコマンド」は、外部がリードした
いデータを格納するデバイスID(このIDを要求デバ
イスIDと呼ぶ)と、データの先頭の論理ブロックアド
レス(これを要求スタート論理ブロックアドレスと呼
ぶ)と、データの大きさ(要求転送ブロック数と呼ぶ)
からなる。
The "read command" includes a device ID for storing data to be read by the outside (this ID is called a request device ID) and a logical block address at the head of the data (this is called a request start logical block address). , Size of data (called number of required transfer blocks)
Consists of

【0051】「ライトコマンド」も同様に外部がライト
したいデータを格納する要求デバイスIDと、要求スタ
ート論理ブロックアドレスと、要求転送ブロック数と、
ライトデータとからなる。
Similarly, for the "write command", the request device ID for storing the data to be externally written, the request start logical block address, the number of request transfer blocks, and
It consists of write data.

【0052】「ラインサイズ変更コマンド」は、ライン
サイズを変更したいデバイスIDとラインサイズとから
なる。このような構成において本発明は、距離の検出に
キャッシュを利用する。つまり、キャッシュに存在する
データは一定時間以内にアクセスされたデータであるこ
とを利用し、あるデータD(論理ブロックアドレスA
d)がアクセスされた時に、データDがキャッシュにあ
るかを検索すると同時にキャッシュ上のデータCn(n
はキャッシュの番号)の論理ブロックアドレスAnか
ら、データCnとの距離の最小値Lmin を求める。
The "line size change command" consists of the device ID and line size whose line size is desired to be changed. In such a configuration, the present invention uses a cache for distance detection. In other words, the fact that the data existing in the cache is the data accessed within a fixed time is used, and a certain data D (logical block address A
When d) is accessed, it is searched whether the data D is in the cache and at the same time the data Cn (n
Is the cache block number) and the minimum value Lmin of the distance from the data Cn is obtained from the logical block address An.

【0053】Lmin =MIN(Ad−An) Ad>An このLmin の値の傾向からラインサイズを決定する。こ
れによって無駄なデータを読み込むことを抑え、「先読
み」効果を向上させることができる。しかもラインサイ
ズを動的に変更することで、アクセスのパターンが変化
した場合にも対応することができる。
Lmin = MIN (Ad-An) Ad> An The line size is determined from the tendency of the value of Lmin. As a result, it is possible to suppress the reading of useless data and improve the "look-ahead" effect. Moreover, by dynamically changing the line size, it is possible to deal with the case where the access pattern changes.

【0054】次に、データ転送処理部41の動作を図8
のフローチャートを参照して説明する。まず、CPU1
は、「リードコマンド」または「ライトコマンド」の処
理を始める(ST1)。
Next, the operation of the data transfer processing unit 41 will be described with reference to FIG.
This will be described with reference to the flowchart of FIG. First, CPU1
Starts processing of "read command" or "write command" (ST1).

【0055】ステップST2においてCPU1は、デバ
イス管理テーブル4bから要求のデバイスIDで示され
るデバイスのラインサイズを求める。要求スタート論理
ブロックアドレスと要求転送ブロック数からアクセスす
べきラインの論理ブロックのブロックアドレスとライン
数を求める。要求スタート論理ブロックアドレスをライ
ンサイズで割った商が最初のラインの先頭の論理ブロッ
クアドレスである。要求スタート論理ブロックアドレス
に要求転送サイズを加算し、1を引いた値をラインサイ
ズで割った商が、最後のラインの先頭の論理ブロックア
ドレスである。
In step ST2, the CPU 1 obtains the line size of the device indicated by the requested device ID from the device management table 4b. The block address and the number of lines of the logical block of the line to be accessed are obtained from the requested start logical block address and the requested transfer block number. The quotient obtained by dividing the required start logical block address by the line size is the leading logical block address of the first line. The quotient obtained by adding the requested transfer size to the requested start logical block address, subtracting 1, and dividing the value by the line size is the leading logical block address of the last line.

【0056】例えば、図9に示すように、ラインサイズ
32ブロックのデバイスにスタート論理ブロックアドレ
ス31から転送ブロック数3の要求があった場合は、キ
ャッシュには論理ブロックアドレス0から始まるライン
と論理ブロックアドレス32から始まる2つのラインが
アクセスすべきラインである。
For example, as shown in FIG. 9, when a device with a line size of 32 blocks requests a transfer block number of 3 from the start logical block address 31, lines and logical blocks starting from logical block address 0 are stored in the cache. The two lines starting at address 32 are the lines to be accessed.

【0057】ステップST3においてCPU1は、最初
のラインの検索を示す初回フラグをRAM3上にセット
する。ステップST4においてCPU1は、ラインがキ
ャッシュにあるかをキャッシュ管理テーブル3aのデバ
イスIDと論理ブロックアドレスを調べて、それぞれが
コマンド内のデバイスIDとステップST2で求めた論
理ブロックアドレスに等しければキャッシュにある(キ
ャッシュヒット)ことになり、等しいものがなければキ
ャッシュにない(キャッシュミス)ことになる。また初
回フラグがセットされている場合は、この検索と同時
に、デバイスIDの等しくラインの先頭を構成するキャ
ッシュの全てに対して、キャッシュの論理ブロックアド
レスが要求スタート論理ブロックアドレスより小さけれ
ばその差を求め、これらの最小の値に転送サイズを加え
た値を距離とし、初回フラグをリセットする。
In step ST3, the CPU 1 sets the first flag indicating the search for the first line on the RAM 3. In step ST4, the CPU 1 checks the device ID and the logical block address of the cache management table 3a to see if the line is in the cache, and if they are equal to the device ID in the command and the logical block address obtained in step ST2, the CPU 1 determines that the line is in the cache. (Cache hit), and if there is no equivalent, it is not in the cache (cache miss). If the initial flag is set, at the same time as this search, if the logical block address of the cache is smaller than the requested start logical block address with respect to all the caches having the same device ID and forming the head of the line, the difference is calculated. Then, the value obtained by adding the transfer size to these minimum values is set as the distance, and the initial flag is reset.

【0058】ステップST5においてCPU1は、キャ
ッシュ管理テーブル3aの検索によってキャッシュヒッ
トの場合、そのキャッシュ管理テーブル3aの行をキャ
ッシュ管理テーブル3aの先頭になるように順番を並び
替える。
In step ST5, the CPU 1 rearranges the row of the cache management table 3a so that the row of the cache management table 3a becomes the head of the cache management table 3a when a cache hit is found by searching the cache management table 3a.

【0059】ステップST6においてCPU1は、キャ
ッシュになければ、要求デバイスIDとラインの先頭の
論理ブロックアドレスとラインサイズ(ブロック単位)
をRAM3上にセットして、キャッシュロードプログラ
ム(後述)に渡して、光ディスク14からキャッシュに
データの読み込みを実行する。
In step ST6, if not in the cache, the CPU 1 requests the device ID, the logical block address at the head of the line, and the line size (block unit).
Is set in the RAM 3 and passed to a cache load program (described later) to read data from the optical disk 14 into the cache.

【0060】ステップST7においてCPU1は、1つ
のラインがキャッシュに用意できた時点で、外部とデー
タを転送する。リードの場合はキャッシュから外部I/
O2を通して外部に転送し、ライトの場合は外部I/O
2からキャッシュに転送する。ライトの場合は、データ
をライトするキャッシュのキャッシュ管理テーブル3a
のフラグを「ダーティ」にする。
In step ST7, the CPU 1 transfers the data to the outside when one line is prepared in the cache. In case of read, external I / from cache
Transfer to the outside through O2, and in case of write, external I / O
Transfer from 2 to cache. In the case of a write, the cache management table 3a of the cache that writes the data
Set the flag to "dirty".

【0061】ステップST8においてCPU1は、アク
セスすべきラインが残っているかを調べ、次のラインが
あればステップST4に戻る。ステップST9において
CPU1は、全てのラインに対してアクセスが終了した
なら、図6のアクセスパターン特徴テーブル4dで説明
したように、アクセスカウンタを「1」加算する。ま
た、カウンタがオーバーフローしないように、カウンタ
が最大になった場合には、全てのカウンタの値を1/2
にする。
In step ST8, the CPU 1 checks whether there is a line to be accessed, and if there is a next line, the process returns to step ST4. In step ST9, when the access to all the lines is completed, the CPU 1 increments the access counter by "1" as described in the access pattern feature table 4d in FIG. In addition, when the counters have reached the maximum value so that the counters do not overflow, set the values of all counters to 1/2.
To

【0062】CPU1は、最後に転送の終了を外部に通
知して処理を終わる。次に、キャッシュロードプログラ
ムの動作を図10のフローチャートを参照して説明す
る。
The CPU 1 finally notifies the end of the transfer to the outside and ends the processing. Next, the operation of the cache load program will be described with reference to the flowchart of FIG.

【0063】ステップST11においてCPU1は、キ
ャッシュロードプログラムを用いて、まず、RAM3上
の総ヴィクティムラインサイズに「0」をセットする。
ステップST12においてCPU1は、キャッシュ管理
テーブル3aの末尾のキャッシュのデバイスIDを求
め、更にデバイス管理テーブル4bからラインサイズを
求める。このラインをヴィクティムラインと呼ぶ。ヴィ
クティムラインサイズを総ヴィクティムラインサイズに
加算する。
In step ST11, the CPU 1 first uses the cache load program to set "0" to the total victim line size on the RAM 3.
In step ST12, the CPU 1 obtains the device ID of the cache at the end of the cache management table 3a, and further obtains the line size from the device management table 4b. This line is called the victim line. Add the victim line size to the total victim line size.

【0064】ステップST13においてCPU1は、ヴ
ィクティムラインは全てキャッシュにあるはずで、ライ
ンを構成するキャッシュをキャッシュ管理テーブル3a
から検索し、フラグに「ダーティ」があるかをチェック
し、もし「ダーティ」があれば二次記憶である光ディス
ク14にデータを格納する。
In step ST13, the CPU 1 must have all victim lines in the cache, and the caches forming the lines are set in the cache management table 3a.
Then, it is checked whether the flag has "dirty", and if there is "dirty", the data is stored in the optical disk 14 which is the secondary storage.

【0065】光ディスク14へのデータの格納は、論理
物理変換テーブル4cによってヴィクティムラインのデ
ータの論理ブロックアドレスを光デバイスIDと光ディ
スク14上のブロックアドレスに変換する。OD管理テ
ーブル4aを検索して、光ディスク14がドライブ11
のどこにあるかどうかを調べ、なければドライブ11か
ら光ディスク14を取り外し、空いている格納スロット
13に戻し、取り外した光ディスク14のOD管理テー
ブル4aの位置に格納した格納スロット13の番号をセ
ットし、必要な光ディスク14を外したドライブ11に
装填し、この光ディスク14のOD管理テーブル4aの
位置にドライブ番号をセットする。光ディスク14の変
換したブロックアドレスのブロックにヴィクティムライ
ンを転送する。
To store data on the optical disk 14, the logical block address of the data on the victim line is converted into the optical device ID and the block address on the optical disk 14 by the logical / physical conversion table 4c. The OD management table 4a is searched, and the optical disk 14 is the drive 11
If not, remove the optical disk 14 from the drive 11 and return it to the empty storage slot 13, set the number of the storage slot 13 stored in the position of the OD management table 4a of the removed optical disk 14, The required optical disk 14 is removed and loaded into the drive 11, and the drive number is set at the position of the OD management table 4a of this optical disk 14. The victim line is transferred to the block of the converted block address on the optical disc 14.

【0066】ステップST14においてCPU1は、総
ヴィクティムラインサイズがキャッシュロードプログラ
ムに渡されたラインサイズ未満であれば、ステップST
12に戻り、ラインサイズ以上であればステップST1
5へ進む。
If the total victim line size is less than the line size passed to the cache load program in step ST14, the CPU 1 determines in step ST14.
Returning to step 12, if the line size or more, step ST1
Go to 5.

【0067】ステップST15においてCPU1は、キ
ャッシュロードプログラムにわたされた論理ブロックア
ドレスを論理物理変換テーブル4cを用いて光デバイス
IDとブロックアドレスに変換し、ステップST13と
同様にしてこの光デバイスIDの光ディスク14をドラ
イブ11に装填し、光ディスク14からヴィクティムラ
インにデータを転送する。
In step ST15, the CPU 1 converts the logical block address given to the cache load program into the optical device ID and the block address by using the logical / physical conversion table 4c, and similarly to step ST13, the optical disk of this optical device ID is converted. 14 is loaded in the drive 11, and data is transferred from the optical disc 14 to the victim line.

【0068】ステップST16においてCPU1は、転
送後、ヴィクティムラインを構成していたキャッシュに
対応するキャッシュ管理テーブル3aにデバイスIDと
論理ブロックIDをセットし、フラグを「クリーン」に
セットして、このタプルをデバイス管理テーブル4bの
先頭になるように管理テーブルを並び直し、アクセスの
順番に並べておく。
In step ST16, the CPU 1 sets the device ID and the logical block ID in the cache management table 3a corresponding to the cache forming the victim line after the transfer, sets the flag to "clean", and sets this tuple. The management tables are rearranged so as to be the head of the device management table 4b and arranged in the order of access.

【0069】そして、呼び出した処理部に戻る。次に、
ラインサイズ変更処理の動作を図11のフローチャート
を参照して説明する。
Then, the process returns to the called processing unit. next,
The operation of the line size changing process will be described with reference to the flowchart of FIG.

【0070】ステップST21においてCPU1は、外
部I/O2から要求を読み出し、デバイスID(以下要
求デバイスIDと呼ぶ)とラインサイズ(以下要求ライ
ンサイズ)を得る。
In step ST21, the CPU 1 reads a request from the external I / O 2 and obtains a device ID (hereinafter referred to as requested device ID) and a line size (hereinafter referred to as requested line size).

【0071】ステップST22、23においてCPU1
は、要求ラインサイズが「0」であればアクセスパター
ン特徴テーブル4dの要求デバイスIDの4つのアクセ
スカウンタの値のうち最も大きいカウンタから新ライン
サイズを決定する。例えば、図6の場合はラインサイズ
が64Kになる。
CPU1 in steps ST22 and ST23
If the requested line size is "0", the new line size is determined from the largest counter of the four access counter values of the requested device ID in the access pattern feature table 4d. For example, in the case of FIG. 6, the line size is 64K.

【0072】ステップST22、24、29においてC
PU1は、要求ラインサイズが「0」でなければ、要求
サイズが対応ラインサイズ(この実施例の場合は16,
32,64,128)であるかを調べ、異なっている場
合はエラーをホストに返す。
At steps ST22, 24 and 29, C
If the requested line size is not “0”, the PU 1 determines that the requested size corresponds to the corresponding line size (16 in the case of this embodiment,
32, 64, 128), and if different, an error is returned to the host.

【0073】ステップST25、27においてCPU1
は、要求ラインサイズがデバイス管理テーブル4bのラ
インサイズ(以下現行ラインサイズと呼ぶ)以下である
場合、ステップST27でデバイス管理テーブル4bの
ラインサイズを要求ラインサイズに変更する。
CPU1 in steps ST25 and ST27
If the requested line size is equal to or smaller than the line size of the device management table 4b (hereinafter referred to as the current line size), the line size of the device management table 4b is changed to the requested line size in step ST27.

【0074】ステップST26、27においてCPU1
は、ラインサイズを現行ラインサイズよりも大きくする
場合、データの配置を変更する必要がある。これは、ラ
イン内のブロックは物理的に連続した領域に配置してお
くためである。このために、一旦、最適配置をやめて論
理ブロックアドレスの順番に物理ブロックアドレスが対
応するように、図12の(a)に示すようにデータを入
れ替えて配置し直す。論理物理変換テーブル4cは、図
12の(b)から(c)のようになる。その後ステップ
ST27でデバイス管理テーブル4bのラインサイズを
変更する。
CPU 1 in steps ST26 and ST27
Needs to change the data arrangement when making the line size larger than the current line size. This is because blocks within a line are arranged in physically continuous areas. For this reason, once the optimum placement is stopped, the data is rearranged and rearranged as shown in FIG. 12A so that the physical block addresses correspond to the logical block addresses in order. The logical-physical conversion table 4c is as shown in (b) to (c) of FIG. Then, in step ST27, the line size of the device management table 4b is changed.

【0075】ステップST28においてCPU1は、外
部I/O2へラインサイズ変更終了を通知し外部に終了
信号を送り出す。以上説明したように上記発明の実施の
形態によれば、内部に複数のデバイスをもち、データの
物理的な配置を、データ処理装置の外部インターフェー
ス上のアドレスを変更せずに、アクセス頻度などによっ
て最適配置するデータ処理装置において、最適配置をあ
る一定数の連続したブロック(ライン)を単位として行
い、またデバイスと内部キャッシュへのキャッシュイン
・アウトの転送もライン単位で行い(先読み)、デバイ
スごとのアクセス特徴によりラインサイズを自動的に決
定し、動的に変更することができる。
In step ST28, the CPU 1 notifies the external I / O 2 of the end of the line size change and sends an external end signal. As described above, according to the embodiments of the present invention, a plurality of devices are provided inside, and the physical arrangement of data can be changed according to the access frequency without changing the address on the external interface of the data processing device. In the data processor for optimal placement, the optimal placement is performed in units of a fixed number of consecutive blocks (lines), and the transfer of cache in / out to the device and the internal cache is also performed in units of lines (read ahead). The line size can be automatically determined and dynamically changed by the access characteristics of.

【0076】[0076]

【発明の効果】以上詳述したようにこの発明によれば、
ラインサイズを動的に変更することで無駄なデータを読
み込むことを抑え、「先読み」効果を向上させることの
できるデータ処理装置を提供することができる。
As described in detail above, according to the present invention,
By dynamically changing the line size, it is possible to provide a data processing device capable of suppressing the reading of useless data and improving the "look-ahead" effect.

【図面の簡単な説明】[Brief description of the drawings]

【図1】この発明に係るデータ処理装置の概略構成を示
すブロック図。
FIG. 1 is a block diagram showing a schematic configuration of a data processing device according to the present invention.

【図2】NVMに記録されるOD管理テーブルの例を示
す図。
FIG. 2 is a diagram showing an example of an OD management table recorded in NVM.

【図3】NVMに記録されるデバイス管理テーブルの例
を示す図。
FIG. 3 is a diagram showing an example of a device management table recorded in NVM.

【図4】RAMに記録されるキャッシュ管理テーブルの
例を示す図。
FIG. 4 is a diagram showing an example of a cache management table recorded in a RAM.

【図5】NVMに記録される論理物理変換テーブルの例
を示す図。
FIG. 5 is a diagram showing an example of a logical-physical conversion table recorded in NVM.

【図6】NVMに記録されるアクセスパターン特徴テー
ブルの例を示す図。
FIG. 6 is a diagram showing an example of an access pattern feature table recorded in NVM.

【図7】ソフトのモジュール構成を示す図。FIG. 7 is a diagram showing a software module configuration.

【図8】データ転送処理部の動作を説明するためのフロ
ーチャート。
FIG. 8 is a flowchart for explaining the operation of the data transfer processing unit.

【図9】ラインサイズ32ブロックのデバイスにおける
アクセスを説明する図。
FIG. 9 is a diagram for explaining access in a device having a line size of 32 blocks.

【図10】キャッシュロードプログラムの動作を説明す
るためのフローチャート。
FIG. 10 is a flowchart for explaining the operation of a cache load program.

【図11】ラインサイズ変更処理の動作を説明するため
のフローチャート。
FIG. 11 is a flowchart for explaining the operation of line size change processing.

【図12】論理物理変換テーブルのラインサイズ変更を
説明するための図。
FIG. 12 is a diagram for explaining the line size change of the logical-physical conversion table.

【図13】従来の光ディスクとオートチェンジャを用い
たデータ処理装置を示す図。
FIG. 13 is a diagram showing a data processing device using a conventional optical disc and an autochanger.

【図14】論理ブロックアドレスと物理ブロックアドレ
スを説明するための図。
FIG. 14 is a diagram for explaining a logical block address and a physical block address.

【符号の説明】[Explanation of symbols]

1…CPU 2…外部I/O 3…RAM 4…NVM 5…ROM 10…オートチェンジャ 11…ドライブ 12…アクセッサ 13…格納スロット 14…光ディスク 15…投入取出口 20…内部バス 1 ... CPU 2 ... External I / O 3 ... RAM 4 ... NVM 5 ... ROM 10 ... Autochanger 11 ... Drive 12 ... Accessor 13 ... Storage slot 14 ... Optical disk 15 ... Loading / unloading port 20 ... Internal bus

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 データがブロック単位に記憶される複数
枚の可搬型記憶媒体を用い、これらの可搬型記憶媒体に
記憶されるブロックをある一定数の連続したデータとし
てラインを構成し、このライン単位にアクセスされるデ
ータ処理装置において、 上記可搬型記憶媒体がアクセスされた際、このアクセス
パターンを検出する検出手段と、 この検出手段で検出されたアクセスパターンに応じて上
記ラインを構成するブロック数を変更する変更手段と、 を具備したことを特徴とするデータ処理装置。
1. A plurality of portable storage media in which data is stored in block units are used, blocks stored in these portable storage media are configured as a certain fixed number of continuous data, and a line is formed. In a data processing device accessed in units, when the portable storage medium is accessed, detection means for detecting the access pattern, and the number of blocks forming the line according to the access pattern detected by the detection means A data processing device comprising: a changing unit for changing the.
【請求項2】 データがブロック単位に記憶される複数
枚の可搬型記憶媒体を用い、これらの可搬型記憶媒体に
記憶されるブロックをある一定数の連続したデータとし
てラインを構成し、このライン単位にアクセスされるデ
ータ処理装置において、 上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、 上記可搬型記憶媒体に対するキャッシュデータが記憶さ
れる記憶手段と、 外部からのアクセス要求を受信する受信手段と、 この受信手段で受信されたアクセス要求のデータが上記
記憶手段に記憶されていない場合、上記アクセス要求の
データのブロックアドレスと対応する上記可搬型記憶媒
体のブロックアドレスとから上記可搬型記憶媒体から上
記記憶手段に読出すライン数を決定する決定手段と、 を具備したことを特徴とするデータ処理装置。
2. A plurality of portable storage media in which data is stored in block units are used, blocks stored in these portable storage media are configured as a certain number of continuous data, and a line is formed. In a data processing device accessed in units, the portable storage medium is loaded, and a plurality of read / write means for reading / writing data in line units from / to the loaded portable storage medium; Storage means for storing cache data for the medium, receiving means for receiving an access request from the outside, and data of the access request received by the receiving means is stored in the storage means, From the block address of the data and the corresponding block address of the portable storage medium, from the portable storage medium to the above The data processing apparatus according to claim determination means for determining the number of reading lines in 憶 means, by comprising a.
【請求項3】 データがブロック単位に記憶される複数
枚の可搬型記憶媒体を用い、これらの可搬型記憶媒体に
記憶されるブロックをある一定数の連続したデータとし
てラインを構成し、このライン単位にアクセスされるデ
ータ処理装置において、 上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、 上記可搬型記憶媒体に対するキャッシュデータが記憶さ
れる記憶手段と、 外部からのアクセス要求を受信する受信手段と、 この受信手段で受信されたアクセス要求のデータが上記
記憶手段に記憶されていない場合、上記アクセス要求の
データのブロックアドレスと対応する上記可搬型記憶媒
体のブロックアドレスとから上記可搬型記憶媒体から上
記記憶手段に読出すライン数を決定する決定手段と、 この決定手段で決定されたライン数のデータを上記読み
書き手段を用いて上記可搬型記憶媒体から読出して上記
記憶手段に記憶し、上記受信手段で受信されたアクセス
要求に応じた処理を行う処理手段と、 を具備したことを特徴とするデータ処理装置。
3. A plurality of portable storage media in which data is stored in block units are used, blocks stored in these portable storage media are configured as a certain number of continuous data, and a line is formed. In a data processing device accessed in units, the portable storage medium is loaded, and a plurality of read / write means for reading / writing data in line units from / to the loaded portable storage medium; Storage means for storing cache data for the medium, receiving means for receiving an access request from the outside, and data of the access request received by the receiving means is stored in the storage means, From the block address of the data and the corresponding block address of the portable storage medium, from the portable storage medium to the above Determining means for determining the number of lines to be read into the storing means, and data of the number of lines determined by the determining means is read from the portable storage medium using the reading / writing means and stored in the storage means, and the receiving means A data processing apparatus comprising: a processing unit that performs processing according to the access request received in.
【請求項4】 データがブロック単位に記憶される複数
枚の可搬型記憶媒体を用い、これらの可搬型記憶媒体に
記憶されるブロックをある一定数の連続したデータとし
てラインを構成し、このライン単位にアクセスされるデ
ータ処理装置において、 上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、 この読み書き手段毎に上記ラインを構成する一定数のブ
ロック数と対応する上記可搬型記憶媒体とを管理する管
理手段と、 を具備したことを特徴とするデータ処理装置。
4. A line is constructed by using a plurality of portable storage media in which data is stored in block units, and blocks stored in these portable storage media are arranged as a certain number of continuous data, and the line is formed. In a data processing device accessed in units, a plurality of read / write means for loading / unloading the portable storage medium and reading / writing data in line from / into the loaded portable storage medium, and for each of the read / write means And a management unit that manages the portable storage medium corresponding to a certain number of blocks forming the line, and a data processing apparatus.
【請求項5】 データがブロック単位に記憶される複数
枚の可搬型記憶媒体を用い、これらの可搬型記憶媒体に
記憶されるブロックをある一定数の連続したデータとし
てラインを構成し、このライン単位にアクセスされるデ
ータ処理装置において、 上記一定数の連続したブロックを構成する最小ライン単
位毎に論理ブロックアドレスから物理ブロックアドレス
へ変換する変換手段を具備したことを特徴とするデータ
処理装置。
5. A plurality of portable storage media in which data is stored in block units are used, and blocks stored in these portable storage media constitute a line as a certain number of continuous data, and this line A data processing device accessed in units, comprising a conversion means for converting a logical block address to a physical block address for each minimum line unit that constitutes the above-mentioned fixed number of continuous blocks.
【請求項6】 データがブロック単位に記憶される複数
枚の可搬型記憶媒体を用い、これらの可搬型記憶媒体に
記憶されるブロックをある一定数の連続したデータとし
てラインを構成し、このライン単位にアクセスされるデ
ータ処理装置において、 上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、 この読み書き手段で読み書きがなされる論理ブロックア
ドレスとキャッシュに存在するラインの論理ブロックア
ドレスとのアドレス差の最小値を上記読み書き毎に求
め、最小値の出現頻度を記録する記録手段と、 を具備したことを特徴とするデータ処理装置。
6. A plurality of portable storage media in which data is stored in block units are used, and blocks stored in these portable storage media constitute a line as a certain number of continuous data, and this line In a data processing device accessed in units, a plurality of reading / writing means for loading / unloading the portable storage medium and reading / writing data in line units from / to the loaded portable storage medium, and the reading / writing means A recording unit that obtains the minimum value of the address difference between the read / write logical block address and the logical block address of the line existing in the cache for each read / write, and records the appearance frequency of the minimum value. Data processing device.
【請求項7】 データがブロック単位に記憶される複数
枚の可搬型記憶媒体を用い、これらの可搬型記憶媒体に
記憶されるブロックをある一定数の連続したデータとし
てラインを構成し、このライン単位にアクセスされるデ
ータ処理装置において、 上記可搬型記憶媒体が装填され、この装填されている可
搬型記憶媒体に対してライン単位にデータの読み書きが
なされる複数の読み書き手段と、 外部からのアクセス要求を受信する受信手段と、 この受信手段で受信されたアクセス要求に応じて上記読
み書き手段を用いてデータの読出し、または書込みの処
理を行う処理手段と、 上記受信手段で受信されたアクセス要求が上記読み書き
手段でデータの読み書きがなされるラインを構成するブ
ロック数の変更であった場合に、要求に応じてラインを
構成するブロック数を変更する変更手段と、 この変更手段の変更に応じて上記ライン単位のアクセス
頻度に応じて最適配置を行う最適配置手段と、 を具備したことを特徴とするデータ処理装置。
7. A line is constructed by using a plurality of portable storage media in which data is stored in block units, and a block stored in these portable storage media is formed as a certain number of continuous data, and the line is formed. In a data processing device accessed in units, a plurality of read / write means for loading / unloading the portable storage medium and reading / writing data in line from / to the loaded portable storage medium, and access from the outside The receiving means for receiving the request, the processing means for reading or writing the data using the read / write means according to the access request received by the receiving means, and the access request received by the receiving means If there is a change in the number of blocks that make up the line on which data is read or written by the read / write means, the line will be And changing means for changing the number of blocks constituting the data processing apparatus being characterized in that anda optimal placement means for performing optimum arrangement in accordance with the access frequency of the line unit in accordance with the change of the changing means.
JP31910995A 1995-12-07 1995-12-07 Data processor Pending JPH09160726A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP31910995A JPH09160726A (en) 1995-12-07 1995-12-07 Data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31910995A JPH09160726A (en) 1995-12-07 1995-12-07 Data processor

Publications (1)

Publication Number Publication Date
JPH09160726A true JPH09160726A (en) 1997-06-20

Family

ID=18106570

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31910995A Pending JPH09160726A (en) 1995-12-07 1995-12-07 Data processor

Country Status (1)

Country Link
JP (1) JPH09160726A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017145302A1 (en) * 2016-02-24 2017-08-31 株式会社日立製作所 Storage device and method for controlling same

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017145302A1 (en) * 2016-02-24 2017-08-31 株式会社日立製作所 Storage device and method for controlling same
US10482019B2 (en) 2016-02-24 2019-11-19 Hitachi, Ltd. Storage apparatus and control method thereof

Similar Documents

Publication Publication Date Title
KR101347285B1 (en) Method for prefetching of hard disk drive, recording medium and apparatus therefor
EP0354579B1 (en) A controller with a cache memory and control method of the cache memory
US6473830B2 (en) System and method for organizing data stored in a log structured array
US6941423B2 (en) Non-volatile mass storage cache coherency apparatus
US8161240B2 (en) Cache management
JP3951918B2 (en) Non-volatile cache
US5133060A (en) Disk controller includes cache memory and a local processor which limits data transfers from memory to cache in accordance with a maximum look ahead parameter
EP0080876B1 (en) Cache control method and apparatus
JP3898782B2 (en) Information recording / reproducing device
US20140006683A1 (en) Optimized context drop for a solid state drive (ssd)
JPH0576059B2 (en)
JPH06348597A (en) Cache control method and rotary type storage device
JP6417951B2 (en) Storage control device and storage control program
JP6323445B2 (en) Storage apparatus, method and program
US5694570A (en) Method and system of buffering data written to direct access storage devices in data processing systems
WO2002001364A2 (en) Non-volatile cache integrated with mass storage device
US6336164B1 (en) Method and system for preventing deadlock in a log structured array
US20060218361A1 (en) Electronic storage device with rapid data availability
JP2000330729A (en) Disk array system having on-line backup function
JPH04259048A (en) Pre-read data control system using statistic information
JPH11161527A (en) Data storage system
JPH09160726A (en) Data processor
JPH04246746A (en) Storage device system
JPH1011337A (en) Method for controlling data in storage device
JP2665180B2 (en) Disk cache buffer allocation method