JP4556104B2 - Data processing device - Google Patents
Data processing device Download PDFInfo
- Publication number
- JP4556104B2 JP4556104B2 JP2004049097A JP2004049097A JP4556104B2 JP 4556104 B2 JP4556104 B2 JP 4556104B2 JP 2004049097 A JP2004049097 A JP 2004049097A JP 2004049097 A JP2004049097 A JP 2004049097A JP 4556104 B2 JP4556104 B2 JP 4556104B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- control program
- file
- area
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Stored Programmes (AREA)
Description
本発明は、データ処理装置に関し、詳しくは外部から受信した制御プログラムの書換データにより自装置のメモリに記憶されている制御プログラムをアップデートするデータ処理装置に関するものである。 The present invention relates to a data processing apparatus, and more particularly to a data processing apparatus that updates a control program stored in a memory of the apparatus itself with rewrite data of the control program received from the outside.
制御プログラムのアップデートを比較的頻繁に行う必要があるデータ処理装置では、書換え可能なフラッシュメモリ等に自身の制御プログラムが記憶されており、該フラッシュメモリの制御プログラムを外部から受信した書換データに書換えることにより、制御プログラムのアップデート処理が行われている。 In a data processing apparatus that needs to update a control program relatively frequently, its own control program is stored in a rewritable flash memory or the like, and the control program for the flash memory is rewritten to rewritten data received from the outside. Thus, the update process of the control program is performed.
このようなアップデート処理を行うものとして、例えば、特許文献1に開示されているメモリ書換システムがある。特許文献1のメモリ書換システム40では、図5に示すように、まず、外部端末装置41のCPU(Central Processing Unit)42によって記憶装置43から読み出された書換データがデータ送信回路44によってI/F45からデータ処理装置46へと送信される。そして、データ処理装置46のデータ受信回路47がI/F48から入力された書換データを受信すると、その書換データは一旦RAM(Random Access Memory)49に格納され、CPU50がフラッシュメモリ51の制御プログラムをRAM49に格納された書換データに書換えることにより制御プログラムのアップデート処理が行われる。
As an example of performing such an update process, there is a memory rewriting system disclosed in Patent Document 1. In the memory rewriting system 40 of Patent Document 1, as shown in FIG. 5, first, rewrite data read from a
なお、このメモリ書換システム40では、電源切換回路52によって本体電源53からデータ処理装置46の各部への電力供給が常時監視されており、電源切換回路52は、アップデート処理中に本体電源53からデータ処理装置46の各部への電力供給が遮断された場合に、外部端末装置41のバックアップ電源54から伝送ケーブル55を介して電力が供給されるように電力供給経路を切換える。したがって、データ処理装置46は、制御プログラムのアップデート中に停電等により本体電源53からデータ処理装置46の各部への電力供給が遮断されたとしても、その影響を受けることなくアップデート処理を継続して行うことができる。
しかしながら、特許文献1のメモリ書換システム40とは異なり、電力供給がバックアップされないシステム、例えばLAN(Local Area Network)やインターネット等を介してアップデート処理が行われるシステムにおいては、制御プログラムのアップデート中に停電等が発生した場合に、データ処理装置のフラッシュメモリの制御プログラムが書換え途中のままの不完全なものとなり、最悪の場合、データ処理装置のシステムが起動しなくなるという問題があった。 However, unlike the memory rewriting system 40 of Patent Document 1, in a system in which power supply is not backed up, for example, a system in which update processing is performed via a LAN (Local Area Network), the Internet, or the like, a power failure occurs during control program update. In such a case, the control program of the flash memory of the data processing device becomes incomplete while being rewritten, and in the worst case, there is a problem that the system of the data processing device cannot be started.
本発明は、かかる課題に鑑みてなされたものであり、電力供給がバックアップされていないデータ処理装置において、制御プログラムのアップデート中に停電等が発生したとしても、システムが起動しなくなるという問題が発生するのを防止することができるデータ処理装置を提供することを目的とする。 The present invention has been made in view of such a problem, and in a data processing apparatus whose power supply is not backed up, even if a power failure or the like occurs during a control program update, there is a problem that the system does not start up. It is an object of the present invention to provide a data processing apparatus that can prevent this from happening.
上記目的を達成するために、請求項1記載のデータ処理装置は、読み出して実行すべき制御プログラムの記憶場所を識別情報に基づいて所定の複数の記憶場所から選択する選択手段と、特定の文字列及び文字数が格納されている格納手段と、外部からコントロールファイルを受信したときに、該コントロールファイルに格納されているファイル名に前記特定の文字列が含まれ、且つ前記ファイル名の文字数が前記特定の文字数と一致する場合に、後に前記外部から送られてくるデータファイルが書換データであると判断する手段と、該手段により前記外部から送られてくるデータファイルが書換データであると判断された後、実行中の制御プログラムと同じ制御プログラムの書換データを前記外部から受信した場合に、前記所定の複数の記憶場所のうち、前記実行中の制御プログラムが読み出された記憶場所と異なる記憶場所に、受信した前記書換データを書込む書込み手段と、を備えることを特徴としている。 In order to achieve the above object, the data processing device according to claim 1 comprises a selection means for selecting a storage location of a control program to be read and executed from a plurality of predetermined storage locations based on the identification information, and a specific character. A storage means storing a column and the number of characters; and when the control file is received from the outside, the file name stored in the control file includes the specific character string, and the number of characters of the file name is Means for determining that the data file sent from the outside later is rewritten data when the number of characters matches, and the data file sent from the outside by the means is judged to be rewritten data; after, if the rewriting data of the same control program and the control program being executed has been received from the outside, said predetermined plurality of storage Of place, in a different storage location and the storage location where the control program being executed has been read, is characterized by comprising a writing means for writing the rewriting data received, the.
請求項2記載のデータ処理装置は、請求項1記載のデータ処理装置において、前記外部からコントロールファイルを受信したときに、該コントロールファイルに格納されているファイル名に前記特定の文字列が含まれていない場合、又は前記ファイル名の文字数が前記特定の文字数と一致しない場合には、後に前記外部から送られてくるデータファイルがプリントデータであると判断し、前記外部からプリントデータを受信した場合に、該プリントデータの画像を用紙に記録するために前記プリントデータを印刷処理モジュールへと転送する手段を備えることを特徴としている。
The data processing device according to
請求項1に記載のデータ処理装置では、実行中の制御プログラムが読み出された記憶場所と異なる記憶場所に受信した書換データが書込まれるので、たとえ、異なる記憶場所への書換データの書込み中に停電等が発生して異なる記憶場所の制御プログラムが不完全なものになったとしても、実行中の制御プログラムを読み出した記憶場所から再度制御プログラムを読み出して実行することができる。したがって、一つの記憶場所の制御プログラムが受信した書換データに書換えられる従来のデータ処理装置のように、停電等が発生した場合にシステムが起動しなくなるということはない。 In the data processing device according to claim 1, since the rewritten data received is written in a memory location different from the memory location from which the control program being executed is read, the rewrite data is being written to a different memory location. Even if a power failure or the like occurs and a control program in a different storage location becomes incomplete, the control program can be read again from the storage location from which the control program being executed is read and executed. Therefore, unlike the conventional data processing apparatus that rewrites the rewrite data received by the control program in one storage location, the system does not stop when a power failure occurs.
以下、本発明の実施の形態に係るデータ処理装置を、LPD(Line Printer Daemon)プロトコルに基づいてLAN(Local Area Network)上のクライアントPCから受信したプリントデータを複合機の印刷処理モジュールに転送するLPDサーバ機能を備えたネットワーク インターフェース コントローラに適用した場合について、図面に基づき説明する。 Hereinafter, the data processing apparatus according to the embodiment of the present invention transfers print data received from a client PC on a LAN (Local Area Network) based on an LPD (Line Printer Daemon) protocol to the print processing module of the multifunction peripheral. A case where the present invention is applied to a network interface controller having an LPD server function will be described with reference to the drawings.
このデータ処理装置1は、図1に例示するように、コピー機能、ファクシミリ機能、PCスキャナ機能、PCプリント機能等を備えた複合機2に組込まれており、LAN3上のクライアントPC4からLAN3を介して送信されたプリントデータ等を複合機2に転送したり、逆に複合機2において読取られた原稿の画像データ等をクライアントPC4に送信するものである。
As illustrated in FIG. 1, the data processing apparatus 1 is incorporated in a
このデータ処理装置1にプリントデータを送信するクライアントPC4は、一般的な機能を備えたPC(Personal Computer)であり、LPR(Line Printer Remote)プロトコルに基づいてLAN3上の他のクライアントPC4と通信を行ったり、データ処理装置1にプリントデータの印刷要求を行った後、該プリントデータを送信する。具体的には、プリントデータの送信に先立って、プリントデータのファイル名等の制御用データが格納されたコントロールファイルをデータ処理装置1に送信した後に、プリントデータを送信する。
A client PC 4 that transmits print data to the data processing apparatus 1 is a PC (Personal Computer) having a general function, and communicates with other client PCs 4 on the
また、このクライアントPC4は、プリントデータをデータ処理装置1に送信する上記の手順と同じ手順にてデータ処理装置1が制御プログラム(ファームウェア)をアップデートするための書換データをデータ処理装置1に送信する。すなわち、クライアントPC4は、プリントデータ又は書換データのいずれかであるデータファイルの送信に先立って、まず、データファイルのファイル名等が格納されたコントロールファイルをデータ処理装置1に送信し、その後、データファイルを送信する。なお、このデータファイルの他には、複合機2からファクシミリ送信させるための原稿の画像データがクライアントPC4から送信される。
The client PC 4 transmits rewrite data for updating the control program (firmware) to the data processing apparatus 1 by the same procedure as the above-described procedure for transmitting print data to the data processing apparatus 1. . That is, prior to transmission of a data file that is either print data or rewrite data, the client PC 4 first transmits a control file in which the file name of the data file is stored to the data processing apparatus 1, and then the data file Send the file. In addition to this data file, document image data for facsimile transmission from the
一方、データ処理装置1は、図示するように、制御部(MPU:Microprocessing Unit)5、インターフェース回路6、Flash ROM(Read Only Memory)7、SDRAM(Synchronous Dynamic Random Access Memory)8を備えたものであり、各部5乃至8は、バス9によって通信可能に接続されている。また、データ処理装置1は、複合機2と通信可能に接続されている。
On the other hand, the data processing apparatus 1 includes a control unit (MPU: Microprocessing Unit) 5, an
制御部5は、Flash ROM7に記憶されている制御プログラムに従って、このデータ処理装置1を構成する各部を制御する。インターフェース回路6は、制御部5が実行中の制御プログラムと同じ制御プログラムの書換データを外部から受信するものであり、ここではクライアントPC4から送信された書換データを受信する。なお、インターフェース回路6は、書換データの他にクライアントPC4から送信されたプリントデータを受信し、複合機2から出力された画像データ等をLAN3上のクライアントPC4に送信する。また、インターフェース回路6は、クライアントPC4からプリントデータ又は書換データであるデータファイルを受信する場合には、まずクライアントPC4から送信されたコントロールファイルを受信した後、データファイルを受信する。
The control unit 5 controls each unit constituting the data processing device 1 according to a control program stored in the
Flash ROM7は、制御部5によってデータ処理装置1の各部が制御されるための制御プログラム等を記憶するフラッシュメモリである。SDRAM8は、制御部5の主メモリ、ワークエリア等として機能し、インターフェース回路6が外部から受信した書換データ等を一時的に格納する。図2は、このFlash ROM7とSDRAM8の記憶領域を論理的に示したものであり、Flash ROM7は、ブートエリア11、識別エリア12、プライマリプログラムエリア13、及びセカンダリプログラムエリア14に論理的に分割されている。一方、SDRAM8は、プログラムエリア15とデータエリア16に論理的に分割されている。
The
Flash ROM7のブートエリア11は、システム起動時に実行される基本プログラムを記憶している。プライマリプログラムエリア13及びセカンダリプログラムエリア14は、読み出して実行すべき制御プログラムの記憶場所であり、同じサイズで構成されている。本発明の実施の形態においては、Flash ROM7が所定の複数の記憶場所として、このプライマリプログラムエリア13とセカンダリプログラムエリア14の2つの記憶場所(以下、「エリア」ともいう。)を備えている場合について説明する。
The
プライマリプログラムエリア13とセカンダリプログラムエリア14が記憶する制御プログラムは、クライアントPC4との間でLPDプロトコルに基づいて所定の通信処理を行うための通信処理プログラムや、受信した書換データにより自装置1の制御プログラムをアップデートするための書換処理プログラムや、受信したプリントデータを複合機2の印刷処理モジュールに転送するための転送処理プログラム等である。そして、これらの制御プログラムがプライマリプログラムエリア13とセカンダリプログラムエリア14のうちのいずれか一方又は両方に記憶されるようになっている。
The control program stored in the
識別エリア12は、プライマリプログラムエリア13とセカンダリプログラムエリア14の2つのエリアのうちのいずれのエリアから制御プログラムをロードして実行するか、すなわち2つのエリアのうちのいずれのエリアから制御プログラムを読み出して実行するかを示す識別情報を記憶している。制御部5は、読み出して実行すべき制御プログラムの記憶場所を識別情報に基づいて所定の複数の記憶場所から選択する選択手段として機能する。ここでは、制御部5は、読み出して実行すべき制御プログラムのエリアをこの識別エリア12に記憶されている識別情報に基づいて、プライマリプログラムエリア13とセカンダリプログラムエリア14から選択する。本発明の実施の形態においては、所定の複数の記憶場所がプライマリプログラムエリア13とセカンダリプログラムエリア14の2つであるため、識別エリア12には、識別情報として例えば「1」又は「2」が記憶されている。
The
SDRAM8のプログラムエリア15は、Flash ROM7のプライマリプログラムエリア13又はセカンダリプログラムエリア14から読み出して実行すべき制御プログラムが格納されるエリアである。データエリア16は、データ処理装置1が受信した書換データやプリントデータ等が一時的に格納されるエリアである。なお、図示していないが、プログラムエリア15の所定領域には、特定の文字列及び文字数が格納されている。制御部5は、クライアントPC4からコントロールファイルを受信したときに、そのコントロールファイルに格納されているファイル名にこの特定の文字列が含まれ、且つファイル名の文字数が前記特定の文字数と一致する場合に、後に送られてくるデータファイルが書換データであると判断し、その他の場合はプリントデータであると判断する。したがって、制御部5は、クライアントPC4からデータファイルを受信する前に、送られてくるデータファイルがプリントデータであるか又は書換データであるかを判断することができる。制御部5は、この判断結果に基づいて、インターフェース回路6がクライアントPC4からプリントデータを受信した場合には、そのプリントデータをSDRAM8に一旦格納した後、複合機2の印刷処理モジュールへと転送する。一方、インターフェース回路6がクライアントPC4から書換データを受信した場合には、その書換データにより自装置1の制御プログラムをアップデートする。
The
以下、プライマリプログラムエリア13から読み出した制御プログラムを実行中にインターフェース回路6が書換データを受信した場合を例として、制御部5によって行われる制御プログラムのアップデート処理について説明する。制御部5は、プライマリプログラムエリア13から読み出してSDRAM8のプログラムエリア15に格納した制御プログラムを実行中に、インターフェース回路6が書換データを受信したと判断した場合、受信した書換データをSDRAM8のデータエリア16に一旦格納する。
Hereinafter, the control program update process performed by the control unit 5 will be described by taking as an example the case where the
そして、制御部5は、システム起動時に既にプライマリプログラムエリア13から読み出されてプログラムエリア15に格納されている書換処理プログラムに従って、まず識別情報が「1」であるか又は「2」であるかを判断する。すなわち、実行中の制御プログラムが読み出されたエリア(記憶場所)がプライマリプログラムエリア13であるか又はセカンダリプログラムエリア14であるかを判断する。なお、この場合、識別情報は「1」であるため、実行中の制御プログラムが読み出されたエリアはプライマリプログラムエリア13であり、識別情報「2」に対応するセカンダリプログラムエリア14からは制御プログラムが読み出されていないと判断することができる。
Then, the control unit 5 first determines whether the identification information is “1” or “2” according to the rewrite processing program that has been read from the
続いて、制御部5は、実行中の制御プログラムが読み出されたエリアと異なるエリア、すなわち、セカンダリプログラムエリア14に、受信した書換データを書込むことにより、制御プログラムをアップデートする。なお、本発明における書込む処理は、記憶場所に制御プログラムが記憶されていない場合には書換データを記憶場所に書込む処理であり、制御プログラムが記憶されている場合には、その制御プログラムを書換データに書換える処理である。すなわち、ここでは、セカンダリプログラムエリア14に制御プログラムが記憶されていない場合には該セカンダリプログラムエリア14に書換データを書込み、制御プログラムが記憶されている場合にはその記憶されている制御プログラムを書換データに書換える。したがって、制御部5は、実行中の制御プログラムと同じ制御プログラムの書換データを外部から受信した場合に、所定の複数の記憶場所のうち、実行中の制御プログラムが読み出された記憶場所と異なる記憶場所に、受信した書換データを書込む書込み手段として機能する。
Subsequently, the control unit 5 updates the control program by writing the received rewrite data in an area different from the area where the control program being executed is read, that is, the
このようにして、制御プログラムのアップデート処理が完了すると、複合機2において再起動の処理が行われる。その際、データ処理装置1の制御部5は、識別エリア12の識別情報を「2」に変更する。これにより、次回システムが起動した際には、制御部5は、識別情報「2」に対応するセカンダリプログラムエリア14から制御プログラムを読み出すことになり、アップデートされた最新の制御プログラムを実行することができる。したがって、制御部5は、書換データが異なる記憶場所に書込まれた場合に、読み出して実行すべき制御プログラムの記憶場所として異なる記憶場所を選択するように識別情報を変更する変更手段として機能する。なお、セカンダリプログラムエリア14から読み出した制御プログラムを実行中に書換データを受信した場合も、上記と同様の方法でプライマリプログラムエリア13への制御プログラムのアップデート処理が行われる。
In this way, when the control program update process is completed, the
一方、データ処理装置1から転送されたプリントデータの印刷処理を行う複合機2は、制御部(MPU)18、ROM19、RAM(Random Access Memory)20、原稿読取部21、コーデック(CODEC:Coder and Decoder)22、画像メモリ23、操作部24、表示部25、記録部26、及び通信部27を備えたものであって、各部18乃至27は、バス28によって通信可能に接続されている。
On the other hand, the
制御部18は、ROM19に記憶されているプログラムに従って、この複合機2を構成する各部を制御する。ROM19は、前記プログラムを記憶している。RAM20は、制御部18の主メモリ、ワークエリア等として機能し、ファクシミリ番号などの予め登録された各種設定情報を記憶している。原稿読取部21は、例えば、CCD(Charge Coupled Device)等のイメージセンサにより原稿の画像データを読取るものである。
The
コーデック22は、画像データの符号化(エンコード)及び復号(デコード)を行うものであり、原稿読取部21で読取られた原稿の画像データをMH(Modified Huffman)、MR(Modified Read)、MMR(Modified Modified Read)、JBIG(Joint Bi-level Image Group)方式等により符号化し、符号化されている画像データを復号する。画像メモリ23は、コーデック22によって符号化された原稿の画像データ、外部の装置(不図示)からファクシミリ受信した原稿の画像データ、データ処理装置1から転送されたプリントデータ等を格納する。
The
操作部24は、図示しないが原稿読取部21に原稿の読取開始を指示するためのスタートキー、コピー部数やファクシミリ番号等を入力するためのテンキー、各種設定を行うためのカーソルキーなど、表示部25と連動した各種操作キーを備えている。表示部25は、各種の設定状態や複合機2の動作状態などを文字や図形などで表示する液晶表示装置(LCD:Liquid Crystal Display)や、点灯又は消灯で表示するLEDランプなどを備えている。
Although not shown, the
記録部(印刷処理モジュール)26は、原稿読取部21において読み取られた原稿の画像データ、ファクシミリ受信した原稿の画像データ、及びデータ処理装置1から転送されたプリントデータの画像を用紙に記録するものである。すなわち、クライアントPC4から送信されたプリントデータがデータ処理装置1によって転送されると、転送されたプリントデータは画像メモリ23に一旦格納された後、この記録部26に転送されその画像が用紙に記録される。この記録部26における記録方式としては、例えば、電子写真方式を用いることができる。
The recording unit (print processing module) 26 records the image data of the document read by the
通信部27は、モデム29及びNCU(Network Control Unit)30を備えている。モデム29は、例えばITU−T(国際電気通信連合電気通信標準化部門)の勧告V.34規格又はこれと同様のものに従って送受信データの変調及び復調を行うものである。NCU30は、電話回線を制御して電話をかけたり、切ったりする回線網制御装置であり、PSTN(Public Switched Telephone Network)31に接続されている。
The
以下、システム起動時に、データ処理装置1において行われる処理動作について、図3に示すフローチャートに基づいて説明する。なお、図3のフローチャートに基づいて説明するデータ処理装置1の処理動作は、ブートエリア11に記憶されている基本プログラムに基づいて制御部5が発行する命令に従って行われる。
Hereinafter, processing operations performed in the data processing apparatus 1 at the time of system startup will be described based on the flowchart shown in FIG. Note that the processing operation of the data processing apparatus 1 described based on the flowchart of FIG. 3 is performed according to a command issued by the control unit 5 based on a basic program stored in the
制御部5は、例えば、複合機2の電源が投入されるなどして、データ処理装置1の各部に電力が供給されると、まずブートエリア11の基本プログラムを実行し(S1)、識別エリア12の識別情報が「1」であるか又は「2」であるかを判断する(S2)。ここで、識別情報が「1」であると判断した場合には(S2:識別情報「1」)、プライマリプログラムエリア13から制御プログラムを読出し(S3)、SDRAM8のプログラムエリア15に格納する。一方、識別情報が「2」であると判断した場合には(S2:識別情報「2」)、セカンダリプログラムエリア14から制御プログラムを読出し(S4)、SDRAM8のプログラムエリア15に格納する。
For example, when power is supplied to each unit of the data processing device 1 by turning on the power of the
このように、本発明の実施の形態に係るデータ処理装置1においては、識別エリア12の識別情報に基づいてプライマリプログラムエリア13又はセカンダリプログラムエリア14のいずれかのエリアから全ての制御プログラムが読み出され、必要に応じて制御部5によって実行されるようになっている。
Thus, in the data processing device 1 according to the embodiment of the present invention, all control programs are read from either the
以下、上記のようにプライマリプログラムエリア13又はセカンダリプログラムエリア14から読み出した制御プログラムを実行中に、クライアントPC4からデータファイルを受信した場合に、データ処理装置1において行われる処理動作について図4に示すフローチャートに基づき説明する。なお、図4のフローチャートで説明するデータ処理装置1の処理動作は、識別エリア12の識別情報に基づきプライマリプログラムエリア13又はセカンダリプログラムエリア14のいずれか一方から読み出した制御プログラムに基づいて制御部5が発行する命令に従って行われる。
FIG. 4 shows processing operations performed in the data processing apparatus 1 when a data file is received from the client PC 4 while the control program read from the
データ処理装置1の制御部5は、プライマリプログラムエリア13又はセカンダリプログラムエリア14から読み出した制御プログラムを実行中に、LAN3上のクライアントPC4から送信されたデータファイルをインターフェース回路6が受信したと判断した場合(S6:YES)、受信したデータファイルをSDRAM8のデータエリア16に格納し、データファイルが書換データであるか否かを判断する(S7)。なお、本発明の実施の形態においては、データ処理装置1は、上記の通りデータファイルを受信する前に受信したコントロールファイルに格納されているデータファイルのファイル名から、データファイルが書換データであるか否かを判断できるため、S6の判断処理の前にS7の判断処理が既に行われており、その判断結果に基づいて以降の処理が行われる。また、コントロールファイルではなく、データファイル内に該データファイルが書換データであるか否かを示す情報が格納されている場合には、データファイル受信後にその情報に基づいてデータファイルが書換データであるか否かを判断する。
The control unit 5 of the data processing apparatus 1 determines that the
制御部5は、データファイルが書換データである場合(S7:YES)、識別エリア12の識別情報が「1」であるか又は「2」であるかを判断する(S8)。ここで、識別エリア12の識別情報が「1」であると判断した場合(S8:識別情報「1」)、すなわち、プライマリプログラムエリア13から制御プログラムを読み出して実行中である場合、セカンダリプログラムエリア14に受信した書換データを書込む(S9)。具体的には、セカンダリプログラムエリア14に制御プログラムが記憶されていない場合には書換データを書込み、制御プログラムが記憶されている場合には記憶されているその制御プログラムを書換データに書換える。
When the data file is rewritten data (S7: YES), the controller 5 determines whether the identification information in the
なお、仮にS9の書込み中に停電等が発生してデータ処理装置1の各部への電力供給が遮断されると、制御部5は、以降の処理を行うことはできず、また、セカンダリプログラムエリア14の制御プログラムは書込み途中であるために不完全なものとなる。このような障害が発生した後にシステムを起動させると、図3に基づいて説明したように制御部5は、ブートエリアの基本プログラムを実行し(S1)、識別情報が「1」であるか又は「2」であるかを判断する(S2)。ここでは、識別情報は「1」であるため(S2:識別情報「1」)、障害が発生する前と同じプライマリプログラムエリア13から制御プログラムを読み出して実行することができる。したがって、再度書換データを外部から受信してセカンダリプログラムエリア14への書換データの再書込みを行うことができる。
If a power failure or the like occurs during the writing of S9 and the power supply to each unit of the data processing device 1 is interrupted, the control unit 5 cannot perform the subsequent processing, and the secondary program area The
制御部5は、このような停電等の障害が発生することなくS9の書込み処理を行った場合、S9の書込み処理が成功したか否かを判断する(S10)。この判断処理は、例えばセカンダリプログラムエリア14に書込まれた書換データとSDRAM8のデータエリア16の書換データとを比較することにより行うことができる。ここで、書込み処理が成功していないと判断した場合には(S10:NO)、書込み処理が成功するまでS9の処理を継続して行う。そして、書込み処理が成功したと判断した場合には(S10:YES)、識別エリア12の識別情報を「2」に変更する(S11)。したがって、次回システム起動時には、制御部5は、識別情報「2」に対応するセカンダリプログラムエリア14から、アップデートされた新しい制御プログラムを読み出して実行することができる。
When the writing process in S9 is performed without occurrence of such a failure such as a power failure, the control unit 5 determines whether or not the writing process in S9 is successful (S10). This determination process can be performed, for example, by comparing the rewrite data written in the
一方、制御部5は、識別エリア12の識別情報が「2」であると判断した場合(S8:識別情報「2」)、すなわち、セカンダリプログラムエリア14から制御プログラムを読み出して実行中である場合、プライマリプログラムエリア13に受信した書換データを書込む(S12)。具体的には、プライマリプログラムエリア13に制御プログラムが記憶されていない場合には書換データを書込み、制御プログラムが記憶されている場合には記憶されているその制御プログラムを書換データに書換える。
On the other hand, when the control unit 5 determines that the identification information of the
なお、仮にS12の書込み中に停電等が発生してデータ処理装置1の各部への電力供給が遮断されると、制御部5は、以降の処理を行うことはできず、また、プライマリプログラムエリア13の制御プログラムは書込み途中であるために不完全なものとなる。このような障害が発生した後にシステムを起動させると、図3に基づいて説明したように制御部5は、ブートエリアの基本プログラムを実行し(S1)、識別情報が「1」であるか又は「2」であるかを判断する(S2)。ここでは、識別情報は「2」であるため(S2:識別情報「2」)、障害が発生する前と同じセカンダリプログラムエリア14から制御プログラムを読み出して実行することができる。したがって、再度書換データを外部から受信してプライマリプログラムエリア13への書換データの再書込みを行うことができる。
If a power failure or the like occurs during the writing of S12 and power supply to each unit of the data processing device 1 is interrupted, the control unit 5 cannot perform subsequent processing, and the primary program area The
制御部5は、このような停電等の障害が発生することなくS12の書込み処理を行った場合、S10の処理と同様にS12の書込み処理が成功したか否かを判断する(S13)。ここで、書込み処理が成功していないと判断した場合には(S13:NO)、書込み処理が成功するまでS12の処理を継続して行う。そして、書込み処理が成功したと判断した場合には(S13:YES)、識別エリア12の識別情報を「1」に変更する(S14)。したがって、次回システム起動時には、制御部5は、識別情報「1」に対応するプライマリプログラムエリア13から、アップデートされた新しい制御プログラムを読み出して実行することができる。
When the writing process of S12 is performed without occurrence of such a failure such as a power failure, the control unit 5 determines whether or not the writing process of S12 is successful as in the process of S10 (S13). If it is determined that the writing process is not successful (S13: NO), the process of S12 is continued until the writing process is successful. If it is determined that the writing process is successful (S13: YES), the identification information in the
一方、制御部5は、S7において、データファイルは書換データではないと判断した場合(S7:NO)、他の処理を実行する(S15)。例えば、S7において書換データではないと判断したデータファイルがプリントデータである場合には、受信したプリントデータをSDRAM8のデータエリア16に一旦格納した後、複合機2の印刷処理モジュールに転送する。このようにして転送されたプリントデータは、複合機2の画像メモリ23に一旦格納された後、記録部26においてその画像が用紙に記録される。
On the other hand, if the control unit 5 determines in S7 that the data file is not rewritten data (S7: NO), it executes another process (S15). For example, if the data file determined not to be rewritten data in
以上説明したように、このデータ処理装置1では、自装置1の各部を制御するための制御プログラムがFlash ROM7のプライマリプログラムエリア13とセカンダリプログラムエリア14の2つの記憶場所に記憶されるようになっており、一方の記憶場所への書換データのアップデート中に停電等が発生して制御プログラムが不完全なものになったとしても、他方の記憶場所から完全な状態の制御プログラムを読み出して実行することができる。すなわち、制御プログラムが記憶される記憶場所が分割されていないFlash ROMを備えた従来のデータ処理装置のように、制御プログラムが不完全なものとなってシステムが起動しなくなるという重大な問題が生じるのを防止することができる。また、システムを再び起動させた後、外部から再度書換データを受信してアップデート処理を行うことができる。
As described above, in this data processing device 1, the control program for controlling each part of the device 1 is stored in the two storage locations of the
なお、本発明の実施の形態においては、制御プログラムがプライマリプログラムエリア13とセカンダリプログラムエリア14の2つの記憶場所に記憶される場合について説明したが、3以上の記憶場所に制御プログラムを記憶するようにすることも当然可能である。但し、制御プログラムが記憶される記憶場所が多くなるにつれて、必要となるメモリ容量が増大し、結果としてコストを増加させることに繋がるため、本発明の実施の形態のように、2つの記憶場所に制御プログラムを記憶するのが好適である。また、Flash ROMを複数併設して制御プログラムをロードするFlash ROMを識別情報によって切換えるようにしてもよい。
In the embodiment of the present invention, the case where the control program is stored in two storage locations of the
また、外部から書換データを受信する方法は、LPDプロトコルに基づいてLAN3を介してクライアントPC4から受信する方法に限定されるものではない。例えば、クライアントPC4からUSB(Universal Serial Bus)を介して独自プロトコルにて書換データを受信したり、PSTN31を介して複合機2がファクシミリ通信の手順に従ってサービスセンター等の外部のファクシミリ装置から書換データを受信し、データ処理装置1に転送するようにしてもよい。また、LAN3上にインターネットに接続するためのルータ等を設置し、HTTP(Simple Mail Transfer Protocol)、POP(Post Office Protocol)、SMTP(Simple Mail Transfer Protocol)に基づいてインターネットを介して書換データを受信するようにしてもよい。
Further, the method of receiving the rewrite data from the outside is not limited to the method of receiving from the client PC 4 via the
また、本発明の実施の形態においては、ネットワーク インターフェース コントローラとして複合機2に組込まれたデータ処理装置1について説明したが、外部から書換データを受信することができ、フラッシュメモリ等の書換え可能なメモリを備えた装置であれば、本発明を適用可能な装置はデータ処理装置1に限定されるものではない。例えば、複合機2のROM19を2つのプログラムエリア(記憶場所)を有するフラッシュメモリで構成し、データ処理装置1にクライアントPC4から送信された書換データを自装置2に転送させてRAM20に一旦格納紙した後、ROM19のいずれかのエリアに書換データをアップデートするようにしてもよい。
In the embodiment of the present invention, the data processing device 1 incorporated in the
本発明は、外部から受信した書換データにより自身の制御プログラムをアップデートする各種データ処理装置に適用することができる。 The present invention can be applied to various data processing apparatuses that update their own control program with rewrite data received from the outside.
1 データ処理装置
5 制御部(MPU)
6 インターフェース回路
7 Flash ROM
8 SDRAM
11 ブートエリア
12 識別エリア
13 プライマリプログラムエリア
14 セカンダリプログラムエリア
15 プログラムエリア
1 Data processing device 5 Control unit (MPU)
6
8 SDRAM
11
Claims (2)
特定の文字列及び文字数が格納されている格納手段と、
外部からコントロールファイルを受信したときに、該コントロールファイルに格納されているファイル名に前記特定の文字列が含まれ、且つ前記ファイル名の文字数が前記特定の文字数と一致する場合に、後に前記外部から送られてくるデータファイルが書換データであると判断する手段と、
該手段により前記外部から送られてくるデータファイルが書換データであると判断された後、実行中の制御プログラムと同じ制御プログラムの書換データを前記外部から受信した場合に、前記所定の複数の記憶場所のうち、前記実行中の制御プログラムが読み出された記憶場所と異なる記憶場所に、受信した前記書換データを書込む書込み手段と、を備えることを特徴とするデータ処理装置。 Selection means for selecting a storage location of the control program to be read and executed from a plurality of predetermined storage locations based on the identification information;
Storage means for storing a specific character string and the number of characters;
When the control file is received from the outside and the specific character string is included in the file name stored in the control file and the number of characters of the file name matches the specific number of characters, the external file is later Means for determining that the data file sent from is rewritten data,
When it is determined by the means that the data file sent from the outside is rewrite data, the rewrite data of the same control program as the control program being executed is received from the outside, and the predetermined plurality of storages A data processing apparatus comprising: writing means for writing the received rewrite data to a storage location different from the storage location from which the control program being executed is read.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004049097A JP4556104B2 (en) | 2004-02-25 | 2004-02-25 | Data processing device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004049097A JP4556104B2 (en) | 2004-02-25 | 2004-02-25 | Data processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005242512A JP2005242512A (en) | 2005-09-08 |
JP4556104B2 true JP4556104B2 (en) | 2010-10-06 |
Family
ID=35024216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004049097A Expired - Fee Related JP4556104B2 (en) | 2004-02-25 | 2004-02-25 | Data processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4556104B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007184753A (en) * | 2006-01-06 | 2007-07-19 | Sony Corp | Reception display system, receiving device, and display terminal |
JP2010231489A (en) * | 2009-03-27 | 2010-10-14 | Nec Corp | Microcode rewriting method |
DE102011102425A1 (en) * | 2011-05-24 | 2012-11-29 | Heidelberger Druckmaschinen Ag | Simultaneous software update |
US9196286B2 (en) * | 2012-05-31 | 2015-11-24 | Panasonic Intellectual Property Management Co., Ltd. | Optical disk information device and information processing device |
CN114968317B (en) * | 2022-04-01 | 2024-04-26 | 北京遥测技术研究所 | Program upgrading method based on ZYNQ fool-proof design |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63115253A (en) * | 1986-10-31 | 1988-05-19 | Fujitsu Ltd | Initial program data revising system |
JPH0869376A (en) * | 1994-08-31 | 1996-03-12 | Hitachi Ltd | Reload control circuit for bios |
WO1997036226A1 (en) * | 1996-03-22 | 1997-10-02 | Hitachi, Ltd. | Printing system |
JPH09288579A (en) * | 1996-04-22 | 1997-11-04 | Murata Mach Ltd | Communication terminal equipment and its remote maintenance method |
JP2000163268A (en) * | 1998-11-27 | 2000-06-16 | Nec Corp | Computer |
JP2000357131A (en) * | 1999-06-16 | 2000-12-26 | Matsushita Electric Ind Co Ltd | Electronic equipment control system using communication protocol |
JP2002232638A (en) * | 2001-02-02 | 2002-08-16 | Matsushita Graphic Communication Systems Inc | Picture information transmission system, scanner device, user terminal device and method for transmitting picture information |
JP2003114807A (en) * | 2001-10-02 | 2003-04-18 | Fuji Photo Film Co Ltd | Electronics device and method for rewriting main body control program |
-
2004
- 2004-02-25 JP JP2004049097A patent/JP4556104B2/en not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63115253A (en) * | 1986-10-31 | 1988-05-19 | Fujitsu Ltd | Initial program data revising system |
JPH0869376A (en) * | 1994-08-31 | 1996-03-12 | Hitachi Ltd | Reload control circuit for bios |
WO1997036226A1 (en) * | 1996-03-22 | 1997-10-02 | Hitachi, Ltd. | Printing system |
JPH09288579A (en) * | 1996-04-22 | 1997-11-04 | Murata Mach Ltd | Communication terminal equipment and its remote maintenance method |
JP2000163268A (en) * | 1998-11-27 | 2000-06-16 | Nec Corp | Computer |
JP2000357131A (en) * | 1999-06-16 | 2000-12-26 | Matsushita Electric Ind Co Ltd | Electronic equipment control system using communication protocol |
JP2002232638A (en) * | 2001-02-02 | 2002-08-16 | Matsushita Graphic Communication Systems Inc | Picture information transmission system, scanner device, user terminal device and method for transmitting picture information |
JP2003114807A (en) * | 2001-10-02 | 2003-04-18 | Fuji Photo Film Co Ltd | Electronics device and method for rewriting main body control program |
Also Published As
Publication number | Publication date |
---|---|
JP2005242512A (en) | 2005-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8194261B2 (en) | Image processing apparatus, method for controlling image processing apparatus, control program, and recording medium | |
JP2013165343A (en) | Image forming device, image forming method, and program | |
JP4556104B2 (en) | Data processing device | |
US20070296932A1 (en) | Image Forming Apparatus and Image Forming Method | |
JPH10171634A (en) | Information processing terminal and program updating system | |
JP2006140763A (en) | Image reader | |
JP4103823B2 (en) | Data processing device | |
JP6489827B2 (en) | Image processing apparatus, image processing apparatus control method, and program | |
JP2005150875A (en) | Image processing apparatus | |
JP2006229832A (en) | Original image reading/recording apparatus | |
JP2007015223A (en) | Image forming apparatus | |
JP2005269487A (en) | Image processor | |
JP4923001B2 (en) | Data communication device | |
JP4892464B2 (en) | Image processing apparatus, image processing apparatus control method, control program, and recording medium | |
EP1445939B1 (en) | Method and apparatus for reliable and secure facsimile communications, and program and computer-readable medium storing the program for reliable and secure facsimile communications | |
JP2007074101A (en) | Communication terminal device | |
JP2004148612A (en) | Image forming apparatus and program | |
JP4300979B2 (en) | Image data receiver | |
JP2007134870A (en) | Repeater and transmission system | |
JP4232846B2 (en) | Method for installing program in image processing apparatus, system for installing program in image processing apparatus, Web server, and relay server | |
JP2005258508A (en) | Data processor | |
JP3576839B2 (en) | Communication terminal device and communication terminal control method | |
JP2005217831A (en) | Image processing apparatus | |
JP2006245690A (en) | Facsimile machine | |
JP2005277993A (en) | Image processing apparatus |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20061218 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090424 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090929 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091007 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091126 |
|
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: 20100624 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100707 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130730 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |