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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing 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/0871—Allocation or management of cache space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0674—Disk device
- G06F3/0677—Optical disk device, e.g. CD-ROM, DVD
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/10629—Data buffering arrangements, e.g. recording or playback buffers the buffer having a specific structure
- G11B2020/10666—Ring 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10527—Audio or video recording; Data buffering arrangements
- G11B2020/1062—Data buffering arrangements, e.g. recording or playback buffers
- G11B2020/10675—Data buffering arrangements, e.g. recording or playback buffers aspects of buffer control
- G11B2020/10685—Data 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
るアクセスタイム向上。 【解決手段】 データ要求がシーケンシャルリードでな
いと判断した場合は、キャッシュメモリで複数のメモリ
領域を分割設定して、或るメモリ領域に対してデータ格
納動作を行なうようにする。つまり、連続したデータの
読出でなくとも、ぞれまでのキャッシュメモリ内を完全
にパージせず、領域毎に確保しておく。これにより2ポ
イントリードなどの場合に、さらに次のデータ転送要求
時に確保しておいた領域のデータを有効利用できるよう
にする。ランダムリードの場合でも、できるだけ過去の
バファリングデータを領域分割して確保しておくこと
で、キャッシュヒット転送できる可能性を残しておくこ
とができる。シーケンシャルリードの場合は、キャッシ
ュメモリを1つのリングメモリ形態としてデータ格納動
作を行なうようにすることで、キャッシュメモリ手段の
容量を有効利用し、キャッシュヒット転送の確率を高め
る。
Description
どの記録媒体に対応して再生動作を行なうことのできる
ディスク再生装置に関し、特にデータ再生時のキャッシ
ュ処理に関するものである。
パクトディスク)方式のディスクや、マルチメディア用
途に好適なDVD(Digital Versatile Disc/Digital
VideoDisc)と呼ばれるディスクなどが開発されてい
る。これらの光ディスクに対応する再生装置では、ディ
スク上のトラックに対してレーザ光を照射し、その反射
光を検出することでデータの読出を行う。
リードコマンド(データ転送要求)に応じてディスク再
生動作を行い、再生されたデータをホストコンピュータ
に送信する再生装置では、そのリードコマンドに応じて
迅速にデータ転送を行うことが求められる。リードコマ
ンドは、通常リードコマンドとしてのデータとともに、
転送要求データ区間としての開始位置と、その開始位置
からのデータ長により構成される。つまりホストコンピ
ュータは再生命令と再生すべき区間を指定する。
動作としては、基本的には、要求されたデータの読出を
行うために、光学ヘッドのシーク(アクセス)動作を実
行し、データの読出を行う。そして読み出したデータを
ホストコンピュータに転送するわけであるが、このよう
な再生装置ではいわゆるキャッシュメモリが搭載されこ
のキャッシュメモリを介してデータ出力を行うことにな
る。
ンピュータから要求のあったデータセクターのデータを
ディスクから読み出してキャッシュメモリに格納(バフ
ァリング)し、そのキャッシュメモリからホストコンピ
ュータに対して転送するが、さらにその要求のあったデ
ータセクターに続くセクターのデータをも読み出してキ
ャッシュメモリに格納しておく動作を行う。いわゆる先
読み動作である。そして、次にホストコンピュータから
データ要求があった際に、その要求されたデータがキャ
ッシュメモリに格納されていれば、ディスクアクセスを
行わなくともホストコンピュータに対してデータ転送を
行うことができ、つまり見かけ上アクセスタイムを短縮
することができる。即ちホストコンピュータから、連続
するセクターに対するデータ要求が続けて発せられた場
合(いわゆるシーケンシャルリード)は、キャッシュメ
モリへの先読み動作は迅速なデータ転送という点で非常
に有効な手法となる。
ングは、通常キャッシュメモリがリングメモリ形態で使
用されて行われる。つまり、キャッシュメモリにはLB
A(Logical Block Address :ディスク上のデータセク
ターのアドレス)が連続したデータを格納していくこと
で、シーケンシャルリードとしてのデータ要求に対して
アクセスタイムの短縮効果を実現している。
ング動作を図22〜図25で説明する。なお説明の簡略
化のために、キャッシュメモリのサイズを8ブロック
(1つのLBAが与えられるセクターとして8セクター
分の容量)とする。そして仮に、ホストコンピュータか
らLBA「N」〜LBA「N+2」の3ブロック(3セ
クター)の第1のデータ転送要求と、LBA「N+6」
〜LBA「N+8」の3ブロック(3セクター)の第2
のデータ転送要求が続けて供給された場合を例とする。
の時点において、図22のようにエリア#0〜#7の8
ブロックサイズのキャッシュメモリには、LBA「M」
〜LBA「M+4」までの各データセクターが格納され
ていたとする。なお、再生装置側でのこのキャッシュメ
モリの管理には図示するように、先頭アドレスLBA
m、ポインタPLBAm、有効セクター数VSN、転送
済セクター数TSNという内部パラメータが使用され
る。
コンピュータから要求のあったスタートセクターのLB
Aの値とされ、これはキャッシュメモリ内に格納されて
いる有効セクターの最小LBAとなる。またポインタP
LBAmは、先頭アドレスLBAmが格納されているキ
ャッシュメモリのエリアを示すポインタとなる。有効セ
クター数VSNは、先頭アドレスLBAmを基準とし
て、そこからどれだけ連続したデータセクターがキャッ
シュメモリに確保されているかを示す値となる。さらに
転送済セクター数TSNとは、既にキャッシュメモリか
らホストコンピュータ側に転送されたデータセクターの
数を示す値となる。
M、ポインタPLBAm=0、有効セクター数VSN=
5とされていることから、図示するように、エリア#0
に格納したLBA「M」のセクターからLBM「M+
4」のセクターまでが連続して確保されている状態が管
理されていることになる。
LBA「N」〜LBA「N+2」の3セクターのデータ
転送要求があったとする。転送要求としてホストコンピ
ュータは、要求するデータ区間の最初のアドレスとなる
要求スタートアドレスrqLBAと、その最初のアドレ
スからの区間長として要求データ長rqLGを供給して
くる。例えばLBA「N」〜LBA「N+2」の3セク
ターのデータ転送要求は、要求スタートアドレスrqL
BA=N、要求データ長rqLG=3として供給される
ことになる。
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とされて管理されてい
る。
については、バファリングされた後、ホストコンピュー
タ側に転送される。一方、キャッシュメモリへのバファ
リング動作自体は、次のデータ転送要求が発生するか、
もしくはキャッシュメモリが一杯になるまで継続され
る。例えばキャッシュメモリが一杯になるまでバファリ
ングが継続されたとすると、図24のようにLBA
「N」〜LBA「N+7」までがキャッシュメモリに確
保された状態となる。
て、LBA「N+6」〜LBA「N+8」の3セクター
のデータ転送要求があったとする。つまり要求スタート
アドレスrqLBA=「N+6」、要求データ長rqL
G=3というコマンドが供給されたとする。
た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
ブロックが有効であるとする。
に対して確保していなかったLBA「N+8」について
は、キャッシュメモリの折り返しエリア(つまりエリア
#0)にバファリングし、ホストコンピュータへの転送
を行う。またLBA「N+8」以降も、将来の転送要求
に備えて、次のデータ転送要求発生もしくはキャッシュ
メモリが一杯になるまで継続してバファリングしてい
く。なお、有効セクター数VSNはデータ読出した後バ
ッファリングしてエラー訂正が完了した時点(つまり或
るセクターデータのバファリングが完了し有効データと
された時点)でカウントアップされる。図25のように
LBA「N+10」までのバファリングが完了した時点
では、有効セクター数VSN=5となる。
バファリングが行われることにより、シーケンシャルな
データ転送要求に対しては、ディスクアクセスを不要と
できる機会が多くなり、これによって平均的なアクセス
タイムを短縮できることが理解される。
ンピュータ側のアプリケーションの多様化等の事情によ
り、シーケンシャルリードだけでなく、例えばディスク
上で離れた2つの位置のデータセクターのデータを交互
に転送要求するような2ポイントリードや、さらにディ
スク上で離れたデータセクターのデータを順次転送要求
するランダムリードとしてのデータ要求も発生され、こ
のような場合もアクセスタイムの短縮化が求められる傾
向にある。そして上記のバファリング方式では、2ポイ
ントリードやランダムリードの際には、それらの際に要
求されたデータはバファリングされていないためキャッ
シュメモリでの先読み処理によるアクセスタイムの短縮
はできないという問題がある。
点に鑑みて、キャッシュメモリのバファリング形態を工
夫することで、例えば2ポイントリードやランダムリー
ドの場合でもアクセスタイムの高速化を実現できるよう
にすることを目的とする。
給されたデータ要求の要求態様を判断して、判断された
要求態様に基づいて、キャッシュメモリ手段へのデータ
格納動作方式(バファリング方式)を設定する。即ち、
要求態様がシーケンシャルなデータ要求でないと判断し
た場合は、キャッシュメモリ手段で複数のメモリ領域を
分割設定して、或るメモリ領域に対してデータ格納動作
を行なうようにする。つまり、連続したデータの読出で
なくとも、それまでのキャッシュメモリ内のデータを完
全にパージせず、領域毎に確保しておく。これにより2
ポイントリードなどの場合に、さらに次のデータ転送要
求時に確保しておいた(パージしなかった)領域のデー
タを有効利用できる。一方、要求態様がシーケンシャル
なデータ要求であると判断した場合は、キャッシュメモ
リ手段を1つのリングメモリ形態としてデータ格納動作
を行なうようにする。
光ディスクを記録媒体とする再生装置を説明していく。
この例の再生装置に装填される光ディスクは、例えばC
D−DA(COMPACT DISC DIGITAL AUDIO)、CD−RO
MなどのCD方式のディスクや、DVD(DIGITAL VERS
ATILE DISC/DIGITAL VIDEO DISC)と呼ばれるディスク
などが考えられる。もちろん他の種類の光ディスクに対
応するディスク再生装置でも本発明は適用できるもので
ある。
である。ディスク90は、ターンテーブル7に積載さ
れ、再生動作時においてスピンドルモータ1によって一
定線速度(CLV)もしくは一定角速度(CAV)で回
転駆動される。そしてピックアップ1によってディスク
90にエンボスピット形態や相変化ピット形態などで記
録されているデータの読み出しが行なわれることにな
る。ピックアップ1内には、レーザ光源となるレーザダ
イオード4や、反射光を検出するためのフォトディテク
タ5、レーザ光の出力端となる対物レンズ2、レーザ光
を対物レンズ2を介してディスク記録面に照射し、また
その反射光をフォトディテクタ5に導く光学系が形成さ
れる。対物レンズ2は二軸機構3によってトラッキング
方向及びフォーカス方向に移動可能に保持されている。
またピックアップ1全体はスレッド機構8によりディス
ク半径方向に移動可能とされている。
ィテクタ5によって検出され、受光光量に応じた電気信
号とされてRFアンプ9に供給される。RFアンプ9に
は、フォトディテクタ5としての複数の受光素子からの
出力電流に対応して電流電圧変換回路、マトリクス演算
/増幅回路等を備え、マトリクス演算処理により必要な
信号を生成する。例えば再生データであるRF信号、サ
ーボ制御のためのフォーカスエラー信号FE、トラッキ
ングエラー信号TEなどを生成する。RFアンプ9から
出力される再生RF信号は2値化回路11へ、フォーカ
スエラー信号FE、トラッキングエラー信号TEはサー
ボプロセッサ14へ供給される。
値化回路11で2値化されることでいわゆるEFM信号
(8−14変調信号;CDの場合)もしくはEFM+信
号(8−16変調信号;DVDの場合)とされ、デコー
ダ12に供給される。デコーダ12ではEFM復調,エ
ラー訂正処理等を行ない、また必要に応じてCD−RO
Mデコード、MPEGデコードなどを行なってディスク
90から読み取られた情報の再生を行なう。
タをデータバッファとしてのキャッシュメモリ20に蓄
積していき、このキャッシュメモリ20上でエラー訂正
処理等を行う。エラー訂正され適正な再生データとされ
た状態で、キャッシュメモリ20に格納された状態をバ
ファリングと呼び、本例ではこのバファリング動作に特
徴を有するものであるが、この点については後述する。
この再生装置からの再生出力としては、キャッシュメモ
リ20でバファリングされたデータが転送出力されるこ
とになる。
コンピュータと接続され、ホストコンピュータとの間で
再生データやリードコマンドの通信を行う。即ちキャッ
シュメモリ20に格納された再生データは、インターフ
ェース部13を介してホストコンピュータに転送出力さ
れる。またホストコンピュータからのリードコマンドそ
の他の信号はインターフェース部13を介してシステム
コントローラ10に供給される。
らのフォーカスエラー信号FE、トラッキングエラー信
号TEや、デコーダ12もしくはシステムコントローラ
10からのスピンドルエラー信号SPE等から、フォー
カス、トラッキング、スレッド、スピンドルの各種サー
ボドライブ信号を生成しサーボ動作を実行させる。即ち
フォーカスエラー信号FE、トラッキングエラー信号T
Eに応じてフォーカスドライブ信号、トラッキングドラ
イブ信号を生成し、二軸ドライバ16に供給する。二軸
ドライバ16はピックアップ1における二軸機構3のフ
ォーカスコイル、トラッキングコイルを駆動することに
なる。これによってピックアップ1、RFアンプ9、サ
ーボプロセッサ14、二軸ドライバ16、二軸機構3に
よるトラッキングサーボループ及びフォーカスサーボル
ープが形成される。
ータドライバ17に対して、スピンドルエラー信号SP
Eに応じて生成したスピンドルドライブ信号を供給す
る。スピンドルモータドライバ17はスピンドルドライ
ブ信号に応じて例えば3相駆動信号をスピンドルモータ
6に印加し、スピンドルモータ6のCLV回転を実行さ
せる。またサーボプロセッサ14はシステムコントロー
ラ10からのスピンドルキック/ブレーキ制御信号に応
じてスピンドルドライブ信号を発生させ、スピンドルモ
ータドライバ17によるスピンドルモータ6の起動また
は停止などの動作も実行させる。
ングエラー信号TEの低域成分として得られるスレッド
エラー信号や、システムコントローラ10からのアクセ
ス実行制御などに基づいてスレッドドライブ信号を生成
し、スレッドドライバ15に供給する。スレッドドライ
バ15はスレッドドライブ信号に応じてスレッド機構8
を駆動する。スレッド機構8には図示しないが、ピック
アップ1を保持するメインシャフト、スレッドモータ、
伝達ギア等による機構を有し、スレッドドライバ15が
スレッドドライブ信号に応じてスレッドモータ8を駆動
することで、ピックアップ1の所要のスライド移動が行
なわれる。
4はレーザドライバ18によってレーザ発光駆動され
る。システムコントローラ10はディスク90に対する
再生動作を実行させる際に、レーザパワーの制御値をオ
ートパワーコントロール回路19にセットし、オートパ
ワーコントロール回路19はセットされたレーザパワー
の値に応じてレーザ出力が行われるようにレーザドライ
バ18を制御する。
は、記録データに応じて変調された信号がレーザドライ
バ18に印加される。例えば記録可能タイプのディスク
90に対して記録を行う際には、ホストコンピュータか
らインターフェース部13に供給された記録データは図
示しないエンコーダによってエラー訂正コードの付加、
EFM+変調などの処理が行われた後、レーザドライバ
18に供給される。そしてレーザドライバ18が記録デ
ータに応じてレーザ発光動作をレーザダイオード4に実
行させることで、ディスク90に対するデータ記録が実
行される。
ードなどの各種動作はマイクロコンピュータによって形
成されたシステムコントローラ10により制御される。
例えば一連の再生動作制御としては、システムコントロ
ーラ10はホストコンピュータからのリードコマンドに
応じて、要求されたデータ区間の読出を行うための動作
として、サーボプロセッサ14に指令を出し、リードコ
マンドにより転送要求されたデータ区間として転送要求
開始位置をターゲットとするピックアップ1のシーク動
作を実行させる。そして詳しくは後述するが、シーク終
了後、転送要求開始位置から転送要求終了位置までのデ
ータ区間の全部又は一部の読出を実行させ、デコーダ1
2、データバッファ20に必要な処理を実行させ、転送
要求開始位置から転送要求終了位置までの再生データ
(要求されたデータ)をインターフェース部13からホ
ストコンピュータに転送させる制御を行う。
ンド、即ち転送要求としては、要求するデータ区間の最
初のアドレスとなる要求スタートアドレスrqLBA
と、その最初のアドレスからの区間長として要求データ
長rqLGとなる。例えば要求スタートアドレスrqL
BA=N、要求データ長rqLG=3という転送要求
は、LBA「N」〜LBA「N+2」の3セクターのデ
ータ転送要求を意味する。
ピュータからのリードコマンド発生した際の読出/バフ
ァリング/転送処理について説明していく。システムコ
ントローラ10は、リードコマンドに応じて、要求され
たデータをホストコンピュータに転送すべく、必要な動
作としてディスク90からの読出及びデコード、キャッ
シュメモリ20へのバファリング、転送、さらに状況に
応じて続くデータのバファリング等を行うことになる
が、特にバファリングに関する動作方式を決定するため
に、データ要求がどのような態様の要求であるかを判断
する。具体的には、連続的なデータセクターを順次転送
要求するようなシーケンシャルリードであるか、ディス
ク90の2つの離れた地点での各データを交互に要求す
るような2ポイントリードであるか、もしくは全くラン
ダムな地点のデータを順次要求するランダムリードであ
るかを判断する。
て、キャッシュメモリ20へのバファリング方式を設定
する。転送要求態様に応じた具体的なバファリング動作
例は図3以降で説明して行くが、要求態様の判断に応じ
たバファリング方式とは次のようになる。
か、2ポイントリードか、ランダムリードかを区別す
る。そしてシーケンシャルリードの場合は、キャッシュ
メモリ20を1つのリングメモリとして用い、転送要求
された必要なデータのバファリング、及びそのデータに
続くデータの先読みとしてのバファリングを行う。この
先読みバファリングは、キャッシュメモリ20が一杯と
なるまでか、もしくは次の転送要求が発生されるまで行
われる。これにより引き続きシーケンシャルリードとし
ての転送要求があった場合にキャッシュヒット転送でき
る確率を高くする。
ャッシュメモリ20を2つのセグメントSG1、SG2
に分割し、それぞれをセグメントバッファとして用い
る。つまり、転送要求されるであろう2つの箇所につい
てそれぞれバファリングデータを有効としておき、例え
ばディスク90上の2つの箇所のデータが交互に転送要
求されるような場合に、それぞれキャッシュヒット転送
できる確率を高くする。なお、2つのセグメントSG
1、SG2の分割点(キャッシュメモリ20内のエリア
の分割点)は固定的なものではなく(但し固定的なもの
としてもよいが)、後述する各種パラメータ(LBAm
1、PLBAm1、VSN1、TSN1、LBAm2、
PLBAm2、VSN2、TSN2)によってフレキシ
ブルに設定される。
リ20を、その転送要求発生毎にセグメント分割して使
用していく。つまり、転送要求発生時に、その時点でキ
ャッシュメモリ20にバファリングされているデータ
(それ以前のランダムリードに応じてバファリングされ
たデータ)を無効とせずに残しておき、新たにセグメン
ト分割して今回のランダムリードに関してバファリング
を行っていく。もちろんキャッシュメモリ20の容量に
より以前のバファリングデータを残しておくことには限
界があるが、できるだけ残しておくことにより、その後
のランダムリードでキャッシュヒット転送ができる可能
性を残しておく。
るために、ホストコンピュータからのデータ転送要求が
発生した際には、システムコントローラ10は、その転
送要求が上記シーケンシャルリード、2ポイントリー
ド、ランダムリードのいずれであると考えられるかを判
断する。この判断処理を示したものが図2のフローチャ
ートである。
20に何もバファリングされていない状態において、ホ
ストコンピュータからデータ転送要求が発生した場合
は、当然ながらキャッシュヒット転送はあり得ない。図
2のステップF101,F102ではキャッシュメモリ
20の2つのセグメントSG1、SG2でのヒット有無
を判断しているが、初期状態においてはこれらは否定結
果が得られ、ステップF111で内部カウンタとしての
カウント値C1をインクリメントする。カウント値C1
とはランダムリードの判断を行うためのカウンタであ
り、このカウント値C1が特定の値Cthに達するまで
は、ステップF112からF114に進む。
のカウント値C2のインクリメントを行う。カウント値
C2は、キャッシュメモリ20をセグメントバッファと
して用いる際の2つのセグメントSG1、SG2のうち
で、バファリングを行っていくセグメントを選択するた
めの変数となる。即ちステップF115において、カウ
ント値C2が例えば奇数である場合はステップF116
で、キャッシュメモリ20内のセグメントSG1が用い
られてバファリング及び転送要求に応じた転送動作が行
われ、一方、カウント値C2が偶数である場合はステッ
プF117で、キャッシュメモリ20内のセグメントS
G2が用いられてバファリング及び転送要求に応じた転
送動作が行われるように設定される。
ットしておらず、しかもランダムリードと判断されてい
ない時点においては、キャッシュメモリ20が2つの領
域に分割されて設定されるセグメントSG1、SG2が
交互に用いられることになる。ステップF116もしく
はF117でのバファリングは、セグメントSG1もし
くはSG2が一杯になるか、もしくは次のデータ転送要
求が発生するまで行われる。但し次のデータ転送要求が
キャッシュヒット転送のみで完了できた場合はバファリ
ングがそのまま継続される場合もある。
2のが用いられてバファリングが行われた後において、
ホストコンピュータからデータ転送要求があった場合
は、その転送要求されたデータがセグメントSG1に格
納されているデータとして存在し、即ちセグメントSG
1においてキャッシュヒットする場合があり、または同
じくセグメントSG2においてキャッシュヒットする場
合もある。
場合は、処理はステップF101からF103に進み、
カウント値C1をクリアする。そしてステップF104
で、その前回のデータ転送要求にかかるデータがセグメ
ントSG1からの転送によってホストコンピュータ側に
出力されていたか否かを判断する。ここで、前回のデー
タ要求がセグメントSG1からの転送により出力されて
いた場合とは、ホストコンピュータが連続して、ディス
ク上の連続するセクター(もしくは多少不連続であって
もバファリングによりカバーできる範囲のセクター)を
転送要求してきた場合であり、つまりホストコンピュー
タがシーケンシャルリードとしてのデータ要求を行って
きた場合と判断できる。
み、キャッシュヒット転送を行うとともに、要求されて
いるデータのうちでキャッシュヒット転送できなかった
部分があれば、そのデータ読出/バファリング/転送を
行い、さらにその後もシーケンシャルリードが行われる
可能性が高いと判断して、要求された区間以降のセクタ
ーについても引き続きバファリングを行っていく。しか
もこのときのバファリングは、セグメントSG1、SG
2の区分をなくし、つまり要求されたデータの先頭のデ
ータセクターを格納したエリアを始点として、キャッシ
ュメモリ20全体をリングメモリ形態に使用して実行し
ていくことになる(キャッシュメモリ20の全領域をセ
グメントSG1とする)。換言すれば、この時点で、そ
れまでセグメントSG2として確保されていたデータは
無効とされ、そのエリアは今回のバファリングに用いら
れる。従って、その次のデータ転送要求が同じくシーケ
ンシャルリードであった場合は、キャッシュヒット転送
できる確率は高くなる(その場合も処理はステップF1
05に進み、引き続きキャッシュメモリ20は1つのリ
ングメモリ形態でバファリングされていく)。この先読
みバファリングはキャッシュメモリ20が一杯になる
か、もしくは次のデータ転送要求が発生するまで行われ
る。但し次のデータ転送要求がキャッシュヒット転送の
みで完了できた場合はバファリングがそのまま継続され
る場合もある。
合は、シーケンシャルリードとはいえないが、例えばこ
のときセグメントSG1でヒットしたデータは、前々回
のデータ転送要求に関してバッファリングされたデータ
と考えられるため、2ポイントリードと判断してよい。
そこでステップF106に進み、キャッシュヒット転送
を行うとともに、要求されているデータのうちでキャッ
シュヒット転送できなかった部分があれば、そのデータ
読出/バファリング/転送を行い、さらにその後も2ポ
イントリードもしくはシーケンシャルリードが行われる
可能性を考えて、要求された区間以降のセクターについ
ても引き続きバファリングを行っていく。ただしこのと
きのバファリングは、セグメントSG2のデータについ
てはそのまま有効データとして残しておき、つまりセグ
メントSG1、SG2の区分を残したまま、セグメント
SG1における要求されたデータの先頭のデータセクタ
ーを格納したエリアを始点としてセグメントSG1内で
実行していくことになる。なお、このバファリングはセ
グメントSG1内が一杯になるか、もしくは次のデータ
転送要求が発生するまで行われる。但し次のデータ転送
要求がキャッシュヒット転送のみで完了できた場合はバ
ファリングがそのまま継続される場合もある。また、セ
グメントSG2内で無効なデータ存在する場合などは、
セグメントの区分点を変更する(例えばセグメントSG
1がセグメントSG2の一部に食い込んでいくように拡
張する)場合もある。
のデータ転送要求では他方のセグメントSG2でキャッ
シュヒットする可能性が高い。このため、このようにセ
グメントSG2のデータを有効として残しておくこと
で、次のデータ転送要求時にキャッシュヒット転送でき
る確率を高くすることができる。
あった場合に、セグメントSG2においてキャッシュヒ
ットしたときは、処理はステップF102からF107
に進み、カウント値C1をクリアする。そしてステップ
F108で、その前回のデータ転送要求にかかるデータ
がセグメントSG2からの転送によってホストコンピュ
ータ側に出力されていたか否かを判断する。
G2からの転送により出力されていた場合とは、上述し
たステップF104での判断の場合と同様に、ホストコ
ンピュータがシーケンシャルリードとしてのデータ要求
を行ってきた場合と判断できる。そこで、その場合はス
テップF109に進み、キャッシュヒット転送を行うと
ともに、要求されているデータのうちでキャッシュヒッ
ト転送できなかった部分があれば、そのデータ読出/バ
ファリング/転送を行い、さらにその後もシーケンシャ
ルリードが行われる可能性が高いと判断して、要求され
た区間以降のセクターについても引き続きバファリング
を行っていく。しかもこのときのバファリングは、セグ
メントSG1、SG2の区分をなくし、つまり要求され
たデータの先頭のデータセクターを格納したエリアを始
点として、キャッシュメモリ20全体をリングメモリ形
態に使用して実行していくことになる(キャッシュメモ
リ20の全領域をセグメントSG2とする)。換言すれ
ば、この時点で、それまでセグメントSG1として確保
されていたデータは無効とされ、そのエリアは今回のバ
ファリングに用いられる。従って、その次のデータ転送
要求が同じくシーケンシャルリードであった場合は、キ
ャッシュヒット転送できる確率は高くなる(その場合も
処理はステップF109に進み、引き続きキャッシュメ
モリ20は1つのリングメモリ形態でバファリングされ
ていく)。この先読みバファリングはキャッシュメモリ
20が一杯になるか、もしくは次のデータ転送要求が発
生するまで行われる。但し次のデータ転送要求がキャッ
シュヒット転送のみで完了できた場合はバファリングが
そのまま継続される場合もある。
合は、シーケンシャルリードとはいえないが、今回セグ
メントSG2でヒットしたデータは、例えば前々回のデ
ータ転送要求に関してバッファリングされたデータと考
えられるため、2ポイントリードと判断してよい。そこ
でステップF110に進み、キャッシュヒット転送を行
うとともに、要求されているデータのうちでキャッシュ
ヒット転送できなかった部分があれば、そのデータ読出
/バファリング/転送を行い、さらにその後も2ポイン
トリードもしくはシーケンシャルリードが行われる可能
性を考えて、要求された区間以降のセクターについても
引き続きバファリングを行っていく。ただしこのときの
バファリングは、セグメントSG1のデータについては
そのまま有効データとして残しておき、つまりセグメン
トSG1、SG2の区分を残したまま、セグメントSG
2における要求されたデータの先頭のデータセクターを
格納したエリアを始点としてセグメントSG1内で実行
していくことになる。このバファリングはセグメントS
G2内が一杯になるか、もしくは次のデータ転送要求が
発生するまで行われる。但し次のデータ転送要求がキャ
ッシュヒット転送のみで完了できた場合はバファリング
がそのまま継続される場合もある。またセグメントSG
1内で無効なデータ存在する場合などは、セグメントの
区分点を変更する(例えばセグメントSG2がセグメン
トSG1の一部に食い込んでいくように拡張する)場合
もある。
のデータ転送要求では他方のセグメントSG1でキャッ
シュヒットする可能性が高い。このため、このようにセ
グメントSG1のデータを有効として残しておくこと
で、次のデータ転送要求時にキャッシュヒット転送でき
る確率を高くすることができる。
回か連続してキャッシュヒットしなかった場合は、その
度にステップF111でカウント値C1のインクリメン
トが行われ、しかもステップF103又はF107でカ
ウント値C1がクリアされないため、ある時点でステッ
プF112でカウント値C1が特定値Cthに達したと
判断される。つまりこの場合は、連続したデータ転送要
求がそれぞれディスク上の異なる地点のデータセクター
を要求してきた場合であり、ランダムリードとして判断
してよい。これは、それまで何度かセグメントSG1、
SG2を交互に使用してバファリングを行ってきたが、
結局2ポイントリードでなかったために、セグメント分
割して行ったバファリングによる効果(即ちキャッシュ
ヒット転送)が得られなかった場合である。
合は、ステップF113に進み、ランダムリードに対応
するバファリングを行うことになる。図2では特に詳し
く示していないが、ランダムリードとしてのバファリン
グとしては、まず、ランダムリードと判断された最初の
時点(つまりカウント値C1=CthでステップF11
3に進んだ場合)では、それまでセグメントSG1、S
G2としてバファリングされているデータ、もしくはリ
ングメモリ形態で用いられてバファリングされているデ
ータを、一旦全てパージする。そして、新たにキャッシ
ュメモリ20の例えば最初のエリアから転送要求された
データにかかるバファリングを行っていく。このバファ
リングは、次のデータ転送要求が発生するか、予め設定
された所定量の先読みバファリングが完了するまで行わ
れる。
ヒットしなければ、引き続きランダムリードと判断され
てステップF113に進むが(カウント値C1>Cth
でステップF113に進んだ場合)、そのように連続的
にランダムリードと判断される2回目以降は、その時点
でキャッシュメモリ20内に確保されているデータをパ
ージせず、その部分を1つのセグメントとして分割した
上で、続くエリアから今回の転送要求されたデータにか
かるバファリングを行っていく。このバファリングも、
次のデータ転送要求が発生するか、予め設定された所定
量の先読みバファリングが完了するまで行われる。
それ以前のランダムリードの際のバファリングデータ
を、それぞれ1つのセグメントとして残しておいてバフ
ァリングを行う。従ってランダムリードが連続して発生
するたびに、セグメント分割数が増えていく。但し、キ
ャッシュメモリ20の容量と、実行されるバファリング
データ量により、もちろんセグメント分割数限界はある
ため、多数回ランダムリードが行われて、キャッシュメ
モリ20が多数のセグメントで一杯になった場合は、一
番古いセグメントが無効化されて、新たなランダムリー
ドにかかるバファリングが行われるようにすればよい。
きるだけバファリングしたデータを有効データとして残
しておくことで、その後キャッシュヒットされる可能性
を残しておくことができる。例えばその後のデータ転送
要求の際にあるセグメントにヒットした場合は、そのヒ
ットしたデータを基準にしてセグメントSG1を設定し
(例えばそのセグメントを拡張してバファリングしてい
ってセグメントSG1とし、残りをセグメントSG2と
する)、ステップF101〜F106の処理で、その後
の2ポイントリードもしくはシーケンシャルリードに対
応できるようにすればよい。つまりそれ以降に2ポイン
トリードもしくはシーケンシャルリードが発生した場合
に、上述した方式でのバファリングにより、キャッシュ
ヒット転送できる可能性を高くする。
断結果に応じてキャッシュメモリ20のバファリング方
式を設定していくことによって実現される具体的な動作
例を以下説明していく。
一部を示したもので、図示するように、具体例として
〜に示すように各セクターのデータ転送要求が順次発
生された場合を説明していく。即ち、ホストコンピュー
タからのデータ転送要求として次のような要求があった
場合である。
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セクターのデー
タ転送要求。
ータ転送要求の後に、データ転送要求として、要求
スタートアドレスrqLBA=M、要求データ長rqL
G=3として、LBA「M」、LBA「M+1」、LB
A「M+2」の3セクターのデータ転送要求があった場
合についても述べる。
トリセット/ハードリセットされた後のキャッシュメモ
リ20の初期状態を図4に示す。説明上、キャッシュメ
モリ20はエリア#0〜#7の8ブロック(セクター)
分の容量を持つものとする。キャッシュメモリ20の状
態を管理するパラメータとして、先頭アドレスLBA
m、ポインタPLBAm、有効セクター数VSN、転送
済セクター数TSNという内部パラメータが使用される
が、これらのパラメータの値は生成されるセグメントに
応じて設定される。
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の状態とな
る。
前回にホストコンピュータから要求のあったスタートセ
クターのLBAの値とされ、これは各セグメント内に格
納されている有効セクターの最小LBAとなる。またポ
インタPLBAm1、PLBAm2は、先頭アドレスL
BAm1又はLBAm2が格納されている各セグメント
でのエリアを示すポインタとなる。有効セクター数VS
N1、VSN2は、先頭アドレスLBAm1又はLBA
m2を基準として、そこからどれだけ連続したデータセ
クターが各セグメントに確保されているかを示す値とな
る。さらに転送済セクター数TSN1、TSN2は、既
に各セグメントからホストコンピュータ側に転送された
データセクターの数を示す値となる。
シュメモリ20内には有効データは存在しない。そして
各パラメータである、先頭アドレスLBAm1、ポイン
タPLBAm1、有効セクター数VSN1、転送済セク
ター数TSN1、及び先頭アドレスLBAm2、ポイン
タPLBAm2、有効セクター数VSN2、転送済セク
ター数TSN2は、全て初期値とされる。
rqLBA=M、要求データ長rqLG=2のデータ転
送要求が発生したとする。この場合、要求されたLBA
「M」、LBA「M+1」は、当然ながらキャッシュヒ
ットせず、処理は図2のステップF115に進み、カウ
ント値C2=1で奇数であるためステップF116の処
理が行われることになる。つまりセグメントSG1とし
てエリア#0〜#3が設定され、このセグメントSG1
にバファリングされていく。
は、要求された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が一杯になるまでのバ
ファリングが完了する前に次のデータ転送要求があった
場合は、バファリングが中断されることもある。
れたLBA「M」、LBA「M+1」のデータは、ホス
トコンピュータに転送される。
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が行われたことになる。
レスLBAm2=N、ポインタPLBAm2=4、有効
セクター数VSN2=4、転送済セクター数TSN2=
0として管理される。なお、セグメントSG2が一杯に
なるまでのバファリングが完了する前に次のデータ転送
要求があった場合は、バファリングが中断されることも
ある。
れたLBA「N」、LBA「N+1」のデータは、ホス
トコンピュータに転送される。
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の各パラメ
ータと同値とされる。
後のシーケンシャルリードに備えて引き続きバファリン
グされていく。ディスク90上でみれば、図3における
読出動作RD3が行われたことになる。例えば図8のよ
うにLBA「N+7」までがバファリングされる。バフ
ァリングが進行するに従って有効セクター数VSNは更
新されるため、図8の状態で有効セクター数VSN2=
6となる。
ス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が行われたことにな
る。
+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」のデータは、ホ
ストコンピュータに転送される。
して、要求スタートアドレス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」のデータ
は、ホストコンピュータに転送される。
例では以上の例のように、そのときのデータ転送要求の
態様に応じてキャッシュメモリ20へのバファリング方
式が変更される。そしてこれにより、キャッシュヒット
転送できる可能性を高くしているものである。
となる具体例の1つを説明する。例えば図11に(i)
〜(Viii)として示すように、2つの地点のセクターを順
次交互に要求するような、2ポイントリードとなる8回
のデータ転送要求が発生した場合を考える。
ァリング方式(図22〜図25で説明したバファリング
方式)を行った際に必要となるディスク90でのデータ
アクセス動作を示している。この場合、キャッシュヒッ
トしなかった場合は、その都度キャッシュメモリをパー
ジして行くことになるため、(i)〜(Viii)のような2
ポイントリードに関しては、全くキャッシュヒット転送
ができず、従って図示するように、全てのデータ転送要
求に対応して破線矢印のアクセス動作と実線矢印の読出
動作が必要となってしまう。即ち、キャッシュメモリで
の先読み動作がアクセスタイムの短縮化に寄与できない
ものとなっている。
ポイントリードがあった場合には、図12に示すよう
に、読出動作RD11〜RD14及びアクセス動作AC
11〜AC14を行えばよく、図11と比較して、ディ
スク90に対するアクセスが非常に効率化されることが
わかる。この図12のような効率的なアクセスを実現す
るためのバファリング動作を図13〜図20で説明す
る。
記(i)の、要求スタートアドレスrqLBA=M、要
求データ長rqLG=1のデータ転送要求が発生したと
する。この場合、当然ながらキャッシュヒットせず、図
2のステップF116の処理が行われることになり、セ
グメントSG1としてエリア#0〜#3が設定され、図
13のようにLBA「M」以降が、セグメントSG1に
バファリングされていく。ディスク90上では図12の
アクセスAC11及び読出動作RD11が行われたこと
になる。バファリングされたデータのうち、要求された
LBA「M」のデータは、ホストコンピュータに転送さ
れる。
ングが完了した時点で、図12の(ii)の、次のデータ転
送要求があったとする。即ち要求スタートアドレスrq
LBA=N、要求データ長rqLG=1のデータ転送要
求である。この場合、図13の格納状態からわかるよう
に要求されたLBA「N」は、キャッシュヒットせず、
処理は図2のステップF117に進む。つまり図14に
示すようにセグメントSG1でのバファリングは停止さ
れ、セグメントSG2としてのエリア#4〜#7にLB
A「N」以降がバファリングされていく。バファリング
されたデータのうち、要求されたLBA「N」のデータ
は、ホストコンピュータに転送される。
がバファリングされた図14の時点で、次に図12の(i
ii) のデータ転送要求があったとする。即ち要求スター
トアドレスrqLBA=M+1、要求データ長rqLG
=1のデータ転送要求である。ところがこの場合、要求
されたデータLBA「M+1」は、セグメントSG1に
おいてキャッシュヒットされることになる。そこで、図
15に示すように、ステップF106においてLBA
「M+1」がキャッシュヒット転送される。また、図2
の説明では、フローチャート上では詳しく説明せず、但
し書きのみで述べたが、この場合キャッシュヒット転送
のみで転送が完了したため、上記(ii)の転送要求の際に
開始されたバファリングは中断されず、そのまま継続さ
れることになる。図2のフローチャート上でいえば、そ
の直前のステップF117でのバファリングが継続さ
れ、今回のステップF106の処理はキャッシュヒット
転送のみとなる。
1」がキャッシュヒット転送された後も、セグメントS
G2においてLBA「N+2」以降のバファリングが行
われている。
あったとする。即ち要求スタートアドレスrqLBA=
N+1、要求データ長rqLG=1のデータ転送要求で
ある。この場合、要求されたデータLBA「N+1」
は、セグメントSG2においてキャッシュヒットされる
ことになる。そこで、図2のステップF110の処理に
おいて図16に示すようにLBA「N+1」がキャッシ
ュヒット転送される。また、この場合もキャッシュヒッ
ト転送のみで転送が完了したため、上記(ii)の転送要求
の際に開始されたバファリングは中断されず、そのまま
継続される。
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」のデータ
は、ホストコンピュータに転送される。
われている図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」以
降のバファリングが行われている。
があったとする。即ち要求スタートアドレスrqLBA
=M+3、要求データ長rqLG=1のデータ転送要求
である。この場合、要求されたデータLBA「M+3」
は、セグメントSG1においてキャッシュヒットされる
ことになる。そこで、図2のステップF106の処理に
おいて図19に示すようにLBA「M+3」がキャッシ
ュヒット転送される。また、この場合もキャッシュヒッ
ト転送のみで転送が完了したため、上記( V) の転送要
求の際に開始されたセグメントSG1へのバファリング
は中断されず、そのまま継続される。
がバファリングが完了された時点で、図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」のデータは、ホス
トコンピュータに転送される。
2ポイントリードの場合はセグメントバッファとして用
いられるキャッシュメモリ20が非常に効果的に利用さ
れて、キャッシュヒット転送できる機会が多くなってい
る。つまり本例では、キャッシュメモリ20を有効利用
したアクセスタイムの短縮化が、データ転送要求が2ポ
イントリードであっても効果的に実現されることにな
る。
のステップF113に進む場合のバファリング動作につ
いて図21で説明する。上述したようにランダムリード
と判断された最初の時点では、それまでセグメントSG
1、SG2としてバファリングされているデータ、もし
くはリングメモリ形態で用いられてバファリングされて
いるデータを、一旦全てパージする。そして、新たにキ
ャッシュメモリ20の例えば最初のエリアから転送要求
されたデータにかかるバファリングを行っていくため、
例えばLBA「X」のデータ転送要求があったとする
と、図21(a)のようにエリア#0からLBA「X」
以降のバファリングを行うとともに、要求されたLBA
「X」のデータを転送する。
あって、同じくランダムリードと判断され図12のステ
ップF113に進んだ場合は、図21(b)のようにそ
の時点でキャッシュメモリ20内に確保されているデー
タに続いて、異なるセグメントとして、LBA「N+
5」以降のバファリングを行うとともに、要求されたL
BA「N+5」のデータを転送する。さらに次のデータ
転送要求がLBA「Y」であって、同じくランダムリー
ドと判断され図12のステップF113に進んだ場合
は、図21(c)のようにその時点でキャッシュメモリ
20内に確保されているデータに続いて、さらに異なる
セグメントとして、LBA「Y」以降のバファリングを
行うとともに、要求されたLBA「Y」のデータを転送
する。
ファリングデータ毎にセグメントを設定して、その過去
のバファリングデータを無効化しないようにする。つま
りランダムリードとしてのデータ転送要求が連続的に発
生する毎に、それまでのバファリングデータを保持した
まま、新たなバファリングデータを詰め込んでいく。こ
のようにバファリングを行うことで、過去にバファリン
グしたデータを最大限に生かすことができ、ランダムリ
ードであったとしてもキャッシュヒット転送できる可能
性を維持できることになる。そしてその結果キャッシュ
ヒット転送が実現される場合が発生することで、アクセ
スタイムの短縮化を実現できる。
発明としては再生装置の構成やバファリング動作につい
て各種の変形例が考えられる。バファリング動作として
は、図2の処理例に限定されず、想定される要求態様に
応じて、キャッシュヒット転送回数を増やすことができ
るような効率的なバファリングが行われるようにすれば
よいものである。
れたデータ要求の要求態様を判断して、判断された要求
態様に基づいて、キャッシュメモリ手段へのデータ格納
動作方式(バファリング方式)を設定するため、要求形
態に応じたフレキシブルな対応により、キャッシュメモ
リ手段内のデータをできるだけ有効化することができ
る。特に、データ要求態様がシーケンシャルなデータ要
求でないと判断した場合は、キャッシュメモリ手段で複
数のメモリ領域を分割設定して、或るメモリ領域に対し
てデータ格納動作を行なうようにする。つまり、連続し
たデータの読出でなくとも、ぞれまでのキャッシュメモ
リ内を完全にパージせず、領域毎に確保しておく。これ
により2ポイントリードなどの場合に、さらに次のデー
タ転送要求時に確保しておいた(パージしなかった)領
域のデータを有効利用できる。つまりキャッシュヒット
転送できる。またランダムリードの場合でも、できるだ
け過去のバファリングデータを領域分割して確保してお
くことで、キャッシュヒット転送できる可能性を残して
おくことができる。一方、要求態様がシーケンシャルな
データ要求であると判断した場合は、キャッシュメモリ
手段を1つのリングメモリ形態としてデータ格納動作を
行なうようにすることで、キャッシュメモリ手段の容量
を有効利用し、キャッシュヒット転送の確率を高めるこ
とができる。
の判別に応じて、キャッシュメモリ手段へのデータ格納
動作方式を切り換えることで、それぞれの態様に応じた
最適なキャッシュメモリ手段の使用状態を実現できる。
例えば2ポイントリードであれば、キャッシュメモリ手
段を2つのメモリ領域に分割しておくことで、2ポイン
トリードの際にキャッシュヒット転送できる確率が高く
なり、またランダムリードの場合はメモリ領域の分割数
を増やしていくことで、キャッシュヒット転送の確率を
高めることができる。
様においてキャッシュメモリ手段へのバファリング方式
を設定し、それぞれキャッシュヒット転送できる確率を
高くすることで、データ転送要求時のディスク等の記録
媒体へのアクセス回数を効果的に削減し、平均的なアク
セスタイムを短縮できるという効果がある。さらに、こ
のような処理の実現にはいわゆる再生装置のファームウ
エアを工夫すればよく、ハードウエア構成を変える必要
がないという利点もある。
ある。
式判別処理のフローチャートである。
明図である。
る。
る。
る。
る。
る。
る。
の説明図である。
の説明図である。
ング動作の説明図である。
ング動作の説明図である。
ング動作の説明図である。
ング動作の説明図である。
ング動作の説明図である。
ング動作の説明図である。
ング動作の説明図である。
ング動作の説明図である。
グ動作の説明図である。
レーザダイオード、5 フォトディテクタ、6 スピ
ンドルモータ、8 スレッド機構、9 RFアンプ、1
0 システムコントローラ、13 インターフェース
部、14 サーボプロセッサ、20 キャッシュメモ
リ、90 ディスク、
Claims (4)
- 【請求項1】 記録媒体からデータを読み出すことので
きる読出手段と、 前記読出手段により読み出したデータを格納するキャッ
シュメモリ手段と、 データ要求に応じて前記読出手段及び/又は前記キャッ
シュメモリ手段の動作を制御して、要求されたデータの
前記キャッシュメモリ手段からの転送出力を実行させる
再生制御手段とを備え、 前記再生制御手段は、供給された前記データ要求の要求
態様を判断して、判断された要求態様に基づいて、前記
キャッシュメモリ手段へのデータ格納動作方式を設定す
ることを特徴とする再生装置。 - 【請求項2】 前記再生制御手段は、前記要求態様がシ
ーケンシャルなデータ要求でないと判断した場合は、前
記キャッシュメモリ手段で複数のメモリ領域を分割設定
して、或るメモリ領域に対してデータ格納動作を行なう
ようにし、一方、前記要求態様がシーケンシャルなデー
タ要求であると判断した場合は、前記キャッシュメモリ
手段を1つのリングメモリ形態としてデータ格納動作を
行なうようにすることを特徴とする請求項1に記載の再
生装置。 - 【請求項3】 前記再生制御手段は、前記要求態様がシ
ーケンシャルなデータ要求でないと判断する場合におい
て、その要求態様が2地点交互となるデータ要求か、ラ
ンダムなデータ要求かを判別し、その判別結果に応じて
前記キャッシュメモリ手段へのデータ格納動作方式を切
り換えることを特徴とする請求項2に記載の再生装置。 - 【請求項4】 供給されたデータ要求の要求態様がシー
ケンシャルなデータ要求であるか否かを判別し、 シーケンシャルなデータ要求と判別した場合は、キャッ
シュメモリを1つのリングメモリ形態としてデータ格納
動作を行ない、一方、シーケンシャルなデータ要求では
ないと判別した場合は、キャッシュメモリを複数のメモ
リ領域を分割設定して、或るメモリ領域に対してデータ
格納動作を行なうようにすることを特徴とするキャッシ
ュ処理方法。
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)
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)
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)
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 | 松下電器産業株式会社 | 情報記録再生装置およびデータキャッシュ方法 |
-
1997
- 1997-11-06 JP JP9304034A patent/JPH11143643A/ja active Pending
-
1998
- 1998-11-02 US US09/184,822 patent/US6279076B1/en not_active Expired - Fee Related
Cited By (21)
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 |