JP2006344060A - Information processor, and information processing method - Google Patents
Information processor, and information processing method Download PDFInfo
- Publication number
- JP2006344060A JP2006344060A JP2005169972A JP2005169972A JP2006344060A JP 2006344060 A JP2006344060 A JP 2006344060A JP 2005169972 A JP2005169972 A JP 2005169972A JP 2005169972 A JP2005169972 A JP 2005169972A JP 2006344060 A JP2006344060 A JP 2006344060A
- Authority
- JP
- Japan
- Prior art keywords
- program
- stored
- block
- hdd
- video
- 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.)
- Pending
Links
Images
Landscapes
- Stored Programmes (AREA)
Abstract
Description
本発明は、プログラムを実行することで各種機能、動作が実現されるように構成される情報処理装置と、その方法に関する。 The present invention relates to an information processing apparatus configured to realize various functions and operations by executing a program, and a method thereof.
現在において普及する各種電子機器は、例えば内部にCPU(Central Processing Unit)などから成るシステムコントローラを備え、このシステムコントローラがプログラムを実行することにより、その電子機器ごとに必要とされる機能を実現するようにされているものがほとんどである。プログラムは、例えばROMやHDD(ハードディスク)などの記憶媒体にインストールされるようにして記憶され、電子機器としては、これらのROM、HDDを実装することになる。 Various electronic devices that are widely used today include, for example, a system controller including a CPU (Central Processing Unit) and the like, and the system controller executes a program to realize functions required for each electronic device. Most of them are designed as such. The program is stored so as to be installed in a storage medium such as a ROM or a HDD (hard disk), and the ROM and HDD are mounted as an electronic device.
このような電子機器をとりまく状況では、例えばなんらかの要因によりプログラムのデータの少なくとも一部が破壊するなどしてエラーを生じることになると、電子機器の正常な動作が得られなくなってしまう可能性が出てくる。このことから、プログラムのデータを保護することの必要性がでてくる。そして、このようなデータ保護が、できるだけ信頼性の高いものとなることが好ましい。 In such a situation surrounding electronic devices, if an error occurs due to, for example, destruction of at least part of program data due to some cause, there is a possibility that normal operation of the electronic device cannot be obtained. Come. This raises the need to protect program data. Such data protection is preferably as reliable as possible.
そこで、本発明は情報処理装置として次のように構成することとした。
つまり、所定の機能に対応するプログラムが記憶されるとともに、この記憶されるプログラムのうちで保護対象となる保護対象プログラムについては多重に記憶される第1の記憶手段と、この第1の記憶手段に記憶されるプログラム以外で、所定の機能に対応するプログラムを記憶し、この記憶されるプログラムとして少なくとも、第1の記憶手段に記憶される保護対象プログラムについてのエラーを検出する処理を実行させる検出プログラムと、検出プログラムを実行させた結果としてエラーが検出されたときに、多重に記憶されている保護対象プログラムのデータを利用して、保護対象プログラムを修復するための所定の修復処理を実行させる修復プログラムとを記憶する第2の記憶手段と、少なくとも、検出プログラムと修復プログラムとを実行するように構成されるプログラム実行手段とを備えることとした。
Therefore, the present invention is configured as an information processing apparatus as follows.
In other words, a program corresponding to a predetermined function is stored, and among the stored programs, a protection target program to be protected is a first storage unit that is stored in a multiplexed manner, and this first storage unit A program that stores a program corresponding to a predetermined function other than the program stored in the memory, and executes at least an error detection process for the protection target program stored in the first storage unit as the stored program When an error is detected as a result of executing the program and the detection program, a predetermined repair process for repairing the protection target program is executed using the data of the protection target program stored in multiplex Second storage means for storing a repair program, at least a detection program and a repair program; It was decided and a program execution unit configured to execute.
また、情報処理方法としては、情報処理装置が備える第1の記憶手段に対して、所定の機能に対応するプログラムを記憶させるとともに、この記憶させるプログラムのうちで保護対象となる保護対象プログラムについては多重に記憶させ、情報処理装置が備える第2の記憶手段に対して、第1の記憶手段に記憶されるプログラム以外で、所定の機能に対応するプログラムを記憶させ、この記憶させるプログラムとして少なくとも、第1の記憶手段に記憶される保護対象プログラムについてのエラーを検出する処理を実行させる検出プログラムと、検出プログラムを実行させた結果としてエラーが検出されたときに、保護対象プログラムを修復するための所定の修復処理を実行させる修復プログラムとを記憶させる。そのうえで、検出プログラムを実行することにより保護対象プログラムについてのエラーを検出する検出ステップと、修復プログラムを実行することにより、第1の記憶手段において多重に記憶されている上記保護対象プログラムのデータを利用して、保護対象プログラムを修復する修復ステップとを実行するように構成する。 Further, as an information processing method, a program corresponding to a predetermined function is stored in the first storage means provided in the information processing apparatus, and a protection target program to be protected among the stored programs. In addition to the program stored in the first storage unit, the program corresponding to the predetermined function is stored in the second storage unit included in the information processing apparatus. A detection program for executing an error detection process for the protection target program stored in the first storage means, and for recovering the protection target program when an error is detected as a result of executing the detection program. A repair program for executing a predetermined repair process is stored. In addition, the detection step of detecting an error about the protection target program by executing the detection program and the data of the protection target program stored in multiple in the first storage means by executing the repair program are used. Then, a repair step for repairing the protection target program is executed.
ここでいうプログラムのエラーとは、記憶媒体(記憶手段)に記憶されるプログラムのデータ内容の少なくとも一部が正常な結果で読み出せなくなっている状態を指す。また、プログラムの修復とは、上記のようにして正常な結果で読み出せなくなったプログラムのデータを、本来の正常な結果で読み出せるようにすることを指す。 The program error here refers to a state in which at least a part of the data content of the program stored in the storage medium (storage means) cannot be read with a normal result. The program restoration means that the program data that cannot be read as a normal result as described above can be read with the original normal result.
上記各構成では、情報処理装置において、プログラムを記憶する記憶手段として、第1の記憶手段と第2の記憶手段とを備える。そして、第1の記憶手段には、保護対象となる保護対象プログラムを多重に記憶し、第2の記憶手段には、保護対象プログラムのエラーを検出するための検出プログラムと、保護対象プログラムの修復を図るための修復プログラムとを記憶させる。情報処理装置にて、これら検出プログラムと修復プログラムが実行されることで、保護対象プログラムのエラーが検出されるのに応じて修復が行われることとなって、プログラムのデータの保護が図られることになる。そして、本発明では、上記しているように、保護対象プログラムは第1の記憶手段に記憶され、検出プログラム及び修復プログラムは第2の記憶手段に記憶される。つまり、保護対象とするプログラムと、このプログラムを保護するためのプログラムとが、互いに異なる記憶手段に記憶される。 In each of the above-described configurations, the information processing apparatus includes first storage means and second storage means as storage means for storing the program. The first storage means stores the protection target program to be protected in a multiplex manner, and the second storage means stores a detection program for detecting an error in the protection target program, and restoration of the protection target program. And a repair program for memorizing. By executing the detection program and the repair program in the information processing apparatus, the program data is protected in accordance with the detection of the error in the protection target program. become. In the present invention, as described above, the protection target program is stored in the first storage unit, and the detection program and the repair program are stored in the second storage unit. That is, the program to be protected and the program for protecting this program are stored in different storage means.
上記のようにして、保護対象となるプログラム(保護対象プログラム)と、このプログラムを保護するための保護用プログラム(検出プログラム、修復プログラム)とが、異なる記憶手段に記憶されることで、例えば第1の記憶手段としてのハードウェア側の要因により保護対象プログラムにエラーが生じたとしても、保護用プログラムは、第1の記憶手段以外の記憶手段に記憶されているので、第1の記憶手段としてのハードウェア側の要因の影響を受けない。つまり、保護対象プログラムと、保護用プログラムとを、それぞれ別個の記憶媒体に記憶させることで、保護対象プログラムとともに、保護用プログラムまでエラーとなることの可能性を低くし、より高い信頼性のデータ保護が図られるようにされる。 As described above, the protection target program (protection target program) and the protection program (detection program, repair program) for protecting the program are stored in different storage means, for example, Even if an error occurs in the protection target program due to a hardware-side factor as the first storage unit, the protection program is stored in a storage unit other than the first storage unit. Unaffected by factors on the hardware side. In other words, by storing the protection target program and the protection program in separate storage media, it is possible to reduce the possibility of an error up to the protection program together with the protection target program, and data with higher reliability. Protection is made available.
図1は、本発明の実施の形態としての情報処理装置である、放送受信録画装置1のハードウェア構成例を示している。放送受信録画装置1は、以下に説明する構成を採ることで、所定キャリアのテレビジョン放送を受信し、受信して得たテレビジョン放送番組としての映像(ビデオ)/音声(オーディオ)データを、HDD(ハードディスク)に記録(録画)し、また、録画した番組の映像/音声データを再生出力することができる。
また、放送受信録画装置1が受信対象とする放送は、アナログ放送とデジタル放送の何れとされてもよいのであるが、ここでは、デジタル放送であることとする。
FIG. 1 shows a hardware configuration example of a broadcast receiving and recording
Also, the broadcast to be received by the broadcast receiving /
先ず、放送受信録画装置1に対してはアンテナ10が接続されている。アンテナ10では、デジタル放送波を受信して所定の高周波信号に変換して、デジタル放送受信機1に対して供給する。
First, an
なお、現状において、デジタルテレビジョン放送は、通信衛星又は放送衛星から放送信号を送出する衛星放送と、地上のアンテナから送出する地上波とが知られているが、本実施の形態の放送受信録画装置1としては、両者のいずれに対応する構成が採られてもよい。アンテナ10は、デジタルテレビジョン放送として、衛星放送に対応する場合には、受信対象となる衛星の放送方式等に適合したパラボラアンテナとなり、地上波放送に対応する場合には、例えばUHFアンテナとなる。
At present, digital television broadcasts are known as satellite broadcasts that send broadcast signals from communication satellites or broadcast satellites, and terrestrial waves that are sent from terrestrial antennas. The
放送受信録画装置1においては、上記のようにしてアンテナ20にて受信され、所定の周波数に変換された受信信号を、チューナ11により入力する。
チューナ11では、CPU16からバス22を介して入力された、伝送諸元等を設定した設定信号に基づいて、この設定信号により決定されるキャリア(受信周波数)を抽出し、復調器12に出力する。復調器12では、入力されたキャリアの信号について、例えばビタビ復調処理や誤り訂正処理等を施すことで、TS(Transport Stream)を得るようにされる。
In the broadcast receiving /
The tuner 11 extracts a carrier (reception frequency) determined by this setting signal based on the setting signal that is set from the CPU 16 via the
この場合におけるTSとしては、例えばMPEG2(Moving Picture Experts Group Layer2)方式によって、複数のプログラム(番組)、チャンネルのビデオ(映像)信号及びオーディオ(音声)信号を圧縮した圧縮データと、各種の付加情報が多重化されているものとなる。必要に応じて、データ放送サービスのためのデータ放送用データも多重化されている。 The TS in this case includes, for example, compressed data obtained by compressing a plurality of programs (programs), video (video) signals and audio (sound) signals of channels by MPEG2 (Moving Picture Experts Group Layer2) method, and various additional information. Are multiplexed. Data broadcasting data for a data broadcasting service is multiplexed as necessary.
上記したビデオ信号及びオーディオ信号を圧縮した圧縮データ、また、データ放送用データは、ES(Elementary Stream)として多重化される。また、放送側が挿入する付加情報としては、PAT(Program Association Table)、PMT(Program Map Table)などのテーブルを格納するPSI(Program Specific Information:番組特定情報)や、SI(Service Information:番組配列情報)などが挙げられる。
そして、上記情報の多重化は、TSを所定バイトサイズのトランスポートストリーム・パケット(TSパケット)により形成するようにして、このTSパケットに対して、上記したES及び各種付加情報を格納することにより行われる。
The compressed data obtained by compressing the video signal and the audio signal and the data broadcasting data are multiplexed as an ES (Elementary Stream). As additional information inserted by the broadcasting side, PSI (Program Specific Information) for storing tables such as PAT (Program Association Table) and PMT (Program Map Table), SI (Service Information: Program Sequence Information) ) And the like.
The information is multiplexed by forming a TS with a transport stream packet (TS packet) of a predetermined byte size and storing the ES and various additional information in the TS packet. Done.
また、復調器12では、TSからPSI(Program Specific Information:番組特定情報)のパケットを取得し、その選局情報を更新すると共に、TSにおける各チャンネルのコンポーネントPID(Program ID)を得て、例えばCPU16に対してバス22を経由して伝送する。CPU16では、取得したPIDを受信信号処理に利用することになる。
Further, the
また、本実施の形態の構成においては、TSとして取得されたデータについてスクランブル(暗号)がかけられているときには、このスクランブルを解くためのスクランブル処理についても、復調器12にて実行可能なようにされているものとする。
Further, in the configuration of the present embodiment, when the data acquired as the TS is scrambled (encrypted), the
デマルチプレクサ13は、CPU16により設定されたフィルタ条件に従って、復調器12から供給されたTSから必要なTSパケットを分離する。これにより、例えばデマルチプレクサ16においては、目的とする1つのプログラムについてのTSパケットとして、所定の符号化方式(例えばMPEG2方式)により圧縮されたビデオデータのTSパケットと、圧縮されたオーディオデータのTSパケットを得ることになる。そして、このようにして得られた圧縮ビデオデータと圧縮オーディオデータを、それぞれ、ビデオデコーダ14、オーディオデコーダ15に対して出力する。
The
なお、デマルチプレクサ13により分離された圧縮ビデオ/オーディオデータの個別パケットは、PES(Packetized Elementary Stream)と呼ばれる形式でそれぞれ、ビデオデコーダ14とオーディオデコーダ15とに入力されるようになっている。
また、上記したフィルタ条件の設定は、例えばデマルチプレクサ13において、TSに含まれるPAT、PMTなどを抽出して、CPU16にバス22を介して転送するようにされる。そして、CPU16が、転送されてきたPAT、PMTなどに記述されている情報内容に基づいて、CPU16に対してフィルタ条件を設定するようにされる。
The individual packets of compressed video / audio data separated by the
In addition, for example, the filter condition is set such that the
ビデオデコーダ14においては、先ず、入力された圧縮ビデオデータについて、その圧縮符号化形式に応じたデコード(伸長)処理を実行する。そして、この伸長処理により得られたビデオデータについて、画質調整などをはじめとした所要の信号処理を実行する。
ビデオ信号処理部17の出力であるビデオ信号は、この場合には、放送受信録画装置1と接続されるディスプレイ26に入力される。
First, the video decoder 14 performs a decoding (decompression) process on the input compressed video data in accordance with the compression encoding format. Then, necessary signal processing such as image quality adjustment is performed on the video data obtained by the expansion processing.
In this case, the video signal output from the video
オーディオデコーダ15では、入力された圧縮オーディオデータについて、その圧縮符号化形式に応じたデコード(伸長)処理を実行する。なお、この伸長処理は、ビデオデコーダ14にて伸長処理が施されて出力されるビデオ信号の再生出力タイミングに同期するように、つまり、いわゆるリップシンクが保たれるようにして実行される。また、オーディオ信号処理部20は、上記伸長処理によって得られたオーディオ信号について、ゲイン調整、音質調整、音量調整、音響効果の付加などの所要の信号処理を必要に応じて実行する。この場合にオーディオデコーダ15から出力されるオーディオ信号は、放送受信録画装置1と接続されるスピーカ27に入力される。
なお、この図では、説明を簡単にするために、オーディオ信号処理部20以降のオーディオ信号の系を1系統により示しているが、実際には、L(左),R(右)ステレオに対応する2チャンネルのオーディオ信号の系とされてもよい。また、5.1chサラウンドなどの、所定のチャンネル構造による3チャンネル以上のマルチチャンネルに対応するオーディオ信号の系とされてもよい。
The
In this figure, for simplification of explanation, the audio signal system after the audio
ディスプレイ26は、所定のディスプレイデバイスを備えて成り、ビデオデコーダ14から入力されるビデオ信号に基づいて表示駆動を実行することで、ビデオ信号の画像を表示出力する。
スピーカ27は、オーディオデコーダ15から入力されたオーディオ信号を増幅して音声として出力する。これにより、スピーカ22からは、例えば、ディスプレイ26にて表示される画像と同期した音声が出力される。
The
The
CPU16は、プログラムを実行することで、放送受信録画装置1の動作制御を実現するもので、他のハードウェアデバイスとバス22を介して通信可能に接続されている。本実施の形態において、CPU16が実行するプログラムは、少なくとも、フラッシュメモリ19、HDD(ハードディスク)21にて記憶保持されている。
The CPU 16 implements the operation control of the broadcast receiving /
RAM17は、揮発性のメモリ素子から成り、CPU16が処理を実行するための作業領域として利用され、例えばCPU16の演算処理結果などが保持される。また、CPU16が実行すべきプログラムは、このRAM17に展開される形式で保持されることで、実際のCPU16によるプログラムの実行が可能となる。
The
この場合のROM18は、書き換えが不可のメモリ素子からなり、例えば、書き換えが不要の各種の設定データなどが記憶される。
In this case, the
本実施の形態の放送受信録画装置1は、上記RAM17及びROM18の他に、不揮発性メモリを備えるものとする。不揮発性メモリとしては、いくつかの種類があり、何れを採用するのかについては特に限定されるべきではないが、ここではフラッシュメモリ19を備えることとしている。
本実施の形態において、このフラッシュメモリ19には、少なくとも、CPU16に実行させるべきプログラムの一部が記憶される。なお、フラッシュメモリ19に対して、プログラム以外の種類のデータを記憶させることについては特に制限はない。
The broadcast
In the present embodiment, at least a part of the program to be executed by the CPU 16 is stored in the
この場合の操作部23は、放送受信録画装置1に対応して設けられる各種操作子と、これらの操作子に対して行われた操作に応じて操作情報信号を生成してCPU16に出力する操作情報信号出力部とを一括して示している。また、リモートコントローラと、このリモートコントローラに対して行われた操作に応じて送信されてくるコマンド信号を受信復調して、操作情報信号として出力する受信部なども、この操作部23に含まれる。
In this case, the
また、本実施の形態の放送受信録画装置1は、少なくともユーザデータを記録再生可能な記憶デバイスとして、DVDドライブ20、及びHDD21を備える。
DVDドライブ20は、リムーバブルの光学ディスク状記録媒体であるDVD(Digital Versatile Disc)25を装填することができ、装填されたDVD25に対してデータの記録再生を行うことが可能とされる。例えば本実施の形態の放送受信録画装置1では、テレビジョン放送を受信して取得した放送番組のビデオ/オーディオデータを、所定のデータ形式により記録することができる。
なお、DVDドライブ21に代えて、例えばBlu-ray Disc(商標)などをはじめとするDVD以外の光学ディスク状記録媒体に対応するドライブを備えることとしてもよい。また、半導体メモリ素子を備えるリムーバブルの記憶媒体に対応したドライブを備えることも考えられる。
The broadcast receiving and
The
Instead of the
HDD21は、周知のようにして、記録媒体として磁気ハードディスクを備えて構成され、現状では大容量を容易に確保できる記憶デバイスとして広く普及している。本実施の形態の放送受信録画装置1において、HDD21には、CPU16の制御に従って、テレビジョン放送から受信取得した放送番組のビデオ/オーディオデータを所定のデータ形式により記録することができる。つまり、番組録画の機能を有する。さらに、本実施の形態では、CPU16に実行させるべきプログラムの一部が記憶される。
As is well known, the
例えば、HDD21に記録されている放送番組などのビデオ/オーディオデータを再生するときには、再生すべきビデオ/オーディオデータのファイルをHDD21から読み出す。この場合のHDD21に記録されているビデオ/オーディオデータは、圧縮符号化処理が施された形式であることとする。そこで、HDD21から読み出したビデオ/オーディオデータは、CPU16の制御により、バス22を介して、それぞれビデオデコーダ14、オーディオデコーダ15に転送するようにされる。ビデオデコーダ14、オーディオデコーダ15では、先の説明のようにして、デコード(伸長)処理等を施して、リップシンクを保つようにしてビデオ信号、オーディオ信号を出力する。
なお、DVD25に記録されているビデオ/オーディオデータを再生する場合にも、DVDドライブ20にてDVDから読み出した圧縮符号化形式のビデオ/オーディオデータを、ビデオデコーダ14、オーディオデコーダ15によりデコードして、ビデオ信号、オーディオ信号として出力するようにされる。
For example, when video / audio data such as a broadcast program recorded on the
Even when video / audio data recorded on the
図2は、本実施の形態の放送受信録画装置1におけるCPU16が実行するプログラムの構成を模式的に示している。この図では、CPU16が実行するプログラムを、所定の機能単位によるブロック単位で示すとともに、各ブロックによる機能の連携を模式的に示している。
FIG. 2 schematically shows a configuration of a program executed by the CPU 16 in the broadcast receiving /
この図において、CPU16が実行するプログラムについては、CPUブロック100として示している。このCPUブロック100は、フラッシュメモリ19に記憶されているプログラムから成るフラッシュメモリ対応ブロック100Aと、HDD21に記憶されているプログラムから成るHDD対応ブロック100Bとに分けられる。
In this figure, the program executed by the CPU 16 is shown as a CPU block 100. The CPU block 100 is divided into a flash
先ず、フラッシュメモリ対応ブロック100Aは、プログラムのブロックとして、プログラム起動制御ブロック31、チューナ制御ブロック32、ビデオ/オーディオストリーム論理フォーマット制御ブロック33、ビデオ/オーディオストリーム出力制御ブロック34、ビデオインターフェイス35、オーディオインターフェイス36、プログラムメディア制御ブロック37、HDD/DVD通信制御ブロック38、HDD/DVD通信インターフェイス39、プログラムメディアエラー検出ブロック40、プログラムメディアエラー修復ブロック41を有するものとしており、実際のフラッシュメモリ19には、これらのブロックのプログラムのデータが記憶されていることになる。また、プログラムメディアエラー修復ブロック41により、プログラムメディアエラーフラグ42のコントロールが行われる。
First, the flash
フラッシュメモリ対応ブロック100Aにおいて、プログラム起動制御ブロック31は、初期起動時において最初にCPU31がアクセスして実行するプログラムに対応するものであり、例えば所定内容の起動コードなどを格納してなる。このプログラム起動制御ブロック31のプログラムを実行することで、CPU16は以降において初期起動として起動すべきプログラムを初期化していく処理を実行することができる。
In the flash
チューナ制御ブロック32は、デジタルテレビジョン放送の受信復調系に相当するハードウェアが実行する各種の機能、動作を制御するためのプログラムに対応する。デジタルテレビジョン放送の受信復調系としては、図1との対応では、例えば、チューナ11、復調器12、デマルチプレクサ13が含まれる。
The
ビデオ/オーディオストリーム論理フォーマット制御ブロック33は、デジタルテレビジョン放送の受信復調系により得られるビデオ/オーディオデータをはじめ、他には、例えばDVDドライブ20、HDD21から読み出されるビデオ/オーディオデータなど、放送受信録画装置1において処理されるビデオ/オーディオデータの論理フォーマットを解釈制御する。ビデオ/オーディオストリーム出力制御ブロック34は、上記ビデオ/オーディオストリーム論理フォーマット制御ブロック33の処理結果と連携し、例えばビデオデコーダ14、オーディオデコーダ15により、ビデオ/オーディオデータをデコードして再生出力させるための制御を実行する。
The video / audio stream logical
この場合のビデオインターフェイス35は、ビデオ/オーディオストリーム出力制御ブロック34の制御処理によりビデオデコーダ14にて得られた表示用のビデオ信号(ビデオデータ)を、例えばディスプレイ26などの外部ディスプレイデバイスに出力させるための制御処理を実行する。
オーディオインターフェイス36は、ビデオ/オーディオストリーム出力制御ブロック34の制御処理によりオーディオデコーダ15にて得られた表示用のビデオ信号(ビデオデータ)を、例えばディスプレイ26などの外部ディスプレイデバイスに出力させるための制御処理を実行する。
In this case, the video interface 35 outputs a display video signal (video data) obtained by the video decoder 14 by the control processing of the video / audio stream
The
プログラムメディア制御ブロック37は、放送受信録画装置1に実装される記憶デバイスを対象として、プログラムのデータの読み出し(書き込み)を可能とするための制御処理を実行する。この場合、プログラムメディア制御ブロック37としてのプログラムの実体は、フラッシュメモリ19に記憶されていることになるので、プログラムメディア制御ブロック37が制御対象とするデバイスは、フラッシュメモリ19以外のHDD21、及びDVDドライブ20となる。ただし、本実施の形態においては、DVDに対してプログラムを記憶させることは特に行わない。例えば、プログラムメディア制御ブロック37は、HDD21などの記憶デバイスにおいて、プログラムが記憶されている領域のアドレスを指定して、次に説明するHDD/DVD通信制御ブロック38より下位の階層での通信処理により、プログラムのデータにアクセスするようにされる。
The program
HDD/DVD通信制御ブロック38は、プログラムメディア制御ブロック37に対しては、下位となるプログラム階層において、バス22経由でのHDD21との通信、及びDVDドライブ25との通信を制御するためのプログラムであり、HDD/DVD通信インターフェイス39は、HDD/DVD通信制御ブロック38のさらに下位のプログラム階層において、HDD21との通信、及びDVDドライブ25との通信を実行するインターフェイス機能のためのプログラムである。
The HDD / DVD
また、プログラムメディアエラー検出ブロック40は、プログラムメディア制御ブロック37が、HDD/DVD通信制御ブロック38、HDD/DVD通信インターフェイス39を制御して、HDD21から読み込みを行った保護対象プログラムについてのエラーの有無を検出する処理を実行させるためのプログラムとなる。
In addition, the program media
プログラムメディアエラー修復ブロック41は、上記プログラムメディアエラー検出ブロック40によりエラーの有ることが検出された場合に、保護対象プログラムのデータを修復するための処理を実行させるためのプログラムとなる。
図2のフラッシュメモリ対応ブロック100A内に示されるプログラムメディアエラーフラグ42は、プログラムメディアエラー検出ブロック40によるエラー検出結果に応答して、プログラムメディアエラー修復ブロック41が、少なくともエラーの有無を示す値をセットするようにされ、フラッシュメモリ19に対して記憶保持させるようになっている。
なお、以降において、プログラムメディアエラー検出ブロック40及びプログラムメディアエラー修復ブロック41を一括しては、保護対象プログラムを保護する目的のプログラムであるとして、保護用プログラムともいうことにする。
The program media
The program media error flag 42 shown in the flash
In the following description, the program media
HDD対応ブロック100Bは、この場合には、さらにメインプログラムブロック100B−1と、バックアッププログラムブロック100B−2とのブロックに分割される。そして、メインプログラムブロック100B−1は、ビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52を有するものとしている。また、バックアッププログラムブロック100B−2は、ビデオ/オーディオメディア制御ブロック51A、ユーザインターフェイスブロック52Aを有するものとしている。実際のHDD21には、これらのブロックのプログラムが記憶されていることになる。ビデオ/オーディオメディア制御ブロック51Aは、正常なビデオ/オーディオメディア制御ブロック51と同一の内容を持つ。同様に、ユーザインターフェイスブロック52Aも、正常なユーザインターフェイスブロック52と同一の内容を持つ。
In this case, the
ビデオ/オーディオメディア制御ブロック51は、放送受信録画装置1に実装される記憶デバイスを対象として、プログラム以外のデータとして、ここでは、デジタルテレビジョン放送を録画して得られるものとされるビデオ/オーディオのデータの読み出し/書き込みを可能とするための制御処理を実現する。例えば、ビデオ/オーディオメディア制御ブロック51は、記憶媒体に記憶されるユーザデータであるビデオ/オーディオデータを、所定方式のファイルシステムにより管理し、このファイルシステムの管理内容に基づいて、ビデオ/オーディオデータの記録再生の制御を実行する。
このビデオ/オーディオメディア制御ブロック51としても、フラッシュメモリ対応ブロック100A内のプログラムメディア制御ブロック37と同様にして、HDD/DVD通信制御ブロック38以下の階層での通信処理を利用して、HDD21若しくはDVD21に対してアクセスするようにされている。
The video / audio media control block 51 is a video / audio that is obtained by recording a digital television broadcast as data other than a program for a storage device installed in the broadcast receiving /
The video / audio media control block 51 also uses the communication processing in the hierarchy below the HDD / DVD
また、ユーザインターフェイスブロック52は、ユーザインターフェイスに関する制御処理を実行する。例えば操作部23に対して行われた操作に応じて、チューナ系統の受信選局動作、ビデオ/オーディオデータの記録再生、録画予約設定などに関する各種所要の処理を実現する。また、本実施の形態としては、ビデオ信号出力として、ユーザ操作のためのGUI(Graphical User Interface)画像を重畳して出力可能とされており、このための、表示用データ、また、表示制御プログラムなども、ユーザインターフェイスブロック52に含まれる。なお、本実施の形態の放送受信録画装置1の構成では、GUI画像の出力は、CPU16がユーザインターフェイスブロック52としてのGUIに関するプログラムを実行して、ビデオデコーダ14における、ビデオ信号処理機能を制御することで実現されるものとされる。
In addition, the
本実施の形態では、上記のようにして、HDD21に記憶されるビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52を、CPU16が実行するものとして記憶されるプログラムのうちで、そのデータ内容にエラーが生じたときに修復されるようにして保護すべきとされるプログラム(保護対象プログラム)としている。
HDD対応ブロック100Bとして、上記のようにして、メインプログラムブロック100B−1と、バックアッププログラムブロック100B−2を有することとしているのは、ビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52が保護対象プログラムとされていることによる。
つまり、メインプログラムブロック100B−1としてのビデオ/オーディオメディア制御ブロック51及びユーザインターフェイスブロック52は、ビデオ/オーディオメディア制御機能、ユーザインターフェイス機能を実現するために、CPU16が読み込みを行ってRAM17に展開する(ロード)し、実行するプログラムとなる。これに対して、メインプログラムブロック100B−1は、メインプログラムブロック100B−1としてのビデオ/オーディオメディア制御ブロック51及びユーザインターフェイスブロック52としてのプログラムのデータ内容にエラーが生じたときの代替となる、バックアップ用のプログラムのデータから成るもので、このバックアップ用のデータとして、正常なビデオ/オーディオメディア制御ブロック51と同一内容のビデオ/オーディオメディア制御ブロック51Aを有し、正常なユーザインターフェイスブロック52と同一内容のユーザインターフェイスブロック52Aを有する。
なお、このようなHDD対応ブロック100Bのプログラム構成を利用して、本実施の形態としてどのようにしてプログラムの保護を図るのかについては後述する。
In the present embodiment, as described above, the video / audio media control block 51 and the
As described above, the
That is, the video / audio media control block 51 and the
Note that how to protect the program according to the present embodiment using such a program configuration of the HDD
また、図2においては、CPUブロック100の他に、HDDデバイスブロック200と、DVDデバイスブロック300を示している。
HDDデバイスブロック200は、HDD21としてのハードウェアデバイスが記憶保持し、実行するプログラムの機能構成を示しており、プログラム構成としては、HDD通信インターフェイス201、HDD制御ブロック202を有する。
また、DVDデバイスブロック300は、DVDドライブ20としてのハードウェアデバイスが記憶保持し、実行するプログラムの機能構成を示しており、プログラム構成としては、DVD通信インターフェイス301、DVD制御ブロック302を有する。
FIG. 2 shows an
The
The
HDDデバイスブロック200のHDD通信インターフェイス201は、上記HDD/DVD通信インターフェイス39と同位のプログラム階層に位置して、このHDD/DVD通信インターフェイス39との間で通信を実行する。これにより、CPU16を備えるメインのシステムコントローラ側と、HDD21との間での通信として、例えば各種機能に対応するコマンドの送受信、読み出し/書き込みデータの授受が可能となる。
また、HDDデバイスブロック200において、HDD通信インターフェイス201は、HDD制御ブロック202と連携することとなっている。HDD制御ブロック202は、記憶媒体であるHDDに対するデータの読み出し/書き込みを制御し、また、HDDに記録されるデータの管理を、例えば所定のファイルシステムの規定に従って行う。
The HDD communication interface 201 of the
In the
また、DVDデバイスブロック300のDVD通信インターフェイス301も、上記HDD/DVD通信インターフェイス39と同位のプログラム階層に位置して、このHDD/DVD通信インターフェイス39との間で通信を実行する。これにより、CPU16を備えるメインのシステムコントローラ側と、DVDドライブ20との間での通信が可能となる。
また、DVDデバイスブロック300において、DVD通信インターフェイス301は、DVD制御ブロック302と連携する。DVD制御ブロック202は、DVD25に対するデータの読み出し/書き込みを制御し、また、DVDに記録されるデータの管理を行う。
Also, the
In the
ここで、上記図2に示すプログラム構成を前提とした、放送受信録画装置1が起動するときの基本的な動作について述べておくこととする。
先に説明したように、本実施の形態の放送受信録画装置1では、メイン電源の供給が停止されているときには、サブのスタンバイ用のシステムコントローラがスタンバイ電源の供給を受けて動作しており、CPU16を備えるメインのシステムコントローラをはじめ、図1に示した機能ブロックに相当するハードウェアデバイスに対する電源の供給は停止されている。このため、メイン電源の供給が停止されている状態では、プログラムを記憶するフラッシュメモリ19及びHDD21への電源供給も停止されている状態にある。但し、操作部23に対する操作に応じた操作情報信号は、スタンバイ用のシステムコントローラに供給されるようになっている。
Here, the basic operation when the broadcast receiving and
As described above, in the broadcast receiving and
ここで、メインの電源投入されたとすると、その直後、図1に示した各ブロックに対応するハードウェアデバイスに対する電源供給も開始され、これらのハードウェアデバイスは動作可能な状態となる。ただし、例えばチューナ11などをはじめとするハードウェアデバイスにでは、通電が行われたのみで、そのハードウェアデバイスを制御するためのプログラムが初期化されて起動されない状態では、これらハードウェアデバイスの正常な機能は得られない。 Here, assuming that the main power is turned on, immediately after that, power supply to the hardware devices corresponding to the respective blocks shown in FIG. 1 is also started, and these hardware devices become operable. However, for example, in a hardware device such as the tuner 11 or the like, in a state where power is supplied and a program for controlling the hardware device is not initialized and activated, these hardware devices are normal. The function is not obtained.
上記のようにしてメインの電源が供給されることにより、CPU16にも電源が供給されることになる。電源供給を受けて動作可能となったCPU16は、初期起動のための処理を実行することになる。そして、先ずは、プログラム起動制御ブロック31としての処理を実行する。つまり、CPU16は、例えば予め定められたフラッシュメモリ19のアドレスにアクセスして、プログラム起動制御ブロック31としてのプログラムを読み込んでRAMに展開し、これを実行する。
By supplying main power as described above, power is also supplied to the CPU 16. The CPU 16 that is operable upon receiving power supply executes processing for initial activation. First, processing as the program activation control block 31 is executed. That is, the CPU 16 accesses, for example, a predetermined address of the
上記のようにしてプログラム起動制御ブロック31を実行することにより、CPU16では、次に初期化すべきプログラムの項目として、チューナ制御ブロック32、プログラムメディア制御ブロック37を認識し、チューナ制御ブロック32の初期化と、期間T2−Aとしてのプログラムメディア制御ブロック37の初期化とを同時併行的に実行開始する。確認のために、チューナ制御ブロック32、プログラムメディア制御ブロック37は、フラッシュメモリ19に記憶されており、そのアドレスなどは、例えばプログラム起動制御ブロック31により指定されればよい。
By executing the program start control block 31 as described above, the CPU 16 recognizes the
チューナ制御ブロック32の初期化は、フラッシュメモリ19から読み出したチューナ制御ブロック32としてのプログラムを、例えばRAM17に展開したうえで、このプログラムの関数などについて、起動時に対応する初期値をセットするようにされる。この初期化が実行されることで、以降、そのプログラムがCPU16により実行可能な状態を得ることができる。チューナ制御ブロック32に関すれば、初期化以降は、チューナ系統についての制御処理を実行することで、デジタルテレビジョン放送を受信選局して、放送番組のビデオ/オーディオデータを得ることが可能になる。
また、プログラムメディア制御ブロック37の初期化も、同様にして、フラッシュメモリ19から読み出したプログラムメディア制御ブロック37としてのプログラムをRAM17に展開して初期値をセットする。
For the initialization of the
Similarly, initialization of the program
チューナ制御ブロック32の初期化を実行したとされると、続いては、チューナ制御ブロック32を実行することにより受信取得される放送番組のビデオ/オーディオデータを出力するためのプログラムを初期化すべきこととなる。つまり、ビデオ/オーディオストリーム論理フォーマット制御ブロック33、ビデオ/オーディオストリーム出力制御ブロック34(及びビデオインターフェイス35、オーディオインターフェイス36)の初期化を実行する。
ここまでの処理が実行される結果、以降においては、初期化後のチューナ制御ブロック32、ビデオ/オーディオストリーム論理フォーマット制御ブロック33、ビデオ/オーディオストリーム出力制御ブロック34、ビデオインターフェイス35、オーディオインターフェイス36としてのプログラムを実行できることになる。この結果、チューナ系統によりテレビジョン放送を受信選局、復調してビデオ/オーディオデータを取得し、この取得したビデオ/オーディオデータについて復号処理などを施して、ビデオ/オーディオ信号として外部に出力することが可能になる。つまり、放送受信録画装置1により受信したテレビジョン放送の映像、音声は、ディスプレイ26、スピーカ27に対して出力可能な状態となる。
If initialization of the
As a result of executing the processing so far, hereinafter, the
一方、プログラムメディア制御ブロック37を初期化したのに応じては、プログラムメディアエラー検出ブロック40及びプログラムメディアエラー修復ブロック41を初期化すべきことが認識されるので、これらの各ブロックを初期化することになる。これにより、プログラムメディアエラー検出ブロック40及びプログラムメディアエラー修復ブロック41としての機能処理を実行可能になる。
また、プログラムメディア制御ブロック37を初期化したのに応じては、例えば、HDD21に記憶されるプログラムであるビデオ/オーディオメディア制御ブロック51、及びユーザインターフェイスブロック52を初期化すべきことも認識される。そこで、HDD21にアクセス可能な状態を得るために、HDD/DVD通信制御ブロック38(及びHDD/DVD通信インターフェイス39)の初期化を実行するようにされる。これにより、メインのシステムコントローラ(CPU16)側における、HDD21、DVDドライブ20への通信環境が形成される。そして、この初期化に応じて、HDD/DVD通信インターフェイス39を経由するようにして、HDD21、DVDドライブ25との通信が可能になり、これに伴い、HDDデバイスブロック200及びDVDデバイスブロック300側とのプログラムとの連携が可能となる。
On the other hand, in response to the initialization of the program
Further, in response to the initialization of the program
そして、HDD/DVD通信制御ブロック38(及びHDD/DVD通信インターフェイス39)の初期化に応じて、例えばHDD/DVD通信制御ブロック38側からは、HDD及びDVDのドライブ側を初期化すべき指示が発生する。これに応じて、HDD21、DVDドライブ20を対象とする初期化処理を実行する。
HDD21を対象とする初期化処理としては、スピンアップなどといわれる物理的機構の駆動を伴う初期化を実行するとともに、図2との対応では、HDD制御ブロック202の初期化を実行させる。スピンアップとは、HDDの記憶媒体である磁気ディスクの回転を始動させて、正常なデータの書き込み/読み出しが可能な回転速度に引き上げるようにして回転駆動させることをいう。
また、DVDドライブ21を対象とする初期化処理として、例えばDVDが装填されている場合には、HDDと同様のスピンアップに相当する初期化を行い、また、DVD制御ブロック302などの初期化処理を実行させる。例えば、ここまでの処理の完了を以て、起動が完了することになる。
Then, in response to the initialization of the HDD / DVD communication control block 38 (and the HDD / DVD communication interface 39), for example, the HDD / DVD
As initialization processing for the
Further, as initialization processing for the
上記のようにして、HDD21、DVDドライブ20を対象とする初期化処理が実行されることで、例えば、プログラムメディア制御ブロック37側からの制御により、HDD21、DVDドライブ22に装填されるDVDに対して、データ書込/読み出しのためにアクセスすることが可能になる。そこで、続いては、HDD21に対してアクセスして、ビデオ/オーディオメディア制御ブロック51、及びユーザインターフェイスブロック52の読み出しを実行し、初期化を実行することとしている。この初期化が完了することで、ビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52としてのプログラムを実行して、その機能を実現することができる。つまり、ユーザによる操作に応答して放送受信録画装置1が動作することが可能になり、また、HDD21又はDVDドライブ22に装填されるDVD25に対するビデオ/オーディオデータの記録再生が可能になる。
また、この段階では、先に説明したように、チューナ系によりテレビジョン放送を受信してビデオ/オーディオデータを取得可能とされている。つまり、起動が完了した段階では、図2に示すプログラム構成により実現される機能は、全て動作実行を可能な状態となっている。
By executing the initialization process for the
Further, at this stage, as described above, video / audio data can be acquired by receiving a television broadcast by a tuner system. That is, at the stage where activation is completed, all the functions realized by the program configuration shown in FIG.
なお、上記のようにしてブロックとして示すフラッシュメモリ19及びHDD21に記憶されるプログラムは、全て、起動時に初期化起動されるものであるが、ここで図示するプログラムは、本実施の形態における主要構成を示すものであり、実際としては、これ以外の何らかの機能のための初期起動対象プログラム、あるいは初期起動対象プログラムではないプログラムが、存在していてもよいものである。
Note that the programs stored in the
続いては、図3及び図4のフローチャートを参照して、本実施の形態における保護対象プログラムについてのデータ保護のための処理について説明する。この図に示す処理は、保護用プログラムである、プログラムメディアエラー検出ブロック40及びプログラムメディアエラー修復ブロック41を含み、図2に示す所要の機能のためのプログラムのブロックをCPU16が実行することで実現される。
Next, with reference to the flowcharts of FIGS. 3 and 4, a process for data protection for the protection target program in the present embodiment will be described. The processing shown in this figure includes a program media
ここで、図3に示す処理は、先に説明したように起動が完了した後において、メインプログラムブロック100B−1のビデオ/オーディオメディア制御ブロック51のプログラムを実行すべきとき、または、同じメインプログラムブロック100B−1のユーザインターフェイスブロック52のプログラムを実行すべきときに対応して実行される。
Here, the processing shown in FIG. 3 is performed when the program of the video / audio media control block 51 of the
CPU16が、ビデオ/オーディオメディア制御ブロック51のプログラム、又はユーザインターフェイスブロック52のプログラムを実行することによっては、先ず、図3のステップS101として示すように、ビデオ/オーディオメディア制御ブロック51又はユーザインターフェイスブロック52により、所定の他の機能を実現するプログラムに対して実行命令を与える。このときに、CPU106は、ステップS102の処理として、その実行命令に対応する命令コードが、プログラムを展開して保持しているメモリ(RAM17)に保持されているか否かについて判別する。そして、メモリに命令コードが保持されているとして肯定の判別結果が得られたのであれば、ステップS101に戻るようにして、次の実行命令を与えていくようにされる。これに対して、メモリに命令コードが保持されていないとして否定の判別結果が得られたのであれば、ステップS103に進む。
When the CPU 16 executes the program of the video / audio media control block 51 or the program of the
ステップS103においては、プログラムメディア制御ブロック37としてのプログラムにより、今回必要とされている命令コードをHDD21から読み込む処理を開始させる、これに応じて、次のステップS104では、プログラムメディア制御ブロック37としてのプログラム階層から、HDD/DVD通信制御ブロック38に対して、HDD21から上記命令コードの読み込みを命令する。この命令に従って、HDD/DVD通信制御ブロック38は、HDD/DVD通信インターフェイス39経由でHDD21にアクセスし、指定された命令コードの読み出しを行い、プログラムメディア制御ブロック37に渡すようにされる。これにより、ステップS104にて読み込み命令が実行されることに応じて、HDDからの命令コードの読み込みが実行されるようになっている。
In step S103, the program as the program
ここで、本実施の形態では、上記のようにしてステップS104に応答して実行される命令コードの読み込み結果を、プログラムメディアエラー検出ブロック40により監視することとしており、その読み込み結果に応じて、プログラムのエラーについての有無を検出することとしている。例えば、HDD21からデータを読み出すのにあたり、読み出したデータそのものの誤りを訂正する符号訂正が行われるとした場合には、プログラムメディアエラー検出ブロック40は、この符号訂正の処理過程において実行される読み出しデータについてのエラー検出処理の結果を利用できる。つまり、エラー検出結果がOKの状態でデータの読み込みが実行されたのであれば、ステップS105としては、正常に命令コードを読み込んだ結果が得られたとして肯定の判別結果を得るようにされる。これに対して、エラー検出結果がNGの状態でデータの読み込みが実行されたのであれば、ステップS105としては、命令コードを正常に読み込めていないという結果が得られたとして否定の判別結果を得るようにされる。
Here, in the present embodiment, the reading result of the instruction code executed in response to step S104 as described above is monitored by the program media
上記ステップS105にて肯定の判別結果が得られた場合には、ステップS101の処理に戻るようにして、以降のビデオ/オーディオメディア制御ブロック51のプログラム、又はユーザインターフェイスブロック52のプログラムの実行命令を与える。
これに対して、ステップS105にて否定の判別結果が得られた場合には、少なくともステップS104に応答して読み込みを行った命令コードとしてのプログラム部分についてエラーが生じていることになる。このエラーの原因としては、例えば命令コードを記憶しているHDDの物理的な記憶領域に傷などのディフェクトが生じていることで正常な読み出しが物理的にできなくなっている場合、あるいは、ディフェクトを生じていないとしても、記録時のエラーなどにより、本来の正常な内容とは異なるデータが記憶されている場合などを挙げることができる。このような場合には、プログラム修復のための処理として、ステップS106以降の処理が実行される。
If an affirmative determination result is obtained in step S105, the process returns to the process of step S101, and a subsequent execution instruction of the program of the video / audio media control block 51 or the program of the
On the other hand, when a negative determination result is obtained in step S105, an error has occurred in at least the program portion as the instruction code read in response to step S104. This error may be caused, for example, when a defect such as a scratch has occurred in the physical storage area of the HDD storing the instruction code, and normal reading cannot be performed physically, or Even if it does not occur, there may be a case where data different from the original normal content is stored due to an error during recording. In such a case, the process after step S106 is performed as a process for program restoration.
ステップS106では、プログラムメディアエラー検出ブロック40の処理として、上記ステップS105により読み込み結果がエラー(プログラムのエラー)があったことを検出したのに応じて、プログラムメディアエラー修復ブロック41に対してデータ修復命令を与えるようにされる。
上記命令に応答して、プログラムメディアエラー修復ブロック41では、ステップS107としての処理により、プログラムメディアエラーフラグ42のフラグ値fについて、エラーであることを示す値として、ここでは、f=1をセットするようにされる。フラグ値f=0がエラーでないことを示すことになる。また、ここでは、説明を簡単なものとするために、プログラムメディアエラーフラグ42のフラグ値fについて、1,0によりエラーの有無を示す機能のみを与えることとしているが、例えば実際においては、エラーとなったプログラムのブロック種別、さらにはプログラムのブロック種別内におけるエラーとなったデータ部分、また、エラーの症状に対応した内容なども示されるような構造としてもよい。このような構造とすれば、例えばエラー症状などに適応した、より高度なプログラムの修復を実行できるように構成することが可能になる。
上記のようにしてしかるべき値をセットしたプログラムメディアエラーフラグ42は、この場合には、フラッシュメモリ19における所定領域に対して上書きするようにして記憶保持される。
そして、ステップS108に続けては、ステップS108により、システムを再起動させるための処理を開始する。つまり、これまでに起動されたプログラムについての所要の終了処理を実行したうえで、メインの電源を一旦切断する。そして、再度、メインの電源を投入して、システムの起動を開始させる。
In step S106, as the processing of the program media
In response to the above command, the program media
In this case, the program media error flag 42 in which an appropriate value is set as described above is stored and held so as to overwrite a predetermined area in the
Subsequently to step S108, processing for restarting the system is started in step S108. In other words, the main power supply is temporarily turned off after executing the necessary end processing for the program that has been activated so far. Then, the main power is turned on again to start the system.
図4のフローチャートは、上記図3のステップS108の処理に応じてシステム再起動が開始されたときの処理を示している。
ここでは、先ずステップS201により、先にも説明したように、起動のための最初の処理として、プログラム起動制御ブロック31の実行を開始する。
本実施の形態では、プログラム起動制御ブロック31として、その実行過程における所定の段階で、プログラムメディアエラーフラグ42の読み込みを実行することとしており、ステップS202においては、この処理が示されている。このようにして、読み込まれたプログラムメディアエラーフラグ42のフラグ値fは、f=1となっている。プログラム起動制御ブロック31を実行するCPU16としては、プログラムにエラーが存在し、今回の起動にあたっては、このプログラムのエラーを修復すべきことを認識する。
The flowchart in FIG. 4 shows processing when system restart is started in accordance with the processing in step S108 in FIG.
Here, first, as described above, in step S201, execution of the program activation control block 31 is started as the first process for activation.
In the present embodiment, as the program activation control block 31, the program media error flag 42 is read at a predetermined stage in the execution process, and this process is shown in step S202. In this way, the flag value f of the read program media error flag 42 is f = 1. The CPU 16 that executes the program activation control block 31 recognizes that an error exists in the program and that this program error should be repaired at the time of this activation.
ステップS203以降は、プログラムメディアエラーフラグ42のフラグ値がf=1であったことに対応した、プログラム修復のための処理となる。プログラム修復のためには、修復対象のプログラムが記憶されているHDD21にアクセスできるようにする必要がある。そこで、ステップS203としては、HDDデバイスの初期化、及びHDD制御ブロック202の初期化を実行する。HDDデバイスの初期化、及びHDD制御ブロック202の初期化は、前述もしたように、例えばプログラムメディア制御ブロック37を初期化したうえで、このプログラムメディア制御ブロック37から命令を与えるようにして実行が促される。
Step S203 and subsequent steps are processing for program restoration corresponding to the fact that the flag value of the program media error flag 42 is f = 1. In order to repair the program, it is necessary to make it possible to access the
そして、上記ステップS203によりHDD21とのアクセスが可能となると、ステップS204として示すようにして、プログラムの修復を実行する。
このプログラムの修復としては、次のようにして行う。
前述もしたように、HDD対応ブロック100Bにおいて、CPU16が実行するために読み込みが行われるプログラムは、メインプログラムブロック100B−1のプログラム(ビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52)である。従って、先の図3のステップS105の処理に応じてエラーが検出されたプログラムは、このメインプログラムブロック100B−1に対応するHDD21の記憶領域に記憶されるプログラムであることになる。一方のバックアッププログラムブロック100B−2に対応するHDD21の記憶領域に記憶されるプログラム(ビデオ/オーディオメディア制御ブロック51A、ユーザインターフェイスブロック52A)は、バックアップ用とされて通常は読み込みが行われないもので、メインプログラムブロック100B−1に記録されるプログラムが正常である場合と同一とされる内容を有している。
そこで、ステップS204のプログラム修復のための処理としては、バックアッププログラムブロック100B−2としてのHDD21の記憶領域に記憶されるプログラムのデータを、メインプログラムブロック100B−1としてのHDD21の記憶領域に対して上書きコピーするようにして書き込みを行う。これにより、エラー部分を有していた元のメインプログラムブロック100B−1のプログラム(ビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52)は、バックアッププログラムブロック100B−2のプログラム(ビデオ/オーディオメディア制御ブロック51A、ユーザインターフェイスブロック52A)の内容を有するようにして書き換えが行われることになる。また、このときに、ディフェクトの物理的記憶領域(セクタ)が存在している場合には、このディフェクトの領域を避けるようにして、プログラムのデータの上書きコピーの処理が実行される。
このようにして、ステップS204の処理が実行されることで、メインプログラムブロック100B−1としてのHDD21の記憶領域に記憶されているものとしてのプログラムのデータ(ビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52)は、正常に読み込みが行われるようにして復元されたことになる。
When access to the
This program is repaired as follows.
As described above, in the HDD
Therefore, as processing for program restoration in step S204, program data stored in the storage area of the
In this way, by executing the processing of step S204, the program data (video / audio media control block 51, user interface) stored in the storage area of the
このようにして、本実施の形態において、プログラム修復の処理は、プログラム起動制御ブロック31として実現される処理とされる。プログラム起動制御ブロック31は、起動時において最初に実行されるプログラムのブロックであることから、この段階においてプログラムの修復を行っておけば、以降の起動処理によっては、復元されたプログラムを初期化して正常に実行させることができるために、効率的であり、また、安定した動作を期待できるからである。 In this way, in the present embodiment, the program restoration process is a process realized as the program activation control block 31. Since the program activation control block 31 is a block of a program that is executed first at the time of activation, if the program is restored at this stage, the restored program is initialized depending on the subsequent activation processing. This is because it can be executed normally, so that it is efficient and a stable operation can be expected.
そして、ステップS205においては、このプログラム起動制御ブロック31による残りの処理を実行することになる。このステップS205としてのプログラム起動制御ブロック31による処理が終了したとされると、以降、先に説明したようにして、図2に示した他の機能プログラムが順次起動されていくこととなって、最終的に起動が完了するものである。そして、この段階では、メインプログラムブロック100B−1のプログラム(ビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52)は修復されているものであり、以降においては、このプログラムは正常に実行されることになる。また、プログラムメディアエラーフラグ42についても、例えば初期化の過程において、プログラムメディアエラー修復ブロック41が初期化されるのに伴って初期化され、エラーが検出されないことを示すフラグ値がセットされる。
In step S205, the remaining processing by the program activation control block 31 is executed. If it is assumed that the processing by the program activation control block 31 as step S205 is completed, the other function programs shown in FIG. 2 are sequentially activated as described above. Eventually the startup is completed. At this stage, the program (video / audio media control block 51 and user interface block 52) of the
ところで、上記ステップS204としてのプログラム修復の処理は、メインプログラムブロック100B−1としての記憶領域に対して、バックアッププログラムブロック100B−2としての記憶領域に記憶されるプログラムのデータを一括的に上書きコピーするような手順として説明している。しかしながら、先に説明したように、プログラムメディアエラーフラグ42のフラグ値fについて、エラーとなったプログラムのブロック種別、さらにはプログラムのブロック種別内におけるエラーとなったデータ部分、また、エラーの症状に対応した内容なども示されるような構造とすれば、このような内容に適応して、例えばエラーとなったプログラムのブロックのみを対象として上書きコピーするようにして修復を行ったり、さらには、エラーとなったプログラムのデータ部分を含む一部プログラムデータのみを対象として上書きコピーをして修復を行うようにすることも可能となる。この場合には、上書きコピーすべきデータサイズが小さくなることから、修復に要する時間が短縮されるなどの効率面での効果が得られる。
By the way, the program restoration process in step S204 described above is a batch overwrite copy of the program data stored in the storage area as the
ところで、本発明の概念の下では、保護対象プログラムを、どのような機能のプログラムとするのかについては、特に限定されるべきではないが、上記実施の形態としては、下記のようなことを考慮して、保護対象データをビデオ/オーディオメディア制御ブロック51、及びユーザインターフェイスブロック52としている。
ここで、本実施の形態の放送受信録画装置1においてプログラムが記憶されるフラッシュメモリ19と、HDD21と比較してみると、一般的なこととして、ビット単価については、フラッシュメモリのほうが、HDDに対して相当に高くなる。一方、デバイスとしての初期化時間はフラッシュメモリのほうが相当に短いものとなる。フラッシュメモリは、例えば電源供給が開始されて通電が行われれば、アクセスが可能な状態に即座に遷移できる。つまり、初期化が高速に完了する。また、読み出しは静的なものであるので、アクセスに要する時間も短い。これに対してHDDは、電源供給が停止の状態から電源供給を開始したとすると、初期化として先ず、いわゆるスピンアップなどといわれる、ディスクを回転始動させて、正常なアクセスが可能となる回転速度範囲となる状態にまで遷移させる必要がある。このようなスピンアップを伴う初期化だけで、10秒程度を要する。また、初期化が完了してアクセス可能な状態に至ったとしても、HDDは、物理的に磁気ヘッドを駆動してランダムアクセスを行うことから、例えば単位サイズあたりのデータの読み出し/書き込みに要する時間は、フラッシュメモリに対して長くなる。
By the way, under the concept of the present invention, what kind of function should be used as the protection target program should not be particularly limited. However, in the above embodiment, the following is considered. Thus, the data to be protected is a video / audio media control block 51 and a
Here, when compared with the
また、現状においては、電子機器を制御するプログラムは、大規模になって肥大化する傾向にある。本実施の形態の放送受信録画装置1のようにして、デジタルテレビジョン放送を受信録画するような機器についても、近年では、デジタルのビデオ/オーディオ信号を扱い、また、高度なGUIを提供できるようにすることなどを目的として、プログラムが大規模化してデータサイズも大きくなっている。このために、本実施の形態の放送受信録画装置1の実際としては、ビデオ/オーディオメディア制御ブロック51、及びユーザインターフェイスブロック52などは、特にプログラムとしてのデータサイズが大きい。
At present, programs for controlling electronic devices tend to be large and bloated. In recent years, devices that receive and record digital television broadcasts, such as the broadcast receiving and
上記のようにして、比較的総合的なサイズの大きなプログラムのデータを、例えばフラッシュメモリに全て記憶させることとすると、先に述べたビット単価が高いことで、フラッシュメモリの容量を多くすることになり、コストが非常に高くなってしまう。一方、プログラムのデータをHDDに全て記憶させることとすれば、コストについては問題は特になくなるが、起動が著しく遅くなる。 As described above, if all the data of a relatively large program is stored in, for example, the flash memory, the capacity of the flash memory is increased due to the high bit unit price described above. The cost becomes very high. On the other hand, if all program data is stored in the HDD, there is no particular problem with respect to cost, but startup is significantly slowed down.
このようなことを考慮して、本実施の形態の放送受信録画装置1では、プログラムについて、フラッシュメモリ19とHDD21とに分散して記憶させることで、コストと起動時間短縮化とのバランスを図っている。このとき、HDD21には、ビデオ/オーディオメディア制御ブロック51、ユーザインターフェイスブロック52など、比較的容量の大きいブロックとなる機能プログラムのデータを記憶させ、フラッシュメモリ19には、プログラム起動制御ブロック31をはじめとした起動に最小限必要なプログラムや、そのほかの所定機能に対応するプログラムとして、データ容量の小さなものさせることで、上記したコストと起動時間短縮化のバランスを良好に得ることができる。また、ビット単価の低いHDDであれば、本実施の形態のメインプログラムブロック100B−1とバックアッププログラムブロック100B−2のようにして、データ保護のために、データを多重書きさせるようにして記憶させることも容易に実現できる。また、多重書きを何回行うこととするのかについても、本実施の形態では2回となっているが、これより多い多重書きの回数としてもよいものであり、多重書きの回数が多いほど、正常な状態のバックアッププログラムが残る可能性が高くなるのでデータ保護の信頼性は高くなる。
Considering this, the broadcast receiving and
そのうえで、記憶媒体の特質からみると、HDDとフラッシュメモリとでは、記憶されるデータが破壊される可能性はHDDが高い。そこで、本実施の形態では、HDD21に記憶されるプログラムである、ビデオ/オーディオメディア制御ブロック51及びユーザインターフェイスブロック52のデータを保護対象データとしているものである。そして、保護用プログラム(プログラムメディアエラー検出ブロック40、プログラムメディアエラー修復ブロック41)については、フラッシュメモリ19に記憶させることとしている。つまり、本実施の形態では、データ破壊の可能性が高い方の記憶媒体に記憶されるプログラムを保護対象として、保護用プログラムについては、データ破壊の可能性の低いほうの記憶媒体に記憶させることで、より信頼性の高いエラー修復機能を目指すものである。
In addition, from the viewpoint of the characteristics of the storage medium, the HDD and the flash memory are highly likely to destroy the stored data. Therefore, in the present embodiment, data in the video / audio media control block 51 and the
また、実施の形態では、上記のように、保護対象プログラムをHDD21に記憶させ、保護用プログラムをフラッシュメモリに記憶させることとしているのであるが、本発明としては、これとは逆の関係により、フラッシュメモリに記憶される所定のプログラムを保護対象データとして、保護用プログラムをHDDに記憶する構成としてもよい。この構成であっても、HDDとフラッシュメモリとでそれぞれ異なるとされる記憶手段に対して、保護対象プログラムと保護用プログラムとが分散して記憶されることから、同一の記憶手段に保護対象プログラムと保護用プログラムを記憶させる場合よりも、保護修復機能としては、信頼性が高くなるからである。
Further, in the embodiment, as described above, the protection target program is stored in the
また、本願発明での記憶手段は、上記フラッシュメモリとHDDの組み合わせのようにして、それぞれ異なる種類とされてもよいが、ドライブデバイスや半導体部品などとして、それぞれ個別の部品となる場合には、例えばHDD同士、フラッシュメモリ同士、などのようにして、同じ種類の記憶媒体とされてもよい。
また、保護対象プログラムが記憶される第1の記憶媒体と、保護用プログラムが記憶される第2の記憶媒体のそれぞれは、1つの部品、デバイスに限定されるものではなく、複数の部品、デバイスであってもよい。例えば、半導体部品としてのフラッシュメモリを2つ備え、一方に、保護用データとして検出プログラムを記憶させ、他方に保護用データとして修復プログラムを記憶させてよい。また、2つのデバイスとしてのHDDのそれぞれに、保護対象プログラムを分散して記憶させてよい。
また、本願発明における第1の記憶媒体、第2の記憶媒体として実際に採用すべき記憶媒体、記憶デバイスの種類としては、HDD、フラッシュメモリ以外とされてよい。
また、プログラムメディアエラー修復ブロック41により実行されるプログラム修復の手順としても、先に説明したものに限定されず、他にも考えられるものである。例えば、プログラム修復のアルゴリズムによっては、保護対象プログラムのデータを多重書きする必要がない場合もあると考えられる。
In addition, the storage means in the present invention may be of different types, such as the combination of the flash memory and the HDD, but in the case of individual components such as drive devices and semiconductor components, For example, the same type of storage medium may be used, such as between HDDs or between flash memories.
Each of the first storage medium storing the protection target program and the second storage medium storing the protection program is not limited to one component or device, but includes a plurality of components and devices. It may be. For example, two flash memories as semiconductor components may be provided, one of which may store a detection program as protection data and the other may store a repair program as protection data. Further, the protection target program may be distributed and stored in each of the two HDDs.
In addition, the types of storage media and storage devices that should actually be employed as the first storage medium and the second storage medium in the present invention may be other than the HDD and the flash memory.
Further, the program repair procedure executed by the program media
また、実施の形態では、本願発明の情報処理装置を、テレビジョン放送を受信してHDD、DVDに録画可能な放送受信録画装置としているが、これに限定されるべきものではなく、プログラムを実装する機器であれば、全般的に適用できる。 In the embodiment, the information processing apparatus of the present invention is a broadcast reception recording apparatus that can receive a television broadcast and record it on an HDD or a DVD. However, the present invention is not limited to this, and a program is installed. It can be applied generally to any device that does.
1 放送受信録画装置、10 アンテナ、11 チューナ、12 復調器、13 デマルチプレクサ、14 ビデオデコーダ、15 オーディオデコーダ、16 CPU、17 RAM、18 ROM、19 フラッシュメモリ、20 DVDドライブ、21 HDD、22 バス、23 操作部、25 DVD、26 ディスプレイ、27 スピーカ、31 プログラム起動制御ブロック、32 チューナ制御ブロック、33 ビデオ/オーディオストリーム論理フォーマット制御ブロック、34 ビデオ/オーディオストリーム出力制御ブロック、35 ビデオインターフェイス、36 オーディオインターフェイス、40 プログラムメディアエラー検出ブロック、41 プログラムメディアエラー修復ブロック、51 ビデオ/オーディオメディア制御ブロック、52 ユーザインターフェイスブロック、100 CPUブロック、100A フラッシュメモリ対応ブロック、100B HDD対応ブロック、200 HDDデバイスブロック、201 HDD通信インターフェイス、202 HDD制御ブロック、300 DVDデバイスブロック、301 DVD通信インターフェイス、302 DVD制御ブロック
DESCRIPTION OF
Claims (3)
上記第1の記憶手段に記憶されるプログラム以外で、所定の機能に対応するプログラムを記憶し、この記憶されるプログラムとして少なくとも、上記第1の記憶手段に記憶される保護対象プログラムについてのエラーを検出する処理を実行させる検出プログラムと、上記検出プログラムを実行させた結果として上記エラーが検出されたときに、多重に記憶されている上記保護対象プログラムのデータを利用して、保護対象プログラムを修復するための所定の修復処理を実行させる修復プログラムとを記憶する第2の記憶手段と、
少なくとも、上記検出プログラムと上記修復プログラムとを実行するように構成されるプログラム実行手段と、
を備えることを特徴とする情報処理装置。 A program corresponding to a predetermined function is stored, and among the stored programs, a protection target program to be protected is a first storage unit that is stored in a multiplexed manner,
In addition to the program stored in the first storage unit, a program corresponding to a predetermined function is stored, and at least an error regarding the protection target program stored in the first storage unit is stored as the stored program. A detection program for executing a detection process, and when the error is detected as a result of executing the detection program, the protection target program is repaired by using the data of the protection target program stored in multiplex. Second storage means for storing a repair program for executing a predetermined repair process for
Program execution means configured to execute at least the detection program and the repair program;
An information processing apparatus comprising:
上記第2の記憶手段は、フラッシュメモリを備えて構成される、
ことを特徴とする請求項1に記載の情報処理装置。 The first storage means comprises a hard disk,
The second storage means includes a flash memory.
The information processing apparatus according to claim 1.
上記情報処理装置が備える第2の記憶手段に対して、上記第1の記憶手段に記憶されるプログラム以外で、所定の機能に対応するプログラムを記憶させ、この記憶させるプログラムとして少なくとも、上記第1の記憶手段に記憶される保護対象プログラムについてのエラーを検出する処理を実行させる検出プログラムと、上記検出プログラムを実行させた結果として上記エラーが検出されたときに、上記保護対象プログラムを修復するための所定の修復処理を実行させる修復プログラムとを記憶させ、
上記検出プログラムを実行することにより、上記保護対象プログラムについてのエラーを検出する検出ステップと、
上記修復プログラムを実行することにより、第1の記憶手段において多重に記憶されている上記保護対象プログラムのデータを利用して、保護対象プログラムを修復する修復ステップとを実行する、
ことを特徴とする情報処理方法。
A program corresponding to a predetermined function is stored in the first storage unit included in the information processing apparatus, and the protection target program to be protected among the stored programs is stored in a multiplexed manner.
A program corresponding to a predetermined function other than the program stored in the first storage unit is stored in the second storage unit included in the information processing apparatus, and at least the first program is stored as the program to be stored. A detection program for executing a process for detecting an error for the protection target program stored in the storage means, and for repairing the protection target program when the error is detected as a result of executing the detection program A repair program for executing a predetermined repair process of
A detection step of detecting an error for the protection target program by executing the detection program;
By executing the repair program, a repair step of repairing the protection target program using the data of the protection target program stored in multiple in the first storage means is executed.
An information processing method characterized by the above.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005169972A JP2006344060A (en) | 2005-06-09 | 2005-06-09 | Information processor, and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005169972A JP2006344060A (en) | 2005-06-09 | 2005-06-09 | Information processor, and information processing method |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006344060A true JP2006344060A (en) | 2006-12-21 |
Family
ID=37640975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005169972A Pending JP2006344060A (en) | 2005-06-09 | 2005-06-09 | Information processor, and information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006344060A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011053775A (en) * | 2009-08-31 | 2011-03-17 | Ricoh Co Ltd | Print system, automatic restoration method of initiation program, and control automatic restoration control program |
JP2011514599A (en) * | 2008-03-04 | 2011-05-06 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | Improved application resource updates |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06180674A (en) * | 1992-12-14 | 1994-06-28 | Sony Corp | Data storage device |
JPH11184705A (en) * | 1997-12-25 | 1999-07-09 | Nec Mobile Commun Ltd | Device for correcting down-load program and method therefor |
JP2003099146A (en) * | 2001-09-20 | 2003-04-04 | Fujitsu Ltd | System for controlling start of computer system |
JP2004213365A (en) * | 2002-12-27 | 2004-07-29 | Yec:Kk | Hard disk drive unit, data recording device, backup device, restore device, backup method, and computer program executable in computer for making computer function as back up device |
-
2005
- 2005-06-09 JP JP2005169972A patent/JP2006344060A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06180674A (en) * | 1992-12-14 | 1994-06-28 | Sony Corp | Data storage device |
JPH11184705A (en) * | 1997-12-25 | 1999-07-09 | Nec Mobile Commun Ltd | Device for correcting down-load program and method therefor |
JP2003099146A (en) * | 2001-09-20 | 2003-04-04 | Fujitsu Ltd | System for controlling start of computer system |
JP2004213365A (en) * | 2002-12-27 | 2004-07-29 | Yec:Kk | Hard disk drive unit, data recording device, backup device, restore device, backup method, and computer program executable in computer for making computer function as back up device |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011514599A (en) * | 2008-03-04 | 2011-05-06 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | Improved application resource updates |
JP2011053775A (en) * | 2009-08-31 | 2011-03-17 | Ricoh Co Ltd | Print system, automatic restoration method of initiation program, and control automatic restoration control program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8189988B2 (en) | Digital video recorder having hierarchical memories and method for implementing hierarchical memories | |
US7844850B2 (en) | Broadcast/VOD receiver and viewing management method | |
JP5503539B2 (en) | Method and system for repairing a damaged hard disk file system | |
KR100441505B1 (en) | Image recording/reproducing apparatus for improving motion picture data retrieval capability according to recording error | |
JP2006344060A (en) | Information processor, and information processing method | |
US7502294B2 (en) | Information recording and playback apparatus, content management method, and content management program capable of preventing illegal copying of content | |
US20080279532A1 (en) | Recording and Reproducing Apparatus | |
JP4739708B2 (en) | Broadcast program recording method, broadcast receiving apparatus, and information recording apparatus therefor | |
US20070047125A1 (en) | Hard disk recorder | |
JP2006344059A (en) | Information processor, method of starting up program, and program | |
US20050213939A1 (en) | Decoding and recording apparatus | |
JP2004070799A (en) | Recording device, recording method and program | |
JP2006065915A (en) | Recording method of broadcast program, broadcast receiving apparatus, and information recording device for the same | |
JP2002229744A (en) | Data writing device and data writing method | |
KR100790038B1 (en) | Video display apparatus capable of application code data up-loading and control method thereof | |
JP2008140482A (en) | Optical disk device | |
JP2002290905A (en) | Digital broadcasting receiver and information recording and reproducing device | |
KR100503459B1 (en) | A/V program recording/reproducing apparatus having a function of delecting error file automatically and a method delecting error file | |
US20080199146A1 (en) | Stream reproduction apparatus and stream reproduction method | |
JP4830433B2 (en) | Television receiver and remaining capacity management method | |
KR20030080489A (en) | Method for recording and recovering recorded broadcast program | |
KR100705178B1 (en) | Method of data backup in digital television receiver | |
JP5161852B2 (en) | DRIVE DEVICE, CONTENT RECORDING / REPRODUCING DEVICE, DATA WRITE METHOD, PROGRAM, AND RECORDING MEDIUM | |
JP2007074515A (en) | Electronic equipment responding to remote control | |
JP2009118401A (en) | Digital broadcast receiver |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080529 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110419 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110426 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110616 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110705 |