JPH0923293A - プリントエンジンスケジューリングシステム - Google Patents

プリントエンジンスケジューリングシステム

Info

Publication number
JPH0923293A
JPH0923293A JP8142997A JP14299796A JPH0923293A JP H0923293 A JPH0923293 A JP H0923293A JP 8142997 A JP8142997 A JP 8142997A JP 14299796 A JP14299796 A JP 14299796A JP H0923293 A JPH0923293 A JP H0923293A
Authority
JP
Japan
Prior art keywords
print engine
capability
scheduling
capabilities
constraints
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8142997A
Other languages
English (en)
Inventor
Markus P J Fromherz
ピー.ジェイ.フロムヘルツ マークス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xerox Corp
Original Assignee
Xerox Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xerox Corp filed Critical Xerox Corp
Publication of JPH0923293A publication Critical patent/JPH0923293A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/04Program control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Program control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23289State logic control, finite state, tasks, machine, fsm
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25093During start, integration into machine, send module functionality to scheduler
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25418Enter description of capabilities of each module
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25421Using resource data relative to each component, module of control system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2646Printing

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Facsimiles In General (AREA)

Abstract

(57)【要約】 【課題】 モジュールから構成される印刷装置におい
て、装置の利用性及び構成のしやすさを強化する。 【解決手段】 本発明により、印刷装置の動作をスケジ
ューリングするシステムが提供される。印刷装置の各コ
ンポーネントの能力及びそれらの能力に対するリソース
及びタイミング等の制約に基づき印刷装置をモデル化す
る有限状態マシンが自動的に生成され、この有限状態マ
シンに基づいて印刷装置の全体的動作がスケジューリン
グされる。このような自動化スケジューリングによっ
て、モジュールから構成される印刷装置において装置の
利用性及び構成のしやすさが強化される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は印刷装置技術に関
し、特に複写装置のような写真式複製装置に関する。
【0002】本発明は特に、有限状態マシンを生成し、
プリントエンジンにおいて所望のドキュメントを生成す
るために必要とされる動作をスケジューリングするシス
テムに適用可能である。本発明のシステムは、印刷装置
を形成するモジュール方式コンポーネントに関連した能
力に従うプリントジョブの自動化スケジューリングを可
能とし、特にそのようなことに関して記述される。しか
し、モジュール方式コンポーネントを考慮した装置能力
の自動化アセスメントの提供や、同様のことを考慮した
ジョブの特定な効率的利用のような幅広いアプリケーシ
ョンを本発明が有することが認められる。
【0003】
【従来の技術及び発明が解決しようとする課題】写真式
複写装置のような今日の装置は、予め製造されたコンポ
ーネントから頻繁に製造される。そのような製造は、装
置の各サブアセンブリの大量生産を可能にすると同時
に、消費者のニーズに対してカスタム化を可能にする。
さらに、消費者は、既存のベース装置の能力を変更する
ことができるか又はアップグレードすることができる手
段を与えられる。
【0004】本発明と共通の譲り受け人によって所有さ
れるU.S.特許第 5,287,194号及び第5,363,175 号に
おいて、分散型印刷及び分散型ジョブスケジューリング
のための初期のシステムが見いだされる。
【0005】集積化装置のモジュール方式アセンブリの
1つの関心事項は、完成されたシステムの利用の構成及
び最適化である。このことは初期装置の製造者に対する
関心事項である一方、おそらくエンドユーザーに対して
もより大きい関心事項である。エンドユーザーは、技術
的に充分な知識を有していないことがほとんどである。
しかし、エンドユーザーは、初期投資値を維持すること
を所望する一方で装置能力の増加を所望する。消費者は
また、既存の装置をアップグレードするか又は構成する
ために専門家を雇うことに関連する出費を望まない。
【0006】従来のシステムにおいて、プリントエンジ
ン能力の自動的スケジューリングがある程度望まれてい
た。そのようなスケジューリングは、開発者がプリント
エンジンの詳細を予め知っている場合にのみ達成されて
いた。個別のモジュールが使用された場合であっても、
それらの相互作用が解析されなければならず、結果とし
て得られたプリントエンジン情報は一般的に再使用不可
能であった。
【0007】
【課題を解決するための手段】本発明に従って、有限状
態マシンを生成し、印刷装置動作の自動的スケジューリ
ングを容易にするシステムが提供され、これにより前述
及びその他の問題が克服される。本発明は、装置出荷前
及び出荷後の両方において利用性及び構成のし易さが強
化されたシステムを提供する。
【0008】本発明に従って、有限状態マシンを自動的
に生成し、多様な個々のモジュール方式装置コンポーネ
ントの記述からプリントエンジン動作のスケジューリン
グを行うシステムが提供される。
【0009】本発明の他の態様に従って、プリントエン
ジン能力のタイミング制約を自動的に分析してパタメー
タを確定し、有限状態マシンを自動的に生成するシステ
ムが提供される。
【0010】本発明の他の態様に従って、システムは有
限状態マシンを生成し、これに対して小規模で適切なサ
ーチが行われる。
【0011】本発明の他の態様に従って、システムは有
限状態マシンジェネレータを提供し、これにより、動作
中チェックのために制約の一部を選択的に残して有限状
態マシンサイズを低減することが可能となる。
【0012】本発明の利点は、多様な変化するサブアセ
ンブリに容易に自動的に構成可能な印刷装置動作スケジ
ューリングのための有限状態マシンの生成である。
【0013】本発明の利点は、多様な又は変化するサブ
アセンブリに簡単に、そして、自動的に構成されること
ができる印刷装置モデルの提供である。
【0014】本発明の他の利点は、エンドユーザによっ
て最大ポテンシャルに簡単に構成されることができる印
刷装置の提供である。
【0015】本発明の他の利点は、ユーザーにより指定
されたプリントジョブに従ってモジュール方式サブアセ
ンブリを効率的にスケジューリング及び利用することに
よって印刷スループットを最大にする印刷装置の提供で
ある。
【0016】本発明の更なる利点は、本明細書により当
業者に対して明らかとなる。本発明の1態様は、プリン
トエンジンの能力を分析して有限状態マシンを生成し、
プリントエンジンをスケジューリングするシステムであ
って、複数のプリントエンジンコンポーネント能力を受
信する手段を備え、各コンポーネント能力はコンポーネ
ント能力データセットによって定義され、各データセッ
トから信号データ及びタイミング制約を導出する導出手
段を備え、信号を定義する信号データは対応するプリン
トエンジンコンポーネント上の非オーバーラップイベン
トのシーケンスとして形成され、イベントは、動作を完
了するための時間インターバルに関連する対応するプリ
ントエンジンコンポーネントのアクションであり、タイ
ミング制約データは、対応するプリントエンジンコンポ
ーネントに対する1値か又は2値のインターバル制約の
いづれか一方として定義され、複数のプリントエンジン
コンポーネント能力データセットの各々を0に例示化す
る例示化手段を備え、各信号を規格化する信号規格化手
段を備え、各信号関連する最新のインターバルの最大の
開始点とその信号の最初のインターバルの最小の開始点
との間の距離としてリーチバック値を定義するリーチバ
ック手段を備え、各データセットのタイミング制約デー
タに従って最小の増分を決定する増分決定手段を備え、
選択されたクロック値に対して制限されたインターバル
から定義される期間を識別する期間識別手段を備え、最
大リーチバック値及び期間に従って境界値を定義する拡
張手段を備える。
【0017】
【発明の実施の形態】本発明は、特定の部分において及
び特定の部分構成において物理的な形態をとることが可
能である。それらの好ましい実施の形態は、本明細書に
おいて図面に例示され、詳細に記述される。
【0018】以下、図面を参照して説明を行う。図は、
本発明の好ましい実施の形態の例示のみを目的としてお
り、本発明を制限するものでない。図1は、モジュール
方式プリントエンジンAを有する本発明の実施の形態を
示す。プリントエンジンAは、複数のモジュール又はサ
ブアセンブリBを含み、構成及びスケジューリングのた
めのデータプロセッサユニットCを含む。本明細書にお
いて、”プリントエンジン”は、プリンタ、複写装置、
ファクシミリ装置等のような任意の複製装置を含む。
【0019】以下に記述されるように、モジュールBの
各々に与えられる様々な能力は、データプロセッサユニ
ットCにおいて確認され相互に関連付けられる。そのよ
うな相互に関連付けられ分析されたデータは、所望のプ
リンタ動作又は一連のプリンタ動作を定義するユーザー
入力を考慮してさらに分析される。これらは次に、印刷
装置の動作を最適化、スケジュール、及び制御するため
に使用され、一連の印刷タスクがほぼ効率的に達成され
る。本発明のシステムは、例示として複写装置によって
記述される。任意のモジュール方式マテリアルハンドリ
ングシステムに対して、一般的な記述、リソースアセス
メント、及びスケジューリングが実行可能であることが
理解される。
【0020】図1の特別な例により、モジュールBは複
数のペーパーストレージビン(bin)を含んで図示さ
れる。この図において、これらはビン10、12、及び
14を含む。複数のビンは、異なるペーパーサイズの、
又は2次的な、又は確保されたストレージ能力を有する
ことが可能である。シートフィーダーメカニズムが概略
的に16に示される。当業者にとって明らかなように、
16に示されるようなシートフィーダーは、1つ以上の
ビンからシートストックを得るために機能する。
【0021】フィーダー16は、コンベヤー18へシー
トストックをフィードする。次にコンベヤーは、プリン
トメカニズム20へシートストックをフィードする。該
メカニズムの特定な構成は当業者にとって周知である。
同じく、コンベヤー18に沿って進行するシートストッ
クを選択的に反転するか又はフリップすることができる
インバーターメカニズム30が図に示される。両面印刷
のためにシートストックをプリンターメカニズム20へ
戻すためのフィードバックユニット32が提供される。
【0022】図において、コンベヤー18は、印刷され
たドキュメントの選択的なステープリングを行うための
ステープリングメカニズム34に対してパスを提供す
る。モジュールBグループの最後のコンポーネントは、
ビン38と40によって表される複数の出力ビンであ
る。
【0023】いくつかのモジュールは完全にメカニカル
であることが可能であり、いくつかはメカニカル及びコ
ンピュータデバイスの混合で構成可能であり、そしてい
くつかはコンピュータデバイスのみで構成可能であるこ
とが理解される。後者の例として、モジュールは、プロ
セッサ、データストレージ及びインストラクションスト
レージ、及び1セットの機能から構成可能である。該機
能は、ユーザーインプットからイメージデータを受入れ
て処理し、それを印刷するために他のモジュールに送り
出すことが可能である。これらの機能の速度に基づい
て、そのようなモジュールは、他の全てのモジュールB
と同様にスケジュール及び制御される。いくつかのモジ
ュールの例が、以下に図4と関連して記述される。
【0024】データプロセッサユニットCは、データ入
力/出力(I/O)ユニットを含み、該ユニットは、中
央プロセッサユニット(CPU)/ストレージスケジュ
ーリングユニット42とデータ通信を行う。この詳細に
ついて以下に記述される。モジュールBの各々とデータ
I/Oユニット40との間にデータ経路が提供される。
【0025】好ましい実施の形態において、各モジュー
ルBは様々な機能と能力に関連した記述を含む。そのよ
うな一般的な記述の例が以下に詳述される。図に示され
たモジュールの各々とデータI/Oユニットの間のデー
タ経路は、データプロセッサーユニットCへの全てのそ
のような記述の取得を可能にする。好ましい実施の形態
において、任意のモジュールBは、モジュール方式プリ
ントエンジンAとの接続に際して、その関連する記述を
データI/Oユニットに伝達する。この能力は、本発明
のシステムの”プラグアンドプレイ(plug−and
−play)”能力を可能にする。
【0026】データプロセッサーCのデータI/Oユニ
ット40と様々なモジュールBとの間のデータ相互接続
は、コントローラの起動を可能にする。従って、データ
プロセッサーユニットCは、有効なモジュールからモジ
ュール方式プリントエンジンAの能力の完全なセットを
確認する。ユーザー入力44からI/Oユニット40へ
結合されるこの情報は、有効なモジュール方式リソース
を効率的にスケジューリングし有効なコンポーネントの
使用によって一連の印刷ジョブを達成することを可能に
する。
【0027】図2を参照し、一般的なプリントエンジン
の記述のための基本的フォーマットとスケジューリング
について記述する。先に述べたように、自動プリントエ
ンジンスケジューリングソフトウェアのための過去の試
みは、完全なエンジン構成の分析に基づくものであっ
た。この分析の結果は、特別なユニット構成に対して仕
様化された専用のソフトウェアの書込みのために必要と
される。逆に言えば、本発明のシステムは、スケジュー
リングソフトウェアを2つの部分に分離する。第1の部
分において、スケジューラアーキテクチャは汎用アルゴ
リズムを備えている。第2の部分において、以下に詳述
されるフォーマットで装置固有の情報が提供される。
【0028】与えられたプリントエンジンに印刷される
ドキュメントが与えられると、ドキュメントを生成する
ための装置動作を識別し、スケジュールし、初期化する
ためのスケジューラが提供される。図1において、その
ような動作は、シートのフィード、シートの移動、画像
の生成、シートへの画像の転写等を含む。印刷されるド
キュメントは、通常は増分的に(例えば1枚ずつ)到着
することが理解される。スケジューリングとスケジュー
ルの実行(印刷)は通常並列に発生する。結果として、
スケジューラによって使用される装置固有の情報は、所
望のシートを生成する動作をスケジューラが識別可能な
ように構造化される。さらに、システムは、動作をスケ
ジューリングする際に必ず発生する制約を認識していな
ければならない。さらに、システムは、適切なコマンド
をモジュールに与えてモジュールの有効な動作を達成す
る手段を備えている。
【0029】図2において、装置固有の情報を与える特
別なシステムが示される。該システムは、ブロック10
0においてプリントエンジンモジュールの宣言記述(モ
デル)を使用することによって始まる。そのようなモデ
ルは、モジュール構造の記述とそのコンポーネントの潜
在的な動作を含む。図1の例において示されるように、
可能なコンポーネントは、フィードトレイ、トランスポ
ートベルト、転写コンポーネント、インバータ、ゲー
ト、その他を含む。潜在的な動作は、例えば、インバー
タのバイパス、又はシートを逆転するためのインバータ
の使用を含むことができる。モデル化のステップは、モ
デル化を行う言語を使用してエンジニアによって通常は
実行される。これに関する好ましい実施の形態の詳細が
以下に記述される。
【0030】ブロック102において、モジュールはそ
のコンポーネントによってすでにモデル化されている。
次に、コンポーネントモデルから得られた情報からモジ
ュール全体の潜在的な動作の自動的導出が実行される。
例えば、この導出は、シミュレーション又は部分的な評
価によって、及び推定(エンビジョンメント)によって
実行可能である。シミュレーションは、現実のシステム
の実行を反映するモデルの実行として一般的に理解され
る。部分的な評価は、プログラムの部分的な実行として
一般的に理解され、プログラムの特定の部分は後に評価
されるものとして未実行のまま残される。推定は、シス
テムの全ての潜在的な動作の探査として一般的に理解さ
れ、これは例えば、システムのモデルのシミュレーショ
ン又は部分的評価を繰り返し多様な方法で実行すること
によって行われる。結果として生ずる全体的モジュール
動作は、特定の動作によって生成される出力、その出力
が生成される入力、その全体的動作を生成するために必
要な個別動作(その”道のり”)、及び、個別動作を実
行する際に観測されるリソース及びタイミングに対する
多様な制約から構成される。この情報の特定の部分又は
全ては、有利にプリコンパイルされることができる。例
えば、これは有限状態マシンにコンパイルされることが
できる。
【0031】複数のプリントエンジンモジュールB(図
1)がいっしょにプラグインされて新たな構成を形成す
る場合、異なるモジュール動作はデータプロセッサCを
介して収集及び自動的に合成され、プリントエンジンA
全体の潜在的動作が生成される。
【0032】前述の合成は、ダイナミックに(即ち、1
つの動作がスケジューラによって選択されるたびごと
に)発生するよう適切にイネーブルにされ、前述の合成
によってモジュール動作が装置動作中に合成される。従
って、合成は、(モジュールがいっしょにプラグインさ
れた後に)一度だけ、又はそれが必要とされるたびごと
に実行されることが可能である。後者のオプションは、
ダイナミックなモジュール変更を可能とする利点を有す
る。従って、装置動作が選択されるたびごとに、システ
ムは図2のシーケンスを完了することができる。時間の
かかるコンピュータ処理のために、そうすることが禁止
されることができる。しかし、これは特定の状況におい
てはより効率的なアプローチであり得る。
【0033】ブロック104において、前述の全体的動
作は、前述の個々のモジュール動作と関連するフォーマ
ットに類似のフォーマットで有利にモデル化される。異
なる全体的動作ごとに、システムは、(動作識別のため
の)出力記述、(シーケンス化のための)リソース及び
タイミング制約、及び(装置動作の次の制御のための)
道のりを含むデータを提供する。
【0034】次に、システムはブロック106へ進み、
マッチングスケジューラアルゴリズムにおける効率的使
用のために装置動作情報部分は有利にコンパイルされ
る。例えば、タイミング及びリソース制約の潜在的なイ
ンタラクションのコンパイルは、有限状態マシンに形成
されることができる。ブロック108において、コンパ
イルされた動作のフルセットが得られる。
【0035】最後に、ブロック110において、装置動
作の出力記述が汎用スケジューラによって使用され、
(オリジナルフォーム又はコンパイルされたフォーム
で)オリジナルな制約を与えられた出力ドキュメントを
生成する動作が識別される。これらが使用されて、特定
の全体的動作に必要とされる個別動作の各々に対する適
正なタイミング、及び、モジュールBに必要な動作を実
行させるために使用される道のりが見いだされる。
【0036】前述の説明は好ましい実施例によって与え
られたが、有用なシステムを提供するために前述のステ
ップ全てが必ずしも必要とされないことが理解される。
例えば、全てのコンポーネントの内の一部のみがモデル
化されることが必要とされ、全ての制約のコンパイルは
必ずしも必要とされない。
【0037】前述のシステムにより、プリントエンジン
モジュールのモジュール方式(”プラグアンドプレ
イ”)スケジューリングが容易にされる。該システムは
また、広範囲にわたる構成のためのスケジューリングソ
フトウェアの再利用を可能にする。該システムはまた、
装置を形成している離散的なモジュールの初期記述を得
るステップを除く全てのステップの自動化、及び、一般
的なスケジューリングアルゴリズムの形成を提供する。
【0038】図3を参照し、コンポーネント動作をモデ
ル化するための特別なシステムが記載される。好ましい
実施例としてのこの特別なシステムは、プリントエンジ
ン分析、シミュレーション、及びスケジューリングのた
めのプリントエンジンコンポーネント動作の記述のため
のものである。前述のように、基本的、一般的な記述方
法は多様な他のモジュラーシステムに等しく適用でき
る。
【0039】本発明の記述方法において、コンポーネン
トの構造及び動作は能力(潜在的動作)に関して記述さ
れ、この能力に対して、ワークユニット、タイミング、
及びリソースについての制約が記述される。このモデル
化システムは、プリントエンジンにおけるコンポーネン
トインタラクションの分析とシミュレーションのための
コンポーネントの構造及び動作の合成を可能にする。本
システムは、モジュール方式プリントエンジンのスケジ
ューリング動作に特に適用可能である。
【0040】本発明の方法によって、形成されるプリン
トエンジンがコンポーネント記述の合成によって記述可
能となるようプリントエンジンコンポーネントが記述さ
れる。さらに、結果として生ずるプリントエンジン記述
の上で多様なアプリケーションが自動的に実行されるこ
とができる。これによって、そのような情報を分析、シ
ミュレーション、スケジューリング、及び関連するプリ
ントエンジンアプリケーションのために自動的に使用す
ることが可能になる。図3の実施例において、(図1の
インバータ30に類似の)インバータ150に関連する
記述にモデル150’が与えられる。モデル化された構
造のコンポーネント及び動作は、コンポーネント自体の
物理的特性、及びモデルが使用されるアプリケーション
の内容の両方によって決定される。
【0041】本システムにおいて、コンポーネントの構
造モデルは、その物理的なインターフェース、ソフトウ
ェアインターフェース、及び内部リソースから構成され
るものとして定義される。例えば、物理的なインターフ
ェースは、ワークユニット(シート)が入力される入力
ポート152、及び前記ワークユニットが出力されるる
出力ポート154である。関連するソフトウェアインタ
ーフェースは、主に制御コマンドとパラメータに対して
機能する。内部リソースは、特定の動作を実行するため
に必要とされるオブジェクトとして定義され、この場
合、動作の反復実行によるオブジェクトの複数使用が限
定される。図3の例において、関連するゲート156の
位置としてリソースが定義される。リソースのもう一つ
の例は、インバータ150の対向する出力ローラー間の
スペース158である。ここで、ペーパーパスのほとん
どのポイントと同様に、任意の単一ポイントにおいて時
間内に1つのシートに対してのみ充分なスペースが存在
する。従って、スペース158はリソースとして定義さ
れる。
【0042】コンポーネントの動作モデルは、当該コン
ポーネントを介して移動するワークユニットに対して当
該コンポーネントがどのように作用するかに関して特定
のコンポーネントの能力を記述するために使用される。
さらに、動作モデルは、関連する動作を行う際にどのよ
うな制約が観測されなければならないかを示す。
【0043】コンポーネント能力は、ワークユニットの
記述、ワークユニットの処理の記述、ワークユニットの
入力及び出力のようなタイミングのとられたイベントの
記述、処理に対するリソースの割当の記述、及びイベン
トのタイミング及びリソース割当に対する制約の記述か
ら構成されるものとして定義される。ワークユニット
は、それらの属性に関して有利に記述される。ワークユ
ニットの制限及び処理は、それらの属性に対する制約に
関して有利に記述される。
【0044】図3において、いくらかの付加的モデル記
述が提供される。これらは、164で示されたシートの
ような特定のワークユニットに関連した記述を含む。イ
ンバータ150をバイパスするかしないか、もしくは反
転のためにそれを使用するかしないかといったような制
御状態が166に示される。パスの長さやローラー速度
の仕様のようなタイミングパラメータが168で提供さ
れる。例えば、関連するタイミング制約は、パスの長さ
とローラー速度に基づく規則を使用して適切に得られ、
例えば、出力時間は、パスの長さをローラー速度で除算
した値に入力時間を加えたものとして定義されることが
できる。特定の値は同じく適切に当該モデルのパラメー
タである。例えば、与えられたインバータのパスの長さ
が固定される一方で、ローラー速度が変化することがで
きて、従って使用されるモデルに対する環境によって設
定されることができる。ローラー速度パラメータは17
0で示される。
【0045】例えば、以下のリストは、図3に関連して
示されたインバータの適切なモデルを提供する。
【0046】
【数1】
【0047】このモデルは、2つのパラメータ(len
gth及びspeed)、1つの入力ポート(in)、
1つの出力ポート(out)、3つのリソース(in
R、outR、及びgateR)、及び6つの変数を宣
言する。また、このモデルは2つの能力(bypass
(バイパス)及びinvert(反転))を定義する。
バイパス能力に対して、シートsが時間t_inで入力
されて時間t_outで出力されること、3つのリソー
スの全てにおいてt_in、t_out、及びt_ga
teのそれぞれで割当がなされること、及び、入力から
出力までの移動時間を反映する多くのタイミング制約が
インターバル間で維持されることが定義される。シート
がその配勾を180°変えること(y軸の回りに回転さ
れること)と移動時間がより長いこと(そのシートサイ
ズに比例する)とを除いて反転能力も同様に定義され
る。このように、任意のコンポーネントの完全な機能の
記述が提供されることが理解される。
【0048】本発明のモデル化システムにより、他のコ
ンポーネントの記述及び他のコンポーネントとの相互作
用の記述の参照に依らずにコンポーネント構造が記述さ
れる。そのようなコンポーネント動作は、他のワークユ
ニットに依らず1つのワークユニットに対して記述され
る。さらに、本発明のモデル化システムは、プリントエ
ンジンの一般的な増分的分析、シミュレーション、及び
スケジューリングに対するコンポーネント能力の自動的
な動作的合成を可能にする。この記述フォーマットは、
連結されたコンポーネント(例えば、プリントエンジン
モジュール)を記述するモデルに対して、コンポーネン
トモデルの自動的な構造上の合成を可能とする。
【0049】逆に言えば、従来のアプローチでは、能力
及び制約は、コンポーネント間の特定な相互作用及びシ
ート又はイメージシーケンス間の相互作用の両方に関し
て表現されていた。このことは、それらを定義するのを
より困難にし、それらを再使用不可能にし、さらにそれ
らを合成不可能にする。システムをモデル化するフォー
マットは、前述の自動的な構成、最適化、及びスケジュ
ーリングを可能にする。
【0050】前述の説明から理解されるように、プリン
トエンジンのスケジューリングはその大部分が関連リソ
ースのスケジューリングである。これを効果的に行うた
めに、プリントエンジン動作の適正なシーケンスを増分
的にスケジューリングために情報が使用可能となるよ
う、プリントエンジン動作によって使用されるリソース
をモデル化しなければならない。広範囲のプリントエン
ジン動作に適用可能であることに加えて、リソースはま
た、スケジューラと、装置内の変化の情報を伝えるプリ
ントエンジン制御ソフトウェアの残りの部分との間の一
般的なインターフェイスとして適切に作用することがで
きる。
【0051】プリントエンジンのような装置のコンポー
ネントは、それらの能力を実行するためのリソースを通
常必要とする。例えば、特に印刷装置に関して、リソー
スは、ベルト上のスペース、特定の位置になければなら
ないゲート、又は、複数又はオーバーラップ使用のため
に配置されるいくつかのエレメントであり得る。ペーパ
ービンの容量はそのような複数又はオーバーラップ使用
の1例である。
【0052】リソースの割当は、コンポーネント動作記
述の一部分として明示的に適切にモデル化される。本明
細書において、リソース割当は、リソースについての要
求の仕様として定義され、この要求はその期間中に特定
のリソースが必要とされる時間インターバルを伴う。例
えば、画像形成能力は、特定の時間について受光体ベル
ト上にスペースを必要とする。この他の例として、イン
バータ能力は、シートが反転されている期間中にインバ
ータゲートが適正位置になければならないことを必要と
する。
【0053】本明細書において定義されるリソース要求
は、特定のリソースタイプに依存して選択される。可能
なリソースタイプは、ブーリアン(Boolean)リ
ソース(使用されるかされないかいづれかのリソー
ス)、計数された又は状態リソース(有効な状態の内の
1つに置かれたリソース)、容量リソース(同時使用が
追加される)、等のアイテムを含む。このようなリソー
スタイプはリソース制約によって一般的に有利に記述さ
れる。リソース制約は、同一リソースに対する複数割当
に対してそれ自体で整合性を決定する。
【0054】例えば、ベルト上のスペースのようなブー
リアンリソース割当は、同時にオーバーラップしてはな
らない。逆に、状態リソース割当は、同一の状態が必要
とされる場合はオーバーラップ可能である。容量リソー
ス割当は、要求の合計が所与の容量を越えない限りオー
バーラップ可能である。このようなリソースタイプは前
述のリソース制約を変更又はそれに特定の制約を付加す
ることによって容易に拡張可能である。
【0055】リソース割当の時間インターバルは、イン
ターバル制約によって適切に連結される。本明細書にお
いて、リソース制約システムとインターバル制約システ
ムは相互に直交する。リソース割当とタイミング制約の
記述は、スケジューリングに対する合成によるモデル化
パラダイムに良好にフィットする。
【0056】全てのコンポーネントが完全にモデル化さ
れると、プリントエンジンは最終的にランタイム状態に
移行される。図4を特に参照すると、プリントエンジン
モジュール202とデータ通信状態にあるスケジューラ
200が示される。プリントエンジンモジュール202
はいくつかのコンポーネントから構成され、コンポーネ
ントの各々はペーパー/画像パス204に沿って選択的
に配置されたリソースを使用する。そのようなリソース
は、コンポーネント210、212、214、216、
218、及び220で示される(それぞれは各コンポー
ネントに対応するリソースである)。これらリソースの
各々は同一の形態で適切に記述され、その内の1つが2
16’で詳細に示される。このシステムは、制御コード
部分220、コンポーネント/モデル部分222、及び
多くの通信パスを含む。制御パス224は、制御コマン
ドを制御コード部分220からコンポーネント/モデル
部分222へ伝送することを可能にする。同様に、セン
サーパス226は、センサーデータをコンポーネント/
モデル部分222から制御コード部分220へ伝送する
ことを可能とする。パス228は、コンポーネントによ
るリソースのスケジューリングされた使用を表す。より
詳細には、パス228は、コンポーネントを記述するモ
デル222から知識をスケジューラへ伝送し、この知識
が使用されてリソースの適正な使用がスケジューリング
される。パス230は、制御及びセンサー情報を同様に
スケジューラ200へ伝送することを可能とする。
【0057】ランタイムにおいて、スケジュール動作が
行われている場合、スケジューラ200は、同一のリソ
ースに対する対応する割当が、要求されたリソース制約
を満たすようインターバルを保証する。このことはま
た、過去のリソース割当を記録することによって適切に
増分的に実行される。
【0058】通常動作期間中において、スケジューラ2
00は自身の割当のみを考慮する。これを行うために、
スケジューラ200は、システムのモデルを使用して該
スケジューラがすでにスケジューリングした動作に対す
るリソースの使用を記述する。
【0059】このシステムはまた、リアルタイムでリア
クティブな環境に容易に適用可能であり、そのような環
境では、リソースが時々無効になるか又は通常容量のサ
ブセットに限定される。現実のハードウェアにおけるそ
のような変化は、例えば制御コード部分220に設けら
れたモジュールの制御ソフトウェアによって通常はモニ
ターされる。従来のシステムにおいては、スケジューラ
に特別なインターフェイスをもたせてモデルと現実のハ
ードウェアとの間の変移を伝送するために、又は制御さ
れたソフトウェアにスケジューラをアクセス可能とする
ために制御ソフトウェアが必要とされていた。
【0060】スケジューラ200内のリソース管理は、
適切に環境にアクセス可能にされる。より詳細には、こ
れはコンポーネント制御コード220に対して有効とさ
れる。スケジューラ200と同様に、制御コード220
は、そのようなリソースの計算を補助してハードウェア
の変化を反映することを可能にされる。このことは、ス
ケジューラ200が自動的にシステムの変化を考慮する
ことを可能とする。
【0061】モデルが使用されてコンポーネント能力の
デフォルト動作(リソース割当)が定義される。一方、
制御コード自体は現行の状況を反映するようその動作を
適応させる。このことは、環境によってリソース制約が
変化する場合においても適切に拡張される。一般的に、
このことは、スケジューラがリソースを使用しつつ(デ
フォルト定義から開始して)制御ソフトウェアがリソー
スを制御するように見える。
【0062】現実のオンラインによる実施において、ス
ケジューラはそのような未来の割当を自動的に作成し、
それらを考慮する。スケジューラが先を見越してさらに
割当を作成する場合、割当は、それがスケジューラ20
0(それぞれモデル222)からのものか又は制御コー
ド220からのものかに依存して異なる優先度を適切に
タグ付けされる。これによって、環境による割当と矛盾
するスケジューラによる任意の割当は、適切に自動的に
識別されて修正される。
【0063】本発明のシステムは、プリントエンジンに
固有の情報に関連するソフトウェアの一般的なスケジュ
ーリングを提供する。このスケジューリングは、プリン
トエンジンが個々のモジュールからカスタマーによって
合成される場合であっても提供される。システムは、モ
ジュール能力に従って作成されたプリントエンジンモジ
ュールの記述に基づいて動作する。本明細書において、
モジュール能力は本質的に、潜在的なモジュール出力で
ある。例えば、プリントエンジンモジュールのモジュー
ル能力によって生成されるモジュール出力は、2つの画
像を有して画像面を下にして搬送されるA4サイズのシ
ートであることが可能である。
【0064】より詳細には、モジュール能力は、特定の
出力の生成のトレースと考えられる。このトレースは、
モジュールポートにおける入力及び出力の両者の記述を
適切に有する。図5を参照すると、例示としてのプリン
トエンジン250はモジュール252、254、及び2
56を含み、これらはポート270及び272にそれぞ
れ接続される。これらモジュールは図示された能力26
0、262、及び264をそれぞれ与えられている。モ
ジュール252、254、及び256に対してデータ通
信パス274が与えられ、それらの能力をプリントエン
ジン制御ソフトウェアへレポートする。
【0065】例えば、モジュール252は入力トレイ2
80を有する。モジュール254は受光体282及びデ
ュープレックスフィードバックメカニズム284を有す
る。モジュール256は出力トレイ286を有する。
【0066】モジュール能力は、モジュール入力及び出
力ポートにそれぞれ関連する入力及び出力ワークユニッ
ト両者の記述、所望の生成動作に対して必要とされるリ
ソース割当、及び出力が生成される道のりを適切に有す
る。ワークユニットは、それらの属性に対する制約によ
って適切に記述される。リソース割当は、それらの時間
インターバルに対する制約と共に記述される。
【0067】モジュールのリソース割当は、コンパイル
された形態で適切に存在可能である。例えば、リソース
割当は、有限状態マシンにおける可能な割当のバリエー
ションとして存在可能である。
【0068】例示目的のために、<I,O,R,C>
は、入力I、出力O、リソース割当R、及び道のりCを
有する特定の能力を表すものとする。新たなプリントエ
ンジンを形成するモジュールがいっしょにプラグインさ
れてエンジンが始動する場合、接続274、274’、
及び274”を介して全てのプリントエンジンモジュー
ルから得られるモジュール能力290を収集及び合成す
ることによってスケジューラ又は他の連結されたソフト
ウェアコンポーネントが構成される。
【0069】1つのポートで接続された2つの装置モジ
ュールのモジュール能力を繰り返し合成することによっ
て装置能力に対してモジュール能力が合成される。例え
ば、第1及び第2のモジュールがポートpで接続される
場合、(O1 で定義される)pでの出力を生成する第1
モジュールのモジュール能力<I1 ,O1 ,R1 ,C1
>の全てに対して、及び、(I2 で定義される)pでの
入力を予期する第2モジュールのモジュール能力<I2
,O2 ,R2 ,C2 >の全てに対して、O1 及びI2
での出力及び入力それぞれが一体化(1対1対応)可能
な場合には、それら能力は適切に合成される。属性制約
はこのプロセスにおいて伝搬する。
【0070】例えば、O1 がシートサイズを制限する場
合、このことはI2 を介して第2の能力へ伝搬される。
一体化が達成されると、I2 におけるポートpの入力を
伴わずにIをI1 +I2 に設定し、OをO2 に設定し、
RをR1 +R2 に設定し、CをC1 +C2 に設定するこ
とによって合成能力<I,O,R,C>が生成される。
【0071】このモジュール能力の合成は、結果として
生じる能力がモジュール間ポートにおける入力及び出力
でない入力及び出力のみを有するようになるまで実行さ
れる。即ち、入力又は出力に連結されるモジュール能力
がさらに存在しないこととなる。結果として生じるその
ような能力はプリントエンジン能力となる。モジュール
は一般にいくつかの異なる能力を有するため、全ての代
替に対してモジュール能力の合成が各々実行され、複数
のプリントエンジン能力が結果として生じる。例えば、
図5の各モジュールが2つの能力を有する場合、いくつ
かのモジュール能力の入力が他のモジュール能力の出力
と一体化不可能でない限り、プリントエンジン全体は潜
在的に8つの能力を有する。
【0072】ワークユニットの属性が1回の循環パスで
1回だけ変化し、入力及び/又は出力で有限数の許容可
能な属性値が存在する場合に限り、前述の方法は循環パ
スに対しても動作する。そのようなパスにおいては、同
一のワークユニットが(いくつかのモジュールを介し
て)1回以上同一ポートへ移動される。
【0073】モジュール能力のそのような合成が効率的
に実行されることが可能である。プリントエンジン始動
時間が理想的に小さい範囲内でこのことは重要である。
このシステムの特別な利点は、スケジューラがランタイ
ムにおいてプリントエンジンのモジュールにおける動作
を一般的にスケジューリング可能となるモジュール方式
プリントエンジンの記述を生成することである。ワーク
ユニット属性制約の伝搬及びタイミング制約を伴うリソ
ース割当の合成を通じて、スケジューラはモジュール間
の適正な相互作用のみを可能とすることを保証される。
例えば、仕上げモジュールでシート間の遅延が必要とさ
れる場合、システムは適切に及び自動的にこのことを全
ての必要とされる先行するモジュールへ伝搬する。先に
述べたように、このことは、スケジューリングソフトウ
ェアが開発される時点でプリントエンジンモジュール間
の潜在的な相互作用が既知でなければならない従来のア
プローチとは対照的である。
【0074】バリエーションとして、プリントエンジン
始動時にモジュール能力の合成が行われない代わりに、
スケジューラによって時間ごとにプリントエンジン全体
の能力が識別される。この場合、1つのプリントエンジ
ン出力ポートにおける所望出力の属性記述から開始し、
その出力記述をそのポートで出力を生成するモジュール
能力の記述とマッチングすることで前述の方法はモジュ
ールを通じて適切に後戻りして実行される。次に、この
方法は選択されたモジュール能力の入力と、連結された
先行するモジュール能力の出力とを再び一体化する。1
つの入力と、連結された先行するモジュール能力の出力
とが一体化不可能な場合(即ち、所望入力が先行するモ
ジュールによって生成不可能な場合)、この方法はバッ
クトラックを行って代替的モジュール能力を試行する。
このような合成は、結果として生じる能力の全ての入力
がプリントエンジンの入力となるまで実行される。結果
として、所望出力を生成可能なプリントエンジン能力が
得られる。残りのデータ、リソース、タイミング、及
び、道のり情報は前述のように合成され、結果として生
じる能力の適正なスケジューリング及び実行のために使
用されることが可能である。
【0075】次に、プリントエンジンにおいて所望ドキ
ュメント生成するために必要な動作を一般的にスケジュ
ーリングシステムについて説明を行う。この動作は、一
般的なスケジューリングアルゴリズムとプリントエンジ
ン固有の情報との分離に基づく。このことは、アルゴリ
ズムとプリントエンジンアーキテクチャの両者を広範囲
なプリントエンジンファミリーに対して再使用すること
を可能とする。このことは、スケジューラに対するプリ
ントエンジンの情報がスケジューリングアルゴリズムに
組み込まれていた従来の方法とは対照的である。従っ
て、これら従来のシステムにおいては、組み込まれたア
ルゴリズムは容易に再使用不可能であった。
【0076】図6を参照すると、プリントエンジン能力
のセット300が示される。印刷装置動作の現実のスケ
ジューリングは、所望の結果を達成するために必要な動
作のセットを識別するステップ302を含む。次に、こ
れら動作のシーケンスがブロック304で決定される。
ブロック306において、印刷装置動作のスケジューリ
ングの始動が達成され、コンポーネント制御コマンドの
セットがスケジューリングシステムからの出力として3
08で提供される。
【0077】図6から、プリントエンジン能力300
は、出力、制約、及び道のりに関する情報を含む。ブロ
ック302の識別によって、そのような能力のサブセッ
ト320が発生する。次に、選択された能力320が、
シーケンス動作304及び始動動作306と共に使用さ
れる。
【0078】図6のシステムを通じた実際のドキュメン
トのフローのトレースは、所望のドキュメントに対する
実際の入力が識別ブロック302に与えられる場合に開
始する。この時点から、所望ドキュメントの形成を達成
するために必要な能力が決定される。識別ブロック30
2の出力は、そのような生の能力をタイミングがとられ
ていない形態で提供する。シーケンスブロック304に
おいて、ドキュメントの形成を達成するために必要なタ
イミング情報が提供される。従って、ブロック304か
らブロック306への出力は、時間能力の参照を伴って
提供される。前述のように、このことは、308でコン
ポーネント制御コマンドをリターンする。
【0079】本発明のシステムにおいて、スケジューリ
ングは一般的に、シート毎ベースのように、プリント動
作に対して増分的に同時進行的に動作しなければならな
い。従って、図6において、システムは、各々が所定の
タスクを達成するいくつかのコンポーネントに分割され
る。
【0080】図6の300に見られるようなプリントエ
ンジン能力の適切な例は、潜在的なプリントエンジン出
力であり得る。例えば、そのような出力は、2つの画像
を有して画像面を下にしたA4シートであり得る。より
詳細には、プリントエンジン能力は、装置の出力ポート
で定義される出力の記述、出力を生成するために必要な
リソース割当の記述、及び、出力が生成される道のりの
記述を有する。プリントエンジンにおけるシートのよう
なワークユニットは、先に詳述したようにそれらの属性
に対する制約によって適切に記述される。そのようなリ
ソース割当は、それらの時間インターバルに対する制約
と共に記述される。
【0081】次に、自動的に有限状態マシンを生成して
プリントエンジン能力のスケジューリングを可能とする
システムについて説明を行う。
【0082】能力タイミング制約はインターバル制約で
ある。能力のタイミング制約が、同等でない制約を全く
有さない場合、それらは有限なリーチバックを有する。
即ち、それらのインターバルセットは常に有限なインタ
ーバル内に存在する。このことは、最適なスケジュール
をサーチするスケジューリングアルゴリズムに対して2
つの重要な結果をもたらす。スケジューラは能力セット
の最大リーチバックを越えてサーチを行う必要が全くな
く、また、最大リーチバックはスケジュールに対する同
等な関係を定義する。(同等なものを有さない能力はリ
ジッドな能力と呼ばれる。同等でないものを同等となる
よう近似することによって、この方法全体はまたフレキ
シブルな能力(即ち、同等な制約を有する能力)に適用
可能である。しかし、結果として生じる有限状態マシン
は最適でない可能性がある。) 能力の導出は、信号及びタイミング制約を結果として生
じる。(以後、用語”能力”は、1つの導出された能力
の信号及び制約のセットを示すために使用される。)信
号は、(構成コンポーネントの出力ポートの)非オーバ
ーラップイベントのシーケンスである。イベントは、イ
ンターバルに関連するアクションである。タイミング制
約は、1値及び2値のインターバル制約である。
【0083】m個の能力を仮定する。各能力jにおい
て、n個の順序づけられた信号Si (j)=〔t
1 (i,j), ... ,tn(i,j)(i,j)〕(i
=1,... ,nであり信号インデックスと呼ばれ、
j=1, ... ,mであり能力インデックスと呼ば
れる。)ここで、信号のイベントのインターバルtのみ
が表される。n(i,j)は0になり得る。t
out (j)=(sout (j),dout (j))を能力j
のエンドインターバルとする。即ち、出力ポートに対応
する、当該信号におけるインターバルである。全てのタ
イミング制約は信号Si(j)におけるインターバルに
関する。
【0084】有限状態マシンの状態スペースを少なくす
るために制約が無視されてランタイム中にチェックされ
る場合、このことはいくつかの点で不都合を生じる可能
性がある。例えば、位置合わせされた当該期間内にある
制約が後の分析から排除される場合、能力期間は一般に
非常に短くなる。代替的に、信号全体及びそれらの制約
が排除されることが可能であり、このことは同等関係を
強化する可能性がある。
【0085】増分的な最適スケジューリングのために、
以下の分析及びその結果生じるパラメータが必要であ
る。
【0086】例示化(instantiation):
分析は、各能力エンドを0に例示化することによって
開始する。
【0087】
【数2】
【0088】全ての2値制約は同等な制約であるため、
このことは全ての他のインターバルも同様に例示化し、
2値制約は除去可能になる。残りの制約(例えば、位置
合わせされ、当該期間内にあり、パスのない制約)は統
合制約(integration constrain
ts)と呼ばれる。例示化の後、能力は現行のスケジュ
ールに統合されることが可能であり、これは全てのイン
ターバルを一定量シフトすること及び統合制約をチェッ
クすることによって行われる。
【0089】規格化(normalization):
各信号インデックスiに対して、信号の最後のインタ
ーバルと能力のエンドとの間の全ての能力にわたる最小
距離を規格化シフトui とする。即ち、例示化された能
力に対して次式が成り立つ。
【0090】
【数3】
【0091】(sn(i,j)(i,j)はtn(i,j)(i,
j)(信号Si (j)の最後のインターバル)のスター
トである。規格化定数ui は負又は0である。) 全ての能力において信号iがui だけシフトされる場
合、特定の能力jにおける少なくとも1つの信号S
i (j)はその最後のインターバルを0でスタートす
る。
【0092】リーチバック(reach−back):
各信号iに対して、任意の能力における信号の最後の
インターバルの最大のスタートと任意の能力における信
号の最初のインターバルの最小スタートとの間の距離を
規格化されたリーチバックr i とする。即ち、規格化シ
フトを伴う例示化された能力に対して次式が成り立つ。
【0093】
【数4】
【0094】(s1 (i,j)はt1 (i,j)(信号
i (j)の最初のインターバル)のスタートであ
る。) 最大リーチバックrmax をrmax =maxi=1, ... ,n
(r)とする。
【0095】インクリメント(increment):
能力の最適配置をサーチする場合、スケジューラはミ
リ秒ごとに試行を行う必要はない。その代わりに、最小
インクリメントがタイミング制約から算出可能である。
これは、例示化された能力の継続時間及び全てのインタ
ーバルのスタート、及び全ての制約を位置合わせされて
当該期間にある制約から収集し、これらの数値の最大共
通分母(”GCD”)を算出することによって実行可能
である。結果として得られるインクリメントをincと
する。
【0096】期間(period): 特定のクロック
に対してインターバルを制限する、位置合わせされた当
該期間にある制約が与えれる場合、能力期間が識別され
ることが可能である。(例えば、複数の特定のタイミン
グが特定の1つの期間を法として同一である場合、これ
らタイミングは同等なものとして識別可能である。) 全ての能力について当該期間にある任意の制約における
最大の期間定数、又は、そのような期間定数が存在しな
い場合には、全ての能力について位置合わせされた任意
の制約における最大の位置合わせファクタ、又は、前記
期間及び前記位置合わせされた制約のいづれもが存在し
ない場合には、インクリメントincを期間pとする。
【0097】拡張(extension): 最大リー
チバックrmax 及び期間pがあたえられる場合、所与の
スケジュールのエンドから新たに統合された能力までの
オフセットを境界付けることが可能である。最小の拡張
境界をext=max(rma x ,p)とする。1つの能
力に由来するリソース割当のみを有する状態は基本状態
と呼ばれる。1つの能力によって状態を拡張する場合、
最大の拡張は基本状態に帰結される。特定の期間におい
て、その期間内の全てのエンドに対する全ての基本状態
はそこに到達されなければならない。能力jに対してe
xt−rj +incが期間p以上である場合、最小拡張
境界extは状態を拡張して全ての基本状態に至らせる
のに充分である。そうでない場合、拡張境界はその差だ
け増加されなければならない。従って、各能力jに対し
て、extj =ext+max(0,p−(ext−r
j +inc))とする。
【0098】前述の能力パラメータが与えられる場合、
最初に全ての初期状態を生成し、次に、多様なオフセッ
トで能力を統合して新たな状態を導出することによって
有限状態マシンが生成可能となる。このことはスケジュ
ール及び状態に対するいくつかの処理を必要とする。即
ち、スケジュールを拡張すること、スケジュールをクリ
ップして状態と得ること、状態を規格化すること、及び
状態の同等性をチェックすることを必要とする。(拡張
及びクリッピングの定義は前進スケジューリングに対し
て与えられ、後戻りスケジューリングに対するこれらに
対応する定義は同様である。) スケジュール拡張: スケジュールは、信号のセット及
び非通過制約のセットから構成される。スケジュールS
は能力jとオフセットoによって新たなスケジュールS
へ拡張される。この拡張は、例示化された能力をoだけ
シフトし、その信号と非通過制約とをSと統合すること
によって実行される。1つの能力は、そのシフトされた
インターバルのいづれもが同一の信号においてオーバー
ラップせず、全ての統合制約が保持される場合に、支障
なく統合可能である。能力は順序付けられてスケジュー
リングされなければならないため、つぎの可能なオフセ
ットo’はo+dout (j)となる。この機能のインタ
ーフェースをintegrate(+S,+o,+j,
−S’,−o’)とする。
【0099】スケジュールクリッピング(clippi
ng): 各拡張の後、未来の信号のリーチバック内に
ある部分のみが関心事項となる。しかるべきクリップを
されたスケジュールをスケジュール状態と呼ぶ。即ち、
スケジュールS’が与えられる場合、下部境界li =e
=ri +ui の下となる全ての信号si をクリップする
ことによって状態S”が導出される。ここで、e=o’
は状態のエンドであり(前述の統合によって算出され
る)、ri 及びui は信号インデックスiに対するリー
チバック及び規格化シフトである。同様に、インターバ
ルが各々の信号の下部境界以下である非通過制約の全て
が除去可能である。クリッピングに対する共通の考え方
は、除去される制約(インターバル及び非通過制約)が
未来の拡張によって阻害され得ないということである。
この機能のインターフェースをclip(+S’,+
e,−S”)とする。
【0100】状態規格化: 状態が比較可能となる前
に、それらは規格化されなければならない。状態規格化
手段は、状態がインターバル〔O,p〕内で終了するよ
う状態をシフトする。即ち、状態S”が与えられる場
合、全てのインターバルを(emod p−e)だけシ
フトすることによって規格化状態S’’’が導出され
る。ここで、eは状態S’’’のエンドである。この機
能のインターフェースをnormalize(+S”,
−S’’’)とする。
【0101】状態同等性: 2つの規格化された状態が
それらの信号内のインターバルの割当において同一であ
り、それらが同一の非通過制約を有する場合、この2つ
の規格化された状態は同等である。
【0102】以下、前進スケジューリングのための生成
方法が説明される。後戻りスケジューリングのための対
応する方法は、適切な後戻り拡張及びクリッピング機能
を使用する点においてのみ異なる。
【0103】一般に、この生成方法は、規格化された全
ての状態をインデックスと共に記録する(アルゴリズム
において明示的に示されない)。また、dだけ変移され
た能力jによる状態S1 からS2 への拡張の各々に対し
て、transition(index(S1 ),j,
d,index(S2 ))が記録される。もちろん、拡
張が、既に存在している状態に到達する場合(同等性機
能によって決定される)、その状態のインデックスが使
用される。変移dは、Sのエンドと能力jの最後のイン
ターバルのスタートsout との間の距離である。
【0104】初期状態の生成: {O,inc,
... ,p−inc}における各eに対して、リソ
ース毎に1つの割当を有するエンドeを伴う状態を生成
することによって、初期状態が生成される。ここで、リ
ソースjに対する割当のインターバルはe−ri からe
まで延在する。割当要求は、リソースのタイプに依存
し、初期状態に対応する。初期状態では、対応する現実
のオブジェクトが最初に入力される。Iを初期状態のセ
ットとする。
【0105】全ての状態及び遷移の生成: メインとな
る生成方法は、初期状態Iから開始し、状態を連続的に
拡張して新たな状態を生成してゆく。従って、初期状態
Iから開始し、全ての状態S(エンドeを有する)及び
全ての能力jに対して以下のアルゴリズムが実行され
る。
【0106】
【数5】
【0107】最適な有限状態マシンのみを生成するより
シンプルなアルゴリズムは以下のようになる。
【0108】
【数6】
【0109】小規模なスケジューリングのために、各状
態及び能力に対する最初の拡張のみが記録されなければ
ならない。ext以上の変移を伴う全ての拡張は能力j
の初期ステップに帰結する。最適スケジューリングのた
めに、全ての初期状態に対して1つのそのような拡張が
存在しなければならない。
【0110】前述の方法はまた、算出されたものより小
さいリーチバック及び拡張を選択することによって小規
模から最適までの範囲での有限状態マシンの生成を可能
とする。結果として得られる遷移関係は有限状態マシン
を定義する。
【0111】図7を参照すると、最適な有限状態マシン
を生成する適切なアルゴリズムを示すフローチャートが
提供される。このアルゴリズムはブロック400で開始
する。この時点において、制約及び初期状態の両者が算
出され、次にブロック402へ進む。この時点で状態S
が残っていない場合、プロセスは完了する。残っている
場合はブロック404へ進む。
【0112】ブロック404において、定数jが1に設
定される。次に、ブロック406において、定数dが0
に設定される。次にプロセスはステップ408に進み、
能力jがe+dで状態Sへ統合可能かどうかに関する決
定がなされる。
【0113】否定的決定によって、ブロック410にお
いてdが増分値incだけ増分され、次にステップ40
8へ進む。ブロック408における肯定的決定によっ
て、プロセスはブロック412へ進む。この時点で、シ
ステムは、クリップ、規格化、新たな状態の記録、及び
遷移の記録を行うよう機能する。
【0114】次に、ブロック414において、d=ex
j かどうかに関する決定がなされる。否定的決定によ
ってプロセスはブロック410へ進み、前述の増分が与
えられる。ブロック414における肯定的決定によっ
て、プロセスはブロック416へ進む。
【0115】ブロック416において、jの値がチェッ
クされ、それが最後の能力がどうかが決定される。もし
そうならば、プロセスは前述のブロック402へ戻され
る。もしそうでないならば、ブロック418において値
jは増分され、プロセスは前述のブロック406へ進
む。
【0116】本発明は、好ましい実施例に関して記述さ
れた。明らかに、本明細書の理解によって変形と代替が
生じる。そのような全ての変形と代替は、請求項及びそ
の同等物の範囲内となる限り本発明に含まれることが意
図される。
【0117】
【発明の効果】以上説明したように、本発明により、モ
ジュールから構成される印刷装置において、装置の利用
性及び構成のしやすさが強化される。
【図面の簡単な説明】
【図1】本発明の自動化構成及びスケジューリングを組
み込んだモジュール方式印刷装置の概略図である。
【図2】本発明の自動化構成及びスケジューリングを実
行するための動作の階層的順序付けの詳細を表すフロー
チャートである。
【図3】本発明の自動化構成及びスケジューリングに関
連して使用される印刷装置コンポーネントの一般的記述
を表す図である。
【図4】本発明において与えられるリソースを使用する
スケジューラと制御コードの相互作用を示すブロック図
である。
【図5】モジュール能力からプリントエンジン能力が合
成される本発明のシステムのブロック図である。
【図6】プリントエンジン能力を用いた一般的スケジュ
ーリングを示す図である。
【図7】最適な有限状態マシンを生成する適切なアルゴ
リズムを示すフローチャートである。
【符号の説明】
A プリントエンジン B モジュール C データプロセッサユニット

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 プリントエンジンの能力を分析して有限
    状態マシンを生成し、プリントエンジンをスケジューリ
    ングするシステムであって、 複数のプリントエンジンコンポーネント能力を受信する
    手段を備え、各コンポーネント能力はコンポーネント能
    力データセットによって定義され、 各データセットから信号データ及びタイミング制約を導
    出する導出手段を備え、信号を定義する信号データは対
    応するプリントエンジンコンポーネント上の非オーバー
    ラップイベントのシーケンスとして形成され、イベント
    は、動作を完了するための時間インターバルに関連する
    対応するプリントエンジンコンポーネントのアクション
    であり、タイミング制約データは、対応するプリントエ
    ンジンコンポーネントに対する1値か又は2値のインタ
    ーバル制約のいづれか一方として定義され、 複数のプリントエンジンコンポーネント能力データセッ
    トの各々を0に例示化する例示化手段を備え、 各信号を規格化する信号規格化手段を備え、 各信号関連する最新のインターバルの最大の開始点とそ
    の信号の最初のインターバルの最小の開始点との間の距
    離としてリーチバック値を定義するリーチバック手段を
    備え、 各データセットのタイミング制約データに従って最小の
    増分を決定する増分決定手段を備え、 選択されたクロック値に対して制限されたインターバル
    から定義される期間を識別する期間識別手段を備え、 最大リーチバック値及び期間に従って境界値を定義する
    拡張手段を備える、プリントエンジンスケジューリング
    システム。
JP8142997A 1995-06-07 1996-06-05 プリントエンジンスケジューリングシステム Pending JPH0923293A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US475003 1983-03-14
US08/475,003 US5835688A (en) 1995-06-07 1995-06-07 Generic method for automatically generating finite-state machines for schedudling from print engine capabilities

Publications (1)

Publication Number Publication Date
JPH0923293A true JPH0923293A (ja) 1997-01-21

Family

ID=23885842

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8142997A Pending JPH0923293A (ja) 1995-06-07 1996-06-05 プリントエンジンスケジューリングシステム

Country Status (4)

Country Link
US (1) US5835688A (ja)
EP (1) EP0747791B1 (ja)
JP (1) JPH0923293A (ja)
DE (1) DE69615454T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001138606A (ja) * 1999-08-10 2001-05-22 Xerox Corp 装置用スケジューラ、装置用スケジューリング方法、及びコンピュータ読取り可能媒体
JP2001158155A (ja) * 1999-08-10 2001-06-12 Xerox Corp 装置用スケジューラ、装置をスケジューリングする方法、及びコンピュータ読取り可能媒体

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6430569B1 (en) * 1998-08-14 2002-08-06 Sun Microsystems, Inc. Methods and apparatus for type safe, lazy, user-defined class loading
US6766521B1 (en) 1999-05-27 2004-07-20 Sun Microsystems, Inc. Dataflow algorithm for symbolic computation of lowest upper bound type
US6618769B1 (en) * 1999-05-27 2003-09-09 Sun Microsystems, Inc. Module-by-module verification
US6618855B1 (en) 1999-05-27 2003-09-09 Sun Microsystems, Inc. Caching untrusted modules for module-by-module verification
US6601114B1 (en) 1999-05-27 2003-07-29 Sun Microsystems, Inc. Fully lazy linking with module-by-module verification
US6763397B1 (en) 1999-05-27 2004-07-13 Sun Microsystems, Inc. Fully lazy linking
US6999188B1 (en) 2000-10-30 2006-02-14 Konica Minolta Printing Solutions U.S.A., Inc. Dynamically configurable printer and method of use thereof
AUPR230900A0 (en) * 2000-12-22 2001-01-25 Canon Kabushiki Kaisha Print engine simulator
AU771270B2 (en) * 2000-12-22 2004-03-18 Canon Kabushiki Kaisha Print engine simulator
US6907305B2 (en) * 2002-04-30 2005-06-14 Advanced Micro Devices, Inc. Agent reactive scheduling in an automated manufacturing environment
US7512454B1 (en) 2002-05-31 2009-03-31 Advanced Micro Devices, Inc. Display unit with processor and communication controller
US6782302B1 (en) 2002-08-30 2004-08-24 Advanced Micro Devices, Inc. Method and apparatus for scheduling workpieces with compatible processing requirements
US6904329B1 (en) 2002-08-30 2005-06-07 Advanced Micro Devices, Inc. Method and apparatus for generating a multi-dimensional cost function
US6801819B1 (en) 2002-08-30 2004-10-05 Advanced Micro Devices, Inc. Method and apparatus for evaluating bids for scheduling a resource
US7069097B1 (en) 2002-08-30 2006-06-27 Advanced Micro Devices, Inc. Method and apparatus for reducing scheduling conflicts for a resource
US7127310B1 (en) 2002-08-30 2006-10-24 Advanced Micro Devices, Inc. Method and apparatus for determining cost functions using parameterized components
US7813993B1 (en) 2002-08-30 2010-10-12 Advanced Micro Devices, Inc. Method and apparatus for scheduling a resource
US7742185B2 (en) 2004-08-23 2010-06-22 Xerox Corporation Print sequence scheduling for reliability
US7337032B1 (en) 2004-10-04 2008-02-26 Advanced Micro Devices, Inc. Scheduling ahead for various processes
US7463939B1 (en) 2004-11-18 2008-12-09 Advanced Micro Devices, Inc. Scheduling tools with queue time constraints
US7505951B2 (en) * 2006-05-30 2009-03-17 Motorola, Inc. Hierarchical state machine generation for interaction management using goal specifications
US7657434B2 (en) * 2006-05-30 2010-02-02 Motorola, Inc. Frame goals for dialog system
US7797672B2 (en) * 2006-05-30 2010-09-14 Motorola, Inc. Statechart generation using frames
US20080147364A1 (en) * 2006-12-15 2008-06-19 Motorola, Inc. Method and apparatus for generating harel statecharts using forms specifications
EP2120120B1 (en) * 2008-05-14 2012-10-31 Siemens Aktiengesellschaft Method for modelling and executing a production rule in a discrete manufacturing scenario
US10375106B1 (en) * 2016-01-13 2019-08-06 National Technology & Engineering Solutions Of Sandia, Llc Backplane filtering and firewalls
US11347459B2 (en) 2020-10-13 2022-05-31 Xerox Corporation Method for producing worst-case comparison of greedy and optimal sheet scheduling

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4125325A (en) * 1977-08-30 1978-11-14 Xerox Corporation Automatic duplex control system for a reproduction machine
US4511928A (en) * 1980-08-29 1985-04-16 Sonics Research Corporation System and method for high quality image reproduction with grayscale image print while store capability
US5056014A (en) * 1985-02-04 1991-10-08 Lockheed Sanders, Inc. Network simulation system
US4969092A (en) * 1988-09-30 1990-11-06 Ibm Corp. Method for scheduling execution of distributed application programs at preset times in an SNA LU 6.2 network environment
US5224207A (en) * 1988-10-03 1993-06-29 Xerox Corporation Improved remote programming using display screen
JP2989191B2 (ja) * 1988-11-16 1999-12-13 株式会社リコー 画像形成システム
US4991176A (en) * 1989-06-07 1991-02-05 At&T Bell Laboratories Optimal test generation for finite state machine models
US5161115A (en) * 1989-09-12 1992-11-03 Kabushiki Kaisha Toshiba System test apparatus for verifying operability
US5125098A (en) * 1989-10-06 1992-06-23 Sanders Associates, Inc. Finite state-machine employing a content-addressable memory
US5038307A (en) * 1989-10-30 1991-08-06 At&T Bell Laboratories Measurement of performance of an extended finite state machine
US5107299A (en) * 1990-09-28 1992-04-21 Xerox Corporation Printer job recovery of complete or partially complete jobs in an electronic reprographic printing system
US5179410A (en) * 1990-09-28 1993-01-12 Xerox Corporation Printer dynamic job recovery in an electronic reprographic printing system
US5095342A (en) * 1990-09-28 1992-03-10 Xerox Corporation Methods for sheet scheduling in an imaging system having an endless duplex paper path loop
US5187587A (en) * 1990-09-28 1993-02-16 Xerox Corporation Handling of copy sensitive jobs in an electronic reprographic printing system using unidirectional and bidirectional delivery of copies to plural bins
US5095369A (en) * 1990-09-28 1992-03-10 Xerox Corporation Method and apparatus for improved job stream printing in an electronic printer with various finishing function
US5301100A (en) * 1991-04-29 1994-04-05 Wagner Ferdinand H Method of and apparatus for constructing a control system and control system created thereby
US5317757A (en) * 1992-02-06 1994-05-31 International Business Machines Corporation System and method for finite state machine processing using action vectors
US5471564A (en) * 1992-07-10 1995-11-28 Microsoft Corporation System and method for dynamic printer timeout
US5287194A (en) * 1992-11-25 1994-02-15 Xerox Corporation Distributed printing
US5363175A (en) * 1993-03-01 1994-11-08 Xerox Corporation Distributed job scheduling with modular components
US5325528A (en) * 1993-04-22 1994-06-28 Digital Equipment Corporation Distributed computation recovery management system and method
CA2122182A1 (en) * 1993-05-20 1994-11-21 Rene Leblanc Method for rapid prototyping of programming problems
US5402367A (en) * 1993-07-19 1995-03-28 Texas Instruments, Incorporated Apparatus and method for model based process control
US5422705A (en) * 1993-07-29 1995-06-06 Xerox Corporation System for selectively variable set delivery output in an electrostatographic printing machine
US5337135A (en) * 1993-09-30 1994-08-09 Xerox Corporation Higher productivity trayless duplex printer with variable path velocity
US5502543A (en) * 1994-06-28 1996-03-26 Xerox Corporation System for collecting statistical data on remotely monitored machines
US5436730A (en) * 1994-07-05 1995-07-25 Xerox Corporation Method of managing a proof approval process for proofing documents in a printing system
US5504568A (en) * 1995-04-21 1996-04-02 Xerox Corporation Print sequence scheduling system for duplex printing apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001138606A (ja) * 1999-08-10 2001-05-22 Xerox Corp 装置用スケジューラ、装置用スケジューリング方法、及びコンピュータ読取り可能媒体
JP2001158155A (ja) * 1999-08-10 2001-06-12 Xerox Corp 装置用スケジューラ、装置をスケジューリングする方法、及びコンピュータ読取り可能媒体

Also Published As

Publication number Publication date
EP0747791A2 (en) 1996-12-11
DE69615454T2 (de) 2002-04-18
EP0747791B1 (en) 2001-09-26
US5835688A (en) 1998-11-10
EP0747791A3 (en) 1998-10-28
DE69615454D1 (de) 2001-10-31

Similar Documents

Publication Publication Date Title
JPH0923293A (ja) プリントエンジンスケジューリングシステム
JP4776652B2 (ja) プリントエンジン装置の能力を決定する方法
JP4040708B2 (ja) プリントエンジンリソースをモデル化してプリントタスクのスケジューリングを行うシステム
US5694529A (en) System for automatically configuring print engine software from print engine module capabilities
JPH091897A (ja) 自動化された装置動作スケジュールを生成するシステム
JPH0934511A (ja) 装置動作スケジューリングシステム
EP0778515B1 (en) Generic assembly trees for job control and mix and match of modules
US5559606A (en) Flexible configuration of document output terminals from autonomous machine modules
US5701557A (en) Machine graphs and capabilities to represent document output terminals composed of arbitrary configurations
US5604600A (en) Production trees for generic representation of document requirements for particular output terminals
US7230736B2 (en) Planning and scheduling reconfigurable systems with alternative capabilities
US5631740A (en) Transducers with constraints model for print scheduling
EP0778523A2 (en) Method of operation for an image processing apparatus
US5682247A (en) Partial or untimed production trees to specify specific output terminal operation
Fromherz et al. Model-based computing for design and control of reconfigurable systems
Fromherz Constraint-based scheduling
US5617214A (en) Commitment groups to generalize the scheduling of interdependent document output terminal capabilities
US5617215A (en) Assembly trees for canonical representation of documents and blending multiple functions
EP4369193A1 (en) Job schedule quality prediction and job scheduling
Lowinski Parallelization of legacy automotive control software for multi-core platforms
Stähle A model-based framework for system-Wide plug-and-play with flexible timing verification for automotive systems
Van den Bosch et al. 11.1. 2 A case study of multi‐disciplinary modeling using MATLAB/Simulink and TrueTime 1
Ryu et al. Performance re-engineering of embedded real-time systems
Khatib Modeling and scheduling embedded real-time systems using Synchronous Data Flow Graphs

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050712

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050719

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20051019

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20051024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060119

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060815