JPH09185508A - 画像形成装置および画像形成方法 - Google Patents

画像形成装置および画像形成方法

Info

Publication number
JPH09185508A
JPH09185508A JP7343380A JP34338095A JPH09185508A JP H09185508 A JPH09185508 A JP H09185508A JP 7343380 A JP7343380 A JP 7343380A JP 34338095 A JP34338095 A JP 34338095A JP H09185508 A JPH09185508 A JP H09185508A
Authority
JP
Japan
Prior art keywords
sequence
sub
dependency
sequences
image forming
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.)
Granted
Application number
JP7343380A
Other languages
English (en)
Other versions
JP2910649B2 (ja
Inventor
Hiroshi Kawamoto
浩史 川本
Toru Fuse
透 布施
Shoji Sakamoto
彰司 坂本
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP7343380A priority Critical patent/JP2910649B2/ja
Priority to US08/743,210 priority patent/US5936634A/en
Publication of JPH09185508A publication Critical patent/JPH09185508A/ja
Application granted granted Critical
Publication of JP2910649B2 publication Critical patent/JP2910649B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/60Editing figures and text; Combining figures or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K15/00Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers
    • G06K15/02Arrangements for producing a permanent visual presentation of the output data, e.g. computer output printers using printers
    • G06K15/18Conditioning data for presenting it to the physical printing elements
    • G06K15/1848Generation of the printable image
    • G06K15/1856Generation of the printable image characterized by its workflow
    • G06K15/1857Generation of the printable image characterized by its workflow involving parallel processing in the same printing apparatus

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Record Information Processing For Printing (AREA)
  • Advance Control (AREA)
  • Image Processing (AREA)
  • Image Generation (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

(57)【要約】 【課題】 命令シーケンスを複数のサブシーケンスに分
割して、複数の描画命令演算手段で実行させる場合に、
互いに重なりを持つ画像要素が存在しても、効率的な並
列スケジュールを組むことができ、高速な描画命令実行
を可能にする。 【解決手段】 シーケンス分割手段1で分割されたサブ
シーケンスを受けて、順序依存性のあるサブシーケンス
には向きを持った枝を与え、枝が与えられたサブシーケ
ンスに順序依存性のある別のサブシーケンスがあるとき
にはそのサブシーケンスを順序依存性の判定処理対象か
ら除くようようにする管理情報構成手段2bを備え、か
つ、サブシーケンスを実行先の描画命令演算手段16
a,16b,・・・16nに配分する際に、配分しよう
とするサブシーケンスが配分先以外で実行されるサブシ
ーケンスに依存している場合には、その依存先のサブシ
ーケンスの処理を待ってから処理するようにしたスケジ
ューリング手段3を備えている。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は画像形成装置に関
し、特に画像を記述する言語で表現された命令シーケン
スを複数の命令処理装置により実行して画像情報を得る
ための画像形成装置に関する。
【0002】
【従来の技術】電子写真方式、インクジェット方式など
の高速ディジタル印刷に適した印刷装置の開発に伴い、
従来の文字情報中心の印刷方式から脱皮した、画像、図
形、文字などを同様に取り扱い、文字、図形等の拡大、
回転、変形などが自由に制御できる「ページ記述言語」
を用いる印刷制御方式が一般に普及してきた。1980
年代に様々なページ記述言語が開発され、その代表例が
PostScript(ポストスクリプト、Adobe
Systems社商標)と、Interpress
(インタープレス、Xerox社商標)であるが、様々
なプリンタに多くのページ記述言語が用いられている。
【0003】従来のページ記述言語処理印刷装置では、
印刷装置の中央処理装置(CPU)で逐次的に解釈を行
い、印刷装置のプリンタ装置で印字動作を実行すること
が行われていた。その一例として、特開平1−1883
74号公報にはコンピュータ(以下ホスト装置という)
から送られてくる印字のためのプログラム(以下印刷情
報という)を受け付け、記憶する記憶装置と、その印刷
情報を逐次的に解釈するプロセッサと、この解釈された
印刷情報に従い印字動作をする印刷装置とを設け、ホス
ト装置から印刷装置へ印刷情報が一旦伝送された後は、
印刷装置側で印刷情報を翻訳し、印字動作を行うことに
よりホスト装置の負荷を減らし、システム全体の処理速
度を向上させることが記載されている。
【0004】しかしながら、ネットワークを用いた分散
環境では、印刷装置を共有して使用する形態が標準とな
ってきた。その印刷装置は多くのホスト装置からのプリ
ント要求を受け付けて、ページ記述言語で記述された印
刷情報の解釈、実行が行われなければならない。多くの
ホスト装置から同時に利用される場合、印刷装置でのペ
ージ記述言語で記述された印刷情報の解釈、実行が直列
的に行われるので、プリント要求をしてから結果を得る
までの待ち時間は長くなる。この状況は印刷解像度の増
大とともに深刻化してきている。
【0005】そこで、上記の待ち時間を解消し、画像形
成を高速に実行するために、並列的に描画命令の解釈、
実行を行う技術が提案されている。例えば、PCT/J
P91/00456号に開示された技術では、ネットワ
ーク上に分散された複数のコンピュータ上で印刷画像の
形成処理を分担しており、特開平7−104987号公
報に開示された技術は、文書印刷プログラムにおける画
像操作手順を解析生成し、並列実行コードを生成するも
のである。
【0006】
【発明が解決しようとする課題】しかしながら、上記従
来の並列処理方式においては、描画命令を並列に実行す
るには命令シーケンスを分割することが必要であるが、
その命令シーケンスの分割が必ずしも十分に行われてい
なかった。すなわち、PCT/JP91/00456号
に開示された技術では、画像形成する領域をバンド状あ
るいは、メッシュ状に分割することにより、描画操作を
複数の処理として並列実行するものであり、実際に入力
される描画命令シーケンスの持つ並列性を十分に引き出
したものではなかった。また、特開平7−104987
号公報に開示された技術では、並列に描画実行できるか
の判定を、それまでに画像形成された画素と次の命令実
行により画像形成される画素との直接比較によって実施
しているため、大きな処理オーバヘッドを発生させてい
る。これは、ユーザーが編集作業を終えて印刷を指令し
てから誌面を得るまでの総時間を考えると、結局は多く
の時間を消費してしまう可能性がある。
【0007】さらに、上記いずれの発明においても、図
形の重なりがあるため分割できない領域に関しては、逐
次処理するために十分な高速化がはかれていないという
問題点があった。
【0008】本発明はこのような点に鑑みてなされたも
のであり、印刷情報に互いに重なりを持つ画像要素が存
在しても、効率的な並列スケジュールを組むことがで
き、高速な描画命令実行が可能となる画像形成装置を提
供することを目的とする。
【0009】本発明は、また、画像要素が互いに重なっ
ているような印刷情報に対して、高速な描画命令の実行
を可能とする画像形成方法を提供することを目的とす
る。
【0010】
【課題を解決するための手段】図1は本発明による画像
形成装置の原理構成を示す図である。この図において、
画像形成装置は、ページ記述言語等で記述された画像の
形成を行う命令シーケンスを受けてこれを複数のサブシ
ーケンスに分割するシーケンス分割手段1と、各サブシ
ーケンス間の順序依存性を判定して順序関係を持った構
造データを構成する依存性解析手段2aおよび管理情報
構成手段2bと、サブシーケンスの実行を管理するスケ
ジューリング手段3と、サブシーケンスを実行する複数
の描画命令演算手段4a,4b,・・・,4nと、これ
らの描画命令演算手段4a,4b,・・・,4nからの
部分画像を合成して一つの全体画像に纏めるデータ回収
手段5とによって構成されている。
【0011】依存性解析手段2aは分割されたサブシー
ケンス間の処理の順序依存性を判定するように構成され
ている。管理情報構成手段2bは順序依存性のあるサブ
シーケンスに向きを持った枝を与え、枝が与えられたサ
ブシーケンスに順序依存性のある別のサブシーケンスが
あるときにはそのサブシーケンスを順序依存性の判定処
理対象から除くように構成されている。スケジューリン
グ手段3はシーケンス分割手段1が生成したサブシーケ
ンス群を受け取って、処理の順序関係を保持した状態で
描画命令演算手段4a,4b,・・・,4nに配分する
ように構成されている。
【0012】上記構成の画像形成装置によれば、まず、
画像形成処理を記述した命令シーケンスをシーケンス分
割手段1において、それぞれが他に不足情報を必要とせ
ずに実行できるサブシーケンスの集合に分割する。次
に、依存性解析手段2aが、このサブシーケンスの集合
を構成する各サブシーケンスの間に処理の順序依存性が
存在するかを解析する。
【0013】管理情報構成手段2bでは、命令シーケン
ス全体の依存関係を一つの構造データとして構成し、依
存関係を保存したまま処理実行するためのスケジュール
の準備をする。
【0014】スケジューリング手段3は、管理情報構成
手段2bの作成した構造データを基に、サブシーケンス
群を描画命令演算手段4a,4b,・・・,4nに配分
する処理計画を立てる。スケジューリング手段3がある
サブシーケンスを実行先の描画命令演算手段に配分する
際に、その描画命令演算手段以外で実行されるサブシー
ケンスに依存している場合には、その依存先のサブシー
ケンスの処理を待ってから処理するようにされる。サブ
シーケンスは、作成されたスケジュールに従って、複数
の描画命令演算手段に転送されて実行される。実行の結
果は、データ回収手段5に回収され、最初の命令シーケ
ンスが意図していた画像が高速に生成される。
【0015】また、本発明によれば、画像の形成を行う
命令シーケンスを複数の描画命令演算手段により実行し
て高速に画像を形成する画像形成方法が提供される。こ
の画像形成方法によれば、まず、命令シーケンスを複数
のサブシーケンスに分割する。次いで、分割された複数
のサブシーケンスのそれぞれに対して各サブシーケンス
間に処理の順序依存性があるかどうかを判定し、第1の
サブシーケンスが第2のサブシーケンスに依存している
場合に第1のサブシーケンスから第2のサブシーケンス
への有向枝を与えてサブシーケンスの順序関係に関する
構造データを構成する。第1のサブシーケンスとの順序
依存性の判定の際には、第2のサブシーケンスから有向
枝を受けるサブシーケンスを第1のサブシーケンスとの
順序依存性の判定処理対象から除外し、第2のサブシー
ケンスが有向枝を受けるサブシーケンスとは独立な第3
のサブシーケンスを選択する。そして、第1のサブシー
ケンスがその配分先の描画命令演算手段に存在するサブ
シーケンスにのみ依存関係を持つかどうかを判断し、第
1のサブシーケンスが配分先に存在するサブシーケンス
以外に依存関係を持たない場合には第1のサブシーケン
スをそのまま配分先に配分し、第1のサブシーケンスの
配分先以外の配分先に配分される第2のサブシーケンス
に順序依存性を持つ場合には第2のサブシーケンスの処
理完了を待ってから第1のサブシーケンスをその配分先
に配分する。最後に、各描画命令演算手段でのサブシー
ケンスの実行により得られたそれぞれの画像を回収して
全体画像に合成する。
【0016】ここで、サブシーケンス間での処理の順序
依存性の判定において、既に順序依存性があると判定さ
れているサブシーケンスを第1のサブシーケンスとの順
序依存性の判定処理対象から外すことにより、処理の負
荷が軽減され、高速処理が可能となる。しかも、配分し
ようとする第1のサブシーケンスが配分先以外に配分さ
れたサブシーケンスと順序依存性を持つ場合には、その
サブシーケンスの処理完了を待ってから第1のサブシー
ケンスをその配分先に配分するようにしたので、順序関
係が保持された状態で、サブシーケンスが実行される。
【0017】
【発明の実施の形態】まず、本発明の概略について図面
を参照して説明する。図1は本発明による画像形成装置
の原理構成を示す図である。
【0018】本発明の画像形成装置は、ページ記述言語
等で記述された画像の形成を行う命令シーケンスを受け
てこれを複数のサブシーケンスに分割するシーケンス分
割手段1と、分割されたサブシーケンス間の順序依存性
を判定して順序関係を持った構造データを構成する依存
性解析手段2aおよび管理情報構成手段2bと、サブシ
ーケンスの実行の割り当てを管理するスケジューリング
手段3と、このスケジューリング手段3によって配分さ
れたサブシーケンスを受けてそれを並列に実行する複数
の描画命令演算手段4a,4b,・・・,4nと、これ
らの描画命令演算手段4a,4b,・・・,4nによっ
て個々に形成された部分画像を纏めて1つの全体画像に
するデータ回収手段5とによって構成されている。
【0019】シーケンス分割手段1は、画像形成処理を
記述した命令シーケンスをそれぞれが他に不足情報を必
要とせずに実行できるサブシーケンスの集合に分割する
ように構成されている。依存性解析手段2aは、シーケ
ンス分割手段1によって分割されたサブシーケンス群を
入力し、これらサブシーケンス群の順序依存性を判定す
るように構成されている。管理情報構成手段2bは、第
1のサブシーケンスが第2のサブシーケンスに依存する
という依存性解析手段2aの解析結果を受けて第1のサ
ブシーケンスから第2のサブシーケンスに有向枝を与
え、サブシーケンス群の順序関係に関する構造データを
構成するとともに、有向枝が与えられた第2のサブシー
ケンスから有向枝を受けるサブシーケンスは第1のサブ
シーケンスとの順序依存性の判定処理対象から除くよう
依存性解析手段1bに指示するように構成されている。
したがって、依存性解析手段1bでは、第1のサブシー
ケンスとの順序依存性の判定処理対象として、第2のサ
ブシーケンスが有向枝を受けるサブシーケンスとは独立
な第3のサブシーケンスを選択する。スケジューリング
手段3は、シーケンス分割手段1が生成したサブシーケ
ンス群を受け取り、第1のサブシーケンスが配分先の描
画命令演算手段に存在するサブシーケンス以外には他の
サブシーケンスと依存性を持たない場合にはそのまま配
分先での実行系列に加え、第1のサブシーケンスが配分
先とは異なる描画命令演算器に配分される第2のサブシ
ーケンスに順序依存性を持つ場合には、第1のサブシー
ケンスの処理以前に形成した画像データをデータ回収手
段5に転送する旨の指示情報を配分先での実行系列に加
えた後、第1のサブシーケンス1を加えるように構成さ
れている。
【0020】また、上記構成における依存性解析手段2
aは、好適には、サブシーケンスが図形生成命令を含む
場合に、その図形生成命令が描画処理する部分空間領域
を解析する描画領域確定手段と、解析された部分空間領
域が互いに重なりあっているかを判定する領域比較手段
とを備え、部分空間領域相互の重なり関係をもってサブ
シーケンス間の依存関係を判定するよう構成される。
【0021】この画像形成装置によれば、まず、シーケ
ンス分割手段1が画像形成処理を記述した命令シーケン
スをサブシーケンスの集合に分割する。次に、依存性解
析手段2aが、各サブシーケンスの間に処理の順序依存
性が存在するかを解析する。ここでいう処理の順序依存
性とは、あるサブシーケンスと別のサブシーケンスとの
実行順序を入れ替えた時に、出来上がりの画像に差異が
生じるかどうかを意味している。この処理は、たとえば
サブシーケンスが作用する範囲を生成画像上の部分空間
領域として表現し、それら領域の間の重なり関係を解析
することによって効率的に遂行される。
【0022】順序依存性をもつサブシーケンス群は、複
数の描画命令演算手段4a,4b,・・・,4nによっ
て同時に実行するわけにはいかないので、このような順
序関係は常に守る必要がある。管理情報構成手段2b
は、命令シーケンス全体の依存関係を一つの構造情報と
して構成し、依存関係を保存したまま処理実行するスケ
ジュールの準備をする。
【0023】スケジューリング手段3は、管理情報構成
手段2bの作成した構造情報を基に、命令シーケンス群
を描画命令演算手段4a,4b,・・・,4nに割当て
る手順を作成する。スケジューリング手段3があるサブ
シーケンスを実行先の描画命令演算手段に割当てる際
に、その描画命令演算手段以外で実行されるサブシーケ
ンスに依存している場合には、その依存先のサブシーケ
ンスの処理を待つよう指示する同期情報が付加される。
サブシーケンスをどの描画命令演算手段に割当てるかは
任意の規則に従ってよいが、たとえばSPT(最短処理
時間)規則もしくはEDD(最早納期)規則に従うのが
好適である。このように作成されたスケジュールは、複
数の描画命令演算手段に転送され、あるときは並列に遂
行され、あるときは他の処理と同期して逐次に遂行され
る。最終的にそれらの結果は、データ回収手段5に回収
され、目的の画像、すなわち元々の単一の描画命令シー
ケンスが生成しようと意図していたものと同一の画像が
高速に生成される。
【0024】従来では、画像描画命令を実行して生じる
画像部品の干渉は、干渉し合う部品のすべてを一つの部
品として一つの演算手段で処理しており、負荷集中を招
いていた。そこで、干渉し合う部品を所定の分割規則で
再分割して複数の演算手段で並列処理する方法を採って
いた。本発明では、複数の演算処理手段で処理する対象
は、描画命令の命令単位そのものから成る画像命令のサ
ブシーケンスであり、サブシーケンスの順序依存性に従
って複数の演算手段への配分、複数の演算手段からの合
成を行うので、演算手段で処理する対象を再処理する工
程の必要がなく、並列処理を速く行うことができる。
【0025】次に、本発明の実施の形態を、ネットワー
クにより粗結合された画像形成装置を例にして説明す
る。図2は画像形成装置の構成例を示すブロック図であ
る。
【0026】図示の画像形成装置10は、ローカルエリ
アネットワークの一つであるイーサネット20を介して
クライアント計算機31,32,・・・が接続され、処
理結果をプリント出力するプリントエンジン40が接続
された構成を有している。
【0027】クライアント計算機31,32,・・・
は、パーソナルコンピュータやワークステーション等か
らなるものであり、本発明に関連して、図示しない文書
作成プログラムを備えたものである。この文書作成プロ
グラムが生成する印刷情報ファイルは、Xerox社の
Interpressで記述されたものであるが、Po
stScript(Adobe Systems社商
標)等の他のページ記述言語、あるいはGDI(Gra
phics Device Interface、米国
マイクロソフト社商標)、Quick Draw(米
国アップル社商標)等のグラフィックコマンドであって
もよい。
【0028】画像形成装置10は、クライアント計算機
31,32,・・・から転送される印刷情報をラスタラ
イズ処理してプリントエンジン40に出力するものであ
る。その画像形成装置10は、命令シーケンス分割部1
1、依存性解析部12、管理情報構成部13、およびス
ケジューリング部14を含んだ管理プロセッサ15と、
命令シーケンスを実行して画素情報を生成する描画命令
演算器16a、16b、16cと、各描画命令演算器1
6a、16b、16cで生成された画素情報を収集して
保持するページメモリ17と、プリンタインタフェース
18とを、内部バス19で結合した形式により構成され
ている。また、依存性解析部12は作業空間確定部12
aと、干渉判定部12bとによって構成され、管理情報
構成部13は依存リスト管理部13aと依存リスト13
bとによって構成されている。ページメモリ17上に形
成された画像情報はプリンタインタフェース18を介し
てプリントエンジン40に出力される。
【0029】各描画命令演算器16a、16b、16c
は命令シーケンスの処理実行に必要なだけのローカルメ
モリを備えている。本実施例では、画像形成装置10は
3つの描画命令演算器を備えている。この数は本発明の
本質にかかわるものではないが、共有バスの通信効率か
らして、2〜32程度の範囲にしておくのが好適な構成
である。
【0030】プリントエンジン40は、CMYK(シア
ン、マゼンタ、イエロー、黒)カラーの1色毎に露光、
現像、転写を繰り返すことによりフルカラー画像を出力
することができるレーザ走査式の電子写真方式を用いた
カラーページプリンタである。その性能は、例えば記録
サイズA3、解像度400dpi(dot perin
ch)、階調各色8ビットである。従って本実施例にお
いて、ページメモリ17は、少なくとも128MB(M
ega Byte)を備えている。
【0031】なお、本実施例において本発明の主要部を
構成する管理プロセッサ15上の各処理部は、画像形成
装置10に含まれるものであるが、これに限定されるも
のではなく、同様の処理を行う手段がクライアント計算
機31,32,・・・に含まれていても良い。
【0032】次に、画像形成装置10の各構成要素につ
いて詳細に説明する。クライアント計算機31,32,
・・・から送られてくる印刷情報は、クライアント計算
機31,32,・・・上の文書処理アプリケーションソ
フトウェア(あるいはビルトインドライバ)によって生
成されたページ記述言語(以下、PDL)のプログラム
である。命令シーケンス分割部11は、このソースコー
ドを1描画命令が実行可能なだけの単位に分割する。本
実施例で対象とする並列化の範囲はいわゆるグラフィク
ス描画の命令であり、ラスター画像の分割処理は除外す
る。
【0033】また、本発明はページ記述言語よりも単純
な形式の描画命令列を対象とできることは言うまでもな
く、ある描画単位に関して後述する描画範囲の推定がで
きるならば、あらゆる形式の描画命令体系に適用可能で
ある。
【0034】依存性解析部12において、作業空間確定
部12aは、命令シーケンス中の描画命令が画像形成空
間において作用する範囲を求めるものである。ここで求
められた作用範囲は、管理情報構成部13の依存リスト
13bに蓄積される。このとき、管理情報構成部13の
依存リスト管理部13aが、新たに入力される作用範囲
をそれまでに入力されたものと関係付けて依存リスト1
3bを更新する。この関係付けの解析演算を行うモジュ
ールが、干渉判定部12bである。以下に、以上の各機
能モジュールの動作およびデータ表現について説明す
る。
【0035】作業空間確定部12aにおいて、作用範囲
の表現形式は、これが実際の描画範囲に近いほど並列性
の抽出が漏れることなく行われる。しかしながら、作用
範囲の表現が実際の描画に近づくほど作用範囲を確定す
るために必要な演算量と干渉判定に必要な演算量とが処
理オーバヘッドとなって増加する。本実施例では、この
トレードオフに関する適切なバランス点のひとつとし
て、描画内容の凸包表現を用いている。この選択は、凸
包が以下の良い性質をもつことによる。
【0036】すなわち、描画にしばしば用いられる円錐
曲線およびベジエ曲線は、開始点/制御点/終点で構成
される凸包に包含され、凸包同士の交わり(重なり)判
定は簡便な処理で実行でき、複数の凸包の合成凸包を構
成することも簡便な処理で実行できることによる。
【0037】なお、描画命令の作用範囲はこの凸包形式
だけに限らず、外接矩形やいわゆる単純な多角形を用い
ても容易に表現できる。外接矩形の場合には、交わり
(重なり)判定と領域合成はさらに簡便化されるが、領
域と描画実体とのズレが増加するため、実際には重なり
のないケースを重なりと判定しまう場合が増加する。逆
に、単純な多角形は、凸包よりも領域と描画実体との一
致性が向上するが、交わり(重なり)判定と領域合成の
処理量が増加する。
【0038】交わり(重なり)判定のために作業空間確
定部12aで構成される描画命令の作用範囲について以
下に説明する。図3は凸包の構成例を示す説明図であ
り、図4は凸包の作用範囲の表現例を示す図である。
【0039】ここでは、描画命令がベジエ曲線50であ
る場合を示している。この例では、ベジエ曲線50は、
開始点(0.0,0.0)と、2つの制御点(0.1,
0.3),(0.5,0.7)と、終点(0.7,0.
5)とで表され、このベジエ曲線50を包む四辺形
(0.0,0.0,0.1,0.3,0.5,0.7,
0.7,0.5)を、作用範囲を表す凸包51としてい
る。
【0040】命令シーケンス分割部11から引き出され
たベジエ曲線50の描画命令は、命令シーケンスDi内
で、開始点と制御点および終点との座標点によって記述
されているので、これから、ベジエ曲線50の描画区域
を限定する凸包領域が、図4に示したように、「CON
VEX(座標点リスト)」の形式で表現され、その図形
がどこまで領域を占有するかを座標点を頂点とする多角
形で表している。
【0041】作業空間確定部12aで抽出された作用範
囲(凸包)は、管理情報構成部13の依存リスト管理部
13aによって、依存リスト13bとして構成される。
ここでいう依存リスト13bとは、複数の作用範囲をそ
れらの間の重なり関係により半順序関係のリストとして
構成した情報表現である。以下に、依存リストの構成例
について説明する。
【0042】図5は命令シーケンスが生成しようとする
画像の例を示す図であり、図6は依存リストの例を示す
図である。図5において、紙面60上にはたとえば6つ
の図形が描画されるものとし、各図形はそれぞれ作業空
間確定部12aで抽出された作用範囲によって表してい
る。ここでは、作用範囲61の上に作用範囲62が重な
っており、作用範囲61および作用範囲62の上に作用
範囲63が重なっており、作用範囲63の上に作用範囲
64が重なっている。また、別の場所では、作用範囲6
6の上に作用範囲65が重なっている。
【0043】このような作用範囲の重なり関係は、図6
に示したような依存リスト70で表現される。この依存
リスト70は図形を描画する命令シーケンスのノード
と、重なり関係を示す向きを持った矢印(有向枝)とで
構成される木構造によって表現される。ここで、ノード
の中に示した符号は図5に示した作用範囲の符号に対応
させてある。この依存リスト70によれば、ノード間の
有向枝の方向を見ることにより作用範囲の重なり関係
を、有向枝の数によって作用範囲の重なり数を知ること
ができる。図6に示される依存リスト70は、管理情報
構成部13において作成し、依存リスト13bに保存さ
れるが、内部的には、以下のようなリストで表現され
る。
【0044】
【数1】{(64(63((61)(62(6
1)))))(65(66))} このリストを構成する各要素61〜66は、各作用範囲
すなわち凸包を示す座標点リストへのポインタである。
このような依存リストの構成方法について以下に示す。
【0045】図7は依存リスト管理部の処理の流れを示
すフローチャートである。まず、依存リストを空に初期
化し、命令シーケンス分割部11より入力される描画ブ
ロックDiに関して、その凸包Ciを求める(S1)。
次に、凸包Ciと依存性解析をするための比較対象ノー
ド群{C1,,Cm}を依存リスト中に確定する(S
2)。この確定方法は後にいくつかの方法を述べる。な
お、ここで比較対象を依存リスト全体とせず、依存リス
トの部分集合{C1,,Cm}として段階的に比較判定
して行くのは比較処理の効率を高めるためである。単に
依存性を解析するだけであれば、悉皆的に依存リスト中
のブロックすべてと比較して行くだけでも目的は果たせ
る。次に、依存リスト中のすべてのブロックをチェック
したかどうかが判断され(S3)、依存リスト中に比較
対象がなくなったらば、すなわちすべての要素と実質的
に比較処理が完了したならば、依存リストの構成手続き
は完了する。
【0046】依存リスト中に比較対象が存在しているな
らば、比較対象ノード群にセットされた各描画ブロック
要素{Cj|C1,・・・,Cm}を、Ciと共に依存
性解析部12の干渉判定部12bに送る(S4)。干渉
判定部12bではCiとCjとの依存性の有無を判定す
る(S5)。もし、CiとCjとの依存性が見つかった
場合は、CiはCjの親ノードとして、すなわち(Ci
(Cj))という表現でリスト要素を構成する(S
6)。このときCiは常に一時的なルートノードになっ
ている。もし、CiとCjとの依存性が見つからなかっ
た場合は、独立ノードとして(Ci Cj)と構成して
依存リストに加える(S7)。判定を終えたCjを比較
対象ノード群から除く(S8)。次に、比較対象ノード
が残っているかどうかが判断され(S9)、まだ、比較
対象ノードが残っているならば、ステップS4に戻って
ステップS4からの手順を繰り返す。もし、比較対象が
空になったならば、すなわち比較対象ノード群{Cj|
C1,・・・,Cm}のすべてのCjとCiとを比較し
たならば、依存リスト中においてすでに比較対象に設定
したもの以外から比較対象を設定・更新する(S1
0)。このときはステップS3から依存リスト構成手順
を繰り返し、依存リストすべてについて比較する。
【0047】以下では、上記のステップS2およびS1
0の方法、すなわち、探索を効率化するために比較対象
ノード群を効果的に規定する3つのヒューリスティック
な方法について述べる。
【0048】第1は、ルート伝播に基づく方法である。
比較対象ノードCjの初期値は、依存リストにおけるル
ートノードRmをセットして開始する。なぜならば、依
存リストにおけるルートノードは、描画ブロックの最上
位レイヤに属するものであり、もし、これらとの依存性
が検出されたならば、その描画ブロックの下位レイヤに
存在する描画ブロックすなわちルートノードの下流に従
属するノード全体について依存性解析の必要がなくなる
からである。ルートノードRmをセットする際には、こ
れらのノードに、走査したことを示す走査済みフラグを
立てておく。次回からは、走査済みフラグの立っていな
い集合のみを問題にする。
【0049】ルートノードとのチェックが完了したなら
ば、次は、比較対象ノードCjを各ルートノードの子ノ
ード群、すなわちルートノードRmのいずれかと1本の
エッジで接続したノード群Rm’に更新して依存性解析
部12に処理を依頼する。このとき各Rm’の走査済み
フラグを立てる。
【0050】以下Cjに最後のノード群、すなわちすべ
てのリーフがセットされるまで、これを繰り返す。第2
は、深さ優先の方法である。
【0051】上記の第1の方法と同様に、比較対象ノー
ドCjの初期値は、依存リストにおけるルートノードR
iをセットする。この方法では、依存リストに新たなノ
ードCiを加える際に、そのノードの画面上の深さ値Z
iを添付しておく。すなわち、例えばルートノードC0
がZ=5、その子ノードのZ=4、その孫ノードのZ=
3という具合である。そして、比較対象ノードCjのセ
ットはこのZ値の高い順に行う。
【0052】その根拠は、Z値の高いものほど多くの重
なった画像要素の頂上にあることを意味しており、その
描画ブロックとの依存性が検出されたならば、その下層
にある多くの描画ブロックとの依存性解析処理が省略で
きるからである。あるCjとの依存性が検出されたなら
ば、Cjの子孫となるノード群はすべて無視してよいの
で、Ciとそれらとを比較することなく走査済みフラグ
を立て、以降の処理では比較対象ノードの候補とはしな
い。比較対象ノードの更新はZ=0のノード群を解析処
理完了した時点で終了する。
【0053】第3は、広さ優先の方法である。上記の第
1の方法と同様に、比較対象ノードCjの初期値は、依
存リストにおけるルートノードRiをセットする。この
方法では、依存リストに新たなノードCiを加える際
に、そのノードの画面上の拡がり度を反映する値Siを
添付しておく。Siは様々なパラメータにより設定でき
るが、ここでは例えば凸包Ciの外接矩形面積とするこ
とで、処理を簡素化できる。すなわち、
【0054】
【数2】Si={max(Cikx)−min(Cik
x)}×{max(Ciky)−min(Ciky)} に従うSiを依存リスト中の各要素Ciに添付する。式
中、CikxはCiの要素座標点Cikの各軸の座標
値、CikyはCiの要素座標点Ciyの各軸の座標
値、max,min演算はkに関する。
【0055】そして、比較対象ノードCjのセットはこ
のSiの高い順に行うものとする。その根拠は、Si値
の大きなものほど対象領域と干渉する確率が高いと期待
できるからである。もし干渉するCjが発見されたなら
ば、第2の方法と同様に、Cjの子孫となるノード群は
すべて無視し、走査済みフラグを立てる。
【0056】以下、Si値の大きい順に依存リスト中を
探索し、すべてのノードに走査済みフラグが立つまで、
繰り返す。なお、上記各方法は互いに組み合せても実施
できることは言うまでもない。たとえば、第1の方法に
おいて、ノード群Rm’の集合内における依存性解析順
序を、深さ値Ziあるいは拡がり度Siに従わせること
でRm’自体を縮退させることがより一層期待できるよ
うになる。
【0057】次に、依存性解析部12の干渉判定部12
bについて説明する。干渉判定部の行うことは、2つの
作用範囲、すなわち本実施例では、2つの凸包領域C
i,Ci’を比較してその重なり性を判定することであ
る。しかし、凸包同士の干渉判定処理は、処理の負荷に
なりかねない。一方、一般的な印刷情報における描画要
素はさほど頻繁に干渉することはない。そこで本実施例
では、まず、2つの作用範囲の間の独立性を凸包より粗
い外接矩形の単位で解析し、独立性を検出できなかった
ものについてのみ、細かく凸包領域の解析をする。
【0058】図8は干渉関係の成立を説明するための説
明図である。この関係図は描画要素間の干渉関係を集合
要素としたベン図である。この図において、描画要素の
実体同士が実際に干渉する場合を集合81で示してい
る。この集合81は、その凸包領域が干渉する場合の集
合82に包含され、さらにその集合82は凸包の外接矩
形が干渉する場合の集合83に包含されることがわか
る。
【0059】ここで、符号84によって示したように、
描画要素は独立であるが凸包領域が干渉するような場合
は、集合81には含まれないが集合82には含まれる領
域81’に入り、また、符号85によって示したよう
に、描画要素の凸包領域は独立であるがその外接矩形が
干渉するような場合は、集合82には含まれないが集合
83には含まれる領域82’に入る。
【0060】これにより、干渉判定処理は、最初に2つ
の作用範囲の間の独立性を凸包より粗い外接矩形の単位
で解析することにより、独立性を検出できなかった集合
83に絞り、さらに、独立性を検出できなかったものに
ついてのみ、細かく凸包領域の解析をすることにより、
無駄な処理はなくなることになる。以下に、この干渉判
定部12bの動作について説明する。
【0061】図9は干渉判定部の処理の流れを示すフロ
ーチャートである。まず、初期化として、比較すべき2
つの領域(凸包)Ci,Ci’を作業記憶装置上に格納
して、Ci,Ci’それぞれの外接矩形BBi,BB
i’を計算する(S11)。ここで、凸包Ciの外接矩
形BBiは、Ciを Ci:{(Cx1,Cy1),・・・,(Cxm,Cy
m)} と表したとき、
【0062】
【数3】BBi:{(min[Cxi],min[Cy
i]),(max[Cxi],max[Cyi])} として、簡便に算出することができる。
【0063】次に、求めたBBiとBBi’同士の干渉
判定を行う(S12)。矩形BBiとBBi’同士の干
渉判定は、BBiを、 BBi:{(Bx1,By1),(Bx2,By2)} (ただし、(Bx1,By1)はBBiの左下座標点、
(Bx2,By2)はBBiの右上座標点である。)と
表したときに、
【0064】
【数4】{(Bx1>Bx2’)∧(Bx2>Bx
2’)∧(By1>By2’)∧(By2>By
2’)} ∨ {(Bx1’>Bx2)∧(Bx2’>Bx2)∧(B
y1’>By2)∧(By2’>By2)} を満たせば二者は独立である、という条件判定による。
【0065】ここで、判定結果が独立であるかどうかが
判定され(S13)、もし、BBi,BBi’が独立で
あると判定されたならば、Ci,Ci’も独立であるの
で、その旨を出力し(S14)、BBi,BBi’が独
立でないと判定されたならば、もともとの凸包Ci,C
i’に立ち返ってさらに細かな干渉性判定を行う(S1
5)。そして、凸包Ci,Ci’の干渉性判定の結果は
独立であるかどうかが判定され(S16)、独立である
と判定されたならば、その旨を出力し(S14)、C
i,Ci’が独立でないと判定されたならば、その旨を
出力し(S17)、手続きを終了する。
【0066】上のステップS15における凸包Ci,C
i’の干渉判定は、まずCiとCi’とを構成する辺同
士の交差判定をおこない、さらに辺がまったく交差しな
い場合にCiとCi’との包含判定を行う。その詳細な
手続きを以下に説明する。
【0067】図10は凸包の干渉判定の流れを示すフロ
ーチャートである。凸包CiとCi’との交差判定手続
きにおいて、まず、CiおよびCi’から辺Ev,E
v’をひとつずつ選ぶ。2辺は、CiもしくはCi’に
含まれる頂点のうち隣り合う2点によって構成される。
そして、選ばれた辺EvとEv’との交差判定を行う
(S21)。この交差判定は、Evを構成する2点がE
v’を含む直線の同じ側にあるか、もしくは、逆にE
v’を構成する2点がEvを含む直線の同じ側にあれば
よい。たとえば、2点A,Bが直線が構成する半平面の
どちらにあるかは、直線の方程式F(x,y)=0に2
点のそれぞれを代入し、符号の一致性によって識別でき
る。すなわち、もし、sgn(F(A)=F(B))な
らば、同じ半平面にあり、sgn(F(A)≠F
(B))ならば、異なる半平面にある。この判定はすべ
てのEv∈Ci’について実施される。
【0068】ここで、交差判定により辺の交差があった
かどうかが判定され(S22)、もしも、1つでも交差
が発見されたならば、CiとCi’とは交差する旨を出
力し(S23)、手続きは終了する。
【0069】すべてのEv∈Ci’について交差が発見
されなかったならば、CiとCi’とは交差しない。そ
の場合、CiとCi’とは互いに疎(独立)であるか、
包含関係にあるので、各頂点Vc∈Ciについて包含判
定を行う(S24)。頂点と凸包との包含関係により以
下の通り結論付ける(S25)。
【0070】ある頂点Vc∈CiがCi’に含まれる
か、あるいは、ある頂点Vc’∈Ci’がCiに含まれ
れば、CiとCi’とは(包含的な)重なりの関係にあ
るとして、交差と判定し(S26)、手続きは終了す
る。
【0071】すべての頂点Vc∈CiがCi’に含まれ
ず、かつ、すべての頂点Vc∈Ci’がCiに含まれな
いならば、CiとCi’とは独立であるとして、独立と
判定し(S27)、手続きは終了する。
【0072】ここで、以上の交差判定の手続きのステッ
プS24で用いた手続きである、頂点と凸包との包含関
係判定をするための手続きについて説明する。図11は
頂点と凸包との包含関係判定の流れを示すフローチャー
トである。
【0073】頂点Qと凸包Ciの包含判定手続きでは、
まず、作業の補助点として、凸包Ciに包含される1点
Pを定める(S31)。ここでは、例えば、凸包Ciを
構成する点Vcのうち隣り合わない任意の2点の中点を
求めることにより決定される。次に、凸包Ciを構成す
る辺Evを一つ選ぶ(S32)。これは隣り合う2点V
cによって決定される。次に、Evに関してQとPとが
同じ側にあるかを判定する(S33)。これは、Evを
表す直線の方程式F(x,y)=0に点QおよびPのそ
れぞれを代入し、符号の一致性によって識別できる。す
なわち、もし、sgn(F(Q)=F(P))ならば、
同じ半平面にあり、sgn(F(Q)≠F(P))なら
ば、異なる半平面にある。このEvに関してQとPとが
同じ側にあるかの判定を凸包Ciを構成するすべての辺
Evについて行ったかどうかを判定し(S34)、判定
が済んでいない辺Evがあれば、その辺Evの選択をす
るステップS32に戻る。このようにして、すべてのE
v∈Ciについて判定を繰り返す。
【0074】すべてのEv∈Ciについての判定が終了
すると、そのすべてのEv∈Ciに関してP,Qが同一
の半平面内にあるかどうかの判定をする(S35)。そ
の判定結果が、すべてのEv∈Ciに関してP,Qが同
一の半平面内にあるとするならば、QはCiに包含され
ると結論付け(S36)、あるEv∈Ciに関しては
P,Qが互いに異なる半平面内にある場合、QはCiの
外側にあると結論付けて(S37)、手続きは終了す
る。
【0075】以上のようにして干渉性の判定がなされた
命令シーケンスは、依存リストに新たなノードとして加
えられる。このときの依存リストの更新について以下に
説明する。
【0076】図12は依存リスト更新の説明図である。
この図において、依存リストには一例として、既に、1
4個の命令シーケンスのノード91〜104が構造デー
タとして図示のように構成されているとする。このとき
の依存リストは、内部的には以下のようなリストで表現
されている。
【0077】
【数5】 {(91(95(99)(103))) (92(96(97(100(102((103)(104))))))) (93(98(101))) (94(98(101))) } さて、このような依存リストに新たに命令シーケンスの
ノード105が依存リストに加えられる場合について説
明する。
【0078】まず、依存リストのルート集合111のそ
れぞれのノードと干渉性判定される。ここでは、ルート
集合111はノード99,101,103,104を含
む、依存リスト上で重なり関係が一番上のノードを示
す。ルート集合111の各ノードに対して、もしも干渉
性ありと判定されたノードがあるならば、そのノードに
対する有向枝を張り、そうでなければ何もしない。
【0079】ルート集合111のすべてのノードとの比
較解析が終了したならば、有向枝が張られなかったノー
ドの子ノード群全体の集合112、すなわち、ノード9
5,98,102を次の比較対象集合に設定する。この
設定は、図7に示した依存リスト管理部の動作説明図の
ステップS10に相当する。
【0080】以下、同様にして、依存リスト中にルート
集合の子ノードが得られなくなるまで、すなわち依存リ
ストから干渉性検出されたノードの下位ノードを除いた
部分がすべて走査されるまで、干渉性の判定と依存リス
トの更新を繰り返す。この比較対象集合の設定で、すべ
てのノードを比較対象とするのではなく、干渉性検出さ
れたノードの下位ノードは干渉性判定の対象から除くこ
とにより、処理速度の向上をはかっている。
【0081】次に、上記のようにして管理情報構成部1
3で生成した依存リストを基にして、処理スケジュール
を構成するスケジューリング部14について説明する。
スケジューリング部14は、依存リストの依存関係を逆
方向から見た逆依存リストを基にして、実際に複数の描
画命令演算器で処理させるスケジュール、すなわち処理
順序と描画命令演算器への割り付け情報とを作成する図
13はスケジューリング部の処理の流れを示すフローチ
ャートである。
【0082】まず、初期化として、逆依存リストにおけ
るルートノードの集合Rを設定し、Rを描画命令演算器
の数pに分割する(S41)。分割されたノードまたは
ノード群は各描画命令演算器で処理される描画命令シー
ケンスの列Si(i=1,p)の初期状態になる。以
下、各Siをスケジュールと呼ぶ。このステップにおけ
る各Siは複数の命令シーケンスを含む場合があるが、
それらは任意の順番で列Siを構成してよい。以下、S
iは、線形リストとして成長して行く。次に、RをRの
各要素の子ノード全体の集合に更新する。Rが空になっ
たかどうかを判定し(S42)、Rが空になっていれば
処理終了となる。
【0083】次に、Rの1要素rjを選択し(S4
3)、そのrjの親ノードqkへの接続関係を吟味する
(ここで、親ノードqkは一世代前のRの要素であ
る。)。ここで、親ノードqkへの接続(枝)が単一か
複数かが判定される(S44)。要素rjから親ノード
qkへの枝が1本である場合には、rjをqkの属する
スケジュールSiの最後尾に加えるとともにRから除去
する(S45)。一方、rjから親ノードqkへの枝が
w本(w>1)である場合には、後に述べる基準に従っ
て、qkからひとつqiを選択する(S46)。qiの
属するスケジュールSiの最後尾に同期ラベルLvを挿
入し(S47)、その直後にrjを加える。Lvは、q
kの子ノードのうちSiに属さないすべてのノードのラ
ベルが記される。Lvの内容が空のときは添付しない。
この同期ラベルは、rjをデータ回収部に送る前にLv
の処理結果がすべて回収されていることを確認せよとい
う指示情報である。
【0084】次に、Rをすべて走査したかどうかが判断
され(S48)、まだ走査していないrj∈Rが存在す
ればステップS43に戻ってrjを更新する。すべて走
査していたら、RをRの子ノード群に更新する(S4
9)。そして、ステップS42に戻って、rj∈Rに子
ノードが存在すれば、ステップS43〜S48を繰り返
す。ステップS42の判定において、子ノードが存在し
なければ処理を終了する。各Siは描画命令演算器iで
処理する命令シーケンスの列となっている。
【0085】さて、ステップS43において、rjの先
行ジョブが複数存在する場合のqiの選択法は以下のヒ
ューリスティックな3基準のいずれかもしくは組み合せ
て利用する。
【0086】第1は処理時間による基準である。この基
準によれば、各スケジュールSiの処理完了時刻をT
(Si)、ジョブrj自体の処理時間をt(rj)とし
たとき、TP(Si)+t(rj)の最も小さくなるS
iを選択する。この基準によれば、少なくとも処理時間
のみに着目したときの最早計画が期待される。
【0087】第2は記憶域条件による基準である。この
基準によれば、{(各候補スケジュールSiの配置され
るプロセサの局所メモリ量)−(ジョブrjの要請する
記憶容量)}が非負最小値となるか、あるいは非負値が
存在しないときは負最大値となるものを選択する。この
基準によれば、処理効率を落とすことなく各局所メモリ
を有効利用できる。
【0088】そして、第3は先行ジョブの大きさによる
基準である。この基準によれば、各候補スケジュールS
iにおけるジョブqkとrjとの共通領域(重なり領
域)の総和が最も大きいものにqkを配置する。Siと
qkとの共通領域は、処理結果のデータ転送量が半分に
なるとみなせるので、この基準により通信オーバヘッド
が削減できる。なお、凸包同士の重なり領域を計算する
のは煩雑となるので、外接矩形同士の重なり領域をもっ
てこれを代替する。この重なり領域の算出例を以下に示
す。
【0089】図14は外接矩形の重なり領域を示す説明
図である。外接矩形はそれぞれの左下点と右上点とで表
現する。したがって、2つの外接矩形はBBa{(Xa
1,Ya1),(Xa2,Ya2)}およびBBb
{(Xb1,Yb1),(Xb2,Yb2)}となる。
このとき、Xa1≦Xb1としても一般性は失われな
い。重なり領域Cは、以下の場合分けのそれぞれについ
て求めることができる。
【0090】最初に、Ya1≦Yb1のときの4つのケ
ースについて説明する。(A)に示したように、さら
に、Xa2≦Xb2かつYb2≦Ya2のときの重なり
領域C1は、BBC{(Xb1,Yb1),(Xa2,
Yb2)}で求められる。
【0091】(B)に示したように、さらに、Xa2≦
Xb2かつYa2<Yb2のときの重なり領域C2は、
BBC{(Xb1,Yb1),(Xa2,Ya2)}で
求められる。
【0092】(C)に示したように、さらに、Xa2>
Xb2かつYb2≦Ya2のときの重なり領域C3は、
BBC{(Xb1,Yb1),(Xb2,Yb2)}で
求められる。
【0093】(D)に示したように、さらに、Xa2>
Xb2かつYa2<Yb2のときの重なり領域C4は、
BBC{(Xb1,Yb1),(Xb2,Ya2)}で
求められる。
【0094】次に、Ya1>Yb1のときの残りの4つ
のケースについて説明する。(E)に示したように、さ
らに、Xa2≦Xb2かつYb2≦Ya2のときの重な
り領域C5は、BBC{(Xb1,Ya1),(Xa
2,Yb2)}で求められる。
【0095】(F)に示したように、さらに、Xa2≦
Xb2かつYa2<Yb2のときの重なり領域C6は、
BBC{(Xb1,Ya1),(Xa2,Ya2)}で
求められる。
【0096】(G)に示したように、さらに、Xa2>
Xb2かつYb2≦Ya2のときの重なり領域C7は、
BBC{(Xb1,Ya1),(Xb2,Yb2)}で
求められる。
【0097】(H)に示したように、さらに、Xa2>
Xb2かつYa2<Yb2のときの重なり領域C8は、
BBC{(Xb1,Ya1),(Xb2,Ya2)}で
求められる。
【0098】図15はスケジューリングの事例を説明す
る概念図である。この図において、R10は逆依存リス
トにおけるルートノードの集合Rであり、R11,R1
2,R13は、3つの描画命令演算器16a〜16cに
それぞれ割当てられた初期スケジュールS1〜S3であ
る。初期スケジュールの割り当てが済むと、集合RはR
10からR20に更新される。R20の要素のうち、ノ
ード95はスケジュールS1に、ノード96および97
はスケジュールS2に、ノード98はスケジュールS3
に割り当てられる。以下、同様の方法にて、ノードの各
スケジュールS1〜S3への割り当てが進められる。
【0099】さて、処理が進行して、ノード103を割
り当てる際に、スケジュールS1かスケジュールS2か
という選択が生じる。ここでは、ノード103は、スケ
ジュールS1に割り当てるものとする。そのため、スケ
ジュールS1において、シーケンス識別子「103」の
前に、同期ラベル{102}が挿入される。これは、シ
ーケンス103の転送前にシーケンス102の回収を確
認せよという旨の指示情報となる。この結果、スケジュ
ールS1〜S3は以下のようになる。
【0100】 S1:91,95,99,{102},103 S2:92,96,97,100,102,104 S3:93,94,98,101 以上のように構成された各スケジュールSiは、i番目
の各描画命令演算器に転送される。各描画命令演算器
は、スケジュールにおける命令シーケンスを転送された
同期ラベルに遭遇しない限り並列に描画処理を実行し続
ける。各命令シーケンスの処理結果は内部の記憶領域が
不足した段階でページメモリに書き出されるが、処理途
中に同期ラベルを含んでいた場合には、同期ラベルに指
示された、他の描画命令演算器における命令シーケンス
が書き出されたことを確認して、自結果をページメモリ
に書き出す。ここでの処理済み確認は、処理進捗テーブ
ルを図示しない共有メモリ中に置くことで簡便に実施さ
れる。
【0101】
【発明の効果】以上説明したように本発明では、解決す
べきサブシーケンスの判定対象としてそのサブシーケン
スと順序依存性を持つサブシーケンスとは独立したサブ
シーケンスを選択する依存性解析手段と、あるサブシー
ケンスが複数の親サブシーケンスに属するときには、複
数の親サブシーケンスのうちの一のサブシーケンスにの
み従属させるとともに、その一のサブシーケンスの前
に、その一のサブシーケンス以外の親サブシーケンスの
処理を待つ待ち命令を付加するスケジューリング手段と
を備えるようにした。これにより、複数の描画命令処理
装置において描画命令を並列処理する際に、互いに重な
りをもつ画像要素が存在しても効率的な並列スケジュー
ルが構成され、なおかつ、スケジューリングのための前
処理も部分的な解析で済むため、大きな処理オーバヘッ
ドを含むことなく全体の処理を構成でき、並列処理の効
果すなわち高速な描画命令実行が可能となる。
【図面の簡単な説明】
【図1】本発明による画像形成装置の原理構成を示す図
である。
【図2】画像形成装置の構成例を示すブロック図であ
る。
【図3】凸包の構成例を示す説明図である。
【図4】凸包の作用範囲の表現例を示す図である。
【図5】命令シーケンスが生成しようとする画像の例を
示す図である。
【図6】依存リストの例を示す図である。
【図7】依存リスト管理部の処理の流れを示すフローチ
ャートである。
【図8】干渉関係の成立を説明するための説明図であ
る。
【図9】干渉判定部の処理の流れを示すフローチャート
である。
【図10】凸包の干渉判定の流れを示すフローチャート
である。
【図11】頂点と凸包との包含関係判定の流れを示すフ
ローチャートである。
【図12】依存リスト更新の説明図である。
【図13】スケジューリング部の処理の流れを示すフロ
ーチャートである。
【図14】外接矩形の重なり領域を示す説明図である。
【図15】スケジューリングの事例を説明する概念図で
ある。
【符号の説明】
1 シーケンス分割手段 2a 依存性解析手段 2b 管理情報構成手段 3 スケジューリング手段 4a,4b,・・・,4n 描画命令演算手段 5 データ回収手段 10 画像形成装置 11 命令シーケンス分割部 12 依存性解析部 12a 作業空間確定部 12b 干渉判定部 13 管理情報構成部 13a 依存リスト管理部 13b 依存リスト 14 スケジューリング部 15 管理プロセッサ 16a、16b、16c 描画命令演算器 17 ページメモリ 18 プリンタインタフェース 19 内部バス 20 イーサネット 31,32,・・・ クライアント計算機 40 プリントエンジン

Claims (13)

    【特許請求の範囲】
  1. 【請求項1】 ページ記述言語で記述された命令シーケ
    ンスを複数の描画命令演算手段で実行し、各描画命令演
    算手段で処理された画像をデータ回収手段で合成して全
    体の画像の形成を行う画像形成装置において、 前記命令シーケンスを複数のサブシーケンスに分割する
    シーケンス分割手段と、 分割された複数のサブシーケンスに対してサブシーケン
    ス間の順序依存性を判定する依存性解析手段と、 第1のサブシーケンスが第2のサブシーケンスに依存す
    るという前記依存性解析手段の判定結果を受けて第1の
    サブシーケンスから第2のサブシーケンスに有向枝を与
    えて順序関係を持った構造データを構成し、さらに、第
    2のサブシーケンスから有向枝を受けるサブシーケンス
    を前記第1のサブシーケンスとの順序依存性の判定処理
    対象から除外するよう前記依存性解析手段に対して指示
    する管理情報構成手段と、 前記シーケンス分割手段で生成されたサブシーケンス群
    を受け取り、第1のサブシーケンスが配分先の描画命令
    演算手段に存在するサブシーケンスにしか依存関係を持
    たない場合にはそのまま配分先での実行系列に加え、第
    1のサブシーケンスが配分先とは異なる描画命令演算手
    段に配分される第2のサブシーケンスに順序依存性を持
    つ場合には、第2のサブシーケンスを処理した画像デー
    タが前記データ回収手段に転送されたことを確認する同
    期情報を実行系列に加え、その後に、第1のサブシーケ
    ンスを実行系列に加えるスケジューリング手段と、 を備えていることを特徴とする画像形成装置。
  2. 【請求項2】 前記依存性解析手段は、前記サブシーケ
    ンスが図形生成命令を含む場合に、前記図形生成命令が
    描画処理する部分空間領域を解析する描画領域確定手段
    と、解析された前記部分空間領域が互いに重なっている
    かを判定して前記サブシーケンス間の依存関係を判定す
    る領域比較手段とを有していることを特徴とする請求項
    1記載の画像形成装置。
  3. 【請求項3】 ページ記述言語で記述された命令シーケ
    ンスをラスタライズして画素情報を得るための画像形成
    装置において、 前記命令シーケンスを前記画像描画命令の命令単位で複
    数に分割して前記画像描画命令のサブシーケンスを作成
    するシーケンス分割手段と、 前記各サブシーケンスの対応する作業空間を設定する作
    業空間確定部、前記作業空間同士の干渉を判定する干渉
    判定部、および前記干渉判定部の判定結果を記述した前
    記サブシーケンスの依存性リストを作成する依存性リス
    ト作成部を有する依存性解析手段と、 前記依存性リストに応じて前記シーケンス分割手段より
    受けたサブシーケンスの処理を配分するサブシーケンス
    配分手段と、 配分されたサブシーケンスをそれぞれ依存関係を保持し
    たまま実行して部分画素情報を生成する複数の描画命令
    実行手段と、 前記複数の描画命令実行手段から部分画素情報を回収し
    て前記命令シーケンスによる画素情報に合成するデータ
    回収手段と、 を備えていることを特徴とする画像形成装置。
  4. 【請求項4】 前記依存性リストは、上下関係に前記作
    業空間同士の干渉のある前記サブシーケンスを深さ方向
    に並べたノードと、上下関係に前記作業空間同士の干渉
    のない前記サブシーケンスを横方向に並列に並べたノー
    ドとからなる木構造で表現されていることを特徴とする
    請求項3記載の画像形成装置。
  5. 【請求項5】 前記依存性リストは、前記サブシーケン
    スをノードで表した木構造で表現されており、 前記依存性リスト作成部は、前記干渉判定部の判定結果
    により任意ノードが干渉判定対象の一のノードに従属す
    る場合、前記一のノードに従属している下位ノードを除
    いた他のノードに対して、前記任意ノードとの干渉判定
    を行うことを特徴とする請求項3記載の画像形成装置。
  6. 【請求項6】 前記サブシーケンス配分手段は、前記依
    存性リストの依存関係を逆方向から見た逆依存リストを
    基にして木構造のルートノードを複数の前記描画命令実
    行手段に振り分け、前記干渉判定部の判定結果により特
    定ノードが複数の親ノードに属するときには、複数の親
    ノードのうちの一のノードにのみ従属させるとともに、
    前記一のノードの前に、前記一のノード以外の親ノード
    の処理を待つ待ち命令を付加することを特徴とする請求
    項3記載の画像形成装置。
  7. 【請求項7】 前記シーケンス分割手段、依存性解析手
    段、およびサブシーケンス配分手段は、ネットワーク上
    に分散されたクライアント計算機に配置されていること
    を特徴とする請求項3記載の画像形成装置。
  8. 【請求項8】 画像の形成を行う命令シーケンスを複数
    の描画命令演算手段により実行して高速に画像を形成す
    る画像形成方法において、 前記命令シーケンスを複数のサブシーケンスに分割し、 分割された複数のサブシーケンスのそれぞれに対してサ
    ブシーケンス間の処理の順序依存性を判定し、 第1のサブシーケンスが第2のサブシーケンスに依存し
    ている場合に前記第1のサブシーケンスから前記第2の
    サブシーケンスへの有向枝を与えてサブシーケンスの順
    序関係に関する構造データを構成し、 前記第1のサブシーケンスがその配分先の描画命令演算
    手段に存在するサブシーケンスにのみ依存関係を持つか
    どうかを判断し、 前記第1のサブシーケンスが配分先に存在するサブシー
    ケンス以外に依存関係を持たない場合には前記第1のサ
    ブシーケンスをそのまま第1の実行系列に配分し、第1
    のサブシーケンスの配分先以外の配分先に配分される第
    2のサブシーケンスに順序依存性を持つ場合には前記第
    2のサブシーケンスの処理完了を確認する同期情報とと
    もに第1のサブシーケンスを第1の実行系列に配分し、 各描画命令演算手段でのサブシーケンスの実行により得
    られた画像を回収して全体画像に合成する、 ことからなる画像形成方法。
  9. 【請求項9】 前記順序依存性を判定するステップは、
    第1のサブシーケンスとの順序依存性の判定対象とし
    て、第1のサブシーケンスと順序依存性を持つ第2のサ
    ブシーケンスとは独立な第3のサブシーケンスを選択す
    ることを特徴とする請求項8記載の画像形成方法。
  10. 【請求項10】 前記順序依存性を判定するステップ
    は、前記サブシーケンスが図形生成命令を含む場合に、
    前記図形生成命令が描画処理する部分空間処理領域を解
    析し、解析された部分空間領域が互いに重なり合ってい
    るかどうかを判定し、前記部分空間領域が互いに重なり
    合っているとの判定により前記サブシーケンス間に依存
    関係があると判定することを特徴とする請求項8記載の
    画像形成方法。
  11. 【請求項11】 前記部分空間処理領域は、描画図形の
    凸包で表現するようにしたことを特徴とする請求項10
    記載の画像形成方法。
  12. 【請求項12】 前記部分空間処理領域は、描画図形の
    外接矩形で表現するようにしたことを特徴とする請求項
    10記載の画像形成方法。
  13. 【請求項13】 分割された複数の描画命令シーケンス
    間の順序依存性を判定する描画命令解析装置において、 少なくとも2つの描画命令シーケンスを受けてそれらの
    順序依存性を判定する依存性解析手段と、 前記依存性解析手段が出力する順序依存性を有向枝とし
    て描画命令シーケンス全体の構造データを構成する管理
    情報構成手段とを備え、 前記依存性解析手段は、解析すべき第1の描画命令シー
    ケンスの判定対象として前記管理情報構成手段にて構成
    された前記構造データの中で第1の描画命令シーケンス
    と順序依存性を持つ第2の描画命令シーケンスとは独立
    な第3の描画命令シーケンスのみを選択することを特徴
    とする描画命令解析装置。
JP7343380A 1995-12-28 1995-12-28 画像形成装置および画像形成方法 Expired - Fee Related JP2910649B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP7343380A JP2910649B2 (ja) 1995-12-28 1995-12-28 画像形成装置および画像形成方法
US08/743,210 US5936634A (en) 1995-12-28 1996-11-05 Image forming apparatus and method of forming images by interpreting a page description language with a plurality of processors

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7343380A JP2910649B2 (ja) 1995-12-28 1995-12-28 画像形成装置および画像形成方法

Publications (2)

Publication Number Publication Date
JPH09185508A true JPH09185508A (ja) 1997-07-15
JP2910649B2 JP2910649B2 (ja) 1999-06-23

Family

ID=18361070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7343380A Expired - Fee Related JP2910649B2 (ja) 1995-12-28 1995-12-28 画像形成装置および画像形成方法

Country Status (2)

Country Link
US (1) US5936634A (ja)
JP (1) JP2910649B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6654139B1 (en) 1998-11-11 2003-11-25 Nec Corporation Printer system with image processing system in which drawing operations are executed in parallel
JP2008027395A (ja) * 2006-07-25 2008-02-07 Canon Inc 描画処理装置及びその制御方法
JP2011514592A (ja) * 2008-02-22 2011-05-06 クゥアルコム・インコーポレイテッド グラフィックス処理の命令レイテンシ減少のためのシステムおよび方法
JP2013504127A (ja) * 2009-09-03 2013-02-04 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Gpuワークのハードウエアベースでのスケジューリング
JP2013190849A (ja) * 2012-03-12 2013-09-26 Toshiba Corp オブジェクト検索装置およびその方法
JP2014520010A (ja) * 2011-12-31 2014-08-21 北大方正集▲団▼有限公司 ページの図形要素オーバープリント処理方法および装置

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6049339A (en) * 1997-12-22 2000-04-11 Adobe Systems Incorporated Blending with planar maps
US6473707B1 (en) * 1998-08-21 2002-10-29 National Instruments Corporation Test executive system and method including automatic result collection
US6894704B1 (en) 1999-11-22 2005-05-17 Adobe Systems Incorporated Processing complex regions of illustration artwork
US6720977B1 (en) * 1999-11-22 2004-04-13 Adobe Systems Incorporated Processing illustration artwork
US6515675B1 (en) * 1999-11-22 2003-02-04 Adobe Systems Incorporated Processing opaque pieces of illustration artwork
US7436531B2 (en) 2002-05-14 2008-10-14 Xerox Corporation Systems and methods for using multiple processors for imaging
US7181687B2 (en) * 2002-06-27 2007-02-20 Adobe Systems Incorporated Previewing the effects of flattening transparency
US7262782B1 (en) 2003-11-07 2007-08-28 Adobe Systems Incorporated Selectively transforming overlapping illustration artwork
US7789851B2 (en) * 2008-05-27 2010-09-07 Honeywell International Inc. Heating solutions for fluid media
US8339653B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on overlap characteristics
US8339670B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data based on graphic-list partitioning
US8339672B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data using graphic-list partitions and associated rendering processors
US8411319B2 (en) * 2009-03-30 2013-04-02 Sharp Laboratories Of America, Inc. Methods and systems for concurrent rendering of graphic-list elements
US20100245918A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US20100245889A1 (en) * 2009-03-30 2010-09-30 Nguyen Uoc H Methods and Systems for Rendering Data
US8339671B2 (en) * 2009-03-30 2012-12-25 Sharp Laboratories Of America, Inc. Methods and systems for rendering data by partitioning a graphics list
US11281460B1 (en) * 2020-11-23 2022-03-22 Cerner Innovation, Inc. System and method for identifying source code defect introduction during source code modification
US11422795B2 (en) 2020-11-23 2022-08-23 Cerner Innovation, Inc. System and method for predicting the impact of source code modification based on historical source code modifications

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01188374A (ja) * 1988-01-22 1989-07-27 Shimadzu Corp プリントシステム
US4967392A (en) * 1988-07-27 1990-10-30 Alliant Computer Systems Corporation Drawing processor for computer graphic system using a plurality of parallel processors which each handle a group of display screen scanlines
WO1991015831A1 (en) * 1990-04-05 1991-10-17 Seiko Epson Corporation Page description language interpreter
US5574847A (en) * 1993-09-29 1996-11-12 Evans & Sutherland Computer Corporation Computer graphics parallel system with temporal priority
JP3284522B2 (ja) * 1993-10-05 2002-05-20 セイコーエプソン株式会社 プログラム生成装置
AUPM704594A0 (en) * 1994-07-25 1994-08-18 Canon Information Systems Research Australia Pty Ltd Efficient methods for the compositing of graphical elements

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6654139B1 (en) 1998-11-11 2003-11-25 Nec Corporation Printer system with image processing system in which drawing operations are executed in parallel
JP2008027395A (ja) * 2006-07-25 2008-02-07 Canon Inc 描画処理装置及びその制御方法
JP2011514592A (ja) * 2008-02-22 2011-05-06 クゥアルコム・インコーポレイテッド グラフィックス処理の命令レイテンシ減少のためのシステムおよび方法
JP2013504127A (ja) * 2009-09-03 2013-02-04 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド Gpuワークのハードウエアベースでのスケジューリング
JP2014520010A (ja) * 2011-12-31 2014-08-21 北大方正集▲団▼有限公司 ページの図形要素オーバープリント処理方法および装置
JP2013190849A (ja) * 2012-03-12 2013-09-26 Toshiba Corp オブジェクト検索装置およびその方法
US9262717B2 (en) 2012-03-12 2016-02-16 Kabushiki Kaisha Toshiba Apparatus and a method for retrieving an object

Also Published As

Publication number Publication date
US5936634A (en) 1999-08-10
JP2910649B2 (ja) 1999-06-23

Similar Documents

Publication Publication Date Title
JP2910649B2 (ja) 画像形成装置および画像形成方法
US8830506B2 (en) Image processing system utilizing plural parallel processors and image processing method utilizing plural parallel processors
JPH09265363A (ja) 印刷処理装置および方法
US20070127060A1 (en) Printing apparatus and method and computer readable medium
JP6135329B2 (ja) 印刷データ処理装置、プログラム、及びシステム
JPH1131052A (ja) 文書処理システム
JP3834935B2 (ja) 印刷処理装置
JP3871011B2 (ja) 情報処理装置および情報処理方法
CN105704347A (zh) 图像处理设备和图像处理方法
JPH11259644A (ja) 画像形成装置および画像形成方法
JPH1040360A (ja) 命令解析装置
JP3885282B2 (ja) 印刷データ処理装置および印刷データ処理方法
JPH11147344A (ja) 描画処理装置および方法
JPH1011593A (ja) 画像形成装置
JPH10151815A (ja) 印刷処理装置
JPH11144062A (ja) 印刷処理装置
JP2000255116A (ja) 印刷処理装置および印刷処理方法
JP3700363B2 (ja) 印刷処理装置
JP2018063557A (ja) 画像形成装置、方法、プログラム
JPH11232062A (ja) 印刷処理装置
JPH1120273A (ja) 画像処理装置および画像処理方法
JPH10157217A (ja) 印刷処理装置
JPH10157216A (ja) 印刷処理装置
JP3873476B2 (ja) 描画処理システム、描画処理制御装置、及び描画処理方法
JPH11157147A (ja) 印刷処理装置および印刷処理方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees