明細書
光ディスクドライブ 技術分野
この発明は、 光ディスクドライブに関し、 特にたとえば、 D VD + RW方式に 従う D VDレコーダに設けられる、 光ディスクドライブに関する。 従来技術
従来この種の光ディスクドライブは一般に、 D VD + RW (以下"光ディスク") が装着されたとき、 装着された光ディスクから P F I (Physical Format Information) Dし B (Formatting Descriptor Control Block) を読 取り、 読み取られた P F I ZF D C Bから記録済み領域の終了位置を示すアドレス (以 下 "最終記録アドレス") を抽出し、 抽出された "最終記録アドレス"をドライブ 内の揮発性メモリに格納する。
その後、 レコーダ本体から再生命令が発行されると、 光ディスクドライブは、 発行された再生命令に添付されている "開始アドレス" を揮発性メモリ内の "最 終記録ァドレス" と比較し、 "開始ァドレス"が "最終記録ァドレス"以下であれ ば読み出しを行う一方、 "開始ァドレス"が "最終記録ァドレス"を超えていれば エラーを通知する。 これにより、 未記録領域に対する読み出しが回避される。 同様に、 記録命令が発行されると、 発行された記録命令に添付されている "開 始ァドレス"を揮発性メモリ内の "最終記録ァドレス"と比較し、 "開始ァドレス" が "最終記録ァドレス + 1 "以下であれば記録を行うが、 "開始ァドレス"が "最 終記録アドレス + 1 " を超えていればエラーを通知する。 これにより、 データが 隙間なく記録され、 記録領域の有効利用が可能となる。
そして、 未記録領域へのデータ記録が行われた場合、 揮発性メモリ内の "最終 記録アドレス" は、 1つの再生命令に対応するデータ記録が完了する度に更新さ れ、 一方、 光ディスク内の P F I ZF D C Bは、 レコーダ本体からディスク排出 命令が発行されたとき揮発性メモリ内の "最終記"録アドレス" に基づいて更新さ れる。
さて、 D VDレコーダで 2つの TV番組 "番組 A" および "番組 , を連 ¾し て記録する場合を考える。 "番組 Α" の記録は正常に終了され、 "番組 Β " の記録 中に停電などによって電源が遮断され、 その結果 "番組 ' の記録が異常終了さ れたとする。 電源遮断時、 揮発性メモリ内の "最終記録アドレス"が失われ、 そ の結果、 光ディスク内の P F I /F D C Bの更新は不可能となる。 一方、 光ディ スク内のファイルシステム情報は、 "番組 Α"の記録が終了した時点で更新されて いる。 なお、 ファイルシステム情報は、 レコーダ本体のシステムコントローラに よって管理される情報であり、 以下 " UD F " と呼ぶ。 このため、 電源回復後、 レコーダ本体のシステムコントローラには "番組 Α" の開始 Ζ終了アドレスを含 んだ UD Fが取り込まれ、 一方、 光ディスクドライブには "番組 Α"記録前の Ρ F I ZF D C Bが取り込まれることになる。
つまり、 光ディスクには "番組 Α"が記録されており、 システムコントローラ は "番組 Α" の開始 Ζ終了アドレスを把握しているのに対し、 光ディスクドライ ブは、記録済み領域の終了位置が"番組 Α"の直前にあると誤認することになる。 このため、 システムコントローラによって "番組 Α" の再生命令が発行されたと き、光ディスクドライブは、 "開始アドレス"が "最終記録アドレス"よりも大き いと判別してエラ一を通知する。 また、 システムコントロー^によって"番組 Β " の記録命令が再度発行されたとき、光ディスクドライブは、 "開始アドレス"が"最 終記録アドレス + 1 " よりも大きいと判別してエラーを通知する。
このように、 従来の光ディスクドライブでは、 電源遮断によって記録動作が異 常終了した場合、 これ以降、 光ディスクに適切にアクセスして再生や記録を行う ことができなくなることがある。 発明の概要
それゆえに、 この発明の主たる目的は、 新規な光ディスクドライブを提供する ことである。
この発明の他の目的は、 記録動作が異常終了しても光ディスクに適切にァクセ スすることができる、 光ディスクドライブを提供することである。
クレーム 1の発明に従う光ディスクドライブは、 電源が投入されたとき追記型
の光ディスクに形成された記録済み領域の末尾位置を示す位置情報を光ディスク の所定領域から読み出す第 1読み出し手段、 第 1読み出し手段によって読み出さ れた位置情報に従う位置よりも後に情報が存在するか否かを判別する第 1判別手 段、 第 1判別手段の判別結果が肯定的であるとき記録済み領域の末尾位置を検出 する検出手段、 および第 1読み出し手段によって読み出された位置情報に代えて 検出手段によって検出された末尾位置を示す位置情報を有効化する有効化手段を 備える。
クレーム 1の発明では、 光ディスクは、 追記型であって、 記録済み領域が形成 されており、 この記録済み領域の末尾位置を示す位置情報がこの光ディスクの所 定領域に格納されている。 電源が投入されたとき、 この光ディスクの所定領域か ら位置情報が読み出され、 読み出された位置情報に従う位置よりも後に情報が存 在するか否かが判別される。 この判別結果が肯定的であるとき、 記録済み領域の 末尾位置が検出され、 読み出された位置情報に代えて、 検出された末尾位置を示 す位置情報が有効化される。
すなわち、 電源がオンされたとき、 光ディスクに格納されている位置情報の正 誤が判定され、 もし誤っていれば、 光ディスクへのアクセスによって記録済み領 域の終了位置が検出される。 この後、 命令された再生や記録が可能かどうかの判 別は、 検出された位置情報に基づいて行われる。
クレーム 2の発明に従う光ディスクドライブは、 クレーム 1に従属し、 記録操 作が行われたとき光ディスクに任意の情報を記録する記録手段、 記録操作が行わ れてから記籙手段の記録が開始される前に記録操作に関連付けられた開始位置情 報と有効化手段によって有効化された位置情報とが第 1所定条件を満たすか否か を判別する第 2判別手段、 および第 2判別手段の判別結果が肯定的であるとき記 録手段の記録を禁止する第 1禁止手段をさらに備える。
クレーム 2の発明では、 記録操作が行われたとき、 記録手段によって光デイス クに任意の情報が記録される。記録操作が行われてから記録手段の記録が開始さ れる前に、 記録操作に関連付けられた開始位置情報と有効化手段によって有効化 された位置情報とが第 1所定条件を満たすか否かの判別が行われ、 この判別結果 が肯定的であるとき、 記録手段の記録は禁止される。
クレーム 3の発明に従う光ディスクドライブは、 クレーム 2に従属し、 第 1所 定条件は開始位置情報の示すァドレス値が有効化手段によって有効化された位置 情報の示すァドレス値に単位ァドレス値を加算した値を超えるという条件を含む。 クレーム 4の発明の発明に従う光ディスクドライブは、 クレーム 3に従属し、 有効化手段によって有効化された位置情報をレジス夕に保持する保持手段、 およ び記録手段による光ディスクの未記録領域への記録に従つてレジスタの位置情報 を更新する第 1更新手段をさらに備える。
クレーム 4の発明では、 有効化手段によって有効化された位置情報はレジス夕 に保持され、 このレジスタの位置情報は、 記録手段による光ディスクの未記録領 域への記録に従って更新される。
クレーム 5の発明に従う光ディスクドライブは、 クレーム 4に従属し、 第 1更 新手段によってレジスタの位置情報が更新されたとき更新フラグをセットするフ ラグ手段、 排出操作が行われたとき更新フラグがセットされているか否かを判別 する第 3判別手段、 および第 3判別手段の判別結果が肯定的であるとき光ディス クの所定領域に格納されている位置情報をレジス夕の位置情報に更新する第 2更 新手段をさらに備える。
クレ一ム 5の発明では、 レジス夕の位置情報が更新されたとき、 更新フラグが セットされる。 そして、 排出操作が行われたとき、 更新フラグがセットされてい るか否かが判別され、 この判別結果が肯定的であるとき、 光ディスクの所定領域 に格納されている位置情報は、 レジスタの位置情報に更新される。
すなわち、 レジス夕の位置情報は、 未記録領域へのデータ記録が行われる度に 更新され、 光ディスクの所定領域の位置情報は、 排出操作に応じて光ディスクが 排出される直前にレジスタの位置情報に更新される。
クレーム 6の発明に従う光ディスクドライブは、 クレーム 1に従属し、 再生操 作が行われたとき光ディスクから任意の情報を読み出す第 2読み出し手段、 再生 操作が行われてから第 2読み出し手段の読み出しが開始される前に再生操作に関 連付けられた開始位置情報と有効化手段によつて有効化された位置情報とが第 2 所定条件を満たすか否かを判別する第 4判別手段、 および第 4判別手段の判別結 果が肯定的であるとき第 2読み出し手段の読み出しを禁止する第 2禁止手段をさ
らに備える。
クレーム 6の発明では、 再生操作が行われたとき、 第 2読み出し手段によって 光ディスクから任意の情報が読み出される。再生操作が行われてから第 2読み出 し手段の読み出しが開始される前に、 再生操作に関連付けられた開始位置情報と 有効化手段によつて有効化された位置情報とが第 2所定条件を満たすか否かの判 別が行われ、 この判別結果が肯定的であるとき、 第 2読み出し手段の読み出しは 禁止される。
クレーム 7の発明に従う光ディスクドライブは、 クレーム 6に従属し、 第 2所 定条件は開始位置情報の示すァドレス値がレジス夕の位置情報の示すァドレス値 を超えるという条件を含む。
クレーム 8の発明に従う位置情報更新プログラムは、 追記型の光ディスクが装 着された光ディスクドライブのプロセッサに、
追記型の光ディスクに形成された記録済み領域の末尾位置を示す位置情報を光 ディスクの所定領域から読み出す第 1読み出しステツプ、
第 1読み出しステップによって読み出された位置情報に従う位置よりも後に情 報が存在するか否かを判別する第 1判別ステツプ、
第 1判別ステツプの判別結果が肯定的であるとき記録済み領域の末尾位置を検 出する検出ステップ、 および
第 1読み出しステップによって読み出された位置情報に代えて検出ステップに よって検出された末尾位置を示す位置情報を有効化する有効化ステップを実行さ せる。
クレーム 9の発明に従う位置情報更新方法は、 追記型の光ディスクに形成され た記録済み領域の末尾位置を示す位置情報を更新する方法であって、 位置情報を 光ディスクの所定領域から読み出す第 1読み出しステップ、 第 1読み出しステツ プによって読み出された位置情報に従う位置よりも後に情報が存在するか否かを 判別する第 1判別ステツプ、 第 1判別ステツプの判別結果が肯定的であるとき追 記型の光ディスクに形成された記録済み領域の末尾位置を検出する検出ステツプ、 および第 1読み出しステップによって読み出された位置情報に代えて検出ステツ プによって検出された末尾位置を示す位置情報を有効化する有効化ステップを備
— 3 —
える。
この発明によれば、 電源がオンされたとき、 光ディスクに格納されている最終 記録ァドレスの正誤が判定され、 もし誤っていれば光ディスクから正しい最終記 録アドレスが検出されるので、 たとえ記録動作が異常終了しても、 ただ電源オン 操作をしさえすれば、 光ディスクに適切にアクセスして再生や記録を行うことが できる。
この発明の上述の目的, その他の目的, 特徴および利点は、 図面を参照して行 う以下の実施例の詳細な説明から一層明らかとなろう。
この発明の上述の目的, その他の目的, 特徴および利点は、 図面を参照して行 う以下の実施例の詳細な説明から一層明らかとなろう。 図面の簡単な説明
図 1はこの実施例の光ディスクドライブの構成を示すブロック図であり ; 図 2は光ディスクへの記録処理の一例を示す図解図であり ;
図 3 (A) 〜 (D) は図 2記録処理の進行に伴って光ディスク内の PF I/F DCB情報, 光ディスク内の UDF情報, システムコントローラ内のメモリの記 憶内容, および C PU内のレジスタの保持内容が変化する様子の一部を示す図解 図であり ;
図 4 (A) 〜 (C) は図 2記録処理の進行に伴って光ディスク内の PF IZF DCB情報, 光ディスク内の UDF情報, システムコントローラ内のメモリの記 憶内容, および C PU内のレジスタの保持内容が変化する様子の他の一部を示す 図解図であり ;
図 5は光ディスクへの記録処理の他の一例を示す図解図であり;
図 6 (A) 〜 (D) は図 5記録処理の進行に伴って光ディスク内の PF IZF DCB情報, 光ディスク内の UDF情報, システムコントローラ内のメモリの記 憶内容, および C PU内のレジス夕の保持内容が変化する様子の一部を示す図解 図であり ;
図 7 ) 〜 (D) は図 5記録処理の進行に伴って光ディスク内の PF IZF DCB情報, 光ディスク内の UDF情報, システムコントローラ内のメモリの記
— 0 —
憶内容, および C PU内のレジスタの保持内容が変化する様子の他の一部を示す 図解図であり ;
図 8は光ディスクへの記録処理のその他の一例を示す図解図であり ; 図 9 (A) 〜 (D) は図 8記録処理の進行に伴って光ディスク内の PF I/F DCB情報, 光ディスク内の UDF情報, システムコントローラ内のメモリの記 憶内容, および C PU内のレジスタの保持内容が変化する様子の一部を示す図解 図であり ;
図 10 (A) 〜 (D) は図 8記録処理の進行に伴って光ディスク内の PF 1ノ FDCB情報, 光ディスク内の UDF情報, システムコントローラ内のメモリの 記憶内容, および C PU内のレジス夕の保持内容が変化する様子の他の一部を示 す図解図であり;
図 11は CPU動作の一部を示すフロー図であり ;
図 12は CPU動作の他の一例を示すフロ一図であり ;
図 13は CPU動作のその他の一例を示すフロー図であり ;
図 14は CPU動作のさらにその他の一例を示すフロー図であり ; 図 15は CPU動作の他の一例を示すフロー図であり ;
図 16は CPU動作のその他の一例を示すフロー図であり ;そして
図 17は Us r L s t Add r更新処理を示す図解図である。 発明を実施するための最良の形態
図 1を参照して、 この実施例の光ディスクドライブ 10は、 バックエンドシス テム 50と共に、 図示しない光ディスク装置の一部を構成する。 光ディスク装置 では、 バックエンドシステム 50が光ディスクドライブ 10に命令を発行し、 応 じて光ディスクドライブ 10は、 光ディスク 12にデータを記録し、 また光ディ スク 12に記録されたデータを再生する。 なお、 光ディスク 12は、 DVD + R Wである。
光ディスクドライブ 10は、 ピックアップ 20を含む。 ピックアップ 20はス レッド (図示せず) によって支持され、 スレッドは、 光ディスク 12の径方向に 沿って可動であり、スレツドモータ 16によって駆動される。光ディスク 12は、
トレイモータ 18によって駆動されるかつ開閉自在なトレィを介してスピンドル (いずれも図示せず) の上に搭載される。 スピンドルに搭載された光ディスク 1 2は、 スピンドルモータ 14【こよって回転される。 ピックアップ 20は、 光ディ スク 12の回転に伴い内周側から外周側へと移動しながら、 光ディスク 12の記 録面にレーザ光を照射する。 これにより、 光ディスク 12の記録面にデータが記 録される。 また、 記録面から反射される反射レーザ光に基づいて、 記録面に記録 されたデータが読み取られる。 さらには、 記録面から反射される反射レーザに基 づいて、 スレッドサーポ, スピンドルサーポ等のサーポ処理が実行される。
より具体的には、 ピックアップ 20内のレーザダイォ一ド (図示せず) からレ —ザ光が放射され、 放出されたレーザ光は、 光ディスク 12の記録面に照射され る。記録面で反射されたレーザ光は、 ピックアップ 20内の光検出器(図示せず) により検出され、 この光検出器の検出結果が A S P (Analog Signal Processor) 22に与えられる。 A S P 22は、 与えられた検出結果に基づいて演算を行い、 RF (Radio Frequency) 信号およびエラ一検出信号を生成する。 生成された R F信号およびエラー検出信号は、 図示しない AZD変換器を介して D S P (Digital Signal Processor) 26に与えられる。
DSP26は、 ASP22から与えられたエラー検出信号に基づいてスピンド ル制御, スレッド制御等を実行し、 スピンドル制御電圧, スレッド制御電圧等を 生成する。 生成された制御電圧は、 図示しない PWM変調回路に与えられ、 電圧 値に対応するパルス幅の PWM信号に変換される。 変換された PWM信号はドラ ィバ 24に与えられ、 これによつて、 スピンドルモ一夕 14, スレッドモー夕 1 6等の回転が制御される。
バックエンドシステム 50は、 システムコントローラ 52を含む。 システムコ ントローラ 52は、 操作キー 54からの信号を受け、 光ディスクドライブ 10を 含む光ディスク装置全体を制御する。 DSP26には AT AP I I /F (AT Attachment Packet Interface) 26 aが設けられており、 CPU28は、 DSP 26を介してシステムコントローラ 52と通信を行うことができる。
CPU 28はレジス夕 28 rを、 システムコントローラ 52はメモリ 52 rを 含む。 レジスタ 28 rは、 "ユーザデータ最終記録アドレス"と対応する変数" U
s r L s t A d d r "を保持する。なお、 "ユーザデータ最終記録ァドレス"につ いては後述する。
光ディスク 12の記録面には、 ユーザデータ例えば 2つのコンテンツ "T i t l e i" および "T i t 1 e 2" と、 PF I/FDCB'lf¾l 2 aおよび UDF 情報 12 bとが記録されている。 PF IZFDCB情報 12 aは、 CPU28の 管理下にあり、 光ディスク 12が光ディスクドライブ 10にセッ卜されたとき光 ディスク 12から読み出され、 レジス夕 28 rに保持される。 つまり、 ディスク セット時に読み出された PF I/FDCB'|f#l 2 aが変数 "Us r L s t Ad d r" の初期値となる。
PF IZFDCB情報 12 aはまた、 光ディスク 12が光ディスクドライブ 1 0から排出されるとき更新される。 すなわち、 光ディスク 12に別のコンテンツ 例えば "T i t 1 e 3" および "T i t 1 e 4" が追記されたとすると、 追記に 伴い、 レジスタ 28 rの保持値つまり "Us r L s t A d d r " が C P U 28に より書き換えられており、 ディスク排出時には、 この書換え後の "Us r L s t Add r" が DSP 26を介して ASP 22へと転送される。 ASP 22は、 転 送されてきた "Us r L s t Add r" で光ディスク 12内の PF I/FDCB 情報 12 aを上書きする。
一方、 UDF情報 12bは、 システムコントローラ 52の管理下にあり、 光デ イスク 12が光ディスクドライブ 10にセッ卜されたとき光ディスク 12から読 み出され、 メモリ 52 rに転送される。 UDF情報 12 bはまた、 1つのコンテ ンッの記録が完了する度に更新される。 すなわち、 1つのコンテンツの記録が完 了したとき、 まずシステムコントローラ 52によってメモリ 52 rの記憶情報が 書き換えられ、 次にこの書換えられた情報が DSP 26を介して ASP 22へと 転送される。 ASP 22は、 転送されてきた情報で光ディスク 12内の UDF情 報 12 bを上書きする。
以上のように構成された光ディスクドライブ 10の基本動作を、 図 1, 図 2, 図 3 (A) 〜図 3 (D) および図 4 (A)〜図 4 (C) により具体的に説明する。 まず図 2および図 3 (A) を参照して、 光ディスク 12には、 2つのコンテンツ "T i t 1 e 1" および "T i t 1 e 2" と、 PF 1/?0〇8情報12 aおよ
び UDF情報 12 bとが記録されている。 光ディスク 12が光ディスクドライブ 10にセットされると、 最初、 図 3 (B) のように、 PF IZFDCB情報 12 aが CPU 28によってレジス夕 28 r内に、 UDF情報 12 bがシステムコン トローラ 52によってメモリ 52 r内に、 それぞれ取り込まれる。
次に、 CPU 28によって光ディスク 12の検索が行われ、 これにより "ユー ザデータ最終記録ァドレス" つまりコンテンッが記録されている領域の末尾位置 に対応するアドレス "3BFFFh"が検出される。 検出されたアドレス "3B FFFh" は、 レジスタ 28 r内の " Us r L s t Ad d r" つまり "3 BFF Fh" と比較される。 この比較処理は、 光ディスク 12に関し、 PF IZFDC B情報 12 aと実際の "ユーザデータ最終記録アドレス" との間に矛盾がないか を確認するために行われる。 この場合は矛盾がないので、 記録済みコンテンツつ まり " T i t 1 e 1" および "T i t 1 e 2" を再生することができ、 また、 別 のコンテンツ例えば "T i t 1 e 3" を追記することもできる。
なお、 もし PF IZFDCB情報 12 aと "ユーザデータ最終記録アドレス" との間に矛盾があれば、 そのままでは記録済みコンテンツの再生が行えないこと があり、また新たなコンテンツを追記することもできない。そこで、 "Us r L s t Add r更新処理"が行われる (詳細は後述)。
その後、 操作キー 54を介して新たなコンテンツ例えば "T i t 1 e 3" の記 録が指示されると、 システムコントローラ 52は、 記録命令を発行する。 記録命 令には、 開始ァドレス " 3 C 000 h" が添付される。 開始ァドレス " 3 C 00 0 h" は、 メモリ 52 r内の管理情報を参照して決定される。 具体的には、 管理 情報に含まれる末尾アドレスが " 3BFFFh" なので、 開始アドレスは、 これ に " 1 " を加算した値 " 3 C 000 h" となる。
記録命令が発行されると、 C P U 28は、 添付されている開始ァドレス " 3 C 000 h" を、 レジスタ 2, 8 rの保持値に " 1 " を加算した値 "U s r L s t A dd r + 1"つまり "3C000h" と比較して、 前者が後者を越えていないこ とを確認した後、 記録許可を発行する。 なお、 もし開始アドレスが " Us rL s t A d d r + 1 " より大きければ、 エラ一通知が発行される。
記録許可が発行されると、 システムコントローラ 52は、 バックエンドシステ
ム 50に命じて "T i t 1 e 3" のユーザデータの一部を D S P 26へと転送さ せる。 DSP26は、 転送されてきたデータを SDRAM 30に一時記憶し、 一 時記憶されているデータにエンコード, 変調等の処理を施す。 こうして処理を施 されたデ一夕が、 ASP 22を介して光ディスク 12に、 開始アドレス "3C0 00 h" の位置から記録される。 記録が完了すると、 CPU28は、 レジスタ 2 8 rの " U s r L s t Ad d r " を更新し、 かつ記録完了通知を発行する。
記録完了通知が発行されると、 システムコントローラ 52は、 次の記録命令を 発行する。 以降、 上記と同様にして "T i t 1 e 3" のュ一ザデータの他の一部 がバックエンドシステム 50から光ディスクドライブ 10側に転送され、 転送さ れたデ一夕が光ディスク 12に、 先の転送データの末尾に続けて記録される。 このような記録処理を所定回繰り返すことによって、 "T i t 1 e 3"のユーザ データが全て光ディスク 12に記録される。 こうして " T i t 1 e 3" の追記が 完了した時点で "ユーザデータ最終記録アドレス" は " 3FFFFh" となり、 このとき、 図 3 (C) のように、 システムコントローラ 52によって UDF情報 12bが更新される。
その後、 操作キー 54を介してコンテンツ "T i t 1 e 4" の記録が指示され たとする。 応じてシステムコントローラ 52は、 記録命令を発行する。 記録命令 には、 開始アドレス "4000 Oh" が添付される。 以降、 上記と同様の処理に よって " T i t 1 e 4"が光ディスク 12に記録される。 "T i t 1 e 4"の記録 が完了した時点で "ユーザデ一夕最終記録ァドレス"は" 43 F F F h "となり、 このとき、 図 3 (D) のように UDF情報 12 bが更新される。
図 1, 図 2および図 4 (A) 〜図 4 (C) を参照して、 その後、 操作キー 54 を介してディスク排出が指示されたとする。応じてシステムコントローラ 52は、 排出命令を発行する。 排出命令が発行されると、 CPU28は、 図 4 (A) のよ うに PF IZFDCB情報を更新する。 すなわち、 光ディスク 12の PF IZF DCB'[f l 2 aつまり "3BFFFh"がレジスタ 28 rの " Us rL s t A d d r" つまり "43 FFFh" に書き換えられる。 次いで CPU 28は、 トレ ィを開放し、 排出完了通知を発行する。 ディスク排出が完了すると、 図 4 (B) のように、 メモリ 52 rおよびレジスタ 28 rはクリアされる。
その後、 ディスク 12が再セットされたとすると、 まず図 4 (C) のように、 PF IZFDCB情報 12 aがレジスタ 28 r内に、 UDF情報 12 bがメモリ 52 rにそれぞれ取り込まれる。次に、 "ユーザデータ最終記録ァドレス"すなわ ち "43FFF1Tが検出され、 検出されたアドレス "43FFFh" がレジス タ 28 r内の" Us r L s t Add r"すなわち "43 FFFh"と比較される。 これにより、 PF IZFDCB情報 12 aと実際の末尾位置との間に矛盾がない ことが確認される。 従って、 記録済みコンテンツ "T i t 1 e 1" 〜 "T i t 1 e 4" の再生を行うことも、 新たなコンテンツ "T i t 1 e 5" の追記を行うこ ともできる。
次に、 コンテンツを記録している途中で電源遮断が起こった場合の動作を、 図 1, 図 5, 図 6 (A) 〜図 6 (D) および図 7 (A) 〜図 7 (D) により説明す る。 まず図 1, 図 5および図 6 (A) 〜 (D) を参照して、 "T i t 1 e 1"およ び " T i t 1 e 2"が記録された光ディスク 12が光ディスクドライブ 10にセ ットされ、 "T i t 1 e 3" の追記が開始される。 "T i t 1 e 3" に関する記録 処理は全て正常に行われる。 "T i t 1 e 3" の追記が完了すると、 "T i t l e 4" の追記が開始される。 ここまでの動作は、 前述の基本動作と同様である。 そしていま、 "T i t 1 e4"に関する一部の記録処理が完了し、 このとき、光 ディスク 12上の "ユーザデータ最終記録アドレス" は "41 FFFh" であつ たとする。この時点では、 レジスタ 28 rに" 41 FFFh"が保持されている。 この直後、電源遮断が発生したとする。電源遮断によって、 図 6 (D)のように、 レジスタ 28 rの保持値とメモリ 52 rの記憶情報とは共に消失する。
次に図 1, 図 5および図 7 (A) 〜図 7 (D) を参照して、 その後、 電源が回 復されると、 図 7 (A) のように、 光ディスク 12内の PF I FDCB情報 1 2 aおよび UDF情報 12 bがレジスタ 28 rおよびメモリ 52 rにそれぞれ転 送される。 転送後、 CPU28によって "ユーザデータ最終記録アドレス"つま り "41 FFFh" が検出され、 この検出されたアドレス "41 FFFh" がレ ジス夕 28 r内の "Us r L s t Add r"つまり "3BFFFh" と比較され る。
比較の結果、 レジスタ 28 rの " Us rL s tAdd r" と実際の "ユーザデ
—夕最終記録アドレス"との間に矛盾が生じているので、そのままでは、 "T i t l e i" および "T i t 1 e 2"の再生は行えるが "T i t 1 e 3"の再生が行 えない。 また、 別のコンテンツの追記例えば "T i t 1 e 4" の再追記も行えな レ^そこで CPU 28は、 "Us r L s t Add r更新処理"を実行する。すなわ ち、 図 7 (B) のように、 レジス夕 28 r内の "Us r L s t Add r" つまり
"3BFFFh" は、 検出された "ユーザデータ最終記録アドレス"つまり "4 1 FFFh" で上書きされる。 これにより、 レジス夕 28 r内の "U s r L s t Add r" と実際の "ユーザデ一夕最終記録アドレス" とが整合し、 その結果、
"T i t 1 e 1"〜 "T i t 1 e 3"の再生を行うことも、 "T i t l e 4"の再 追記を行うこともできるようになる。
その後、 操作キ一 54を介して例えばコンテンツ "T i t 1 e 4" の記録が指 示されたとする。 応じてシステムコントローラ 52は、 記録命令を発行する。 記 録命令には、 UDF情報 12 bに含まれる "T i t l e 3"の終了アドレス続く開 始アドレス "40000 h"が添付される。 以降、 "T i t 1 e 4"に関する記録 処理は全て正常に行われ、 "T i t 1 e 4"の再追記が完了する。 この時点で "ュ —ザデータ最終記録アドレス"は " 43 FFFh" となり、 このとき、 図 7 (C) のように UDF情報 12bが更新される。
その後、 操作キ一 54を介してディスク排出が指示されたとする。 応じてシス テムコントローラ 52は、 排出命令を発行する。 排出命令が発行されると、 CP U28は、 図 7 (D) のように PF I/FDCB情報を更新する。 すなわち、 光 ディスク 12内の PF I/FDCB'|f¾l 2 aつまり "3 B FFFh"が、 レジ ス夕 28 rの" Us r L s t Add r"つまり "43 F F F h"で上書きされる。 次いで CPU28は、 トレィを開放し、 排出完了通知を発行する。
次に、 コンテンツを記録している途中でサーポ停止が起こった場合の動作を、 図 1, 図 8, 図 9 (A) 〜図 9 (D) および図 10 (A) 〜図 10 (D) により 説明する。 まず図 1, 図 8および図 9 (A) 〜図 9 (D) を参照して、 "T i t 1 e 1" および "T i t l e 2"が記録された光ディスク 12が光ディスクドライ ブ 10にセットされ、 "T i t 1 e 3" の追記が開始される。 "T i t 1 e 3" に 関する記録処理は全て正常に行われる。 "T i t 1 e 3" の追記が完了すると、
"T i t 1 e 4" の追記が開始される。 ここまでの動作は、 前述の基本動作と同 様である。
そしていま、 "T i t 1 e 4"に関する一部の記録処理が完了し、 このとき、光 ディスク 12上の "ユーザデ一夕最終記録アドレス" は "41 FFFh" であつ たとする。 この直後、 サーポが停止したとする。その結果、 "T i t l e 4"の記 録は中止され、 以降、 どのコンテンツの再生も記録も行えない状態となる。
この時点での PF Iノ FDCB情報 12 a, UDF情報 12 b, メモリ 52 r の記憶情報およびレジス夕 28 rの保持値は、 図 9 (D) のようになっている。 すなわち、 PF IZFDCB情報 12 a, UDF情報 1.2 b, メモリ 52 rの記 憶情報については、 "T i t l e 3"の追記が完了した時点のままに保たれ、 レジ ス夕 28 rの保持値はサーポ停止直前の値 "41 F F F h" となっている。
このように、 記録処理中にサーポが停止すると、 以降、 再生指示も記録指示も 受け付けられないため、 操作キー 54を介してディスク排出が指示される。 応じ てシステムコントローラ 52は、排出命令を発行する。排出命令が発行されると、 CPU 28は、 図 10 (A) のように、 まずサーポを再起動し、 次いで PF IZ FDCB情報 12 aを更新する。 すなわち、 光ディスク 12内の P F I /FD C B情報 12 aつまり "3BFFFh"が、 レジス夕 28 rの " Us rL s tAd d r" つまり "41 FFFh" で上書きされる。 次いで CPU 28は、 トレィを 開放し、 排出完了通知を発行する。 ディスク排出が完了すると、 図 10 (B) の ように、 メモリ 52 rおよびレジス夕 28 rはクリアされる。
その後、 ディスク 12が再セットされたとすると、 図 10 (C) のように、 ま ず PF 17 0。8情報12 aおよび UDF情報 12 bがレジス夕 28 rおよび メモリ 52 rにそれぞれ取り込まれる。 次に、 "ユーザデータ最終記録アドレス" すなわち "41 FFFh"が検出され、 検出されたアドレス "41 FFFh" が レジス夕 28 r内の " Us r L s t Ad d r" つまり "41 FFFh" と比較さ れる。 これにより、 PF IZFDCB情報 12 aと実際の末尾位置との間に矛盾 がないことが確認される。 従って、 記録済みコンテンツ "T i t 1 e 1"〜 "T i t 1 e 4 " の再生を行うことも、 新たなコンテンツ "T i t 1 e 5" の追記を 行うこともできる。
このように、 CPU28は、 光ディスク 12がセットされたとき、 もしくは光 ディスク 12がセットされた状態で電源がオンされたとき、 光ディスク 12から PF I/FDCB'If¾l 2 aを読み出し、 読み出された PF 1/ 0〇8情報1 2 aを " Us r L s t Add r" の初期値としてレジスタ 28 rに保持する。 次 に、ディスク検索を実行して実際の "ユーザデータ最終記録ァドレス"を検出し、 検出結果を "Us rLs t Add r" と比較する。 そして比較の結果、 もし両者 がー致しなければ、 "Us rL s tAdd r "を"ユーザデータ最終記録ァドレス" に更新する。 これにより、 あるコンテンツを記録している途中で万一電源遮断や サ一ポ停止が発生しても、 PF I/FDCB情報 12 aと実際の末尾位置との間 の矛盾が解消され、 その結果、 既に記録が完了しているコンテンツの再生, 記録 中止となったコンテンツの再追記, 新たなコンテンツの追記等を簡単に行うこと ができる。
CPU28は、 具体的には、 図 11〜図 16に示されるフロ一図を処理する。 なお、 これらのフロー図に対応するプログラムは、 フラッシュメモリ 32に格納 されている。 まず図 11を参照して、 ステップ S 1で電源オンを検知する。 電源 オンが検知されると、 ステップ S 3に移って、 光ディスク 12がセットされてい るか否かを判定する。 判定結果が否定的であれば待機し、 肯定的であればステツ プ S 5に移る。 なお、 待機中には、 システムコントローラ 52からの命令に応じ てトレイの開閉を行う。
ステップ S 5では、 DSP 26にサーポ起動を命令する。応じて DSP 26は、 サーポ処理を起動し、 これによりドライバ 24を介してモー夕 14〜18の回転 を制御する。 ステップ S 7では、 光ディスク 12から PF IZFDCB情報 12 aを読み取る。 ステップ S 9では、 レジスタ 28 rの "Us rL s t Add r" にこの読み取り値をセットする。ステップ S 11では、 "Us r L s t Add r + 1" の対応セクタのデコードを DSP 26に命じる。 応じて DSP26は、 AS P 22を介して光ディスク 12の該当セクタからデータを読み出し、 読み出され につ—夕をァ J一ト |"る。
ステップ S 13では、 DSP26のデコード結果を受け、 "Us rL s t Add r +.1" の対応セクタに記録されているのがユーザデータであるか否かを判別す
る。 判別結果が肯定的であれば、 ステップ S 15で " Us r L s t Add r" を 更新し、 その後ステップ S 17のコマンド待ち状態に移行する。 なお、 この Us r L s t Add r更新処理については後述する。
ステップ S 13の判別結果が肯定的つまり " U s r L s t A d d r + 1" の対 応セクタに記録されているのがリードアウトデータ等の管理データであれば、 直 ちにステップ S 17のコマンド待ち状態に入る。 コント口一ラ 52からコマンド が発行されると、 ステップ S 17で " YES" と判定され、 ステップ S 19〜S 23に移って、 発行されたコマンドの種類を判別する。 発行されたコマンドが記 録命令であれば、 ステップ S 19で "YES" と判定され、 ステップ S 25に移 る。 再生命令であれば、 ステップ S 21で "YES" と判定され、 ステップ S 4 7に移る。 排出命令であれば、 ステップ S 23で " YES" と判定され、 ステツ プ S 61に移る。
図 12を参照して、 ステップ S 25では、 記録不可フラグがセッ卜されている か否かを判別し、 セットされていればステップ S 43でシステムコントローラ 5 2にエラー発生を通知する。 記録不可フラグがセットされていなければステップ S 27に移り、 記録命令に添付されている開始ァドレスが "U s r L s t Ad d r +1" よりも大きいか否かを判定する。 この判定結果が肯定的であれば、 ステ ップ S 43でエラ一通知を発行し、 否定的であればステップ S 29に移って、 開 始アドレスが "Us rLs tAdd r + 1" と等しいか否かをさらに判定する。 ステップ S 29の判定結果が肯定的であれば、 ステップ S 31でアドレス更新 フラグをセットし、 その後ステップ S 33に移って、 DSP26に記録許可を通 知する。 ステップ S 29の判定結果が否定的であれば、 直ちにステップ S 33に 移つて記録許可通知を発行する。
こうして記録許可通知を発行した後、 CPU28は、 DSP26から記録完了 通知が発行されるまでの間、 サーポ停止または電源遮断の発生の有無を監視して いる。 もしサーポ停止が発生すると、 ステップ S 35で " YES" と判定され、 ステップ S 41に移って記録不可フラグをセッ卜する。 その後、 ステップ S 43 でエラー通知を発行し、 ステップ S 17に戻る。 電源遮断が発生すると、 ステツ プ S 37で " YES" と判定され、 ステップ S 1に戻る。
サーポ停止も電源遮断も発生することなく、 DSP 26から記録完了通知が発 行されると、 ステップ S 39で " YES" と判定され、 ステップ S45に移って システムコントローラ 52に記録完了を通知する。 その後、 ステップ S 17に戻 る。
図 13を参照して、 ステップ S 47では、 再生命令に添付されている開始アド レスが "U s r L s t A d d r " よりも大きい否かを判定する。 この判定結果が 肯定的であれば、 ステップ S 49でシステムコントローラ 52にエラー発生を通 知し、 その後ステップ S 17に戻る。 一方、 判定結果が否定的つまり開始アドレ スが "Us r L s t Add r" に等しいかそれよりも小さければ、 ステップ S 5 1でシステムコントローラ 52に再生許可を通知する。
こうして再生許可通知を発行した後、 CPU28は、 DSP26から再生完了 通知が発行されるまでの間、 エラ一発生の有無を監視している。 もしアクセスェ ラーやデコードエラーなどが発生すると、 ステップ S 53で " YES" と判定さ れ、 ステップ S 49に移ってエラー通知を発行する。 その後、 ステップ S 17に 戻る。
エラーが発生することなく DSP 26から再生完了通知が発行されると、 ステ ップ S 55で " YES" と判定され、 ステップ S 57に移って、 DSP26によ り再生されたユーザデー夕をバックエンドシステム 50側に転送する。 転送が完 了すると、 ステップ S 59でシステムコントローラ 52に再生完了を通知する。 その後、 ステップ S 17に戻る。
図 14を参照して、 ステップ S 61では、 アドレス更新フラグがセットされて いるか否かを判別し、 セットされていなければ、 ステップ S 69に進む。 ァドレ ス更新フラグがセッ卜されていれば、 ステップ S 63でサ一ポ処理が停止状態に あるか否かをさらに判別し、 サ一ポ処理が停止していれば、 ステップ S 65で D SP 26にサーポ処理の再起動を命令した後、 ステップ S 67に移る。 サーポ処 理が実行されていれば、 直ちにステップ S 67に移る。
ステップ S 67では、 光ディスク 12内の PF IZFDCB情報 12 aを更新 つまりレジスタ 28 r内の " Us r L s t Add r" に書き換え、 その後、 ステ ップ S 69に進む。 ステップ S 69では、 DS P 26にサーポ停止を命令する。
サーポ停止後、 ステップ S 71でトレイを開放し、 ステップ S 73でシステム コントローラ 52に排出完了を通知する。 そして、 ステップ S 3に戻る。
図 15を 照して、 ステップ S 75で CPU28は、 システムコントローラ 5 2によって発行されたコマンドに該当する処理を実行するよう D SP26に命令 する。 処理命令を発行した後、 CPU 28は、 DSP 26から処理完了通知が発 行されるまでの間、エラー発生の有無を監視している。もしエラーが発生すると、 ステップ S 77で "YES" と判定され、 ステップ S 81に移って、 システムコ ントロ一ラ 52にエラー発生を通知する。 その後、 ステップ S 17に戻る。
エラーが発生することなく DSP 26から処理完了通知が発行されると、 ステ ップ S 79で " YES" と判定され、 ステップ S 83に移ってシステムコント口 ーラ 52に処理完了を通知する。 その後、 ステップ S 17に戻る。
上記ステツプ S 15の Us rLs tAdd r更新処理は、 図 16のサブル一チ ンに従って実行される。 なお、 このサブルーチンは、 光ディスク 12がセットさ れたとき、もしくは光ディスク 12がセットされた状態で電源がオンされたとき、 図 17 (A) に示されるように、 光ディスク 12上の実際の "ユーザデータ最終 記録ァドレス"がレジス夕 28 rの保持値つまり " U s r L s t A d d r " の初 期値と矛盾している場合に実行される。
図 16を参照して、 CPU 28は、まずステップ S 91でディスク検索を行い、 最終記録アドレスを特定する。 ここで "最終記録アドレス" は、 図 17 (B) の ように、 管理データも含めた全ての記録データの末尾位置、 つまり記録済み領域 と未記録領域との境界位置に対応する。 記録済み領域と未記録領域との境界は、 反射率の違いなどに基づいて検出することができる。
ステップ S 93では、 変数 " L s t Add r" に "最終記録アドレス" をセッ 卜する。 ステップ S 95では、 変数 "L s tAdd r" の対応セクタをデコード するよう DSP 26に命令する。 応じて DSP 26は、 ASP 22を介して光デ イスク 12の該当セクタからデータを読み出し、 読み出されたデータをデコード する。
ステップ S 97では、 DSP26のデコード結果を受け、 "L s t Add r"の 対応セクタに記録されているのが管理デー夕であるか否かを判別する。 判別結果
が肯定的であれば、 ステップ S 99で " L s t A d d r " をデクリメントし、 そ の後ステップ S 95に戻る。 ここでデクリメントは、 図 17 (C) に示されるよ うに、 16セクタすなわち 1 E C C (Error Correction Code) ブロック単位で行 われる。
ステップ S 95〜S 99の処理が所定回繰り返され、 ステップ S 97の判定結 果が否定的となる、 つまり、 図 17 (D) に示されるように、 "Ls tAddr" が "ユーザデータ最終記録アドレス" に到達すると、 ステップ S 101に移り、 "Us r L s t Add r" に " L s t Add r" をセットする。 そして、 ステツ プ S 103でアドレス更新フラグをセットし、 その後、 上位層のルーチンに復帰 する。
以上から明らかなように、 この実施例では、 光ディスク 12に PF IZFDC B情報 12 aが格納されている。 PF IZFDCB情報 12 aには、 ユーザデー タ記録済み領域の終了位置を示す "ユーザデータ最終記録アドレス" が含まれて いる。 光ディスクドライブ 10に光ディスク 12が装着される、 または光デイス クドライブ 10に光ディスク 12が装着された状態で電源がオンされると、 まず サ一ポが起動される。 これにより光ディスク 12へのアクセスが可能になると、 光ディスク 12に格納されている PF I/FDCB1M12 aつまり "ユーザデ 一夕最終記録アドレス" が CPU28内のレジスタ 28 rに取り込まれる。
PF I/FDCBM12 aがレジスタ 28 r内に取り込まれると、 CPU 2 8によって光ディスク 12へのアクセスが行われ、 レジスタ 28 rのアドレス値 "Us rLs tAddr" に単位アドレス値 "1" を加算した結果すなわちアド レス値 "U s r L s t Ad d r + 1"で示されるセクタにユーザデータが記録さ れているか否かが判別される。
この判別結果が肯定的であるとき、 CPU28によって光ディスク 12へのァ クセスが再度行われ、 ユーザデータ記録済み領域の終了位置が検出される。 そし てレジスタ 28 rのアドレス値 "Us rLs t Add r"は、 検出された終了位 置を示すアドレス値つまり正しい "ユーザデータ最終記録アドレス" に更新され る。
このように、 光ディスク 12がセットされた状態で電源がオンされたとき、 光
ディスク 1 2に格納されている "ユーザデータ最終記録アドレス" の正誤が判定 され、 もし誤っていれば光ディスク 1 2から正しい "ユーザデータ最終記録アド レス" が検出されるので、 たとえ記録動作が異常終了しても、 ただ電源オン操作 をしさえすれば、 光ディスク 1 2に適切にアクセスして再生や記録を行うことが できる。
また、 この実施例では、 レジス夕 2 8 r内のァドレス値 "U s r L s t A d d r " は、 光ディスク 1 2の未記録領域へのデータ書き込みに従って更新され、 こ のとき "アドレス更新フラグ" がセットされる。 排出命令が発行されると、 まず
"アドレス更新フラグ" がセットされているか否かの判別が行われ、 セットされ ていれば、 さらにサーポが停止しているか否かの判別が行われる。 もしサーポが 停止していれば再起動処理が行われ、 これによつて光ディスク 1 2へのアクセス が可能となった後で、 光ディスク 1 2に格納されている P F I ZF D C B情報 1 2 aつまり "ユーザデータ最終記録ァドレス" は、 レジス夕 2 8 rのアドレス値
"U s r L s t A d d r " に更新される。 従って、 サーポ停止に伴い記録動作が 異常停止した場合、 ただ排出操作および再装着操作をしさえすれば、 光ディスク 1 2に適切にアクセスして再生および記録を行うことができる。
なお、 以上では、 一実施例として DVD + RW用の光ディスクドライブについ て説明したが、 この発明は、 様々な書き換え型光ディスク用の光ディスクドライ ブに適用することが-できる。
この発明が詳細に説明され図示されたが、 それは単なる図解および一例として 用いたものであり、 限定であると解されるべきではないことは明らかであり、 こ の発明の精神および範囲は添付されたクレームの文言によってのみ限定される。