(57)【特許請求の範囲】
【請求項１】
通信機能を備え、書換可能なＲＯＭに格納された制御プログラムに基づいて、各種通信処理を行うとともに、他の通信装置から圧縮された制御プログラムを受信すると、所定の書換プログラムに基づいて、当該受信した制御プログラムを展開して、前記ＲＯＭの制御プログラムと書き換える通信装置であって、
前記他の通信装置から送信されてくる圧縮された制御プログラムと該制御プログラムとともに送信されてくる該制御プログラムの検査情報を格納する受信プログラム記憶手段と、
前記受信プログラム記憶手段に格納した前記圧縮された制御プログラムを展開する展開手段と、
前記展開手段によって展開した制御プログラムを格納する所定容量の展開プログラム記憶手段と、
前記圧縮された制御プログラムの受信の適否を前記検査情報に基づいて判別する判別手段と、
前記判別手段が前記圧縮された制御プログラムの受信が適切であると判別すると、前記展開手段による前記圧縮された制御プログラムの前記展開プログラム記憶手段への展開を開始し、該展開プログラム記憶手段のメモリ容量が一杯になる毎にそれまで該展開プログラム記憶手段に展開した制御プログラムを前記ＲＯＭに書き込む処理を前記圧縮された制御プログラムの展開が全て終了するまで繰り返し行うことにより、前記圧縮された制御プログラムで前記ＲＯＭの制御プログラムと書き換えるプログラム書換手段とを設け、
前記展開手段は、前記圧縮された制御プログラムに基づいて検査情報を算出する手段を有し、
前記判別手段は、前記展開手段によって算出された検査情報と前記圧縮された制御プログラムと共に受信した検査情報とが一致した場合に、該制御プログラムの受信が適切であると判別する手段であることを特徴とする通信装置。
【請求項２】
前記通信装置は、前記ＲＯＭ内に前記書換プログラムを格納しており、当該ＲＯＭ内の前記書換プログラムを一時記憶する書換プログラム記憶手段を、さらに備え、前記制御プログラムを受信すると、前記プログラム書換手段は、前記ＲＯＭ内の前記書換プログラムを前記書換プログラム記憶手段に一時記憶させ、該書換プログラム記憶手段に記憶させた前記書換プログラムに基づいて、前記制御プログラムの書換処理を行うことを特徴とする請求項１記載の通信装置。
【請求項３】
前記通信装置は、前記制御プログラムの書換処理を行っているとき、その旨を報知する報知手段を、さらに備えたことを特徴とする請求項１または請求項２記載の通信装置。
【請求項４】
前記通信装置は、前記制御プログラムの書き換えが正常に行われたか否かのメッセージを前記制御プログラムを送信してきた他の通信装置に通知するメッセージ通知手段を、さらに備えたことを特徴とする請求項１から請求項３のいずれかに記載の通信装置。
【請求項５】
前記通信装置は、少なくとも、前記制御プログラムの書換処理中は、前記ＲＯＭ、前記受信プログラム記憶手段、前記展開手段、前記展開プログラム記憶手段、前記判別手段、前記プログラム書換手段、前記書換プログラム記憶手段の電源をバックアップして、その動作を補償するバックアップ手段を、さらに備えたことを特徴とする請求項１から請求項４のいずれかに記載の通信装置。
【請求項６】
前記通信装置は、ファクシミリ装置であることを特徴とする請求項１から請求項５のいずれかに記載の通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信装置に関し、詳細には、通信装置の制御プログラムを他の通信装置から送信した書換用制御プログラムで書き換え可能な通信装置に関する。
【０００２】
【従来の技術】
従来、通信装置、例えば、ファクシミリ装置では、ファクシミリ通信処理を実行するためのファクシミリ制御プログラムをＲＯＭ（Read Only Memory）等のメモリに格納しており、そのファクシミリ制御プログラムを更新するためＲＯＭを交換する必要がある場合は、サービスマンやエンジニアが、新しいファクシミリ制御プログラムを格納したＲＯＭを直接ユーザーへ持って行って、新しいＲＯＭに交換していた。
【０００３】
しかしながら、この場合、サービスマンやエンジニアが、新しいファクシミリ制御プログラムを格納したＲＯＭを直接ユーザーへ持って行くことで、人件費や交通費等が嵩むという問題が発生する。そこで、この問題を解決するため、ファクシミリ制御プログラムを書き変え可能なメモリに格納し、電話回線を介して送信されるファクシミリ制御プログラムによって、そのメモリに格納されたファクシミリ制御プログラムの書き換えを可能とすることにより、ＲＯＭを交換する際の人件費や交通費等を削減することが考えられる。
【０００４】
この従来の電話回線を介してのファクシミリ制御プログラム等の書き換えを可能にする装置としては、例えば、特開平２−２６５３９６号公報に記載された通信制御装置があり、この装置の場合は、バッテリでバックアップされている複数のＲＡＭを備え、一方のＲＡＭをデータ格納用、他方のＲＡＭを制御プログラム格納用としている。この制御プログラムが格納されるＲＡＭには、通常の通信制御を行うための制御プログラム、制御プログラムの内容を変更するために必要な処理を実行する変更制御プログラム及びプログラム変更用のパスワードが格納されている。そして、送信側より送出されたパスワードとＲＡＭに格納されているパスワードが一致することにより、続いて送信側から送信される変更用制御プログラムにより制御プログラムの変更が行われている。
【０００５】
【発明が解決しようとする課題】
しかしながら、このような従来の電話回線を介して制御プログラムの書き換えが可能な通信制御装置にあっては、制御プログラムが格納されるメモリとしてＲＡＭが利用されていたため、そのＲＡＭの記憶状態を維持するためのバックアップ電源が必要となり、通信制御装置のコストを上昇させるという問題が発生する。
【０００６】
また、電話回線を介して送信されてくる制御プログラムは、そのプログラム容量が多い場合は、通信時間を短縮するため圧縮されて送信される場合があるが、上記従来の通信制御装置にあっては、この圧縮制御プログラムが送信されてくることが考慮されていないため、ＲＡＭ内に圧縮制御プログラムを展開するための空き容量が確保できず、制御プログラムの書き換えを行うことができない事態が発生するという問題があった。
【０００７】
そこで、請求項１記載の発明は、受信した圧縮された制御プログラムが適切に受信されたかを検査情報により先に検査した後、展開プログラム記憶手段が一杯になるまで圧縮された制御プログラムを展開して、展開した制御プログラムを順次書換可能なＲＯＭの制御プログラムと書き換えることにより、圧縮された制御プログラムを受信した場合に、展開プログラム記憶手段が一杯になっても適切に制御プログラムの書き換えを行うことのできる通信装置を提供することを目的としている。
【０００８】
請求項２記載の発明は、ＲＯＭ内の書換プログラムを一時記憶する書換プログラム記憶手段を設けることにより、通信装置のＲＯＭ内の書換プログラムによりＲＯＭの書き換えを行うことのできる通信装置を提供することを目的としている。
【０００９】
請求項３記載の発明は、制御プログラムを書換中である旨を報知することにより、制御プログラムの書換中に通信装置の電源が切られてしまうことを防いで、適切に制御プログラムの書き換えを行うことのできる通信装置を提供することを目的としている。
【００１０】
請求項４記載の発明は、制御プログラムの書き換えが正常に行われたかどうかのメッセージを当該制御プログラムを送信してきた他の通信装置に通知して、適切に制御プログラムの書き換えが行われたかどうかを他の通信装置で確認することのできる通信装置を提供することを目的としている。
【００１１】
請求項５記載の発明は、制御プログラムの書換中は、書換処理に必要な各手段を電源バックアップすることにより、適切な制御プログラムの書換処理を行うことのできる通信装置を提供することを目的としている。
【００１２】
請求項６記載の発明は、ファクシミリ装置に適用することにより、圧縮した制御プログラムを送信することにより、制御プログラムを遠隔で書き換えることのできるファクシミリ装置を提供することを目的としている。
【００１３】
【課題を解決するための手段】
請求項１記載の発明のファクシミリ装置は、通信機能を備え、書換可能なＲＯＭに格納された制御プログラムに基づいて、各種通信処理を行うとともに、他の通信装置から圧縮された制御プログラムを受信すると、所定の書換プログラムに基づいて、当該受信した制御プログラムを展開して、前記ＲＯＭの制御プログラムと書き換える通信装置であって、前記他の通信装置から送信されてくる圧縮された制御プログラムと該制御プログラムとともに送信されてくる該制御プログラムの検査情報を格納する受信プログラム記憶手段と、前記受信プログラム記憶手段に格納した前記圧縮された制御プログラムを展開する展開手段と、前記展開手段によって展開した制御プログラムを格納する所定容量の展開プログラム記憶手段と、前記圧縮された制御プログラムの受信の適否を前記検査情報に基づいて判別する判別手段と、前記判別手段が前記圧縮された制御プログラムの受信が適切であると判別すると、前記展開手段による前記圧縮された制御プログラムの前記展開プログラム記憶手段への展開を開始し、該展開プログラム記憶手段のメモリ容量が一杯になる毎にそれまで該展開プログラム記憶手段に展開した制御プログラムを前記ＲＯＭに書き込む処理を前記圧縮された制御プログラムの展開が全て終了するまで繰り返し行うことにより、前記圧縮された制御プログラムで前記ＲＯＭの制御プログラムと書き換えるプログラム書換手段とを設け、前記展開手段に、前記圧縮された制御プログラムに基づいて検査情報を算出する手段を備え、前記判別手段を、前記展開手段によって算出された検査情報と前記圧縮された制御プログラムと共に受信した検査情報とが一致した場合に、該制御プログラムの受信が適切であると判別する手段とすることにより、上記目的を達成している。
【００１４】
ここで、制御プログラムは、書換可能なＲＯＭ、例えば、ＰＲＯＭ（Programmable ＲＯＭ）等に格納されており、受信した制御プログラムと書き換えられる。受信プログラム記憶手段及び展開プログラム記憶手段は、例えば、ＲＡＭ等が利用される。
【００１５】
受信した制御プログラムは、一緒に受信した検査情報、例えば、チェックサムに基づいて、まず、正常に受信されているかが判別手段により判別される。判別手段は、例えば、チェックサムにより判別するときには、展開手段により受信した圧縮されている制御プログラムを伸張・展開させて、展開させたビット数を順次演算し、総ビット数の下位１バイトがチェックサムの値と一致するかにより受信が正常に行われたかどうか判別する。
【００１６】
プログラム書換手段は、受信が正常に行われていると、展開手段により受信した圧縮されている制御プログラムを順次展開させて、展開プログラム記憶手段に記憶させていき、展開プログラム記憶手段が一杯になると、展開プログラム記憶手段に展開された制御プログラムにより、ＲＯＭの制御プログラムを書き換える。この書換処理を受信した全ての制御プログラムによりＲＯＭ内の制御プログラムを書き換えるまで行うことにより、制御プログラムの書換処理を行う。
【００１７】
上記構成によれば、圧縮された制御プログラムを受信した場合に、受信した制御プログラムの適否を判別した後、圧縮制御プログラムを展開するので、制御プログラムを全て展開する大きな容量の展開プログラム記憶手段を必要とすることなく、適切に圧縮制御プログラムを展開して、ＲＯＭ内の制御プログラムを書き換えることができ、電源バックアップを必要としないＲＯＭの制御プログラムを安価に、かつ、適切に書き換えることができる。その結果、圧縮した制御プログラムを短い通信時間で受信して、容量の小さい展開プログラム記憶手段を利用して適切に制御プログラムを展開して、制御プログラムの書き換えを行うことができ、他の通信装置から送信した制御プログラムにより制御プログラムの書き換えを行うことのできる通信装置を小型で、かつ、安価なものとすることができる。
【００１８】
この場合、例えば、請求項２に記載するように、前記通信装置は、前記ＲＯＭ内に前記書換プログラムを格納しており、当該ＲＯＭ内の前記書換プログラムを一時記憶する書換プログラム記憶手段を、さらに備え、前記制御プログラムを受信すると、前記プログラム書換手段は、前記ＲＯＭ内の前記書換プログラムを前記書換プログラム記憶手段に一時記憶させ、該書換プログラム記憶手段に記憶させた前記書換プログラムに基づいて、前記制御プログラムの書換処理を行うものであってもよい。
【００１９】
ここで、ＲＯＭは、その記憶内容の書き換えを行っている間は、ＲＯＭ内のプログラムをアクセス（フェッチ）することができないため、書換プログラムが送信されてくる場合には、当該送信されてきた書換プログラムを受信プログラム記憶手段に記憶し、また、ＲＯＭ内に書換プログラムを格納しているときには、ＲＯＭ内の書換プログラムを他のメモリに移し変える必要がある。本請求項では、ＲＯＭ内の書換プログラムを格納するための記憶手段として、書換プログラム記憶手段を備えている。
【００２０】
上記構成によれば、ＲＯＭ内の書換プログラムを書換プログラム記憶手段に一時記憶させて、当該書換プログラム記憶手段の書換プログラムにより、受信した制御プログラムによりＲＯＭ内の制御プログラムを適切に書き換えることができる。
【００２１】
また、例えば、請求項３に記載するように、前記通信装置は、前記制御プログラムの書換処理を行っているとき、その旨を報知する報知手段を、さらに備えていてもよい。
【００２２】
ここで、報知手段は、制御プログラムの書き換え中であることを通信装置のオペレータに適切に報知することのできるものであれば、音声によるものであってもよいし、表示によるものであってもよく、また、これら双方を利用するものであってもよい。
【００２３】
上記構成によれば、制御プログラムの書き換え中であることをオペレータ等に通知することができ、プログラムの書き換え中に通信装置の電源が不用意に切られてしまうことを防ぐことができる。その結果、制御プログラムの書換処理が中断されることを防止することができ、適切に制御プログラムの書換処理を行うことができる。
【００２４】
さらに、例えば、請求項４に記載するように、前記通信装置は、前記制御プログラムの書き換えが正常に行われたか否かのメッセージを前記制御プログラムを送信してきた他の通信装置に通知するメッセージ通知手段を、さらに備えていてもよい。
【００２５】
ここで、メッセージ通知手段は、制御プログラムを送信してきた通信装置に対して、制御プログラムの書き換えが正常に行われたか否かのメッセージを通知し、正常に書き換えが行われた場合と書き換えが失敗した場合のいずれの場合にもメッセージを通知してもよいし、何れか一方の場合のみ通知するようにしてもよい。
【００２６】
上記構成によれば、制御プログラムの書き換えが正常に行われたか否かを、制御プログラムの送信元の通信端末で知ることができ、その後の処理を適切に行うことができる。その結果、遠隔から制御プログラムを書き換える場合の適切性を確保することができる。
【００２７】
また、例えば、請求項５に記載するように、前記通信装置は、少なくとも、前記制御プログラムの書換処理中は、前記ＲＯＭ、前記受信プログラム記憶手段、前記展開手段、前記展開プログラム記憶手段、前記判別手段、前記プログラム書換手段、前記書換プログラム記憶手段の電源をバックアップして、その動作を補償するバックアップ手段を、さらに備えていてもよい。
【００２８】
上記構成によれば、停電や不用意にオペレータ等により電源が切られた場合にも、適切に制御プログラムの書換処理を行うことができる。
【００２９】
さらに、例えば、請求項６に記載するように、
前記通信装置は、ファクシミリ装置であってもよい。
【００３０】
上記構成によれば、回線を介して圧縮した制御プログラムをファクシミリ装置に送信することにより、ファクシミリ装置の制御プログラムを遠隔で書き換えることができる。
【００３１】
【発明の実施の形態】
以下、本発明の好適な実施の形態を添付図面に基づいて詳細に説明する。
【００３２】
尚、以下に述べる実施の形態は、本発明の好適な実施の形態であるから、技術的に好ましい種々の限定が付されているが、本発明の範囲は、以下の説明において特に本発明を限定する旨の記載がない限り、これらの態様に限られるものではない。
【００３３】
図１〜図６は、本発明の通信装置の一実施の形態を適用したファクシミリ装置を示す図である。図１において、ファクシミリ装置１は、ＣＰＵ（Central Processing Unit ）２、受信データ格納用ＲＡＭ（Random Accesss Memory ）３、プログラム展開用ＲＡＭ４、書換プログラム用ＲＡＭ５、ＲＯＭ（Read Only Memory）６、記録部７、操作表示部８、画像読取部９、通信制御部１０及びバックアップ電源１１等を備えており、上記各部はバス１２により接続されている。
【００３４】
ＲＯＭ（プログラム記憶手段）６は、データの書込・消去が可能なＰＲＯＭ（Programmable ＲＯＭ）等が利用されており、ＲＯＭ６内にはファクシミリ装置１としてのファクシミリ制御プログラム、制御プログラム書換処理プログラム、制御プログラム書換処理を実行する際に圧縮された制御プログラムを伸張する展開プログラム及び電源監視処理プログラム等が格納されているとともに、上記各処理を実行するのに必要なデータやシステムデータ等が格納されている。
【００３５】
ＣＰＵ（判別手段、展開手段プログラム書換手段）２は、ＲＯＭ４内の制御プログラムに従ってファクシミリ装置１の各部を制御して、ファクシミリ装置１としてのシーケンスを実行するとともに、後述する展開処理、制御プログラム書換処理及び電源監視処理を実行する。
【００３６】
受信データ格納用ＲＡＭ（受信プログラム記憶手段）３は、所定容量を有し、ＣＰＵ２の制御下で管理されて、受信した圧縮されたファクシミリ制御プログラム（以下、圧縮制御プログラムという。）及びチェックサムが格納される。プログラム展開用ＲＡＭ（プログラム展開手段）４は、所定容量を有し、ＣＰＵ２の制御下で管理されて、受信データ格納用ＲＡＭ３に格納された圧縮制御プログラムを伸張・展開するのに利用される。書換プログラム用ＲＡＭ５は、所定容量を有し、ＣＰＵ２の制御下で管理されて、ＲＯＭ６に格納されている展開プログラム及び書換処理プログラムが複写（コピー）される。ＣＰＵ２は、この書換プログラム用ＲＡＭ５に複写した展開プログラム及び書換処理プログラムを利用して、ＲＯＭ６内のファクシミリ制御プログラムの書換処理（制御プログラム書換処理）を行う。
【００３７】
また、バックアップ電源１１は、通常のバックアップ用電池等が用いられ、ＣＰＵ２、受信データ格納用ＲＡＭ３、プログラム展開用ＲＡＭ４、書換プログラム用ＲＡＭ５及びＲＯＭ６に接続されている。ＣＰＵ２は、図示しない主電源から供給される電源電圧の低下を監視し、主電源の電源電圧が所定値に低下すると、主電源からバックアップ電源１１に切り換えて、バックアップ電源１１からＣＰＵ２、受信データ格納用ＲＡＭ３、プログラム展開用ＲＡＭ４、書換プログラム用ＲＡＭ５及びＲＯＭ６に電源電圧を供給することにより、ファクシミリ装置１の主電源がオフした場合にも、ファクシミリ通信処理及び制御プログラム書換処理が中断せずに継続できるように補償する。
【００３８】
そして、ＣＰＵ２は、公衆回線Ｌから圧縮制御プログラム及びチェックサム（受信した圧縮制御プログラムに誤りが有るか否かをチェックする検査合計情報：検査情報）を受信すると、受信した圧縮制御プログラム及びチェックサムを受信データ格納用ＲＡＭ３に格納し、ＲＯＭ６の展開プログラム及び書換処理プログラムを書換プログラム用ＲＡＭ５に複写して、この書換プログラム用ＲＡＭ５に複写した展開プログラムにより、伸張・展開して復元することにより得られるビット数を加算してサム値を算出する。なお、この場合、ＣＰＵ２は、圧縮制御プログラムを、正常受信したかどうかをチェックするためにのみ展開し、展開したファクシミリ制御プログラムは、そのまま破棄する。
【００３９】
そして、ＣＰＵ２は、その算出したサム値と先に受信データ格納用ＲＡＭ３に格納したチェックサムとを比較して一致を確認した場合に、圧縮制御プログラムを正常受信していると判断して、書換プログラム用ＲＡＭ５の展開プログラム及び書換処理プログラムにより、受信データ格納用ＲＡＭ３に格納した圧縮制御プログラムをプログラム展開用ＲＡＭ４に順次展開・復元し、プログラム展開用ＲＡＭ４が一杯になると、プログラム展開用ＲＡＭ４に展開したファクシミリ制御プログラムをＲＯＭ６に書き込んで、ＲＯＭ６内のファクシミリ制御プログラムと書き換える。ＣＰＵ２は、上記処理を順次行って、圧縮制御プログラムの復元及びＲＯＭ６への書き込みが全て終了すると、ファクシミリ装置１をリセットして、圧縮制御プログラムの書き換え処理が終了した旨の結果レポートを相手先通信端末に送信する。
【００４０】
記録部７は、例えば、サーマル素子を利用したサーマル記録装置あるいは電子写真式記録装置等が使用されており、記録部７は、例えば、サーマル記録装置が利用されているときには、感熱記録紙に直接、あるいは、普通記録紙にインクシートを介して間接的に画像を記録する。
【００４１】
操作表示部（報知手段）８は、テンキー、スタートキー等の各種操作キーを備えるとともに、ディスプレイ（例えば、液晶ディスプレイ）を備え、操作キーからは、送信操作等の各種命令が入力され、ディスプレイには、操作キーから入力された命令内容やファクシミリ装置からオペレータに通知する各種情報が表示される。特に、図２に示すように、操作表示部８のディスプレイ８ａには、上記制御プログラム書換処理を行っている際に、その旨を表示して、ファクシミリ装置１の電源がオフされることを防止する。すなわち、ＣＰＵ２は、上記制御プログラム書換処理を行っているとき、操作表示部８のディスプレイ８ａに、例えば、「電源を切らないで、下さい。」等を表示して、オペレータ等により不用意に電源が切られることを防止している。なお、図２において、８ｂは、ＬＥＤであり、点灯させることにより、ディスプレイ８ａへの表示を行っている旨や電源のオフを禁止する旨を表示している。
【００４２】
画像読取部９は、例えば、ＣＣＤ（Charge Coupled Device）を利用したイメージスキャナ等が利用されており、画像読取部９は原稿を走査して原稿の画像を所定の解像度で読み取る。
【００４３】
通信制御部１０は、ＡＡ−ＮＣＵ（Network Control Unit）、モデム及び網制御部等を備え、通信制御部１０には、公衆回線Ｌ（例えば、電話回線）が接続されている。通信制御部１０は、その網制御部により、公衆回線Ｌからの発呼に対して自動着呼し、また、公衆回線Ｌへの自動発呼処理を行う。また、通信制御部１０は、そのモデムにより、送信信号を回線上に送信するために、変調し、相手先から回線を介して送られてきた受信信号を復調する。さらに、通信制御部１０は、そのＮＣＵにより、相手ファクシミリ装置との間でファクシミリ制御信号を交換し、ファクシミリ通信手順を実行する。この通信制御部１０及びＣＰＵ２は、制御プログラム書換処理が適切に終了したかどうかのメッセージを、圧縮制御プログラムを送信してきた相手先に通知するメッセージ通知手段として機能する。
【００４４】
次に、作用を説明する。
【００４５】
ファクシミリ装置１は、圧縮されたファクシミリ制御プログラムを受信して、大きな容量のメモリを利用することなく、適切に展開して、ＲＯＭ６のファクシミリ制御プログラムと書き換えるところにその特徴がある。
【００４６】
すなわち、ファクシミリ装置１は、ファクシミリ通信処理に際して公衆回線Ｌを介して相手通信端末から圧縮制御プログラムを受信した場合は、その圧縮制御プログラムと、同時に受信したチェックサムと、を受信データ格納用ＲＡＭ３に格納する。ＣＰＵ２は、ＲＯＭ６に格納されている展開プログラム及び書換処理プログラムを書換プログラム用ＲＡＭ５にコピーした後、受信データ格納用ＲＡＭ３に格納した圧縮制御プログラムを、書換プログラム用ＲＡＭ５の展開プログラムにより展開して、サム値を算出し、算出したサム値（合計値）と受信したチェックサムとが一致すると、圧縮制御プログラムが正常に受信されたと判断して、受信データ格納用ＲＡＭ３に格納した圧縮制御プログラムを、順次プログラム展開用ＲＡＭ４に展開して、プログラム展開用ＲＡＭ４が一杯になると、展開したファクシミリ制御プログラムをＲＯＭ６に書き込んで、ＲＯＭ６のファクシミリ制御プログラムを受信したファクシミリ制御プログラムにより順次書き換える。そして、圧縮制御プログラムの復元及びＲＯＭ６への書き込みが全て終了すると、ファクシミリ装置１をリセットして、ファクシミリ制御プログラムの書き換え処理が終了した旨の結果レポートを相手先通信端末に送信する。
【００４７】
以下、この制御プログラム書換処理について、図３及び図４に示すフローチャートに基づいて説明する。
【００４８】
ファクシミリ装置１は、ファクシミリ通信を待つ待機状態において、ＣＰＵ２が公衆回線Ｌからのリンギング信号の検出をチェックすることにより着信の有無を判別し、着信があると、ファクシミリ通信手順に基づく受信処理を開始し、相手先通信端末から受信するデータが圧縮制御プログラム（ＲＯＭデータ）であるか否かチェックする（ステップＳ１）。画像データである場合は、ＣＰＵ２は、制御プログラム書換処理を終了して、通常のファクシミリ制御手順により、画像データを受信し、受信した画像データを記録部７で記録紙に記録出力する。
【００４９】
ステップＳ１で、受信データが圧縮制御プログラムであると、ＣＰＵ２は、受信データ（圧縮制御プログラムとチェックサム）を受信データ格納用ＲＡＭ３に格納し（ステップＳ２）、ＲＯＭ６に格納されている展開プログラム及び書換処理プログラムを書換プログラム用ＲＡＭ５にコピーする（ステップＳ３）。
【００５０】
次に、ＣＰＵ２は、受信データ格納用ＲＡＭ３に格納した圧縮制御プログラムを書換プログラム用ＲＡＭ５の展開プログラムにより展開・復元するとともに、圧縮制御プログラムを展開したファクシミリ制御プログラムのデータ量を加算して、サム値（合計値）を算出し（ステップＳ４）、サム値の算出を完了すると、算出したサム値と受信したチェックサム（受信データ格納用ＲＡＭ３に先に格納したチェックサム）とが一致するか否かチェックする（ステップＳ５）。なお、ここでの圧縮制御プログラムの展開は、サム値を算出するためにのみ行うので、ＣＰＵ２は、展開したファクシミリ制御プログラムを、そのまま破棄する。
【００５１】
ステップＳ５で、ＣＰＵ２は、算出したサム値とチェックサムとが一致しないときには、受信した圧縮制御プログラムに誤りがある、すなわち、受信時にデータの欠落等が発生したと判断し、ステップＳ１１に移行して、ファクシミリ装置１の制御系をリセットして、受信データ格納用ＲＡＭ３に格納した圧縮制御プログラム及び書換プログラム用ＲＡＭ５にコピーした展開プログラムと書換処理プログラムを消去し、ファクシミリ制御プログラムの書き換えが失敗した旨のメッセージを、図５に示すようなＲＯＭ書換結果レポート２０として、相手先通信端末に送信して、制御プログラム書換処理を終了する（ステップＳ１２）。
【００５２】
ステップＳ５で、算出したサム値と受信したチェックサムとの一致を確認した場合は、ＣＰＵ２は、受信した圧縮制御プログラムに誤りがないと判断し、図２に示したように、制御プログラムの書換中であることをユーザーに警告するため、操作表示部８のディスプレイ８ａに「電源を切らないで、ください。」等のメッセージを表示するとともに、ＬＥＤ８ｂを点灯する（ステップＳ６）。
【００５３】
次いで、ＣＰＵ２は、図４に示すように、書換プログラム用ＲＡＭ５にコピーした展開プログラムにより受信データ格納用ＲＡＭ３に格納した圧縮制御プログラムの伸張（復元）を開始し（ステップＳ７）、そのプログラムの復元をプログラム展開用ＲＡＭ４のメモリ容量が一杯になるまで継続する（ステップＳ８）。そして、プログラム展開用ＲＡＭ４のメモり容量が一杯になると、ＣＰＵ２は、プログラム展開用ＲＡＭ４に展開したファクシミリ制御プログラムをＲＯＭ６に書き込み（ステップＳ９）、全ての圧縮制御プログラムの復元処理が終了したかをチェックする（ステップＳ１０）。圧縮制御プログラムの復元処理が全て終了していない場合は、ＣＰＵ２は、ステップＳ７に戻って、上記同様に、受信データ格納用ＲＡＭ３の圧縮データをプログラム展開用ＲＡＭ４にプログラム展開用ＲＡＭ４が一杯になるまで展開し、プログラム展開用ＲＡＭ４が一杯になると、展開したファクシミリ制御プログラムをＲＯＭ６に書き込むという処理を順次繰り返し実行する。
【００５４】
ＣＰＵ２は、上記圧縮制御プログラムの展開及びＲＯＭ６への書き込みを書換プログラム用ＲＡＭ５内の書換処理プログラムに基づいて順次処理し、ステップＳ１０で、プログラム復元処理の終了を確認すると、ファクシミリ装置１の制御系をリセットして（ステップＳ１１）、受信データ格納用ＲＡＭ３に格納した圧縮制御プログラム及び書換プログラム用ＲＡＭ５にコピーした展開プログラムを消去し、圧縮制御プログラムの書き換えが成功した旨のメッセージを、図５に示したようなＲＯＭ書換結果レポート２０として相手先通信端末に送信して、制御プログラム書換処理を終了する（ステップＳ１２）。
【００５５】
なお、図５に示すＲＯＭ書換結果レポート２０には、制御プログラム書換処理に成功した場合のものとして、送信データチックサムの値（受信したチェックサムの値）、受信データのチェックサムの値（算出したサム値）及び書換結果（結果）が「ＯＫ」で表示されており、失敗した場合には、双方のチェックサム値が異なった値となり、結果が、例えば、「ＮＧ」となる。
【００５６】
このように、圧縮されたファクシミリ制御プログラム（圧縮制御プログラム）を受信した場合に、その圧縮制御プログラムを順次展開するメモリエリアとして大容量のメモリを使用することなく、圧縮制御プログラムを適切に展開して、受信した圧縮制御プログラムによるプログラムの書換処理を確実に行うことができるとともに、圧縮制御プログラムが書き換え中であることをユーザーに報知して、プログラム書換中にファクシミリ装置の電源が切られてしまうことを防ぐことができ、制御プログラム書換処理が中断されることを防止することができる。
【００５７】
また、圧縮制御プログラムの書き換えが終了したことを送信先の通信端末に通知して、送信先に圧縮制御プログラムの書き換えが成功したか失敗したかを通知することができる。遠隔からファクシミリ制御プログラムの書換処理をその結果を確認しつつ、行うことができ、書換処理に失敗した場合にも、その後の処理を適切に行うことができる。
【００５８】
また、ファクシミリ装置１は、図示しない主電源から供給される電源電圧の低下を監視する電源状態監視処理を行っている。以下、電源状態監視処理について、図６に示すフローチャートに基づいて説明する。
【００５９】
ＣＰＵ２は、上記制御プログラム書換処理において、図示しない主電源から供給される電源電圧の低下を監視し（ステップＳ２１）、主電源の電源電圧が所定値に低下するのを検出すると、電源を主電源からバックアップ電源１１に切り換えて、バックアップ電源１１からＣＰＵ２、受信データ格納用ＲＡＭ３、プログラム展開用ＲＡＭ４、書換プログラム用ＲＡＭ５及びＲＯＭ６に電源電圧を供給して、電源状態監視処理を終了する（ステップＳ２２）。
【００６０】
この電源状態監視処理により、ファクシミリ装置１の電源スイッチが間違ってオフされたり、停電により主電源がオフした場合にも、制御プログラム書換処理が中断されることなく、制御プログラム書換処理を継続するように補償することができ、制御プログラム書換処理を適切に行うことができる。
【００６１】
以上、本発明者によってなされた発明を好適な実施の形態に基づき具体的に説明したが、本発明は上記のものに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００６２】
例えば、上記実施の形態においては、受信データ格納用ＲＡＭ３、プログラム展開用ＲＡＭ４及び書換プログラム用ＲＡＭ５をそれぞれ別々のＲＡＭとして説明したが、これらの３つのＲＡＭは、それぞれ１つのＲＡＭを領域区分して、利用するようにしてもよい。
【００６３】
また、上記実施の形態においては、電源状態監視処理を制御プログラム書換処理中にのみ行っているように説明しているが、電源状態監視処理は、制御プログラム書換処理のときのみに限るものでないことは、いうまでもない。
【００６４】
さらに、上記実施の形態においては、ファクシミリ装置に適用した場合について説明したが、通信装置としては、ファクシミリ装置に限るものではなく、所定の通信処理を制御プログラムに基づいて行う通信装置一般に適用することができる。
【００６５】
【発明の効果】
請求項１記載の発明の通信装置によれば、圧縮された制御プログラムを受信した場合に、受信した制御プログラムの適否を判別した後、圧縮制御プログラムを展開するので、制御プログラムを全て展開する大きな容量の展開プログラム記憶手段を必要とすることなく、適切に圧縮制御プログラムを展開して、ＲＯＭ内の制御プログラムを書き換えることができ、電源バックアップを必要としないＲＯＭの制御プログラムを安価に、かつ、適切に書き換えることができる。その結果、圧縮した制御プログラムを短い通信時間で受信して、容量の小さい展開プログラム記憶手段を利用して適切に制御プログラムを展開して、制御プログラムの書き換えを行うことができ、他の通信装置から送信した制御プログラムにより制御プログラムの書き換えを行うことのできる通信装置を小型で、かつ、安価なものとすることができる。
【００６６】
請求項２記載の発明の通信装置によれば、ＲＯＭ内の書換プログラムを書換プログラム記憶手段に一時記憶させて、当該書換プログラム記憶手段の書換プログラムにより、受信した制御プログラムによりＲＯＭ内の制御プログラムを適切に書き換えることができる。
【００６７】
請求項３記載の発明の通信装置によれば、制御プログラムの書き換え中であることをオペレータ等に通知することができ、プログラムの書き換え中に通信装置の電源が不用意に切られてしまうことを防ぐことができる。その結果、制御プログラムの書換処理が中断されることを防止することができ、適切に制御プログラムの書換処理を行うことができる。
【００６８】
請求項４記載の発明の通信装置によれば、制御プログラムの書き換えが正常に行われたか否かを、制御プログラムの送信元の通信端末で知ることができ、その後の処理を適切に行うことができる。その結果、遠隔から制御プログラムを書き換える場合の適切性を確保することができる。
【００６９】
請求項５記載の発明の通信装置によれば、停電や不用意にオペレータ等により電源が切られた場合にも、適切に制御プログラムの書換処理を行うことができる。
【００７０】
請求項６記載の発明の通信装置によれば、回線を介して圧縮した制御プログラムをファクシミリ装置に送信することにより、ファクシミリ装置の制御プログラムを遠隔で書き換えることができる。
【図面の簡単な説明】
【図１】本発明の通信装置の一実施の形態を適用したファクシミリ装置の回路ブロック図。
【図２】図１のファクシミリ装置の操作表示部のディスプレイに表示される制御プログラム書換処理中である旨を表示する警告表示の一例を示す図。
【図３】図１のファクシミリ装置による制御プログラム書換処理を示すフローチャート。
【図４】図３の制御プログラム書換処理の続きの処理を示すフローチャート。
【図５】図３及び図４の制御プログラム書換処理により相手先通信端末に送信されるＲＯＭ書換結果レポートの一例を示す図。
【図６】図１のファクシミリ装置による電源状態監視処理を示すフローチャート。
【符号の説明】
１  ファクシミリ装置
２  ＣＰＵ
３  受信データ格納用ＲＡＭ
４  プログラム展開用ＲＡＭ
５  書換プログラム用ＲＡＭ
６  ＲＯＭ
７  記録部
８  操作表示部
８ａ  ディスプレイ
８ｂ  ＬＥＤ
９  画像読取部
１０  通信制御部
１１  バックアップ電源
１２  バス
２０  ＲＯＭ書換結果レポート
【図１】
0003643424.tif 000002
【図２】
0003643424.tif 000003
【図５】
0003643424.tif 000004
【図３】
0003643424.tif 000005
【図４】
0003643424.tif 000006
【図６】
0003643424.tif 000007