JP2007058561A - Program download system, method for it, program supply device, and controller - Google Patents
Program download system, method for it, program supply device, and controller Download PDFInfo
- Publication number
- JP2007058561A JP2007058561A JP2005242964A JP2005242964A JP2007058561A JP 2007058561 A JP2007058561 A JP 2007058561A JP 2005242964 A JP2005242964 A JP 2005242964A JP 2005242964 A JP2005242964 A JP 2005242964A JP 2007058561 A JP2007058561 A JP 2007058561A
- Authority
- JP
- Japan
- Prior art keywords
- program
- download
- control device
- check
- area
- 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 program download system and method for writing a program to a non-volatile memory for storing a program for operating the control device included in the control device, and a program supply device constituting the system. The present invention relates to a control device.
たとえば、複合機等においては、印刷動作や画像処理などを実行するメイン基板(制御装置)に対して、各種機能を追加できるようにオプション設定されるサブ基板(制御装置)を増設できるものがある。このようなサブ基板としては、LAN基板やUSB基板などが提供されている。 For example, some multifunction peripherals can be provided with additional sub-boards (control devices) that are set as options so that various functions can be added to the main board (control device) that executes printing operations and image processing. . As such a sub board, a LAN board, a USB board, and the like are provided.
これらメイン基板及びサブ基板は一般的に、プログラムを実行するプロセッサであるCPUと、基板内外における各種データの送受信を制御するASICと、基板を動作させるためのプログラムを格納するためのROMと、RAM等で構成されている。そして、今日では、基板を動作させるためのプログラムを格納するためのROMとしては、アップグレードに対応するために、フラッシュ・メモリ等の不揮発性メモリを搭載するものが主流となってきている。 The main board and sub board are generally a CPU that is a processor for executing a program, an ASIC that controls transmission and reception of various data inside and outside the board, a ROM for storing a program for operating the board, and a RAM. Etc. Nowadays, a ROM for storing a program for operating a substrate is mainly equipped with a nonvolatile memory such as a flash memory in order to cope with an upgrade.
基板を動作させるためのプログラムは、通常、基板を最低限動作させるためのブートプログラムと、基板の全機能を動作させるためのメインプログラムとで構成されている。基板の初期設定や初期診断は、ブートプログラムにより行われる。 The program for operating the board is usually composed of a boot program for operating the board at a minimum and a main program for operating all the functions of the board. The initial setting and initial diagnosis of the board are performed by a boot program.
基板に対してのブートプログラムの提供は、フラッシュ・メモリ・ライタ(フラッシュROMライタ)などを使用してフラッシュ・メモリにブートプログラムを予めダウンロードしておき、該ダウンロード済のフラッシュ・メモリを基板上に実装することでなされることが一般的である。 The boot program is provided to the board by using a flash memory writer (flash ROM writer) or the like to download the boot program to the flash memory in advance and placing the downloaded flash memory on the board. It is generally done by implementing.
また、その他の手法として、フラッシュ・メモリを含む周辺回路を、基板本体から独立したフラッシュ・メモリDIMM基板等の別基板とし、該別基板を、基板本体に対して着脱自在な構成としているものもある。このような構成では、基板への部品実装の段階において必ずしもフラッシュ・メモリへのブートプログラムのダウンロード作業は必要なく、基板へ部品実装をした後からでも、基板より該別基板を外すことで、別基板に搭載されたフラッシュ・メモリに、専用プログラムライタなどを使用して、ブートプログラムをダウンロードすることができる。しかしながら、このような構成は、フラッシュ・メモリを別基板に搭載しているので、基板全体として必要な部品コストが高いというデメリットがある。 As another method, a peripheral circuit including a flash memory may be a separate substrate such as a flash memory DIMM substrate independent of the substrate body, and the separate substrate may be detachable from the substrate body. is there. In such a configuration, it is not always necessary to download the boot program to the flash memory at the stage of mounting the component on the board. Even after mounting the component on the board, the separate board is removed from the board. A boot program can be downloaded to a flash memory mounted on the board using a dedicated program writer or the like. However, such a configuration has a demerit that the cost of parts required for the entire board is high because the flash memory is mounted on a separate board.
一方、特許文献1では、サブ基板のMPUが、サブ基板に入力された書き換え用プログラム(ダウンロード用プログラムに相当)を、直接またはメイン基板のMPUを介してメイン基板上のRAMに格納し、該メイン基板のRAMに格納された書き換え用プログラムをサブ基板上のフラッシュ・メモリに直接またはメイン基板のCPUを介して書き込むデータ書き換え方法が提案されている。
ところが、事前にブートプログラムを書き込んだフラッシュ・メモリを基板上に実装する従来の技術では、将来的に、サブ基板が複数種のメイン基板の共通オプションとなった場合、各種メイン基板に対応したブートプログラムを書き込んだサブ基板を各々用意する必要があり、共通オプションのメリットが生かせない。また、将来的に、ブートプログラムが機能拡張されたとしても、ブートプログラムのバージョンアップを実現することができない。 However, with the conventional technology that mounts the flash memory with the boot program written in advance on the board, if the sub board becomes a common option for multiple types of main boards in the future, booting that supports various main boards It is necessary to prepare each sub-board on which the program is written, and the advantages of common options cannot be utilized. Also, even if the boot program is expanded in the future, the boot program cannot be upgraded.
なお、フラッシュ・メモリを、基板に対して着脱自在に構成された別基板に搭載する従来の技術においては、接続されるメイン基板に対応させてブートプログラムを書き込むことができるため、上のような問題は発生しないが、前述したように、別基板としているので、部品コストが高いといったデメリットがあり、好ましくない。 In the conventional technology in which the flash memory is mounted on a separate board configured to be detachable from the board, the boot program can be written in correspondence with the main board to be connected. Although no problem occurs, as described above, since it is a separate substrate, there is a demerit that the component cost is high, which is not preferable.
このような課題に対する解決策の一つとして、メイン基板側からサブ基板のフラッシュ・メモリにサブ基板のプログラムを直接ダウンロードする構成が考えられる。これによれば、サブ基板のフラッシュ・メモリには、メイン基板からそれに応じたブートプログラムがダウンロードされるので、対応するブートプログラムが書き込まれたサブ基板をメイン基板の種類に応じて用意しなくても済む。 As a solution to such a problem, a configuration in which the program of the sub board is directly downloaded from the main board side to the flash memory of the sub board can be considered. According to this, since the boot program corresponding to the main board is downloaded to the flash memory of the sub board, it is not necessary to prepare a sub board on which the corresponding boot program is written according to the type of the main board. It will be over.
しかしながら、この場合、何の工夫もなく、サブ基板のフラッシュ・メモリをメイン基板に対して開放すると、メイン基板はサブ基板のフラッシュ・メモリに対して自由にデータをダウンロードすることが可能となるため、メイン基板からサブ基板に対して不正なデータをダウンロードして、サブ基板が本来意図していない用途に用いられるといった惧れがある。また、誤ったプログラムをサブ基板にダウンロードした場合、サブ基板が起動しなくなる可能性もある。 However, in this case, if the sub-board flash memory is released from the main board without any ingenuity, the main board can freely download data to the sub-board flash memory. There is a possibility that illegal data is downloaded from the main board to the sub board, and the sub board is used for an unintended purpose. Also, if an incorrect program is downloaded to the sub board, the sub board may not start.
なお、上記した特許文献1では、サブ基板のCPUを動作させるためのプログラムが最低限必要であり、サブ基板にプログラムが何もない状態からのデータのダウンロード方法については、特に言及するものではない。
Note that, in the above-described
本発明は上記課題に鑑みなされたものであって、プログラムが何もない状態の制御装置に、許可されているプログラム供給装置からのみ選択的にプログラムをダウンロードさせることが可能なプログラムダウンロードシステム及びその方法、並びに該プログラムダウンロード方法を実施し、該システムを構成するプログラム供給装置と制御装置を提供することであり、ひいては、ある制御装置が複数種の他の主たる制御装置の共通オプションとなった場合でも、共通オプションのメリットが生かせ、また、ブートプログラムが機能拡張されたとしても、ブートプログラムのバージョンアップにも容易に対応可能にすることを目的としている。 The present invention has been made in view of the above problems, and a program download system capable of selectively downloading a program only from a permitted program supply device to a control device having no program, and the program download system And providing the program supply device and the control device constituting the system by implementing the method and the program download method, and eventually, when a certain control device becomes a common option of a plurality of other main control devices However, the purpose is to make it possible to take advantage of the common options and to easily handle upgrades of the boot program even if the boot program has been expanded.
本発明に係るプログラムダウンロード方法は、上記課題を解決するために、制御装置が有する該制御装置を動作させるためのプログラムを格納するための不揮発性メモリに、該制御装置を動作させるためのプログラムをプログラム供給装置からダウンロードさせるプログラムダウンロードシステムのプログラムダウンロード方法であって、上記制御装置は、上記プログラム供給装置に対して、上記不揮発性メモリにおけるブートプログラム領域の一部の所定領域のみを開放し、上記プログラム供給装置は、上記制御装置において開放された上記所定領域にチェックプログラムをダウンロードさせ、上記制御装置は、上記プログラム供給装置よりダウンロードされた上記チェックプログラムを起動して、接続されている上記プログラム供給装置が当該制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば上記不揮発性メモリにおける上記所定領域以外の領域も開放し、許可対象でなければ上記不揮発性メモリにおける上記所定領域以外の領域を開放しないことを特徴としている。 In order to solve the above problems, a program download method according to the present invention provides a program for operating a control device in a non-volatile memory for storing the program for operating the control device included in the control device. A program download method of a program download system for downloading from a program supply device, wherein the control device opens only a predetermined area of a boot program area in the nonvolatile memory to the program supply device, and The program supply device causes the check program to be downloaded to the predetermined area opened in the control device, and the control device starts the check program downloaded from the program supply device and connects the program supply apparatus It is determined whether or not the program is permitted to be downloaded to the control device, and if it is permitted, an area other than the predetermined area in the nonvolatile memory is also opened. An area other than the predetermined area in the nonvolatile memory is not opened.
これによれば、制御装置では、その不揮発性メモリにおけるブートプログラム領域の一部の所定領域にプログラム供給装置よりダウンロードされたチェックプログラムを起動することで、接続されているプログラム供給装置が自装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば不揮発性メモリにおける上記所定領域以外の領域も開放するが、許可対象でなければ不揮発性メモリにおける上記所定領域以外の領域を開放しない。 According to this, the control device starts the check program downloaded from the program supply device in a predetermined area of the boot program area in the non-volatile memory, so that the connected program supply device is transferred to the own device. It is determined whether or not the program is permitted to be downloaded, and if it is permitted, an area other than the predetermined area in the nonvolatile memory is also released. Do not open areas other than the predetermined area.
しかも、制御装置がプログラム供給装置に対して、チェックプログラムをダウンロードするために解放する不揮発性メモリにおける領域は、ブートプログラム領域の一部の所定領域のみであるので、プログラム供給装置が、該所定領域にブートプログラムをダウンロードさせようとしても、ブートプログラムを全て格納することはできず制御装置を動作させることはできない。 Moreover, since the area in the non-volatile memory that the control device releases to download the check program to the program supply device is only a predetermined area of the boot program area, the program supply apparatus Even if an attempt is made to download the boot program, the entire boot program cannot be stored and the control device cannot be operated.
したがって、制御装置に対しては、その不揮発性メモリに何のプログラムも格納されていない状態であっても、許可されているプログラム供給装置からのみ選択的にブートプログラムを始めとして、種々のプログラム(ダウンロード用プログラム)をダウンロードさせることが可能となり、制御装置に対して、不正なデータがダウンロードされてしまい、本来意図していない用途に使用されたり、制御装置が起動しなくなったりすることがない。 Therefore, for the control device, even in a state where no program is stored in the nonvolatile memory, various programs (including a boot program selectively from an authorized program supply device) Download program) can be downloaded, and unauthorized data is downloaded to the control device, so that it is not used for an unintended purpose or the control device does not start.
上記した本発明のプログラムダウンロード方法においては、さらに、制御装置は、プログラム供給装置が許可対象であれば、上記不揮発性メモリにおけるブートプログラム領域分を開放することが好ましい。 In the program download method of the present invention described above, it is preferable that the control device releases the boot program area in the non-volatile memory if the program supply device is permitted.
これによれば、チェックプログラムにより、制御装置と接続されているプログラム供給装置が、プログラムのダウンロードが許可されている許可対象であると判断されたとしても、制御装置は、自装置を最低限動作させるために必要なブートプログラム領域のみを開放するので、ブートプログラム領域以外の領域に対して、本来意図していないプログラムがダウンロードされることを未然に防止することができる。 According to this, even if it is determined by the check program that the program supply device connected to the control device is a permitted object for which downloading of the program is permitted, the control device operates the device as a minimum. Since only the boot program area necessary for the release is released, it is possible to prevent an unintended program from being downloaded to an area other than the boot program area.
上記した本発明のプログラムダウンロード方法においては、さらに、上記チェックプログラムには、プログラム供給装置に付されている装置固有の識別情報が含まれており、制御装置における許可対象であるか否かの判断に、プログラム供給装置から取得される上記識別情報を用いることが好ましい。 In the above-described program download method of the present invention, the check program further includes device-specific identification information attached to the program supply device, and it is determined whether or not the control device is a permission target. It is preferable to use the identification information acquired from the program supply device.
これによれば、制御装置側に、許可対象であるプログラム供給装置の識別情報リスト等は必要になるものの、制御装置が、接続されているプログラム供給装置からの識別情報を基に許可対象であるか否かを判断することができるので、許可されていないプログラム供給装置からのプログラムのダウンロードを一切排除することができる。 According to this, although the control device side needs the identification information list of the program supply device to be permitted, the control device is the permission target based on the identification information from the connected program supply device. Therefore, it is possible to eliminate any downloading of the program from the unauthorized program supply apparatus.
上記した本発明のプログラムダウンロード方法においては、さらに、制御装置における許可対象であるか否かの判断に、制御装置に設けられるジャンパの設定を用いることが好ましい。 In the program download method of the present invention described above, it is preferable to use a jumper setting provided in the control device to determine whether or not the control device is a permission target.
これによれば、制御装置に設けたジャンパ設定により、接続されているプログラム供給装置を許可対象に指定することができるので、制御装置側に許可対象であるプログラム供給装置の識別情報リスト等を具備させておかなくても、許可対象のプログラム供給装置を簡単に指定することができる。 According to this, since the connected program supply device can be designated as the permitted object by the jumper setting provided in the control device, the control device side has an identification information list of the permitted program supply device. Even if it is not allowed, the program supply device to be permitted can be easily specified.
本発明のプログラム供給装置は、制御装置と接続され、該制御装置とI/Fメモリ空間を共有し、該制御装置が有する該制御装置を動作させるためのプログラムを格納するための不揮発性メモリに、該制御装置を動作させるプログラムを上記I/Fメモリ空間を介してダウンロードさせるプログラム供給装置であって、接続されている上記プログラム供給装置が上記制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば上記制御装置が有する不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放し、許可対象でなければ上記不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放しない処理を実行させるチェックプログラムを、上記制御装置が有する上記不揮発性メモリにおけるブートプログラム領域にダウンロードさせるチェックプログラムダウンロード手段を備えることを特徴としている。 A program supply device of the present invention is connected to a control device, shares an I / F memory space with the control device, and stores in a non-volatile memory for storing a program for operating the control device included in the control device. A program supply device for downloading a program for operating the control device via the I / F memory space, wherein the connected program supply device is permitted to download the program to the control device. If it is a permission target, the memory area of the nonvolatile memory included in the control device is released from the I / F memory space, and if it is not a permission target, the memory area of the nonvolatile memory The nonvolatile memory having a check program for executing a process that does not open the I / F memory space It is characterized in that it comprises a check program download unit that downloads the definitive boot program area.
本発明のプログラム供給装置のプログラム供給方法は、上記課題を解決するために、制御装置と接続され、該制御装置とI/Fメモリ空間を共有し、該制御装置が有する該制御装置を動作させるためのプログラムを格納するための不揮発性メモリに、該制御装置を動作させるプログラムを上記I/Fメモリ空間を介してダウンロードさせるプログラム供給装置のプログラム供給方法であって、接続されている上記プログラム供給装置が上記制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば上記制御装置が有する不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放し、許可対象でなければ上記不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放しない処理を実行させるチェックプログラムを、上記制御装置が有する上記不揮発性メモリにおけるブートプログラム領域にダウンロードさせるチェックプログラムダウンロードステップを含むことを特徴としている。 In order to solve the above problems, a program supply method of a program supply apparatus according to the present invention is connected to a control apparatus, shares an I / F memory space with the control apparatus, and operates the control apparatus included in the control apparatus. A program supply method for a program supply device for downloading a program for operating the control device to a non-volatile memory for storing a program for use via the I / F memory space, wherein the program supply is connected It is determined whether or not the device is a permitted object permitted to download the program to the control device. If the device is permitted, the memory area of the nonvolatile memory included in the control device is assigned to the I / F memory space. If it is not a permission target, execute processing that does not open the memory area of the non-volatile memory to the I / F memory space. The check program which is characterized in that it comprises a checking program download step of downloading the boot program area in the nonvolatile memory of the control apparatus.
本発明の制御装置は、上記課題を解決するために、プログラム供給装置と接続され、該プログラム供給装置とI/Fメモリ空間を共有し、該プログラム供給装置から、自装置が有する自装置を動作させるためのプログラムを格納するための不揮発性メモリに対して、自装置を動作させるためのプログラムがダウンロードされる制御装置であって、自装置が有する上記不揮発性メモリのブートプログラム領域にブートプログラムが格納されていない状態で、上記不揮発性メモリのブートプログラム領域の一部の所定領域のみを上記I/Fメモリ空間に対して開放するチェックプログラム受付手段を備えることを特徴としている。 In order to solve the above problems, the control device of the present invention is connected to a program supply device, shares an I / F memory space with the program supply device, and operates the own device included in the own device from the program supply device. A control device in which a program for operating the device is downloaded with respect to the nonvolatile memory for storing the program for causing the boot device to be stored in the boot program area of the nonvolatile memory included in the device It is characterized by comprising check program accepting means for releasing only a predetermined area of the boot program area of the non-volatile memory to the I / F memory space when not stored.
本発明の制御装置の制御方法は、上記課題を解決するために、プログラム供給装置と接続され、該プログラム供給装置とI/Fメモリ空間を共有し、該プログラム供給装置から、自装置が有する自装置を動作させるためのプログラムを格納するための不揮発性メモリに対して、自装置を動作させるためのプログラムがダウンロードされる制御装置の制御方法であって、自装置が有する上記不揮発性メモリのブートプログラム領域にブートプログラムが格納されていない状態で、上記不揮発性メモリのブートプログラム領域の一部の所定領域のみを上記I/Fメモリ空間に対して開放するチェックプログラム受付ステップを含むことを特徴としている
これによれば、プログラム供給装置は、チェックプログラムダウンロード手段が、接続されている制御装置における不揮発性メモリのブートプログラム領域に対して、接続されているプログラム供給装置が該制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば該制御装置が有する不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放し、許可対象でなければ不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放しない処理を実行させるチェックプログラムをダウンロードさせる。
In order to solve the above problems, a control method for a control device according to the present invention is connected to a program supply device and shares an I / F memory space with the program supply device. A control method for a control device in which a program for operating the device is downloaded to a nonvolatile memory for storing a program for operating the device, and booting the nonvolatile memory of the device And a check program receiving step for releasing only a predetermined area of the boot program area of the nonvolatile memory from the I / F memory space in a state where no boot program is stored in the program area. According to this, the program supply device is connected to the check program download means. It is determined whether or not the connected program supply device is permitted to download the program to the control device with respect to the boot program area of the nonvolatile memory in the control device. If there is a non-permitted memory area of the non-volatile memory in the control device is released to the I / F memory space, and if not permitted, the non-volatile memory area is not released to the I / F memory space. Download the check program to be downloaded.
一方、制御装置では、チェックプログラム受付手段が、自装置が有する不揮発性メモリのブートプログラム領域にブートプログラムが格納されていない状態で、不揮発性メモリのブートプログラム領域の一部の所定領域のみを上記I/Fメモリ空間に対して開放する。 On the other hand, in the control device, the check program receiving means does not store the boot program in the boot program region of the nonvolatile memory included in the own device, and only the predetermined region of the boot program region of the nonvolatile memory is Open to the I / F memory space.
したがって、チェックプログラムダウンロード手段を備えたプログラム供給装置とチェックプログラム受付手段を備えた制御装置とにより、前述した本発明のプログラムダウンロードシステムにおけるプログラムダウンロード方法を容易に実施することができる。 Therefore, the program download method in the above-described program download system of the present invention can be easily implemented by the program supply device provided with the check program download means and the control device provided with the check program reception means.
上記した本発明のプログラム供給装置においては、さらに、上記チェックプログラムダウンロード手段は、プログラム格納領域に格納されているチェックプログラムを参照して上記制御装置に送信するためのチェックプログラムを生成するプログラム生成手段と、該チェックプログラム生成手段にて生成されたチェックプログラムを、上記I/Fメモリ空間を介して上記制御装置へと転送するプログラム送信手段とで構成することができる。 In the above-described program supply apparatus of the present invention, the check program download means further includes a program generation means for generating a check program to be transmitted to the control device with reference to the check program stored in the program storage area. And a program transmission means for transferring the check program generated by the check program generation means to the control device via the I / F memory space.
また、本発明のプログラム供給装置においては、さらに、自装置に付されている装置固有の識別情報を格納する識別情報格納領域を備え、上記チェックプログラム生成手段は、上記識別情報格納領域を参照して、チェックプログラムに自装置の識別情報を組み入れる構成とすることができる。 The program supply apparatus of the present invention further includes an identification information storage area for storing identification information unique to the apparatus attached to the own apparatus, and the check program generating means refers to the identification information storage area. Thus, the identification information of the own device can be incorporated into the check program.
そして、このようなプログラム供給装置とでプログラムダウンロードシステムを構成する本発明の制御装置としては、さらに、上記不揮発性メモリに、自装置へのプログラムのダウンロードが許可されている許可対象のプログラム供給装置に付された識別情報のリストが格納されている構成とすることが好ましい。 Further, as the control device of the present invention that constitutes a program download system with such a program supply device, the program supply device to be permitted that is allowed to download the program to the own device in the nonvolatile memory. It is preferable that a list of identification information attached to is stored.
このようなプログラム供給装置と制御装置の構成とすることで、前述した、制御装置側で接続されているプログラム供給装置からの識別情報を基に許可対象であるか否かを判断して、許可されていないプログラム供給装置からのプログラムのダウンロードを一切排除することができるといった、本発明のプログラムダウンロード方法を容易に実施することができる。 By adopting such a configuration of the program supply device and the control device, it is determined whether or not it is permitted based on the identification information from the program supply device connected on the control device side described above. It is possible to easily implement the program download method of the present invention in which it is possible to eliminate any program download from a program supply apparatus that has not been performed.
また、本発明の制御装置においては、自装置と接続されているプログラム供給装置が、自装置へのプログラムのダウンロードが許可されている許可対象であることを指定するためのジャンパが設けられている構成とすることもできる。 Further, in the control device of the present invention, a jumper is provided for designating that the program supply device connected to the own device is a permission target that is permitted to download the program to the own device. It can also be configured.
このような構成とすることで、前述した、制御装置側に許可対象であるプログラム供給装置の識別情報リスト等を具備させておかなくても、許可対象のプログラム供給装置を簡単に指定することができるといった、本発明のプログラムダウンロード方法を容易に実施することができる。 By adopting such a configuration, it is possible to easily specify the program supply device to be permitted even if the control device side does not have the identification information list of the program supply device to be permitted as described above. The program download method of the present invention can be easily implemented.
さらに、本発明のプログラム供給装置においては、上記チェックプログラムに、チェックプログラムのダウンロードの終了を示すチェックプログラムダウンロード終了情報を上記プログラム供給装置へ送信する処理を実行させる終了報知プログラムがさらに含まれている構成としてもよい。 Furthermore, in the program supply apparatus of the present invention, the check program further includes an end notification program for executing a process of transmitting check program download end information indicating the end of download of the check program to the program supply apparatus. It is good also as a structure.
これによれば、制御装置からチェックプログラムを正常にダウンロードできたことが通知されてくるので、プログラム供給装置側で、チェックプログラムのダウンロードが正常に終了したことを確認することができる。 According to this, since it is notified from the control device that the check program has been successfully downloaded, the program supply device can confirm that the download of the check program has been completed normally.
さらに、本発明のプログラム供給装置においては、上記制御装置より上記チェックプログラムダウンロード終了情報を受信したか否かを判断する解析手段をさらに備え、上記チェックプログラムダウンロード手段は、チェックプログラムを送信後、上記解析手段がチェックプログラムダウンロード終了情報を受信していない場合に、上記制御装置に対して上記チェックプログラムを再送する構成としてもよい。 Furthermore, in the program supply apparatus of the present invention, the program supply apparatus further includes analysis means for determining whether or not the check program download end information is received from the control apparatus, and the check program download means transmits the check program, and then When the analysis unit has not received the check program download end information, the check program may be retransmitted to the control device.
これによれば、プログラム供給装置から制御装置に対してチェックプログラムをダウンロードする時に、何らかの影響でチェックプログラムを正常にダウンロードできず、プログラム供給装置の解析手段が、制御装置からのチェックプログラムダウンロード終了情報を受信できない場合、チェックプログラムダウンロード手段が制御装置に対してチェックプログラムを再送して再度ダウンロードさせるので、チェックプログラムダウンロード作業を確実に実施することができる。 According to this, when the check program is downloaded from the program supply device to the control device, the check program cannot be normally downloaded due to some influence, and the analysis means of the program supply device receives the check program download end information from the control device. When the check program cannot be received, the check program download means re-sends the check program to the control device and downloads it again, so that the check program download operation can be performed reliably.
さらに、本発明のプログラム供給装置においては、上記制御装置へのチェックプログラムのダウンロード状態をユーザに報知するダウンロード状態報知手段をさらに備える構成としてもよい。 Furthermore, the program supply apparatus of the present invention may further include a download state notifying unit that notifies the user of the download state of the check program to the control device.
報知されるダウンロード状態としては、例えば、チェックプログラムのダウンロード中であること、チェックプログラムのダウンロードが終了したこと、或いはチェックプログラムのダウンロードが許可されていないことなどを挙げることができる。 Examples of the download state to be notified include that the check program is being downloaded, that the check program has been downloaded, or that the check program is not permitted to be downloaded.
このように、チェックプログラムダウンロードの状態をユーザに報知することで、チェックプログラムのダウンロード途中に、プログラム供給装置あるいは制御装置の電源を落とされることに対して未然に注意を促すことができる、またはプログラムのダウンロードが許可されていないプログラム供給装置に対して制御装置を誤って装着している場合に、プログラムダウンロードが許可されていない旨をユーザに報知することができる。 In this way, by notifying the user of the status of the check program download, it is possible to call attention to the fact that the power of the program supply device or the control device is turned off during the download of the check program. When the control device is erroneously attached to the program supply device that is not permitted to download the program, the user can be notified that the program download is not permitted.
さらに、本発明のプログラム供給装置においては、自装置の電源が投入されたか否かを判断する電源監視手段をさらに備え、上記チェックプログラムダウンロード手段は、上記電源監視手段にて電源が投入されたと判断されると、上記制御装置にチェックプログラムをダウンロードさせる動作を開始する構成としてもよい。 Further, the program supply apparatus of the present invention further includes power monitoring means for determining whether or not the power of the own apparatus is turned on, and the check program download means determines that power is turned on by the power monitoring means. Then, it is good also as a structure which starts the operation | movement which makes the said control apparatus download a check program.
これによれば、プログラム供給装置に電源が投入された時に、プログラム供給装置に装着されている制御装置に対して自動的にチェックプログラムがダウンロードされるので、チェックプログラムのダウンロードをユーザによるオペレーションを介在することなく実施することができる。 According to this, when the power is supplied to the program supply device, the check program is automatically downloaded to the control device mounted on the program supply device, so that the check program download is mediated by the operation by the user. Can be implemented without.
さらに、本発明のプログラム供給装置においては、上記電源監視手段にて電源が投入されたと判断されると、上記制御装置にチェックプログラムをダウンロードさせる動作を開始することの可否を、上記チェックプログラムダウンロード手段に対して設定する設定手段をさらに備える構成としてもよい。 Furthermore, in the program supply apparatus of the present invention, when the power monitoring means determines that the power is turned on, the check program download means determines whether or not the control apparatus can start an operation of downloading the check program. It is good also as a structure further provided with the setting means to set with respect to.
これによれば、設定手段によって、プログラム供給装置への電源投入時におけるチェックプログラムの自動ダウンロードの可否を設定することができるので、例えば、プログラム供給装置の不揮発性メモリに格納されているチェックプログラムのバージョンが古い場合など、ユーザが制御装置へのチェックプログラムのダウンロードを希望しない場合は、上記設定手段を用いて自動ダウンロードを拒否することができる。 According to this, since it is possible to set whether or not the check program can be automatically downloaded when the power to the program supply device is turned on by the setting means, for example, the check program stored in the nonvolatile memory of the program supply device When the user does not wish to download the check program to the control device, such as when the version is old, the automatic download can be rejected using the setting means.
さらに、本発明のプログラム供給装置においては、上記制御装置にチェックプログラムをダウンロードさせる動作の開始を、上記チェックプログラムダウンロード手段に対して指示する指示入力手段をさらに備える構成としてもよい。 Furthermore, the program supply apparatus of the present invention may further comprise an instruction input means for instructing the check program download means to start the operation for causing the control device to download the check program.
これによれば、指示入力手段を用いて、ユーザは所望のタイミングで制御装置に対してチェックプログラムをダウンロードさせることが可能となる。 According to this, using the instruction input means, the user can download the check program to the control device at a desired timing.
さらに、本発明のプログラム供給装置においては、外部装置と接続され、情報の入出力を可能にする入出力部を少なくとも2つ備えると共に、上記制御装置と接続される入出力部とは別の入出力部を介して上記チェックプログラムを含む上記制御装置に対するダウンロード用プログラムを取得し、取得したダウンロード用プログラムが上記プログラム格納領域に格納されていない場合は取得したダウンロード用プログラムを格納する一方、既に格納されている場合は両ダウンロード用プログラムの比較を行い、取得したダウンロード用プログラムの方が新しければ上記プログラム格納領域の内容を更新するプログラム受信手段をさらに備える構成としてもよい。 Furthermore, the program supply device of the present invention includes at least two input / output units that are connected to an external device and enable input / output of information, and are separate from the input / output unit connected to the control device. A download program for the control device including the check program is acquired via the output unit, and if the acquired download program is not stored in the program storage area, the acquired download program is stored while already stored If the downloaded program is compared, and the acquired download program is newer, program receiving means for updating the contents of the program storage area may be provided.
これによれば、制御装置とプログラム供給装置とが接続され、制御装置へのプログラムのダウンロードが必要となった時に、プログラム供給装置は、制御装置と接続されている入出力部とは異なる別の入出力部を経由して、その都度、ダウンロードするダウンロード用プログラム(チェックプログラムを含む)を取得することが可能となるので、ダウンロード用プログラムをプログラム供給装置のプログラム格納領域に常時格納しておく必要がなく、プログラム供給装置におけるプログラム格納領域を圧迫することがない。 According to this, when the control device and the program supply device are connected and it is necessary to download the program to the control device, the program supply device is different from the input / output unit connected to the control device. Since it is possible to obtain the download program (including the check program) to be downloaded each time via the input / output unit, it is necessary to always store the download program in the program storage area of the program supply device. And there is no pressure on the program storage area in the program supply device.
さらに、本発明のプログラム供給装置においては、上記プログラム格納領域に、上記チェックプログラムを含む上記制御装置に対するダウンロード用プログラムが圧縮されて格納されている構成としてもよい。 Furthermore, in the program supply apparatus of the present invention, a download program for the control apparatus including the check program may be compressed and stored in the program storage area.
このように、ダウンロード用プログラムをプログラム供給装置のプログラム格納領域に圧縮して格納しておくことで、プログラム供給装置におけるプログラム格納領域の圧迫を軽減することができる。 Thus, by compressing and storing the download program in the program storage area of the program supply apparatus, it is possible to reduce the pressure on the program storage area in the program supply apparatus.
本発明に係るプログラムダウンロード方法は、以上のように、制御装置が有する該制御装置を動作させるためのプログラムを格納するための不揮発性メモリに、該制御装置を動作させるためのプログラムをプログラム供給装置からダウンロードさせるプログラムダウンロードシステムのプログラムダウンロード方法であって、上記制御装置は、上記プログラム供給装置に対して、上記不揮発性メモリにおけるブートプログラム領域の一部の所定領域のみを開放し、上記プログラム供給装置は、上記制御装置において開放された上記所定領域にチェックプログラムをダウンロードさせ、上記制御装置は、上記プログラム供給装置よりダウンロードされた上記チェックプログラムを起動して、接続されている上記プログラム供給装置が当該制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば上記不揮発性メモリにおける上記所定領域以外の領域も開放し、許可対象でなければ上記不揮発性メモリにおける上記所定領域以外の領域を開放しないものである。 As described above, in the program download method according to the present invention, the program for supplying the program for operating the control device is stored in the nonvolatile memory for storing the program for operating the control device included in the control device. A program download method of a program download system for downloading from the program, wherein the control device opens only a predetermined area of a boot program area in the nonvolatile memory to the program supply device, and the program supply device Causes the check program to be downloaded to the predetermined area opened in the control device, the control device starts the check program downloaded from the program supply device, and the connected program supply device Control equipment It is determined whether or not the program is permitted to be downloaded, and if it is permitted, an area other than the predetermined area in the nonvolatile memory is also opened. The area other than the predetermined area is not opened.
本発明のプログラム供給装置は、以上のように、制御装置と接続され、該制御装置とI/Fメモリ空間を共有し、該制御装置が有する該制御装置を動作させるためのプログラムを格納するための不揮発性メモリに、該制御装置を動作させるプログラムを上記I/Fメモリ空間を介してダウンロードさせるプログラム供給装置であって、接続されている上記プログラム供給装置が上記制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば上記制御装置が有する不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放し、許可対象でなければ上記不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放しない処理を実行させるチェックプログラムを、上記制御装置が有する上記不揮発性メモリにおけるブートプログラム領域にダウンロードさせるチェックプログラムダウンロード手段を備える構成である。 As described above, the program supply device of the present invention is connected to the control device, shares the I / F memory space with the control device, and stores a program for operating the control device of the control device. A program supply device that downloads a program for operating the control device to the nonvolatile memory via the I / F memory space, and the connected program supply device downloads the program to the control device. It is determined whether or not it is a permitted object. If it is a permitted object, the memory area of the nonvolatile memory included in the control device is released from the I / F memory space. The control device has a check program for executing processing that does not open the memory area of the volatile memory to the I / F memory space. It is configured to include a check program downloading means for downloading the boot program area in the volatile memory.
本発明の制御装置は、以上のように、プログラム供給装置と接続され、該プログラム供給装置とI/Fメモリ空間を共有し、該プログラム供給装置から、自装置が有する自装置を動作させるためのプログラムを格納するための不揮発性メモリに対して、自装置を動作させるためのプログラムがダウンロードされる制御装置であって、自装置が有する上記不揮発性メモリのブートプログラム領域にブートプログラムが格納されていない状態で、上記不揮発性メモリのブートプログラム領域の一部の所定領域のみを上記I/Fメモリ空間に対して開放するチェックプログラム受付手段を備える構成である。 As described above, the control device of the present invention is connected to the program supply device, shares the I / F memory space with the program supply device, and operates the own device included in the own device from the program supply device. A control device in which a program for operating the device is downloaded with respect to the nonvolatile memory for storing the program, and the boot program is stored in the boot program area of the nonvolatile memory of the device. In this state, there is provided a check program receiving means for releasing only a part of a predetermined area of the boot program area of the nonvolatile memory from the I / F memory space.
これにより、制御装置に対しては、その不揮発性メモリに何のプログラムも格納されていない状態であっても、許可されているプログラム供給装置からのみ選択的にプログラムをダウンロードさせることが可能となり、制御装置に対して、不正なデータがダウンロードされてしまい、本来意図していない用途に使用されたり、制御装置が起動しなくなったりすることがない。 This allows the control device to selectively download the program only from the authorized program supply device, even if no program is stored in the non-volatile memory. Unauthorized data is downloaded to the control device, so that it is not used for an unintended purpose or the control device does not start.
それゆえ、制御装置が複数種の他のプログラム供給装置の共通オプションとなった場合でも、共通オプションのメリットが生かせると共に、ブートプログラムが機能拡張されたとしても、ブートプログラムのバージョンアップにも容易に対応できるといった効果を奏する。 Therefore, even when the control device becomes a common option for other types of program supply devices, the advantages of the common option can be utilized, and even if the boot program is expanded in function, it is easy to upgrade the boot program. The effect that it can respond is produced.
本発明の一実施形態について、図1〜図22に基づいて説明すると以下の通りである。 An embodiment of the present invention will be described below with reference to FIGS.
まず、図1を用いて、本実施形態におけるプログラムダウンロードシステムにおける全体構成を説明する。図1は、本実施形態におけるメイン基板(プログラム供給装置)10及びサブ基板(制御装置)20の各ハードウェア構成、及びメイン基板10とサブ基板20との接続関係を示している。
First, the overall configuration of the program download system according to this embodiment will be described with reference to FIG. FIG. 1 shows each hardware configuration of the main board (program supply apparatus) 10 and the sub board (control apparatus) 20 in this embodiment, and the connection relationship between the
メイン基板10は、メイン基板10の制御を行うCPU11、メイン基板内外とのデータ送受信の制御を行うASIC12、メイン基板10のプログラムが格納されている書き換え可能な読み出し専用メモリであるフラッシュ・メモリ(図ではFlash)13、一時的にプログラムやデータを記憶させておくRAM14、第1のI/Fポート15、及び第2のI/Fポート16を備えている。
The
サブ基板20は、サブ基板20の制御を行うCPU21、サブ基板内外とのデータ送受信を行うASIC22、サブ基板20の制御プログラムが格納されている書き換え可能な読み出し専用メモリであるフラッシュ・メモリ23、一時的にプログラムやデータを記憶させておくRAM24及びI/Fポート25で構成されている。
The
そして、これらメイン基板10とサブ基板20とは、メイン基板10の第1のI/Fポート15及びサブ基板20のI/Fポート25を介して接続されている。
The
具体的な例で説明すると、メイン基板10は、複合機におけるプリンタコントローラ基板であり、サブ基板20は、プリンタコントローラ基板に機能拡張するためのLAN(local area network)基板やUSB(universal serial bus)基板などである。
More specifically, the
なお、本発明は上記例に限定するものではなく、図1に示すようなメイン基板10及びサブ基板20の構成及び接続関係にあり、サブ基板20にプログラムが何もない状態でも、メイン基板10からI/Fポート25を介して、サブ基板20のフラッシュ・メモリ23にアクセスできるものであれば、どんな形態のものであってもよい。
The present invention is not limited to the above example. The
図2に、メイン基板10とサブ基板20の各メモリ空間の関係を示す。メイン基板10のメモリ空間は、メイン基板10におけるフラッシュ・メモリ13とRAM14とで構成され、サブ基板20のメモリ空間は、サブ基板20におけるフラッシュ・メモリ23とRAM14とで構成される。
FIG. 2 shows the relationship between the memory spaces of the
メイン基板10のメモリ空間とサブ基板20のメモリ空間とは、I/Fメモリ空間を介して接続されている。I/Fメモリ空間は、メイン基板10とサブ基板20のどちらからでもアクセス可能な共有メモリである。該共有メモリは、メイン基板10のASIC12、サブ基板20のASIC22、あるいはメイン基板10及びサブ基板20の双方のASIC12・22内部に存在する。
The memory space of the
図2の例では、サブ基板20のメモリ空間におけるアドレス空間0x05_0000_0000〜0x0A_FFFF_FFFFがプログラム領域に割り当てられており、プログラム領域となる該アドレス空間は、フラッシュ・メモリ13に対応している。そして、該アドレス空間0x05_0000_0000〜0x0A_FFFF_FFFFのうち、アドレス空間0x05_0000_0000〜0x09_FFFF_FFFFまでがメインプログラムのメイン領域に、アドレス空間0x0A_0000_0000〜0x0A_FFFF_FFFFまでがブートプログラムのブート領域(ブートプログラム領域)に、さらに細かく割り当てられている。
In the example of FIG. 2, address spaces 0x05_0000_0000 to 0x0A_FFFF_FFFF in the memory space of the sub-board 20 are allocated to the program area, and the address space serving as the program area corresponds to the
サブ基板20の上記プログラム領域には、初期状態において、サブ基板20を動作させるためのプログラムは何も書き込まれておらず、メイン基板10よりサブ基板20を動作させるためのプログラムがダウンロードされて初めて動作可能となる。
In the initial state, no program for operating the
その場合、メイン基板10よりサブ基板20に対してプログラムをダウンロードできるように、サブ基板20の上記プログラム領域を全て開放することも考えられる。しかしながら、プログラム領域の全てをメイン基板10に対して解放すると、該プログラム領域に対してメイン基板10が不正なデータを書き込み、サブ基板20が本来意図していない用途として使用される恐れがある。
In that case, it is conceivable to open all the program areas of the
そこで、本実施形態では、サブ基板20はメイン基板10に対して、サブ基板20のプログラム領域におけるブート領域の一部であるチェックプログラム領域のみを開放するようになっている。チェックプログラム領域は、後述するチェックプログラムを書き込むための領域であり、ブート領域の先頭アドレスより始まる空間である。図2の例では、アドレス空間0x0A_FFFF_0000〜0x0A_FFFF_FFFFが、チェックプログラム領域にあたる。そして、該チェックプログラム領域の空間サイズはブート領域に比して小さく、メイン基板10がチェックプログラム領域へブートプログラムをダウンロードしたとしても、ブートプログラムを書き込みきることはできず、サブ基板20を動作させることはできない。
Therefore, in the present embodiment, the
上記チェックプログラムは、サブ基板20のフラッシュ・メモリ23にダウンロードされ、サブ基板20がパワーオン/リセットし、チェックプログラムを起動することで、サブ基板20が、当該サブ基板20に接続されている相手側基板、つまりメイン基板10が、サブ基板20へのプログラムのダウンロードを許可してもよいダウンロード許可対象(許可対象基板)であるか否かを判断する処理と、ダウンロード許可対象であればサブ基板20におけるフラッシュ・メモリ23におけるプログラム領域を開放し、ダウンロード許可対象でなければサブ基板20のフラッシュ・メモリ23のプログラム領域を開放しない処理とを実行するものである。
The check program is downloaded to the
メイン基板10に対してのチェックプログラム領域の開放は、具体的には、予め、サブ基板20のASIC22において、初期設定値によりチェックプログラム領域を開放するよう指定しておく。サブ基板20のASIC22によるI/F初期化時、サブ基板20のASIC22は、サブ基板20のメモリ空間におけるチェックプログラム領域0x0A_FFFF_0000〜0x0A_FFFF_FFFFのみを、メイン基板10と接続しているI/Fメモリ空間のチェックプログラム領域0x0F_FFFF_0000〜0x0F_FFFF_FFFFに開放する。これにより、メイン基板10は、I/Fメモリ空間の0x0F_FFFF_0000〜0x0F_FFFF_FFFFにアクセスすることで、サブ基板20のメモリ空間におけるチェックプログラム領域0x0A_FFFF_0000〜0x0A_FFFF_FFFFにデータを書き込むことができる。
Specifically, the opening of the check program area with respect to the
図3に、メイン基板10上で動作するプログラムの機能ブロック図を示す。同図に示すように、メイン基板10には、CPU11、ASIC12、フラッシュ・メモリ13、及びRAM14を適時動作させることによって、プログラム生成部(プログラム生成手段)31、プログラム格納領域32、ID格納領域33、プログラム送信部(プログラム送信手段)34、電源監視部(電源監視手段)35、プログラムダウンロード指示部(指示入力手段)36、解析部(解析手段)37、ダウンロード状態報知部(ダウンロード状態報知手段)38、ダウンロード切替え設定部(設定手段)39、プログラム圧縮/伸張部40、及びプログラム受信部(プログラム受信手段)41が構成される。
FIG. 3 shows a functional block diagram of a program operating on the
上記プログラム格納領域32には、図4に示すように、少なくとも、チェックプログラムと、サブ基板20用のブートプログラムとが格納されている。このうち、チェックプログラムは、サブ基板20上に図5に示す各処理部と格納領域とを実現するための各プログラムとチェックプログラムのバージョンを表すチェックプログラムバージョン情報とを含んでいる。
In the
また、上記ID格納領域33には、例えば、メイン基板10のMACアドレスや機種名、シリアルナンバー等の、各メイン基板10を個別に識別できるような文字列等のID(識別情報)が格納されている。なお、ここでは、メイン基板10のIDとしてMACアドレスを使用した場合の説明を行う。
Further, in the
図5に、サブ基板20上で動作する、メイン基板10よりダウンロードされたチェックプログラムの機能ブロック図を示す。同図に示すように、チェックプログラムを起動して、CPU21、ASIC22、フラッシュ・メモリ23、及びRAM24を適時動作させることによって、サブ基板20には、ダウンロード可否判断部51、ジャンパ情報抽出部52、ダウンロード許可ID抽出部53、ブート領域開放部54、メイン基板情報格納領域55、及び通知部56が構成される。上記メイン基板情報格納領域55には、チェックプログラムに含まれるメイン基板情報(メイン基板ID)が格納されている。
FIG. 5 shows a functional block diagram of a check program downloaded from the
また、本実施形態では、サブ基板20に、図6に示すようなジャンパ60が適宜設けられている。図6は、ジャンパ60の構成とその設定方法を説明する図面であり、(a)はジャンパ60を横から見た図面、(b)はジャンパピンの結線図である。
Further, in the present embodiment, a
ジャンパ60は、ジャンパピン61とジャンパソケット62とで構成され、ジャンパソケット62が装着されたジャンパピン61のピン間が導通するようになっている。たとえば、ジャンパピン61の1pin(ピン)が電源層(Vcc)に接続され、ジャンパピン61の3pinがGND層に接続されている構成にしておけば、同図のようにジャンパソケット62を、ジャンパピン61の1pinと2pinとに装着することで、ジャンパピン61の2pinは電源層(Vcc)に接続されることとなる。このように、ジャンパ60は、ジャンパソケット62の装着箇所に依存して、ジャンパピン61の2pinの電圧レベルを切替えることができるものである。なお、サブ基板20におけるジャンパ60の具体的な利用方法については後述する。
The
以下、本実施形態のプログラムダウンロードシステムにおける動作について説明する。 Hereinafter, an operation in the program download system of the present embodiment will be described.
まず、メイン基板10で実施される基本処理であるチェックプログラム送信処理について説明する。
First, a check program transmission process that is a basic process performed on the
チェックプログラム送信処理とは、プログラム生成部31が、チェックプログラム生成要求にしたがってID格納領域33及びプログラム格納領域32より情報を収集してチェックプログラムを作成し、プログラム送信部34が作成されたチェックプログラムをサブ基板20に送信して、ダウンロードさせる処理である。
In the check program transmission process, the
プログラム生成部31へのチェックプログラム生成要求は、電源監視部35、プログラムダウンロード指示部(指示入力手段)36、及び解析部37の3つの処理部より送信することができ、これについては後述する。
The check program generation request to the
図7のフローチャートを用いて、チェックプログラム送信処理の手順を説明する。チェックプログラム生成要求があると、プログラム生成部31は、プログラム格納領域32からチェックプログラムを取得し(S1)、次いで、ID格納領域33からメイン基板10のIDを取得する(S2)。そして、プログラム生成部31は、取得したメイン基板10のIDを取得したチェックプログラムに組み込み、チェックプログラムを完成させる(S3)。完成されたチェックプログラムは、プログラム送信部34へと送られる。
The procedure of the check program transmission process will be described using the flowchart of FIG. When there is a check program generation request, the
次に、プログラム送信部34が、メイン基板10とサブ基板20とが接続されているI/Fメモリ空間にアクセスして、サブ基板20が開放しているサブ基板20のメモリ空間に対応するアドレス情報を取得する(S4)。プログラム送信部34は、プログラム生成部31より送られてきたチェックプログラムをI/Fメモリ空間における取得したアドレス情報の空間に書き込む(S5)。これにより、I/Fメモリ空間を介してサブ基板20のメモリ空間にチェックプログラムがダウンロードされ、チェックプログラム送信処理が終了する。
Next, the
図2の例では、サブ基板20のメモリ空間におけるチェックプログラム領域0x0A_FFFF_0000〜0x0A_FFFF_FFFFには、I/Fメモリ空間の0x0F_FFFF_0000〜0x0F_FFFF_FFFFが対応している。したがって、S5において、プログラム送信部34は、この0x0F_FFFF_0000〜0x0F_FFFF_FFFFにチェックプログラムを書き込む。サブ基板20のメモリ空間へは、I/Fメモリ空間の該0x0F_FFFF_0000〜0x0F_FFFF_FFFFに書き込まれたデータのみが移動し、ダウンロードされる。
In the example of FIG. 2, the check program areas 0x0A_FFFF_0000 to 0x0A_FFFF_FFFF in the memory space of the sub-board 20 correspond to 0x0F_FFFF_0000 to 0x0F_FFFF_FFFF in the I / F memory space. Therefore, in S5, the
次に、サブ基板20の各処理部における基本処理であるダウンロード可否判断処理及びブート領域開放処理について説明する。サブ基板20は、メイン基板10よりダウンロードされたチェックプログラムを起動することで、ダウンロード可否判断処理を実施する。
Next, a download permission determination process and a boot area release process, which are basic processes in each processing unit of the sub-board 20, will be described. The
ダウンロード可否判断処理とは、ダウンロード可否判断部51が、チェックプログラムをダウンロードした相手先のメイン基板10がダウンロード許可対象であるか否かを判断する処理である。ダウンロード可否判断処理にてダウンロード許可対象であると判断されると、ブート領域開放部54がブート領域開放処理を実施し、ダウンロード許可対象ではないと判断されると、ブート領域開放部54はブート領域開放処理を実施しない。ここでは、より好ましい対応として、ダウンロード許可対象でない場合、通知部56が、チェックプログラムのダウンロードを拒否することを示すチェックプログラムダウンロード拒否コマンドを、メイン基板10に対して応答するようになっている。
The download enable / disable determining process is a process in which the download enable / disable determining
ブート領域開放処理とは、ブート領域開放部54が、メイン基板10がサブ基板20のブート領域に対してデータをダウンロードできるように開放する処理である。ここでは、より好ましい対応として、チェックプログラムのダウンロードが正常終了したことを示すチェックプログラム終了コマンド(チェックプログラム終了情報)を、メイン基板10に対して応答するようになっている。これは、チェックプログラム内に、チェックプログラムダウンロード終了を示すコマンドをメイン基板に対して送信する処理を実行させるプログラム(終了報知プログラム)を含めておくことで実現されており、サブ基板20は、チェックプログラムが正常にダウンロードできたことをメイン基板10に対して通知するので、メイン基板10側では、チェックプログラムのダウンロードが正常に終了したことを確認することができる。
The boot area releasing process is a process in which the boot
また、本実施形態のサブ基板20では、ダウンロード可否判断処理において、相手先のメイン基板10がダウンロード許可対象であるか否かの判断を、チェックプログラムに格納されているメイン基板IDを基にする場合と、ダウンロード許可判断のためのジャンパ設定を基にする場合との、2つが可能となっている。
Further, in the sub-board 20 of the present embodiment, in the download permission / inhibition judgment process, the judgment as to whether or not the partner
メイン基板IDを基にする判断は、ダウンロード許可ID抽出部53が、サブ基板20のフラッシュ・メモリ内に格納されているダウンロード許可IDリストを抽出し、ダウンロード可否判断部51が、メイン基板情報格納領域55に格納されているメイン基板IDが、該リスト内に含まれているか否かで判断を行う。図8に、ダウンロード許可IDリスト65の例を示す。ダウンロード許可IDリスト65は、ダウンロード許可ID66‥で構成されている。
For the determination based on the main board ID, the download permission
また、ジャンパ設定を基にする場合は、サブ基板20に設けられているダウンロード許可判断のためのジャンパの設定を、ジャンパ情報抽出部52が抽出し、ダウンロード可否判断部51が、抽出されたジャンパの設定を基に判断を行う。
When the jumper setting is used as a basis, the jumper
このようなジャンパ設定によるダウンロード許可対象であるか否かの判断を可能にしておくことで、サブ基板20にダウンロード許可IDリスト65を予め持たせずとも、ダウンロード許可対象となるメイン基板10を指定可能となる。
By making it possible to determine whether or not it is a download permission target by such a jumper setting, it is possible to specify the
具体的には、図9(a)のように、たとえば、サブ基板20に接続可能なメイン基板10がA〜Cの3種類ある場合、サブ基板20上に3つのジャンパJ1・J2・J3を設け、A〜Cの3種類のメイン基板10に対するダウンロード許可/拒否の判断を、これら3つのジャンパJ1〜J3にて設定する構成が考えられる。
Specifically, as shown in FIG. 9A, for example, when there are three types of main boards A to C that can be connected to the
ここでは、図9(b)の設定テーブルに示すように、ジャンパJ1の設定がA種のメイン基板10のダウンロード許可/未許可に対応しており、ジャンパJ2の設定がB種のメイン基板10のダウンロード許可/未許可に、ジャンパJ3の設定がC種のメイン基板10のダウンロード許可/未許可に対応している。
Here, as shown in the setting table of FIG. 9B, the setting of the jumper J1 corresponds to the download permission / non-permission of the A type
サブ基板20は、設定表に従い、例えば、ジャンパJ1の2pinの電圧レベルがVccであればA種のメイン基板10をダウンロード許可対象とし、ジャンパJ1の2pinの電圧レベルがGNDであれば、A種のメイン基板10をダウンロード未許可とする。
According to the setting table, for example, if the 2 pin voltage level of the jumper J1 is Vcc, the
さらに、本実施形態のサブ基板20では、プログラムダウンロード可否判断を実行するか否か自体をジャンパにて設定できるようになっており、プログラムダウンロード可否判断のためのジャンパが設けられている。ダウンロード可否判断処理においては、ジャンパ情報抽出部52が該ジャンパの設定を抽出し、ダウンロード可否判断部51が、抽出された該ジャンパの設定を基に、プログラムダウンロード可否を判断し、可能に設定されている場合のみ、ダウンロード可否判断処理を続ける。
Further, in the sub-board 20 of the present embodiment, whether or not to execute the program download enable / disable determination can be set by a jumper itself, and a jumper for determining the program download enable / disable is provided. In the download permission determination process, the jumper
プログラムダウンロード可否判断のためのジャンパを設けることで、メイン基板10からのチェックプログラムダウンロードを、ダウンロード許可対象であるか否かとは関係なく、強制的に拒否することが可能となる。
By providing a jumper for determining whether or not the program can be downloaded, it is possible to forcibly reject the check program download from the
具体的には、プログラムダウンロード可否判断のためのジャンパがダウンロード拒否に設定されている場合、どんなメイン基板10が接続されたとしても、サブ基板20はブート領域を開放せず、メイン基板10に対して、チェックプログラムダウンロードを拒否するチェックプログラムダウンロード拒否コマンドを送信する。
Specifically, when the jumper for determining whether or not the program can be downloaded is set to download refusal, no matter what
ここでは、図10(a)(b)に示すように、プログラムダウンロード可否判断のためのジャンパJP1の1pinがVccに、ジャンパJP1の3pinがGNDに接続されている。そして、プログラムダウンロード可否判断用のジャンパソケットによって、ジャンパJP1の2pinの電圧レベルがVccであれば、プログラムダウンロード可否判断を実行し、ジャンパJP1の2pinの電圧レベルがGNDであれば、プログラムダウンロード可否判断を実行しないというように、予め取り決められている。 Here, as shown in FIGS. 10A and 10B, 1 pin of jumper JP1 for determining whether to download a program is connected to Vcc, and 3 pin of jumper JP1 is connected to GND. Then, if the 2pin voltage level of jumper JP1 is Vcc by the jumper socket for determining whether or not program download is possible, the program download enable / disable determination is executed, and if the 2pin voltage level of jumper JP1 is GND, the program download enable / disable determination is made. Is determined in advance so as not to execute.
なお、ジャンパ設定を用いる以外の手法で、プログラムダウンロード許可対象か否かの判断を実行するか否かを切り替えるようにしてもよい。 Note that it may be switched whether to execute the determination as to whether or not the program download is permitted by a method other than using the jumper setting.
図11のフローチャートに、ダウンロード可否判断処理の手順を示す。チェックプログラムがダウンロードされ、サブ基板20がこれを起動することで、該処理は開始される。まず、ジャンパ情報抽出部52が、図10に示した、プログラムダウンロード可否判断のためのジャンパJP1の設定情報を抽出する(S11)。次に、ダウンロード可否判断部51は、S11で抽出された設定情報であるジャンパJP1の2pinの電圧レベルがVccかGNDかを判断し(S12)、ジャンパJP1の2pinの電圧レベルがVccであればS13に進み、ジャンパJP1の2pinの電圧レベルがGNDであればS19に進む。
The flowchart of FIG. 11 shows the procedure of the download permission / inhibition determination process. The check program is downloaded and the sub-board 20 activates the process to start the process. First, the jumper
S13では、ダウンロード可否判断部51は、メイン基板情報格納領域55よりメイン基板IDを抽出する。次に、ダウンロード可否判断部51は、ダウンロード許可対象であるか否かの判断を、サブ基板20上のフラッシュ・メモリ内に格納されているダウンロード許可IDリスト65を用いて行うかどうかを判断する(S14)。S14における判断は、サブ基板20のフラッシュ・メモリ23内に、図8に示したダウンロード許可IDリスト65があるかないかで判断する。
In S <b> 13, the download
ダウンロード許可IDリスト65があれば、ダウンロード許可IDリスト65によりダウンロード許可対象を判断するとして、S15に進む。一方、ダウンロード許可IDリストがなければ、サブ基板20上のジャンパ設定によりダウンロード許可対象を判断するとして、S16に進む。
If the download
S15では、ダウンロード許可抽出部53が、ダウンロード許可IDリスト65を読み出し、S17に進む。S16では、ジャンパ情報抽出部52が、サブ基板20上のダウンロード許可用のジャンパJ1〜J3の設定を抽出し、同じくS17に進む。S17では、ダウンロード可否判断部51が、S15或いはS16で抽出された情報に基づいて、ダウンロード許可対象か否かを判断する。
In S15, the download
S17において、ダウンロード許可対象と判断されれば、S18に進み、後述するブート領域開放処理が行われる。一方、ダウンロード許可対象ではないと判断されれば、S19に進み、通知部56が、チェックプログラムのダウンロードを拒否することを示すチェックプログラムダウンロード拒否コマンドをメイン基板10に送信し、プログラムダウンロード可否判断処理を終了する。
If it is determined in S17 that download is permitted, the process proceeds to S18 and a boot area releasing process described later is performed. On the other hand, if it is determined that it is not a download permission target, the process proceeds to S19, where the
図12のフローチャートに、ブート領域開放処理の手順を示す。ブート領域開放部54は、サブ基板20上のブート領域(図2の例では、0x0A_0000_0000〜0x0A_FFFF_FFFF)を開放するように、サブ基板20のASIC22の初期設定値を変更する(S21)。次に、通知部56が、メイン基板10の解析部37に対して、チェックプログラムダウンロード終了コマンドを送信する(S22)。
The flowchart of FIG. 12 shows the procedure for boot area release processing. The boot
この後、メイン基板10及びサブ基板20がパワーオン/リセットし、各基板10・20が再起動する(S23)。なお、メイン基板10は、チェックプログラムダウンロード終了コマンドに再起動を指示するコマンドが含まれており、該コマンドを受け取ることでメイン基板10は再起動する。一方、サブ基板20は、チェックプログラムダウンロード終了コマンドを送信すると再起動がかかるように設定されている。
Thereafter, the
サブ基板20では、再起動がかかることで、そのASIC22の初期設定値にしたがい、サブ基板20のブート領域を開放し(S24)、ブート領域開放処理を終了する。 In the sub-board 20, when the restart is applied, the boot area of the sub-board 20 is released according to the initial setting value of the ASIC 22 (S <b> 24), and the boot area release processing is ended.
このようなブート領域開放処理により、メイン基板10側からサブ基板20のブート領域にアクセスすることが可能になり、メイン基板10側からサブ基板20用のブートプログラムをダウンロードさせることが可能となる。
By such a boot area releasing process, it is possible to access the boot area of the
図2の例では、サブ基板20のメモリ空間におけるブート領域0x0A_0000_0000〜0x0A_FFFF_FFFFには、I/Fメモリ空間の0x0F_0000_0000〜0x0F_FFFF_FFFFが対応している。メイン基板10がこの0x0F_0000_0000〜0x0F_FFFF_FFFFにブートプログラムを書き込むことで、サブ基板20のメモリ空間へは、該I/Fメモリ空間の該0x0F_0000_0000〜0x0F_FFFF_FFFFに書き込まれたデータのみが移動し、ダウンロードされる。
In the example of FIG. 2, the boot areas 0x0A_0000_0000 to 0x0A_FFFF_FFFF in the memory space of the sub-board 20 correspond to 0x0F_0000_0000 to 0x0F_FFFF_FFFF in the I / F memory space. When the
次に、より好ましい対応としてメイン基板10で実施される、チェックプログラム再送処理について説明する。チェックプログラム再送処理とは、メイン基板10の解析部37がサブ基板20の通知部56から、チェックプログラムダウンロード終了コマンドも、チェックプログラムダウンロード拒否コマンドも受信できていない場合に、メイン基板10からサブ基板20に対して、再度、チェックプログラムのダウンロードを行う処理である。
Next, a check program retransmission process performed on the
図13のフローチャートに、チェックプログラム再送処理の手順を示す。プログラム送信部34は、サブ基板20に対してのチェックプログラムのダウンロードが終了したか否かを判断しており(S31)、チェックプログラムのダウンロードが終了していなければ、チェックプログラムのダウンロードが終了するまで、チェックプログラムのダウンロードが終了したか否かの判断を繰り返す。
The flowchart of FIG. 13 shows the procedure of the check program retransmission process. The
S31において、チェックプログラムのダウンロードの終了が確認されると、解析部37は、サブ基板20の通知部56よりチェックプログラム終了コマンドを受信したか否かを判断し(S32)、チェックプログラム終了コマンドを受信していれば、チェックプログラム再送処理を終了する。
In S31, when it is confirmed that the download of the check program has been completed, the
一方、S32において、チェックプログラム終了コマンドを受信していなければ、解析部37は、サブ基板20の通知部56よりチェックプログラム拒否コマンドを受信したか否かをさらに判断し(S33)、チェックプログラム拒否コマンドを受信していれば、チェックプログラム再送処理を終了する。ここで、チェックプログラム拒否コマンドも受信していなければ、解析部37は、プログラム生成部31にチェックプログラム生成要求を出力する(S34)。これにより、図7で説明したチェックプログラム送信処理が、再度、開始される。
On the other hand, if the check program end command has not been received in S32, the
このように、メイン基板10からサブ基板20に対してチェックプログラムをダウンロードする時に、何らかの影響でチェックプログラムを正常にダウンロードできなかった場合、サブ基板20からのチェックプログラムダウンロード終了を示すコマンドの応答がないことをトリガーとして、自動的にメイン基板10からサブ基板に対してチェックプログラムが再ダウンロードされるので、メイン基板10からサブ基板20へのチェックプログラムダウンロード作業を確実に実施することができる。
As described above, when the check program is downloaded from the
次に、より好ましい対応としてメイン基板10で実施される、ダウンロード状態報知処理について説明する。ダウンロード状態報知処理とは、ダウンロード状態報知部38にて実施される、メイン基板10からサブ基板20に対して、チェックプログラムのダウンロード中であること、またはチェックプログラムのダウンロードが終了したこと、またはチェックプログラムのダウンロードが許可されていないことを、ユーザが認識できるように、報知する処理である。
Next, a download status notification process performed on the
報知の仕方としては、例えばメイン基板10が装着されている機器のオペレーションパネル上に各内容を報知することが挙げられる。具体例で説明すると、図14(a)〜(c)のように、チェックプログラムのダウンロード中であれば、オペレーションパネル70の表示画面上に『プログラムダウンロード中…』と表示し、チェックプログラムのダウンロードが終了すれば、オペレーションパネル70の表示画面上に『プログラムのダウンロードが終了しました。』と表示し、チェックプログラムのダウンロードが許可されていないのであれば、オペレーションパネル70の表示画面上に『プログラムのダウンロードが許可されていません。』と表示する、等が考えられる。
As a notification method, for example, each content is notified on an operation panel of a device on which the
なお、上記説明した具体例に限らず、チェックプログラムがダウンロード中であること、またはチェックプログラムのダウンロードが終了したこと、またはチェックプログラムのダウンロードが許可されていないことをユーザが視認できる方法であれば、どんな形態でも構わない。例えば、上記例とは別の方法で、メイン基板10上にステータスLEDを設けて、チェックプログラムがダウンロード中であればステータスLEDが点滅し、チェックプログラムのダウンロードが終了すればステータスLEDが消灯し、チェックプログラムのダウンロードが許可されていないならばステータスLEDが点灯するなどの構成でも構わない。
It should be noted that the method is not limited to the specific example described above as long as the user can visually recognize that the check program is being downloaded, that the check program has been downloaded, or that the download of the check program is not permitted. Any form is acceptable. For example, a status LED is provided on the
図15のフローチャートに、ダウンロード状態報知処理の手順を示す。本フローチャートでは、メイン基板10が装着されている機器のオペレーションパネル70(図14参照)上に、ダウンロード状態を表示する。
The flowchart of FIG. 15 shows the procedure of the download status notification process. In this flowchart, the download state is displayed on the operation panel 70 (see FIG. 14) of the device on which the
ダウンロード状態報知部38は、まず、プログラム送信部34にアクセスして、チェックプログラムをサブ基板20にダウンロード中か否かを判断する(S41)。チェックプログラムのダウンロード中であれば、S42に進んで、オペレーションパネル70の表示画面上に『プログラムダウンロード中…』と表示し、再度S41に戻る。一方、チェックプログラムのダウンロード中でなければS43に進み、解析部37にアクセスして、サブ基板20に対してチェックプログラムのダウンロードが終了したか否かを判断する。
The download
チェックプログラムのダウンロードが終了していれば、ダウンロード状態報知部38は、オペレーションパネルの表示画面上に『プログラムのダウンロードが終了しました。』と表示し(S44)、ダウンロード状態報知処理を終了する。
If the download of the check program has been completed, the download
一方、チェックプログラムのダウンロードが終了していなければ、ダウンロード状態報知部38は、解析部307にアクセスして、サブ基板20からチェックプログラムダウンロード拒否コマンドを受信していないかどうか判断し(S45)、チェックプログラムダウンロード拒否コマンドを受信していれば、オペレーションパネル70の表示画面上に『プログラムのダウンロードが許可されていません。』と表示し(S46)、ダウンロード状態報知処理を終了する。サブ基板20からチェックプログラムダウンロード拒否コマンドを受信していなければ、再度S41に戻る。
On the other hand, if the download of the check program has not ended, the download
このように、メイン基板10からサブ基板20に対するチェックプログラムダウンロードのステータスをユーザに報知することで、チェックプログラムダウンロード途中に、メイン基板10あるいはサブ基板20の電源を落とされることに対して未然に注意を促すことができる、またはプログラムダウンロード許可対象でないメイン基板10に対してサブ基板20を誤って装着している場合に、プログラムダウンロードが許可されていない旨をユーザに報知することができる。
In this way, by notifying the user of the status of the check program download from the
次に、より好ましい対応としてメイン基板10で実施される、電源監視処理について説明する。電源監視処理とは、電源監視部35が、メイン基板10に電源が投入されたか否かを監視し、メイン基板10に電源が投入されると同時に、プログラム生成部31に対して、前述したチェックプログラム生成要求を行う処理である。
Next, the power supply monitoring process performed on the
図16のフローチャートに、電源監視処理の手順を示す。電源監視部35は、メイン基板10に対して電源が投入されたか否かを判断し(S51)、メイン基板10に対して電源が投入されていないならば、再度S51に戻り、電源が投入されたか否かを判断する。
一方、メイン基板10に対して電源が投入されたら、プログラム生成部31にチェックプログラム生成要求を出力する(S52)。これにより、図7で説明したチェックプログラム送信処理が開始される。
The flowchart of FIG. 16 shows the procedure of the power supply monitoring process. The
On the other hand, when the
このように、メイン基板10に電源が投入時に、メイン基板10に装着されているサブ基板20に対して自動的にチェックプログラムをダウンロードする構成にすることで、チェックプログラムのダウンロードをユーザによるオペレーションを介在することなく実施することができる。
Thus, when the
但し、このような電源投入時にサブ基板20に対してチェックプログラムが自動的にダウンロードされることをユーザが希望しない場合も考えられる。例えば、メイン基板10のフラッシュ・メモリ13にチェックプログラムが格納されていない場合や、メイン基板10のフラッシュ・メモリ13に格納されているチェックプログラムのバージョンが古い場合である。このような場合、電源投入時におけるチェックプログラムのダウンロードを実施しないようにユーザ側にて設定できる構成が好ましい。
However, there may be a case where the user does not want the check program to be automatically downloaded to the sub-board 20 when the power is turned on. For example, the check program is not stored in the
そこで、本実施形態のメイン基板10においては、より好ましい対応として、電源投入時にチェックプログラムをダウンロードするか否かを、ユーザサイドで指定できるようになっており、ダウンロード切替え設定部39が、ユーザに指定されている場合に、電源投入時にチェックプログラムをダウンロードするようになっている。
Therefore, in the
具体的には、メイン基板10上にダウンロード切替え用のジャンパJP2が設けられており、ダウンロード切替え用のジャンパソケットの装着位置によって、メイン基板10からサブ基板20へのチェックプログラムのダウンロードタイミングを切替えることができる。本実施形態では、ダウンロード切替え設定部39は、ジャンパJP2の2pinの電圧レベルがVccであれば、図16で説明した電源監視処理により、メイン基板10への電源投入時にチェックプログラムのダウンロードを行い、ジャンパJP2の2pinの電圧レベルがGNDであれば、メイン基板10への電源投入時にチェックプログラムのダウンロードを行わない。
Specifically, a jumper JP2 for switching download is provided on the
なお、上記説明した具体例に限らず、ダウンロードの処理を切替えることができる方法であれば、どんな形態でも構わない。たとえば、上記例とは別の方法で、メイン基板10上にスイッチを設けて、スイッチがON状態であれば、メイン基板10への電源投入時にチェックプログラムのダウンロードを行い、スイッチがOFF状態であれば、メイン基板10への電源投入時にチェックプログラムのダウンロードを行わないようにするなどの構成でも構わない。
Note that the present invention is not limited to the specific example described above, and any method may be used as long as it can switch the download process. For example, if a switch is provided on the
図18のフローチャートに、メイン基板10のダウンロード切替え設定部39におけるダウンロード切替え処理の手順を示す。本フローチャートでは、ダウンロード切替え用ジャンパJP2を用いる。ダウンロード切替え設定部38は、ダウンロード切替え用のジャンパJP2の2pinの電圧レベルがVccであるか否かを判断し(S61)、Vccであれば、S62に進んで、図16で説明した電源監視処理を行う。一方、Vccでなければ、そのまま処理を終了し、電源監視部35による電源開始処理は実施されない。
The flowchart of FIG. 18 shows the procedure of the download switching process in the download
次に、より好ましい対応としてメイン基板10で実施される、プログラムダウンロード指示処理について説明する。メイン基板10への電源投入時にチェックプログラムのダウンロードを行わない設定時に、チェックプログラムのダウンロード実行のユーザ指示を可能にするものであって、チェックプログラムのダウンロードを指示する操作をユーザが行うことで、ユーザが意図しているタイミングでチェックプログラムのダウンロードを実行することができる。
Next, a program download instruction process performed on the
たとえば、図19に示すように、メイン基板10が装着されている機器のオペレーションパネル70の表示画面上に、プログラムダウンロード実行メニュー71と、OKボタン72及びキャンセルボタン73を表示させ、ユーザがOKボタン72を押下することで、チェックプログラムのダウンロードが実行される構成が考えられる。
For example, as shown in FIG. 19, a program
なお、上記説明した具体例に限らず、チェックプログラムのダウンロード実行を指示できる方法であれば、どんな形態でも構わない。たとえば、上記例とは別の方法で、メイン基板10上にプッシュスイッチを設けて、プッシュスイッチを押下したら、チェックプログラムのダウンロードを実行する構成でも構わない。
Note that the present invention is not limited to the specific example described above, and any method may be used as long as it can instruct execution of downloading the check program. For example, a configuration may be adopted in which a push switch is provided on the
図20のフローチャートに、プログラムダウンロード指示部36におけるプログラムダウンロード指示処理を示すフローチャートである。本フローチャートでは、メイン基板10が装着されている機器のオペレーションパネル70での操作により、チェックプログラムのダウンロードを実行する。
The flowchart of FIG. 20 shows a program download instruction process in the program
プログラムダウンロード指示部36は、まず、オペレーションパネル70の表示画面上にプログラムダウンロード実行メニュー71を表示する(S71)。次に、OKボタン72が押下されたか否かを判断し(S72)、OKボタン72が押下されれば、プログラム生成部31にチェックプログラム生成要求を出力する(S73)。これにより、図7で説明したチェックプログラム送信処理が開始される。
The program
一方、OKボタン72が押下されなければ、S74に進んで、キャンセルボタン73が押下されたか否かを判断し、キャンセルボタン73が押下されれば、プログラムダウンロード指示処理を終了する。キャンセルボタン73も押下されていなければ、再び、S72に戻り、OKボタン72が押下されたか否かを判断する。
On the other hand, if the
次に、より好ましい対応としてメイン基板10において実施される、プログラム受信処理について説明する。プログラム受信処理とは、プログラム受信部41が、サブ基板20と接続する第1のI/Fポート15とは別の第2のI/Fポート16を経由して取得したサブ基板20に対してダウンロードするためのプログラムデータ(ダウンロード用プログラム)を、プログラム格納領域32に格納する処理である。プログラム受信部41は、チェックプログラムを含めダウンロード用プログラムを受信すると、プログラム格納領域32に受信した該プログラムデータが格納されていない時はそのまま格納し、既に格納されている場合は、受信したプログラムの方が新しい場合には格納する(更新する)。
Next, a program reception process performed on the
ダウンロード用プログラムとしてチェックプログラムを例に説明すると、具体的には、メイン基板10の第2のI/F16としては、LAN、USB、RS−232Cなどが考えられ、PCから当該I/Fポートを経由してチェックプログラムをメイン基板10に対してダウンロードする構成が考えられる。このプログラム受信処理により、サブ基板20にダウンロードするためのチェックプログラムをメイン基板10のプログラム格納領域32に常時格納しておく必要は無く、チェックプログラムのダウンロードが必要な時に、メイン基板10の第2のI/F16を経由して、その都度チェックプログラムを取得すればよい。また、将来的にチェックプログラムが機能拡張されたとしても、チェックプログラムのバージョンアップを容易に実現することができる。
When the check program is described as an example of the download program, specifically, the second I /
図21のフローチャートに、プログラム受信処理の手順を示す。プログラム受信部41は、基板10がサブ基板20と接続する第1のI/Fポート15とは別の第2のI/Fポート16を経由して、チェックプログラムデータを受信したか否かを判断する(S81)。チェックプログラムデータを受信していなければ、再度S81に戻り、チェックプログラムデータを受信したか否かを判断する。一方、チェックプログラムデータを受信すると、プログラム格納領域32にチェックプログラムデータが既に格納されているか否かを判断する(S82)。
The flowchart of FIG. 21 shows the procedure of the program reception process. The
S82において、プログラム格納領域32にチェックプログラムデータが格納されていない場合は、S81で取得したチェックプログラムデータをプログラム格納領域32に格納して、再度、S81に戻る。
If the check program data is not stored in the
一方、S82において、プログラム格納領域32にチェックプログラムデータが格納されている場合は、S81で取得したチェックプログラムデータのプログラムバージョン情報と、プログラム格納領域32に既に格納されているチェックプログラムのプログラムバージョン情報とを比較して、どちらのプログラムの方が新しいかを判断する(S83)。
On the other hand, when the check program data is stored in the
S83において、新しく取得したチェックプログラムデータの方が新しい場合は、プログラム格納領域32に既に格納されているチェックプログラムデータを削除した上で、該取得したチェックプログラムデータを格納(上書き)し、再度、S81に戻る。一方、S83において、プログラム格納領域32に既に格納されているチェックプログラムデータの方が新しい場合は、S81で取得したチェックプログラムデータを削除し(S86)、再度、S81に戻る。なお、該処理の終了については特に記載していないが、メイン基板10の電源がオフされた時点などで終了する。
In S83, if the newly acquired check program data is newer, delete the check program data already stored in the
また、プログラム受信処理にて、第2のI/Fポート16を経由して取得される対象プログラムはチェックプログラムに限定されるものではなく、同様の手順にて、ブートプログラムを取得することも可能である。つまり、プログラム受信処理において、サブ基板20と接続する第1のI/Fポート15とは別の第2のI/Fポート16を経由してブートプログラムデータが受信されると、プログラム格納領域32にブートプログラムデータが格納されていない時はそのままプログラム格納領域32に格納され、プログラム格納領域32に既に格納されている場合は、受信したブートプログラムの方が新しい場合に格納される(上書きする)。
In addition, the target program acquired via the second I /
これにより、サブ基板20にダウンロードするためのブートプログラムをメイン基板10のプログラム格納領域32に常時格納しておく必要は無く、ブートプログラムのダウンロードが必要な時に、メイン基板10の第2のI/Fポート16を経由して、その都度ブートプログラムを取得すればよい。また、将来的にブートプログラムが機能拡張されたとしても、ブートプログラムのバージョンアップを容易に実現することができる。
Thereby, it is not necessary to always store the boot program for downloading to the sub-board 20 in the
また、上述のプログラム受信処理においては、さらに、第2のI/Fポート16を経由して取得したチェックプログラムデータ或いはブートプログラムデータが、プログラム格納領域32に既に格納されているチェックプログラムデータ或いはブートプログラムデータより新しい場合、取得したチェックプログラムデータ或いはブートプログラムデータをプログラム格納領域32に上書き格納する一方、格納を完了した時点で、プログラム受信部41が、プログラム生成部31にチェックプログラム生成要求を出力する構成としてもよい。これにより、図7で説明したチェックプログラム送信処理が開始されるので、新しく取得したチェックプログラムを、或いは新しく取得したブートプログラムを、サブ基板20に対してダウンロードすることが可能となる。
Further, in the above-described program reception process, the check program data or boot program data acquired via the second I /
また、本メイン基板10では、サブ基板20に対してダウンロードするプログラムをメイン基板10のフラッシュ・メモリ13に格納するにあたり、圧縮状態データで格納しておく構成でもよい。これにより、メイン基板10のフラッシュ・メモリ13の領域の圧迫を軽減することができる。
The
次に、より好ましい対応としてメイン基板10にて実施される、プログラム伸張処理について説明する。プログラム伸張処理とは、プログラム圧縮/伸張部40が、サブ基板20に対してダウンロードするプログラムがメイン基板10のフラッシュ・メモリ13上に圧縮された状態で格納されている場合に当該プログラムを伸張する処理である。
Next, a program expansion process performed on the
プログラム圧縮/伸張部40は、メイン基板10からサブ基板20へと、チェックプログラムやブートプログラムをダウンロードする際に、メイン基板10のプログラム格納領域32においてこれらプログラムが圧縮されたデータとして格納されている場合に、当該プログラムデータの伸張処理を行う。
The program compression /
図22のフローチャートに、プログラム圧縮/伸張部40におけるプログラム伸張処理の手順を示す。プログラム圧縮/伸張部40は、プログラム生成部31がプログラム送信処理を実施するか否かを判断し(S91)、プログラム送信処理が実施されない場合は、再度S91に戻る。一方、プログラム送信処理を実施する場合は、次に、プログラム格納領域32に格納されている送信すべきプログラムデータが圧縮状態かどうかを判断する(S92)。ここで、圧縮状態であれば、当該プログラムデータを伸張し(S93)、伸張したプログラムデータを、メイン基板10のフラッシュ・メモリ13内に格納する。一方、送信すべきプログラムデータが圧縮されていない状態であれば、再度、S91に戻る。なお、該処理の終了についても特に記載していないが、メイン基板10の電源がオフされた時点などで終了する。
The flowchart of FIG. 22 shows the procedure of the program expansion process in the program compression /
また、プログラム圧縮/伸張部40は、チェックプログラムやブートプログラム等のサブ基板20へとダウンロードすべきプログラムデータが、メイン基板10に対して既に圧縮された状態でダウンロードされる場合は圧縮処理を実施しないが、圧縮されない状態でダウンロードされた場合は、圧縮処理を実施した後、プログラム格納領域32に格納する。
Further, the program compression /
また、本発明のプログラムダウンロード方法は、メイン基板にプロセッサとメイン基板を動作させるためのプログラムが格納されている不揮発性メモリおよびRAMとを備え、サブ基板にプロセッサとサブ基板を動作させるためのプログラムを格納する不揮発性メモリおよびRAMとを備え、メイン基板からサブ基板の不揮発性メモリに対してサブ基板を動作させるためのプログラムをダウンロードするプログラムダウンロード方法において、サブ基板はメイン基板に対して、不揮発性メモリにおけるチェックプログラムを書き込める領域のみを開放し、メイン基板は当該領域に対してチェックプログラムをダウンロードし、チェックプログラムをダウンロード後、サブ基板は当該チェックプログラムを起動して、サブ基板に接続されているメイン基板がプログラムダウンロード許可対象であるか否かを判断し、許可対象であれば、サブ基板の不揮発性メモリにおける領域を開放して、メイン基板はサブ基板にプログラムをダウンロードし、許可対象でなければ、サブ基板の不揮発性メモリにおける領域を開放せず処理を終了することを特徴としているとも換言できる。 The program download method of the present invention includes a nonvolatile memory and a RAM in which a program for operating the processor and the main board is stored on the main board, and a program for operating the processor and the sub board on the sub board. In a program download method for downloading a program for operating a sub board from a main board to a non-volatile memory on a sub board, the sub board is non-volatile with respect to the main board. The main board downloads the check program to the relevant area, and after downloading the check program, the sub board starts the check program and is connected to the sub board. Have It is determined whether or not the in-board is a program download permission target. In other words, it can be said that the processing is terminated without releasing the area in the non-volatile memory of the sub-board.
プログラムが何もない状態の制御装置に、許可されているプログラム供給装置からのみ選択的にブートプログラムを始めとする、該制御装置を動作させるためのプログラムをダウンロードさせることができるので、例えば複合機におけるメイン基板と、機能を追加できるようにオプション設定されるサブ基板であって、複数種のメイン基板に対して共有オプションとして用いられるサブ基板との間に利用することができる。 Since the control device having no program can selectively download a program for operating the control device including a boot program only from an authorized program supply device, for example, a multifunction device Can be used between a main board and a sub board that is set as an option so that a function can be added, and is used as a shared option for a plurality of types of main boards.
10 メイン基板(プログラム供給装置)
15 第1のI/Fポート(入出力部)
16 第2のI/Fポート(入出力部)
20 サブ基板(制御装置)
22 ASIC(チェックプログラム受付手段)
23 フラッシュ・メモリ(不揮発性メモリ)
31 プログラム生成部(チェックプログラムダウンロード手段)
32 プログラム格納領域
33 ID格納領域(識別情報格納領域)
34 プログラム送信部(チェックプログラムダウンロード手段)
35 電源監視部(電源監視手段)
36 プログラムダウンロード指示部(指示入力手段)
37 解析部(解析手段)
39 切替え設定部(設定手段)
38 ダウンロード情報報知部(ダウンロード情報報知手段)
41 プログラム受信部(プログラム受信手段)
10 Main board (program supply device)
15 First I / F port (input / output unit)
16 Second I / F port (input / output unit)
20 Sub-board (control device)
22 ASIC (check program acceptance means)
23 Flash memory (nonvolatile memory)
31 Program generator (check program download means)
32
34 Program transmitter (check program download means)
35 Power supply monitoring unit (Power supply monitoring means)
36 Program download instruction section (instruction input means)
37 Analysis unit (analysis means)
39 Switching setting section (setting means)
38 Download Information Notification Unit (Download Information Notification Unit)
41 Program receiving unit (program receiving means)
Claims (21)
上記制御装置は、上記プログラム供給装置に対して、上記不揮発性メモリにおけるブートプログラム領域の一部の所定領域のみを開放し、
上記プログラム供給装置は、上記制御装置において開放された上記所定領域にチェックプログラムをダウンロードさせ、
上記制御装置は、上記プログラム供給装置よりダウンロードされた上記チェックプログラムを起動して、接続されている上記プログラム供給装置が当該制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば上記不揮発性メモリにおける上記所定領域以外の領域も開放し、許可対象でなければ上記不揮発性メモリにおける上記所定領域以外の領域を開放しないことを特徴とするプログラムダウンロード方法。 A program download method of a program download system for downloading a program for operating the control device from a program supply device to a non-volatile memory for storing a program for operating the control device included in the control device,
The control device opens only a predetermined area of the boot program area in the nonvolatile memory to the program supply apparatus,
The program supply device downloads a check program to the predetermined area opened in the control device,
The control device activates the check program downloaded from the program supply device, and whether or not the connected program supply device is permitted to download the program to the control device. A program download characterized in that if it is a permission target, an area other than the predetermined area in the nonvolatile memory is also released, and if it is not a permission object, an area other than the predetermined area in the nonvolatile memory is not released. Method.
上記制御装置における許可対象であるか否かの判断に、上記プログラム供給装置から取得される上記識別情報を用いることを特徴とする請求項1に記載のプログラムダウンロード方法。 The check program includes device-specific identification information attached to the program supply device,
The program download method according to claim 1, wherein the identification information acquired from the program supply device is used for determining whether or not the control device is a permission target.
接続されている上記プログラム供給装置が上記制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば上記制御装置が有する不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放し、許可対象でなければ上記不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放しない処理を実行させるチェックプログラムを、上記制御装置が有する上記不揮発性メモリにおけるブートプログラム領域にダウンロードさせるチェックプログラムダウンロード手段を備えることを特徴とするプログラム供給装置。 A program that operates the control device in a nonvolatile memory that is connected to the control device, shares an I / F memory space with the control device, and stores a program for operating the control device included in the control device Is a program supply device for downloading via the I / F memory space,
It is determined whether or not the connected program supply device is permitted to download the program to the control device. If it is permitted, the memory area of the nonvolatile memory included in the control device is determined. The non-volatile memory that the control device has a check program that opens to the I / F memory space and executes a process that does not open the memory area of the non-volatile memory to the I / F memory space unless it is a permission target. A program supply device comprising check program download means for downloading to a boot program area in a memory.
プログラム格納領域に格納されているチェックプログラムを参照して上記制御装置に送信するためのチェックプログラムを生成するプログラム生成手段と、
該チェックプログラム生成手段にて生成されたチェックプログラムを、上記I/Fメモリ空間を介して上記制御装置へと転送するプログラム送信手段とを備えることを特徴とする請求項5に記載のプログラム供給装置。 The check program download means
A program generating means for generating a check program for referring to the check program stored in the program storage area and transmitting it to the control device;
6. The program supply device according to claim 5, further comprising: a program transmission unit that transfers the check program generated by the check program generation unit to the control device via the I / F memory space. .
上記チェックプログラム生成手段は、上記識別情報格納領域を参照して、チェックプログラムに自装置の識別情報を組み入れることを特徴とする請求項6に記載のプログラム供給装置。 An identification information storage area for storing identification information unique to the device attached to the device;
7. The program supply apparatus according to claim 6, wherein the check program generation means incorporates identification information of the own apparatus into the check program with reference to the identification information storage area.
上記チェックプログラムダウンロード手段は、チェックプログラムを送信後、上記解析手段がチェックプログラムダウンロード終了情報を受信していない場合に、上記制御装置に対して上記チェックプログラムを再送することを特徴とする請求項8に記載のプログラム供給装置。 Analysis means for determining whether or not the check program download end information has been received from the control device;
9. The check program download means, after transmitting the check program, when the analysis means has not received check program download end information, retransmits the check program to the control device. The program supply apparatus described in 1.
上記チェックプログラムダウンロード手段は、上記電源監視手段にて電源が投入されたと判断されると、上記制御装置にチェックプログラムをダウンロードさせる動作を開始すること特徴とする請求項5に記載のプログラム供給装置。 It further comprises power monitoring means for determining whether or not the power of its own device is turned on,
6. The program supply device according to claim 5, wherein the check program download unit starts an operation of causing the control device to download a check program when the power monitoring unit determines that the power is turned on.
上記制御装置と接続される入出力部とは別の入出力部を介して上記チェックプログラムを含む上記制御装置に対するダウンロード用プログラムを取得し、取得したダウンロード用プログラムが上記プログラム格納領域に格納されていない場合は取得したダウンロード用プログラムを格納する一方、既に格納されている場合は両ダウンロード用プログラムの比較を行い、取得したダウンロード用プログラムの方が新しければ上記プログラム格納領域の内容を更新するプログラム受信手段を、さらに備えることを特徴とする請求項6に記載のプログラム供給装置。 At least two input / output units connected to an external device and enabling input / output of information are provided.
A download program for the control device including the check program is acquired via an input / output unit different from the input / output unit connected to the control device, and the acquired download program is stored in the program storage area. If not, the downloaded program is stored, while if already stored, the two downloaded programs are compared, and if the downloaded program is newer, the program storage area is updated. The program supply device according to claim 6, further comprising a receiving unit.
接続されている上記プログラム供給装置が上記制御装置へのプログラムのダウンロードを許可されている許可対象であるか否かを判断し、許可対象であれば上記制御装置が有する不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放し、許可対象でなければ上記不揮発性メモリのメモリ領域をI/Fメモリ空間に対して開放しない処理を実行させるチェックプログラムを、上記制御装置が有する上記不揮発性メモリにおけるブートプログラム領域にダウンロードさせるチェックプログラムダウンロードステップを含むことを特徴とするプログラム供給方法。 A program that operates the control device in a nonvolatile memory that is connected to the control device, shares an I / F memory space with the control device, and stores a program for operating the control device included in the control device A program supply method for a program supply apparatus that downloads the program via the I / F memory space,
It is determined whether or not the connected program supply device is permitted to download the program to the control device. If it is permitted, the memory area of the nonvolatile memory included in the control device is determined. The non-volatile memory that the control device has a check program that opens to the I / F memory space and executes a process that does not open the memory area of the non-volatile memory to the I / F memory space unless it is a permission target. A program supply method comprising a check program download step for downloading to a boot program area in a memory.
自装置が有する上記不揮発性メモリのブートプログラム領域にブートプログラムが格納されていない状態で、上記不揮発性メモリのブートプログラム領域の一部の所定領域のみを上記I/Fメモリ空間に対して開放するチェックプログラム受付手段を備えることを特徴とする制御装置。 A non-volatile memory that is connected to the program supply apparatus, shares an I / F memory space with the program supply apparatus, and stores a program for operating the own apparatus included in the own apparatus from the program supply apparatus A control device in which a program for operating the device is downloaded,
In a state where no boot program is stored in the boot program area of the non-volatile memory of the own device, only a predetermined area of the boot program area of the non-volatile memory is opened to the I / F memory space. A control device comprising check program receiving means.
自装置が有する上記不揮発性メモリのブートプログラム領域にブートプログラムが格納されていない状態で、上記不揮発性メモリのブートプログラム領域の一部の所定領域のみを上記I/Fメモリ空間に対して開放するチェックプログラム受付ステップを含むことを特徴とする制御方法。 A non-volatile memory that is connected to the program supply apparatus, shares an I / F memory space with the program supply apparatus, and stores a program for operating the own apparatus included in the own apparatus from the program supply apparatus A control method for a control device in which a program for operating the device is downloaded,
In a state where no boot program is stored in the boot program area of the non-volatile memory of the own device, only a predetermined area of the boot program area of the non-volatile memory is opened to the I / F memory space. A control method comprising a check program receiving step.
請求項5〜15の何れか1項に記載のプログラム供給装置と、請求項17〜19の何れか1項に記載の制御装置とからなるプログラムダウンロードシステム。 A program download system for downloading a program for operating the control device from a program supply device to a non-volatile memory for storing a program for operating the control device included in the control device,
A program download system comprising the program supply device according to any one of claims 5 to 15 and the control device according to any one of claims 17 to 19.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005242964A JP2007058561A (en) | 2005-08-24 | 2005-08-24 | Program download system, method for it, program supply device, and controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005242964A JP2007058561A (en) | 2005-08-24 | 2005-08-24 | Program download system, method for it, program supply device, and controller |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007058561A true JP2007058561A (en) | 2007-03-08 |
Family
ID=37922014
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005242964A Pending JP2007058561A (en) | 2005-08-24 | 2005-08-24 | Program download system, method for it, program supply device, and controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007058561A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008294971A (en) * | 2007-05-28 | 2008-12-04 | Toshiba Corp | Communication terminal |
US9674958B2 (en) | 2014-06-05 | 2017-06-06 | Samsung Electronics Co., Ltd. | Printed circuit boards and semiconductor packages |
-
2005
- 2005-08-24 JP JP2005242964A patent/JP2007058561A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008294971A (en) * | 2007-05-28 | 2008-12-04 | Toshiba Corp | Communication terminal |
JP4734290B2 (en) * | 2007-05-28 | 2011-07-27 | 富士通東芝モバイルコミュニケーションズ株式会社 | Communication terminal |
US9674958B2 (en) | 2014-06-05 | 2017-06-06 | Samsung Electronics Co., Ltd. | Printed circuit boards and semiconductor packages |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4021407B2 (en) | Information processing device | |
CN109871222B (en) | Application updating method and recording medium | |
US20010027517A1 (en) | System comprising host device and peripheral device | |
JP7069826B2 (en) | Information processing equipment, firmware update method, program | |
JP2010231387A (en) | Program, information processing system, and information processing apparatus | |
US8091083B2 (en) | Electronic apparatus configured to replace an abnormal program with a downloaded replacement program | |
JP2007007873A (en) | Apparatus for accepting operation request, program, recording medium, method for controlling operation request accepting apparatus, communication system, and method for operating communication system | |
US20070150072A1 (en) | Method for controlling electronic apparatus, program for controlling electronic apparatus, electronic apparatus, and recording apparatus | |
JP2007058561A (en) | Program download system, method for it, program supply device, and controller | |
JP2008009799A (en) | Image forming device | |
JP2023130149A (en) | Image forming system and image forming device | |
JP2008162054A (en) | Printer | |
JP4207032B2 (en) | Firmware transmission program, control method, data transmission apparatus, and network system | |
JP2007042038A (en) | Device and method for controlling terminal equipment | |
JP3856045B2 (en) | Communication system and storage medium | |
JP2004021576A (en) | Image forming system and download method in the image forming system | |
JP2006277511A (en) | Program update method and restart method in device operated by program, and program executing update method for program | |
JP2015121887A (en) | Information processing device and control method thereof, and program | |
JP2009015531A (en) | Information processor, information processing program, and recording medium with information processing program recorded therein | |
JP2001051844A (en) | Computer peripheral equipment and firmware updating method | |
JP2006129362A (en) | Digital composite machine | |
JP2019142095A (en) | Image formation apparatus | |
JP2004259224A (en) | Peripheral device | |
JP2008172491A (en) | Facsimile | |
JP2017092900A (en) | External device, device, information processing system, information processing method, information processing program, and storage medium |