JP2019071003A - Electronic device - Google Patents

Electronic device Download PDF

Info

Publication number
JP2019071003A
JP2019071003A JP2017197607A JP2017197607A JP2019071003A JP 2019071003 A JP2019071003 A JP 2019071003A JP 2017197607 A JP2017197607 A JP 2017197607A JP 2017197607 A JP2017197607 A JP 2017197607A JP 2019071003 A JP2019071003 A JP 2019071003A
Authority
JP
Japan
Prior art keywords
firmware
area
volatile memory
control unit
written
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.)
Granted
Application number
JP2017197607A
Other languages
Japanese (ja)
Other versions
JP7031211B2 (en
Inventor
幸義 端山
Yukiyoshi Hayama
幸義 端山
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.)
Brother Industries Ltd
Original Assignee
Brother Industries 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 Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2017197607A priority Critical patent/JP7031211B2/en
Publication of JP2019071003A publication Critical patent/JP2019071003A/en
Application granted granted Critical
Publication of JP7031211B2 publication Critical patent/JP7031211B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

To provide an electronic device capable of reducing a volatile memory capacity necessary for recording a firmware in an executable form, and of easily returning an operating firmware from a new firmware to an old firmware even after the new firmware is executed.SOLUTION: When a new firmware is downloaded from a server, the new firmware is written in a second area A2 in a DRAM 15. The new firmware written in the second area A2 in the DRAM 15 is developed in a first area A1 of the DRAM 15 in an executable form, and the new firmware in the executable form is executed. An old firmware which is developed in the first area A1 and which is in the executable form is deleted by overwriting upon development of the new firmware or is deleted before the new firmware is developed. In contrast, the old firmware in a compressed state written in a flash ROM 14 is maintained as being written therein.SELECTED DRAWING: Figure 8

Description

本発明は、電子機器に関する。   The present invention relates to an electronic device.

プリンタなどの電子機器には、その電子機器のシステム(ハードウェア)を制御するためのソフトウェアであるファームウェアが組み込まれている。ファームウェアは、書換可能な不揮発性メモリに記憶されており、ブートにより、不揮発性メモリから揮発性メモリに実行可能な形式に展開される。   An electronic device such as a printer incorporates firmware, which is software for controlling a system (hardware) of the electronic device. The firmware is stored in the rewritable non-volatile memory, and is expanded from the non-volatile memory to the volatile memory in an executable form by boot.

電子機器における機能の追加や不具合の修正のため、電子機器のメーカなどから新規のファームウェアが提供されることがある。新ファームウェアは、たとえば、提供元のサーバから電子機器にダウンロードすることができる。新ファームウェアのダウンロードにより、不揮発性メモリに記憶されている旧ファームウェアが新ファームウェアに書き換えられる。   New firmware may be provided by manufacturers of electronic devices and the like to add functions in the electronic devices and correct defects. The new firmware can be downloaded to the electronic device from, for example, the server of the providing source. By downloading the new firmware, the old firmware stored in the non-volatile memory is rewritten to the new firmware.

このファームウェアの更新方法として、新ファームウェアを揮発性メモリにダウンロードした後、現在稼働中のシステムを停止して、新ファームウェアを展開して起動し、その後、未展開の新ファームウェアを不揮発性メモリに書き込むことが提案されている。この方法により、ファームウェアの更新時の電子機器の非稼働時間を短縮することができる。   As a method of updating this firmware, after downloading new firmware to volatile memory, stopping the system currently in operation, deploying and activating new firmware, and then writing undeployed new firmware to nonvolatile memory It has been proposed. This method can reduce the non-operation time of the electronic device at the time of updating the firmware.

特開2008−77474号公報JP 2008-77474 A

ところが、かかる方法では、旧ファームウェアが揮発性メモリに実行可能な形式に展開されている状態で、その旧ファームウェアが展開されている領域と異なる領域に、新ファームウェアが実行可能な形式に展開される。そのため、揮発性メモリには、実行可能な形式の旧ファームウェアおよび新ファームウェアの両方を記録可能な容量が必要になる。   However, in such a method, while the old firmware is expanded to an executable format in volatile memory, the new firmware is expanded to an executable format in an area different from the area where the old firmware is expanded. . Therefore, volatile memory needs a capacity capable of recording both an executable form of old firmware and a new firmware.

また、新ファームウェアの起動後、未展開の新ファームウェアが不揮発性メモリに自動的に書き込まれて、旧ファームウェアが新ファームウェアに書き換えられるため、新ファームウェアに不都合や不具合がある場合に、不揮発性メモリに旧ファームウェアが記憶されている状態に容易に戻すことができない。   In addition, since the new firmware that has not been deployed is automatically written to the non-volatile memory after the new firmware is activated and the old firmware is rewritten to the new firmware, if there is a problem or a problem with the new firmware, the non-volatile memory The old firmware can not be easily restored to the stored state.

本発明の目的は、実行可能な形式のファームウェアの記録に必要な揮発性メモリの容量を削減でき、かつ、新ファームウェア(第2ファームウェア)の実行後であっても、稼働するファームウェアを新ファームウェアから旧ファームウェア(第1ファームウェア)に容易に戻すことができる、電子機器を提供することである。   The object of the present invention is to reduce the capacity of volatile memory necessary for recording of the executable format firmware, and to execute the operating firmware from the new firmware even after the execution of the new firmware (the second firmware) An electronic device that can be easily restored to old firmware (first firmware).

前記の目的を達成するため、本発明の一の局面に係る電子機器は、第1ファームウェアが書き込まれた不揮発性メモリと、第1領域および第2領域を有する揮発性メモリと、外部機器と通信する通信部と、制御部と、を備える電子機器であって、制御部は、揮発性メモリの内容を保持したまま制御部自身を再起動する再起動処理を実行可能であり、さらに、制御部は、不揮発性メモリに書き込まれている第1ファームウェアを揮発性メモリの第1領域に制御部が実行可能な形式に変換して展開し、第1領域に展開された第1ファームウェアを実行する第1実行処理と、通信部を制御して、外部機器から第2ファームウェアを受信させ、その第2ファームウェアを揮発性メモリの第2領域に書き込む書込処理と、を実行し、さらに、制御部は、書込処理を実行後に再起動処理を実行し、さらに、制御部は、再起動処理を実行した後に、第2領域に書き込まれている第2ファームウェアを揮発性メモリの第1領域に制御部が実行可能な形式に変換して展開し、第1領域に展開された第2ファームウェアを実行する第2実行処理を実行する、ことを特徴とする。   In order to achieve the above object, an electronic device according to one aspect of the present invention communicates with a nonvolatile memory in which a first firmware is written, a volatile memory having a first area and a second area, and an external device. An electronic device including a communication unit and a control unit, wherein the control unit can execute restart processing for restarting the control unit itself while holding the contents of the volatile memory, and further, the control unit First converting the first firmware written in the non-volatile memory into a first area of the volatile memory into a form that can be executed by the control unit, and executing the first firmware expanded in the first area; Execute an execution process and a write process to control the communication unit to receive the second firmware from the external device and write the second firmware to the second area of the volatile memory, and the control unit , After executing the loading process, the controller executes the restart process, and further, after executing the reboot process, the controller executes the second firmware written in the second area to the first area of the volatile memory. It is characterized in that it is converted into a possible format and expanded, and a second execution process of executing the second firmware expanded in the first area is executed.

この構成によれば、不揮発性メモリに書き込まれている第1ファームウェアは、揮発性メモリの第1領域に制御部が実行可能な形式に展開される。その後、実行可能な形式の第1ファームウェアが実行される。   According to this configuration, the first firmware written in the non-volatile memory is expanded in a form that can be executed by the control unit in the first area of the volatile memory. Thereafter, the executable first firmware is executed.

第1ファームウェアの実行中に、外部機器から第2ファームウェアを通信部が受信すると、その第2ファームウェアが揮発性メモリの第2領域に書き込まれる。その後、制御部は、揮発性メモリの内容を保持したまま、制御部自身を再起動する。この再起動後、制御部により、第2ファームウェアが揮発性メモリの第1領域に実行可能な形式に展開されて、その実行可能な形式の第2ファームウェアが実行される。第1領域に展開されていた実行可能な形式の第1ファームウェアは、第2ファームウェアの展開により上書きにて消去されるか、第2ファームウェアの展開前に消去される。そのため、実行可能な形式の第1ファームウェアおよび第2ファームウェアの両方を記録可能な容量を揮発性メモリの第1領域に確保する必要がない。よって、実行可能な形式のファームウェアの記録に必要な第1領域の容量を削減することができる。   When the communication unit receives the second firmware from the external device while the first firmware is being executed, the second firmware is written to the second area of the volatile memory. Thereafter, the control unit restarts itself while holding the contents of the volatile memory. After the restart, the control unit expands the second firmware into an executable format in the first area of the volatile memory, and the executable second firmware is executed. The executable first firmware that has been deployed in the first area is erased by overwriting due to the deployment of the second firmware, or is erased before the deployment of the second firmware. Therefore, it is not necessary to secure the recordable capacity in the first area of the volatile memory in both the executable form of the first firmware and the second firmware. Therefore, the capacity of the first area necessary for recording the executable format firmware can be reduced.

また、不揮発性メモリに第1ファームウェアが書き込まれたまま消去されないので、第2ファームウェアに不都合や不具合がある場合に、第1ファームウェアを揮発性メモリの第1領域に実行可能な形式に展開して使用することができる。よって、第2ファームウェアの実行後であっても、稼働するファームウェアを第2ファームウェアから第1ファームウェアに容易に戻すことができる。   In addition, since the first firmware is not erased as it is written to the non-volatile memory, the first firmware is expanded into an executable format in the first area of the volatile memory when the second firmware has a problem or a problem. It can be used. Therefore, even after the execution of the second firmware, the operating firmware can be easily returned from the second firmware to the first firmware.

