(57)【特許請求の範囲】
【請求項１】
テレビ受信機の動作を制御するプログラムを記憶する不揮発性メモリを備え、該プログラムのバージョンアップによって新バージョンのプログラムを前記不揮発性メモリに記憶するテレビ受信機において、
前記不揮発性メモリの記憶領域は、バージョンアップ前のプログラムを記憶するプログラム領域と、番組情報に関するデータを記憶するデータ領域とを有し、前記バージョンアップを行う際に、前記新バージョンのプログラムを前記データ領域に記憶させ、前記新バージョンのプログラムによる起動が成功した後に前記バージョンアップ前のプログラムを初期化することを特徴とするテレビ受信機。
【請求項２】
請求項１に記載のテレビ受信機において、前記データ領域に前記新バージョンのプログラムを記憶させる前に、前記データ領域に記憶されている番組情報に関するデータを、前記テレビ受信機が備えるワークメモリに移動することを特徴とするテレビ受信機。
【請求項３】
請求項２に記載のテレビ受信機において、前記バージョンアップ前のプログラムの初期化が終了した後、前記ワークメモリに移動させた前記番組情報に関するデータを、前記バージョンアップ前のプログラムを初期化した後のプログラム領域に移動して新たなデータ領域とすることを特徴とするテレビ受信機。
【請求項４】
請求項１または２に記載のテレビ受信機において、前記データ領域に記憶させた新バージョンのプログラムによる起動が失敗した場合、前記バージョンアップ前のプログラムで起動させることを特徴とするテレビ受信機。
【請求項５】
請求項４に記載のテレビ受信機において、前記新バージョンのプログラムによる起動が失敗した場合、前記ワークメモリに移動させた前記番組情報に関するデータを、前記新バージョンのプログラムを記憶させたデータ領域に移動することを特徴とするテレビ受信機。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テレビ受信機に関し、より詳細には、デジタルテレビ受信機のソフトウェアのバージョンアップを行うための技術に関する。
【背景技術】
【０００２】
デジタル放送を受信するテレビ受信機には、テレビ受信機の動作を制御するシステムソフトウェアのプログラムが内蔵されているが、テレビ受信機の機能の更新や新機能の追加、あるいは不具合の修正等を行うためにプログラムのバージョンアップを行う必要がある。例えばテレビ受信機では、ＥＰＧ（Electronic Program Guide）などの様々な機能が備えられ、さらに地上波放送、ＢＳ放送、ＣＳ放送など多放送方式への対応やインターネット対応など、求められる機能も多くなってきていて、これらに対応するためにプログラムのバージョンアップが随時行われている。
【０００３】
従来、テレビ受信機に内蔵されるプログラムのバージョンアップの方法としては、例えばバージョンアップ用のプログラムを放送波に含ませておき、これを受信（ダウンロード）したテレビ受信機においてそのプログラムを自動的に更新させるようにしている。あるいは放送波にバージョンアップ用のプログラムが含まれていることをテレビ受信機が判別したときに、表示画面にその旨を表示してユーザにバージョンアップの許可を求め、ユーザによる許可操作に応じてバージョンアップを実行するようにしている。
あるいは、他のバージョンアップ方法としては、バージョンアップ用のプログラムを記憶した記憶媒体をサービスマンが携行し、客先に設置されているテレビ受信機に対してその記憶媒体を使用してバージョンアップを行うことが行われている。
また、インターネット上のサーバでバージョンアップ用のプログラムを公開し、ユーザがそのサーバからバージョンアップ用のプログラムを取得してテレビ受信機のバージョンアップを行うことも考えられる。
【０００４】
上記のようなプログラムのバージョンアップに適用されるダウンロード技術に関し、例えば特許文献１では、余分なダウンロード処理領域を削減することを意図したリモートプログラムダウンロード装置が開示されている。このダウンロード装置は、ダウンロード中には動作する必要のない非ダウンロード処理プログラム領域を活用して、一時ダウンロード処理プログラムを置くことで、余分なダウンロード処理領域を必要としないようにしている。ここでは、状態管理手段が特定するアクティブなダウンロード処理プログラムをタウンロード起動手段により起動して、状態管理手段が特定するダウンロードすべきプログラムをダウンロードする構成となっている。
【特許文献１】特開平１０−２８９１０８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
図４は、テレビ受信機における従来のプログラムのバージョンアップの動作を説明するための図である。ここでは、テレビ受信機のプログラムを記憶するメモリとして用いられる書き換え可能な不揮発性メモリのメモリ領域を概念的に図示している。
不揮発性メモリのメモリ領域１００には、起動監視プログラムを記憶する領域１０１と、テレビ受信機の動作を制御するプログラムを記憶するプログラム領域（プログラム（Ａ）領域１１１、プログラム（Ｂ）領域１１２）と、ＥＰＧ等の番組情報に関するデータを記憶するデータ領域１０３とが設定される。
【０００６】
従来のプログラム領域には、バージョンアップ時に新たに記憶する新バージョンのプログラムを記憶するプログラム（Ａ）領域１１１と、バージョンアップが失敗したときのバックアップとして、旧バージョンのプログラムを記憶するプログラム（Ｂ）領域１１２とが設定されている。
つまり従来では、旧バージョンのプログラムと新バージョンのプログラムとを保持できるだけのサイズのプログラム領域を予め用意して、バージョンアップを行っている。
【０００７】
上記の起動監視プログラムは、テレビ受信機の起動を制御するプログラムであり、プログラム領域に記憶したプログラムのうちいずれのプログラムで起動するかどうかを制御し、また起動したプログラムが正常に動作しているかどうかの監視を行うものである。
さらにデータ領域１０３には、放送波に含まれるＥＰＧなどの番組情報に関するデータが記憶される。
【０００８】
上記のように、従来ではプログラムを記憶するプログラム領域に、バージョンアップ前後の新旧のプログラムを記憶できるだけのメモリ領域を用意する必要があったため、メモリのサイズが大きくなり、コストアップの要因になるという問題があった。また単純に旧バージョンのプログラム領域を削減してしまうと、バージョンアップが正常に実行できなかったときに使用できるプログラムがなくなってしまい、テレビ受信機の起動ができなくなる。
【０００９】
このような課題に関し、上記特許文献１のダウンロード装置は、ダウンロード中には動作する必要のない非ダウンロード処理プログラムを利用して一時ダウンロード処理プログラムを置くようにしている。しかしながらこのダウンロード装置をテレビ受信機に適用した場合、このダウンロード装置は、ダウンロード中に非ダウンロード処理プログラムが存在しないタイミングが生じるため、非ダウンロード処理プログラムに相当するテレビ受信機を起動させるプログラムが存在しなくなり、ここではテレビ受信機の起動自体を行うことができなくなる、という問題が生じる。
【００１０】
本発明は、上述のごとき実情に鑑みてなされたもので、テレビ受信機に内蔵されるソフトウェアのメモリサイズを削減し、かつバージョンアップが失敗した場合でも確実に起動できるようにしたテレビ受信機を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本発明の第１の技術手段は、テレビ受信機の動作を制御するプログラムを記憶する不揮発性メモリを備え、プログラムのバージョンアップによって新バージョンのプログラムを不揮発性メモリに記憶するテレビ受信機において、不揮発性メモリの記憶領域は、バージョンアップ前のプログラムを記憶するプログラム領域と、番組情報に関するデータを記憶するデータ領域とを有し、バージョンアップを行う際に、新バージョンのプログラムをデータ領域に記憶させ、新バージョンのプログラムによる起動が成功した後にバージョンアップ前のプログラムを初期化することを特徴としたものである。
【００１２】
第２の技術手段は、第１の技術手段において、データ領域に新バージョンのプログラムを記憶させる前に、データ領域に記憶されている番組情報に関するデータを、テレビ受信機が備えるワークメモリに移動することを特徴としたものである。
【００１３】
第３の技術手段は、第２の技術手段において、請求項２に記載のテレビ受信機において、バージョンアップ前のプログラムの初期化が終了した後、ワークメモリに移動させた番組情報に関するデータを、バージョンアップ前のプログラムを初期化した後のプログラム領域に移動して新たなデータ領域とすることを特徴としたものである。
【００１４】
第４の技術手段は、第１または第２の技術手段において、データ領域に記憶させた新バージョンのプログラムによる起動が失敗した場合、バージョンアップ前のプログラムで起動させることを特徴としたものである。
【００１５】
第５の技術手段は、第４の技術手段において、新バージョンのプログラムによる起動が失敗した場合、ワークメモリに移動させた番組情報に関するデータを、新バージョンのプログラムを記憶させたデータ領域に移動することを特徴としたものである。
【発明の効果】
【００１６】
本発明によれば、テレビ受信機に内蔵されるソフトウェアのメモリサイズを削減し、かつバージョンアップが失敗した場合でも確実に起動できるようにすることができる。
【発明を実施するための最良の形態】
【００１７】
図１は、本発明によるテレビ受信機の一実施形態を説明するためのブロック図である。
テレビ受信機には、ＬＡＮ Ｉ／Ｆ１と、外部メモリＩ／Ｆ２と、放送データＩ／Ｆ３とが備えられる。これらのＩ／Ｆは、バージョンアップすべきプログラムがテレビ受信機に入力される手段を示している。つまり本テレビ受信機では、ＬＡＮ経由、外部メモリ経由、もしくは放送波による放送データ経由のいずれからでもバージョンアップを行うソフトウェアのプログラムをテレビ受信機に入力させることができ、その入力手段を問うものではない。
【００１８】
ＬＡＮ Ｉ／Ｆ１には、ローカル通信回線やインターネットに接続可能な通信回線が接続される。ＬＡＮ Ｉ／Ｆ１から入力されたバージョンアップ用のプログラムは、プロトコル変換部４にてプロトコル変換され、バージョンアップ用プログラム取得部７にて、バージョンアップ用のプログラムが取得される。プロトコル変換部４では、例えばＬＡＮの規格であるＴＣＰ／ＩＰとテレビ受信機で利用可能なプロトコルとの間で相互にデータフォーマットを変換する。
この場合、例えばオンデマンドなどによってＬＡＮを経由して取得したコンテンツに対してバージョンアップ用のプログラムが含まれている形態であってもよく、またバージョンアップ用のプログラム自体をＬＡＮ経由で取得する形態であってもよい。
【００１９】
一方、外部メモリＩ／Ｆ２から入力されたバージョンアップ用のプログラムは、ファイルシステム変換部５にてテレビ受信機で利用できる形態のファイルシステムに変換され、バージョンアップ用プログラム取得部７にてバージョンアップ用のプログラムが取得される。この場合にも、外部メモリから取得されるコンテンツに対してバージョンアップ用のプログラムが含まれている形態であってもよく、またバージョンアップ用のプログラム自体を外部メモリから取得する形態であってもよい。
【００２０】
また放送データＩ／Ｆ３からは放送データが入力される。放送データＩ／Ｆは、例えば放送波を受信するアンテナ及びチューナ部である。そしてバージョンアップデータ取得選局処理部６では、その放送データにバージョンアップ用のプログラムが含まれているかどうかを判定し、そのプログラムが含まれているチャネルを選局する処理を行う。そしてバージョンアップ用プログラム取得部７では、選局されたチャンネルの放送波から、バージョンアップ用のプログラムを取得する。
【００２１】
上記外部メモリを用いたバージョンアップの適用例を説明する。ここでは例えばテレビ受信機のメーカーや販売会社などがユーザに対してバージョンアップを知らせる通知を送付する。通知は電子メールなどで送られる。そして通知を受けたユーザは、ＰＣなどから所定のＨＰ（home page）にアクセスし、このＨＰからバージョンアップ用のプログラムをダウンロードして、ＵＳＢ（登録商標）メモリなどの外部メモリに書き込ませる。そしてそのＵＳＢメモリをテレビ受信機のＵＳＢ端子に差し込むことにより、テレビ受信機に対するバージョンアップを実行させることができる。
【００２２】
このようにバージョンアップ用プログラム取得部７で取得したバージョンアップ用のプログラムは、ＣＰＵ８の制御に従って、不揮発性メモリ９に記憶保持され、バージョンアップが開始される。不揮発性メモリ９としては、例えばＦｌａｓｈメモリやＥＥＰＲＯＭなどの書き換え可能なＲＯＭが使用される。またワークメモリ１０はＲＡＭである。
【００２３】
一方、ＣＰＵ８は、起動監視プログラム保持部１１が保持する起動監視プログラムを制御し、不揮発性メモリ９に記憶保持されているプログラムによってテレビ受信機を起動させる。起動監視プログラムは、テレビ受信機の起動を制御するプログラムであり、ＣＰＵ８の制御に従って、起動時にシステムソフトウェア保持部１２に保持されているシステムソフトウェアを読み出してシステムをイニシャライズし、起動する。ここで起動監視プログラムは、プログラム領域に記憶したプログラムのうちいずれのプログラムで起動するかどうかを制御し、また起動したプログラムが正常に動作しているかどうかを監視する。システムソフトウェアとは、テレビ受信機を動作させるために必要なプログラムをいい、バージョンアップの対象となるものである。
本実施形態のテレビ受信機では、起動監視プログラム、及びシステムソフトウェアは不揮発性メモリ９の記憶領域に記憶保持されているが、図１ではバージョンアッデータの流れと制御処理の流れを説明するために起動監視プログラム保持部１１、及びシステムソフトウェア保持部を不揮発性メモリ９とは分けて記載した。
【００２４】
ＯＳＤ（On Screen Display）描画部１３は、予め用意された設定メニュー画面、現在時刻、選局ＣＨなどの設定モードや動作モードに応じたキャラクタ文字等の各種情報を描画する機能を有している。そしてＯＳＤ描画部１３で描画されたＯＳＤデータは、映像データに重畳（合成）されて映像表示媒体１６に出力される。映像表示媒体１６は、例えば液晶ディスプレイ（ＬＣＤ）であり、入力された映像データに基づいて、液晶コントローラがゲートドライバ及びソースドライバに液晶駆動信号を出力することで画像表示を行う。
【００２５】
ここで映像データは、チューナなどの放送データＩ／Ｆ３で受信した放送波から分離された映像データであってもよく、またオンデマンドなどの手法によりＬＡＮ Ｉ／Ｆ１を介してサーバなどから入力されたコンテンツから分離されたものであってもよく、あるいは外部メモリＩ／Ｆ２から入力されたコンテンツから分離されたものであってもよい。
また上記のいずれかのＩ／Ｆから入力された放送データやコンテンツから分離された音声データは、音声ＡＭＰ１４にて増幅されて音声スピーカ１５から音声出力される。
【００２６】
図２は、本発明に係るテレビ受信機におけるソフトウェアのバージョンアップの動作の一例を説明するための図で、図１の不揮発性メモリ９のメモリ領域を概念的に図示すものである。
図２（Ａ）は、テレビ受信機が使用されているときの通常の状態のメモリ領域１００を示している。メモリ領域１００には、起動監視プログラムを記憶するプログラム領域１０１と、ＥＰＧ等の番組情報に関連するデータを記憶するデータ領域１０３とが設定されている。プログラム領域１０２に記憶するプログラムは、バージョンアップによって更新されるプログラムである。またＥＰＧ（登録商標）等の番組情報に関するデータは、放送波やオンデマンドのコンテンツなどから周期的もしくは随時取得できるデータである。番組情報としてはＥＰＧデータの他に、例えば放送チャンネルのリモコンへの割り当て情報や、その物理的な周波数帯情報などがある。これらの番組情報は、放送データと異なり、放送局から周期的あるいは随時送られてきている情報であって、テレビ受信機側で再取得可能な情報である。
【００２７】
本発明に係る実施形態では、上述の図４に示したような従来例と異なり、プログラムを記憶する不揮発性メモリ９のプログラム領域は、バージョンアップ前後のいずれか１つのプログラムが記憶できるだけの容量が用意されていればよい。
【００２８】
図２（Ｂ）は、バージョンアップが開始されたときのメモリ領域１００を示している。バージョンアップが開始されると、データ領域１０３に記憶されたＥＰＧ等の番組情報に関するデータをワークメモリ１０（図１）に移動させる。そしてそのデータ領域を、バージョンアップ用の新プログラムを記憶するための新プログラム領域１０４とする。この後、新プログラム領域１０４に対して新プログラムを書き込む。新プログラムとは、新バージョンのプログラムのことである。これにより図２（Ｃ）に示すように、メモリ領域１００には、新プログラムが記憶されている新プログラム領域１０４と、バージョンアップ前のプログラム（旧プログラムとする）が維持されているプログラム領域１０２とが設定される。
【００２９】
そして新プログラム領域１０４に新プログラムが書き込まれると、新プログラムを使用して起動される。ここでは起動監視プログラムによって新プログラムによる起動が実行され、さらに起動監視プログラムによって起動が正常に行われたかどうかが監視される。
新プログラムによる起動が成功した場合、新プログラムは更にプログラム領域１０２に記憶されている旧プログラムを初期化する。そして図２（Ｄ）に示すように、ワークメモリ１０に待避していたＥＰＧ等の番組情報に関するデータをプログラム領域１０２に移動させ、新たなデータ領域１０３として復元する。これによりバージョンアップが正常に終了する。この状態で新プログラム領域１０４は、バージョンアップ前のプログラムを記憶する新たなプログラム領域となる。
【００３０】
一方、新プログラムによる起動が失敗した場合には、旧プログラムで起動する。この場合図２（Ｃ）に示すようにこの段階では旧プログラムは初期化されていないため、ただちに旧プログラムを用いて起動させることができる。
そして図２（Ｅ）に示すように、起動に失敗した新プログラム領域１０４を初期化し、ワークメモリ１０に退避していたＥＰＧ等の番組情報に関するデータを新プログラム領域１０４に移動させ、新たなデータ領域１０３として復元する。
【００３１】
このように、不揮発性メモリ９のプログラム領域１０２と、ＥＰＧ等の番組情報に関するデータを記録するデータ領域１０３とをバージョンアップに使用することにより、不揮発性メモリ９のプログラム領域１０２が１つのプログラムにのみ対応するだけの容量しかなくても、従来と同様にバージョンアップを行うことができる。
【００３２】
また旧プログラムを記憶したプログラム領域を新プログラムが初期化するため、新プログラムが確実に起動できるまでは、旧プログラムを起動可能な状態で維持することができる。このとき新プログラムの起動に失敗した場合にも、ただちに旧プログラムで起動するため、動作の信頼性を確保することができる。
またＥＰＧ等の番組情報に関するデータをワークメモリ１０に待避しているときに、例えばテレビ受信機の電源がＯＦＦになった場合、ワークメモリ１０上のデータが消失してしまうが、これらのデータはテレビ受信機で再取得が可能であるため、ユーザに大きな不利益が生じることはない。
【００３３】
図３は、本発明によるテレビ受信機におけるソフトウェアのバージョンアップ処理の一例を説明するためのフローチャートである。以下、図１及び図２を参照しながら説明する。
まずテレビ受信機をバージョンアップ前の旧プログラムで起動し（ステップＳ１）、バージョンアップを開始する（ステップＳ２）。上述のように、バージョンアップは、放送波に含まれるバージョンアップ用のプログラムがテレビ受信機で取得された場合や、ＬＡＮ経由や外部記憶機器からバージョンアップ用のプログラムがテレビ受信機で取得された場合に開始される。
【００３４】
バージョンアップが開始されると、ＣＰＵ８の制御により、不揮発性メモリ９のデータ領域１０３に記憶されているＥＰＧ等の番組情報に関するデータをワークメモリ１０に退避させる（ステップＳ３）。そして取得したバージョンアップ用の新プログラムを、上記のデータ領域１０３に記憶する（ステップＳ４）。データ領域１０３は、新プログラム領域１０４となる。次にＣＰＵ８は、起動監視プログラムに新プログラムを保存したことを通知し（ステップＳ５）、起動監視プログラムは、新プログラムで起動させる（ステップＳ６）。
【００３５】
次いで起動監視プログラムは、新プログラムが正常に起動したかどうかを確認する（ステップＳ７）。ここで新プログラムが正常に起動した場合、番組情報に関するデータが壊れているかどうかを確認する（ステップＳ８）。ここで番組情報に関するデータが壊れている場合、それらのデータを未受信状態にして再取得可能とし（ステップＳ９）、新プログラムにより動作させる（ステップＳ１０）。
一方、番組情報に関するデータが壊れていない場合、これらのデータを不揮発性メモリ９の旧プログラムのプログラム領域１０２に格納し、新たなデータ領域１０３とする（ステップＳ１１）。このときにプログラム領域に維持されていた旧プログラムは初期化される。そして新プログラムにより動作させる（ステップＳ１０）。
【００３６】
上記ステップＳ７で、新プログラムが正常に起動しなかった場合、ＥＰＧ等の番組情報に関するデータが壊れているかどうかを確認する（ステップＳ１２）。ここで番組情報に関するデータが壊れている場合、それらのデータを未受信状態にして再取得可能とし（ステップＳ１３）、旧プログラムにより動作させる（ステップＳ１４）。
一方、番組情報に関するデータが壊れていない場合、これらのデータを不揮発性メモリ９の新プログラム領域１０４に格納し、新たなデータ領域１０３とする（ステップＳ１５）。そして旧プログラムにより動作させる（ステップＳ１４）。
【図面の簡単な説明】
【００３７】
【図１】本発明によるテレビ受信機の一実施形態を説明するためのブロック図である。
【図２】本発明に係るテレビ受信機におけるソフトウェアのバージョンアップの動作の一例を説明するための図である。
【図３】本発明によるテレビ受信機におけるソフトウェアのバージョンアップ処理の一例を説明するためのフローチャートである。
【図４】テレビ受信機における従来のプログラムのバージョンアップの動作を説明するための図である。
【符号の説明】
【００３８】
１…ＬＡＮ Ｉ／Ｆ、２…外部メモリＩ／Ｆ、３…放送データＩ／Ｆ、４…プロトコル変換部、５…ファイルシステム変換部、６…バージョンアップデータ取得選局処理部、７…バージョンアップ用プログラム取得部、８…ＣＰＵ、９…不揮発性メモリ、１０…ワークメモリ、１１…起動監視プログラム保持部、１２…システムソフトウェア保持部、１３…ＯＳＤ描画部、１４…音声ＡＭＰ、１５…音声スピーカ、１６…映像表示媒体、１１１…プログラム（Ａ）領域、１１２…プログラム（Ｂ）領域、１００…メモリ領域、１０１…起動監視プログラム領域、１０２…プログラム領域、１０３…データ領域、１０４…新プログラム領域。
【図１】
0004931144.tif 000002
【図２】
0004931144.tif 000003
【図３】
0004931144.tif 000004
【図４】
0004931144.tif 000005