JPH11143643A - 再生装置、及びキャッシュ処理方法 - Google Patents

再生装置、及びキャッシュ処理方法

Info

Publication number
JPH11143643A
JPH11143643A JP9304034A JP30403497A JPH11143643A JP H11143643 A JPH11143643 A JP H11143643A JP 9304034 A JP9304034 A JP 9304034A JP 30403497 A JP30403497 A JP 30403497A JP H11143643 A JPH11143643 A JP H11143643A
Authority
JP
Japan
Prior art keywords
data
request
cache memory
buffering
lba
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
JP9304034A
Other languages
English (en)
Inventor
Yukio Shishido
由紀夫 宍戸
Shuichi Kobayashi
秀一 小林
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP9304034A priority Critical patent/JPH11143643A/ja
Priority to US09/184,822 priority patent/US6279076B1/en
Publication of JPH11143643A publication Critical patent/JPH11143643A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0871Allocation or management of cache space
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0677Optical disk device, e.g. CD-ROM, DVD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10629Data buffering arrangements, e.g. recording or playback buffers the buffer having a specific structure
    • G11B2020/10666Ring buffers, e.g. buffers wherein an iteratively progressing read or write pointer moves back to the beginning of the buffer when reaching the last storage cell
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/10527Audio or video recording; Data buffering arrangements
    • G11B2020/1062Data buffering arrangements, e.g. recording or playback buffers
    • G11B2020/10675Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
    • G11B2020/10685Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control input interface, i.e. the way data enter the buffer, e.g. by informing the sender that the buffer is busy

Abstract

(57)【要約】 【課題】 データ再生時のキャッシュ処理の効率化によ
るアクセスタイム向上。 【解決手段】 データ要求がシーケンシャルリードでな
いと判断した場合は、キャッシュメモリで複数のメモリ
領域を分割設定して、或るメモリ領域に対してデータ格
納動作を行なうようにする。つまり、連続したデータの
読出でなくとも、ぞれまでのキャッシュメモリ内を完全
にパージせず、領域毎に確保しておく。これにより2ポ
イントリードなどの場合に、さらに次のデータ転送要求
時に確保しておいた領域のデータを有効利用できるよう
にする。ランダムリードの場合でも、できるだけ過去の
バファリングデータを領域分割して確保しておくこと
で、キャッシュヒット転送できる可能性を残しておくこ
とができる。シーケンシャルリードの場合は、キャッシ
ュメモリを1つのリングメモリ形態としてデータ格納動
作を行なうようにすることで、キャッシュメモリ手段の
容量を有効利用し、キャッシュヒット転送の確率を高め
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は例えば光ディスクな
どの記録媒体に対応して再生動作を行なうことのできる
ディスク再生装置に関し、特にデータ再生時のキャッシ
ュ処理に関するものである。
【0002】
【従来の技術】光学ディスク記録媒体としてCD(コン
パクトディスク)方式のディスクや、マルチメディア用
途に好適なDVD(Digital Versatile Disc/Digital
VideoDisc)と呼ばれるディスクなどが開発されてい
る。これらの光ディスクに対応する再生装置では、ディ
スク上のトラックに対してレーザ光を照射し、その反射
光を検出することでデータの読出を行う。
【0003】ところで例えばホストコンピュータからの
リードコマンド(データ転送要求)に応じてディスク再
生動作を行い、再生されたデータをホストコンピュータ
に送信する再生装置では、そのリードコマンドに応じて
迅速にデータ転送を行うことが求められる。リードコマ
ンドは、通常リードコマンドとしてのデータとともに、
転送要求データ区間としての開始位置と、その開始位置
からのデータ長により構成される。つまりホストコンピ
ュータは再生命令と再生すべき区間を指定する。
【0004】そしてリードコマンド発生時の再生装置の
動作としては、基本的には、要求されたデータの読出を
行うために、光学ヘッドのシーク(アクセス)動作を実
行し、データの読出を行う。そして読み出したデータを
ホストコンピュータに転送するわけであるが、このよう
な再生装置ではいわゆるキャッシュメモリが搭載されこ
のキャッシュメモリを介してデータ出力を行うことにな
る。
【0005】
【発明が解決しようとする課題】再生装置は、ホストコ
ンピュータから要求のあったデータセクターのデータを
ディスクから読み出してキャッシュメモリに格納(バフ
ァリング)し、そのキャッシュメモリからホストコンピ
ュータに対して転送するが、さらにその要求のあったデ
ータセクターに続くセクターのデータをも読み出してキ
ャッシュメモリに格納しておく動作を行う。いわゆる先
読み動作である。そして、次にホストコンピュータから
データ要求があった際に、その要求されたデータがキャ
ッシュメモリに格納されていれば、ディスクアクセスを
行わなくともホストコンピュータに対してデータ転送を
行うことができ、つまり見かけ上アクセスタイムを短縮
することができる。即ちホストコンピュータから、連続
するセクターに対するデータ要求が続けて発せられた場
合(いわゆるシーケンシャルリード)は、キャッシュメ
モリへの先読み動作は迅速なデータ転送という点で非常
に有効な手法となる。
【0006】そしてこのキャッシュメモリへのバファリ
ングは、通常キャッシュメモリがリングメモリ形態で使
用されて行われる。つまり、キャッシュメモリにはLB
A(Logical Block Address :ディスク上のデータセク
ターのアドレス)が連続したデータを格納していくこと
で、シーケンシャルリードとしてのデータ要求に対して
アクセスタイムの短縮効果を実現している。
【0007】このようなキャッシュメモリへのバファリ
ング動作を図22〜図25で説明する。なお説明の簡略
化のために、キャッシュメモリのサイズを8ブロック
(1つのLBAが与えられるセクターとして8セクター
分の容量)とする。そして仮に、ホストコンピュータか
らLBA「N」〜LBA「N+2」の3ブロック(3セ
クター)の第1のデータ転送要求と、LBA「N+6」
〜LBA「N+8」の3ブロック(3セクター)の第2
のデータ転送要求が続けて供給された場合を例とする。
【0008】上記第1のデータ転送要求が供給される前
の時点において、図22のようにエリア#0〜#7の8
ブロックサイズのキャッシュメモリには、LBA「M」
〜LBA「M+4」までの各データセクターが格納され
ていたとする。なお、再生装置側でのこのキャッシュメ
モリの管理には図示するように、先頭アドレスLBA
m、ポインタPLBAm、有効セクター数VSN、転送
済セクター数TSNという内部パラメータが使用され
る。
【0009】先頭アドレスLBAmとは、前回にホスト
コンピュータから要求のあったスタートセクターのLB
Aの値とされ、これはキャッシュメモリ内に格納されて
いる有効セクターの最小LBAとなる。またポインタP
LBAmは、先頭アドレスLBAmが格納されているキ
ャッシュメモリのエリアを示すポインタとなる。有効セ
クター数VSNは、先頭アドレスLBAmを基準とし
て、そこからどれだけ連続したデータセクターがキャッ
シュメモリに確保されているかを示す値となる。さらに
転送済セクター数TSNとは、既にキャッシュメモリか
らホストコンピュータ側に転送されたデータセクターの
数を示す値となる。
【0010】図22の場合、先頭アドレスLBAm=
M、ポインタPLBAm=0、有効セクター数VSN=
5とされていることから、図示するように、エリア#0
に格納したLBA「M」のセクターからLBM「M+
4」のセクターまでが連続して確保されている状態が管
理されていることになる。
【0011】ここで上記第1のデータ転送要求として、
LBA「N」〜LBA「N+2」の3セクターのデータ
転送要求があったとする。転送要求としてホストコンピ
ュータは、要求するデータ区間の最初のアドレスとなる
要求スタートアドレスrqLBAと、その最初のアドレ
スからの区間長として要求データ長rqLGを供給して
くる。例えばLBA「N」〜LBA「N+2」の3セク
ターのデータ転送要求は、要求スタートアドレスrqL
BA=N、要求データ長rqLG=3として供給される
ことになる。
【0012】このようなデータ転送要求があった場合、
LBA「N」〜LBA「N+2」のデータは図22の状
態のキャッシュメモリ内に格納されていない(キャッシ
ュヒットしない)ため、キャッシュメモリをパージ、つ
まり格納されている全データを無効として、新たにキャ
ッシュメモリの先頭エリア#0から、LBA「N」以降
のデータのバファリングを行うことになる。つまりディ
スクアクセスを行ってLBA「N」からのデータ読出を
行い、所定のデコード処理を経てキャッシュメモリに格
納していく。ここで転送要求として必要とされるデータ
はLBA「N」〜LBA「N+2」であるが、将来の転
送要求を予測して、LBA「N+3」以降のセクターに
ついても引き続きバファリングを行っていく。図23
は、パージされたキャッシュメモリに、LBA「N」以
降のデータがバファリングされていく様子を示してお
り、この時点ではキャッシュメモリにLBA「N」〜L
BA「N+4」までが確保されている。そしてその状態
が先頭アドレスLBAm=N、ポインタPLBAm=
0、有効セクター数VSN=5とされて管理されてい
る。
【0013】LBA「N」〜LBA「N+2」のデータ
については、バファリングされた後、ホストコンピュー
タ側に転送される。一方、キャッシュメモリへのバファ
リング動作自体は、次のデータ転送要求が発生するか、
もしくはキャッシュメモリが一杯になるまで継続され
る。例えばキャッシュメモリが一杯になるまでバファリ
ングが継続されたとすると、図24のようにLBA
「N」〜LBA「N+7」までがキャッシュメモリに確
保された状態となる。
【0014】この後、上記第2のデータ転送要求とし
て、LBA「N+6」〜LBA「N+8」の3セクター
のデータ転送要求があったとする。つまり要求スタート
アドレスrqLBA=「N+6」、要求データ長rqL
G=3というコマンドが供給されたとする。
【0015】図24からわかるように、転送要求のあっ
た3セクターのうち、LBA「N+6」、LBA「N+
7」はキャッシュメモリに格納されている(キャッシュ
ヒットしている)ため、この2セクターは、そのままキ
ャッシュメモリからホストコンピュータに転送できる。
そして再生装置は、図25のようにキャッシュヒット転
送を行うとともに、確保していないLBA「N+8」の
データを読みに行く(ディスクアクセス)。ここで、L
BA「N+6」からLBA「N+8」の第2のデータ転
送要求に伴って、先頭アドレスLBAm=N+6、ポイ
ンタPLBAm=6、有効セクター数VSN=2と更新
され、格納してあるLBA「N」〜LBA「N+4」は
無効とみなす。なお、直前のセクターLBA「N+5」
については確保している。これを転送済セクター数TS
N=1で管理する。つまりLBA「N+6」が格納され
たエリア#6を基準として、前に1ブロック、後ろに2
ブロックが有効であるとする。
【0016】ホストコンピュータからのデータ転送要求
に対して確保していなかったLBA「N+8」について
は、キャッシュメモリの折り返しエリア(つまりエリア
#0)にバファリングし、ホストコンピュータへの転送
を行う。またLBA「N+8」以降も、将来の転送要求
に備えて、次のデータ転送要求発生もしくはキャッシュ
メモリが一杯になるまで継続してバファリングしてい
く。なお、有効セクター数VSNはデータ読出した後バ
ッファリングしてエラー訂正が完了した時点(つまり或
るセクターデータのバファリングが完了し有効データと
された時点)でカウントアップされる。図25のように
LBA「N+10」までのバファリングが完了した時点
では、有効セクター数VSN=5となる。
【0017】例えば以上のようなキャッシュメモリへの
バファリングが行われることにより、シーケンシャルな
データ転送要求に対しては、ディスクアクセスを不要と
できる機会が多くなり、これによって平均的なアクセス
タイムを短縮できることが理解される。
【0018】ところが、データ要求としては、ホストコ
ンピュータ側のアプリケーションの多様化等の事情によ
り、シーケンシャルリードだけでなく、例えばディスク
上で離れた2つの位置のデータセクターのデータを交互
に転送要求するような2ポイントリードや、さらにディ
スク上で離れたデータセクターのデータを順次転送要求
するランダムリードとしてのデータ要求も発生され、こ
のような場合もアクセスタイムの短縮化が求められる傾
向にある。そして上記のバファリング方式では、2ポイ
ントリードやランダムリードの際には、それらの際に要
求されたデータはバファリングされていないためキャッ
シュメモリでの先読み処理によるアクセスタイムの短縮
はできないという問題がある。
【0019】
【課題を解決するための手段】本発明はこのような問題
点に鑑みて、キャッシュメモリのバファリング形態を工
夫することで、例えば2ポイントリードやランダムリー
ドの場合でもアクセスタイムの高速化を実現できるよう
にすることを目的とする。
【0020】このため、再生装置の再生制御手段は、供
給されたデータ要求の要求態様を判断して、判断された
要求態様に基づいて、キャッシュメモリ手段へのデータ
格納動作方式(バファリング方式)を設定する。即ち、
要求態様がシーケンシャルなデータ要求でないと判断し
た場合は、キャッシュメモリ手段で複数のメモリ領域を
分割設定して、或るメモリ領域に対してデータ格納動作
を行なうようにする。つまり、連続したデータの読出で
なくとも、それまでのキャッシュメモリ内のデータを完
全にパージせず、領域毎に確保しておく。これにより2
ポイントリードなどの場合に、さらに次のデータ転送要
求時に確保しておいた(パージしなかった)領域のデー
タを有効利用できる。一方、要求態様がシーケンシャル
なデータ要求であると判断した場合は、キャッシュメモ
リ手段を1つのリングメモリ形態としてデータ格納動作
を行なうようにする。
【0021】
【発明の実施の形態】以下、本発明の実施の形態として
光ディスクを記録媒体とする再生装置を説明していく。
この例の再生装置に装填される光ディスクは、例えばC
D−DA(COMPACT DISC DIGITAL AUDIO)、CD−RO
MなどのCD方式のディスクや、DVD(DIGITAL VERS
ATILE DISC/DIGITAL VIDEO DISC)と呼ばれるディスク
などが考えられる。もちろん他の種類の光ディスクに対
応するディスク再生装置でも本発明は適用できるもので
ある。
【0022】図1は本例の再生装置の要部のブロック図
である。ディスク90は、ターンテーブル7に積載さ
れ、再生動作時においてスピンドルモータ1によって一
定線速度(CLV)もしくは一定角速度(CAV)で回
転駆動される。そしてピックアップ1によってディスク
90にエンボスピット形態や相変化ピット形態などで記
録されているデータの読み出しが行なわれることにな
る。ピックアップ1内には、レーザ光源となるレーザダ
イオード4や、反射光を検出するためのフォトディテク
タ5、レーザ光の出力端となる対物レンズ2、レーザ光
を対物レンズ2を介してディスク記録面に照射し、また
その反射光をフォトディテクタ5に導く光学系が形成さ
れる。対物レンズ2は二軸機構3によってトラッキング
方向及びフォーカス方向に移動可能に保持されている。
またピックアップ1全体はスレッド機構8によりディス
ク半径方向に移動可能とされている。
【0023】ディスク90からの反射光情報はフォトデ
ィテクタ5によって検出され、受光光量に応じた電気信
号とされてRFアンプ9に供給される。RFアンプ9に
は、フォトディテクタ5としての複数の受光素子からの
出力電流に対応して電流電圧変換回路、マトリクス演算
/増幅回路等を備え、マトリクス演算処理により必要な
信号を生成する。例えば再生データであるRF信号、サ
ーボ制御のためのフォーカスエラー信号FE、トラッキ
ングエラー信号TEなどを生成する。RFアンプ9から
出力される再生RF信号は2値化回路11へ、フォーカ
スエラー信号FE、トラッキングエラー信号TEはサー
ボプロセッサ14へ供給される。
【0024】RFアンプ9で得られた再生RF信号は2
値化回路11で2値化されることでいわゆるEFM信号
(8−14変調信号;CDの場合)もしくはEFM+信
号(8−16変調信号;DVDの場合)とされ、デコー
ダ12に供給される。デコーダ12ではEFM復調,エ
ラー訂正処理等を行ない、また必要に応じてCD−RO
Mデコード、MPEGデコードなどを行なってディスク
90から読み取られた情報の再生を行なう。
【0025】なおデコーダ12は、EFM復調したデー
タをデータバッファとしてのキャッシュメモリ20に蓄
積していき、このキャッシュメモリ20上でエラー訂正
処理等を行う。エラー訂正され適正な再生データとされ
た状態で、キャッシュメモリ20に格納された状態をバ
ファリングと呼び、本例ではこのバファリング動作に特
徴を有するものであるが、この点については後述する。
この再生装置からの再生出力としては、キャッシュメモ
リ20でバファリングされたデータが転送出力されるこ
とになる。
【0026】インターフェース部13は、外部のホスト
コンピュータと接続され、ホストコンピュータとの間で
再生データやリードコマンドの通信を行う。即ちキャッ
シュメモリ20に格納された再生データは、インターフ
ェース部13を介してホストコンピュータに転送出力さ
れる。またホストコンピュータからのリードコマンドそ
の他の信号はインターフェース部13を介してシステム
コントローラ10に供給される。
【0027】サーボプロセッサ14は、RFアンプ9か
らのフォーカスエラー信号FE、トラッキングエラー信
号TEや、デコーダ12もしくはシステムコントローラ
10からのスピンドルエラー信号SPE等から、フォー
カス、トラッキング、スレッド、スピンドルの各種サー
ボドライブ信号を生成しサーボ動作を実行させる。即ち
フォーカスエラー信号FE、トラッキングエラー信号T
Eに応じてフォーカスドライブ信号、トラッキングドラ
イブ信号を生成し、二軸ドライバ16に供給する。二軸
ドライバ16はピックアップ1における二軸機構3のフ
ォーカスコイル、トラッキングコイルを駆動することに
なる。これによってピックアップ1、RFアンプ9、サ
ーボプロセッサ14、二軸ドライバ16、二軸機構3に
よるトラッキングサーボループ及びフォーカスサーボル
ープが形成される。
【0028】またサーボプロセッサ14はスピンドルモ
ータドライバ17に対して、スピンドルエラー信号SP
Eに応じて生成したスピンドルドライブ信号を供給す
る。スピンドルモータドライバ17はスピンドルドライ
ブ信号に応じて例えば3相駆動信号をスピンドルモータ
6に印加し、スピンドルモータ6のCLV回転を実行さ
せる。またサーボプロセッサ14はシステムコントロー
ラ10からのスピンドルキック/ブレーキ制御信号に応
じてスピンドルドライブ信号を発生させ、スピンドルモ
ータドライバ17によるスピンドルモータ6の起動また
は停止などの動作も実行させる。
【0029】サーボプロセッサ14は、例えばトラッキ
ングエラー信号TEの低域成分として得られるスレッド
エラー信号や、システムコントローラ10からのアクセ
ス実行制御などに基づいてスレッドドライブ信号を生成
し、スレッドドライバ15に供給する。スレッドドライ
バ15はスレッドドライブ信号に応じてスレッド機構8
を駆動する。スレッド機構8には図示しないが、ピック
アップ1を保持するメインシャフト、スレッドモータ、
伝達ギア等による機構を有し、スレッドドライバ15が
スレッドドライブ信号に応じてスレッドモータ8を駆動
することで、ピックアップ1の所要のスライド移動が行
なわれる。
【0030】ピックアップ1におけるレーザダイオード
4はレーザドライバ18によってレーザ発光駆動され
る。システムコントローラ10はディスク90に対する
再生動作を実行させる際に、レーザパワーの制御値をオ
ートパワーコントロール回路19にセットし、オートパ
ワーコントロール回路19はセットされたレーザパワー
の値に応じてレーザ出力が行われるようにレーザドライ
バ18を制御する。
【0031】なお、記録動作が可能な装置とする場合
は、記録データに応じて変調された信号がレーザドライ
バ18に印加される。例えば記録可能タイプのディスク
90に対して記録を行う際には、ホストコンピュータか
らインターフェース部13に供給された記録データは図
示しないエンコーダによってエラー訂正コードの付加、
EFM+変調などの処理が行われた後、レーザドライバ
18に供給される。そしてレーザドライバ18が記録デ
ータに応じてレーザ発光動作をレーザダイオード4に実
行させることで、ディスク90に対するデータ記録が実
行される。
【0032】以上のようなサーボ及びデコード、エンコ
ードなどの各種動作はマイクロコンピュータによって形
成されたシステムコントローラ10により制御される。
例えば一連の再生動作制御としては、システムコントロ
ーラ10はホストコンピュータからのリードコマンドに
応じて、要求されたデータ区間の読出を行うための動作
として、サーボプロセッサ14に指令を出し、リードコ
マンドにより転送要求されたデータ区間として転送要求
開始位置をターゲットとするピックアップ1のシーク動
作を実行させる。そして詳しくは後述するが、シーク終
了後、転送要求開始位置から転送要求終了位置までのデ
ータ区間の全部又は一部の読出を実行させ、デコーダ1
2、データバッファ20に必要な処理を実行させ、転送
要求開始位置から転送要求終了位置までの再生データ
(要求されたデータ)をインターフェース部13からホ
ストコンピュータに転送させる制御を行う。
【0033】なおホストコンピュータからのリードコマ
ンド、即ち転送要求としては、要求するデータ区間の最
初のアドレスとなる要求スタートアドレスrqLBA
と、その最初のアドレスからの区間長として要求データ
長rqLGとなる。例えば要求スタートアドレスrqL
BA=N、要求データ長rqLG=3という転送要求
は、LBA「N」〜LBA「N+2」の3セクターのデ
ータ転送要求を意味する。
【0034】このような再生装置において、ホストコン
ピュータからのリードコマンド発生した際の読出/バフ
ァリング/転送処理について説明していく。システムコ
ントローラ10は、リードコマンドに応じて、要求され
たデータをホストコンピュータに転送すべく、必要な動
作としてディスク90からの読出及びデコード、キャッ
シュメモリ20へのバファリング、転送、さらに状況に
応じて続くデータのバファリング等を行うことになる
が、特にバファリングに関する動作方式を決定するため
に、データ要求がどのような態様の要求であるかを判断
する。具体的には、連続的なデータセクターを順次転送
要求するようなシーケンシャルリードであるか、ディス
ク90の2つの離れた地点での各データを交互に要求す
るような2ポイントリードであるか、もしくは全くラン
ダムな地点のデータを順次要求するランダムリードであ
るかを判断する。
【0035】そして、これらの要求態様の判断に応じ
て、キャッシュメモリ20へのバファリング方式を設定
する。転送要求態様に応じた具体的なバファリング動作
例は図3以降で説明して行くが、要求態様の判断に応じ
たバファリング方式とは次のようになる。
【0036】要求態様としては、シーケンシャルリード
か、2ポイントリードか、ランダムリードかを区別す
る。そしてシーケンシャルリードの場合は、キャッシュ
メモリ20を1つのリングメモリとして用い、転送要求
された必要なデータのバファリング、及びそのデータに
続くデータの先読みとしてのバファリングを行う。この
先読みバファリングは、キャッシュメモリ20が一杯と
なるまでか、もしくは次の転送要求が発生されるまで行
われる。これにより引き続きシーケンシャルリードとし
ての転送要求があった場合にキャッシュヒット転送でき
る確率を高くする。
【0037】2ポイントリードの場合は、基本的にはキ
ャッシュメモリ20を2つのセグメントSG1、SG2
に分割し、それぞれをセグメントバッファとして用い
る。つまり、転送要求されるであろう2つの箇所につい
てそれぞれバファリングデータを有効としておき、例え
ばディスク90上の2つの箇所のデータが交互に転送要
求されるような場合に、それぞれキャッシュヒット転送
できる確率を高くする。なお、2つのセグメントSG
1、SG2の分割点(キャッシュメモリ20内のエリア
の分割点)は固定的なものではなく(但し固定的なもの
としてもよいが)、後述する各種パラメータ(LBAm
1、PLBAm1、VSN1、TSN1、LBAm2、
PLBAm2、VSN2、TSN2)によってフレキシ
ブルに設定される。
【0038】ランダムリードの場合は、キャッシュメモ
リ20を、その転送要求発生毎にセグメント分割して使
用していく。つまり、転送要求発生時に、その時点でキ
ャッシュメモリ20にバファリングされているデータ
(それ以前のランダムリードに応じてバファリングされ
たデータ)を無効とせずに残しておき、新たにセグメン
ト分割して今回のランダムリードに関してバファリング
を行っていく。もちろんキャッシュメモリ20の容量に
より以前のバファリングデータを残しておくことには限
界があるが、できるだけ残しておくことにより、その後
のランダムリードでキャッシュヒット転送ができる可能
性を残しておく。
【0039】これらのようにバファリング方式を設定す
るために、ホストコンピュータからのデータ転送要求が
発生した際には、システムコントローラ10は、その転
送要求が上記シーケンシャルリード、2ポイントリー
ド、ランダムリードのいずれであると考えられるかを判
断する。この判断処理を示したものが図2のフローチャ
ートである。
【0040】例えば初期状態、つまりキャッシュメモリ
20に何もバファリングされていない状態において、ホ
ストコンピュータからデータ転送要求が発生した場合
は、当然ながらキャッシュヒット転送はあり得ない。図
2のステップF101,F102ではキャッシュメモリ
20の2つのセグメントSG1、SG2でのヒット有無
を判断しているが、初期状態においてはこれらは否定結
果が得られ、ステップF111で内部カウンタとしての
カウント値C1をインクリメントする。カウント値C1
とはランダムリードの判断を行うためのカウンタであ
り、このカウント値C1が特定の値Cthに達するまで
は、ステップF112からF114に進む。
【0041】ステップF114では内部カウンタとして
のカウント値C2のインクリメントを行う。カウント値
C2は、キャッシュメモリ20をセグメントバッファと
して用いる際の2つのセグメントSG1、SG2のうち
で、バファリングを行っていくセグメントを選択するた
めの変数となる。即ちステップF115において、カウ
ント値C2が例えば奇数である場合はステップF116
で、キャッシュメモリ20内のセグメントSG1が用い
られてバファリング及び転送要求に応じた転送動作が行
われ、一方、カウント値C2が偶数である場合はステッ
プF117で、キャッシュメモリ20内のセグメントS
G2が用いられてバファリング及び転送要求に応じた転
送動作が行われるように設定される。
【0042】つまり、データ転送要求時にキャッシュヒ
ットしておらず、しかもランダムリードと判断されてい
ない時点においては、キャッシュメモリ20が2つの領
域に分割されて設定されるセグメントSG1、SG2が
交互に用いられることになる。ステップF116もしく
はF117でのバファリングは、セグメントSG1もし
くはSG2が一杯になるか、もしくは次のデータ転送要
求が発生するまで行われる。但し次のデータ転送要求が
キャッシュヒット転送のみで完了できた場合はバファリ
ングがそのまま継続される場合もある。
【0043】一方、このようにセグメントSG1、SG
2のが用いられてバファリングが行われた後において、
ホストコンピュータからデータ転送要求があった場合
は、その転送要求されたデータがセグメントSG1に格
納されているデータとして存在し、即ちセグメントSG
1においてキャッシュヒットする場合があり、または同
じくセグメントSG2においてキャッシュヒットする場
合もある。
【0044】セグメントSG1にキャッシュヒットした
場合は、処理はステップF101からF103に進み、
カウント値C1をクリアする。そしてステップF104
で、その前回のデータ転送要求にかかるデータがセグメ
ントSG1からの転送によってホストコンピュータ側に
出力されていたか否かを判断する。ここで、前回のデー
タ要求がセグメントSG1からの転送により出力されて
いた場合とは、ホストコンピュータが連続して、ディス
ク上の連続するセクター(もしくは多少不連続であって
もバファリングによりカバーできる範囲のセクター)を
転送要求してきた場合であり、つまりホストコンピュー
タがシーケンシャルリードとしてのデータ要求を行って
きた場合と判断できる。
【0045】そこで、その場合はステップF105に進
み、キャッシュヒット転送を行うとともに、要求されて
いるデータのうちでキャッシュヒット転送できなかった
部分があれば、そのデータ読出/バファリング/転送を
行い、さらにその後もシーケンシャルリードが行われる
可能性が高いと判断して、要求された区間以降のセクタ
ーについても引き続きバファリングを行っていく。しか
もこのときのバファリングは、セグメントSG1、SG
2の区分をなくし、つまり要求されたデータの先頭のデ
ータセクターを格納したエリアを始点として、キャッシ
ュメモリ20全体をリングメモリ形態に使用して実行し
ていくことになる(キャッシュメモリ20の全領域をセ
グメントSG1とする)。換言すれば、この時点で、そ
れまでセグメントSG2として確保されていたデータは
無効とされ、そのエリアは今回のバファリングに用いら
れる。従って、その次のデータ転送要求が同じくシーケ
ンシャルリードであった場合は、キャッシュヒット転送
できる確率は高くなる(その場合も処理はステップF1
05に進み、引き続きキャッシュメモリ20は1つのリ
ングメモリ形態でバファリングされていく)。この先読
みバファリングはキャッシュメモリ20が一杯になる
か、もしくは次のデータ転送要求が発生するまで行われ
る。但し次のデータ転送要求がキャッシュヒット転送の
みで完了できた場合はバファリングがそのまま継続され
る場合もある。
【0046】ステップF104で否定結果が得られる場
合は、シーケンシャルリードとはいえないが、例えばこ
のときセグメントSG1でヒットしたデータは、前々回
のデータ転送要求に関してバッファリングされたデータ
と考えられるため、2ポイントリードと判断してよい。
そこでステップF106に進み、キャッシュヒット転送
を行うとともに、要求されているデータのうちでキャッ
シュヒット転送できなかった部分があれば、そのデータ
読出/バファリング/転送を行い、さらにその後も2ポ
イントリードもしくはシーケンシャルリードが行われる
可能性を考えて、要求された区間以降のセクターについ
ても引き続きバファリングを行っていく。ただしこのと
きのバファリングは、セグメントSG2のデータについ
てはそのまま有効データとして残しておき、つまりセグ
メントSG1、SG2の区分を残したまま、セグメント
SG1における要求されたデータの先頭のデータセクタ
ーを格納したエリアを始点としてセグメントSG1内で
実行していくことになる。なお、このバファリングはセ
グメントSG1内が一杯になるか、もしくは次のデータ
転送要求が発生するまで行われる。但し次のデータ転送
要求がキャッシュヒット転送のみで完了できた場合はバ
ファリングがそのまま継続される場合もある。また、セ
グメントSG2内で無効なデータ存在する場合などは、
セグメントの区分点を変更する(例えばセグメントSG
1がセグメントSG2の一部に食い込んでいくように拡
張する)場合もある。
【0047】2ポイントリードと考えられる場合は、次
のデータ転送要求では他方のセグメントSG2でキャッ
シュヒットする可能性が高い。このため、このようにセ
グメントSG2のデータを有効として残しておくこと
で、次のデータ転送要求時にキャッシュヒット転送でき
る確率を高くすることができる。
【0048】ホストコンピュータからデータ転送要求が
あった場合に、セグメントSG2においてキャッシュヒ
ットしたときは、処理はステップF102からF107
に進み、カウント値C1をクリアする。そしてステップ
F108で、その前回のデータ転送要求にかかるデータ
がセグメントSG2からの転送によってホストコンピュ
ータ側に出力されていたか否かを判断する。
【0049】ここで、前回のデータ要求がセグメントS
G2からの転送により出力されていた場合とは、上述し
たステップF104での判断の場合と同様に、ホストコ
ンピュータがシーケンシャルリードとしてのデータ要求
を行ってきた場合と判断できる。そこで、その場合はス
テップF109に進み、キャッシュヒット転送を行うと
ともに、要求されているデータのうちでキャッシュヒッ
ト転送できなかった部分があれば、そのデータ読出/バ
ファリング/転送を行い、さらにその後もシーケンシャ
ルリードが行われる可能性が高いと判断して、要求され
た区間以降のセクターについても引き続きバファリング
を行っていく。しかもこのときのバファリングは、セグ
メントSG1、SG2の区分をなくし、つまり要求され
たデータの先頭のデータセクターを格納したエリアを始
点として、キャッシュメモリ20全体をリングメモリ形
態に使用して実行していくことになる(キャッシュメモ
リ20の全領域をセグメントSG2とする)。換言すれ
ば、この時点で、それまでセグメントSG1として確保
されていたデータは無効とされ、そのエリアは今回のバ
ファリングに用いられる。従って、その次のデータ転送
要求が同じくシーケンシャルリードであった場合は、キ
ャッシュヒット転送できる確率は高くなる(その場合も
処理はステップF109に進み、引き続きキャッシュメ
モリ20は1つのリングメモリ形態でバファリングされ
ていく)。この先読みバファリングはキャッシュメモリ
20が一杯になるか、もしくは次のデータ転送要求が発
生するまで行われる。但し次のデータ転送要求がキャッ
シュヒット転送のみで完了できた場合はバファリングが
そのまま継続される場合もある。
【0050】ステップF108で否定結果が得られる場
合は、シーケンシャルリードとはいえないが、今回セグ
メントSG2でヒットしたデータは、例えば前々回のデ
ータ転送要求に関してバッファリングされたデータと考
えられるため、2ポイントリードと判断してよい。そこ
でステップF110に進み、キャッシュヒット転送を行
うとともに、要求されているデータのうちでキャッシュ
ヒット転送できなかった部分があれば、そのデータ読出
/バファリング/転送を行い、さらにその後も2ポイン
トリードもしくはシーケンシャルリードが行われる可能
性を考えて、要求された区間以降のセクターについても
引き続きバファリングを行っていく。ただしこのときの
バファリングは、セグメントSG1のデータについては
そのまま有効データとして残しておき、つまりセグメン
トSG1、SG2の区分を残したまま、セグメントSG
2における要求されたデータの先頭のデータセクターを
格納したエリアを始点としてセグメントSG1内で実行
していくことになる。このバファリングはセグメントS
G2内が一杯になるか、もしくは次のデータ転送要求が
発生するまで行われる。但し次のデータ転送要求がキャ
ッシュヒット転送のみで完了できた場合はバファリング
がそのまま継続される場合もある。またセグメントSG
1内で無効なデータ存在する場合などは、セグメントの
区分点を変更する(例えばセグメントSG2がセグメン
トSG1の一部に食い込んでいくように拡張する)場合
もある。
【0051】2ポイントリードと考えられる場合は、次
のデータ転送要求では他方のセグメントSG1でキャッ
シュヒットする可能性が高い。このため、このようにセ
グメントSG1のデータを有効として残しておくこと
で、次のデータ転送要求時にキャッシュヒット転送でき
る確率を高くすることができる。
【0052】ところで、データ転送要求が発生しても何
回か連続してキャッシュヒットしなかった場合は、その
度にステップF111でカウント値C1のインクリメン
トが行われ、しかもステップF103又はF107でカ
ウント値C1がクリアされないため、ある時点でステッ
プF112でカウント値C1が特定値Cthに達したと
判断される。つまりこの場合は、連続したデータ転送要
求がそれぞれディスク上の異なる地点のデータセクター
を要求してきた場合であり、ランダムリードとして判断
してよい。これは、それまで何度かセグメントSG1、
SG2を交互に使用してバファリングを行ってきたが、
結局2ポイントリードでなかったために、セグメント分
割して行ったバファリングによる効果(即ちキャッシュ
ヒット転送)が得られなかった場合である。
【0053】このようにランダムリードと判断された場
合は、ステップF113に進み、ランダムリードに対応
するバファリングを行うことになる。図2では特に詳し
く示していないが、ランダムリードとしてのバファリン
グとしては、まず、ランダムリードと判断された最初の
時点(つまりカウント値C1=CthでステップF11
3に進んだ場合)では、それまでセグメントSG1、S
G2としてバファリングされているデータ、もしくはリ
ングメモリ形態で用いられてバファリングされているデ
ータを、一旦全てパージする。そして、新たにキャッシ
ュメモリ20の例えば最初のエリアから転送要求された
データにかかるバファリングを行っていく。このバファ
リングは、次のデータ転送要求が発生するか、予め設定
された所定量の先読みバファリングが完了するまで行わ
れる。
【0054】次に発生したデータ転送要求がキャッシュ
ヒットしなければ、引き続きランダムリードと判断され
てステップF113に進むが(カウント値C1>Cth
でステップF113に進んだ場合)、そのように連続的
にランダムリードと判断される2回目以降は、その時点
でキャッシュメモリ20内に確保されているデータをパ
ージせず、その部分を1つのセグメントとして分割した
上で、続くエリアから今回の転送要求されたデータにか
かるバファリングを行っていく。このバファリングも、
次のデータ転送要求が発生するか、予め設定された所定
量の先読みバファリングが完了するまで行われる。
【0055】つまりランダムリードが連続する場合は、
それ以前のランダムリードの際のバファリングデータ
を、それぞれ1つのセグメントとして残しておいてバフ
ァリングを行う。従ってランダムリードが連続して発生
するたびに、セグメント分割数が増えていく。但し、キ
ャッシュメモリ20の容量と、実行されるバファリング
データ量により、もちろんセグメント分割数限界はある
ため、多数回ランダムリードが行われて、キャッシュメ
モリ20が多数のセグメントで一杯になった場合は、一
番古いセグメントが無効化されて、新たなランダムリー
ドにかかるバファリングが行われるようにすればよい。
【0056】このようにランダムリードの場合でも、で
きるだけバファリングしたデータを有効データとして残
しておくことで、その後キャッシュヒットされる可能性
を残しておくことができる。例えばその後のデータ転送
要求の際にあるセグメントにヒットした場合は、そのヒ
ットしたデータを基準にしてセグメントSG1を設定し
(例えばそのセグメントを拡張してバファリングしてい
ってセグメントSG1とし、残りをセグメントSG2と
する)、ステップF101〜F106の処理で、その後
の2ポイントリードもしくはシーケンシャルリードに対
応できるようにすればよい。つまりそれ以降に2ポイン
トリードもしくはシーケンシャルリードが発生した場合
に、上述した方式でのバファリングにより、キャッシュ
ヒット転送できる可能性を高くする。
【0057】以上のような、データ転送要求の態様の判
断結果に応じてキャッシュメモリ20のバファリング方
式を設定していくことによって実現される具体的な動作
例を以下説明していく。
【0058】図3はディスク90上のデータセクターの
一部を示したもので、図示するように、具体例として
〜に示すように各セクターのデータ転送要求が順次発
生された場合を説明していく。即ち、ホストコンピュー
タからのデータ転送要求として次のような要求があった
場合である。
【0059】 要求スタートアドレスrqLBA=
M、要求データ長rqLG=2として、LBA「M」、
LBA「M+1」の2セクターのデータ転送要求。 要求スタートアドレスrqLBA=N、要求データ
長rqLG=2として、LBA「N」、LBA「N+
1」の2セクターのデータ転送要求。 要求スタートアドレスrqLBA=N+2、要求デ
ータ長rqLG=3として、LBA「N+2」、LBA
「N+3」、LBA「N+4」の3セクターのデータ転
送要求。 要求スタートアドレスrqLBA=N+9、要求デ
ータ長rqLG=3として、LBA「N+9」、LBA
「N+10」、LBA「N+11」の3セクターのデー
タ転送要求。
【0060】なお、図3には示していないが、さらにデ
ータ転送要求の後に、データ転送要求として、要求
スタートアドレスrqLBA=M、要求データ長rqL
G=3として、LBA「M」、LBA「M+1」、LB
A「M+2」の3セクターのデータ転送要求があった場
合についても述べる。
【0061】まず再生装置がパワーオン、もしくはソフ
トリセット/ハードリセットされた後のキャッシュメモ
リ20の初期状態を図4に示す。説明上、キャッシュメ
モリ20はエリア#0〜#7の8ブロック(セクター)
分の容量を持つものとする。キャッシュメモリ20の状
態を管理するパラメータとして、先頭アドレスLBA
m、ポインタPLBAm、有効セクター数VSN、転送
済セクター数TSNという内部パラメータが使用される
が、これらのパラメータの値は生成されるセグメントに
応じて設定される。
【0062】先頭アドレスLBAm1、ポインタPLB
Am1、有効セクター数VSN1、転送済セクター数T
SN1がセグメントSG1を管理するパラメータ、先頭
アドレスLBAm2、ポインタPLBAm2、有効セク
ター数VSN2、転送済セクター数TSN2がセグメン
トSG2を管理するパラメータとなる。なお、ランダム
リードの際に、より3つ以上にセグメントが分割される
場合は、その設定されたセグメントに応じて先頭アドレ
スLBAm(x)、ポインタPLBAm(x)、有効セ
クター数VSN(x)、転送済セクター数TSN(x)
が設定される。また、シーケンシャルリードに対応して
セグメント分割がされない状態となるときは、例えば先
頭アドレスLBAm1=LBAm2、ポインタPLBA
m1=PLBAm2、有効セクター数VSN1=VSN
2、転送済セクター数TSN1=VSN2の状態とな
る。
【0063】先頭アドレスLBAm1、LBAm2は、
前回にホストコンピュータから要求のあったスタートセ
クターのLBAの値とされ、これは各セグメント内に格
納されている有効セクターの最小LBAとなる。またポ
インタPLBAm1、PLBAm2は、先頭アドレスL
BAm1又はLBAm2が格納されている各セグメント
でのエリアを示すポインタとなる。有効セクター数VS
N1、VSN2は、先頭アドレスLBAm1又はLBA
m2を基準として、そこからどれだけ連続したデータセ
クターが各セグメントに確保されているかを示す値とな
る。さらに転送済セクター数TSN1、TSN2は、既
に各セグメントからホストコンピュータ側に転送された
データセクターの数を示す値となる。
【0064】図4に示す初期状態では当然ながらキャッ
シュメモリ20内には有効データは存在しない。そして
各パラメータである、先頭アドレスLBAm1、ポイン
タPLBAm1、有効セクター数VSN1、転送済セク
ター数TSN1、及び先頭アドレスLBAm2、ポイン
タPLBAm2、有効セクター数VSN2、転送済セク
ター数TSN2は、全て初期値とされる。
【0065】まず上記としての要求スタートアドレス
rqLBA=M、要求データ長rqLG=2のデータ転
送要求が発生したとする。この場合、要求されたLBA
「M」、LBA「M+1」は、当然ながらキャッシュヒ
ットせず、処理は図2のステップF115に進み、カウ
ント値C2=1で奇数であるためステップF116の処
理が行われることになる。つまりセグメントSG1とし
てエリア#0〜#3が設定され、このセグメントSG1
にバファリングされていく。
【0066】この状態を図5に示すが、バファリング
は、要求されたLBA「M」、LBA「M+1」だけで
なく、それに続くセクターについても、例えばセグメン
トSG1が一杯になるLBA「M+3」まで行われてい
く。ディスク90上でみれば、図3における読出動作R
D1が行われたことになる。この状態は、先頭アドレス
LBAm1=M、ポインタPLBAm1=0、有効セク
ター数VSN1=4、転送済セクター数TSN1=0と
して管理される。なお図5ではLBA「M」〜LBA
「M+3」までバファリングが行われた例を示している
が、このようにセグメントSG1が一杯になるまでのバ
ファリングが完了する前に次のデータ転送要求があった
場合は、バファリングが中断されることもある。
【0067】バファリングされたデータのうち、要求さ
れたLBA「M」、LBA「M+1」のデータは、ホス
トコンピュータに転送される。
【0068】次に上記としての要求スタートアドレス
rqLBA=N、要求データ長rqLG=2のデータ転
送要求が発生したとする。この場合、図5の格納状態か
らわかるように要求されたLBA「N」、LBA「N+
1」は、キャッシュヒットせず、処理は図2のステップ
F115に進み、カウント値C2=2で偶数であるため
ステップF117の処理が行われることになる。つまり
セグメントSG2としてのエリア#4〜#7にバファリ
ングされていく。この状態を図6に示すが、バファリン
グは、要求されたLBA「N」、LBA「N+1」だけ
でなく、それに続くセクターについても、例えばセグメ
ントSG2が一杯になるLBA「N+3」まで行われて
いく。ディスク90上でみれば、図3におけるアクセス
AC及び読出動作RD2が行われたことになる。
【0069】このセグメントSG2の状態は、先頭アド
レスLBAm2=N、ポインタPLBAm2=4、有効
セクター数VSN2=4、転送済セクター数TSN2=
0として管理される。なお、セグメントSG2が一杯に
なるまでのバファリングが完了する前に次のデータ転送
要求があった場合は、バファリングが中断されることも
ある。
【0070】バファリングされたデータのうち、要求さ
れたLBA「N」、LBA「N+1」のデータは、ホス
トコンピュータに転送される。
【0071】次に上記としての要求スタートアドレス
rqLBA=N+2、要求データ長rqLG=3のデー
タ転送要求が発生したとする。この場合、図6の格納状
態からわかるように要求されたデータがのうちLBA
「N+2」、LBA「N+3」は、セグメントSG2に
おいてキャッシュヒットする。また前回の転送もセグメ
ントSG2内のデータであったため処理はステップF1
05に進むことになり、シーケンシャルリードと判断す
ることになる。従って図7に示すように、LBA「N+
2」、LBA「N+3」についてはキャッシュヒット転
送を行うとともに、まだ読み込んでないLBA「N+
4」をディスク90から読出、バファリングを行う。こ
のとき、キャッシュメモリ20は1つのリングメモリと
して用いられることになり、セグメントSG1が無効化
され、LBA「N+4」はエリア#0にバファリングさ
れる。そしてバファリングされたLBA「N+4」はホ
ストコンピュータに転送される。このときの状態は、先
頭アドレスLBAm2=N+2、ポインタPLBAm2
=6、有効セクター数VSN2=3、転送済セクター数
TSN2=2として管理される。セグメントSG1は無
効化されることで、先頭アドレスLBAm1、ポインタ
PLBAm1、有効セクター数VSN1、転送済セクタ
ー数TSN1は、それぞれセグメントSG2の各パラメ
ータと同値とされる。
【0072】このとき、LBA「N+4」以降も、その
後のシーケンシャルリードに備えて引き続きバファリン
グされていく。ディスク90上でみれば、図3における
読出動作RD3が行われたことになる。例えば図8のよ
うにLBA「N+7」までがバファリングされる。バフ
ァリングが進行するに従って有効セクター数VSNは更
新されるため、図8の状態で有効セクター数VSN2=
6となる。
【0073】次に上記としての、要求スタートアドレ
スrqLBA=N+9、要求データ長rqLG=3のデ
ータ転送要求が発生したとする。この場合、図8の格納
状態からわかるように要求されたLBA「N+9」、L
BA「N+10」、LBA「N+11」は、キャッシュ
ヒットせず、シーケンシャルリードではないと判断され
る。実行される処理としては図2のステップF116と
なる。つまりそれまでのキャッシュデータの一部がパー
ジされて、セグメントSG1としてエリア#0〜#3が
再度設定され、このセグメントSG1にバファリングさ
れていく。この状態を図9に示すが、バファリングは、
要求されたLBA「N+9」、LBA「N+10」、L
BA「N+11」だけでなく、それに続くセクターにつ
いても、例えばセグメントSG1が一杯になるLBA
「N+12」まで行われていく。ディスク90上でみれ
ば、図3における読出動作RD4が行われたことにな
る。
【0074】この状態は、先頭アドレスLBAm1=N
+9、ポインタPLBAm1=0、有効セクター数VS
N1=4、転送済セクター数TSN1=0として管理さ
れる。またこのときセグメントSG2については、先頭
アドレスLBAm2=N+2、ポインタPLBAm2=
6、有効セクター数VSN2=2、転送済セクター数T
SN2=2として管理される図9のようにバファリング
されたデータのうち、要求されたLBA「N+9」、L
BA「N+10」、LBA「N+11」のデータは、ホ
ストコンピュータに転送される。
【0075】さらに図3には示していないが、上記と
して、要求スタートアドレスrqLBA=M、要求デー
タ長rqLG=3のデータ転送要求が発生したとする。
この場合、図9の格納状態からわかるように要求された
LBA「M」、LBA「M+1」、LBA「M+2」
は、キャッシュヒットせず、処理は図2のステップF1
17に進む。そしてセグメントSG2としてのエリア#
4〜#7にバファリングされていく。この状態を図10
に示すが、バファリングは、要求されたLBA「M」、
LBA「M+1」、LBA「M+2」だけでなく、それ
に続くセクターについても、例えばセグメントSG2が
一杯になるLBA「M+3」まで行われる。このセグメ
ントSG2の状態は、先頭アドレスLBAm2=M、ポ
インタPLBAm2=4、有効セクター数VSN2=
4、転送済セクター数TSN2=0として管理される。
バファリングされたデータのうち、要求されたLBA
「M」、LBA「M+1」、LBA「M+2」のデータ
は、ホストコンピュータに転送される。
【0076】順次発生するデータ転送要求に対して、本
例では以上の例のように、そのときのデータ転送要求の
態様に応じてキャッシュメモリ20へのバファリング方
式が変更される。そしてこれにより、キャッシュヒット
転送できる可能性を高くしているものである。
【0077】次に、このような本例の動作が最も効果的
となる具体例の1つを説明する。例えば図11に(i)
〜(Viii)として示すように、2つの地点のセクターを順
次交互に要求するような、2ポイントリードとなる8回
のデータ転送要求が発生した場合を考える。
【0078】図11は本例との比較のために従来のバフ
ァリング方式(図22〜図25で説明したバファリング
方式)を行った際に必要となるディスク90でのデータ
アクセス動作を示している。この場合、キャッシュヒッ
トしなかった場合は、その都度キャッシュメモリをパー
ジして行くことになるため、(i)〜(Viii)のような2
ポイントリードに関しては、全くキャッシュヒット転送
ができず、従って図示するように、全てのデータ転送要
求に対応して破線矢印のアクセス動作と実線矢印の読出
動作が必要となってしまう。即ち、キャッシュメモリで
の先読み動作がアクセスタイムの短縮化に寄与できない
ものとなっている。
【0079】一方、本例では同様の(i)〜(Viii)の2
ポイントリードがあった場合には、図12に示すよう
に、読出動作RD11〜RD14及びアクセス動作AC
11〜AC14を行えばよく、図11と比較して、ディ
スク90に対するアクセスが非常に効率化されることが
わかる。この図12のような効率的なアクセスを実現す
るためのバファリング動作を図13〜図20で説明す
る。
【0080】まず図4で述べたような初期状態から、上
記(i)の、要求スタートアドレスrqLBA=M、要
求データ長rqLG=1のデータ転送要求が発生したと
する。この場合、当然ながらキャッシュヒットせず、図
2のステップF116の処理が行われることになり、セ
グメントSG1としてエリア#0〜#3が設定され、図
13のようにLBA「M」以降が、セグメントSG1に
バファリングされていく。ディスク90上では図12の
アクセスAC11及び読出動作RD11が行われたこと
になる。バファリングされたデータのうち、要求された
LBA「M」のデータは、ホストコンピュータに転送さ
れる。
【0081】ここで、LBA「M+1」までのバファリ
ングが完了した時点で、図12の(ii)の、次のデータ転
送要求があったとする。即ち要求スタートアドレスrq
LBA=N、要求データ長rqLG=1のデータ転送要
求である。この場合、図13の格納状態からわかるよう
に要求されたLBA「N」は、キャッシュヒットせず、
処理は図2のステップF117に進む。つまり図14に
示すようにセグメントSG1でのバファリングは停止さ
れ、セグメントSG2としてのエリア#4〜#7にLB
A「N」以降がバファリングされていく。バファリング
されたデータのうち、要求されたLBA「N」のデータ
は、ホストコンピュータに転送される。
【0082】セグメントSG2にLBA「N+1」まで
がバファリングされた図14の時点で、次に図12の(i
ii) のデータ転送要求があったとする。即ち要求スター
トアドレスrqLBA=M+1、要求データ長rqLG
=1のデータ転送要求である。ところがこの場合、要求
されたデータLBA「M+1」は、セグメントSG1に
おいてキャッシュヒットされることになる。そこで、図
15に示すように、ステップF106においてLBA
「M+1」がキャッシュヒット転送される。また、図2
の説明では、フローチャート上では詳しく説明せず、但
し書きのみで述べたが、この場合キャッシュヒット転送
のみで転送が完了したため、上記(ii)の転送要求の際に
開始されたバファリングは中断されず、そのまま継続さ
れることになる。図2のフローチャート上でいえば、そ
の直前のステップF117でのバファリングが継続さ
れ、今回のステップF106の処理はキャッシュヒット
転送のみとなる。
【0083】従って図15に示すように、LBA「M+
1」がキャッシュヒット転送された後も、セグメントS
G2においてLBA「N+2」以降のバファリングが行
われている。
【0084】続いて、図12の(iV)のデータ転送要求が
あったとする。即ち要求スタートアドレスrqLBA=
N+1、要求データ長rqLG=1のデータ転送要求で
ある。この場合、要求されたデータLBA「N+1」
は、セグメントSG2においてキャッシュヒットされる
ことになる。そこで、図2のステップF110の処理に
おいて図16に示すようにLBA「N+1」がキャッシ
ュヒット転送される。また、この場合もキャッシュヒッ
ト転送のみで転送が完了したため、上記(ii)の転送要求
の際に開始されたバファリングは中断されず、そのまま
継続される。
【0085】続いて、セグメントSG2にLBA「N+
2」までがバファリングが完了された時点で、図12の
(V)のデータ転送要求があったとする。即ち要求スタ
ートアドレスrqLBA=M+2、要求データ長rqL
G=1のデータ転送要求である。この場合、要求された
データLBA「M+2」は、キャッシュヒットしない。
従って処理はステップF116に進み、図17に示され
るようにこの時点でセグメントSG2でのバファリング
が停止されるとともに、セグメントSG1に対してLB
A「M+2」以降がバファリングされていく。ディスク
90上でみれば図12の読出動作RD12として続けら
れてきたバファリングが停止され、アクセスAC13及
び読出動作RD13により、セグメントSG1へのバフ
ァリングが開始されることになる。バファリングされた
データのうち、要求されたLBA「M+2」のデータ
は、ホストコンピュータに転送される。
【0086】セグメントSG1へのにバファリングが行
われている図17の時点で、次に図12の(vi)のデータ
転送要求があったとする。即ち要求スタートアドレスr
qLBA=N+2、要求データ長rqLG=1のデータ
転送要求である。この場合、要求されたデータLBA
「N+2」は、セグメントSG2においてキャッシュヒ
ットされることになる。そこで、図2のステップF11
0の処理で、図18に示すようにLBA「N+2」がキ
ャッシュヒット転送される。この場合キャッシュヒット
転送のみで転送が完了したため、上記( V) の転送要求
の際に開始されたセグメントSG1へのバファリングは
中断されず、そのまま継続される。従って図18に示す
ように、LBA「N+2」がキャッシュヒット転送され
た後も、セグメントSG1においてLBA「M+3」以
降のバファリングが行われている。
【0087】続いて、図12の(Vii) のデータ転送要求
があったとする。即ち要求スタートアドレスrqLBA
=M+3、要求データ長rqLG=1のデータ転送要求
である。この場合、要求されたデータLBA「M+3」
は、セグメントSG1においてキャッシュヒットされる
ことになる。そこで、図2のステップF106の処理に
おいて図19に示すようにLBA「M+3」がキャッシ
ュヒット転送される。また、この場合もキャッシュヒッ
ト転送のみで転送が完了したため、上記( V) の転送要
求の際に開始されたセグメントSG1へのバファリング
は中断されず、そのまま継続される。
【0088】セグメントSG1にLBA「N+4」まで
がバファリングが完了された時点で、図12の(Viii)
のデータ転送要求があったとする。即ち要求スタートア
ドレスrqLBA=N+3、要求データ長rqLG=1
のデータ転送要求である。この場合、要求されたデータ
LBA「N+3」は、キャッシュヒットしない。従って
処理はステップF117に進み、図20に示されるよう
にこの時点でセグメントSG1でのバファリングが停止
されるとともに、セグメントSG2に対してLBA「N
+3」以降がバファリングされていく。ディスク90上
でみれば図12の読出動作RD13として続けられてき
たバファリングが停止され、アクセスAC14及び読出
動作RD14により、セグメントSG2へのバファリン
グが開始されることになる。バファリングされたデータ
のうち、要求されたLBA「N+3」のデータは、ホス
トコンピュータに転送される。
【0089】以上の動作例からわかるように本例では、
2ポイントリードの場合はセグメントバッファとして用
いられるキャッシュメモリ20が非常に効果的に利用さ
れて、キャッシュヒット転送できる機会が多くなってい
る。つまり本例では、キャッシュメモリ20を有効利用
したアクセスタイムの短縮化が、データ転送要求が2ポ
イントリードであっても効果的に実現されることにな
る。
【0090】次に、ランダムリードと判断され、図12
のステップF113に進む場合のバファリング動作につ
いて図21で説明する。上述したようにランダムリード
と判断された最初の時点では、それまでセグメントSG
1、SG2としてバファリングされているデータ、もし
くはリングメモリ形態で用いられてバファリングされて
いるデータを、一旦全てパージする。そして、新たにキ
ャッシュメモリ20の例えば最初のエリアから転送要求
されたデータにかかるバファリングを行っていくため、
例えばLBA「X」のデータ転送要求があったとする
と、図21(a)のようにエリア#0からLBA「X」
以降のバファリングを行うとともに、要求されたLBA
「X」のデータを転送する。
【0091】次のデータ転送要求がLBA「N+5」で
あって、同じくランダムリードと判断され図12のステ
ップF113に進んだ場合は、図21(b)のようにそ
の時点でキャッシュメモリ20内に確保されているデー
タに続いて、異なるセグメントとして、LBA「N+
5」以降のバファリングを行うとともに、要求されたL
BA「N+5」のデータを転送する。さらに次のデータ
転送要求がLBA「Y」であって、同じくランダムリー
ドと判断され図12のステップF113に進んだ場合
は、図21(c)のようにその時点でキャッシュメモリ
20内に確保されているデータに続いて、さらに異なる
セグメントとして、LBA「Y」以降のバファリングを
行うとともに、要求されたLBA「Y」のデータを転送
する。
【0092】このように、各データ転送要求にかかるバ
ファリングデータ毎にセグメントを設定して、その過去
のバファリングデータを無効化しないようにする。つま
りランダムリードとしてのデータ転送要求が連続的に発
生する毎に、それまでのバファリングデータを保持した
まま、新たなバファリングデータを詰め込んでいく。こ
のようにバファリングを行うことで、過去にバファリン
グしたデータを最大限に生かすことができ、ランダムリ
ードであったとしてもキャッシュヒット転送できる可能
性を維持できることになる。そしてその結果キャッシュ
ヒット転送が実現される場合が発生することで、アクセ
スタイムの短縮化を実現できる。
【0093】以上実施の形態の例を説明してきたが、本
発明としては再生装置の構成やバファリング動作につい
て各種の変形例が考えられる。バファリング動作として
は、図2の処理例に限定されず、想定される要求態様に
応じて、キャッシュヒット転送回数を増やすことができ
るような効率的なバファリングが行われるようにすれば
よいものである。
【0094】
【発明の効果】以上説明したように本発明では、供給さ
れたデータ要求の要求態様を判断して、判断された要求
態様に基づいて、キャッシュメモリ手段へのデータ格納
動作方式(バファリング方式)を設定するため、要求形
態に応じたフレキシブルな対応により、キャッシュメモ
リ手段内のデータをできるだけ有効化することができ
る。特に、データ要求態様がシーケンシャルなデータ要
求でないと判断した場合は、キャッシュメモリ手段で複
数のメモリ領域を分割設定して、或るメモリ領域に対し
てデータ格納動作を行なうようにする。つまり、連続し
たデータの読出でなくとも、ぞれまでのキャッシュメモ
リ内を完全にパージせず、領域毎に確保しておく。これ
により2ポイントリードなどの場合に、さらに次のデー
タ転送要求時に確保しておいた(パージしなかった)領
域のデータを有効利用できる。つまりキャッシュヒット
転送できる。またランダムリードの場合でも、できるだ
け過去のバファリングデータを領域分割して確保してお
くことで、キャッシュヒット転送できる可能性を残して
おくことができる。一方、要求態様がシーケンシャルな
データ要求であると判断した場合は、キャッシュメモリ
手段を1つのリングメモリ形態としてデータ格納動作を
行なうようにすることで、キャッシュメモリ手段の容量
を有効利用し、キャッシュヒット転送の確率を高めるこ
とができる。
【0095】また、2ポイントリードとランダムリード
の判別に応じて、キャッシュメモリ手段へのデータ格納
動作方式を切り換えることで、それぞれの態様に応じた
最適なキャッシュメモリ手段の使用状態を実現できる。
例えば2ポイントリードであれば、キャッシュメモリ手
段を2つのメモリ領域に分割しておくことで、2ポイン
トリードの際にキャッシュヒット転送できる確率が高く
なり、またランダムリードの場合はメモリ領域の分割数
を増やしていくことで、キャッシュヒット転送の確率を
高めることができる。
【0096】そして以上のように、各種のデータ要求態
様においてキャッシュメモリ手段へのバファリング方式
を設定し、それぞれキャッシュヒット転送できる確率を
高くすることで、データ転送要求時のディスク等の記録
媒体へのアクセス回数を効果的に削減し、平均的なアク
セスタイムを短縮できるという効果がある。さらに、こ
のような処理の実現にはいわゆる再生装置のファームウ
エアを工夫すればよく、ハードウエア構成を変える必要
がないという利点もある。
【図面の簡単な説明】
【図1】本発明の実施の形態の再生装置のブロック図で
ある。
【図2】実施の形態のリードコマンド発生時のリード方
式判別処理のフローチャートである。
【図3】実施の形態の読出動作例の説明図である。
【図4】実施の形態の初期状態のキャッシュメモリの説
明図である。
【図5】実施の形態のバファリング動作の説明図であ
る。
【図6】実施の形態のバファリング動作の説明図であ
る。
【図7】実施の形態のバファリング動作の説明図であ
る。
【図8】実施の形態のバファリング動作の説明図であ
る。
【図9】実施の形態のバファリング動作の説明図であ
る。
【図10】実施の形態のバファリング動作の説明図であ
る。
【図11】2ポイントリード時の非効率的な読出動作例
の説明図である。
【図12】実施の形態の2ポイントリード時の読出動作
の説明図である。
【図13】実施の形態の2ポイントリード時のバファリ
ング動作の説明図である。
【図14】実施の形態の2ポイントリード時のバファリ
ング動作の説明図である。
【図15】実施の形態の2ポイントリード時のバファリ
ング動作の説明図である。
【図16】実施の形態の2ポイントリード時のバファリ
ング動作の説明図である。
【図17】実施の形態の2ポイントリード時のバファリ
ング動作の説明図である。
【図18】実施の形態の2ポイントリード時のバファリ
ング動作の説明図である。
【図19】実施の形態の2ポイントリード時のバファリ
ング動作の説明図である。
【図20】実施の形態の2ポイントリード時のバファリ
ング動作の説明図である。
【図21】実施の形態のランダムリード時のバファリン
グ動作の説明図である。
【図22】従来のバファリング動作の説明図である。
【図23】従来のバファリング動作の説明図である。
【図24】従来のバファリング動作の説明図である。
【図25】従来のバファリング動作の説明図である。
【符号の説明】
1 ピックアップ、2 対物レンズ、3 二軸機構、4
レーザダイオード、5 フォトディテクタ、6 スピ
ンドルモータ、8 スレッド機構、9 RFアンプ、1
0 システムコントローラ、13 インターフェース
部、14 サーボプロセッサ、20 キャッシュメモ
リ、90 ディスク、

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 記録媒体からデータを読み出すことので
    きる読出手段と、 前記読出手段により読み出したデータを格納するキャッ
    シュメモリ手段と、 データ要求に応じて前記読出手段及び/又は前記キャッ
    シュメモリ手段の動作を制御して、要求されたデータの
    前記キャッシュメモリ手段からの転送出力を実行させる
    再生制御手段とを備え、 前記再生制御手段は、供給された前記データ要求の要求
    態様を判断して、判断された要求態様に基づいて、前記
    キャッシュメモリ手段へのデータ格納動作方式を設定す
    ることを特徴とする再生装置。
  2. 【請求項2】 前記再生制御手段は、前記要求態様がシ
    ーケンシャルなデータ要求でないと判断した場合は、前
    記キャッシュメモリ手段で複数のメモリ領域を分割設定
    して、或るメモリ領域に対してデータ格納動作を行なう
    ようにし、一方、前記要求態様がシーケンシャルなデー
    タ要求であると判断した場合は、前記キャッシュメモリ
    手段を1つのリングメモリ形態としてデータ格納動作を
    行なうようにすることを特徴とする請求項1に記載の再
    生装置。
  3. 【請求項3】 前記再生制御手段は、前記要求態様がシ
    ーケンシャルなデータ要求でないと判断する場合におい
    て、その要求態様が2地点交互となるデータ要求か、ラ
    ンダムなデータ要求かを判別し、その判別結果に応じて
    前記キャッシュメモリ手段へのデータ格納動作方式を切
    り換えることを特徴とする請求項2に記載の再生装置。
  4. 【請求項4】 供給されたデータ要求の要求態様がシー
    ケンシャルなデータ要求であるか否かを判別し、 シーケンシャルなデータ要求と判別した場合は、キャッ
    シュメモリを1つのリングメモリ形態としてデータ格納
    動作を行ない、一方、シーケンシャルなデータ要求では
    ないと判別した場合は、キャッシュメモリを複数のメモ
    リ領域を分割設定して、或るメモリ領域に対してデータ
    格納動作を行なうようにすることを特徴とするキャッシ
    ュ処理方法。
JP9304034A 1997-11-06 1997-11-06 再生装置、及びキャッシュ処理方法 Pending JPH11143643A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP9304034A JPH11143643A (ja) 1997-11-06 1997-11-06 再生装置、及びキャッシュ処理方法
US09/184,822 US6279076B1 (en) 1997-11-06 1998-11-02 Reproducing apparatus and caching method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9304034A JPH11143643A (ja) 1997-11-06 1997-11-06 再生装置、及びキャッシュ処理方法

Publications (1)

Publication Number Publication Date
JPH11143643A true JPH11143643A (ja) 1999-05-28

Family

ID=17928270

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9304034A Pending JPH11143643A (ja) 1997-11-06 1997-11-06 再生装置、及びキャッシュ処理方法

Country Status (2)

Country Link
US (1) US6279076B1 (ja)
JP (1) JPH11143643A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003309A (ja) * 1998-06-15 2000-01-07 Fujitsu Ltd 記憶装置
JP2005322215A (ja) * 2004-03-31 2005-11-17 Microsoft Corp キャッシュメモリを使用して大容量記憶媒体から情報を読み出すための戦略(strategies)
JP2008077767A (ja) * 2006-09-21 2008-04-03 Sanyo Electric Co Ltd 光ディスク再生装置、プログラム
US7376788B2 (en) 2003-09-30 2008-05-20 Teac Corporation Optical disk drive
US8874824B2 (en) 2009-06-04 2014-10-28 Memory Technologies, LLC Apparatus and method to share host system RAM with mass storage memory RAM
US9063850B2 (en) 2008-02-28 2015-06-23 Memory Technologies Llc Extended utilization area for a memory device
US9311226B2 (en) 2012-04-20 2016-04-12 Memory Technologies Llc Managing operational state data of a memory module using host memory in association with state change

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6532513B1 (en) * 1999-11-16 2003-03-11 Matsushita Electric Industrial Co., Ltd. Information recording and reproduction apparatus
TW455870B (en) * 1999-12-09 2001-09-21 Acer Labs Inc Memory mapping method
US7010649B2 (en) * 2003-10-14 2006-03-07 International Business Machines Corporation Performance of a cache by including a tag that stores an indication of a previously requested address by the processor not stored in the cache
JP4239096B2 (ja) * 2004-08-24 2009-03-18 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP4312733B2 (ja) * 2005-04-04 2009-08-12 Necエレクトロニクス株式会社 データ記録再生装置及びデータ記録再生方法
US7870265B2 (en) * 2005-06-30 2011-01-11 Oracle International Corporation System and method for managing communications sessions in a network
JP2007102314A (ja) * 2005-09-30 2007-04-19 Fujitsu Ltd ディスクキャッシュ制御装置
CN101346634B (zh) * 2005-11-04 2012-10-24 甲骨文国际公司 用于通信网络中的网守的系统和方法
US20070104186A1 (en) * 2005-11-04 2007-05-10 Bea Systems, Inc. System and method for a gatekeeper in a communications network
US8325798B1 (en) 2005-12-15 2012-12-04 Maxim Integrated Products, Inc. Adaptive motion estimation cache organization
US8112525B2 (en) * 2006-05-16 2012-02-07 Oracle International Corporation Engine near cache for reducing latency in a telecommunications environment
US8171466B2 (en) * 2006-05-16 2012-05-01 Oracle International Corporation Hitless application upgrade for SIP server architecture
US8001250B2 (en) * 2006-05-16 2011-08-16 Oracle International Corporation SIP and HTTP convergence in network computing environments
US8219697B2 (en) * 2006-05-17 2012-07-10 Oracle International Corporation Diameter protocol and SH interface support for SIP server architecture
US7661027B2 (en) * 2006-10-10 2010-02-09 Bea Systems, Inc. SIP server architecture fault tolerance and failover
US8179912B2 (en) * 2008-09-26 2012-05-15 Oracle International Corporation System and method for providing timer affinity through engine polling within a session-based server deployment
US9723048B2 (en) * 2008-10-29 2017-08-01 Oracle International Corporation System and method for providing timer affinity through notifications within a session-based server deployment
CN104714900B (zh) * 2015-03-26 2019-07-05 百度在线网络技术(北京)有限公司 数据读取方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03100718A (ja) * 1989-09-13 1991-04-25 Hitachi Ltd バッファ付きディスク装置の入出力処理方法
JP3586887B2 (ja) * 1994-06-10 2004-11-10 松下電器産業株式会社 情報記録再生装置およびデータキャッシュ方法

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000003309A (ja) * 1998-06-15 2000-01-07 Fujitsu Ltd 記憶装置
US7376788B2 (en) 2003-09-30 2008-05-20 Teac Corporation Optical disk drive
JP2005322215A (ja) * 2004-03-31 2005-11-17 Microsoft Corp キャッシュメモリを使用して大容量記憶媒体から情報を読み出すための戦略(strategies)
JP2008077767A (ja) * 2006-09-21 2008-04-03 Sanyo Electric Co Ltd 光ディスク再生装置、プログラム
US10540094B2 (en) 2008-02-28 2020-01-21 Memory Technologies Llc Extended utilization area for a memory device
US11907538B2 (en) 2008-02-28 2024-02-20 Memory Technologies Llc Extended utilization area for a memory device
US9367486B2 (en) 2008-02-28 2016-06-14 Memory Technologies Llc Extended utilization area for a memory device
US9063850B2 (en) 2008-02-28 2015-06-23 Memory Technologies Llc Extended utilization area for a memory device
US11182079B2 (en) 2008-02-28 2021-11-23 Memory Technologies Llc Extended utilization area for a memory device
US11829601B2 (en) 2008-02-28 2023-11-28 Memory Technologies Llc Extended utilization area for a memory device
US11494080B2 (en) 2008-02-28 2022-11-08 Memory Technologies Llc Extended utilization area for a memory device
US11550476B2 (en) 2008-02-28 2023-01-10 Memory Technologies Llc Extended utilization area for a memory device
US11775173B2 (en) 2009-06-04 2023-10-03 Memory Technologies Llc Apparatus and method to share host system RAM with mass storage memory RAM
US9983800B2 (en) 2009-06-04 2018-05-29 Memory Technologies Llc Apparatus and method to share host system RAM with mass storage memory RAM
US8874824B2 (en) 2009-06-04 2014-10-28 Memory Technologies, LLC Apparatus and method to share host system RAM with mass storage memory RAM
US10983697B2 (en) 2009-06-04 2021-04-20 Memory Technologies Llc Apparatus and method to share host system RAM with mass storage memory RAM
US11733869B2 (en) 2009-06-04 2023-08-22 Memory Technologies Llc Apparatus and method to share host system RAM with mass storage memory RAM
US10042586B2 (en) 2012-04-20 2018-08-07 Memory Technologies Llc Managing operational state data in memory module
US11782647B2 (en) 2012-04-20 2023-10-10 Memory Technologies Llc Managing operational state data in memory module
US11226771B2 (en) 2012-04-20 2022-01-18 Memory Technologies Llc Managing operational state data in memory module
US9311226B2 (en) 2012-04-20 2016-04-12 Memory Technologies Llc Managing operational state data of a memory module using host memory in association with state change

Also Published As

Publication number Publication date
US6279076B1 (en) 2001-08-21

Similar Documents

Publication Publication Date Title
JPH11143643A (ja) 再生装置、及びキャッシュ処理方法
US6182240B1 (en) Reproduction system, reproduction apparatus and reproduction method for defect management
EP0762416B1 (en) Information reading apparatus
JP2002056619A (ja) ディスクドライブ装置、データ格納方法
JP3559836B2 (ja) 光ディスク用データ読み出し装置
JP2000251271A (ja) ディスクドライブ装置
JP3065275B2 (ja) Cd−romドライブの駆動方法
US7724620B2 (en) Information recording/reproducing apparatus and a data reproducing method thereof, as well as an optical disk thereof
JP3994539B2 (ja) 再生装置
JP2000155965A (ja) ディスクドライブ装置
JP2002208223A (ja) データ記録再生方法
JPH11143644A (ja) 再生装置、及びキャッシュ処理方法
US7663993B2 (en) Disk device for recording and reproducing disks with adaptive rotation control
JP3778290B2 (ja) 光ディスク再生装置
JPH11162101A (ja) ディスクドライブ装置
JPH1049994A (ja) 情報再生装置
JPH11154374A (ja) 再生装置、及びキャッシュ処理方法
JPH11296309A (ja) 再生装置
JP3284570B2 (ja) 光ディスクのデータ記録再生方式
JP3921858B2 (ja) 再生装置
JP3929203B2 (ja) マルチトラックディスク再生装置
JPH11143751A (ja) 再生装置、ファイルシステム認識方法
JP3493675B2 (ja) 高速再生方法、再生装置
KR100525866B1 (ko) 광디스크 장치에서의 데이터 기록 및 재생 제어방법
JP3856432B2 (ja) 情報再生装置の高速再生処理方法及び情報再生装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20060601

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060821

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20070619

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070719

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070820

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070824

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20071019