(57)【特許請求の範囲】
【請求項１】
サーバからネットワーク経由で送信された更新データを不揮発性メモリに格納し、格納された前記更新データを揮発性メモリ上で実行することで、更新処理を実行する組み込みシステムにおいて、
前記サーバから送信された前記更新データを前記不揮発性メモリに格納するデータ取得手段と、
前記不揮発性メモリに前記更新データを格納する前に、前記更新データにチェックコードを付与させて、前記格納された更新データのエラーを検出するエラー検出手段と、
前記更新データの検出結果がエラーである場合は、前記サーバから再度、更新データを取得して、前記揮発性メモリに格納させ、第二データ取得手段と、
前記揮発性メモリ上に格納された前記更新データをもとに、前記更新処理を実行する更新処理実行手段と、を有することを特徴とする組み込みシステム。
【請求項２】
前記エラー検出手段は、前記更新データに付与されたチェックコードを演算して前記更新データのエラーを検出することを特徴とする請求項１に記載の組み込みシステム。
【請求項３】
前記エラー検出手段による検出結果を、ネットワーク経由で前記サーバに送信するエラー情報送信手段を備えることを特徴とする請求項１又は請求項２に記載の組み込みシステム。
【請求項４】
前記エラー検出手段は、前記不揮発性メモリに格納される更新データに対して、一定のデータ量のブロックごとに前記チェックコードを付与させる構成とされ、
前記エラー情報送信手段は、前記ブロックごとのエラー情報を前記サーバに送信することを特徴とする請求項３に記載の組み込みシステム。
【請求項５】
前記揮発性メモリの記憶容量は、前記不揮発性メモリより大きいことを特徴とする請求項１〜請求項４のいずれか一項に記載の組み込みシステム。
【請求項６】
前記更新データのエラーが検出された際、ユーザに異常を知らせる異常連絡手段を有することを特徴とする請求項１〜請求項５のいずれか一項に記載の組み込みシステム。
【請求項７】
サーバからネットワーク経由で送信された更新データを不揮発性メモリに格納し、格納された前記更新データを揮発性メモリ上で実行することで、更新処理を実行する組み込みシステムのデータ更新方法において、
前記サーバから送信された前記更新データにチェックコードを付与し、その後前記不揮発性メモリに格納し、
前記更新データ付与されたチェックコードを用いて、前記格納された更新データのエラーを検出し、
前記更新データの検出結果がエラーである場合は、前記サーバから再度、更新データを取得して、前記揮発性メモリに格納させ、
前記揮発性メモリ上に格納された前記更新データをもとに、前記更新処理を実行することを特徴とする組み込みシステムのデータ更新方法。
【請求項８】
サーバからネットワーク経由で送信された更新データを不揮発性メモリに格納し、格納された前記更新データを揮発性メモリ上で実行することで、更新処理を実行する組み込みシステムと、
所定のデータを記憶する記憶装置とを有する録画再生装置において、
前記サーバにアクセスから送信された、前記更新データを前記不揮発性メモリに格納するデータ取得手段と、
前記不揮発性メモリに前記更新データを格納する前に、前記更新データにチェックコードを付与させて、前記格納された更新データのエラーを検出するエラー検出手段と、
前記更新データの検出結果がエラーである場合は、前記サーバから再度、更新データを取得して、前記揮発性メモリ上に格納させる第二データ取得手段と、
前記揮発性メモリ上に格納された前記更新データをもとに、前記更新処理を実行する更新処理実行手段と、を有することを特徴とする録画再生装置。
【請求項９】
外部機器から送信された映像データや音声データを記憶するＨＤＤと、
外部機器から送信された映像データや音声データをメディアに記憶させるメディアドライバとを有し、
前記揮発性メモリの記憶容量は、前記不揮発性メモリの記憶容量より大きい値であって、
前記エラー検出手段は、前記不揮発性メモリに格納される更新データに対して、一定のデータ量のブロックごとに前記チェックコードを付与させる構成とされ、前記不揮発性メモリに前記更新データを格納する前に前記チェックコードを該更新データに付与するとともに、格納後の前記更新データに付与されたチェックコードを演算して前記更新データのエラーを検出し、
前記更新データのエラーが検出された際、画面上にユーザに異常を知らせる故障表示画面を表示するとともに、前記ブロックごとのエラー情報を前記サーバに送信するエラー情報送信手段とを有することを特徴とする請求項８に記載の録画再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、組み込みシステムに関し、特に、ネットワーク経由でダウンロードしたデータを用いてデータの更新を行なう組み込みシステムに関するものである。
【背景技術】
【０００２】
現在、家電製品における特定の機能を実行する装置において、組み込みシステム（エンデベットシステム）が使用されている。組み込みシステムは、演算装置とメモリとから構成されて、制御対象の制御及び入出力をリアルタイムに処理するものである。このような組み込みシステムでは、例えば、パーソナルコンピュータ等の汎用性の高い装置に比べ、その機能が特化されている。また、コスト的な制約があるため、機能を実現するため最小限のハード及びソフトにより構成されている。
【０００３】
また、現在、家電製品等はネットワークと接続し、このネットワーク上でデータのやり取りを実行できる環境となっている。そのため、組み込みシステムにおけるデータの更新においても、インターネット等のネットワークと接続することで、ネットワークに接続したサーバから送信される更新データを受信して、メモリに記憶されたデータの更新を行なうことができる。
【０００４】
組み込みシステムにおいて更新されるデータは多種に渡り、中には、組み込みシステムの駆動において重要なプログラムの更新がなされる場合もある。このような更新において、サーバからのダウンロードが失敗した場合、組み込みシステムの停止を誘発し、セット全体での機能を停止してしまう場合が存在する。
【０００５】
上述した、ダウンロードの失敗によるセットの停止を回避するために、リモートアップグレード及びインストールアプリケーション等のシステムファイルを更新するに際し、２つの不揮発性メモリにダウンロードしたファイルを別々に記憶する技術が開示されている（例えば、特許文献１参照。）。
【０００６】
また、同様な目的のために、ファームウェアのデータを一次記憶メモリに転送し、転送動作が正常に行なわれた場合に、再度一次記憶メモリにファームウェアを記憶し、主記憶装置に転送する技術が開示されている（例えば、特許文献２参照。）。
【０００７】
また、ネットワーク経由でデータをダウンロードする技術ではないが、外部機器からダウンロードされた書き換えプログラムを一端、第２のメモリに書込み、この書き換えプログラムに従って、第１メモリに記憶されたデータの更新を行なう技術が開示されている（例えば、特許文献３参照。）。
【特許文献１】特開２００５−５１５５２４号公報
【特許文献２】特開２００５−３１６６６７号公報
【特許文献３】特開平８−１２３６７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
上述した特許文献１の発明は、次のような課題があった。予め２つの不揮発性メモリにデータをダウンロードするため、ダウンロードに掛かる時間と、予備のデータを記憶するための不揮発性メモリとが必要となる。前記したように、組み込みシステムでは、リアルタイム処理を実行するため、処理時間の可能な限りの短縮が望まれる。また、コスト的な制約が強く、機能に付随しないハードはできるだけ実装させたくない。そのため、特許文献１に開示された技術は組み込みシステムには採用しがたい。
【０００９】
また、特許文献２の発明は、次のような課題があった。ダウンロードされたデータの異常には対応することができるが、ダウンロード先のメモリが故障している場合には対応することができない。つまり、ダウンロードしたデータを格納する主記憶メモリが故障している場合でも、一次記憶メモリでの送信テストが正常であれば、データを主記憶メモリに転送してしまう。そのため、故障したメモリにデータを格納することで、データのエラーを生じさせセットを停止させてしまうことがある。
【００１０】
そして、特許文献３の発明は、次のような課題があった。特許文献２の技術と同様に、ダウンロードされたデータを格納するメモリの故障には対応することができない。
【００１１】
本発明は、上記課題にかんがみてなされたもので、組み込みシステムにおいて、ダウンロードしたデータの更新の失敗及びデータを格納するメモリの故障によるセットの停止を回避することが可能な組み込みシステム、組み込みシステムのデータ更新方法、および前記組み込みシステムを使用した録画再生装置の提供を目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、本発明の一局面では、サーバからネットワーク経由で送信された更新データを不揮発性メモリに格納し、格納された前記更新データを揮発性メモリ上で実行することで、更新処理を実行する組み込みシステムにおいて、前記サーバから送信された前記更新データを前記不揮発性メモリに格納するデータ取得手段と、前記不揮発性メモリに記憶される前記更新データにチェックコードを付与させて、更新データのエラーを検出するエラー検出手段と、前記更新データの検出結果がエラーである場合は、前記サーバから再度、更新データを取得して、前記揮発性メモリに格納させる第二データ取得手段とを有する。
【００１３】
上記のように構成された発明では、エラー検出手段は、不揮発性メモリに格納された更新データに対してチェックコードを付与し、このチェックコードに基づいて不揮発性メモリに記憶された更新データのエラーを検出する。また、第二データ取得手段は、更新データの検出結果がエラーである場合は、サーバから再度、更新データを取得して、揮発性メモリ上にダウンロードさせる。
データが正しくダウンロードされない原因として、プログラムの書き換えの失敗、又は格納先のメモリ自体の損傷がある。これら２つの原因を厳密に識別するのは、不可能ではないが、処理に手間が生じる。そのため更新データが正しくダウンロードされない場合は、更新データのダウンロード先を変更することで、ダウンロードを再度実行しセットの停止を回避する。
【００１４】
ここで、更新データとは、ネットワーク経由でサーバから送信される情報を意味する。そのため、パッチプログラムであっても、プログラムそのものであっても良いし、パラメータであってもよい。
また、チェックコードとは、演算によって誤りが検出されるものであればよい。そのため、チェックコードを用いたデータのエラー検出手法としてはチェックサム（ｃｈｅｃｋ  ｓｕｍ）や、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）や、ハミングコードであってもよい。
【００１５】
好ましくは、前記エラー検出手段は、前記不揮発性メモリに前記更新データを格納する前に前記チェックコードを該更新データに付与するとともに、格納後の前記更新データに付与されたチェックコードを演算して前記更新データのエラーを検出する。
上記のように構成された発明では、不揮発性メモリに記憶される前後で更新データのチェックコードを比較することができるため、メモリ故障由来の更新データのエラーを検出することができる。
【００１６】
好ましくは、前記エラー検出手段による検出結果を、ネットワーク経由で前記サーバに送信するエラー情報送信手段を備える。
上記のように構成された発明では、エラー情報をサーバ側で蓄積することができ、蓄積されたエラー情報を今後の製品開発に役立てることができる。
【００１７】
好ましくは、前記エラー検出手段は、前記不揮発性メモリに格納される更新データに対して、一定のデータ量のブロックごとに前記チェックコードを付与させる構成とされ、前記エラー情報送信手段は、前記ブロックごとのエラー情報を前記サーバに送信する。
上記のように構成された発明では、所定のデータ量を備えたブロックごとにチェックコードを付与させるため、更新データにおけるエラー部位を特定して、サーバに送信することができる。
【００１８】
好ましくは、前記揮発性メモリは、前記不揮発性メモリより記憶容量が大きい。
上記のように構成された発明では、揮発性メモリはデータの展開場所の他、更新データのエラーが検出された場合は、更新データの格納場所としても利用される。そのため、不揮発性メモリの容量を大きくすることで、更新データの処理の遅延を回避することができる。
【００１９】
好ましくは、ダウンロードされた前記データの異常が検出された際、ユーザに異常を知らせる異常連絡手段を有する。
上記のように構成された発明では、ユーザに異常を知らせることで、セットを速やかにメーカー修理に出すよう促すことができる。
【００２０】
本発明の他の局面では、サーバからネットワーク経由で送信された更新データを不揮発性メモリに格納し、格納された前記更新データを揮発性メモリ上で実行することで、更新処理を実行する組み込みシステムのデータ更新方法において、前記サーバから送信された前記更新データを前記不揮発性メモリに格納し、前記不揮発性メモリに格納される前記更新データにチェックコードを付与させて、更新データのエラーを検出し、前記更新データの検出結果がエラーである場合は、前記サーバから再度、更新データを取得して、前記揮発性メモリに格納させる。
【００２１】
本発明の他の局面では、サーバからネットワーク経由で送信された更新データを不揮発性メモリに格納し、格納された前記更新データを揮発性メモリ上で実行することで、更新処理を実行する組み込みシステムと、所定のデータを記憶する記憶装置とを有する録画再生装置において、前記サーバにアクセスから送信された、前記更新データを前記不揮発性メモリに格納するデータ取得手段と、前記不揮発性メモリに格納される前記更新データにチェックコードを付与させて、更新データのエラーを検出するエラー検出手段と、前記更新データの検出結果がエラーである場合は、前記サーバから再度、更新データを取得して、前記揮発性メモリ上に格納させる第二データ取得手段とを有する。
【００２２】
本発明の他の局面では、外部機器から送信された映像データや音声データを記憶するＨＤＤと、外部機器から送信された映像データや音声データをメディアに記憶させるメディアドライバとを有し、前記揮発性メモリの記憶容量は、前記不揮発性メモリの記憶容量より大きい値であって、前記エラー検出手段は、前記不揮発性メモリに格納される更新データに対して、一定のデータ量のブロックごとに前記チェックコードを付与させる構成とされ、前記不揮発性メモリに前記更新データを格納する前に前記チェックコードを該更新データに付与するとともに、格納後の前記更新データに付与されたチェックコードを演算して前記更新データのエラーを検出し、前記更新データのエラーが検出された際、画面上にユーザに異常を知らせる故障表示画面を表示するとともに、前記ブロックごとのエラー情報を前記サーバに送信するエラー情報送信手段とを有する。
【発明の効果】
【００２３】
以上説明したように本発明によれば、制約の多い組み込みシステムにおいて、ダウンロードしたデータの更新の失敗及びデータを格納するメモリの故障によるセットの停止を回避するができる。
また本発明によれば、メモリ故障由来の更新データのエラーを検出することができる。
そして請求項３にかかる発明によれば、蓄積されたエラー情報を今後の製品開発に役立てることができる。
さらに請求項４にかかる発明によれば、更新データにおけるエラー部位を特定して、サーバに送信することができる。
また請求項５にかかる発明によれば、格納先の不揮発性メモリが揮発性メモリより容量が大きいため、更新データの処理の遅延を回避することができる。
そして請求項６にかかる発明によれば、ユーザに異常を知らせることで、セットを速やかにメーカー修理に出すよう促すことができる。
さらに請求項９のような、より具体的な構成において、上述した請求項１〜請求項６の各発明と同様の作用を奏することはいうまでもない。
【発明を実施するための最良の形態】
【００２４】
以下、下記の順序に従って本発明の実施形態を説明する。なお、図中、同一符号は同じ物を示し、その説明は繰返さない。
１．第一の実施形態：
１．１．録画再生装置の構成：
１．２．組み込みシステムの構成：
１．３．録画再生装置の作用・効果：
２．第二の実施形態：
３．変形例：
【００２５】
１．第一の実施形態：
１．１．録画再生装置の構成
図１は、本発明の実施例としての録画再生装置のブロック構成図である。
録画再生装置１０は、メディア５００、及びＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）７０に記憶されたデータを読み出して、図示しない出力装置に出力することができる。また、出力装置から入力されたデータをメディア５００、及びＨＤＤに記憶させることができる。さらに、モデム６０を用いてネットワーク６００と接続することで、サーバ７００から送信されるデータを用いて、プログラム等のデータの更新処理を実行することができる。
【００２６】
録画再生装置１０は、その駆動を制御する制御部５０と、この制御部５０に制御されて所定の機能を実行するデバイス９０と、ネットワーク６００と接続するためのモデム６０と、データの記録場所としてのＨＤＤ７０と、メディア５００にデータの読み書きを行なうＤＶＤドライブ８０とから構成されている。各構成要素は外部バス１１によって接続されており、制御部５０からの制御信号の送信、及び相互の通信はこの外部バス１１を用いて実行される。
【００２７】
ＨＤＤ７０は、出力装置から入力された映像データや音声データを記憶するためのものである。なお、この実施の形態ではＨＤＤ７０は一つとし、また、録画再生装置１０に実装されている。しかしながら、ＨＤＤ７０を複数備えていても良いし、録画再生装置１０とＨＤＤとが接続端子を用いて着脱可能に配置される構成としてもよい。
【００２８】
ＤＶＤドライブ８０（メディアドライバ）は、メディア５００としてのＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等に、取得したデータを書き込み、又はメディア５００に記憶されたデータを読み取るためのものである。
【００２９】
モデム６０は、制御部５０が記憶するドライバ（後述）の制御に従って、ネットワーク６００と接続を行なう。モデム６０は所定のプロトコルに従い、ネットワーク６００を通じて、このネットワーク６００に接続された端末間のデータの送受信を行なうことができる。取得されたデータは、制御部５０の各メモリに記憶される。ここで、ネットワーク６００とは、コンピュータ・ネットワークの意味であり、インタネット（Ｉｎｔｅｒｎｅｔ）の他、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）も含まれる。
【００３０】
デバイス９０は、制御部５０の制御の基、ＤＶＤドライブ８０に載置されたメディア５００やＨＤＤ７０にデータを記憶させるとともに、外部から取得されたデータをメディア５００やＨＤＤ７０に記憶するためのものである。デバイス９０は、エンコーダ９１と、ストリームコントローラ９４と、デコーダ９５と、ＯＳＤ（Ｏｎ  Ｓｃｒｅｅｎ  Ｄｉｓｐｌａｙ）部９７と、リモコン受信部９８と、バッファメモリ９２，９３，９６とから構成されている。
【００３１】
エンコーダ９１は、外部機器から入力された映像データや音声データを所定の方式で圧縮する。具体的には、エンコーダ９１は、映像信号や音声信号をＭＰＥＧ（Ｍｏｖｉｎｇ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔｓ  Ｇｒｏｕｐ）方式でそのデータ量を圧縮する。
【００３２】
ストリームコントローラ９４は、制御部５０の指示に基づいて、エンコーダ９１で圧縮された映像データや音声データを、ＨＤＤ７０又はＤＶＤドライブ８０に載置されたメディア５００に記憶させる。具体的には、ストリームコントローラ９４は、圧縮された映像データ及び音声データをＨＤＤ７０及びメディア５００の空き領域に記憶するよう、ＤＶＤドライブ８０及びＨＤＤ７０に命令する。また、メディア５００又はＨＤＤ７０に記憶されたデータを再生する場合は、制御部５０で指定された番地を参照して、バッファメモリ９３に順次ロードするようＤＶＤドライブ８０及びＨＤＤ７０に命令する。
【００３３】
デコーダ９５は、ストリームコントローラ９４から出力された映像データや音声データの圧縮を解凍して、出力端子を用いて本録画再生装置１０と接続した出力装置に出力する。このとき、解凍されたデータは、バッファメモリ９６に一次記憶され、このバッファメモリ９６から順次、出力装置に出力される。
【００３４】
ＯＳＤ回路９７は、制御部５０の指示に基づいて、バッファメモリ９６に記憶された映像データに、ＯＳＤデータを重畳するためのものである。ここで、ＯＳＤデータとは、例えば、表示装置等の出力装置に表示されるメニュー画面を構成する各データであり、このＯＳＤデータで表示されたメニュー項目を操作することにより、本録画再生装置１０の各種設定を調整することができる。
【００３５】
リモコン受信部９８は、リモコン装置１２から送信される制御コマンドを受信して、この制御コマンドに対応した制御信号を制御部５０に送信する。
【００３６】
１．２．組み込みシステムの構成：
制御部５０は、デバイス９０の駆動を制御して録画再生装置１０の機能を実現するものである。また、モデム６０を介してネットワーク６００と接続することで、サーバ７００に記憶されたデータを取得して、制御部５０に記憶された各データの更新を行なうことができる。
【００３７】
制御部５０は、ＣＰＵ５１と、第一のＲＯＭ５２と、第二のＲＯＭ５３と、ＲＡＭ５４と、メモリの故障を検出するための誤り検出回路５５とから構成される。なお、構成要素は、内部バス５６で接続され、この内部バス５６を用いて制御部５０内における信号及びデータの通信を行なう。また、制御部５０は、第一のＲＯＭ５２に記憶されたプログラムやデータを参照することで、各デバイス９０を制御する他、第一及び第二のＲＯＭ５２，５３に記憶されたデータの更新処理を実行する。
【００３８】
第二のＲＯＭ５３は、ネットワーク６００を介して送信された更新データを記憶（格納）するためのものである。第二のＲＯＭ５３の一例としては、書き換え可能なＰＲＯＭ等である。その記憶容量は、例えば１６Ｍバイトほどである。
【００３９】
ＲＡＭ５４は、ＣＰＵ５１が実行するプログラムを展開し、又は演算後のデータを一次的に記憶するためのものである。また、第二のＲＯＭ５３が故障した場合に供え、データをロードする領域の他、ダウンロードされたデータを一時的に記憶させる領域を備えることが望ましい。そのため、ＲＯＭ５３と比較して記憶容量が多いことが望まれる。その一例として、ＲＯＭ５３の記憶容量は、１２８Ｍバイトほどである。
【００４０】
誤り検出回路５５は、第二のＲＯＭ５３に記憶されるデータの故障を検出するためのものである。その機能としては、まず、第二のＲＯＭ５３にダウンロードされるデータにチェックコードを付与する。次に、第二のＲＯＭ５３に格納されたデータの使用時に付与されたチェックコードを演算し、この演算結果に基づいて、データのエラーを検出する。チェックコードを用いた演算方法の具体的な例としては、チェックサム、パリティーチェック、ハミング符号、ＣＲＣ等があり、各演算方法は周知技術であるため説明を省略する。
【００４１】
図２は、サーバ７００からネットワーク経由で送信される更新データの一例を示す図である。更新データの一例として、複数のセルからなるデータにより構成される。各セルには、送信元、及び送信先のアドレスが格納されたヘッダ領域と、送信対象としてのデータが格納されたデータ領域とで構成されている。また、ヘッダ領域には、このヘッダ領の誤りを検出するためのチェックコードが格納されている。なお、このチェックコードは、誤り検出回路５５が付与するチェックコードとは別のものである。
【００４２】
誤り検出回路５５は、上記したデータ領域に格納されたデータに対して所定情報量ごとにブロック化し、ブロックごとにチェックコードを付与する。その後、データが第二ＲＯＭ５４に記憶された後に、付与されたチェックコードを演算することでデータの劣化を検出する。つまり、第二ＲＯＭ５４が故障状態である場合は、チェックコードの異常が検出されるため、この演算結果をＣＰＵ５１に出力することで、ＣＰＵ５１が第二のＲＯＭ５３の故障等を原因としたデータのエラーを判断することができる。
【００４３】
第一のＲＯＭ５２は、ＣＰＵ５１が所定の機能を実現するための各種プログラムや、データを記憶する。具体的には、各プログラムの実行状態を制御するカーネル４０や、デバイス９０を制御して、録画再生装置１０としての機能を実現するための駆動プログラム１００や、モデム６０の駆動を制御するドライバ３００や、ネットワーク６００を介してサーバ７００から送信される更新データを実行するための更新処理プログラム２００や、更新処理プログラム２００の実行時に、ＣＰＵ５１が参照する番地変換テーブル４００を記憶している。第一のＲＯＭ５２の一例としては、読み出し専用のマスクＲＯＭや、書き換え可能なＰＲＯＭ等である。なお、制御部５０の更新処理が第一のＲＯＭ５２に記憶されたデータを対称とする場合には、当然第一のＲＯＭ５２は、書き換えが可能なＰＲＯＭで構成されているものとする。
【００４４】
カーネル４０は、各プログラムにおけるタスクの優先度に応じたスケジューリング機能や、システムコール機能や、割り込み機能を実現して、ＣＰＵ５１の機能を効果的にプログラムやデバイス９０に割り当てる。ＣＰＵ５１は、カーネル４０の機能を利用して、リアルタイム処理を実行する。具体的には、駆動プログラム１００による処理の実行途中に、ネットワーク６００を介してサーバ７００から更新データが送信された場合に、ＣＰＵ５１はカーネル４０の機能により２つのタスクの優先度を比較して、優先度の高いタスクを実行する。ここで、タスクとは、プログラム中で実行される各処理を意味する。
【００４５】
駆動プログラム１００は、ＣＰＵ５１が各デバイス９０の駆動を制御して、録画再生装置１０としての機能を実現させるためのものである。図３は、駆動プログラム１００を説明するフローチャートである。例えば、リモコン装置１２等を使用したユーザからの操作に基づいて、録画処理が選択された場合は（Ｓ１００）、ＣＰＵ５１は、録画処理を実行するよう各デバイス９０に命令を出す（Ｓ１１０）。具体的には、ＣＰＵ５１はエンコーダ９１に、取得したデータを圧縮するよう命令する。次にＣＰＵ５１は、ストリームコントローラ９４に、メディア５００又はＨＤＤ７０の記憶領域にデータを記憶させるよう命令する。また、ユーザから再生処理の指示があった場合は（ステップＳ１２０）、ＣＰＵ５１は各デバイス９０に、データの再生命令する（ステップＳ１３０）。
【００４６】
更新処理プログラム２００では、サーバ７００から送信された更新データを第二のＲＯＭ５３に格納し、格納された更新データをＲＡＭ５４上に展開して実行するものである。このとき、ＣＰＵ５１は誤り検出回路５５からの検出結果に基づいて、第二のＲＯＭ５３の検出結果がエラーである場合は、サーバ７００にアクセスして更新データを再度ダウンロードさせるとともに、ダウンロードした更新データをＲＡＭ５４に格納させる。
【００４７】
なお、更新処理プログラム２００は例えば、駆動プログラム１００の実行時に、サーバ７００からの更新データの送信指示をイベントとして割り込み処理により実行される。また、前記したように、各タスクの実行は、優先度に応じて実行の有無が決定されるため、更新処理プログラム２００の各タスクは優先順位が上位になった時点で実行される。また、優先順位の高い処理が割り込みを掛けた場合にもそのタスクは中断される。
【００４８】
図４は、更新処理プログラムを説明するフローチャートである。まず、ＣＰＵ５１は、第二のＲＯＭ５３に記憶された更新データの状態をチェックする（ステップＳ２０５）。無論、この状態では、ＲＯＭ５３には、更新データが格納されていないため、ステップＳ２２０に進み、ＣＰＵ５１はドライバ３００をＲＡＭ５４にロードし、モデム６０の制御を行なう。このとき、ＣＰＵ５１はネットワーク６００に接続しているかをチェックし（ステップＳ２２５）、接続していない場合はユーザにネットワークへの接続を促す（ステップＳ２３５）。ステップＳ２３０でネットワーク６００に接続させると、ＣＰＵ５１はサーバ７００にアクセスして、更新データをダウンロードさせる（ステップＳ２４０）。
【００４９】
このとき、ＣＰＵ５１は、誤り検出回路５５に取得した更新データのエラー検出を行なわせる（ステップＳ２４５）。まず、誤り検出回路５５は、更新データに対して所定ブロックごとにチェックコードを付与する。次に、誤り検出回路５５は、チェックコードを付与された更新データを第二のＲＯＭ５３に格納させる。そして、ＣＰＵ５１は、誤り検出回路５５に対して、更新データに付与されたチェックコードをチェックするよう命令する。チックコードは例えばＣＲＣに基づく演算により検出され、チェックコードに異常が無ければ、ＣＰＵ５１はリセット処理を行ない（ステップＳ２５５）、更新処理プログラム２００を先頭に返す。そのため、ＣＰＵ５１はステップＳ２１５で、格納された更新データをＲＡＭ５４にロードし、ＲＡＭ５４上で実行する。ＲＡＭ５４上での実行により、所定プログラム（例えば、駆動プログラム１００）の更新処理が行なわれる。
【００５０】
また、ステップＳ２４５における誤り検出で、チェックコードに異常が検出された場合、本発明では、第二のＲＯＭ５３に異常があると見なし、一時的な処理としてＲＡＭ５４に更新データを格納し、ＲＡＭ５４上で更新処理を実行する。
【００５１】
まず、ＣＰＵ５１はネットワーク６００経由でサーバ７００にアクセスし、更新データを再度ダウンロードするよう指示を出す（ステップＳ２６０）。このとき、ＣＰＵ５１は、誤り検出の検出結果をネットワーク６００経由でサーバ７００に送信する。更新データは、ブロックごとにチェックコードが付与されているため、ＣＰＵ５１はどのブロックでエラーが検出されたかを特定することができる。このため、検出結果をサーバ７００に送信することで、サーバ７００はエラー情報を蓄積することができ、このエラー情報を用いて今後の製品開発に生かすことができる。エラー情報送信手段の機能は、ＣＰＵ５１のこのステップにより実現される。
【００５２】
図５は、サーバ７００からネットワーク６００を経由して送信されるデータをメモリに格納する方法を説明する図である。ステップＳ２４０における第二のＲＯＭ５３への更新データの格納においては、ＣＰＵ５１は予め指定されたＲＯＭ５３の番地に更新データを格納する。このとき、更新データが複数のフレームで構成される場合は、ＣＰＵ５１は格納先の先頭番地を指定し、更新データはＲＯＭ５３の指定された先頭番地から順次格納されていく。
【００５３】
また、ステップＳ２６０において、更新データをＲＡＭ５４に記憶する際には、ＣＰＵ５１は、番地変換テーブル４００を参照して、ＲＯＭ５３における格納番地を、ＲＡＭ５４における格納番地に変更する。これにより、更新データの格納先をＲＯＭ５３からＲＡＭ５４に変更することができる。なお、ＲＡＭ５４における更新データの格納領域は、通常のデータが実行される実行領域の他に、更新データを格納するための領域を設けておくことが望ましい。
【００５４】
図６は、ＲＡＭ５４に格納された更新データの実行を説明する図である。ＣＰＵ５１は、ステップＳ２６５にて、更新データをＲＡＭ５４に格納する。このとき、ＣＰＵ５１は、誤り検出回路５５に、更新データがＲＡＭ５４上に格納さる前に誤り検出符合を付与させる。そして、チェックコードを付与させた更新データをＲＡＭ５４に格納し、再度格納された更新データの誤り符合を検出させる。チェックコードに異常が無ければ、ＣＰＵ５１は、更新データをＲＡＭ５４におけるロード領域にロードして、ＲＡＭ５４上で実行する（ステップＳ２７５）。
【００５５】
上記した、ステップＳ２６０からの処理は一時的な処理であり、以前として第二のＲＯＭ５３は正常な状態ではない。そのため、ステップＳ２７５における更新データの実行後、及びステップＳ２７０における誤り符号で異常が検出された後に、ＣＰＵ５１はＯＳＤ回路９７に故障表示画面を表示するよう命令する（ステップＳ２８０）。このため、ＣＰＵ２１１とＯＳＤ回路９７とで異常連絡手段の機能を実現する。図７は、画面に表示される故障表示画面の一例を表す図である。同図より、画面上にユーザにメーカー修理を促す文字列が表示される。
【００５６】
１．３．録画再生装置の作用・効果：
ユーザが本録画再生装置１０の操作中に、例えば、画面上にデータの更新を促すアイコンが表示された場合を想定する。本録画再生装置１０内では、タスクの優先順位に従って、ＣＰＵ５１はサーバ７００から更新データを取得する。このとき、更新データのダウンロードが失敗し付与されたチェックコードにエラーが検出された場合、ＣＰＵ５１は、再度、更新データのダウンロードを実行するとともに、更新データのダウンロード先をＲＡＭ５４に変更する。そのため、更新処理の失敗が第二のＲＯＭ５３の故障に起因する場合であっても、また、ダウンロードの失敗であっても、再度のダウンロードと格納場所の変更により更新処理を続行することができる。また、更新データのチェック機能により、本録画再生装置１０の駆動に重要な影響を与える更新データの更新であっても、更新処理の失敗で本録画再生装置１０を停止させることがない。また、更新が失敗した場合でも、画面上に図７に示す文字列が表示され、ユーザに速やかに修理を促すことができる。
【００５７】
２．第二の実施形態：
本発明は、録画再生装置以外にも様々な装置に適応することができる。図８は、組み込みシステムを内蔵したメディアプレーヤを表す図である。ここで、メディアプレーヤとは、比較的小型の筐体に補助記憶媒体を内蔵する装置である。また、ネットワークと接続可能なインタフェースを備え、ネットワークを通じて取得したデータを補助記憶媒体に記憶することができる。その具体的な一例として、ポータブルオーディオプレーヤや、ゲーム機器等を挙げることができる。
【００５８】
図８に示す、メディアプレーヤ８００は、パーソナルコンピュータ（以下、ＰＣ）９００と接続してデータの受け渡しが可能なインタフェース３０と、取得されたデータを記憶する補助記憶装置２０とを有している。ここで、補助記憶装置２０の機能は、録画再生装置１０におけるＨＤＤの機能と同様である。また、ＰＣ９００は内蔵されたモデム（図示しない）を用いてネットワーク６００と接続することで、サーバ７００が記憶するデータを取得することができる。
【００５９】
メディアプレーヤ８００は、インタフェース３０を制御して、ＰＣ９００経由でサーバ７００が記憶するデータを取得することができる。このメディアプレーヤ８００では、制御部５０が記憶するデータを更新する際、例えばネットワーク６００を通じてＰＣ９００に一次記憶されたデータを、インタフェース３０を用いて制御部５０の第二のＲＯＭ５３又はＲＡＭ５４に格納させることができる。これにより、メディアプレーヤ８００は第二のＲＯＭ５３又はＲＡＭ５４に記憶されたデータをＲＡＭ５４上で実行して、更新処理を行なうことができる。
【００６０】
３．変形例：
本発明は、様々な変形例が存在する。例えば、更新処理の対象となるデータは、第一のＲＯＭ５２に記憶されたデータに限定されない。例えば、各デバイス９０が制御部とメモリとから構成される組み込みシステムである場合は、各デバイス９０に記憶されるデータを更新するものであってもよい。例えばＯＳＤ回路９７が記憶するＯＳＤデータをサーバ７００からアップロードするものであってもよい。その場合は、本発明は上記したＯＳＤデータに対して適応される。
【００６１】
また、第一のＲＯＭ５２に記憶されるプログラムは、複数のマイクロプログラムを優先順位に応じて実行するものに限定されず、上述した各処理を一つのワイヤードロジックにより実行するものであってもよい。
【００６２】
さらに、録画再生装置１０の構成として、テレビジョン放送信号を受信可能なチューナモジュールを備える構成としてもよい。
【００６３】
なお、本発明は上記実施例に限られるものでないことは言うまでもない。当業者であれば言うまでもないことであるが、
・上記実施例の中で開示した相互に置換可能な部材および構成等を適宜その組み合わせを変更して適用すること
・上記実施例の中で開示されていないが、公知技術であって上記実施例の中で開示した部材および構成等と相互に置換可能な部材および構成等を適宜置換し、またその組み合わせを変更して適用すること
・上記実施例の中で開示されていないが、公知技術等に基づいて当業者が上記実施例の中で開示した部材および構成等の代用として想定し得る部材および構成等と適宜置換し、またその組み合わせを変更して適用すること
は本発明の一実施例として開示されるものである。
【図面の簡単な説明】
【００６４】
【図１】本発明の実施例としての録画再生装置のブロック構成図である。
【図２】サーバ７００からネットワーク経由で送信される更新データの一例を示す図である。
【図３】駆動プログラムを説明するフローチャートである。
【図４】更新処理プログラムを説明するフローチャートである。
【図５】サーバ７００からネットワーク６００を経由して送信されるデータをメモリに格納する方法を説明する図である。
【図６】ＲＡＭ５４に格納された更新データの実行を説明する図である。
【図７】画面に表示される故障表示画面の一例を表す図である。
【図８】組み込みシステムを内蔵したメディアプレーヤを表す図である。
【符号の説明】
【００６５】
１０…録画再生装置、１１…外部バス、１２…リモコン装置、２０…補助記憶装置、３０…インタフェース、４０…カーネル、５０…制御部、５１…ＣＰＵ、５２…第一のＲＯＭ、５３…第二のＲＯＭ、５４…ＲＡＭ、５５…誤り検出回路、５６…内部バス、６０…モデム、７０…ＨＤＤ、８０…ＤＶＤドライブ、９０…デバイス、９１…エンコーダ、９２，９３，９６…バッファメモリ、９４…ストリームコントローラ、９５…デコーダ、９７…ＯＳＤ回路、９８…リモコン受信部、１００…駆動プログラム、２００…更新処理プログラム、３００…ドライバ、４００…番地変換テーブル、５００…メディア、６００…ネットワーク、７００…サーバ、８００…メディアプレーヤ、９００…パーソナルコンピュータ（ＰＣ）
【図１】
0005041148.tif 000002
【図２】
0005041148.tif 000003
【図３】
0005041148.tif 000004
【図４】
0005041148.tif 000005
【図５】
0005041148.tif 000006
【図６】
0005041148.tif 000007
【図７】
0005041148.tif 000008
【図８】
0005041148.tif 000009