(57)【要約】【課題】  ソフトウェアの変更に伴って、迅速にメモリのマッピングの変更を行うことができるようにする。【解決手段】  バージョン確認部１５１は、不揮発性メモリの記憶内容のバージョンと、不揮発性メモリの記憶内容を更新するプログラムなどに記述されたバージョンを比較し、不揮発性メモリの記憶内容のバージョンが古いか否かを判定する。不揮発性メモリの記憶内容のバージョンが古いと判定された場合、更新処理部１５２が、予め生成されてプログラムに組み込まれた構造体に基づいて、不揮発性メモリに記憶される情報を更新し、更新処理部１５２による更新が完了したら、バージョン書き換え部１５３が不揮発性メモリの記憶内容のバージョンを更新する。【選択図】      図３
2007087103.tif 000002
【特許請求の範囲】
【請求項１】
メモリに記憶されている情報を更新する情報処理装置であって、
前記メモリに記憶されている情報のバージョンを取得するメモリバージョン取得手段と、
前記メモリバージョン取得手段により取得されたバージョンが、予め設定された所定のバージョンより古いか否かを判定するバージョン判定手段と、
前記メモリバージョン取得手段により取得されたバージョンが、予め設定された所定のバージョンより古いと判定された場合、前記メモリに記憶される情報を更新する更新手段と、
前記更新手段により更新された情報に対応するバージョンを、前記メモリに記憶させることにより前記メモリに記憶されている情報のバージョンの書き換えを行う書き換え手段と
を備える情報処理装置。
【請求項２】
前記更新手段は、予め設定された更新制御情報に基づいて前記メモリに記憶される情報を更新する
請求項１に記載の情報処理装置。
【請求項３】
前記更新制御情報には、
前記メモリに記憶される情報であって、前記更新に伴って移動されるべき情報が記憶されているアドレスに関する情報と、
前記更新に伴って移動されるべき情報の移動先のアドレスに関する情報とが含まれる
請求項２に記載の情報処理装置
【請求項４】
前記更新制御情報には、
前記更新に伴って前記メモリに新たに記憶されるべき情報がさらに含まれる
請求項３に記載の情報処理装置。
【請求項５】
前記更新制御情報には、
前記更新手段が前記更新制御情報に基づいて、前記メモリに記憶されている情報を移動するのか、または前記メモリに新たに情報を記憶させるのかを表す情報がさらに含まれる
請求項４に記載の情報処理装置。
【請求項６】
前記メモリに記憶される情報を保持する保持手段をさらに備え、
前記更新手段は、前記保持手段に保持された情報を更新し、更新された情報を前記メモリに書き戻すことにより前記メモリに記憶される情報を更新する
請求項１に記載の情報処理装置。
【請求項７】
メモリに記憶されている情報を更新する情報処理装置の情報処理方法であって、
前記メモリに記憶されている情報のバージョンを取得し、
前記取得されたバージョンが、予め設定された所定のバージョンより古いか否かを判定し、
前記取得されたバージョンが、予め設定された所定のバージョンより古いと判定された場合、前記メモリに記憶される情報を更新し、
前記更新された情報に対応するバージョンを、前記メモリに記憶させることにより前記メモリに記憶されている情報のバージョンの書き換えを行う
ステップを含む情報処理方法。
【請求項８】
メモリに記憶されている情報を更新する情報処理装置に情報処理を実行させるプログラムであって、
前記メモリに記憶されている情報のバージョンの取得を制御し、
前記取得されたバージョンが、予め設定された所定のバージョンより古いか否かの判定を制御し、
前記取得されたバージョンが、予め設定された所定のバージョンより古いと判定された場合、前記メモリに記憶される情報の更新を制御し、
前記更新された情報に対応するバージョンを、前記メモリに記憶させることにより前記メモリに記憶されている情報のバージョンの書き換えを制御する
ステップを含むコンピュータが読み取り可能なプログラム。
【請求項９】
請求項８に記載のプログラムが記録されていることを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および方法、プログラム並びに記録媒体に関し、特に、ソフトウェアの変更に伴って、迅速にメモリのマッピングの変更を行うことができるようにする情報処理装置および方法、プログラム並びに記録媒体に関する。
【背景技術】
【０００２】
近年、テレビジョン放送においては、アナログ放送からデジタル放送への移行が始まりつつあり、テレビジョン受像機も、多機能化、高性能化が進み、機器の構成も複雑化している。
【０００３】
テレビジョン受像機の構成の複雑化に伴い、テレビジョン受像機を構成する各種のデバイス（電子機器）も高性能化、多様化している。テレビジョン受像機を構成する各種のデバイスは、コンピュータと同様に、入力されたデータを処理して所定のデータを出力する電子機器が多く、また、多目的の用途に対応するように設計され、外部から供給された信号やデータなどに基づいて自身が行う処理の内容を変化させるものも多く存在する。高性能のテレビジョン受像機を、適切に稼動させるためには、これらのデバイスを適切に稼動させる必要があり、これらのデバイスの処理を調整するための調整データを適宜供給する必要があり、調整データは通常、テレビジョン受像機の内部に設けられた不揮発性メモリなどに記憶されることが多い。
【０００４】
実際に、テレビジョン受像機が稼動するときは、テレビジョン受像機全体を制御するマイコンなどにより、所定のソフトウェアが実行され、テレビジョン受像機の内部に設けられた不揮発性メモリに記憶された調整データが、適宜テレビジョン受像機を構成する各種のデバイスに供給されていく。また、これらの調整データは、例えば、メーカが新たにテレビジョン受像機を製造するとき、工場において稼動状態を確認しながら個々に設定されて不揮発性メモリに記憶されていく。
【０００５】
テレビジョン受像機全体を制御するマイコンなどにより実行されるソフトウェアは、上述した調整データの供給の他にも、様々な処理を実行する。例えば、上述したマイコンなどにより実行されるソフトウェアは、テレビジョン受像機のユーザが選択または設定した受信チャネルや画質などの情報を記憶する処理を行い、記憶すべき情報をやはり不揮発性メモリに格納する。
【０００６】
また、装置に組み込まれたデバイスのソフトウェアを更新するためのソフトウェアを実行ファイルとして入手し、実行ファイルを実行可能形式に展開する上で最適化可能な定義ファイルを併せて入手することにより実行可能形式に展開されたプログラムが常に一定以上の性能を保証することを可能にする方法も提案されている（例えば、特許文献１参照）。
【０００７】
【特許文献１】特開２００５−７１２２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
例えば、メーカが、新たにテレビジョン受像機などの装置を開発する場合、その開発期間中にテレビジョン受像機全体を制御するマイコンなどにより実行されるソフトウェアは、工場などで行われるテレビジョン受像機の設計変更などに伴って変更される場合が多い。このような場合、上述したマイコンなどにより実行されるソフトウェアによる不揮発性メモリの利用状況が変更されることにより、不揮発性メモリの内部のデータのマッピングを変更する必要が生じる場合が多い。
【０００９】
しかしながら、調整データを格納する不揮発性メモリのマッピングの変更が頻繁に発生すると、装置の完成までに要する時間が長くなってしまう。例えば、不揮発性メモリのマッピングの変更が発生する都度、不揮発性メモリに記憶された調整データを初期化し、工場で再度設定しなおすという行程を繰り返さざるを得ない。まして装置の完成直前に不揮発性メモリのマッピングの変更が発生した場合、既に大量の調整データが不揮発性メモリに記憶されており、これに伴う作業は装置の製造に大きな影響を与えかねない。
【００１０】
本発明はこのような状況に鑑みてなされたものであり、ソフトウェアの変更に伴って、迅速にメモリのマッピングの変更を行うことができるようにするものである。
【課題を解決するための手段】
【００１１】
本発明の一側面は、メモリに記憶されている情報を更新する情報処理装置であって、前記メモリに記憶されている情報のバージョンを取得するメモリバージョン取得手段と、前記メモリバージョン取得手段により取得されたバージョンが、予め設定された所定のバージョンより古いか否かを判定するバージョン判定手段と、前記メモリバージョン取得手段により取得されたバージョンが、予め設定された所定のバージョンより古いと判定された場合、前記メモリに記憶される情報を更新する更新手段と、前記更新手段により更新された情報に対応するバージョンを、前記メモリに記憶させることにより前記メモリに記憶されている情報のバージョンの書き換えを行う書き換え手段とを備える情報処理装置である。
【００１２】
前記更新手段は、予め設定された更新制御情報に基づいて前記メモリに記憶される情報を更新するようにすることができる。
【００１３】
前記更新制御情報には、前記メモリに記憶される情報であって、前記更新に伴って移動されるべき情報が記憶されているアドレスに関する情報と、前記更新に伴って移動されるべき情報の移動先のアドレスに関する情報とが含まれるようにすることができる。
【００１４】
前記更新制御情報には、前記更新に伴って前記メモリに新たに記憶されるべき情報がさらに含まれるようにすることができる。
【００１５】
前記更新制御情報には、前記更新手段が前記更新制御情報に基づいて、前記メモリに記憶されている情報を移動するのか、または前記メモリに新たに情報を記憶させるのかを表す情報がさらに含まれるようにすることができる。
【００１６】
前記メモリに記憶される情報を保持する保持手段をさらに備え、前記更新手段は、前記保持手段に保持された情報を更新し、更新された情報を前記メモリに書き戻すことにより前記メモリに記憶される情報を更新するようにすることができる。
【００１７】
本発明の一側面は、メモリに記憶されている情報を更新する情報処理装置の情報処理方法であって、前記メモリに記憶されている情報のバージョンを取得し、前記取得されたバージョンが、予め設定された所定のバージョンより古いか否かを判定し、前記取得されたバージョンが、予め設定された所定のバージョンより古いと判定された場合、前記メモリに記憶される情報を更新し、前記更新された情報に対応するバージョンを、前記メモリに記憶させることにより前記メモリに記憶されている情報のバージョンの書き換えを行うステップを含む情報処理方法である。
【００１８】
本発明の一側面は、メモリに記憶されている情報を更新する情報処理装置に情報処理を実行させるプログラムであって、前記メモリに記憶されている情報のバージョンの取得を制御し、前記取得されたバージョンが、予め設定された所定のバージョンより古いか否かの判定を制御し、前記取得されたバージョンが、予め設定された所定のバージョンより古いと判定された場合、前記メモリに記憶される情報の更新を制御し、前記更新された情報に対応するバージョンを、前記メモリに記憶させることにより前記メモリに記憶されている情報のバージョンの書き換えを制御するステップを含むコンピュータが読み取り可能なプログラムである。
【発明の効果】
【００１９】
本発明の一側面によれば、ソフトウェアの変更に伴って、迅速にメモリのマッピングの変更を行うことができる。
【発明を実施するための最良の形態】
【００２０】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２１】
本発明の一側面の情報処理装置は、メモリ（例えば、図１の不揮発性メモリ３２）に記憶されている情報を更新する情報処理装置（例えば、図１のメインマイコン３５）であって、前記メモリに記憶されている情報のバージョンを取得するメモリバージョン取得手段（例えば、図５のステップＳ１０１の処理を実行する図３のバージョン確認部１５１）と、前記メモリバージョン取得手段により取得されたバージョンが、予め設定された所定のバージョンより古いか否かを判定するバージョン判定手段（例えば、図５のステップＳ１０２の処理を実行する図３のバージョン確認部１５１）と、前記メモリバージョン取得手段により取得されたバージョンが、予め設定された所定のバージョンより古いと判定された場合、前記メモリに記憶される情報を更新する更新手段（例えば、図３の更新処理部１５２）と、前記更新手段により更新された情報に対応するバージョンを、前記メモリに記憶させることにより前記メモリに記憶されている情報のバージョンの書き換えを行う書き換え手段（例えば、図３のバージョン書き換え部１５３）とを備える。
【００２２】
この情報処理装置は、前記更新手段が、予め設定された更新制御情報（例えば、図４の構造体２００）に基づいて前記メモリに記憶される情報を更新するようにすることができる。
【００２３】
この情報処理装置は、前記更新制御情報には、前記メモリに記憶される情報であって、前記更新に伴って移動されるべき情報が記憶されているアドレスに関する情報（例えば、図４の元アドレス２０１乃至元ビット位置２０３）と、前記更新に伴って移動されるべき情報の移動先のアドレスに関する情報（例えば、図４の新アドレス２０４乃至元ビット位置２０６）とが含まれるようにすることができる。
【００２４】
この情報処理装置は、前記更新制御情報には、前記更新に伴って前記メモリに新たに記憶されるべき情報（例えば、図４の初期値２０７）がさらに含まれるようにすることができる。
【００２５】
この情報処理装置は、前記更新制御情報には、前記更新手段が前記更新制御情報に基づいて、前記メモリに記憶されている情報を移動するのか、または前記メモリに新たに情報を記憶させるのかを表す情報（例えば、図４のコマンド２０８）がさらに含まれるようにすることができる。
【００２６】
この情報処理装置は、前記メモリに記憶される情報を保持する保持手段（例えば、図１のＲＡＭ３７）をさらに備え、前記更新手段は、前記保持手段に保持された情報を更新し、更新された情報を前記メモリに書き戻すことにより前記メモリに記憶される情報を更新するようにすることができる。
【００２７】
本発明の一側面の情報処理方法は、メモリ（例えば、図１の不揮発性メモリ３２）に記憶されている情報を更新する情報処理装置（例えば、図１のメインマイコン３５）の情報処理方法であって、前記メモリに記憶されている情報のバージョンを取得し（例えば、図５のステップＳ１０１の処理）、前記取得されたバージョンが、予め設定された所定のバージョンより古いか否かを判定し（例えば、図５のステップＳ１０２の処理）、前記取得されたバージョンが、予め設定された所定のバージョンより古いと判定された場合、前記メモリに記憶される情報を更新し（例えば、図５のステップＳ１０３の処理）、前記更新された情報に対応するバージョンを、前記メモリに記憶させることにより前記メモリに記憶されている情報のバージョンの書き換えを行う（例えば、図５のステップＳ１０４の処理）ステップを含む。
【００２８】
以下、図面を参照して、本発明の実施の形態について説明する。図１は、本発明を適用したテレビジョン受像機１の一実施形態に係る構成例を示す図である。
【００２９】
図１において、アンテナ２１を介して取得される放送信号を、メインチューナ２２−１またはサブチューナ２２−２が受信し、受信した放送信号のうち所定のチャネルの信号に基づいてコンポジットビデオ信号とオーディオ信号とを復調し、それらの信号をAVスイッチ２４に供給する。
【００３０】
AVスイッチ２４は、メインチューナ２２−１、サブチューナ２２−２、またはビデオ入力端子２３から供給される信号のうち、選択されたコンポジットビデオ信号を映像信号処理部２５−１、または映像信号処理部２５−２に出力し、選択されたオーディオ信号をオーディオプロセッサ３６に出力する。なお、AVスイッチ２４は、後述するメインマイコン３５によりIIC（Inter Integrated Circuit）バス３６を介して制御され、映像信号処理部２５−１、映像信号処理部２５−２、オーディオプロセッサ３６に出力すべき信号を選択する。
【００３１】
映像信号処理部２５−１または映像信号処理部２５−２はAVスイッチ２４から供給されたコンポジットビデオ信号を輝度信号、色信号に分離するとともに色信号を色差信号に変換し、多画面生成処理部２６へ出力する。
【００３２】
多画面生成処理部２６は、映像信号処理部２５−１または映像信号処理部２５−２から出力される信号（映像信号）を重畳表示し、ビデオプロセッサ２７に出力する。
【００３３】
ビデオプロセッサ２７は、CRT(Cathode Ray Tube)、ＬＣＤ(Liquid Crystal display)などにより構成されるディスプレイ２８を駆動するためのRGB信号を生成する。また、ビデオプロセッサ２７は、メインマイコン３５によりIICバス３６を介して制御され、ピクチャー、明るさ等の制御、画歪みの補正などの処理を行う。
【００３４】
オーディオプロセッサ２９は、メインマイコン３５によりIICバス３６を介して制御され、入力された音声信号の音量、バランス、音質などを調整してアンプ３０に出力する。このあと音声信号は、アンプ３０で増幅され、スピーカ３１から音声が出力される。
【００３５】
操作キー３３、リモコン（リモートコマンダ）受信部３４は、ユーザの操作に基づいて選局などの制御情報をメインマイコン３５に供給する。
【００３６】
メインマイコン３５は、テレビジョン受像機１全体を制御する小型のコンピュータであり、予め設定されたプログラムなどの所定のソフトウェアを実行し、各種の処理を行う。また、メインマイコン３５は、各種の処理を実行するとき、例えば、処理中のデータを一時的に保持するためのRAM（Random Access Memory）３７を内部に有している。
【００３７】
不揮発性メモリ３２は、例えば、EEPROM（Electrically Erasable Programmable Read-Only Memory）などで構成され、メインマイコン３５の処理に用いられる各種のデータを記憶する。
【００３８】
例えば、メインマイコン３５は、テレビジョン受像機１のユーザが選択または設定した受信チャネルや画質などの情報を記憶する処理を行い、記憶すべき情報を不揮発性メモリ３２に格納する。また、メインマイコン３５は、不揮発性メモリ３２に記憶された調整データを、適宜テレビジョン受像機１を構成する各種のデバイスに供給する。
【００３９】
ここで調整データは、テレビジョン受像機１を構成する各種のデバイスのそれぞれに対して供給され、それぞれのデバイスの処理を適切に調整するために必要なデータとされる。テレビジョン受像機１を構成する各種のデバイスは、コンピュータと同様に、入力されたデータを処理して所定のデータを出力する電子機器が多く、また、多目的の用途に対応するように設計され、外部から供給された信号やデータなどに基づいて自身が行う処理の内容を変化させるものも多く存在する。テレビジョン受像機１を、適切に稼動させるためには、これらのデバイスを適切に稼動させる必要があり、不揮発性メモリ３２に記憶された調整データが用いられる。
【００４０】
また、これらの調整データは、例えば、メーカが新たにテレビジョン受像機を製造するとき、工場において稼動状態を確認しながら個々に設定されて不揮発性メモリ３２に記憶されていく。
【００４１】
図２は、不揮発性メモリ３２に記憶されるデータの構成例を示す図である。同図において、図中縦軸（図中左側縦方向）に記述された数値が不揮発性メモリ３２のアドレスとされ、図中横軸（図中上側横方向）に記述された数値は、そのアドレスのポジション（ビット位置）とされる。この例では、８ビット単位にアドレスが割り当てられており、各アドレスに８つのポジションが存在することになる。なお、図２のアドレスは１６進数で示され、「0x」は、表記される数値が１６進数であることを表す記号であり、「0x」に続いて記述される数値は、１６進数の数値であるものとする。
【００４２】
例えば、テレビジョン受像機１を製造するメーカがテレビジョン受像機１を開発する場合、メインマイコン３５により実行されるソフトウェアが、開発期間中に工場などで行われるテレビジョン受像機１の設計変更などに伴って変更される場合が多い。このような場合、メインマイコン３５により実行されるソフトウェアによる不揮発性メモリ３２の利用状況が変更されることにより、不揮発性メモリ３２の内部のデータのマッピング（データと記憶位置との対応付け）を変更する必要が生じる場合が多い。
【００４３】
このため、不揮発性メモリ３２には、自身が記憶するデータの内容が、例えば製造、開発工程におけるどの時点に対応するものかを表すバージョンの情報が記憶されている。バージョンの情報は、例えば、図２に示されるアドレス0x000に対応する領域１０１に記憶される。
【００４４】
しかしながら、上述した調整データを格納する不揮発性メモリ３２のマッピングの変更が頻繁に発生すると、テレビジョン受像機１の完成までに要する時間が長くなってしまう。例えば、不揮発性メモリ３２のマッピングの変更が発生する都度、不揮発性メモリに記憶された調整データを初期化し、工場で再度設定しなおすという行程を繰り返せば、装置の完成直前に揮発性メモリ３２のマッピングの変更が発生した場合、既に大量の調整データが不揮発性メモリに記憶されており、ソフトウェアの変更とともに行われる不揮発性メモリ３２のマッピングの変更に伴う作業は装置の製造に大きな影響を与えかねない。
【００４５】
そこで、本発明においては、メインマイコン３５により実行されるソフトウェアによって、自動的に不揮発性メモリ３２の記憶内容を変更（更新）させる。図３は、メインマイコン３５により実行されるソフトウェアの機能的構成例を示すブロック図である。
【００４６】
図３において、バージョン確認部１５１は、不揮発性メモリ３２のバージョンと、自身（ソフトウェア）のバージョンを比較し、不揮発性メモリ３２の記憶内容を更新すべきか否かを判定し、その判定結果とを更新処理部１５２に出力する。
【００４７】
更新処理部１５２は、バージョン確認部１５１から供給される情報に基づいて、不揮発性メモリ３２の記憶内容の更新を行う。
【００４８】
バージョン書き換え部１５３は、更新処理部１５２により不揮発性メモリ３２の記憶内容の更新が終了したとき、不揮発性メモリ３２のバージョンを書き換える（更新する）。
【００４９】
このようにすることで、メインマイコン３５で実行されるソフトウェアのバージョンが更新される都度、すなわち、メインマイコン３５で実行されるソフトウェアの変更が行われる都度、不揮発性メモリ３２の更新内容も自動的に変更することができる。
【００５０】
図４は、上述した更新処理部１５２による処理で不揮発性メモリ３２の記憶内容を更新するために、メインマイコン３５で実行されるソフトウェアに組み込まれる構造体２００の例を示す図である。同図において構造体２００は、例えば、図中横方向の幅が８ビットのデータとして構成される。
【００５１】
この例では、構造体２００には、８ビットのデータである元アドレス２０１が定義されている。元アドレス２０１は、不揮発性メモリ３２に記憶されたデータの移動元のアドレスを表すデータとされる。また、構造体２００には、それぞれ４ビットのデータである元ビット幅２０２と元ビット位置２０３が定義されている。元ビット幅２０２と元ビット位置２０３は、それぞれ移動元アドレス２０１で指定された不揮発性メモリ３２に記憶されたデータのビット幅とビット位置を表すデータとされる。
【００５２】
さらに、構造体２００には、８ビットのデータである新アドレス２０４が定義されている。新アドレス２０４は、不揮発性メモリ３２の中でデータの移動先（または新たに書き込む先）のアドレスを表すデータとされる。また、構造体２００には、それぞれ４ビットのデータである新ビット幅２０５と新ビット位置２０６が定義されている。新ビット幅２０５と新ビット位置２０６は、それぞれ新アドレス２０４で指定された不揮発性メモリ３２の記憶領域におけるビット位置とビット幅を表すデータとされる。
【００５３】
さらに、構造体２００には、８ビットのデータである初期値２０７が定義されている。初期値２０７は、例えば、メインマイコン３５で実行されるソフトウェアの変更にともなって不揮発性メモリ３２に新たに書き込まれる調整データの値を表すデータとされる。
【００５４】
また、構造体２００には、８ビットのデータであるコマンド２０８が定義されている。コマンド２０８は、上述した元アドレス２０１乃至初期値２０７を含む構造体２００に基づいて、不揮発性メモリ３２に記憶されたデータを移動させるのか、または不揮発性メモリ３２に新たにデータを書き込むのかを表すデータとされ、不揮発性メモリ３２に記憶されたデータを移動させる場合、コマンド「移動」に対応するデータが記述され、不揮発性メモリ３２に新たにデータを書き込む場合、コマンド「新規」に対応するデータが記述される。
【００５５】
例えば、図２のアドレス「0x200」に対応する領域１０２に記憶されたデータを、アドレス「0x800」に対応する領域１０３に移動させる場合、図４の構造体２００においては、元アドレス２０１に、「0x200」を表すデータが記述され、元ビット幅２０２には、「8ビット」を表すデータが記述され、元ビット位置２０３には、「第１ビット」を表すデータが記述される。そして、新アドレス２０４には、「0x800」に対応するデータが記述され、新ビット幅２０５には、「８ビット」、新ビット位置２０６には、「第１ビット」を表すデータが記述され、さらに、コマンド２０８に「移動」を表すデータが記述されることになる。なお、データの移動の場合、構造体２００において初期値２０７に記述されたデータは無視される。
【００５６】
また、図２のアドレス「0x201」の一部に対応する領域１０３に記憶されたデータを、アドレス「0x801」の一部に対応する領域１０５に移動させる場合、図４の構造体２００においては、元アドレス２０１に、「0x201」を表すデータが記述され、元ビット幅２０２には、「4ビット」を表すデータが記述され、元ビット位置２０３には、「第5ビット」を表すデータが記述される。そして、新アドレス２０４には、「0x801」に対応するデータが記述され、新ビット幅２０５には、「4ビット」、新ビット位置２０６には、「第１ビット」を表すデータが記述され、さらに、コマンド２０８に「移動」を表すデータが記述されることになる。
【００５７】
さらに、図２のアドレス「0x900」の一部に対応する領域１０６に、新たにデータを書き込ませる場合、図４の構造体２００においては、新アドレス２０４には、「0x900」に対応するデータが記述され、新ビット幅２０５には、「4ビット」、新ビット位置２０６には、「第５ビット」を表すデータが記述される。そして初期値２０７に、書き込むべきデータが記述され、コマンド２０８には「新規」を表すデータが記述されることになる。なお、新規にデータを書き込む場合、構造体２００において元アドレス２００乃至元ビット位置２０３に記述されたデータは無視される。
【００５８】
本発明においては、メインマイコン３５で実行されるソフトウェアの変更に伴って発生する不揮発性メモリ３２のマッピング変更を考慮して上述したような構造体２００を予め作成し、メインマイコン３５で実行されるソフトウェアに組み込む。不揮発性メモリ３２に記憶されるデータの移動または追加（新規書き込み）の件数が多くなると、構造体２００の数も多くなる。このため、構造体２００は、例えば、パーソナルコンピュータなどで実行されるツールにより別途生成されるようにしてもよい。
【００５９】
次に、図５のフローチャートを参照して、メインマイコン３５で実行されるソフトウェアによる不揮発性メモリ３２の更新処理について説明する。この処理は、例えば、メインマイコン３５で実行されるソフトウェアに変更が生じた場合、テレビジョン受像機１を製造する工場などにおいて実行される。
【００６０】
ステップS１０１において、バージョン確認部１５１は、不揮発性メモリ３２（メモリ）のバージョンの情報をチェックする。このとき、例えば、図２の領域１０１に記憶されたバージョンの情報が取得される。
【００６１】
ステップS１０２において、バージョン確認部１５１は、ステップS１０１の処理でチェック（取得）された不揮発性メモリ３２のバージョンは、古いバージョンか否かを判定する。このとき、例えば、メインマイコン３５で実行されるソフトウェアにおいて所定の位置に記述されたバージョンの情報と、ステップS１０１の処理で取得された不揮発性メモリ３２のバージョンが比較され、不揮発性メモリ３２のバージョンの値が、メインマイコン３５で実行されるソフトウェアのバージョンの値よりも小さい場合、不揮発性メモリ３２のバージョンは、古いバージョンであると判定される。
【００６２】
ステップS１０２において、ステップS１０１の処理でチェック（取得）された不揮発性メモリ３２のバージョンは、古いバージョンであると判定された場合、処理は、ステップS１０３に進む。
【００６３】
ステップS１０３において、更新処理部１５２は、図６を参照して後述するメモリ記憶内容更新処理を実行する。これにより、不揮発性メモリ３２の記憶内容が更新される。
【００６４】
ここで、図６のフローチャートを参照して、図５のステップS１０３のメモリ記憶内容更新処理の詳細について説明する。
【００６５】
ステップS１２１において、更新処理部１５２は、不揮発性メモリ３２（メモリ）の記憶内容をRAM３７にコピーする。
【００６６】
ステップS１２２において、更新処理部１５２は、変更すべきデータがあるか否かを判定する。このとき、現在実行中のソフトウェアに組み込まれた構造体２００の有無がチェックされ、構造体２００が存在する場合、変更すべきデータがあると判定される。
【００６７】
ステップS１２２において、変更すべきデータがあると判定された場合、処理は、ステップS１２３に進み、更新処理部１５２は、構造体２００のコマンド２０８のデータをチェックする。ステップS１２３において、コマンド２０８のデータは、コマンド「移動」に対応するデータであると判定された場合、処理は、ステップS１２４に進む。
【００６８】
ステップS１２４において、更新処理部１５２は、不揮発性メモリ３２に記憶されたデータのうちの元アドレスのデータを読み込む。このとき、構造体２００の元アドレス２０１とともに、元ビット幅２０２と元ビット位置２０３に記述されたデータが参照され、移動元のデータが読み込まれる。なお、ここでは、不揮発性メモリ３２から直接データが読み込まれるのではなく、上述したステップS１２１の処理でRAM３７にコピーされたデータの中から移動元に対応する位置のデータが読み込まれる。
【００６９】
ステップS１２５において、更新処理部１５２は、新アドレスに対応する位置に、ステップS１２４の処理で読み込まれたデータを書き込む。このとき、構造体２００の新アドレス２０４とともに、新ビット幅２０５と新ビット位置２０６に記述されたデータが参照され、移動先にデータが書き込まれる。なお、ここでは、不揮発性メモリ３２に直接データが書き込まれるのではなく、上述したステップS１２１の処理でRAM３７にコピーされたデータの中で移動先に対応する位置にデータが書き込まれる。
【００７０】
また、ステップS１２３において、コマンド２０８のデータは、コマンド「新規」に対応するデータであると判定された場合、ステップS１２４の処理はスキップされ、ステップS１２５に進む。この場合、新アドレスに対応する位置には、ステップS１２４の処理で読み込まれたデータではなく、構造体２００の初期値２０７に記述されたデータが書き込まれる。
【００７１】
ステップS１２６において、更新処理部１５２は、まだ変更すべきデータがあるか否かを判定する。上述したステップS１２３乃至S１２５の処理で用いられた構造体２００とは別の構造体２００が存在する場合、ステップS１２６ではまだ変更すべきデータがあると判定され、処理はステップS１２３に戻り、それ以後の処理が繰り返し実行される。
【００７２】
ステップS１２６において、変更すべきデータがないと判定された場合、処理は、ステップS１２７に進む。
【００７３】
ステップS１２７において、更新処理部１５２は、ステップS１２１の処理でRAM３７にコピーされ、ステップS１２２乃至Ｓ１２６の処理を経て変更された、現在のRAM３７上のデータを、不揮発性メモリ３２に書き込む（書き戻す）。
【００７４】
このようにして、不揮発性メモリ３２の記憶内容が変更される。
【００７５】
図５に戻って、ステップＳ１０３の処理の後、処理は、ステップＳ１０４に進み、バージョン書き換え部１５３は、不揮発性メモリ３２のバージョンを更新する。このとき、例えば、図２の領域１０１に記憶されたバージョンの情報が更新（例えば、数値がインクリメント）される。
【００７６】
このようにして、メインマイコン３７で実行されるソフトウェアの変更に伴って、自動的に不揮発性メモリ３２のマッピングの変更が行われる。その結果、ソフトウェアの変更に伴うメモリのマッピングの変更を迅速に行うことが可能となる。
【００７７】
なお、メインマイコン３７で実行されるソフトウェアのバージョンと、不揮発性メモリ３２のバージョンが乖離している場合もあり得る。例えば、メインマイコン３７で実行されるソフトウェアのバージョンがバージョン「３」であり、不揮発性メモリ３２のバージョンがバージョン「１」であった場合、この不揮発性メモリ３２は、本来バージョン「２」に対応するマッピングに変更された後、最新のバージョンであるバージョン「３」に対応するマッピングに変更されなければならない。
【００７８】
このような場合、メインマイコン３７で実行されるソフトウェアに、各バージョンに対応する構造体２００を組み込んでおくようにすればよい。すなわち、メインマイコン３７で実行されるソフトウェアがバージョン「１」、バージョン「２」、バージョン「３」の順で更新された場合、バージョン「３」のソフトウェアには、前世代のバージョン「２」に対応する構造体２００に加えて、バージョン「３」に対応する構造体２００が組み込まれるようにすればよい。そして、上述した更新処理が実行される場合、古いバージョンの構造体２００から順に参照されてメモリ記憶内容更新処理が実行されるようにすればよい。
【００７９】
このようにすることで、メインマイコン３７で実行されるソフトウェアのバージョンと、不揮発性メモリ３２のバージョンが乖離している場合であっても、迅速かつ確実に不揮発性メモリ３２のマッピングを変更することができる。
【００８０】
以上においては、不揮発性メモリ３２のマッピングの変更、記憶内容の変更を行う例について説明したが、本発明は、不揮発性メモリ以外のメモリ（記憶媒体）に適用することも可能である。
【００８１】
また、以上においては、本発明をテレビジョン受像機１に適用した例について説明したが、本発明を汎用のパーソナルコンピュータ５００に適用することも可能である。図７は、パーソナルコンピュータ５００の構成例を示すブロック図である。
【００８２】
図７において、CPU（Central Processing Unit）５０１は、ROM（Read Only Memory）５０２に記憶されているプログラム、または記憶部５０８からRAM（Random Access Memory）５０３にロードされたプログラムに従って各種の処理を実行する。RAM５０３にはまた、CPU５０１が各種の処理を実行する上において必要なデータなども適宜記憶される。
【００８３】
CPU５０１、ROM５０２、およびRAM５０３は、バス５０４を介して相互に接続されている。このバス５０４にはまた、入出力インタフェース５０５も接続されている。
【００８４】
入出力インタフェース５０５には、キーボード、マウスなどよりなる入力部５０６、CRT(Cathode Ray Tube)、ＬＣＤ(Liquid Crystal display)などよりなるディスプレイ、並びにスピーカなどよりなる出力部５０７、ハードディスクなどより構成される記憶部５０８、モデム、LANカードなどのネットワークインタフェースカードなどより構成される通信部５０９が接続されている。通信部５０９は、インターネットを含むネットワークを介しての通信処理を行う。
【００８５】
入出力インタフェース５０５にはまた、必要に応じてドライブ５１０が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア５１１が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部５０８にインストールされる。
【００８６】
なお、上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。上述した一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、インターネットなどのネットワークや、リムーバブルメディア５１１などからなる記録媒体からインストールされる。
【００８７】
なお、この記録媒体は、図７に示される、装置本体とは別に、ユーザにプログラムを配信するために配布される、プログラムが記録されている磁気ディスク（フロッピディスク（登録商標）を含む）、光ディスク（CD-ROM(Compact Disk-Read Only Memory),DVD(Digital Versatile Disk)を含む）、光磁気ディスク（MD（Mini-Disk）（登録商標）を含む）、もしくは半導体メモリなどよりなるリムーバブルメディア５１１により構成されるものだけでなく、装置本体に予め組み込まれた状態でユーザに配信される、プログラムが記録されているROM５０２や、記憶部５０８に含まれるハードディスクなどで構成されるものも含む。
【００８８】
本明細書において上述した一連の処理を実行するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【図面の簡単な説明】
【００８９】
【図１】本発明を適用したテレビジョン受像機の一実施形態に係る構成例を示す図である。
【図２】図１の不揮発性メモリに記憶されるデータの構成例を示す図である。
【図３】図１のメインマイコンにより実行されるソフトウェアの機能的構成例を示すブロック図である。
【図４】メインマイコンにより実行されるソフトウェアに組み込まれる構造体の構成例を示す図である。
【図５】更新処理を説明するフローチャートである。
【図６】メモリ記憶内容更新処理を説明するフローチャートである。
【図７】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【００９０】
１  テレビジョン受像機，  ３２  不揮発性メモリ，  ３５  メインマイコン，  ３７  ＲＡＭ，  １５１  バージョン確認部，  １５２  更新処理部，  １５３  バージョン書き換え部
【図１】
2007087103.tif 000003
【図２】
2007087103.tif 000004
【図３】
2007087103.tif 000005
【図４】
2007087103.tif 000006
【図５】
2007087103.tif 000007
【図６】
2007087103.tif 000008
【図７】
2007087103.tif 000009