(57)【特許請求の範囲】
【請求項１】
コンテンツ所有者から提供される再生専用光ディスクであって、
コンテンツ所有者が選択したアルゴリズムで暗号化されたコンテンツデータを、上記コンテンツ所有者により選択された互換性のないユーザデータフォーマットに基づいてフォーマット化し、暗号化されフォーマット化されたコンテンツデータを記録する第１エリア（２７）と、
暗号化されたコンテンツを解読するアルゴリズムをデフォルトフォーマットでフォーマット化し、フォーマット化されたアルゴリズムを記録する第２エリア（２６）と、
前記ユーザデータフォーマットのインプリメンテーションを示すデータを、前記デフォルトフォーマットでフォーマット化し、フォーマット化されたインプリメンテーションを示すデータを記録する第３エリア（２１）と、
を含むことを特徴とする再生専用光ディスク。
【請求項２】
前記ユーザデータフォーマットは、誤り訂正符号のインプリメンテーションを含むことを特徴とする請求項１に記載の再生専用光ディスク。
【請求項３】
前記第３エリアは、前記再生専用光ディスクの最内周側の予め決められたエリアであることを特徴とする請求項１に記載の再生専用光ディスク。
【請求項４】
再生専用光ディスクからコンテンツを読み取る光ディスク再生装置であって、
前記再生専用光ディスクは、コンテンツ所有者から提供される再生専用光ディスクであって、コンテンツ所有者が選択したアルゴリズムで暗号化されたコンテンツデータを、上記コンテンツ所有者により選択された互換性のないユーザデータフォーマットに基づいてフォーマット化し、暗号化されフォーマット化されたコンテンツデータを記録する第１エリア（２７）と、暗号化されたコンテンツを解読するアルゴリズムをデフォルトフォーマットでフォーマット化し、フォーマット化されたアルゴリズムを記録する第２エリア（２６）と、前記ユーザデータフォーマットのインプリメンテーションを示すデータを、前記デフォルトフォーマットでフォーマット化し、フォーマット化されたインプリメンテーションを示すデータを記録する第３エリア（２１）とを含み、
前記再生装置は、
前記第３エリアからフォーマット化されたインプリメンテーションを示すデータを読み取り、デフォルトフォーマットに基づき、ユーザデータフォーマットのインプリメンテーションを示すデータを生成する読取部と、
前記第２エリアからフォーマット化されたアルゴリズムを読み取り、デフォルトフォーマットに基づき、前記暗号化されたコンテンツを解読するアルゴリズムを生成する読取部と、
前記第１エリアから暗号化されフォーマット化されたコンテンツデータを読み取ると共に、前記ユーザデータフォーマットのインプリメンテーションを示すデータに基づきユーザデータフォーマットを生成し、前記ユーザーデータフォーマットに基づき、暗号化されたコンテンツデータを生成する読取部と、
前記暗号化されたコンテンツデータを、前記アルゴリズムに基づき、解読する解読部
を有することを特徴とする光ディスク再生装置。
【請求項５】
コンテンツ所有者から提供される再生専用光ディスクを生成する生成方法であって、
コンテンツ所有者が選択したアルゴリズムでコンテンツを暗号化し、暗号化されたコンテンツデータを生成するステップと、
ディスクのコンテンツゾーンに、暗号化されたコンテンツデータを、上記コンテンツ所有者により選択された互換性のないユーザデータフォーマットに基づいてフォーマット化し、暗号化されフォーマット化されたコンテンツデータを前記光ディスクの第１エリア（２７）に記録するステップと、
暗号化されたコンテンツを解読するアルゴリズムをデフォルトフォーマットでフォーマット化し、フォーマット化されたアルゴリズムを前記光ディスクの第２エリア（２６）に記録するステップと、
前記ユーザデータフォーマットのインプリメンテーションを示すデータを、前記デフォルトフォーマットでフォーマット化し、フォーマット化されたインプリメンテーションを示すデータを前記光ディスクの第３エリア（２１）に記録するステップと、
を有することを特徴とする生成方法。
【請求項６】
再生専用光ディスクからコンテンツを読み取る光ディスク再生方法であって、
前記再生専用光ディスクは、コンテンツ所有者から提供される再生専用光ディスクであって、コンテンツ所有者が選択したアルゴリズムで暗号化されたコンテンツデータを、上記コンテンツ所有者により選択された互換性のないユーザデータフォーマットに基づいてフォーマット化し、暗号化されフォーマット化されたコンテンツデータを記録する第１エリア（２７）と、暗号化されたコンテンツを解読するアルゴリズムをデフォルトフォーマットでフォーマット化し、フォーマット化されたアルゴリズムを記録する第２エリア（２６）と、前記ユーザデータフォーマットのインプリメンテーションを示すデータを、前記デフォルトフォーマットでフォーマット化し、フォーマット化されたインプリメンテーションを示すデータを記録する第３エリア（２１）とを含み、
前記再生方法は、
前記第３エリアからフォーマット化されたインプリメンテーションを示すデータを読み取り、デフォルトフォーマットに基づき、ユーザデータフォーマットのインプリメンテーションを示すデータを生成するステップと、
前記第２エリアからフォーマット化されたアルゴリズムを読み取り、デフォルトフォーマットに基づき、前記暗号化されたコンテンツを解読するアルゴリズムを生成するステップと、
前記ユーザデータフォーマットのインプリメンテーションを示すデータに基づきユーザデータフォーマットを生成するステップと、
前記第１エリアから暗号化されフォーマット化されたコンテンツデータを読み取り、前記ユーザーデータフォーマットに基づき、暗号化されたコンテンツデータを生成するステップと、
前記暗号化されたコンテンツデータを、前記アルゴリズムに基づき、解読するステップ
を有することを特徴とする光ディスク再生方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、デジタル光ディスクに関し、特に、暗号化されたデジタルデータを有する複製制限機能付き再生（読出し）専用デジタル光ディスクと、適応可能再生装置を含み、不正コピーに対して防止保護されたコンテンツの配信におけるその応用に関する。
【０００２】
【従来の技術】
本発明は、書込み可能な記憶媒体が、同一装置で再生される再生専用媒体とコスト的に匹敵するようになることが必至であるので、デジタルオーディオビデオコンテンツのプロバイダが直面するジレンマに関するものである。同時に、家庭用コンピュータは、いたる所に存在するまでにはいたっていないものの、広く普及しつつあり、書込み可能な媒体に情報を転送すことができる周辺ドライブ装置が急速に手頃な価格になってきている。当然のことながら、これらのドライブは、再生専用の媒体からデジタルコンテンツを読み取ることもできるので、名目上は正直なユーザーであっても不正コピーを作る誘惑にかられる可能性がある。ＣＤ−Ｒ（追記型）ディスクが非常に安価になってきたので、このシナリオが、今、デジタルオーディオ市場に影響を及ぼしている。
【０００３】
ビデオＤＶＤコンテンツは、コンテンツ・スクランブル・システム（ＣＳＳ）によって暗号化されている。ＣＳＳによれば、非スクランブル処理された（即ち、解読された）デジタルビデオ出力は、消費市場の再生装置では再生できない。また、非スクランブル処理（解読）されたデジタルビデオ出力は、消費市場のＤＶＤプレーヤーでは再生できず、ビデオＤＶＤディスクを再生する現行のＤＶＤ−ＲＯＭドライブは、スクランブル化（即ち、暗号化）されたコンテンツを個々の許諾ソフトウェアまたはハードウェアデコーダに出力する。しかし、ＣＳＳ単独では、互換フォーマットを備えた書込可能ディスク上の不正コピー防止保護されたコンテンツを、消費者の再生装置によりセクター単位で再生することを阻止することが出来ない。ＣＳＳシステムの詳細は公共の知識になっているとは思われないが、インテル社のミハエル・モラドザーデが「ＣＳＳによるＤＶＤコピープロテクション方法に関する実施許諾供与要件（Ｌｉｃｅｎｓｉｎｇ  Ｒｅｑｕｉｒｅｍｅｎｔｓ  ｆｏｒ  ｔｈｅ  ＣＳＳ  ＤＶＤ  Ｃｏｐｙ  Ｐｒｏｔｅｃｔｉｏｎ  Ｍｅｔｈｏｄ）」Ｉｎｔｅｌ，  １９９７年刊で、一般的な内容を説明している。
【０００４】
セクター単位の不正コピーの再生を阻止するために、４Ｃエンティティとして知られる企業グループが、９５０３７カリフォルニア州モーガンヒル市コクランサークル２２５Ｂの４シー・ラインセンス・エンティティ・エル・エル・シー（４Ｃ  Ｌｉｃｅｎｓｅ  Ｅｎｔｉｔｙ  ＬＬＣ）から入手できる「記録可能な媒体のコンテンツ保護（Ｃｏｎｔｅｎｔ  Ｐｒｏｔｅｃｔｉｏｎ  ｆｏｒ  Ｒｅｃｏｒｄａｂｌｅ  Ｍｅｄｉａ）」（ＣＰＲＭ）を提案した。ＣＰＲＭは、コンテンツを暗号化および解読するときに「保護媒体識別子」を使用する。これにより、あるディスクから別のディスクへ直接コピーされた保護コンテンツは、識別が一致しないので再生することができないことが確実になる。しかしながら、ＣＰＲＭは暗号化されたコンテンツがセクター単位で書込可能ディスクにコピーされるのを阻止するものではないため、デジタルディスクのコピー保護を不法に無効化する第一歩となりうる。
【０００５】
セクター単位のＣＰＲＭディスクのコピーは、オリジナルディスクの媒体識別子が欠けているだけで、敵対者は再生中に不正コピーから読み取って提供しようとする可能性がある。これに必要なのは、パーソナルコンピュータ上のソフトウェア・インプリメンテーション（処理系または実施・実現方法）におけるＣＰＲＭの解読アルゴリズムの限定的な逆処理技術だけである。
【０００６】
コピープロテクションは、概して将来の再生装置の逆向き互換性を危険にさらす。しかしながら、コピープロテクションを断念したとしても、光ディスク技術の急速な発展により、将来の再生装置では旧式のディスクを読み取れなくなる恐れがある。ここで、以降の説明では、用語「コピープロテクション」とは不正コピーを防止しコンテンツを保護する機能または技術を意味する。
【０００７】
前述の教訓にもかかわらず、暗号化されたデジタルデータを有する複製制限機能付き再生専用デジタル光ディスクの必要性は依然として大きい。
【０００８】
【発明が解決しようとする課題】
そこで、本発明の主たる目的は、読み取ることは可能であるが、それにもかかわらず、書込可能ディスクへのセクター単位のコピーを実行不可能にする必要がある場合には、変更することができる可変的なディスクフォーマットを提供することである。
【０００９】
本発明の別の目的は、既存の再生装置の再生性を維持しながら、更新されたり完全変更される可能性さえもあるデジタル著作物を暗号化する可変ソフトウェアアルゴリズムを提供することである。
【００１０】
本発明のさらに別の目的は、将来の再生装置またはドライブに、ディスク自体に書き込まれている情報を利用して旧式のディスクに適応する方法を与えることである。
【００１１】
【課題を解決するための手段】
本発明は、暗号デジタルデータを有する複製制限機能付き再生専用デジタル光ディスクに関し、また、情報のフォーマットが予測不能であるためにコピーが困難である再生専用ディスク上にデジタルコンテンツを作成することに関する。コンテンツは、配信ディスクの原盤作製時に選択されるアルゴリズムでさらに暗号化される。これらの特長の基本は、ディスク上にデフォルトフォーマットで記録されている構成情報からユーザデータディスクフォーマットに適応する再生装置のアーキテクチャである。この構成情報は、完全な後方互換性をハードウェアに保持することが難しい場合に、将来の世代の再生装置がこれらのディスクを再生する方法を提供するものでもある。
【００１２】
本発明の好適な実施態様において、本発明の装置は、インプリメンテーションを公に利用できないユーザデータ暗号化アルゴリズムを選択することを含む。著作物の暗号化が完了した後、公知の書込可能ディスクフォーマットと互換性のないユーザデータフォーマットが選択される。暗号化されたデジタル著作物は、書込可能ディスクへのコンテンツのセクター単位の転写を防止するために、ユーザデータフォーマットに符号化される。時間の経過に伴って、そのような書込可能ディスクが入手可能となった場合には、新しい所有権または著作権のために別のフォーマットを選択することもできる。特定のディスクで使用されるユーザデータフォーマットの記述は、デフォルトフォーマットでディスク自体に書き込まれる。同様に、解読処理用の目的コードが、ユーザデータフォーマットでディスク上に置かれる。時間の経過に伴って、解読が行われて不正な再生ができるようになった場合は、必要に応じて新しいアルゴリズムを選択して新しい所有権を保護することもできる。
【００１３】
別の好適実施態様において、本発明の装置は、再生装置が、再生装置設計時には予期しえないフォーマットの暗号デジタルデータを有する複製制限機能付き再生専用デジタル光ディスクからデータを読み取れるようにし、ディスク自体から見出されなければならないアーキテクチャを含んでいる。再生装置は、再生専用ディスクからそのようなフォーマットのデータを受け取るように設計されているので、チャネル信号に的を絞ってチャネル信号を追跡および獲得するといった物理的な再生装置の機能を従来の解決法で実施することもできる。ユーザデータは、チャネル信号から２段階で取り出される。第１の段階では、チャネル信号からチャネルクロックとチャネルデータを取り出さなくてはならない。この機能は、ユーザデータフォーマットに関して提供される情報により初期化されるプログラマブルチャネルビットコンバータによって実施される。
【００１４】
ユーザデータ取り出しの第２の段階において、このプロセスは同期調整タスクを含んでいる。これは、ＳＹＮＣコードと呼ばれる独特のチャネルビットシーケンスを待つことによって実施される。複数のＳＹＮＣコードを定義することもでき、その主要件は、データバイトを表す一連の連結コードワードのどこにもＳＹＮＣコードが存在しないことである。そのようなフラグの最も単純な使用法は、予め決められた長さの一連のコードワード中の第１のコードワードのチャネル開始ビットを識別することである。ユーザデータフォーマットによって許される種々のデータ構造を表すコードワードシーケンスにアクセスするために、種々の同期調整プロセスが実施される。コードワードからデータバイトへの変換は、従来のルックアップデーブルを使用することによって実施してもよい。
【００１５】
本発明は、シングルステップ操作が可能なプロセッサ（ＳＳＰ）アーキテクチャの助けを得てユーザデータフォーマットを解釈する。ＳＳＰが実時間タスクを実施しているとき、命令実行がチャネルビットクロックに同期制御される。この同期調整により、命令のアセンブリ言語表現中のチャネルビットクロックサイクルを暗黙のうちにカウントできる。ＳＳＰは、チャネルビットクロックサイクル時間未満で使用される命令を完了させることが出来なくてはならない。ＳＳＰは、実際には、チャネルビットクロックを使用してシングルステップ命令実行を引き起こすことによって、この同期調整を実施する。シングルステップモードは、チャネルクロックによってクロック制御され、命令の取出しを信号で伝えるマイクロプロセッサからの信号によってクリアされるフリップフロップによって可能となる。シングルステップモードは、ゼロに初期化するマイクロプロセッサ出力ビットの１つを使用することによって無視される。マイクロプロセッサがこのビットを設定すると、次の命令取出しでシングルステップモードとなる。
【００１６】
【発明の実施の形態】
本発明の実施の形態について、図面を参照することによって以下に説明し、本発明の種々の利点について明らかにしていく。
【００１７】
保護コンテンツを有する再生専用ディスクのセクター単位のコピー動作を可能にするためには、再生専用ディスクと書込可能ディスクの両方のフォーマットに互換性がなくてはならない。消費者市場のすべての書込可能ディスクが、保護コンテンツを有する再生専用ディスクのフォーマットと互換性のあるフォーマットを持っていなければ、セクター単位のコピーは不可能となる。この障害は将来的に無くなるかも知れないが、そのときまでに再生専用ディスクが別の新しいフォーマットを採用することにより、その時点で利用可能な書込可能ディスクとの非互換性を維持することができる。本発明による再生専用ディスクが採用する新しいフォーマットの認識は、従来の再生装置にとって未知のことであり、本発明は、新しい再生装置に古いディスクフォーマットとの読取互換性を保持するという設計概念を提供するものでもある。本発明により作製されるディスクは、ディスク上の必要ユーザデータフォーマット情報を、適応可能再生装置がいつでもアクセスできるデフォルトフォーマットで提供する。本発明により作製される再生装置は、本発明により作製されたディスク上で記述されるユーザデータフォーマットに対応できる。
【００１８】
前述の内容により、図１に、デジタルアート著作物Ｗ  １０ａを再生専用媒体に最大プロテクションで転写する本発明の方法１０の主要段階を示す。第１に、コンテンツプロバイダが、インプリメンテーションを公に利用できないユーザデータ暗号化アルゴリズムＡｕ  １１ａを選択する。暗号化完了後、コンテンツプロバイダは、消費者市場の書込可能装置によるセクター単位のコピーを防止するために、周知の書込可能ディスクのフォーマットＦｗ  １５ａと互換性を持たないユーザデータフォーマットＦｕ  １４ａを選択することを欲するであろう。次に、誤り訂正符号（ＥＣＣ）のインプリメンテーションを含むユーザデータフォーマットＦｕ  １４ａの記述（すなわち、インプリメンテーション）Ｉ（Ｆｕ）が、デフォルトフォーマットＦｄ  １７ａで符号化される。ユーザデータ暗号化アルゴリズムＡｕ  １１ａの記述（すなわちインプリメンテーション）Ｉ（Ａｕ）はユーザデータの一部と見なすことができ、必要に応じて供給できる。再生専用ディスクに複製されるマスターディスクに、フォーマット記述データとユーザデータの両方が書き込まれる。これにより、一方は暗号化レベル、他方はフォーマットレベルの、２レベルのユーザデータ保護が保証される。
【００１９】
図２には、本発明によるディスク構造の配置図が示されており、ＥＣＣ復号のインプリメンテーション２５を含むユーザデータフォーマットＩ（Ｆｕ）２２の記述が、ディスクの内周部２１に記録されており、アルゴリズムＡｕ  １１ａによって暗号化されたユーザデータが、ディスクの外周部２７にＡｕ（Ｗ）２３としてユーザデータフォーマットで記録されている。ユーザデータ暗号化アルゴリズムのインプリメンテーションＩ（Ａｕ）２４は、ドライブコントローラだけが直接アクセスできファイルシステムアプリケーションにとって「見えない」領域２６に、ユーザデータフォーマットＦｕ  １４で記録されている。ディスクの読み取りは通常は内周部２１から開始するので、ドライブ（図示せず）は、最初にデフォルト構成でユーザデータフォーマット記述を読み取とろうする。
【００２０】
本発明による再生装置は、デフォルトフォーマットで記録されたユーザデータフォーマットの記述に基づき、ユーザデータにアクセスするようにそれ自体が適応できる。そのような適応は、２部分から構成される。第１の部分は、焦点調節、読取波長、追跡法等といったハードウェアの再構成である。複製されたコンテンツの場合、この種のハードウェアの再構成は最小限である。第２の部分は、チャネル信号ストリームをデータバイトストリームに変換し、生のデータストリームを必要に応じてアプリケーションデータストリームに復号する実時間処理を求める命令である。要求された変換および復号を実施するために柔軟な適応を保証するために、本発明の再生装置は、所望のデータ速度が維持される限り、純粋なソフトウェアインプリメンテーションを使用することもできる。
【００２１】
ソフトウェア・インプリメンテーションに加え、ハードウェアの効率とソフトウェアの適応性を組み合わせたハイブリッド（混成）設計が可能であり、非常に効率的になりうる。本発明のこの実施形態では、高効率の混成実行方式は、シングルチップマイクロプロセッサをベースにしている。
【００２２】
図３のブロック図に、本発明に基づいた実時間処理機能を備えた再生装置３０のブロック構成を示す。個々の部品の機能は、一般的な読取プロセスに従うことによって説明できる。本発明のディスクが再生装置３０のドライブ３２に挿入されると、コントローラ３１の命令を受けて、ドライブは、ディスク上の領域２１のユーザデータフォーマットの記述をデフォルトフォーマットＦｄ  １７で読み取ろうとし、対応するチャネル信号ストリーム３２Ａを発生する。モデルスイッチ３７は、チャネル信号ストリーム３２Ａをデフォルトシーケンサ３４に転送し、デフォルトシーケンサ３４は、デフォルトシーケンサコマンド３１Ａの命令を受けて、チャネル信号ストリーム３２Ａをデータバイトストリームに変換し、それをデフォルトＥＣＣデコーダ３９Ａに送信する。デフォルトＥＣＣデコーダ３９Ａは、復号されたデータをさらに解釈するためにコントローラ３１に戻す。
【００２３】
コントローラ３１は、必要再構成のためのドライブコマンド３１Ｂのグループ、ならびに、プログラマブルシーケンサコマンド３１Ｅとチャネル構成３１Ｆとプログラマブルシーケンサ命令３１ＧとプログラマブルＥＣＣデコーダ命令３１Ｈとを含む実時間処理命令のグループ、という２種類の命令データグループを記述データから生成する。コントローラ３１は、再構成コマンドをドライブ３２に送って必要再構成を要求し、プログラマブルシーケンサコマンド３１Ｅ、チャネル構成３１Ｆ、およびプログラマブルシーケンサ命令３１Ｇをプログラマブルシーケンサ３６に送って所要の実時間変換を要求し、ＥＣＣデコーダ命令３１ＨをプログラマブルＥＣＣデコーダ３９Ｂに送って実時間ＥＣＣ復号化を実施し、スイッチコマンド３１Ｉをモードスイッチ３７に送ってチャネル信号ストリームをプログラマブルシーケンサに誘導することによって、適応化プロセスを開始する。
【００２４】
ユーザデータフォーマットがデフォルトフォーマットと同じ場合、再生装置３０はユーザデータをデフォルト構成で読み取る。ユーザデータフォーマットに適応しているモードの場合、コントローラ３１は、プログラマブルシーケンサ３６からユーザデータストリームを獲得し、必要に応じて解釈する。コントローラ３１は、ユーザデータストリームから一般的な２種類のデータ、即ち、ユーザデータ３１Ｃと暗号化アルゴリズムのインプリメンテーションＩ（Ａｕ）３１Ｄ、を生成し、必要があれば、それらを暗号解読プロセッサ３８に送り、最終的に、例えばマルチメディアプロセッサにすることもできるアプリケーションプロセッサ３５に送る。
【００２５】
図３に記載の個々のブロックの機能を実施するのに種々のインプリメンテーションスキーム（実行方式）が可能である。図４に、参照符号４０で示されるプログラマブルシーケンサ３６の内部の変換プロセスブロック図を示す。
【００２６】
プログラマブルシーケンサ３６のタスクは、図４に示されているように、チャネル信号ストリーム３２Ａを対応するデータバイトストリームに変換することである。チャネル信号ストリーム３２Ａ内のオーバヘッドデータとユーザデータの両方が符号化される。オーバヘッド部には、チャネルビットクロック信号４２Ａ、ストリームポジション信号、および他の識別信号が含まれている。変換は２段階から成り、第１段階で、プログラマブルチャネルビットコンバータ４２が、チャネル信号ストリーム３２Ａからチャネルビットクロック信号４２Ａと関連チャネルビットストリーム４２Ｂを復元し、第２段階で、シングルステップ操作可能プロセッサ４１が、プログラマブルシーケンサ命令によって記述された変換アルゴリズムに基づいてチャネルビットストリーム４２Ｂをデータバイトストリーム３６Ａに変換する。
【００２７】
実時間プロセスの開始前に、コントローラ３１は、少なくとも１つのプログラマブルシーケンサコマンド３１Ｅを発することによってシングルステップ操作可能プロセッサ４１をその実行可能状態に設定し、チャネル構成データを送信することによってプログラマブルチャネルビットコンバータ４２のモードを指定し、プログラマブルシーケンサ命令を実時間命令メモリ４３に格納する。ユーザデータの読取が開始すると、プログラマブルチャネルビットコンバータ４２がチャネル信号ストリーム３２Ａを連続的に受信する。プログラマブルチャネルビットコンバータ４２は、チャネル構成を使用して、組み込まれたチャネルビットクロック信号４２Ａを取り出し、チャネル信号ストリームをチャネルビットストリーム４２Ｂに変換する。チャネルビットクロック信号４２Ａとチャネルビットストリーム４２Ｂは、両方とも、シングルステップ操作可能プロセッサ４１に送られる。
【００２８】
シングルステップ操作可能プロセッサ４１は、コントローラ３１からの少なくとも１つのプログラマブルシーケンサコマンド３１Ｅの命令下で開始命令を受けて、チャネルビットストリームを同期して実時間変換を実施するために、シングルステップモードになる。シングルステップ操作可能プロセッサ４１は、命令メモリ４３から開始命令を受け取る。最初のアドレスの最初の命令を実行後、シングルステップ操作可能プロセッサ４１は、次のチャネルビットクロックサイクルまで待機状態となる。次のチャネルビットクロックサイクルが到来すると、シングルステップ操作可能プロセッサ４１は第２のアドレスを出力し、メモリ４３から第２の命令を読み込んで、それを実行する。このプロセスは、要求されたすべての命令が実行されるまで、チャネルビットクロックサイクルと同期した状態で実行され続ける。シングルステップ操作可能プロセッサは、最終的に、データバイトストリームをプログラマブルＥＣＣデコーダ３９Ｂに戻す。
【００２９】
シングルステップ操作可能プロセッサ４１および実行可能命令のデザインを選択することにより、各実行サイクルがチャネルビットクロックサイクルよりも短く、また、コードワード（符号語）を読み取るのに必要な総実行回数が、１つのコードワードに含まれるチャネルビット数よりも小さいことを保証しなくてはならない。また、図４では、プログラマブルチャネルビットコンバータ４２と実時間命令およびデータメモリ４３は、別個のブロックとして示されている。しかしながら、技術的構成において、プログラマブルチャネルビットコンバータ４２と実時間命令およびデータメモリ４３は、プロセッサ付きの１個の物理チップに統合することも可能である。
【００３０】
図５に、シングルステップ操作可能プロセッサ（４１、５０）の構成を示す。シングルステップ操作可能なマイクロプロセッサ５１は、外部チャネルビットクロックのサイクルと１対１に対応する命令を実行し、また、データを表すチャネルビットのシーケンスを取り込むようにプログラムされている。シフトレジスタ５２は、外部チャネルビットクロックによってクロック制御され、到来するチャネルビットストリームを緩衝記憶するために使用される。シフトレジスタ５２は、チャネルビットストリームを受信するための直列データ入力と、固定ワード長のチャネルビットを送信するための並列データ出力とを有する。フリップフロップ回路５３も外部チャネルビットクロックによってクロック制御され、実行完了および外部チャネルビットクロック４２Ａと相関させてマイクロプロセッサ５１のシングルステップモードを可能にする論理ゲート機能を有する。
【００３１】
マイクロプロセッサ５１は、開始命令受信によりシングルステップモードに入る前に、自由実行モードで起動する。この開始命令は、出力ポート２のビットＢで出力をＨｉｇｈに設定し、したがってフリップフロップ５３でプリセットをＬｏｗに設定し、それによって開始命令完了後にシングルステップモードに入れるようにしている。その後、マイクロプロセッサ５１は、フリップフロップのデータ入力にてＶＣＣをクロック制御する各チャネルビットクロップパルスを受けて、１つの命令を実行する。これにより、マイクロプロセッサは、次の命令のアドレスを出力することによって次の命令を実行開始できる。プリセットがＬｏｗの間、各命令の最初のアドレスラッチイネーブルパルスがフリップフロップをクリアするので、マイクロプロセッサはシングルステップモードのままである。
【００３２】
すべての実行が完了し、マイクロプロセッサがそのチャネルビットクロックサイクルを暗黙的に数え続ける必要が無い場合には、マイクロプロセッサは、出力ポートを、現在のシングルステップモードを無効にするＬｏｗに設定することによって、その「自由実行モード」に戻る。フリップフロップのプリセットの入力はクリア−入力を上回る優先順位を持つので、プリセットがＨｉｇｈである場合、マイクロプロセッサは自由実行モードのままである。
【００３３】
連続した実時間処理の間、チャネルビットストリーム４２Ｂはチャネルビットクロックと同期して定率でシフトレジスタ５２に読み込まれ、固定ワード長で並列に出力される。
【００３４】
図６は、前述のステップ間の同期関係を、シングルステップイネーブル、アドレスラッチイネーブル、チャンネルクロックおよびチャンネルビットストリームの波形で示す。
【００３５】
図７に、図４に示すプログラマブルチャネルビットコンバータ４２の一実施形態のブロック構成を示す。プログラマブル位相ロックループ（ＰＬＬ）ドライバ７１は、チャネル構成、すなわち、与えられた規準データパターンに基づいてチャネルビットクロック信号４２Ａを取り出す。一時的な基準としての現チャネルビットクロック信号４２Ａと、変換アルゴリズムとしての所与のチャネル構成３１Ｆを利用して、アナログチャネル信号ストリームは、プログラマブルアナログ−デジタル（Ａ／Ｄ）コンバータ７２によってバイナリチャネルビットストリーム４２ＢへＡ／Ｄ変換される。
【００３６】
構成要素レベルの設計概念を開示した後、ディスク上の要求セクターからデータを読み取る実例方法により、実時間操作を開示する。
【００３７】
図８のフローチャートは、要求セクターからデータを読み取る実例方法８０の主要ステップを示す。
【００３８】
読出しはステップ８１から始まり、ステップ８１で、コントローラは、コマンドを図３のモードスイッチ３７に送出して、チャネル信号をプログラマブルシーケンサ３６に送る。次に、ステップ８２で、コントローラは、現在リードヘッドが位置する現在のセクターアドレスをプログラマブルシーケンサを介して要求する。ステップ８３で、コントローラは、シークが要求されているかどうか判断する。現アドレスが、要求されたセクターのアドレスと一致しない場合、コントローラの処理はステップ８４に進み、要求されたセクターを探すためにシークコマンドをドライブに送る。現アドレスが要求セクターのアドレスと一致する場合には、コントローラはステップ８５に進み、現セクターからデータを読み取るようにドライブに命令する。ステップ８６で、コントローラは要求データを受信する。ディスクの複数のセクターのデータを読み取らなくてはならない場合、図８記載のステップは、すべての要求データが読み取られるまで繰り返される。
【００３９】
方法８０には２種類の基本操作が含まれる。第１の操作は、セクターのアドレスを読み取ることであり、第２の操作は、要求されたアドレスが検出されたときに要求されたデータを読み取ることである。図９に、要求されたセクターアドレスを読み取る主なステップを示す。この操作の基礎となるハードウェアの設計概念は、図４および５に関して説明済みである。シークと呼ばれる操作では半径方向にヘッドを移動させることが一般に有利である。シーク後、トラック上のヘッドの正確な位置は分からない。光記憶技術の一般的な方法として、チャネルビットストリーム内の基準位置を示すのに、独特のコードを使用する。特に、ＳＹＮＣコードは、チャネルビットストリームのデータ部の同じ長さのセグメントでマッチングしえない独特のパターンを備えている。独特のＳＹＮＣコードは、所定のチャネルビット個数分だけセクターアドレスに先行するチャネルビットストリームに、組み込まれている。
【００４０】
セクターアドレスならびに要求データを読み取る方法は、セクターの物理的な構造によって異なる。セクターの物理的構造の一例として、図１１に、スイス国ジュネーブの１２０４ローム通り１１４にあるＥＣＭＡ（欧州コンピューター製造者協会）から、すなわち、ウェブサイトＷＷＷ．ｅｃｍａ．ｃｈ．から入手できるＥＣＭＡ２６７に既定されているＤＶＤ−ＲＯＭのレイアウトを示す。この構造内のアドレスおよびデータコードを読み取る方法を開示する。
【００４１】
図９に示されているように、セクターアドレスの読み取りは、ステップ９１で、予測されるＳＹＮＣコードパターンを読み込むことから開始し、ステップ９２で、マイクロプロセッサ５１をそのシングルステップモードに設定し続ける。ステップ９３で、一時ビット位置ｂが０に設定される。ステップ９４で、アドレス可能なビットが、１チャネルクロックサイクルについて１ビットずつ読み出される。１ビット読み出されるたびに、プログラマブルシーケンサが、読み出されたビットと、独特のＳＹＮＣコードの対応位置にあるビットとを比較する。現在の入力ビットがＳＹＮＣコードのものと一致しない場合、一時ビット位置をゼロに設定することによって、ステップ９３からプロセスを再スタートする。現在の入力ビットが予測値と一致した場合、シーケンサが、ＳＹＮＣワード全体が読み込まれているのかどうか確認する。
【００４２】
ＳＹＮＣワードの一部しか読み込まれていない場合には、ステップ９５Ｂで、一時ビット位置ｂが１だけ増分され、そしてステップ９４に戻って次の入力ビットを読む。ＳＹＮＣワード全体が既に読み込まれている場合には、シーケンサはステップ９６に進んで、決められた回数の命令で一時整数をゼロに設定し、アドレスコードを読み取れる状態にする。表１に、ＳＹＮＣを検出するアセンブリ言語の命令を列記する。表から分かるように、この命令シーケンスは、図９のステップ９４からステップ９５Ｂまでの論理ループを暗黙のうちに含むものである。処理が命令ＢＩＴ１５に達し、ジャンプ無しになると、ＳＹＮＣコード全体が読み込まれている状態が自動的に確立される。
【００４３】
【表１】
パターン１０...０１のＳＹＮＣコードを検出するための命令例
0004776114.tif 000002
【００４４】
図１１に示されているように、最初のアドレスコード１１３が図５のシフトレジスタ５２に入る前に、先行する基準ＳＹＮＣコードとアドレスコードを分離するコード１１２が流れ込む。これらのコードは、コントローラが使用できる他の情報を含んでいてもよい。これらのコードの正確な管理は、フォーマット情報の一部である。説明のため、図９に示される方法例では、最初のアドレスコードが始まるまで入力チャネルビットを数えるだけである。
【００４５】
１つのアドレスまたはデータコードワードの長さ以上のサイズを有するシフトレジスタ５２は、入力チャネルビットを記憶するように割り当てられている。シフトレジスタは、各チャネルビットクロックサイクルで、既存のビットを１ポジションだけ繰り上げ移動し、新しい入力ビットを１つ読み込む。チャネルビットコード全体が読み込まれると、ステップ９８で、チャネルビットコードは予め読み込まれているルックアップテーブルに対するポインタとして利用され、したがってバイトコードに変換される。各コードワードの変換後、プログラマブルシーケンサが、セクターアドレス全体が完全であるか確認する。より多くのアドレスコードが考えられる場合、ステップ９７で該方法は継続する。完全なアドレスが読み込まれると、読み込まれたアドレスは、ステップ９９Ｂで、確認のためにコントローラに送られる。
【００４６】
要求されたセクターが見つかると、要求されたセクター内のユーザデータが図１０に示す方法１００によって読み出される。図１１に示されているように、セクター１１０内のユーザデータは、特徴的なＳＹＮＣコード１１５および１１５Ａによって分離されているいくつかのＳＹＮＣフレームに記録されている。そのようなフレームのサイズはフォーマット記述に記述されており、１つのＳＹＮＣフレームにいくつのデータコードが見込まれるかをコントローラが把握できる。チャネルビットストリーム内のデータコードの相対的な位置は、カウンタの状態を読み取ることによって判断することができ、また、この位置は、特徴的なＳＹＮＣコードを使用することによって確認できる。
【００４７】
図１０において、プログラマブルシーケンサ（３６、４０）は、ＳＹＮＣフレームカウンタが０に設定されると、ステップ１０１でデータコードワードを読み始める。セクターレイアウト１１０の場合、プログラマブルシーケンサ（３６、４０）は、要求されたセクターアドレスが確認された直後に、ＳＹＮＣフレーム０のデータを読み始めることができる。残りのＳＹＮＣフレームのデータコードを読み取るために、先頭ＳＹＮＣコードは常に最初に検出される。ステップ１０３で、プログラマブルシーケンサは、フレームカウンタの状態を確認する。フレームカウンタが０である場合、プログラマブルシーケンサはステップ１０６に進み、ＳＹＮＣフレーム０のデータコードワード（１１３−１１４）を読み取る準備をする。フレームカウンタが０より大きい場合、プログラマブルシーケンサがステップ１０４で開始して、データコードを読み取る前に次のＳＹＮＣフレームの開始ＳＹＮＣコードを探す。
【００４８】
ステップ１０４の詳細なプロセスを図１２に方法１２０として示す。方法１２０は、図９記載のアドレスＳＹＮＣコードを突き止めるステップ９３から９５Ａと同様である。しかしながら、方法１２０は、チャネルビットまたはチャネルクロックのエラーのために遅れたＳＹＮＣコードの探索を放棄する方法を提供するものでもある。
【００４９】
図１０において、最新チャネルビットカウンタは、ステップ１０６で、ＳＹＮＣコード識別から積極的に戻ることによりゼロにリセットされる。
【００５０】
データコード開始位置とその長さがいずれも図３のプログラマブルシーケンサ３６に知られているので、ステップ１０７で、チャネルビットが図５のシフトレジスタ５２に直列に読み込まれ、コード長毎に並列に送出される。ステップ１０８で、チャネルビットコードが、予め読み込まれているルックアップテーブルに基づいて関連バイトコードに変換される。変換の原理は図９で説明したものと同じで、チャネルビットコードが、セクターアドレスに対応するバイトコードに変換される。
【００５１】
各コード変換の後、プログラマブルシーケンサ（３６、４０）は、ステップ１０８Ａで、現チャネルビットカウンタを暗黙のうちに読むことによって、ＳＹＮＣフレームが完全であるか判断する。現ＳＹＮＣフレームから、より多くのコードが考えられる場合は、ステップ１０７および１０８が繰り返される。現ＳＹＮＣフレームが完全であれば、プログラマブルシーケンサは、ＳＹＮＣフレームカウンタを読むことによって現セクターデータが完全であるかどうか確認する。より多くのＳＹＮＣフレームが考えられる場合、ステップ１０３からプロセスを再スタートする。現セクターデータが完全である場合、プログラマブルシーケンサは、ステップ１０９で、そのデータをコントローラに戻して次の命令を待つ。
【００５２】
現チャネルビットカウンタの状態および方法１００に組み込まれているフレームカウンタの状態は、プロセス制御パラメータとして使用されることに加え、エラーを突き止めて処理するために使用することもできる。代表的なエラーは、チャネルビットの過不足である。図１２に、ＳＹＮＣフレームのＳＹＮＣコードを読み取りながらエラーを処理する方法を示す。
【００５３】
図１２の方法１２０は、図１０記載の方法１００のステップ１０４の拡張バージョンとして考えることができる。方法１２０は、フレームカウンターが０より大きい状態で、ステップ１２１で始まる。ステップ１２２で、予測されるＳＹＮＣコードパターンが読み込まれ、ステップ１２３で、プログラマブルシーケンサがチャネルビットカウンタを閾値に設定する。このチャネルビットカウンタの閾値は、予め定められた個数のチャネルビットの境界を示す数である。例えば、現在のタスクが、コードの最初のビットで始まるＳＹＮＣコードを読み取ることである場合、閾値は、ＳＹＮＣコードに１を加えた長さ以上である。実際の操作では、閾値は、誤って失われたり誤って読み取られるデータの量を最小限にするルーチンの最初の命令を指摘する割込みによって設定できる。
【００５４】
方法１２０は引き続きステップ１２４で、現チャネルビットカウンタがゼロに設定され、ステップ１２５で、一時ビット位置ｂもゼロに設定される。ステップ１２６で、アドレス可能な入力ビットの読み取りが開始される。各チャネルビットが読み取られた後、プログラマブルシーケンサ３６は、チャネルビットカウンタが、予め設定された閾値に達しているかどうか判断する。
【００５５】
まだ閾値に達していない場合、現在のビットを、予測されるＳＹＮＣコードの対応位置にあるものと比較する。現在の入力ビットが予測されるＳＹＮＣコードのものと一致しない場合、一時ビット位置をゼロに設定することによってステップ１２５からプロセスを再スタートする。現在のビットが予測値と一致している場合、シーケンサは、ＳＹＮＣコードワード全体が読み込まれているのかどうか判断する。ＳＹＮＣコードの一部しか読み込まれていない場合には、ステップ１２６で、一時ビット位置ｂが１だけ増分されて読み取りが継続されるが、ＳＹＮＣコード全体が読み込まれている場合には、シーケンサは、現在のＳＹＮＣフレームのデータコードを読むプロセスを開始できる状態となる。
【００５６】
閾値に達している場合、それは、現チャネルビットが予測ＳＹＮＣコードの最後のチャネルビットを既に越えているが、予測ＳＹＮＣコードが確認されていないことを意味する。これは、ビットエラーにより生じる可能性がある。この場合、プログラマブルシーケンサは、欠けている現ＳＹＮＣコードを読み取ることをあきらめ、ステップ１２８でフレームカウンタを１だけ増分した後、ステップ１２２で再スタートして次のＳＹＮＣフレームのＳＹＮＣコードを読む。次のＳＹＮＣコードにはみださないようにするために、チャネルビットカウンタの閾値は、ＳＹＮＣコードよりも長く、ＳＹＮＣフレーム全体の長さよりも短い値に設定される。図１２に示されていない別の選択肢として、プログラマブルシーケンサは、データコードの始まりが確認されたものと仮定して、データコードを読み続け、誤っている可能性のあるデータをコントローラに送り続けることも可能である。したがって、チャネルビットカウンタの閾値は、現在のＳＹＮＣフレームの総コード長に設定されるべきである。
【００５７】
ドライブレベルのエラーの処理は、誤り訂正符号（ＥＣＣ）のローバスト性と、セクターの特殊な物理構造と、データ信頼性に対する要件とに応じて、性能を最適化する種々の手法を採用できる。
【００５８】
【発明の効果】
以上のように本発明によれば、読み取ることは可能であるが、書込可能ディスクへのセクター単位のコピーを実行不可能にする必要がある場合には、ディスクフォーマットを変更することができる可変的なディスクフォーマットを提供することができる。
【００５９】
また、既存の再生装置の再生性を維持しながら、更新されたり完全変更される可能性のあるデジタル著作物を暗号化する可変ソフトウェアアルゴリズムを提供することができる。
【００６０】
さらに、将来の再生装置またはドライブに、ディスク自体に書き込まれている情報を利用して旧式のディスクに適応する方法を与えることも可能となる。
【００６１】
以上、当業者であれば、前述の説明から本発明の広い教示内容を種々の形態で実施できることが分かるであろう。したがって、本発明は、その特別な実施例を組み合わせて説明されているが、図面、明細書、および請求項を検討することによって当業者に他の変更形態も明らかになるので、本発明の真の範囲はそのような特別な実施例に限定されるべきではない。
【図面の簡単な説明】
【図１】  適応可能再生装置で読み取ることはできるが、書込可能ディスクとの互換性を有さないフォーマットで再生専用媒体にデジタル著作物を転写する方法を示す。
【図２】  ユーザデータフォーマットで符号化されたデジタル著作物と、デフォルトフォーマットで符号化されたユーザデータフォーマットの記述とを表す標識を担持している再生専用ディスクを示す。
【図３】  最初に、ユーザデータフォーマットの記述をデフォルトフォーマットで読み取り、次に、ユーザデータフォーマットに適合させる記述を使用することにより、再生専用光ディスクからユーザデータフォーマットのデジタル著作物を読み出す適応可能再生装置を示す。
【図４】  再生装置をデフォルトフォーマットのディスク上の記述によって指定された再生専用ディクス上のユーザデータフォーマットに対応できるようにする実時間機能を実施するプログラマブルシーケンサを示す。
【図５】  チャネルビットクロックパルスと１対１に対応する命令を実行することができ、データを表すチャネルビットのシーケンスを取り込むようにプログラムされている、シングルステップ操作が可能なプロセッサを示す。
【図６】  シングルステップ操作可能なプロセッサとチャネルビットクロックパルスの間の同期性を維持する役割を果たす信号のタイミングを示す。
【図７】  チャネル信号ストリームからチャネルビットクロック信号を取り出して、チャネル構成データに基づいてチャネル信号ストリームをチャネルビットストリームに変換できるプログラマブルチャネルビットコンバータを示す。
【図８】  指定されたデータをユーザデータフォーマットでディスクから読み出すようにコントローラが適応可能再生装置を制御する方法を示す。
【図９】  プログラマブルシーケンサが、チャネルに現われる次のセクターのアドレスを読み取る方法を示すフローチャートである。
【図１０】  プログラマブルシーケンサが、チャネルに現われる次のセクターのデータを読み取る方法を示すフローチャートである。
【図１１】  データのセクターが、ＳＹＮＣコードとアドレスとデータコードワードからどのように構成されているかを示す。
【図１２】  決まった数のビットからなるＳＹＮＣコードを受け取るステップを示す。
【符号の説明】
３１  コントローラ
３２  ドライブ
３３再生専用ディスク
３４  デフォルトシーケンサ
３５  マルチメディアプロセッサ
３６  プログラマブルシーケンサ
３７  モードスイッチ
３８  暗号解読プロセッサ
３９Ａ  デフォルトＥＣＣデコーダ
３９Ｂ  プログラマブルＥＣＣデコーダ
４１、５０  シングルステップ操作可能プロセッサ
４２  プログラマブルチャネルビットコンバータ
４３  実時間命令およびデータメモリ
５１  シングルステップ操作可能マイクロプロセッサ
５２  データシフトレジスタ
５３  フリップフロップ
【図１】
0004776114.tif 000003
【図２】
0004776114.tif 000004
【図３】
0004776114.tif 000005
【図４】
0004776114.tif 000006
【図５】
0004776114.tif 000007
【図６】
0004776114.tif 000008
【図７】
0004776114.tif 000009
【図８】
0004776114.tif 000010
【図９】
0004776114.tif 000011
【図１０】
0004776114.tif 000012
【図１１】
0004776114.tif 000013
【図１２】
0004776114.tif 000014