(57)【要約】【課題】デバイスを交換自在に構成した画像形成装置において、デバイスバージョンの組合せに不都合が生じないようにする。【解決手段】デバイス組合せとして許容される条件を予め管理テーブルに登録しておく。デバイス情報取得部３０２は、実際にシステムや装置を構成するデバイスの各バージョン情報Ｊ７を取得し、バージョン管理部３２０に通知する。バージョン管理部３２０は、管理テーブルと照合することで、バージョン整合の有無を確認する。バージョン不整合があれば、その状態のままでの装置稼働を禁止する。必要に応じて、各機能モジュールのバージョンがセットバージョンで許容されていない組合せとならないように、デバイスプログラムのバージョンやセットバージョンを変更する。また、不整合デバイスの動作を禁止しつつ、残りのデバイスでの動作を許可する。【選択図】        図２
2004287993.tif 000002
【特許請求の範囲】
【請求項１】
交換自在な複数のデバイスが組み合わされて構成されているシステムや装置における前記デバイスの各バージョンを管理する方法であって、
前記複数のデバイスが組み合わされた状態において許容される組合せに関する情報を管理する管理テーブルを用意し、
前記システムや装置に実際に使用される前記複数のデバイスの各バージョンに関する情報を取得し、
この取得した各デバイスのバージョンを前記管理テーブルと照合することにより、バージョンの整合の有無を確認し、
バージョンの整合がない場合には、バージョンの整合が採れていない状態での前記システムや装置の稼働を禁止する
ことを特徴とするシステムバージョンの管理方法。
【請求項２】
交換自在な複数のデバイスが組み合わされて構成されているシステムや装置における前記デバイスの各バージョンを管理する装置であって、
前記システムや装置に実際に使用されている前記複数のデバイスの各バージョンに関する情報を取得するバージョン情報取得部と、
前記バージョン情報取得部が取得した各デバイスのバージョンを、前記複数のデバイスが組み合わされた状態において許容される組合せに関する情報を管理するための管理テーブルと照合することにより、バージョンの整合の有無を確認し、バージョンの整合がない場合には、バージョンの整合が採れていない状態での前記システムや装置の稼働を禁止するバージョン管理部と
を備えたことを特徴とするシステムバージョンの管理装置。
【請求項３】
前記複数のデバイスが組み合わされた状態において許容される組合せに関する情報を管理する管理テーブルを保持するテーブル記憶部を備えている
ことを特徴とする請求項２に記載のシステムバージョンの管理装置。
【請求項４】
前記テーブル記憶部は、前記システムや装置に設けられている
ことを特徴とする請求項３に記載のシステムバージョンの管理装置。
【請求項５】
前記テーブル記憶部は、前記システムや装置の外部に接続される外部機器に設けられている
ことを特徴とする請求項３に記載のシステムバージョンの管理装置。
【請求項６】
前記デバイスは、当該デバイスの機能をアプリケーションプログラムに基づいてコンピュータが実行するように構成されており、
前記バージョン管理部は、バージョンの整合がない場合には、許容される組合せ状態のバージョンを示す何れかのセットバージョンに適合するように、組み合わされている前記複数のデバイスのうちの少なくとも１つのデバイスについての、前記アプリケーションプログラムのバージョン変更を制御する
ことを特徴とする請求項２に記載のシステムバージョンの管理装置。
【請求項７】
前記バージョン管理部が、前記アプリケーションプログラムのバージョン変更を実行する
ことを特徴とする請求項６に記載のシステムバージョンの管理装置。
【請求項８】
前記アプリケーションプログラムのバージョン変更を実行するためのプログラムを保持するプログラム記憶部が、前記システムや装置に設けられている
ことを特徴とする請求項７に記載のシステムバージョンの管理装置。
【請求項９】
前記アプリケーションプログラムのバージョン変更を実行するためのプログラムを保持するプログラム記憶部が、前記システムや装置の外部に接続される外部機器に設けられている
ことを特徴とする請求項７に記載のシステムバージョンの管理装置。
【請求項１０】
前記記憶部が設けられている前記外部機器は、通信手段を介して前記システムや装置と接続されるものである
ことを特徴とする請求項５または９記載のシステムバージョンの管理装置。
【請求項１１】
前記バージョン管理部が、前記アプリケーションプログラムのバージョン変更を、前記少なくとも１つのデバイスに指示し、
この指示を受けた前記デバイスが、前記アプリケーションプログラムのバージョン変更を実行する
ことを特徴とする請求項６に記載のシステムバージョンの管理装置。
【請求項１２】
前記デバイスが、前記アプリケーションプログラムのバージョン変更を実行するためのプログラムを保持するプログラム記憶部を備えている
ことを特徴とする請求項１１に記載のシステムバージョンの管理装置。
【請求項１３】
前記バージョン管理部が、前記システムや装置に設けられている
ことを特徴とする請求項６に記載のシステムバージョンの管理装置。
【請求項１４】
前記バージョン管理部が、前記システムや装置の外部に接続される外部機器に設けられている
ことを特徴とする請求項６に記載のシステムバージョンの管理装置。
【請求項１５】
前記バージョン管理部が設けられている前記外部機器は、通信手段を介して前記システムや装置と接続されるものであり、
前記バージョン管理部は、前記通信手段を介して、前記アプリケーションプログラムのバージョン変更を制御する
ことを特徴とする請求項１４に記載のシステムバージョンの管理装置。
【請求項１６】
前記バージョン管理部は、バージョンの整合がない場合には、許容される組合せ状態のバージョンを示す何れかのセットバージョンを、その時点のデバイス組合せで整合が採れるように、変更する
ことを特徴とする請求項２に記載のシステムバージョンの管理装置。
【請求項１７】
前記デバイスは、当該デバイスの機能をアプリケーションプログラムに基づいてコンピュータが実行するように構成されており、
前記バージョン管理部は、バージョンの整合がない場合には、許容される組合せ状態のバージョンを示す何れかのセットバージョンに適合するように、組み合わされている記複数のデバイスのうちの少なくとも１つのデバイスについての、前記アプリケーションプログラムのバージョン変更を制御する
ことを特徴とする請求項１６に記載のシステムバージョンの管理装置。
【請求項１８】
前記バージョン管理部は、バージョンの整合がない場合には、バージョンの整合を採ることに不都合のあるデバイスの動作を禁止するとともに、この不都合のあるデバイスを除いたデバイスで前記システムや装置の動作を許可する
たことを特徴とする請求項２に記載のシステムバージョンの管理装置。
【請求項１９】
クライアントより指示された情報処理をする機能部分であって装置本体に対して交換自在なデバイスである複数の情報処理機能部と、
前記装置本体に装着されている前記情報処理機能部の動作を制御する動作制御部と、
前記情報処理機能部に入出力される処理対象データおよび前記動作制御部が前記情報処理機能部の動作を制御するための制御コマンドデータとのインタフェースを採る接続インタフェース部と、
前記複数の情報処理機能部の各バージョンを管理するための、請求項２から１８のうちの何れか１項に記載のシステムバージョンの管理装置と
を備えたことを特徴とする情報処理システム。
【請求項２０】
前記接続インタフェース部は、前記処理対象データと制御コマンドデータとを共通の伝送ライン上に乗せるとともに、前記処理対象データおよび前記制御コマンドデータの伝送を１対１（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）の接続形態で採るものである
ことを特徴とする請求項１９に記載の情報処理システム。
【請求項２１】
前記接続インタフェース部は、前記処理対象データと前記制御コマンドデータの伝送を双方向かつシリアル通信方式の接続形態で採るものである
ことを特徴とする請求項２０に記載の情報処理システム。
【請求項２２】
前記接続インタフェース部は、ある一定の規格を満足する標準インタフェースであることを特徴とする請求項２０また２１に記載の情報処理システム。
【請求項２３】
前記標準インタフェースは、ピーシーアイエクスプレスであることを特徴とする請求項２２に記載の情報処理システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、たとえばプリンタ装置、ファクシミリ装置、複写装置、あるいはそれらの機能を複合的に有する複合機（ｍｕｌｔｉ−ｆｕｎｃｔｉｏｎ  ｄｅｖｉｃｅ  ）など、画像を所定の記録媒体に形成する機能を有する装置あるいはその他の一般的な情報処理装置を構成する機能モジュール（デバイス）のバージョン管理方法および装置、並びにバージョン管理装置を備えたシステムに関する。
【０００２】
【従来の技術】
プリンタ装置や複写装置などの印刷機能を備えた画像形成装置が様々な分野で使用されている。また、今日では、画像形成装置がカラー化され、ユーザの様々な表現手段として利用されるようになってきている。たとえば、電子写真プロセス（ゼログラフィ）を用いたカラーページプリンタ装置は、高品質な画質あるいは高速プリンティングの点で注目されている。
【０００３】
従来のデジタル方式の画像形成装置における重要な目標は、設計の時点において大量のデータを処理するために必要な性能を有した最も手ごろなシステムを構築することとされていた。このような設計プロセスおよび思考プロセスの結果として、可能な限り低価格でデジタル方式の画像形成装置を生産することはできたが、そのデジタル方式の画像形成装置を簡単に変更したり、拡張したりすることは難しかった。
【０００４】
たとえば、画像形成装置を構成する回路の大部分が、１つの回路基板上に収容されるようになっており、処理制御機構がほぼ１ユニットで構成されている。この構成において、高速化・高性能化・多機能化への対応をとる場合、変更がたとえ一部の回路に対するものであっても、その都度、その回路基板全体の交換や、その回路基板の設計変更（パターンレイアウトの変更）が必要となり、結果として、開発費用と開発期間を必要とするという問題がある。
【０００５】
たとえば、従来のデジタル複写機をベースに、複写機能以外の機能を持たせた、いわゆる多機能画像処理装置（Ｍｕｌｔｉｐｌｅ−Ｆｕｎｃｔｉｏｎ  ｉｍａｇｅ  ｐｒｏｃｅｓｓｉｎｇ  ｄｅｖｉｃｅ  ；複合機ともいわれる）が提案されている。たとえば、デジタル複写機において必要とされる可能性のある他の機能として、スキャナから得た読取画像をパーソナルコンピュータまたはネットワークに与える機能（ネットワークスキャナ機能）がある。また、プリンタとしてデジタル複写機を使用し、コンピュータまたはコンピュータネットワークから得た画像を印刷できるようにする機能（プリンタ機能）もある。また、ファクシミリ装置としてデジタル複写機を使用することができるようにすることも考えられる。
【０００６】
一方、デジタル複写機の基本価格をできるだけ安くするという要求のため、従来のデジタル複写機で追加機能を実行するためには、マイクロプロセッサのような付加的なコントローラが必要であった。たとえば、ネットワークスキャナ機能、プリンタ機能、あるいはファクシミリの送受信機能を従来のデジタル複写機に加える場合、これらの新しい機能を実現するコントローラをデジタル複写機に加える必要がある。この新機能を実現するコントローラは、基本的なハードウェア機能およびソフトウェア機能並びにそれ自身のプロセッサを含むものとなる。デジタルコピー機能で使用されるプロセッサは、一般に新機能用の処理を実行することを意図したものではないからである。
【０００７】
このため、新機能を実現するには、ハードウェアおよびソフトウェアに追加機能を実行させることができるようにする新たな制御装置またはコントローラカードを追加する必要がある。ただしこの場合、追加の比較的高価なマイクロプロセッサや対応するプログラム記憶メモリのようなシステムコンポーネントが重複することになってしまう。さらに、コンポーネントを追加すると、厳格に統合されたハードウェアおよびソフトウェアを追加する必要があるため、追加されたコンポーネントの機能に柔軟性はない。
【０００８】
このような問題に対して、デジタル複写機または複合機のための新規なアーキテクチャを実現する新たなアプローチとして、パソコンなどのコンピュータシステムと同様に、ＰＣＩ（Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  ）バスを使用した、低コストでスケーラブルなアーキテクチャを採用することも考えられている（たとえば特許文献１参照）。
【０００９】
【特許文献１】
特開２０００−１５１８７８号公報
【００１０】
この特許文献１に記載の技術では、プロセッサと、プロセッサに接続されたメモリシステムと、スキャナと、プロッタと、ユーザインタフェースと、プロッタ、スキャナ、およびユーザインタフェースをプロセッサに接続する、ＰＣＩバスのような業界標準のバスとを備えてデジタル複写機を構成している。ＰＣＩバスのような業界標準バスを使用すると、容易に入手可能なコンピュータのアクセサリや周辺機器、任意の従来のコンポーネントなどをデジタル複写機において簡単にかつ安価に利用することが可能となる。また、ＣＰＵは標準バスに接続されている追加の周辺機器またはカードによって要求される処理を実行することが可能となる。
【００１１】
たとえば、デジタル複合機を構築する場合において、簡単に利用可能で安価なＰＣＩバスにプラグ接続可能なカードの例としては、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  ）に接続されるネットワークカードやファックスモデムカードなどがある。勿論、デジタル複合機を構築する基本部分である、プリントエンジンやスキャンエンジンも、必要に応じて、任意に組み替えて実装することも可能である。たとえば、装置本体には、基本ソフトウェアや装置全体の動作を管理するアプリケーションソフトウェアが組み込まれる。バスに接続されるカードやエンジンには、各々の機能を実現するアプリケーションソフトウェアが組み込まれる。
【００１２】
これにより、たとえば、読み取った画像をデジタル複写機から伝送することも可能であり、印刷される画像がネットワークカードを介してデジタル複写機で受信されるようにすることも可能である。また、必要に応じて、ネットワークカードを広域ネットワークやインターネットに接続することも可能である。
【００１３】
【発明が解決しようとする課題】
このように、特許文献１に記載の技術によれば、低コストで組替え自由な（スケーラブルな）アーキテクチャを有したデジタル複写機を構築することが可能となる。また、高性能化、多機能化、あるいは高速化を図ることも可能となる。
【００１４】
しかしながら、バスに接続される各種カードや各種エンジンのバージョンアップやこれらの組合せを変えると、その組合せによっては、不都合が生じ得る。各々が任意に接続可能であるため、各々で想定していないバージョン組合せが発生し得るので、動作保証に問題が生じるからである。上位互換を採る手法も考えられるがその組合せが無数であり、この手法を採ることは、事実上不可能である。
【００１５】
従来の複写機におけるプログラム更新は、一義的に決められた複写機の構成で行なわれており、各デバイスとコントローラ（システムソフトウェア）のセットバージョンは保証されていたので、このような問題は考えられなかった。
【００１６】
すなわち、バスに接続される各種カードや各種エンジンの組合せを任意に組み替え可能な構成とする場合には、各機能部分とコントローラ（システムソフトウェア）のセットバージョンとが一義的に決められた複写機の構成で行なわれているような、単純なプログラム更新の考え方を適用しても、動作保証を確実に担保するとともに、要求される仕様変更に柔軟に適応することは難しい。場合によっては、異常な動作を引き起こし、致命的なシステムダウンを招く可能性もある。
【００１７】
本発明は、上記事情に鑑みてなされたものであり、システムの高速化、高性能化、あるいは多機能化に答える際に、システムや装置を構成するデバイスのバージョンが、装置全体として不都合のないようにすることのできるシステムバージョン管理方法および装置、並びにシステムバージョン管理装置の機能を備えた情報処理システムを提供することを目的とする。
【００１８】
【課題を解決するための手段】
すなわち、本発明に係るシステムバージョン管理方法は、交換自在な複数のデバイスが組み合わされて構成されているシステムや装置における、デバイスの各バージョンを管理する方法であって、複数のデバイスが組み合わされた状態において許容される組合せに関する情報を管理する管理テーブルを用意しておく。そして、システムや装置に実際に使用される、複数のデバイスの各バージョンに関する情報を取得する。そして、この取得した各デバイスのバージョンを管理テーブルと照合することでバージョンの整合の有無を確認する。このとき、バージョンの整合がない場合には、バージョンの整合が採れていない状態でのシステムや装置の稼働を禁止する。
【００１９】
本発明に係るシステムバージョン管理装置は、上記本発明に係るシステムバージョン管理方法を実施するのに好適な装置であって、システムや装置に実際に使用されている、複数のデバイスの各バージョンに関する情報を取得するバージョン情報取得部と、バージョン情報取得部が取得した各デバイスのバージョンを、複数のデバイスが組み合わされた状態において許容される組合せに関する情報を管理するための管理テーブルと照合することにより、バージョンの整合の有無を確認し、バージョンの整合がない場合には、バージョンの整合が採れていない状態でのシステムや装置の稼働を禁止するバージョン管理部とを備えるものとした。
【００２０】
また従属項に記載された発明は、本発明に係るシステムバージョン管理装置の、さらなる有利な具体例を規定する。たとえば、バージョン管理部は、バージョンの整合がない場合には、許容される組合せ状態のバージョンを示す何れかのセットバージョンに適合するように、少なくとも１つのデバイスについての、アプリケーションプログラムのバージョン変更を制御する。
【００２１】
あるいは、バージョン管理部は、許容される組合せ状態のバージョンを示す何れかのセットバージョンを、その時点のデバイス組合せで整合が採れるように、変更する。必要に応じて、さらに、デバイスについてのアプリケーションプログラムのバージョン変更を制御する。
【００２２】
本発明に係る情報処理システムは、クライアントより指示された情報処理をする機能部分であって装置本体に対して交換自在なデバイスである複数の情報処理機能部と、装置本体に装着されている情報処理機能部の動作を制御する動作制御部と、情報処理機能部に入出力される処理対象データおよび動作制御部が情報処理機能部の動作を制御するための制御コマンドデータとのインタフェースを採る接続インタフェース部と、複数の情報処理機能部の各バージョンを管理するための、上記本発明に係るシステムバージョン管理装置とを備えるものとした。
【００２３】
本発明に係る情報処理システムにおいて、接続インタフェース部は、処理対象データと制御コマンドデータとを、共通の伝送ライン上に乗せるとともに、１対１（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ）の接続形態で採るものであることが好ましい。
【００２４】
上記本発明に係るシステムバージョン管理装置の機能を組み込んで情報処理システムを構築する場合、システムバージョン管理装置をシステム内の何処に置くかによって、様々なシステム形態を採り得る。
【００２５】
たとえば、情報処理装置本体の内部装置としてシステムバージョン管理装置の全体を組み込む形態や、システムバージョン管理の主要機能部分であるバージョン管理部を情報処理装置本体内に設けるが、管理テーブルやアプリケーションプログラムのバージョン変更を実行するためのプログラム（バージョン変更用プログラム）などを記憶する記憶媒体は、接続デバイスに設けたり、あるいは装置本体の近傍に配されるパソコンなどの管理端末やネットワーク（通信手段）により接続されたサーバなどの外部機器に設けたりすることができる。
【００２６】
また、バージョン管理部を、たとえば装置本体の近傍に配されるパソコンなどの管理端末やネットワーク（通信手段）により接続されたサーバなどの外部機器に設け、装置本体の外部からダウンロードを指示する仕組みとすることも可能である。
【００２７】
上記において、情報処理システムは、画像形成に関わる機能部分を情報処理機能部として備えるものとしてもよい。この場合、情報処理システムは、事実上画像形成システム（あるいは装置）となる。画像形成に関わる機能部分とは、画像もしくは画像データに対して何らかの処理を施す機能部分だけでなく、一方の機能部分から受け取った画像データに対して何らの処理を加えることなく他方の機能部分へ転送するだけのものや、電子的にデータ保存する記録メディアに他の機能部分から受け取った画像データを記録する（書き込む、格納する）ものも、本願の画像形成に関わる機能部分に含まれる。
【００２８】
たとえば、画像形成に関わる機能部分である画像形成機能部は、原稿上に形成された画像を光学的に読み取ることで画像情報を取得する画像取込部、所定の（たとえば画像取込部で取り込んだ）画像情報画像情報に対して所定の画像処理を施す画像処理部、および所定の（たとえば画像処理部により画像処理が施された処理済みの）画像情報に基づいて画像を所定の記録媒体上に形成する画像形成部（画像記録部）のうちの少なくとも１つを含むものであればよい。
【００２９】
【作用】
本発明に係る上記構成においては、デバイス組合せとして許容される条件を予め管理テーブルに登録しておく。そして、デバイスを組み合わせて実際にシステムや装置を構成する場合には、デバイスの各バージョン情報を取得し、管理テーブルと照合することで、バージョン整合の有無を確認する。バージョン整合が採れていなければ（バージョン不整合があれば）、その状態のままでの装置稼働を禁止する。つまり、デバイスの組合せに不都合のある状態での動作を禁止する。
【００３０】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態について詳細に説明する。
【００３１】
＜＜システムアーキテクチャ＞＞
図１は、本発明に係る情報処理システムを適用したカラー複写装置の、システムアーキテクチャの一例を示す図である。なお、図示するカラー複写装置１は、デジタル複写装置や複合機として利用する場合の形態を示している。
【００３２】
図示するように、本体側のＩ／Ｏブリッジ部１４０の周辺に、画像形成に関わる画像取込部２１０、画像処理部２２０、あるいは画像形成部（画像記録部）２３０などの画像形成機能部２０２およびユーザインタフェース部１４などの接続デバイスを交換自在に設け、Ｉ／Ｏブリッジ部１４０と画像形成機能部２０２などの主要デバイス間の電気信号伝送を標準インタフェースでとることで、コントローラ部１００を中心としてデバイスがスター状に接続されている。このようなカラー複写装置１の構成は、本願出願人が、たとえば特願２００２−２７２８５５号、同２００２−２７３９５８号、２００２−２７５０８６号などに提案している構成である。以下、その概要について説明する。
【００３３】
カラー複写装置１は、その中心部に、動作制御部の一例であるコントローラ部１００を備えている。コントローラ部１００は、中央演算処理部の一例であるＣＰＵ（プロセッサ）１１０、メモリブリッジ部（Ｍｅｍｏｒｙ  Ｂｒｉｄｇｅ  ）１２０、および電源供給時にのみ記憶内容を保持する、揮発性の記憶媒体の一例であるメインメモリ（主記憶部）１３０を備える。また、コントローラ部１００は、オペレーティングシステムＯＳや、画像処理や画像形成に関わる各機能部分、あるいは周辺デバイスを制御するためのアプリケーションプログラムが組み込まれる（インストールされる）不揮発性の記憶媒体（ＲＯＭ）１３２（以下不揮発性メモリ１３２という）を備える。この不揮発性メモリ１３２には、オペレーティングシステムＯＳやアプリケーションプログラムの他、装置の設定条件（接続デバイスの情報も含む）なども格納される。
【００３４】
ＣＰＵ１１０は、カラー複写装置１全体の動作制御およびデータ処理を実行するメインコントローラであり、オペレーティングシステムＯＳの制御下で、各種プログラムを実行するようになっている。メインメモリ１３０は、ＣＰＵ１１０が実行するプログラムをロードしたり、作業領域として使用したりするためのＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）などの揮発性の半導体メモリである。
【００３５】
メインメモリ１３０や不揮発性メモリ１３２は、メモリブリッジ部１２０を介してＣＰＵ１１０と接続されている。メモリブリッジ部１２０には、ＣＰＵ１１０と協働してＣＰＵ１１０とメインメモリ１３０や不揮発性メモリ１３２との間のデータの入出力を制御するメモリコントローラが組み込まれている。ＣＰＵ１１０とメインメモリ１３０との間は、ＤＭＡ（Ｄｉｒｅｃｔ  ｍｅｍｏｒｙ  Ａｃｃｅｓｓ  ）オペレーションにより、たとえば３２バイトのブロック単位でデータが転送される。
【００３６】
また、コントローラ部１００は、Ｉ／Ｏブリッジ部（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｂｒｉｄｇｅ  ）１４０、および周辺デバイスとの間の通信インタフェースを切り替える切替部の一例であるスイッチ部（Ｓｗｉｔｃｈ）１５０を備える。Ｉ／Ｏブリッジ部１４０には、ＣＰＵ１１０と協働して機能するＩ／Ｏ（入出力）コントローラが組み込まれる。スイッチ部１５０には、周辺のデバイスとの間のインタフェースを採るＬＡＮボード２５２や１３９４ボード２５４などの、入出力インタフェースドライバが組み込まれた種々のアドオンボード（ドライバ基板）２５０が追加接続（アドオン）されるようになっている。
【００３７】
Ｉ／Ｏブリッジ部１４０は、スイッチ部１５０を経由することなく、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）２．０規格のデバイスとの間のインタフェースを採るＵＳＢボード２５６が直接に接続されるようになっている。ＬＡＮボード２５２や１３９４ボード２５４についても、スイッチ部１５０を経由することなく接続してもかまわない。この場合、Ｉ／Ｏブリッジ部１４０に、ＬＡＮボード２５２などとの間でのピアツーピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ；１対１）接続の仕組みを設ける。
【００３８】
また、コントローラ部１００は、ハードディスク装置５４を備える。このハードディスク装置５４は、ハードディスクインタフェースの一例である“Ｓｅｒｉａｌ  ＡＴＡ”規格によりＩ／Ｏブリッジ部１４０と接続される。なお、本実施形態において“Ｓｅｒｉａｌ  ＡＴＡ”規格は、基本である“Ｓｅｒｉａｌ  ＡＴＡ  １．０”の規格の他、その上位規格である“Ｓｅｒｉａｌ  ＡＴＡ  ＩＩ  ”あるいは今後規格化されるであろうさらなる上位規格をも含む。
【００３９】
Ｉ／Ｏブリッジ部１４０は、カラー複写装置１に動作指示を発するための操作パネルや操作キーなどからなるユーザインタフェース部１４と直接に接続されるようになっている。なお、コントローラ部１００には、図中点線で示すように、ユーザインタフェースドライバの一例であるグラフィックスドライバ部（Ｇｒａｐｈｉｃｓ）１６０をオプションとして設けてもよい。この場合、大型ユーザインタフェースあるいはメンテナンス画面を備えたユーザインタフェース装置１５が、グラフィックスドライバ部１６０を介してメモリブリッジ部１２０に接続される。
【００４０】
また、カラー複写装置１は、コントローラ部１００のＩ／Ｏブリッジ部１４０を中心として、カラー複写装置１を複合機として機能させる機能モジュールがスター状に接続され、各機能モジュールが分散配置されている。Ｉ／Ｏブリッジ部１４０に接続される機能モジュールとしては、たとえば、図示しないスキャナ装置により画像を光学的に走査することで画像データを得る画像取込部（Ｉｍａｇｅ  Ｉｎｐｕｔ  Ｔｅｒｍｉｎａｌ）２１０と、画像取込部２１０により取得した画像データあるいはＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）や他の周辺デバイスから得た画像データに対して色変換や変倍などの所定の画像処理を施す画像処理部（Ｉｍａｇｅ  Ｐｒｏｃｅｓｓｉｎｇ  Ｓｙｓｔｅｍ  ）２２０、並びに画像処理部２２０により所定の画像処理が施された画像データに基づいて所定の記録媒体に画像を形成する画像形成部（画像記録部）２３０がある。機能モジュール間を接続する電気信号伝送ライン上には、画像取込部２１０などの画像形成機能部に入出力される画像データと、コントローラ部１００による画像形成機能部の動作を制御するための制御コマンドデータとが、共通に乗せられる。
【００４１】
なお、フラッシュメモリなどの半導体メモリを読み取り対象とする記録メディア読取部（メモリリーダ）、ＣＤ−ＲやＣＤ−ＲＷなどを記録媒体とする記録メディア書込部、あるいは他の画像形成部（画像記録部）などを拡張ユニット２４０としてＩ／Ｏブリッジ部１４０と接続してよい。これら画像取込部２１０や画像処理部２２０などの各機能モジュール（接続デバイス）には、それぞれのモジュールに応じた機能をソフトウェアにより実行するためのアプリケーションプログラムが組み込まれる。
【００４２】
なお、画像取込部２１０や画像処理部２２０などの画像形成機能部は、ボードレベルのもの（モジュール基板）として提供されてもよいし、モジュール基板を筐体内に収容した機能ユニットとして提供されてもよい。本明細書においては、モジュール基板と機能ユニットとを纏めて、機能モジュールあるいは（接続）デバイスという。
【００４３】
また、コントローラ部１００は、処理フロー制御部３００を備えている。この処理フロー制御部３００は、コントローラ部１００の外部に設けられる構成であってもよい。処理フロー制御部３００は、接続デバイスの動作仕様に関するデバイスコンフィギュレーションＪ０を各デバイスから取得し、このデバイスコンフィギュレーションＪ０を参照して、システム全体として、効率のよい処理となるように、各デバイス間のデータパスや動作タイミングを制御する。デバイスコンフィギュレーションＪ０は、画像取込部２１０などの画像形成機能部、周辺デバイス用のドライバ回路、あるいはユーザインタフェース装置などのカラー複写装置１の本体に対して着脱自在な接続デバイスの属性を示す情報である。
【００４４】
また、コントローラ部１００は、デバイスコンフィギュレーションＪ０に含まれている、各デバイスが使用している、アプリケーションプログラムのバージョンに関する情報（以下単にバージョン情報ともいう）Ｊ７を各デバイスから取得し、このバージョン情報Ｊ７を参照して、システム全体として、不都合が生じないようにするバージョン管理部３２０を備える。つまり、動作制御部の一例であるコントローラ部１００が、デバイスの組合せに不都合が生じないようにするバージョン管理部３２０を兼ねる構成となっている。なお、このような構成に限らず、バージョン管理部３２０をコントローラ部１００から外して独立した構成としてもよい。
【００４５】
バージョン管理部３２０は、プログラム管理用の管理テーブル（セットバージョンリスト）を保持する、書換え可能であって不揮発性のメモリ（たとえばフラッシュメモリなど）３２０ａを有する。また、メモリ３２０ａには、アプリケーションプログラムのバージョン変更を実行するための書換実行プログラムを保持しておくとよい。また、メモリ３２０ａには、各デバイス用の、バージョンアップまたはバージョンダウンのアプリケーションプログラム（バージョン変更用プログラム／デバイスプログラムともいう）を保持しておくようにしてもよい。
【００４６】
バージョン管理部３２０は、バージョン情報Ｊ７とメモリ３２０ａに保持されている管理テーブルとを照合して、バージョンの整合がない場合には、バージョンの整合が採れていない状態でのカラー複写装置１の稼働を禁止する。また、セットバージョンが成り立つように、バージョン情報Ｊ７を参照して、必要に応じて、アプリケーションプログラムのバージョン変更を制御する。たとえば、バージョン管理部３２０自身がバージョン変更のための書換処理を実行し、あるいは対象デバイスにプログラム書換え（つまりバージョン変更）を指示する。こうすることで、各デバイスのプログラムをバージョンアップもしくはバージョンダウンさせ、装置全体としての動作保証を確実なものとする。
【００４７】
また、バージョン管理部３２０は、バージョンの組合せに不都合があり、プログラムのバージョン変更では対処できない場合には、不整合を起こしているデバイスの動作を禁止する。これにより、システムの致命的エラーや、大幅な機能バージョンダウンを招かないようにする。このとき、ユーザインタフェース部１４の表示デバイス（ユーザインタフェース表示）に所定の警告メッセージを表示したり、警告メッセージを音声情報で通知したりするなどして、ユーザに必要な処置を促すとよい。
【００４８】
なお、バージョン管理部３２０を装置本体内（本例ではコントローラ部１００）に備える構成の変形例としては、メモリ３２０ａに代えて、不揮発性メモリ１３２やハードディスク装置５４などの、コントローラ部１００に設けられているメモリ３２０ａ以外の記憶装置を、管理テーブルやバージョン変更用プログラムあるいは書換実行プログラムを保持する記憶媒体として利用することも可能である。
【００４９】
あるいは、これら管理テーブルや各プログラムの記憶箇所を、Ｉ／Ｏブリッジ部１４０と接続される、接続デバイス自身の所定のメモリとしてもよい。何れの場合も、セットバージョンリストやバージョン変更用のプログラムや書換実行プログラムの記憶箇所をカラー複写装置１として用意しなければならないものの、カラー複写装置１単独で、バージョン管理処理を実行できるという利点がある。
【００５０】
なお、接続デバイスの所定のメモリを利用すれば、カラー複写装置１本体側（本例ではコントローラ部１００やバージョン管理部３２０）には、それらを用意しなくてもよいという利点がある。また、各デバイスに応じた専用のバージョン変更プログラムを記憶するメモリを本体側に設けると記憶容量が増えるのに対して、デバイスごとに設ける構成では、各デバイスに応じた専用のバージョン変更プログラムや書換実行プログラムを用意可能であるという利点がある。
【００５１】
また、管理テーブルや各プログラムは、アドインボード２５０を介してコントローラ部１００と接続されるパソコンなどが使用する、外部機器の所定の記憶装置としてもよい。また、この外部機器は、ネットワーク上のサーバとしてもよい。これらの場合、バージョン管理部３２０は、バージョン管理処理が必要になったときに、そのサーバに問い合わせて、あるいは各プログラムをダウンロードしてから、バージョン管理処理を実行する。この構成では、ネットワーク接続が採れていなければバージョン管理処理を実行できないものの、カラー複写装置１は、セットバージョンリストやプログラムの記憶箇所を用意する必要がないという利点が得られる。
【００５２】
なお、本実施形態の構成では、バージョン管理処理を実行するバージョン管理部３２０をコントローラ部１００（つまりカラー複写装置１）に備えており、セットバージョンリストやダウンロード用プログラムの記憶箇所を上述した何れとするかに拘わらず、カラー複写装置１側でバージョン管理を実行する仕組みとなる。また、管理テーブル、バージョン変更用プログラム、あるいは書換実行プログラムを装置本体（本例ではコントローラ部１００）に保持しておく構成では、カラー複写装置１がシステムバージョン管理装置３の機能を備えたものとなる。
【００５３】
処理フロー制御部３００は、たとえばＩ／Ｏブリッジ部１４０と通信接続されている接続デバイスからはＩ／Ｏブリッジ部１４０を介して、Ｉ／Ｏブリッジ部１４０と通信接続されていない接続デバイスはメモリブリッジ部１２０などを介してというように、標準インタフェースによる接続インタフェースを利用して、各接続デバイスのデバイスコンフィギュレーションＪ０を取得する。また、処理フロー制御部３００は、各接続デバイスのデバイスコンフィギュレーションＪ０に基づいてシステム全体として効率のよい処理となるように各デバイスを制御するための制御コマンドデータをその接続デバイスに通知する際にも、標準インタフェースによる接続インタフェースを利用する。
【００５４】
ここで、コントローラ部１００における各機能部分を接続する接続インタフェースとしては、ピアツーピア（Ｐｅａｒ  Ｔｏ  Ｐｅａｒ；ポイントツーポイントＰｏｉｎｔ  Ｔｏ  Ｐｏｉｎｔともいわれる）を採用した標準インタフェースが使用される。なお、好ましくは、さらに、双方向性でかつシリアル通信方式（Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ）のものを使用する。
【００５５】
ここで、標準インタフェースは、ＩＥＥＥやＪＩＳ（日本工業規格）などの非商業的組織または政府組織（公的な規格団体）によって認められた正当な（法律上の）技術的ガイドライン（ｄｅ  ｊｕｒｅ  ｔｅｃｈｎｉｃａｌ  ｇｕｉｄｅｌｉｎｅ  ）に従った、ハードウェア開発またはソフトウェア開発の領域において均一性を確立するために使用される公的なインタフェースであるのがよい。また、このような公的なインタフェースに限らず、民間団体や単一の会社にて取り纏められた私的な標準インタフェース、いわゆる業界標準インタフェース（工業標準インタフェース）や事実上の業界標準インタフェースであってもかまわない。
【００５６】
何れにしても、標準インタフェースは、ある一定の規格を満足する接続インタフェースであればよい。たとえば、ある会社によって製品または理念が開発され、成功と模倣を通じて標準からの逸脱が互換性の問題を引き起こすか、または市場性を制限する程広く使用されるようになる場合に生じるハードウェア開発またはソフトウェア開発に関する事実上の（デファクト；ｄｅ  ｆａｃｔｏ）技術的ガイドライン（非公式な規格）が、本実施形態の標準インタフェースとして採用されてもよい。
【００５７】
本実施形態において、標準インタフェースは、具体的には、ＰＣＩ規格の一例であるＰＣＩ−ＥＸ（ピーシーアイエクスプレス）であることが好ましい。ここで「ＰＣＩ−ＥＸ」とは、米国のＩｎｔｅｌ  （インテル）社が提唱し、今日、ＰＣＩ小研究グループ（ＰＣＩ−ＳＩＧ／ＳＩＧ；Ｓｐｅｃｉａｌ  Ｉｎｔｅｒｅｓｔ  Ｇｒｏｕｐ  ；ＰＣＩの普及に向けて集まった企業による非営利団体）が仕様策定を進めているもので、当初は“３ＧＩＯ（３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｉ／Ｏの略）”と称されていたシリアル転送インタフェースである。
【００５８】
この「ＰＣＩ−ＥＸ」は、パソコン内部の部品や周辺機器を接続するための新しい規格として提唱されているものであって、ＣＰＵやメモリの速度向上のペース対応するよう、主にＩ／Ｏ（Ｉｎｐｕｔ／Ｏｕｔｐｕｔ）の帯域幅向上のために開発されたものである。ＰＣＩ−ＥＸを適用してカラー複写装置１を構成すれば、機能モジュール間のインタフェースコストの削減と配線のシンプル化、データ転送の高速化、あるいは開発工数の削減ができる。
【００５９】
シリアルインタフェース（Ｓｅｒｉａｌ  Ｉｎｔｅｒｆａｃｅ）は、単一の信号線を用いて１ビットずつ順次データを送る伝送インタフェースである。このシリアルインタフェースの通信方式としては、多くのパソコンや携帯情報端末あるいは周辺機器で採用されているものとして、たとえばＲＳ−２３２Ｃ，ＲＳ−４２２，ＩｒＤＡ，ＵＳＢ，ＩＥＥＥ１３９４，ファイバ・チャネルなどがあるが、ＰＣＩ−ＥＸは、これらよりも通信速度が格段に高速である。したがって、ＰＣＩ−ＥＸを利用してカラー複写装置１を構成することで、高速処理対応可能なシステムを構築することができる。
【００６０】
なお、本明細書において、ＰＣＩ−ＥＸの定義は、本明細書の作成時点にＰＣＩ−ＳＩＧで検討されているＰＣＩ−ＥＸ規格案（２００２年７月２３日に第１次規格案がグループメンバーに配布済み）を含んでおり、また、後に正式承認されるＰＣＩ−ＥＸやその改訂版、あるいはさらにその後に拡張規格や上位規格として承認されるであろうものをも含んでいる。また、ＰＣＩ−ＥＸ互換カードまたはインタフェースに対応する何れのバスも、ＰＣＩ−ＥＸとみなし得る。
【００６１】
本実施形態において、ＰＣＩ−ＥＸを適用するに好ましい接続インタフェース部は、図２に太い実線で示すように、メモリブリッジ部１２０とＩ／Ｏブリッジ部１４０との間、Ｉ／Ｏブリッジ部１４０とスイッチ部１５０との間、スイッチ部１５０とアドオンボード２５０（たとえばＬＡＮボード１５２や１３９４ボード２５４）との間、Ｉ／Ｏブリッジ部１４０と画像取込部２１０、画像処理部２２０、画像蓄積処理部２２２、あるいは画像形成部（画像記録部）２３０との間である。また、Ｉ／Ｏブリッジ部１４０と図１に示した操作パネル１４や操作キー１６などからなるユーザインタフェース装置との間や、メモリブリッジ部１２０とグラフィックスドライバ部１６０との間に適用するのもよい。また、拡張ユニット２４０をコントローラ部１００（たとえばＩ／Ｏブリッジ部１４０）に接続する場合には、この拡張ユニット２４０との間に関しても、ＰＣＩ−ＥＸを適用するとよい。勿論、図２に示した例は一例であって、他の接続インタフェースについてもＰＣＩ−ＥＸを適用することは可能である。
【００６２】
なお、操作パネルや操作キーなどからなるユーザインタフェース部１４とＩ／Ｏブリッジ部１４０との間に、図中点線で示すユーザインタフェースドライバ１６２を配してもよい。この場合、ユーザインタフェース（Ｕ／Ｉ）ドライバ１６２とＩ／Ｏブリッジ部１４０との間およびグラフィックスドライバ部１６０と操作パネル１４や操作キー１６などのユーザインタフェース装置との間の内の少なくとも一方（一方の場合はＩ／Ｏブリッジ部１４０側が好ましい）を、ＰＣＩ−ＥＸにて接続してもよい。
【００６３】
カラー複写装置１において、コントローラ部１００は、複写機能や印刷機能などのハードウェア部分、たとえば画像取込部２１０、画像処理部２２０、画像蓄積あるいは画像形成部（画像記録部）２３０といった各デバイス間の、画像データの入出力系の相互接続に関して、各デバイス間を同時に流れる大量のデータを絶え間なく管理するとともに、複写装置やプリンタ装置などの機能を果たすよう、各デバイスを制御しなければならない。高速処理が要求される場合、そのマシンサイクルを高めなければならない。この場合、ＣＰＵ１１０やメインメモリ１３０などの高速化、大量の計算を必要とするアプリケーション、コネクティビティ（接続性）の向上などに適応するには、画像データや制御コマンドデータなどの、種々のデータの流れの速度（内部バンド幅）も高速化していく必要がある。この高速化対応は、パラレルバスを用いた場合、難しかった。
【００６４】
これに対して、ＰＣＩ−ＥＸの特徴部分であるシリアルインタフェースは、複数の信号線を利用するパラレルインタフェースに比べ、配線数が減りインタフェースコストを低減することができ、また信号線同士でのデータのずれや不ぞろい（スキュー）がなく、また信号線同士が電圧の影響を与え合うクロストーク現象も起こらない。パラレル通信方式の場合に必要であったデータの同期をとる必要がなくなり、コントローラを構成するＣＰＵのクロックの向上に合わせて、画像形成に関わる機能部分の処理を高速化することができる。
【００６５】
また、ＰＣＩ−ＥＸのようにピアツーピア接続とすることで、伝送ラインを、時分割ではなく専用してデータ転送することができる。たとえば、コントローラ部１００（詳しくはＩ／Ｏブリッジ部１４０）に対して各接続デバイスを“ピアツーピア”接続する構成とすることで、Ｉ／Ｏブリッジ部１４０と各接続デバイスとの間で画像データや制御信号の入出力が必ずなされるようになる。
【００６６】
このように、シリアルインタフェースやピアツーピア接続は高速かつ長距離のデータ転送に適しており、画像形成装置のシステムアーキテクチャに利用することで、画像データや制御コマンドデータなどの、種々のデータの流れの速度を高速化していくことが、低コストかつ簡易に実現できるようになる。高速・長距離のデータ転送が可能となり、加えて、機能モジュール（デバイス）の組替えが容易となり、画像形成装置の高機能化や高速化を図る際の自由度が増す。画像形成に関わる機能部分が高速処理可能となるから、システムスループットの向上したカラー複写装置１を実現することができる。
【００６７】
また、カラー複写装置１を実質的に１つのコンピュータとすることができ、またネットワーク化も容易となる。また、コントローラ部にオペレーティングシステムＯＳや画像形成に関わる各機能部分あるいは周辺デバイスを制御するためのアプリケーションプログラムを組み込むようにすれば、機能モジュールの汎用性、適用性の向上、拡張性の向上、あるいは資源の共有を図ることができる。
【００６８】
また、これらのことから、装置の製造メーカにとっては作り易く、ユーザにとっては使い勝手のよいものとなる。たとえば、機能モジュール（ハードウェアに限らずソフトウェアも含む）のバージョンアップや機能モジュールの組合せを変えることで、高性能化、多機能化、あるいは高速化を図る場合に、それらの変更に応じて、コントローラ部にインストールするアプリケーションプログラムを変更するだけで、変更後の機能モジュールを適切に制御して使用することができる。バージョンアップをしたり機能モジュールの組合せを変えたりしても、コントローラ部に対する機能モジュールの接続構成は変わらないので、それらの変更に応じたアプリケーションプログラムの更新設計は容易である。
【００６９】
また、ＰＣＩ−ＥＸなどの標準インタフェースを利用して各機能ブロック間の接続をとることで、複写装置とクライアント端末間のデータ受渡し用のインタフェースを有線ＬＡＮやＩＥＥＥ１３９４などの汎用規格とすることができる。コントローラ部を、パソコンのマザーボードと同様の構成にすることができるので、パソコン市場の安価な部品を流用してカラー複写装置１を構成することができる。ＰＣＩ−ＥＸなどの標準インタフェースをカラー複写装置１の基本アーキテクチャに採用すると、容易に入手可能なコンピュータのアクセサリや周辺機器をデジタル複写装置などにおいて簡単にかつ安価に利用することが可能となる。
【００７０】
また、ＰＣＩ−ＥＸなどの標準インタフェースを利用して各機能ブロックを接続することで、マザーボード・チャンネルをはじめとする電気設計の制約がなくなり、ハードウェアＨ／Ｗ（電気回路）レイアウトの自由度や独立性が高くなる。よって、ハードウェア設計上の制約から解放され、従来のパラレルバスの延長線上では不可能であった高機能化や高速化を、容易かつ低コストで実現することができる。たとえば、画像取込部、画像処理部、あるいは画像形成部（画像記録部）などの画像形成に関わる機能部分（デバイス）をコントローラ部が搭載されるプリント基板とは各別のプリント基板に搭載すれば、各デバイスをコントローラ部１００から離れたところに分散配置することも容易で、柔軟性およびスケーラビリティ（Ｓｃａｌａｂｉｌｉｔｙ  ）を与える。
【００７１】
＜＜バージョン管理手法＞＞
一方、上述のようなアーキテクチャを採ると、各機能モジュールや周辺デバイスなどを任意に取り替えて装着することができるので、従来のように、各デバイスとコントローラとが一義的な組合せしか取り得ない場合では生じ得ない新たな問題が生じ得る。たとえば、各機能モジュールが任意に接続可能であるため、各機能モジュールと想定できないバージョン組合せが発生し得るので、カラー複写装置１全体としても動作保証に問題が生じ得る。従来のように、各機能部分とコントローラ（システムソフトウェア）のセットバージョンとが一義的に決められた複写機の構成で行なわれているような単純なプログラム更新では対応することは困難である。
【００７２】
そこで、この対策のために、図１に示したように、本実施形態のカラー複写装置１は、各機能モジュールのバージョンがセットバージョンで許容されていない組合せとならないようにする仕組みとして、周辺デバイスが使用しているアプリケーションプログラムのバージョンに関するバージョン情報Ｊ７を、各デバイスから取得し、このバージョン情報Ｊ７を参照して、システム全体として、不都合が生じないようにするバージョン管理部３２０を備えている。以下、バージョン管理部３２０の機能について詳しく説明する。
【００７３】
図２は、処理フロー制御部３００とバージョン管理部３２０の詳細例を説明する図である。ここで、図２（Ａ）は、ＰＣＩ−ＥＸの接続インタフェースを利用した制御系統を示す図である。この制御系統では、たとえば、各接続デバイスのデバイスコンフィギュレーションＪ０を取得するとともに、デバイスコンフィギュレーションＪ０に基づいて決定したデータパスルートを制御するための指令を各デバイスに通知する。図２（Ｂ）は、各接続デバイスに設けられる電源回路系およびデバイスコンフィギュレーションＪ０の本体側への通知に着目した機能ブロック図である。
【００７４】
図２（Ａ）に示すように、処理フロー制御部３００は、接続デバイスの属性を示す情報であって接続デバイスの動作仕様に関する情報であるデバイスコンフィギュレーションＪ０を各接続デバイスから取得するデバイス情報取得部３０２（画像処理機能情報取得部の一例）と、表示デバイスに提示された表示メニュー上のソフトキーやハードウェア（機構的な）の操作キーを介したユーザ指示による動作条件を受け付けるユーザ指示受付制御部３０４（動作条件取得部の一例）とを備える。たとえば、ユーザ指示受付制御部３０４は、たとえば、カラー複写装置１の持つ本来的な機能である複写機能としての動作なのか、それとも付加的な機能であるプリンタ機能としての動作なのかを、受け付ける。
【００７５】
また処理フロー制御部３００は、ユーザ指示に従った各機能の動作が最短でなされるように各部の動作タイミングを決定し、決定したタイミングで各部が動作するよう制御するタイミング制御部３０６と、デバイス情報取得部３０２が取得した画像処理機能情報Ｊ６に基づきユーザ指示に従った動作が効率的になされるように画像データのパスルートを制御するデータパス制御部３０８とを備える。
【００７６】
デバイス情報取得部３０２は、ＣＰＵ１１０の制御の元で、画像取込部２１０などの画像形成機能部、周辺デバイス用のドライバ回路、あるいはユーザインタフェース部１４など、カラー複写装置１の本体に任意に着脱される各接続デバイスから、これら接続デバイスとＩ／Ｏブリッジ部１４０あるいはメモリブリッジ部１２０との接続インタフェースをなすＰＣＩ−ＥＸを利用して、バージョン情報Ｊ７を含む各デバイスのデバイスコンフィギュレーションＪ０を取得する。なお、デバイス情報取得部３０２は、コントローラ部１００やユーザインタフェース部１４など、ほぼ装置に固定的に取り付けられているデバイスに関しても、それらのバージョン情報Ｊ７を取得する。
【００７７】
デバイス情報取得部３０２は、取得したデバイスコンフィギュレーションＪ０に含まれている種々の情報のうちバージョン情報Ｊ７については、バージョン管理部３２０に通知する。バージョン管理部３２０は、このバージョン情報Ｊ７を参照して、各デバイスのプログラムバージョンと、自身のプログラムバージョンの組合せが、システムとして問題ないか、自身の記憶装置（不揮発性メモリ）に記録されているプログラム管理用テーブルのバージョンリストと比較する。
【００７８】
比較結果に問題があるとき、バージョン管理部３２０は、セットバージョンにあったプログラムの、対象デバイスへのダウンロードを指示する。あるいは、その時点のデバイス組合せで整合の採れるセットバージョンに変更する。このセットバージョンの変更で、整合が採れないときには、さらに整合が採れるように、何れかのデバイスのプログラムバージョンを変更する。また、何れの場合も、必要に応じて、コントローラ側ソフトのバージョンも変更する。
【００７９】
また、セットバージョンにあった各モジュールのプログラムをバージョンアップもしくはバージョンダウンすることで成り立たない場合、あるいはバージョンアップやバージョンダウンできないシステムである場合は、バージョン不整合を起こしているデバイスの使用を禁止する。
【００８０】
図２（Ｂ）に示すように、各接続デバイスには、コントローラ部１００の制御の元で接続デバイスのデバイスコンフィギュレーションＪ０をコントローラ部１００（の処理フロー制御部３００）に通知する機構が設けられる。たとえば、電源回路４００は、カラー複写装置１のメイン電源が投入されることでシステム電源部（図示しない）から所定電圧の電源（ＵＮＳＷ）の供給を受けて、システムのメイン電源がオンされている限り常に稼働する機能部分である常時稼働部４０２と、システム電源部から所定電圧の電源（ＵＮＳＷ）の供給を受けて安定化した２次電圧を生成するスイッチング電源４０４と、スイッチング電源４０４から電力供給を受けて稼働する機能部分であるスイッチ稼働部４０６とを備える。
【００８１】
図示する例では、スイッチ稼働部４０６は、スイッチング電源４０４の電源出力であるＳＷ系統ＰＷ１〜ＰＷ５のうち、ＰＷ１〜ＰＷ３の供給を受けて動作する機能部分の他に、ＰＷ４，ＰＷ５というパワーセーブ系統からの供給を受けて動作するパワーセーブ部４０７を有する。常時稼働部４０２には、たとえば、その接続デバイス内の各部を制御するデバイスシステム制御部やＰＣＩ−ＥＸを利用した接続インタフェース部をなす送受信回路などが設けられる。
【００８２】
また、本体側の処理フロー制御部３００からの要求を受け、電源コンフィギュレーションＪ１や画像処理機能情報Ｊ６あるいはバージョン情報Ｊ７を含むデバイスコンフィギュレーションＪ０を通知するデバイス情報通知部の機能も設けられる。たとえば、デバイスシステム制御部には不揮発性のメモリが設けられ、このメモリの所定の格納部（コンフィグレーションレジスタ）には、各接続デバイスの属性を示す情報であって接続デバイスの動作仕様に関するデバイスコンフィギュレーション（接続デバイスに固有のシステム情報）Ｊ０が記録される。
【００８３】
たとえば、接続デバイスがスキャナ（画像取込部２１０）である場合、読取解像度や有効画像サイズあるいは各種原稿検知機能の判定結果算出時間、プロセス速度、スキャン開始命令から実際にデータが送出されるまでの時間などの機種ごとの詳細動作仕様が画像処理機能情報Ｊ６として記録される。また、デバイスコンフィギュレーション（システム情報）Ｊ０の中には、接続デバイスの消費電力（定格値や最大値の何れでもよい）に関する情報である電源コンフィギュレーションＪ１も記録される。さらに、デバイスコンフィギュレーションＪ０の中には、デバイスのバージョン情報Ｊ７が記録される。
【００８４】
図３は、バージョン管理部３２０におけるバージョン管理手順の一例を示すフローチャートである。たとえば、コントローラ部１００に画像取込部２１０、画像処理部２２０、画像記録部２３０などの各デバイスが接続された状態でメインスイッチがオンされると（Ｓ１００−ＹＥＳ）、装置全体が先ずパワーオンリセットされる。この後、システム電源部（図示せず）がカラー複写装置１の各部（コントローラ部１００や各デバイス）に所定電圧の電源（ＵＮＳＷ）を共通に供給する（Ｓ１０２）。これを受けて、先ずコントローラ部１００のパワーマネージメント機能部はＳＷ系統制御信号ＣＴ１およびパワーセーブ制御信号ＣＴ２をオフに設定する（Ｓ１０４）。よって、各接続デバイスは、常時稼働部４０２のみが動作するようになる。
【００８５】
次に、コントローラ部１００のＣＰＵ１１０は、各接続デバイスのコンフィグレーションレジスタの値を読み込む（Ｓ１０８，Ｓ１１０）。なお、パワーオン時に限らず、メイン電源が入れられたままでデバイス接続が変更されても（ホットアンドプラグ）、各デバイスのコンフィギュレーションレジスタの値を再取得する（Ｓ１０９−ＹＥＳ）。また、ダウンロード用パソコンなどの外部機器から要求を受けたときにも、各デバイスのコンフィギュレーションレジスタの値を再取得するようにしてもよい。
【００８６】
これにより、コントローラ部１００には、各デバイスのドライバおよびユーティリティが用意（登録）される。たとえば、スキャナからのコンフィグレーションレジスタの値を読み込むと、スキャナのユーティリティとして、プロセススピードによる消費電力（スタンバイ時の値や動作最大値など）に関する電源コンフィギュレーションＪ１や、デバイスが使用しているソフトウェアのバージョン情報Ｊ７、さらには、読取解像度や有効画像サイズなど、ユーザ指示に従った動作が効率的になされるように画像データのパスルートや動作シーケンスなどを決めるための処理時間ＦＣＯＴに関わるＦＣＯＴ関連情報Ｊ５や画像処理機能情報Ｊ６が取得され登録される。
【００８７】
なお、一旦取り込んだデバイスコンフィギュレーションＪ０は、コントローラ部１００に設けられた不揮発性メモリ１３２やハードディスク装置５４に保持しておくとよい。ステップＳ１１１にてデバイスコンフィギュレーションＪ０を接続デバイスから読み込む前にデバイス認証をした際、既に不揮発性メモリ１３２に登録済みデバイスであれば、デバイスコンフィギュレーションＪ０を再度読み込む必要がなくなる。
【００８８】
ＣＰＵ１１０は、このような各デバイスのユーティリティ情報の中から、バージョン情報Ｊ７を抽出し、このバージョン情報Ｊ７をバージョン管理部３２０に通知する。またバージョン情報Ｊ７を抽出してバージョン管理部３２０に通知する（Ｓ１１２）。これにより、バージョン管理部３２０は、各デバイスのアプリケーションプログラムのバージョンを把握することができる。
【００８９】
バージョン管理部３２０は、各デバイスのプログラムバージョンと、自身のプログラムバージョンの組合せが、システムとして問題ないか、自身の記憶装置にあるセットのバージョンリスト（テーブル）と比較する（Ｓ１１４）。
【００９０】
比較結果に問題があるとき、すなわち現在のデバイス組合せではバージョンの整合が採れていない場合には（Ｓ１１６−ＮＯ）、対象のデバイスについて、セットバージョンに合致したプログラムの、対象デバイスへのダウンロードを実行する（Ｓ１１８）。また、必要に応じて、コントローラ部１００側のソフトのバージョンも変更する。バージョン変更は、許容される限り、バージョンアップおよびバージョンダウンの何れを採ってもよい。
【００９１】
「許容される限り」といったのは、たとえばソフトウェアのバージョンとともにハードウェアのバージョンも合致している必要があり、バージョン変更が許容されない場合があり得るからである。また、たとえば、バージョンダウンは可能でも、バージョンアップができない場合や、その逆もあり得るからである。これらを纏めて、以下、バージョン変更できないケースという。
【００９２】
ここで、何れのデバイスをバージョン変更の対象とするかは、様々な考え方がある。たとえば、セットバージョンを固定して、そのセットバージョンに適合しないデバイスについて全てダウンロードを行なう考え方である。また、セットバージョンを変えた方が、バージョン変更対象のデバイス数が少なくなる場合には、セットバージョンを変えるようにしてもよい。何れにしても、最終的なセットバージョンにおけるデバイスが全て整合の採れるものであればよい。
【００９３】
上述のようにしてバージョン変更で不整合を解消できた場合には、通常の処理に移行する（Ｓ１２０−ＹＥＳ）。一方、バージョン変更ではセットのバージョンリストに適合する組合せが見つからない場合やバージョン変更できないケースでは（Ｓ１２０−ＮＯ）、バージョン不整合を起こしているデバイスの使用を禁止し、通常の処理に移行する（Ｓ１２２）。
【００９４】
通常の処理に移行すると（Ｓ１３０）、たとえば電源コンフィギュレーションＪ１を参照した電源管理（パワーマネージメント）を行なう。また、ユーティリティの情報に基づいて、デバイスの組合せに応じた装置全体として適切なユーザインタフェースを決定し、ソフトキーを具備する表示メニューを生成し、あるいはハードキーの機能割り付けをする。また、タイミング制御部３０６は、ユーザ指示受付制御部３０４が受け付けたユーザ指示に従い、ＦＣＯＴ関連情報Ｊ５や画像処理機能情報Ｊ６を参照して、装置全体として適切な（好ましくはベストな／処理時間ＦＣＯＴが最短となる）動作シーケンスの設定処理などを開始する。
【００９５】
たとえば、タイミング制御部３０６は、スタートボタンが押された後の転送終了後に、それぞれが持つ処理能力で処理待機状態（Ｓ１３４）にある各接続デバイスに対して、所定のタイミングで、一斉にスタートを知らせる制御コマンド（スタートコード；動作開始指示）を送出する（Ｓ１３６）。各デバイスは、タイミング制御部３０６から受け取ったスタートコードをトリガとして、各機能部を動作させる（Ｓ１３８）。
【００９６】
また、処理フロー制御部３００は、全デバイスに一斉にスタートを知らせる制御コマンドを送出した後（Ｓ１３６）の装置動作実行中には、各デバイス間のデータや通信状態をモニタし、動作状態に異常がある場合、その状態に合わせた対応（フィードバック制御）を行なう。また、異常がない場合、動作条件が変更される、パワーセーブモード（待機状態／スリープモードなども含む）に設定される、あるいはメイン電源がオフされるまで、動作フロー制御処理手順を待機状態にする（Ｓ１４０）。また、メイン電源がオフされると、システム電源部は、常時オン系統を除いて、全ての電源供給（ＵＮＳＷ）を停止し、メイン電源が再投入されるのを待つ（Ｓ１４０−メインＳＷ）。
【００９７】
なお、処理フロー制御部３００は、待機状態から通常モードへ復旧する際も、ユーティリティの情報に基づいて、装置全体として適切な処理シーケンスとなるよう各部を制御する（Ｓ１４０−復帰，Ｓ１１６〜Ｓ１３８）。また、動作モードが変更された場合にも、ユーティリティの情報に基づいて、新規な動作モードの元においても、装置全体として適切なユーザインタフェースを決定し、ソフトキーを具備する表示メニューを生成し、あるいはハードキーの機能割り付けをし、その後ユーザ指示を受け付け、装置の各部を制御する（Ｓ１３０−ＹＥＳ，Ｓ１１４〜Ｓ１２８）。
【００９８】
これらの通常の処理に移行した後の処理手順の詳細については本願と直接的な関わりがないので、詳細な説明を割愛する（本願出願人に係る特願２００２−２７３９５８号、同２００２−２７５０８５号、同２００２−２７５０８６号などを参照）。
【００９９】
図４は、バージョン管理部３２０の機能における一具体例を説明する図である。ここで、図４（Ａ）に示す図表の左端の欄に記載の“セット”は、システム動作を保証する、プログラムのバージョンの組合せ、すなわちデバイス組合せが許容される条件を示す。
【０１００】
ここで、たとえば、あるデバイスの組合せにて装置を設置したときのセットバージョンが２．０であったとする。そして、この時点では、デバイスのバージョンの組合せに不整合がなく、図４（Ａ）の図表に示す通りであったとする。この後、図４（Ｂ）に示すように、ユーザにより、たとえばプログラムバージョンが１．０の画像取込部２１０（ＩＩＴ）に付け変えられた場合を考える。
【０１０１】
この場合、その付け替えられたデバイス（ＩＩＴ）は、セットバージョン２．０には適合しないものとなる。そこで、バージョン管理部３２０は、画像取込部２１０（ＩＩＴ）のプログラムバージョンを１．０から２．０のプログラムに自動的にバージョンアップさせる。これにより、ユーザは特段の意識をすることなく、セットバージョン２．０として、付け替えたデバイス（ＩＩＴ）を使用可能となる。
【０１０２】
また、図４（Ｃ）に示すように、あるデバイスの組合せにて装置を設置したときのセットバージョンが３．０で正常であったものが、ユーザ希望により、画像記録部２３０（ＩＯＴ１）から画像記録部２３０（ＩＯＴ２；バージョン３．０）に取り換えられシステムに組み込まれた、あるいは、画像記録部２３０（ＩＯＴ１）が取り付けられたままで、画像記録部２３０（ＩＯＴ２；バージョン３．０）が追加接続されたとする。この場合、図４（Ａ）の図表に示す通り、そのデバイス（ＩＯＴ２）は、セットバージョン３．０ではサポートできないものとなっている。このため、バージョン管理部３２０は、セットバージョンを２．０（あるいは１．０でもよい）にバージョンダウンする。
【０１０３】
これとともに、セットバージョンとバージョン整合を採る必要のあるデバイスのプログラムもダウンロードして更新する。本例では、全てのデバイスについて、現在インストール済みのバージョンをバージョンダウンする。こうすることで、セットバージョンのダウンが伴うものの、ユーザは特段の意識をすることなく、セットバージョン２．０もしくは１．０として、付け替えたデバイス（ＩＯＴ２）を使用可能となる。
【０１０４】
以上のように、本実施形態の構成では、接続デバイスの動作仕様を示すデバイスコンフィギュレーションＪ０を取得し、その中のデバイスのソフトウェアバージョンに関わる情報（バージョン情報Ｊ７）に基づいて、各機能モジュールのバージョンがセットバージョンで許容されていない組合せとならないように、必要に応じてデバイスプログラムのバージョンやセットバージョンを変更したり、あるいは不整合デバイスの使用を禁止したりするようにした。
【０１０５】
これにより、いかなる接続デバイスが装置に組み合わされた場合であっても、その組合せに対応した最適なセットバージョンが成り立つように、プログラムをバージョンアップあるいはバージョンダウンすることができる。そしてこれにより、装置全体としての動作保証が可能となる。バージョン変更では対応できないときには、不整合を起こしているデバイスの動作を止めることで、システムの致命的エラーや大幅な機能ダウンを招かないようにすることができる。また所定の警告表示を行なうことで、ユーザに適切な処置を促すこともできる。
【０１０６】
以上、本発明を、実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。発明の要旨を逸脱しない範囲で上記実施形態に多様な変更または改良を加えることができ、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれる。
【０１０７】
また、上記の実施形態は、クレーム（請求項）にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組合せの全てが発明の解決手段に必須であるとは限らない。前述した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組合せにより種々の発明を抽出できる。実施形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られる限りにおいて、この幾つかの構成要件が削除された構成が発明として抽出され得る。
【０１０８】
たとえば、上記実施形態では、セットバージョンリストとダウンロード用プログラムの記憶箇所やバージョン照合およびダウンロード指示を実施する箇所をコントローラ部１００内やバージョン管理部３２０（つまりカラー複写装置１側）としていたが、必ずしもこのような構成に限定されない。たとえば、コントローラ部１００が接続されるネットワーク上のサーバや、コントローラ部１００と接続されているアドインボード２５０のＵＳＢボード２５６や１３９４ボード２５４（纏めてコントローラＩＯともいう）に接続される外部機器（ダウンロード用ＰＣ）に、バージョン管理部３２０に相当する機能を持たせて、システム（装置）の外部からの遠隔操作で、バージョン管理を実行する仕組みとすることもできる。この構成では、管理センタなどで、ユーザサイドに設けられている装置のバージョンを集中管理することが可能になるという利点が得られる。
【０１０９】
また、上記実施形態では、カラー複写装置１側に設けられているバージョン管理部３２０が更新対象デバイスに対してのダウンロード作業を実行する仕組みとしていたが、必ずしもこのような構成に限らない。たとえば、ダウンロード用プログラムを各デバイス自身に持たせ、バージョン管理部３２０がダウンロード作業を行なうのではなく、更新対象のデバイスに更新作業を行なうように指示する仕組みとしてもよい。
【０１１０】
また、上記実施形態では、処理フロー制御部３００やバージョン管理部３２０を独立したハードウェア要素として設ける例で説明したが、この処理フロー制御部３００やバージョン管理部３２０の機能部分を、コントローラ部１００に組み込まれるソフトウェアで構成してもよい。こうすることで、動作フロー制御処理やバージョン管理処理を柔軟に変更可能となる。
【０１１１】
また、上記実施形態では、コントローラ部と画像形成機能部の間の接続インタフェースとして、ＰＣＩ−ＥＸなどの標準インタフェースを用いたが、これに限らず、設計者またはユーザの要求事項を満足する、他のあらゆる“ピアツーピア”の接続態様を採る接続インタフェース部を適用してもかまわない。たとえばＩＥＥＥ１３９４やＵＳＢ１．１やＵＳＢ２．０の規格に基づく接続仕様を適用可能である。
【０１１２】
また、上記実施形態では、ＰＣＩ−ＥＸなどの標準インタフェースを用いたＩ／Ｏブリッジ部１４０との接続を、画像取込部２１０や画像処理部２２０など、比較的大きな機能ブロックで分け機能モジュールとして取り扱っていたが、たとえば画像処理部２２０については、色変換部や下色除去部など、より小さな機能ブロックに分けて取り扱ってもよい。
【０１１３】
また、上記実施形態では、可視画像を所定の記録媒体上に形成する画像形成装置におけるデバイス整合について説明したが、上記実施形態のデバイス整合の手法やそのためのシステム構成は、画像形成装置に限らず、パソコンをはじめとする他の情報処理装置（電子機器）にも同様に適用可能である。
【０１１４】
つまり、交換自在な複数のデバイスが組み合わされて構成されているシステムや装置については、上記実施形態で示したバージョン管理方法を同様に適用可能であり、かつ、同様の効果を享受可能である。各機能部分（デバイス）がスター状に接続されたシステム構成であることは必須ではない。たとえば、特許文献１（特開２０００−１５１８７８号公報）に記載のように、パラレルＰＣＩインタフェースを用いた装置やシステムであっても、上記実施形態のバージョン管理方法を利用してデバイス整合を採る技術を適用可能である。
【０１１５】
また、たとえば、自動車システムを情報処理装置として捉える場合、クライアントのハンドル操作により指示された運転動作制御（情報処理）に関連する各機能部分が情報処理機能部となり、その情報処理機能部の動作を制御する機能部が動作制御部である。そして、この場合においても、動作制御部を中心として運転動作制御に関連する各機能部分をスター状に接続したシステム構成とし、各機能部分について、デバイス整合が確実に採れるように管理することとすればよい。勿論、この場合にも、各機能部分がスター状に接続されたシステム構成であることは必須ではない。
【０１１６】
【発明の効果】
以上のように、本発明によれば、デバイス組合せとして許容される条件を予め管理テーブルに登録しておき、実際にシステムや装置を構成するデバイスの各バージョン情報を取得し、管理テーブルと照合することで、バージョン整合の有無を確認する。バージョン不整合があれば、その状態のままでの装置稼働を禁止する。つまり、デバイスの組合せに不都合のある状態での動作を禁止する。
【０１１７】
また、必要に応じて、各機能モジュールのバージョンがセットバージョンで許容されていない組合せとならないように、デバイスプログラムのバージョンやセットバージョンを変更したり、あるいは不整合デバイスの動作を禁止しつつ、残りのデバイスでの動作を許可したりする。
【０１１８】
これにより、いかなる接続デバイスが装置に組み合わされた場合であっても、装置全体としては、異常な動作を引き起こさないようにすることが可能となる。
【図面の簡単な説明】
【図１】本発明に係る情報処理システムを適用した、カラー複写装置のシステムアーキテクチャの一例を示す図である。
【図２】処理フロー制御部およびバージョン管理部の詳細を説明する図である。
【図３】バージョン管理部におけるバージョン管理手順の一例を示すフローチャートである。
【図４】バージョン管理部の機能における一具体例を示す図表である。
【符号の説明】
１…カラー複写装置、３…システムバージョン管理装置、１００…コントローラ部、１１０…ＣＰＵ、１２０…メモリブリッジ部、１３０…メインメモリ、１３２…不揮発性メモリ、１４０…Ｉ／Ｏブリッジ部、１５０…スイッチ部、１６０…グラフィックスドライバ部、２１０…画像取込部、２２０…画像処理部、２２２…画像蓄積処理部、２３０…画像形成部（画像記録部）、２４０…拡張ユニット、２５０…アドオンボード、２５２…ＬＡＮボード、２５４…１３９４ボード、２５６…ＵＳＢボード、３００…処理フロー制御部、３０２…デバイス情報取得部、３０４…ユーザ指示受付制御部（動作条件取得部）、３０６…タイミング制御部、３０８…データパス制御部、３２０…バージョン管理部
【図１】
2004287993.tif 000003
【図２】
2004287993.tif 000004
【図３】
2004287993.tif 000005
【図４】
2004287993.tif 000006