JP2008102761A - Method for updating embedded firmware - Google Patents
Method for updating embedded firmware Download PDFInfo
- Publication number
- JP2008102761A JP2008102761A JP2006285057A JP2006285057A JP2008102761A JP 2008102761 A JP2008102761 A JP 2008102761A JP 2006285057 A JP2006285057 A JP 2006285057A JP 2006285057 A JP2006285057 A JP 2006285057A JP 2008102761 A JP2008102761 A JP 2008102761A
- Authority
- JP
- Japan
- Prior art keywords
- firmware
- function
- ram
- mask rom
- address information
- 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
Links
Images
Abstract
Description
この発明は組み込み型の情報処理装置においてファームウェアの不具合を解消したり機能を変更・追加したりするためのファームウェア更新技術に関する。 The present invention relates to a firmware update technique for solving a malfunction of firmware or changing / adding a function in an embedded information processing apparatus.
組み込み型の情報処理装置は、ファームウェアや固定データを記憶したマスクROM(Read Only Memory)、プログラム実行中に参照する変数などを記憶するRAM(Random Access Memory)、ファームウェアに基づいてデータの処理や周辺機能の制御を行うCPU(Central Processor Unit)を備えているものが一般的である。この組み込み型の情報処理装置でファームウェアに不具合が生じたり、機能を変更したり新規に追加する場合にはマスクROMに記憶されているファームウェア(プログラム)を更新する必要がある。プログラムを更新する方法として、組み込み型の情報処理装置そのものをプログラムを更新した情報処理装置に物理的に交換する方法が考えられる。しかし、組み込み型の情報処理装置は一般的にはLSI(Large Scale Integrated circuit)になっており、多大なコストと労力が必要であるため通常は行われない。特に携帯電話などに搭載される組み込み型のLSIは膨大な数が生産されるため非現実的である。 Embedded information processing devices include mask ROM (Read Only Memory) that stores firmware and fixed data, RAM (Random Access Memory) that stores variables that are referenced during program execution, data processing and peripherals based on firmware Generally, a CPU (Central Processor Unit) that controls functions is provided. When a malfunction occurs in the firmware, the function is changed, or a new addition is made in this embedded information processing apparatus, it is necessary to update the firmware (program) stored in the mask ROM. As a method of updating the program, a method of physically replacing the built-in information processing apparatus itself with an information processing apparatus that has updated the program can be considered. However, the built-in information processing apparatus is generally an LSI (Large Scale Integrated circuit), and is not usually performed because it requires a great deal of cost and labor. In particular, an embedded LSI mounted on a mobile phone or the like is unrealistic because an enormous number of LSIs are produced.
上記問題を解決するファームウェアの更新方法として、RAMの空き領域あるいは特定の領域に更新すべきプログラムモジュールとそのプログラムモジュールが書き込まれるRAMのアドレス情報を書き込み、RAM上に書き込まれた更新プログラムモジュールが実行されるようにして不具合を解消したり機能を追加したりする方法が、例えば特開平5−73292号公報(特許文献1)や特開平6−44078号公報(特許文献2)に記載のように従来から提案されている。 As a firmware update method for solving the above problem, a program module to be updated in a free area or a specific area of RAM and address information of the RAM in which the program module is written are written, and the update program module written in the RAM executes As described in Japanese Patent Application Laid-Open No. 5-73292 (Patent Document 1) and Japanese Patent Application Laid-Open No. 6-44078 (Patent Document 2), for example, a method for solving the problem and adding a function is described. It has been proposed in the past.
しかし、特許文献1の特開平5−73292号公報に記載のものは、ファームウェアの各モジュールが実行される時に修正されたファームウェアがRAMに配置されているかを確認するように構成されているので、各ファームウェアモジュールの先頭に更新したファームウェアが存在するか否かを確認するための処理を予め組み込んでおく必要があるという問題点がある。
また、特許文献2の特開平6−44078号公報に記載のものはマスクROMの内容を全てRAM上にコピーしてから実行するものであり、マスクROMが交換されたことを検知してRAMに更新したプログラムモジュールを書き込むように構成されているので、マスクROM交換を検知する特別なハードウェアが必要であり、かつマスクROM、RAM、CPUが一体化されたLSIでは適用できないという問題点がある。
However, the one described in Japanese Patent Application Laid-Open No. 5-73292 of Patent Document 1 is configured to check whether the modified firmware is arranged in the RAM when each module of the firmware is executed. There is a problem that it is necessary to incorporate in advance a process for checking whether or not there is updated firmware at the head of each firmware module.
Further, the one described in Japanese Patent Laid-Open No. 6-44078 of
この発明は上記のような問題点を解決するためになされたもので、ファームウェアを更新するための特別なファームウェアやハードウェアが必要なく、簡易な構成でマスクROMに書き込まれているファームウェアを更新したり新たなファームウェア機能を追加したりすることが可能な組み込みファームウェアの更新方法を得ることを目的とする。 The present invention has been made to solve the above-described problems, and does not require special firmware or hardware for updating the firmware, and updates the firmware written in the mask ROM with a simple configuration. It is an object of the present invention to obtain an embedded firmware update method capable of adding a new firmware function.
この発明に係る組み込みファームウェアの更新方法は、
ファームウェアとファームウェアで参照する固定データおよびメインルーチン以外の全関数のアドレス情報が格納されたマスクROMと、マスクROMに格納されている関数のアドレス情報がコピーされるRAMと、マスクROMのファームウェアを実行するCPU(Central Processor Unit)と、外部との通信を行う通信手段を備え、
起動時はマスクROMに格納されている関数のアドレス情報をRAMにコピーし、CPUがマスクROMのファームウェアを実行する時の関数コールはRAMにコピーされた関数のアドレス情報に基づいて動作するように構成され、ファームウェアは通信手段から入力されたデータをRAM上の任意のアドレスに書き込む機能を備えた組み込み型の情報処理装置において、
マスクROMのファームウェアを変更、あるいはファームウェアを追加する場合は、外部からの修正されたファームウェアあるいは追加するファームウェアを上記通信手段を介してRAMに書き込むとともにRAMにコピーされている該当関数のアドレス情報を修正または追加するファームウェアが新たに書き込まれたRAMのアドレス情報に書き換えるものである。
An embedded firmware update method according to the present invention includes:
Executes firmware, mask ROM that stores the address information of all functions other than the main data and fixed data referenced by the firmware and firmware, RAM that copies the address information of the functions stored in the mask ROM, and mask ROM firmware CPU (Central Processor Unit) and communication means for communicating with the outside,
The function address information stored in the mask ROM is copied to the RAM at startup, and the function call when the CPU executes the mask ROM firmware is operated based on the function address information copied to the RAM. In a built-in information processing apparatus having a function for writing data input from a communication means to an arbitrary address on a RAM.
When changing the firmware of the mask ROM or adding the firmware, the modified firmware from the outside or the firmware to be added is written to the RAM via the communication means and the address information of the corresponding function copied to the RAM is corrected. Alternatively, the firmware to be added is rewritten to the RAM address information newly written.
この発明の組み込みファームウェアの更新方法は、その方法が使用される組み込み型の情報処理装置の起動時にマスクROM上に配置されている関数アドレステーブルをRAMにコピーし、ファームウェア内の関数を更新したり、ファームウェアの機能を追加する場合は、RAMに更新したファームウェアあるいは追加ファームウェアを書き込むとともにRAMにコピーした関数アドレステーブルの内容を書き換え、RAMへの書き込みは通信手段を介して行うように構成されているので、ファームウェアを更新するための特別なファームウェアやハードウェアが必要なく、簡易な構成でマスクROMに書き込まれているファームウェアを更新したり新たなファームウェア機能を追加したりすることが可能な組み込みファームウェアの更新方法を得ることができるという効果がある。 The embedded firmware update method according to the present invention copies the function address table located on the mask ROM to the RAM when the embedded information processing apparatus in which the method is used is activated, and updates the function in the firmware. When a firmware function is added, the updated firmware or additional firmware is written into the RAM, the contents of the function address table copied to the RAM are rewritten, and writing to the RAM is performed via communication means. Therefore, there is no need for special firmware or hardware to update the firmware, and it is possible to update the firmware written in the mask ROM or add new firmware functions with a simple configuration. How to update There is an effect that can be obtained.
実施の形態1.
図1はこの発明の実施の形態1によるファームウェアの更新方法が適用される組み込み型の情報処理装置の構成を示すブロック図である。一般的に、このような組み込み型の情報処理装置はLSIとして構成されている。
図1において、1はCPU、2はマスクROM、3はRAM、4は外部に接続されるホストコントローラなどとデータの通信を行う通信手段である。
通信手段4は外部のホストコントローラと組み込み型情報処理装置との間のコマンドインタフェースを実現するために設けられたものであり、組み込み型情報処理装置は通信手段4を介して入力されるコマンドに基づいて各種処理を実行する。
マスクROM2には3つの領域が存在し、2aにはファームウェア本体が格納され、2bにはファームウェアのメイン処理以外の全関数のマスクROM上でのアドレス情報をテーブル化した関数アドレステーブルが格納され、2cには変数の初期値などの固定データが格納されている。
RAM3も同じく3つの領域に分けられ、ファームウェアの実行時に変数などを格納するデータ領域3a、関数アドレステーブルのコピーを格納するための関数アドレステーブルコピー領域3b、未使用状態である空き領域3cが存在する。
Embodiment 1 FIG.
FIG. 1 is a block diagram showing the configuration of an embedded information processing apparatus to which a firmware update method according to Embodiment 1 of the present invention is applied. Generally, such an embedded information processing apparatus is configured as an LSI.
In FIG. 1, 1 is a CPU, 2 is a mask ROM, 3 is a RAM, 4 is a communication means for communicating data with an externally connected host controller or the like.
The communication means 4 is provided to realize a command interface between an external host controller and the embedded information processing apparatus, and the embedded information processing apparatus is based on a command input via the communication means 4. Various processes.
The
The
このように構成された組み込み型の情報処理装置は、電源投入後の起動時においてマスクROM2の領域2bに格納されている関数アドレステーブルをRAM3の関数アドレステーブルコピー領域3bにコピーする。この処理は、一般的にリセット解除後に必ず実行されるファームウェアのスタートアップ処理に実装しておけばよい。そして、メイン処理から各関数をコールする場合には、CPU1はRAM3の関数アドレステーブルコピー領域3bに格納されている関数のアドレス情報を参照して関数そのものを実行する。このような動作は、各関数を間接アドレッシングするようにファームウェアを実装しておけば、特段の手段を設けなくても一般的なCPUで実現することが可能である。
The built-in information processing apparatus configured as described above copies the function address table stored in the
次にこの発明の実施の形態1の組み込み型の情報処理装置において、一例として関数Aを更新する場合の方法について図2を参照しながら説明する。
まず、ユーザは関数Aの処理内容を更新した関数A'を作成し.用意する。
次にユーザは関数A'をRAM3の空き領域3cのどの領域に書き込むかを決定する。
次にホストコントローラが通信手段4を介して関数A'をRAM3の決定された空き領域3cに書き込む。
ホストコントローラが通信手段4を介して関数アドレステーブルコピー領域3bに記憶されている関数Aのアドレス値、即ち、マスクROM上に記憶されていた元々の関数Aのアドレス値を、関数A'が書き込まれたRAM上のアドレス値に書き換える。
通信手段4を介してRAM上の任意のアドレスに書き込む動作は、書き込みアドレス、書き込むデータ、書き込むデータ数などを指定するコマンドを設け、そのコマンドに対応した処理をファームウェアに実装しておけば容易に実現することが可能である。
Next, as an example, a method for updating the function A in the built-in information processing apparatus according to the first embodiment of the present invention will be described with reference to FIG.
First, the user creates a function A ′ by updating the processing contents of the function A. prepare.
Next, the user determines in which area of the
Next, the host controller writes the function A ′ into the determined
The function A ′ writes the address value of the function A stored in the function address
The operation of writing to an arbitrary address on the RAM via the communication means 4 is easy if a command for specifying the write address, the data to be written, the number of data to be written, etc. is provided and the processing corresponding to the command is implemented in the firmware. It is possible to realize.
このようにすることで、次にメインルーチンから関数Aがコールされると、関数Aの代わりに関数A'が実行されるようになる。
なお、更新したファームウェアコードのRAM3への書き込みと関数アドレステーブルコピー領域3bの変更をホストコントローラから実行するタイミングは、起動後に通信手段4が有効になった直後でも良いし、更新する関数の機能を使用する直前でも良く、組み込み型の情報処理装置自身が関与する必要はない。
By doing so, the next time function A is called from the main routine, function A ′ is executed instead of function A.
The timing for executing the writing of the updated firmware code to the
以上は、関数の処理内容を変更する場合の方法について説明したが、ファームウェアに機能を追加することも可能である。一例として関数Aの前後に新たなファームウェア処理を追加する場合の方法について、図3を参照しながら説明する。
まず、ユーザは新たに追加するファームウェア処理と関数Aのコール処理を含んだ関数Cを作成する。新たに追加するファームウェア処理は、関数Aの前処理として組み込んでも良いし、後処理として組み込んでも良い。
次にユーザは関数CをRAM3の空き領域3cのどの領域に書き込むかを決定する。
次にホストコントローラが通信手段4を介して関数CをRAM3の空き領域3cに書き込む。
ホストコントローラが通信手段4を介して関数アドレステーブルコピー領域3bに記憶された関数Aのアドレス値、即ち、マスクROM上に記憶されていた元々の関数Aのアドレス値を、関数Cが書き込まれたRAM上のアドレス値に書き換える。
このようにすることで、次にメインルーチンから関数Aがコールされるタイミングで、関数Cが実行されることにより新たに追加した機能と関数Aが実行されるようになる。
The method for changing the processing contents of the function has been described above, but it is also possible to add a function to the firmware. As an example, a method for adding new firmware processing before and after the function A will be described with reference to FIG.
First, the user creates a function C including newly added firmware processing and function A call processing. Newly added firmware processing may be incorporated as pre-processing of the function A or post-processing.
Next, the user determines in which area of the
Next, the host controller writes the function C into the
The function C is written by the host controller via the communication means 4 with the address value of the function A stored in the function address
By doing so, the newly added function and the function A are executed by executing the function C at the next timing when the function A is called from the main routine.
以上のように、実施の形態1の組み込み型の情報処理装置におけるファームウェアの更新方法は、起動時にマスクROM上に配置されている関数アドレステーブルをRAMにコピーし、ファームウェア内の関数を更新したり、ファームウェアの機能を追加する場合は、RAMに更新したファームウェアあるいは追加ファームウェアを書き込むとともにRAMにコピーした関数アドレステーブルの内容を書き換える。なお、RAMへの書き込みはホストコントローラからこのホストコントローラとのコマンドインタフェースとして設けられている通信手段を介して行うように構成されているので、ファームウェアを更新するための特別なファームウェアやハードウェアが必要なく、簡易な構成でマスクROMに書き込まれているファームウェアを更新したり新たなファームウェア機能を追加したりすることが可能な組み込みファームウェアの更新方法を得ることができるという効果がある。 As described above, the firmware update method in the embedded information processing apparatus according to the first embodiment copies the function address table arranged on the mask ROM at startup to update the function in the firmware. When a firmware function is added, the updated firmware or additional firmware is written into the RAM and the contents of the function address table copied to the RAM are rewritten. Since writing to the RAM is performed from the host controller via a communication means provided as a command interface with the host controller, special firmware and hardware for updating the firmware are required. In addition, there is an effect that it is possible to obtain an embedded firmware update method capable of updating the firmware written in the mask ROM or adding a new firmware function with a simple configuration.
実施の形態2.
図4はこの発明の実施の形態2によるファームウェアの更新方法が適用される組み込み型の情報処理装置の構成を示すブロック図である。実施の形態1と同一の手段は同一の番号で示し、その説明を省略する。図4において、5はNVRAM(Non Voltage RAM)、6はRAMである。
NVRAM5は、他の構成部材とは別の専用電源系統が割り当てられたバッテリバックアップのRAMで、専用電源が投入されていれば書き込まれたデータを保持できるので、少ない消費電力でデータを保持しておきたい場合などに用いられることが多い。NVRAM5は3つの領域に分けられ、ファームウェア実行時に変数などを格納するデータ領域5a、関数アドレステーブルのコピーを格納するための関数アドレステーブルコピー領域5b、未使用状態である空き領域5cが存在する。
なお、この実施の形態2では、RAM6はデータ領域としてのみ使用される。
FIG. 4 is a block diagram showing the configuration of an embedded information processing apparatus to which the firmware updating method according to the second embodiment of the present invention is applied. The same means as those of the first embodiment are indicated by the same numbers, and the description thereof is omitted. In FIG. 4, 5 is a NVRAM (Non Voltage RAM), and 6 is a RAM.
In the second embodiment, the
このように構成された実施の形態2の組み込み型の情報処理装置は、第1回目の電源投入後の起動時においてマスクROM2の領域2bに格納されている関数アドレステーブルをNVRAM5の関数アドレステーブルコピー領域5bにコピーする。そして、メイン処理から各関数をコールする場合には、CPU1はNVRAM5の関数アドレステーブルコピー領域5bに格納されている関数のアドレス情報を参照して関数そのものを実行する。
The built-in information processing apparatus of the second embodiment configured as described above copies the function address table stored in the
次にこの発明の実施の形態2における組み込み型の情報処理装置において、一例として関数Aを更新する場合の方法について図5を参照しながら説明する。
まず、ユーザは関数Aの処理内容を更新した関数A'を作成する。次にユーザは関数A'をNVRAM5の空き領域5cのどの領域に書き込むかを決定する。次にホストコントローラにより通信手段4を介して関数A'をNVRAM5の空き領域5cに書き込むとともに、関数アドレステーブルコピー領域5bに記憶されていた元々の関数AのマスクROM上のアドレス値を、関数A'が書き込まれたNVRAM上のアドレス値に書き換える。この動作は第1回目の起動直後に行う。このようにすることで、次にメインルーチンから関数Aがコールされると、関数Aの代わりに関数A'が実行されるようになる。
Next, as an example, a method for updating function A in the embedded information processing apparatus according to
First, the user creates a function A ′ in which the processing content of the function A is updated. Next, the user determines in which area of the
次にファームウェアに機能を追加する方法の一例として関数Aの前後に新たなファームウェア処理を追加する場合について説明する。
まず、ユーザは新たに追加するファームウェア処理と関数Aのコール処理を含んだ関数Cを作成する。新たに追加するファームウェア処理は、関数Aの前処理として組み込んでも良いし、後処理として組み込んでも良い。
次にユーザは関数CをNVRAM5の空き領域5cのどの領域に書き込むかを決定する。
次にホストコントローラが通信手段4を介して関数CをNVRAM5の空き領域5cに書き込む。
ホストコントローラが通信手段4を介して関数アドレステーブルコピー領域5bに記憶された関数Aのアドレス値、即ち、マスクROM上に記憶されていた元々の関数Aのアドレス値を、関数Cが書き込まれたNVRAM5上のアドレス値に書き換える。
このようにすることで、次にメインルーチンから関数Aがコールされるタイミングで、関数Cが実行されることになり新たに追加した機能と関数Aが実行されるようになる。
Next, a case where a new firmware process is added before and after the function A will be described as an example of a method for adding a function to firmware.
First, the user creates a function C including newly added firmware processing and function A call processing. Newly added firmware processing may be incorporated as pre-processing of the function A or post-processing.
Next, the user determines in which area of the
Next, the host controller writes the function C into the
The function C is written by the host controller through the communication means 4 with the address value of the function A stored in the function address
By doing so, the function C is executed at the next timing when the function A is called from the main routine, and the newly added function and the function A are executed.
次回に組み込み型の情報処理装置を起動する場合は、NVRAM5のデータをチェックし、データが保持されていれば、更新したファームウェアコードのNVRAM5への書き込みと関数アドレステーブルコピー領域5bの変更は行わない。NVRAM5のデータのチェックは、ホストコントローラからコマンド経由でNVRAM5のデータを読み出して実施しても良いし、組み込み型の情報処理装置のファームウェアのスタートアップにデータをチェックする処理を組み込んでおく方法でも良い。
When the embedded information processing apparatus is started next time, the data in the
以上のように、実施の形態2の組み込み型の情報処理装置におけるファームウェアの更新方法は、起動時にマスクROM上に配置されている関数アドレステーブルをNVRAMにコピーし、ファームウェア内の関数を更新したり、ファームウェアの機能を追加する場合は、NVRAMに更新したファームウェアあるいは追加ファームウェアを書き込むとともにNVRAMにコピーした関数アドレステーブルの内容を書き換える。NVRAMへの書き込みはホストコントローラからこのホストコントローラとのコマンドインタフェースとして設けられている通信手段を介して行うように構成されているので、ファームウェアを更新するための特別なファームウェアやハードウェアが必要なく、簡易な構成でマスクROMに書き込まれているファームウェアを更新したり新たなファームウェア機能を追加したりすることが可能で、かつ起動するための時間も短い組み込みファームウェアの更新方法を得ることができるという効果がある。 As described above, the firmware update method in the embedded information processing apparatus according to the second embodiment copies the function address table placed on the mask ROM to NVRAM at the time of startup, and updates the function in the firmware. When a firmware function is added, the updated firmware or additional firmware is written in the NVRAM and the contents of the function address table copied to the NVRAM are rewritten. Since writing to the NVRAM is performed from the host controller via a communication means provided as a command interface with the host controller, no special firmware or hardware for updating the firmware is necessary. The effect that it is possible to update the firmware written in the mask ROM or add a new firmware function with a simple configuration, and to obtain a method for updating the embedded firmware with a short startup time There is.
実施の形態3.
例えばカメラモジュールなどに搭載される組み込み型の情報処理装置では、カメラモジュールの各個体の性能ばらつきを吸収するために製品出荷前にパラメータの調整を行うことが多く、その場合、パラメータ調整用の専用のファームウェアモジュールを実行する必要がある。このようなファームウェアモジュールは、製品出荷後は使用されないため、マスクROM領域に配置するとマスクROM領域を圧迫することになる。
そこで、製品出荷前のパラメータ調整時は、実施の形態1や実施の形態2で説明した手順で調整用のファームウェアモジュールをRAMあるいはNVRAMに配置して実行し、製品出荷後にファームウェアを更新したりファームウェアを追加する場合も、工場出荷前に使用したRAMあるいはNVRAMの空き領域に実施の形態1や実施の形態2で説明した手順を実行するようにすれば、上記問題は解消でき、マスクROM領域を有効に活用することが可能である。
For example, in an embedded information processing device mounted on a camera module or the like, parameters are often adjusted before product shipment in order to absorb variations in performance of each individual camera module. Need to run the firmware module. Since such a firmware module is not used after the product is shipped, if it is arranged in the mask ROM area, the mask ROM area is compressed.
Therefore, at the time of parameter adjustment before product shipment, the firmware module for adjustment is arranged in the RAM or NVRAM and executed according to the procedure described in the first or second embodiment, and the firmware is updated or updated after the product is shipped. If the procedure described in the first or second embodiment is executed in the RAM or NVRAM used before shipment from the factory, the above problem can be solved and the mask ROM area can be added. It can be used effectively.
以上のように、実施の形態3の組み込み型の情報処理装置におけるファームウェアの更新方法では、工場出荷前は、RAMあるいはNVRAMの空き領域にパラメータ調整専用のファームウェアを書き込み、出荷後は、更新ファームウェアや追加ファームウェアを工場出荷前に使用したRAMあるいはNVRAMの空き領域に書き込むように構成しているので、実施の形態1および実施の形態2に示した効果に加え、マスクROM領域には製品出荷後に必要なファームウェアのみを配置できるという効果がある。 As described above, in the firmware updating method in the embedded information processing apparatus according to the third embodiment, the firmware dedicated to parameter adjustment is written in a free area of the RAM or NVRAM before shipment from the factory, and the updated firmware or Since the additional firmware is written to the RAM or NVRAM used before shipment from the factory, the mask ROM area is required after the product is shipped in addition to the effects shown in the first and second embodiments. There is an effect that only the correct firmware can be arranged.
この発明によるファームウェアの更新方法は、例えば、携帯端末や携帯電話等の内蔵モバイルカメラ向け信号処理LSIに適用され、不具合発生時や機能の変更・追加等のためのファームウェアの更新が可能となる。 The firmware update method according to the present invention is applied to, for example, a signal processing LSI for a built-in mobile camera such as a mobile terminal or a mobile phone, and can update the firmware when a malfunction occurs or a function is changed or added.
1;CPU、2;マスクROM、3、6;RAM、4;通信手段、5;NVRAM。 1; CPU, 2; mask ROM, 3, 6; RAM, 4; communication means, 5; NVRAM.
Claims (4)
ファームウェアは通信手段から入力されたデータをRAM上の任意のアドレスに書き込む機能を備え、マスクROMのファームウェアを変更、または追加する場合は、修正されたファームウェアまたは追加するファームウェアを外部から上記通信手段を介してRAMに書き込むとともにRAMにコピーされている該当関数のアドレス情報を修正または追加するファームウェアが新たに書き込まれたRAMのアドレス情報に書き換えることを特徴とする組み込みファームウェアの更新方法。 Executes firmware, mask ROM that stores the address information of all functions other than the main data and fixed data referenced by the firmware and firmware, RAM that copies the address information of the functions stored in the mask ROM, and mask ROM firmware And a communication means for communicating with the outside, the address information of the function stored in the mask ROM is copied to the RAM at startup, and the function call when the CPU executes the firmware of the mask ROM is RAM A firmware update method for an embedded information processing apparatus configured to operate based on address information of a function copied to
The firmware has a function of writing data input from the communication means to an arbitrary address on the RAM. When the firmware of the mask ROM is changed or added, the modified firmware or the firmware to be added is externally connected to the communication means. A method for updating embedded firmware, wherein the firmware that corrects or adds the address information of the corresponding function copied to the RAM and the address information of the newly written RAM is rewritten to the address information of the newly written RAM.
ファームウェアは通信手段から入力されたデータをNVRAM上の任意のアドレスに書き込む機能を備え、マスクROMのファームウェアを変更、またはファームウェアを追加する場合は、修正されたファームウェアまたは追加するファームウェアを外部から上記通信手段を介してNVRAMに書き込むとともにNVRAMにコピーされている該当関数のアドレス情報を修正または追加するファームウェアが新たに書き込まれたNVRAMのアドレス情報に書き換えることを特徴とする組み込みファームウェアの更新方法。 Firmware, fixed data referenced by the firmware, and mask ROM storing address information of all functions other than the main routine, NVRAM in which address information of functions stored in the mask ROM is copied, and RAM as a data area , Equipped with a CPU for executing the mask ROM firmware and communication means for communicating with the outside. At startup, the function address information stored in the mask ROM is copied to NVRAM, and the CPU executes the mask ROM firmware. The function call is a firmware update method in an embedded information processing apparatus configured to operate based on address information of a function copied to NVRAM,
The firmware has a function of writing data input from the communication means to an arbitrary address on the NVRAM. When the firmware of the mask ROM is changed or the firmware is added, the modified firmware or the firmware to be added is communicated from the outside. A method for updating embedded firmware, characterized in that the address information of the corresponding function written in the NVRAM and modified or added to the NVRAM is rewritten to the newly written NVRAM address information through the means.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006285057A JP2008102761A (en) | 2006-10-19 | 2006-10-19 | Method for updating embedded firmware |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006285057A JP2008102761A (en) | 2006-10-19 | 2006-10-19 | Method for updating embedded firmware |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008102761A true JP2008102761A (en) | 2008-05-01 |
Family
ID=39437043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006285057A Pending JP2008102761A (en) | 2006-10-19 | 2006-10-19 | Method for updating embedded firmware |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008102761A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015115073A (en) * | 2013-12-09 | 2015-06-22 | ディスペース デジタル シグナル プロセッシング アンド コントロール エンジニアリング ゲゼルシャフト ミット ベシュレンクテル ハフツングdspace digital signal processing and control engineering GmbH | Method for changing software in memory of electronic control unit |
KR20170117500A (en) | 2015-03-06 | 2017-10-23 | 미쓰이 가가쿠 가부시키가이샤 | Cross-linked body and vibration damping material |
US9817652B2 (en) | 2014-10-30 | 2017-11-14 | Samsung Electronics Co., Ltd. | Data storage device and method for reducing firmware update time and data processing system including the device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63311436A (en) * | 1987-06-12 | 1988-12-20 | Nec Corp | Program patch system |
JPH04294183A (en) * | 1991-03-25 | 1992-10-19 | Tohoku Ricoh Co Ltd | Program built-in type device |
JPH09231069A (en) * | 1996-02-22 | 1997-09-05 | Canon Inc | Method and device for information processing |
JPH1040094A (en) * | 1996-07-26 | 1998-02-13 | Okuma Mach Works Ltd | Program controller for firmware |
JP2006155364A (en) * | 2004-11-30 | 2006-06-15 | Funai Electric Co Ltd | Memory management method of flash memory, program for managing flash memory, and recording medium |
-
2006
- 2006-10-19 JP JP2006285057A patent/JP2008102761A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63311436A (en) * | 1987-06-12 | 1988-12-20 | Nec Corp | Program patch system |
JPH04294183A (en) * | 1991-03-25 | 1992-10-19 | Tohoku Ricoh Co Ltd | Program built-in type device |
JPH09231069A (en) * | 1996-02-22 | 1997-09-05 | Canon Inc | Method and device for information processing |
JPH1040094A (en) * | 1996-07-26 | 1998-02-13 | Okuma Mach Works Ltd | Program controller for firmware |
JP2006155364A (en) * | 2004-11-30 | 2006-06-15 | Funai Electric Co Ltd | Memory management method of flash memory, program for managing flash memory, and recording medium |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015115073A (en) * | 2013-12-09 | 2015-06-22 | ディスペース デジタル シグナル プロセッシング アンド コントロール エンジニアリング ゲゼルシャフト ミット ベシュレンクテル ハフツングdspace digital signal processing and control engineering GmbH | Method for changing software in memory of electronic control unit |
US9817652B2 (en) | 2014-10-30 | 2017-11-14 | Samsung Electronics Co., Ltd. | Data storage device and method for reducing firmware update time and data processing system including the device |
US10866797B2 (en) | 2014-10-30 | 2020-12-15 | Samsung Electronics Co., Ltd. | Data storage device and method for reducing firmware update time and data processing system including the device |
KR20170117500A (en) | 2015-03-06 | 2017-10-23 | 미쓰이 가가쿠 가부시키가이샤 | Cross-linked body and vibration damping material |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007206885A (en) | Computer system and system starting method | |
JP2008009721A (en) | Evaluation system and evaluation method thereof | |
US20140258699A1 (en) | Boot fault tolerant device and method thereof | |
JP2005157528A (en) | Memory device | |
JP2006202117A (en) | Processor and its firmware download method | |
JP2008198060A (en) | Information processor, patch code mounting system, electronic equipment, and patch code mounting method | |
JP2008102761A (en) | Method for updating embedded firmware | |
US9772905B2 (en) | Updating control firmware of information processing apparatus, method of controlling the same, and storage medium | |
KR101285204B1 (en) | Information processing apparatus and control method for information processing apparatus | |
JP2008158991A (en) | Control system for nand type flash memory | |
JP5561791B2 (en) | Information processing apparatus, information processing method, and information processing program | |
JP2014164471A (en) | LSI and information processing system | |
JP2013182577A (en) | Information processing apparatus, image forming apparatus, and program | |
JP5870043B2 (en) | Start control device, information device, and start control method | |
JP2000235483A (en) | Information processor | |
JP2008059339A (en) | Controller | |
JP6703049B2 (en) | Information processing apparatus and method of controlling information processing apparatus | |
JP2010140167A (en) | Semiconductor integrated circuit | |
JP2005141522A (en) | Data processing apparatus | |
JP2006127407A (en) | Semiconductor integrated circuit | |
JP2005128613A (en) | Image forming device | |
JP2008293468A (en) | Method for manufacturing motherboard | |
CN112905235B (en) | MCU program execution method and chip | |
JP2008071084A (en) | Microprocessor and image forming apparatus | |
JP2009093270A (en) | Computer system and startup method therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090820 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20111115 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120313 |