(57)【要約】【課題】  複数のマルチＰＤＬボードを装着したＭＦＰシステムにおいて、ユーザーがプリントする際、ＰＤＬ言語に応じて必要なファームをダウンロードし、もしくは、複数のマルチＰＤＬボードを組み合わせて、効率よくプリントする。【解決手段】  各ＰＤＬボードのパフォーマンス検知手段、ＰＤＬファームダウンロード手段、ユーザーからのプリント要求に対して、必要なＰＤＬボードを組み合わせ、必要なＰＤＬファームダウンロードする手段。【選択図】  図１
2006146664.tif 000002
【特許請求の範囲】
【請求項１】
バス上に少なくとも第一のPDLボードと第二のPDLボードが装着でき、それぞれのPDLボ―ドを選択し、もしくは組み合わせプリント出力を得るプリントシステムにおいて、クライアントから送信される各種のPDLファイルに応じて、それぞれのPDLにボードに必要な制御プログラムをダウンロードする手段と、PDLファイルに応じて、画層を展開するPDLボードの組み合わせを決定することを特徴とするプリントシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、システムバス上に複数のPDLボードが装着できるプリントシステムに関し、装置が共通バスを占有し、特にクライアントから送信される各種のPDLファイルに応じて、それぞれのPDLにボ―ドに必要な制御プログラムをダウンロードする手段と、各種のPDLファイルに応じて、画層を展開するPDLボードの組み合わせを決定することを特徴するプリントシステム。
【背景技術】
【０００２】
近年、ネットワーク化が進み、プリンタもローカルプリンタからネットワークの中に組み込まれ、さらに複写機との複合化によって、複写機内部にプリンタコントローラ装置を組み込み、１台で複写機とプリンタ両方に利用できる複合機が市場で発売されている。また、さらにＦＡＸ装置の追加などさらに多機能化してきている。このようなネットワーク化に伴って、接続するユーザーも増加し、また、それぞれのユーザーから要求されるさまざまなユーザーニーズに対応するための工夫が試みられている。例えば、この様な問題点を解決する手段として、これら複合機内部の装置間の接続を共通化されたバスによって接続し、さまざまなユーザーニーズに対応するため拡張性を持たせた複合機も提案されている。（特許文献１参照）
【特許文献１】特開2002-229751号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
このような複合機内部に装着されるプリンタコントローラは、あるページ記述言語、例えば、PS、LIPS等に特化したコントローラになっており、複数のページ記述言語に対応するためには、それぞれ必要なページ記述言語に対応したプリンタコントローラを個別に装着する必要があった。しかしながら、このように複数のプリンタコントローラを装着しながら、それぞれプリンタコントローラはある一つのページ記述言語のみに特化しているため、あるページ記述言語でプリントする際には、他のページ記述言語のプリンタコントローラの持つ能力、すなわちハードウェア資産を活用できないシステムとなっていた。
【課題を解決するための手段】
【０００４】
上記問題を解決するために、本発明では、装着されるプリンタコントローラに対しページ記述言語の制御プログラムをダウンロードする機能を設け、ダウンロードされるページ記述言語の制御プログラムによって一つのプリンタコントローラで複数のページ記述言語記述言語に対応できるようにする手段と、受けるページ記述言語に対応して、そのページ記述言語の制御プログラムをダウンロードすることによって、装着される複数のプリンタコントローラの有効的な活用を行い、また、受けるページ記述言語に対応して、装着されるプリンタコントローラの選択および組み合わせを行い、効率良くプリントを行う手段を備える。
【発明の効果】
【０００５】
以上詳述したように、本発明によれば、装着されるプリンタコントローラに対しページ記述言語の制御プログラムをダウンロードする機能を設け、ダウンロードされるページ記述言語の制御プログラムによって一つのプリンタコントローラで複数のページ記述言語記述言語に対応できるようにする手段と、受けるページ記述言語に対応して、そのページ記述言語の制御プログラムをダウンロードすることによって、装着される複数のプリンタコントローラの有効的な活用を行い、また、受けるページ記述言語に対応して、装着されるプリンタコントローラの選択および組み合わせを行い、効率良くプリントを行う効果がある。
【発明を実施するための最良の形態】
【０００６】
以下に、添付図面を参照して、本発明の好適な実施例を詳細に説明する。
【０００７】
図１は本発明の実施例におけるシステムの全体構成を示す、複写機複合機の概略ブロック図である。同図において、１０１はページ記述言語で記述されたファイルに基づいて画像メモリにラスタイメージ画像を展開するＰＤＬユニット１、１０２は同様にページ記述言語で記述されたファイルに基づいて画像メモリにラスタイメージ画像を展開するＰＤＬユニット２である。
【０００８】
これらは、ページ記述言語の制御プログラムをダウンロードする機能を有し、ダウンロードされたページ記述言語の制御プログラムによって、複数のページ記述言語に対応できるようになっている。例えば、ＰＤＬユニット１（１０１）にＬＩＰＳ言語、ＰＤＬユニット２（１０２）にＰＳ言語の制御プログラムをダウンロードすれば、同時に２つのページ記述言語に対応できるようになっている。
【０００９】
これらの制御プログラムは、マスタ制御ブロック１１６内のハードディスク１１１に格納されており、CPU１１１によって、適宜選択され、スキャナ／プリンタ.Ｉ／Ｆ１１２内のCPU１１１の制御の基にDMAコントローラ１２１によって、各PDLユニットに転送される。
【００１０】
１０３はネットワーク１０８に接続される、図示はしないホストコンピュータより、各種コマンドやプリントされるページ記述言語ファイルをやり取りするネットワークＩ／Ｆ、１０４はＴＥＬケーブル１０６に接続され、公衆回線１０７より画像をやり取りするＦＡＸユニット、１１６はそれぞれのユニットとスキャナ／プリンタ１１３を接続し制御するマスタ制御ブロックであり、システムバス１０５にて、それぞれのユニットと接続し制御を行っている。
【００１１】
システムバス１０５は、ＣＬＫ１２０、ＲＥＱ−Ｐ１、ＲＥＱ−Ｐ２、ＧＮＴ−Ｐ、ＲＥＱ−Ｎ、ＧＮＴ−Ｎ、ＲＥＱ−Ｆ、ＧＮＴ−Ｆを含む。
【００１２】
ＣＬＫ１２０は、マスタ制御ブロック１１６内のバスアービター１０９の制御によって、バスアービター１０９内のクロックジェネレータ２０８から発生し、ＰＤＬユニット１０１、１０２、ネットワークＩ／Ｆ１０３、バスアービター１０９、スキャナ／プリンタＩ／Ｆ１１２に供給されている。
【００１３】
このシステムバス１０５は、上述したユニット以外でもさまざまなユニットが装着できるようになっており、さまざまなユーザーニーズに対応できる、複写機複合機を構成できるようになっている。
【００１４】
ＲＥＱ−Ｐ１、ＲＥＱ−Ｐ２、ＲＥＱ−Ｎ、ＲＥＱ−ＦはそれぞれＰＤＬユニット１０１、１０２、ネットワークＩ／Ｆ１０３、ＦＡＸユニット１０４から出力され、バス１０５専有リクエストとして、マスタ制御ブロック１１６内のバスアービター１０９に入力される。
【００１５】
バス専有リクエストを受け取ったバスアービター１０９は、それぞれのユニットがバス１０５を独占する事がないように、効率よく順次バス専有許可信号、ＧＮＴ−Ｐ１、ＧＮＴ−Ｐ２、ＧＮＴ−Ｎ、ＧＮＴ−Ｆを、それぞれ、ＰＤＬユニット１０１、１０２、ネットワークＩ／Ｆ１０３、ＦＡＸユニット１０４に返している。バス専有許可信号、ＧＮＴ−Ｐ１、ＧＮＴ−Ｐ２、ＧＮＴ−Ｎ、ＧＮＴ−Ｆの発生手段の説明は後述する。
【００１６】
１１３はスキャナ／プリンタユニットであり、ビデオＩ／Ｆ１１４を介して、マスタ制御ブロック内のスキャナ・プリンタＩ／Ｆ１１２に接続され、さらにスキャナ・プリンタＩ／Ｆ１１２およびバス１０５を介して、ＰＤＬユニット１０１、１０２、ネットワークＩ／Ｆ１０３、ＦＡＸユニット１０４に接続され、スキャナ画像や、プリント画像のやり取りをしている。
【００１７】
ビデオＩ／Ｆ１１４内には、スキャナ画像、もしくはプリント画像を転送する信号の他に、後術するがＳＬＥＥＰ信号１１９、また、図示はしないが、スキャナ・プリンタＩ／Ｆ１１２とコマンドをやり取りするコマンド信号も含まれている。
【００１８】
１１０はＣＰＵであり、マスタ制御ブロック１１６内の制御をローカルバス１１７を介して司っている。
【００１９】
ローカルバス１１７は、ＣＰＵ１１０とバスアービタ１０９、スキャナ・プリンタＩ／Ｆ１１２、操作部１１５、ハードディスク１１１それぞれ接続し、ＲＯＭ／ＲＡＭ１１８に格納される制御プログラムに基づいて、制御を行っている。例えば、スキャナコマンドが発行された場合の動作の概略を説明する。
【００２０】
図示はしないが、ネットワーク１０８に接続されるホストコンピュータより、スキャナコマンドが発行されると、ネットワークＩ／Ｆ１０３は、コマンドを受け取り、バス専有リクエストＲＥＱ−Ｎをバスアービタ１０９に発行しバス専有を要求する。バスアービター１０９は前述したように、バスを独占する事がないように、効率よく順次、バス専有許可信号ＧＮＴ−Ｎを発行する。
【００２１】
ネットワークＩ／Ｆ１０３は、バス専有許可信号ＧＮＴ−Ｎを受け取ることで、バスを確保し、スキャナ・プリンタＩ／Ｆ１１２にホストコンピュータより受け取ったコマンドを転送する。
【００２２】
ＣＰＵ１１０は、スキャナ／プリンタＩ／Ｆ１１２からコマンドを受けた通知を、例えば図示はしないが、ローカルバス１１７内の割り込み信号によって受けると、ローカルバス１１７を介して、受け取ったコマンドを解釈し、さらにＣＰＵ１１０は、ビデオＩ／Ｆ１１４内のコマンド信号を介して、スキャナ／プリンタユニット１１３にコマンドを発行し、スキャナの起動をかける。
【００２３】
スキャナ／プリンタユニット１１３は受け取ったコマンドにより、スキャンした画像をビデオＩ／Ｆ１１４を介しスキャナ／プリンタＩ／Ｆ１１２に転送する。スキャン画像を受け取ったスキャナ／プリンタＩ／Ｆ１１２は、バス専有リクエストＲＥＱ−Ｍをバスアービター１０９に出力し、バスアービター１０９は前述したように、バスを独占する事がないように、効率よく順次、バス専有許可信号ＧＮＴ−Ｍを発行することで、スキャナ／プリンタＩ／Ｆ１１２と、ネットワークＩ／Ｆ１０３間にバスを開放する事によって、ネットワークＩ／Ｆ１０３にスキャナ画像を転送し、さらにネットワーク１０８よりホストコンピュータにスキャン画像を転送できるようになっている。
【００２４】
実施例では、バスアービター１０９と、スキャナ・プリンタＩ／Ｆ１１２は、同一のブロック内にあるため、バス専有リクエストＲＥＱ−Ｍ、バス専有許可信号ＧＮＴ−Ｍは、システムバス１０４に含まれないが、システムバス１０４内に含ませてもかまわない。
【００２５】
スキャナ／プリンタユニット１１３は操作部１１５のコピーボタンにより、単独で複写機としての動作も可能である。
【００２６】
ＣＰＵ１１０、ローカルバス１１７および、単独での複写機としての動作の詳細な説明は、発明の主旨ではないので省略する。
【００２７】
スキャナ／プリンタI／F１１２内には、DMAコントローラ１１２があり、CPU１１０によって、ローカルバス１１７より、その起動、停止等のコントロールができるようになっている、DMA121の起動により、ハードディスク１１１にか格納されるPDL制御プログラムや、ROM／RAM１１８に一時的に格納される通信データや各種パラメータを、システムバス１０５に装着される、各ユニットに高速に送信したり、また各ユニットからの通信データや各種パラメータを高速に受信できるようになっている。もちろん、CPU１１０は、DMAコントローラを用いなくとも、かく各ユニットにアクセスすることができる。
【００２８】
適宜プログラムによってコントロールされる。
【００２９】
図２は、バスアービター１０９の内部ブロック図である。
【００３０】
２０１はバス監視回路であり、システムバス１０５の使用状況を監視している。例えば、あるデバイスが、バス１０５を利用していることを検知した場合（バスbusyと称す）は、タイマリセット信号２０５がイネーブルとなりタイマ２０３はリセットされる。
【００３１】
また、どのデバイスもバス１０５を利用していないことを検知した場合（バスidle称す）には、タイマリセット信号２０５がディセーブルとなり、タイマ２０３が動作しはじめる。
【００３２】
その後、ある時間が経過、すなわち、どのデバイスもバス１０５を利用していない時間、すなわちバスidleがある程度経過した場合、Ｈｉｔ信号２０７により、ＣＬＫディセーブルをＳＬＥＥＰ回路２０４に通知し、またさらに、どのデバイスもバス１０５を利用していない時間、バスidleがある程度経過した場合、Ｈｉｔ信号２０７により、ＳＬＥＥＰ回路２０４に対し、ＳＬＥＥＰが通知される。
【００３３】
タイマは詳細な図示はしないが、ローカルバス１１７に接続されおり、ＣＬＫディセーブルのタイミングとＳＬＥＥＰのタイミングをＣＰＵ１１０よりプログラマブルに設定できるようになっている。
【００３４】
ＳＬＥＥＰ回路２０４は、Ｈｉｔ信号２０７によりＣＬＫディセーブル通知を受け取ると、信号ＣＬＫＥＮ２０９をディセーブルにして、クロックジェネレータ２０８に通知する。クロックジェネレータ２０８は、信号ＣＬＫＥＮ２０９がディセーブルになると、ＣＬＫ１２０の供給を止め、論理レベルをＨｉｇｈに保つようになっている。この状態をスタンバイ状態と称する。
【００３５】
この様にして、システムバス１０５のバスidleが続いた場合、クロックをＨｉｇｈの状態で止めて、スタンバイ状態とし、消費電力を抑えるようにしている。さらにシステムバス１０５のバスidleの状態で時間が経過し、Ｈｉｔ信号２０７によりＳＬＥＥＰ通知を受け取ると、信号ＳＬＥＥＰ１１９をイネーブルにして、ＣＰＵ１１０、またスキャナ／プリンタ１１３に対し、ＳＬＥＥＰを通知する。
【００３６】
ＳＬＥＥＰを通知されたＣＰＵ１１０は、マスタ制御ブロック１１６内のバスアービター１０９を除くすべてのブロックに対し、電源をＯＦＦにするための手続き、（シャットダウンプロセスと称す）を実行する。
【００３７】
例えば、クロックジェネレータ２０８に対しては、ＣＬＫ１１３の論理レベルをＬｏｗにする。また同様にスキャナ／プリンタ１１３もシャットダウンプロセスを実行し、マスタ制御ブロック１１６内のバスアービター１０９およびＣＰＵ１１０を除くすべてのブロックの電源がＯＦＦにされる。またＣＰＵも低消費電力モードに移行する。この状態をスリープ状態と称する。
【００３８】
この様にして、システムバス１０４のバスidleがさらに続いた場合、クロックをＬｏｗの状態で止めて、スリープ状態とし、消費電力を抑えるようにしている。
【００３９】
スタンバイ状態、および、スリープ状態の解除は、アービトレーション回路２０２に対して、システムバス１０４の専有要求信号ＲＥＱ−Ｐ１、ＲＥＱ−Ｐ２、ＲＥＱ−Ｎ、ＲＥＱ−Ｆ、およびＲＥＱ−Ｍが発行されると、アービトレーションと同時に解除信号２０６がＳＬＥＥＰ回路２０４に送られる。
【００４０】
ＳＬＥＥＰ回路では、スタンバイ状態の場合には、ＣＬＫＥＮ２０９をイネーブルにし、クロックジェネレータ２０８から直ちにクロックを供給できる様にする。また、スリープ状態の時には、ＣＬＫＥＮ２０９をイネーブルにし、かつ、ＳＬＥＥＰ１１９をディセーブルにする。
【００４１】
ＣＰＵ１１０は、ＳＬＥＥＰ１１９のディセーブルを通知されると、スリープモードから通常モードにもどり、各ブロックに電源の供給を開始し、初期化操作を行う。
【００４２】
スキャナ／プリンタ１１３も同様に、ＳＬＥＥＰ１１８のディセーブルの通知から、電源が供給され、初期化が行われる。
【００４３】
ＣＰＵ１１０はすべての初期化が完了したことを検知すると、クロックジェネレータ２０８に対して、クロックを供給するようにプログラムを行う。（以上スタートアッププログラムと称す）
図３にＦＡＸユニット１０４内部を説明するための概略図を示す。
【００４４】
３０４はＣＰＵでありローカルバス３０２を介しＦＡＸユニット１０４全体の制御を行っている。ＦＡＸ回路３０３は、公衆回線１０７およびＴＥＬケーブル１０６を介し送受信を制御し、受信したデータから、直接メモリ２０５にメモリ制御バス２０６から描画したり、メモリ３０５に送られ格納されるるスキャン画像を、圧縮し公衆回線１１２に送信する回路である。
【００４５】
メモリ３０５に格納されるスキャン画像は、スキャナ／プリンタユニット１１３からスキャナ・プリンタＩ／Ｆ１１２、およびシステムバス１０５を経由して、バスＩ／Ｆ３０８、およびローカルバス３０２を介してメモリ３０５に送られ格納される。
【００４６】
３０１はハードディスクであり、メモリ３０５に展開描画された画像を一時格納するために用いる。
【００４７】
送信先の電話番号の登録や、スタートボタンによりスタートさせるなど、外部からの操作は、マスタ制御ブロックに接続される操作部１１５によって行うことができ、入力されたコマンドもしくは、データは、ローカルバス１１７を介してＣＰＵ１１０より解釈され、DMA１２１もしくは、CPU１１０によって、スキャナ／プリンタ１１２、システムバス１０５を通じて、ＦＡＸユニット１０４に転送されるようになっている。
【００４８】
３０８はバスＩ／Ｆであり、システムバス１０５とローカルバス３０２のインターフェースを行い、またその内部にはＤＭＡ制御回路３０７があり、ＣＰＵ３０４を介さず直接メモリ３０５から、システムバス１０５にデータを送付したり、受け取ったりできるようになっている。
【００４９】
３０６はＣＬＫ検知回路であり、ＣＬＫ１２０が供給されているか検知し、また、論理レベルがＨｉｇｈか、Ｌｏｗか検知できるようになっている。すなわち、マスタ制御ブロックがスリープ状態なのか、スタンバイ状態なのか、ＣＬＫ１２０の状態から、検知できるようになっている。
【００５０】
例えば、ＦＡＸ文書を受信しスキャナ／プリンタ１１３にてプリント出力を得ようとした場合の説明を以下に示す。
【００５１】
ＦＡＸ回路３０３は、公衆回線１０７およびＴＥＬケーブル１０６を介しデータを受信し、多くの場合圧縮されたデータであるため、受信したデータから、直接メモリ３０５にメモリ制御バス３０６から伸長しながら画像を描画していく。同時に、ＣＰＵ３０４はローカルバス３０２内のＦＡＸ回路３０３から割り込み信号により受信を検知し、バスＩ／Ｆ３０８に対してシステムバス１０５の専有要求信号ＲＥＱ−Ｆを発行させ、ＣＬＫ検知回路３０６にてＣＬＫ１２０の検知を行う。
【００５２】
例えば、マスタ制御ブロック１１６及び、スキャナ／プリンタ１１３がＳＬＥＥＰ状態の時は、ＣＬＫ１２０について論理レベルでＬｏｗを検知し、マスタ制御ブロック１１６及び、スキャナ／プリンタ１１３がＳＬＥＥＰ状態であること検知する。
【００５３】
この時、すでに専有要求信号ＲＥＱ−Ｆを発行しているので、マスタ制御ブロック１１６及び、スキャナ／プリンタ１１３は前述したスタートアッププログラムが動作中である。
【００５４】
スタートアッププログラムは各ブロックの初期化等を行うため、スタートアッププログラムが終了するまでには、時間が掛かり、ＣＬＫ１２０が供給されるまで、受信しメモリ３０５に展開した画像は、転送待ち状態となり、次の画像の受信の障害となってしまう。これを防ぐために、ＣＰＵ３０４は、ＣＬＫ検知回路３０６にてＣＬＫ１２０について論理レベルでＬｏｗを検知すると、メモリ３０５がら受信し展開した画像データを、一時ハードディスク３０１に待避させ、次の画像の受信の障害を防いでいる。
【００５５】
ＣＬＫ検知回路３０６にてＣＬＫ１２０の供給を検知すると、ＣＰＵ３０４は、バスＩ／Ｆ３０８内のＤＭＡ回路３０７に対し、転送コマンドを送り、バスアービター１０９からのバス専有専有許可信号ＧＮＴ−Ｆの発行を待つ。
【００５６】
バス専有専有許可信号ＧＮＴ−Ｆを受け取ると、ＤＭＡ回路３０７は、ハードディスク３０１に一時格納していた受信画像を、ローカルバス３０２、システムバス１０５を介して、スキャナ・プリンタＩ／Ｆ１１２に転送し、そしてスキャナ／プリンタ１１３にて画像を得るようになっている。
【００５７】
この様にＣＬＫ１２０の状態からマスタ制御ブロック１１６及び、スキャナ／プリンタ１１３のＳＬＥＥＰを状態を検知し、ＳＬＥＥＰ状態のときは、ＦＡＸ１０４の内部処理すなわち、受信画像を待避させ、そして次の画像の受信を独立に先に進めるようにして、処理の効率化を図っている。
【００５８】
図４はネットワークＩ／Ｆ１０３の内部概略説明図である。
【００５９】
４０１はＣＰＵでありローカルバス４０７を介して、ネットワークＩ／Ｆ１０３全体の制御を司っている。
【００６０】
４０２はネットワーク回路であり、ネットワーク１０８のプロトコルを自動制御する回路である。
【００６１】
４０３はメモリであり、図示はしないが、ネットワーク１１０に接続されるホストコンピュータより、ネットワーク回路４０２を介して転送されるＰＤＬファイルや画像データを一時格納するメモリである。
【００６２】
４０４はバスＩ／Ｆであり、システムバス１０５とローカルバス４０７のインターフェースを行い、またその内部にはＤＭＡ制御回路４０５があり、ＣＰＵ４０１を介さず直接メモリ４０３から、システムバス１０５にデータを送ったり、受け取ったりできるようになっている。
【００６３】
４０６はＣＬＫ検知回路であり、ＣＬＫ１２０が供給されているか検知し、また、論理レベルがＨｉｇｈか、Ｌｏｗか検知できるようになっている。
【００６４】
例えば、図示はしないがネットワーク１０８に接続された外部ホストコンピュータから、プリント出力を得る際には、編集されたドキュメントを、ページ記述言語で記述されたファイルに変換し、ネットワーク１０８を介して、ネットワークＩ／Ｆ１０３に転送される。
【００６５】
送付されたページ記述言語によって記述された画像ファイルは、ネットワーク回路４０２により受け取られ、ＣＰＵ４０１を介して、一時メモリ４０３に格納される。
【００６６】
ファイルを受け取ると、ＣＰＵ４０１は、バスＩ／Ｆ４０４に対し、システムバス１０５の専有要求信号ＲＥＱ−Ｎを発行させる。同時にＣＬＫ検知回路４０６にてＣＬＫ１２０の検知を行う。
【００６７】
この時、例えば、マスタ制御ブロック１１６及び、スキャナ／プリンタ１１３がスタンバイ状態の時は、ＣＬＫ１２０について論理レベルでＨｉｇｈを検知し、マスタ制御ブロック１１６及び、スキャナ／プリンタ１１３がスタンバイ状態であること検知する。
【００６８】
ＣＰＵ４０１は、バスＩ／Ｆ４０４内のＤＭＡ回路４０５に対し、転送コマンドを送り、メモリ４０３に一時格納していたページ記述言語によって記述された画像ファイルを、システムバス１０５を介して、例えば、ＰＤＬユニット１（１０１）への転送準備をする。
【００６９】
この時、すでに専有要求信号ＲＥＱ−Ｆを発行しているので、バスアービター１０９内のクロックジェネレータ２０８より直ちにＣＬＫ１２０の供給が開始されまた、バス専有許可信号ＧＮＴ−Ｎをバスアービター１０７より受け取るとＤＭＡ回路４０５は、転送を開始するようになっている。そして、ＰＤＬユニット１（１０１）にて画像を展開後、スキャナ／プリンタＩ／Ｆ１１２、およびスキャナ／プリンタ１１３に転送し、画像を得るようになっている。
【００７０】
この様にＣＬＫ１２０の状態からマスタ制御ブロック１１６及び、スキャナ／プリンタ１１３のスタンバイ状態を検知し、スタンバイ状態のときは、システムバス１０５を用いたファイル転送を順次進めるようにして、処理の効率化を図っている。
【００７１】
この時、ＰＤＬユニット１（１０１）、ＰＤＬユニット２（１０２）の選択は、外部ホストコンピュータから転送されるドキュメントを構成するページ記述言語、もしくはＰＤＬユニット１（１０１）、ＰＤＬユニット２（１０２）のパフォーマンス情報、によって選択される。
【００７２】
例えば、あらかじめＰＤＬユニット１（１０１）がＰＳ、ＰＤＬユニット２（１０２）がＬＩＰＳの制御プログラムで稼動していた場合、例えば送られたドキュメントがＰＳで記述されているならば、自動的にＰＤＬユニット１（１０１）が選択されるようになっている。
【００７３】
これらの情報は、あらかじめ、ネットワークＩ／Ｆ１０３のＣＰＵ４０１にマスタ制御ブロック１１６内のCPU１１０より通知されており、ＣＰＵ４０１は、ページ記述言語を識別し、必要なパフォーマンスに合ったPDLユニットに適切に転送できるようになっている。
【００７４】
また、ＰＤＬユニット１（１０１）、ＰＤＬユニット２（１０２）は、ダウンロードされる制御プログラムによって、いつでもプログラマブルに展開できるページ記述言語を、変更できるようになっている。
【００７５】
例えば、ＬＩＰＳで記述されたドキュメントファイルが、多量にネットワーク１０８にて転送されてきた時には、CPU４０１は、マスタ制御ブロック１１６内のCPU１１０へ通信によりコマンドを送り、他の制御プログラムがダウンロードされているPDLユニットに対し、LIPS制御プログラムのダウンロードを要請し、複数のPDLユニットにて、負荷分散を行うことで、多量のドキュメントファイルを短時間で処理できるようになっている。
【００７６】
また、ドキュメントをより速くプリントしたい場合は、パフォーマンスの高いPDLユニットを選択し、必要な制御プログラムをダウンロードするようにコマンドを発行できるようになっている。
【００７７】
図５は、ＰＤＬユニット１０１、１０２の概略構成図である。
【００７８】
これらは、ページ記述言語を受け取り、それに基づいて画像を展開する機能、目的とも同じであるため、図５にて一緒に説明する。本実施例では、２台のＰＤＬボードを用いているが、もちろん１台でも構わない。
【００７９】
また、ＰＤＬボードによって、ＣＰＵの処理能力、メモリの容量等の違いのため、画像を展開する能力に差が出る場合もある。これらは、購入コスト、使用頻度等を考慮し、使用するユーザーにより、自由に組み合わせが選択できるようになっている。
【００８０】
ＣＰＵ５０１はローカルバス５０２を介し、ＰＤＬユニット全体の制御を司るものである。
【００８１】
ＲＡＭ５０３は、ＣＰＵ５０１が実行する制御プログラムを格納している。ここに格納される制御プログラムによって、各種のページ記述言語に対応できるようになっている。
【００８２】
例えば、ＰＳの制御プログラムが格納されていれば、ＰＳ用のＰＤＬユニットになり、ＬＩＰＳの制御プログラムが格納されていれば、ＬＩＰＳ用のＰＤＬユニットになるようになっている。
【００８３】
これらの制御プログラムは、システム全体の立ち上げ時に、例えば、ＰＤＬユニット１（１０１）は、ＰＳ、ＰＤＬユニット２（１０２）はＬＩＰＳと決められており、それぞれのプログラムコードがダウンロードされる。もちろん、逆の設定や、両方ＰＳ、両方ＬＩＰＳのような組み合わせもユーザーのニーズに応じて選択できるようになっている。
【００８４】
また、ＰＤＬユニット１（１０１）、ＰＤＬユニット２（１０２）それぞれＣＰＵのパフォーマンスや、搭載メモリの容量等により、画像を展開する能力に差をあらかじめ検知し、その情報に基づいてＰＳ、ＬＩＰＳの選択もできるようになっている。
【００８５】
例えば、ＰＤＬユニット１（１０１）がＰＤＬユニット２（１０２）より画像を展開する能力が高い場合において、例えば、ネットワーク１０８に接続されるユーザーが、ページ記述言語としてＰＳが多い場合、能力の高いＰＤＬユニット１（１０１）にＰＳの制御プログラムをダウンロードし、一方ＰＤＬユニット２（１０２）には、ＬＩＰＳの制御プログラムをダウンロードすることによって、利用する多い方のユーザーの便宜を図ることができようになっている。
【００８６】
またさらに、上述したように、それそれ、別のプログラムコードがダウンロードされている場合、例えば、ＬＩＰＳで記述されたドキュメントファイルが、多量にネットワーク１０８にて転送されてきた時には、もう一方のＰＤＬユニットに対して、ＬＩＰＳの制御プログラムコードをダウンロードし直して、ＬＩＰＳのドキュメントファイルを受け、展開できるようにすることによって、画像の展開のパフォーマンスを、上げられるようになっている。
【００８７】
また、ドキュメントをプリントしようとするユーザーからのコマンドにより、PDLユニットを選択し、必要な制御プログラムをダウンロードすることができる。
【００８８】
これらのプログラムコードは、マスタ制御ブロック１１６内のハードディスク１１１にあらかじめ格納されており、マスタ制御ブロック１１６内のＣＰＵ１１０の制御のもとＤＭＡ１２１によってハードディスク１１１から、ローカルバス１１７、システムバス１０５を経由し、バスＩ／Ｆ５０７およびローカルバス５０２を介して、ＲＡＭ５０３に転送されるようになっている。
【００８９】
ワークＲＡＭ５０５は、各種のパラメータ情報を格納すると共に、ＣＰＵ５０１のワークエリアとしても機能する。
【００９０】
ＡＳＩＣ５０４は、ページ記述言語で記述されたファイルに基づいて画像メモリ５０６にラスタイメージ画像を展開する機能を有している。なおこのＡＳＩＣ５０４については、後述する。
【００９１】
５０７は、バスＩ／Ｆであり、システムバス１０５とローカルバス５０２のインターフェースを行い、またその内部にはＤＭＡ制御回路５０９があり、ＣＰＵ５０１を介さず直接メモリワークＲＡＭ５０５、および画像メモリ５０６、もしくはハードディスクユニット５１１から、システムバス１０５にデータを送ったり、受けたりできるようになっている。また、CPU５０１に対するリセット制御信号RES５１１を出力している。
【００９２】
RES５１１は、マスタ制御ブロック１１６内のCPU１１０からのコマンドによって、バスI／F５０７より出力される。リセット制御信号RES５１１はCPU５０１のリセット端子に接続され、CPU５０１はリセットされ、リセット制御信号RES５１１がイネーブルの状態の間は、CPUはホールド状態となり、ローカルバス５０２に接続される信号は、ハイインピーダンス状態となる。
【００９３】
CPU１１０は、制御プログラムダウンロード時に、コマンドによってリセット制御信号RES５１１をイネーブルにして、RAM５０３に必要な制御プログラムをローカルバス５０２を介してダウンロードするようになっている。
【００９４】
ダウンロード後、コマンドによってリセット制御信号RES５１１をイネーブルをディセーブルにし、CPU５０１にリセットを解除しCPU５０１をスタートさせている。
【００９５】
５０８はＣＬＫ検知回路であり、ＣＬＫ１２０が供給されているか検知し、また、論理レベルがＨｉｇｈか、Ｌｏｗか検知できるようになっている。
【００９６】
ネットワークユニット１０２によって受け取られたページ記述言語によって記述されたドキュメントファイルは、前述したように、システムバス１０５、バスＩ／Ｆ５０７を経由して転送され、ワークＲＡＭ５０５に一時格納される。
【００９７】
ＣＰＵ５０１は、ワークＲＡＭ５０５に一時格納されているページ記述言語データを参照し、ＡＳＩＣ５０４が利用できる中間言語に変換し、再びワークＲＡＭ５０５に順次格納していく。
【００９８】
ＣＰＵ５０１は、中間言語への変換処理が終了するとＡＳＩＣ５０４に対して画像展開開始コマンドを送り、ＡＳＩＣ５０４はワークＲＡＭ５０５に格納されている中間言語を参照しながら高速に画像メモリ５０６へラスタイメージ画像の展開を行う。
【００９９】
ＣＰＵ５０１は、ＡＳＩＣ５０４からの展開終了の割り込み信号ＩＮＴ５１０を受け取ると、展開画像をスキャナ／プリンタＩ／Ｆ１１５を経由し、スキャナ／プリンタ１０６に転送し、プリント出力を得るようになっている。
【０１００】
ＩＮＴ５１０を受け取ったＣＰＵ５０１は、バスＩ／Ｆ５０７に対し、システムバス１０５の専有要求信号ＲＥＱ−Ｐを発行させる。同時にＣＬＫ検知回路５０８にてＣＬＫ１２０の検知を行う。
【０１０１】
この時、例えば、マスタ制御ブロック１１６及び、スキャナ／プリンタ１１２がスタンバイ状態の時は、ＣＬＫ１２０について論理レベルでＨｉｇｈを検知し、マスタ制御ブロック１１６及び、スキャナ／プリンタ１１３がスタンバイ状態であること検知する。ＣＰＵ５０１は、バスＩ／Ｆ５０７内のＤＭＡ回路５０９に対し、転送コマンドを送り、画像メモリ５０６に展開済みのラスタイメージ画像を、システムバス１０５を介して、スキャナ／プリンタＩ／Ｆ１１２への転送準備をする。
【０１０２】
この時、すでに専有要求信号ＲＥＱ−Ｐを発行しているので、バスアービター１０９内のクロックジェネレータ２０８より直ちにＣＬＫ１２０の供給が開始されまた、バス専有許可信号ＧＮＴ−Ｐをバスアービター１０９より受け取るとＤＭＡ回路５０９は、スキャナ／プリンタＩ／Ｆ１１２へ転送を開始するようになっている。
【０１０３】
そして、スキャナ／プリンタＩ／Ｆ１１２は受けたラスタイメージ画像をさらに、スキャナ／プリンタ１１３に転送し、画像を得るようになっている。
【０１０４】
この様にＣＬＫ１２０の状態からマスタ制御ブロック１１６及び、スキャナ／プリンタ１１３のスタンバイ状態を検知し、スタンバイ状態のときは、システムバス１０５を用いたファイル転送を進めるようにしている。
【０１０５】
一方、スリープ状態を検知した場合は、画像メモリの容量がいっぱいになるで次ペ―ジのラスタイメージの展開を進め、スリープ状態が解除され次第、順次展開したラスタイメージを転送するようになっている。このようにして、処理の効率化を行っている。
【０１０６】
図６にシステム立ち上げ時、およびダウンロードされる制御ファイルを選択する場合のフローチャートを説明する。
【０１０７】
S６０１にて、あらかじめ入力されているシステム初期設定をロードする。これらは例えば、ハードディスク１１１等に格納されている。説明では、PDLユニット１がPS、PDLユニット２がLIPSの初期設定になっている。これらは、ユーザーによって適宜変更できるようになっている。
【０１０８】
S６０２にてPDLユニット１、２内のRES５１１をイネーブルにし、CPUをホールド状態とする。
【０１０９】
S６０３にてDMA回路１２１を起動し、ハードディスク１１１に格納される各PDLユニットに必要な制御プログラムのダウンロードを開始する。本実施例では、例えばPDLユニット１にPSの制御プログラム、PDLユニット２にLIPS制御プログラムがダウンロードされる。
【０１１０】
S６０４にて、ダウンロード終了を検知すると、S６０５にてPDLユニット１、２内のRES５１１をディセーブルする。これにより、各PDLユニットのCPUのホールド状態が解除され、プログラムに基づいて起動がかかる。
【０１１１】
S６０６にて、起動の最初に通信により、各PDLボードのパフォーマンス、例えばCPUの能力、搭載メモリの容量等を検知する。
【０１１２】
S６０７にて、ネットワークI／F１０３へ、取得したかくPDL情報を通知する。ネットワークI／F１０３は、取得した情報により、適宜PDLユニットを選択することで、効率良くプリントできる。また必要に応じてコマンドを発行する。
【０１１３】
S６０８にて、マスタ制御ブロック１１６内のCPU１１０は、ネットワークI／F１０３からのコマンドを待ち、S６０９にて、受けるコマンドに対して処理、例えば、新たな制御プログラムのダウンロードの等の処理を行うようになっている。
【図面の簡単な説明】
【０１１４】
【図１】全体構成ブロック図。
【図２】バスアービターブロック図。
【図３】FAXユニットブロック図。
【図４】ネットワークＩ／Ｆブロック図。
【図５】ＰＤＬユニットブロック図。
【図６】フローチャート。
【符号の説明】
【０１１５】
101  ＰＤＬユニット１
102  ＰＤＬユニット２
103  ネットワークＩ／Ｆ
104  ＦＡＸユニット
105  システムバス
106  ＴＥＬケーブル
107  公衆回線
108  ネットワーク
109  バスアービター
110  ＣＰＵ
111  ハードディスク
112  スキャナ／プリンタＩ／Ｆ
113  スキャナ／プリンタ
114  ビデオＩ／Ｆ
115  操作部
116  マスタ制御ブロック
117  ローカルバス
118  ＲＯＭ／ＲＡＭ
119  スリープ信号
120  ＣＬＫ
121  ＤＭＡブロック
ＲＥＱ−Ｐ１、ＲＥＱ−Ｐ２、ＲＥＱ−Ｎ、ＲＥＱ−Ｆ、ＲＥＱ−Ｍ  リクエスト信号
ＧＮＴ−Ｐ１、ＧＮＴ−Ｐ２、ＧＮＴ−Ｎ、ＧＮＴ−Ｆ、ＧＮＴ−Ｍ  グラント信号
201  バス監視回路
202  アービトレーション回路
203  タイマー
204  スリープ回路
205  タイマーリセット信号
206  解除信号
207  ＨＩＴ信号
208  クロックジェネレータ
209  ＣＬＫＥＮ
301  ハードディスク
302  ローカルバス
303  ＦＡＸ回路
304  ＣＰＵ
305  メモリ
306  メモリ制御バス
307  ＤＭＡ回路
308  バスＩ／Ｆ
309  ＣＬＫ検知
401  ＣＰＵ
402  ネットワーク回路
403  メモリ
404  バスＩ／Ｆ
405  ＤＭＡ回路
406  ＣＬＫ検知
501  ＣＰＵ
502  ローカルバス
503  ＲＡＭ
504  ＡＳＩＣ
505  ワークＲＡＭ
506  画像メモリ
507  バスＩ／Ｆ
508  ＣＬＫ検知
509  ＤＭＡ回路
510  ＩＮＴ
511  ＲＥＳ
【図１】
2006146664.tif 000003
【図２】
2006146664.tif 000004
【図３】
2006146664.tif 000005
【図４】
2006146664.tif 000006
【図５】
2006146664.tif 000007
【図６】
2006146664.tif 000008