前記の目的を達成するため、本発明の他の局面に係る電子機器は、第1ファームウェアが書き込まれた不揮発性メモリと、第1領域および第2領域を有する揮発性メモリと、外部機器と通信する通信部と、制御部と、を備える電子機器であって、制御部は、制御部自身が起動したときに、揮発性メモリの第2領域に第2ファームウェアが書き込まれているか否かを判断し、揮発性メモリの第2領域に第2ファームウェアが書き込まれていない場合は、不揮発性メモリに書き込まれている第1ファームウェアを、揮発性メモリの第1領域に制御部が実行可能な形式に変換して展開し、第1領域に展開された第1ファームウェアを実行する第1実行処理を実行し、揮発性メモリの第2領域に第2ファームウェアが書き込まれている場合は、揮発性メモリの第2領域に書き込まれている第2ファームウェアを、揮発性メモリの第1領域に制御部が実行可能な形式に変換して展開し、第1領域に展開された第2ファームウェアを実行する第2実行処理を実行する、ことを特徴とする。   In order to achieve the above object, an electronic device according to another aspect of the present invention communicates with a nonvolatile memory in which a first firmware is written, a volatile memory having a first area and a second area, and an external device. An electronic device including a communication unit and a control unit, the control unit determining whether the second firmware is written in the second area of the volatile memory when the control unit itself is activated If the second firmware is not written in the second area of the volatile memory, the first firmware written in the non-volatile memory is in a format that can be executed by the control unit in the first area of the volatile memory. Executes the first execution process to convert and deploy, and execute the first firmware deployed in the first area. If the second firmware is written in the second area of volatile memory, volatile The second firmware written in the second area of the memory is converted into a form that can be executed by the control unit in the first area of the volatile memory and expanded, and the second firmware expanded in the first area is executed The second execution process is executed.

この構成によれば、制御部は、制御部自身が起動したときに、揮発性メモリの第2領域に第2ファームウェアが書き込まれているか否かを判断する。揮発性メモリの第2領域に第2ファームウェアが書き込まれている場合には、その第2ファームウェアが揮発性メモリの第1領域に実行可能な形式に展開されて、その実行可能な形式の第2ファームウェアが実行される。揮発性メモリの第2領域に第2ファームウェアが書き込まれていない場合には、不揮発性メモリに書き込まれている第1ファームウェアが揮発性メモリの第1領域に実行可能な形式に展開されて、その実行可能な形式の第1ファームウェアが実行される。   According to this configuration, the control unit determines whether the second firmware is written to the second area of the volatile memory when the control unit itself is activated. When the second firmware is written in the second area of volatile memory, the second firmware is expanded into the executable form in the first area of volatile memory, and the second form of the executable form is created. Firmware is executed. If the second firmware is not written in the second area of the volatile memory, the first firmware written in the non-volatile memory is expanded into an executable format in the first area of the volatile memory, An executable form of the first firmware is executed.

これにより、揮発性メモリの第1領域には、実行可能な形式の第1ファームウェアまたは第2ファームウェアの一方が記録される。そのため、実行可能な形式の第1ファームウェアまたは第2ファームウェアの両方を記録可能な容量を揮発性メモリの第1領域に確保する必要がない。よって、実行可能な形式のファームウェアの記録に必要な第1領域の容量を削減することができる。   Thereby, either the first firmware or the second firmware in an executable format is recorded in the first area of the volatile memory. Therefore, it is not necessary to secure a recordable capacity in the first area of the volatile memory for both the executable form of the first firmware and the second firmware. Therefore, the capacity of the first area necessary for recording the executable format firmware can be reduced.

また、不揮発性メモリに第1ファームウェアが書き込まれたまま消去されないので、第2ファームウェアに不都合や不具合がある場合に、第1ファームウェアを揮発性メモリの第1領域に実行可能な形式に展開して使用することができる。よって、第2ファームウェアの実行後であっても、稼働するファームウェアを第2ファームウェアから第1ファームウェアに容易に戻すことができる。   In addition, since the first firmware is not erased as it is written to the non-volatile memory, the first firmware is expanded into an executable format in the first area of the volatile memory when the second firmware has a problem or a problem. It can be used. Therefore, even after the execution of the second firmware, the operating firmware can be easily returned from the second firmware to the first firmware.

前記の目的を達成するため、本発明のさらに他の局面に係る電子機器は、第1ファームウェアが書き込まれた不揮発性メモリと、第1領域および第2領域を有する揮発性メモリと、外部機器と通信する通信部と、制御部と、通常ダウンロード処理およびテンポラリダウンロード処理のいずれを実行するかを選択する指示を受け付ける受付部と、を備える電子機器であって、制御部は、受付部に受け付けられた指示に応じて、通常ダウンロード処理またはテンポラリダウンロード処理を選択的に実行し、通常ダウンロード処理では、通信部を制御して、外部機器から第2ファームウェアを受信させて、第2ファームウェアを不揮発性メモリに書き込んで、第2ファームウェアを第1ファームウェアとして置き換え、テンポラリダウンロード処理では、通信部を制御して、外部機器から第2ファームウェアを受信させて、第2ファームウェアを揮発性メモリの第2領域に書き込み、テンポラリダウンロード処理の実行後、揮発性メモリの第2領域に書き込まれている第2ファームウェアを揮発性メモリの第1領域に実行可能な形式に展開する展開処理を実行する、ことを特徴とする。   In order to achieve the above object, an electronic device according to still another aspect of the present invention includes: a non-volatile memory in which a first firmware is written; a volatile memory having a first area and a second area; An electronic apparatus comprising: a communication unit to communicate; a control unit; and a reception unit for receiving an instruction to select which of normal download processing and temporary download processing is to be performed, the control unit being received by the reception unit In accordance with the instruction, the normal download process or the temporary download process is selectively executed, and in the normal download process, the communication unit is controlled to receive the second firmware from the external device, and the second firmware is stored in the non-volatile memory Write, replace the second firmware as the first firmware, and execute the temporary download process Controls the communication unit to receive the second firmware from the external device, writes the second firmware to the second area of the volatile memory, and executes temporary download processing, and then writes the second firmware to the second area of the volatile memory And expanding the second firmware into an executable format in the first area of the volatile memory.

この構成によれば、通常ダウンロード処理の実行が選択されている場合、外部機器から通信部が第2ファームウェアを受信すると、その第2ファームウェアが不揮発性メモリに書き込まれる。   According to this configuration, when execution of the normal download process is selected, when the communication unit receives the second firmware from the external device, the second firmware is written to the non-volatile memory.

テンポラリダウンロード処理の実行が選択されている場合、外部機器から通信部が第2ファームウェアを受信すると、その第2ファームウェアが揮発性メモリの第2領域に書き込まれる。その後、第2領域に記録されている第2ファームウェアが揮発性メモリの第1領域に実行可能な形式に展開されて、その実行可能な形式の第2ファームウェアが実行される。第2ファームウェアの展開前は、第1ファームウェアが揮発性メモリの第1領域に実行可能な形式で展開されており、その第1ファームウェアは、第2ファームウェアの展開により上書きにて消去されるか、第2ファームウェアの展開前に消去される。そのため、実行可能な形式の第1ファームウェアおよび第2ファームウェアの両方を記録可能な容量を揮発性メモリの第1領域に確保する必要がない。よって、実行可能な形式のファームウェアの記録に必要な第1領域の容量を削減することができる。   When execution of the temporary download process is selected, when the communication unit receives the second firmware from the external device, the second firmware is written to the second area of the volatile memory. Thereafter, the second firmware recorded in the second area is expanded into an executable format in the first area of the volatile memory, and the executable second firmware is executed. Before the second firmware is deployed, the first firmware is deployed in an executable format in the first area of the volatile memory, and the first firmware is erased by overwriting by the deployment of the second firmware, It is erased before the second firmware is deployed. Therefore, it is not necessary to secure the recordable capacity in the first area of the volatile memory in both the executable form of the first firmware and the second firmware. Therefore, the capacity of the first area necessary for recording the executable format firmware can be reduced.

また、テンポラリダウンロード処理では、不揮発性メモリに第1ファームウェアが書き込まれたまま消去されないので、第2ファームウェアに不都合や不具合がある場合に、第1ファームウェアを揮発性メモリの第1領域に実行可能な形式に展開して使用することができる。よって、第2ファームウェアの実行後であっても、稼働するファームウェアを第2ファームウェアから第1ファームウェアに容易に戻すことができる。   In the temporary download process, the first firmware is not erased as it is written to the non-volatile memory, so that the first firmware can be executed in the first area of the volatile memory when the second firmware has a problem or a defect It can be expanded and used in the form. Therefore, even after the execution of the second firmware, the operating firmware can be easily returned from the second firmware to the first firmware.

前記の目的を達成するため、本発明のさらに他の局面に係る電子機器は、第1ファームウェアが書き込まれた不揮発性メモリと、第1領域および第2領域を有する揮発性メモリと、外部機器と通信する通信部と、制御部と、通常ダウンロード処理およびテンポラリダウンロード処理のいずれを実行するかを選択する指示を受け付ける受付部と、を備える電子機器であって、制御部は、揮発性メモリの内容を保持したまま制御部自身を再起動する再起動処理を実行可能であり、さらに、制御部は、受付部に受け付けられた指示に応じて、通常ダウンロード処理またはテンポラリダウンロード処理を選択的に実行し、さらに、制御部は、通常ダウンロード処理では、通信部を制御して、外部機器から第2ファームウェアを受信させて、第2ファームウェアを不揮発性メモリに書き込んで、第2ファームウェアを第1ファームウェアとして置き換え、さらに、制御部は、テンポラリダウンロード処理では、通信部を制御して、外部機器から第2ファームウェアを受信させて、第2ファームウェアを揮発性メモリの第2領域に書き込み、再起動処理を実行し、さらに、制御部は、制御部自身が起動した場合に、揮発性メモリの第2領域に第2ファームウェアが書き込まれているか否か判断する判断処理を実行し、さらに、制御部は、判断処理により揮発性メモリの第2領域に第2ファームウェアが書き込まれていないと判断した場合、不揮発性メモリに書き込まれている第1ファームウェアを揮発性メモリの第1領域に実行可能な形式に展開し、判断処理により揮発性メモリの第2領域に第2ファームウェアが書き込まれていると判断した場合、第2ファームウェアを揮発性メモリの第1領域に実行可能な形式に展開する展開処理を実行する、ことを特徴とする。   In order to achieve the above object, an electronic device according to still another aspect of the present invention includes: a non-volatile memory in which a first firmware is written; a volatile memory having a first area and a second area; An electronic device comprising: a communication unit to communicate; a control unit; and a reception unit for receiving an instruction to select which of normal download processing and temporary download processing is to be performed, the control unit including the content of the volatile memory It is possible to execute restart processing for restarting the control unit itself while holding the control unit, and the control unit selectively executes normal download processing or temporary download processing according to the instruction received by the reception unit. Furthermore, in the normal download process, the control unit controls the communication unit to receive the second firmware from the external device, and the second firmware The second firmware is replaced with the first firmware, and the control unit controls the communication unit in the temporary download process to receive the second firmware from the external device, and Is the firmware written to the second area of the volatile memory and the restart process is executed, and further, if the control unit is activated, is the second firmware written to the second area of the volatile memory? If the control unit determines that the second firmware is not written to the second area of the volatile memory by the determination process, the first process is performed to write the first firmware to the non-volatile memory. The firmware is expanded into a form that can be executed in the first area of volatile memory, and the determination process is performed in the second area of volatile memory. If it is determined that the firmware is written to perform the expansion process of expanding the second firmware in executable form in the first region of the volatile memory, characterized in that.

この構成によれば、通常ダウンロード処理の実行が選択されている場合、外部機器から通信部が第2ファームウェアを受信すると、その第2ファームウェアが不揮発性メモリに書き込まれる。一方、テンポラリダウンロード処理の実行が選択されている場合、外部機器から通信部が第2ファームウェアを受信すると、その第2ファームウェアが揮発性メモリの第2領域に書き込まれる。   According to this configuration, when execution of the normal download process is selected, when the communication unit receives the second firmware from the external device, the second firmware is written to the non-volatile memory. On the other hand, when execution of the temporary download process is selected, when the communication unit receives the second firmware from the external device, the second firmware is written to the second area of the volatile memory.

制御部の再起動後、揮発性メモリの第2領域に第2ファームウェアが書き込まれている場合には、その第2ファームウェアが揮発性メモリの第1領域に実行可能な形式に展開されて、その実行可能な形式の第2ファームウェアが実行される。揮発性メモリの第2領域に第2ファームウェアが書き込まれていない場合には、不揮発性メモリに書き込まれている第1ファームウェアが揮発性メモリの第1領域に実行可能な形式に展開されて、その実行可能な形式の第1ファームウェアが実行される。   If the second firmware is written in the second area of the volatile memory after the restart of the control unit, the second firmware is expanded into the executable format in the first area of the volatile memory, The executable second firmware is executed. If the second firmware is not written in the second area of the volatile memory, the first firmware written in the non-volatile memory is expanded into an executable format in the first area of the volatile memory, An executable form of the first firmware is executed.

これにより、揮発性メモリの第1領域には、実行可能な形式の第1ファームウェアまたは第2ファームウェアの一方が記録される。そのため、実行可能な形式の第1ファームウェアまたは第2ファームウェアの両方を記録可能な容量を揮発性メモリの第1領域に確保する必要がない。よって、実行可能な形式のファームウェアの記録に必要な第1領域の容量を削減することができる。   Thereby, either the first firmware or the second firmware in an executable format is recorded in the first area of the volatile memory. Therefore, it is not necessary to secure a recordable capacity in the first area of the volatile memory for both the executable form of the first firmware and the second firmware. Therefore, the capacity of the first area necessary for recording the executable format firmware can be reduced.

また、テンポラリダウンロード処理では、不揮発性メモリに第1ファームウェアが書き込まれたまま消去されないので、第2ファームウェアに不都合や不具合がある場合に、第1ファームウェアを揮発性メモリの第1領域に実行可能な形式に展開して使用することができる。よって、第2ファームウェアの実行後であっても、稼働するファームウェアを第2ファームウェアから第1ファームウェアに容易に戻すことができる。   In the temporary download process, the first firmware is not erased as it is written to the non-volatile memory, so that the first firmware can be executed in the first area of the volatile memory when the second firmware has a problem or a defect It can be expanded and used in the form. Therefore, even after the execution of the second firmware, the operating firmware can be easily returned from the second firmware to the first firmware.

本発明によれば、実行可能な形式のファームウェアの記録に必要な第1領域の容量を削減することができる。また、第2ファームウェアの実行後に、不揮発性メモリに第1ファームウェアが消去されないことにより、稼働するファームウェアを第2ファームウェアから第1ファームウェアに容易に戻すことができる。   According to the present invention, it is possible to reduce the capacity of the first area required to record the executable format firmware. In addition, since the first firmware is not erased in the non-volatile memory after the execution of the second firmware, the operating firmware can be easily returned from the second firmware to the first firmware.

本発明の一実施形態に係るプリンタの電気的構成の要部を示すブロック図である。FIG. 2 is a block diagram showing the main part of the electrical configuration of the printer according to the embodiment of the present invention. ファーム起動処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a firm starting process. フラッシュROMおよびDRAMの状態を図解的に示す図であり、DRAMが未初期化の状態を示す。FIG. 8 is a diagram schematically showing the state of the flash ROM and the DRAM, wherein the DRAM shows an uninitialized state. フラッシュROMおよびDRAMの状態を図解的に示す図であり、ブートプログラムが実行中である状態を示す。FIG. 8 is a diagram schematically showing the state of the flash ROM and the DRAM, showing the state where the boot program is being executed. フラッシュROMおよびDRAMの状態を図解的に示す図であり、ファームウェアの実行が開始される状態を示す。FIG. 10 schematically shows the state of the flash ROM and the DRAM, and shows the state where execution of firmware is started. フラッシュROMおよびDRAMの状態を図解的に示す図であり、フラッシュROMに圧縮状態の旧ファームウェアが書き込まれた状態で、DRAMの第1領域に展開された旧ファームウェアが実行される状態を示す。FIG. 8 is a diagram schematically showing the state of the flash ROM and the DRAM, and shows the state in which the old firmware expanded in the first area of the DRAM is executed with the old firmware in the compressed state written in the flash ROM. ファーム通常処理の流れを示すフローチャート(その1)である。It is a flowchart (the 1) which shows the flow of firm usual processing. ファーム通常処理の流れを示すフローチャート(その2)である。It is a flowchart (the 2) which shows the flow of a firm normal process. テンポラリDL処理の流れを示すフローチャートである。It is a flowchart which shows the flow of temporary DL process. フラッシュROMおよびDRAMの状態を図解的に示す図であり、DRAMのワークエリアに圧縮状態の新ファームウェアが書き込まれた状態を示す。FIG. 8 is a diagram schematically showing the state of the flash ROM and the DRAM, showing the state where the new firmware in the compressed state is written to the work area of the DRAM. フラッシュROMおよびDRAMの状態を図解的に示す図であり、ブートプログラムが実行中である状態を示す。FIG. 8 is a diagram schematically showing the state of the flash ROM and the DRAM, showing the state where the boot program is being executed. フラッシュROMおよびDRAMの状態を図解的に示す図であり、ワークエリアの圧縮状態の新ファームウェアが第1領域に展開される状態を示す。FIG. 8 is a diagram schematically showing the state of the flash ROM and the DRAM, showing a state in which the new firmware in the compressed state of the work area is expanded in the first area. フラッシュROMおよびDRAMの状態を図解的に示す図であり、フラッシュROMに圧縮状態の旧ファームウェアが書き込まれた状態で、DRAMの第1領域に展開された新ファームウェアが実行される状態を示す。FIG. 7 is a diagram schematically showing the state of the flash ROM and the DRAM, showing that the new firmware expanded in the first area of the DRAM is executed with the old firmware in the compressed state written in the flash ROM. 通常DL処理の流れを示すフローチャートである。It is a flowchart which shows the flow of normal DL process. フラッシュROMおよびDRAMの状態を図解的に示す図であり、DRAMの第2領域に書き込まれた圧縮状態の新ファームウェアがフラッシュROMに書き込まれる状態を示す。FIG. 8 is a diagram schematically showing the state of the flash ROM and the DRAM, showing a state in which the new firmware in the compressed state written in the second region of the DRAM is written to the flash ROM. フラッシュROMおよびDRAMの状態を図解的に示す図であり、フラッシュROMに圧縮状態の新ファームウェアが書き込まれた状態で、DRAMの第1領域に展開された新ファームウェアが実行される状態を示す。FIG. 7 is a diagram schematically showing the state of the flash ROM and the DRAM, and shows the state in which the new firmware expanded in the first area of the DRAM is executed with the new firmware compressed in the flash ROM.

以下では、本発明の実施の形態について、添付図面を参照しつつ詳細に説明する。   Hereinafter, embodiments of the present invention will be described in detail with reference to the attached drawings.

<プリンタの電気的構成>
図1に示されるプリンタ1は、電子機器の一例であり、画像形成部11、操作部12(受付部の一例)、ASIC(Application Specific Integrated Circuit)13、不揮発性メモリであるフラッシュROM(Read Only Memory)14、揮発性メモリであるDRAM(Dynamic Random Access Memory)15および通信部16を備えている。画像形成部11、操作部12、ASIC13、フラッシュROM14およびDRAM15は、バス17を介して、データ通信可能に接続されている。
<Electric Configuration of Printer>
The printer 1 illustrated in FIG. 1 is an example of an electronic device, and includes an image forming unit 11, an operation unit 12 (an example of a reception unit), an application specific integrated circuit (ASIC) 13, and a flash ROM (Read Only) that is a non-volatile memory. The memory 14, a dynamic random access memory (DRAM) 15 which is a volatile memory, and a communication unit 16 are provided. The image forming unit 11, the operation unit 12, the ASIC 13, the flash ROM 14 and the DRAM 15 are connected via the bus 17 so as to be capable of data communication.

画像形成部11は、プリンタ1の外殻をなす筐体内に設けられている。画像形成部11は、搬送経路上を1枚ずつ搬送されるプリント用紙などのシートにカラー画像またはモノクロ画像を形成する機構である。画像形成の方式は、電子写真方式であってもよいし、インクジェット方式であってもよい。   The image forming unit 11 is provided in a housing that forms an outer shell of the printer 1. The image forming unit 11 is a mechanism for forming a color image or a monochrome image on a sheet such as a print sheet which is conveyed one by one on the conveyance path. The image forming method may be an electrophotographic method or an inkjet method.

