JP4906913B2 - 再生装置、システムlsi、初期化方法 - Google Patents
再生装置、システムlsi、初期化方法 Download PDFInfo
- Publication number
- JP4906913B2 JP4906913B2 JP2009502462A JP2009502462A JP4906913B2 JP 4906913 B2 JP4906913 B2 JP 4906913B2 JP 2009502462 A JP2009502462 A JP 2009502462A JP 2009502462 A JP2009502462 A JP 2009502462A JP 4906913 B2 JP4906913 B2 JP 4906913B2
- Authority
- JP
- Japan
- Prior art keywords
- benchmark
- program
- unit
- application
- benchmark score
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3428—Benchmarking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3485—Performance evaluation by tracing or monitoring for I/O devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/54—Link editing before load time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3409—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
- G06F11/3419—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
Description
記録媒体からデータを読み出すドライブ部、前記読み出したデータに含まれるAVデータを再生する再生部、プログラムを実行する処理部と、を具備したハードウェア部と、
前記ハードウェア部を制御するファームウェアプログラムと、
前記処理部が前記ファームウェアプログラムを実行する場合、所定の条件を満足すれば、初期化処理を行う初期化部と
所定の記録領域を有する記録部を備え、
前記ファームウェアプログラムには、ベンチマークスコアが組み込まれており、
前記ベンチマークスコアは、前記ドライブ部によって前記記録媒体から読み出されたベンチマークプログラムを前記処理部により実行したとき、前記実行されるベンチマークプログラムからの命令に従って、前記処理部によって実行されるファームウェアプログラムを介して前記ハードウェア部に所定の処理を行わせた結果であって、前記再生装置の処理能力を示す指標であり、
前記初期部は、前記処理部が前記ファームウェアプログラムを最初に実行する場合、前記ファームウェアプログラムに組み込まれているベンチマークスコアを、前記記録部における所定の記録領域に書き込むことにより前記記録領域に書き込んだベンチマークスコアを前記処理部により実行されるアプリケーションプログラムがアクセスできるようにした、
ことを特徴とする。
このように、スターティングティレイに対する影響をなくすことで、ユーザ操作に対するレスポンスを高度に維持することができる。
ここで、ファームウェアにベンチマークスコアが組み込まれている場合、アプリケーションが、ファームウェアに組み込んだベンチマークスコアへ直接アクセスすることに起因して、ファームウェアの破壊を招く恐れがある。ファームウェア破壊対策として初期化部は、アプリケーションの起動に先立ち、ファームウェアに組込まれたベンチマークスコアを、アプリケーションデータ領域に書き込む。
また、アプリケーションがこのベンチマークスコアを利用することにより、例えば再生装置上でアニメーションを描画するにあたっての負荷決定を、より緻密なものとすることができる。こうすることで、ハードウェアの性能に適した負荷で、再生装置上で必要な処理を実行することが可能となる。
前記初期化部は前記更新されたファームウェアプログラムに組み込まれたベンチマークスコアを前記記録部における所定の記録領域に書き込むことを特徴とする。
前記再生装置において、ベンチマークスコアは、ファームウェアに組み込まれた態様で、再生装置内に存在するので、ファームウェアの更新にあたって、古いベンチマークスコアが組み込まれた旧バージョンのファームウェアを、新しいベンチマークスコアが組み込まれた新バージョンのファームウェアで上書きすれば、ファームウェアが新しいものに更新された際、ベンチマークスコアは、その更新に伴って、自動的に新旧の交替を果たすことになるばかりか、更新されたファームウェアプログラムを最初に実行するとき、前記記録部における所定の記録領域に書き込まれたベンチマークスコアは新しいものに更新される。
例えば、公式のアプリケーションによるベンチマークが標準化団体による統一基準にてなされる場合、ベンチマークスコアは、信頼性が高い、きわめて有意義な情報となる。しかし信頼性が高いものであればある程、かかるベンチマークスコアの利用が無秩序になされると、当該ベンチマークスコアがWebページ上で公表されて、その再生装置の信頼性を落としめるための活動、いわゆるネガティブキャンペーンに使用される恐れがある。そうしたネガティブキャンペーン対策にあたっては、上述したような構成を採用することにより、ベンチマークスコアの読み出しは、ベンチマークプログラムを提供した組織から正当なアクセス権限が付されたと認められたもののみに認められるので、例えば、記録媒体の規格化をとりまとめる団体に正式に認定されたものだけに、ベンチマークスコアの読み出しを認めることができる。こうすることでマニファクチャは、安心してベンチマークスコアをファームウェアに組み込み、アプリケーションに利用させることができる。
前記アプリケーションプログラムが前記ベンチマークスコアへのファイルパスを指定して、前記ベンチマークスコアへのアクセスを要求したとき、
前記処理部は前記I/Oプログラムを実行し、前記I/Oプログラムは指定されたファイルパスに基づいて特定されるベンチマークスコアを、前記アプリケーションプログラムへ返すように構成したことを特徴とする。
前記ベンチマークスコアを本来書き込むべき位置を示す前記記録部におけるファイルパスに関する情報と前記ベンチマークスコアを書き込んだ前記第2の記録領域上の位置に関する情報とを含んだ位置情報を生成し、
前記I/Oプログラムは前記アプリケーションプログラムから指定されたファイルパスを受け取ると、前記位置情報を参照し、前記第2の記録領域に展開したベンチマークスコアを読み込んで前記アプリケーションプログラムへ返すように構成したことを特徴とする。
また、前記初期化部は、前記記録部における所定のパスによって定められる記録領域に前記ベンチマークスコアが書き込まれているか否かの判定を行い、前記ベンチマークスコアが書き込まれていないと判定した場合に、前記ファームウェアプログラムに組み込まれているベンチマークスコアを、前記記録部における所定のパスによって定められる記録領域に書き込むことを特徴とする。
つまり、前記ベンチマークスコアをメモリに展開して、メモリ上のベンチマークスコアを、アプリケーションに利用させる。こうすることで、ローカルストレージにおけるアプリケーションデータ領域へとベンチマークスコアをコピーするために生じる、遅延時間を短縮することができる。また、アプリケーションデータ領域が半導体メモリカードで構成されている場合、半導体メモリカードに対する書き込み回数抑制することができる。
以下本発明の実施の形態について、図面を参照しながら説明する。
以降、再生装置の実施形態について説明する。先ず始めに、本発明に係る再生装置の実施行為のうち、使用行為についての形態を説明する。図1は、ユーザ宅に設置された再生装置102の、利用態様を示す図である。本図に示すように、再生装置102は、BD−ROM100、WWWサーバ101(Webサーバとも言う)、テレビ103、リムーバブルメディア104と共にユーザによる使用に供される。
WWWサーバ101は、映画配給者の公式サイトを運営するサーバ装置であり、BD−ROM100に記録された映画作品の部分的な置き換えや追加を実現するコンテンツを、インターネット等を介してユーザに供給する。
再生装置102は、テレビ103と共に、ホームシアターシステムを構築して、BD−ROM100を再生する。
リムーバブルメディア104は、再生装置102に装填され、映画配給者のWWWサーバ101から配信されたコンテンツの受け皿として利用される。そのため、ネットを通じてダウンロードされ、リムーバブルメディア104に格納されたコンテンツと、BD−ROM100に記録されたコンテンツとを組み合わせて、BD−ROM100のコンテンツを拡張/更新をすることができる。かかるリムーバブルメディア104を装填するという目的のため、再生装置102には、SDメモリーカード、メモリースティック、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード等のリムーバブルメディア104を挿入する挿入口を備える。
図2は、BD−ROM(以降、「BD」と称する場合もある)の構成を示した図である。本図の第1段目に、BD−ROM100を示し、第2段目は、BD−ROMの内周から外周に向けて螺旋状に形成された記録領域を、横方向に引き伸ばして直線状に描いている。この第2段目に示すように、記録領域は、内周の「リード・イン」と、外周の「リード・アウト」と、「論理アドレス空間」とを有している。また、リード・インの内側にはBCA(Burst Cutting Area)と呼ばれるドライブでしか読み出せない特別な領域がある。この領域はアプリケーションから読み出せないため、例えば著作権保護技術などに利用されることがよくある。
本図の第3段目は、第2段目におけるファイルシステムを前提にして構築された、ディレクトリ・ファイル構成を示す。本図に示すように、BD−ROMのルートディレクトリ(ROOT)直下には、BD.ROOT.CERTIFICATEと、BDMVディレクトリとが置かれている。
PLAYLISTディレクトリには、拡張子mplsが付与されたファイル(xxx.mpls[“xxx”は可変、拡張子”mpls”は固定])が存在する。
JARディレクトリには、拡張子jarが付与されたファイル(xxx.jar[“xxx”は可変、拡張子”jar”は固定])が存在する。
BDJOディレクトリには、拡張子bdjoが付与されたファイル(xxx.bdjo[“xxx”は可変、拡張子”bdjo”は固定])が存在する。
<拡張子”m2ts”が付与されたファイル>
拡張子”m2ts”が付与されたファイルは、M P E G − T S ( T r a n s p o r t S t r e a m )形式のデジタルAVストリームであり、ビデオストリーム、1つ以上のオーディオストリーム、1つ以上のグラフィクスストリームを多重化することで得られる。ビデオストリームは映画の動画部分を、オーディオストリームは映画の音声部分を、グラフィクスストリームは、映画の字幕をそれぞれ示している。
<拡張子”mpls”が付与されたファイル>
拡張子”mpls”が付与されたファイルは、プレイリスト情報を格納したファイルである。プレイリスト情報は、メインパス情報、サブパス情報、マーク情報を含む。
3)サブパス情報は、前記AVストリームと同期して再生すべきエレメンタリストリームの指定と、そのエレメンタリストリームの再生時間軸におけるとIn_Time、及び、Out_Timeの組みを含む。Java(登録商標)アプリケーションが、このプレイリスト情報を再生するJMFプレーヤインスタンスの生成をJava(登録商標)仮想マシンに命じることで、AV再生を開始させることができる。JMFプレーヤインスタンスとは、JMFプレーヤクラスを基にして仮想マシンのヒープメモリ上に生成される実際のデータのことである。
<拡張子”jar”が付与されたファイル>
拡張子”jar”が付与されたファイルは、Java(登録商標)アーカイブファイルであり、Java(登録商標)仮想マシンを用いて動的なシナリオ制御を行うJava(登録商標)アプリケーションのクラスファイルが存在する。このクラスファイルにて定義されるJava(登録商標)アプリケーションは、Xletインターフェイスを通じて制御されるJava(登録商標) Xletである。Xletインターフェイスは、”loaded pause
d”、”active destroyed”といった4つの状態をもつ。本明細書でい
うアプリケーションとは、こうしてBD−ROM等の記録媒体に記録されているクラスファイルについてのインスタンスのことをいう。
拡張子“bdjo”が付与されたファイルは、BD−Jオブジェクトを格納したファイルである。BD−Jオブジェクトは、プレイリスト情報により示されるAVストリームと、アプリケーションとの関連付けにより、タイトルを定義する情報である。BD−Jオブジェクトは、“アプリケーション管理テーブル”と、そのタイトルにおいて再生可能なプレイリストの一覧を示す。アプリケーション管理テーブル(AMT)とは、“アプリケーションシグナリング”を実現するテーブルである。“アプリケーションシグナリング”とは、BD−ROMにおける“タイトル”をアプリケーションの生存区間として管理し、アプリケーションの起動及び終了を司る制御をいう。ここで生存区間とは、BD−ROMに記録されたコンテンツ全体の時間軸において、仮想マシンのヒープメモリ上でアプリケーションが生存し得る区間を示す。“生存”とは、そのアプリケーションが、ヒープメモリに読み出され、仮想マシンによる実行が可能になっている状態をいう。アプリケーション管理テーブルは、アプリケーションの識別子(アプリケーションID)とそのアプリケーションに属するJava(登録商標) アーカイブファイルのIDを羅列することでこのタイトルを生存区間とするアプリケーションを示す。つまり、一つのアプリケーションは一つ以上の Java(登録商標) アーカイブファイルで構成される。このように、BD−Jオブジェクト内のアプリケーション管理テーブルによって、制御が規定されるJava(登録商標)アプリケーションを、“BD−Jアプリケーション”とよぶ。
index.bdmv(ファイル名固定)は、BD−ROM全体に関する管理情報であり、再生装置102へのディスク挿入後に、index.bdmvが最初に読み出されることで、再生装置102においてディスクが一意に認識される。加えて、index.bdmv は、BD−ROMにおいて再生可能となる複数のタイトルと、個々のタイトルを規定するBD−Jオブジェクトとを対応付けて示すテーブルを含んでいる。引き出し線f2は、index.bdmvの内部構成をクローズアップして示している。この引出線に示すように映画作品のプロバイダを特定する識別子であるorganizationID(32ビット)を持つ。
図3は、再生制御のレイヤモデルを示した図である。図3の第1層は、物理層であり、処理対象たるストリーム本体の供給制御である。この第1層に示すように、処理対象たるストリームは、BD−ROMだけではなく、Build−Inメディアやリムーバブルメディア、ネットワークといったあらゆる記録媒体、通信媒体を供給源としている。ここでBuild−Inメディアとは、HDD(ハードディスクドライブ)など、再生装置102に予め組み込まれた記録媒体である。一方、リムーバブルメディアは、SDメモリーカード、メモリースティック、コンパクトフラッシュ(登録商標)、スマートメディア、マルチメディアカード等、可搬性がある記録媒体である。これらBuild−Inメディア、リムーバブルメディアは何れも、再生装置102がローカルに利用する記録媒体であり、“ローカルストレージ”との総称で呼ばれる。これらローカルストレージ、ネットワークといった供給源に対する制御(ディスクアクセス、カードアクセス、ネットワーク通信)が第1層の制御である。
第3層(BD管理データ)は、ストリームの静的なシナリオを規定するレイアである。静的なシナリオとは、ディスク制作者によって予め規定された再生経路情報、ストリーム管理情報であり、これらに基づく再生制御を規定しているのがこの第3層である。
かかるPersistent領域には、「ディスク追加データ領域」と、「アプリケーションデータ領域」とが存在する。
「CertIDディレクトリ」は例えばBD−ROM上のBD.ROOT.CERTIFICATEから導き出されるIDを名前に持つディレクトリで、BD.ROOT.CERTIFICATEのSHA−1ダイジェスト値160ビットのうち、先頭32ビットを16進表記で表した8文字の名前のディレクトリである。
「DiscIDディレクトリ群」は、例えば4つのディレクトリからなり、BD−ROMを特定する128ビットの識別子(DiscID)を先頭から32ビットずつ4分割し、それぞれを16進表記で表した8文字の名前が割り当てられている。
アプリケーションデータ領域におけるディレクトリ構成は、ADA(Application Data Area)ディレクトリ、CertIDディレクトリ、OrganizationIDディレクトリ、ApplicationIDディレクトリから構成される。
「CertIDディレクトリ」はBD−ROM上のBD.ROOT.CERTIFICATEから導き出されるIDを名前に持つディレクトリで、BD.ROOT.CERTIFICATEのSHA−1ダイジェスト値160ビットのうち、先頭32ビットを16進表記で表した8文字の名前のディレクトリである。
「ApplicationIDディレクトリ」は、アーカイブファイルのファイル名として採用されている、アプリケーションの識別子(ApplicationID)を16進表記で表した名前としたディレクトリである。このApplicationIDディレクトリには、ベンチマークスコアを格納したテキストファイルが存在する。
右枠は、処理負荷を軽くする変化であり、猫のキャラクタが、1秒につき12枚のハーフアニメーションで表示されていることがわかる。かかる変化は、ADA−CertID−OrganizationID−ApplicationIDという固定ファイルパスでアクセスできるアプリケーションデータ領域に格納されたベンチマークスコアが、どのような値であるかに応じてなされる。左枠における処理負荷の変化は、例えばベンチマークスコアが、所定の閾値以上であることを要件にしている。右枠における処理負荷の変化は、このベンチマークスコアが、例えば所定の閾値未満であることを要件にしている。このように、BD−ROMから供給されるサービスアプリケーションは、アプリケーションデータ領域に存在するベンチマークスコアの大小に応じて、処理負荷を変化させるように作られている。かかる処理負荷の変化によって、GUIを介してユーザがBD−Jアプリケーションに処理を命じてから、その処理が完了するまでのレスポンス時間は、再生装置102における描画能力に左右されず、一定の水準を保つことになる。
図7は、再生装置102のハードウェア構成を示す図である。本図に示すように、再生装置102は、BD−ROMドライブ1、リードバッファ2、デマルチプレクサ3、ビデオデコーダ4、プレーンメモリ5、オーディオデコーダ6、エレメンタリバッファ7、プレーンメモリ8、グラフィクスデコーダ9、加算器10、ネットワークI/F部11、スイッチ12、HDドライブ13、カードドライブ14、RAM15、MPU16、ユーザインターフェイス17、フラッシュROM18から構成される。再生装置102は、図7に示したハードウェア構成に、Java(登録商標)2Micro_Edition(J2ME) Personal Basis Profile(PBP 1.0)と、Globally Executable MHP specification(GEM1.0.2)for package media targetsとをフル実装することで構成される。
リードバッファ2は、FIFOメモリであり、BD−ROMから読み出されたTSパケットが先入れ先出し式に格納される。このTSパケットは、MPEG2−TS形式のAVストリームを構成するものである。
プレーンメモリ5は、非圧縮形式のピクチャを格納しておくためのメモリである。
オーディオデコーダ6は、デマルチプレクサ3から出力されたオーディオフレームを復号して、非圧縮形式のオーディオデータを出力する。
プレーンメモリ8は、一画面分の領域をもったSD−RAM等であり、HDMVモードとBD−Jモードとでメモリアロケーションが変わる。HDMVモードにおけるメモリアロケーションとは、横1920×縦1080の8ビット領域からなる。これは1920×1080の解像度で、1画素当たり8ビットのインデックス値を格納できるメモリアロケーションである。CLUT(Color Lookup Table)を用いてかかるインデックスカラーを変換することにより、プレーンメモリ8に格納されたラスタグラフィクスは、表示に供される。一方、BD−Jモードにおけるメモリアロケーションとは、1920×1080の32ビット領域からなる。これは横1920画素×縦1080画素の解像度で、1画素当たり32ビットのRGB値を格納できるメモリアロケーションである。こうした、32ビットのRGB値をダイレクトに書き込むことにより、BD−Jアプリケーションは、GUIのためのグラフィクスを、直接、表示させることができる。
加算器10は、ビデオ用のプレーンメモリ5に格納された非圧縮形式のピクチャデータに、グラフィクス用のプレーンメモリ8に展開されたグラフィクスを合成して出力する。図5(b)に示した合成画像は、この加算器10が、プレーンメモリ8内のグラフィクスと、ビデオ用のプレーンメモリ5内のピクチャとを合成することで出力される。
HDドライブ13は、BD−ROMにて供給されるクラスファイルと、同等のクラスファイルを格納しておくことができるハードディスクドライブである。
カードドライブ14は、BD−ROMにて供給されるクラスファイルと、同等のクラスファイルが書き込まれたSDメモリカード等を、装填することができるドライブ装置である。
メモリプール管理機能とは、空きのメモリ領域を管理し、必要に応じて要求されたメモリサイズをBD−Jアプリケーションに与え、使用が終了すると、メモリに蓄積された状態に戻す。ヒープエリア管理機能では、メモリの空き領域にメモリプールを設定し、BD−Jアプリケーションの要求に応じて、必要サイズのメモリを提供する。かかるヒープ管理によって、RAM15上の領域は、“ヒープメモリ”として、利用されることになる。
図8(a)は、ファームウェア22を構成するファイル群を示す図である。本図に示すように、ファームウェア22は、例えば複数の「クラスファイル」、複数の「実行形式ファイル」、複数の「テキストファイル」を含む。
本図に示すように、再生装置102の制御内容は、ハードウェアの上に、ファームウェア22が存在するという一般的なものである。このファームウェア22は、例えば仮想ファイルシステム23、アクセス制御機構24、再生エンジン25、再生制御エンジン26、クラスローダ7、システムアプリケーシ28を階層化したものである。
仮想ファイルシステム23は、ローカルストレージに格納されたダウンロードコンテンツを、BD−ROMにおけるディスクコンテンツと一体的に取り扱うための仮想的なファイルシステムである。ここでローカルストレージに格納されたダウンロードコンテンツは、図2に示したClip情報、プレイリスト情報を含む。このダウンロードコンテンツにおけるプレイリスト情報はBD−ROM及びローカルストレージのどちらに存在するClip情報であっても、指定できる点で、BD−ROM上のプレイリスト情報と異なる。この指定にあたって、仮想ファイルシステム23上のプレイリスト情報は、BD−ROMやローカルストレージにおけるファイルをフルパスで指定する必要はない。BD−ROM上のファイルシステムやローカルストレージ上のファイルシステムは、仮想的な1つのファイルシステム(仮想ファイルシステム23)として、認識されるからである。故に、プレイリスト情報は、Clip情報の格納したファイルのファイルボデイにあたる数値を指定することにより、仮想ファイルシステム23、BD−ROM上のAVストリームを指定することができる。仮想ファイルシステム23を介してローカルストレージの記録内容を読み出し、BD−ROMの記録内容と動的に組み合わせることにより、様々な再生のバリエーションを産み出すことができる。ローカルストレージと、BD−ROMとを組合せてなるディスクコンテンツは、BD−ROMにおけるディスクコンテンツと対等に扱われるので、本願における”BD−ROM”は、ローカルストレージ+BD−ROMの組合せからなる仮想的な記録媒体をも含むことにする。
アクセス制御機構24は、正当権限をもったBD−Jアプリケーション(Signedアプリケーションと呼ばれる)のみがローカルストレージにおけるアプリケーションデータ領域をアクセスできるよう、強制的な制御を行う。そうした強制的な制御によって、有効なデジタル信用証明書をもったBD−Jアプリケーションのみが、アプリケーションデータ領域におけるベンチマークスコアをアクセスすることができることになる。
再生エンジン25は、AV再生ファンクションを実行する。再生装置102のAV再生ファンクションとは、DVDプレーヤ、CDプレーヤから踏襲した伝統的な機能群であり、再生開始(Play)、再生停止(Stop)、一時停止(Pause On)、一時停止の解除(Pause Off)、Still機能の解除(still off)、速度指定付きの早送り(Forward Play(speed))、速度指定付きの巻戻し(Backward Play(speed))、音声切り換え(Audio Change)、副映像切り換え(Subtitle Change)、アングル切り換え(Angle Change)といった機能である。AV再生ファンクションを実現するべく、再生エンジン25は、バッファ上に読み出されたAVストリームのうち、所望に時刻にあたる部分のデコードを行うよう、デコーダを制御する。所望の時刻からのデコードを行わせることにより、AVストリームにおいて、任意の時点での再生を可能することができる。
再生制御エンジン26は、プレイリスト情報に対する再生制御ファンクション(i)、再生装置102における状態取得/設定ファンクション(ii)といった諸機能を実行する。プレイリスト情報に対する再生制御ファンクションとは、再生エンジン25が行うAV再生ファンクションのうち、再生開始や再生停止を、カレントプレイリスト情報及びClip情報に従って行わせることをいう。これら機能(i)〜(ii)は、上位層からのAPIコールに応じて実行する。以上の再生エンジン25と、再生制御エンジンとの組みは、“AV再生ライブラリ”と呼ばれ、AV再生専用のライブラリとして再生装置102に実装される。
BD−Jモジュール27は、Java(登録商標)プラットフォームであり、Java(登録商標)仮想マシン、コンフィグレーション、プロファイルからなる。これらのうちJava(登録商標)仮想マシンは、クラスファイルのインスタンスを構成するバイトコードの解釈実行を行うインタプリタであり、バイトコードをネイティブコードに翻訳してMPU16に実行させる。このインタプリタは、BD−Jアプリケーションの実行速度に直接影響を与える重要な部分であり、具体的な実装としては、バイトコードをネイティブコードに変換するJITコンパイラを備えたインタプリタとして実装することができる。このようなJITコンパイラの具備により、解釈実行の高速化を図ることができる。また、インタプリタの一部についてはハードウェアを用いて実装することができる。
システムアプリケーション28は、クラスファイルにて定義されたシステムプログラムであり、RAM15におけるヒープメモリに配置される。システムアプリケーション28の類型としては、クラスファイルに格納されたオブジェクト指向言語の構造体をバイトコードに変換し、ヒープメモリ上にロードする「クラスローダ」、「アプリケーションマネージャ」、アプリケーションに出力すべきイベント処理を行う「ユーザイベントマネージャ」、「ベンチマークスコア設定部」などがある。
<ベンチマークスコア>
図8(a)におけるテキストファイルは、例えば再生装置102に組み込まれたハードウェア及びファームウェア22に対するベンチマークスコアを格納している。ベンチマークスコアとは再生装置に組み込まれたハードウェア、ファームウェアの性能を示す指標であり、ベンチマークテストとは上述の指標を算出または計測するための試験である。ベンチマークプログラムとはベンチマークテストを行なうためのプログラムである。本実施形態に係る再生装置102に対するベンチマークテストは、再生装置102を出荷する前に、マニファクチャが再生装置102上でベンチマークアプリケーション29を実行することでなされる。ファームウェア22に組込まれたテキストファイルは、例えば公式のアプリケーションによるベンチマークテストの結果であり、この結果を“ベンチマークスコア”としてテキストファイルに書き込む。またこのとき、ベンチマークスコアに対するデジタル証明書、ベンチマークスコアを算出するために用いたベンチマークプログラムを発行した組織の組織ID、ベンチマークプログラムのアプリケーションIDを組み込む。
a)JPEG、PNG等の圧縮イメージデータの展開、メモリへのロード、オーディオデータのメモリへのローディング、フォントデータのロード、
b)AV再生、AVストリームの切り替え、字幕、音声などの切り替え、
c)浮動小数点や三角関数などの演算、矩形イメージ描画(α合成あり、なし)、イメージ拡大縮小、多角形描画、スプライト描画、文字列描画など
がある。それら個別の機能実施を同時に複合的に実施した場合の時間も、ベンチマークの対象となる。
こうした処理を対象としたベンチマークテストの結果、つまり、
1)JPEG、PNG等の圧縮イメージデータの展開を要求してから、処理が完了するまでのターンアラウンド時間、
2)メモリへのロードを要求してから、処理が完了するまでのターンアラウンド時間、メモリへのローディング、ロードを要求してから、処理が完了するまでのターンアラウンド時間
3)AV再生呼び出しから実際の再生にかかるターンアラウンド時間、
4)AVストリームの切り替えを要求してから、処理が完了するまでのターンアラウンド時間、
5)字幕、音声などの切り替えを要求してから、処理が完了するまでのターンアラウンド時間、
6)浮動小数点や三角関数などの演算を要求してから、演算が完了するまでのターンアラウンド時間、
7)矩形イメージ描画を要求してから、処理が完了するまでのターンアラウンド時間、
8)イメージ拡大縮小、多角形描画、スプライト描画、文字列描画などを要求してから、描画が完了するまでのターンアラウンド時間
といったものが、ベンチマークスコアとしてファームウェア22に組込まれることになる。これら組み込まれたベンチマークテストの結果は、例えば再生装置102が図5(b)に示すように、BD−Jモードにおいて、キャラクタアニメーションの表示と、動画再生とを組み合わせたような合成映像をユーザに提示する場合に再生装置102にかかる負荷がどの程度なのかを示す指標となり、この指標に応じて例えば図6に示すキャラクタアニメーションの処理負荷を動的に切り替えることが可能となる。
ベンチマークスコアは、例えばベンチマークテストの対象となった処理を識別する識別情報と、ターンアラウンド時間の計測値とを対応付けて構成される。ファームウェアに組込まれたテキストファイルは、例えば処理の識別情報と、ターンアラウンド時間の計測値との組みを羅列したリスト形式になっており、識別情報を用いることで、任意の処理のターンアラウンド時間を得ることができる。
図9は、再生装置102の開発環境を示す図である。この開発環境において、再生装置102は、開発用コンピュータ105と、LAN接続されている。また、ファームウェア22には、ベンチマークスコアを除くファームウェア22、つまり、ファームウェア22を構成する実行形式ファイル、クラスファイルが記録されている。これらのものが完備しているので、本図の再生装置102は、製品としてユーザに供給されるものと同等の性能をもつ。そして、かかる再生装置102には、LANを介して開発用コンピュータ105からベンチマークアプリケーション29が供給される。
ADK(Application Devlopment Kit)とは、JPDA(Java Platform Debugger Architecture)の仕組みを利用することでシステムアプリケーションのデバッグを実現する開発環境である。
本図は、図8(b)をベースとして作図されており、このベースとなるレイヤモデルと比較して、BD−Jモジュール27上でベンチマークアプリケーション29が動作している点、再生装置102にコンピュータ105が接続されている点が異なる。ベンチマークアプリケーション29は、例えばBD-ROMドライブ1、HDドライブ13、カードドライブ14の何れかから、読み出されて、BD-Jモジュール27上で動作しているものである。さらに、コンピュータ105は、マニファクチャの作業担当者により操作されるものである。
ベンチマークスコアを格納したテキストファイルは、ファームウェア22を構成する実行形式ファイル及びクラスファイルと一体として扱われており、これらのテキストファイル、実行形式ファイル、クラスファイルは、例えば1つにまとめて、ZIPファイル等に格納することができる。ブート時にあたってベンチマークスコアを格納したテキストファイルは、実行形式ファイル及びクラスファイルと共にファームウェア22からRAM15に読み出され、RAM15の常駐領域に配置されて、MPU16におけるメモリ空間にマッピングされることになる。ベンチマークスコアを格納したテキストファイルは、実行形式ファイル及びクラスファイルと一体的になっているので、このようなベンチマークスコアの状態を、“ファームウェア22に組み込まれている”と呼ぶことにする。
(ファームウェア22の更新)
続いて、ユーザによるファームウェア22の更新が、どのように行われるかについて説明する。
新たなファームウェア22を格納するためのリムーバブルメディアには、例えばSDメモリカードやCD−Rを利用することができる。
続いて、再生装置102のソフトウェア的な構成要素であるブートローダ21について説明する。
図11は、ブートローダ21、システムアプリケーション28の内部構成を示す図である。
(ファームウェア起動部31)
ファームウェア起動部31は、MPU16の特権モードで動作することができるプログラムの1つであり、本装置の電源スィッチが押下されて、電源ユニットからMPU16、デバイスに電源が供給され、これらのハードウェアが起動した際、フラッシュROM18に格納されたファームウェア22をメモリ(例えば図7に示すRAM15におけるファームウェアの常駐領域)にロードして、MPU16による実行に供する。このロードの際、フラグの値が“0”であるか否かを判定することでファームウェア22の実行が、最初の実行であるかどうかの判定を行い、最初の実行であれば、フラグを“1”に設定する。このファームウェア22の最初の実行は、マニファクチャがファームウェアを完成した後の、マニファクチャによるファームウェア22の最初の実行と、ユーザによってファームウェアが更新された場合における、更新後のファームウェア22の最初の実行とがある。
ファームウェア更新部32は、MPU16の特権モードで動作することができるプログラムの1つであり、本装置の電源スィッチが押下されて、電源ユニットからMPU16、デバイスに電源が供給され、これらのハードウェアが起動した際、新たなファームウェア22が記録されたリムーバブルメディアが装填されているかどうかを判定する。そして、リムーバブルメディアが装填されている場合、かかるリムーバブルメディアに、マジックナンバーがファイル名として付与されたファイルが存在するかどうかをチェックする。このマジックナンバーは、当該リムーバブルメディアに、アップデート後のファームウェア22が存在することを示す特殊な番号であり、かかるマジックナンバーをもったファイルがリムーバブルメディアに存在すれば、当該リムーバブルメディアから、新たなファームウェア22を読み出して、ファームウェア22上の古いファームウェア22を上書きする。こうした上書きの後、フラグを“0”に更新する。
アプリケーションマネージャ33は、BD−Jオブジェクトにおけるアプリケーション管理テーブル(AMT)に基づいて、“アプリケーションシグナリング”を実行する。具体的には、再生装置102において再生対象となるタイトルの切り替わりが発生した場合、新たなタイトルに対応するBD−Jオブジェクトにおけるアプリケーション管理テーブルを参照して、この新たなタイトルを生存区間とするBD−Jアプリケーションがどれであるかを判定する。そして、判定されたBD−Jアプリケーションのロードをクラスローダに行わせる。本実施形態特有の処理として、再生装置102にBD−ROMが装填され、再生装置102が起動された際、ベンチマークスコア設定部34をBD−Jモジュール27による実行に供する。
初期化部に対応するベンチマークスコア設定部34は、MPU16の特権モードで動作することができるプログラムの1つであり、ファームウェアの最初の実行であるかを示すフラグが“0”か否かの判定を行い、もし“0”であれば、フラッシュROM18におけるファームウェア22からベンチマークスコアを読み出して、アプリケーションデータ領域に書き込む。
CertIDが“0g1a24ed”であり、OrganizationIDが“4”、ApplicationIDが“5”である場合、図14に示すようなディレクトリ・ファイル構成で、ベンチマークスコアは格納されることになる。図14は、CertIDが例えば“0g1a24ed”、OrganizationIDが例えば“4”、ApplicationIDが例えば“5”である場合の、ディレクトリ・ファイル構成の一例を示す図である。
図15は、アプリケーションデータ領域中のベンチマークスコアが、どのような経路を経てサービスアプリケーションに引き渡されかを示す図である。
矢印(5−a)は、サービスアプリケーションが放ったRead要求の供給経路である。サービスアプリケーションによるRead要求の発行は、ファイル読出のためのAPIメソッドをコールすることでなされる。Read要求におけるアクセス先は、固定ファイルパスを用いて特定される。固定ファイルパスを用いたRead要求は、アクセス制御機構24に引き渡され、アクセス制御機構24による権限チェックに供されることがわかる。
矢印(5−c)は、アプリケーションデータ領域からサービスアプリケーションへのベンチマークスコアの供給経路を象徴的に示す。サービスアプリケーションが正当権限を具備していることが認められれば、READ要求に従ってシステムアプリケーシ28は、ローカルストレージにおけるPersistent領域のアクセスを行い、その結果、矢印(5−d)に示すように、ベンチマークスコアはサービスアプリケーションに引き渡されることになる。
図16(a)は、ファームウェア更新部32の処理手順を示すフローチャートである。ステップS1は、リムーバブルメディアが装填されたかどうかの監視であり、リムーバブルメディアが装填されればステップS2に移行する。ステップS2は、マジックナンバーを有したファイルが存在するかどうかの判定である。もし存在しなければ何の処理も行わず、本フローチャートの処理を終了する。もし存在すれば、ステップS3において、リムーバブルメディアからファームウェア22を読み出して、フラッシュROM18における古いファームウェア22を上書きする。その後、ステップS4において、フラッシュROM18におけるフラグを、“0”に設定する。
図17は、ベンチマークスコア設定部34の処理手順を示すフローチャートである。本フローチャートでは、先ずファームウェア22からフラグを読み出して(ステップS11)、ステップS12の判定ステップを実行する。ステップS12は、フラグが“1”かどうかの判定であり、もし“1”であればステップS13〜ステップS15の処理を実行する。フラグが“1”でなければ、ステップS16、ステップS17を実行する。
以上のように本実施形態によれば、ベンチマークスコアはファームウェア22に組み込まれており、ファームウェア22が最初に実行された際、ベンチマークスコアは、アプリケーションデータ領域に書き込まれるので、BD−Jアプリケーションは、アプリケーションデータ領域をアクセスするだけで、ハードウェアの性能に応じた処理負荷の変更を実行することができる。
(第2実施形態)
本実施形態では、アクセス制御機構24によるアクセス権限のチェックがどのように行われるかを具体的に開示する。かかるアクセス権限のチェックは、デジタル信用証明書を対象にしてなされる。
A)ディストリビュータは、デジタル信用証明書を作成するために公開鍵を使用する。
C)ディストリビュータは、供給されたハッシュ値を用いて、デジタル信用証明書を作成する。
クラスファイルは、Java言語等、オブジェクト指向言語を用いて記述されたクラス構造体を格納している。
(ii)MANIFEST.MF:マニフェストファイル
マニフェストファイルは、デジタル証明書に対応するものであり、Java(登録商標)アーカイブファイルの属性、Java(登録商標)アーカイブファイル内のクラスファイルやデータファイルのハッシュ値が記載されているファイルである。Java(登録商標)アーカイブファイルの属性には、クラスファイルのインスタンスである、BD−Jアプリケーションに付与されるアプリID、Java(登録商標)アーカイブファイルを実行するために最初に実行すべきクラスファイル名がある。上記の二つのJava(登録商標)アーカイブファイルの属性が存在しない場合、Java(登録商標)アーカイブファイル中のクラスファイルのインスタンスであるBD−Jアプリケーションを実行しない。
SIG−BD.SFは、マニフェストファイルのハッシュ値が記載されているファイルである。
(iv)SIG−BD.RSA:デジタルシグネチャファイル
SIG−BD.RSAは、「デジタル証明書チェーン」、SIG−BD.SFの「署名情報」が記載されているファイルである。
「デジタル証明書チェーン」とは、一つ目の証明書(ルート証明書)が二つ目の証明書を署名し、また同じようにn番目の証明書がn+1番目の証明書を署名している形をもつ複数の証明書群である。デジタル証明書チェーンの最後の証明書を「リーフ証明書」と呼ぶ。この構成を利用することにより、ルート証明書から順番に次の証明書を保障していくことにより、デジタル証明書チェーンの最後の証明書までを保障することができる。
「リーフ証明書」には、組織IDが記載されている。SIG−BD.SFは、PKCS#7という形式により格納されている。PKCS#7は署名および一つ以上のデジタル証明書を格納するためのファイル形式であり、IETF(Internet Engineering Task Force)より発行されたRFC2315に記載されている。RFC2315はhttp://www.ietf.org/rfc/rfc2315.txtより参照できる。
bd.XXXX.permは、実行されるBD−Jアプリケーションにどのパーミッションを与えるのかの情報を格納するファイルである。具体的に以下の情報を格納する。
(ア)デジタル信用証明書(Credential)
以降、デジタル信用証明書について説明する。“デジタル信用証明書”とは、ある組織に帰属する組織ディレクトリ内のファイルを共有化するための情報である。この共有化は、ある組織に属するアプリケーション用ファイルを利用する権限を、他の組織に属するアプリケーションに提供することでなされる。そのためデジタル信用証明書は、権限を提供する側の組織を示す提供者組織ID、権限を受領する側の組織の識別を示す受領者組織IDを含む。
続いて(イ)アプリ間通信の許可情報について説明する。一つのJava(登録商標)アーカイブファイルに含まれるBD−Jアプリケーションは通常、他のJava(登録商標)アーカイブファイルに含まれるBD−Jアプリケーションとの通信(アプリ間通信)が許可されない。bd.XXXX.permにアプリ間通信の許可が与えられている場合だけアプリ間通信が可能である。
図19は、権限の提供がない場合のSIG−BD.SF、BD.ROOT.CERTIFICATEの相互関係を示す図である。本図における矢印d1は、これらのファイルの内部構成の情報要素のうち、同一性があるものを示している。権限の提供がない場合、BD.ROOT.CERTIFICATE内のルート証明書(ディスクルート証明書)は、SIG−BD.RSAにおける第1のデジタル証明書チェーン内のルート証明書と同一性を有したものになる。
ステップS21は、ADA−CertID−OrganizationID−ApplicationIDという組合せの固定ファイルパスを用いたアクセス要求が存在したかどうかの判定であり、もしそうであるなら、ステップS22〜ステップS25を実行する。そうでないなら、そのアクセス要求に従った処理を行う。ステップS22〜ステップS25は、要求元のBD−Jアプリケーションのアーカイブファイルから、デジタル信用証明書を取り出し(ステップS22)、デジタル信用証明書を用いて要求元のサービスアプリケーションのアクセス権限をチェックして、検証が成功したかどうかを判定する(ステップS24)。検証が成功すれば、仮想ファイルシステム23におけるファイルI/Oを介して、要求対象となるテキストファイルを読み出し、要求元BD−Jアプリケーションに引き渡す(ステップS25)。検証が失敗すれば、要求元BD−Jアプリケーションが、仮想ファイルシステム23におけるファイルI/Oを介して、要求対象となるテキストファイルを読み出すことを許可せず、例外終了する。
図22は、デジタル信用証明書を用いた権限チェックの処理手順を示すフローチャートである。本フローチャートは、アクセスしようとするサービスアプリケーションに対して、ステップS31〜ステップS37の判定を順次行い、どれかの判定ステップの判定結果がNoであれば、検証失敗であると、検証結果を下すものである。
ステップS31は、デジタル信用証明書における受領者ルート証明書のハッシュ値と、BD−ROMにおける、BD.ROOT.CERTIFICATE内のディスクルート証明書とが一致するかどうかを確認である。
ステップS33は、デジタル信用証明書における受領者アプリIDと、サービスアプリケーションのアプリIDと一致するかどうかの確認である。
ステップS35は、デジタル信用証明書に含まれる署名、つまり、提供者ルート証明書のハッシュ値が正しいかどうかの確認である。この確認は、デジタル信用証明書についてのハッシュ値を算出してみて、そうして算出されたハッシュ値が、デジタル信用証明書内の提供者ルート証明書のハッシュ値と一致しているかどうかの判定でなされる。
ステップS37は、デジタル信用証明書の署名である、SIG−BD.SFにおけるリーフ証明書の組織IDが、デジタル信用証明書内に記述されている提供者組織IDと一致するかどうかの判定である。
以上の判定を経て、デジタル信用証明書の検証に成功した場合、アプリケーションデータ領域に記録されているベンチマークスコアに対して、デジタル信用証明書の提供アクセス方法に記述されたアクセスを、アクセス要求を行ったサービスアプリケーションに対して許す。
このように、デジタル信用証明書により検証されたサービスアプリケーションに対して、読み取りだけでなく、書き込みを許すことにより、サービスアプリケーションにより、ユーザ待ちを生じることのない程度のベンチマークを実行し、そのスコアを、デジタル信用証明書を持つサービスアプリケーション間で共有することが可能となる。
第1実施形態では、ファームウェア22に組込まれたベンチマークスコアを読み出して、アプリケーションデータ領域に書き込んだが、本実施形態では、ファームウェア22に組み込まれたベンチマークスコアをローカルストレージにおけるアプリケーションデータ領域にコピーするのではなく、ベンチマークアプリケーション29は、ファームウェア22起動時にメモリ(例えば図7に示すRAM15)に展開する。
上述の例では、例えば図7に示すRAM15のヒープメモリにベンチマークスコアを書き込む構成としたが、ファームウェア22にベンチマークスコアは組み込まれているわけであるから、例えば本装置の電源スィッチが押下されて、電源ユニットからMPU16、デバイスに電源が供給され、これらのハードウェアが起動した際、フラッシュROM18に格納されたファームウェア22をRAM15におけるファームウェアの常駐領域にロードするときにベンチマークスコアもロードするような構成としても良い。
また上述の位置管理情報(図示せず)はRAM15におけるベンチマークスコアの格納位置に関する情報だけでなく、本来の格納場所(例えば、ADA−CertID−OrganizationID−ApplicationIDという組合せの固定ファイルパスによって特定される格納位置)との対応関係を併せて保持するようにしても良い。
(第4実施形態)
第2実施形態では、リムーバブルメディアによって新たなファームウェア22が供給された場合、自動的にアプリケーションデータ領域に存在するベンチマークスコアの上書きを行ったが、本実施形態では、ファームウェア22の更新がなされた場合、既にアプリケーションデータ領域に存在するベンチマークスコアのバージョンと、新たなファームウェア22に組込まれたベンチマークスコアとのバージョン比較を行い、新たなFeRAM15組み込まれたベンチマークスコアが新しいと判定された場合にのみ、新たなファームウェア22内のベンチマークスコアを、アプリケーションデータ領域に書き込む。ベンチマークスコアは、テキストファイルに格納された状態でファームウェア22に組み込まれるので、テキストファイルの作成又は更新日時をベンチマークスコアのバージョンとして採用することができる。また、ベンチマークがなされた日時をテキストファイルに記録しておいて、この日時をベンチマークスコアのバージョンとして採用することもできる。
(第5実施形態)
本実施形態は、ベンチマークアプリケーション29によるベンチマークテストが、どのような処理手順で行われるかを具体的に開示する。図24は、ベンチマークアプリケーション29によるベンチマークテストの処理手順を示すフローチャートである。
ハードウェア処理としては、〜というものがあるので、これらのそれぞれを実行するためのAPIメソッドの呼出が、ベンチマークアプリケーション29に記述されていて、それらのAPIメソッドの呼出のそれぞれについて、ステップS43〜ステップS48が繰り返されることになる。
この単位時間Wは、例えば、MPU16が数百個以上の命令を実行するクロック時間であり、ベンチマークスコアにおけるターンアラウンド時間の時間精度を基準にして定められる。例えば、ターンアラウンド時間の時間精度に47KHzを採用した場合、MPU16の動作クロック時間は、このターンアラウンド時間の時間精度の1/数百以下の値になるので、ステップS46では、このターンアラウンド時間の単位時間の経過を待つ。
そして、処理Xが完了して、ベンチマークアプリケーション29に完了の通知イベントが返されれば、これまで単位時間Wが加算された計測時間Xを、処理Xの識別情報と対応付けて開発用コンピュータ105にエクスポートする。開発用コンピュータ105は、処理Xの識別情報と、計測時間Xとを羅列することで、処理Xについてのベンチマークスコアを得る。以降、同様の処理を繰り返すことで、処理Xの識別情報と、計測時間Xとが羅列されたベンチマークスコアのテキストファイルを得る。 このようなベンチマークテストでは、ベンチマークスコアの時間精度は、単位時間Wによって定められることになる。
(第6実施形態)
本実施形態は、リアルタイムオペレーティングシステム(リアルタイムOS)を、ファームウェア22の構成要素とした実施形態である。リアルタイムOSでは、最悪実行時間の予測が可能であり、AV再生のリアルタイム性の実現に好適である。
1.カーネル
カーネルは、システムコール処理、割込信号により割込ハンドラを起動するハンドラ入口処理、割込ハンドラの出口処理を行い、タスクスケジューラを有する。各実施形態で述べたBD−Jアプリケーションは、リアルタイムOSでは、このカーネルによって、“アプリケーションタスク”として扱われる。アプリケーションタスクによるAPIメソッドの呼出しは、リアルタイムオペレーションシステムにおいては、上述したようなシステムコールで実現される。タスクスケジューラは、順次タスクを生成してMPUによる実行に供する。この生成は、実行すべきプログラムについてタスクコントロールブロックを作成して、それらを待ち行列に供することでなされる。
2.ミドルウェア
ミドルウェアは、システムコールを実現するためのAPI(Application Programing Interface)群を具備しており、カーネルの存在を前提にして、ブラウザや、ファイルシステム、映像再生及び音声再生といった機能を実現する。アプリケーションは、デコーダといったデバイスを、このミドルウェアを介して、制御することができる。第1実施形態で述べた仮想ファイルシステム23、アクセス制御機構24、再生エンジン25、再生制御エンジン26、BD−Jモジュール27は、リアルタイムOSでは、このミドルウェアとして位置付けられる。
デバイスドライバは、「割込ハンドラ部」と、「割込タスク部」、「リクエスト処理部」から構成される。デバイスドライバは、メモリ空間のシステム用領域にマッピングされ、特権モードで動作することになる。
「リクエスト処理部」は、パラメータブロックを入出力キューに登録した後、割り込み許可を行って、カーネルに復帰する。
「割込みタスク」は、入力完了状態を引数にして、システムコールにより、入出力完了を、カーネルに通知する。かかる通知を受け取れば、カーネルは、依頼元のタスクを起床する。
ファームウェア22は、本装置の電源スィッチが押下されて、電源ユニットからMPU16、デバイスに電源が供給され、これらのハードウェアが起動した際、フラッシュROMに格納されたファームウェア22をメモリ(例えば図7に示すRAM15におけるファームウェアの常駐領域)にロードして、MPU16による実行に供する構成について説明をしたが、これに限定される必要はなく、MPU16はフラッシュROM18に格納されたファームウェア22を直接読み込んで実行するように構成をしても良い。
また、フラッシュROM18における格納位置(例えばアドレス情報)に関する情報を含む位置管理情報(図示せず)を作成しておき、アプリケーションプログラムからベンチマークスコアへのアクセスの要求があったとき位置管理情報に従って、フラッシュROM18におけるベンチマークスコアを読み出して、アプリケーションプログラムへ渡すように構成しても良い。
以上、本願の出願時点において、出願人が知り得る最良の実施形態について説明したが、以下に示す技術的トピックについては、更なる改良や変更実施を加えることができる。各実施形態に示した通り実施するか、これらの改良・変更を施すか否かは、何れも任意的であり、実施する者の主観によることは留意されたい。
第1実施形態において、ベンチマークスコアはテキストファイルに格納されたが、テキストファイルでは、中身の参照が容易であるので、ファームウェア22への組み込みにあたっては、ベンチマークスコアをバイナリファイルに格納しておくが望ましい。
(再生装置102の任意的な構成要素)
任意的要素として、再生装置102にレンダリングエンジンを設けてもよい。レンダリングエンジンは、Java(登録商標)2D,OPEN−GLといった基盤ソフトウェアを備え、BD−Jアプリケーションからの指示に従ってコンピュ−タ・グラフィックスの描画を行い、描画されたコンピュ−タ・グラフィックスをプレーンメモリに出力する。この描画を高速に行うには、任意的なハードウェア要素として、再生装置102に、グラフィクスアクセレータを追加するのが望ましい。 他にも、浮動小数点演算を行うコプロセッサ(Floating Pointed CoProcessor)が実装されていてもよい。
上記実施形態では、BD−Jアプリケーションからのベンチマークスコアアクセスが要求された場合に、デジタル信用証明書を解析検証するとしたが、このデジタル信用証明書の検証は、BD−Jアプリケーションの起動時やファームウェア22の起動時などのタイミングで予め行ってもよい。
受領者組織は、BD−ROMなどのサービスアプリケーションを含むコンテンツを製作した製作者であると仮定して説明を行ったが、コンテンツ製作者とは独立して、当該ベンチマークスコアアクセスを実施するBD−Jアプリケーションに対する署名を実施する組織であれば、どのような組織でもよい。この場合の受領者組織IDは、その組織を示すID番号となる。このように、実際にコンテンツ製作をする組織と独立した組織を受領者組織として運用できることは明らかである。
これまでの説明は、ファームウェア起動部31、ファームウェア更新部32、ベンチマークスコア設定部34を、BD−ROMの再生を行う再生装置102に適用した場合について説明したが、かかる技術的事項の適用範囲は、そのようなBD−ROM再生装置102に限らない。例えば、録画機能を持つ再生装置102であっても良い。そのときベンチマークスコア情報は再生機能とそのほかの機能と共有されてもよい。例えば、再生機能を具備したパソコンに、ファームウェア起動部31、ファームウェア更新部32、ベンチマークスコア設定部34を適用する場合、ウェブブラウザやワードプロセッサが利用されている状態でのベンチマークスコア情報をファームウェア22に組み込んでおいてもよい。
上述したようなベンチマークスコアの組込み及び書き込みは、映像再生と、BD−Jアプリケーションの実行を関連付けさせて視聴を行なわせる機器であれば、一般のどのような機器に対しても適用可能である。例えば、BD−Jアプリケーションが、放送波やネットワークストリームに組み込まれて、供給されるような再生装置102においても、適用が可能となる。 (プログラム記述言語の適用範囲)
上記実施形態では、オブジェクト指向プログラミング言語としてJava(TM)言語を利用したが、Java(TM)ではなく、UNIX(登録商標) OSなどで使われているB−Shellや、Perl Script、ECMA Scriptなど他のプログラミング言語であっても良い。
BD−Jアプリケーションからのアクセスを考慮したため、上記実施形態では、ベンチマークスコアはアプリケーションデータ領域に配置されたが、ベンチマークスコアを保持するための記録装置の物理的な実施形態は任意のものであってよく、ハードディスクやフラッシュメモリのような不揮発性の記憶装置であっても、DRAM15のような揮発性の記憶装置であってもよい。
ベンチマークスコアを利用するベンチマークアプリケーション29は、BD−ROMではなく、WWWサーバからダウンロードされて、再生装置102内のローカルストレージに書き込まれたものであってもよい。かかるダウンロードにおいて、BD.ROOT.CERTIFICATEに収録され、ディスクルート証明書として書き込まれているルート証明書と同一性をもつルート証明書を、SIG−BD.SFに格納してJava(登録商標)アーカイブファイルに包含させる。こうすることで、Java(登録商標)アーカイブファイルを、ダウンロードにて再生装置102に供給する場合も、BD−ROMに割り当てたディスクルート証明書を用いることにより、Java(登録商標)アーカイブファイルの正当性を再生装置102に確認させることができる。
BD−ROMに記録されるBD−Jアプリケーションは、映画作品を構成するものであるとしたが、ローカルストレージにインストールして利用されるアプリケーションではなく、BD−ROMに記録された状態で利用されるアプリケーションであるなら、これ以外のものを構成するものであってもよい。例えば、ゲームソフトを構成するアプリケーションであってもよい。また、本実施形態ではディスク媒体として、BD−ROMを題材に選んだが、可搬体であり、著作権保護がなされた記録媒体であるなら、他の記録媒体を採用してもよい。
この場合AVストリームは、アナログ入力信号を記録装置がリアルタイムエンコードすることにより得られたトランスポートストリームであってもよいし、記録装置がデジタル入力したトランスポートストリームをパーシャル化することで得られるトランスポートストリームであってもよい。
サービスアプリケーションが、クライアントプログラムであり、ネットワーク上のサーバ装置に対して、処理を要求する場合、ベンチマークスコアは、処理を要求してから、処理が完了し、応答が返るまでのターンアラウンド時間を表現することが望ましい。上述したような、サーバ装置に対する処理は、クライアント側のプロトコルスタックにおけるオーバーヘッドと、サーバ装置側のプロトコルスタックにおけるオーバーヘッドとが発生し、これらによってターンアラウンド時間は変動を受ける。このように、クライアント側、サーバ側で、プロトコルスタックにおけるオーバーヘッドが発生する場合、このオーバーヘッドを加味したベンチマークスコアを、ファームウェア22に組み込んでおき、アプリケーションデータ領域に書き込むことで、サービスアプリケーションは、ネットワークにおけるトラフィックの大小に応じた、処理負荷調整を実現することができる。
ベンチマークスコアは、ベンチマークアプリケーション29が計測するものに限らず、再生装置102の標準プレーヤモデルから、導きだすことができる値を、採用してもよい。再生装置102の標準プレーヤモデルでは、BD−ROMからバッファへとTSパケットを転送するための転送レートが詳細に記述されているため、ベンチマークスコアの中には、それら規定済みの転送レートが一意に導き出せるものも多いからである。
(ベンチマークスコアの書き込み時期)
再生装置102に電源が投入され、ファームウェア22が起動した際、その起動毎に、ファームウェア22に組み込まれたベンチマークスコアをアプリケーションデータ領域に書き込んでもよい。こうすることで、アプリケーションデータ領域には確実にベンチマークスコアが存在するという確実性を保証することができる。ベンチマークスコア書き込みの頻度は高いが、それでもアプリケーション起動の度にベンチマークを実行するよりは、サービスアプリケーションのスターティングディレイは短い。
各実施形態におけるハッシュ値とはSHA−1やMD5などのセキュアハッシュ関数を利用した結果の値である。セキュアハッシュ関数は、同じハッシュ値を持つ異なるデータを見つけるのは実質不可能であるという特徴を持っている。
(ルート証明書のハッシュ値)
各実施形態におけるルート証明書のハッシュ値とは、必ずしもルート証明書全体のデータから算出する必要はなく、少なくともルート証明書の中に含まれる公開鍵のデータのみから算出することにしてもよい。MANIFEST.MF、SIG−BD.SF、SIG−BD.RSAの中に格納されるハッシュ値の計算に利用されるセキュアハッシュ関数はディスク作成者が明示的に選択できる。
ルート証明書の比較は、ルート証明書が同じとあるかどうかの比較、ルート証明書の中に含まれる公開鍵が同じであるかどうかの比較を行うようにしても良い。また別の方式としては、SIG−BD.RSAの中にある一つ目の証明書(ルート証明書)を無視し、ルート証明書に続く二つ目の証明書がディスクルート証明書により署名されているかどうかを確認するようにしてもよい。どの方式を使ってもディスクルート証明書がSIG−BD.RSAの中の二つ目の証明書を保障していることになるためセキュリティ観点での効果が同じである。
1.攻撃対象のディスク作成者により作成された正当なBD−ROMから、デジタル証明書により署名されている攻撃対象のJava(登録商標)アーカイブファイルを読み取る
2.攻撃するためのJava(登録商標)アーカイブファイルを作成し、デジタル証明書により署名を行う
3.攻撃対象のJava(登録商標)アーカイブファイルと攻撃するためのJava(登録商標)アーカイブファイルを攻撃用BD−ROMに記録する。
(ベンチマークスコアの時間精度)
またベンチマークスコアは、処理を要求してから、処理が完了し、応答が返るまでのターンアラウンド時間を27MHzの時間精度で表現してもよい。何故なら、AVストリームを構成するTSパケットのそれぞれには、27MHzの時間ATCをもつATS(Arrival TIme Stamp)が付与されており、再生装置102の内部は、1/27,000,000秒という時間精度で、動作を行うATC(Arrival Time Clock)が存在する。そうしたATCの時間精度で、ベンチマークスコアを作成しておけば、サービスアプリケーションは、ATSに対する処理と同期するように、処理負荷の変化を実行することができるからである。
各実施形態に示したバッファは、DPRAMで実現することが望ましい。DPRAM(Dual Port RAM)は、入出力インターフェイスを2系統もち、何れの側からもデータの読み書きをすることができるメモリである。DPRAMでは、データの矛盾を避けるよう、ハードウェアによって排他制御がなされる。ベンチマークスコアの測定にあたっては、かかるバッファの書き込み及び読み出しに要する時間を、緻密に評価する必要がある。
ビデオデコーダ、オーディオデコーダは、DSP(Digital Signal Processor)で構成するのが望ましい。DSPは、固定小数点型、浮動小数点型のものがあり、バレルシフタ、レジスタ、乗算器、加算器からなる積和演算器を具備している。この積和演算器により、平滑化処理等、デジタル信号処理を高速に行うことができる。圧縮符号化された映像、音声のデコーダには、DCT係数を用いた浮動小数点演算が必要になるので、かかるDSPをデコーダとして採用すれば、AV再生をリアルタイムに実現することができる。ベンチマークスコアの測定にあたっては、かかるデコーダが演算を行うのに要する時間を、緻密に評価する必要がある。
図7に示した再生装置102を構成するハードウェアのうち、機構的な構成要素(BDドライブ1、HDドライブ13、カードドライブ14)、大容量のメモリによって実装される構成要素(ビデオ用のプレーンメモリ5、プレーンメモリ8)を除いた、論理素子を主要部とする部分を、1つのシステムLSIとして構成することが望ましい。何故なら、論理素子を主要部とする部分は、高密度に集積化することができるからである。図7では、1つのシステムLSIとして構成すべき部分を枠内に囲んでいる。但し、この図7のシステムLSI化は、一例であって、エレメンタバッファ7やビデオデコーダ4、オーディオデコーダ4、グラフィクスデコーダ6をも、一体のシステムLSIにしてもよい。
これらのピンは、他の回路とのインターフェイスとしての役割を担っている。システムLSIにおけるピンには、こうしたインターフェイスの役割が存在するので、システムLSIにおけるこれらのピンに、他の回路を接続することにより、システムLSIは、再生装置102の中核としての役割を果たす。
エレメンタバッファ7やビデオデコーダ4、オーディオデコーダ4、グラフィクスデコーダ6をも、一体のシステムLSIにする場合、システムLSIのアーキテクチャは、Uniphierアーキテクチャに準拠させるのが望ましい。
・データ並列プロセッサDPP
これは、複数の要素プロセッサが同一動作するSIMD型プロセッサであり、各要素プロセッサに内蔵されている演算器を、1つの命令で同時動作させることで、ピクチャを構成する複数画素に対するデコード処理の並列化を図る。
これは、命令RAM、命令キャッシュ、データRAM、データキャッシュからなる「Local Memory Contoroller」、命令フェッチ部、デコーダ、実行ユニット、レジスタファイルからなる「Processing Unit部」、複数アプリケーションの並列実行をProcessing Unit部に行わせる「Virtual Multi Processor Unit部」で構成される。
これは、ARMコア、外部バスインターフェイス(Bus Control Unit:BCU)、DMAコントローラ、タイマー、ベクタ割込コントローラといった周辺回路、UART、GPIO(General Purpose Input Output)、同期シリアルインターフェイスなどの周辺インターフェイスで構成される。各実施形態で述べたファームウェア22は、このMPUブロックとしてシステムLSIに実装される。
これは、USBインターフェイスやATA Packetインターフェイスを介して、外部バス上に接続されたドライブ装置、ハードディスクドライブ装置、SDメモリカードドライブ装置とのデータ入出力を行う。
・AVI/Oブロック
これは、オーディオ入出力、ビデオ入出力、OSDコントローラで構成され、テレビ、AVアンプとのデータ入出力を行う。
これは、外部バスを介して接続されたSD−RAMの読み書きを実現するブロックであり、各ブロック間の内部接続を制御する内部バス接続部、システムLSI外部に接続されたSD−RAMとのデータ転送を行うアクセス制御部、各ブロックからのSD−RAM15のアクセス要求を調整するアクセススケジュール部からなる。
そうして、各構成要素を具現化してゆけば、回路素子やIC,LSI間を接続するバスやその周辺回路、外部とのインターフェイス等を規定する。更には、接続線、電源ライン、グランドライン、クロック信号線等も規定してゆく。この規定にあたって、LSIのスペックを考慮して各構成要素の動作タイミングを調整したり、各構成要素に必要なバンド幅を保証する等の調整を加えながら、回路図を完成させてゆく。
こうして実装設計が行われ、基板上のレイアウトが確定すれば、実装設計結果をCAMデータに変換して、NC工作機械等の設備に出力する。NC工作機械は、このCAMデータを基に、SoC実装やSiP実装を行う。SoC(System on chip)実装とは、1チップ上に複数の回路を焼き付ける技術である。SiP(System in Package)実装とは、複数チップを樹脂等で1パッケージにする技術である。以上の過程を経て、本発明に係るシステムLSIは、各実施形態に示した再生装置102の内部構成図を基に作ることができる。
FPGAを用いてシステムLSIを実現した場合は、多数のロジックエレメントが格子状に配置されており、LUT(Look Up Table)に記載されている入出力の組合せに基づき、縦・横の配線をつなぐことにより、各実施形態に示したハードウェア構成を実現することができる。LUTは、SRAMに記憶されており、かかるSRAMの内容は、電源断により消滅するので、かかるFPGAの利用時には、コンフィグ情報の定義により、各実施形態に示したハードウェア構成を実現するLUTを、SRAMに書き込むませる必要がある。
プレーンメモリは、多大なメモリ容量を必要とするので、システムLSIに内蔵されているSRAMで実現するのは、望ましくない。外付けのSDRAMで実現するのが望ましい。またプレーンメモリが複数存在する場合は、バンクメモリ方式を採用し、MPUにおけるメモリ空間の一部に、これらをマッピングすることの良策である。ベンチマークスコアの測定にあたっては、かかるプレーンメモリからの読み出しや、書き込みに要する時間を、緻密に評価する必要がある。
AV再生の対象は、デジタルストリーム、マップ情報、プレイリスト情報から構成されるコンテンツであるなら、BD−ROMに規定されたものに限らない。デジタルストリームは、MPEG2,MPEG4−AVC等の符号化方式で符号化されたビデオストリーム、オーディオストリームを多重化することで、得られた多重化ストリームであり、DVD Video−Recording規格ではVOBと呼ばれる。
プレイリスト情報は、開始点たる時刻情報と、終了点たる時刻情報との組みにより、1つ以上の再生区間を定義する情報である。
101 WWWサーバ
102 再生装置
103 テレビ
104 リムーバブルメディア
105 開発用コンピュータ
21 ブートローダ
22 ファームウェア
23 仮想ファイルシステム
24 アクセス制御機構
25 再生エンジン
26 再生制御エンジン
27 BD−Jモジュール
28 システムアプリケーション
29 ベンチマークアプリケーション
31 ファームウェア起動部
32 ファームウェア更新部
33 アプリケーションマネージャ
34 ベンチマークスコア設定部
Claims (15)
- 再生装置であって、
記録媒体からデータを読み出すドライブ部、前記読み出したデータに含まれるAVデータを再生する再生部、プログラムを実行する処理部と、を具備したハードウェア部と、
前記ハードウェア部を制御するファームウェアプログラムと、
前記処理部が前記ファームウェアプログラムを実行する場合、所定の条件を満足すれば、初期化処理を行う初期化部と
所定の記録領域を有する記録部を備え、
前記ファームウェアプログラムには、ベンチマークスコアが組み込まれており、
前記ベンチマークスコアは、前記ドライブ部によって前記記録媒体から読み出されたベンチマークプログラムを前記処理部により実行したとき、前記実行されるベンチマークプログラムからの命令に従って、前記処理部によって実行されるファームウェアプログラムを介して前記ハードウェア部に所定の処理を行わせた結果であって、前記再生装置の処理能力を示す指標であり、
前記初期部は、前記処理部が前記ファームウェアプログラムを最初に実行する場合、前記ファームウェアプログラムに組み込まれているベンチマークスコアを、前記記録部における所定の記録領域に書き込むことにより前記記録領域に書き込んだベンチマークスコアを前記処理部により実行されるアプリケーションプログラムがアクセスできるようにした、
ことを特徴とする再生装置。 - 前記ファームウェアプログラムが更新され、前記処理部が前記更新されたファームウェアプログラムを最初に実行する場合、
前記初期化部は前記更新されたファームウェアプログラムに組み込まれたベンチマークスコアを前記記録部における所定の記録領域に書き込むことを特徴とする請求項1記載の再生装置。 - 前記記録領域に書き込んだベンチマークスコアに前記処理部により実行されるアプリケーションプログラムがアクセスする場合、前記アプリケーションプログラムに対応する信用証明書であって、前記アプリケーションプログラムが前記記録領域に書き込んだベンチマークスコアへのアクセス権限に対する情報を含んだ信用証明書の有効性を判断し、前記有効であると判断された信用証明書に含まれる前記ベンチマークスコアへのアクセス権限に対する情報に基づいて、前記アプリケーションプログラムが前記記録領域に書き込んだベンチマークスコアにアクセス可能か否かを判定する判定部を備えたことを特徴とする請求項2記載の再生装置。
- 前記記録部における所定の記録領域は、前記ベンチマークプログラムを提供した組織を識別する識別子と、前記ベンチマークアプリケーションを識別する識別子とを含んだファイルパスを用いて特定されることを特徴とする請求項3記載の再生装置。
- 前記ファームウェアプログラムは前記アプリケーションプログラムから前記記録領域に書き込んだベンチマークスコアへのアクセス要求に対し、前記記録領域に書き込んだベンチメークスコアをアクセス要求したアプリケーションプログラムへ返すI/Oプログラムを含み、
前記アプリケーションプログラムが前記ベンチマークスコアへのファイルパスを指定して、前記ベンチマークスコアへのアクセスを要求したとき、
前記処理部は前記I/Oプログラムを実行し、前記I/Oプログラムは指定されたファイルパスに基づいて特定されるベンチマークスコアを、前記アプリケーションプログラムへ返すように構成したことを特徴とする請求項4に記載の再生装置。 - 前記処理部は前記ファームウェアプログラムを格納するための第1の記録領域を有する第1の記録部、前記第1の記録部に格納されたファームウェアプログラムおよび実行対象のアプリケーションプログラムをロードするための第2の記録領域を有する第2の記録部、前記第2の記録領域にロードされたファームウェアプログラムおよびアプリケーションプログラムを実行する処理部本体を備えたことを特徴とする請求項5に記載の再生装置。
- 前記第2の記録領域に前記ファームウェアプログラムに組み込んだベンチマークスコアを展開した場合、
前記ベンチマークスコアを本来書き込むべき位置を示す前記記録部におけるファイルパスに関する情報と前記ベンチマークスコアを展開した前記第2の記録領域上の位置に関する情報とを含んだ位置情報を生成し、
前記I/Oプログラムは前記アプリケーションプログラムから指定されたファイルパスを受け取ると、前記位置情報を参照し、前記第2の記録領域に展開したベンチマークスコアを読み込んで前記アプリケーションプログラムへ返すように構成したことを特徴とする請求項6記載の再生装置。 - 前記処理部は前記ファームウェアプログラムを格納するための第1の記録領域を有する第1の記録部、実行対象のアプリケーションプログラムをロードするための第2の記録領域を有する第2の記録部、前記第1の記録領域に格納されたファームウェアプログラムおよび前記第2の記録領域にアプリケーションプログラムを実行する処理部本体を備えたことを特徴とする請求項5に記載の再生装置。
- 前記信用証明書は前記ベンチマークスコアへのファイルパスに関する情報を含む、請求項5に記載の再生装置。
- 前記アプリケーションは、さらに、前記信用証明書に対して所定の処理を行うことによって得られた署名情報を保持し、
前記判定手段は、前記アプリケーションが前記ベンチマークスコアにアクセスしようとする場合に、前記アプリケーションが保持している信用証明書と署名情報を用いて、前記アプリケーションが前記ベンチマークスコアにアクセス可能か否かを判定することを特徴とする請求項3記載の再生装置。 - 前記初期化部は、前記記録部における所定のパスによって定められる記録領域に前記ベンチマークスコアが書き込まれているか否かの判定を行い、前記ベンチマークスコアが書き込まれていないと判定した場合に、前記ファームウェアプログラムに組み込まれているベンチマークスコアを、前記記録部における所定のパスによって定められる記録領域に書き込むことを特徴とする請求項4記載の再生装置。
- 前記初期化部は、前記ファームウェアプログラムが更新された場合に、前記更新されたファームウェアプログラムに組み込まれているベンチマークスコアのバージョンと前記アプリケーションデータ領域に存在するベンチマークスコアのバージョンとのバージョン比較を行って、前記更新されたファームウェアプログラムに組み込まれたベンチマークスコアの方が新しいと判定した場合、前記ファームウェアプログラムに組み込まれているベンチマークスコアを、記記録部における所定のパスによって定められる記録領域に書き込むことを特徴とする請求項4記載の再生装置。
- 前記ベンチマークスコアをメモリに展開して、メモリ上のベンチマークスコアを、アプリケーションに利用させることを特徴とする請求項3記載の再生装置。
- 記録媒体からデータを読み出すドライブ部、前記読み出したデータに含まれるAVデータを再生する再生部、を具備したハードウェア部と、所定の記録領域を有する記録部を備えた再生装置に用いる集積回路であって、
前記集積回路は、
プログラムを実行する処理部と、
前記ハードウェア部を制御するファームウェアプログラムと、
前記処理部が前記ファームウェアプログラムを実行する場合、所定の条件を満足すれば、初期化処理を行う初期化部とを備え、
前記ファームウェアプログラムには、ベンチマークスコアが組み込まれており、
前記ベンチマークスコアは、前記ドライブ部によって前記記録媒体から読み出されたベンチマークプログラムを前記処理部により実行したとき、前記実行されるベンチマークプログラムからの命令に従って、前記処理部によって実行されるファームウェアプログラムを介して前記ハードウェア部に所定の処理を行わせた結果であって、前記再生装置の処理能力を示す指標であり、
前記初期部は、前記処理部が前記ファームウェアプログラムを最初に実行する場合、前記ファームウェアプログラムに組み込まれているベンチマークスコアを、前記記録部における所定の記録領域に書き込むことにより前記記録領域に書き込んだベンチマークスコアを前記処理部により実行されるアプリケーションプログラムがアクセスできるようにした、
ことを特徴とする集積回路。 - 記録媒体からデータを読み出すドライブ部、前記読み出したデータに含まれるAVデータを再生する再生部、プログラムを実行する処理部と、を具備したハードウェア部と、
前記ハードウェア部を制御するファームウェアプログラムと、
所定の記録領域を有する記録部を備え、
前記ドライブ部によって前記記録媒体から読み出されたベンチマークプログラムを前記処理部により実行したとき、前記実行されるベンチマークプログラムからの命令に従って、前記処理部によって実行されるファームウェアプログラムを介して前記ハードウェア部に所定の処理を行わせた結果であって、前記再生装置の処理能力を示す指標であるベンチマークスコアが前記ファームウェアプログラムに組み込まれた再生装置における再生方法であって、
前記処理部が前記ファームウェアプログラムを最初に実行する場合、前記ファームウェアプログラムに組み込まれているベンチマークスコアを、前記記録部における所定の記録領域に書き込むステップ、
前記記録領域に書き込んだベンチマークスコアを前記処理部により実行されるアプリケーションプログラムにアクセスさせるステップを含む
ことを特徴とする再生方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009502462A JP4906913B2 (ja) | 2007-03-02 | 2008-02-29 | 再生装置、システムlsi、初期化方法 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007053162 | 2007-03-02 | ||
JP2007053162 | 2007-03-02 | ||
PCT/JP2008/000410 WO2008108084A1 (ja) | 2007-03-02 | 2008-02-29 | 再生装置、システムlsi、初期化方法 |
JP2009502462A JP4906913B2 (ja) | 2007-03-02 | 2008-02-29 | 再生装置、システムlsi、初期化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2008108084A1 JPWO2008108084A1 (ja) | 2010-06-10 |
JP4906913B2 true JP4906913B2 (ja) | 2012-03-28 |
Family
ID=39737982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009502462A Expired - Fee Related JP4906913B2 (ja) | 2007-03-02 | 2008-02-29 | 再生装置、システムlsi、初期化方法 |
Country Status (7)
Country | Link |
---|---|
US (1) | US8522339B2 (ja) |
EP (1) | EP2116934B1 (ja) |
JP (1) | JP4906913B2 (ja) |
KR (1) | KR101430279B1 (ja) |
CN (1) | CN101589369B (ja) |
ES (1) | ES2404807T3 (ja) |
WO (1) | WO2008108084A1 (ja) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8433929B2 (en) * | 2007-04-19 | 2013-04-30 | Panasonic Corporation | Data management device, stored data management method and computer program |
WO2008146476A1 (ja) * | 2007-05-24 | 2008-12-04 | Panasonic Corporation | メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びアクセス装置 |
JP2010191665A (ja) * | 2009-02-18 | 2010-09-02 | Sony Corp | 情報処理装置、情報処理方法、およびプログラム、並びに記録媒体 |
US8732749B2 (en) | 2009-04-16 | 2014-05-20 | Guest Tek Interactive Entertainment Ltd. | Virtual desktop services |
BRPI1004351A2 (pt) | 2009-06-11 | 2020-06-23 | Panasonic Corporation | Dispositivo de reprodução, circuito integrado, meio de gravação. |
WO2010143439A1 (ja) * | 2009-06-12 | 2010-12-16 | パナソニック株式会社 | 再生装置、集積回路、記録媒体 |
US9229734B2 (en) * | 2010-01-15 | 2016-01-05 | Guest Tek Interactive Entertainment Ltd. | Hospitality media system employing virtual user interfaces |
US9003455B2 (en) | 2010-07-30 | 2015-04-07 | Guest Tek Interactive Entertainment Ltd. | Hospitality media system employing virtual set top boxes |
US8495108B2 (en) * | 2010-11-30 | 2013-07-23 | International Business Machines Corporation | Virtual node subpool management |
US9910659B2 (en) * | 2012-11-07 | 2018-03-06 | Qualcomm Incorporated | Methods for providing anti-rollback protection of a firmware version in a device which has no internal non-volatile memory |
EP2808818B1 (en) * | 2013-05-29 | 2016-07-13 | Nxp B.V. | Processing system |
FR3014576B1 (fr) * | 2013-12-10 | 2018-02-16 | Mbda France | Procede et systeme d'aide a la verification et a la validation d'une chaine d'algorithmes |
JP6361390B2 (ja) * | 2014-09-10 | 2018-07-25 | 富士通株式会社 | ストレージ制御装置および制御プログラム |
US9294492B1 (en) * | 2015-03-10 | 2016-03-22 | Iboss, Inc. | Software program identification based on program behavior |
CN104679578B (zh) * | 2015-03-12 | 2018-09-07 | 绚视软件科技(上海)有限公司 | BD-java平台上的最小内存自适应机制及使用方法 |
CN107870877B (zh) * | 2016-09-23 | 2024-04-23 | 伊姆西Ip控股有限责任公司 | 用于在存储系统中管理数据访问的方法和系统 |
JP7087634B2 (ja) * | 2018-04-26 | 2022-06-21 | 富士通株式会社 | リソース管理装置及びリソース管理プログラム |
KR102137194B1 (ko) | 2018-10-31 | 2020-07-24 | 엘지전자 주식회사 | 이동 단말기 |
CN111338662A (zh) * | 2018-12-18 | 2020-06-26 | 深圳市优必选科技有限公司 | 从站的固件升级方法、固件升级装置及终端 |
CN111158969B (zh) * | 2019-12-31 | 2024-03-08 | 奇安信科技集团股份有限公司 | 数据处理方法、电子设备和存储介质 |
CN114397868A (zh) * | 2021-12-03 | 2022-04-26 | 陕西法士特齿轮有限责任公司 | 集成式自动机械式变速箱的硬件在环测试平台及测试方法 |
US20230214822A1 (en) * | 2022-01-05 | 2023-07-06 | Mastercard International Incorporated | Computer-implemented methods and systems for authentic user-merchant association and services |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08289251A (ja) * | 1995-04-18 | 1996-11-01 | Tec Corp | マルチメディア処理装置 |
US6678812B1 (en) * | 1996-01-16 | 2004-01-13 | Intel Corporation | Method and apparatus for optimizing hard drive performance |
US6378013B1 (en) * | 1998-09-17 | 2002-04-23 | Micron Technology, Inc. | System for assessing performance of computer systems |
US6405329B1 (en) * | 1999-07-27 | 2002-06-11 | Dell Usa, L.P. | Method and apparatus for HDD time stamp benchmark and installation identification |
US7155415B2 (en) * | 2000-04-07 | 2006-12-26 | Movielink Llc | Secure digital content licensing system and method |
US7213266B1 (en) * | 2000-06-09 | 2007-05-01 | Intertrust Technologies Corp. | Systems and methods for managing and protecting electronic content and applications |
JP2002099430A (ja) | 2000-09-26 | 2002-04-05 | Minolta Co Ltd | データ処理装置および方法 |
US6769054B1 (en) * | 2001-02-26 | 2004-07-27 | Emc Corporation | System and method for preparation of workload data for replaying in a data storage environment |
US7124152B2 (en) * | 2001-10-31 | 2006-10-17 | Seagate Technology Llc | Data storage device with deterministic caching and retention capabilities to effect file level data transfers over a network |
JP2004056620A (ja) * | 2002-07-23 | 2004-02-19 | Sony Corp | 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
US8307156B1 (en) * | 2002-07-31 | 2012-11-06 | Western Digital Technologies, Inc. | Adaptively modifying pre-read operations within a rotating media storage device |
US7184934B2 (en) * | 2003-06-26 | 2007-02-27 | Microsoft Corporation | Multifaceted system capabilities analysis |
WO2005017735A1 (ja) | 2003-08-19 | 2005-02-24 | Fujitsu Limited | ディスクアレイ装置におけるボトルネックを検出するシステムおよびプログラム |
GB0322045D0 (en) * | 2003-09-20 | 2003-10-22 | Koninkl Philips Electronics Nv | A network-based gaming system |
US20050086640A1 (en) * | 2003-10-21 | 2005-04-21 | Mikko Kolehmainen | Initiating execution of application programs on a data processing arrangement |
US7427027B2 (en) * | 2004-07-28 | 2008-09-23 | Sandisk Corporation | Optimized non-volatile storage systems |
GB2423408A (en) * | 2005-02-22 | 2006-08-23 | Zootech Ltd | Identifying audiovisual apparatus and associated methods and content stored on data carriers |
EP1877882A4 (en) * | 2005-04-29 | 2011-05-18 | IMPROVING POWER METHODS IN SYSTEMS WITH RENEWABLE ENERGY | |
US7659897B1 (en) * | 2006-06-30 | 2010-02-09 | Nvidia Corporation | System, method, and computer program product for video benchmarking |
US20080034440A1 (en) * | 2006-07-07 | 2008-02-07 | Michael Holtzman | Content Control System Using Versatile Control Structure |
US20080170837A1 (en) * | 2007-01-12 | 2008-07-17 | Zootech Limited | Information processing system |
JP2008226365A (ja) * | 2007-03-13 | 2008-09-25 | Matsushita Electric Ind Co Ltd | 音声再生装置及び音声再生方法 |
-
2008
- 2008-02-29 JP JP2009502462A patent/JP4906913B2/ja not_active Expired - Fee Related
- 2008-02-29 ES ES08710513T patent/ES2404807T3/es active Active
- 2008-02-29 CN CN200880003106XA patent/CN101589369B/zh not_active Expired - Fee Related
- 2008-02-29 EP EP08710513.6A patent/EP2116934B1/en not_active Not-in-force
- 2008-02-29 KR KR1020097014442A patent/KR101430279B1/ko not_active IP Right Cessation
- 2008-02-29 WO PCT/JP2008/000410 patent/WO2008108084A1/ja active Application Filing
- 2008-02-29 US US12/523,379 patent/US8522339B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR20090122909A (ko) | 2009-12-01 |
KR101430279B1 (ko) | 2014-08-14 |
CN101589369A (zh) | 2009-11-25 |
US20100031347A1 (en) | 2010-02-04 |
EP2116934A4 (en) | 2010-06-09 |
CN101589369B (zh) | 2013-01-23 |
EP2116934A1 (en) | 2009-11-11 |
JPWO2008108084A1 (ja) | 2010-06-10 |
WO2008108084A1 (ja) | 2008-09-12 |
US8522339B2 (en) | 2013-08-27 |
EP2116934B1 (en) | 2013-04-10 |
ES2404807T3 (es) | 2013-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4906913B2 (ja) | 再生装置、システムlsi、初期化方法 | |
US8320735B2 (en) | Reproducing apparatus | |
US8036513B2 (en) | Playback apparatus and playback method | |
US8588580B2 (en) | Playback device, recording medium, playback method and program | |
US8051100B2 (en) | Recording medium, recording device, and playback device for use in individual sales and method therefor | |
US8719566B2 (en) | Application executing device, managing method, and program | |
US8326120B2 (en) | Playback apparatus for performing application-synchronized playback | |
JP4491035B2 (ja) | 再生装置、デバッグ装置、システムlsi、プログラム | |
US8433929B2 (en) | Data management device, stored data management method and computer program | |
KR101470961B1 (ko) | 재생장치, 기록방법 | |
US8380042B2 (en) | Reproduction device, reproduction method, and program | |
KR20110036882A (ko) | 기록매체, 재생장치, 집적회로, 재생방법, 프로그램 | |
JP5451745B2 (ja) | 再生装置、集積回路、再生方法、アプリケーションプログラム、記録媒体、記録装置、及び記録方法 | |
JPWO2009157163A1 (ja) | 再生装置、再生装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20101214 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20111213 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120110 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150120 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4906913 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |