(57)【特許請求の範囲】
【請求項１】
メモリに置かれた命令を実行するマイクロプロセッサであって、
前記メモリから命令をフェッチする命令フェッチ手段と、
フェッチした命令を解読する命令解読手段と、
前記命令解読手段による解読結果に基づいて命令を実行する実行手段とを備え、
前記実行手段の処理には、非ＡＶデータを前記メモリに格納する第１読み出し処理と、圧縮ＡＶデータを前記メモリに格納する第２読み出し処理と、格納された前記圧縮ＡＶデータを伸長する伸長処理とが含まれ、
前記実行手段は、前記命令解読手段によりＡＶデータ再生命令であると解読された場合には、前記第２読み出し処理と前記伸長処理とを連続不可分に行い、コピー命令であると解読された場合には、少なくとも伸長処理とは独立して前記第１読み出し処理を実行し、且つ前記第１読み出し処理によるＡＶデータの読み出しに対しては著作権保護処理を行う
ことを特徴とするマイクロプロセッサ。
【請求項２】
前記第１読み出し処理は、前記コピー命令による読み出し対象データがＡＶデータである場合には、読み出し対象データを無効なデータに置換して前記メモリに格納することにより前記著作権保護処理を行うことを特徴とする請求項１記載のマイクロプロセッサ。
【請求項３】
前記マイクロプロセッサはさらに、現在の動作モードが全ての命令を実行の対象とする第１の動作モードであるか一部の命令のみを実行の対象とする第２の動作モードであるかを記憶する動作モード記憶手段を備え、
前記ＡＶデータ再生命令は、前記第１のモードでのみ実行される
ことを特徴とする請求項２記載のマイクロプロセッサ。
【請求項４】
前記命令解読手段が解読する命令にはさらに、ＡＶデータ読み出し命令とＡＶデータ復号化命令が含まれ、
前記実行手段はさらに、前記命令解読手段によりＡＶデータ読み出し命令であると解読された場合に外部装置から暗号化された圧縮ＡＶデータを読み出す読み出し処理部と、前記命令解読手段によりＡＶデータ復号化命令であると解読された場合に前記暗号化圧縮ＡＶデータを復号する復号部とを有し、
前記実行手段は、前記第２読み出し処理に先立って前記ＡＶデータ読み出し命令とＡＶデータ復号化命令とに基づいて前記圧縮ＡＶデータの読み出し処理と前記復号処理とを行うことを特徴とする請求項３記載のマイクロプロセッサ。
【請求項５】
ＡＶデータを再生、及び非ＡＶデータのコピーを行う映像情報処理システムであって、
ＡＶデータの再生を行う場合に外部媒体から圧縮ＡＶデータを読み出して暗号化し、暗号化圧縮ＡＶデータとして出力し、非ＡＶデータのコピーを行う場合に外部媒体からデジタルデータを読み出すデータ読み出し装置と、
映像データ及び音声データを受け取り、それらを映像信号及び音声信号に変換し、映像表示及び音声出力するＡＶ出力装置と、
請求項４のマイクロプロセッサ及びメモリを有し、ＡＶデータの再生を行う場合に前記データ読み出し装置から出力された暗号化圧縮ＡＶデータを映像データ及び音声データに変換し前記ＡＶ出力装置に送り、コピー行う場合には、読み出された前記デジタルデータが非ＡＶデータであるときには前記非ＡＶデータのコピーを行い、前記デジタルデータがＡＶデータであるときには著作権保護処理を行う制御装置と
を備えることを特徴とする映像情報処理システム。
【請求項６】
前記実行手段はさらに、前記命令解読手段が解読する各命令に対応するマイクロプログラムを予め記憶しているマイクロプログラム記憶部を有し、
前記実行手段は、前記命令解読手段によりＡＶデータ再生命令であると解読された場合には、前記マイクロプログラム記憶部に記憶されたマイクロプログラムに従って前記第２読み出し処理と前記伸長処理とを連続不可分に行い、コピー命令であると解読された場合には、少なくとも伸長処理とは独立して前記マイクロプログラム記憶部に記憶されたマイクロプログラムに従って前記第１読み出し処理を実行し、且つ前記第１読み出し処理によるＡＶデータの読み出しに対しては著作権保護処理を行うことを特徴とする請求項２記載のマイクロプロセッサ。
【請求項７】
前記実行手段は、前記圧縮ＡＶデータを生成するために前記第２読み出し処理に先立って暗号化圧縮ＡＶデータを復号する処理を行うことを特徴とする請求項６記載のマイクロプロセッサ。
【請求項８】
前記実行手段は、前記復号処理に先立って外部装置から前記暗号化圧縮ＡＶデータを読み出すことを特徴とする請求項７記載のマイクロプロセッサ。
【請求項９】
ＡＶデータを再生、及び非ＡＶデータのコピーを行う映像情報処理システムであって、
ＡＶデータの再生を行う場合に外部媒体から圧縮ＡＶデータを読み出して暗号化し、暗号化圧縮ＡＶデータとして出力し、非ＡＶデータのコピーを行う場合に外部媒体からデジタルデータを読み出すデータ読み出し装置と、
映像データ及び音声データを受け取り、それらを映像信号及び音声信号に変換し、映像表示及び音声出力するＡＶ出力装置と、
請求項８のマイクロプロセッサとメモリを有し、ＡＶデータの再生を行う場合に前記データ読み出し装置から出力された暗号化圧縮ＡＶデータを映像データ及び音声データに変換し前記ＡＶ出力装置に送り、コピー行う場合には、読み出された前記デジタルデータが非ＡＶデータであるときには前記非ＡＶデータのコピーを行い、前記デジタルデータがＡＶデータであるときには著作権保護処理を行う制御装置と
を備えることを特徴とする映像情報処理システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、映像著作物等の動画データを再生する命令を備えたマイクロプロセッサ及び映像情報処理システムに関し、特に、デジタル著作物の不正コピーを防止するのに好適なマイクロプロセッサ等に関する。
【０００２】
【従来の技術】
マルチメディア技術の発展に伴い、ＣＤ−ＲＯＭに格納された動画等のＡＶ（Audio Visual）データをパーソナルコンピュータ等の映像情報処理システム上で直接再生することが可能になってきた。ここで、ＡＶデータとは、映像データ、音声データ、プログラムデータ等が混在したマルチメディアデータをいう。また、「再生」とは、ＡＶデータを人間が視聴できる態様で再生することをいう。
【０００３】
図２７は、ＡＶデータの再生が可能な従来の映像情報処理システムの構成を示すブロック図である。
この従来の映像情報処理システムは、例えばＩＢＭ社製のＰＣ／ＡＴ互換コンピュータを基本とするシステムであり、スピーカ６０、ＣＤ−ＲＯＭ６１、ディスク再生ドライブ６２、ＭＰＥＧデコーダ６３、ハードディスク装置６４、入力部６５、Ｉ／Ｏバス６６、ビデオ信号処理部６７、制御部６８、キーボード６９、マウス７０及びディスプレイ装置７１から構成される。
【０００４】
ＣＤ−ＲＯＭ６１には、ＭＰＥＧ１（Moving Picture Expert Group 1)方式で圧縮されたＡＶデータ（ＭＰＥＧ方式で圧縮されたＡＶデータを「ＭＰＥＧデータ」という。）が格納されている。
制御部６８はさらに、プロセッサバス６８２に接続された汎用のマイクロプロセッサ６８１、バスＩ／Ｆ６８３及び再生制御プログラムが置かれた主記憶６８４からなる。
【０００５】
ＭＰＥＧデコーダ６３は、乗算器等からなり、ＭＰＥＧデータに対して伸長処理、即ち、逆符号化、逆量子化、逆ＤＣＴ（逆離散コサイン変換：Inverse Discrete Cosine Transform ）を行うことにより映像データ及び音声データを生成するカード型のモジュールであり、図示されていない拡張カードボックスに収納されている。
【０００６】
ビデオ信号処理部６７は、Ｉ／Ｏバス６６を介して入力された映像データ及び音声データをそれぞれ映像信号及び音声信号に変換しディスプレイ装置７１及びスピーカ６０に出力する。なお、「データ」はデジタル情報を、「信号」はアナログ情報を意味する。
以上のように構成された従来の映像情報処理システムにおいて、ユーザからキーボード６９やマウス７０による再生指示があると、制御部６８はその指示を入力部６５によって検出し、ディスク再生ドライブ６２を制御することで、ＣＤ−ＲＯＭ６１に格納されたＭＰＥＧデータを主記憶６８４に読み出す。
【０００７】
そして、制御部６８は、そのＭＰＥＧデータをＭＰＥＧデコーダ６３に送り、そこで伸長させた後に、得られた映像データ及び音声データをビデオ信号処理部６７に転送させ、ここでアナログ映像信号及び音声信号に変換させた後に、それぞれディスプレイ装置７１及びスピーカ６０に出力させる。
このように従来の映像情報処理システムは、ユーザとの対話によってＣＤ−ＲＯＭ６１に格納されたＡＶデータを再生することができる。
【０００８】
【発明が解決しようとする課題】
しかしながら、従来の映像情報処理システムには次のような問題点がある。
第１に、ＭＰＥＧデコーダ６３という独立したカードモジュールが必要とされることである。つまり、ＡＶデータの再生を楽しむには、ユーザは、汎用のパーソナルコンピュータの他に、ＭＰＥＧデコーダ６３という独立したカードモジュールを購入し拡張カードボックスにインストールする必要がある。また、このカードモジュールのために、拡張カードボックスの１つのスロットが占有されてしまう。
【０００９】
第２に、ＣＤ−ＲＯＭ６１に格納されたＡＶデータ（デジタル著作物）の不正コピーに対して無防備であるという問題点がある。例えば、著作権者の許可なくＣＤ−ＲＯＭ６１に格納されたＡＶデータをハードディスク装置６４や書き込み可能な光ディスク等にコピーし再販することが容易である。また、このような著作物に対して、不正コピーが行われることを見込んだ価格に設定が行われることとなると、ユーザにとっての不利益が大きい。
【００１０】
そこで、本発明は係る問題点に鑑みてなされたものであり、ＭＰＥＧデコーダ等の独立したカードモジュールを必要とせずにＡＶデータの再生を行い、かつ、このようなデジタル著作物の不正コピーを防止できるマイクロプロセッサ及び映像情報処理システムを提供することを目的とする。
【００１１】
【課題を解決するための手段】
上記目的を達成するために、本発明は、メモリに置かれた命令を実行するマイクロプロセッサであって、前記メモリから命令をフェッチする命令フェッチ手段と、フェッチした命令を解読する命令解読手段と、前記命令解読手段による解読結果に基づいて命令を実行する実行手段とを備え、前記実行手段の処理には、非ＡＶデータを前記メモリに格納する第１読み出し処理と、圧縮ＡＶデータを前記メモリに格納する第２読み出し処理と、格納された前記圧縮ＡＶデータを伸長する伸長処理とが含まれ、前記実行手段は、前記命令解読手段によりＡＶデータ再生命令であると解読された場合には、前記第２読み出し処理と前記伸長処理とを連続不可分に行い、コピー命令であると解読された場合には、少なくとも伸長処理とは独立して前記第１読み出し処理を実行し、且つ前記第１読み出し処理によるＡＶデータの読み出しに対しては著作権保護処理を行うことを特徴とする。
【００１２】
このように、本発明に係るマイクロプロセッサは圧縮ＡＶデータを再生する専用の命令を備えるので、ＭＰＥＧデコーダ等の独立したカードモジュールを必要とすることなくプログラムによってＡＶデータの再生を行う映像情報処理システム、即ち、ソフトデコードシステムを構築することができる。
また、本プロセッサは記録媒体等から圧縮ＡＶデータを読み出してメモリにロードする処理とそれを伸長する処理とを連続不可分に行うので、伸長処理を施す前の圧縮ＡＶデータを他の場所に転送する等の不正コピーや誤動作が防止される。
【００１３】
【発明の実施の形態】
以下、本発明に係るマイクロプロセッサ及び映像情報処理システムの実施例について、図面を参照しながら説明する。
１．  第１実施例
本発明の第１実施例はＡＶデータを再生する映像情報処理システムであり、ＭＰＥＧデータをデコードする専用の命令を備えたマイクロプロセッサ及び著作物の不正コピーを防止するためのプログラム構造を備えることを特徴とする。
１．１  映像情報処理システムの構成
図１は、本実施例に係る映像情報処理システムの概観図である。
【００１４】
図２は、本映像情報処理システムの構成を示すブロック図である。
本映像情報処理システムは、スピーカ６０、ＤＶＤ（Digital Versatile/Video Disk) −ＲＯＭ３１、ディスク再生ドライブ３５、ビデオ信号処理部６７、ハードディスク装置６４、入力部６５、Ｉ／Ｏバス６６、ビデオ信号処理部６７、制御部３７、キーボード６９、マウス７０及びディスプレイ装置７１から構成される。なお、図２７に示された従来の映像情報処理システムと同一の構成要素６０、６４〜６７、６９〜７１は、同一の符号を付している。
１．１．１  ＤＶＤ−ＲＯＭ３１
ＤＶＤ−ＲＯＭ３１は、約５Ｇバイトの記憶容量を持つ相変化型の光ディスクであり、ＣＤ−ＲＯＭ６１の５倍以上のデータ転送レートを提供する。このような性能ゆえ、ＤＶＤ−ＲＯＭ３１に格納されるＡＶデータの圧縮方式として、ＭＰＥＧ１よりも高品質な動画再生が可能となるＭＰＥＧ２が採用されている。本実施例では、ＤＶＤ−ＲＯＭ３１に２時間以上の映画等が格納されている。
【００１５】
図３（ａ）〜図３（ｆ）は、ＤＶＤ−ＲＯＭ３１の物理フォーマットと称される物理的なデータの格納構造を説明する図である。
図３（ａ）に示されるように、ＤＶＤ−ＲＯＭ３１のデータ記憶領域は、データの書き込み又は読み出しを行う最小単位であるセクタ１０の集合からなる。
図３（ｂ）に示されるように、各セクタ１０は、先頭より、１２バイトのヘッダ領域、２０４８バイトのユーザデータ領域、４バイトの誤り検出符号領域と続く構成を持つ。
【００１６】
ユーザデータ領域にはユーザデータ１４が格納される。ユーザデータは、ＡＶデータ若しくは非ＡＶデータ（これらを併せて「デジタルデータ」という。）又はファイル管理情報２１のいずれかに分類される。なお、「非ＡＶデータ」とは、映像データ及び音声データを含まないプログラムデータ等をいう。また、「ファイル管理情報２１」とは、複数のセクタ１０をファイルとして、さらに複数のファイルをグループ化してディレクトリとして管理するためのファイルシステムに関する情報をいう。
【００１７】
セクタヘッダ領域には、先頭から、セクタ１０を識別するためのアドレス情報であるセクタアドレス１１、セクタアドレス１１の誤り訂正符号１２、セクタ再生時の再生制御を行うＣＧＭＳ(Copy Generation Management System) 制御データ１３が格納されている。
図３（ｃ）に示されるように、ＣＧＭＳ制御データ１３は、データ属性コード１６、ＣＧＭＳデータ１７及び予約１８から構成される。
【００１８】
図３（ｄ）は、データ属性コード１６の値（コード）とその意味を示す図である。
データ属性コード１６は１バイトからなり、その値が０１ｈの場合にはそのセクタ１０のユーザデータ領域にＡＶデータが記録されている事を示し、００ｈの場合には明示されていない事を示す。
【００１９】
図３（ｅ）に示されるように、ＣＧＭＳデータ１７は１バイトからなり、上位２ビットがＣＧＭＳコード１９と呼ばれる。
図３（ｆ）は、ＣＧＭＳコード１９の値とその意味を示す図である。
ＣＧＭＳコード１９は、そのユーザデータ領域に格納されたデジタルデータのコピーの許否に関する情報であり、００である場合はコピー許可を、１０である場合は１世代のコピー許可を、１１である場合にはコピー禁止を意味する。
【００２０】
図４（ａ）及び図４（ｂ）は、ＤＶＤ−ＲＯＭ３１の論理フォーマットと称される記録データの論理的な構造を説明する図である。
図４（ａ）に示すように、データ記録領域には先ずファイル管理情報２１が記録され、続いて複数のファイル２２〜２６が記録される。ここで、「ファイル」とは複数のセクタ１０のデータをグループ化して管理するための単位であり、各ファイルを識別する情報がファイル管理情報２１に格納されている。このファイル管理情報２１にはさらに、複数のファイルのグループをディレクトリという単位で管理するための情報も格納される。
【００２１】
図４（ｂ）は、本実施例におけるファイル及びディレクトリの階層構造を示す図である。
楕円２７、２８がディレクトリを、長方形２２〜２６がファイルを示している。ここでは、Ｒｏｏｔディレクトリ２７の下に、ＤＶＤ  ＶＩＤＥＯディレクトリ２８と、Ｆｉｌｅ１．ＤＡＴ２２、Ｆｅｌｅ２．ＤＡＴ２３の２つのファイルが存在する。ＤＶＤ  ＶＩＤＥＯディレクトリ２８はさらに、Ｍｏｖｉｅ１．ＶＯＢ２４、Ｍｏｖｉｅ２．ＶＯＢ２５、Ｍｏｖｉｅ３．ＶＯＢ２６の計３個のファイルが存在する。
【００２２】
なお、本実施例ではファイルの種別を識別するために、ＡＶデータを格納するファイル（以下、「ＡＶファイル」と呼ぶ。）の名称規約を定めている。つまり、ファイル名の拡張子にＶＯＢが付与されたものをＡＶファイルとする。
また、名称がＤＶＤ  ＶＩＤＥＯであるディレクトリをＡＶファイル格納用の専用ディレクトリとしている。本例であれば、Ｍｏｖｉｅ１．ＶＯＢ２４、Ｍｏｖｉｅ２．ＶＯＢ２５、Ｍｏｖｉｅ３．ＶＯＢ２６がＡＶファイルである。従って、Ｆｉｌｅ１．ＤＡＴ２２及びＦｉｌｅ２．ＤＡＴ２３はＡＶデータを格納しないファイル（以下、「非ＡＶファイル」と呼ぶ。）である。
１．１．２  Ｉ／Ｏバス６６
Ｉ／Ｏバス６６は本映像情報処理システムの内部バスであり、例えばＡＴＡＰＩ（AT Attachment Packet Interface) と呼ばれるデジタル・インタフェース等であり、ここに制御部３７、ハードディスク装置６４、ディスク再生ドライブ３５、ビデオ信号処理部６７及び入力部６５が接続されている。
１．１．３  ハードディスク装置６４
ハードディスク装置６４は、ＩＧバイトの記憶容量を有する磁気記録装置であり、制御部３７の主記憶３７４にロードすべき再生制御プログラムを保持したり、ＤＶＤ−ＲＯＭ３１に記録されたデジタルデータのコピー先としての役割を有する。
１．１．４  入力部６５
入力部６５は、マウス７０及びキーボード６９を介してユーザからの指示を受け付けるインターフェース回路である。
１．１．５  ディスク再生ドライブ６２
ディスク再生ドライブ３５は、制御部３７からの指示に基づいてＤＶＤ−ＲＯＭ３１に記録されたデジタルデータを読み出す装置である。
【００２３】
図５は、ディスク再生ドライブ３５の詳細な構成を示すブロック図である。
ディスク再生ドライブ３５は、光ヘッド４１０、データ再生回路４０１、ＣＧＭＳ制御データ用メモリ４０２、ユーザデータ用メモリ４０３、ＣＧＭＳデータ識別回路４０４、Ｉ／Ｏバス制御回路４０５、暗号回路４０６、内部データバス４０７、制御バス４０８、マイクロプロセッサ４０９から構成される。
【００２４】
データ再生回路４０１は、マイクロプロセッサ４０９からセクタ番号の指定を受けると付随するディスク駆動装置を制御することにより、光ヘッド４１０を介してＤＶＤ−ＲＯＭ３１の指定されたセクタ１０に格納されたデジタルデータ（セクタデータ１１〜１５）を読み出す。読み出したセクタデータ１１〜１５のうち、ユーザデータ１４をユーザデータ用メモリ４０３に、ＣＧＭＳ制御データ１３をＣＧＭＳ制御データ用メモリ４０２に格納する。
【００２５】
ＣＧＭＳ制御データ用メモリ４０２は、データ再生回路４０１により読み出されたＣＧＭＳ制御データ１３を一時的に記憶するＲＡＭである。
ユーザデータ用メモリ４０３は、データ再生回路４０１により読み出されたユーザデータ１４を一時的に記憶するＲＡＭである。
ＣＧＭＳデータ識別回路４０４は、ＣＧＭＳ制御データ用メモリ４０２に格納されたＣＧＭＳ制御データ１３を読込み、ＣＧＭＳ制御データ１３中のデータ属性コード１６に従い、ユーザデータ用メモリ４０３に格納されているユーザデータ１４のデータ属性（“未指定”、“ＡＶデータ”等）を判別し、マイクロプロセッサ４０９に報告する。また、ＣＧＭＳ制御データ１３中のＣＧＭＳデータ１７に従い、ユーザデータ用メモリ４０３に格納されたユーザデータ１４のコピー制限情報（“コピー許可”、“一世代コピー許可”、“コピー非許可”）を判別し、マイクロプロセッサ４０９に報告する。
【００２６】
Ｉ／Ｏバス制御回路４０５は、このディスク再生ドライブ３５とＩ／Ｏバス６６とを接続するインタフェース回路であり、コマンドおよびデータの送受信を行う。
暗号回路４０６は、内部に保持する秘密鍵データを用いてＤＥＳ（Data Encryption Standards)に従ったデータ暗号化を行う回路からなり、マイクロプロセッサ４０９からの指示により、ユーザデータ用メモリ４０３に格納されたユーザデータ１４を読み込んで暗号化した後に再びユーザデータ用メモリ４０３に戻す。
【００２７】
内部データバス４０７は、データ再生回路４０１が読み出したデータやＩ／Ｏバス制御回路４０５がＩ／Ｏバス６６を介して入出力するデータ等の伝送路である。
制御バス４０８は、マイクロプロセッサ４０９から発行される指示や、各構成回路４０１〜４０６から報告される処理結果情報等の伝送路である。
【００２８】
マイクロプロセッサ４０９は、Ｉ／Ｏバス制御回路４０５が受け取ったコマンドに従い、ディスク再生ドライブ３５全体の制御を行う。
以下に、このマイクロプロセッサ４０９の制御動作について、ＤＶＤ−ＲＯＭ３１に記録された非ＡＶデータを読み出すためのコマンド（ｄｓｋ  ｒｅａｄ）及びＡＶデータを読み出すためのコマンド（ｄｓｋ  ｒｅａｄ＿ａｖ）が入力された場合を例によって説明する。
【００２９】
マイクロプロセッサ４０９は、入力されたコマンドがデータ読み出し用コマンド（ｄｓｋ  ｒｅａｄ）であると判定すると、まず、そのコマンドに付随されたセクタ番号に従い、データ再生回路４０１を制御することでＤＶＤ−ＲＯＭ３１のデジタルデータを読み出す。
読み出されたデジタルデータは、その中のＣＧＭＳ制御データ１３がＣＧＭＳ制御データ用メモリ４０２に、ユーザデータ１４がユーザデータ用メモリ４０３にそれぞれ分離して格納される。
【００３０】
続いて、マイクロプロセッサ４０９は、ＣＧＭＳデータ識別回路４０４により、ユーザデータ用メモリ４０３に格納されたユーザデータ１４がＡＶデータか否かを判定する。
その結果、非ＡＶデータであればＩ／Ｏバス制御回路４０５を制御することでそのユーザデータ１４を上記コマンドに付随された転送先に送出させ、一方、ＡＶデータであれば著作権保護処理として全てのユーザデータ１４（２０４８バイト）をＮＵＬＬデータに書き替えた後に、Ｉ／Ｏバス制御回路４０５を制御することでそのＮＵＬＬデータを転送先に送出させる。
【００３１】
また、マイクロプロセッサ４０９は、入力されたコマンドがＡＶデータ読み出し用コマンド（ｄｓｋ  ｒｅａｄ＿ａｖ）であると判定すると、先ず、データ再生回路４０１を制御してＤＶＤ−ＲＯＭ３１の指定されたセクタ番号のデジタルデータを読み出し、ＣＧＭＳ制御データ１３をＣＧＭＳ制御データ用メモリ４０２に、ユーザデータ１４をユーザデータ用メモリ４０３に格納する。
【００３２】
続いて、マイクロプロセッサ４０９は、暗号回路４０６を制御することで、ユーザデータ用メモリ４０３に置かれた全てのユーザデータ（２０４６バイト）を暗号化させる。
そして、マイクロプロセッサ４０９は、データ転送の単位を２０５４バイトに切り替え、ＣＧＭＳ制御データ用メモリ４０２に格納されたＣＧＭＳ制御データ１３（６バイト）とユーザデータ用メモリ４０３に格納された暗号化されたユーザデータ１４（２０４８バイト）の合計２０５４バイトのデジタルデータをＩ／Ｏバス制御回路４０５を制御することで転送先に送出させる。
１．１．６  ビデオ信号処理部６７
ビデオ信号処理部６７は、ビデオＲＡＭ及びＤ／Ａ変換器等からなり、Ｉ／Ｏバス６６を介して入力された映像データ及び音声データをそれぞれ映像信号及び音声信号に変換しディスプレイ装置７１及びスピーカ６０に出力する。
１．１．７  制御部３７
制御部３７は本映像情報処理システムの各構成要素３５、６４、６５、６７を制御することで、ユーザとの対話、ＤＶＤ−ＲＯＭ３１に格納されたＡＶデータの再生、及びＤＶＤ−ＲＯＭ３１に格納された非ＡＶデータのハードディスク装置６４のコピー等を実現している。
【００３３】
この制御部３７はさらに、図２に示されるように、マイクロプロセッサ３７１、プロセッサバス６８２、バスＩ／Ｆ６８３及び主記憶３７４から構成される。
１．１．７．１  プロセッサバス６８２
プロセッサバス６８２は、Ｉ／Ｏバス６６よりも高速なデータ転送が可能な３２ビットのバスであり、ここにマイクロプロセッサ３７１、バスＩ／Ｆ６８３及び主記憶３７４が接続されている。
１．１．７．２  バスＩ／Ｆ６８３
バスＩ／Ｆ６８３は、制御部３７とＩ／Ｏバス６６とを接続するインタフェース回路である。
１．１．７．３  主記憶３７４
主記憶３７４は、ハードディスク装置６４からロードされた本映像情報処理システムに固有のＡＶデータ再生制御プログラムやオペレーティングシステム（プログラムの起動、タスク管理、ファイル操作等の制御を行うプログラム）等を一時的に記憶したり、Ｉ／Ｏバス６６に接続された装置間でのデータ転送を行う際のデータバッファとしての役目を果たすＲＡＭである。
１．１．７．４  マイクロプロセッサ３７１
マイクロプロセッサ３７１は、ワンチップのＬＳＩからなり、汎用のマイクロプロセッサが備える命令セットに加えて、以下に説明する本映像情報処理システムに固有の命令セットを備え、本映像情報処理システムの中核的な制御を行う。
【００３４】
図６は、本マイクロプロセッサ３７１の詳細な構成を示すブロック図である。
このマイクロプロセッサ３７１は、大きく命令解読部５１と命令実行部５５とからなる。
１．１．７．４．１  命令実行部５５
命令実行部５５は、命令解読部５１からの制御に基づいて演算等を実行する回路であり、さらにレジスタ群５６、ＡＬＵ５７、ＩＤＣＴ部５８、ＤＥＣＲＹＰＴ部５９から構成される。
【００３５】
レジスタ群５６は６４個の３２ビットレジスタの集まりであり、それらレジスタにはマイクロプロセッサ３７１の実行状態に関するステータスが格納されたステータスレジスタ５６１が含まれる。
図７は、ステータスレジスタ５６１の構成を示す図である。
ステータスレジスタ５６１はマイクロプロセッサ３７１の実行状態に関するステータスを保持するレジスタであり、このステータスにはマイクロプロセッサ３７１の動作モードを示す１ビットが割り当てられている。このビットが０のときはマイクロプロセッサ３７１の動作モードはユーザデータであることを示し、１のときはスーパバイザモードであることを示す。
【００３６】
なお、動作モードがユーザモードである場合は、マイクロプロセッサ３７１は特権レベルが０に属する命令（このような命令を「ユーザ命令」と呼ぶ。）のみを実行することができ、動作モードがスーパバイザモードである場合は、マイクロプロセッサ３７１はユーザ命令のみならず特権レベルが１に属する命令（このような命令を「スーパバイザ命令」と呼ぶ。）にも実行する。
【００３７】
また、ステータスレジスタ５６１は、上記動作モードを示す１ビットをフラグ信号４９として命令解読部５１に出力している。
ＡＬＵ５７はレジスタ群５６に格納されたデータどうしの算術論理演算を行う。
ＩＤＣＴ部５８は積和演算回路等からなり、レジスタ群５６を用いて逆ＤＣＴを行う。逆ＤＣＴはＭＰＥＧデータのデコード処理の中心的なものである。
【００３８】
ＤＥＣＲＹＰＴ部５９はディスク再生ドライブ３５の暗号回路４０６で行われた暗号化に対応する逆変換（復号）を行う回路である。
１．１．７．４．２  命令解読部５１
命令解読部５１は主記憶３７４に置かれた命令を解読しその結果に基づいて命令実行部５５やバスＩ／Ｆ６８３を制御するものであり、さらに命令レジスタ５２、命令デコーダ５３、マイクロプログラムメモリ５４及びプログラムカウンタ４５から構成される。
【００３９】
命令レジスタ５２は、プログラムカウンタ４５が示す主記憶３７４上の位置に置かれた命令をフェッチし保持するレジスタである。
図８（ａ）は、１個の命令のフォーマットを示す図である。
命令は、その命令の内容を特定する命令コードとアドレスや演算対象等を特定するオペランドからなり、命令コードはさらに命令の種類を識別する命令識別コードと実行の条件を示すステータスからなり、ステータスには上記特権レベルを示す１ビットが含まれる。つまり、この特権レベルが０である命令はユーザ命令に属し、１である命令は上記スーパバイザ命令に属する。
【００４０】
命令デコーダ５３は、命令レジスタ５２に保持された命令を解読するものであり、ゲート回路やシーケンサ等からなる。
具体的には、命令レジスタ５２に保持された命令に従ってマイクロプログラムメモリ５４にアドレス情報を出力することで、マイクロプログラムメモリ５４から制御信号４６、４８を出力させる。但し、この命令デコーダ５３には命令実行部５５からのフラグ信号４９が入力され、このフラグ信号４９が０（ユーザモード）の場合は、ユーザ命令のみを解読し、スーパバイザ命令に対しては所定のエラー処理だけを行い解読しない。一方、フラグ信号４９が１（スーパバイザモード）の場合は、全ての命令の解読を行う。
【００４１】
プログラムカウンタ４５は、次に実行すべき命令が置かれている主記憶３７４上のアドレスを保持しているカウンタであり、命令デコーダ５３が１個の命令を解読するごとにアドレスは更新される。
マイクロプログラムメモリ５４は予め各命令に対応するマイクロプログラム（マイクロコードの集まり）を格納しているＲＯＭであり、命令デコーダ５３から指示されたアドレスに対応するマイクロコードを制御信号４６として命令実行部５５やバスＩ／Ｆ６８３に出力する。これによって、各命令が示す演算等の処理が完遂される。
【００４２】
図８（ｂ）は、マイクロプログラムメモリ５４によって定義されている命令セット及び各命令の特権レベル（種別）を示す図である。
この命令セットには、汎用のマイクロプロセッサが備えるデータ転送命令ｍｏｖｅ、ｒｅａｄ、ｗｒｉｔｅ、演算命令ａｄｄ、制御命令ｓｔｏｐ、ｒｅｓｅｔ、ｓｅｅｋ、ｏｓ＿ｃａｌｌ、ｏｓ＿ｒｅｔｕｒｎの他に、本マイクロプロセッサ３７１に特有の命令ｒｅａｄ＿ａｖ，ｄｅｃｒｙｐｔ＿ａｖ，ｄｅｃｏｄｅ＿ｍｐｅｇが含まれている。これらのうち主な命令の意味は以下の通りである。
【００４３】
ｓｔｏｐ命令はスーパバイザ命令に属し、マイクロプロセッサ３７１の動作を一時的に停止させる制御命令である。
ｒｅｓｅｔ命令はスーパバイザ命令に属し、マイクロプロセッサ３７１を電源投入時の初期状態にさせる制御命令である。
ｒｅａｄ命令はユーザ命令に属し、Ｉ／Ｏバス６６に接続された装置から主記憶３７４に非ＡＶデータを読み出すための転送命令である。なお、上述したディスク再生ドライブ３５用のｄｓｋ  ｒｅａｄ命令は、このｒｅａｄ命令に基づいて制御部３７から発せられる。
【００４４】
ｒｅａｄ＿ａｖ命令はスーパバイザ命令に属し、Ｉ／Ｏバス６６に接続された装置から主記憶３７４にＡＶデータを読み出すための転送命令である。
なお、上述したディスク再生ドライブ３５用のｄｓｋ  ｒｅａｄ＿ａｖ命令は、このｒｅａｄ＿ａｖ命令に基づいて制御部３７から発せられる。ｓｅｅｋ命令はユーザ命令に属し、ディスク再生ドライブ３５の光ヘッド４１０をＤＶＤ−ＲＯＭ３１上の読み出し位置に移動させるための制御命令である。通常、ｒｅａｄ命令、ｒｅａｄ＿ａｖ命令の発行に先立って用いられる。
【００４５】
ｄｅｃｒｙｐｔ＿ａｖ命令はスーパバイザ命令に属し、主記憶３７４にロードされているデジタルデータを順次レジスタ群５６に読み出した後にＡＬＵ５７及びＤＥＣＲＹＰＴ部５９によって復号化しその結果を主記憶３７４に再格納するための演算命令である。
ｄｅｃｏｄｅ＿ｍｐｅｇ命令はユーザ命令に属し、主記憶３７４にロードされているＭＰＥＧデータを順次レジスタ群５６に読み出した後にＡＬＵ５７及びＩＤＣＴ部５８によりＭＰＥＧデコードのための伸長処理（逆符号化、逆量子化、逆ＤＣＴ）を施しその結果得られた映像データと音声データを主記憶３７４に再格納するための演算命令である。
【００４６】
ｗｒｉｔｅ命令はユーザ命令に属し、主記憶３７４に格納されたデータをＩ／Ｏバス６６に接続された装置に出力するための転送命令である。上記ｄｅｃｏｄｅ＿ｍｐｅｇ命令により得られた映像データ及び音声データは、この命令によりビデオ信号処理部６７に転送される。
ｏｓ＿ｃａｌｌ命令はユーザ命令に属し、ユーザプログラムからオペレーティングシステムに実行を移行させるための分岐命令である。
【００４７】
ｏｓ＿ｒｅｔｕｒｎ命令はスーパバイザ命令に属し、オペレーティングシステムからユーザプログラムに実行を復帰させるための分岐命令である。次に、ｏｓ＿ｃａｌｌ及びｏｓ＿ｒｅｔｕｒｎの一般的概念を説明する。
図９（ａ）は、ｏｓ＿ｃａｌｌを実行した場合におけるマイクロプロセッサ３７１の処理の流れを示す図である。
【００４８】
図９（ｂ）は、図９（ａ）に示されたデスクリプタテーブル８１を構成する１個のデスクリプタ８４のフォーマットを示す図である。
ここで、オペレーティングシステム（ＯＳ）８２は主記憶３７４に置かれたシステムルーチン８３の集合であり、各システムルーチン８３にはスーパバイザ命令が多用されている。
【００４９】
ユーザプログラム８６は主記憶３７４に置かれたユーザ独自のプログラム等であり、この中から複数のシステムルーチン８３を呼び出している。
デスクリプタテーブル８１は主記憶３７４に置かれたデータテーブルであり、各システムルーチン８３のアドレスを示すＯＳエントリーアドレス８５等を有するデスクリプタ８４の集合である。
【００５０】
図９（ａ）に示されるように、マイクロプロセッサ３７１は、プログラムカウンタ４５が示す実行すべき命令がｏｓ＿ｃａｌｌ命令であると解読すると（ｓｔｅｐ１）、ステータスレジスタ５６１に格納されているステータスやプログラムカウンタ４５に格納されているアドレス等を主記憶３７４に一時的に退避させると共に、ステータスレジスタ５６１の動作モードをユーザモードからスーパバイザモードに書き換える（ｓｔｅｐ２）。
【００５１】
続いて、ｏｓ＿ｃａｌｌ命令に伴って指定されたコール番号＃ｎを参照することで、デスクリプタテーブル８１中の対応するデスクリプタ＃ｎからＯＳエントリーアドレス８５を読み出し、プログラムカウンタ４５に格納する（ｓｔｅｐ３、４）。
これによって、実行の制御はユーザプログラム８６からＯＳ８２に移行され、システムルーチン８３が実行される（ｓｔｅｐ５、６）。
【００５２】
そして、システムルーチン８３の最後に置かれたｏｓ＿ｒｅｔｕｒｎ命令を解読すると、マイクロプロセッサ３７１は、ｓｔｅｐ２で退避していたステータス及びアドレスを主記憶３７４から読み出してステータスレジスタ５６１及びプログラムカウンタ４５に戻す（ｓｔｅｐ７）。これにより、直前にｏｓ＿ｃａｌｌが実行されたユーザプログラムの箇所に命令の実行が復帰することになる。尚、ステータスレジスタ５６１には以前のステータス情報が格納されるため、動作モードもスーパバイザモードからユーザモードに戻ることになる。
【００５３】
図１０は、本映像情報処理システムが備えるｏｓ＿ｃａｌｌ＃ｎの一部とその意味を示す図である。
ｏｓ＿ｃａｌｌ＃９８は別名ＰＬＡＹ  ＡＶ命令とも呼ばれ、本映像情報処理システムの最も基本的な機能であるＡＶデータの再生を行うためのシステムルーチンであり、４つの命令ｒｅａｄ＿ａｖ、ｄｅｃｒｙｐｔ＿ａｖ、ｄｅｃｏｄｅ＿ｍｐｅｇ、ｗｒｉｔｅが順に実行されるプログラムである。
【００５４】
ｏｓ＿ｃａｌｌ＃９９は別名ＣＯＰＹ命令とも呼ばれ、映像情報処理システムにおいて非ＡＶファイルのコピーを行うためのシステムルーチンであり、２つの命令ｒｅａｄ、ｗｒｉｔｅが順に実行されるプログラムである。
１．１．７．４．３  マイクロプロセッサ３７１の動作
上述した構成を有するマイクロプロセッサ３７１全体の動作は以下の通りである。
【００５５】
プログラムカウンタ４５は、主記憶３７４にロードされたユーザプログラム８６中の次に実行すべき命令が置かれているアドレスを示している。
命令レジスタ５２は、そのプログラムカウンタ４５が示す命令をフェッチする。
命令デコーダ５３は、命令レジスタ５２にフェッチされた命令の特権レベルと命令実行部５５から送られてくるフラグ信号４９（現在の動作モード）とを比較することで、その命令の実行が許可されているか否かを判断する。
【００５６】
その結果、許可されていない場合には所定のエラー処理を行い、許可されている場合にはその命令に対応するマイクロプログラムのアドレスをマイクロプログラムメモリ５４に順次出力する。
このようにして、マイクロプロセッサ３７１は、フェッチした命令の特権レベルを監視することで、特権違反、即ち、動作モードがユーザモードであるにも拘わらずスーパバイザ命令を実行することを禁止している。
【００５７】
ところで、このマイクロプロセッサ３７１では、ｒｅａｄ＿ａｖ命令、ｄｅｃｒｙｐｔ＿ａｖ命令は、マイクロプログラムメモリ５４においてスーパバイザ命令として定義されている。従って、ユーザはこれら命令を単独で用いたプログラムを作成し実行させることはできない。
例えば、ｒｅａｄ＿ａｖ命令とｗｒｉｔｅ命令を用いることで、主記憶３７４に読み出したＡＶデータをハードディスク装置６４にコピーする等のアプリケーションプログラムを実行させることはできない。一方、ｒｅａｄ＿ａｖ命令とｄｅｃｒｙｐｔ＿ａｖ命令は、一体化されたユーザ命令ＰＬＡＹ  ＡＶとなってＯＳ８２の一部としてユーザに提供されている。
【００５８】
従って、ユーザはＰＬＡＹ  ＡＶ命令を含むプログラムを作成し実行することはできる。このとき、ｒｅａｄ＿ａｖ命令とｄｅｃｒｙｐｔ＿ａｖ命令は常に不可分となって実行される。例えば、ユーザは、ＡＶデータの再生を伴うアプリケーションプログラムを作成し実行させることはできるが、ＡＶデータの読み出しと書き出しというデータ転送（コピー）のみを行うアプリケーションプログラムを作成し実行させることはできない。
１．１．７．５  制御部３７の初期動作
以上のように構成された制御部３７の初期動作について説明する。
【００５９】
本映像情報処理システムに電源が投入されると、制御部３７はハードディスク装置６４に格納されたＯＳ８２及びユーザプログラム８６を主記憶３７４にロードする。
このＯＳ８２には図８２に示されるＰＬＡＹ  ＡＶやＣＯＰＹのシステムルーチン８３が含まれる。また、ユーザプログラム８６にはそれらＰＬＡＹＡＶ及びＣＯＰＹを呼び出すルーチンの他に一般的な処理（本映像情報処理システムとユーザとの対話）を行うルーチン等が含まれている。
【００６０】
また、制御部３７は、ディスク再生ドライブ３５にＤＶＤ−ＲＯＭ３１が装着されたことを検出すると、ＯＳ８２の制御の下でそのＤＶＤ−ＲＯＭ３１のファイル管理情報２１を主記憶３７４にロードする。
制御部３７はこのファイル管理情報２１をＩＳＯ１３３４６規格に従って検索することにより、各ファイル名からＤＶＤ−ＲＯＭ３１上の記録アドレスを算出する。
１．２  映像情報処理システムの動作
次に、以上のように構成された本映像情報処理システム全体の動作を説明する。
【００６１】
ＡＶデータを再生する場合と非ＡＶデータをコピーする場合に分けて説明する。
１．２．１  ＡＶデータの再生動作
図１１は、本映像情報処理システムがＡＶデータを再生する場合の動作を示すフローチャートである。
【００６２】
制御部３７は、入力部６５、ディスプレイ装置７１を制御することでユーザからＡＶデータを再生する旨の要求を検出すると、ユーザプログラム８６中に置かれたｏｓ＿ｃａｌｌ＃９８（ＰＬＡＹ  ＡＶ）の実行を開始する。
命令解読部５１は、フェッチした命令がＰＬＡＹ  ＡＶであると判断すると、ステータスレジスタ５６１の値を主記憶３７４に退避させた後に、動作モードをユーザモードからスーパバイザモードに変更するようステータスレジスタ５６１の値を更新する。これにより、命令実行部５５から命令解読部５１に出力されているフラグ信号４９はスーパバイザモードを示すように変更される（ｓ１２０１）。
【００６３】
命令解読部５１は、さらに、プログラムカウンタ４５の値を主記憶３７４に退避させ、デスクリプタテーブル８１内のｏｓ＿ｃａｌｌ＃９８に対応するデスクリプタ８４に含まれるＯＳエントリーアドレス８５をプログラムカウンタ４５に格納する。これにより、ＯＳ８２内のシステムルーチンＰＬＡＹ  ＡＶのエントリアドレスがプログラムカウンタ４５にセットされることになる（ｓ１２０２）。
【００６４】
命令解読部５１はプログラムカウンタ４５の値を参照することで、システムルーチンＰＬＡＹ  ＡＶの先頭に位置するｒｅａｄ＿ａｖ命令を命令レジスタ５２に読み出す（ｓ１２０３）。
命令レジスタ５２に格納されたｒｅａｄ＿ａｖ命令は命令デコーダ５３により、現在の動作モードでの実行が許可されている命令か否か検証される。ｒｅａｄａｖ命令はスーパバイザ命令であるが、命令デコーダ５３は命令実行部５５から入力されるフラグ信号４９により、現在のマイクロプロセッサ３７１の動作モードがスーパバイザモードであることを検出しているためｒｅａｄ＿ａｖの実行を許可する（ｓ１２０４、ｓ１２０５）。
【００６５】
命令デコーダ５３はｒｅａｄ＿ａｖ命令に対応するマイクロプログラムのアドレスをマイクロプログラムメモリ５４に出力する。マイクロプログラムメモリ５４は、上記アドレスにより指定されたマイクロコードを順次バスＩ／Ｆ６８３に出力することにより、ディスク再生ドライブ３５にＡＶデータ読み出し命令（ｄｓｋ  ｒｅａｄ＿ａｖ）を送出する。
【００６６】
このＡＶデータ読み出し命令（ｄｓｋ  ｒｅａｄ＿ａｖ）が入力されたディスク再生ドライブ３５は、読み出しが指定されたデジタルデータをＤＶＤ−ＲＯＭ３１から読み出し、その中のユーザデータ１４をユーザデータ用メモリ４０３に、ＣＧＭＳ制御データ１３をＣＧＭＳ制御データ用メモリ４０２に格納する。
ディスク再生ドライブ３５はユーザデータ用メモリ４０３に格納されたデジタルデータを暗号回路４０６により暗号化し、ユーザデータ１４（２０４８バイト）とＣＧＭＳ制御データ１３（６バイト）の合計である２０５４バイトのデータを転送単位として制御部３７に出力する。このようにして制御部３７の主記憶３７４に暗号化されたＭＰＥＧデータが格納される（ｓ１２０７の（１））。
【００６７】
制御部３７の命令解読部５１はプログラムカウンタ４５のアドレス値をインクリメントし、次にｄｅｃｒｙｐｔ＿ａｖ命令を命令レジスタ５２に読み出す（ｓ１２０３）。
命令レジスタ５２に格納されたｄｅｃｒｙｐｔ＿ａｖ命令は命令デコーダ５３により、現在の動作モードでの実行が許可されている命令か否か検証される。ｄｅｃｒｙｐｔ＿ａｖ命令はスーパバイザ命令であるので、命令デコーダ５３は命令実行部５５から入力されるフラグ信号４９により、現在のマイクロプロセッサ３７１の動作モードがスーパバイザモードであることを検出しているためｄｅｃｒｙｐｔ＿ａｖ命令の実行を許可する（ｓ１２０４、ｓ１２０５）
命令デコーダ５３はｄｅｃｒｙｐｔ＿ａｖ命令に対応するマイクロプログラムのアドレスをマイクロプログラムメモリ５４に出力する。マイクロプログラムメモリ５４は、アドレスにより指定されたマイクロコードを順次命令実行部５５に出力することにより、主記憶３７４に格納されている暗号化されたＭＰＥＧデータを復号させる（ｓ１２０７の（２））。
【００６８】
命令解読部５１はプログラムカウンタ４５のアドレス値をさらにインクリメントし、次にｄｅｃｏｄｅ＿ｍｐｅｇ命令を命令レジスタ５２に読み出す（ｓ１２０３）。
命令レジスタ５２に格納されたｄｅｃｏｄｅ＿ｍｐｅｇ命令は命令デコーダ５３により、現在の動作モードでの実行が許可されている命令か否か検証される。ｄｅｃｏｄｅ＿ｍｐｅｇ命令はユーザ命令であるため、実行が許可される（ｓ１２０４、ｓ１２０５）。
【００６９】
命令デコーダ５３はｄｅｃｏｄｅ＿ｍｐｅｇ命令に対応するマイクロプログラムのアドレスをマイクロプログラムメモリ５４に出力する。マイクロプログラムメモリ５４は、アドレスにより指定されたマイクロコードを順次命令実行部５５に出力することにより、主記憶３７４に格納されている復号化されたＭＰＥＧデータをデコードして映像データと音声データに変換させる（ｓ１２０７の（３））。
【００７０】
命令解読部５１はプログラムカウンタ４５のアドレス値をさらにインクリメントし、次にｗｒｉｔｅ命令を命令レジスタ５２に読み出す（ｓ１２０３）。
命令レジスタ５２に格納されたｗｒｉｔｅ命令は命令デコーダ５３により、現在の動作モードでの実行が許可されている命令か否か検証される。ｗｒｉｔｅ命令はユーザ命令であるため、実行が許可される（ｓ１２０４、ｓ１２０５）。
【００７１】
命令デコーダ５３はｗｒｉｔｅ命令に対応するマイクロプログラムのアドレスをマイクロプログラムメモリ５４に出力する。マイクロプログラムメモリ５４は、アドレスにより指定されたマイクロコードをバスＩ／Ｆ６８３に出力することにより、主記憶３７４に格納されている映像データ及び音声データをビデオ信号処理部６７に出力する。
【００７２】
ビデオ信号処理部６７は、入力された映像データ及び音声データを映像信号及び音声信号に変換した後にディスプレイ装置７１及びスピーカ６０に映像出力及び音声出力する（ｓ１２０７の（４））。
最後に、システムルーチンＰＬＡＹ＿ＡＶの最後尾に置かれたｏｓ＿ｒｅｔｕｒｎ命令が実行される（ｓ１２０８）。
【００７３】
ｏｓ＿ｒｅｔｕｒｎ命令が命令解読部５１により解釈されると、命令解読部５１は主記憶３７４に退避させていたステータス情報をステータスレジスタ５６１に戻す。このとき、格納されるステータス情報の動作モードはユーザモードであるため、これによって、命令実行部５５から命令解読部５１に出力されているフラグ信号４９はユーザモードを示すよう変更される（ｓ１２０９）。
【００７４】
命令解読部５１は、さらに、プログラムカウンタ４５の値を主記憶３７４に退避させていたアドレス値に戻すことで、このｏｓ＿ｃａｌｌ＃９８を呼び出したユーザプログラム８６へ実行制御を復帰させる（ｓ１２１０）。
図１２は、以上のようにＡＶデータが再生される場合におけるディスプレイ装置７１の表示を示す図である。
【００７５】
ディスプレイ装置７１の表示領域７２において、流れ星を示す映画の一シーンがＭＰＥＧ動画表示領域７３に表示されている。同時に、表示領域７２の左下においては、コントロールパネル７４とマウスポインタ７５が表示されている。ユーザは、マウス７０を用いてコントロールパネル７４のボタンをポイントすることで、対話的にＡＶデータの再生を楽しむことができる。
１．２．２  非ＡＶデータのコピー動作
次に非ＡＶデータをコピーする場合における本映像情報処理システムの動作について、上記ＡＶデータの再生動作と相違する点を中心に説明する。
【００７６】
制御部３７は、入力部６５、ディスプレイ装置７１を制御することでユーザから非ＡＶファイルをコピーする旨の要求を検出すると、ユーザプログラム８６中に置かれたｏｓ＿ｃａｌｌ＃９９（ＣＯＰＹ）の実行を開始する。
システムルーチンＣＯＰＹは、図１０に示されるように、ユーザ命令（ｒｅａｄ命令及びｗｒｉｔｅ命令）のみから構成されるので、マイクロプロセッサ３７１の動作モードについての制限はない。
【００７７】
命令解読部５１は、ｒｅａｄ命令を解読すると、ディスク再生ドライブ３５にデータ読み出しコマンド（ｄｓｋ＿ｒｅａｄ）を発行する。
ディスク再生ドライブ３５は、入力されたデータ読み出しコマンド（ｄｓｋ＿ｒｅａｄ）に従って、指定されたデジタルデータをＤＶＤ−ＲＯＭ３１から読み出し、その中のユーザデータ１４をユーザデータ用メモリ４０３に、ＣＧＭＳ制御データ１３をＣＧＭＳ制御データ用メモリ４０２に格納する。
【００７８】
そして、マイクロプロセッサ４０９は、ＣＧＭＳデータ識別回路４０４によって、ユーザデータ用メモリ４０３に読み出したユーザデータがＡＶデータか否かを判定する。その結果、非ＡＶデータであればそれを制御部３７に出力する。
一方、ＡＶデータであれば著作権保護処理として全てのユーザデータ１４をＮＵＬＬデータに書き換えた後に、制御部３７に出力する。
【００７９】
続いて、命令解読部５１は、ｗｒｉｔｅ命令を解読すると、制御部３７に読み出されたデジタルデータを指定されたコピー先の装置、例えば、ハードディスク装置６４に書き出す。
このようにして、本映像情報処理システムは、ユーザから非ＡＶファイルをコピーする旨の要求を受けると、指定されたファイルの内容が非ＡＶデータである場合にはコピーを実行するが、ＡＶデータである場合にはそれをＮＵＬＬデータに置換することで実質的なコピーを禁止している。これは、非ＡＶファイルのコピーのみが許されたユーザがＡＶファイルを不正にコピーするという著作権侵害行為を禁止するためである。
１．３  まとめ
以上のように、本実施例に係る映像情報処理システムによれば、マイクロプロセッサ３７１は、汎用のマイクロプロセッサが備える命令セットに加えて、ＭＰＥＧデータの再生に適した特有の命令（ｒｅａｄ＿ａｖ、ｄｅｃｏｄｅ＿ｍｐｅｇ、ｄｅｃｒｙｐｔ＿ａｖ等）を備えている。従って、これら命令を用いた簡易なアプリケーションプログラムを作成することで高機能なＡＶデータ再生システムを構築することができ、従来の映像情報処理システムに必要とされたＭＰＥＧデコーダ６３の如く独立したカードモジュールは不要となる。これにより、従来のハードウェアデコードでななくソフトウェアデコードによる再生システムが容易に実現される。
【００８０】
また、本映像情報処理システムによれば、ＤＶＤ−ＲＯＭ３１に格納されたＡＶデータを読み出す命令（ｒｅａｄ＿ａｖ命令）とそれを復号化する命令（ｄｅｃｒｙｐｔ＿ａｖ命令）と複号化されたＡＶデータをデコードする命令（ｄｅｃｏｄｅ＿ｍｐｅｇ命令）とは、一つのシステムルーチン８３を構成し一体不可分となって実行される。従って、ＤＶＤ−ＲＯＭ３１に格納されたＭＰＥＧデータをＭＰＥＧデコードすることなく他の装置にコピーするという不正行為や誤動作が防止される。つまり、圧縮されたＭＰＥＧデータが伸長されることなく他の用途に利用されるという最悪の事態が回避される。
【００８１】
また、本映像情報処理システムによれば、ディスク再生ドライブ３５から出力されるＡＶデータは暗号化されている。従って、Ｉ／Ｏバス６６を介してＡＶデータを不正に読み出したり、何らかの原因でディスク再生ドライブ３５から読み出したＡＶデータが復号されることなく主記憶３７４に残存しそれが不正に利用されたりすることが防止される。
【００８２】
また、本実施例のマイクロプロセッサ３７１によれば、ｒｅａｄ＿ａｖ命令はスーパバイザ命令として定義されており、マイクロプロセッサ３７１の動作モードがスーパバイザモードの時のみに実行が限定される。このため、例えば、ユーザプログラム８６に誤りがあり、ｒｅａｄ＿ａｖ命令がＭＰＥＧデコード処理と切り離されて実行された場合でも、ユーザプログラム８６はユーザモードで動作するため、マイクロプロセッサ３７１はｒｅａｄ＿ａｖ命令を実行しない。これにより、ＡＶファイルが映像再生される事なく主記憶３７４に読み出される誤動作が防止される。
【００８３】
また、本実施例のマイクロプロセッサ３７１によれば、暗号デジタルデータの復号化を行うｄｅｃｒｙｐｔ＿ａｖ命令はスーパバイザ命令として定義されており、マイクロプロセッサ３７１の動作モードがスーパバイザモードの時のみに実行が限定される。このため、例えば、ユーザプログラム８６に誤りがあり、結果として主記憶３７４やハードディスク装置６４に伝送中のデジタルデータが残存し、さらに、暗号デジタルデータを復号するｄｅｃｒｙｐｔ＿ａｖ命令がＭＰＥＧデコード処理と切り離されて実行された場合にでも、ユーザプログラム８６はユーザモードで動作するため、マイクロプロセッサ３７１はｄｅｃｒｙｐｔ＿ａｖ命令の実行をしない。これにより、ＡＶファイルが映像再生処理を伴わずに復号される誤動作が防止される。
【００８４】
尚、本実施例のマイクロプロセッサ３７１は、システムルーチンＰＬＡＹ＿ＡＶを構成するｒｅａｄ＿ａｖ命令の実行において、Ｉ／Ｏバス６６を介してディスク再生ドライブ３５にＡＶデータ読み出し命令（ｄｓｋ＿ｒｅａｄ＿ａｖ）を発行したが、本発明はこのような経路に限定されるものではない。例えば、ディスク再生ドライブ３５にＡＶデータ読み出しコマンドを発行する独立した回路を設け、このコマンド発行回路にマイクロプロセッサ３７１の動作状態を示す信号線を入力し、マイクロプロセッサ３７１がユーザモードの時はこのコマンド発行を抑制する構成としてもよい。
【００８５】
また、本実施例のシステムルーチンＰＬＡＹ＿ＡＶにはｗｒｉｔｅ命令も含まれていたが、これを含めないルーチンとすることもできる。暗号化されていない圧縮されたＭＰＥＧデータが主記憶３７４に残留することのみを回避する観点からは、少なくとも、ｒｅａｄ＿ａｖ命令とｄｅｃｒｙｐｔ＿ａｖ命令とｄｅｃｏｄｅ＿ｍｐｅｇ命令とが連続して実行されれば良いからである。つまり、ＭＰＥＧデコード処理が施された後の映像データ等は、そのデータ量が莫大であり、２次記憶装置への一括記録が現実的でないため、ＭＰＥＧデータのみを対象とした著作権保護が実現されれば十分であると考えるアプリケーション制作者にとっては有効だからである。
２．  第２実施例
次に、本発明の第２実施例に係る映像情報処理システムについて説明する。
【００８６】
本システムは、著作物の不正コピーを防止するために、マイクロプログラムによって実現したＡＶデータ再生命令を実行するマイクロプロセッサを備えることを特徴とする。
２．１  映像情報処理システムの構成
本映像情報処理システムは、第１実施例と基本的な構成は同様である。
【００８７】
但し、本映像情報処理システムのマイクロプロセッサ３７１は、第１実施例のマイクロプログラムメモリ５４に代えて異なるマイクロプログラムを有するマイクロプログラムメモリ１０４を備えている。以下、第１実施例との相違点を中心に説明する。
２．１．１  マイクロプログラムメモリ１０４
図１３は、マイクロプログラムメモリ１０４に格納されている命令と対応するマイクロプログラムを示す図である。
【００８８】
ｐｌａｙ＿ａｖ命令１０４１は、大きく４つの処理、即ち、（１）ディスク再生ドライブ３５にｄｓｋ＿ｒｅａｄ＿ａｖ命令を発行することでＤＶＤ−ＲＯＭ３１から暗号化されたＭＰＥＧデータを主記憶３７４に読み出し、（２）読み出したＭＰＥＧデータを復号化し、（３）復号化されたＭＰＥＧデータをデコードし、（４）デコードによって得られた映像データ及び音声データをビデオ信号処理部６７に転送するマイクロプログラムからなる。
【００８９】
なお、このｐｌａｙ＿ａｖ命令は、ユーザ命令として定義されている。
また、第１実施例では定義されていたｒｅａｄ＿ａｖ命令及びｄｅｃｒｙｐｔ＿ａｖ命令は、このマイクロプログラムメモリ１０４には格納されていない。つまり、本実施例では、第１実施例において単独の命令として定義されていたｒｅａｄ＿ａｖ、ｄｅｃｒｙｐｔ＿ａｖ、ｄｅｃｏｄｅ＿ｍｐｅｇが一体化されて１個のｐｌａｙ＿ａｖ命令として定義されていると見ることができる。、
２．２  映像情報処理システムの動作
図１４は、ユーザプログラム８６中に置かれたｐｌａｙ＿ａｖ命令が実行された際の本映像情報処理システムの動作を示すフロチャートである。
【００９０】
先ず、命令レジスタ５２は主記憶３７４からｐｌａｙ＿ａｖ命令をフェッチする（ｓ１３０１）。
次に、命令デコーダ５３は、命令レジスタ５２に格納されたｐｌａｙ＿ａｖ命令が現在の動作モードで実行可能な命令か否かを判定する（ｓ１３０２）。
ここでは、動作モードがユーザモードであることとｐｌａｙ＿ａｖ命令がユーザ命令であることから、命令デコーダ５３は、この命令の実行が許可されていると判断する（ｓ１３０３）。
【００９１】
続いて、命令デコーダ５３は、ｐｌａｙ＿ａｖ命令に対応するマイクロプログラムのアドレスをマイクロプログラムメモリ１０４に出力する（ｓ１３０５）。
マイクロプログラムメモリ１０４は入力されたアドレスに従い、ｐｌａｙ＿ａｖ命令のマイクロプログラムを構成する一連のマイクロコードを出力する（ｓ１３０５）。
【００９２】
その結果、本実施例の制御部３７は、（１）ディスク再生ドライブ３５にｄｓｋ＿ｒｅａｄ＿ａｖ命令を発行することによってＤＶＤ−ＲＯＭ３１から主記憶３７４にＭＰＥＧデータを読み出し、（２）読み出したＭＰＥＧデータを復号し、（３）復号化されたＭＰＥＧデータをデコードし、（４）デコードによって得られた映像データ及び音声データをビデオ信号処理部６７に転送する（ｓ１３０６）。
【００９３】
このように、ユーザは、第１実施例の場合と同様に、本映像情報処理システムと対話しながらＡＶデータの再生を楽しむことができる。
２．３  まとめ
以上のように、本実施例のマイクロプロセッサ３７１によれば、第１実施例におけるシステムルーチンＰＬＡＹ＿ＡＶに相当する処理が、１個の命令ｐｌａｙ＿ａｖとしてマイクロプログラムメモリ１０４に定義されている。そして、第１実施例で定義されていたｒｅａｄ＿ａｖ命令及びｄｅｃｒｙｐｔ＿ａｖ命令は、本マイクロプログラムメモリ１０４には定義されていない。
【００９４】
従って、ユーザは、ディスク再生ドライブ３５からのＡＶデータの読み出し及びその複号化処理とデコード処理とを分離させることはできない。つまり、ディスク再生ドライブ３５からＭＰＥＧデータを読み出して復号化するが、ＭＰＥＧデコード処理を施すことなく圧縮されたＭＰＥＧデータをそのまま他の装置にコピーする等の不正行為をすることはできない。
ここで、本映像情報処理システムは、上述の如く、デジタル著作物の不正コピーや誤動作に基づく著作権侵害を防止している点で第１実施例と共通するが、その防止の程度が異なる。
【００９５】
つまり、第１実施例では、不正者はスーパバイザモードになる手段を持っていないことや、誤動作がユーザモード時に生じること等が前提とされたが、本実施例では、それら前提を必要とすることなく、上記不正や侵害が防止される。
それは、本実施例では、ｐｌａｙ＿ａｖ命令自体はユーザ命令として定義されていること、及び、ＡＶデータの読み出し処理及び復号化処理とデコード処理とが不可分となってマイクロプログラムメモリ１０４というマイクロプロセッサ３７１内のＲＯＭに書き込まれているからである。
【００９６】
従って、ユーザは、ｐｌａｙ＿ａｖ命令を構成するマイクロプログラムの一部の処理だけを実行させたり、マイクロプログラムメモリ１０４の内容を変更したりすることは勿論できない。
また、外部からマイクロプロセッサ３７１に入力される割り込み要求は、１個の命令の実行が完全に終了した時、即ち、マイクロプログラムの実行が完全に終了した時に命令デコーダ５３により受け付けられる。従って、ｐｌａｙ＿ａｖ命令の実行中において割り込み要求が発生した場合であっても、それら３つの処理が時間的に分離されることはない。
【００９７】
なお、本実施例においては、ディスク再生ドライブ３５は転送するＡＶデータであるデジタルデータを暗号化して出力し、制御部３７において復号しＭＰＥＧデコード処理を施す。このため、映像再生専用のコマンド（ＰＬＡＹ＿ＡＶ）のマイクロプログラムに暗号データの復号処理を含んでいるが、映像再生専用のコマンド（ＰＬＡＹ＿ＡＶ）はＡＶデータの読み出し処理とＭＰＥＧデコード処理が不可分な命令であればよく、ディスク再生ドライブ３５がＡＶデータを暗号化して出力しない構成であれば、映像再生専用のコマンド（ＰＬＡＹ＿ＡＶ）のマイクロプログラムに復号処理が必要とされないことは言うまでもない。
【００９８】
なお、本実施例では、マイクロプログラムメモリ１０４には第１実施例のｒｅａｄ＿ａｖ命令は格納されていなかったが、本発明はこれに限定されるものではない。ユーザプログラム８６においてＭＰＥＧデコード処理を伴わずにＡＶデータの読み出し処理のみを実行するという事態の発生を防止するだけの観点からは、ｒｅａｄ＿ａｖ命令をスーパバイザ命令としてマイクロプログラムメモリ１０４に含ませてもよい。
３．  第３実施例
次に、本発明の第３実施例に係る映像情報処理システムについて説明する。
【００９９】
本システムは、第２実施例の改良であり、長時間に渡って割り込み要求が受け付けられないことを回避する方策を講じたことを特徴とする。
３．１  映像情報処理システムの構成
本映像情報処理システムは、第２実施例と基本的な構成は同様である。
【０１００】
但し、本映像情報処理システムのマイクロプロセッサ３７１は、第２実施例のマイクロプログラムメモリ１０４に代えて異なるマイクロプログラムを有するマイクロプログラムメモリ１１４を備えている。以下、第２実施例との相違点を中心に説明する。
３．１．１  マイクロプログラムメモリ１１４
図１５は、マイクロプログラムメモリ１１４に格納されている命令と対応するマイクロプログラムを示す図であり、第２実施例における図１３に対応する。
【０１０１】
第２実施例では、図１３に示されるようにｐｌａｙ＿ａｖ命令１０４１は大きく４つの処理を行うマイクロプログラムからなったが、本実施例では、図１５に示されるように、ｐｌａｙ＿ａｖ命令１１４２は大きく３つの処理、即ち、（１）主記憶３７４に読み出されたＭＰＥＧデータを復号化し、（２）復号化されたＭＰＥＧデータをデコードし、（３）デコードによって得られた映像データ及び音声データをビデオ信号処理部６７に転送するマイクロプログラムからなる。
【０１０２】
そして、第２実施例では定義されていなかったｒｅａｄ＿ａｖ命令が本実施例のマイクロプログラムメモリ１１４に定義されている。このｒｅａｄ＿ａｖ命令は、第１実施例におけるｒｅａｄ＿ａｖ命令に相当し、ディスク再生ドライブ３５にｄｓｋ＿ｒｅａｄ＿ａｖ命令を発行することでＤＶＤ−ＲＯＭ３１から暗号化されたＭＰＥＧデータを読み出すマイクロプログラムからなる。
【０１０３】
以上のように、本実施例では、第２実施例におけるｐｌａｙ＿ａｖ命令１０４１が本実施例においてｒｅａｄ＿ａｖ命令１１４１とｐｌａｙ＿ａｖ命令１１４２に分離されているとみるとことができる。
なお、ｒｅａｄ＿ａｖ命令及びｐｌａｙ＿ａｖ命令はユーザ命令として定義されている。
【０１０４】
また、外部からマイクロプロセッサ３７１に入力される割り込み要求は１個の命令の実行が完全に終了した時、即ち、マイクロプログラムの実行が完全に終了した時に命令デコーダ５３により受け付けられる点、及びｄｅｃｒｙｐｔ＿ａｖ命令がマイクロプログラムメモリ１１４には格納されていない点は、第２実施例の場合と同様である。
３．２  映像情報処理システムの動作
図１６は、ユーザプログラム８６中に置かれたｒｅａｄ＿ａｖ命令とｐｌａｙ＿ａｖ命令が実行された際の本映像情報処理システムの動作を示すフロチャートである。
【０１０５】
ユーザプログラム８６中のｒｅａｄ＿ａｖ命令がマイクロプロセッサ３７１にフェッチされると、ｒｅａｄ＿ａｖ命令のマイクロプログラムが実行される（ｓ１４００）。その結果、制御部３７からＡＶデータ読み出し命令コマンド（ｄｓｋ＿ｒｅａｄ＿ａｖ）がディスク再生ドライブ３５に出力され、ディスク再生ドライブ３５から読み出された暗号化ＡＶデータが主記憶３７４に保持される（ｓ１４００）。
【０１０６】
ｒｅａｄ＿ａｖ命令のマイクロプログラムの実行が完了すると、命令デコーダ５３は割り込み処理が要求されていないか確認し（ｓ１４０１）、あれば対応する割り込み処理を行う（ｓ１４０９）。補足すると、ディスク再生ドライブ３５にＡＶデータ読み出し命令コマンド（ｄｓｋ＿ｒｅａｄ＿ａｖ）を発行するｒｅａｄ＿ａｖ命令が実行されてから、ディスク再生ドライブ３５からＡＶデータが出力され主記憶３７４に格納されるまでは待ち時間があるため、次の処理であるｐｌａｙ＿ａｖ命令の実行前に他の処理が割り込み処理によって行われることになる（ｓ１４０９）。
【０１０７】
主記憶３７４に暗号化ＡＶデータが格納されると、次にユーザプログラム８６中のｐｌａｙ＿ａｖ命令が実行されることになり、ｐｌａｙ＿ａｖ命令が命令レジスタ５２に読み出される（ｓ１４０２）。
命令デコーダ５３は、そのｐｌａｙ＿ａｖ命令が現在の動作モードで実行可能な命令か否かを判定する（ｓ１４０３、Ｓ１４０４）。ここでは、ユーザプログラム８６が実行されていることから判るように、命令実行部５５からのフラグ信号４９により指定される動作モードはユーザモードであるが、上述のようにｐｌａｙ＿ａｖ命令はユーザ命令であるため、この命令の実行は許可される。
【０１０８】
その結果、命令デコーダ５３は、ｐｌａｙ＿ａｖ命令のマイクロプログラムのアドレスをマイクロプログラムメモリ１１４に出力する（ｓ１４０６）。
マイクロプログラムメモリ１１４は入力されたアドレスに従い、ｐｌａｙ＿ａｖ命令のマイクロプログラムを構成するマイクロコードを出力する（ｓ１４０７）。その結果、主記憶３７４に格納された暗号化ＡＶデータに対して、復号処理とＭＰＥＧデコード処理を施すことで、映像データ及び音声データを生成し、それらをビデオ信号処理部６７に転送し、映像出力と音声出力を行わせる（ｓ１４０７の（１）〜（３））。
【０１０９】
このようにしてｐｌａｙ＿ａｖ命令のマイクロプログラムの実行が完了すれば、命令デコーダ５３により割り込み処理の有無が確認され（ｓ１４０８）、割り込みが発生していれば対応する割り込み処理を行う（ｓ１４１０）。
３．３  まとめ
以上のように、本実施例によれば、第２実施例と相違し、暗号化されたＭＰＥＧデータの読み出しだけを行う命令（ｒｅａｄ＿ａｖ）と、その読み出し以降の再生処理を行う命令（ｐｌａｙ＿ａｖ）とが別個の命令としてマイクロプログラムメモリ１１４で定義されている。従って、第２実施例の場合と比較し、割り込み処理が待たされる時間が短縮される。これにより、ＡＶデータの再生処理と他の処理とを並列実行させる場合のリアルタイム性等を向上することが可能となる。
【０１１０】
また、第２実施例と同様に、暗号化されたＭＰＥＧデータの復号化処理とＭＰＥＧデコード処理とはｐｌａｙ＿ａｖ命令のマイクロプログラムとして一体化されているので、割り込み処理等を用いることによって復号されたＭＰＥＧデータをＭＰＥＧデコードすることなく他の装置にコピーする等の不正行為や誤動作は防止される。
【０１１１】
なお、本実施例では、マイクロプログラムメモリ１１４には第１実施例のｄｅｃｒｙｐｔ＿ａｖ命令は格納されていなかったが、本発明はこれに限定されるものではない。ユーザプログラム８６においてＭＰＥＧデコード処理を伴わずにＡＶデータの読み出し処理のみを実行するという事態の発生を防止するだけの観点からは、ｄｅｃｒｙｐｔ＿ａｖ命令をスーパバイザ命令としてマイクロプログラムメモリ１１４に含ませてもよい。
【０１１２】
また、本実施例のｐｌａｙ＿ａｖ命令のマイクロプログラムにはビデオ信号処理部６７への転送処理が含まれていたが、少なくとも暗号データの復号処理とＭＰＥＧデコード処理とが含まれていれば、このビデオ信号処理部６７への転送処理がｐｌａｙ＿ａｖ命令に含まれていなくてもよい。ＭＰＥＧデコード処理が施された後の映像データ等は、そのデータ量が莫大であり、２次記憶装置への一括記録が現実的でないため、ＭＰＥＧデータのみを対象とした著作権保護が実現されれば十分であると考えるアプリケーション制作者にとっては有効だからである。
【０１１３】
また、上記全ての実施例において、制御部３７は、ＡＶデータのＭＰＥＧデコード処理を行うための専用回路としてマイクロプロセッサ３７１内にＩＤＣＴ部５８を設けたがこれに限定されるものではなく、制御部３７がＭＰＥＧデータのデコード処理を行う構成であれば良いので、ＤＳＰ等でもよい。さらには、マイクロプロセッサ３７１自体の演算能力が十分に高ければこのような専用回路を持つ必要がないことは言うまでもない。また、ＩＤＣＴ部５８はマイクロプロセッサ３７１の内部の専用回路としたが、マイクロプロセッサ３７１とは別の周辺チップとしてＩＤＣＴ部５８、あるいはＤＳＰ等のＭＰＥＧデコード処理を補助する専用回路を設ける構成とすることもできる。
【０１１４】
同様に、制御部３７は、ＡＶデータの復号処理を行うための専用回路として、マイクロプロセッサ３７１内にＤＥＣＲＹＰＴ部５９を設けたが、制御部３７が復号処理を行う構成であれば良いので、ＤＳＰ等でもよい。さらには、マイクロプロセッサ３７１自体の演算能力が十分に高ければこのような専用回路を持つ必要がないことは言うまでもない。また、ＤＥＣＲＹＰＴ部５９はマイクロプロセッサ３７１の内部の専用回路としたが、マイクロプロセッサ３７１とは別の周辺チップとしてＤＥＣＲＹＰＴ部５９、あるいはＤＳＰ等の復号処理を補助する専用回路を設ける構成とすることもできる。
【０１１５】
また、上記全ての実施例において、ディスク再生ドライブ３５はデータ読み出し用コマンド（ｄｓｋ＿ｒｅａｄ）によってＡＶデータの出力を命じられた際には、著作権保護処理としてＮＵＬＬデータを出力したが、この出力を中断する方法であってもよい。
また、上記全ての実施例において、制御部３７は、ＭＰＥＧデコード処理が行われて生成された映像データと音声データとをＩ／Ｏバス６６を介してビデオ信号処理部６７に転送したが、ビデオ信号処理部６７へのデータ伝送のための伝送路はＩ／Ｏバス６６に限るものではなく、例えば、制御部３７とビデオ信号処理部６７との専用データ回線を設け、この専用データ回線を介して伝送しても良い。
４．  第４実施例
次に、本発明の第４実施例に係る映像情報処理システムについて説明する。
【０１１６】
本システムは、特定のデータ領域へのアクセスを禁止する手段を備えたことを特徴とする。
４．１  映像情報処理システムの構成
本映像情報処理システムは、第１実施例と基本的な構成は同様である。
【０１１７】
但し、本映像情報処理システムのマイクロプロセッサ３７１は、第１実施例の命令解読部５１に代えて異なる命令解読部１５１を備えている。以下、第１実施例との相違点を中心に説明する。
４．１．１  命令解読部１５１
図１７は、本映像情報処理システムのマイクロプロセッサ３７１の命令解読部１５１の構成を示すブロック図である。
【０１１８】
命令解読部１５１は、命令レジスタ１５２、命令デコーダ１５３、マイクロプログラムメモリ１５４、オペランドアドレスレジスタ１５５、領域管理レジスタ１５６、ＡＶモード監視部１５７、動作モードレジスタ１５８及びプログラムカウンタ１４５から構成される。
動作モードレジスタ１５８は、マイクロプロセッサ３７１の現在の動作モードを識別する情報を格納する。マイクロプロセッサ３７１の動作モードには、３つのモード、即ち、スーパバイザモードとユーザモードとＡＶモードがある。
【０１１９】
ユーザモードはユーザプログラム８６が実行される動作モードであり、特定の命令の実行が制限される動作モードである。
スーパバイザモードはオペレーティングシステムが実行される動作モードであり、実行する命令に制限のない動作モードである。すなわち、ユーザプログラム８６により自由に使用されると、マイクロプロセッサ３７１の円滑な動作を保証できなくなる可能性がある命令、例えば、マイクロプロセッサ３７１の動作を停止するＳＴＯＰ命令や、状態をリセットするＲＥＳＥＴ命令については、特権レベルをスーパバイザモードにすることにより、オペレーティングシステムにのみ使用を許可している。
【０１２０】
ＡＶモードは、ＡＶデータを処理するための専用のモードであり、具体的には、ＡＶデータの操作、ＡＶデータであるデジタルデータを得て主記憶３７４にロードする命令の実行、主記憶３７４上の暗号化されているデジタルデータに対する復号化命令の実行、ＭＰＥＧデコード処理のための演算処理、ＭＰＥＧデコード処理により変換された映像データ及び音声データをビデオ信号処理部に転送する命令の実行などのユーザモードでの実行が制限された命令の実行を行うための動作モードである。
【０１２１】
命令レジスタ１５２はプログラムカウンタ１４５が示すアドレスに従って主記憶３７４上の命令をフェッチし保持する。
図１８は、本マイクロプロセッサ３７１が実行する１個の命令のフォーマットを示す図であり、第１実施例における図８（ａ）に対応する。
第１実施例との相違点は、本実施例における命令は特権レベルが２ビットで構成され上記３つのモードのいずれかを特定していることである。なお、特権レベルが２に設定された命令を「ＡＶモード命令」と呼ぶ。
【０１２２】
命令デコーダ１５３は、まず命令レジスタ１５２に格納された命令の特権レベルと動作モードレジスタ１５８に格納された動作モードとを比較することで、特権違反が生じないか判断する。
図１９は、動作モードとその動作モードにおいて実行が許可される命令の種類とを示す図である。
【０１２３】
左欄に示された動作モードにおいて右欄に示された命令以外の命令が命令レジスタ１５２にフェッチされた場合には、命令デコーダ１５３は特権違反が生じたと判断する。特権違反が生じたと判断した場合には、所定のエラー処理のみを行い、その命令を解読しないで終える。
一方、特権違反が生じないと判断した場合には、命令デコーダ１５３は、命令レジスタ１５２にフェッチされた命令を解釈し、マイクロプロセッサ３７１の内部命令であるマイクロプログラムが格納されたマイクロプログラムメモリ１５４のアドレスを順次マイクロプログラムメモリ１５４に出力する。
【０１２４】
マイクロプログラムメモリ１５４は、予めマイクロプログラムと呼ばれる、実際にＡＬＵ部やレジスタ群を制御するマイクロコードが記述されている。このマイクロコードは、レジスタ間のデータ転送、演算命令、比較、などマイクロプロセッサ３７１内部のコンポーネントのそれぞれを直接制御する信号である。
図２０は、このマイクロプログラムメモリ１５４に格納されている命令とその特権レベルを示す図であり、第１実施例の図８（ｂ）に対応する。
【０１２５】
第１実施例との相違点は、ｒｅａｄ＿ａｖ命令とｄｅｃｒｙｐｔ＿ａｖ命令がＡＶモード命令として定義されていることである。
オペランドアドレスレジスタ１５５は、命令レジスタ１５２に格納された命令が対象とするデータ（オペランド）を指定するためのアドレス（以下、「オペランドアドレス」という。）を格納するレジスタである。
【０１２６】
領域管理レジスタ１５６は、主記憶３７４中のＡＶデータ領域と呼ばれる特定領域を特定するための情報を記憶するレジスタである。
図２１は、領域管理レジスタ１５６と主記憶３７４との関係を示す図である。領域管理レジスタ１５６は、ＡＶデータを格納するためのＡＶデータ領域の開始アドレスとサイズのセットを記憶している。
【０１２７】
ＡＶモード監視部１５７は、オペランドアドレスレジスタ１５５に格納されたオペランドアドレスが領域管理レジスタ１５６で管理されている領域内である場合には、動作モードレジスタ１５８に格納された動作モードがＡＶモードであるときにのみそのオペランドアドレスを主記憶３７４に通過させ、その他のモードのときにはそのオペランドアドレスを通過させない。
【０１２８】
一方、ＡＶモード監視部１５７は、オペランドアドレスレジスタ１５５に格納されたオペランドアドレスが領域管理レジスタ１５６で管理されている領域外である場合には、動作モードレジスタ１５８に格納された値に拘わらず、全てのオペランドアドレスを主記憶３７４に通過させる。
４．２  マイクロプロセッサ３７１の動作
次に上述した構成を有するマイクロプロセッサ３７１の動作を説明する。
【０１２９】
命令レジスタ１５２は、プログラムカウンタ１４５が示す、主記憶３７４にロードされたユーザプログラム８６中の命令をフェッチする。
続いて、命令デコーダ１５３は、命令レジスタ１５２に格納された命令の特権レベルと動作モードレジスタ１５８に格納された動作モードとを比較することで、特権違反が生じないか判断する。
【０１３０】
その結果、特権違反が生じたと判断した場合には、所定のエラー処理のみを行い、その命令を解読を中断し次の命令の解読を行う。
一方、特権違反が生じないと判断した場合には、命令デコーダ１５３は、命令レジスタ１５２にフェッチされた命令を解釈し、マイクロプロセッサ３７１の内部命令であるマイクロプログラムが格納されたマイクロプログラムメモリ１５４のアドレスを順次マイクロプログラムメモリ１５４に出力する。
【０１３１】
ここで、例えば、現在のモードがユーザモードであり、ＡＶデータ領域に置かれたＡＶデータにアクセスするｗｒｉｔｅ命令が実行された場合を考える。
このとき、上記条件より、動作モードレジスタ１５８にはユーザモードを示す情報が格納され、オペランドアドレスレジスタ１５５にはＡＶデータ領域内のアドレスが格納されていることになる。
【０１３２】
すると、命令デコーダ１５３は、現在のモードがユーザモードでありｗｒｉｔｅ命令がユーザ命令であることから特権違反は生じないと判断しｗｒｉｔｅ命令の実行を開始する。
ところが、ＡＶモード監視部１５７は、オペランドアドレスレジスタ１５５に格納されたオペランドアドレスがＡＶデータ領域内であり、かつ、動作モードレジスタ１５８に格納された値がユーザモードである旨を示すことから、そのオペランドアドレスが主記憶３７４に出力されることを禁止する。
【０１３３】
これによって、ｗｒｉｔｅ命令の如くユーザ命令の実行によってマイクロプロセッサ３７１がＡＶデータ領域にアクセスすることが禁止される。即ち、ＡＶデータ領域へのデータの読み書きは、動作モードがＡＶモードであって、かつ、ＡＶ命令の実行による場合にのみ限定される。
４．３  まとめ
以上のように、本実施例によれば、マイクロプロセッサ３７１は、ユーザモード及びスーパバイザモードに加えてＡＶモードのいずれかの動作モードを採る。そして、ＡＶデータを処理する専用の命令はＡＶモードでのみ実行が許可される。従って、ＡＶデータに関する命令の実行を制限することが容易になり、ＭＰＥＧデータ等のデジタル著作物の著作権保護に好適な映像情報処理システムが実現される。
【０１３４】
また、たとえ特権違反が生じない命令が実行された場合であっても、ＡＶモード監視部１５７は、非ＡＶモードにおけるＡＶデータ領域へのアクセスを阻止する。従って、主記憶３７４上の特定の領域に置かれたデータへのアクセスが制限されるので、例えば、ＤＶＤ−ＲＯＭ３１から読み出された暗号化ＭＰＥＧデータが復号化されてＡＶデータ領域に置かれている場合には、そのＭＰＥＧデータをｗｒｉｔｅ命令等によって他の装置に不正コピーすること等が防止される。
【０１３５】
なお、本実施例においては、領域管理レジスタ１５６に設定できる開始アドレス及びサイズについての制限を設けなかったが、これら値は固定されているとすることもできる。
また、領域管理レジスタ１５６の値を変更するための命令は、ＡＶ命令又はスーパバイザ命令とすべきであることは言うまでもない。
【０１３６】
また、本実施例では、スーパバイザモードでの実行が許可されている命令は、スーパバイザ命令とユーザ命令だけであったが、これらにＡＶ命令を加えるとすることもできる。
なお、ＡＶモード監視部１５７はマイクロプロセッサ３７１の内部に設けられたが、このような構成に限定されない。例えば、マイクロプロセッサ３７１の動作モードをマイクロプロセッサ３７１の外部に出力する信号線を設け、その信号線の値とマイクロプロセッサ３７１から出力されたオペランドアドレスと領域管理レジスタ１５６に格納されている領域とを比較する別個の外部回路で構成してもよい。
５．  第５実施例
次に、本発明の第５実施例に係る映像情報処理システムについて説明する。
【０１３７】
本システムは、プログラム自体を暗号化したこと、特定のデータメモリへのアクセスを制限したことを特徴とする。
５．１  映像情報処理システムの構成
図２２は、本映像情報処理システムの構成を示すブロック図である。
【０１３８】
本映像情報処理システムは、第１実施例と基本的な構成は同様である。
但し、本映像情報処理システムは、第１実施例のディスク再生ドライブ３５に代えて異なるディスク再生ドライブ３５０を、第１実施例の制御部３７に代えて異なる制御部３８を備えている。以下、第１実施例との相違点を中心に説明する。
５．１．１  ディスク再生ドライブ３５０
図２３は、ディスク再生ドライブ３５０の構成を示すブロック図である。
【０１３９】
本ディスク再生ドライブ３５０は、第１実施例のディスク再生ドライブ３５の暗号回路４０６に代えて認証回路４１１を備えている点を除き、第１実施例と同じ構成である。以下、この認証回路４１１のみ説明する。
認証回路４１１は、このディスク再生ドライブ３５０と相手装置とのデータ転送に先立ち、その相手装置がＡＶデータの処理が許可された正当な機器であるか否かを判断するためのものであり、具体的には、外部から送られてきた認証コードに対して内部に保持する変換回路により変換し、その結果を予め内部に保持する値と一致するか否かを判断する。一致する場合には、その認証コードを送った相手装置が正当であると認証し、その旨をマイクロプロセッサ４０９に通知する。
【０１４０】
マイクロプロセッサ４０９は、認証回路４１１から認証が成功した旨の通知を受けない限りＡＶデータをＩ／Ｏバス６６に出力しない。
なお、ここでの認証が成功するような認証コードを生成するための秘密鍵データと変換アルゴリズムは、予め定められた機器にのみ通知されている。
このように、本ディスク再生ドライブ３５０は、ＡＶデータの転送に先立って機器間の認証処理を行うので、第１実施例のディスク再生ドライブ３５の如くＡＶデータの暗号化は行っていない。
５．１．２  制御部３８
図２２に示されるように、制御部３８は、マイクロプロセッサ３７６、認証部３７９、プロセッサバス６８２、バスＩ／Ｆ６８３、第１の主記憶３７７及び第２の主記憶３７８から構成される。図２と図２２を比較して判るように、第１実施例と異なる構成要素は、マイクロプロセッサ３７６、認証部３７９、第１の主記憶３７７及び第２の主記憶３７８である。
５．１．２．１  認証部３７９
認証部３７９は、ディスク再生ドライブ３５０によって正当な機器であると認証されるための秘密鍵データと変換アルゴリズムを有する回路であり、マイクロプロセッサ３７６からの指示に従い、正当な認証コードを発生する。
５．１．２．２  第１の主記憶３７７
第１の主記憶３７７は、マイクロプロセッサ３７６がアドレス指定によりアクセス可能なメモリであり、複数の命令コードからなるプログラム群がロードされている。
【０１４１】
図２４（ａ）〜図２４（ｃ）は第１主記憶３７７にロードされたプログラム群の内容を説明する図である。
図２４（ａ）に示されるように、第１の主記憶３７７には再生制御プログラム９１とオペレーティングシステムプログラム９２がロードされている。
再生制御プログラム９１は、映像情報処理システムを制御し、ＤＶＤ−ＲＯＭ３１を再生させ、付随するディスプレイ装置７１での映像出力、付随するスピーカ６０での音声出力を行うプログラムである。オペレーティングシステムプログラム９２は、プログラムの起動、タスク管理、ファイル操作などユーザプログラムの制御を行うプログラムである。これらプログラム９１、９２はマイクロプロセッサが解読実行する複数の命令コードからなっている。
【０１４２】
図２４（ｂ）に示されるように、再生制御プログラム９１は命令コードが暗号化されている領域（暗号化領域）９４と、暗号化されていない領域（非暗号化領域）９３、９５を有する。暗号化領域９４に置かれた命令（暗号化命令）は、暗号化関数Ｅｎｃｒｙｐｔ（）を用いて予めコンパイラにより４バイト単位に各命令コードが暗号化されたものである。
【０１４３】
尚、この暗号化は、各命令毎に独立に暗号化されていると共に、各命令の順序をシャッフルする（入れ替える）こともされていない。従って、このように各命令が暗号化されていても、分岐命令の分岐先アドレスがポイントするアドレスには、対象とする命令が正しく存在する。
また、暗号化領域９４には、ＡＶ命令であって、かつ、主に第２の主記憶３７８にロードされたデータにアクセスするような命令コード群（以下、このような命令コード群を「暗号化ＡＶプログラム」という。）が格納されている。さらに、非暗号化領域９３、９５には、暗号化領域９４に置かれたプログラムに実行を移すための命令として、暗号化領域９４へのエントリアドレスをオペランドに持つ暗号化ＡＶプログラム呼び出し命令（ａｖ＿ｃａｌｌ命令）が配置されている。なお、これら命令のロードは、本映像情報処理システムの起動に伴って行われる。
【０１４４】
図２４（ｄ）は、ＡＶ命令群呼び出し命令（ａｖ＿ｃａｌｌ命令）９６の内容を示す。オペランドは、前述した暗号化領域９４へのエントリアドレス９７に加えて、デジタル署名コード９８と、暗号化領域管理データ９９がある。
暗号化領域管理データ９９は、暗号化領域９４の開始アドレスと暗号化領域９４のサイズに関するデータであり、この命令９６が実行されると、図２４（ｃ）に示されるように、後述する暗号化領域管理レジスタ５８２に格納されることになる。すなわち、マイクロプロセッサ３７６はこの暗号化領域管理レジスタ５８２を参照することにより、第１の主記憶３７７にロードされた命令コード群に暗号化領域９４が設けられていることを知ることができる。
【０１４５】
また、デジタル署名コード９８は、暗号化領域９４に置かれた暗号化命令が正規のものか否かを判別するためのコードであり、プログラム作成者の正当性を保証するコード、いわゆる署名に相当するものである。
このデジタル署名コード９８は、生成関数Ｓｉｇｎ（）を用いてプログラム作成者を特定するＩＤコードを暗号化したものであり、生成関数Ｓｉｇｎ（）を知らない第三者には偽造することができない。また、生成関数Ｓｉｇｎ（）の逆関数である解読関数Ｖeｒｉｆｙ（）を知るものにとっては、ＩＤコードを確認することにより、プログラム作成者の特定及びプログラムの正当性の確認が可能になる。
【０１４６】
本実施例では、このプログラム固有のＩＤコードとして、暗号化領域９４のサイズ値を使用している。すなわち、ＤＶＤ−ＲＯＭ３１の制作者は、予めこの生成関数Ｓｉｇｎ（）を用いて暗号化領域９４のサイズをＩＤコードとしてデジタル署名コード９８を作成し、それをａｖ＿ｃａｌｌ命令９６に含ませることで、暗号化領域９４に置かれた暗号化命令が正規のものであることを示すことができる。これにより、正規のデジタル署名コード９８を持たないユーザプログラムの検出や、デジタル署名コード９８や再生制御プログラム９１が改変されたことによる再生制御プログラム９１の正当性が損なわれた事態の検出等が可能になる。
５．１．２．３  第２の主記憶３７８
第２の主記憶３７８は、マイクロプロセッサ３７６がアドレス指定によりアクセス可能なメモリであり、ディスク再生ドライブ３５０から出力されたデジタルデータが格納される。尚、マイクロプロセッサ３７６が指定するアドレスには第２の主記憶３７８と第１の主記憶３７７とを区別するための識別情報も付随されている。
５．１．２．４  マイクロプロセッサ３７６
マイクロプロセッサ３７６は、第１の主記憶３７７にロードされている命令コードを順次実行し、本映像情報処理システム全体の動作を制御する。
５．１．２．４．１  マイクロプロセッサ３７６の構成
図２５は、マイクロプロセッサ３７６の詳細な構成を示すブロック図である。
【０１４７】
マイクロプロセッサ３７６は、命令レジスタ５５１、命令デコーダ５５２、命令実行部５５３、暗号化命令復号部５５４、デジタル署名判定部５５５、ＡＶモード切り替え許可部５５６、アクセス先主記憶判別部５５７、命令実行許可部５５９、レジスタ群５５８及びプログラムカウンタ５６０から構成される。
命令レジスタ５５１は、プログラムカウンタ５６０に格納されたアドレスに置かれた第１の主記憶３７７上の命令をフェッチし保持する。なお、命令のフォーマットは、図１８に示される第４実施例の場合と同じである。
【０１４８】
なお、命令レジスタ５５１に受け付けられた命令は、命令デコーダ５５２に転送されると、次の命令が第１の主記憶３７７から読み出される。これがプログラム終了まで繰り返されることになる。
レジスタ群５５８は、複数のデータの保持及び出力を行う。このレジスタ群５５８には、演算処理等に使用される図示されていない汎用レジスタに加えて、動作モードレジスタ５８１と、暗号化領域管理レジスタ５８２を含む。
【０１４９】
動作モードレジスタ５８１は、第４実施例における動作モードレジスタ１５８と同一の機能を有する。
暗号化領域管理レジスタ５８２には、暗号化領域９４の開始アドレス及びその領域のサイズを格納するためのレジスタである。
デジタル署名判定部５５５は、命令デコーダ５５２からの要求に応答し、入力されるデジタル署名コード９８の正当性を判定する。具体的には、デジタル署名判定部５５５は、逆関数Ｖｅｒｉｆｙ（）によりデジタル署名コード９８を変換して得られる値と、暗号化領域管理レジスタ５８２に格納されている暗号化領域９４サイズとを比較し、等しければＴＲＵＥを、等しくなければＦＡＬＳＥを告知する。前述したように、デジタル署名コード９８は、生成関数Ｓｉｇｎ（）によりＩＤコード（暗号化領域９４のサイズ）を変換した値だからである。
【０１５０】
ＡＶモード切り替え許可部５５６は、デジタル署名判定部５５５よりＴＲＵＥの告知信号があれば、命令デコーダ５５２に対して、動作モードをＡＶモードに変更する命令を実行することを許可する旨の許可信号を出力する。
アクセス先主記憶判別部５５７は、命令デコーダ５５２が指定するアドレスが第１の主記憶３７７か第２の主記憶３７８かを、アドレスに含まれる識別子により判定し、その判定結果を命令実行許可部５５９に告知する。
【０１５１】
命令実行許可部５５９は、動作モードレジスタ５８１に格納された動作モード及びアクセス先主記憶判別部５５７より告知される判定結果を参照し、 命令デコーダ５５２にフェッチされた命令の実行が許可されているか否かを判定し、実行可能であれば命令デコーダ５５２に許可信号を出力する。
この判定は２段階で行われる。まず、特権違反の有無、即ち、現在の動作モードが命令デコーダ５５２にフェッチされている命令の実行に必要とされる動作モードである否かを判定し、特権違反が生じている場合は実行を許可しない。例えば、 ＲＥＳＥＴ命令やＳＴＯＰ命令の実行がユーザモードで行われることとなる場合は実行が禁止される。
【０１５２】
次に、その命令が第２の主記憶３７８にアクセスする命令であれば、現在の動作モードがＡＶモードである時のみ実行を許可する。すなわち、ＡＶモードで実行される再生制御プログラム９１以外のプログラムは、第２の主記憶３７８にアクセスする動作が禁止される。
暗号化命令復号部５５４は、暗号化関数Ｅｎｃｒｙｐｔ（）の逆関数である復号化関数Ｄｅｃｒｙｐｔ（）を実行する回路を有し、命令デコーダ５５２から出力された暗号化命令を復号し、命令デコーダ５５２に返す。
【０１５３】
命令デコーダ５５２は、命令レジスタ５５１に格納された命令を解釈し、マイクロプログラムを有する命令実行部５５３に対して、解釈した実行順序に従った指定アドレスを出力する。
また、命令デコーダ５５２は命令の実行に先立ち、実行が許可されているか否かの検証を行う。具体的には、命令デコーダ５５２は、解釈した命令の実行に必要とされる特権レベルを命令実行部５５３に出力すると共に、解釈した命令が、主記憶に対するアクセスを必要とする命令であれば、そのオペランドに含まれるアクセス先のアドレスをアクセス先主記憶判別部５５７に出力する。そして、命令実行許可部５５９から許可信号が入力されれば命令を実行すべく命令実行部５５３への制御を開始し、一方、許可信号がなければ実行を拒否し所定のエラー処理を行う。
【０１５４】
また、命令デコーダ５５２は、解釈した命令がａｖ＿ｃａｌｌ命令であれば、上記判定処理に加えて、オペランドに格納されるデジタル署名コード９８をデジタル署名判定部５５５に出力し、これに対してＡＶモード切り替え許可部５５６から許可信号が返ってくるとそのａｖ＿ｃａｌｌ命令の実行を行う。なお、前述したように、このａｖ＿ｃａｌｌ命令の実行により、再生制御プログラム９１の暗号化領域９４に関する情報が暗号化領域管理レジスタ５８２に格納されることになる。このため、命令デコーダ５５２は解釈を行う命令が暗号化領域９４内に置かれていた命令であるか否かを暗号化領域管理レジスタ５８２を参照することにより判定し、暗号化命令であると判定した場合は、暗号化命令復号部５５４により、暗号化命令を復号させた後にその命令の解釈及び実行制御を開始する。
【０１５５】
命令実行部５５３は、マイクロプログラムを複数、内部に保持しており、命令デコーダ５５２からアドレス指定を受ければ、指定されたマイクロコードを出力する。
図２６は、この命令実行部５５３に格納された命令と各命令の実行に必要とされる特権レベルの対応関係を示す図である。
【０１５６】
本実施例では、ＳＴＯＰ命令やＲＥＳＥＴ命令がスーパバイザモードでのみ実行を許可され、ディスク再生ドライブ３５０から認証を行いＡＶデータを読み出し、第２の主記憶３７８に映像データをロードするためのｒｅａｄ＿ａｖ命令は、ＡＶ命令として定義されている。
以下、ＤＶＤ−ＲＯＭ３１に格納されたＭＰＥＧデータが映像再生される際に実行される主な命令について説明する。
５．１．２．４．１．１  ａｖ＿ｃａｌｌ命令
ａｖ＿ｃａｌｌ命令はユーザ命令であり、マイクロプロセッサ３７６の実行制御を暗号化領域９４に置かれた再生制御プログラム９１中のＡＶ命令群に分岐させる分岐命令である。
【０１５７】
このａｖ＿ｃａｌｌ命令が実行されると、先ず、動作モードレジスタ５８１を始めとする実行状態のステータスを格納するレジスタ群５５８の各種ステータス値は第２の主記憶３７８上の退避用メモリに退避される。
次に、動作モードレジスタ５８１を書き換えることでＡＶモードに切り替えると共に、暗号化領域管理レジスタ５８２にオペランドに含まれる暗号化領域９４のサイズ及び開始アドレスを設定する。
【０１５８】
さらにプログラムカウンタ５６０に格納されたアドレスを第２の主記憶３７８の退避用メモリに退避させた後に、オペランドに含まれる対応する暗号化ＡＶプログラムのエントリアドレスをプログラムカウンタ５６０に格納する。
これにより、命令の実行制御が暗号化領域９４内の暗号化ＡＶプログラムに移行されて実行が継続される。
【０１５９】
なお、本実施例の暗号化ＡＶプログラムにおいては、光ディスクからデジタルデータを読み出すｒｅａｄ＿ａｖ命令、読み出したデジタルデータにＭＰＥＧ方式のデコード処理を施す各種演算命令、デコードされた映像データ及び音声データをビデオ信号処理部６７、に転送するｗｒｉｔｅ命令が実行されることになる。また、暗号化ＡＶプログラムの再生が完了すれば、ＡＶモードからの復帰命令であるａｖ＿ｒｅｔｕｒｎ命令が実行される。
５．１．２．４．１．２  ｒｅａｄ＿ａｖ命令
ｒｅａｄ＿ａｖ命令は、ＡＶモードでのみ実行が許可されている命令であり、バスＩ／Ｆ６８３を制御し、ディスク再生ドライブ３５０へＡＶデータ読み出し命令（ｄｓｋ＿ｒｅａｄ＿ａｖ）を出力すると共に、認証部３７９を制御してディスク再生ドライブ３５０との間で認証処理を行い、ディスク再生ドライブ３５０からＡＶデータを第２の主記憶３７８にロードする。
【０１６０】
このようにして第２の主記憶３７８にロードされたＭＰＥＧデータは、複数のマイクロプログラムの実行の組み合わせにより、ＭＰＥＧ方式に従った所定の伸長処理のための演算が行われることで、映像データと音声データが生成され、これらが第１の主記憶３７７に格納される。演算処理としては逆ＤＣＴ変換等である。
５．１．２．４．１．３  ｗｒｉｔｅ命令
ｗｒｉｔｅ命令はユーザ命令であり、バスＩ／Ｆ６８３を制御し、指定する装置へ書き込み命令とデジタルデータを出力する。 ＭＰＥＧの伸長処理により変換された映像データ及び音声データはこの命令によりビデオ信号処理部６７に転送されることになる。
５．１．２．４．１．４  ａｖ＿ｒｅｔｕｒｎ命令
ａｖ＿ｒｅｔｕｒｎ命令は、命令の実行をＡＶモードから復帰させるための分岐命令である。
【０１６１】
プログラムカウンタ５６０が示す実行すべき命令がａｖ＿ｒｅｔｕｒｎ命令である場合には、第２の主記憶３７８の退避メモリに退避されていたステータス情報及びアドレスがレジスタ群５５８及びプログラムカウンタ５６０に再格納される。これにより、直前にａｖ＿ｃａｌｌ命令が実行された場合の元の状態に復帰される。なお、動作モードレジスタ５８１にも以前の動作モードが再格納されるため、マイクロプロセッサの動作モードはＡＶモードから、直前の動作モードであるスーパバイザモードあるいはユーザモードに切り替わることになる。
５．１．２．４．２  マイクロプロセッサ３７６の動作
次に、マイクロプロセッサ３７６の動作を説明する。
【０１６２】
命令レジスタ５５１は、第１の主記憶３７７に置かれた再生制御プログラム９１の命令をフェッチする。
命令デコーダ５５２は、命令レジスタ５５１に格納された命令を読み出し、暗号化領域管理レジスタ５８２を参照することで、その命令が暗号化領域９４内に置かれていた命令であると判断した場合には、暗号化命令復号部５５４によりその命令を復号させる。
【０１６３】
命令または暗号化から復号された命令は、命令実行許可部５５９によりその実行が許可されているか否かが判断される。さらに、命令がａｖ＿ｃａｌｌ命令である場合は、ＡＶモード切り替え許可部５５６から許可あるいは非許可を示す信号が出力される。
その結果、その命令の実行が許可されている場合は、命令デコーダ５５２はその命令を解読し、その命令に対応するマイクロプログラムのアドレスを順次命令実行部５５３に出力する。
【０１６４】
一方、その命令の実行が許可されていない場合は、命令デコーダ５５２はその命令の実行を中断し所定のエラー処理を行う。
マイクロプログラムのアドレスの入力を受けた命令実行部５５３は、指定されたマイクロプログラムに従い、演算処理あるいは、バスＩ／Ｆ６８３、認証部３７９に制御信号を出力し、各命令に対応する処理を完遂する。
５．２  映像情報処理システムの動作
次に、以上のように構成された本映像情報処理システム全体のＡＶデータの再生における動作を説明する。
【０１６５】
ＤＶＤ−ＲＯＭ３１の再生は、制御部３８の第１の主記憶３７７にロードされた再生制御プログラム９１が実行されることにより実現される。
再生制御プログラム９１の実行が開始されると、制御部３８は、まず再生すべきＤＶＤ−ＲＯＭ３１上のＡＶファイルを決定する。再生すべきファイルが決定されると、同じく、第１の主記憶３７７にロードされているオペレーティングシステムプログラム９２により、決定されたＡＶファイルを格納するＤＶＤ−ＲＯＭ３１上のセクタアドレスが算出される。
【０１６６】
ＡＶファイルの格納アドレスが算出されると、制御部３８は、再生制御プログラム９１の中でａｖ＿ｃａｌｌ命令を実行する。その結果、制御部３８は、まずマイクロプロセッサの動作モードをユーザモードからＡＶモードに変更する。そして、プログラムカウンタ５６０の実行アドレス値を含めて現在のマイクロプロセッサの実行状態を現すステータス情報を第２の主記憶３７８上の退避用メモリに退避させると共に、暗号化ＡＶプログラムのエントリアドレスをプログラムカウンタ５６０に設定し、命令の実行を暗号化ＡＶプログラムに移行する。
【０１６７】
この移行に際しては、制御部３８は、ａｖ＿ｃａｌｌ命令のオペランドに含まれるデジタル署名コード９８を判定することにより暗号化ＡＶプログラムの正当性を判断し、正当である場合にのみマイクロプロセッサ３７６の動作モードをＡＶモードに変更する。正当でないと判断した場合は暗号化ＡＶプログラムの実行を中断しエラー処理を行う。
【０１６８】
ＡＶモード下でのＡＶプログラムの実行においては、 ａｖ＿ｒｅａｄ命令が実行される。この命令の実行により、ディスク再生ドライブ３５０に対して制御部３８からＡＶデータ読み出し命令（ＡＶ＿ｄｓｋ＿ｒｅａｄ命令）が出力される。
ＡＶ＿ｄｓｋ＿ｒｅａｄ命令を受けたディスク再生ドライブ３５０は、制御部３８から認証コードを受けとり、それを用いて認証処理を行う。
【０１６９】
その結果、認証が成功すれば、ディスク再生ドライブ３５０は、ＡＶデータであるデジタルデータを読み出し出力する。なお、ディスク再生ドライブ３５０は、第１実施例と同様に、読み出されるデジタルデータがＡＶデータか否かをセクタ１０のセクタヘッダ領域を確認することにより判定する。このため、 ＡＶデータ読み出し命令（ＡＶ＿ｄｓｋ＿ｒｅａｄ命令）以外でＡＶデータの読み出しが要求された場合、あるいは、認証が成功しない場合は、デジタルデータの出力を禁止する。
【０１７０】
ＡＶデータ読み出し命令（ＡＶ＿ｄｓｋ＿ｒｅａｄ命令）によりディスク再生ドライブ３５０から読み出されたＡＶデータは、制御部３８の第２の主記憶３７８にロードされる。
制御部３８はＡＶモードでのＡＶプログラムの実行を継続し、第２の主記憶３７８にロードされたＡＶデータに所定のＭＰＥＧ方式の伸長処理を施すことで、映像データと音声データに変換する。
【０１７１】
制御部３８はＡＶモードでのＡＶプログラムの実行を継続し、得られた映像データ及び音声データを第２の主記憶３７８からビデオ信号処理部６７へと転送することで、映像出力及び音声出力させる。
制御部３８は、上述したＡＶモード下でのＡＶプログラムにより、ＤＶＤ−ＲＯＭ３１からＡＶデータを読み出し、デコードし、映像出力及び音声出力を行う一連の手順を繰り返す。
【０１７２】
このようにしてＡＶファイルの再生処理が完了すると、最後に暗号化ＡＶプログラムに置かれたａｖ＿ｒｅｔｕｒｎ命令が実行される。これにより、第２の主記憶３７８上の退避メモリに退避されていた実行アドレス及び動作モードも含めたステータス情報がレジスタ群５５８等に再格納され、ＡＶモード移行直前の状態に復帰する。
５．３  まとめ
以上のように本実施例の映像情報処理システムによれば、ＤＶＤ−ＲＯＭ３１に格納されたＡＶデータの読み出しは、その読み出し処理と再生処理が一体化された正規の再生制御プログラム９１によってのみ実行される。このため、再生制御プログラム９１以外のユーザプログラムによりＤＶＤ−ＲＯＭ３１のＡＶデータを読み出した後に再生することなく他の用途に利用するという誤動作や不正行為が防止される。
【０１７３】
また、制御部３８は、ＡＶデータであるデジタルデータをロードする専用のメモリとして第２の主記憶３７８を別途設けている。そして、第２の主記憶３７８はマイクロプロセッサ３７６の動作モード（ＡＶモード）で保護されているため、ユーザモードで動作するユーザプログラムによるアクセスは許可されない。従って、ユーザプログラムによりハードディスク装置等にＡＶデータを二次記録するという不正行為等が禁止される。
【０１７４】
また、 ＤＶＤ−ＲＯＭ３１を再生する再生制御プログラム９１は暗号化されて第１の主記憶３７７に置かれている。従って、暗号化情報を知らされていない者によるこの再生制御プログラム９１の改変等は事実上不可能であり、また、改変された再生制御プログラム９１によりＡＶデータがハードディスク装置等に二次記録されるという誤動作も防止される。
【０１７５】
また、ＡＶモードで動作する暗号化プログラムには、プログラムの正当性を確認することができるデジタル署名コード９８が含まれている。従って、このデジタル署名コード９８を検証することにより、正しい動作を行う暗号化プログラムか否かを判定することが可能となり、不適切な暗号化プログラムが実行され、マイクロプロセッサ３７６が暴走する等の危険が回避される。
【０１７６】
また、ディスク再生ドライブ３５０は、ＡＶ命令に属するｒｅａｄ＿ａｖ命令が制御部３８において実行されることにより、ＤＶＤ−ＲＯＭ３１からのＡＶデータの読み出しと制御部３８への出力を行う。このため、ユーザモードで動作するユーザプログラムにより、ディスク再生ドライブ３５０に直接、ＡＶデータの読み出し要求を行う等の不正行為や誤動作が防止される。
【０１７７】
なお、本実施例において、ＤＶＤ−ＲＯＭ３１のＡＶデータの読み出しをディスク再生ドライブ３５０に指示するための専用読み出し命令（ｄｓｋ＿ｒｅａｄ＿ａｖ命令）を設け、読み出されたＡＶデータを直接第２の主記憶３７８にロードした。しかるに、第二の主記憶に到達するまでのＡＶデータがユーザプログラム等により抜き取られる不正行為を防止するだけの観点からは、この読み出し方法としてはｄｓｋ＿ｒｅａｄ＿ａｖ命令に限られない。
【０１７８】
例えば、ＤＶＤ−ＲＯＭ３１のＡＶデータを暗号化しておくことにより、ユーザプログラムによるＡＶデータの読み出しを実質的に無効化することができるからである。この場合には、暗号化ＡＶデータを復号するための命令が必要となるが、これをユーザプログラムにより直接実行できなくするためにＡＶ命令として定義すればよい。また、このような復号命令をユーザ命令として定義し、かつ、この復号命令による復号化されたデータの出力先を第２の主記憶３７８に限定することにより対応してもよい。
【０１７９】
いずれにせよ、Ｉ／Ｏバス６６に流れるＡＶデータを暗号化しておくことにより、ディスク再生ドライブ３５０が出力するデータがＡＶデータか否かを判定したり出力先を限定したりすることが不要になる。このため、ＡＶデータの識別機構であるＣＧＭＳデータ識別回路４０４を不要とすることができる。
また、本実施例における認証回路４１１及び認証部３７９等が有する変換アルゴリズムとしてＤＥＳだけでなくＲＳＡ（Rvest Shamir Adlemann）方式等の公開鍵を用いた暗号アルゴリズムを採用することができるのは言うまでもない。
【０１８０】
また、本実施例において、再生制御プログラム９１の暗号化領域９４は４バイト単位に暗号化され、かつ、各命令の順序をシャッフルすることはないとしたが、暗号化されたプログラム領域がマイクロプロセッサにより実行可能であれば暗号化方法はこれに限るものではない。例えば、命令毎に暗号化されていれば、４バイト単位の暗号化に限るものではなく、可変長命令に対応して可変長に暗号化してもよい。ただし、この場合、暗号化されないヘッダ部を命令毎に設け、暗号長のサイズを格納する必要がある。
【０１８１】
また、命令の順序をシャッフルすることがない暗号化であれば、これに限るものではなく、例えば暗号化関数Ｅｎｃｒｙｐｔ（）のパラメータの一つに暗号化プログラム領域のサイズ等、暗号化プログラム領域に固有な動的なパラメータを利用してもよい。これにより、暗号化プログラムの領域毎に、同一命令であっても暗号化されたコードが異なるため、なお安全性が向上される。
【０１８２】
また、命令をシャッフルする暗号化を許し、その暗号化の復号のために、ユーザプログラムがアクセスできない第３の主記憶を別途設け、その第３の主記憶において暗号化プログラムを一括して復号し、それら命令を順次命令レジスタ５５１に読み出す構成にしても良い。また、アセンブラやリンカにより分岐先アドレスをシャッフル後のアドレスにしておく方法も考えられる。
【０１８３】
また、本実施例において、再生制御プログラム９１は１つのＡＶプログラムにより、ＤＶＤ−ＲＯＭ３１からのＡＶデータ読み出し、読み出したＡＶデータに対するＭＰＥＧのデコード処理、デコードされた映像データ及び音声データのビデオ信号処理部６７への転送という一連の処理をおこなったが、第２の主記憶３７８へのアクセスを必要とする命令がＡＶモードで実行されれば、再生制御プログラム９１のプログラム構成はこれに限るものではない。個々の処理を個別のＡＶプログラムにしても良いことは言うまでもない。また、この場合、再生制御プログラム９１の中には暗号化領域９４に置かれる複数のプログラムが存在することになる。
【０１８４】
また、制御部３８が行うＡＶデータのＭＰＥＧデコード処理は、マイクロプロセッサの内部の演算用コンポーネントを利用した演算処理としたが、マイクロプロセッサ自体の演算能力が十分に無い場合は、デコード処理において頻繁に利用される特定の演算セットをマイクロプロセッサ内部の専用回路として実現してもよい。また、マイクロプロセッサのチップの周辺チップとしてＤＳＰ等のＭＰＥＧデコード処理を補助する専用回路により実現しても良い。
【０１８５】
また、ディスク再生ドライブ３５０へＡＶデータ読み出しコマンドを発行する回路を独立した構成とし、マイクロプロセッサの動作状態を示す信号線をコマンド発行回路に入力し、マイクロプロセッサがＡＶモード以外の時、コマンド発行を抑制する回路としてもよい。
また、本実施例において、第１の主記憶３７７と第２の主記憶３７８は物理的に異なるメモリユニットとしたが、メモリ空間を管理し、第２の主記憶３７８に相当するメモリ空間を定義するＡＶデータ用メモリ領域管理レジスタを別途設け、同一のメモリユニットを論理的に２つに分けて使用してもよい。この場合、ＡＶデータ用メモリ領域管理レジスタはＡＶモードでのみアクセスが可能とし、ＡＶモード以外のマイクロプロセッサ動作モードはメモリ領域管理レジスタを参照できるのみとする必要がある。また、ＡＶモード移行時の処理として、ＡＶデータ用メモリ領域管理レジスタにアクティブな値が設定されていない時は、必要とされる未使用のメモリ空間を検出し設定する動作がマイクロプロセッサに別途必要となる。
【０１８６】
また、デジタル署名判定部５５５、ＡＶモード切り替え許可部５５６、アクセス先主記憶判別部５５７、命令実行許可部５５９、暗号化命令復号部５５４は、マイクロプロセッサ内部の構成としたが、マイクロプロセッサ外部の回路構成としても良いことは言うまでもない。
また、本実施例において、認証部３７９をマイクロプロセッサの外部回路として制御部３８を構成したが、マイクロプロセッサ内に設けてもよい。さらに、特別な回路を持たせることなく、映像再生処理を行うプログラムのみにその使用方法が開示された特別なプログラムをマイクロプロセッサ３７６に実行させる方法であってもよい。
【０１８７】
また、本実施例では、主記憶にアクセスできるのはマイクロプロセッサだけであったが、ＤＭＡコントローラやＤＳＰなどの専用装置が存在する構成であれば、これらによるデータ転送の開始前に動作モードをチェックし、ＡＶモード以外で結果として第２の主記憶３７８にアクセスすることになる不正なデータ転送を禁止すれば良い。
【０１８８】
また、暗号化領域管理レジスタ５８２には、暗号化領域９４の開始アドレスとサイズのセットを格納するとしたが、暗号化領域９４の開始アドレスと終了アドレスのセット、または、ＡＶデータ領域のアドレスのビット列におけるＭＳＢ側から共通な部分のみを格納することもできる。
また、本実施例において、命令の実行が許可されていない場合には、命令の実行を中断し所定のエラー処理を行なうとしたが、エラー処理を行なわずに、命令をｎｏｐ（ｎｏ ｏｐｅｒａｔｉｏｎ）命令として実行することで、アクセスを禁止させてもよい。
【０１８９】
また、本実施例における再生制御プログラム９１はＤＶＤ−ＲＯＭ３１という格納媒体によりＡＶデータと共に配布される形態でもよい。この場合、第１の主記憶３７７にロードされる再生制御プログラム９１はＤＶＤ−ＲＯＭ３１から読み出されることになる。また、この場合、ＡＶデータをアプリケーション毎に異なる暗号鍵で暗号化し、復号のための復号鍵を再生制御プログラム９１に持たせることにより、アプリケーション毎に異なる再生制御プログラム９１とすることができる。これにより、セキュリティレベルはより堅固なものとなる。
【０１９０】
また、上記全ての実施例において、ビデオ信号処理部６７は、Ｉ／Ｏバス６６との接続部を有し、着脱可能な状態で本映像情報処理システムの拡張カードボックス等に装着されるカード型機器であっても良い。この場合、ビデオ信号処理部６７はビデオカードと称されることになる。
また、上記全ての実施例においてビデオ信号処理部６７はグラフィック生成機能と映像合成機能を有しているが、映像合成機能をビデオ合成部としてグラフィック生成機能と分離し外部に設ける構成であってもよい。
【０１９１】
また、上記全ての実施例において情報記録媒体はＤＶＤ−ＲＯＭとしたが、情報記録領域がセクタ管理され、ファイルシステムにおいてセクタを管理することが可能な情報記録媒体であればこれに限られるものではなく、ＣＤ−ＲＯＭや磁気ディスク、光磁気ディスクであってもよい。
また、上記全ての実施例において、ＤＶＤ−ＲＯＭ３１からデジタルデータを読み出す手段としてディスク再生ドライブ３５が用いられたが、映像情報が混在するデジタルデータとそのデジタルデータが映像情報か否かを示す映像識別情報とを読み出すことがきる装置であればこれに限られるものではなく、例えば、放送や通信回線を介してそれらを読み出す装置であればよい。放送から読み出す例としては衛星放送のディジタル放送がある。この場合、データ読み出し手段はディジタル放送を受信するレシーバ装置になる。また、通信回線から読み出す例としては、ＣＡＴＶ用回線や電話回線を利用したＩｎｔｅｒＮｅｔがある。この場合、データ読み出し手段は受信装置になる。また、放送や通信回線の場合、デジタルデータはパケットと称される単位で分割されて伝送されるが、映像識別情報はこのパケットのヘッダ領域であるパケットヘッダ領域に格納されることになる。
【０１９２】
また、上記全ての実施例において、ハードディスク装置６４は、デジタルデータが記録できるものであればこれに限るものではなく、例えば、光磁気ディスク装置や磁気テープ、相変化型ＤＶＤ−ＲＡＭ装置であっても良いことは言うまでもない。
【０１９３】
【発明の効果】
以上の説明から明らかなように、本発明は、メモリに置かれた命令を実行するマイクロプロセッサであって、前記メモリから命令をフェッチする命令フェッチ手段と、フェッチした命令を解読する命令解読手段と、前記命令解読手段による解読結果に基づいて命令を実行する実行手段とを備え、前記実行手段の処理には、非ＡＶデータを前記メモリに格納する第１読み出し処理と、圧縮ＡＶデータを前記メモリに格納する第２読み出し処理と、格納された前記圧縮ＡＶデータを伸長する伸長処理とが含まれ、前記実行手段は、前記命令解読手段によりＡＶデータ再生命令であると解読された場合には、前記第２読み出し処理と前記伸長処理とを連続不可分に行い、コピー命令であると解読された場合には、少なくとも伸長処理とは独立して前記第１読み出し処理を実行し、且つ前記第１読み出し処理によるＡＶデータの読み出しに対しては著作権保護処理を行うことを特徴とする。
【０１９４】
このように、本発明に係るマイクロプロセッサは圧縮ＡＶデータを再生する専用の命令を備えるので、ＭＰＥＧデコーダ等の独立したカードモジュールを必要とすることなくプログラムによってＡＶデータの再生を行う映像情報処理システム、即ち、ソフトデコードシステムを構築することができる。
また、本プロセッサは記録媒体等から圧縮ＡＶデータを読み出してメモリにロードする処理とそれを伸長する処理とを連続不可分に行うので、伸長処理を施す前の圧縮ＡＶデータを他の場所に転送する等の不正コピーや誤動作が防止される。
【０１９５】
ここで、前記マイクロプロセッサはさらに現在の動作モードが全ての命令を実行の対象とする第１の動作モードであるか一部の命令のみを実行の対象とする第２の動作モードであるかを記憶する動作モード記憶手段を備え、前記命令解読手段が解読する命令にはさらにＡＶデータ格納命令とＡＶデータ伸長命令とが含まれ、前記命令解読手段は前記モード記憶手段に記憶された動作モードが第１の動作モードである場合にのみ前記ＡＶデータ格納命令を解読し、前記実行手段はさらに前記命令解読手段によりＡＶデータ格納命令であると解読された場合に前記格納処理を行う格納部と前記命令解読手段によりＡＶデータ伸長命令であると解読された場合に前記伸長処理を行う伸長部とを有し、前記ＡＶデータ再生部は前記第１の動作モードを示すように前記動作モード記憶手段を更新した後に前記ＡＶデータ格納命令と前記ＡＶデータ伸長命令とに基づいて前記格納処理と前記伸長処理とを行うとすることもできる。
【０１９６】
これによって、ＡＶデータ格納命令を単独で実行させるためには動作モードが第１の動作モードであることが必要とされること、及び、動作モードについての制限がないＡＶデータ再生命令はＡＶデータ格納命令とＡＶデータ伸長命令とを連続に実行するものであることから、動作モードを第１の動作モードにする際の制限を設けることで、ＡＶデータ伸長命令の実行を伴わずにＡＶデータ格納命令だけを実行するという不正行為の発生は抑制される。
【０１９７】
また、前記命令解読手段が解読する命令にはさらにＡＶデータ読み出し命令とＡＶデータ復号化命令が含まれ、前記実行手段はさらに前記命令解読手段によりＡＶデータ読み出し命令であると解読された場合に外部装置から暗号化された圧縮ＡＶデータを読み出す読み出し処理部と前記命令解読手段によりＡＶデータ復号化命令であると解読された場合に前記暗号化圧縮ＡＶデータを復号する復号部とを有し、前記ＡＶデータ再生部は前記格納処理に先立って前記ＡＶデータ読み出し命令とＡＶデータ復号化命令とに基づいて前記読み出し処理と前記復号処理とを行うとすることもできる。
【０１９８】
これによって、本マイクロプロセッサが外部装置から読み出す圧縮ＡＶデータは暗号化されているので、この読み出し中での圧縮ＡＶデータの盗聴に対して防護することができる。そして、ＡＶデータ再生部は暗号化圧縮ＡＶデータの復号化処理と伸長処理とを連続不可分に行うので、復号化した圧縮ＡＶデータを伸長することなく他の装置に転送する等の不正行為が禁止される。
【０１９９】
また、ＡＶデータを再生する映像情報処理システムであって、外部媒体からデジタルデータを読み出しそのデジタルデータが圧縮ＡＶデータである場合にそれを暗号化し前記暗号化圧縮ＡＶデータとして出力するＡＶデータ読み出し装置と、映像データ及び音声データを受け取りそれらを映像信号及び音声信号に変換し映像表示及び音声出力するＡＶ出力装置と、前記マイクロプロセッサ及びメモリを有し前記ＡＶデータ読み出し装置から出力された暗号化圧縮ＡＶデータを映像データ及び音声データに変換し前記ＡＶ出力装置に送る制御装置とを備えるとすることもできる。
【０２００】
これによって、ＭＰＥＧデコーダ等の独立したカードモジュールを必要とせずにｏｓ＿ｃａｌｌ命令等に基づいてＡＶデータの再生を行い、かつ、このようなデジタル著作物の不正コピーを防止できる映像情報処理システムが実現される。
また、前記実行手段はさらに前記命令解読手段が解読する各命令に対応するマイクロプログラムを予め記憶しているマイクロプログラム記憶部を有し、前記ＡＶデータ再生部は前記マイクロプログラム記憶部に記憶されたマイクロプログラムに従って前記格納処理と前記伸長処理とを行うとすることもできる。
【０２０１】
これによって、ＡＶデータ再生命令はマイクロプログラムとして実現されているので、このＡＶデータ再生命令の実行中において割り込み要求を発することで伸長処理を行うことなく格納処理だけを行った後に圧縮ＡＶデータを他の用途に利用する、等の不正行為が禁止される。
また、前記ＡＶデータ再生部は前記圧縮ＡＶデータを生成するために前記格納処理に先立って暗号化圧縮ＡＶデータを復号する処理を行うとすることもできる。
【０２０２】
これによって、割り込み要求を発することで暗号化圧縮ＡＶデータを復号した後に伸長することなく他の用途に利用する、等の不正行為が禁止される。また、外部装置からの暗号化圧縮ＡＶデータの読み出し処理と切り離すことがでるので、長時間に渡って割り込み要求が受け付けられないという不具合が回避される。
また、前記ＡＶデータ再生部は前記復号処理に先立って外部装置から前記暗号化圧縮ＡＶデータを読み出すとすることもできる。
【０２０３】
これによって、１つのＡＶデータ再生命令の実行によって、記録媒体からの暗号化圧縮ＡＶデータの読み出し、復号、伸長という一連の再生処理を行う便利なＡＶデータ再生命令が実現される。
また、ＡＶデータを再生する映像情報処理システムであって、外部媒体からデジタルデータを読み出しそのデジタルデータが圧縮ＡＶデータである場合にそれを暗号化し前記暗号化圧縮ＡＶデータとして出力するＡＶデータ読み出し装置と、映像データ及び音声データを受け取りそれらを映像信号及び音声信号に変換し映像表示及び音声出力するＡＶ出力装置と、前記マイクロプロセッサとメモリを有し、前記ＡＶデータ読み出し装置から出力された暗号化圧縮ＡＶデータを映像データ及び音声データに変換し前記ＡＶ出力装置に送る制御装置とを備えるとすることもできる。
【０２０４】
これによって、ＭＰＥＧデコーダ等の独立したカードモジュールを必要とせずにマイクロプロセッサの内部に記憶されたマイクロプログラムに基づいてＡＶデータの再生を行い、かつ、このようなデジタル著作物の不正コピーを防止できる映像情報処理システムが実現される。
また、メモリに置かれた命令を実行するマイクロプロセッサであって、前記メモリから命令をフェッチする命令フェッチ手段と、フェッチした命令を解読する命令解読手段と、前記命令解読手段による解読結果に基づいて命令を実行する実行手段とを備え、前記命令解読手段が解読する命令にはＡＶデータ読み出し命令が含まれ、前記命令解読手段は前記命令が前記ＡＶデータ読み出し命令である場合には特権違反が生じていないか判断し生じているときにはその命令の解読を中止する特権違反監視部を有し、前記実行手段は前記命令解読手段によりＡＶデータ読み出し命令であると解読された場合に外部媒体から圧縮ＡＶデータを読み出して前記メモリに格納するＡＶデータ読み出し部を有するとすることもできる。
【０２０５】
これによって、特権違反が生じない場合にのみ、外部媒体から圧縮ＡＶデータが読み出されるので、不正行為や誤動作に基づくデジタル著作物の著作権侵害を排除することが容易になる。
また、前記特権違反監視部は現在の本マイクロプロセッサの動作モードを特定する情報を記憶する動作モード記憶部を有し前記命令が前記ＡＶデータ読み出し命令である場合には前記動作モード記憶部に記憶された情報がＡＶデータを処理する命令のみを実行の対象とする動作モードを示すときに前記特権違反が生じていないと判断するとすることもできる。
【０２０６】
これによって、ＡＶデータの処理は従来のユーザモードやスーパバイザモードとは異なる第３の専用の動作モード時だけに限定されるので、圧縮ＡＶデータを格納したデジタル著作物を不正使用から護ることが容易となる。
また、前記命令解読手段が解読する命令にはさらにＡＶデータ転送命令が含まれ、前記実行手段はさらに前記命令解読手段によりＡＶデータ転送命令であると解読された場合に前記メモリに格納された圧縮ＡＶデータを指定された場所に転送する転送部と前記メモリ中の予め定められたＡＶデータ領域を特定する情報を記憶する領域記憶部と前記転送部がアクセスする前記メモリ中のアドレスが前記領域記憶部によって示されるＡＶデータ領域内であるか否かを判断し領域内であるときにはそのアクセスを中止させるアクセス領域監視部とを有するとすることもできる。
【０２０７】
これによって、メモリ中の特定領域をプロテクトメモリとすることができるので、権限を有しないユーザがメモリに置かれた圧縮ＡＶデータを無断で読み出す等の不正行為を禁止することが容易となる。
また、前記アクセス領域監視部は本マイクロプロセッサから出力されるアドレス信号の出力を遮断することで前記中止を行うとすることもできる。
【０２０８】
これによって、プロテクトメモリへのアクセスは物理的に禁止されるので、より強固に不正行為や誤動作が防止される。
また、ＡＶデータを再生する映像情報処理システムであって、外部媒体からデジタルデータを読み出しそのデジタルデータが圧縮ＡＶデータである場合にそれを暗号化し前記暗号化圧縮ＡＶデータとして出力するＡＶデータ読み出し装置と、映像データ及び音声データを受け取りそれらを映像信号及び音声信号に変換し映像表示及び音声出力するＡＶ出力装置と、前記マイクロプロセッサとメモリを有し前記ＡＶデータ読み出し装置から出力された暗号化圧縮ＡＶデータを映像データ及び音声データに変換し前記ＡＶ出力装置に送る制御装置とを備えるとすることもできる。
【０２０９】
これによって、動作モードや命令の種類の観点による防護だけでなく、アクセスするメモリ番地の観点からも不正コピーや誤動作が防止される映像情報処理システムが実現される。
また、ＡＶデータを再生する映像情報処理システムであって、圧縮ＡＶデータを再生するための再生制御プログラムを記憶する第１の記憶手段と、前記第１の記憶手段に記憶された命令を実行する実行手段を有するマイクロプロセッサとを備え、前記再生制御プログラムは暗号化された命令の集まりと暗号化されていない命令の集まりからなり、その暗号化命令には圧縮ＡＶデータを扱う命令が含まれ、非暗号化命令には暗号化命令に実行制御を移すための呼び出し命令が含まれ、前記実行手段は前記呼び出し命令に含まれる署名コードに基づいて前記呼び出し命令の実行を禁止する実行禁止部と前記暗号化命令の実行に先立ってそれら命令を復号する復号部とを有するとすることもできる。
【０２１０】
これによって、圧縮ＡＶデータを扱う命令は暗号化され、かつ、その命令を実行するには署名コードが必要とされるので、署名コードを秘密管理することで、権限のないユーザが再生制御プログラムを不正に利用したり改変したりすることで圧縮ＡＶデータを再生することなく他の用途に利用する等の不正行為を禁止することができる。
【０２１１】
また、前記実行禁止部はさらに実行しようとする命令が特権違反を生じないか判断し生じるときはその命令の実行を禁止するとすることもできる。
これによって、命令の暗号化だけでなく動作モードの監視による観点からも不正行為が禁止されるので、より安全性が向上される。
また、前記映像情報処理システムはさらに第２の記憶手段を備え、前記マイクロプロセッサはさらに現在の本マイクロプロセッサの動作モードを特定する情報を記憶する動作モード記憶部を有し、前記実行禁止部はさらに実行しようとする命令が前記第２の記憶手段にアクセスしようとする命令である場合には前記動作モード記憶部に記憶された情報がＡＶデータを処理する命令の実行を禁止する動作モードを示すときにその命令の実行を禁止するとすることもできる。
【０２１２】
これによって、第２の記憶手段はＡＶデータ専用のプロテクトメモリとなるので、アクセスするメモリの種類を監視する観点からも不正コピーや誤動作が防止される。
また、前記映像情報処理システムはさらに部媒体から圧縮ＡＶデータを読み出し出力するＡＶデータ読み出し装置と、映像データ及び音声データを受け取りそれらを映像信号及び音声信号に変換し映像表示及び音声出力するＡＶ出力装置とを備え、前記マイクロプロセッサは前記再生制御プログラムに従って前記ＡＶデータ読み出し装置から出力された圧縮ＡＶデータを映像データ及び音声データに変換し前記ＡＶ出力装置に送るとすることもできる。
【０２１３】
これによって、不正使用や機器の誤動作等によるデジタル著作物の著作権は、再生制御プログラムの暗号化、動作モードに基づく特権違反の監視、アクセスするメモリの種類の監視等に基づいて強固に保護される。
以上のように、本発明によって、ＭＰＥＧデコーダ等の独立したカードモジュールを必要とせずにＡＶデータの再生を行い、かつ、このようなデジタル著作物の不正コピー等を防止できる映像情報処理システムが実現され、健全なマルチメディア産業の発展が必要とされる今日において、その実用的価値は大きい。
【図面の簡単な説明】
【図１】本実施例に係る映像情報処理システムの概観図である。
【図２】本映像情報処理システムの構成を示すブロック図である。
【図３】図３（ａ）〜図３（ｆ）は、ＤＶＤ−ＲＯＭ３１の物理フォーマットを示す図である。
【図４】図４（ａ）及び図４（ｂ）は、ＤＶＤ−ＲＯＭ３１の論理フォーマットを示す図である。
【図５】ディスク再生ドライブ３５の詳細な構成を示すブロック図である。
【図６】マイクロプロセッサ３７１の詳細な構成を示すブロック図である。
【図７】ステータスレジスタ５６１の構成を示す図である。
【図８】図８（ａ）は、１個の命令のフォーマットを示す図である。図８（ｂ）は、マイクロプログラムメモリ５４に格納された命令セット及び各命令の特権レベル（種別）を示す図である。
【図９】図９（ａ）は、ｏｓ＿ｃａｌｌを実行した場合におけるマイクロプロセッサ３７１の処理の流れを示す図である。図９（ｂ）は、図９（ａ）に示されたデスクリプタテーブル８１を構成する１個のデスクリプタ８４のフォーマットを示す図である。
【図１０】本映像情報処理システムが備えるｏｓ＿ｃａｌｌ＃ｎの一部とその意味を示す図である。
【図１１】本映像情報処理システムがＡＶデータを再生する場合の動作を示すフローチャートである。
【図１２】以上のようにＡＶデータが再生される場合におけるディスプレイ装置７１の表示を示す図である。
【図１３】本発明の第２実施例に係る映像情報処理システムのマイクロプログラムメモリ１０４に格納されている命令と対応するマイクロプログラムを示す図である。
【図１４】ｐｌａｙ＿ａｖ命令が実行された際の本映像情報処理システムの動作を示すフロチャートである。
【図１５】本発明の第３実施例に係る映像情報処理システムのマイクロプログラムメモリ１１４に格納されている命令と対応するマイクロプログラムを示す図である。
【図１６】ｒｅａｄ＿ａｖ命令とｐｌａｙ＿ａｖ命令が実行された際の本映像情報処理システムの動作を示すフロチャートである。
【図１７】本発明の第４実施例に係る映像情報処理システムのマイクロプロセッサ３７１の命令解読部１５１の構成を示すブロック図である。
【図１８】本マイクロプロセッサ３７１が実行する１個の命令のフォーマットを示す図である。
【図１９】動作モードとその動作モードにおいて実行が許可される命令の種類とを示す図である。
【図２０】マイクロプログラムメモリ１５４に格納されている命令とその特権レベルを示す図である。
【図２１】領域管理レジスタ１５６と主記憶３７４との関係を示す図である。
【図２２】本発明の第５実施例に係る映像情報処理システムの構成を示すブロック図である。
【図２３】ディスク再生ドライブ３５０の構成を示すブロック図である。
【図２４】図２４（ａ）〜図２４（ｃ）は、第１主記憶３７７にロードされたプログラム群の内容を説明する図である。図２４（ｄ）は、ａｖ＿ｃａｌｌ命令のフォーマットを示す図である。
【図２５】マイクロプロセッサ３７６の詳細な構成を示すブロック図である。
【図２６】命令実行部５５３に格納された命令と各命令の実行に必要とされる特権レベルの対応関係を示す図である。
【図２７】従来の映像情報処理システムの構成を示すブロック図である。
【符号の説明】
３１    ＤＶＤ−ＲＯＭ
３５、３５０    ディスク再生ドライブ
３７、３８    制御部
４５、１４５、５６０    プログラムカウンタ
５１、１５１    命令解読部
５２、１５２、５５１    命令レジスタ
５３、１５３、５５２    命令デコーダ
５４、１０４、１１４、１５４    マイクロプログラムメモリ
５５、５５３    命令実行部
５６、５５８    レジスタ群
５７    ＡＬＵ
５８    ＩＤＣＴ部
５９    ＤＥＣＲＹＰＴ部
６０    スピーカ
６４    ハードディスク装置
６５    入力部
６６    Ｉ／Ｏバス
６７    ビデオ信号処理部
６９    キーボード
７０    マウス
７１    ディスプレイ装置
１５５    オペランドアドレスレジスタ
１５６    領域管理レジスタ
１５７    ＡＶモード監視部
１５８、５８１    動作モードレジスタ
３７１、３７６    マイクロプロセッサ
３７４    主記憶
３７７    第１主記憶
３７８    第２主記憶
３７９    認証部
４０１    データ再生回路
４０２    ＣＧＭＳ制御データ用メモリ
４０３    ユーザデータ用メモリ
４０４    ＣＧＭＳデータ識別回路
４０５    Ｉ／Ｏバス制御回路
４０６    暗号回路
４０７    内部データバス
４０８    制御バス
４０９    マイクロプロセッサ
４１０    光ヘッド
４１１    認証回路
５５４    暗号化命令復号部
５５５    デジタル署名判定部
５５６    ＡＶモード切り替え許可部
５５７    アクセス先主記憶判別部
５５９    命令実行許可部
５６１    ステータスレジスタ
５８２    暗号化領域管理レジスタ
６８２    プロセッサバス
６８３    バスＩ／Ｆ
【図１】
0003825121.tif 000002
【図２】
0003825121.tif 000003
【図３】
0003825121.tif 000004
【図４】
0003825121.tif 000005
【図５】
0003825121.tif 000006
【図６】
0003825121.tif 000007
【図７】
0003825121.tif 000008
【図８】
0003825121.tif 000009
【図９】
0003825121.tif 000010
【図１０】
0003825121.tif 000011
【図１１】
0003825121.tif 000012
【図１２】
0003825121.tif 000013
【図１３】
0003825121.tif 000014
【図１４】
0003825121.tif 000015
【図１５】
0003825121.tif 000016
【図１６】
0003825121.tif 000017
【図１７】
0003825121.tif 000018
【図１８】
0003825121.tif 000019
【図１９】
0003825121.tif 000020
【図２０】
0003825121.tif 000021
【図２１】
0003825121.tif 000022
【図２２】
0003825121.tif 000023
【図２３】
0003825121.tif 000024
【図２４】
0003825121.tif 000025
【図２５】
0003825121.tif 000026
【図２６】
0003825121.tif 000027
【図２７】
0003825121.tif 000028