操作部12は、たとえば、タッチパネルの形態で設けられている。ユーザが操作部12を操作することにより、各種の指示が操作部12に受け付けられる。操作部12に指示が受け付けられると、その指示の内容に応じた信号(データ)が操作部12からASIC13に向けて送信される。   Operation unit 12 is provided, for example, in the form of a touch panel. When the user operates the operation unit 12, various instructions are accepted by the operation unit 12. When an instruction is received by the operation unit 12, a signal (data) corresponding to the content of the instruction is transmitted from the operation unit 12 to the ASIC 13.

ASIC13は、CPU(Central Processing Unit)21、ASIC13(CPU21)が再起動しても記憶内容を保持可能なSRAM(Static Random Access Memory)22およびメモリコントローラ23を備えている。   The ASIC 13 includes a central processing unit (CPU) 21, a static random access memory (SRAM) 22 and a memory controller 23 capable of holding stored contents even when the ASIC 13 (CPU 21) is restarted.

CPU21(制御部の一例)、SRAM22(フラグ保存用メモリの一例)およびメモリコントローラ23は、ASIC13内の内部バス24を介して、データ通信可能に接続されている。内部バス24は、バス17とデータ通信可能に接続されている。   The CPU 21 (an example of a control unit), the SRAM 22 (an example of a flag storage memory), and the memory controller 23 are connected to be capable of data communication via an internal bus 24 in the ASIC 13. The internal bus 24 is communicably connected to the bus 17.

メモリコントローラ23は、DRAM15に対するデータの読み書きを制御する集積回路である。メモリコントローラ23には、仮想アドレスを物理アドレスに変換する機能を有するMMU(Memory Management Unit:メモリ管理ユニット)が含まれている。また、メモリコントローラ23は、一定の周期でDRAM15にリフレッシュ信号を送信して、DRAM15に保持されているデータの再書き込みを行うリフレッシュ機能を有している。   The memory controller 23 is an integrated circuit that controls reading and writing of data with respect to the DRAM 15. The memory controller 23 includes an MMU (Memory Management Unit) having a function of converting a virtual address into a physical address. The memory controller 23 also has a refresh function of transmitting a refresh signal to the DRAM 15 at a constant cycle and rewriting data held in the DRAM 15.

通信部16は、サーバやPC(パーソナルコンピュータ)などの外部機器との間でのコンピュータネットワークを経由した通信のための回路などを備えている。   The communication unit 16 includes a circuit for communication via a computer network with an external device such as a server or a PC (personal computer).

<ファーム起動処理>
ASIC13に内蔵されているCPU21は、プリンタ1のブートおよびリブート時に、図2に示されるファーム起動処理を実行する。具体的には、ファーム起動処理は、フラッシュROM14に保存されているブートプログラムに含まれている。プリンタ1のブートおよびリブート時には、図3Aに示されるように、CPU21がブートプログラムを実行することにより、ファーム起動処理が開始される。
<Farm start processing>
The CPU 21 built in the ASIC 13 executes the firmware start process shown in FIG. 2 when the printer 1 is booted and rebooted. Specifically, the firmware activation process is included in the boot program stored in the flash ROM 14. When the printer 1 is booted and rebooted, as shown in FIG. 3A, the CPU 21 executes the boot program to start the firmware boot process.

ファーム起動処理では、CPU21は、今回のブートまたはリブートがテンポラリDL(ダウンロード)後のリブートであるか否かを判別する(S11)。具体的には、CPU21は、後述のテンポラリDL実行フラグがSRAM22に保存されている場合、今回のブートまたはリブートがテンポラリDL後のリブートであると判別し、テンポラリDL実行フラグがSRAM22に保存されていない場合、今回のブートまたはリブートがテンポラリDL後のリブートではないと判別する。テンポラリDLについては、後述する。   In the firmware activation process, the CPU 21 determines whether or not the current boot or reboot is a reboot after temporary DL (download) (S11). Specifically, when the temporary DL execution flag described later is stored in the SRAM 22, the CPU 21 determines that the current boot or reboot is a reboot after the temporary DL, and the temporary DL execution flag is stored in the SRAM 22. If not, it is determined that the current boot or reboot is not a reboot after the temporary DL. The temporary DL will be described later.

今回のブートまたはリブートがテンポラリDL後のリブートでない場合(S11:NO)、図3Aに示されるように、DRAM15が初期化されていない未初期化の状態である。そこで、CPU21は、メモリコントローラ23を制御して、DRAM15を初期化する(S12)。   If the current boot or reboot is not a reboot after the temporary DL (S11: NO), the DRAM 15 is in an uninitialized state in which the DRAM 15 is not initialized as shown in FIG. 3A. Then, the CPU 21 controls the memory controller 23 to initialize the DRAM 15 (S12).

DRAM15の初期化後、CPU21は、図3Bに示されるように、フラッシュROM14に保存されている圧縮状態のファームウェア(以下、このファームウェアを「旧ファームウェア」という。)をDRAM15の第1領域A1上に実行可能な形式に展開する(S13)。   After initialization of the DRAM 15, as shown in FIG. 3B, the CPU 21 puts the firmware in a compressed state (hereinafter, this firmware is referred to as "old firmware") stored in the flash ROM 14 onto the first area A1 of the DRAM 15. Expand into an executable format (S13).

そして、CPU21は、図3Cに示されるように、DRAM15に展開されたファームウェアの先頭アドレスにジャンプして、ファームウェアを先頭アドレスから実行する(S14)。その後は、図3Dに示されるように、DRAM15の第1領域A1のファームウェア上で各部の制御が行われる。   Then, as shown in FIG. 3C, the CPU 21 jumps to the top address of the firmware developed in the DRAM 15, and executes the firmware from the top address (S14). Thereafter, as shown in FIG. 3D, control of each part is performed on the firmware of the first area A1 of the DRAM 15.

その後、CPU21は、ファーム起動処理を終了して、図4Aおよび図4Bに示されるファーム通常処理を開始する。   Thereafter, the CPU 21 ends the firm start-up process and starts the firm normal process shown in FIGS. 4A and 4B.

今回のブートまたはリブートがテンポラリDL後のリブートである場合の処理の内容については、後述する。   The contents of processing when the current boot or reboot is a reboot after temporary DL will be described later.

<ファーム通常処理>
ファーム通常処理では、CPU21は、メモリコントローラ23を制御して、ワークエリアとして使用するDRAM15の第2領域A2に保存されているデータ、たとえば、セキュアプリントに係る画像データがあれば、そのデータを使える状態にする(S21)。セキュアプリントは、画像データに係る画像をシートに形成するプリント動作の実行にパスワードの入力が必要とされるジョブである。
<Farm normal processing>
In the firmware normal processing, the CPU 21 controls the memory controller 23 to use data stored in the second area A2 of the DRAM 15 used as a work area, for example, image data related to secure printing, if any. The state is set (S21). Secure printing is a job that requires input of a password to execute a printing operation for forming an image related to image data on a sheet.

その後、CPU21は、後述するテンポラリDL実行フラグがSRAM22に保存されているか否かに基づいて、今回のCPU21の起動がテンポラリDL後の再起動であるか否かを判別する(S22)。   After that, the CPU 21 determines whether the current activation of the CPU 21 is a restart after the temporary DL based on whether the temporary DL execution flag described later is stored in the SRAM 22 (S22).

CPU21は、テンポラリDL実行フラグがSRAM22に保存されている場合、今回のCPU21の起動がテンポラリDL後の起動であると判別する(S22:YES)。   When the temporary DL execution flag is stored in the SRAM 22, the CPU 21 determines that the current activation of the CPU 21 is the activation after the temporary DL (S22: YES).

CPU21は、テンポラリDL実行フラグがSRAM22に保存されていない場合、今回のCPU21の起動がテンポラリDL後の起動ではないと判別する(S22:NO)。   When the temporary DL execution flag is not stored in the SRAM 22, the CPU 21 determines that the current activation of the CPU 21 is not the activation after the temporary DL (S22: NO).

プリンタ1における機能の追加や不具合の修正のため、プリンタ1のメーカなどから新規のファームウェア(以下、このファームウェアを「新ファームウェア」という。)が提供される場合がある。その場合、提供元となるサーバに新ファームウェアがアップロードされ、そのサーバからプリンタ1に新ファームウェアをダウンロードすることができる。新ファームウェアは、サーバからプリンタ1に直接にダウンロードされてもよいし、サーバからPCなどの外部機器を経由してプリンタ1にダウンロードされてもよい。   New firmware (hereinafter, this firmware is referred to as “new firmware”) may be provided from the manufacturer of the printer 1 or the like for the addition of functions in the printer 1 and the correction of defects. In that case, the new firmware is uploaded to the server as the providing source, and the new firmware can be downloaded to the printer 1 from the server. The new firmware may be downloaded directly from the server to the printer 1 or may be downloaded from the server to the printer 1 via an external device such as a PC.

今回のプリンタ1の起動がテンポラリDL後の起動ではない場合(S22:NO)、CPU21は、プリンタ1の起動の度にサーバにおける新ファームウェアの有無を確認する自動確認モードが設定されているか否かを確認する(S23)。自動確認モードの設定および解除は、操作部12の操作によって切り替えることができる。   If the activation of the printer 1 this time is not the activation after the temporary DL (S22: NO), the CPU 21 determines whether or not the automatic confirmation mode for confirming the presence or absence of new firmware in the server is set each time the printer 1 is activated. (S23). The setting and cancellation of the automatic confirmation mode can be switched by the operation of the operation unit 12.

自動確認モードが設定されている場合(S23:YES)、CPU21は、サーバに新ファームウェアの有無を問い合わせる(S24)。   When the automatic confirmation mode is set (S23: YES), the CPU 21 inquires the server of the presence or absence of the new firmware (S24).

自動確認モードが設定されていない場合(S23:NO)、または、サーバに新ファームウェアが存在しない場合(S24:NO)、CPU21は、画像形成部11のウォームアップ動作を制御する(S25)。ウォームアップ動作は、画像形成を行うための準備動作であり、たとえば、画像形成部11が電子写真方式のエンジンを備える場合、そのエンジンに含まれる現像ローラの表面に撹拌により帯電したトナーを担持させるための動作などを含む。   If the automatic confirmation mode is not set (S23: NO), or if there is no new firmware in the server (S24: NO), the CPU 21 controls the warm-up operation of the image forming unit 11 (S25). The warm-up operation is a preparatory operation for forming an image. For example, when the image forming unit 11 includes an electrophotographic engine, toner charged by agitation is carried on the surface of a developing roller included in the engine. Including actions for

