JP3687115B2 - 再生装置 - Google Patents

再生装置 Download PDF

Info

Publication number
JP3687115B2
JP3687115B2 JP26420294A JP26420294A JP3687115B2 JP 3687115 B2 JP3687115 B2 JP 3687115B2 JP 26420294 A JP26420294 A JP 26420294A JP 26420294 A JP26420294 A JP 26420294A JP 3687115 B2 JP3687115 B2 JP 3687115B2
Authority
JP
Japan
Prior art keywords
data
transfer
request
extended
read
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.)
Expired - Fee Related
Application number
JP26420294A
Other languages
English (en)
Other versions
JPH08123731A (ja
Inventor
聡 木谷
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 JP26420294A priority Critical patent/JP3687115B2/ja
Priority to US08/548,273 priority patent/US5625792A/en
Priority to MYPI95003233A priority patent/MY115445A/en
Priority to KR1019950037462A priority patent/KR100366142B1/ko
Publication of JPH08123731A publication Critical patent/JPH08123731A/ja
Application granted granted Critical
Publication of JP3687115B2 publication Critical patent/JP3687115B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/02Control of operating function, e.g. switching from recording to reproducing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B19/00Driving, starting, stopping record carriers not specifically of filamentary or web form, or of supports therefor; Control thereof; Control of operating function ; Driving both disc and head
    • G11B19/20Driving; Starting; Stopping; Control thereof
    • G11B19/24Arrangements for providing constant relative speed between record carrier and head
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • 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
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/213Read-only discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/21Disc-shaped record carriers characterised in that the disc is of read-only, rewritable, or recordable type
    • G11B2220/215Recordable discs
    • G11B2220/216Rewritable discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2525Magneto-optical [MO] discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2545CDs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B7/00Recording or reproducing by optical means, e.g. recording using a thermal beam of optical radiation by modifying optical properties or the physical structure, reproducing using an optical beam at lower power by sensing optical properties; Record carriers therefor
    • G11B7/002Recording, reproducing or erasing systems characterised by the shape or form of the carrier
    • G11B7/0037Recording, reproducing or erasing systems characterised by the shape or form of the carrier with discs

Description

【0001】
【産業上の利用分野】
本発明は、円盤状記録媒体、例えばCD−ROMや相変化型光ディスク並びに光磁気ディスクに対して情報データの再生を行なう再生装置に関し、特に円盤状記録媒体から再生された情報データを一時的に保持して外部に接続された例えばホストコンピュータに転送するようにした再生装置に関する。
【0002】
【従来の技術】
近時、コンピュータを利用したデータ処理において、大容量のデータを扱うことができる補助記憶装置の利用が不可欠となっている。特に、画像データや音声データ並びに辞書データ等を扱ったデータ処理においては、予め決められた背景画像やアイコン画像又はキャラクタ画像をモニタ上に映し出していわゆるGUI(グラフィカル・ユーザ・インターフェース)によるコンピュータ操作やコンピュータ・ゲーム並びに辞書及び辞典代わりに使用できる電子ブック等に利用されている。
【0003】
上記画像データ等はデータ容量が膨大となることから、大容量のデータを記録することができる再生専用の光ディスク(CD−ROM)の利用が一般的となりつつある。
【0004】
このような状況において、光ディスクに記録されたデータを効率よくホストコンピュータに転送できるように、現在では、光ディスクの再生装置内に半導体メモリを組み込むようにしている。即ち、光ディスクからのデータをこの半導体メモリにて一時的に蓄積させることにより、バースト的なデータ転送レートが向上するからである。
【0005】
一般的に、ホストコンピュータが光ディスクに対してデータの読出し要求を行なうことで、データが上記半導体メモリ内に蓄積されたとしても、データの蓄積は一時的なものである。それは、次回のデータ読出し指定が現在半導体メモリに蓄積されているデータの範囲以外の場合、即ち、光ディスク上の読出しアドレスが異なっている場合、半導体メモリに記憶された過去のデータは消去され、新たに光ディスクから読み出された指定のデータが蓄積されるからである。
【0006】
【発明が解決しようとする課題】
ところで、光ディスクからデータを読み出す場合、あるアドレスのデータを頻繁に読み出す場合と、任意のアドレスをランダムに読み出す場合がある。このような場合において、従来の再生装置は、光ディスクから読み出したデータを半導体メモリに一旦格納してホストコンピュータに転送するようにしているため、光ディスク上の読出し頻度の高いアドレスのデータを読み出してホストコンピュータに転送した後に、光ディスク上のランダムなアドレスのデータを読み出してホストコンピュータに転送した場合、半導体メモリには後者のデータが占有されてしまうことから、再び読出し頻度の高いアドレスのデータを読み出す場合は、再度光ディスクから当該アドレスのデータを読み出さなくてはならない。
【0007】
このようなことから、従来の再生装置におけるデータのアクセス時間は、再生装置の平均アクセス時間に依存するようになり、データ転送効率の向上を図るために組み込んだ半導体メモリの効果を十分に発揮させることができないという問題が生じていた。
【0008】
本発明は、上記の課題に鑑みてなされたもので、その目的とするところは、データ転送効率の向上を図るために組み込まれた半導体メモリの効果を十分に発揮させることができ、光ディスク上のデータを効率よくホストコンピュータに転送させることができる再生装置を提供することにある。
【0009】
また、本発明の他の目的は、ホストコンピュータが所有するメモリの容量が不足する場合に、再生装置内の半導体メモリをホストコンピュータの外部記憶装置として利用することができる再生装置を提供することにある。
【0010】
また、本発明の他の目的は、再生装置に関するプログラム作成データ及びホストコンピュータに関するプログラム作成データを電源停止後も記憶させることができ、システム保守を容易に行なうことができる再生装置を提供することにある。
【0011】
【課題を解決するための手段】
本発明は、円盤状記録媒体Dが装着され、この装着された円盤状記録媒体Dを回転駆動する回転駆動手段2と、円盤状記録媒体Dに対して情報データの再生を行なう再生手段(光ピックアップ3,RFアンプ部21,復調回路22及びデコーダ24等)と、少なくとも回転駆動手段2と再生手段を制御する制御手段(メカニズムコントローラ28,システムコントローラ29及びサーボ制御部27)と、上記再生手段を通じて再生された情報データDrを一時的に保持する記憶手段26と、この記憶手段26に記憶された情報データを上記制御手段からの読出し要求に従って外部装置31に転送するインターフェース手段25とを有する再生装置において、上記記憶手段26の記憶領域を、データ転送元が円盤状記録媒体Dである転送バッファ領域TZと、データ転送元が任意であり、かつデータ保持部分に対するデータ置換が禁止された拡張メモリ領域EZに割り付けて構成する。
【0012】
この場合、外部装置31からの拡張メモリ予約要求に基づいて、記憶手段26の記憶領域を転送バッファ領域TZと拡張メモリ領域EZに論理的に割り付ける拡張メモリ予約手段(予約要求手段76及び予約処理手段96)を設けるようにしてもよい。
【0013】
また、円盤状記録媒体D上における予め決定された所定アドレスに対するデータ読出し要求時に、初回要求時のみ円盤状記録媒体D上の該当アドレスのデータを拡張メモリ領域EZを介して外部装置31に転送し、2回目以降の読出し要求時に、上記拡張メモリ領域EZに保持されているデータを外部装置31に転送する第1の転送手段(拡張読出し要求手段78及び拡張読出し処理手段98)と、円盤状記録媒体D上における所定アドレス以外のデータ読出し要求時に、円盤状記録媒体D上の該当アドレスのデータを転送バッファ領域TZを介して外部装置31に転送する第2の転送手段(読出し要求手段77及び読出し処理手段97)とを設けるようにしてもよい。
【0014】
また、外部装置31からの領域間転送要求に基づいて、転送バッファ領域TZに一時的に保持されているデータを拡張メモリ領域EZに転送する第3の転送手段(ブロック転送要求手段79及びブロック転送処理手段99)を設けるようにしてもよい。
【0015】
また、外部装置31からのデータ書込み要求に基づいて、外部装置31から転送されたデータを拡張メモリ領域EZに書き込むデータ書込み手段(拡張書込み要求手段80及び拡張書込み処理手段100)を設けるようにしてもよい。
【0016】
また、外部装置31からの予約解除要求に基づいて、拡張メモリ予約手段(予約要求手段76及び予約処理手段96)による記憶手段26に対しての転送バッファ領域TZと拡張メモリ領域EZとの論理的割り付けを解除して、記憶手段26の記憶領域全体又は当該要求に係る拡張メモリ領域EZを転送バッファ領域TZとする予約解除手段(予約解除処理手段102)を設けるようにしてもよい。
【0017】
なお、記憶手段26のうち、拡張メモリ領域EZを不揮発性の半導体メモリにて構成するようにしてもよい。
【0018】
【作用】
本発明に係る再生装置においては、回転駆動手段2に装着された円盤状記録媒体Dが回転駆動手段2によって回転駆動され、再生手段を通じて円盤状記録媒体Dに記録された情報データが再生される。
【0019】
上記再生手段にて再生された情報データは、記憶手段26の記憶領域のうち、転送バッファ領域TZに一時的に蓄積され、その後、インターフェース手段25を通じて外部装置31に転送される。この転送バッファ領域TZに対してはそのデータ転送元が円盤状記録媒体Dであることから、専ら再生手段を通じて再生された円盤状記録媒体D上のデータが一時的に蓄積されることになる。この場合、過去のデータは消去され、現在のデータが上書きされることになる。
【0020】
一方、上記再生手段にて再生されたデータは、記憶手段26の記憶領域のうち、拡張メモリ領域EZにも蓄積される。転送バッファ領域TZの場合と異なり、蓄積されたデータ保持部分へのデータ置換が禁止されることから、過去のデータ消去されて現在のデータが上書きされるということがない。即ち、一度拡張メモリ領域EZに蓄積されたデータは、その後の円盤状記録媒体Dからのデータ読出しに影響されずに該拡張メモリ領域EZ上に保持されることになる。
【0021】
従って、円盤状記録媒体D上の読出し頻度の高いアドレスのデータを拡張メモリ領域EZに蓄積させ、それ以外のアドレスのデータを転送バッファ領域TZに一時的に蓄積させるようにすれば、読出し頻度の高いアドレスのデータを外部装置31に転送する場合、いちいち再生手段を通じて円盤状記録媒体D上の該当アドレスからデータを読み出すという必要がなくなり、拡張メモリ領域EZに蓄積されているデータを直接外部装置31に転送させることができることになる。
【0022】
その結果、再生装置に対するデータアクセス時間が再生装置の平均アクセス時間に依存するということがなくなり、該平均アクセス時間以上の性能を疑似的に発揮させることが可能となる。
【0023】
このようなことから、本発明に係る再生装置においては、データ転送効率の向上を図るために組み込まれた記憶手段26(例えば半導体メモリ)の効果を十分に発揮させることができ、円盤状記録媒体D上のデータを効率よく外部装置31に転送させることができるようになる。
【0024】
また、拡張メモリ領域EZのデータ転送元が任意であることから、外部装置31から転送されたデータもこの拡張メモリ領域EZに蓄積させることが可能となる。この場合、外部装置31が所有するメモリの容量が不足する場合に、この拡張メモリ領域EZを外部装置31の外部記憶装置として利用することが可能となる。
【0025】
また、上記構成において、外部装置31からの拡張メモリ予約要求に基づいて、記憶手段26の記憶領域を転送バッファ領域TZと拡張メモリ領域EZに論理的に割り付ける拡張メモリ予約手段を設けた場合においては、外部装置31からの拡張メモリ予約要求がない場合は、記憶領域がそのまま転送バッファ領域TZとして使用されることになり、円盤状記録媒体Dからのデータが記憶領域を介して外部装置31に転送されることになる。
【0026】
そして、外部装置31からの拡張メモリ予約要求に基づき拡張メモリ予約手段を通じて、記憶領域が転送バッファ領域TZと拡張メモリ領域EZに論理的に割り付けられ、その後は、上述したようなデータアクセスが転送バッファ領域TZ及び拡張メモリ領域EZを通して行なわれる。即ち、円盤状記録媒体D上のランダムなアドレスのデータを円盤状記録媒体Dから転送バッファ領域TZを介して外部装置31に転送し、読出し頻度の高いアドレスのデータを拡張メモリ領域EZを通して外部装置31に転送する。また、外部装置31からのデータを拡張メモリ領域EZに蓄積させる。
【0027】
このように、上記構成においては、記憶手段26の記憶領域を、データ転送元が円盤状記録媒体Dのみである転送バッファ領域TZとして使用するだけでなく、その一部の領域を、データ転送元が任意である拡張メモリ領域EZとして使用したい場合に、外部装置31からの拡張メモリ予約要求を与えるだけで実現できることになるため、再生装置に内蔵された記憶手段26(半導体メモリ)を十分に活用させることができ、該記憶手段26による効果を十分に発揮させることができる。
【0028】
また、上記構成において、円盤状記録媒体D上における予め決定された所定アドレスに対するデータ読出し要求時に、初回要求時のみ円盤状記録媒体D上の該当アドレスのデータを拡張メモリ領域EZを介して外部装置31に転送し、2回目以降の読出し要求時に、拡張メモリ領域EZに保持されているデータを外部装置31に転送する第1の転送手段と、円盤状記録媒体D上における上記所定アドレス以外のデータ読出し要求時に、円盤状記録媒体D上の該当アドレスのデータを転送バッファ領域TZを介して外部装置31に転送する第2の転送手段とを設けるようにした場合は、以下の動作を行なうことになる。
【0029】
円盤状記録媒体D上の予め決定された所定アドレス以外のデータの読出し要求があった場合、再生手段を通じて再生されたデータが第2の転送手段を通じ、記憶手段26における記憶領域の転送バッファ領域TZを介して外部装置31に転送される。次回以降、所定アドレス以外のデータを外部装置31に転送する場合も、再生手段にて再生された上記アドレスのデータが第2の転送手段を通じ、転送バッファ領域TZを介して外部装置31に転送される。即ち、転送バッファ領域TZにおけるデータが順次上書きされながら外部装置31へのデータ転送が行なわれる。
【0030】
一方、円盤状記録媒体D上の予め決定された所定アドレスのデータの読出し要求があった場合は、まず、初回要求時において、再生手段を通じて再生された上記アドレスのデータが第1の転送手段を通じて記憶手段26における記憶領域の拡張メモリ領域EZに蓄積され、更にこの第1の転送手段を通じて拡張メモリ領域EZに蓄積されているデータが外部装置31に転送されることになる。
【0031】
次回以降、所定アドレスのデータを外部装置31に転送する場合においては、拡張メモリ領域EZに蓄積されているデータが第1の転送手段を通じてそのまま外部装置31に転送されることになる。即ち、所定アドレスのデータを外部装置31に転送する場合、いちいち再生手段を通じて円盤状記録媒体D上の該当アドレスからデータを読み出すという必要がなくなり、拡張メモリ領域EZに蓄積されているデータを直接外部装置31に転送させることができることになる。
【0032】
また、上記構成において、外部装置31からの領域間転送要求に基づいて、転送バッファ領域TZに一時的に保持されているデータを拡張メモリ領域EZに転送する第3の転送手段を設けた場合においては、例えば後発的に決定された円盤状記録媒体D上の第2の所定アドレスのデータが第2の転送手段を通じて転送バッファ領域に蓄積された際に、外部装置31からの領域間転送要求に基づいて、転送バッファ領域TZ内のデータが第3の転送手段を通じて拡張メモリ領域EZに転送されることになる。
【0033】
これは、後発的に読出し頻度の高いアドレスが判明した場合に有効となる。即ち、読出し頻度の高いアドレスは、最初から判明している場合と、再生装置の使用経過によって、後発的に判明する場合がある。本発明は、この後発的に判明した読出し頻度の高いアドレスのデータが第2の転送手段を通じて転送バッファ領域に蓄積された際に、第3の転送手段を通じて拡張メモリ領域EZに転送蓄積させることが可能となり、次回以降、上記後発的に判明した読出し頻度の高いアドレスのデータを転送する際には、円盤状記録媒体Dからではなく拡張メモリ領域EZに蓄積されているデータを外部装置31に転送できることになる。その結果、再生装置と外部装置31間のデータ転送を更に効率よく行なわせることができる。
【0034】
また、上記構成において、外部装置31からのデータ書込み要求に基づいて、外部装置31から転送されたデータを拡張メモリ領域EZに書き込むデータ書込み手段を設けた場合においては、外部装置31からのデータ書込み要求に基づいて、データ書込み手段を通じて外部装置31から転送されたデータをこの拡張メモリ領域EZに蓄積させることが可能となる。この場合、外部装置31が所有するメモリの容量が不足する場合に、この拡張メモリ領域EZを外部装置の外部記憶装置として利用することが可能となる。
【0035】
また、上記構成において、外部装置31からの予約解除要求に基づいて、拡張メモリ予約手段による記憶手段26に対しての転送バッファ領域TZと拡張メモリ領域EZとの論理的割り付けを解除して、記憶手段26の記憶領域全体又は当該要求に係る拡張メモリ領域EZを転送バッファ領域TZとする予約解除手段を設けた場合においては、以下のような場合に有効となる。
【0036】
即ち、頻繁にデータアクセスを行なう必要がない固定データが記録された円盤状記録媒体D(例えば、円盤状記録媒体Dに記録されているデータがシーケンシャルファイル形式である場合など)に対するアクセスにおいて、予約解除手段によって記録領域全体又は当該要求に係る拡張メモリ領域EZを転送バッファ領域TZとすることにより、1回のデータ転送サイズを大きくすることができ、上記のような円盤状記録媒体Dに対するアクセス時間を効率よく短縮することができる。
【0037】
また、上記構成において、記憶手段26のうち、拡張メモリ領域EZを不揮発性の半導体メモリにて構成した場合においては、再生装置においてプログラム動作によって作成されたデータ、例えば次に読出すアドレスや各種パラメータ並びに外部装置においてプログラム動作によって作成されたデータ、例えば後発的に判明した読出し頻度の高いアドレスや各種パラメータ等をデータ書込み手段を通じて拡張メモリ領域EZに書き込むことにより、電源停止後や突然の電源断においても、上記データを保持することができ、その後のシステム保守を容易に行なうことが可能となる。
【0038】
【実施例】
以下、本発明に係る再生装置を、ホストコンピュータの外部記憶装置として再生専用の光ディスク(CD−ROM)を記録媒体とするCD−ROMドライブ装置に適用した実施例(以下、単に実施例に係る再生装置と記す)を図1〜図55を参照しながら説明する。
【0039】
この実施例に係る再生装置は、図1に示すように、先端に光ディスクDが装着されるターンテーブル1を有し、このターンテーブル1に装着された光ディスクDを例えばCLV(線速度一定)方式で一方向に回転させるスピンドルモータ2と、この回転する光ディスクDに対して情報信号の再生を行う光ピックアップ3と、この光ピックアップ3からの再生信号Srを復調して再生データとして外部に送出する信号処理系4を有して構成されている。
【0040】
光ディスクDは、記録された情報信号に基づいて凹凸パターン、即ち位相ピットが同心円もしくは螺旋状に形成されたトラックが一方の面に形成されている。具体的には、光透過性を有するポリカーボネートやPMMA等のような合成樹脂材からなるディスク基板と、このディスク基板の一方の面に形成された位相ピットを被覆するように形成されたAlやAu等の金属からなる反射膜と、この反射膜を保護することを目的として上記反射膜を被覆するように形成された保護層とにより形成されている。
【0041】
更に、この光ディスクDは、その内周部分にこの光ディスクDの属性、例えばトラックピッチやトラック数などのトラックに関するデータ、即ちTOCデータが凹凸パターンによるピット情報として記録されており、このTOCデータが記録されたシステム領域を除いた部分に位相ピットによる画像データや音声データ並びに辞書データ等のROMデータが記録されている。
【0042】
光ピックアップ3は、例えばリニアモータ5及びガイド軸6を主体とする既知の光ピックアップ用スライド機構7によって、光ディスクDの径方向に移動自在とされ、その内部に少なくともレーザ光の光源である半導体レーザ(図示せず)と、この半導体レーザから出射されたレーザ光Lを光ディスクDの記録面に集光させる対物レンズ8と、半導体レーザから出射されたレーザ光Lの光ディスクDでの反射光を検出して電気信号(即ち、再生信号)に変換する光検出器(図示せず)と、上記反射光を半導体レーザからの出射光と空間的に分離するビームスプリッタ(図示せず)を有して構成されている。
【0043】
上記対物レンズ8は、簡単な構成の二次元アクチェータ9によって、光ディスクDの接離方向及び光ディスクDの径方向にそれぞれ微小範囲で移動可能とされている。この二次元アクチュエータ9は、例えばフォーカス・コイル、トラッキング・コイル及びマグネット(共に図示せず)からなる磁気回路にて構成されている。
【0044】
なお、上記光ピックアップ3内には、上記光検出器のほかに、レーザ光Lの光強度を検出するための別の光検出器が配されており、この光検出器からの検出信号は、光ピックアップ3の外部に設けられた光強度制御回路(APC回路)10に供給されるようになっている。このAPC回路10は、上記光検出器からの検出信号に基づいて、レーザ光源が安定に発振するようにレーザ光源の出力を制御するものである。
【0045】
一方、信号処理系4は、図1に示すように、RFアンプ部21、復調回路22、D/A変換器23、デコーダ24、インターフェース・プロトコル・コントローラ(以下、単にI/Fコントローラと記す)25、データバッファ26、サーボ制御部27、メカニズムコントローラ28及びこれら各種回路を制御するシステムコントローラ29を有し、更に、本実施例においては、上記I/Fコントローラ25の後段にインターフェース・バス30を介してホストコンピュータ31が接続されている。それぞれマイクロプロセッシングユニットにて構成されたメカニズム・コントローラ28及びシステムコントローラ29は、内部バス32にて互いに接続されている。
【0046】
また、光ディスクDを回転駆動するスピンドルモータ2の前段には、このスピンドルモータ2に対して駆動電流を供給するためのモータ駆動回路41が接続され、対物レンズ8を微小範囲に移動させる二次元アクチュエータ9の前段には、それぞれフォーカス・コイル及びトラッキング・コイルに励磁電流を供給するためのフォーカス用駆動回路42及びトラッキング用駆動回路43が接続されている。また、光ピックアップ用スライド機構7の駆動源であるモータ5の前段には、このモータ5に対して駆動電流を供給するためのモータ駆動回路44が接続されている。
【0047】
RFアンプ部21は、光ピックアップ3における上記光検出器からの再生信号Srを増幅し、更に、この再生増幅信号から情報信号成分Siとフォーカスエラー信号成分Sfとトラッキングエラー信号成分Stとに分離する。また、このRFアンプ部21の後段には、復調回路22とサーボ制御部27が接続されて、上記情報信号成分Siが復調回路22に供給され、フォーカスエラー信号成分Sf及びトラッキングエラー信号成分Stがサーボ制御部27に供給されるようになっている。
【0048】
復調回路22は、RFアンプ部21からの情報信号成分SiをEFM復調し、更にエラー訂正等の復号化処理を行なってデジタルの再生データDiに変換する回路である。また、この復調回路22には、上記情報信号成分Siから基準信号を抽出し、この基準信号に基づいて、光ディスクDをマスタリングされたのと同じ線速度で回転駆動させるためのスピンドルサーボエラー信号Ssを生成してモータ駆動回路41に出力するスピンドルサーボエラー信号生成回路(図示せず)が組み込まれている。
【0049】
サーボ制御部27は、その内部に、フォーカス・サーボ回路、トラッキング・サーボ回路及び光ピックアップ用スライド機構のモータに対してサーボ制御を行うモータ用サーボ回路等(共に図示せず)が組み込まれており、これら各種サーボ回路は、それぞれメカニズムコントローラ28からのサーボ制御に関するデータ(サーボゲイン等)や駆動信号などのサーボ駆動制御信号並びにRFアンプ部21からのフォーカスエラー信号成分Sfとトラッキングエラー信号成分Stが入力されるようになっている。
【0050】
そして、このサーボ制御部27中、上記フォーカス・サーボ回路は、RFアンプ部21からのフォーカスエラー信号成分Sf、具体的には、光ディスクDに形成されたミラー面へのレーザ光照射に伴う該ミラー面からの反射光量に応じた検出信号をRFアンプ部21にて所定の演算を行なって得た信号Sfに基づいて、光ピックアップ3の二次元アクチュエータ9を駆動・制御することにより、対物レンズ8を光ディスクDの接離方向に移動させてその焦点調整を行う回路である。
【0051】
サーボ制御部27中、上記トラッキング・サーボ回路は、RFアンプ部21からのトラッキングエラー信号成分St、具体的には、光ディスクDに形成されている例えば案内溝の検出に伴う検出信号をRFアンプ部21にて所定の演算を行なって得た信号に基づいて、光ピックアップ3の二次元アクチュエータ9を駆動・制御することにより、対物レンズ8を光ディスクDの径方向に移動させてそのトラッキング調整を行う回路である。
【0052】
サーボ制御部27中、上記モータ用サーボ回路は、メカニズム・コントローラ28からのシーク動作要求、トラックジャンプ要求及びステップジャンプ要求に基づいて光ピックアップ用スライド機構7のモータ5を駆動することにより、光ピックアップ3を所望のトラックに移動させる回路である。
【0053】
デコーダ24は、復調回路22から出力された再生データDiをホストコンピュータ31が取り扱うコード形態、即ちROMデータDrに変換する回路である。また、このデコーダ24からは、ROMデータDrに対応するアドレスデータ(以下、ROMアドレスデータと記す)Darが得られるようになっている。D/A変換器23は、復調回路22から出力された再生データDiをアナログの再生信号Saに変換する回路であり、特に、光ディスクDに記録されたデータが音声データであって、アナログの音声信号Saとして取り出す場合に有効である。
【0054】
メカニズムコントローラ28は、復調回路22から出力される再生データDiのうち、サブコードアドレスデータDaが入力されるようになっている。
【0055】
このメカニズムコントローラ28の代表的な動作としては、例えばホストコンピュータ31からのシステムコントローラ29への読出し要求の入力に基づいて、システムコントローラ29からメカニズムコントローラ28に対して読出し制御信号が出力される。
【0056】
メカニズムコントローラ28は、上記システムコントローラ29からの読出し制御信号の入力と、復調回路22から入力されるサブコードアドレスデータDaに基づいて、要求アドレス(読出しアドレス)に対応するトラックより1つ手前のトラックまで光ピックアップ3をシーク動作、トラックジャンプ動作又はステップジャンプ動作するように制御する。
【0057】
目標トラックの手前1トラックになった段階から、システムコントローラ29は、デコーダ24からのROMアドレスデータDarとホストコンピュータ31からの読出しアドレスデータとを判別して、メカニズムコントローラ28に対し、判別結果に応じた読出し制御信号を出力し、メカニズムコントローラ28を通じて読出しアドレスに対応する部分に光ピックアップ3を引き込む。
【0058】
そして、光ピックアップ3が読出しアドレスに対応したトラックに位置した時点で、システムコントローラ29がメカニズムコントローラ28に対して読出し信号を出力する。メカニズムコントローラ28は、システムコントローラ29からの読出し信号の入力に基づいてRFアンプ部21及び復調回路22に対して制御用データDcを出力する。これによって、該トラックに記録されているデータが再生されることになる。
【0059】
そして、復調回路22から再生データDiがデコーダ24に供給されている段階において、ROMアドレスデータDarがシステムコントローラ29に供給されることにより、要求のあったアドレスのデータのみがI/Fコントローラ25を介してデータバッファ26に転送されることになる。
【0060】
ここで、上記データバッファ26は、例えばDRAM又はSRAM等の半導体メモリにて構成され、例えば、図2(a)に示すように、データバッファ26における記憶領域の先頭論理アドレス(相対セクタアドレス)から所定論理アドレス(相対セクタアドレス)までが転送バッファ領域TZとして割り付けられ、上記所定論理アドレス+1から最終論理アドレスまでが拡張メモリ領域(斜線で示す)EZとして割り付けられる。もちろん図2(a)で示す割り付け以外に、図2(b)に示すように、複数の拡張メモリ領域EZが割り付けられる場合もある。
【0061】
デコーダ24からの再生データDiは、通常は、上記データバッファ26のうち、転送バッファ領域TZに蓄積される。この転送バッファ領域TZに蓄積された再生データDiは、その後、I/Fコントローラ25を介してホストコンピュータ31に転送されることになる。
【0062】
そして、本実施例に係る再生装置が備えるコマンドとしては、以下のようなものが用意される。
(1) 予約コマンド
(2) 読出しコマンド
(3) 拡張読出しコマンド
(4) ブロック転送コマンド
(5) 拡張書込みコマンド
(6) 拡張転送コマンド
(7) 予約解除コマンド
【0063】
これらのコマンドは、 (2)の読出しコマンドを除いて、データバッファ26の使い方を選択するためのものである。ホストコンピュータ31からの入力される上記コマンドは再生装置で一般的に使われているSCSI(Small Computer System Interface )等のインターフェース・プロトコルに従って、I/Fコントローラ25に送られる。
【0064】
I/Fコントローラ25は、ホストコンピュータ31からのコマンドを受信した後、システムコントローラ29に例えば割込み信号を用いてコマンドを受け取ったことを知らせる。システムコントローラ29は、この割込み信号によりホストコンピュータからコマンドが送られたことを認識し、その後、I/Fコントローラ25からコマンドを受け取る。コマンドを受け取ったシステムコントローラ29は、コマンドの内容を解釈してコマンドに応じた処理を実行する。
【0065】
以下に、コマンドの詳細を述べる。なお、ここでは図2で示すデータバッファ26の記憶領域におけるアドレスを光ディスクDにおける1セクタ分のデータに対応した論理アドレスであるものとして扱っている。
【0066】
(1) 予約コマンド
データバッファ26の記憶領域に拡張メモリ領域を予約する。このコマンドは、拡張メモリの開始論理アドレスと終了論理アドレスをパラメータとして持つ。これによって、拡張メモリの開始論理アドレスから終了論理アドレスまでの領域は拡張メモリ領域EZとして、残りの領域は転送バッファ領域TZとして使用される。
【0067】
(2) 読出しコマンド
ホストコンピュータ31が、光ディスクDからの再生データDiをROMデータDrとして転送バッファ領域TZを経由して読み出すためのコマンドである。
【0068】
この読出しコマンドは、光ディスクDから読み出すデータの先頭アドレスと読み出すデータのセクタ数をパラメータとして持つ。このコマンドをシステムコントローラ29が受け取ったら、該システムコントローラ29は、まず、要求されたデータが転送バッファ領域TZに記憶されているかどうかを確認する。転送バッファ領域TZに要求のデータが存在すれば、そのデータをI/Fコントローラ25を経由させてホストコンピュータ31に転送する。
【0069】
要求のデータが転送バッファ領域TZに存在しなければ、メカニズムコントローラ28に対して光ディスクDの検索をするように内部バス32経由で指示する。メカニズムコントローラ28は、RFアンプ部21、サーボ制御部27、復調回路22をそれぞれ制御して光ディスクDの該当アドレスからデータを再生させる。
【0070】
得られた再生データDiは、デコーダ24によってROMデータDrに変換される。同時にシステムコントローラ29には再生データDiをデコードした結果得られるROMアドレス情報Darが得られる。システムコントローラ29は、このROMアドレス情報Darに基づいてホストコンピュータ31から要求されたデータのみを転送バッファ領域TZに転送するようにI/Fコントローラ25を制御する。
【0071】
転送バッファ領域TZに要求されたデータが蓄えられると、この蓄積されたデータは、I/Fコントローラ25を経由してホストコンピュータ31に転送される。
【0072】
(3) 拡張読出しコマンド
拡張メモリ領域EZの指定領域に光ディスクDからのデータを転送して、該指定領域EZに蓄積されたデータをホストコンピュータ31に転送するためのコマンドである。手順は、上記「(2) 読出しコマンド」で述べたものに等しい
【0073】
(4) ブロック転送コマンド
転送バッファ領域TZ内のデータを拡張メモリ領域EZの指定領域に転送するためのコマンドである。このコマンドによって、転送バッファ領域TZ内のデータ転送開始論理アドレスと転送セクタ数及び拡張メモリ領域EZ内の書込み開始論理アドレスが指定される。
【0074】
(5) 拡張書込みコマンド
拡張メモリ領域EZの指定領域にホストコンピュータ31からのデータを書き込むためのコマンドである。このコマンドによって、拡張メモリ領域EZ内の書込み開始論理アドレスと転送セクタ数が指定された後に、ホストコンピュータ31からデータが送信される。
【0075】
(6) 拡張転送コマンド
拡張メモリ領域EZの指定領域のデータをホストコンピュータ31に転送するためのコマンドである。このコマンドによって、拡張メモリ領域EZ内の読出し開始論理アドレスと転送セクタ数が指定された後に、ホストコンピュータ31にデータが転送される。
【0076】
(7) 予約解除コマンド
拡張メモリ領域EZの予約領域を解除して、データバッファ26の記憶領域全体あるいは予約解除の対象となってる拡張メモリ領域EZを転送バッファ領域TZにするコマンドである。このコマンドによって、拡張メモリ領域EZの開始論理アドレスが指定される。
【0077】
以下、上記コマンドによる再生装置の動作、特にデータバッファ26に対するデータの受渡しを主体とした動作を、I/Fコントローラ25のハード構成、機能ブロック及びフローチャート、並びにシステムコントローラ29のハード構成、機能ブロック及びフローチャートを参照しながら説明する。
【0078】
まず、I/Fコントローラ25のハード構成を図3に基づいて説明すると、このI/Fコントローラ25は、各種プログラムが登録されたプログラムROM51と、このプログラムROM51から読み出されたプログラムの動作用領域として使用される動作用RAM52と、外部回路(デコーダ24,ホストコンピュータ31,システムコントローラ29)からのデジタルデータやプログラムにて作成された可変データが格納されるデータRAM53と、外部回路からの入力データが供給される入力ポート54と、データRAM53に格納されたデータを外部回路に出力するための出力ポート55と、これら各種回路を制御するCPU(制御装置及び論理演算装置)56を有して構成されている。
【0079】
上記各種回路は、CPU56から導出されたデータバスDBを介して各回路間のデータの受渡しが行なわれ、更にCPU56から導出された制御バス(図示せず)を介してそれぞれCPU56にて制御されるように構成されている。また、デコーダ24,ホストコンピュータ31,システムコントローラ29からの各種デジタルデータは、入力ポート54を介してデータバスDBに供給されるようになっている。
【0080】
次に、システムコントローラ29のハード構成を図7に基づいて説明すると、このシステムコントローラ29は、各種プログラムが登録されたプログラムROM61と、このプログラムROM61から読み出されたプログラムの動作用領域として使用される動作用RAM62と、外部回路(I/Fコントローラ25,メカニズムコントローラ28)からのデジタルデータやプログラムにて作成された可変データが格納されるデータRAM63と、外部回路からの入力データが供給される入力ポート64と、データRAM63に格納されたデータを外部回路に出力するための出力ポート65と、これら各種回路を制御するCPU(制御装置及び論理演算装置)66を有して構成されている。
【0081】
上記各種回路は、CPU66から導出されたデータバスDBを介して各回路間のデータの受渡しが行なわれ、更にCPU66から導出された制御バス(図示せず)を介してそれぞれCPU66にて制御されるように構成されている。また、I/Fコントローラ25,メカニズムコントローラ28からの各種デジタルデータは、入力ポート64を介してデータバスDBに供給されるようになっている。
【0082】
次に、I/Fコントローラ25及びシステムコントローラ28の動作について詳細に説明する。
【0083】
まず、I/Fコントローラ25においては、図5のステップS1において、電源投入と同時に初期動作、例えばI/Fコントローラ25内のシステムチェックやメモリチェック及びセットアップ等が行なわれる。
【0084】
その後、ステップS2において、プログラムROM51から、ホストコンピュータ31からのコマンドをシステムコントローラ29に出力し、更にシステムコントローラ29からの上記コマンドに応じたパラメータに基づいてデータ転送処理を行なう手段71(図4参照)であるデータ転送処理プログラムが読み出されて動作用RAM52に書き込まれると同時に、上記プログラムの動作中において作成されたデータを一時的に保存するためや、これらプログラムを構成する各ルーチンの変数の受渡しなどに用いられる作業領域が動作用RAM52中に割り付けられる。
【0085】
上記動作用RAM52に読み出されたデータ転送処理プログラム71は、図4に示すように、各種判別を行なう判別手段72と、ホストコンピュータ31からのコマンドを受け取るコマンド受取り手段73と、コマンド受取り手段73にてコマンドを受け取ったことに基づいてシステムコントローラ29に対して割り込み信号を出力する割り込み信号出力手段74と、上記コマンドに応じた処理に分岐させるための手段である各種要求処理手段75とを有して構成されている。
【0086】
上記各種要求処理手段75において上記コマンドに応じて選択的に活性化される手段は以下の通りである。
【0087】
▲1▼ ホストコンピュータ31からの予約コマンドをシステムコントローラ29に出力し、かつシステムコントローラ29からの情報テーブルを受け取って、この情報テーブルのデータに基づいてデータバッファ26に拡張メモリ領域EZを論理的に割り付ける予約要求手段76
▲2▼ ホストコンピュータ31からの読出しコマンドをシステムコントローラ29に出力し、かつシステムコントローラ29からのパラメータに応じて光ディスクDからの再生データ(ROMデータ)をデータバッファ26の転送バッファ領域TZを介してホストコンピュータ31に転送する読出し要求手段77
▲3▼ ホストコンピュータ31からの拡張読出しコマンドをシステムコントローラ29に出力し、かつシステムコントローラ29からのパラメータに応じて光ディスクDからの再生データをデータバッファ26の拡張メモリ領域EZを介してホストコンピュータ31に転送する拡張読出し要求手段78
▲4▼ ホストコンピュータ31からのブロック転送コマンドをシステムコントローラ29に出力し、かつシステムコントローラ29からのパラメータに応じて転送バッファ領域TZのデータをデータバッファ26の拡張メモリ領域EZに書き込むブロック転送要求手段79
▲5▼ ホストコンピュータ31からの拡張書込みコマンドをシステムコントローラ29に出力し、かつシステムコントローラ29からのパラメータに応じてホストコンピュータ31からの転送データを拡張メモリ領域EZに書き込む拡張書込み要求手段80
▲6▼ ホストコンピュータ31からの拡張転送コマンドをシステムコントローラ29に出力し、かつシステムコントローラ29からのパラメータに応じて拡張メモリ領域EZのデータをホストコンピュータ31に転送する拡張転送要求手段81
▲7▼ ホストコンピュータ31からの予約解除コマンドをシステムコントローラ29に出力するコマンド出力手段82
【0088】
そして、図5のフローチャートにおけるステップS3において、判別手段72を通じて、ホストコンピュータ31から要求があったかどうか、即ちコマンドが入力されたかどうかの判別が行なわれる。このステップS3での判別は、ホストコンピュータ31からのコマンドが入力されるまで行なわれ、コマンド入力待ちとなる。
【0089】
コマンドが入力された場合、次のステップS4に進み、コマンド受取り手段73を通じて、ホストコンピュータ31からのコマンドを受け取り、データRAM53のコマンド格納領域に格納する。次に、ステップS5において、割り込み信号出力手段74を通じて、システムコントローラ29にコマンドを受け取ったことを示す割り込み信号を出力する。
【0090】
次に、ステップS6において、各種要求処理サブルーチン(各種要求処理手段)75に入る。この各種要求処理サブルーチン75は、図6に示すように、入力されたコマンドの指示内容に応じて、予約要求から拡張書込み要求までは、それぞれ対応するサブルーチン、即ち予約要求サブルーチン(予約要求手段76)S101,読出し要求サブルーチン(読出し要求手段77)S102,拡張読出し要求サブルーチン(拡張読出し要求手段78)S103,ブロック転送要求サブルーチン(ブロック転送要求手段79)S104,拡張書込み要求サブルーチン(拡張書込み要求手段80)S105,拡張転送要求サブルーチン(拡張転送要求手段81)S106に入り、予約解除要求である場合は、S107に進んでコマンド出力手段82を通じてシステムコントローラ29に今回のコマンドを出力する。
【0091】
コマンドに応じた要求処理が終了すると、図5のメインルーチンに戻り、次のステップS7において、判別手段72を通じて、プログラム終了要求があったかどうかの判別が行なわれる。この判別は、例えば電源OFFやメンテナンス割り込み(機能増設等に基づいてオンラインの環境下で新たなプログラムを移植する場合に行なわれる)などにおいて、終了要求があったかどうかで行なわれる。
【0092】
そして、このステップS7においては、上記終了要求がない場合、ステップS3に戻って、再びコマンド入力待ちとなり、上記終了要求があった場合は、このデータ転送処理プログラムが終了することになる。
【0093】
一方、システムコントローラ29においては、図9のステップS201において、電源投入と同時に初期動作、例えばシステムコントローラ29内のシステムチェックやメモリチェック及びセットアップ等が行なわれる。
【0094】
その後、ステップS202において、プログラムROM61から、I/Fコントローラ25からのコマンドを受け取り、この受け取ったコマンドに応じて各種テーブルを作成し、更にI/Fコントローラ25に供給するためのパラメータを作成して、I/Fコントローラ25に出力する手段91(図8参照)であるコマンド処理プログラムが読み出されて動作用RAM62に書き込まれると同時に、上記プログラムの動作中において作成されたデータを一時的に保存するためや、これらプログラムを構成する各ルーチンの変数の受渡しなどに用いられる作業領域が動作用RAM62中に割り付けられる。
【0095】
上記動作用RAM62に読み出されたコマンド処理プログラム91は、図8に示すように、各種判別を行なう判別手段92と、各種テーブルの内容やパラメータ等を初期化する初期化処理手段93と、I/Fコントローラ25からのコマンドを受け取るコマンド受取り手段94と、入力されたコマンドに応じた処理に分岐させるための手段である各種要求処理手段95とを有して構成されている。
【0096】
上記各種要求処理手段95において上記コマンドに応じて選択的に活性化される手段は以下の通りである。
【0097】
▲1▼ I/Fコントローラ25からの予約コマンドを受け取って、このコマンドに基づいて各種テーブルを作成してI/Fコントローラ25に転送する予約処理手段96
▲2▼ I/Fコントローラ25からの読出しコマンドを受け取って、各種テーブルの修正を行ない、更に転送バッファ領域TZの書込み開始論理アドレス等を有する読出し用パラメータを作成してI/Fコントローラ25に出力する読出し処理手段97
▲3▼ I/Fコントローラ25からの拡張読出しコマンドを受け取って、各種テーブルの修正を行ない、更に拡張メモリ領域EZの書込み開始論理アドレス等を有する拡張読出し用パラメータを作成してI/Fコントローラ25に出力する拡張読出し処理手段98
▲4▼ I/Fコントローラ25からのブロック転送コマンドを受け取って、各種テーブルの修正を行ない、更に転送バッファ領域TZの読出し開始論理アドレス及び拡張メモリ領域EZの書込み開始論理アドレス等を有するブロック転送用パラメータを作成してI/Fコントローラ25に出力するブロック転送処理手段99
▲5▼ I/Fコントローラ25からの拡張書込みコマンドを受け取って、各種テーブルの修正を行ない、更に拡張メモリ領域EZの書込み開始論理アドレス等を有する拡張書込み用パラメータを作成してI/Fコントローラ25に出力する拡張書込み処理手段100
▲6▼ I/Fコントローラ25からの拡張転送コマンドを受け取って、拡張メモリ領域EZの読出し開始論理アドレス等を有する拡張転送用パラメータを作成してI/Fコントローラ25に出力する拡張転送処理手段101
▲7▼ I/Fコントローラ25からの予約解除コマンドを受け取って、各種テーブルに対して予約解除のための修正を行なう予約解除処理手段102
【0098】
そして、図9のフローチャートにおけるステップS203において、初期化処理手段93を通じて、各種テーブル及びパラメータを初期化する。例えばテーブルの開始レコードにEOF(エンド・オブ・ファイル)コードを格納し、各種データの格納領域に0を格納する。
【0099】
次に、ステップS204において、判別手段92を通じて、I/Fコントローラ25から要求があったかどうか、即ちI/Fコントローラ25から割り込み信号が入力されたかどうかの判別が行なわれる。このステップS204での判別は、I/Fコントローラ25からの割り込み信号が入力されるまで行なわれ、割り込み信号入力待ちとなる。
【0100】
割り込み信号が入力された場合、次のステップS205に進み、コマンド受取り手段94を通じて、I/Fコントローラ25からのコマンドを受け取り、データRAM63のコマンド格納領域に格納する。
【0101】
次に、ステップS206において、各種要求処理サブルーチン(各種要求処理手段)95に入る。このサブルーチン95は、図10に示すように、入力されたコマンドの指示内容に応じて、それぞれ対応するサブルーチン、即ち予約処理サブルーチン(予約処理手段96)S301,読出し処理サブルーチン(読出し処理手段97)S302,拡張読出し処理サブルーチン(拡張読出し処理手段98)S303,ブロック転送処理サブルーチン(ブロック転送処理手段99)S304,拡張書込み処理サブルーチン(拡張書込み処理手段100)S305,拡張転送処理サブルーチン(拡張転送処理手段101)S306,予約解除処理サブルーチン(予約解除処理手段102)S307に入る。
【0102】
コマンドに応じた要求処理が終了すると、図9のメインルーチンに戻り、次のステップS207において、判別手段92を通じて、プログラム終了要求があったかどうかの判別が行なわれる。この判別は、例えば電源OFFやメンテナンス割り込み(機能増設等に基づいてオンラインの環境下で新たなプログラムを移植する場合に行なわれる)などにおいて、終了要求があったかどうかで行なわれる。
【0103】
そして、このステップ207においては、上記終了要求がない場合、ステップS204に戻って、再びコマンド入力待ちとなり、上記終了要求があった場合は、このデータ転送処理プログラム91が終了することになる。
【0104】
次に、ホストコンピュータ31からの各コマンドに応じたI/Fコントローラ25及びシステムコントローラ29の動作について以下に説明する。
【0105】
[拡張メモリ領域の予約処理]
まず、ホストコンピュータ31から予約コマンドがI/Fコントローラ25に入力された場合は、各種要求処理サブルーチン75から予約要求サブルーチン(予約要求手段76)に入る。
【0106】
この予約要求手段76は、図11に示すように、各種判別を行なう判別手段111と、システムコントローラ29にコマンドを出力するコマンド出力手段112と、システムコントローラ29から転送されてくる各種テーブルを受け取る各種テーブル受取り手段113とを有して構成されている。
【0107】
そして、この予約要求手段75は、まず、図12のステップS401において、コマンド出力手段112を通じて、コマンド格納領域に格納されている予約コマンドデータをシステムコントローラ29に出力する。
【0108】
システムコントローラ29においては、I/Fコントローラ25からの予約コマンドデータが入力された場合、図10で示す各種要求処理サブルーチンから予約処理サブルーチン(予約処理手段96)に入る。予約コマンドデータは、拡張メモリ領域EZの開始論理アドレス(相対セクタアドレス)と拡張メモリ領域EZの終了論理アドレス(相対セクタアドレス)から構成されている。
【0109】
この予約処理手段96は、図13に示すように、各種判別を行なう判別手段121と、データRAM63の所定領域に展開される拡張情報テーブルを作成する拡張情報テーブル作成手段122と、データRAM63の別の所定領域に展開される転送情報テーブルを作成する転送情報テーブル作成手段123と、各情報テーブル作成手段122及び123にて作成された拡張情報テーブル及び転送情報テーブルをI/Fコントローラ25に転送するテーブル転送手段124とを有して構成されている。
【0110】
また、この予約処理手段96は、上記各種手段のほか、拡張情報テーブル作成手段122又は転送情報テーブル手段123にて活性化されるテーブル読出し手段125及びEOFコード格納手段126と、拡張情報テーブル作成手段122のみにて活性化されるテーブルバッファ格納手段127,セットビット処理手段128,残存セクタ数更新手段129及びレコード移動手段130と、転送情報テーブル作成手段123のみにて活性化されるアドレス格納手段131とを有する。
【0111】
上記テーブル読出し手段125は、拡張情報テーブル又は転送情報テーブルをそれぞれ1レコードずつ読み出す手段であり、上記EOFコード格納手段126は、各情報テーブルの最終レコードにEOFコードを格納する手段である。また、上記テーブルバッファ格納手段127は、データRAM63に展開されたテーブルバッファを拡張情報テーブルの該当レコードに格納する手段であり、上記セットビット処理手段128は、拡張情報テーブルの該当レコードの指示情報ビットをセットビット処理する手段であり、上記残存セクタ数更新手段129は、予約に基づく拡張メモリ領域EZの拡大によって増加する拡張メモリ領域EZのセクタ数を+更新し、又は予約に基づく拡張メモリ領域EZの拡大によって減少する転送バッファ領域TZのセクタ数を−更新するための手段であり、上記レコード移動手段130は、拡張情報テーブルの該当レコード以降のレコード群を所定のレコードから始まるように移動させる手段である。
【0112】
ここで、拡張情報テーブルは、図54(a)に示すように、予約数に応じたレコードを有して構成され、1つのレコードの内容は、最初の1ビット目が予約済みか予約解除かを示す指示情報ビットであり、1/0=予約済み/予約解除を示す。また、このレコードには、上記指示情報ビットのほかに、開始論理アドレス(相対セクタアドレス)と終了論理アドレス(相対セクタアドレス)が格納される領域が割り付けられている。
【0113】
一方、転送情報テーブルは、図54(b)に示すように、拡張メモリ領域EZの予約数と同じかその±1の数に応じたレコードを有して構成され、1つのレコードの内容は、開始論理アドレス(相対セクタアドレス)と終了論理アドレス(相対セクタアドレス)が格納される領域が割り付けられている。
【0114】
そして、この予約処理手段96は、まず、図14のステップS501において、コマンド格納領域に格納されているコマンドデータをテーブルバッファに展開する。このテーブルバッファは、図54(a)で示す拡張情報テーブルの1レコードの構成と同じであり、このステップS501では、コマンドデータ(開始論理アドレスデータ及び終了論理アドレスデータ)を拡張情報テーブルの1レコードの配列順序に応じて格納し、更に予約済みビットをセットする。
【0115】
次に、ステップS502において、拡張情報テーブル作成サブルーチン(拡張情報テーブル作成手段)に入る。このサブルーチンは、図15に示すように、まず、ステップS601において、拡張情報テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化、即ちインデックスレジスタiに値「0」を格納する。また、図54(c)で示す情報フラグに「0」を格納する。この情報フラグは、最初の1ビット目がEOFコード要求フラグであり、次の2ビット目がテーブル変更要求フラグである。
【0116】
次に、ステップS602において、テーブル読出し手段125を通じて、拡張情報テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、拡張情報テーブルからiレコード目のレコードを読み出す。次に、ステップS603において、判別手段121を通じて、上記iレコード目のレコードの内容がEOFコードであるか否かが判別される。
【0117】
iレコード目の内容がEOFコードでない場合は、次のステップS604に進み、判別手段121を通じて、レコード移動が必要か否かが判別される。この判別は、テーブルバッファに格納されている今回の予約に係る開始論理アドレスがiレコード目のレコードに格納されている開始論理アドレスよりも小さいか否かで行なわれる。
【0118】
今回の予約に係る開始論理アドレスがiレコード目に係る開始論理アドレスよりも小さい場合は、次のステップS605に進み、レコード移動手段130を通じて、拡張情報テーブル中、iレコード目以降のレコード群を(i+1)レコード以降に移動させる。
【0119】
次に、ステップS606において、テーブルバッファ格納手段127を通じて、拡張情報テーブルのiレコード目に今回のテーブルバッファを格納する。次に、ステップS607において、情報フラグのうち、テーブル変更フラグに「1」をセットする。
【0120】
一方、上記ステップS604において、今回の予約に係る開始論理アドレスがiレコード目に係る開始論理アドレスよりも小でない場合は、ステップS608に進み、判別手段121を通じて、今度は今回の予約に係る開始論理アドレスがiレコード目に係る開始論理アドレスと同じであるか否かが判別される。アドレス同士が同じであれば、次のステップS609に進み、判別手段121を通じて、今度は今回の予約に係る終了論理アドレスがiレコード目に係る終了論理アドレスと同じでないかどうかが判別される。
【0121】
アドレス同士が同じでない場合は、ステップS606に進み、ステップS606以降の処理が行なわれ、アドレス同士が一致した場合は、ステップS610に進み、セットビット処理手段128を通じて、拡張情報テーブルのiレコード目に係る指示情報ビットに「1」がセットされる。即ち、拡張メモリ領域EZ中、iレコード目に格納されている開始論理アドレスから終了論理アドレスまでの領域が予約済みとして登録される。
【0122】
上記ステップS608において、今回の予約に係る開始論理アドレスがiレコード目に係る開始論理アドレスと同じでない場合は、ステップS611に進み、インデックスレジスタiの+1更新を行なう。その後、ステップS602に戻って拡張情報テーブルの次のレコードを読み出し、ステップS603以降の処理を繰り返す。
【0123】
また、上記ステップS603において、iレコード目の内容がEOFコードである場合は、ステップS612に進み、情報フラグのうち、EOFコード要求フラグに「1」をセットした後、ステップS606に進んで、該ステップS606以降の処理が行なわれる。
【0124】
ステップS607又はステップS610の処理が終了した後は、ステップS613に進み、判別手段121を通じて、情報フラグ中、EOFコード要求フラグが「1」であるか否かが判別される。
【0125】
EOFコード要求フラグが「1」である場合は、次のステップS614に進み、EOFコード格納手段126を通じて、拡張情報テーブルの(i+1)レコード目にEOFコードを格納する。次にステップS615において、予約セクタ数更新手段129を通じて、拡張メモリ領域EZの予約セクタ数を+更新する。具体的には、今回の予約に係る終了論理アドレスから(予約開始論理アドレス−1)を差し引いた値をデータRAM63に割り付けられた予約セクタ数格納領域に格納されている値と加算して、該予約セクタ数格納領域に格納することにより行なわれる。
【0126】
次に、ステップS616において、残存セクタ数更新手段129を通じて、転送バッファ領域TZの残存セクタ数を−更新する。具体的には、データバッファの全セクタ数から上記ステップS615にて求めた予約セクタ数を差し引いた値をデータRAM63に割り付けられている残存セクタ数格納領域に格納することにより行なわれる。
【0127】
なお、上記ステップS613において、EOFコード要求フラグが「0」である場合は、直接上記ステップS615に進み、該ステップS615以降の処理を行なう。そして、上記ステップS616の処理が終了した時点でこの拡張情報テーブル作成サブルーチン122が終了する。
【0128】
図14のメインルーチンに戻って、上記ステップS502における拡張情報テーブル作成サブルーチン122が終了すると、次のステップS503に進み、判別手段121を通じて、情報フラグ中、テーブル変更要求フラグが「1」であるか否かが判別される。
【0129】
テーブル変更要求フラグが「1」である場合は、次のステップS504に進み、今度は転送情報テーブル作成サブルーチン123に入る。このサブルーチンは、図16に示すように、まず、ステップS701において、拡張情報テーブルのレコード読出しインデックスであるインデックスレジスタiと転送情報テーブルのレコード読出しインデックスであるインデックスレジスタj及びルーチン回数を示すインデックスであるインデックスレジスタkをそれぞれ初期化する。即ち各インデックスレジスタi,j及びkに初期値「0」をそれぞれ格納する。
【0130】
次に、ステップS702において、テーブル読出し手段125を通じて、拡張情報テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、拡張情報テーブルからiレコード目のレコードを読み出す。次に、ステップS703において、判別手段121を通じて、上記iレコード目のレコードの内容がEOFコードであるか否かが判別される。
【0131】
iレコード目の内容がEOFコードでない場合は、次のステップS704に進み、判別手段121を通じて、iレコード目が予約済みか否かが判別される。この判別は、iレコード目の指示情報ビットが「1」か「0」かで行なわれる。
【0132】
iレコード目が予約済みである場合は、次のステップS705に進み、判別手段121を通じて、今度はインデックスレジスタkの値が「0」か否かが判別される。この判別処理は、拡張メモリ領域EZの予約範囲が論理アドレス=0から始まっているかどうかを知るために行なわれるもので、これは拡張メモリ領域EZの予約範囲が論理アドレス=0から始まっているか否かによって、転送バッファ領域TZの割り付けが変わってくるからである。
【0133】
上記ステップS705において、インデックスレジスタkの値が「0」である場合は、次のステップS706に進み、判別手段121を通じて、今度はiレコード目に格納されている開始論理アドレスが「0」でないかどうかが判別される。上記開始論理アドレスが「0」でない場合は、次のステップS707に進み、アドレス格納手段131を通じて、転送情報テーブルの0レコード目にその開始論理アドレスとして「0」を格納し、終了論理アドレスとして上記ステップS702にて読み出した拡張情報テーブルのiレコード目に係る開始論理アドレスから1を引いた値を格納する。
【0134】
次に、ステップS708において、アドレス格納手段131を通じて、転送情報テーブルの1レコード目にその開始論理アドレスとして上記読み出した拡張情報テーブルのiレコード目に係る終了論理アドレスに1を加算した値を格納する。次に、ステップS709において、インデックスレジスタjの補正を行なう。即ち、インデックスレジスタjを+1更新する。
【0135】
一方、上記ステップS706において、iレコード目に格納されている開始論理アドレスが「0」である場合は、ステップS710に進み、アドレス格納手段131を通じて、転送情報テーブルの0レコード目にその開始論理アドレスとして上記読み出した拡張情報テーブルのiレコード目に係る終了論理アドレスに1を加算した値を格納する。
【0136】
また、上記ステップS705において、インデックスレジスタkの値が「0」でない場合は、ステップS711に進み、アドレス格納手段131を通じて、転送情報テーブルの(j−1)レコード目にその終了論理アドレスとして上記ステップS702にて読み出した拡張情報テーブルのiレコード目に係る開始論理アドレスから1を引いた値を格納する。次に、ステップS712において、アドレス格納手段131を通じて、転送情報テーブルのjレコード目にその開始論理アドレスとして上記読み出した拡張情報テーブルのiレコード目に係る終了論理アドレスに1を加算した値を格納する。
【0137】
上記ステップ709,ステップS710又はステップS712の処理が終了した後、あるいは上記ステップS704において拡張情報テーブルのiレコード目が予約済みでないと判別された場合は、次のステップS713に進み、各インデックスレジスタi,j及びkをそれぞれ+1更新した後、再びステップS702に進んで拡張情報テーブルから次のレコードを読み出してステップS703以降の処理を繰り返す。
【0138】
他方、上記ステップS703において、iレコード目の内容がEOFコードである場合は、図17で示すステップS14に進み、テーブル読出し手段125を通じて、今度は拡張情報テーブルから(i−1)レコード目を読み出す。
【0139】
次に、ステップS715において、判別手段121を通じて、上記(i−1)レコード目に格納されている終了論理アドレスがこのデータバッファ26の最終論理アドレスと同じでないか否かが判別される。各アドレスが同じでない場合は、次のステップS716に進み、アドレス格納手段131を通じて、転送情報テーブルの(J−1)レコード目にその終了論理アドレスとしてデータバッファの最終論理アドレスを格納する。次に、ステップS717において、EOFコード格納手段126を通じて、転送情報テーブルのjレコード目にEOFコードを格納する。
【0140】
一方、上記ステップS715において、上記(i−1)レコード目に格納されている終了論理アドレスとこのデータバッファの最終論理アドレスとが一致している場合は、ステップS718に進み、EOFコード格納手段126を通じて、転送情報テーブルの(j−1)レコード目にEOFコードを格納する。
【0141】
そして、これらステップS717又はステップS718が終了した時点でこの転送情報テーブル作成サブルーチン123が終了する。
【0142】
図14のメインルーチンに戻って、上記ステップS504における転送情報テーブル作成サブルーチン123が終了した段階又はステップS503において情報フラグにおけるテーブル変更要求フラグが「0」と判別された場合は、次のステップS505に進み、テーブル転送手段124を通じて、I/Fコントローラに対し、拡張情報テーブル及び転送情報テーブルを転送してこの予約処理サブルーチン96が終了し、同時に図8で示す各種要求処理サブルーチン95が終了する。
【0143】
再び、I/Fコントローラ25における図12の予約要求サブルーチン75に戻って、ステップS401におけるコマンド出力手段112によるシステムコントローラ29へのコマンドデータの出力が終了した後、次のステップS402に進む。このステップS402においては、判別手段111を通じて、システムコントローラ29から各種情報テーブルが転送されたかどうかが判別される。即ち、テーブル転送待ちになる。
【0144】
システムコントローラ29から各種情報テーブルが転送されると、次のステップS403に進み、各種テーブル受取り手段113を通じて、各種情報テーブル(即ち、拡張情報テーブル及び転送情報テーブル)をデータRAM53内のそれぞれ対応するテーブル格納領域に格納する。この時点で予約要求サブルーチン76が終了し、同時に各種要求処理サブルーチン75も終了する。
【0145】
[転送バッファ領域を経由してのデータ転送処理]
次に、ホストコンピュータ31から読出しコマンドがI/Fコントローラ25に入力された場合は、各種要求処理サブルーチン75から読出し要求サブルーチン(読出し要求手段)77に入る。
【0146】
この読出し要求手段77は、図18に示すように、各種判別を行なう判別手段141と、システムコントローラ29にコマンドを出力するコマンド出力手段142と、システムコントローラ29から転送されてくる読出し用パラメータを受け取るパラメータ受取り手段143と、デコーダ24から送られてくるROMデータDrを転送バッファ領域TZに蓄積する蓄積要求手段144と、転送バッファ領域TZに蓄積されたROMデータDrをホストコンピュータ31に転送する転送要求処理手段145と、システムコントローラ29に対して処理が完了したこと知らせる完了信号出力手段146とを有して構成されている。
【0147】
また、この読出し要求手段77は、上記各種手段のほか、蓄積要求処理手段144又は転送要求処理手段145にて活性化されるテーブル読出し手段147及びパラメータ作成手段148と、蓄積要求処理手段144のみにて活性化される再生データ読込み手段149及び再生データ書込み手段150と、転送要求処理手段145のみにて活性化されるデータ読出し手段151及びデータ転送手段152とを有する。
【0148】
テーブル読出し手段147は、転送情報テーブルを1レコードずつ読み出す手段であり、パラメータ作成手段148は、今回蓄積要求のあったデータの終了アドレスをパラメータとしてシステムコントローラ29に転送する手段である。また、再生データ読込み手段149は、入力ポート54を介して供給されるデコーダ24からのROMデータDrを1セクタ単位に読み込んで動作用RAM52あるいはデータRAM53に割り付けられたワーキングエリアに格納する手段であり、再生データ書込み手段150は、上記ワーキングエリアに格納された再生データを1セクタ単位に転送バッファ領域TZに書き込む手段である。また、データ読出し手段151は、入力ポート54を介して供給される転送バッファ領域TZからの蓄積データを1セクタ単位に読み出して動作用RAM52あるいはデータRAM53に割り付けられたワーキングエリアに格納する手段であり、データ転送手段152は、上記ワーキングエリアに格納された蓄積データを1セクタ単位にホストコンピュータ31に転送する手段である。
【0149】
そして、この読出し要求手段77は、まず、図19のステップS801において、コマンド出力手段142を通じて、コマンド格納領域に格納されている読出しコマンドデータをシステムコントローラ29に出力する。
【0150】
システムコントローラ29においては、I/Fコントローラ25からの読出しコマンドデータが入力された場合、図10で示す各種要求処理サブルーチンから読出し処理サブルーチン(読出し処理手段97)S302に入る。読出しコマンドデータは、データを読み出すべき光ディスクD上のアドレスとそのセクタ数から構成されている。
【0151】
この読出し処理手段97は、図22に示すように、各種判別を行なう判別手段161と、入力ポート64を介して送れられてくるI/Fコントローラ25からのパラメータを受け取るためのパラメータ受取り手段162と、入力ポート64を介して送れられてくるデコーダ24からのROMアドレス情報Darを読み出すためのアドレス情報読出し手段163と、データRAM63の所定領域に展開される転送情報テーブル又は転送格納テーブルをそれぞれ1レコード単位に読み出すテーブル読出し手段164と、データの読出しを要求するための読出し用パラメータ及びホストコンピュータ31へのデータ転送を要求するための転送用パラメータを作成してそれぞれI/Fコントローラ25又はメカニズムコントローラ28に転送するパラメータ作成手段165と、ROMデータDrを蓄積するべき転送バッファ領域TZの開始論理アドレスを決定する論理アドレス決定手段166と、今回のコマンドデータ及びI/Fコントローラ25からのパラメータに基づいて転送格納テーブルを作成する転送格納テーブル作成手段167と、I/Fコントローラ25に対して各種要求を指示するための信号を出力する要求出力手段168とを有して構成されている。
【0152】
また、この読出し処理手段97は、上記各種手段のほか、論理アドレス決定手段166にて活性化され、転送バッファ領域TZのセクタ数を−更新するための残存セクタ数更新手段169と、転送格納テーブル作成手段167にて活性化され、転送格納テーブルにおける該当レコードの有効ビットをリセットするための有効ビットリセット手段170と、今回のコマンドデータが展開されたテーブルバッファを転送格納テーブルの該当レコードに格納するためのテーブルバッファ格納手段171と、転送格納テーブルの該当レコードにEOFコードを格納するためのEOFコード格納処理手段172とを有する。
【0153】
ここで、転送格納テーブルは、図55(b)に示すように、多数のレコードにて構成され、1つのレコードの内容は、最初の1ビット目が当該レコードが有効か無効かを示す指示情報ビットであり、1/0=有効/無効を示す。また、このレコードには、上記指示情報ビットのほかに、読出し対象の光ディスク上のアドレスと転送バッファ領域上の開始論理アドレス(相対セクタアドレス)と終了論理アドレス(相対セクタアドレス)と転送情報テーブルの対応レコード数と読出し対象のセクタ数が格納される領域が割り付けられている。
【0154】
そして、この読出し処理手段97は、まず、図23のステップSB01において、コマンド格納領域に格納されているコマンドデータをテーブルバッファに展開する。このテーブルバッファは、図55(b)で示す転送格納テーブルの1レコードの構成と同じであり、このステップSB01では、コマンドデータ(光ディスク上のアドレス及びセクタ数)を転送格納テーブルの1レコードの配列順序に応じて格納する。
【0155】
次に、ステップSB02において、転送格納テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0156】
次に、ステップSB03において、テーブル読出し手段164を通じて、転送格納テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、転送格納テーブルからiレコード目のレコードを読み出す。次に、ステップSB04において、判別手段161を通じて、上記iレコード目のレコードの内容がEOFコードであるか否かが判別される。iレコード目の内容がEOFコードでない場合は、次のステップSB05に進み、判別手段161を通じて、iレコード目の内容が有効か無効かが判別される。この判別は、iレコード目の最初の1ビット目に「1」か「0」かどうかで行なわれる。
【0157】
有効である場合は、次のステップSB06に進み、判別手段161を通じて、今回要求のあった光ディスクD上のアドレスとiレコード目に登録されている光ディスクD上のアドレスが一致しているか否かが判別される。一致している場合は、次のステップSB07に進み、判別手段161を通じて、今回要求のあったセクタ数がiレコード目に登録されているセクタ数以下であるか否かが判別される。
【0158】
今回のセクタ数が登録セクタ数以下である場合は、次のステップSB08に進み、パラメータ作成手段165を通じて、転送用パラメータを作成する。具体的には、データRAM63に割り付けられたパラメータ格納領域に、転送格納テーブルのiレコード目に係る転送バッファ領域TZ上の開始論理アドレスと転送情報テーブルに対応するレコード数と今回要求のセクタ数を格納する。
【0159】
一方、上記ステップSB07において、今回要求のセクタ数が登録セクタ数よりも大きいと判別された場合、あるいは上記ステップSB06において、今回要求の光ディスクD上のアドレスと登録アドレスとが不一致であると判別された場合、あるいは上記ステップSB05において、iレコード目の内容が無効であると判別された場合は、ステップSB09に進み、インデックスレジスタiの+更新を行なう。その後、上記ステップSB03に戻り、転送格納テーブルの次のレコードを読出してステップSB04以降の処理を繰り返す。
【0160】
また、上記ステップSB04において、iレコード目の内容がEOFコードであると判別された場合は、図24のステップSB10に進み、論理アドレス決定サブルーチン(論理アドレス決定手段)166に入る。この論理アドレス決定サブルーチン166は、図25に示すように、まず、ステップSC01において、判別手段161を通じて、今回要求のセクタ数が転送バッファ領域TZの残存セクタ数以下か否かが判別される。この判別は、データRAM63に割り付けられている残存セクタ数格納領域内の値と今回要求のセクタ数とを比較することによって行なわれる。
【0161】
今回要求のセクタ数が残存セクタ数以下である場合、次のステップSC02に進み、インデックスレジスタjに前回の終了論理アドレスに1を加算した値を格納する。具体的には、データRAMに割り付けられている終了アドレス格納領域に格納されている前回I/Fコントローラから送られてきた転送バッファ領域TZへのデータ蓄積に伴う終了論理アドレスに1を加算した値をインデックスレジスタjに格納する。
【0162】
次に、ステップSC03において、残存セクタ数更新手段169を通じて、転送バッファ領域TZの残存セクタ数を−更新する。具体的には、現在、残存セクタ数格納領域に格納されている値から今回要求のセクタ数を差し引いた値を再び残存セクタ数格納領域に格納することにより行なわれる。
【0163】
次に、ステップSC04において、転送情報テーブル及び拡張情報テーブルの各レコード読出しインデックスとなるインデックスレジスタkを初期化する。即ち、インデックスレジスタkに初期値「0」を格納する。次に、ステップSC05において、テーブル読出し手段164を通じて、転送情報テーブルからインデックスレジスタkで示す番号のレコードを読み出す。即ち、転送情報テーブルからkレコード目のレコードを読み出す。
【0164】
次に、ステップSC06において、テーブル読出し手段164を通じて、拡張情報テーブルからインデックスレジスタkで示す番号のレコードを読み出す。即ち、拡張情報テーブルからkレコード目のレコードを読み出す。
【0165】
次に、ステップSC07において、判別手段161を通じて、インデックスレジスタjの値が転送情報テーブルにおけるkレコード目の開始論理アドレスと終了論理アドレスの間にあるかどうかが判別される。インデックスレジスタjの値が開始論理アドレスと終了論理アドレスの間にある場合、次のステップSC08に進み、レジスタADDにインデックスレジスタjの値を格納し、レジスタRCDにインデックスレジスタkの値を格納する。
【0166】
一方、上記ステップSC07において、インデックスレジスタjの値が開始論理アドレスと終了論理アドレスの間にない場合は、ステップSC09に進み、判別手段161を通じて、今度はインデックスレジスタjの値が拡張情報テーブルにおけるkレコード目の開始論理アドレスと終了論理アドレスの間にあるかどうかが判別される。インデックスレジスタjの値が開始論理アドレスと終了論理アドレスの間にある場合、次のステップSC10に進み、レジスタADDに上記終了論理アドレスに1を加算した値を格納し、レジスタRCDにインデックスレジスタkの値に1を加算した値を格納する。
【0167】
上記ステップSC09において、インデックスレジスタjの値が拡張情報テーブルにおけるkレコード目の開始論理アドレスと終了論理アドレスの間にない場合は、ステップSC11に進み、インデックスレジスタkの+1更新を行う。その後、上記ステップSC05に進んで、該ステップSC05以降の処理を繰り返す。
【0168】
他方、上記ステップSC01において、今回要求のセクタ数が転送バッファ領域TZの残存セクタ数以下でないと判別された場合は、ステップSC12に進み、テーブル読出し手段164を通じて、転送情報テーブルの0レコード目を読み出す。そして、レジスタADDに該0レコード目の開始アドレスを格納し、レジスタRCDに0を格納する。次に、ステップSC13において、残存セクタ数を最大にする。具体的には、残存セクタ数格納領域にデータバッファ26の全セクタ数から予約セクタ数を差し引いた値を格納する。
【0169】
そして、上記ステップSC08での処理あるいは上記ステップSC10での処理あるいは上記ステップSC13での処理が終了した段階で、この論理アドレス決定サブルーチン166が終了する。
【0170】
図24のメインルーチンに戻って、上記ステップSB10における論理アドレス決定サブルーチンが終了した段階で、次のステップSB11に進み、パラメータ作成手段165を通じて、メカニズムコントローラ28に転送すべき読出し用パラメータを作成する。具体的には、データRAM63に割り付けられたメカ用読出しパラメータ格納領域に、テーブルバッファに格納されている今回要求の光ディスクD上のアドレスを格納することにより行なわれる。
【0171】
次に、ステップSB12において、パラメータ作成手段165を通じて、I/Fコントローラ25に転送すべき読出し用パラメータを作成する。具体的には、データRAM63に割り付けられたI/F用読出しパラメータ格納領域に、レジスタADDに格納されている今回の開始論理アドレスと、レジスタRCDに格納されている今回のレコード数(転送情報テーブルのレコード数)と、テーブルバッファに格納されている今回要求のセクタ数を格納することにより行なわれる。
【0172】
次に、ステップSB13において、パラメータ作成手段165を通じて、メカニズムコントローラ28に対して読出し要求信号とメカ用読出しパラメータ格納領域に格納されている読出し用パラメータを出力する。また、同時にI/Fコントローラ25に対して読出し要求信号とI/F用読出しパラメータ格納領域に格納されている読出し用パラメータを出力する。
【0173】
ここで、メカニズムコントローラ28は、システムコントローラ29からの読出し要求信号の入力に基づいて、読出し用パラメータから光ディスクD上のアドレスを取り出した後、光ピックアップ用スライド機構7を駆動制御して光ピックアップ3を要求のあったアドレスに対応するトラック位置まで搬送する。この段階で、メカニズムコントローラ28は、RFアンプ部21に対して検出信号Srの入力を許可するように制御する。これによって、光ピックアップ3における光検出器からの検出信号SrがRFアンプ部21を介して復調回路22に入力され、再生データDiとしてデコーダ24に供給され、更にROMデータDrとしてI/Fコントローラ25に供給されることになる。
【0174】
一方、デコーダ24からは上記ROMデータDrに対応したROMアドレス情報Darが得られ、該ROMアドレス情報Darはシステムコントローラ29に供給される。
【0175】
そして、システムコントローラ29は、図24におけるステップSB14において、アドレス情報読出し手段163を通じて、入力ポート64を介して送られてくるデコーダ24からのROMアドレス情報Darを受け取る。
【0176】
次に、ステップSB15において、判別手段161を通じて、上記アドレス情報読出し手段163を通じて受け取られたアドレスと今回要求の光ディスクD上のアドレスとが一致しているかどうかが判別される。これらアドレス同士が一致するまでステップSB14及びステップSB15が繰り返される。
【0177】
アドレス同士が一致した場合は、次のステップSB16に進み、要求出力手段168を通じて、I/Fコントローラ25に対し、蓄積要求信号を出力する。I/Fコントローラ25は、この蓄積要求信号の入力に基づいてデコーダ24からのROMデータDrを転送バッファ領域TZ中、今回決定された開始論理アドレスから順次セクタ単位に蓄積する。そして、要求されたセクタ数分のROMデータDrが蓄積された段階でシステムコントローラ29に対して蓄積完了信号を出力する。この動作についての詳細は後述する。
【0178】
図24の処理ルーチンに戻り、上記ステップSB16にて蓄積要求信号を出力した後、次のステップSB17に進み、I/Fコントローラ25からの蓄積完了信号の入力を待つ。I/Fコントローラ25から蓄積完了信号が入力された段階で次のステップSB18に進み、要求出力手段168を通じて、メカニズムコントローラ28に対し、停止要求信号を出力する。メカニズムコントローラ28は、システムコントローラ29からの停止要求信号の入力に基づいて光ディスクDに対する再生動作を停止するように各種回路を制御する。
【0179】
次に、ステップSB19において、パラメータ作成手段165を通じて、今度は転送用パラメータを作成する。具体的には、データRAM63に割り付けられたパラメータ格納領域に、今回決定された開始論理アドレス,レコード数及び今回要求のセクタ数を格納する。
【0180】
次に、ステップSB20において、パラメータ作成手段165を通じて、I/Fコントローラ25に対して転送要求信号とパラメータ格納領域に格納されている転送用パラメータを出力する。このステップSB20での処理は、上記ステップSB19の処理を終了した後のほか、図23で示すステップSB08を終了した後においても行なわれることになる。
【0181】
ここで、I/Fコントローラ25は、システムコントローラ29からの転送要求信号の入力に基づいて、転送バッファ領域TZ中、転送用パラメータに格納されている開始論理アドレスから順次ROMデータDrを読み出してホストコンピュータ31側に転送する。そして、要求されたセクタ数分のROMデータDrがホストコンピュータ31側に転送された段階でシステムコントローラ29に対して転送完了信号を出力し、更にパラメータを出力する。この動作の詳細は後述する。
【0182】
図24の処理ルーチンに戻り、上記ステップSB20にて転送要求信号を出力した後、次のステップSB21に進み、I/Fコントローラ25からの転送完了信号の入力を待つ。I/Fコントローラ25から転送完了信号が入力された段階で次のステップSB22に進み、パラメータ受取り手段162を通じて、入力ポート64を介して供給されるI/Fコントローラ25からのパラメータを受取り、データRAM63に割り付けられている終了アドレス格納領域に格納する。このパラメータの内容は、今回転送バッファ領域TZに蓄積したROMデータDrの終了論理アドレスである。
【0183】
次に、ステップSB23において、転送格納テーブル作成サブルーチン(転送格納テーブル作成手段167)に入る。このサブルーチンは、図26に示すように、まず、ステップSD01において、転送格納テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0184】
次に、ステップSD02において、レジスタEADに終了アドレス格納領域に格納されている今回の終了論理アドレスを格納する。次に、ステップSD03において、テーブル読出し手段164を通じて、転送格納テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、転送格納テーブルからiレコード目のレコードを読み出す。
【0185】
次に、ステップSD04において、判別手段161を通じて、上記iレコード目のレコードの内容がEOFコードであるか否かが判別される。iレコード目の内容がEOFコードでない場合は、次のステップSD05に進み、判別手段161を通じて、今度はiレコード目の内容が有効か無効かが判別される。この判別は、iレコード目の最初の1ビット目に「1」か「0」かどうかで行なわれる。
【0186】
有効である場合は、次のステップSD06に進み、転送格納テーブルのiレコード目から開始論理アドレス及び終了論理アドレスを読み出す。次に、ステップSD07において、判別手段161を通じて、上記iレコード目に係る開始論理アドレスが、今回蓄積したデータの開始論理アドレスより小さいか又は終了論理アドレスよりも大きいか否かが判別される。
【0187】
上記iレコード目の開始論理アドレスがデータの開始論理アドレスより小さいか又は終了論理アドレスよりも大きい場合、次のステップSD08に進み、判別手段161を通じて、今度は上記iレコード目に係る終了論理アドレスが今回蓄積したデータの開始論理アドレスより小さいか又は終了論理アドレスよりも大きいか否かが判別される。
【0188】
上記iレコード目の開始論理アドレスがデータの開始論理アドレスより小さいか又は終了論理アドレスよりも大きい場合、次のステップSD09に進み、インデックスレジスタiを+1更新する。その後、上記ステップSD03に戻って、転送格納テーブルにおける次のレコードを読み出し、ステップSD04以降の処理を繰り返す。
【0189】
一方、上記ステップSD07において、上記iレコード目に係る開始論理アドレスが、今回蓄積したデータの開始論理アドレスと終了論理アドレスの間にあると判別された場合、あるいは上記ステップSD08において、上記iレコード目に係る終了論理アドレスが、今回蓄積したデータの開始論理アドレスと終了論理アドレスの間にあると判別された場合は、ステップSD10に進み、有効ビットリセット手段170を通じて、転送格納テーブルのiレコード目における有効ビットをリセットして当該レコードを無効にする。
【0190】
そして、上記ステップSD10での処理が終了した段階、あるいは上記ステップSD05において、転送格納テーブルのiレコード目の内容が無効であると判別された場合、あるいは上記ステップSD04において、転送格納テーブルのiレコード目のレコードの内容がEOFコードであると判別された場合は、次のステップSD11に進む。
【0191】
このステップSD11においては、テーブルバッファに所定のデータを格納する。具体的には、今回要求のあった光ディスクD上のアドレス及びセクタ数は、図23で示すステップSB01にて既に格納処理されているため、その他のデータ、即ちレジスタADDに格納されている今回決定された転送バッファ領域TZの開始論理アドレスとレジスタEADに格納されている今回転送バッファ領域TZに蓄積されたデータの終了論理アドレスとレジスタRCDに格納されている転送情報テーブルの対応レコード数がそれぞれ転送格納テーブルの1レコードの配列順序に応じて格納される。
【0192】
次に、ステップSD12において、転送格納テーブルのiレコード目にテーブルバッファを格納する。そして、次のステップSD13において、EOFコード格納処理サブルーチン(EOFコード格納処理手段)172に入る。
【0193】
このサブルーチンは、図27に示すように、まず、ステップSE01において、転送格納テーブルのレコード読出しインデックスとなるインデックスレジスタi,j及びkをそれぞれ初期化する。即ち、各インデックスレジスタi,j及びkにそれぞれ初期値「0」を格納する。
【0194】
次に、ステップSE02において、テーブル読出し手段164を通じて、転送格納テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、転送格納テーブルからiレコード目のレコードを読み出す。次に、ステップSE03において、判別手段161を通じて、上記iレコード目のレコードの内容がEOFコードであるか否かが判別される。
【0195】
iレコード目の内容がEOFコードでない場合は、次のステップSE04に進み、判別手段161を通じて、iレコード目の内容が有効か無効かが判別される。この判別は、iレコード目の最初の1ビット目に「1」か「0」かどうかで行なわれる。
【0196】
有効である場合は、次のステップSE05に進み、インデックスレジスタkの値とインデックスレジスタjの値を加算した値に1を加えた値をインデックスレジスタkに格納する。次に、ステップSE06において、インデックスレジスタjを初期化する。即ち、インデックスレジスタjに初期値「0」を格納する。
【0197】
一方、上記ステップSE04において、転送格納テーブルのiレコード目の内容が無効であると判別された場合は、ステップSE07に進み、インデックスレジスタjを+1更新する。
【0198】
そして、上記ステップSE06での処理あるいは上記ステップSE07での処理が終了した段階で次のステップSE08に進み、インデックスレジスタiを+1更新する。その後、上記ステップSE02に戻って、転送格納テーブルにおける次のレコードを読み出し、ステップSE03以降の処理を繰り返す。
【0199】
他方、上記ステップSE03において、転送格納テーブルのiレコード目の内容がEOFコードであると判別された場合は、ステップSE09に進み、転送格納テーブルのkレコード目と(k+1)レコード目にそれぞれEOFコードを格納する。このステップSE09での処理が終了した段階でこのEOFコード格納処理サブルーチン172が終了する。
【0200】
そして、図26の処理ルーチンに戻って、上記ステップSD13が終了した段階でこの転送格納テーブル作成サブルーチンが終了する。また、図24のメインルーチンに戻って、上記ステップSB23における転送格納テーブル作成サブルーチンが終了した段階でこの読出し処理サブルーチンが終了し、同時に図10で示す各種要求処理サブルーチンが終了する。
【0201】
再び、I/Fコントローラ25における図19の読出し要求サブルーチンに戻って、ステップS801におけるコマンド出力手段142によるシステムコントローラ29へのコマンドデータの出力が終了した後、次のステップS802に進む。
【0202】
このステップS802においては、判別手段141を通じて、システムコントローラ29から要求信号の入力があったかどうかが判別される。即ち、要求信号入力待ちになる。システムコントローラ29から要求信号が入力されると、次のステップS803に進み、判別手段141を通じて、今度はシステムコントローラ29から入力された要求信号が読出し要求信号であるか否かが判別される。
【0203】
読出し要求信号である場合は、次のステップS804に進み、パラメータ受取り手段143を通じて、入力ポート54を介して供給される読出し用パラメータを受け取ってデータRAM53に割り付けられているパラメータ格納領域に格納する。これによって、このパラメータ格納領域には、データを蓄積すべき転送バッファ領域TZの開始論理アドレスと転送情報テーブルの対応レコード数とセクタ数が格納されることになる。
【0204】
次に、ステップS805において、判別手段141を通じて、システムコントローラ29からの蓄積要求信号の入力待ちとなる。システムコントローラ29から蓄積要求信号の入力があった場合は、次のステップS806に進み、蓄積要求処理サブルーチン(蓄積要求処理手段)144に入る。このサブルーチンは、図20に示すように、まず、ステップS901において、インデックスレジスタiに初期値「0」を格納し、更にパラメータ格納領域に格納されているレコード数をインデックスレジスタkに格納する。
【0205】
次に、ステップS902において、テーブル読出し手段147を通じて、転送情報テーブルからインデックスレジスタkで示す番号のレコードを読み出す。即ち、転送情報テーブルからkレコード目のレコードを読み出す。
【0206】
次に、ステップS903において、再生データ読込み手段149を通じて、入力ポート54を介して供給されるデコーダ24からのROMデータ(1セクタ)Drを読み込む。次に、ステップS904において、ROMデータを転送バッファ領域に蓄積するためのアドレスを計算する。具体的には、インデックスレジスタjの値とインデックスレジスタiの値とを加算した値を蓄積アドレスとしてインデックスレジスタjに格納する。
【0207】
次に、ステップS905において、判別手段141を通じて、今回蓄積するデータの書込み対象領域が転送バッファ領域TZ以外(即ち、拡張メモリ領域EZ)であるかどうかが判別される。この判別は、インデックスレジスタjの値が転送情報テーブルのkレコード目における終了論理アドレスよりも大きいか否かで行なわれる。インデックスレジスタjの値が上記終了論理アドレスよりも大きく、今回蓄積するデータの書込み対象領域が転送バッファ領域TZ以外の場合は、次のステップS906に進み、インデックスレジスタkを+1更新する。
【0208】
次に、ステップS907において、テーブル読出し手段147を通じて、転送情報テーブルのkレコード目を読み出し、該kレコード目に係る開始論理アドレスをインデックスレジスタjに格納する。
【0209】
上記ステップS907での処理が終了した段階、あるいは上記ステップS905においてインデックスレジスタjの値が転送情報テーブルのkレコード目に係る終了論理アドレス以下である場合は、次のステップS908に進み、再生データ書込み手段150を通じて、ステップS903にて読み込んだROMデータ(1セクタ)をインデックスレジスタjの値が示す転送バッファ領域TZの論理アドレスに書き込む。
【0210】
次に、ステップS909において、インデックスレジスタiを+1更新する。次に、ステップS910において、判別手段141を通じて、インデックスレジスタiの値がパラメータ格納領域に格納されているセクタ数以上であるか否かが判別される。インデックスレジスタiの値がセクタ数よりも小さい場合は、上記ステップS903に進み、次のROMデータ(1セクタ)を読み込んで、ステップS904以降の処理を繰り返す。
【0211】
一方、上記インデックスレジスタiの値がセクタ数以上となった場合は、次のステップS911に進み、パラメータ作成手段148を通じて、インデックスレジスタjの値(終了論理アドレス)を終了アドレスパラメータ格納領域に格納する。そして、このステップS911での処理が終了した段階で、この蓄積要求処理サブルーチン144が終了する。
【0212】
図19のメインルーチンに戻って、上記ステップS806における蓄積要求処理サブルーチン144が終了した段階で、次のステップS807に進み、完了信号出力手段146を通じて、システムコントローラ29に対し蓄積完了信号を出力する。
【0213】
次に、ステップS808において、判別手段141を通じて、システムコントローラ29から転送要求信号の入力があったかどうかが判別される。即ち、転送要求信号入力待ちになる。
【0214】
このステップS808において、システムコントローラ29から転送要求信号が入力されると、あるいは上記ステップS803において、読出し要求ではないと判別された場合は、次のステップS809に進み、パラメータ受取り手段143を通じて、入力ポート54を介して供給される転送用パラメータを受け取ってデータRAM53に割り付けられているパラメータ格納領域に格納する。これによって、このパラメータ格納領域には、今回転送すべきデータが蓄積されている転送バッファ領域TZの開始論理アドレスと転送情報テーブルの対応レコード数とセクタ数が格納されることになる。
【0215】
次に、ステップS810において、転送要求処理サブルーチン(転送要求処理手段)145に入る。このサブルーチンは、図21に示すように、まず、ステップSA01において、インデックスレジスタiに初期値「0」を格納し、更にパラメータ格納領域に格納されているレコード数をインデックスレジスタkに格納する。
【0216】
次に、ステップSA02において、テーブル読出し手段147を通じて、転送情報テーブルからインデックスレジスタkで示す番号のレコードを読み出す。即ち、転送情報テーブルからkレコード目のレコードを読み出す。次に、ステップSA03において、転送バッファ領域からデータを読み出すべきアドレスを計算する。具体的には、インデックスレジスタjの値とインデックスレジスタiの値とを加算した値を読出しアドレスとしてインデックスレジスタjに格納する。
【0217】
次に、ステップSA04において、判別手段141を通じて、今回転送するデータの読出し対象領域が転送バッファ領域TZ以外(即ち、拡張メモリ領域EZ)であるかどうかが判別される。この判別は、インデックスレジスタjの値が転送情報テーブルのkレコード目における終了論理アドレスよりも大きいか否かで行なわれる。インデックスレジスタjの値が上記終了論理アドレスよりも大きく、今回転送するデータの読出し対象領域が転送バッファ領域TZ以外の場合は、次のステップSA05に進み、インデックスレジスタkを+1更新する。
【0218】
次に、ステップSA07において、テーブル読出し手段147を通じて、転送情報テーブルのkレコード目を読み出し、該kレコード目に係る開始論理アドレスをインデックスレジスタjに格納する。
【0219】
上記ステップSA06での処理が終了した段階あるいは上記ステップSA04においてインデックスレジスタjの値が転送情報テーブルのkレコード目に係る終了論理アドレス以下である場合は、次のステップSA07に進み、データ読出し手段151を通じて、転送バッファ領域TZ中、インデックスレジスタjで示す論理アドレスに蓄積されているROMデータ(1セクタ)を読み出す。
【0220】
次に、ステップSA08において、データ転送手段152を通じて、上記ステップSA07において読み出した1セクタ分のROMデータをホストコンピュータ31に転送する。次に、ステップSA09において、インデックスレジスタiを+1更新する。
【0221】
次に、ステップSA10において、判別手段141を通じて、インデックスレジスタiの値がパラメータ格納領域に格納されているセクタ数以上であるか否かが判別される。インデックスレジスタiの値がセクタ数よりも小さい場合は、上記ステップSA03に進んで、読出しアドレスを更新して、ステップSA04以降の処理を繰り返す。一方、上記インデックスレジスタiの値がセクタ数以上となった場合にこの転送要求処理サブルーチン145が終了する。
【0222】
図19のメインルーチンに戻って、上記ステップS810における転送要求処理サブルーチン145が終了した段階で、次のステップS811に進み、完了信号出力手段146を通じて、システムコントローラ29に対し、転送完了信号を出力すると同時にパラメータ作成手段148を通じて、終了アドレスパラメータ格納領域に格納されている終了論理アドレスをパラメータとしてシステムコントローラ29に出力する。
【0223】
上記ステップS811での処理が終了した段階でこの読出し要求サブルーチン77が終了し、同時に図6で示す各種要求処理サブルーチン75が終了する。
【0224】
[拡張メモリ領域を経由してのデータ転送処理]
次に、ホストコンピュータ31から拡張読出しコマンドがI/Fコントローラ25に入力された場合は、図6において、各種要求処理サブルーチン75から拡張読出し要求サブルーチン(拡張読出し要求手段78)S103に入る。
【0225】
この拡張読出し要求手段78は、図28に示すように、各種判別を行なう判別手段181と、システムコントローラ29にコマンドを出力するコマンド出力手段182と、システムコントローラ29から転送されてくる読出し用パラメータを受け取るパラメータ受取り手段183と、デコーダ24から送られてくるROMデータDrを拡張メモリ領域EZに蓄積する蓄積要求手段184と、拡張メモリ領域EZに蓄積されたROMデータDrをホストコンピュータ31に転送する転送要求処理手段185と、システムコントローラ29に対して処理が完了したこと知らせる完了信号出力手段186とを有して構成されている。
【0226】
また、この拡張読出し要求手段186は、上記各種手段のほか、蓄積要求処理手段184にて活性化される再生データ読込み手段187及び再生データ書込み手段188と、転送要求処理手段185にて活性化されるデータ読出し手段189及びデータ転送手段190とを有する。
【0227】
再生データ読込み手段187は、入力ポート54を介して供給されるデコーダ24からのROMデータDrを1セクタ単位に読み込んで動作用RAM52あるいはデータRAM53に割り付けられたワーキングエリアに格納する手段であり、再生データ書込み手段188は、上記ワーキングエリアに格納されたROMデータDrを1セクタ単位に拡張メモリ領域EZに書き込む手段である。また、データ読出し手段189は、入力ポート54を介して供給される拡張メモリ領域EZからのROMデータDrを1セクタ単位に読み出して動作用RAM52あるいはデータRAM53に割り付けられたワーキングエリアに格納する手段であり、データ転送手段190は、上記ワーキングエリアに格納されたROMデータを1セクタ単位にホストコンピュータ31に転送する手段である。
【0228】
そして、この拡張読出し要求手段78は、まず、図29のステップSF01において、コマンド出力手段182を通じて、コマンド格納領域に格納されている拡張読出しコマンドデータをシステムコントローラ29に出力する。
【0229】
システムコントローラ29においては、I/Fコントローラ25からの拡張読出しコマンドデータが入力された場合、図10で示す各種要求処理サブルーチン95から拡張読出し処理サブルーチン(拡張読出し処理手段98)S303に入る。読出しコマンドデータは、データを読み出すべき光ディスクD上のアドレスとROMデータDrを蓄積すべき拡張メモリ領域EZの開始論理アドレスとセクタ数から構成されている。
【0230】
この拡張読出し処理手段98は、図32に示すように、各種判別を行なう判別手段201と、入力ポート64を介して送れられてくるデコーダ24からのROMアドレス情報Darを読み出すためのアドレス情報読出し手段202と、データRAM63の所定領域に展開される拡張情報テーブル又は拡張格納テーブルをそれぞれ1レコード単位に読み出すテーブル読出し手段203と、今回のコマンドデータに基づいて対応する拡張情報テーブルの該当レコードを検索する拡張情報テーブル検索手段204と、データの読出しを要求するための読出し用パラメータ及びホストコンピュータ31へのデータ転送を要求するための転送用パラメータを作成してそれぞれI/Fコントローラ25又はメカニズムコントローラ28に転送するパラメータ作成手段205と、今回のコマンドデータに基づいて拡張格納テーブルを作成する拡張格納テーブル作成手段206と、拡張メモリ領域EZへのデータ蓄積に伴って減少する予約セクタ数を−更新するための残存セクタ数更新手段207と、I/Fコントローラ25に対して各種要求を指示するための信号を出力する要求出力手段208と、I/Fコントローラ25に対してエラー信号を出力するためのエラー信号出力手段209とを有して構成されている。
【0231】
また、この拡張読出し処理手段98は、上記各種手段のほか、拡張情報テーブル検索手段204にて活性化され、今回の蓄積対象の拡張メモリ領域EZにおける蓄積可能セクタ数を計算するセクタ数計算手段210とを有する。
【0232】
ここで、拡張格納テーブルは、図55(a)に示すように、多数のレコードにて構成され、1つのレコードの内容は、読出し対象の光ディスク上のアドレスと拡張メモリ領域上の開始論理アドレス(相対セクタアドレス)とセクタ数が格納される領域が割り付けられている。
【0233】
そして、この拡張読出し処理手段98は、まず、図33のステップSI01において、コマンド格納領域に格納されているコマンドデータをテーブルバッファに展開する。このテーブルバッファは、図55(a)で示す拡張格納テーブルの1レコードの構成と同じであり、このステップSI01では、コマンドデータ(光ディスクD上のアドレス,拡張メモリ領域EZ上の開始論理アドレス及びセクタ数)を拡張格納テーブルの1レコードの配列順序に応じて格納する。
【0234】
次に、ステップSI02において、判別手段201を通じて、現在、拡張メモリ領域EZに少なくとも1つのROMデータDrが蓄積されているか否かが判別される。この判別は、データRAM63上に割り付けられた蓄積ポイント格納領域に格納されている値が「0」であるか否かで行なわれる。
【0235】
上記蓄積ポイント格納領域内の値が「0」でない場合は、次のステップSI03に進み、拡張格納テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0236】
次に、ステップSI04において、テーブル読出し手段203を通じて、拡張格納テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、拡張格納テーブルからiレコード目のレコードを読み出す。
【0237】
次に、ステップSI05において、判別手段201を通じて、今回要求のあった光ディスクD上のアドレスとiレコード目に登録されている光ディスクD上のアドレスが一致しているか否かが判別される。一致している場合は、次のステップSI06に進み、判別手段201を通じて、今回要求のあったセクタ数がiレコード目に登録されているセクタ数以下であるか否かが判別される。
【0238】
今回のセクタ数が登録セクタ数以下である場合は、次のステップSI07に進み、パラメータ作成手段205を通じて、転送用パラメータを作成する。具体的には、データRAM63に割り付けられたパラメータ格納領域に、拡張格納テーブルのiレコード目に係る拡張メモリ領域EZ上の開始論理アドレスと今回要求のセクタ数を格納する。
【0239】
一方、上記ステップSI06において、今回要求のセクタ数が登録セクタ数よりも大きいと判別された場合、あるいは上記ステップSI05において、今回要求の光ディスクD上のアドレスと登録アドレスとが不一致であると判別された場合は、ステップSI08に進み、インデックスレジスタiの+更新を行なう。
【0240】
次に、ステップSI09において、判別手段201を通じて、拡張メモリ領域EZに蓄積されているデータの検索がすべて終了したかどうかが判別される。この判別は、インデックスレジスタiの値が蓄積ポイント格納領域内の値以上であるかどうかで行なわれる。インデックスレジスタiの値が蓄積ポイント格納領域内の値より小さい場合は、上記ステップSI04に戻って、拡張格納テーブルの次のレコードを読出し、ステップSI05以降の処理を繰り返す。
【0241】
インデックスレジスタiの値が蓄積ポイント格納領域内の値以上である場合は、次のステップSI10に進み、判別手段201を通じて、今度は今回要求のセクタ数が拡張メモリ領域の予約セクタ数以下か否かが判別される。この判別は、データRAM63に割り付けられている予約セクタ数格納領域内の値と今回要求のセクタ数とを比較することによって行なわれる。
【0242】
今回要求のセクタ数が予約セクタ数以下である場合、次のステップSI11に進み、拡張情報テーブル検索サブルーチン(拡張情報テーブル検索手段204)に入る。一方、今回要求のセクタ数が予約セクタ数よりも大きい場合は、ステップSI12に進み、エラー信号出力手段209を通じて、I/Fコントローラ25に対し、エラー信号を出力して強制終了する。このエラー信号は、I/Fコントローラ25を介してホストコンピュータ31に供給される。ホストコンピュータ31は、上記エラー信号の供給に基づいて例えばこのホストコンピュータ31に接続されているCRTや液晶表示パネル等の表示装置を通じて、操作者にエラーがあったことを知らせる。
【0243】
ところで、上記ステップSI11における拡張情報テーブル検索サブルーチン204は、図35に示すように、まず、ステップSJ01において、格納情報テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0244】
次に、ステップSJ02において、テーブル読出し手段203を通じて、拡張情報テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、拡張情報テーブルからiレコード目のレコードを読み出す。次に、ステップSJ03において、判別手段201を通じて、上記iレコード目の内容がEOFコードでないかどうかが判別される。EOFコードでない場合は、次のステップSJ04に進み、上記iレコード目から開始論理アドレス及び終了論理アドレスを読み出す。
【0245】
次に、ステップSJ05において、判別手段201を通じて、今回要求の開始論理アドレスが上記iレコード目に係る開始論理アドレスと終了論理アドレスの間にあるか否かが判別される。
【0246】
今回要求の開始論理アドレスが上記アドレスの間にある場合は、次のステップSJ06に進み、セクタ数計算手段210を通じて、拡張情報テーブルにて設定されたiレコード目に係る拡張メモリ領域の上記今回要求の開始論理アドレス以降のセクタ数が計算される。具体的には、iレコード目に係る終了論理アドレスから今回要求の開始論理アドレスから1を差し引いた値を差し引くことにより行なわれる。このセクタ数はインデックスレジスタkに格納される。
【0247】
次に、ステップSJ07において、判別手段201を通じて、iレコード目に係る拡張メモリ領域の上記今回要求の開始論理アドレス以降のセクタ数が今回要求のセクタ数以上であるか否かが判別される。この判別は、インデックスレジスタkの値が今回要求のセクタ数以上であるかどうかで行なわれる。インデックスレジスタkの値が今回要求のセクタ数以上であれば、この拡張情報テーブル検索サブルーチン204が終了する。
【0248】
一方、上記ステップSJ05において、今回要求の開始論理アドレスが上記iレコード目に係る開始論理アドレスと終了論理アドレスの間にないと判別された場合は、ステップSJ08に進み、インデックスレジスタiの+1更新を行なう。その後、ステップSJ02に進んで、拡張情報テーブルの次のレコードを読み出し、ステップSJ03以降の処理を繰り返す。
【0249】
他方、上記ステップSJ07において、インデックスレジスタkの値が今回要求のセクタ数よりも小さいと判別された場合、あるいは上記ステップSJ03において、拡張情報テーブルのiレコード目の内容がEOFコードであると判別された場合は、ステップSJ09に進み、エラー信号出力手段209を通じて、I/Fコントローラ25に対し、エラー信号を出力して強制終了する。
【0250】
図33のメインルーチンに戻って、上記ステップSI11における拡張格納テーブル作成サブルーチン204が終了すると、次のステップSI13に進み、拡張格納テーブル作成手段206を通じて、拡張格納テーブル中、蓄積ポイント格納領域内の値に対応するレコード目にテーブルバッファを格納する。次に、ステップSI14において、蓄積ポイント格納領域内の値を+1更新する。
【0251】
次に、図34で示すステップSI15において、パラメータ作成手段205を通じて、メカニズムコントローラ28に転送すべき読出し用パラメータを作成する。具体的には、データRAM63に割り付けられたメカ用読出しパラメータ格納領域に、テーブルバッファに格納されている今回要求の光ディスクD上のアドレスを格納することにより行なわれる。
【0252】
次に、ステップSI16において、パラメータ作成手段205を通じて、I/Fコントローラ25に転送すべき読出し用パラメータを作成する。具体的には、データRAM63に割り付けられたI/F用読出しパラメータ格納領域に、テーブルバッファに格納されている今回の開始論理アドレスと今回要求のセクタ数を格納することにより行なわれる。
【0253】
次に、ステップSBI17において、メカニズムコントローラ28に対し、要求出力手段208を通じて、読出し要求信号を出力すると同時に、パラメータ作成手段205を通じて、メカ用読出しパラメータ格納領域に格納されている読出し用パラメータを出力する。また、同時にI/Fコントローラ25に対し、要求出力手段208を通じて、読出し要求信号を出力すると同時に、I/F用読出しパラメータ格納領域に格納されている読出し用パラメータを出力する。
【0254】
メカニズムコントローラ28は、システムコントローラ29からの読出し要求信号及び読出し用パラメータの入力により、該パラメータが示す光ディスクD上のアドレスに対応するトラックに光ピックアップ3を移動させるように制御する。そして、光ピックアップ3からの再生データDiがデコーダ24にてROMデータDrに変換されてI/Fコントローラ25に供給されることになる。また、デコーダ24からは上記ROMデータDrに対応したROMアドレス情報Darが得られ、該ROMアドレス情報Darはシステムコントローラ29に供給される。
【0255】
そして、システムコントローラ29は、図34のステップSI18において、アドレス情報読出し手段202を通じて、入力ポート64を介して送られてくるデコーダ24からのROMアドレス情報Darを受け取る。次に、ステップSI19において、判別手段201を通じて、上記アドレス情報読出し手段202を通じて受け取られたアドレスと今回要求の光ディスクD上のアドレスとが一致しているかどうかが判別される。これらアドレス同士が一致するまでステップSI18及びステップSI19が繰り返される。
【0256】
アドレス同士が一致した場合は、次のステップSI20に進み、要求出力手段208を通じて、I/Fコントローラ25に対し、蓄積要求信号を出力する。I/Fコントローラ25は、この蓄積要求信号の入力に基づいてデコーダ24からのROMデータDrを拡張メモリ領域EZ中、今回決定された開始論理アドレスから順次セクタ単位に蓄積する。そして、要求されたセクタ数分のROMデータDrが蓄積された段階でシステムコントローラ29に対して蓄積完了信号を出力する。この動作についての詳細は後述する。
【0257】
図34の処理ルーチンに戻り、上記ステップSI20にて蓄積要求信号を出力した後、次のステップSI21に進み、I/Fコントローラ25からの蓄積完了信号の入力を待つ。I/Fコントローラ25から蓄積完了信号が入力された段階で次のステップSI22に進み、要求出力手段208を通じて、メカニズムコントローラ28に対し、停止要求信号を出力する。メカニズムコントローラ28は、システムコントローラ29からの停止要求信号の入力に基づいて光ディスクDに対する再生動作を停止するように各種回路を制御する。
【0258】
次に、ステップSI23において、パラメータ作成手段205を通じて、今度は転送用パラメータを作成する。具体的には、データRAM63に割り付けられたパラメータ格納領域に、今回決定された開始論理アドレス及び今回要求のセクタ数を格納する。
【0259】
次に、ステップSI24において、I/Fコントローラ25に対し、要求出力手段208を通じて、転送要求信号を出力すると同時に、パラメータ作成手段205を通じて、パラメータ格納領域に格納されている転送用パラメータを出力する。このステップSI24での処理は、上記ステップSI23の処理を終了した後のほか、図33で示すステップSI07を終了した後においても行なわれることになる。
【0260】
ここで、I/Fコントローラ25は、システムコントローラ29からの転送要求信号の入力に基づいて、拡張メモリ領域EZ中、転送用パラメータに格納されている開始論理アドレスから順次ROMデータDrを読み出してホストコンピュータ31側に転送する。そして、要求されたセクタ数分のROMデータDrがホストコンピュータ31側に転送された段階でシステムコントローラ29に対して転送完了信号を出力する。この動作の詳細は後述する。
【0261】
図34の処理ルーチンに戻り、上記ステップSI24にて転送要求信号を出力した後、次のステップSI25に進み、I/Fコントローラ25からの転送完了信号の入力を待つ。I/Fコントローラ25から転送完了信号が入力された段階で次のステップSI26に進み、残存セクタ数更新手段207を通じて、予約セクタ数を−更新する。具体的には、予約セクタ数格納領域に格納されている値から今回要求のセクタ数を差し引いた値を再び予約セクタ格納領域に格納することにより行なわれる。
【0262】
上記ステップSI26での処理が終了した段階でこの拡張読出し処理サブルーチン98が終了し、同時に図10で示す各種要求処理サブルーチン95が終了する。
【0263】
再び、I/Fコントローラ25における図29の拡張読出し要求サブルーチン78に戻って、ステップSF01におけるコマンド出力手段182によるシステムコントローラ29へのコマンドデータの出力が終了した後、次のステップSF02に進む。
【0264】
このステップSF02においては、判別手段181を通じて、システムコントローラ29から要求信号の入力があったかどうかが判別される。即ち、要求信号入力待ちになる。システムコントローラ29から要求信号が入力されると、次のステップSF03に進み、判別手段181を通じて、今度はシステムコントローラ29から入力された要求信号が読出し要求信号であるか否かが判別される。
【0265】
読出し要求信号である場合は、次のステップSF04に進み、パラメータ受取り手段183を通じて、入力ポート54を介して供給される読出し用パラメータを受け取ってデータRAM53に割り付けられているパラメータ格納領域に格納する。これによって、このパラメータ格納領域には、データを蓄積すべき拡張バッファ領域EZの開始論理アドレスとセクタ数が格納されることになる。また、このとき、インデックスレジスタjに上記開始論理アドレスを格納する。
【0266】
次に、ステップSF05において、判別手段181を通じて、システムコントローラ29からの蓄積要求信号の入力待ちとなる。システムコントローラ29から蓄積要求信号の入力があった場合は、次のステップSF06に進み、蓄積要求処理サブルーチン(蓄積要求処理手段184)に入る。このサブルーチンは、図30に示すように、まず、ステップSG01において、インデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0267】
次に、ステップSG02において、拡張メモリ領域EZ中、ROMデータDrを蓄積すべきアドレスを計算する。具体的には、インデックスレジスタjの値とインデックスレジスタiの値とを加算した値をインデックスレジスタjに格納する。次に、ステップSG03において、再生データ読込み手段187を通じて、入力ポート54を介して供給されるデコーダ24からのROMデータ(1セクタ)Drを読み込む。
【0268】
次に、ステップSG04において、再生データ書込み手段188を通じて、上記ステップSG03にて読み込んだROMデータ(1セクタ)Drをインデックスレジスタjの値が示す拡張メモリ領域の論理アドレスに書き込む。次に、ステップSG05において、インデックスレジスタiを+1更新する。
【0269】
次に、ステップSG06において、判別手段181を通じて、インデックスレジスタiの値がパラメータ格納領域に格納されているセクタ数以上であるか否かが判別される。インデックスレジスタiの値がセクタ数よりも小さい場合は、上記ステップSG02に進み、インデックスレジスタjに格納されている論理アドレスを更新して、ステップSG03以降の処理を繰り返す。一方、上記インデックスレジスタiの値がセクタ数以上となった場合は、この蓄積要求処理サブルーチン184が終了する。
【0270】
図29のメインルーチンに戻って、上記ステップSF06における蓄積要求処理サブルーチン184が終了した段階で、次のステップSF07に進み、完了信号出力手段186を通じて、システムコントローラ29に対し蓄積完了信号を出力する。
【0271】
次に、ステップSF08において、判別手段181を通じて、システムコントローラ29から転送要求信号の入力があったかどうかが判別される。即ち、転送要求信号入力待ちになる。
【0272】
このステップSF08において、システムコントローラ29から転送要求信号が入力されると、あるいは上記ステップSF03において、読出し要求ではないと判別された場合は、次のステップSF09に進み、パラメータ受取り手段183を通じて、入力ポート54を介して供給される転送用パラメータを受け取ってデータRAM53に割り付けられているパラメータ格納領域に格納する。これによって、このパラメータ格納領域には、今回転送すべきデータが蓄積されている転送バッファ領域の開始論理アドレスとセクタ数が格納されることになる。また、このとき、インデックスレジスタjに上記開始論理アドレスが格納される。
【0273】
次に、ステップSF10において、転送要求処理サブルーチン(転送要求処理手段185)に入る。このサブルーチンは、図31に示すように、まず、ステップSH01において、インデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0274】
次に、ステップSH02において、拡張メモリ領域EZ中、データを転送すべきアドレスを計算する。具体的には、インデックスレジスタjの値とインデックスレジスタiの値とを加算した値をインデックスレジスタjに格納する。次に、ステップSH03において、データ読出し手段189を通じて、拡張メモリ領域EZ中、インデックスレジスタjで示す論理アドレスに蓄積されているROMデータ(1セクタ)Drを読み出す。
【0275】
次に、ステップSH04において、データ転送手段190を通じて、上記ステップSH03において読み出した1セクタ分のROMデータDrをホストコンピュータ31に転送する。次に、ステップSH05において、インデックスレジスタiを+1更新する。
【0276】
次に、ステップSH06において、判別手段181を通じて、インデックスレジスタiの値がパラメータ格納領域に格納されているセクタ数以上であるか否かが判別される。インデックスレジスタiの値がセクタ数よりも小さい場合は、上記ステップSH02に進み、インデックスレジスタjに格納されている論理アドレスを更新して、ステップSH03以降の処理を繰り返す。一方、上記インデックスレジスタiの値がセクタ数以上となった場合は、この転送要求処理サブルーチン185が終了する。
【0277】
図29のメインルーチンに戻って、上記ステップSF10における転送要求処理サブルーチン185が終了した段階で、次のステップSF11に進み、完了信号出力手段186を通じて、システムコントローラ29に対し、転送完了信号を出力する。このステップSF11での処理が終了した段階でこの拡張読出し要求サブルーチン78が終了し、同時に図6で示す各種要求処理サブルーチン75が終了する。
【0278】
[転送バッファ領域→拡張メモリ領域へのブロック転送処理]
次に、ホストコンピュータ31からブロック転送コマンドがI/Fコントローラ25に入力された場合は、図6において、各種要求処理サブルーチン75からブロック転送要求サブルーチン(ブロック転送要求手段79)S104に入る。
【0279】
このブロック転送要求手段79は、図36に示すように、各種判別を行なう判別手段221と、システムコントローラ29にコマンドを出力するコマンド出力手段222と、システムコントローラ29から転送されてくる転送用パラメータを受け取るパラメータ受取り手段223と、転送バッファ領域に蓄積されたROMデータDrを転送用パラメータが示す論理アドレスから順次読み出すデータ読出し手段224と、データRAM53の所定領域に展開される転送情報テーブルを1レコード単位に読み出すテーブル読出し手段225と、上記データ読出し手段224にて読み出したROMデータDrを転送用パラメータが示す論理アドレスから順次1セクタ単位に書き込むデータ書込み手段226と、システムコントローラ29に対して処理が完了したこと知らせる完了信号出力手段227とを有して構成されている。
【0280】
そして、このブロック転送要求手段79は、まず、図37のステップSK01において、コマンド出力手段222を通じて、コマンド格納領域に格納されているブロック転送コマンドデータをシステムコントローラ29に出力する。
【0281】
システムコントローラ29においては、I/Fコントローラ25からのブロック転送コマンドデータが入力された場合、図10で示す各種要求処理サブルーチン95からブロック転送処理サブルーチン(ブロック転送処理手段99)S304に入る。ブロック転送コマンドデータは、転送バッファ領域TZに蓄積されているデータの転送元である光ディスクD上の先頭アドレスと、その先頭アドレスからの相対セクタ数と、読み出すべきデータのセクタ数と、読み出したデータを書き込むべき拡張メモリ領域EZにおける開始論理アドレスとから構成されている。
【0282】
このブロック転送処理手段99は、図38に示すように、各種判別を行なう判別手段231と、今回のコマンドデータに基づいて対応する拡張情報テーブルの該当レコードを検索する拡張情報テーブル検索手段232と、今回のコマンドデータに基づいて対応する転送格納テーブルの該当レコードを検索する転送格納テーブル検索手段233と、拡張メモリ領域EZへのデータ転送を要求するための転送用パラメータを作成してI/Fコントローラ25に転送するパラメータ作成手段234と、今回のコマンドデータに基づいて拡張格納テーブルを作成する拡張格納テーブル作成手段235と、拡張メモリ領域EZへのデータ蓄積に伴って減少する予約セクタ数を−更新するための残存セクタ数更新手段236と、I/Fコントローラ25に対して各種要求を指示するための信号を出力する要求出力手段237と、I/Fコントローラ25に対してエラー信号を出力するためのエラー信号出力手段238とを有して構成されている。
【0283】
また、このブロック転送処理手段99は、拡張情報テーブル検索手段232又は転送格納テーブル検索手段233にて活性化され、データRAM63の所定領域に展開される拡張情報テーブル又は転送格納テーブルをそれぞれ1レコード単位に読み出すテーブル読出し手段239と、今回の蓄積対象の拡張メモリ領域EZにおける蓄積可能セクタ数を計算し、又は転送バッファ領域TZに蓄積されている今回の転送対象のデータのセクタ数を計算するセクタ数計算手段240とを有する。
【0284】
そして、このブロック転送処理手段99は、まず、図39のステップSL01において、コマンド格納領域に格納されているコマンドデータをテーブルバッファに展開する。このテーブルバッファは、図55(a)で示す拡張格納テーブルの1レコードの構成と同じであり、このステップSL01では、コマンドデータ(光ディスクD上のアドレス+相対セクタ数,拡張メモリ領域EZ上の開始論理アドレス及びセクタ数)を拡張格納テーブルの1レコードの配列順序に応じて格納する。
【0285】
次に、ステップSL02において、判別手段231を通じて、今回要求のセクタ数が拡張メモリ領域EZの予約セクタ数以下か否かが判別される。この判別は、データRAM63に割り付けられている予約セクタ数格納領域内の値と今回要求のセクタ数とを比較することによって行なわれる。
【0286】
今回要求のセクタ数が予約セクタ数以下である場合、次のステップSL03に進み、拡張情報テーブル検索サブルーチン(拡張情報テーブル検索手段232)に入る。このサブルーチンは、図40に示すように、まず、ステップSM01において、拡張情報テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0287】
次に、ステップSM02において、テーブル読出し手段239を通じて、拡張情報テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、拡張情報テーブルからiレコード目のレコードを読み出す。
【0288】
次に、ステップSM03において、判別手段231を通じて、上記iレコード目の内容がEOFコードでないかどうかが判別される。EOFコードでない場合は、次のステップSM04に進み、判別手段231を通じて、今度は上記iレコード目の内容が有効か無効かが判別される。この判別は、iレコード目の最初の1ビット目に「1」か「0」かどうかで行なわれる。有効である場合は、次のステップSM05に進み、上記iレコード目から開始論理アドレス及び終了論理アドレスを読み出す。
【0289】
次に、ステップSM06において、判別手段231を通じて、今回要求の開始論理アドレスが上記iレコード目に係る開始論理アドレスと終了論理アドレスの間にあるか否かが判別される。
【0290】
今回要求の開始論理アドレスが上記両アドレスの間にある場合は、次のステップSM07に進み、セクタ数計算手段240を通じて、拡張情報テーブルにて設定されたiレコード目に係る拡張メモリ領域EZの上記今回要求の開始論理アドレス以降のセクタ数が計算される。具体的には、iレコード目に係る終了論理アドレスから今回要求の開始論理アドレスから1を差し引いた値を差し引くことにより行なわれる。このセクタ数はインデックスレジスタkに格納される。
【0291】
次に、ステップSM08において、判別手段231を通じて、iレコード目に係る拡張メモリ領域EZの上記今回要求の開始論理アドレス以降のセクタ数が今回要求のセクタ数以上であるか否かが判別される。この判別は、インデックスレジスタkの値が今回要求のセクタ数以上であるかどうかで行なわれる。インデックスレジスタkの値が今回要求のセクタ数以上であれば、この拡張情報テーブル検索サブルーチン232が終了する。
【0292】
一方、上記ステップSM06において、今回要求の開始論理アドレスが上記iレコード目に係る開始論理アドレスと終了論理アドレスの間にないと判別された場合、あるいは上記ステップSM04において、iレコード目の内容が無効と判別された場合は、ステップSM09に進み、インデックスレジスタiの+1更新を行なう。その後、ステップSM02に進んで、拡張情報テーブルの次のレコードを読み出し、ステップSM03以降の処理を繰り返す。
【0293】
他方、上記ステップSM08において、インデックスレジスタkの値が今回要求のセクタ数よりも小さいと判別された場合、あるいは上記ステップSM03において、拡張情報テーブルのiレコード目の内容がEOFコードであると判別された場合は、ステップSM10に進み、エラー信号出力手段238を通じて、I/Fコントローラ25に対し、エラー信号を出力して強制終了する。
【0294】
図39のメインルーチンに戻って、上記ステップSL03における拡張情報テーブル検索サブルーチン232が終了すると、次のステップSL04に進み、転送格納テーブル検索サブルーチン(転送格納テーブル検索手段233)に入る。このサブルーチンは、図41に示すように、まず、ステップSN01において、転送格納テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0295】
次に、ステップSN02において、テーブル読出し手段239を通じて、転送格納テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、転送格納テーブルからiレコード目のレコードを読み出す。
【0296】
次に、ステップSN03において、判別手段231を通じて、上記iレコード目の内容がEOFコードでないかどうかが判別される。EOFコードでない場合は、次のステップSN04に進み、判別手段231を通じて、今度は上記iレコード目の内容が有効か無効かが判別される。この判別は、iレコード目の最初の1ビット目に「1」か「0」かどうかで行なわれる。次のステップSN05に進み、判別手段231を通じて、今回要求の光ディスクD上のアドレスと、転送格納テーブルの上記iレコード目に格納されている光ディスクD上のアドレスとが同じであるか否かが判別される。
【0297】
両アドレス同士が一致している場合は、次のステップSN06に進み、セクタ数計算手段240を通じて、転送バッファ領域TZ中、転送格納テーブルのiレコード目に係るアドレスに蓄積されているROMデータDrの今回要求の相対セクタ以降のセクタ数が計算される。具体的には、iレコード目に係るセクタ数から今回要求の相対セクタ数を差し引くことにより行なわれる。求まったセクタ数はインデックスレジスタkに格納される。
【0298】
次に、ステップSN07において、判別手段231を通じて、転送格納テーブルのiレコード目に係るアドレスに蓄積されているROMデータDrの今回要求の相対セクタ以降のセクタ数が今回要求のセクタ数以上であるか否かが判別される。この判別は、インデックスレジスタkの値が今回要求のセクタ数以上であるかどうかで行なわれる。インデックスレジスタkの値が今回要求のセクタ数以上であれば、次のステップSN08に進み、iレコード目に係る転送バッファ領域TZの開始論理アドレスをレジスタADDに格納する。そして、このステップSN08での処理が終了した段階でこの転送格納テーブル検索サブルーチン233が終了する。
【0299】
一方、上記ステップSN05において、両アドレスが不一致と判別された場合、あるいは上記ステップSN04において、iレコード目の内容が無効と判別された場合は、ステップSN09に進み、インデックスレジスタiの+1更新を行なう。その後、ステップSN02に進んで、転送格納テーブルの次のレコードを読み出し、ステップSN03以降の処理を繰り返す。
【0300】
他方、上記ステップSN07において、インデックスレジスタkの値が今回要求のセクタ数よりも小さいと判別された場合、あるいは上記ステップSN03において、転送格納テーブルのiレコード目の内容がEOFコードであると判別された場合は、ステップSN10に進み、エラー信号出力手段238を通じて、I/Fコントローラ25に対し、エラー信号を出力して強制終了する。
【0301】
図39のメインルーチンに戻って、上記ステップSL04における転送格納テーブル検索サブルーチン233が終了すると、次のステップSL05に進み、パラメータ作成手段234を通じて、転送用パラメータを作成する。具体的には、データRAM63に割り付けられたパラメータ格納領域に、レジスタADDに格納されている転送バッファ領域TZの開始論理アドレスに今回要求の相対セクタ数を加算した値(即ち、転送バッファ領域TZからのデータ読出し論理アドレス)と今回要求のセクタ数と今回要求の拡張メモリ領域EZにおける開始論理アドレス(即ち、拡張メモリ領域EZへのデータ書込み論理アドレス)を格納する。
【0302】
次に、ステップSL06において、I/Fコントローラ25に対し、要求出力手段237を通じて、転送要求信号を出力すると同時に、パラメータ作成手段234を通じて、パラメータ格納領域に格納されている転送用パラメータを出力する。
【0303】
ここで、I/Fコントローラ25は、システムコントローラ29からの転送要求信号の入力に基づいて、転送バッファ領域TZ中、転送用パラメータに格納されているデータ読出し論理アドレスから順次ROMデータDrを読み出して、この読み出したROMデータDrを、拡張メモリ領域EZ中、転送用パラメータに格納されているデータ書込み論理アドレスから順次書き込む。そして、要求されたセクタ数分のROMデータDrが拡張メモリ領域EZに書き込まれた段階でシステムコントローラ29に対して転送完了信号を出力する。この動作の詳細は後述する。
【0304】
図39の処理ルーチンに戻り、上記ステップSL06にて転送要求信号を出力した後、次のステップSL07に進み、I/Fコントローラ25からの転送完了信号の入力を待つ。I/Fコントローラ25から転送完了信号が入力された段階で次のステップSL08に進み、拡張格納テーブル作成手段235を通じて、拡張格納テーブル中、蓄積ポイント格納領域内の値に対応するレコード目にテーブルバッファを格納する。次に、ステップSL09において、蓄積ポイント格納領域内の値を+1更新する。
【0305】
次に、ステップSL10において、残存セクタ数更新手段236を通じて、予約セクタ数を−更新する。具体的には、予約セクタ数格納領域に格納されている値から今回要求のセクタ数を差し引いた値を再び予約セクタ格納領域に格納することにより行なわれる。
【0306】
一方、上記ステップSL02において、今回要求のセクタ数が予約セクタ数よりも大きい場合は、ステップSL11に進み、エラー信号出力手段238を通じて、I/Fコントローラ25に対し、エラー信号を出力する。
【0307】
上記ステップSL10での処理又は上記ステップSL11での処理が終了した段階で、このブロック転送処理サブルーチン99が終了し、同時に図10で示す各種要求処理サブルーチン95が終了する。
【0308】
再び、I/Fコントローラ25における図37のブロック転送要求サブルーチン79に戻って、ステップSK01におけるコマンド出力手段222によるシステムコントローラ29へのコマンドデータの出力が終了した後、次のステップSK02に進む。
【0309】
このステップSK02においては、判別手段221を通じて、システムコントローラ29から要求信号の入力があったかどうかが判別される。即ち、要求信号入力待ちになる。システムコントローラ29から要求信号が入力されると、次のステップSK03に進み、パラメータ受取り手段223を通じて、入力ポート54を介して供給される転送用パラメータを受け取ってデータRAM53に割り付けられているパラメータ格納領域に格納する。これによって、このパラメータ格納領域には、データを読み出すべき転送バッファ領域の開始論理アドレスとデータを蓄積すべき拡張バッファ領域の開始論理アドレスとセクタ数が格納されることになる。また、このとき、インデックスレジスタjにデータを読み出すべき転送バッファ領域の開始論理アドレスが格納され、インデックスレジスタkにデータを蓄積すべき拡張バッファ領域の開始論理アドレスが格納される。
【0310】
次に、ステップSK04において、インデックスレジスタiと転送情報テーブルのレコード読出しインデックスとなるインデックスレジスタpを初期化する。即ち、各インデックスレジスタi及びpに初期値「0」を格納する。
【0311】
次に、ステップSK05において、テーブル読出し手段225を通じて、転送情報テーブルからインデックスレジスタpで示す番号のレコードを読み出す。即ち、転送情報テーブルからpレコード目のレコードを読み出す。次に、ステップSK06において、インデックスレジスタpを+1更新する。
【0312】
次に、ステップSK07において、判別手段221を通じて、今回要求のデータ読出し開始論理アドレス(インデックスレジスタjの値)が上記pレコード目に係る開始論理アドレスと終了論理アドレスの間にあるか否かが判別される。今回要求のデータ読出し開始論理アドレスが上記両アドレスの間にない場合は、上記ステップSK05に戻って、転送情報テーブルの次のレコードを読み出し、ステップSK06以降の処理を繰り返す。
【0313】
上記ステップSK07において、今回要求のデータ読出し開始論理アドレスが上記両アドレスの間にあると判別された場合は、次のステップSK08に進み、転送バッファ領域から読み出すべきデータのアドレスを計算する。具体的には、インデックスレジスタjの値とインデックスレジスタiの値とを加算した値をインデックスレジスタjに格納する。
【0314】
次に、ステップSK09において、判別手段221を通じて、インデックスレジスタjの値が上記pレコード目に係る終了論理アドレスよりも大きいか否かが判別される。インデックスレジスタjの値が読み出した当該レコード目に係る終了論理アドレスよりも大きい場合は、次のステップSK10に進み、転送情報テーブルのpレコード目のレコードを読み出して、インデックスレジスタjに該pレコード目に係る開始論理アドレスを格納する。次に、ステップSK11において、インデックスレジスタpを+1更新する。
【0315】
次に、ステップSK12において、データ読出し手段224を通じて、転送バッファ領域TZ中、インデックスレジスタjで示す論理アドレスに蓄積されているROMデータ(1セクタ)Drを読み出す。次に、ステップSK13において、データ書込み手段226を通じて、上記ステップSK12にて読み込んだROMデータ(1セクタ)Drをインデックスレジスタkの値が示す拡張メモリ領域EZの論理アドレスに書き込む。次に、ステップSK14において、インデックスレジスタi及びkをそれぞれ+1更新する。
【0316】
次に、ステップSK15において、判別手段221を通じて、インデックスレジスタiの値がパラメータ格納領域に格納されているセクタ数以上であるか否かが判別される。
【0317】
インデックスレジスタiの値がセクタ数よりも小さい場合は、上記ステップSK08に戻って、インデックスレジスタjに格納されている論理アドレスを更新し、ステップSK09以降の処理を繰り返す。一方、上記インデックスレジスタiの値がセクタ数以上となった場合は、次のステップSK16に進み、完了信号出力手段227を通じて、システムコントローラ29に対し、転送完了信号を出力する。このステップSK16での処理が終了した段階でこのブロック転送要求サブルーチン79が終了し、同時に図6で示す各種要求処理サブルーチン75が終了する。
【0318】
[ホストコンピュータ→拡張メモリ領域へのデータ転送処理]
次に、ホストコンピュータ31から拡張書込みコマンドがI/Fコントローラ25に入力された場合は、図6において、各種要求処理サブルーチン75から拡張書込み要求サブルーチン(拡張書込み要求手段80)S105に入る。
【0319】
この拡張書込み要求手段80は、図42に示すように、各種判別を行なう判別手段251と、システムコントローラ29にコマンドを出力するコマンド出力手段252と、システムコントローラ29から転送されてくる転送用パラメータを受け取るパラメータ受取り手段253と、ホストコンピュータ31から転送されてくるデータを読み出すデータ読出し手段254と、該データ読出し手段254にて読み出したホストコンピュータ31からのデータを転送用パラメータが示す論理アドレスから順次1セクタ単位に書き込むデータ書込み手段255と、システムコントローラ29に対して処理が完了したこと知らせる完了信号出力手段256とを有して構成されている。
【0320】
そして、この拡張書込み要求手段80は、まず、図43のステップSP01において、コマンド出力手段252を通じて、コマンド格納領域に格納されている拡張書込みコマンドデータをシステムコントローラ29に出力する。
【0321】
システムコントローラ29においては、I/Fコントローラ25からの拡張書込みコマンドデータが入力された場合、図10で示す各種要求処理サブルーチン95から拡張書込み処理サブルーチン(拡張書込み処理手段100)S305に入る。拡張書込みコマンドデータは、ホストコンピュータ31からのデータを書き込むべき拡張メモリ領域EZにおける開始論理アドレスと、該書き込むべきデータのセクタ数とから構成されている。
【0322】
この拡張書込み処理手段100は、図44に示すように、各種判別を行なう判別手段261と、今回のコマンドデータに基づいて対応する拡張情報テーブルの該当レコードを検索する拡張情報テーブル検索手段262と、拡張メモリ領域EZへのデータ転送を要求するための転送用パラメータを作成してI/Fコントローラ25に転送するパラメータ作成手段263と、今回のコマンドデータに基づいて拡張格納テーブルを作成する拡張格納テーブル作成手段264と、拡張メモリ領域EZへのデータ蓄積に伴って減少する予約セクタ数を−更新するための残存セクタ数更新手段265と、I/Fコントローラ25に対して各種要求を指示するための信号を出力する要求出力手段266と、I/Fコントローラ25に対してエラー信号を出力するためのエラー信号出力手段267とを有して構成されている。
【0323】
また、この拡張書込み処理手段100は、上記各種手段のほか、拡張情報テーブル検索手段262にて活性化され、データRAM63の所定領域に展開される拡張情報テーブルを1レコード単位に読み出すテーブル読出し手段268と、今回の蓄積対象の拡張メモリ領域における蓄積可能セクタ数を計算するセクタ数計算手段269とを有する。
【0324】
そして、この拡張書込み処理手段100は、まず、図45のステップSQ01において、コマンド格納領域に格納されているコマンドデータをテーブルバッファに展開する。このテーブルバッファは、図55(a)で示す拡張格納テーブルの1レコードの構成と同じであり、このステップSL01では、コマンドデータ(拡張メモリ領域EZ上の開始論理アドレス及びセクタ数)を拡張格納テーブルの1レコードの配列順序に応じて格納し、更にテーブルバッファの光ディスクD上のアドレスが格納される領域にホストコンピュータ31からのデータであることを示すコードを格納する。
【0325】
次に、ステップSQ02において、判別手段261を通じて、今回要求のセクタ数が拡張メモリ領域EZの予約セクタ数以下か否かが判別される。この判別は、データRAM63に割り付けられている予約セクタ数格納領域内の値と今回要求のセクタ数とを比較することによって行なわれる。
【0326】
今回要求のセクタ数が予約セクタ数以下である場合、次のステップSQ03に進み、拡張情報テーブル検索サブルーチン(拡張情報テーブル検索手段262)に入る。このサブルーチンは、図46に示すように、まず、ステップSR01において、拡張情報テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0327】
次に、ステップSR02において、テーブル読出し手段268を通じて、拡張情報テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、拡張情報テーブルからiレコード目のレコードを読み出す。
【0328】
次に、ステップSR03において、判別手段261を通じて、上記iレコード目の内容がEOFコードでないかどうかが判別される。EOFコードでない場合は、次のステップSR04に進み、判別手段261を通じて、今度は上記iレコード目の内容が有効か無効かが判別される。この判別は、iレコード目の最初の1ビット目に「1」か「0」かどうかで行なわれる。有効である場合は、次のステップSR05に進み、上記iレコード目から開始論理アドレス及び終了論理アドレスを読み出す。
【0329】
次に、ステップSR06において、判別手段261を通じて、今回要求の開始論理アドレスが上記iレコード目に係る開始論理アドレスと終了論理アドレスの間にあるか否かが判別される。
【0330】
今回要求の開始論理アドレスが上記両アドレスの間にある場合は、次のステップSR07に進み、セクタ数計算手段269を通じて、拡張情報テーブルにて設定されたiレコード目に係る拡張メモリ領域EZの上記今回要求の開始論理アドレス以降のセクタ数が計算される。具体的には、iレコード目に係る終了論理アドレスから今回要求の開始論理アドレスから1を差し引いた値を差し引くことにより行なわれる。このセクタ数はインデックスレジスタkに格納される。
【0331】
次に、ステップSR08において、判別手段261を通じて、iレコード目に係る拡張メモリ領域EZの上記今回要求の開始論理アドレス以降のセクタ数が今回要求のセクタ数以上であるか否かが判別される。この判別は、インデックスレジスタkの値が今回要求のセクタ数以上であるかどうかで行なわれる。インデックスレジスタkの値が今回要求のセクタ数以上であれば、この拡張情報テーブル検索サブルーチン262が終了する。
【0332】
一方、上記ステップSR06において、今回要求の開始論理アドレスが上記iレコード目に係る開始論理アドレスと終了論理アドレスの間にないと判別された場合、あるいは上記ステップSR04において、iレコード目の内容が無効と判別された場合は、ステップSR09に進み、インデックスレジスタiの+1更新を行なう。その後、ステップSR02に進んで、拡張情報テーブルの次のレコードを読み出し、ステップSR03以降の処理を繰り返す。
【0333】
他方、上記ステップSR08において、インデックスレジスタkの値が今回要求のセクタ数よりも小さいと判別された場合、あるいは上記ステップSR03において、拡張情報テーブルのiレコード目の内容がEOFコードであると判別された場合は、ステップSR10に進み、エラー信号出力手段267を通じて、I/Fコントローラ25に対し、エラー信号を出力して強制終了する。
【0334】
図45のメインルーチンに戻って、上記ステップSQ03における拡張情報テーブル検索サブルーチン262が終了すると、次のステップSQ04に進み、パラメータ作成手段263を通じて、転送用パラメータを作成する。具体的には、データRAM63に割り付けられたパラメータ格納領域に、テーブルバッファに格納されている今回要求の拡張メモリ領域EZ上の開始論理アドレスと今回要求のセクタ数を格納する。
【0335】
次に、ステップSQ05において、I/Fコントローラ25に対し、要求出力手段266を通じて、転送要求信号を出力すると同時に、パラメータ作成手段263を通じて、パラメータ格納領域に格納されている転送用パラメータを出力する。
【0336】
ここで、I/Fコントローラ25は、システムコントローラ29からの転送要求信号の入力に基づいて、ホストコンピュータ31から転送されてくるデータを、拡張メモリ領域EZ中、転送用パラメータに格納されている開始論理アドレスから順次書き込む。そして、要求されたセクタ数分のデータが拡張メモリ領域に書き込まれた段階でシステムコントローラ29に対して転送完了信号を出力する。この動作の詳細は後述する。
【0337】
図45のメインルーチンに戻り、上記ステップSQ05にて転送要求信号を出力した後、次のステップSQ06に進み、I/Fコントローラ25からの転送完了信号の入力を待つ。I/Fコントローラ25から転送完了信号が入力された段階で次のステップSQ07に進み、拡張格納テーブル作成手段264を通じて、拡張格納テーブル中、蓄積ポイント格納領域内の値に対応するレコード目にテーブルバッファを格納する。次に、ステップSQ08において、蓄積ポイント格納領域内の値を+1更新する。
【0338】
次に、ステップSQ09において、残存セクタ数更新手段265を通じて、予約セクタ数を−更新する。具体的には、予約セクタ数格納領域に格納されている値から今回要求のセクタ数を差し引いた値を再び予約セクタ格納領域に格納することにより行なわれる。
【0339】
一方、上記ステップSQ02において、今回要求のセクタ数が予約セクタ数よりも大きい場合は、ステップSQ10に進み、エラー信号出力手段267を通じて、I/Fコントローラ25に対し、エラー信号を出力する。
【0340】
上記ステップSQ09での処理又は上記ステップSQ10での処理が終了した段階で、この拡張書込み処理サブルーチン100が終了し、同時に図10で示す各種要求処理サブルーチン95が終了する。
【0341】
再び、I/Fコントローラ25における図43の拡張書込み要求サブルーチン80に戻って、ステップSP01におけるコマンド出力手段252によるシステムコントローラ29へのコマンドデータの出力が終了した後、次のステップSP02に進む。
【0342】
このステップSP02においては、判別手段251を通じて、システムコントローラ29から要求信号の入力があったかどうかが判別される。即ち、要求信号入力待ちになる。システムコントローラ29から要求信号が入力されると、次のステップSP03に進み、パラメータ受取り手段253を通じて、入力ポート54を介して供給される転送用パラメータを受け取ってデータRAM53に割り付けられているパラメータ格納領域に格納する。これによって、このパラメータ格納領域には、ホストコンピュータ31からのデータを蓄積すべき拡張バッファ領域の開始論理アドレスとセクタ数が格納されることになる。また、このとき、インデックスレジスタjにデータを蓄積すべき拡張バッファ領域の開始論理アドレスが格納される。
【0343】
次に、ステップSP04において、インデックスレジスタiを初期化する。即ち、各インデックスレジスタiに初期値「0」を格納する。次に、ステップSP05において、拡張メモリ領域にデータを蓄積すべきアドレスを計算する。具体的には、インデックスレジスタjの値とインデックスレジスタiの値とを加算した値をインデックスレジスタjに格納する。次に、ステップSP06において、データ読出し手段254を通じて、入力ポート54を介して供給されるホストコンピュータ31からのデータ(1セクタ)を読み出す。
【0344】
次に、ステップSP07において、データ書込み手段255を通じて、上記ステップSP06にて読み込んだホストコンピュータ31からのデータ(1セクタ)をインデックスレジスタkの値が示す拡張メモリ領域EZの論理アドレスに書き込む。次に、ステップSP08において、インデックスレジスタi及びkをそれぞれ+1更新する。
【0345】
次に、ステップSP09において、判別手段251を通じて、インデックスレジスタiの値がパラメータ格納領域に格納されているセクタ数以上であるか否かが判別される。
【0346】
インデックスレジスタiの値がセクタ数よりも小さい場合は、上記ステップSP05に戻って、インデックスレジスタjに格納されている論理アドレスを更新し、ステップSP06以降の処理を繰り返す。一方、上記インデックスレジスタiの値がセクタ数以上となった場合は、次のステップSP10に進み、完了信号出力手段256を通じて、システムコントローラ29に対し、転送完了信号を出力する。このステップSP10での処理が終了した段階でこの拡張書込み要求サブルーチン80が終了し、同時に図6で示す各種要求処理サブルーチン75が終了する。
【0347】
[拡張メモリ領域→ホストコンピュータへのデータ転送処理]
次に、ホストコンピュータ31から拡張転送コマンドがI/Fコントローラ25に入力された場合は、図6において、各種要求処理サブルーチン75から拡張転送要求サブルーチン(拡張転送要求手段81)S106に入る。
【0348】
この拡張転送要求手段は、図47に示すように、各種判別を行なう判別手段271と、システムコントローラ29にコマンドを出力するコマンド出力手段272と、システムコントローラ29から転送されてくる転送用パラメータを受け取るパラメータ受取り手段273と、拡張メモリ領域EZ中、転送用パラメータが示す論理アドレスに蓄積されたデータを読み出すデータ読出し手段274と、該データ読出し手段274にて読み出したデータをホストコンピュータ31に転送するデータ転送手段275と、システムコントローラ29に対して処理が完了したこと知らせる完了信号出力手段276とを有して構成されている。
【0349】
そして、この拡張転送要求手段81は、まず、図48のステップSS01において、コマンド出力手段272を通じて、コマンド格納領域に格納されている拡張転送コマンドデータをシステムコントローラ29に出力する。
【0350】
システムコントローラ29においては、I/Fコントローラ25からの拡張転送コマンドデータが入力された場合、図10で示す各種要求処理サブルーチン95から拡張転送処理サブルーチン(拡張転送処理手段101)S306に入る。拡張転送コマンドデータは、データを読み出すべき拡張メモリ領域EZの開始論理アドレスとセクタ数から構成されている。
【0351】
この拡張転送処理手段101は、図49に示すように、各種判別を行なう判別手段281と、データRAM63の所定領域に展開される拡張情報テーブルを1レコード単位に読み出すテーブル読出し手段282と、データの転送を要求するための転送用パラメータを作成してI/Fコントローラ25に転送するパラメータ作成手段283と、I/Fコントローラ25に対して各種要求を指示するための信号を出力する要求出力手段284と、I/Fコントローラ25に対してエラー信号を出力するためのエラー信号出力手段285とを有して構成されている。
【0352】
そして、この拡張転送処理手段101は、まず、図50のステップST01において、拡張情報テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0353】
次に、ステップST02において、テーブル読出し手段282を通じて、拡張情報テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、拡張情報テーブルからiレコード目のレコードを読み出す。
【0354】
次に、ステップST03において、判別手段281を通じて、上記iレコード目の内容がEOFコードでないかどうかが判別される。EOFコードでない場合は、次のステップST04に進み、判別手段281を通じて、今度は上記iレコード目の内容が有効か無効かが判別される。この判別は、iレコード目の最初の1ビット目に「1」か「0」かどうかで行なわれる。有効である場合は、次のステップST05に進み、上記iレコード目から開始論理アドレス及び終了論理アドレスを読み出す。
【0355】
次に、ステップST06において、判別手段281を通じて、今回要求の開始論理アドレスが上記iレコード目に係る開始論理アドレスと終了論理アドレスの間にあるか否かが判別される。
【0356】
今回要求の開始論理アドレスが上記両アドレスの間にある場合は、次のステップST07に進み、パラメータ作成手段283を通じて、転送用パラメータを作成する。具体的には、データRAM63に割り付けられたパラメータ格納領域に、コマンド格納領域に格納されている今回要求の拡張メモリ領域上の開始論理アドレスと今回要求のセクタ数を格納する。
【0357】
次に、ステップST08において、I/Fコントローラ25に対し、要求出力手段284を通じて、転送要求信号を出力すると同時に、パラメータ作成手段283を通じて、パラメータ格納領域に格納されている転送用パラメータを出力する。
【0358】
ここで、I/Fコントローラ25は、システムコントローラ29からの転送要求信号の入力に基づいて、拡張メモリ領域EZ中、転送用パラメータに格納されている開始論理アドレスから順次データを読み出してホストコンピュータ31側に転送する。そして、要求されたセクタ数分のデータがホストコンピュータ31側に転送された段階でシステムコントローラ29に対して転送完了信号を出力する。この動作の詳細は後述する。
【0359】
図50の処理ルーチンに戻り、上記ステップST08にて転送要求信号を出力した後、次のステップST09に進み、I/Fコントローラ25からの転送完了信号の入力を待つ。I/Fコントローラ25から転送完了信号が入力された段階でこの拡張転送処理サブルーチン101が終了し、同時に図10で示す各種要求処理サブルーチン95が終了する。
【0360】
一方、上記ステップST06において、今回要求の開始論理アドレスが上記iレコード目に係る開始論理アドレスと終了論理アドレスの間にないと判別された場合、あるいは上記ステップST04において、iレコード目の内容が無効と判別された場合は、ステップST10に進み、インデックスレジスタiの+1更新を行なう。その後、ステップST02に進んで、拡張情報テーブルの次のレコードを読み出し、ステップST03以降の処理を繰り返す。
【0361】
他方、ステップST03において、拡張情報テーブルのiレコード目の内容がEOFコードであると判別された場合は、ステップST11に進み、エラー信号出力手段285を通じて、I/Fコントローラ25に対し、エラー信号を出力して強制終了する。
【0362】
再び、I/Fコントローラ25における図48の拡張転送要求サブルーチン81に戻って、ステップSS01におけるコマンド出力手段272によるシステムコントローラ29へのコマンドデータの出力が終了した後、次のステップSS02に進む。
【0363】
このステップSS02においては、判別手段271を通じて、システムコントローラ29から転送要求信号の入力があったかどうかが判別される。即ち、要求信号入力待ちになる。システムコントローラ29から転送要求信号が入力されると、次のステップSS03に進み、パラメータ受取り手段273を通じて、入力ポート54を介して供給される転送用パラメータを受け取ってデータRAM53に割り付けられているパラメータ格納領域に格納する。これによって、このパラメータ格納領域には、拡張メモリ領域EZ中、ホストコンピュータ31に転送すべきデータが蓄積されている開始論理アドレスとそのセクタ数が格納されることになる。また、このとき、インデックスレジスタjに上記拡張バッファ領域の開始論理アドレスを格納する。
【0364】
次に、ステップSS04において、インデックスレジスタiを初期化する。即ち、各インデックスレジスタiに初期値「0」を格納する。次に、ステップSS05において、拡張メモリ領域からデータを読み出すべきアドレスを計算する。具体的には、インデックスレジスタjの値とインデックスレジスタiの値とを加算した値をインデックスレジスタjに格納する。次に、ステップSS06において、データ読出し手段274を通じて、拡張メモリ領域EZ中、インデックスレジスタjで示す論理アドレスに蓄積されているデータ(1セクタ)を読み出す。
【0365】
次に、ステップSS07において、データ転送手段275を通じて、上記ステップSS06において読み出した1セクタ分のデータをホストコンピュータ31に転送する。次に、ステップSS08において、インデックスレジスタiを+1更新する。次に、ステップSP09において、判別手段271を通じて、インデックスレジスタiの値がパラメータ格納領域に格納されているセクタ数以上であるか否かが判別される。
【0366】
インデックスレジスタiの値がセクタ数よりも小さい場合は、上記ステップSS05に戻って、インデックスレジスタjに格納されている論理アドレスを更新し、ステップSS06以降の処理を繰り返す。一方、上記インデックスレジスタiの値がセクタ数以上となった場合は、次のステップSS10に進み、完了信号出力手段276を通じて、システムコントローラ29に対し、転送完了信号を出力する。このステップSS10での処理が終了した段階でこの拡張転送要求サブルーチン81が終了し、同時に図6で示す各種要求処理サブルーチン75が終了する。
【0367】
[拡張メモリ領域の予約解除処理]
次に、ホストコンピュータ31から予約解除コマンドがI/Fコントローラ25に入力された場合は、図6で示す各種要求処理サブルーチン75(ステップS107)において、コマンド出力手段82(図4参照)を通じて、コマンド格納領域に格納されている予約解除コマンドデータをシステムコントローラ29に出力する。この段階でこの各種要求処理サブルーチン75が終了する。
【0368】
システムコントローラ29においては、I/Fコントローラ25からの予約解除コマンドデータが入力された場合、図10で示す各種要求処理サブルーチン95から予約解除処理サブルーチン(予約解除処理手段102)S307に入る。予約解除コマンドデータは、現在予約されている拡張メモリ領域EZの先頭論理アドレスにて構成されている。
【0369】
この予約解除処理手段102は、図51に示すように、各種判別を行なう判別手段291と、データRAM63の所定領域に展開される拡張情報テーブル又は拡張格納テーブルをそれぞれ1レコード単位に読み出すテーブル読出し手段292と、拡張格納テーブル中、拡張メモリ領域EZの予約解除対象となっているレコードを削除処理するための拡張格納テーブル処理手段293と、拡張情報テーブルにおける該当レコードの有効ビットをリセットするための有効ビットリセット手段294と、I/Fコントローラ25に対してエラー信号を出力するためのエラー信号出力手段296とを有して構成されている。
【0370】
また、この予約解除処理手段102は、上記各種手段のほか、拡張格納テーブル処理手段293にて活性化され、拡張格納テーブルの該当レコードを削除して全体のレコード群を移動処理するレコード削除移動手段295を有する。
【0371】
そして、この予約解除処理手段102は、まず、図52のステップSU01において、拡張情報テーブルのレコード読出しインデックスとなるインデックスレジスタiを初期化する。即ち、インデックスレジスタiに初期値「0」を格納する。
【0372】
次に、ステップSU02において、テーブル読出し手段292を通じて、拡張情報テーブルからインデックスレジスタiで示す番号のレコードを読み出す。即ち、拡張情報テーブルからiレコード目のレコードを読み出す。次に、ステップSU03において、判別手段291を通じて、上記iレコード目の内容がEOFコードでないかどうかが判別される。EOFコードでない場合は、次のステップSU04に進み、上記iレコード目から開始論理アドレス及び終了論理アドレスを読み出す。
【0373】
次に、ステップSU05において、判別手段291を通じて、コマンド格納領域に格納されている今回要求の論理アドレスと上記iレコード目の開始論理アドレスが同じか否かが判別される。両アドレスが一致した場合は、次のステップSU06に進み、有効ビットリセット手段294を通じて、当該iレコード目の有効ビットをリセットしてこのiレコード目を無効とする。
【0374】
次に、ステップSU07において、拡張格納テーブル処理サブルーチン(拡張格納テーブル処理手段293)に入る。このサブルーチンは、図53に示すように、まず、ステップSV01において、拡張格納テーブルのレコード読出しインデックスとなるインデックスレジスタjを初期化する。即ち、インデックスレジスタjに初期値「0」を格納する。
【0375】
次に、ステップSV02において、テーブル読出し手段292を通じて、拡張格納テーブルからインデックスレジスタjで示す番号のレコードを読み出す。即ち、拡張情報テーブルからjレコード目のレコードを読み出す。
【0376】
次に、ステップSV03において、判別手段291を通じて、今回要求の論理アドレスがiレコード目の開始論理アドレスと終了論理アドレスとの間にあるか否かが判別される。今回要求の論理アドレスが上記両アドレス間にある場合は、次のステップSV04に進み、レコード削除移動手段295を通じて、拡張格納テーブルのjレコード目を削除し、更に(j+1)レコード目以降を移動させてjレコード目以降とする。
【0377】
次に、ステップSV05において、上記レコード削除移動に伴いインデックスレジスタjの値を補正する。上記ステップSV05での処理あるいは上記ステップSV03において、今回要求の論理アドレスがiレコード目の開始論理アドレスと終了論理アドレスとの間にない場合は、次のステップSV06に進み、インデックスレジスタjを+1更新する。
【0378】
次に、ステップSV07において、判別手段291を通じて、全てのレコードについて処理が終了したか否かが判別される。この判別は、インデックスレジスタjの値が蓄積ポイント格納領域に格納されている値以上であるか否かで行なわれる。インデックスレジスタの値が蓄積ポイント格納領域に格納されている値よりも小さい場合は、ステップSV02に戻って、拡張格納テーブルの次のレコードを読み出し、ステップSV03以降の処理を繰り返す。
【0379】
上記ステップSV07において、インデックスレジスタjの値が蓄積ポイント格納領域に格納されている値以上であると判別された場合はこの拡張格納テーブル処理サブルーチン293が終了する。
【0380】
図52のメインルーチンに戻って、上記ステップSU07における拡張格納テーブル処理サブルーチン293が終了した段階でこの予約解除処理サブルーチン102が終了し、同時に図10で示す各種要求処理サブルーチン95が終了する。
【0381】
一方、上記ステップSU05において、今回要求の論理アドレスと上記iレコード目に係る開始論理アドレスとが不一致であると判別された場合は、ステップSU08に進み、インデックスレジスタiの+1更新を行なう。その後、ステップSU02に進んで、拡張情報テーブルの次のレコードを読み出し、ステップSR03以降の処理を繰り返す。
【0382】
他方、上記ステップSU03において、拡張情報テーブルのiレコード目の内容がEOFコードであると判別された場合は、ステップSU09に進み、エラー信号出力手段296を通じて、I/Fコントローラ25に対し、エラー信号を出力して強制終了する。
【0383】
このように、本実施例に係る再生装置においては、再生手段、即ち、光ピックアップ3→RFアンプ部21→復調回路22→デコーダ24を通じて再生されたROMデータDrが、データバッファ26の記憶領域のうち、転送バッファ領域TZに一時的に蓄積され、その後、I/Fコントローラ25を通じてホストコンピュータ31に転送される。この転送バッファ領域TZに対してはそのデータ転送元が光ディスクDであることから、専ら上記再生手段を通じて再生された光ディスクD上のデータが一時的に蓄積されることになる。この場合、過去のデータは消去され、現在のデータが上書きされることになる。
【0384】
特に、本実施例においては、複数個の拡張メモリ領域EZがデータバッファ26上にランダムに割り付けられたとしても、これら拡張メモリ領域EZを疑似的にライトプロテクト領域として取り扱い、これら拡張メモリ領域EZを避けて連続的にROMデータDrを転送バッファ領域TZのみに蓄積するようにしているため、セクタサイズの大きいROMデータDrを拡張メモリ領域EZの存在を気にせずにホストコンピュータ31に転送させることが可能となる。
【0385】
また、転送バッファ領域TZを経由してのデータ転送の際に、前回のデータ蓄積部分の終了論理アドレスの次のアドレスから今回のデータを蓄積させるようにして、これらのデータ情報(光ディスクD上のアドレス等)を転送格納テーブルに登録するようにしているため、データ転送の要求ごとに転送バッファ領域TZにその要求にかかるデータがランダムに蓄積されることになる。即ち、転送バッファ領域TZ上に光ディスクD上のアドレスが異なるデータが多数展開されることになる。このことから、読出し要求の際に、すでに転送バッファ領域TZに蓄積されているデータを読み出す確率が増加することになり、読出し要求時のアクセスタイムを短縮化させることが可能となる。
【0386】
一方、上記再生手段にて再生されたROMデータDrは、データバッファ26の記憶領域のうち、拡張メモリ領域EZにも蓄積されるが、この場合、上記転送バッファ領域TZへのデータ蓄積の場合と異なり、蓄積されたデータ保持部分へのデータ置換が禁止されることから、過去のデータ消去されて現在のデータが上書きされるということがない。即ち、一度拡張メモリ領域EZに蓄積されたデータは、その後の光ディスクDからのデータ読出しに影響されずに該拡張メモリ領域EZ上に保持されることになる。
【0387】
従って、光ディスクD上の読出し頻度の高いアドレスのデータを拡張メモリ領域EZに蓄積させ、それ以外のアドレスのデータを転送バッファ領域TZに一時的に蓄積させるようにすれば、読出し頻度の高いアドレスのデータをホストコンピュータ31に転送する場合、いちいち再生手段を通じて光ディスクD上の該当アドレスからデータを読み出すという必要がなくなり、拡張メモリ領域EZに蓄積されているデータを直接ホストコンピュータ31に転送させることができることになる。
【0388】
その結果、再生装置に対するデータアクセス時間が再生装置の平均アクセス時間に依存するということがなくなり、該平均アクセス時間以上の性能を疑似的に発揮させることが可能となる。
【0389】
このようなことから、本実施例に係る再生装置においては、データ転送効率の向上を図るために組み込まれたデータバッファ26(例えば半導体メモリ)の効果を十分に発揮させることができ、光ディスクD上のデータを効率よくホストコンピュータ31に転送させることができるようになる。
【0390】
また、I/Fコントローラ25及びシステムコントローラ29へのホストコンピュータ31からの拡張書込みコマンドの入力によって、ホストコンピュータ31から転送されたデータもこの拡張メモリ領域EZに蓄積させることが可能となる。この場合、ホストコンピュータ31が所有するメモリの容量が不足する場合に、この拡張メモリ領域EZをホストコンピュータ31の外部記憶装置として利用することが可能となる。
【0391】
また、I/Fコントローラ25及びシステムコントローラ29に、上記ホストコンピュータ31からの予約要求に基づいて、データバッファ26の記憶領域を転送バッファ領域TZと拡張メモリ領域EZに論理的に割り付ける予約要求手段76及び予約処理手段96を設けるようにしているため、ホストコンピュータ31からの予約要求がない場合は、記憶領域がそのまま転送バッファ領域TZとして使用されることになり、光ディスクDからのデータが記憶領域を介してホストコンピュータ31に転送されることになる。
【0392】
そして、ホストコンピュータ31からの予約要求に基づき予約要求手段76及び予約処理手段96を通じて、記憶領域が転送バッファ領域TZと拡張メモリ領域EZに論理的に割り付けられ、その後は、上述したようなデータアクセスが転送バッファ領域TZ及び拡張メモリ領域EZを通して行なわれる。即ち、光ディスクD上のランダムなアドレスのデータを光ディスクDから転送バッファ領域TZを介してホストコンピュータ31に転送し、読出し頻度の高いアドレスのデータを拡張メモリ領域EZを通してホストコンピュータ31に転送することが可能となる。また、ホストコンピュータ31からのデータを拡張メモリ領域EZに蓄積させることも可能となる。
【0393】
このように、上記構成においては、データバッファ26の記憶領域を、データ転送元が光ディスクDのみである転送バッファ領域TZとして使用するだけでなく、その一部の領域を、データ転送元が光ディスクDでもありホストコンピュータ31でもある拡張メモリ領域EZとして使用したい場合に、ホストコンピュータ31からの予約要求を与えるだけで実現できることになるため、再生装置に内蔵されたデータバッファ26(半導体メモリ)を十分に活用させることができ、該データバッファ26による効果を十分に発揮させることができる。
【0394】
また、上記構成において、光ディスクD上における予め決定された所定アドレスに対するデータ読出し要求時に、初回要求時のみ光ディスクD上の該当アドレスのデータを拡張メモリ領域EZを介してホストコンピュータ31に転送する拡張読出し要求手段78及び拡張読出し処理手段98と、2回目以降の読出し要求時に、拡張メモリ領域EZに保持されているデータをホストコンピュータ31に転送する拡張転送要求手段81及び拡張転送処理手段101と、光ディスクD上における所定アドレス以外のデータ読出し要求時に、光ディスクD上の該当アドレスのデータを転送バッファ領域TZを介してホストコンピュータ31に転送する読出し要求手段77及び読出し処理手段97を設けるようにしているため、以下のような効果を奏することになる。
【0395】
光ディスクD上の予め決定された所定アドレス以外のデータの読出し要求があった場合、再生手段を通じて再生されたROMデータDrが読出し要求手段77及び読出し処理手段97を通じ、データバッファ26における転送バッファ領域TZを介してホストコンピュータ31に転送される。次回以降、所定アドレス以外のデータをホストコンピュータ31に転送する場合も、再生手段にて再生された上記アドレスのデータが読出し要求手段77及び読出し処理手段97を通じ、転送バッファ領域TZを介してホストコンピュータ31に転送される。即ち、転送バッファ領域TZにおけるデータが順次上書きされながらホストコンピュータ31へのデータ転送が行なわれる。
【0396】
一方、光ディスクD上の予め決定された所定アドレスのデータの読出し要求があった場合は、まず、初回要求時において、再生手段を通じて再生された上記アドレスのデータが拡張読出し要求手段78及び拡張読出し処理手段98を通じてデータバッファ26における拡張メモリ領域EZに蓄積され、更に拡張読出し要求手段78及び拡張読出し処理手段98を通じて上記拡張メモリ領域EZに蓄積されているデータがホストコンピュータ31に転送されることになる。
【0397】
次回以降、所定アドレスのデータをホストコンピュータ31に転送する場合においては、拡張メモリ領域EZに蓄積されているデータが今度は拡張転送要求手段81及び拡張転送処理手段101を通じてそのままホストコンピュータ31に転送されることになる。具体的に所定アドレスのデータをホストコンピュータ31に転送する場合、いちいち再生手段を通じて光ディスクD上の該当アドレスからデータを読み出すという必要がなくなり、拡張メモリ領域EZに蓄積されているデータを直接ホストコンピュータ31に転送させることができることになる。即ち、交替処理が実現できることになる。これは、データアクセス時間の大幅な短縮化につながる。
【0398】
また、上記構成において、ホストコンピュータ31からのブロック転送要求に基づいて、転送バッファ領域TZに一時的に保持されているデータを拡張メモリ領域EZに転送するブロック転送要求手段79及びブロック転送処理手段99を設けた場合においては、例えば後発的に決定された光ディスクD上の第2の所定アドレスのデータが読出し要求手段77及び読出し処理手段97を通じて転送バッファ領域TZに蓄積された際に、ホストコンピュータ31からのブロック転送要求に基づいて、上記転送バッファ領域TZ内のデータがブロック転送要求手段79及びブロック転送処理手段99を通じて拡張メモリ領域EZに転送されることになる。
【0399】
これは、後発的に読出し頻度の高いアドレスが判明した場合に有効となる。即ち、読出し頻度の高いアドレスは、最初から判明している場合と、再生装置の使用経過によって、後発的に判明する場合がある。本実施例は、この後発的に判明した読出し頻度の高いアドレスのデータが読出し要求手段77及び読出し処理手段97を通じて転送バッファ領域TZに蓄積された際に、ブロック転送要求手段79及びブロック転送処理手段99を通じて拡張メモリ領域EZに転送蓄積させることが可能となり、次回以降、上記後発的に判明した読出し頻度の高いアドレスのデータを転送する際には、光ディスクDからではなく拡張メモリ領域EZに蓄積されているデータをホストコンピュータ31に転送できることになる。その結果、再生装置とホストコンピュータ31間のデータ転送を更に効率よく行なわせることができる。
【0400】
また、このブロック転送要求においては、その要求コマンドとして、光ディスクD上のアドレスと相対セクタを有するようにしているため、転送バッファ領域TZに蓄積されているデータのうち、ホストコンピュータ31において、頻繁に使用される例えば係数データや演算用パラメータ等のデータのみを選択することが可能となり、更にこれらのデータをコマンドにて決定された所定の拡張メモリ領域EZに蓄積させることが可能となる。
【0401】
また、上記構成において、ホストコンピュータ31からのデータ書込み要求に基づいて、ホストコンピュータ31から転送されたデータを拡張メモリ領域EZに書き込む拡張書込み要求手段80及び拡張書込み処理手段100を設けるようにしているため、ホストコンピュータ31からのデータ書込み要求に基づいて、拡張書込み要求手段80及び拡張書込み処理手段100を通じてホストコンピュータ31から転送されたデータをこの拡張メモリ領域EZに蓄積させることが可能となる。この場合、ホストコンピュータ31が所有するメモリの容量が不足する場合に、この拡張メモリ領域EZをホストコンピュータの外部記憶装置として利用することが可能となる。
【0402】
また、上記構成において、ホストコンピュータ31からの予約解除要求に基づいて、上記予約要求手段76及び予約処理手段96によるデータバッファ26に対しての転送バッファ領域TZと拡張メモリ領域EZとの論理的割り付けを解除して、要求対象の拡張メモリ領域EZを転送バッファ領域TZとする予約解除処理手段102を設けるようにしたので、以下の場合に有効になる。
【0403】
即ち、頻繁にデータアクセスを行なう必要がない固定データが記録された光ディスク(例えば、光ディスクに記録されているデータがシーケンシャルファイル形式である場合など)に対するアクセスにおいて、予約解除処理手段102によって当該要求に係る拡張メモリ領域EZを転送バッファ領域TZとすることにより、1回のデータ転送サイズを大きくすることができ、上記のような光ディスクDに対するアクセス時間を効率よく短縮することができる。
【0404】
上記実施例においては、データバッファ26をDRAMやSRAMの揮発性半導体メモリにて構成するようにしたが、以下の構成を採用することも可能である。即ち、データバッファ26のうち、予め拡張メモリ領域EZとなる記憶領域を決定(仕様設計段階等で決定させる)させておき、そのうち、転送バッファ領域TZとなる部分を揮発性半導体メモリ(揮発性RAM)にて構成し、拡張メモリ領域EZとなる部分をフラッシュメモリやEEPROM等の不揮発性半導体メモリ(不揮発性RAM)にて構成する。
【0405】
そして、I/Fコントローラ25に、転送バッファ領域TZ(揮発性RAM)に対するアクセスを制御する第1のメモリコントローラと、拡張メモリ領域(不揮発性RAM)に対するアクセスを制御する第2のメモリコントローラを設けて、システムコントローラ29からの要求に応じて各メモリコントローラへの活性化を制御するようにしてもよい。
【0406】
この場合、再生装置においてプログラム動作によって作成されたデータ、例えば次に読出す論理アドレスや各種パラメータ並びにホストコンピュータ31においてプログラム動作によって作成されたデータ、例えば後発的に判明した読出し頻度の高いアドレスや各種パラメータ等を拡張書込み要求手段80及び拡張書込み処理手段100を通じて拡張メモリ領域EZに書き込むことにより、電源停止後や突然の電源断においても、上記データを保持することができ、その後のシステム保守を容易に行なうことが可能となる。
【0407】
上記実施例では、その光ディスクDとしてCD−ROMを主体に説明したが、その他、再生専用の相変化形光ディスクや光磁気ディスクに応用することが可能である。各光ディスクDに対応させるためには、それぞれのフォーマットに合った演算回路を復調回路内に組み込むだけでよく、後の構成は図1で示すものと同じでよい。即ち、復調回路22からは、光ディスクDがいずれの場合も同じデータ形態で出力されるものであり、データバッファ26へのアクセスにおいては、光ディスクDの種類を気にしないで行なうことができるからである。
【0408】
【発明の効果】
上述のように、本発明に係る再生装置によれば、円盤状記録媒体が装着され、該装着された円盤状記録媒体を回転駆動する回転駆動手段と、上記円盤状記録媒体に対して情報データの再生を行なう再生手段と、少なくとも上記回転駆動手段と上記再生手段を制御する制御手段と、上記再生手段を通じて再生された情報データを一時的に保持する記憶手段と、上記記憶手段に記憶された情報データを上記制御手段からの読出し要求に従って外部装置に転送するインターフェース手段とを有する再生装置において、上記記憶装置の記憶領域を、データ転送元が円盤状記録媒体である転送バッファ領域と、データ転送元が任意であり、かつデータ保持部分に対するデータ置換が禁止された拡張メモリ領域に割り付けるようにしたので、円盤状記録媒体上の読出し頻度の高いアドレスのデータを拡張メモリ領域に蓄積させ、それ以外のアドレスのデータを転送バッファ領域に一時的に蓄積させるようにすることができ、その結果、読出し頻度の高いアドレスのデータを外部装置に転送する場合、いちいち再生手段を通じて円盤状記録媒体上の該当アドレスからデータを読み出すという必要がなくなり、拡張メモリ領域に蓄積されているデータを直接外部装置に転送させることができることになる。
【0409】
これにより、再生装置に対するデータアクセス時間が再生装置の平均アクセス時間に依存するということがなくなり、該平均アクセス時間以上の性能を疑似的に発揮させることが可能となる。
【0410】
従って、本発明に係る再生装置においては、データ転送効率の向上を図るために組み込まれた記憶手段(例えば半導体メモリ)の効果を十分に発揮させることができ、円盤状記録媒体上のデータを効率よく外部装置に転送させることができるようになる。
【0411】
また、拡張メモリ領域のデータ転送元が任意であることから、外部装置から転送されたデータもこの拡張メモリ領域に蓄積させることが可能となる。この場合、外部装置が所有するメモリの容量が不足する場合に、この拡張メモリ領域を外部装置の外部記憶装置として利用することが可能となる。
【0412】
また、本発明に係る再生装置によれば、上記構成において、上記外部装置からの拡張メモリ予約要求に基づいて、上記記憶手段の記憶領域を上記転送バッファ領域と上記拡張メモリ領域に論理的に割り付ける拡張メモリ予約手段を設けるようにしたので、記憶手段の記憶領域を、データ転送元が円盤状記録媒体のみである転送バッファ領域として使用するだけでなく、その一部の領域を、データ転送元が任意である拡張メモリ領域として使用したい場合に、外部装置からの拡張メモリ予約要求を与えるだけで実現できることになるため、再生装置に内蔵された記憶手段(半導体メモリ)を十分に活用させることができ、該記憶手段による効果を十分に発揮させることができる。
【0413】
また、本発明に係る再生装置によれば、上記構成において、上記円盤状記録媒体上における予め決定された所定アドレスに対するデータ読出し要求時に、初回要求時のみ上記円盤状記録媒体上の該当アドレスのデータを上記拡張メモリ領域を介して上記外部装置に転送し、2回目以降の読出し要求時に、上記拡張メモリ領域に保持されているデータを上記外部装置に転送する第1の転送手段と、上記円盤状記録媒体上における上記所定アドレス以外のデータ読出し要求時に、上記円盤状記録媒体上の該当アドレスのデータを上記転送バッファ領域を介して上記外部装置に転送する第2の転送手段とを設けるようにしたので、所定アドレスのデータを外部装置に転送する場合、いちいち再生手段を通じて円盤状記録媒体上の該当アドレスからデータを読み出すという必要がなくなり、拡張メモリ領域に蓄積されているデータを直接外部装置に転送させることができることになる。
【0414】
また、本発明に係る再生装置は、上記構成において、上記外部装置からの領域間転送要求に基づいて、上記転送バッファ領域に一時的に保持されているデータを拡張メモリ領域に転送する第3の転送手段を設けるようにしたので、後発的に読出し頻度の高いアドレスが判明した場合に有効となる。即ち、読出し頻度の高いアドレスは、最初から判明している場合と、再生装置の使用経過によって、後発的に判明する場合がある。本発明は、この後発的に判明した読出し頻度の高いアドレスのデータが第2の転送手段を通じて転送バッファ領域に蓄積された際に、第3の転送手段を通じて拡張メモリ領域に転送蓄積させることが可能となり、次回以降、上記後発的に判明した読出し頻度の高いアドレスのデータを転送する際には、円盤状記録媒体からではなく拡張メモリ領域に蓄積されているデータを外部装置に転送できることになる。その結果、再生装置と外部装置間のデータ転送を更に効率よく行なわせることができる。
【0415】
また、本発明に係る再生装置によれば、上記構成において、上記外部装置からのデータ書込み要求に基づいて、上記外部装置から転送されたデータを上記拡張メモリ領域に書き込むデータ書込み手段を設けるようにしたので、外部装置からのデータ書込み要求に基づいて、データ書込み手段を通じて外部装置から転送されたデータをこの拡張メモリ領域に蓄積させることが可能となり、外部装置が所有するメモリの容量が不足する場合に、この拡張メモリ領域を外部装置の外部記憶装置として利用することが可能となる。
【0416】
また、本発明に係る再生装置は、上記構成において、上記外部装置からの予約解除要求に基づいて、上記拡張メモリ予約手段による上記記憶手段に対しての上記転送バッファ領域と上記拡張メモリ領域との論理的割り付けを解除して、上記記憶手段の記憶領域全体又は当該要求に係る拡張メモリ領域を転送バッファ領域とする予約解除手段を設けるようにしたので、頻繁にデータアクセスを行なう必要がない固定データが記録された円盤状記録媒体(例えば、円盤状記録媒体に記録されているデータがシーケンシャルファイル形式である場合など)に対するアクセスにおいて、上記予約解除手段によって記録領域全体又は当該要求に係る拡張メモリ領域を転送バッファ領域とすることにより、1回のデータ転送サイズを大きくすることができ、上記のような円盤状記録媒体に対するアクセス時間を効率よく短縮することができる。
【0417】
また、本発明に係る再生装置は、上記構成において、上記記憶手段のうち、上記拡張メモリ領域を不揮発性の半導体メモリにて構成するようにしたので、再生装置においてプログラム動作によって作成されたデータ、例えば次に読出すアドレスや各種パラメータ並びに外部装置においてプログラム動作によって作成されたデータ、例えば後発的に判明した読出し頻度の高いアドレスや各種パラメータ等をデータ書込み手段を通じて拡張メモリ領域に書き込むことにより、電源停止後においても上記データを保持することができ、その後のシステム保守を容易に行なうことが可能となる。
【図面の簡単な説明】
【図1】本発明に係る再生装置を、ホストコンピュータの外部記憶装置として再生専用の光ディスク(CD−ROM)を記録媒体とするCD−ROMドライブ装置に適用した実施例(以下、単に実施例に係る再生装置と記す)を示す構成図である。
【図2】本実施例に係る再生装置において、データバッファへの拡張メモリ領域の論理的割り付け例を示す説明図である。
【図3】I/Fコントローラのハード構成を示すブロック図である。
【図4】I/Fコントローラにおけるデータ転送処理手段を示す機能ブロック図である。
【図5】I/Fコントローラにおけるデータ転送処理手段の動作を示すフローチャートである。
【図6】I/Fコントローラにおける各種要求処理手段の動作を示すフローチャートである。
【図7】システムコントローラのハード構成を示すブロック図である。
【図8】システムコントローラにおけるコマンド処理手段を示す機能ブロック図である。
【図9】システムコントローラにおけるコマンド処理手段の動作を示すフローチャートである。
【図10】システムコントローラにおける各種要求処理手段の動作を示すフローチャートである。
【図11】I/Fコントローラにおける予約要求手段を示す機能ブロック図である。
【図12】I/Fコントローラにおける予約要求手段の動作を示すフローチャートである。
【図13】システムコントローラにおける予約処理手段を示す機能ブロック図である。
【図14】システムコントローラにおける予約処理手段の動作を示すフローチャートである。
【図15】システムコントローラの予約処理手段内における拡張情報テーブル作成手段の動作を示すフローチャートである。
【図16】システムコントローラの予約処理手段内における転送情報テーブル作成手段の動作を示すフローチャート(その1)である。
【図17】システムコントローラの予約処理手段内における転送情報テーブル作成手段の動作を示すフローチャート(その2)である。
【図18】I/Fコントローラにおける読出し要求手段を示す機能ブロック図である。
【図19】I/Fコントローラにおける読出し要求手段の動作を示すフローチャートである。
【図20】I/Fコントローラの読出し要求手段内における蓄積要求手段の動作を示すフローチャートである。
【図21】I/Fコントローラの読出し要求手段内における転送要求手段の動作を示すフローチャートである。
【図22】システムコントローラにおける読出し処理手段を示す機能ブロック図である。
【図23】システムコントローラにおける読出し処理手段の動作を示すフローチャート(その1)である。
【図24】システムコントローラにおける読出し処理手段の動作を示すフローチャート(その2)である。
【図25】システムコントローラの読出し処理手段内における論理アドレス決定処理手段の動作を示すフローチャートである。
【図26】システムコントローラの読出し処理手段内における転送格納テーブル作成手段の動作を示すフローチャートである。
【図27】システムコントローラの読出し処理手段内におけるEOFコード格納処理手段の動作を示すフローチャートである。
【図28】I/Fコントローラにおける拡張読出し要求手段を示す機能ブロック図である。
【図29】I/Fコントローラにおける拡張読出し要求手段の動作を示すフローチャートである。
【図30】I/Fコントローラの拡張読出し要求手段内における蓄積要求手段の動作を示すフローチャートである。
【図31】I/Fコントローラの拡張読出し要求手段内における転送要求手段の動作を示すフローチャートである。
【図32】システムコントローラにおける拡張読出し処理手段を示す機能ブロック図である。
【図33】システムコントローラにおける拡張読出し処理手段の動作を示すフローチャート(その1)である。
【図34】システムコントローラにおける拡張読出し処理手段の動作を示すフローチャート(その2)である。
【図35】システムコントローラの拡張読出し処理手段内における拡張情報テーブル検索手段の動作を示すフローチャートである。
【図36】I/Fコントローラにおけるブロック転送要求手段を示す機能ブロック図である。
【図37】I/Fコントローラにおけるブロック転送要求手段の動作を示すフローチャートである。
【図38】システムコントローラにおけるブロック転送処理手段を示す機能ブロック図である。
【図39】システムコントローラにおけるブロック転送処理手段の動作を示すフローチャートである。
【図40】システムコントローラのブロック転送処理手段内における拡張情報テーブル検索手段の動作を示すフローチャートである。
【図41】システムコントローラのブロック転送処理手段内における転送格納テーブル検索手段の動作を示すフローチャートである。
【図42】I/Fコントローラにおける拡張書込み要求手段を示す機能ブロック図である。
【図43】I/Fコントローラにおける拡張書込み要求手段の動作を示すフローチャートである。
【図44】システムコントローラにおける拡張書込み処理手段を示す機能ブロック図である。
【図45】システムコントローラにおける拡張書込み処理手段の動作を示すフローチャートである。
【図46】システムコントローラの拡張書込み処理手段内における拡張情報テーブル検索手段の動作を示すフローチャートである。
【図47】I/Fコントローラにおける拡張転送要求手段を示す機能ブロック図である。
【図48】I/Fコントローラにおける拡張転送要求手段の動作を示すフローチャートである。
【図49】システムコントローラにおける拡張転送処理手段を示す機能ブロック図である。
【図50】システムコントローラにおける拡張転送処理手段の動作を示すフローチャートである。
【図51】システムコントローラにおける予約解除処理手段を示す機能ブロック図である。
【図52】システムコントローラにおける予約解除処理手段の動作を示すフローチャートである。
【図53】システムコントローラの予約解除処理手段内における拡張格納テーブル処理手段の動作を示すフローチャートである。
【図54】拡張情報テーブル,転送情報テーブルの各レコードの構成及び情報フラグのビット構成を示す説明図である。
【図55】拡張格納テーブル及び転送格納テーブルの各レコードの構成を示す説明図である。
【符号の説明】
D 光ディスク
2 スピンドルモータ
3 光ピックアップ
4 信号処理系
7 光ピックアップ用スライド機構
8 対物レンズ
9 二次元アクチュエータ
10 APC回路
21 RFアンプ部
22 復調回路
23 D/A変換器
24 デコーダ
25 I/Fコントローラ
26 データバッファ
27 サーボ制御部
28 メカニズムコントローラ
29 システムコントローラ
31 ホストコンピュータ
TZ 転送バッファ領域
EZ 拡張メモリ領域
56,66 CPU
53,63 データRAM
54,64 入力ポート
55,65 出力ポート
71 データ転送処理手段
75 各種要求処理手段
76 予約要求手段
77 読出し要求手段
78 拡張読出し要求手段
79 ブロック転送要求手段
80 拡張書込み要求手段
81 拡張転送要求手段
82 コマンド出力手段
91 コマンド処理手段
95 各種要求処理手段
96 予約処理手段
97 読出し処理手段
98 拡張読出し処理手段
99 ブロック転送処理手段
100 拡張書込み処理手段
101 拡張転送処理手段
102 予約解除処理手段

Claims (6)

  1. 円盤状記録媒体が装着され、該装着された円盤状記録媒体を回転駆動する回転駆動手段と、
    上記円盤状記録媒体に対して情報データの再生を行なう再生手段と、
    少なくとも上記回転駆動手段と上記再生手段を制御する制御手段と、
    上記再生手段を通じて再生された情報データを一時的に保持する記憶手段と、
    上記記憶手段に記憶された情報データを上記制御手段からの読出し要求に従って外部装置に転送し、かつ、外部装置からの要求を受信するインターフェース手段と、
    上記外部装置からの拡張メモリ予約要求に基づいて、上記記憶手段の記憶領域を上記転送バッファ領域と上記拡張メモリ領域に論理的に割り付ける拡張メモリ予約手段とを有する再生装置において、
    上記記憶装置の記憶領域が、データ転送元が円盤状記録媒体である転送バッファ領域と、
    データ転送元が任意であり、かつデータ保持部分に対するデータ置換が禁止された拡張メモリ領域に割り付けられていることを特徴とする再生装置。
  2. 上記円盤状記録媒体上における予め決定された所定アドレスに対するデータ読出し要求時に、初回要求時のみ上記円盤状記録媒体上の該当アドレスのデータを上記拡張メモリ領域を介して上記外部装置に転送し、2回目以降の読出し要求時に、上記拡張メモリ領域に保持されているデータを上記外部装置に転送する第1の転送手段と、
    上記円盤状記録媒体上における上記所定アドレス以外のデータ読出し要求時に、上記円盤状記録媒体上の該当アドレスのデータを上記転送バッファ領域を介して上記外部装置に転送する第2の転送手段とを有することを特徴とする請求項1又は2記載の再生装置。
  3. 上記外部装置からの領域間転送要求に基づいて、上記転送バッファ領域に一時的に保持されているデータを拡張メモリ領域に転送する第3の転送手段を有することを特徴とする請求項1又は2記載の再生装置。
  4. 上記外部装置からのデータ書込み要求に基づいて、上記外部装置から転送されたデータを上記拡張メモリ領域に書き込むデータ書込み手段を有することを特徴とする請求項1〜いずれか1記載の再生装置。
  5. 上記外部装置からの予約解除要求に基づいて、上記拡張メモリ予約手段による上記記憶手段に対しての上記転送バッファ領域と上記拡張メモリ領域との論理的割り付けを解除して、上記記憶手段の記憶領域全体又は当該要求に係る拡張メモリ領域を転送バッファ領域とする予約解除手段を有することを特徴とする請求項記載の再生装置。
  6. 上記記憶手段のうち、少なくとも上記拡張メモリ領域が不揮発性の半導体メモリにて構成されていることを特徴とする請求項1記載の再生装置。
JP26420294A 1994-10-27 1994-10-27 再生装置 Expired - Fee Related JP3687115B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP26420294A JP3687115B2 (ja) 1994-10-27 1994-10-27 再生装置
US08/548,273 US5625792A (en) 1994-10-27 1995-10-25 Reproducing apparatus with transfer buffer and shared extended memory
MYPI95003233A MY115445A (en) 1994-10-27 1995-10-26 Reproducing apparatus
KR1019950037462A KR100366142B1 (ko) 1994-10-27 1995-10-27 재생장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26420294A JP3687115B2 (ja) 1994-10-27 1994-10-27 再生装置

Publications (2)

Publication Number Publication Date
JPH08123731A JPH08123731A (ja) 1996-05-17
JP3687115B2 true JP3687115B2 (ja) 2005-08-24

Family

ID=17399912

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26420294A Expired - Fee Related JP3687115B2 (ja) 1994-10-27 1994-10-27 再生装置

Country Status (4)

Country Link
US (1) US5625792A (ja)
JP (1) JP3687115B2 (ja)
KR (1) KR100366142B1 (ja)
MY (1) MY115445A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10540094B2 (en) 2008-02-28 2020-01-21 Memory Technologies Llc Extended utilization area for a memory device
US10877665B2 (en) 2012-01-26 2020-12-29 Memory Technologies Llc Apparatus and method to provide cache move with non-volatile mass memory system
US11016678B2 (en) 2013-12-12 2021-05-25 Memory Technologies Llc Channel optimized storage modules
US11226771B2 (en) 2012-04-20 2022-01-18 Memory Technologies Llc Managing operational state data in memory module
US11733869B2 (en) 2009-06-04 2023-08-22 Memory Technologies Llc Apparatus and method to share host system RAM with mass storage memory RAM

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6973535B2 (en) 2001-09-14 2005-12-06 Cornice, Inc. Digital device configuration and method
US7106541B2 (en) 2001-09-14 2006-09-12 Convergent Systems Solutions, Llc Digital device configuration and method
JPWO2004051650A1 (ja) * 2002-11-29 2006-04-06 富士通株式会社 データ記録再生装置及び、データ記録再生方法
JP4117608B2 (ja) 2002-12-03 2008-07-16 ソニー株式会社 記録制御装置および記録制御方法、並びにプログラム
KR20080044505A (ko) * 2006-11-16 2008-05-21 삼성전자주식회사 데이터를 관리하는 장치 및 방법
JP2010026933A (ja) * 2008-07-23 2010-02-04 Toshiba Corp メモリシステム、ホスト装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5287468A (en) * 1987-06-03 1994-02-15 Sony Corporation Method and apparatus for processing information data

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11494080B2 (en) 2008-02-28 2022-11-08 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
US11829601B2 (en) 2008-02-28 2023-11-28 Memory Technologies Llc Extended utilization area for a memory device
US10540094B2 (en) 2008-02-28 2020-01-21 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
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
US11733869B2 (en) 2009-06-04 2023-08-22 Memory Technologies Llc Apparatus and method to share host system RAM with mass storage memory RAM
US11797180B2 (en) 2012-01-26 2023-10-24 Memory Technologies Llc Apparatus and method to provide cache move with non-volatile mass memory system
US10877665B2 (en) 2012-01-26 2020-12-29 Memory Technologies Llc Apparatus and method to provide cache move with non-volatile mass memory system
US11226771B2 (en) 2012-04-20 2022-01-18 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
US11023142B2 (en) 2013-12-12 2021-06-01 Memory Technologies Llc Channel optimized storage modules
US11809718B2 (en) 2013-12-12 2023-11-07 Memory Technologies Llc Channel optimized storage modules
US11016678B2 (en) 2013-12-12 2021-05-25 Memory Technologies Llc Channel optimized storage modules

Also Published As

Publication number Publication date
US5625792A (en) 1997-04-29
KR100366142B1 (ko) 2003-04-11
JPH08123731A (ja) 1996-05-17
KR960015533A (ko) 1996-05-22
MY115445A (en) 2003-06-30

Similar Documents

Publication Publication Date Title
JP3585091B2 (ja) 記憶装置
JP3687115B2 (ja) 再生装置
US5805932A (en) System for transmitting compressed data if compression ratio is at least preset ratio and pre-compressed data if compression ratio is less than preset ratio
JPH10208394A (ja) 情報ファイル記録方法及び記録装置
RU2284589C2 (ru) Способ и устройство записи и носитель записи
JP2806354B2 (ja) 情報記録方法及び情報記録装置
US5875161A (en) Method and apparatus for accessing track on an optical disc
JP2004355714A (ja) 記録媒体ドライブ装置、記録媒体ドライブ用プログラム、記憶媒体及び記録媒体ドライブ方法
JPH1173711A (ja) 記憶装置
JPH05128734A (ja) 光磁気デイスク装置のデータ記録/再生方法
JP3965023B2 (ja) 情報記録再生装置
JPS62246193A (ja) 光デイスク装置
JP3306994B2 (ja) 記録方法
JPH10302397A (ja) 光ディスク記録装置
JPS6122488A (ja) 情報記憶方式
JP3374921B2 (ja) ディスク記録方法
JP3396408B2 (ja) 光ディスク装置
JP3790301B2 (ja) 光ディスクおよび光ディスク記録装置
WO2005106871A1 (ja) データ処理装置およびデータ処理プログラム
JP2001351311A (ja) 光ディスクのシーク方法および光ディスク駆動装置
JPH06139736A (ja) ディスク装置のヘッド待機位置制御装置
JP2002245752A (ja) ディスク記録再生装置
JPS6316484A (ja) 光デイスク装置
JPH0793886A (ja) 情報記憶装置
JPH08106722A (ja) 情報記録再生装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040127

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050201

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050404

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050517

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050530

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080617

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090617

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090617

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100617

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100617

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110617

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110617

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120617

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130617

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees