[go: up one dir, main page]

JP2010092324A - Broadcast receiver and software update method - Google Patents

Broadcast receiver and software update method Download PDF

Info

Publication number
JP2010092324A
JP2010092324A JP2008262523A JP2008262523A JP2010092324A JP 2010092324 A JP2010092324 A JP 2010092324A JP 2008262523 A JP2008262523 A JP 2008262523A JP 2008262523 A JP2008262523 A JP 2008262523A JP 2010092324 A JP2010092324 A JP 2010092324A
Authority
JP
Japan
Prior art keywords
program
update
firmware
recovery
broadcast receiving
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
Application number
JP2008262523A
Other languages
Japanese (ja)
Inventor
Hirotaka Oku
博隆 奥
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Panasonic Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Corp filed Critical Panasonic Corp
Priority to JP2008262523A priority Critical patent/JP2010092324A/en
Publication of JP2010092324A publication Critical patent/JP2010092324A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To resolve the problem that a two-bank system has a disadvantage in updating of firmware recently increasing in size because requiring a nonvolatile memory which is twice or more as large as firmware in size, for preservation of both operating firmware and updated firmware though a firmware update method of the two-bank system is generally employed for software built in a device. <P>SOLUTION: A broadcast receiver has a nonvolatile memory configuration of a one-bank system and receives data of two kinds of data of firmware for restoration and updated firmware when updating firmware, and writes the updated firmware in an area other than a write area for the firmware for restoration after writing the firmware for restoration into the head of a nonvolatile memory, and writes the updated firmware which has not completely written, into the write area for firmware for restoration after completing verification in the write area for the updated firmware. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は組み込み制御装置内部に格納され動作するソフトウェア(以下,装置内に組み込まれるプログラムを総称してファームウェアとし,ファームウェアの一部の構成要素としてプログラムと呼ぶ)の更新方法に関する技術であり,特に放送電波や有線無線のネットワークを利用して,アップデートされたプログラムを受信して,放送受信装置自身が持つファームウェアの一部のプログラムもしくはファームウェア全てをアップデートすることが可能な放送受信装置及びソフトウェア更新方法に関係する。   The present invention relates to a technique for updating software that is stored and operates inside an embedded control device (hereinafter, programs incorporated in the device are collectively referred to as firmware and a program as a part of the firmware). Broadcast receiving apparatus and software updating method capable of receiving an updated program using a broadcast radio wave or a wired wireless network and updating a part of the firmware or all the firmware of the broadcast receiving apparatus itself Related to.

近年のデジタル放送の普及に伴い,デジタル放送が受信可能なテレビやSTB(セットトップボックス)などの放送受信装置においては,従来と比べて規模の大きいプログラムがファームウェアとして内蔵されるようになった。   With the spread of digital broadcasting in recent years, broadcast receivers such as TVs and STBs (set top boxes) that can receive digital broadcasts have built in programs as firmware that are larger than conventional programs.

上記のファームウェアは多くの機能を有し,また複数のプログラムから構成される。これによりプログラム単位もしくはファームウェア全体の機能追加や性能向上,バグ修正に伴うソフトウェア更新,または放送信号送出側の仕様変更に伴った更新など,ユーザ家庭で利用されている間にもファームウェアの更新が必要となる場合が以前よりも多くなっている。   The above firmware has many functions and is composed of a plurality of programs. As a result, it is necessary to update the firmware while it is being used at the user's home, such as adding functions or improving the performance of the entire program or firmware, updating software accompanying bug correction, or updating due to changes in specifications on the broadcast signal transmission side. There are more cases than before.

これらの放送受信装置のファームウェア更新においては,更新のためのファームウェア情報やファームウェアデータは,放送電波やネットワーク回線を通じて各放送受信装置に通知・送信される場合が多い。   In updating the firmware of these broadcast receiving apparatuses, firmware information and firmware data for updating are often notified / transmitted to each broadcast receiving apparatus through broadcast radio waves or network lines.

このファームウェア情報やファームウェアデータを放送受信装置が受信すると,放送受信装置は自身の装置内部にある不揮発性メモリやハードディスクなどに保管されたファームウェアの一部もしくは全部を更新する。   When the broadcast receiving device receives the firmware information and firmware data, the broadcast receiving device updates a part or all of the firmware stored in a nonvolatile memory or a hard disk in its own device.

上記更新作業の実施は,画面表示などによりユーザに対してファームウェアの更新開始を通知した上で更新を開始する場合や,深夜などに放送受信装置が待機状態になっている時間に自動的に更新を行う場合がある。   The above update operation is performed automatically when the update is started after notifying the user of the start of the firmware update by screen display or when the broadcast receiving device is in a standby state at midnight or the like. May do.

これらのファームウェア更新は,更新に失敗すると放送受信装置が起動できなくなる可能性があるので,更新は極力安全な方法で実施することが望まれる。このような要望に対して,安全な方法でファームウェアを更新するひとつの方法として,例えば特許文献1に記載の装置制御方法がある。特許文献1では、制御装置内の不揮発性メモリに余裕領域を設け,EEPROMに新しいバージョンのファームウェアを書き込むと同時に,余裕領域に古いバージョンのファームウェアを保持させる制御手段を備え,RAMに新バージョンのファームウェアをダウンロードするときに,旧バージョンのファームウェアを残しておくバックアップ領域を設け,新バージョンのファームウェアに問題が発生した場合には復旧リセット信号を発生させることにより,旧バージョンのファームウェアで起動する装置制御方法を提案している。   These firmware updates may fail to activate the broadcast receiving device if the update fails, so it is desirable that the update be performed in a safe manner as much as possible. In response to such a demand, for example, there is a device control method described in Patent Document 1 as one method for updating firmware in a safe manner. In Patent Document 1, a nonvolatile memory in the control device is provided with a margin area, and a new version of firmware is written in the EEPROM, and at the same time, a control means for holding the old version of firmware in the margin area is provided. Device control method to start up with the old version firmware by providing a backup area to keep the old version firmware when downloading, and generating a recovery reset signal if a problem occurs in the new version firmware Has proposed.

また,安全な方法でファームウェアを更新する別の一例として,例えば特許文献2に記載の更新方法がある。特許文献2では,受信した新しいファームウェアによって装置を完全に運用する前に,新ファームウェアでの試運転を行い,問題があった場合には旧ファームウェアでの運用に復帰する更新方法を提案している。
特開2002−044693号公報 特開2003−122674号公報
Another example of updating the firmware by a safe method is an update method described in Patent Document 2, for example. Patent Document 2 proposes an update method in which a trial operation with the new firmware is performed before the apparatus is completely operated with the received new firmware, and when there is a problem, the operation is restored to the operation with the old firmware.
JP 2002-044993 A JP 2003-122684 A

ファームウェアの一部もしくは全てを構成するプログラムの更新を行う際に,不揮発メモリ内にプログラムを格納可能な2つ以上の領域を設け,旧いバージョンのプログラムと新しいプログラムという2つのプログラムを一時的に保持し,新しいバージョンのプログラムに問題があった場合には旧いバージョンのプログラムを再度利用して装置を動作させるという上記の特許文献1記載の装置制御方法及び特許文献2記載の更新手法では,装置が有する不揮発性メモリを、更新したいプログラムのサイズの少なくとも2倍のサイズ用意する必要があるという問題があった。   When updating a program that makes up part or all of the firmware, create two or more areas in the non-volatile memory that can store the program, and temporarily hold the two programs: the old version program and the new program In the apparatus control method described in Patent Document 1 and the update method described in Patent Document 2 in which the apparatus is operated by reusing the old version program when there is a problem with the new version program, the apparatus is There is a problem that it is necessary to prepare the nonvolatile memory having at least twice the size of the program to be updated.

そして、これは,近年の放送受信装置において,機能の増加やGUIの高精細化に伴ってプログラムのサイズが増大していることを考えると,ハードウェアのコストという観点からは必ずしも有利とはならない。   This is not necessarily advantageous from the viewpoint of hardware cost, considering that the size of a program has increased with an increase in functions and a higher definition of GUI in recent broadcast receiving apparatuses. .

本発明は上記事情に鑑みてなされるものであり、プログラムを格納するための不揮発性メモリのサイズを抑えつつ,より安全にプログラムの更新を実施することが可能な放送受信装置及びソフトウェア更新方法を提供することを目的とする。   The present invention has been made in view of the above circumstances, and provides a broadcast receiving apparatus and software update method capable of updating a program more safely while suppressing the size of a nonvolatile memory for storing the program. The purpose is to provide.

本発明の放送受信装置は、回復用プログラム及び更新用プログラムを受信してソフトウェア更新を行なう放送受信装置であって、回復用プログラム及び更新用プログラムを受信する受信手段と、プログラムを記憶する記憶手段と、更新用プログラムによってソフトウェア更新を実行する制御手段と、を備え、制御手段は、受信手段が回復用プログラム及び更新用プログラムを受信した場合に、回復用プログラムを記憶手段の所定領域に書き込むと共に所定領域以外の領域に更新用プログラムを書き込み、更新用プログラムの書込みが成功した場合は所定領域に更新用プログラムを上書きし、更新用プログラムの書込みが失敗した場合は所定領域に書き込んだ回復用プログラムを実行することを特徴とする。   The broadcast receiving apparatus of the present invention is a broadcast receiving apparatus that receives a recovery program and an update program and performs software update, a receiving means for receiving the recovery program and the update program, and a storage means for storing the program And a control means for executing software update by the update program. When the receiving means receives the recovery program and the update program, the control means writes the recovery program in a predetermined area of the storage means. The update program is written in an area other than the predetermined area, and when the update program is successfully written, the update program is overwritten in the predetermined area. When the update program fails to write, the recovery program is written in the predetermined area. It is characterized by performing.

また、本発明のソフトウェア更新方法は、回復用プログラム及び更新用プログラムを受信する受信ステップと、受信した回復用プログラム及び更新用プログラムを記憶する記憶ステップと、記憶した更新用プログラムによってソフトウェア更新を実行する実行ステップと、を備え、実行ステップは、受信ステップが回復用プログラム及び更新用プログラムを受信した場合に、回復用プログラムを記憶ステップの所定領域に書き込むと共に所定領域以外の領域に更新用プログラムを書込み、更新用プログラムの書込みが成功した場合は所定領域に更新用プログラムを上書きし、更新用プログラムの書込みが失敗した場合は所定領域に書き込んだ回復用プログラムを実行する、ことを特徴とする   The software update method of the present invention includes a receiving step for receiving a recovery program and an update program, a storage step for storing the received recovery program and the update program, and executing software update by the stored update program. An execution step, and when the reception step receives the recovery program and the update program, the execution step writes the recovery program in a predetermined area of the storage step and installs the update program in an area other than the predetermined area. The writing of the update program is overwritten in the predetermined area when the writing and the writing of the updating program are successful, and the recovery program written in the predetermined area is executed when the writing of the updating program fails.

プログラムの更新失敗への対策を目的として不揮発性メモリを複数個,あるいはプログラムサイズの複数倍のサイズを持つ必要がなく,基板サイズや部品コストを削減することが可能となる。   It is not necessary to have a plurality of non-volatile memories or a multiple of the program size for the purpose of dealing with program update failure, and the board size and component costs can be reduced.

(第1の実施の形態)
本発明で提案する放送受信装置のソフトウェア更新方法の第1の実施形態を以下に説明する。
(First embodiment)
A first embodiment of a software update method for a broadcast receiving apparatus proposed in the present invention will be described below.

図1は本発明の第1の実施形態である放送受信装置100のブロック図である。アンテナによって受信された放送電波は,受信手段101において指定された周波数の信号が抽出され,復調手段102においてデジタル映像・音声信号や,放送に付帯するデータ信号に復調される。復調された信号のうち,デジタル映像・音声に関わる信号は,映像音声デコーダ手段103によって映像や音声信号にデコード処理され,映像音声出力として映像表示装置120や音声再生装置121に出力されユーザに視聴される。   FIG. 1 is a block diagram of a broadcast receiving apparatus 100 according to the first embodiment of the present invention. From the broadcast radio wave received by the antenna, a signal having a frequency designated by the receiving means 101 is extracted, and demodulated by the demodulating means 102 into a digital video / audio signal or a data signal accompanying the broadcast. Of the demodulated signals, signals related to digital video / audio are decoded into video / audio signals by the video / audio decoder means 103 and output to the video display device 120 or the audio reproduction device 121 as video / audio outputs for viewing by the user. Is done.

一方,復調された信号に含まれる情報のうち,放送に付帯するデータや放送受信装置100で利用可能なデータは,CPU105で処理されることを目的として後述のRAM107やフラッシュメモリ108に記憶されるものがある。これは例えば放送に付帯するデータとしては電子番組表で表示されるような番組名や番組詳細を記述したSI(サービス情報)データがあり,放送受信装置100で利用可能なデータは放送受信装置のアップデートを目的としたプログラムデータ(ファームウェアの全て,もしくは一部のデータ)が考えられる。   On the other hand, of the information included in the demodulated signal, data incidental to the broadcast and data usable by the broadcast receiving apparatus 100 are stored in a RAM 107 and a flash memory 108 described later for the purpose of being processed by the CPU 105. There is something. For example, as data attached to broadcasting, there is SI (service information) data describing a program name and program details displayed in an electronic program guide, and data usable in the broadcast receiving apparatus 100 is data of the broadcast receiving apparatus. Program data (all or part of firmware data) for updating purposes can be considered.

CPU105は放送受信装置100全体のシステムを管理するマイクロコンピュータであり、各手段およびメッセージの制御を行う。   The CPU 105 is a microcomputer that manages the entire system of the broadcast receiving apparatus 100, and controls each means and message.

バスコントローラ106はCPU105と他のデバイスとの通信をおこなうためのコントローラである。このバスコントローラ106を経由してCPU105と通信を行うデバイスには例えばRAM107やフラッシュメモリ108がある。   The bus controller 106 is a controller for performing communication between the CPU 105 and other devices. Devices that communicate with the CPU 105 via the bus controller 106 include, for example, a RAM 107 and a flash memory 108.

RAM107はCPU105がデータ処理や演算を行う際のワークメモリとして利用される揮発性のメモリである。   The RAM 107 is a volatile memory that is used as a work memory when the CPU 105 performs data processing or computation.

フラッシュメモリ108は書換え可能な不揮発性メモリであり,放送受信装置100が動作するためのファームウェアを格納する。   The flash memory 108 is a rewritable nonvolatile memory and stores firmware for operating the broadcast receiving apparatus 100.

図2はフラッシュメモリ108に格納されたファームウェアをイメージで表現した図である。フラッシュメモリ108の内部は,大きくは2つのブロックに分かれている。   FIG. 2 is a diagram representing the firmware stored in the flash memory 108 as an image. The inside of the flash memory 108 is roughly divided into two blocks.

BootCode領域201は,放送受信装置100が起動するために必要なBootCode(BootCodeプログラム)を格納するための領域である。BootCodeとは放送受信装置100の起動に必要な最低限のプログラムのことであり,放送受信装置100の起動においてはまずBootCodeが実行され,BootCodeはCPU105の初期設定を行い,放送受信装置100全体の起動のためにRAM107やフラッシュメモリ108を動作可能にする。   The BootCode area 201 is an area for storing BootCode (BootCode program) necessary for starting up the broadcast receiving apparatus 100. The BootCode is a minimum program necessary for starting up the broadcast receiving apparatus 100. When the broadcast receiving apparatus 100 is started up, the BootCode is first executed. The BootCode performs initial setting of the CPU 105, and the entire broadcast receiving apparatus 100 is set up. The RAM 107 and the flash memory 108 are made operable for activation.

ProgramCode領域202は,BootCodeによって呼び出されるProgramCode(アプリケーションプログラム、ProgramCodeプログラム)を格納する領域である。ProgramCodeとは,オペレーションシステム(OS)の機能や,放送受信に必要なデバイスの制御機能や,ユーザに映像音声やGUIを表示するための機能を持ったプログラムである。   The Program Code area 202 is an area for storing Program Code (application program, Program Code program) called by BootCode. ProgramCode is a program having an operation system (OS) function, a device control function necessary for broadcast reception, and a function for displaying video / audio and GUI to the user.

なお,本実施の形態1の説明においては,ファームウェアはフラッシュメモリ108に格納された装置組み込みプログラムの全体を示すものとし,BootCodeは放送受信装置100が起動された時にまず起動されるプログラムとし,ProgramCodeはBootCodeにより起動されユーザにサービスや機能を提供するプログラムと位置づける。   In the description of the first embodiment, the firmware indicates the entire apparatus built-in program stored in the flash memory 108, the BootCode is a program that is first started when the broadcast receiving apparatus 100 is started, and the ProgramCode. Is a program that is activated by BootCode and provides services and functions to the user.

また,本実施の形態1においては,BootCodeおよびProgramCodeなどのプログラムを総称してファームウェアと呼ぶこととする。本実施の形態1におけるファームウェア更新方法としてはBootCodeおよびProgramCodeのいずれの更新も当てはまるが以下の説明においてはProgramCodeのプログラム更新における手順・動作を説明することとする。   In the first embodiment, programs such as BootCode and ProgramCode are collectively referred to as firmware. As the firmware update method in the first embodiment, both BootCode and ProgramCode are applicable, but in the following description, procedures and operations in ProgramCode program update will be described.

図3は放送受信装置100の起動時の動作の様子を示すフローチャートである。放送受信装置100に電源が入れられると,CPU105はまずBootCode領域201に格納されているBootCodeを実行する(S301)。このBootCodeには,主としてProgramCodeをRAM107上にロードするための機能とProgramCodeの正当性を確認するためのプログラムが含まれている。これは一般的には放送受信装置100のような装置は,ProgramCodeはフラッシュメモリ108からRAM107に複製・展開された上でCPU105によりプログラムの命令が処理されるためである。このBootCodeは通常は放送受信装置100の生産時に書き込まれ,以降は上書きされることがないため,プログラム動作に問題が出ることは通常発生しえない。   FIG. 3 is a flowchart showing an operation state when the broadcast receiving apparatus 100 is activated. When the broadcast receiving apparatus 100 is turned on, the CPU 105 first executes the BootCode stored in the BootCode area 201 (S301). This BootCode mainly includes a function for loading ProgramCode onto the RAM 107 and a program for confirming the validity of the ProgramCode. This is because a program code is generally processed by the CPU 105 in an apparatus such as the broadcast receiving apparatus 100 after the Program Code is copied and expanded from the flash memory 108 to the RAM 107. Since this BootCode is normally written at the time of production of the broadcast receiving apparatus 100 and is not overwritten thereafter, there is usually no problem in program operation.

次に,CPU105はBootCodeに記述されたプログラムに従い,ProgramCode領域202の正当性の確認を行う(S302)。この処理はProgramCode領域202に格納されたプログラムのデータの正当性を確認するものであり,CPU105がProgramCodeを実行できる状態になることを確認するための処理である。この処理は通常はProgramCodeのCRCチェックによるデータの完全性の確認などがある。   Next, the CPU 105 confirms the validity of the ProgramCode area 202 in accordance with the program described in the BootCode (S302). This process is for confirming the validity of the program data stored in the Program Code area 202, and for confirming that the CPU 105 is ready to execute the Program Code. This processing usually includes confirmation of data integrity by CRC check of ProgramCode.

次に,ProgramCodeの正当性が確認されると,CPU105はProgramCodeをRAM107にロードする(S303)。   Next, when the validity of the ProgramCode is confirmed, the CPU 105 loads the ProgramCode into the RAM 107 (S303).

次に,CPU105はRAM107上にロードされたProgramCodeを実行する(S304)。   Next, the CPU 105 executes ProgramCode loaded on the RAM 107 (S304).

その後,CPU105はProgramCodeに記述された処理手順に従って演算やデバイス制御の動作を行い,映像音声の受信処理・再生処理・出力処理を行う(S305)。   Thereafter, the CPU 105 performs operations and device control operations according to the processing procedure described in the Program Code, and performs video / audio reception processing / reproduction processing / output processing (S305).

図4は放送受信装置100におけるフラッシュメモリ108の内部の様子をより詳しく示した図である。   FIG. 4 is a diagram showing the internal state of the flash memory 108 in the broadcast receiving apparatus 100 in more detail.

フラッシュメモリ108にBootCode領域201とProgramCode領域202が存在することは先に述べたが,本実施の形態1における放送受信装置100においては,フラッシュメモリ108内部は幾つかのブロックにより構成されており,図4におけるフラッシュメモリ108においては,7ブロックに分割されている様子を示している。この実施の形態1では7ブロックのうち1ブロックはBootCode領域201に割り当てられており,残り6ブロックがProgramCode領域202に割り当てられている。   As described above, the boot code area 201 and the program code area 202 exist in the flash memory 108. However, in the broadcast receiving apparatus 100 according to the first embodiment, the flash memory 108 is composed of several blocks. The flash memory 108 in FIG. 4 shows a state where it is divided into seven blocks. In the first embodiment, one of the seven blocks is assigned to the BootCode area 201, and the remaining six blocks are assigned to the ProgramCode area 202.

またここではProgramCode領域202に割り当てられている6ブロックのうちの先頭部分のブロックをBLK−S00と表示している。BLK−S00はProgramCode領域202における共通領域と呼ぶ。BLK−S00以外の5ブロック部分は,BLK−P00からBLK−P04とし,ProgramCode専用領域と呼ぶ。なお,共通領域およびProgram専用領域の役割については後述する。   Here, the block at the head of the six blocks allocated to the Program Code area 202 is indicated as BLK-S00. BLK-S00 is called a common area in the ProgramCode area 202. The five block parts other than BLK-S00 are referred to as BLK-P00 to BLK-P04 and are referred to as Program Code dedicated areas. The roles of the common area and the program dedicated area will be described later.

次に,本実施の形態1における放送受信装置100でのProgramCode領域202に格納されたProgramCodeの更新手順について説明する。   Next, a procedure for updating the Program Code stored in the Program Code area 202 in the broadcast receiving apparatus 100 according to Embodiment 1 will be described.

図5には一般例の説明を目的として,本実施の形態1で提案するファームウェア更新方法を利用しない場合の一般的な放送受信装置100のファームウェア更新手順の一例を示す。   FIG. 5 shows an example of a firmware update procedure of a general broadcast receiving apparatus 100 when the firmware update method proposed in the first embodiment is not used for the purpose of explaining a general example.

放送受信装置100が動作中であり,放送信号が受信できる環境において,放送受信装置100のファームウェアを更新する必要が発生した場合には,更新され放送受信装置で動作させるための更新プログラムを格納したデータ(DLDATA1)を送信局から放送信号を経由して放送受信装置100へ送出する(S501)。   In an environment where the broadcast receiving apparatus 100 is in operation and can receive broadcast signals, an update program for updating and operating the broadcast receiving apparatus is stored when the firmware of the broadcast receiving apparatus 100 needs to be updated. Data (DLDATA1) is transmitted from the transmitting station to the broadcast receiving apparatus 100 via the broadcast signal (S501).

なお,DLDATA1は通常は放送受信装置100のメーカや型番,更新するファームウェアバージョンなどを識別するための識別符号を含み,この識別符号によりファームウェア更新対象とする放送受信装置100を特定するが,この識別方法については一般的であるため説明を省略する。   Note that DLDATA1 normally includes an identification code for identifying the manufacturer and model number of the broadcast receiving apparatus 100, the firmware version to be updated, and the like, and identifies the broadcast receiving apparatus 100 to be updated by this identification code. Since the method is general, the description is omitted.

また,放送受信装置100がどの周波数を選局していてもDLDATA1の存在を容易に検知させることを目的として、DLDATA1とは別のデータによって識別信号を送出する場合もあるが,これも一般的な方式であるため本実施の形態1においては説明を省略する。   In addition, there is a case where an identification signal is transmitted by data different from DLDATA1 for the purpose of easily detecting the presence of DLDATA1 regardless of the frequency selected by the broadcast receiving apparatus 100. Therefore, the description thereof is omitted in the first embodiment.

DLDATA1の中には放送受信装置100上で動作可能な更新プログラムを含んでいる。DLDATA1の送出目的としては,放送受信装置100がDLDATA1を受信し,DLDATA1に含まれる更新プログラムを取り出し,フラッシュメモリ108に書き込みを行うことで,プログラムを更新し放送受信装置100の動作を変更させることを目的としている。   DLDATA1 includes an update program operable on the broadcast receiving apparatus 100. For the purpose of sending out DLDATA1, the broadcast receiving apparatus 100 receives DLDATA1, retrieves the update program included in DLDATA1, writes it in the flash memory 108, updates the program, and changes the operation of the broadcast receiving apparatus 100. It is an object.

次に,放送受信装置100では,放送受信装置100が利用可能な更新プログラムを含むデータ(DLDATA1)が送信局より送出されたことを動作中のプログラムによって検知する(S502)。   Next, the broadcast receiving apparatus 100 detects that the data (DLDATA1) including the update program that can be used by the broadcast receiving apparatus 100 is transmitted from the transmitting station by the operating program (S502).

通常の場合,DLDATA1は放送信号内において小さいパケットに分割されて送信されるため,放送受信装置100でパケットの収集と結合が必要である。よって放送受信装置100ではDLDATA1の存在を検知した後,受信手段101や復調手段102を制御して放送信号に含まれるDLDATA1のデータの収集および再結合というDLDATA1受信処理を行う(S503)。   In the normal case, DLDATA1 is divided into small packets and transmitted in the broadcast signal, so that the broadcast receiver 100 needs to collect and combine the packets. Therefore, the broadcast receiving apparatus 100 detects the presence of DLDATA1, and then controls the receiving means 101 and the demodulating means 102 to perform DLDATA1 reception processing of collecting and recombining DLDATA1 data included in the broadcast signal (S503).

次に放送受信装置100は,結合が行われたDLDATA1からProgramCode領域に相当するデータを抽出し,内部のフラッシュメモリ108のProgramCode領域202への書き込みを行い,書き込みが正しく行われたことを確認する(S504)。フラッシュメモリ108のプログラムが,正しく更新プログラムに書き換えられたことを確認すると,放送受信装置100を再起動し(S505),更新されたファームウェアによる動作を開始する(S506)。なお,S502からS506の一連の処理はCPU105によって制御される。   Next, the broadcast receiving apparatus 100 extracts data corresponding to the ProgramCode area from the combined DLDATA1 and writes it into the ProgramCode area 202 of the internal flash memory 108 to confirm that the writing has been performed correctly. (S504). When it is confirmed that the program in the flash memory 108 has been correctly rewritten with the update program, the broadcast receiving apparatus 100 is restarted (S505), and the operation by the updated firmware is started (S506). The series of processing from S502 to S506 is controlled by the CPU 105.

次に図6には,本実施の形態1で提案するファームウェア更新方法を用いて,放送受信装置100のプログラムを更新した場合の処理手順を示す。   Next, FIG. 6 shows a processing procedure when the program of the broadcast receiving apparatus 100 is updated using the firmware update method proposed in the first embodiment.

図6では,図5における説明と同様に,放送受信装置100が動作中であり,放送信号が受信できる環境において,放送受信装置100のファームウェアを更新する必要が発生した場合のファームウェア更新方法を示している。   6 shows a firmware update method in the case where the broadcast receiving apparatus 100 is operating and the firmware of the broadcast receiving apparatus 100 needs to be updated in an environment where broadcast signals can be received, as in the description in FIG. ing.

まず,放送受信装置100で動作させるための更新プログラムを格納したデータ(DLDATA1)を送信局から放送信号を経由して送出する(S601)。   First, data (DLDATA1) storing an update program to be operated by the broadcast receiving apparatus 100 is transmitted from a transmitting station via a broadcast signal (S601).

次にS601の同時期あるいは少ない時間差のタイミングにおいて,送信局からはプログラム更新処理の途中で異常が発生した場合に,放送受信装置100を臨時的に動作させ,放送受信装置100を回復させることを目的としたプログラム(回復用プログラム)を含むデータ(DLDATA2と呼ぶ)を送出する(S602)。   Next, at the same time in S601 or at a timing with a small time difference, if an abnormality occurs during the program update process from the transmitting station, the broadcast receiving device 100 is temporarily operated to recover the broadcast receiving device 100. Data (referred to as DLDATA2) including the target program (recovery program) is sent (S602).

このDLDATA2もDLDATA1と同様に,放送受信装置100のメーカや型番,更新するファームウェアバージョンなどを識別するための識別符号を含み,対象とする放送受信装置100を特定するがこの説明は省略する。   Like DLDATA1, this DLDATA2 also includes an identification code for identifying the manufacturer and model number of the broadcast receiving apparatus 100, the firmware version to be updated, etc., and identifies the target broadcast receiving apparatus 100, but this description is omitted.

次にS601のDLDATA1の送出開始の結果として,放送受信装置100では放送受信装置100が利用可能な新しいファームウェア(DLDATA1)が送信局より送出されたことを動作中のプログラムによって検知する(S603)。   Next, as a result of starting transmission of DLDATA1 in S601, the broadcast receiving apparatus 100 detects that a new firmware (DLDATA1) that can be used by the broadcast receiving apparatus 100 has been transmitted from the transmitting station by an operating program (S603).

前述の図5における説明と同様に,DLDATA1は放送信号内において小さいパケットに分割されて送信されるため,放送受信装置100ではDLDATA1を検知するとCPU105は受信手段101や復調手段102を制御し,放送信号に含まれるDLDATA1のデータを収集し結合を行う(S604)。   Similarly to the description in FIG. 5 described above, DLDATA1 is transmitted after being divided into small packets in the broadcast signal. Therefore, when the broadcast receiving apparatus 100 detects DLDATA1, the CPU 105 controls the receiving means 101 and the demodulating means 102 to broadcast. DLDATA1 data included in the signal is collected and combined (S604).

また,DLDATA2の送出処理(S602)を開始した結果として,放送受信装置100はDLDATA1とは別にDLDATA2が送信局より送出されたことを検知する(S605)。   In addition, as a result of starting the transmission process of DLDATA2 (S602), the broadcast receiving apparatus 100 detects that DLDATA2 is transmitted from the transmitting station separately from DLDATA1 (S605).

放送受信装置100ではDLDATA2を検知すると,DLDATA1の受信処理の場合と同様に,CPU105は受信手段101や復調手段102を制御し,放送信号に含まれるDLDATA2のデータを収集し結合する(S606)。   When DLDATA2 is detected in the broadcast receiving apparatus 100, the CPU 105 controls the receiving means 101 and the demodulating means 102 to collect and combine DLDATA2 data included in the broadcast signal as in the case of DLDATA1 reception processing (S606).

上記のDLDATA1の受信処理(S604)およびDLDATA2の受信処理の処理(S606)が完了すると,CPU105はフラッシュメモリ内のProgramCode領域202の書換え処理(S607)を行う。この時に書き込まれるDLDATA1,およびDLDATA2のプログラム内容は,図7に示すようなブロック構成のプログラムである。ProgramCode領域202の書き換え処理(S607)に関しては、後ほど図8を用いて詳述する。   When the above-described DLDATA1 reception process (S604) and DLDATA2 reception process (S606) are completed, the CPU 105 performs a rewrite process (S607) of the Program Code area 202 in the flash memory. The program contents of DLDATA1 and DLDATA2 written at this time are programs having a block configuration as shown in FIG. The rewrite processing (S607) of the Program Code area 202 will be described in detail later with reference to FIG.

このDLDATA1の受信処理(S603)(S604)と,DLDATA2の受信処理(S605)(S606)とは,非同期で別個に行われる処理であるが,これは順序を定めて行う同期処理であってもよい。またDLDATA1,DLDATA2の2つの異なるDLDATAが存在することを,別途識別信号の中に記述子等を設けて送信局から放送受信装置100に通知する仕組みがあっても良い。   The DLDATA1 reception processing (S603) (S604) and the DLDATA2 reception processing (S605) (S606) are asynchronously performed separately, but this is a synchronous processing performed in a predetermined order. Good. Further, there may be a mechanism for notifying the broadcast receiving apparatus 100 from the transmitting station by providing a descriptor or the like in a separate identification signal that there are two different DLDATAs, DLDATA1 and DLDATA2.

ここで,本実施の形態1におけるDLDATA1,DLDATA2を説明するために図7を説明する。図7は本実施例におけるDLDATA1,DLDATA2の内部の構成を示す図である。DLDATA1は本実施の形態1における放送受信装置100で動作可能である更新プログラムを有するデータであり,この更新プログラムはユーザが利用することを目的とした更新されたプログラムである。更新プログラムには例えば現在のユーザプログラムに問題が発生したなどの理由により,問題を修正したプログラムを放送受信装置100に適用し問題を解決するためのプログラムなどが当てはまる。   Here, FIG. 7 will be described in order to explain DLDATA1 and DLDATA2 in the first embodiment. FIG. 7 is a diagram showing an internal configuration of DLDATA1 and DLDATA2 in the present embodiment. DLDATA1 is data having an update program that can be operated by the broadcast receiving apparatus 100 according to the first embodiment, and this update program is an updated program intended to be used by the user. As the update program, for example, a program for solving the problem by applying the program in which the problem is corrected to the broadcast receiving apparatus 100 due to a problem in the current user program is applied.

図7における更新プログラムは,一例としてプログラムデータが6個のブロックから構成されるプログラムである場合を記述している。ここでのプログラムのブロックとは図4におけるフラッシュメモリのProgramCode領域202内に存在するブロックと基本的に同じサイズのブロックである。これは論理的な意味でのブロックであり,フラッシュメモリ108のProgramCode領域202に書き込む処理においては,このブロック単位で書き込みを行うことを想定して設けられている単位である。   The update program in FIG. 7 describes a case where the program data is a program composed of six blocks as an example. The program block here is a block of basically the same size as the block existing in the Program Code area 202 of the flash memory in FIG. This is a block in a logical sense, and is a unit provided on the assumption that writing is performed in units of blocks in the process of writing in the Program Code area 202 of the flash memory 108.

また一方では,DLDATA2には本実施の形態1における放送受信装置100で動作可能な回復用プログラムを含むデータである。このDLDATA2に含まれる回復用プログラムは1ブロックもしくは2ブロック程度の少数のブロックから構成されるプログラムである。   On the other hand, DLDATA2 is data including a recovery program operable by the broadcast receiving apparatus 100 according to the first embodiment. The recovery program included in the DLDATA2 is a program composed of a small number of blocks such as one block or two blocks.

図10及び図11に,DLDATA2に含まれる回復用プログラムの一例を示す。図10では本実施の形態1における回復用プログラムの内部構成を一例として説明する。図10に示すように回復用プログラム702は、自身で回復用のダウンロード処理を行うことが可能となるように,受信手段101や復調手段102など,信号を受信するために必要な各手段を制御するためのドライバ(受信手段ドライバ、復調手段ドライバ)と,各手段を制御してダウンロード動作を実現するためのダウンロード動作用プログラム,および受信したデータを処理するためのデータ処理用プログラム,回復用ダウンロードを行うための放送信号や,データ受信のためデータを有する回復ダウンロード用パラメータ1001を有する。回復用プログラム702とは,このように放送受信装置100に問題が発生した場合に定められたパラメータを用いて回復用のダウンロード処理を行うことを目的として作成されたプログラムである。   FIG. 10 and FIG. 11 show an example of the recovery program included in DLDATA2. FIG. 10 illustrates an example of the internal configuration of the recovery program according to the first embodiment. As shown in FIG. 10, the recovery program 702 controls each means necessary for receiving signals, such as the receiving means 101 and the demodulating means 102, so that the recovery download process can be performed by itself. Drivers (receiver driver, demodulator driver) for downloading, a download operation program for controlling each means to realize a download operation, a data processing program for processing received data, and a download for recovery And a recovery download parameter 1001 having data for data reception and data reception. The recovery program 702 is a program created for the purpose of performing a recovery download process using parameters determined when a problem occurs in the broadcast receiving apparatus 100 as described above.

この図10に示すプログラムがProgramCode領域202の先頭に存在することで放送受信装置100はより大きなユーザ用のプログラムの更新が不完全な状態にあった場合は,回復ダウンロードを行うことが可能である。   Since the program shown in FIG. 10 exists at the top of the ProgramCode area 202, the broadcast receiving apparatus 100 can perform recovery download when the update of the program for a larger user is in an incomplete state. .

なお,回復ダウンロードを行う際には,回復用プログラム702は回復用プログラム702自身の内部に保持する回復ダウンロード用パラメータ1001を利用して回復ダウンロードを実行することが可能である。この回復ダウンロード用パラメータ1001は,例えば図11に示すように放送方式、Frequency等のパラメータから構成され、DLDATA2送信時に設定が可能であるため,送信局におけるDLDATA2の送出時の送出DLDATAを変更することにより回復ダウンロードの受信信号や,受信データを変更することが可能である。   When performing a recovery download, the recovery program 702 can execute the recovery download by using the recovery download parameter 1001 stored in the recovery program 702 itself. For example, as shown in FIG. 11, the recovery download parameter 1001 is composed of parameters such as broadcasting system and frequency, and can be set at the time of DLDATA2 transmission. Therefore, the transmission DLDATA at the time of transmission of DLDATA2 at the transmitting station is changed. Thus, it is possible to change the reception signal and the reception data of the recovery download.

このように図7、図10及び図11に示すように,DLDATA1は複数のブロックから構成される更新用プログラム701を有し,DLDATA2は1つもしくは少数のブロックから構成される比較的サイズの小さい回復用プログラム702を有している。このような2種類のDLDATAを利用することが本発明の特徴の1つである。   Thus, as shown in FIGS. 7, 10 and 11, DLDATA1 has an update program 701 composed of a plurality of blocks, and DLDATA2 is relatively small in size composed of one or a small number of blocks. A recovery program 702 is provided. Utilizing these two types of DLDATA is one of the features of the present invention.

次に,図6におけるProgramCode書換え処理(S607)における処理の詳しい説明を図8に示す。図8は本実施の形態1においてのProgramCode領域202の書換え処理の詳細を示すフローチャートである。   Next, FIG. 8 shows a detailed description of the process in the Program Code rewriting process (S607) in FIG. FIG. 8 is a flowchart showing details of the rewrite processing of the Program Code area 202 in the first embodiment.

本実施の形態1における放送受信装置100のProgramCode領域202を更新プログラム(図7におけるPRG−P00からPRG−P05)に書き換える処理では,CPU105により,まず前述の(S604)および(S606)において受信したDLDATA1,DLDATA2が正確なデータであるかどうかが確認される(S801)。これは通常はCRCによる確認や暗号鍵などを用いた復号による確認を用いて行われる。   In the process of rewriting the Program Code area 202 of the broadcast receiving apparatus 100 in the first embodiment with the update program (PRG-P00 to PRG-P05 in FIG. 7), the CPU 105 first receives the above-described (S604) and (S606). It is confirmed whether DLDATA1 and DLDATA2 are accurate data (S801). This is usually performed using confirmation by CRC or confirmation by decryption using an encryption key or the like.

次に,ProgramCode領域202の更新の処理として,まずはフラッシュメモリ108内のProgramCode領域202の先頭部分,つまり共通領域(BLK−S00)部分に回復用プログラム702(PRG−R00)を書き込む(S802)。   Next, as the update process of the Program Code area 202, first, the recovery program 702 (PRG-R00) is written in the head part of the Program Code area 202 in the flash memory 108, that is, the common area (BLK-S00) part (S802).

フラッシュメモリ108の書換えはブロック単位で行われるため,この書き込み処理が完了した時点では,BLK−S00には回復用プログラム702(PRG−R00)が書き込まれた状態となる。よって,もしこれ以降の処理で何らかの問題が発生した場合でも,放送受信装置100はこの回復用プログラム702により回復処理が実施可能となる。   Since the flash memory 108 is rewritten in units of blocks, when the writing process is completed, the recovery program 702 (PRG-R00) is written in BLK-S00. Therefore, even if any problem occurs in the subsequent processing, the broadcast receiving apparatus 100 can perform the recovery processing by the recovery program 702.

次にCPU105は,更新用プログラム701の2番目の領域(PRG−P01)をフラッシュメモリ108のProgramCode専用領域の先頭部分(BLK−P00)に書き込む(S803)。   Next, the CPU 105 writes the second area (PRG-P01) of the update program 701 in the head part (BLK-P00) of the Program Code dedicated area of the flash memory 108 (S803).

次にCPU105は,更新用プログラム701の3番目のブロック(PRG−P02)をフラッシュメモリのBLK−P02に書き込む(S804)。   Next, the CPU 105 writes the third block (PRG-P02) of the update program 701 into the BLK-P02 of the flash memory (S804).

更に,以降の4番目・5番目のブロック(PRG−P03およびPRG−P04)をフラッシュメモリ108に書き込む処理を継続して実施し(S805)、更新用プログラム701の最後のブロック(PRG−P05)をBLK−P04に書き込む(S806)。   Further, the subsequent fourth and fifth blocks (PRG-P03 and PRG-P04) are continuously written in the flash memory 108 (S805), and the last block (PRG-P05) of the update program 701 is executed. Is written into BLK-P04 (S806).

この(S802)〜(S806)の一連の処理により,フラッシュメモリ108内のProgramCode領域202の状態は図9に示すような状態となり,ProgramCode領域202の先頭(BLK−S00)に回復用プログラム702(PRG−R00)があり,それ以外の領域である(BLK−P00)〜(BLK−P04)には,更新用プログラム701(PRG−P01からPRG−P05)がブロック単位で書き込まれた状態となる。   Through the series of processes (S802) to (S806), the state of the Program Code area 202 in the flash memory 108 becomes as shown in FIG. 9, and the recovery program 702 (BLK-S00) is added to the top of the Program Code area 202 (BLK-S00). PRG-R00) is present, and in other areas (BLK-P00) to (BLK-P04), the update program 701 (PRG-P01 to PRG-P05) is written in block units. .

つまり図9に示すProgramCode領域202の状態は,放送受信装置100はBLK−S00に書き込まれた回復用プログラム702(PRG−R00)による回復ダウンロードが可能で,かつ目的としている更新用プログラム701のブロックの大部分がProgramCode領域202に書き込まれた状態である。   In other words, the state of the Program Code area 202 shown in FIG. 9 indicates that the broadcast receiving apparatus 100 can perform recovery download by the recovery program 702 (PRG-R00) written in BLK-S00 and is a block of the intended update program 701. Is written in the Program Code area 202.

このような図9のようなProgramCode領域202の更新完了の直前の状態において,CPU105はProgramCode領域202全体の書き込み状態をブロックごとに確認する処理(ベリファイ)を行う(S807)。   In such a state immediately before the completion of the update of the Program Code area 202 as shown in FIG. 9, the CPU 105 performs processing (verification) for checking the writing state of the entire Program Code area 202 for each block (S807).

このベリファイ処理(S807)により,もしProgramCode領域202のBLK−P00からBLK−P04に保存されたデータに異常が発生した場合は,CPU105はシステムを再起動し,BLK−S00に書き込まれた回復用プログラム702により回復用のダウンロード処理に入ることが可能である。   If an abnormality occurs in the data stored in BLK-P00 to BLK-P04 in the Program Code area 202 by this verification process (S807), the CPU 105 restarts the system and restores the data written in BLK-S00. The program 702 can enter a download process for recovery.

次に,図8におけるS807でのベリファイ処理の結果として,ProgaramCode領域202のうちBLK−P00からBLK−P04部分の書込みが問題なく完了したと判断されると,CPU105はProgramCode領域202の先頭ブロック(BLK−S00)を更新用プログラム701の先頭ブロック(PRG−P00)に書き換える(S808)。   Next, as a result of the verification processing in S807 in FIG. 8, if it is determined that the writing of the BLK-P00 to BLK-P04 portions in the Program Code area 202 has been completed without any problem, the CPU 105 determines that the first block of the Program Code area 202 ( BLK-S00) is rewritten to the first block (PRG-P00) of the update program 701 (S808).

この書込み処理(S808)によりBLK−S00およびBLK−P00〜BLK−P04の全ての領域は更新用プログラム701の状態となり,ProgramCode領域202のプログラム更新処理は完了する。   By this writing process (S808), all the areas of BLK-S00 and BLK-P00 to BLK-P04 are in the state of the update program 701, and the program update process of the ProgramCode area 202 is completed.

図12には,ProgramCode領域202の更新失敗時に回復用プログラム702が動作する手順の一例を図で示す。   FIG. 12 is a diagram illustrating an example of a procedure in which the recovery program 702 operates when the update of the Program Code area 202 fails.

今例えば,前述の図8におけるS807でのベリファイ処理の結果として,ProgaramCode領域202のうちBLK−P00からBLK−P04部分で何らかの問題が発生しProgramCode領域202に異常があると判断した場合は,CPU105は回復用ダウンロードを行うために放送受信装置100を再起動する(S1201)。再起動時のフラッシュメモリ108の状態は,前述のようにProgramCode領域202のBLK−S00に回復用プログラム702(PRG−R00)が書かれており,回復ダウンロードが可能である。   For example, if it is determined that some problem has occurred in the BLK-P00 to BLK-P04 portion of the ProgramCode area 202 and the ProgramCode area 202 is abnormal as a result of the verify process in S807 in FIG. Restarts the broadcast receiving apparatus 100 to perform a recovery download (S1201). As described above, the state of the flash memory 108 at the time of restarting is that the recovery program 702 (PRG-R00) is written in BLK-S00 of the ProgramCode area 202, and recovery download is possible.

回復ダウンロードでは,回復用プログラム702が保持する回復ダウンロード用パラメータ1001を用いて,更新用のプログラムデータ受信処理を開始する(S1202,S1203)。   In the recovery download, update program data reception processing is started using the recovery download parameter 1001 held by the recovery program 702 (S1202, S1203).

この時に受信するデータおよび周波数などは回復ダウンロード用パラメータ1001に定義して変更することが可能であるが,ここでは回復ダウンロード用パラメータ1001として,DLDATA1を受信する設定がされた場合を仮定する。この場合、回復ダウンロードを開始した結果としてDLDATA1が取得される(S1204)。   The data and frequency received at this time can be defined and changed in the recovery download parameter 1001, but here, it is assumed that the DLDATA1 is set to be received as the recovery download parameter 1001. In this case, DLDATA1 is acquired as a result of starting the recovery download (S1204).

この回復ダウンロード用パラメータ1001の設定は、例えば以前のバージョンのDLDATA1を異常回避用のDLDATAとして別途放送しておき,この以前のバージョンのプログラムを取得してProgramCode領域202を以前のプログラムに戻すという利用方法も考えられる。また回復ダウンロード用パラメータ1001は,例えば放送受信装置100がイーサネット(登録商標)などの放送受信以外の通信手段(図示せず)を所有していた場合には,イーサネット(登録商標)経由でサーバにアクセスを行い,異常回避用のDLDATAを入手するなどの方法も考えられるが,これは回復用プログラム702内を変更することで設定が可能であると考えてよい。また回復用プログラム702では,DLDATA1・DLDATA2の両方を再度取得するようなプログラムであっても良い。   The recovery download parameter 1001 is set by, for example, separately broadcasting the previous version of DLDATA1 as abnormality avoidance DLDATA, acquiring the previous version of the program, and returning the ProgramCode area 202 to the previous program. A method is also conceivable. Also, the recovery download parameter 1001 is stored in the server via Ethernet (registered trademark) when the broadcast receiving device 100 possesses communication means (not shown) other than broadcast reception such as Ethernet (registered trademark). A method of performing access and obtaining DLDATA for avoiding an abnormality is also conceivable, but this may be set by changing the inside of the recovery program 702. Further, the recovery program 702 may be a program that acquires both DLDATA1 and DLDATA2 again.

このように回復用プログラム702が動作中の放送受信装置100は,回復ダウンロード用パラメータ1001手順を用いて更新プログラムを取得すると,更新プログラムをProgramCode領域202に書き込む(S1205)。この書き込み処理は基本的には図8に示すようなProgramCode領域202書き込み処理と同等であるが,回復ダウンロードにおいては既にBLK−S00にはPRG−R00が書かれている状態のため,このブロックに対する書き込み処理は行わなくてもよい。以降,S1205における処理はS803以降の処理と同等と考えてよい。   As described above, when the broadcast receiving apparatus 100 in which the recovery program 702 is operating acquires the update program using the recovery download parameter 1001 procedure, the broadcast reception apparatus 100 writes the update program in the Program Code area 202 (S1205). This writing process is basically the same as the Program Code area 202 writing process as shown in FIG. 8, but since PRG-R00 is already written in BLK-S00 in the recovery download, The writing process may not be performed. Henceforth, you may consider that the process in S1205 is equivalent to the process after S803.

S1205における,回復用プログラム702による更新プログラムの書き込み処理が完了すると,放送受信装置100は再起動され(S1206),更新用プログラム701で起動される(S1207)。   When the update program writing process by the recovery program 702 in S1205 is completed, the broadcast receiving apparatus 100 is restarted (S1206) and started by the update program 701 (S1207).

上記のように,書き込みをブロック単位で実施し,また回復用プログラム702を最小限のブロックに書き込むことでファームウェア更新中の異常発生時のリカバリー率を高め,なおかつフラッシュメモリ108の全領域の有効利用を実現することが可能となる。   As described above, writing is performed in units of blocks, and the recovery program 702 is written in the minimum number of blocks, so that the recovery rate when an abnormality occurs during firmware update is improved and the entire area of the flash memory 108 is effectively used. Can be realized.

なお,本実施の形態1においては,図7に示すDLDATA1の更新用プログラム701は図4におけるProgramCode領域202のブロック数と一致した6ブロックから構成されることを例として示したが,必ずしもProgramCode領域202と更新用プログラム701の内部ブロック数が一致する必要があるものではなく,より多いブロック数や少ないブロック数であっても良い。   In the first embodiment, the DLDATA1 update program 701 shown in FIG. 7 is composed of 6 blocks corresponding to the number of blocks in the ProgramCode area 202 in FIG. 4, but is not necessarily the ProgramCode area. The number of internal blocks 202 and the update program 701 do not need to match, and the number of blocks may be larger or smaller.

本発明は、放送または通信を介して放送信号を受信可能な放送受信装置でのソフトウェア更新方法として有用である。   The present invention is useful as a software update method in a broadcast receiving apparatus capable of receiving a broadcast signal via broadcast or communication.

本発明の第1の実施形態である放送受信装置100のブロック図The block diagram of the broadcast receiving apparatus 100 which is the 1st Embodiment of this invention. フラッシュメモリ108に格納されたファームウェアをイメージで表現した図A diagram representing the firmware stored in the flash memory 108 as an image 放送受信装置100の起動時の動作の様子を示すフローチャートThe flowchart which shows the mode of operation at the time of starting of the broadcast receiving apparatus 100 フラッシュメモリ108の内部の様子をより詳しく示した図A more detailed view of the inside of the flash memory 108 一般的な放送受信装置のファームウェア更新手順を示す図The figure which shows the firmware update procedure of the general broadcast receiving device 本実施の形態1で提案するファームウェア更新方法の処理手順を示す図The figure which shows the process sequence of the firmware update method proposed in this Embodiment 1. DLDATA1,DLDATA2の構成を示す図The figure which shows the structure of DLDATA1 and DLDATA2 ProgramCode領域202の書換え処理の詳細を示すフローチャートThe flowchart which shows the detail of the rewriting process of the ProgramCode area | region 202 ProgramCode領域202の更新終了直前状態を示す図The figure which shows the state immediately before completion | finish of the update of ProgramCode area | region 202 回復用プログラムの一例を示す図Diagram showing an example of a recovery program 回復ダウンロード用パラメータの一例を示す図Diagram showing an example of recovery download parameters 回復用プログラム702が動作する手順を示すフローチャートA flowchart showing a procedure for operating the recovery program 702

符号の説明Explanation of symbols

100 放送受信装置
101 受信手段
102 復調手段
103 映像音声デコード手段
105 CPU
106 バスコントローラ
107 RAM
108 フラッシュメモリ
120 映像表示装置
121 音声再生装置
201 BootCOde領域
202 ProgramCode領域
701 更新用プログラム
702 回復用プログラム
1001 回復ダウンロード用パラメータ
100 broadcast receiving apparatus 101 receiving means 102 demodulating means 103 video / audio decoding means 105 CPU
106 Bus controller 107 RAM
108 Flash memory 120 Video display device 121 Audio playback device 201 BootCode area 202 ProgramCode area 701 Update program 702 Recovery program 1001 Recovery download parameter

Claims (3)

回復用プログラム及び更新用プログラムを受信してソフトウェア更新を行なう放送受信装置であって、
前記回復用プログラム及び前記更新用プログラムを受信する受信手段と、
プログラムを記憶する記憶手段と、
前記更新用プログラムによって前記ソフトウェア更新を実行する制御手段と、を備え、
前記制御手段は、前記受信手段が前記回復用プログラム及び前記更新用プログラムを受信した場合に、前記回復用プログラムを前記記憶手段の所定領域に書き込むと共に前記所定領域以外の領域に前記更新用プログラムを書き込み、前記更新用プログラムの書込みが成功した場合は前記所定領域に前記更新用プログラムを上書きし、前記更新用プログラムの書込みが失敗した場合は前記所定領域に書き込んだ前記回復用プログラムを実行することを特徴とする放送受信装置。
A broadcast receiving apparatus that receives a recovery program and an update program and performs software update,
Receiving means for receiving the recovery program and the update program;
Storage means for storing the program;
Control means for executing the software update by the update program,
When the receiving unit receives the recovery program and the update program, the control unit writes the recovery program into a predetermined area of the storage unit and loads the update program in an area other than the predetermined area. When the writing or writing of the update program is successful, the updating program is overwritten in the predetermined area, and when the writing of the updating program fails, the recovery program written in the predetermined area is executed. A broadcast receiving apparatus characterized by the above.
前記回復用プログラムは、ソフトウェアダウンロード処理を実行するためのパラメータを有し、前記パラメータによって前記更新用プログラムを再受信し、再受信した前記更新用プログラムを前記所定領域以外の領域に再書き込みさせる、
ことを特徴とする請求項1に記載の放送受信装置。
The recovery program has a parameter for executing software download processing, re-receives the update program according to the parameter, and re-writes the re-received update program in an area other than the predetermined area.
The broadcast receiving apparatus according to claim 1.
回復用プログラム及び更新用プログラムを受信する受信ステップと、
受信した前記回復用プログラム及び前記更新用プログラムを記憶する記憶ステップと、
記憶した前記更新用プログラムによってソフトウェア更新を実行する実行ステップと、を備え、
前記実行ステップは、前記受信ステップが前記回復用プログラム及び前記更新用プログラムを受信した場合に、前記回復用プログラムを前記記憶ステップの所定領域に書き込むと共に前記所定領域以外の領域に前記更新用プログラムを書込み、前記更新用プログラムの書込みが成功した場合は前記所定領域に前記更新用プログラムを上書きし、前記更新用プログラムの書込みが失敗した場合は前記所定領域に書き込んだ前記回復用プログラムを実行する、ことを特徴とするソフトウェア更新方法。
A receiving step for receiving the recovery program and the update program;
A storage step for storing the received recovery program and the update program;
An execution step of executing a software update by the stored update program,
When the receiving step receives the recovery program and the update program, the execution step writes the recovery program in a predetermined area of the storage step and places the update program in an area other than the predetermined area. Writing, overwriting the update program in the predetermined area when writing of the update program is successful, and executing the recovery program written in the predetermined area when writing of the update program fails, The software update method characterized by the above-mentioned.
JP2008262523A 2008-10-09 2008-10-09 Broadcast receiver and software update method Pending JP2010092324A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008262523A JP2010092324A (en) 2008-10-09 2008-10-09 Broadcast receiver and software update method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008262523A JP2010092324A (en) 2008-10-09 2008-10-09 Broadcast receiver and software update method

Publications (1)

Publication Number Publication Date
JP2010092324A true JP2010092324A (en) 2010-04-22

Family

ID=42254964

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008262523A Pending JP2010092324A (en) 2008-10-09 2008-10-09 Broadcast receiver and software update method

Country Status (1)

Country Link
JP (1) JP2010092324A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014006571A (en) * 2012-06-21 2014-01-16 Canon Inc Information processing device, programs update method, and programs
JP2018092417A (en) * 2016-12-05 2018-06-14 京セラドキュメントソリューションズ株式会社 Image processing device
CN111190624A (en) * 2019-12-29 2020-05-22 珠海市京澳特电子有限公司 Method for upgrading mining lamp charging cabinet by adopting charging plate in broadcasting mode

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014006571A (en) * 2012-06-21 2014-01-16 Canon Inc Information processing device, programs update method, and programs
JP2018092417A (en) * 2016-12-05 2018-06-14 京セラドキュメントソリューションズ株式会社 Image processing device
US10447886B2 (en) 2016-12-05 2019-10-15 Kyocera Document Solutions Inc. Image processing apparatus for updating a non-volatile memory and method controlling image processing apparatus
CN111190624A (en) * 2019-12-29 2020-05-22 珠海市京澳特电子有限公司 Method for upgrading mining lamp charging cabinet by adopting charging plate in broadcasting mode

Similar Documents

Publication Publication Date Title
TWI386847B (en) Method of safe and recoverable firmware update and device using the same
US8041988B2 (en) Firmware update for consumer electronic device
US20030110483A1 (en) Data processor, program updating method and storage medium
KR19990063139A (en) Information processing apparatus, information processing method and computer program providing medium
JP2014099097A (en) Information processing device, information processing method, and computer program
JP2007122601A (en) Separation type processing apparatus and software version updating method
CN1734422B (en) Data processing device and method for updating firmware
US8046816B2 (en) Digital broadcast receiver and upgrading method thereof
JP2010092324A (en) Broadcast receiver and software update method
CN106028142A (en) Upgrading control method and upgrading control apparatus for playing devices
CN108804126A (en) A kind of method for upgrading software and device
WO2018049798A1 (en) Method and apparatus for reconstructing cache partition
JP2012212415A (en) Wireless base station device
CN115857998B (en) Upgrade method, device and medium based on ZYNQ and FPGA architecture
US20120233520A1 (en) Information Processing Apparatus and Information Processing Method
JP5015093B2 (en) Receiver and receiver control method
JP4931144B2 (en) TV receiver
JP5158883B2 (en) Firmware update method and firmware update apparatus
US8819480B2 (en) Display apparatus and method for updating micom code thereof
JP2005258931A (en) Diagnostic equipment
JP2005242930A (en) Information processing apparatus, program update method, program update program, and computer-readable recording medium recording the program update program
JPH11175346A (en) Information processing apparatus, information processing method, and providing medium
JP2007172200A (en) Software update system
JP4127253B2 (en) Digital broadcast receiver
JP2006072982A (en) Data processing apparatus and firmware update method