ウォームアップ動作後、CPU21は、プリンタ1に接続されたPCなどの外部機器からプリントデータを受信したか否かを判別する(S26)。プリントデータは、プリントジョブのデータであり、シートに形成される画像に係る画像データおよび画像形成の条件を含む。   After the warm-up operation, the CPU 21 determines whether print data has been received from an external device such as a PC connected to the printer 1 (S26). The print data is data of a print job, and includes image data relating to an image formed on a sheet and conditions for image formation.

プリンタ1が外部機器からプリントデータを受信した場合(S26:YES)、CPU21は、その受信したプリントデータをワークエリアとして使用するDRAM15の第2領域A2に保存する。そして、CPU21は、画像形成部11を制御して、プリントデータに含まれる画像データの画像をシートに形成するプリント動作を実行させる(S27)。   When the printer 1 receives print data from an external device (S26: YES), the CPU 21 stores the received print data in the second area A2 of the DRAM 15 used as a work area. Then, the CPU 21 controls the image forming unit 11 to execute a printing operation for forming an image of image data included in the print data on a sheet (S27).

一方、プリンタ1が外部機器からプリントデータを受信していない場合(S26:NO)、CPU21は、セキュアプリントの実行条件が満たされているか否かを判別する(S28)。セキュアプリントの実行条件は、セキュアプリントに係る画像データが使える状態でDRAM15の第2領域A2に保持されており、かつ、セキュアプリント用のパスワードが操作部12に受け付けられたという条件である。   On the other hand, when the printer 1 has not received print data from the external device (S26: NO), the CPU 21 determines whether the condition for executing secure print is satisfied (S28). The condition for executing secure printing is a condition that image data related to secure printing can be used and held in the second area A2 of the DRAM 15, and a password for secure printing is accepted by the operation unit 12.

セキュアプリントの実行条件が満たされている場合(S28:YES)、CPU21は、画像形成部11を制御して、セキュアプリントに係るプリント動作、つまりセキュアプリントに係る画像データの画像をシートに形成するプリント動作を実行させる(S29)。   If the condition for executing secure printing is satisfied (S28: YES), the CPU 21 controls the image forming unit 11 to form on the sheet the printing operation relating to secure printing, that is, the image of the image data relating to secure printing. The print operation is performed (S29).

プリント動作の終了後、CPU21は、セキュアプリントに係る画像データをDRAM15から消去する(S30)。   After the end of the printing operation, the CPU 21 erases the image data relating to secure printing from the DRAM 15 (S30).

いずれの場合にしても、CPU21は、プリント動作の終了後、プリントデータを受信したか否かを再び判断する(S26)。   In any case, after the end of the printing operation, the CPU 21 determines again whether or not print data has been received (S26).

プリントデータが受信されておらず、かつ、セキュアプリントの実行条件が満たされていない場合(S28:NO)、CPU21は、サーバに新ファームウェアの有無を問い合わせる(図4BのS31)。   If the print data is not received and the condition for executing secure printing is not satisfied (S28: NO), the CPU 21 inquires the server of the presence or absence of the new firmware (S31 in FIG. 4B).

サーバに新ファームウェアが存在しない場合(S31:NO)、CPU21は、プリントデータを受信したか否かを再び判断する(図4AのS26)。   If there is no new firmware in the server (S31: NO), the CPU 21 determines again whether or not print data has been received (S26 in FIG. 4A).

CPU21は、サーバに新ファームウェアが存在することを確認した場合(図4BのS31:YES)、オートテンポラリDLモードが設定されているか否かを確認する(S32)。オートテンポラリDLモードは、サーバに新ファームウェアが存在する場合に、図5に示されるテンポラリDL処理が自動的に実行されるモードである。オートテンポラリDLモードの設定および解除は、操作部12の操作により切り替えることができる。   When the CPU 21 confirms that the new firmware exists in the server (S31 in FIG. 4B: YES), the CPU 21 confirms whether the auto temporary DL mode is set (S32). The auto temporary DL mode is a mode in which temporary DL processing shown in FIG. 5 is automatically executed when new firmware exists in the server. The setting and cancellation of the auto temporary DL mode can be switched by the operation of the operation unit 12.

オートテンポラリDLモードが設定されている場合(S32:YES)、CPU21は、現時点が、プリントデータを受信していないタイミング、即ち、サーバから新ファームウェアをダウンロードすることが可能なタイミングであるDL可能タイミングであるか否かを判別する(S33)。たとえば、プリンタ1では、非動作状態が一定時間継続すると、プリンタ1の所定部への電力の供給が低減されるスリープ状態に突入する。スリープ状態が一定時間経過すると、CPU21は、現時点がDL可能タイミングであると判別する。   When the auto temporary DL mode is set (S32: YES), the CPU 21 is at a timing when no print data is received, that is, a DL possible timing at which it is possible to download new firmware from the server. It is determined whether or not (S33). For example, in the printer 1, when the non-operation state continues for a predetermined time, the printer 1 enters a sleep state in which the supply of power to a predetermined part of the printer 1 is reduced. When the sleep state elapses for a predetermined time, the CPU 21 determines that the present time is the DL enable timing.

現時点がDL可能タイミングでない場合(S33:NO)、CPU21は、プリントデータを受信したか否かを再び判断する(図4AのS26)。   If the current time is not the DL-allowable timing (S33: NO), the CPU 21 determines again whether or not print data has been received (S26 of FIG. 4A).

サーバに新ファームウェアが存在し、かつ、オートテンポラリDLモードが設定され、かつ、現時点がDL可能タイミングである場合には(図4BのS33:YES)、CPU21は、ファーム通常処理を終了して、図5に示されるテンポラリDL処理を実行する。   When the new firmware exists in the server, the auto temporary DL mode is set, and the current time is the DL enable timing (S33 in FIG. 4B: YES), the CPU 21 ends the firmware normal processing, The temporary DL process shown in FIG. 5 is performed.

サーバに新ファームウェアが存在するが、オートテンポラリDLモードが設定されていない場合には(S32:NO)、CPU21は、たとえば、操作部12を構成するタッチパネルを制御して、その画面に新ファームウェアをダウンロード可能である旨を表示させる。この画面には、新ファームウェアの試用のためのダウンロード(テンポラリDL)を指示するテンポラリDLボタンと、新ファームウェアの本使用のためのダウンロード(通常DL)を指示する通常DLボタンとが表示される。ユーザがテンポラリDLボタンを押操作することにより、テンポラリDLの指示が操作部12に受け付けられ、ユーザが通常DLボタンを押操作することにより、通常DLの指示が操作部12に受け付けられる。   If new firmware exists in the server but the auto temporary DL mode is not set (S32: NO), the CPU 21 controls, for example, the touch panel that constitutes the operation unit 12, and the new firmware is displayed on the screen. Display that it is possible to download. On this screen, a temporary DL button for instructing download (temporary DL) for trial of new firmware and a normal DL button for instructing download (normal DL) for main use of the new firmware are displayed. When the user presses the temporary DL button, the instruction of the temporary DL is accepted by the operation unit 12, and when the user presses the normal DL button, the instruction of the normal DL is accepted by the operation unit 12.

テンポラリDLの指示が操作部12に受け付けられた場合(S34:YES)、CPU21は、ファーム通常処理を終了して、図5に示されるテンポラリDL処理を実行する。   When the instruction of the temporary DL is received by the operation unit 12 (S34: YES), the CPU 21 ends the firm normal processing and executes the temporary DL processing shown in FIG.

通常DLの指示が操作部12に受け付けられた場合(S35:YES)、CPU21は、ファーム通常処理を終了して、図9に示される通常DL処理を実行する。   When the instruction of the normal DL is received by the operation unit 12 (S35: YES), the CPU 21 ends the firm normal processing and executes the normal DL processing shown in FIG.

テンポラリDLまたは通常DLのいずれかの指示が操作部12に受け付けられるまでは、CPU21は、プリントデータを受信したか否かを再び判断する(図4AのS26)。   The CPU 21 determines again whether or not print data has been received until an instruction of either the temporary DL or the normal DL is received by the operation unit 12 (S26 in FIG. 4A).

<テンポラリDL処理>
テンポラリDL処理では、図5に示されるように、CPU21は、通信部16を制御して、サーバから通信部16に圧縮状態の新ファームウェアをダウンロードし、図6Aに示されるように、その圧縮状態の新ファームウェアをDRAM15の第2領域A2からなるワークエリアに書き込む(S41)。このときの新ファームウェアのダウンロードは、新ファームウェアの試用のためのテンポラリDLである。
<Temporary DL processing>
In the temporary DL process, as shown in FIG. 5, the CPU 21 controls the communication unit 16 to download the new firmware in the compressed state from the server to the communication unit 16, and as shown in FIG. 6A, the compressed state The new firmware is written in the work area consisting of the second area A2 of the DRAM 15 (S41). The download of the new firmware at this time is a temporary DL for trial of the new firmware.

その後、CPU21は、テンポラリDL実行フラグをSRAM22に保存する(S42)。テンポラリDL実行フラグは、圧縮状態の新ファームウェアをDRAM15の第2領域A2からなるワークエリアに書き込まれたことを示す情報である。   Thereafter, the CPU 21 stores the temporary DL execution flag in the SRAM 22 (S42). The temporary DL execution flag is information indicating that the new firmware in a compressed state has been written to the work area including the second area A2 of the DRAM 15.

そして、CPU21は、メモリコントローラ23を制御して、DRAM15をセルフリフレッシュモードにする(S43)。DRAM15には、リフレッシュ回路が内蔵されており、セルフリフレッシュモードでは、そのリフレッシュ回路により、DRAM15に保存されているデータの再書き込みが周期的に行われる。これにより、セルフリフレッシュモードでは、DRAM15にデータが保持し続けられる。   Then, the CPU 21 controls the memory controller 23 to put the DRAM 15 in the self refresh mode (S43). The DRAM 15 incorporates a refresh circuit, and in the self-refresh mode, the refresh circuit periodically rewrites data stored in the DRAM 15. Thus, in the self refresh mode, data is kept held in the DRAM 15.

CPU21は、DRAM15をセルフリフレッシュモードにした後、図6Bに示されるように、CPU21自身の再起動により、フラッシュROM14に保存されているブートプログラムを実行して(S44:リブート)、テンポラリDL処理を終了し、ファーム起動処理を実行する。   After placing the DRAM 15 in the self-refresh mode, the CPU 21 executes the boot program stored in the flash ROM 14 by restarting the CPU 21 itself as shown in FIG. 6B (S44: reboot), and performs temporary DL processing. Exit and execute the firmware startup process.

<テンポラリDL後のファーム起動処理>
図2を参照して、テンポラリDL処理後のファーム起動処理では、SRAM22にテンポラリDL実行フラグが保存されている。CPU21は、SRAM22にテンポラリDL実行フラグが保存されている場合に今回のリブートがテンポラリDL後のリブートであると判別する(S11:YES)。
<Firm start processing after temporary DL>
Referring to FIG. 2, in the firm activation process after the temporary DL process, a temporary DL execution flag is stored in the SRAM 22. When the temporary DL execution flag is stored in the SRAM 22, the CPU 21 determines that the present reboot is a reboot after the temporary DL (S11: YES).

そして、CPU21は、メモリコントローラ23を制御して、DRAM15のセルフリフレッシュモードを解除する。さらにCPU21は、SRAM22に保存されているテンポラリDL実行フラグを消去する(S15)。   Then, the CPU 21 controls the memory controller 23 to cancel the self refresh mode of the DRAM 15. Furthermore, the CPU 21 erases the temporary DL execution flag stored in the SRAM 22 (S15).

その後、CPU21は、図7に示されるように、DRAM15に保存されている圧縮状態の新ファームウェアをDRAM15の第1領域A1上にCPU21が実行可能な形式に展開する(S16)。このとき、新ファームウェアの展開前に第1領域A1に展開されていた旧ファームウェアは、新ファームウェアの展開により上書きにて消去されるか、または、新ファームウェアの展開前に削除される。   Thereafter, as shown in FIG. 7, the CPU 21 expands the compressed new firmware stored in the DRAM 15 into a format that can be executed by the CPU 21 on the first area A1 of the DRAM 15 (S16). At this time, the old firmware deployed in the first area A1 before the deployment of the new firmware is erased by overwriting due to the deployment of the new firmware, or deleted before the deployment of the new firmware.

その後、CPU21は、DRAM15に展開された新ファームウェアの先頭アドレスにジャンプして、新ファームウェアを先頭アドレスから実行する(S14)。   Thereafter, the CPU 21 jumps to the top address of the new firmware developed in the DRAM 15 and executes the new firmware from the top address (S14).

<テンポラリDL後のファーム通常処理>
ファーム起動処理に引き続いて実行されるファーム通常処理では、CPU21は、今回のプリンタ1の起動がテンポラリDL後の起動であると判別する(S22:YES)。この場合、CPU21は、図8に示されるように、ワークエリアとして使用するDRAM15の第2領域A2から圧縮状態の新ファームウェアを削除する(S36)。DRAM15の第2領域A2から圧縮状態の新ファームウェアを削除することにより、ワークエリアとして利用可能なDRAM15の空き容量をより大きく確保できる。
<Firm normal processing after temporary DL>
In the normal firmware process executed subsequently to the firmware startup process, the CPU 21 determines that the current startup of the printer 1 is startup after the temporary DL (S22: YES). In this case, the CPU 21 deletes the new firmware in the compressed state from the second area A2 of the DRAM 15 used as a work area, as shown in FIG. 8 (S36). By deleting the new firmware in the compressed state from the second area A2 of the DRAM 15, a larger free space of the DRAM 15 that can be used as a work area can be secured.

<通常DL処理>
通常DL処理では、図9に示されるように、CPU21は、通信部16を制御して、サーバから通信部16に圧縮状態の新ファームウェアをダウンロードし、その圧縮状態の新ファームウェアをDRAM15の第2領域A2からなるワークエリアに書き込む(S51)。このときの新ファームウェアのダウンロードは、新ファームウェアの本使用のための通常DLである。
<Normal DL processing>
In the normal DL processing, as shown in FIG. 9, the CPU 21 controls the communication unit 16 to download the new firmware in the compressed state from the server to the communication unit 16, and the new firmware in the compressed state is the second firmware of the DRAM 15. It writes in the work area which consists of field A2 (S51). The download of the new firmware at this time is a normal DL for the main use of the new firmware.

その後、CPU21は、図10に示されるように、ワークエリアに保存されている圧縮状態の新ファームウェアをフラッシュROM14に書き込む(S52)。このとき、フラッシュROM14に保存されていた圧縮状態の旧ファームウェアは、圧縮状態の新ファームウェアにより上書きにて消去されるか、または、新ファームウェアの書き込み前に削除される。   Thereafter, as shown in FIG. 10, the CPU 21 writes the new firmware in the compressed state stored in the work area into the flash ROM 14 (S52). At this time, the old firmware in the compressed state stored in the flash ROM 14 is erased by overwrite by the new firmware in the compressed state, or deleted before writing the new firmware.

そして、CPU21は、CPU21自身の再起動により、フラッシュROM14に保存されているブートプログラムを実行して(S53:リブート)、通常DL処理を終了し、ファーム起動処理を実行する。   Then, the CPU 21 executes the boot program stored in the flash ROM 14 by restarting the CPU 21 itself (S53: reboot), ends the normal DL processing, and executes the firmware activation processing.

<通常DL処理後のファーム起動処理>
図2を参照して、通常DL処理後のファーム起動処理では、SRAM22にテンポラリDL実行フラグが保存されていない。CPU21は、SRAM22にテンポラリDL実行フラグが保存されていない場合に今回のリブートがテンポラリDL後のリブートではないと判別する(S11:NO)。
<Firm start processing after normal DL processing>
Referring to FIG. 2, in the firm activation process after the normal DL process, the temporary DL execution flag is not stored in SRAM 22. When the temporary DL execution flag is not stored in the SRAM 22, the CPU 21 determines that the present reboot is not a reboot after the temporary DL (S11: NO).

そして、CPU21は、メモリコントローラ23を制御して、DRAM15を初期化する(S12)。   Then, the CPU 21 controls the memory controller 23 to initialize the DRAM 15 (S12).

このとき、フラッシュROM14には、圧縮状態の新ファームウェアが保存されているので、DRAM15の初期化後、CPU21は、図11に示されるように、フラッシュROM14に保存されている圧縮状態の新ファームウェアをDRAM15の第1領域A1上にCPU21が実行可能な形式に展開する(S13)。   At this time, since the new firmware in the compressed state is stored in the flash ROM 14, the CPU 21 initializes the new firmware in the compressed state stored in the flash ROM 14 as shown in FIG. The CPU 21 develops the form into an executable form on the first area A1 of the DRAM 15 (S13).

<作用効果>
以上のように、フラッシュROM14に書き込まれている圧縮状態の旧ファームウェアは、DRAM15の第1領域A1に実行可能な形式に展開される。その後、実行可能な形式の旧ファームウェアが実行される。
<Function effect>
As described above, the old firmware in the compressed state written in the flash ROM 14 is expanded into an executable format in the first area A1 of the DRAM 15. Thereafter, the old form of executable is executed.

プリンタ1では、オートテンポラリDLモードの設定および解除が可能である。オートテンポラリDLモードが設定されている場合、サーバに新ファームウェアがアップロードされていると、サーバから通信部16に圧縮状態の新ファームウェアがダウンロードされて、その圧縮状態の新ファームウェアがDRAM15の第2領域A2に書き込まれる。また、オートテンポラリDLモードが解除されていても、テンポラリDLの指示が操作部12に受け付けられた場合、旧ファームウェアの実行中に、サーバから通信部16に圧縮状態の新ファームウェアがダウンロードされて、その圧縮状態の新ファームウェアがDRAM15の第2領域A2に書き込まれる。   The printer 1 can set and cancel the auto temporary DL mode. When the auto temporary DL mode is set, when the new firmware is uploaded to the server, the new firmware in the compressed state is downloaded from the server to the communication unit 16, and the new firmware in the compressed state is the second area of the DRAM 15. It is written to A2. In addition, even if the automatic temporary DL mode is canceled, if the instruction of the temporary DL is accepted by the operation unit 12, the new firmware in the compressed state is downloaded from the server to the communication unit 16 while the old firmware is being executed, The new firmware in the compressed state is written to the second area A2 of the DRAM 15.

これらの場合、DRAM15の第2領域A2に書き込まれた圧縮状態の新ファームウェアがDRAM15の第1領域A1に実行可能な形式に展開されて、その実行可能な形式の新ファームウェアが実行される。第1領域A1に展開されていた実行可能な形式の旧ファームウェアは、新ファームウェアの展開により上書きにて消去されるか、新ファームウェアの展開前に消去される。そのため、実行可能な形式の旧ファームウェアおよび新ファームウェアの両方を記録可能な容量をDRAM15の第1領域A1に確保する必要がない。よって、実行可能な形式のファームウェアの記録に必要な第1領域A1の容量を削減することができる。   In these cases, the compressed new firmware written in the second area A2 of the DRAM 15 is expanded into an executable format in the first area A1 of the DRAM 15, and the executable new firmware is executed. The old firmware of the executable format developed in the first area A1 is erased by overwriting due to the deployment of new firmware, or erased before the deployment of new firmware. Therefore, it is not necessary to secure a capacity capable of recording both the old firmware and the new firmware in an executable format in the first area A1 of the DRAM 15. Therefore, the capacity of the first area A1 necessary for recording the executable format firmware can be reduced.

また、フラッシュROM14に圧縮状態の旧ファームウェアが書き込まれたまま消去されないので、新ファームウェアに不都合や不具合がある場合に、旧ファームウェアをDRAM15の第1領域A1に実行可能な形式に展開して使用することができる。よって、新ファームウェアの実行後であっても、稼働するファームウェアを新ファームウェアから旧ファームウェアに容易に戻すことができる。   Further, since the old firmware in the compressed state is not erased as it is written to the flash ROM 14, the old firmware is expanded into a form that can be executed in the first area A1 of the DRAM 15 and used when there is a problem or a defect in the new firmware. be able to. Therefore, even after the execution of the new firmware, the operating firmware can be easily returned from the new firmware to the old firmware.

さらに、DRAM15の第2領域A2に保存されている圧縮状態の新ファームウェアがDRAM15の第1領域A1に実行可能な形式に展開された後は、DRAM15の第2領域A2に書き込まれている圧縮状態の新ファームウェアが削除される。これにより、第2領域A2の空き容量を増やすことができる。   Furthermore, after the new firmware in the compressed state stored in the second area A2 of the DRAM 15 is expanded into an executable format in the first area A1 of the DRAM 15, the compressed state written in the second area A2 of the DRAM 15 New firmware is removed. Thereby, the free space of the second area A2 can be increased.

オートテンポラリDLモードが解除されている状態で、通常DLの指示が操作部12に受け付けられた場合、旧ファームウェアの実行中に、サーバから通信部16に圧縮状態の新ファームウェアがダウンロードされると、その圧縮状態の新ファームウェアがDRAM15の第2領域A2を経由してフラッシュROM14に書き込まれる。そのため、リブート時には、フラッシュROM14に保存されている圧縮状態の新ファームウェアをDRAM15の第1領域A1に実行可能な形式に展開されて、その実行可能な形式の新ファームウェアが実行される。よって、リブートの度にDRAM15の第1領域A1に展開されるファームウェアが新ファームウェアから旧ファームウェアに戻ることを抑制できる。   When a normal DL instruction is received by the operation unit 12 in a state where the auto temporary DL mode is released, if a new firmware in a compressed state is downloaded from the server to the communication unit 16 while the old firmware is being executed, The new firmware in the compressed state is written to the flash ROM 14 via the second area A2 of the DRAM 15. Therefore, at the time of rebooting, the compressed new firmware stored in the flash ROM 14 is expanded into an executable format in the first area A1 of the DRAM 15, and the executable new firmware is executed. Therefore, it is possible to suppress that the firmware developed in the first area A1 of the DRAM 15 is returned from the new firmware to the old firmware every time of the reboot.

<変形例>
以上、本発明の一実施形態について説明したが、本発明は、他の形態で実施することもできる。
<Modification>
As mentioned above, although one Embodiment of this invention was described, this invention can also be implemented with another form.

たとえば、子機器の一例として、プリンタ1を取り上げたが、本発明は、プリンタ1に限らず、原稿の画像を読み取る画像読取機能を有するスキャナに適用することもでき、その画像読取機能とプリント用紙などのシートに画像を形成する画像形成機能とを併せ持つ複合機に適用されてもよい。本発明が画像読取機能を有する機器に適用される場合、図4AのステップS25では、CIS(Contact Image Sensor)などの読取デバイスのホームポジションを補正する動作が行われてもよい。   For example, although the printer 1 is taken as an example of a slave device, the present invention is not limited to the printer 1, but can be applied to a scanner having an image reading function for reading an image of a document. The present invention may be applied to a multifunction peripheral having an image forming function for forming an image on a sheet. When the present invention is applied to an apparatus having an image reading function, an operation of correcting the home position of a reading device such as a CIS (Contact Image Sensor) may be performed in step S25 of FIG. 4A.

また、テンポラリDLにより取得した新ファームウェアを実行中に、実行中の新ファームウェアよりもさらに新しいファームウェアがサーバに公開された場合は、新ファームウェアの処理としてテンポラリDL処理を実行するようにしてもよい。これにより、プリンタは常に最新のファームウェアをサーバから取得して実行することができる。   In addition, while a new firmware acquired by the temporary DL is being executed, if a firmware newer than the new firmware being executed is released to the server, the temporary DL processing may be executed as processing of the new firmware. Thus, the printer can always obtain the latest firmware from the server and execute it.

その他、前述の構成には、特許請求の範囲に記載された事項の範囲で種々の設計変更を施すことが可能である。   In addition, various design changes can be made to the above-described configuration within the scope of the matters described in the claims.

1:プリンタ
12:操作部
13:ASIC
14:フラッシュROM
15:DRAM
16:通信部
21:CPU
22:SRAM
A1:第1領域
A2:第2領域
1: Printer 12: Operation unit 13: ASIC
14: Flash ROM
15: DRAM
16: Communication unit 21: CPU
22: SRAM
A1: first area A2: second area

Claims (7)

第1ファームウェアが書き込まれた不揮発性メモリと、
第1領域および第2領域を有する揮発性メモリと、
外部機器と通信する通信部と、
制御部と、
を備える電子機器であって、
前記制御部は、
前記揮発性メモリの内容を保持したまま前記制御部自身を再起動する再起動処理を実行可能であり、
さらに、前記制御部は、
前記不揮発性メモリに書き込まれている前記第1ファームウェアを前記揮発性メモリの前記第1領域に前記制御部が実行可能な形式に変換して展開し、前記第1領域に展開された前記第1ファームウェアを実行する第1実行処理と、
前記通信部を制御して、前記外部機器から第2ファームウェアを受信させ、その第2ファームウェアを前記揮発性メモリの前記第2領域に書き込む書込処理と、
を実行し、
さらに、前記制御部は、
前記書込処理を実行後に前記再起動処理を実行し、
さらに、前記制御部は、
前記再起動処理を実行した後に、前記第2領域に書き込まれている前記第2ファームウェアを前記揮発性メモリの前記第1領域に前記制御部が実行可能な形式に変換して展開し、前記第1領域に展開された前記第2ファームウェアを実行する第2実行処理を実行する、
ことを特徴とする、電子機器。
Non-volatile memory in which the first firmware is written;
Volatile memory having a first area and a second area;
A communication unit that communicates with an external device;
A control unit,
An electronic device comprising
The control unit
It is possible to execute a restart process for restarting the control unit itself while holding the contents of the volatile memory,
Furthermore, the control unit
The first firmware written in the non-volatile memory is converted into a form that can be executed by the control unit in the first area of the volatile memory and developed, and the first firmware is developed in the first area. A first execution process for executing the firmware;
A writing process that controls the communication unit to receive a second firmware from the external device and writes the second firmware to the second area of the volatile memory;
Run
Furthermore, the control unit
The restart process is performed after the writing process is performed,
Furthermore, the control unit
After performing the restart process, the second firmware written in the second area is converted into a form that can be executed by the control unit in the first area of the volatile memory, and the second firmware is developed. Execute a second execution process of executing the second firmware expanded into one area;
An electronic device characterized by
第1ファームウェアが書き込まれた不揮発性メモリと、
第1領域および第2領域を有する揮発性メモリと、
外部機器と通信する通信部と、
制御部と、
を備える電子機器であって、
前記制御部は、
前記制御部自身が起動したときに、前記揮発性メモリの前記第2領域に第2ファームウェアが書き込まれているか否かを判断し、
前記揮発性メモリの前記第2領域に第2ファームウェアが書き込まれていない場合は、
前記不揮発性メモリに書き込まれている前記第1ファームウェアを、前記揮発性メモリの前記第1領域に前記制御部が実行可能な形式に変換して展開し、前記第1領域に展開された前記第1ファームウェアを実行する第1実行処理を実行し、
前記揮発性メモリの前記第2領域に第2ファームウェアが書き込まれている場合は、
前記揮発性メモリの前記第2領域に書き込まれている前記第2ファームウェアを、前記揮発性メモリの前記第1領域に前記制御部が実行可能な形式に変換して展開し、前記第1領域に展開された前記第2ファームウェアを実行する第2実行処理を実行する、
ことを特徴とする、電子機器。
Non-volatile memory in which the first firmware is written;
Volatile memory having a first area and a second area;
A communication unit that communicates with an external device;
A control unit,
An electronic device comprising
The control unit
When the control unit itself is activated, it is determined whether a second firmware is written to the second area of the volatile memory,
If the second firmware is not written to the second area of the volatile memory,
The first firmware written in the non-volatile memory is converted into a form that can be executed by the control unit in the first area of the volatile memory and expanded, and the first firmware is expanded in the first area. Execute the first execution process to execute 1 firmware,
When the second firmware is written to the second area of the volatile memory,
The second firmware written in the second area of the volatile memory is converted into a form that can be executed by the control unit in the first area of the volatile memory and developed, and the second firmware is stored in the first area. Execute a second execution process of executing the second firmware deployed;
An electronic device characterized by
請求項2に記載の電子機器であって、
前記制御部の再起動の際に記録が消えないフラグ保存用メモリをさらに備え、
前記制御部は、
前記揮発性メモリの前記第2領域に前記第2ファームウェアが書き込まれていることを示す情報であるフラグを前記フラグ保存用メモリに記録するフラグ記憶処理と、
前記揮発性メモリの内容を保持したまま前記制御部自身を再起動させる再起動処理と、
を実行し、
前記制御部自身が起動したときに、前記フラグ保存用メモリに前記フラグが記憶されている否かを判断し、
前記フラグ保存用メモリに前記フラグが記憶されていない場合は、
前記不揮発性メモリに書き込まれている前記第1ファームウェアを前記揮発性メモリの前記第1領域に実行可能な形式に展開し、
前記フラグ保存用メモリに前記フラグが記憶されている場合は、
前記揮発性メモリの前記第2領域に書き込まれている前記第2ファームウェアを前記揮発性メモリの前記第1領域に実行可能な形式に展開する、
ことを特徴とする、電子機器。
The electronic device according to claim 2, wherein
It further comprises a flag storage memory that does not lose its record when the control unit is restarted,
The control unit
A flag storage process of recording a flag, which is information indicating that the second firmware is written in the second area of the volatile memory, in the flag storage memory;
Restart processing for restarting the control unit itself while holding the contents of the volatile memory;
Run
When the control unit itself is activated, it is determined whether the flag is stored in the flag storage memory.
If the flag is not stored in the flag storage memory,
Developing the first firmware written in the non-volatile memory into an executable form in the first area of the volatile memory;
When the flag is stored in the flag storage memory,
Developing the second firmware written in the second area of the volatile memory into an executable format in the first area of the volatile memory;
An electronic device characterized by
請求項1〜3のいずれか一項に記載の電子機器であって、
指示を受け付ける受付部をさらに備え、
前記制御部は、
前記受付部に所定の指示が受け付けられた場合に、前記第2ファームウェアを前記不揮発性メモリに書き込む書込処理を実行し、
さらに前記制御部は、
前記書込処理の実行後に、前記前記第2ファームウェアを前記揮発性メモリの前記第2領域から削除する削除処理
を実行する、
ことを特徴とする、電子機器。
The electronic device according to any one of claims 1 to 3, wherein
It further comprises a reception unit for receiving an instruction,
The control unit
Performing a writing process of writing the second firmware to the non-volatile memory when a predetermined instruction is received by the receiving unit;
Furthermore, the control unit
After the execution of the write process, a deletion process of deleting the second firmware from the second area of the volatile memory is performed.
An electronic device characterized by
請求項1〜4のいずれか一項に記載の電子機器であって、
前記第2ファームウェアが前記揮発性メモリの前記第1領域に展開された後、前記揮発性メモリの前記第2領域に書き込まれている前記第2ファームウェアを削除する削除処理
を実行する、
ことを特徴とする、電子機器。
The electronic device according to any one of claims 1 to 4, wherein
Performing a deletion process of deleting the second firmware written in the second area of the volatile memory after the second firmware is expanded in the first area of the volatile memory;
An electronic device characterized by
第1ファームウェアが書き込まれた不揮発性メモリと、
第1領域および第2領域を有する揮発性メモリと、
外部機器と通信する通信部と、
制御部と、
通常ダウンロード処理およびテンポラリダウンロード処理のいずれを実行するかを選択する指示を受け付ける受付部と、
を備える電子機器であって、
前記制御部は、
前記受付部に受け付けられた指示に応じて、前記通常ダウンロード処理または前記テンポラリダウンロード処理を選択的に実行し、
前記通常ダウンロード処理では、前記通信部を制御して、前記外部機器から第2ファームウェアを受信させて、前記第2ファームウェアを前記不揮発性メモリに書き込んで、前記第2ファームウェアを前記第1ファームウェアとして置き換え、
前記テンポラリダウンロード処理では、前記通信部を制御して、前記外部機器から前記第2ファームウェアを受信させて、前記第2ファームウェアを前記揮発性メモリの前記第2領域に書き込み、
前記テンポラリダウンロード処理の実行後、前記揮発性メモリの前記第2領域に書き込まれている前記第2ファームウェアを前記揮発性メモリの前記第1領域に実行可能な形式に展開する展開処理を実行する、
ことを特徴とする、電子機器。
Non-volatile memory in which the first firmware is written;
Volatile memory having a first area and a second area;
A communication unit that communicates with an external device;
A control unit,
A reception unit that receives an instruction to select which of normal download processing and temporary download processing is to be executed;
An electronic device comprising
The control unit
Selectively executing the normal download process or the temporary download process according to the instruction received by the reception unit;
In the normal download process, the communication unit is controlled to receive the second firmware from the external device, write the second firmware to the non-volatile memory, and replace the second firmware as the first firmware. ,
In the temporary download process, the communication unit is controlled to cause the second firmware to be received from the external device, and the second firmware is written to the second area of the volatile memory.
After the execution of the temporary download process, an expansion process of expanding the second firmware written in the second area of the volatile memory into an executable format in the first area of the volatile memory is executed.
An electronic device characterized by
第1ファームウェアが書き込まれた不揮発性メモリと、
第1領域および第2領域を有する揮発性メモリと、
外部機器と通信する通信部と、
制御部と、
通常ダウンロード処理およびテンポラリダウンロード処理のいずれを実行するかを選択する指示を受け付ける受付部と、
を備える電子機器であって、
前記制御部は、
前記揮発性メモリの内容を保持したまま前記制御部自身を再起動する再起動処理
を実行可能であり、
さらに、前記制御部は、
前記受付部に受け付けられた指示に応じて、前記通常ダウンロード処理または前記テンポラリダウンロード処理を選択的に実行し、
さらに、前記制御部は、
前記通常ダウンロード処理では、前記通信部を制御して、前記外部機器から第2ファームウェアを受信させて、前記第2ファームウェアを前記不揮発性メモリに書き込んで、前記第2ファームウェアを前記第1ファームウェアとして置き換え、
さらに、前記制御部は、
前記テンポラリダウンロード処理では、前記通信部を制御して、前記外部機器から前記第2ファームウェアを受信させて、前記第2ファームウェアを前記揮発性メモリの前記第2領域に書き込み、前記再起動処理を実行し、
さらに、前記制御部は、前記制御部自身が起動した場合に、
前記揮発性メモリの前記第2領域に前記第2ファームウェアが書き込まれているか否か判断する判断処理を実行し、
さらに、前記制御部は、
前記判断処理により前記揮発性メモリの前記第2領域に前記第2ファームウェアが書き込まれていないと判断した場合、
前記不揮発性メモリに書き込まれている前記第1ファームウェアを前記揮発性メモリの前記第1領域に実行可能な形式に展開し、
前記判断処理により前記揮発性メモリの前記第2領域に前記第2ファームウェアが書き込まれていると判断した場合、
前記第2ファームウェアを前記揮発性メモリの前記第1領域に実行可能な形式に展開する展開処理を実行する、
ことを特徴とする、電子機器。
Non-volatile memory in which the first firmware is written;
Volatile memory having a first area and a second area;
A communication unit that communicates with an external device;
A control unit,
A reception unit that receives an instruction to select which of normal download processing and temporary download processing is to be executed;
An electronic device comprising
The control unit
It is possible to execute a restart process for restarting the control unit itself while holding the contents of the volatile memory,
Furthermore, the control unit
Selectively executing the normal download process or the temporary download process according to the instruction received by the reception unit;
Furthermore, the control unit
In the normal download process, the communication unit is controlled to receive the second firmware from the external device, write the second firmware to the non-volatile memory, and replace the second firmware as the first firmware. ,
Furthermore, the control unit
In the temporary download process, the communication unit is controlled to cause the second firmware to be received from the external device, the second firmware is written to the second area of the volatile memory, and the restart process is executed. And
Furthermore, when the control unit is activated, the control unit may
Performing a determination process to determine whether the second firmware is written to the second area of the volatile memory;
Furthermore, the control unit
When it is determined by the determination process that the second firmware is not written to the second area of the volatile memory,
Developing the first firmware written in the non-volatile memory into an executable form in the first area of the volatile memory;
When it is determined by the determination process that the second firmware is written to the second area of the volatile memory,
Executing a development process for expanding the second firmware into an executable format in the first area of the volatile memory;
An electronic device characterized by
JP2017197607A 2017-10-11 2017-10-11 Electronics Active JP7031211B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017197607A JP7031211B2 (en) 2017-10-11 2017-10-11 Electronics

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017197607A JP7031211B2 (en) 2017-10-11 2017-10-11 Electronics

Publications (2)

Publication Number Publication Date
JP2019071003A true JP2019071003A (en) 2019-05-09
JP7031211B2 JP7031211B2 (en) 2022-03-08

Family

ID=66441221

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017197607A Active JP7031211B2 (en) 2017-10-11 2017-10-11 Electronics

Country Status (1)

Country Link
JP (1) JP7031211B2 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001100987A (en) * 1999-09-29 2001-04-13 Matsushita Electric Ind Co Ltd Device and method for updating program
JP2009139997A (en) * 2007-12-03 2009-06-25 Fujitsu Ltd Firmware integration method, firmware integration device, and firmware integration program
JP2011039624A (en) * 2009-08-07 2011-02-24 Sanyo Electric Co Ltd Medical device and medical program
JP2012174196A (en) * 2011-02-24 2012-09-10 Canon Inc Cloud computing system, and control method and program for the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001100987A (en) * 1999-09-29 2001-04-13 Matsushita Electric Ind Co Ltd Device and method for updating program
JP2009139997A (en) * 2007-12-03 2009-06-25 Fujitsu Ltd Firmware integration method, firmware integration device, and firmware integration program
JP2011039624A (en) * 2009-08-07 2011-02-24 Sanyo Electric Co Ltd Medical device and medical program
JP2012174196A (en) * 2011-02-24 2012-09-10 Canon Inc Cloud computing system, and control method and program for the same

Also Published As

Publication number Publication date
JP7031211B2 (en) 2022-03-08

Similar Documents

Publication Publication Date Title
JP6073854B2 (en) Electronic equipment and firmware recovery program
US9348578B2 (en) Information processing apparatus capable of updating firmware, control method therefor, and storage medium storing control program therefor
US20090240932A1 (en) Information processing device, and method of starting information processing device
JP6074064B2 (en) Electronics
JP2011095952A (en) Method for updating firmware and electronic equipment
JP6041588B2 (en) Image forming device, program update method and program
JP5084853B2 (en) Firmware update device, communication device, electronic device, firmware update system, firmware update method, and program
JP7031211B2 (en) Electronics
JP2007148629A (en) Print system and firmware update method
US11797292B2 (en) Information processing apparatus using swap file, control method therefor, and storage medium
JP2023068538A (en) Information processing apparatus, method for controlling the same, and program
JP7229786B2 (en) CONTROL DEVICE, IMAGE FORMING APPARATUS AND STARTING METHOD
JP5803598B2 (en) Image forming apparatus
JP5895609B2 (en) Information processing apparatus, image forming apparatus, and program
KR20090021695A (en) System for roll back of flash memory and method there of
JP2019133407A (en) Firmware update system and firmware update method
JP7494543B2 (en) Information processing device and program
JP7443786B2 (en) Information processing device, information processing method, program, and information processing system
JP2009048484A (en) Electronic equipment and method for updating electronic information
JP7067057B2 (en) Electronics
JP2005032014A (en) Data processor, starting program for data processor, and starting method for data processor
JP7516126B2 (en) Control device, activation method thereof, and electrical device
JP2016103160A (en) Image processing device and method of updating program
JP2003330655A (en) Image forming device and method for controlling the same device and computer readable storage medium and its program
JP2013101451A (en) Firmware update system and firmware update method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200918

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210915

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211126

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: 20220125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220207

R150 Certificate of patent or registration of utility model

Ref document number: 7031211

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150