(57)【特許請求の範囲】
【請求項１】
画像形成装置であって、
画像形成装置を制御するための制御コードを記憶する制御コード記憶手段と、
前記制御コード記憶手段に記憶されている制御コードに従って前記画像形成装置を制御する制御手段と、
前記制御コード記憶手段に記憶されている制御コードの書き換えを制御するための書き換え制御コードを外部装置から受信するのを制御するための受信制御コードに従って、前記書き換え制御コードを受信する書き換え制御コード受信手段と、
前記書き換え制御コード受信手段により受信される書き換え制御コードを記憶する書き換え制御コード記憶手段と、
新たに前記制御コード記憶手段に記憶されるべき制御コードを前記外部装置から受信する制御コード受信手段と、
前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、前記制御コード受信手段により受信される制御コードに書き換える書き換え制御手段と、
電源投入後、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したかを判断する第１の判断手段と、
電源投入後、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されているかを判断する第２の判断手段とを有し、
前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと前記第１の判断手段で判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段で判断されなかった場合、前記書き換え制御コード受信手段は、前記書き換え制御コードを前記外部装置から受信し、前記書き換え制御手段は、電源投入後に前記書き換え制御コード受信手段により受信される書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、電源投入後に前記制御コード受信手段により受信される制御コードに書き換え、
前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと前記第１の判断手段で判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段で判断された場合、前記書き換え制御手段は、電源投入前から前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、電源投入後に前記制御コード受信手段により受信される制御コードに書き換えることを特徴とする画像形成装置。
【請求項２】
前記画像形成装置はコピー機またはプリンタであることを特徴とする請求項１に記載の画像形成装置。
【請求項３】
前記制御コード記憶手段または前記書き換え制御コード記憶手段はフラッシュＲＯＭであることを特徴とする請求項１または２に記載の画像形成装置。
【請求項４】
新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段により判断された場合、前記書き換え制御コードを転送する必要がないことを外部装置に通知する通知手段を有することを特徴とする請求項１乃至３のいずれか１項に記載の画像形成装置。
【請求項５】
前記受信制御コードを記憶する受信制御コード記憶手段を有することを特徴とする請求項１乃至４のいずれか１項に記載の画像形成装置。
【請求項６】
前記受信制御コード記憶手段を有効とするモードと、前記受信制御コード記憶手段を無効として前記制御コード記憶手段を有効とするモードとを切り替える切り替え手段を有することを特徴とする請求項５に記載の画像形成装置。
【請求項７】
画像形成装置であって、
制御コードを記憶する制御コード記憶手段と、
前記制御コード記憶手段に記憶されている制御コードに従って前記画像形成装置を制御する制御手段と、
前記制御コード記憶手段に記憶されている制御コードの書き換えを制御するための書き換え制御コードを記憶する書き換え制御コード記憶手段と、
電源投入後、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したかを判断する第１の判断手段と、
電源投入後、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されているかを判断する第２の判断手段と、
前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段により判断されなかった場合、前記書き換え制御コードの転送を制御するための転送制御コードに従って、前記書き換え制御コードが外部装置から転送されるのを制御し、電源投入後に前記外部装置から転送された前記書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードが前記外部装置から転送された制御コードで書き換えられるのを制御し、
前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段により判断された場合、電源投入前から前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードが外部装置から転送された制御コードで書き換えられるのを制御する、書き換え制御手段とを有することを特徴とする画像形成装置。
【請求項８】
画像形成装置を制御するための制御コードを記憶する制御コード記憶手段と、前記制御コードの書き換えを制御するための書き換え制御コードを記憶する書き換え制御コード記憶手段とを有する画像形成装置の制御方法であって、
前記制御コード記憶手段に記憶されている制御コードに従って前記画像形成装置を制御する制御工程と、
前記書き換え制御コードを外部装置から受信するのを制御するための受信制御コードに従って、前記書き換え制御コードを受信する書き換え制御コード受信工程と、
前記書き換え制御コード受信工程で受信される書き換え制御コードを前記書き換え制御コード記憶手段に記憶する書き換え制御コード記憶工程と、
新たに前記制御コード記憶手段に記憶されるべき制御コードを前記外部装置から受信する制御コード受信工程と、
前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、前記制御コード受信工程で受信される制御コードに書き換える書き換え制御工程と、
電源投入後、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したかを判断する第１の判断工程と、
電源投入後、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前期書き換え制御コードが前記書き換え制御コード記憶手段に記憶されているかを判断する第２の判断工程とを有し、
前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと前記第１の判断工程で判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断されなかった場合、前記書き換え制御コード受信工程では、前記書き換え制御コードを前記外部装置から受信し、前記書き換え制御工程では、電源投入後に前記書き換え制御コード受信工程で受信される書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、電源投入後に前記制御コード受信工程で受信される制御コードに書き換え、
前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと前記第１の判断工程で判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断された場合、前記書き換え制御工程では、電源投入前から前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、電源投入後に前記制御コード受信工程で受信される制御コードに書き換えることを特徴とする画像形成方法。
【請求項９】
前記画像形成装置はコピー機またはプリンタであることを特徴とする請求項８に記載の画像形成方法。
【請求項１０】
前記制御コード記憶手段または前記書き換え制御コード記憶手段はフラッシュＲＯＭであることを特徴とする請求項８または９に記載の画像形成方法。
【請求項１１】
新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断された場合、前記書き換え制御コードを転送する必要がないことを外部装置に通知する通知工程を有することを特徴とする請求項８乃至１０のいずれか１項に記載の画像形成方法。
【請求項１２】
前記受信制御コードを記憶する受信制御コード記憶手段を有することを特徴とする請求項８乃至１１のいずれか１項に記載の画像形成方法。
【請求項１３】
前記受信制御コード記憶手段を有効とするモードと、前記受信制御コード記憶手段を無効として前記制御コード記憶手段を有効とするモードとを切り替える切り替え工程を有することを特徴とする請求項１２に記載の画像形成方法。
【請求項１４】
制御コードを記憶する制御コード記憶手段と、前記制御コード記憶手段に記憶されている制御コードの書き換えを制御するための書き換え制御コードを記憶する書き換え制御コード記憶手段とを有する画像形成装置の画像形成方法であって、
前記制御コード記憶手段に記憶されている制御コードに従って前記画像形成装置を制御する制御工程と、
電源投入後、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したかを判断する第１の判断工程と、
電源投入後、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されているかを判断する第２の判断工程と、
前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断されなかった場合、前記書き換え制御コードの転送を制御するための転送制御コードに従って、前記書き換え制御コードが外部装置から転送されるのを制御し、電源投入後に前記外部装置から転送された前記書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードが前記外部装置から転送された制御コードで書き換えられるのを制御し、
前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断された場合、電源投入前から前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードが外部装置から転送された制御コードで書き換えられるのを制御する、書き換え制御工程とを有することを特徴とする画像形成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の記憶媒体を有し、各記憶媒体に記憶された制御コードに従って画像を形成する画像形成装置及びその制御方法に関するものである。
【０００２】
【従来の技術】
従来、画像形成装置を制御するための制御コードを記憶する記憶手段として、ＲＯＭ等の記憶媒体が用いられているが、近年、フラッシュＲＯＭ等の書き換え可能な記憶媒体も使用されるようになってきた。この書き換え可能な記憶媒体にホストコンピュータ等の外部装置からデータを転送することにより、制御コードの書き換えを可能とすることが行なわれている。
【０００３】
また、外部装置から転送されてきた制御プログラムを書き換える際の書き換えを制御する制御プログラムを情報が不安定なフラッシュＲＯＭ等ではなくＲＯＭ等に記憶する形態のものも存在している。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来の技術では、書き換えの際に、複数のフラッシュＲＯＭの書き換えの処理を行なわなければならず、ＲＯＭ等に書き込まれる書き換えを制御する制御プログラムも膨大な量が必要であった。そのため、プログラムにバグがある可能性が高く、ＲＯＭ等にバグがあるとＲＯＭ交換をしなければないため、かなりの負荷がかかってしまう、という問題があった。
【０００５】
また、従来の技術では、書き換えの際に、割り込み領域が画像形成制御と共通であり、書き換えに関しての割り込み領域が確保できないため、絶えず外部装置からデータが送られてきているか監視しなければならず、書き換えを行なうのに時間がかかる、という問題もあった。
【０００６】
本発明は、上記課題を解決するためになされたもので、ＲＯＭ等にはＲＡＭ等に書き換えを制御する制御プログラムを転送するだけの制御プログラムを記憶し、その転送された書き換えを制御する制御プログラムを実行することにより書き換えを実現し、ＲＯＭ等に記憶するプログラムを最小限に抑え、信頼性を向上させた画像形成装置及びその制御方法を提供することを目的とする。
【０００７】
また、本発明は、画像形成に限らず、書き換えの際にも割り込みを使用可能とし、高速で書き換えを行なえる画像形成装置及びその制御方法を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するために、本発明は、画像形成装置であって、画像形成装置を制御するための制御コードを記憶する制御コード記憶手段と、前記制御コード記憶手段に記憶されている制御コードに従って前記画像形成装置を制御する制御手段と、前記制御コード記憶手段に記憶されている制御コードの書き換えを制御するための書き換え制御コードを外部装置から受信するのを制御するための受信制御コードに従って、前記書き換え制御コードを受信する書き換え制御コード受信手段と、前記書き換え制御コード受信手段により受信される書き換え制御コードを記憶する書き換え制御コード記憶手段と、新たに前記制御コード記憶手段に記憶されるべき制御コードを前記外部装置から受信する制御コード受信手段と、前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、前記制御コード受信手段により受信される制御コードに書き換える書き換え制御手段と、電源投入後、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したかを判断する第１の判断手段と、電源投入後、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されているかを判断する第２の判断手段とを有し、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと前記第１の判断手段で判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段で判断されなかった場合、前記書き換え制御コード受信手段は、前記書き換え制御コードを前記外部装置から受信し、前記書き換え制御手段は、電源投入後に前記書き換え制御コード受信手段により受信される書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、電源投入後に前記制御コード受信手段により受信される制御コードに書き換え、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと前記第１の判断手段で判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段で判断された場合、前記書き換え制御手段は、電源投入前から前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、電源投入後に前記制御コード受信手段により受信される制御コードに書き換えることを特徴とする。
【０００９】
また、上記目的を達成するために、本発明は、画像形成装置であって、制御コードを記憶する制御コード記憶手段と、前記制御コード記憶手段に記憶されている制御コードに従って前記画像形成装置を制御する制御手段と、前記制御コード記憶手段に記憶されている制御コードの書き換えを制御するための書き換え制御コードを記憶する書き換え制御コード記憶手段と、電源投入後、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したかを判断する第１の判断手段と、電源投入後、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されているかを判断する第２の判断手段と、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段により判断されなかった場合、前記書き換え制御コードの転送を制御するための転送制御コードに従って、前記書き換え制御コードが外部装置から転送されるのを制御し、電源投入後に前記外部装置から転送された前記書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードが前記外部装置から転送された制御コードで書き換えられるのを制御し、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断手段により判断された場合、電源投入前から前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードが外部装置から転送された制御コードで書き換えられるのを制御する、書き換え制御手段とを有することを特徴とする。
【００１０】
更に、上記目的を達成するために、本発明は、画像形成装置を制御するための制御コードを記憶する制御コード記憶手段と、前記制御コードの書き換えを制御するための書き換え制御コードを記憶する書き換え制御コード記憶手段とを有する画像形成装置の制御方法であって、前記制御コード記憶手段に記憶されている制御コードに従って前記画像形成装置を制御する制御工程と、前記書き換え制御コードを外部装置から受信するのを制御するための受信制御コードに従って、前記書き換え制御コードを受信する書き換え制御コード受信工程と、前記書き換え制御コード受信工程で受信される書き換え制御コードを前記書き換え制御コード記憶手段に記憶する書き換え制御コード記憶工程と、新たに前記制御コード記憶手段に記憶されるべき制御コードを前記外部装置から受信する制御コード受信工程と、前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、前記制御コード受信工程で受信される制御コードに書き換える書き換え制御工程と、電源投入後、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したかを判断する第１の判断工程と、電源投入後、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前期書き換え制御コードが前記書き換え制御コード記憶手段に記憶されているかを判断する第２の判断工程とを有し、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと前記第１の判断工程で判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断されなかった場合、前記書き換え制御コード受信工程では、前記書き換え制御コードを前記外部装置から受信し、前記書き換え制御工程では、電源投入後に前記書き換え制御コード受信工程で受信される書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、電源投入後に前記制御コード受信工程で受信される制御コードに書き換え、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと前記第１の判断工程で判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断された場合、前記書き換え制御工程では、電源投入前から前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードを、電源投入後に前記制御コード受信工程で受信される制御コードに書き換えることを特徴とする。
【００１１】
また、上記目的を達成するために、本発明は、制御コードを記憶する制御コード記憶手段と、前記制御コード記憶手段に記憶されている制御コードの書き換えを制御するための書き換え制御コードを記憶する書き換え制御コード記憶手段とを有する画像形成装置の画像形成方法であって、前記制御コード記憶手段に記憶されている制御コードに従って前記画像形成装置を制御する制御工程と、電源投入後、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したかを判断する第１の判断工程と、電源投入後、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されているかを判断する第２の判断工程と、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断されなかった場合、前記書き換え制御コードの転送を制御するための転送制御コードに従って、前記書き換え制御コードが外部装置から転送されるのを制御し、電源投入後に前記外部装置から転送された前記書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードが前記外部装置から転送された制御コードで書き換えられるのを制御し、前記制御コード記憶手段の制御コードの書き換えが中断或いは失敗したと判断され、かつ、新たに前記制御コード記憶手段に記憶されるべき制御コードに対応する前記書き換え制御コードが前記書き換え制御コード記憶手段に記憶されていると前記第２の判断工程で判断された場合、電源投入前から前記書き換え制御コード記憶手段に記憶されている書き換え制御コードに従って、前記制御コード記憶手段に記憶されている制御コードが外部装置から転送された制御コードで書き換えられるのを制御する、書き換え制御工程とを有することを特徴とする。
【００１３】
【発明の実施の形態】
以下、図面を参照しながら本発明に係る実施の形態を詳細に説明する。
【００１４】
［第１の実施形態］
図１は、本実施形態における画像形成装置の構造を示す断面図である。同図において、１はリーダー部、２はプリンタ部である。以下、リーダー部１及びプリンタ部２に分けて構成を述べる。
【００１５】
まず、リーダー部１において、原稿給送装置１０１上に積載された原稿が１枚ずつ順次原稿台ガラス面１０２上に搬送される。そして、原稿台ガラス面１０２の所定位置へ搬送されると、スキャナユニット１０４内のランプ１０３が点灯、かつ、スキャナユニット１０４が移動して原稿を照明する。
【００１６】
原稿からの反射光は、ミラー１０５，１０６，１０７、レンズ１０８を介してＣＣＤイメージセンサ部１０９（以下、ＣＣＤと称する）に入力される。ＣＣＤ１０９に入射された原稿の反射光は、ここで光電変換され変換された電気信号が画像処理部１１０へ送られる。
【００１７】
画像処理部１１０の外部切替回路（図示せず）にてプリンタ部２へ接続された電気信号は、露光制御部２０１にて変調された光信号に変換され、感光体２０２を照射される。照射光によって感光体２０２上に作られた潜像は現像器２０３によって現像される。この現像の先端とタイミングを合わせて転写紙積載部２０４若しくは２０５より転写紙が搬送され、転写部２０６にて上述の現像された像が転写紙に転写される。そして、転写された像は定着部２０７にて転写紙に定着された後、排紙部２０８より装置外部に搬出される。そして、排紙部２０８から出力された転写紙はソーター２２０に渡される。ソーター２２０はソート機能が働いている場合にはトレー２２０２〜２２０８に順に排出するように動作し、ソート機能が働いていない場合には基本的には最上位のトレー２２０１に排出するように動作する。
【００１８】
次に、順次読み込む画像を１枚の出力用紙の両面に出力する方法について説明する。上述のプロセスに従って定着部２０７で片面に像定着された転写紙を一度排出部２０８まで搬送した後、紙の搬送向きを反転し、搬送方向切り替え部材２０９を介して再給紙用被転写紙積載部２１０に搬送する。次の原稿が準備されると、上述のプロセスと同様、原稿画像が読み取られるが、転写紙については再給紙用被転写紙積載部２１０より片面に既に像定着された転写紙が反転されて給紙されるので、結局同一転写紙の表面、裏面に２枚の原稿画像を出力することができる。
【００１９】
図２は、本実施形態における操作部３００の構成を示す図である。同図において、３０１は表示部であり、装置の動作状態や各種メッセージ等が表示される。また、表示部３０１の表面はタッチパネルにより構成されており、表面を触れることにより選択キーとして働く。３０２はテンキーであり、数字を入力するためのキーである。３０３はスタートキーであり、このキーを押すことによりコピー動作を開始する。
【００２０】
図３は、画像形成装置１００の制御系の構成を示すブロック図である。同図において、１００１は本装置全体の基本制御を行なうＣＰＵであり、アドレスパス及びデータバスを介して入出力（Ｉ／Ｏ）ポート１００３と、画像形成制御プログラムが書き込まれたフラッシュＲＯＭ１００４と、処理を実行する際に用いるワークＲＡＭ１００５と、操作部３００の表示やキー入力を制御するキー表示制御部１００６とが接続されている。
【００２１】
尚、ＣＰＵ１００１は外部装置から送られたデータに基づきフラッシュＲＯＭを書き換える制御プログラムをＲＡＭ１００５に転送するプログラムが書き込まれた内蔵ＲＯＭ１０１９を有する。また、ＣＰＵ１００１は動作モード設定部１０１８により設定可能な複数の動作モードを有し、通常の画像形成動作の際には内蔵ＲＯＭ１０１９が無効であるモードに設定されている。
【００２２】
ここで、ＣＰＵ１００１はフラッシュＲＯＭの内容に従って順次入出力の制御を行ない、画像形成動作を実行すると共に、キー表示制御部１００６から操作部３００のキー入力情報を受け取る。また、本装置１００の状態やキー入力による操作モードの設定の表示等をキー表示制御部１００６に指示し、操作部３００の表示を制御する。
【００２３】
また、画像形成装置１００には、各種モータや各種ヒータ等の動作制御を行なうＣＰＵ１００２が備えられており、このＣＰＵ１００２の指示によりモータ等の動作制御を行なう。また、ＣＰＵ１００２には、制御プログラムが書きこまれたフラッシュＲＯＭ１００８と、処理を実行する際に用いるワークＲＡＭ１００９と、入出力（Ｉ／Ｏ）ポート１０１０とがアドレスバス及びデータベースバスにより接続されている。そして、入出力ポート１０１０には、各種制御モータ等が必要に応じて接続されている。
【００２４】
更に、ＣＰＵ１００１はインターフェース手段としてのデュアルポートＲＡＭ１０１３を介して外部装置からのＰＤＬ等のデータを画像信号に変換するＣＰＵ１０１４とデータ通信を行なう。このＣＰＵ１０１４は、ホストコンピュータ（パソコン）等の外部装置からのＰＤＬデータを受信すると、そのＰＤＬコードを画像データに変換し、デュアルポートＲＡＭ１０１３を介して画像形成部の制御手段としてのＣＰＵ１００１に画像形成処理を要求し、ＣＰＵ１００１の制御に同期して画像データをプリンタ部２へと出力する。また、ＣＰＵ１０１４には、制御プログラムが書き込まれたフラッシュＲＯＭ１０１５と、処理を実行する際に用いると共にＰＤＬコードを画像データに展開する際に用いるＲＡＭ１０１６と、入出力（Ｉ／Ｏ）ポート１０１７とがアドレスバス及びデータバスにより接続されている。尚、入出力ポート１０１７には、外部装置からＰＤＬコード等のデータを受信するための制御ポートが接続されている。
【００２５】
また、ＣＰＵ１００１はシリアルインターフェース１０１１を介して不図示のパソコン等の外部装置とデータ通信を行なう。そして、パソコン等の外部装置からシリアルインターフェース１０１１を介して受信したデータを解析し、その解析結果に従って本装置１００内のデータを外部装置に送信する。また、外部装置から受信したデータによりフラッシュＲＯＭ内のデータの書き換えを行なう。
【００２６】
次に、フラッシュＲＯＭ内のデータを書き換える処理について説明する。図４は、本実施形態におけるフラッシュＲＯＭ内のデータ書き換え処理を示すフローチャートである。尚、この処理は内蔵ＲＯＭ１０１９を有効とした時の電源投入時にＣＰＵ１００１が行なう処理である。つまり、書き換え処理を行なう際に、電源が入っていない状態でディップスイッチ等により内蔵ＲＯＭ１０１９を有効とするモードにし、電源を入れることによって以下の処理が行なわれる。また、通常の画像形成動作の際のメモリーマップ、即ち、この場合内蔵ＲＯＭ１０１９を無効とするモードでの実行時のメモリーマップを図７の（ａ）に示し、書き換え制御動作時のメモリーマップ、即ち、この場合内蔵ＲＯＭ１０１９を有効とするモードでの実行時のメモリーマップを図７の（ｂ）に示す。即ち、図７の（ａ）は、通常の複写機、プリンタ動作処理時のメモリーマップであり、図７の（ｂ）はダウンロード時のメモリーマップである。
【００２７】
この図からも分かるように、内蔵ＲＯＭ無効のモードの時、フラッシュＲＯＭに割り当てられていた領域の一部が、内蔵ＲＯＭ有効のモードでは内蔵ＲＯＭに割り当てられている。この場合、００００００ｈから０１００００ｈまでがその共通の領域である。また、その領域の一部として内蔵ＲＯＭ無効のモード時には通常の割り込みベクタ領域、内蔵ＲＯＭ有効のモード時には転送、ダウンロード用のベクタ領域が含まれている。つまり、同じメモリ空間において、画像形成動作時にはフラッシュＲＯＭが、書き換え制御時には内蔵ＲＯＭが占有することにより制御専用のベクタ領域を確保することが可能となる。
【００２８】
尚、この例では、転送、ダウンロード用のベクタ領域としたが、これはＲＡＭ１００５への転送時においても割り込みの使用範囲はほぼ同じであり、転送時、ダウンロード時において共通のベクタ領域を使用できるからである。
【００２９】
ここで、書き換え制御プログラム実行開始時、即ち、この場合内部ＲＯＭ有効のモードで電源が入った状態の時には、書き換え処理中であり、画像形成動作が行なえないことを操作者に通知する。
【００３０】
まず、ステップＳ１００において、後述する情報によりそれぞれのフラッシュＲＯＭ１００４，１００８，１０１５の書き換えが中断したか否か、或いは書き換え処理が失敗したか判断する。ここで、フラッシュＲＯＭ１００８，１０１５の書き換えが中断している場合、ＣＰＵ１００２，１０１４からデュアルポートＲＡＭ１００７，１０１３を介してＣＰＵ１００１へ情報がそれぞれ通知される。この通知により、書き換えが中断していると判断すると、各フラッシュＲＯＭ内の制御データが保証されないため、後述するステップＳ１０３に処理をすすめ、書換えプログラム転送モードを実行する。尚、フラッシュＲＯＭ１００４での書き換えが中断しているのかの判断については後述する。
【００３１】
また、ステップＳ１００で書き換えが中断していない場合はステップＳ１０１に進み、インストールモードにおいてインストール先のフラッシュＲＯＭの情報を読み出す。そして、続くステップＳ１０２で、読み出したバージョンと新たにインストールするバージョンとを比較する。ここで、バージョンが一致する場合、インストールする必要がないため、操作者にインストールモード終了を示し、電源を落とし、モードを内部ＲＯＭ無効のモードに設定するよう促す。しかし、ステップＳ１０２でバージョンが一致しない場合にはステップＳ１０３に進み、書き換えプログラム転送モードを実行する。
【００３２】
このステップＳ１０３では、内蔵ＲＯＭ１０１９の内容に従って外部装置から送られてきたデータに従ってＲＡＭ１００５に書き換え制御プログラムを転送し、ステップＳ１０４に進み、フラッシュＲＯＭ書き換えモードを実行する。
【００３３】
ここで、上述のステップＳ１０３での制御の詳細を図５に示すフローチャートに従って説明する。書き換えプログラム転送モードが開始されると、まずステップＳ１０３１において、外部装置より送られてくるデータを受信する。そして、ステップＳ１０３２に進み、受信したデータに従ってＲＡＭ１００５に書き込みを行なう。そして、ステップＳ１０３３において、受信したデータが転送を行なう最後のデータかどうかを判定する。ここで、最後のデータである場合にはこの処理を終了し、フラッシュＲＯＭ書き換えモードを実行する。また、最終データでない場合にはステップＳ１０３１に戻り、上述の処理を繰り返す。
【００３４】
上述のような処理により、書き換えプログラムの転送が行なわれる。ここで、内蔵ＲＯＭ１０１９には、この書き換えプログラムをＲＡＭ１００５に転送する制御プログラムが記憶されているのであるが、複数の記憶媒体に記憶された画像形成制御のプログラムを書き換える制御プログラムを直接内蔵ＲＯＭ１０１９に記憶するのと比べ、内蔵ＲＯＭ１０１９に記憶しなければならないプログラムの量はかなり軽減されると考えられ、即ち、内蔵ＲＯＭ１０１９にバグの存在する確率もかなり軽減されると考えられる。
【００３５】
次に、ステップＳ１０４において、まずインストールするフラッシュＲＯＭが１００４，１００８，１０１５のいずれか判断する。ここで、インストールするフラッシュＲＯＭが１００４の場合はステップＳ１０５に進み、フラッシュＲＯＭ１００４の書き換え領域を消去する。そして、フラッシュＲＯＭの情報が消去されたことを示す情報を設定し、上述のステップＳ１０１で読み出したフラッシュＲＯＭ内の所定アドレスのデータを消すことにより、そのアドレスのデータが確定していない時に、書き換えが中断したと判断する。また、別の手法として、不揮発性のＲＡＭに書き換えを実行していることを示すフラグを設定してもよい。
【００３６】
次に、ステップＳ１０６に進み、シリアルインターフェース１０１１を介して外部装置から送られてくる書き換えデータを受信するまで待つ。尚、外部装置からの書き換えデータは、内部で処理できる単位、例えば２５６バイト単位に分割して送られてくる。また、データは転送時間を短縮するために、より短いデータコードに圧縮して送られてくる。この圧縮は、例えばレンペルズィップ法などで行なわれる。その後、ステップＳ１０６で書き換えデータを受信するとステップＳ１０７に進み、圧縮されたデータコードを元のデータへの解凍を行なう。
【００３７】
そして、ステップＳ１０８において、ステップＳ１０７で解凍したデータをフラッシュＲＯＭ１００４の所定アドレスに書き込み、続くステップＳ１０９で書き換えデータが最終データまで行われたか否かを判断する。ここで、最終データを処理していなければステップＳ１０６に戻り、上述の処理を繰り返す。その後、最終データまで書き換えを行なった場合は、上述したフラッシュＲＯＭの情報が消去されたことを示す情報をクリアし、ステップＳ１１７へ移行する。
【００３８】
ステップＳ１１７では、今書き換えたフラッシュＲＯＭ内のデータのチェックサムを計算し、正常に書き換えが終了したか否か判断する。ステップＳ１１７で正常に終了している場合は処理を終了する。また、正常に終了していない場合はステップＳ１１８に進み、異常終了した旨を示す情報を残して処理を終了する。この異常終了した旨を示す情報はフラッシュＲＯＭ内の所定アドレスに書き込んでもよい。また、不揮発性のＲＡＭに書き込んでもよい。
【００３９】
また、上述のステップＳ１０４において、インストールするフラッシュＲＯＭが１００８の場合はステップＳ１１０に進み、デュアルポートＲＡＭ１００７を介してＣＰＵ１００２にフラッシュＲＯＭ１００８の書き換える領域を消去するように指示する。この場合、ＣＰＵ１００２は、ＣＰＵ１００１と同様に、上述の手法を用いてフラッシュＲＯＭ１００８内の情報が消去されたことを示す情報を設定し、ステップＳ１０１でフラッシュＲＯＭの書き換えが中断したことを判断する際に参照する。そして、シリアルインターフェイス１０１１を介して書き換えデータを受信するまで待つ。ここで、外部装置からのデータは内部で処理できる単位、例えば２５６バイト単位に分割して送られくる。また、データは転送時間を短くするために、書き換えデータをより短いデータコードに圧縮して送られてくる。例えば、レンペルズィップ法などで圧縮される。その後、ステップＳ１１０で書き換えデータを受信するとステップＳ１１１に進み、圧縮されたデータを元のデータヘの解凍を行なう。
【００４０】
そして、ステップＳ１１２において、ステップＳ１１１で解凍したデータをデュアルポートＲＡＭ１００７を介してＣＰＵ１００２にデータ転送する。ＣＰＵ１００２は、デュアルポートＲＡＭ１００７によりＣＰＵ１００１から送られてきたデータをフラッシュＲＯＭ１００８の所定アドレスに書き込む。ＣＰＵ１００１ではステップＳ１１２でデータ送信後、ステップＳ１１３へ移行する。
【００４１】
ステップＳ１１３では、書き換えデータが最終データまで行なわれたか否かを判断し、行なわれていない場合はステップＳ１１０に戻り、最終データまで繰り返す。ステップＳ１１３で最終データまで行なわれた場合は、ＣＰＵ１００２に最終データまで書き込みが終了したことを通知し、ＣＰＵ１００２はフラッシュＲＯＭ内が消去されたことを示す情報をクリアーする。その後、上述のステップＳ１１７へ移行する。
【００４２】
また、上述のステップＳ１０４において、インストールするフラッシュＲＯＭが１０１５の場合はステップＳ１１４に進み、操作部３００にフラッシュＲＯＭ１０１５を書き換える必要があることを操作者に示す表示を行う。そして、デュアルポートＲＡＭ１０１３を介してＣＰＵ１０１４にフラッシュＲＯＭ１０１５の書き換える領域を消去するように指示する。この場合、ＣＰＵ１０１４は、ＣＰＵ１００１と同様に、上述の手法を用いてフラッシュＲＯＭ１０１５内の情報が消去されたことを示す情報を設定し、ステップＳ１０１でフラッシュＲＯＭの書き換えが中断したことを判断する際に参照する。そして、シリアルインターフェイス１０１１を介して書き換えデータを受信するまで待つ。ここで、外部装置からのデータは内部で処理できる単位、例えば２５６バイト単位に分割して送られくる。また、データは転送時間を短くするために、書き換えデータをより短いデータコードに圧縮して送られてくる。例えば、レンペルズィップ法などで圧縮される。その後、ステップＳ１１４で書き換えデータを受信するとステップＳ１１５へ移行する。
【００４３】
このステップＳ１１５では、受信したデータをデュアルポートＲＡＭ１０１３を介してＣＰＵ１０１４にデータ転送する。ＣＰＵ１０１４は、デュアルポートＲＡＭ１０１３によりＣＰＵ１００１から送られてきたデータを元のデータヘの解凍を行ない、フラッシュＲＯＭ１０１５の所定アドレスに書き込む。ＣＰＵ１００１ではステップＳ１１５でデータ送信後、ステップＳ１１６へ移行する。
【００４４】
ステップＳ１１６では、書き換えデータが最終データまで行なわれたか否かを判断し、行なわれていない場合はステップＳ１１４に戻り、最終データまで繰り返す。ステップＳ１１４で最終データまで行なわれた場合は、ＣＰＵ１０１４に最終データまで書き込みが終了したことを通知し、ＣＰＵ１０１４はフラッシュＲＯＭ内が消去されたことを示す情報をクリアーする。その後、上述のステップＳ１１７へ移行する。
【００４５】
図６は、フラッシュＲＯＭ１００４を書き換える時の表示例を示す図である。図示するように、通常のコピー設定表示は行なわず、操作者にコピーが使用できないこと及びデータのダウンロード中であることを表示する。また、フラッシュＲＯＭ１００８，フラッシュＲＯＭ１０１４を書き換える場合も、図６と同様に表示を行なえばよい。
【００４６】
［第２の実施形態］
次に、図面を参照しながら本発明に係る第２の実施形態を詳細に説明する。
【００４７】
尚、第２の実施形態において、画像形成装置本体の構造を示す断面図及び操作部の構成は前述した図１及び図２に示す第１の実施形態と同様であり、ここでの説明は省略する。
【００４８】
図８は、画像形成装置１００の制御系の構成を示すブロック図である。同図において、１００１は本装置全体の基本制御を行なうＣＰＵであり、アドレスバス及びデータパスを介して入出力（Ｉ／Ｏ）ポート１００３と、画像形成制御プログラムが書き込まれたフラッシュＲＯＭ１００４と、処理を実行する際に用いるワークＲＡＭ１００５と、ダウンロードプログラムが記憶されているフラッシュＲＯＭ１０００と、操作部３００の表示やキー入力を制御するキー表示制御部１００６とが接続されている。
【００４９】
尚、ＣＰＵ１００１は外部装置から送られたデータに基づきフラッシュＲＯＭを書き換える制御プログラムをＲＡＭ１００５に転送するプログラムが書き込まれた内蔵ＲＯＭ１０１９を有する。また、ＣＰＵ１００１は動作モード設定部１０１８による複数の動作モードを有し、通常の画像形成動作の際には内蔵ＲＯＭ１０１９が無効であるモードに設定されている。
【００５０】
ここで、ＣＰＵ１００１はフラッシュＲＯＭの内容に従って順次入出力の制御を行ない、画像形成動作を実行すると共に、キー表示制御部１００６から操作部３００のキー入力情報を受け取る。また、本装置１００の状態やキー入力による操作モードの設定の表示等をキー表示制御部１００６に指示し、操作部３００の表示を制御する。
【００５１】
また、画像形成装置１００には、各種モータ等の動作制御を行なうＣＰＵ１００２が備えられており、このＣＰＵ１００２の指示によりモータ等の動作制御を行なう。また、ＣＰＵ１００２には、制御プログラムが書きこまれたフラッシュＲＯＭ１００８と、処理を実行する際に用いるワークＲＡＭ１００９と、入出力（Ｉ／Ｏ）ポート１０１０とがアドレスバス及びデータベースバスにより接続されている。そして、入出力ポート１０１０には、各種制御モータが必要に応じて接続されている。
【００５２】
更に、ＣＰＵ１００１はインターフェース手段としてのデュアルポートＲＡＭ１０１３を介して外部装置からのＰＤＬ等のデータを画像信号に変換するＣＰＵ１０１４とデータ通信を行なう。このＣＰＵ１０１４は、ホストコンピュータ（パソコン）等の外部装置からのＰＤＬデータを受信すると、そのＰＤＬコードを画像データに変換し、デュアルポートＲＡＭ１０１３を介して画像形成部の制御手段としてのＣＰＵ１００１に画像形成処理を要求し、ＣＰＵ１００１の制御に同期して画像データをプリンタ部２へと出力する。また、ＣＰＵ１０１４には、制御プログラムが書き込まれたフラッシュＲＯＭ１０１５と、処理を実行する際に用いると共にＰＤＬコードを画像データに展開する際に用いるＲＡＭ１０１６と、入出力（Ｉ／Ｏ）ポート１０１７とがアドレスバス及びデータバスにより接続されている。尚、入出力ポート１０１７には、外部装置からＰＤＬコード等のデータを受信するための制御ポートが接続されている。
【００５３】
また、ＣＰＵ１００１はシリアルインターフェース１０１１を介して不図示のパソコン等の外部装置とデータ通信を行なう。そして、パソコン等の外部装置からシリアルインターフェース１０１１を介して受信したデータを解析し、その解析結果に従って本装置１００内のデータを外部装置に送信する。また、外部装置から受信したデータによりフラッシュＲＯＭ内のデータの書き換えを行なう。
【００５４】
次に、フラッシュＲＯＭ内のデータを書き換える処理について説明する。図９は、本実施形態におけるフラッシュＲＯＭ内のデータ書き換え処理を示すフローチャートである。尚、この処理は内蔵ＲＯＭ１０１９を有効とした時の電源投入時にＣＰＵ１００１が行なう処理である。つまり、書き換え処理を行なう際に、電源が入っていない状態でディップスイッチ等により内蔵ＲＯＭ有効のモードにし、電源を入れることによって以下の処理が行なわれる。また、通常の画像形成動作の際のメモリーマップ、即ち、この場合内蔵ＲＯＭ無効のモードでの実行時のメモリーマップを図１１の（ａ）に示し、書き換え制御動作時のメモリーマップ、即ち、この場合内蔵ＲＯＭ有効のモードでの実行時のメモリーマップを図１１の（ｂ）に示す。即ち、図１１の（ａ）は、通常の複写機、プリンタ動作処理時のメモリーマップであり、図１１の（ｂ）はダウンロード時のメモリーマップである。
【００５５】
この図からも分かるように、内蔵ＲＯＭ無効のモードの時、フラッシュＲＯＭに割り当てられていた領域の一部が、内蔵ＲＯＭ有効のモードでは内蔵ＲＯＭが割り当てられている。この場合、００００００ｈから０１００００ｈまでがその共通の領域である。また、その領域の一部として内蔵ＲＯＭ無効のモード時には通常の割り込みベクタ領域、内蔵ＲＯＭ有効のモード時には転送、ダウンロード用のベクタ領域が含まれている。つまり、同じメモリ空間において、画像形成動作時にはフラッシュＲＯＭが、書き換え制御時には内蔵ＲＯＭが占有することにより制御専用のベクタ領域を確保することが可能となる。
【００５６】
尚、この例では、転送、ダウンロード用のベクタ領域としたが、これはＲＡＭ１００５への転送時においても割り込みの使用範囲はほぼ同じであり、転送時、ダウンロード時において共通のベクタ領域を使用できるからである。
【００５７】
ここで、書き換え制御プログラム実行開始時、即ち、この場合内部ＲＯＭ有効のモードで電源が入った状態の時に、書き換え処理中であり、画像形成動作が行なえないことを操作者に通知する。
【００５８】
まず、ステップＳ２００において、後述する情報によりそれぞれのフラッシュＲＯＭ１００４，１００８，１０１５の書き換えが中断したか否か、或いは書き換え処理が失敗したか判断する。ここで、フラッシュＲＯＭ１００８，１０１５の書き換えが中断している場合、ＣＰＵ１００２，１０１４からデュアルポートＲＡＭ１００７，１０１３を介してＣＰＵ１００１へ情報がそれぞれ通知される。この通知により、書き換えが中断していると判断すると、各フラッシュＲＯＭ内の制御データが保証されないため、後述するステップＳ１０３に処理をすすめ、書換えプログラム転送モードを実行する。尚、フラッシュＲＯＭ１００４での書き換えが中断しているのかの判断については後述する。
【００５９】
また、ステップＳ２００で書き換えが中断していない場合はステップＳ２０１に進み、インストールモードにおいてインストール先のフラッシュＲＯＭの情報を読み出す。そして、続くステップＳ２０２で、読み出したバージョンと新たにインストールするバージョンとを比較する。ここで、バージョンが一致する場合、インストールする必要がないため、操作者にインストールモード終了を示し、電源を落とし、モードを内部ＲＯＭ無効のモードに設定するよう促す。しかし、ステップＳ２０２でバージョンが一致しない場合にはステップＳ２０３に進み、書き換えプログラム転送モードを実行する。
【００６０】
このステップＳ２０３では、内蔵ＲＯＭ１０１９の内容に従って外部装置から送られてきたデータに従ってフラッシュＲＯＭ１０００に書き換え制御プログラムを転送し、ステップＳ２０４に進み、フラッシュＲＯＭ書き換えモードを実行する。
【００６１】
ここで、上述のステップＳ２０３での制御の詳細を図１０に示すフローチャートに従って説明する。書き換えプログラム転送モードが開始されると、まずステップＳ２０３０において、フラッシュＲＯＭ１０００の情報の内容を読み、続くステップＳ２０３１において、インストールするバージョンとの比較を行なう。バージョンが一致した場合は、外部装置に書き換えプログラムを転送する必要がないことを伝え、ステップＳ２０４に進む。また、一致しない場合にはステップＳ２０３２に進み、フラッシュＲＯＭ１００４の内容を消去し、続くステップＳ２０３３で外部装置よりデータが転送されるのを待つ。その後、データを受信するとステップＳ２０３４に進み、フラッシュＲＯＭ１０００に受信した信号に従って書き込みを行なう。そして、ステップＳ２０３５で、受信したデータが転送を行なう最後のデータかどうかを判定し、最後のデータである場合にはステップＳ２０４に進み、フラッシュＲＯＭ書き換えモードを実行する。また、最終データでない場合にはステップＳ２０３３に戻り、上述の処理を繰り返す。
【００６２】
ここで、内蔵ＲＯＭ１０１９には、書き換え制御のプログラムをフラッシュＲＯＭ１０００に転送するプログラムを記憶しているのであるが、複数の記憶媒体に記憶された画像形成制御のプログラムを書き換える制御プログラムを直接内蔵ＲＯＭに記憶するのと比べ、内部ＲＯＭ１０１９に記憶しなければならないプログラムの量はかなり、軽減されると考えられ、即ち、内部ＲＯＭ１０１９にバグの存在する確率もかなり軽減されると考えられる。
【００６３】
次に、ステップＳ２０４において、まずインストールするフラッシュＲＯＭが１００４，１００８，１０１５のいずれか判断する。ここで、インストールするフラッシュＲＯＭが１００４の場合はステップＳ２０５に進み、フラッシュＲＯＭ１００４の書き換え領域を消去する。そして、フラッシュＲＯＭの情報が消去されたことを示す情報を設定し、上述のステップＳ２０１で読み出したフラッシュＲＯＭ内の所定アドレスのデータを消すことにより、そのアドレスのデータが確定していない時に、書き換えが中断したと判断する。また、別の手法として、不揮発性のＲＡＭに書き換えを実行していることを示すフラグを設定してもよい。
【００６４】
次に、ステップＳ２０６に進み、シリアルインターフェース１０１１を介して外部装置から送られてくる書き換えデータを受信するまで待つ。尚、外部装置からの書き換えデータは、内部で処理できる単位、例えば２５６バイト単位に分割して送られてくる。また、データは転送時間を短縮するために、より短いデータコードに圧縮して送られてくる。この圧縮は、例えばレンペルズィップ法などで行なわれる。その後、ステップＳ２０６で書き換えデータを受信するとステップＳ２０７に進み、圧縮されたデータコードを元のデータへの解凍を行なう。
【００６５】
そして、ステップＳ２０８において、ステップＳ２０７で解凍したデータをフラッシュＲＯＭ１００４の所定アドレスに書き込み、続くステップＳ２０９で書き換えデータが最終データまで行われたか否かを判断する。ここで、最終データを処理していなければステップＳ２０６に戻り、上述の処理を繰り返す。その後、最終データまで書き換えを行なった場合は、上述したフラッシュＲＯＭの情報が消去されたことを示す情報をクリアし、ステップＳ２１７へ移行する。
【００６６】
ステップＳ２１７では、今書き換えたフラッシュＲＯＭ内のデータのチェックサムを計算し、正常に書き換えが終了したか否か判断する。ステップＳ２１７で正常に終了している場合は処理を終了する。また、正常に終了していない場合はステップＳ２１８に進み、異常終了した旨を示す情報を残して処理を終了する。この異常終了した旨を示す情報はフラッシュＲＯＭ内の所定アドレスに書き込んでもよい。また、不揮発性のＲＡＭに書き込んでもよい。
【００６７】
また、上述のステップＳ２０４において、インストールするフラッシュＲＯＭが１００８の場合はステップＳ２１０に進み、デュアルポートＲＡＭ１００７を介してＣＰＵ１００２にフラッシュＲＯＭ１００８の書き換える領域を消去するように指示する。この場合、ＣＰＵ１００２は、ＣＰＵ１００１と同様に、上述の手法を用いてフラッシュＲＯＭ１００８内の情報が消去されたことを示す情報を設定し、ステップＳ２０１でフラッシュＲＯＭの書き換えが中断したことを判断する際に参照する。そして、シリアルインターフェイス１０１１を介して書き換えデータを受信するまで待つ。ここで、外部装置からのデータは内部で処理できる単位、例えば２５６バイト単位に分割して送られくる。また、データは転送時間を短くするために、書き換えデータをより短いデータコードに圧縮して送られてくる。例えば、レンペルズィップ法などで圧縮される。その後、ステップＳ２１０で書き換えデータを受信するとステップＳ２１１に進み、圧縮されたデータを元のデータヘの解凍を行なう。
【００６８】
そして、ステップＳ２１２において、ステップＳ２１１で解凍したデータをデュアルポートＲＡＭ１００７を介してＣＰＵ１００２にデータ転送する。ＣＰＵ１００２は、デュアルポートＲＡＭ１００７によりＣＰＵ１００１から送られてきたデータをフラッシュＲＯＭ１００８の所定アドレスに書き込む。ＣＰＵ１００１ではステップＳ２１２でデータ送信後、ステップＳ２１３へ移行する。
【００６９】
ステップＳ２１３では、書き換えデータが最終データまで行なわれたか否かを判断し、行なわれていない場合はステップＳ２１０に戻り、最終データまで繰り返す。ステップＳ２１３で最終データまで行なわれた場合は、ＣＰＵ１００２に最終データまで書き込みが終了したことを通知し、ＣＰＵ１００２はフラッシュＲＯＭ内が消去されたことを示す情報をクリアーする。その後、上述のステップＳ２１７へ移行する。
【００７０】
また、上述のステップＳ２０４において、インストールするフラッシュＲＯＭが１０１５の場合はステップＳ２１４に進み、操作部３００にフラッシュＲＯＭ１０１５を書き換える必要があることを操作者に示す表示を行う。そして、デュアルポートＲＡＭ１０１３を介してＣＰＵ１０１４にフラッシュＲＯＭ１０１５の書き換える領域を消去するように指示する。この場合、ＣＰＵ１０１４は、ＣＰＵ１００１と同様に、上述の手法を用いてフラッシュＲＯＭ１０１５内の情報が消去されたことを示す情報を設定し、ステップＳ２０１でフラッシュＲＯＭの書き換えが中断したことを判断する際に参照する。そして、シリアルインターフェイス１０１１を介して書き換えデータを受信するまで待つ。ここで、外部装置からのデータは内部で処理できる単位、例えば２５６バイト単位に分割して送られくる。また、データは転送時間を短くするために、書き換えデータをより短いデータコードに圧縮して送られてくる。例えば、レンペルズィップ法などで圧縮される。その後、ステップＳ２１４で書き換えデータを受信するとステップＳ２１５へ移行する。
【００７１】
このステップＳ２１５では、受信したデータをデュアルポートＲＡＭ１０１３を介してＣＰＵ１０１４にデータ転送する。ＣＰＵ１０１４は、デュアルポートＲＡＭ１０１３によりＣＰＵ１００１から送られてきたデータを元のデータヘの解凍を行ない、フラッシュＲＯＭ１０１５の所定アドレスに書き込みむ。ＣＰＵ１００１ではステップＳ２１５でデータ送信後、ステップＳ２１６へ移行する。ステップＳ２１６では、書き換えデータが最終データまで行なわれたか否かを判断し、行なわれていない場合はステップＳ２１４に戻り、最終データまで繰り返す。ステップＳ２１４で最終データまで行なわれた場合は、ＣＰＵ１０１４に最終データまで書き込みが終了したことを通知し、ＣＰＵ１０１４はフラッシュＲＯＭ内が消去されたことを示す情報をクリアーする。その後、上述のステップＳ２１７へ移行する。
【００７２】
第２の実施形態においても、第１の実施形態と同様に、図６に示すような表示を行ない、通常のコピー設定表示は行わず、操作者にコピーが使用できないこと、及び、データのダウンロード中であることを通知する。又、フラッシュＲＯＭ１００８，フラッシュＲＯＭ１０１４を書き換える場合も、同様に表示を行えばよい。
【００７３】
また、本実施形態では、操作部３００上の表示部３０１にフラッシュＲＯＭの書き換えを行なうことを表示したが、操作部３００上、又は画像形成装置の確認可能ないずれかに、点滅などで状態を示すインジケータランプを設けてもよい。例えば、操作部３００上にＬＥＤなどを設け、通常時、このＬＥＤを消灯する。そして、フラッシュＲＯＭの書き換え処理が失敗した場合はＬＥＤを点灯する。その後、書き換え処理の実行中は点滅表示する。
【００７４】
更に、操作部３００など画像形成装置の表示手段により表示するのでは無く、フラッシュＲＯＭの書き換えなどのために接続されているホスト上に表示してもよい。この場合、操作部３００に表示する処理に代わり、ＲＳ−２３２ＣのＩＦ１０１１を介してホストにフラッシュＲＯＭが書き換える必要があることを通知する。そして、ホストはその画面上にそのことを表示する。
【００７５】
また、本実施形態では、書き換え可能な記憶手段としてフラッシュＲＯＭを用いているが、フラッシュＲＯＭに代わりハードディスクなどの記憶手段を用いても同様に行うことができる。
【００７６】
このように、本実施形態によれば、ＲＯＭ等にダウンロードプログラムを転送してくるプログラムが組まれており、転送してきたダウンロードプログラムを実行することにより、画像形成動作制御のプログラムを書き換える。フラッシュＲＯＭは情報の安定性にやや欠けるところがあり、フラッシュＲＯＭに画像形成制御のプログラムの内容が正常でなくなってしまうことも考えられ、その際、ダウンロードプログラムがフラッシュＲＯＭに記憶されている場合にはそのダウンロードプログラムも正常でなくなっている可能性もあり、そうなるとＲＯＭ交換をするしか修復する手段はなくなってしまうが、本発明では、ＲＯＭ等の内容により、ダウンロードプログラムを転送して、そのダウンロードプログラムを実行するしくみであるので、フラッシュＲＯＭの内容が正常でなくなってしまった場合にも修復は可能である。
【００７７】
また、ＲＯＭ等に直接ダウンロードプログラムを記憶する場合には、複数のフラッシュＲＯＭの書き換えを行なうプログラムをＲＯＭに記憶しなければならなく、それゆえプログラムのデータの大きさは膨大になってしまう。しかし、本発明では、送られてきたデータをメインのＣＰＵの記憶装置に転送するだけのプログラムをＲＯＭに記憶しているため、プログラムの量は最小限に抑えられている。それゆえ、ＲＯＭ上のプログラムのバグの可能性も抑えられ、バグがおきた場合には交換するしか手段を持たないＲＯＭに関しての負担を最小限に抑えることができる。
【００７８】
［第３の実施形態］
次に、図面を参照しながら本発明に係る第３の実施形態を詳細に説明する。
【００７９】
尚、第３の実施形態において、画像形成装置本体の構造を示す断面図及び操作部の構成は前述した図１及び図２に示す第１の実施形態と同様であり、ここでの説明は省略する。
【００８０】
図１２は、画像形成装置１００の制御系の構成を示すブロック図である。同図において、１００１は本装置全体の基本制御を行なうＣＰＵであり、アドレスバスおよびデータバスを介して入出力（Ｉ／Ｏ）ポート１００３と、画像形成制御プログラムが書き込まれたフラッシュＲＯＭ（ａ）１００４と、ダウンロード用プログラムが書き込まれたダウンロード用ＲＯＭ１０２１か画像形成動作時の割り込みベクタの領域を含むフラッシュＲＯＭ（ｂ）１０２０を選択するセレクタ１０１８と、処理を実行する際に用いるワークＲＡＭ１００５と、操作部３００の表示やキー入力を制御するキー表示制御部１００６とに接続されている。
【００８１】
また、スイッチ１０１９はセレクタ１０１８によりダウンロード用プログラムが記憶されているダウンロード用ＲＯＭ１０２１と、画像形成制御の際の割り込みベクタが含まれるフラッシュＲＯＭ（ｂ）１０２０のどちらを有効とするかを切り替えるスイッチであるが、通常の画像形成動作の場合、画像形成制御プログラムの割り込みベクタの領域が含まれるフラッシュＲＯＭ（ｂ）が有効となるように設定されている。この切り替え制御については後述する。
【００８２】
ここで、ＣＰＵ１００１はフラッシュＲＯＭの内容に従って順次入出力の制御を行ない、画像形成動作を実行すると共に、キー表示制御部１００６から操作部３００のキー入力情報を受け取る。また、本装置１００の状態やキー入力による操作モードの設定の表示等をキー表示制御部１００６に指示し、操作部３００の表示を制御する。
【００８３】
また、画像形成装置１００には、各種モータ、ヒータ等の動作制御を行なうＣＰＵ１００２が備えられており、このＣＰＵ１００２の指示によりモータ等の動作制御を行なう。また、ＣＰＵ１００２には、制御プログラムが書きこまれたフラッシュＲＯＭ１００８と、処理を実行する際に用いるワークＲＡＭ１００９と、入出力（Ｉ／Ｏ）ポート１０１０とがアドレスバス及びデータベースバスにより接続されている。そして、入出力ポート１０１０には、各種制御モータが必要に応じて接続されている。
【００８４】
更に、ＣＰＵ１００１はインターフェース手段としてのデュアルポートＲＡＭ１０１３を介して外部装置からのＰＤＬ等のデータを画像信号に変換するＣＰＵ１０１４とデータ通信を行なう。このＣＰＵ１０１４は、ホストコンピュータ（パソコン）等の外部装置からのＰＤＬデータを受信すると、そのＰＤＬコードを画像データに変換し、デュアルポートＲＡＭ１０１３を介して画像形成部の制御手段としてのＣＰＵ１００１に画像形成処理を要求し、ＣＰＵ１００１の制御に同期して画像データをプリンタ部２へと出力する。また、ＣＰＵ１０１４には、制御プログラムが書き込まれたフラッシュＲＯＭ１０１５と、処理を実行する際に用いると共にＰＤＬコードを画像データに展開する際に用いるＲＡＭ１０１６と、入出力（Ｉ／Ｏ）ポート１０１７とがアドレスバス及びデータバスにより接続されている。尚、入出力ポート１０１７には、外部装置からＰＤＬコード等のデータを受信するための制御ポートが接続されている。
【００８５】
また、ＣＰＵ１００１はシリアルインターフェース１０１１を介して不図示のパソコン等の外部装置とデータ通信を行なう。そして、パソコン等の外部装置からシリアルインターフェース１０１１を介して受信したデータを解析し、その解析結果に従って本装置１００内のデータを外部装置に送信する。また、外部装置から受信したデータによりフラッシュＲＯＭ内のデータの書き換えを行なう。
【００８６】
次に、フラッシュＲＯＭ内のデータを書き換える処理について説明する。図１３は、本実施形態におけるフラッシュＲＯＭ内のデータ書き換え処理を示すフローチャートである。尚、この処理はスイッチによりダウンロード用ＲＯＭ１０２１が有効となっている場合にＣＰＵ１００１の電源投入時に行なわれる処理である。つまり、書き換え処理を行なう際に、電源を入れる前、スイッチ１０１９によりダウンロード用ＲＯＭ１０２１が有効となるよう設定し、電源を入れることで以下の処理が行なわれる。また、通常の画像形成動作の際のメモリーマップ、即ち、この場合フラッシュＲＯＭ（ｂ）有効の場合のメモリーマップを図１４の（ａ）に示し、書き換え制御動作時のメモリーマップ、即ち、この場合ダウンロード用ＲＯＭ有効の場合のメモリーマップを図１４の（ｂ）に示す。
【００８７】
この図からも分かるように、通常の画像形成動作時にフラッシュＲＯＭ（ｂ）に割り当てられていた領域の一部が、書き換え制御動作時ではダウンロード用ＲＯＭが割り当てられている。この場合、００００００ｈから０１００００ｈまでがその共通の領域である。また、その領域の一部として通常の画像形成動作時には通常の割り込みベクタ領域、書き換え制御時にはダウンロード用のベクタ領域が含まれている。つまり、同じメモリ空間において、画像形成動作時にはフラッシュＲＯＭが、書き換え制御時にはダウンロード用ＲＯＭが占有することにより制御専用のベクタ領域を確保することが可能となる。
【００８８】
ここで、書き換え制御プログラム実行開始時、つまりこの場合内部ＲＯＭ有効のモードで電源が入った状態の時に、書き換え処理中であり、画像形成動作が行なえないことを操作者に示す。
【００８９】
まず、ステップＳ３０１において、後述する情報によりそれぞれのフラッシュＲＯＭ１００４，１００８，１０１５の書き換えが中断したか否か、或いは書き換え処理が失敗したか判断する。ここで、フラッシュＲＯＭ１００８，１０１５の書き換えが中断している場合、ＣＰＵ１００２，１０１４からデュアルポートＲＡＭ１００７，１０１３を介してＣＰＵ１００１へ情報がそれぞれ通知される。この通知により、書き換えが中断していると判断すると、各フラッシュＲＯＭ内の制御データが保証されないため、後述するステップＳ３０６に処理を進め、フラッシュＲＯＭの書き換えモードを実行する。尚、フラッシュＲＯＭ１００４の書き換えが中断しているのかの判断については後述する。
【００９０】
また、ステップＳ３０１で書き換えが中断していない場合はステップＳ３０２に進み、インストールモードにおいてインストール先のフラッシュＲＯＭの情報を読み出す。そして、続くステップＳ３０３で、読み出したバージョンと新たにインストールするバージョンとを比較する。ここで、バージョンが一致する場合、インストールする必要がないため、操作者にインストールモード終了を示し、電源を落とし、スイッチ１０１９によりフラッシュＲＯＭ（ｂ）１０２０を有効に設定するよう促す。しかし、ステップＳ３０３でバージョンが一致しない場合にはステップＳ３０４に進み、フラッシュＲＯＭの書き換えモードを実行する。次に、ステップＳ３０４において、まずインストールするフラッシュＲＯＭが１００４，１００８，１０１５のいずれか判断する。ここで、インストールするフラッシュＲＯＭが１００４の場合はステップＳ３０５に進み、フラッシュＲＯＭ１００４の書き換え領域を消去する。そして、フラッシュＲＯＭの情報が消去されたことを示す情報を設定し、上述のステップＳ３０１で読み出したフラッシュＲＯＭ内の所定アドレスのデータを消すことにより、そのアドレスのデータが確定していない時に、書き換えが中断したと判断する。また、別の手法として、不揮発性のＲＡＭに書き換えを実行していることを示すフラグを設定してもよい。
【００９１】
次に、ステップＳ３０６に進み、シリアルインターフェース１０１１を介して外部装置から送られてくる書き換えデータを受信するまで待つ。尚、外部装置からの書き換えデータは、内部で処理できる単位、例えば２５６バイト単位に分割して送られてくる。また、データは転送時間を短縮するために、より短いデータコードに圧縮して送られてくる。この圧縮は、例えばレンペルズィップ法などで行なわれる。その後、ステップＳ３０６で書き換えデータを受信するとステップＳ３０７に進み、圧縮されたデータコードを元のデータへの解凍を行なう。
【００９２】
そして、ステップＳ３０８において、ステップＳ３０７で解凍したデータをフラッシュＲＯＭ１００４の所定アドレスに書き込み、続くステップＳ３０９で書き換えデータが最終データまで行われたか否かを判断する。ここで、最終データを処理していなければステップＳ３０６に戻り、上述の処理を繰り返す。その後、最終データまで書き換えを行なった場合は、上述したフラッシュＲＯＭの情報が消去されたことを示す情報をクリアし、ステップＳ３１７へ移行する。
【００９３】
ステップＳ３１７では、今書き換えたフラッシュＲＯＭ内のデータのチェックサムを計算し、正常に書き換えが終了したか否か判断する。ステップＳ３１７で正常に終了している場合は処理を終了する。また、正常に終了していない場合はステップＳ３１８に進み、異常終了した旨を示す情報を残して処理を終了する。この異常終了した旨を示す情報はフラッシュＲＯＭ内の所定アドレスに書き込んでもよい。また、不揮発性のＲＡＭに書き込んでもよい。
【００９４】
また、上述のステップＳ３０４において、インストールするフラッシュＲＯＭが１００８の場合はステップＳ３１０に進み、デュアルポートＲＡＭ１００７を介してＣＰＵ１００２にフラッシュＲＯＭ１００８の書き換える領域を消去するように指示する。この場合、ＣＰＵ１００２は、ＣＰＵ１００１と同様に、上述の手法を用いてフラッシュＲＯＭ１００８内の情報が消去されたことを示す情報を設定し、ステップＳ３０１でフラッシュＲＯＭの書き換えが中断したことを判断する際に参照する。そして、シリアルインターフェイス１０１１を介して書き換えデータを受信するまで待つ。ここで、外部装置からのデータは内部で処理できる単位、例えば２５６バイト単位に分割して送られくる。また、データは転送時間を短くするために、書き換えデータをより短いデータコードに圧縮して送られてくる。例えば、レンペルズィップ法などで圧縮される。その後、ステップＳ３１０で書き換えデータを受信するとステップＳ３１１に進み、圧縮されたデータを元のデータヘの解凍を行なう。
【００９５】
そして、ステップＳ３１２において、ステップＳ３１１で解凍したデータをデュアルポートＲＡＭ１００７を介してＣＰＵ１００２にデータ転送する。ＣＰＵ１００２は、デュアルポートＲＡＭ１００７によりＣＰＵ１００１から送られてきたデータをフラッシュＲＯＭ１００８の所定アドレスに書き込む。ＣＰＵ１００１ではステップＳ３１２でデータ送信後、ステップＳ３１３へ移行する。
【００９６】
ステップＳ３１３では、書き換えデータが最終データまで行なわれたか否かを判断し、行なわれていない場合はステップＳ３１０に戻り、最終データまで繰り返す。ステップＳ３１３で最終データまで行なわれた場合は、ＣＰＵ１００２に最終データまで書き込みが終了したことを通知し、ＣＰＵ１００２はフラッシュＲＯＭ内が消去されたことを示す情報をクリアーする。その後、上述のステップＳ３１７へ移行する。
【００９７】
また、上述のステップＳ３０４において、インストールするフラッシュＲＯＭが１０１５の場合はステップＳ３１４に進み、操作部３００にフラッシュＲＯＭ１０１５を書き換える必要があることを操作者に示す表示を行う。そして、デュアルポートＲＡＭ１０１３を介してＣＰＵ１０１４にフラッシュＲＯＭ１０１５の書き換える領域を消去するように指示する。この場合、ＣＰＵ１０１４は、ＣＰＵ１００１と同様に、上述の手法を用いてフラッシュＲＯＭ１０１５内の情報が消去されたことを示す情報を設定し、ステップＳ２０１でフラッシュＲＯＭの書き換えが中断したことを判断する際に参照する。そして、シリアルインターフェイス１０１１を介して書き換えデータを受信するまで待つ。ここで、外部装置からのデータは内部で処理できる単位、例えば２５６バイト単位に分割して送られくる。また、データは転送時間を短くするために、書き換えデータをより短いデータコードに圧縮して送られてくる。例えば、レンペルズィップ法などで圧縮される。その後、ステップＳ２１４で書き換えデータを受信するとステップＳ３１５へ移行する。
【００９８】
このステップＳ３１５では、受信したデータをデュアルポートＲＡＭ１０１３を介してＣＰＵ１０１４にデータ転送する。ＣＰＵ１０１４は、デュアルポートＲＡＭ１０１３によりＣＰＵ１００１から送られてきたデータを元のデータヘの解凍を行ない、フラッシュＲＯＭ１０１５の所定アドレスに書き込みむ。ＣＰＵ１００１ではステップＳ３１５でデータ送信後、ステップＳ３１６へ移行する。ステップＳ３１６では、書き換えデータが最終データまで行なわれたか否かを判断し、行なわれていない場合はステップＳ３１４に戻り、最終データまで繰り返す。ステップＳ３１４で最終データまで行なわれた場合は、ＣＰＵ１０１４に最終データまで書き込みが終了したことを通知し、ＣＰＵ１０１４はフラッシュＲＯＭ内が消去されたことを示す情報をクリアーする。その後、上述のステップＳ３１７へ移行する。
【００９９】
第３の実施形態においても、第１の実施形態と同様に、図６に示すような表示を行ない、通常のコピー設定表示は行わず、操作者にコピーが使用できないこと、及び、データのダウンロード中であることを通知する。又、フラッシュＲＯＭ１００８，フラッシュＲＯＭ１０１４を書き換える場合も、同様に表示を行えばよい。
【０１００】
このように、本実施形態によれば、書き換えの処理を割り込みで行なえ、それゆえ、データが伝送された際すぐに割り込み処理により書き換えの処理が可能となり、書き換えの処理時間を短縮できる。また、フラッシュＲＯＭの内容は、多少不安定なところがあり、フラッシュＲＯＭの内容が正常でなくなった際に、書き換え制御プログラムがフラッシュＲＯＭ上にある場合には実行不可能な場合も考えられるが、実施例の様にＲＯＭに納められている場合は書き換えプログラムを実行でき、フラッシュＲＯＭの内容が正常でなくなった時には、正常な状態に修復することも出来る。
【０１０１】
尚、本発明は複数の機器（例えば、ホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【０１０２】
また、本発明の目的は前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【０１０３】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１０４】
プログラムコードを供給するための記憶媒体としては、例えばフロッピーディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【０１０５】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０６】
更に、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１０７】
【発明の効果】
以上説明したように、本発明によれば、ＲＯＭ等にはＲＡＭ等にダウンロードプログラムを転送するだけの制御プログラムを記憶し、その転送されたダウンロードプログラムを実行することにより書き換えを実現し、ＲＯＭ等に記憶するプログラムを最小限に抑え、信頼性を向上させることができる。
【０１０８】
また、本発明によれば、画像形成に限らず、書き換えの際にも割り込みを使用可能とし、高速で書き換えを行なうことができる。
【０１０９】
【図面の簡単な説明】
【図１】本実施形態における画像形成装置の構造を示す断面図である。
【図２】本実施形態における操作部３００の構成を示す図である。
【図３】第１の実施形態による画像形成装置１００の制御系の構成を示すブロック図である。
【図４】第１の実施形態によるフラッシュＲＯＭ内のデータ書き換え処理を示すフローチャートである。
【図５】第１の実施形態による書き換え制御プログラム転送処理を示すフローチャートである。
【図６】フラッシュＲＯＭ１００４を書き換える時の表示例を示す図である。
【図７】第１の実施形態におけるメモリーマップを示す図である。
【図８】第２の実施形態による画像形成装置１００の制御系の構成を示すブロック図である。
【図９】第２の実施形態によるフラッシュＲＯＭ内のデータ書き換え処理を示すフローチャートである。
【図１０】第２の実施形態による書き換え制御プログラム転送処理を示すフローチャートである。
【図１１】第２の実施形態におけるメモリーマップを示す図である。
【図１２】第３の実施形態による画像形成装置１００の制御系の構成を示すブロック図である。
【図１３】第３の実施形態によるフラッシュＲＯＭ内のデータ書き換え処理を示すフローチャートである。
【図１４】第３の実施形態におけるメモリーマップを示す図である。
【図１】
0003943688.tif 000002
【図２】
0003943688.tif 000003
【図３】
0003943688.tif 000004
【図４】
0003943688.tif 000005
【図５】
0003943688.tif 000006
【図６】
0003943688.tif 000007
【図７】
0003943688.tif 000008
【図８】
0003943688.tif 000009
【図９】
0003943688.tif 000010
【図１０】
0003943688.tif 000011
【図１１】
0003943688.tif 000012
【図１２】
0003943688.tif 000013
【図１３】
0003943688.tif 000014
【図１４】
0003943688.tif 000015