JP4606009B2 - プログラム処理装置 - Google Patents

プログラム処理装置 Download PDF

Info

Publication number
JP4606009B2
JP4606009B2 JP2003359448A JP2003359448A JP4606009B2 JP 4606009 B2 JP4606009 B2 JP 4606009B2 JP 2003359448 A JP2003359448 A JP 2003359448A JP 2003359448 A JP2003359448 A JP 2003359448A JP 4606009 B2 JP4606009 B2 JP 4606009B2
Authority
JP
Japan
Prior art keywords
update
memory
request
program
firmware
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.)
Expired - Fee Related
Application number
JP2003359448A
Other languages
English (en)
Other versions
JP2005122623A (ja
Inventor
陽一 深見
善正 小野
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2003359448A priority Critical patent/JP4606009B2/ja
Priority to CNB2004100850356A priority patent/CN100382019C/zh
Priority to KR1020040083928A priority patent/KR101046034B1/ko
Publication of JP2005122623A publication Critical patent/JP2005122623A/ja
Application granted granted Critical
Publication of JP4606009B2 publication Critical patent/JP4606009B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Description

この発明は、複合プログラムに関し、特にたとえばファームウェアのようなプログラムを更新するための複合プログラムに関する。この発明はまた、プログラム処理装置に関し、特にたとえば上述の複合プログラムを実行するプログラム処理装置に関する。
従来のこの種の装置では、ファームウェアを更新するにあたっては、装置をケーブルなどでPC(Personal Computer)と接続し、PC側のアプリケーションソフトウェアを操作する必要があった。
しかし、従来技術では、ファームウェアをPCから装置に転送する途中で、PCが別のアプリケーションソフトウェアの影響でハングアップしたり、装置への電源供給が遮断されたりすると、ファームウェアの更新に失敗してしまう。この場合、オペレータはファームウェアの更新操作を最初からやり直す必要があり、手間がかかる。
それゆえに、この発明の主たる目的は、簡単な操作でプログラムを正しく更新することができる、複合プログラムまたはプログラム処理装置を提供することである。
第1の発明のプログラム処理装置は、所定プログラムを含む複数のプログラムに従う処理を実行する制御部と、複数のプログラムが格納される第1メモリと、外部装置から出力され、第1メモリに格納されている所定プログラムを更新するための更新プログラムを含む更新ファイルが格納される第2メモリとを備え、制御部は、第1メモリに格納されている所定プログラムを、第2メモリに格納されている更新プログラムに更新させる更新処理の更新要求を受け付ける更新要求受付手段と、機器本体の一部が作動しない非作動状態から作動状態に該機器本体を移行させる移行要求を受け付ける移行要求受付手段と、更新要求受付手段によって更新要求を受け付けると更新処理を実行し、第2メモリに格納されている更新ファイルの付加情報エリアに所定データを書き込む第1更新制御手段と、更新処理が完了すると第2メモリに格納されている更新ファイルを削除し、該更新処理が正常に完了する前に機器本体が作動状態から非作動状態に移行すると該更新ファイルを保持する削除保持制御手段と、非作動状態時に移行要求受付手段によって移行要求を受け付けると、第2メモリに格納されている更新ファイルの付加情報エリアに所定データが存在するか否かを判別し、該所定データが存在すると判別された場合には、更新要求を受け付けずとも更新処理を実行する第2更新制御手段を備えることを特徴とする。
第2の発明のプログラム処理装置は、第1の発明のプログラム処理装置に従属し、制御部は、第2更新制御手段において付加情報エリアに所定データが存在せず、かつ不当なデータが検出されると、判別結果を報知する報知手段を更に備えることを特徴とする。
この発明によれば、第1数値を示す数値情報が割り当てられた更新データがメモリに存在するときは、更新操作に応答して第2プログラムが更新される。更新処理が適切に実行されると、更新データがメモリから削除される。しかし、更新途中の電源遮断などによって更新処理が適切に実行されなかったときは、更新データは削除されることなくメモリに残る。この更新データに割り当てられた数値情報は、第2数値を示す。電源が再度投入されると、更新処理は更新命令を待つことなく実行される。これによって、オペレータは、簡単な操作で第2プログラムを更新することができる。
この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
図1を参照して、この実施例のICレコーダ10は、オーディオ再生機能,オーディオ記録機能,マイクロフォン機能,および外部ストレージ機能を備える。オーディオ再生機能およびオーディオ記録機能は、ICレコーダ10単独で実現される機能であり、マイクロフォン機能および外部ストレージ機能は、ICレコーダ10とPC40とによって実現される機能である。
キー入力装置30によってオーディオ再生機能が選択されると、CPU14は、DSP(Digital Signal Processor)24を再生モードに設定し、NAND型のフラッシュメモリ16に記憶されたオーディオファイルをDSP24に与える。DSP24は、与えられたオーディオファイルに含まれるオーディオデータを復号し、復号されたオーディオ信号をスピーカ26から出力する。
キー入力装置30によってオーディオ記録機能が選択されると、CPU14は、DSP24を記録モードに設定する。DSP24は、マイクロフォン28から取り込まれたオーディオ信号を符号化し、符号化されたオーディオデータをCPU14に与える。CPU14は、与えられたオーディオデータを含むオーディオファイルをフラッシュメモリ16上に作成する。
ICレコーダ10がUSBコントローラ12によってPC40と接続された状態で、キー入力装置30によってマイクロフォン機能が選択されると、CPU14はDSP24をマイクロフォンモードに設定する。DSP24は、マイクロフォン28から取り込まれたオーディオ信号を符号化し、符号化されたオーディオデータをCPU14に与える。CPU14は、与えられたオーディオデータをUSBコントローラ12を通してPC40に出力する。
ICレコーダ10がUSBコントローラ12によってPC40と接続された状態で、キー入力装置30によって外部ストレージ機能が選択されると、CPU14は、PC40からのアクセス要求に従ってフラッシュメモリ16にアクセスする。アクセス要求がフラッシュメモリ16へのファイルの書き込みを要求するものであれば、CPU14は、PC40から同時に与えられるファイルをフラッシュメモリ16に書き込む。また、アクセス要求がフラッシュメモリ16からのファイルの読み出しを要求するものであれば、CPU14は、フラッシュメモリ16から所望のファイルを読み出し、読み出されたファイルをPC40に転送する。
上述の機能の選択に関係なく、CPU14は、複数のメニュー項目をRAM22に形成されたレジスタ22rに図2に示す要領で設定する。図2によれば、“ファイル分割”,“録音モード”,“録音感度”,“BEEP設定”,“VAS設定”,“カレンダ設定”,“タイマ設定”,“USBマイク設定”,“フォーマット”および“コントラスト”の項目が設定される。CPU14は、このようなメニュー項目をLCD20にスクロール表示する。
なお、PC40からフラッシュメモリ16に転送されるファイルの1つにファームアップファイルがある。このファイルは、NOR型のフラッシュメモリ18のファームプログラムエリア18fmに記憶されたファームプログラム(ファームウェア)を更新するためのファイルである。このファームアップファイルがフラッシュメモリ16に格納されているときは、レジスタ22rに“ファームアップ”の項目が追加され、この項目もまたLCD20に表示される。
CPU14は、電源が投入されたとき、フラッシュメモリ18のブートプログラムエリア18btに記憶されたブートプログラムに従って図3に示すフロー図を処理する。さらに、このブートブログラムによってファームプログラムエリア18fmのファームプログラムが起動されたとき、このファームプログラムに従って図4に示すフロー図を処理する。
まず図3を参照して、ステップS1ではファームアップファイルがフラッシュメモリ16に記憶されているかどうか判断する。NOであれば、ステップS3の起動処理を経て処理を実行する。YESであればステップS5に進み、ファームアップファイルが存在する旨を通知する第1通知を発行する。ステップS7ではファームアップファイルの先頭コードが“1”であるか否かを判別し、YESであればステップS15でファームアップ処理を実行する。この結果、ファームプログラムエリア18fmに記憶されたファームプログラムが、ファームアップファイルに格納されたファームプログラムによって更新される。ファームアップ処理が完了すると、フラッシュメモリ16に記憶されたファームアップファイルをステップS17で削除し、ファームアップファイルが削除された旨の通知である第2通知を発行する。処理は、第2通知の発行後に終了する。
ステップS7でNOと判断されたときは、ステップS9で起動処理を実行する。ステップS11ではファームアップ命令の有無を判断し、ステップS13では削除命令の有無を判断する。ファームアップ命令が発行されたときはステップS11からステップS15に進み、削除命令が発行されたときはステップS13からステップS17に進む。いずれの命令も発行されないときは、ステップS11およびS13の処理を繰り返す。
ファームプログラムは、図3に示すステップS3またはS9の起動処理によって起動する。これによって、図4に示すフロー図に従う処理が開始される。
まずステップS21で初期化処理を実行する。これによって、図2に示す11個のメニュー項目がレジスタ22rに設定され、このメニュー項目がLCD20に表示される。ステップS23では、第1通知の発行の有無を判断する。NOと判断されたときは直接ステップS27に進み、YESと判断されたときはステップS25の処理を経てステップS27に進む。ステップS25では、“ファームアップ”の項目を図2に示す要領でレジスタ22rに追加する。このため、LCD20に表示されるメニュー項目にも、“ファームアップ”が追加される。
ステップS27では、レジスタ22rの“ファームアップ”を選択する操作つまりファームアップ操作が行われたかどうかを判断する。ここでNOと判断されると、ステップS29で対応する処理を実行する。レジスタ22rに設定された“ファームアップ”以外の項目が選択されたときは、選択された項目に対応する処理がここで実行される。処理が完了すると、ステップS27に戻る。
ファームアップ実行操作が行われたときは、ステップS31に進み、フラッシュメモリ16からファームアップファイルのヘッダ値を検出する。ステップS33では、検出されたヘッダ値が正当であるか否かを判断する。正当と判断されたときは、ステップS35でファームアップ命令を発行し、ステップS37でこのファームアップファイルの先頭コードを“0”から“1”に書き換える。一方、ヘッダ値が不当と判断されたときは、ステップS39でエラーメッセージを出力する。これに対して削除操作が行われると、ステップS41でYESと判断し、ステップS43で削除命令を発行する。
ステップS37またはS43の処理が完了すると、第2通知の有無をステップS45で判断する。YESと判断されると、ステップS47で“ファームアップ”の項目をレジスタ22rから削除し、その後ステップS27に戻る。ステップS47の処理によって、LCD20上の“ファームアップ”の項目も削除される。
以上の説明から分かるように、先頭コードが“0”を示すファームアップファイルがフラッシュメモリ16に存在するときは、キー入力装置30によるファームアップ操作に応答してファームプログラムが更新される(S27, S35, S15)。更新処理つまりファームアップ処理が適切に実行されると、ファームアップファイルがフラッシュメモリ16から削除される(S17)。しかし、更新途中の電源遮断などによってファームアップ処理が適切に実行されなかったときは、ファームアップファイルは削除されることなくフラッシュメモリ16に残る。ファームアップ操作に応じた先頭コードの書き換え処理(S37)によって、このファームアップファイルに割り当てられた先頭コードは“1”を示す。したがって、電源が再度投入されたとき、ファームアップ処理はファームアップ命令を待つことなく実行される(S7, S15)。これによって、オペレータは、簡単な操作でファームプログラムを更新することができる。
この発明の一実施例の構成を示すブロック図である。 図1実施例に適用されるCPUの動作の一部を示すブロック図である。 図1実施例に適用されるCPUの動作の他の一部を示すブロック図である。 図1実施例に適用されるレジスタの構成を示す図解図である。
符号の説明
10 …ICレコーダ
14 …CPU
16,18 …フラッシュメモリ
20 …LCD
24 …DSP

Claims (2)

  1. 所定プログラムを含む複数のプログラムに従う処理を実行する制御部と、
    前記複数のプログラムが格納される第1メモリと、
    外部装置から出力され、前記第1メモリに格納されている所定プログラムを更新するための更新プログラムを含む更新ファイルが格納される第2メモリとを備え
    前記制御部は、
    前記第1メモリに格納されている前記所定プログラムを、前記第2メモリに格納されている前記更新プログラムに更新させる更新処理の更新要求を受け付ける更新要求受付手段と、
    機器本体の一部が作動しない非作動状態から作動状態に該機器本体を移行させる移行要求を受け付ける移行要求受付手段と、
    前記更新要求受付手段によって前記更新要求を受け付けると前記更新処理を実行し、前記第2メモリに格納されている更新ファイルの付加情報エリアに所定データを書き込む第1更新制御手段と、
    前記更新処理が完了すると前記第2メモリに格納されている更新ファイルを削除し、該更新処理が正常に完了する前に前記機器本体が前記作動状態から前記非作動状態に移行すると該更新ファイルを保持する削除保持制御手段と、
    前記非作動状態時に前記移行要求受付手段によって前記移行要求を受け付けると、前記第2メモリに格納されている更新ファイルの付加情報エリアに前記所定データが存在するか否かを判別し、該所定データが存在すると判別された場合には、前記更新要求を受け付けずとも前記更新処理を実行する第2更新制御手段、を備えることを特徴とする、プログラム処理装置。
  2. 前記制御部は、前記第2更新制御手段において前記付加情報エリアに前記所定データが存在せず、かつ不当なデータが検出されると、判別結果を報知する報知手段を更に備えることを特徴とする、請求項1記載のプログラム処理装置。
JP2003359448A 2003-10-20 2003-10-20 プログラム処理装置 Expired - Fee Related JP4606009B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2003359448A JP4606009B2 (ja) 2003-10-20 2003-10-20 プログラム処理装置
CNB2004100850356A CN100382019C (zh) 2003-10-20 2004-10-13 程序的更新方法及程序的更新装置
KR1020040083928A KR101046034B1 (ko) 2003-10-20 2004-10-20 복합 프로그램이 기록된 기록 매체 및 프로그램 처리 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003359448A JP4606009B2 (ja) 2003-10-20 2003-10-20 プログラム処理装置

Publications (2)

Publication Number Publication Date
JP2005122623A JP2005122623A (ja) 2005-05-12
JP4606009B2 true JP4606009B2 (ja) 2011-01-05

Family

ID=34615673

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003359448A Expired - Fee Related JP4606009B2 (ja) 2003-10-20 2003-10-20 プログラム処理装置

Country Status (3)

Country Link
JP (1) JP4606009B2 (ja)
KR (1) KR101046034B1 (ja)
CN (1) CN100382019C (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007047993A (ja) * 2005-08-09 2007-02-22 Rohm Co Ltd 制御回路、それを用いた電子機器およびファームウェアの更新方法
CN100430894C (zh) * 2005-10-28 2008-11-05 深圳Tcl新技术有限公司 具有断电保护的电视系统软件更新方法
US7519754B2 (en) * 2005-12-28 2009-04-14 Silicon Storage Technology, Inc. Hard disk drive cache memory and playback device
US7962801B2 (en) * 2008-10-15 2011-06-14 Silicon Motion, Inc. Link table recovery method
CN105700903A (zh) * 2014-11-28 2016-06-22 中兴通讯股份有限公司 一种用户终端的升级方法和用户终端

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000137608A (ja) * 1998-08-28 2000-05-16 Canon Inc 情報処理装置、プログラム更新方法および記憶媒体
JP2002014833A (ja) * 2000-06-30 2002-01-18 Konica Corp フラッシュメモリの書き換え方式、制御装置、画像形成装置及びプログラム更新方式
JP2002041314A (ja) * 2000-07-25 2002-02-08 Ricoh Co Ltd プログラム書き換え装置
JP2002099441A (ja) * 2000-09-26 2002-04-05 Mitsubishi Electric Corp 通信端末装置及び通信端末装置の動作方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07200418A (ja) * 1993-12-28 1995-08-04 Hitachi Maxell Ltd データ記憶装置ならびにその制御方法
JP3361229B2 (ja) * 1996-06-26 2003-01-07 松下電送システム株式会社 通信制御装置
US6470495B1 (en) * 1996-09-06 2002-10-22 Ncr Corporation Satellite control of electronic memory devices
US6594723B1 (en) * 1999-09-07 2003-07-15 Microsoft Corporation Method and apparatus for updating data in nonvolatile memory
US6536038B1 (en) * 1999-11-29 2003-03-18 Intel Corporation Dynamic update of non-upgradeable memory
US7386846B2 (en) * 2001-07-26 2008-06-10 Kyocera Wireless Corp. System and method for the management of wireless communications device system software downloads in the field
US7299463B2 (en) * 2001-09-28 2007-11-20 Intel Corporation Method for atomically updating a plurality of files

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000137608A (ja) * 1998-08-28 2000-05-16 Canon Inc 情報処理装置、プログラム更新方法および記憶媒体
JP2002014833A (ja) * 2000-06-30 2002-01-18 Konica Corp フラッシュメモリの書き換え方式、制御装置、画像形成装置及びプログラム更新方式
JP2002041314A (ja) * 2000-07-25 2002-02-08 Ricoh Co Ltd プログラム書き換え装置
JP2002099441A (ja) * 2000-09-26 2002-04-05 Mitsubishi Electric Corp 通信端末装置及び通信端末装置の動作方法

Also Published As

Publication number Publication date
JP2005122623A (ja) 2005-05-12
CN100382019C (zh) 2008-04-16
KR20050037977A (ko) 2005-04-25
KR101046034B1 (ko) 2011-07-01
CN1609798A (zh) 2005-04-27

Similar Documents

Publication Publication Date Title
US8453139B2 (en) Conditional startup process for a game apparatus and information processing apparatus
JP4671198B2 (ja) 情報処理装置
US20060107071A1 (en) Method and system for updating firmware stored in non-volatile memory
US20070038801A1 (en) Control circuit, electronic device using the same, and firmware update method
JP2005228293A (ja) 情報処理装置、およびプログラム
JP2009086955A (ja) カメラ装置およびその制御方法
KR100472459B1 (ko) 기능용 드라이버 설치 방법 및 장치
JP4606009B2 (ja) プログラム処理装置
WO2000054133A1 (fr) Dispositif de traitement de donnees, procede de sauvegarde/chargement de donnees et support de memorisation de donnees
CN100492291C (zh) 具有即刻开启功能的电脑系统及其处理方法
JP2006338450A (ja) 電子機器、情報処理システム及び情報処理方法
JP2008250992A (ja) 音データ処理装置
JP4076113B2 (ja) 電子制御装置
JPWO2009016708A1 (ja) コンピュータ装置、コンピュータ起動処理方法およびコンピュータ起動処理プログラム
KR20090021695A (ko) 플래쉬 메모리 롤백 시스템 및 그 방법
JP2008009494A (ja) 画像形成装置
JP3292448B2 (ja) アプリケーションプログラムのアンインストール方法及びコンピュータ
JP2003288213A (ja) ブートプログラム記憶装置、電子機器のブートプログラム記憶方法
JP2001331328A (ja) 情報処理装置、情報処理方法
JP2010128605A (ja) 情報記憶装置、データ記憶方法、およびプログラム
JP2011039825A (ja) ファームウェア更新方法及びファームウェア更新装置
JP5112559B2 (ja) 記録再生装置及び方法
JP2001331280A (ja) 情報処理装置、情報処理方法
JP2000305768A (ja) システムソフトウェア書換方法
JP2002007179A (ja) 情報処理装置、ファイルシステム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20060124

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090324

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100316

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100514

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100907

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101005

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131015

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees