JPH11339023A - 構成設定可能な画像処理パイプラインを操作する方法 - Google Patents

構成設定可能な画像処理パイプラインを操作する方法

Info

Publication number
JPH11339023A
JPH11339023A JP11103650A JP10365099A JPH11339023A JP H11339023 A JPH11339023 A JP H11339023A JP 11103650 A JP11103650 A JP 11103650A JP 10365099 A JP10365099 A JP 10365099A JP H11339023 A JPH11339023 A JP H11339023A
Authority
JP
Japan
Prior art keywords
strip
page
data
print data
lossless
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
JP11103650A
Other languages
English (en)
Inventor
Clayton Chadez
クレイトン・チャデズ
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH11339023A publication Critical patent/JPH11339023A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0005Accepting output data; Preparing data for the controlling system
    • G06K2215/0014Transforming the printer input data into internal codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K2215/00Arrangements for producing a permanent visual presentation of the output data
    • G06K2215/0002Handling the output data
    • G06K2215/0062Handling the output data combining generic and host data, e.g. filling a raster
    • G06K2215/0065Page or partial page composition

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Image Generation (AREA)
  • Facsimile Image Signal Circuits (AREA)

Abstract

(57)【要約】 【課題】 データ処理速度を改善し、画像処理ファー
ムウェアへの変更に依存しないデータ処理パイプライン
を提供する。 【解決手段】構成設定可能なデータ処理パイプライン(1
00)は特定用途向け集積回路で実現される。データ処理
パイプライン(100)は、圧縮/解凍モジュール(126、12
7)、ページ・ストリップ・マネージャ(124)、色空間変
換モジュール(125)、マージ・モジュール(128)およびハ
ーフトーン・モジュール(130)を含む。パイプライン(10
0)を制御する方法は、画像描画ファームウェアによって
処理された後のラスタ画像データを受け入れ、ラスタ画
像データをパイプラインに転送するための準備をする。
次に、ページ描画ファームウェア(1)から独立してパイ
プライン制御ファームウェア(105)が、パイプラインASI
Cを制御する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、データの処理に
関連し、特に、プリンタ内で使用するデータ処理パイプ
ラインを構成する方法および手段に関連する。
【0002】
【従来の技術】プリンタの印刷データ・パイプライン
は、印刷の準備としてパイプラインに入る印刷データ上
に多くの演算を実施する。これらの演算は、印刷データ
圧縮、印刷データ解凍(decompression:伸張)、色空間変
換およびハーフトーン付け(halftoning:中間調付け)を
含む。実施される演算のタイプ、および演算が実施され
る特定の順序は、パイプラインに入る印刷データのタイ
プ、印刷エンジンの能力、およびプリンタ内で利用可能
なメモリに依存して異なる。パイプラインに入ることが
できる印刷データのタイプは、テキスト、線画、画像、
およびグラフィックスを含む。
【0003】先行技術のパイプライン実現の中で、多様
な処理演算が、ファームウェアの制御下にプロセッサに
よって実施される。パイプラインに入る印刷データのタ
イプ、および、印刷データを処理するのに必要な演算に
依存して、多数の可能性のあるファームウェア・ルーチ
ンが実行され、印刷データ処理演算を完成する。
【0004】プリンタが、ドット配置の密度(インチあ
たりドット)を増加させ、グレースケール能力を付加し
(画素あたりビットセットを使用してグレースケール・
レベルを定める)、カラー印刷能力を含む(単色印刷と比
べて更なる画素あたりビットを必要とする)につれて、
プリンタのデータ・パイプラインが印刷データを処理す
るのに必要な時間は、相当なものになっている。例え
ば、カラー印刷で、1ページを印刷するのに使用される
データを記憶するために必要とされるメモリは、同じ解
決法の単色プリンタに必要なメモリの32倍に達すること
がある。
【0005】印刷エンジンの印刷速度能力を十分に利用
するため、データ・パイプラインは、印刷エンジンに印
刷データの連続するストリームを供給するに十分に速く
印刷データを処理する能力をもたなければならず、それ
によって、印刷エンジンが、印刷ジョブ全体を通して連
続的に印刷することを可能にする。
【0006】先行技術のデータ・パイプラインは、汎用
マイクロプロセッサを使用して実現されてきた。マイク
ロプロセッサは、データ・パイプラインの演算を実施す
るようにプログラムされる融通性をもつが、それらは、
これらの演算を実施する際に相当なオーバヘッドを負
い、従って印刷データが処理されるレートを低減する。
データ・パイプラインの演算を実施するプロセッサによ
って処理される印刷データ量の増加は、印刷エンジンの
印字速度に見合う高性能なプロセッサを使用することを
要求する。処理性能を向上させるため、先行技術のデー
タ・パイプラインは、印刷データ圧縮/解凍および色空
間変換のような特定の演算を実施する特定用途向け集積
回路(ASIC)をもつ。しかし、マイクロプロセッサ、ASIC
およびメモリの間でデータを移動させるのに必要とされ
る時間は、データ・パイプライン処理演算にかなりのオ
ーバヘッドを与える。
【0007】マイクロプロセッサを用いて実現されるデ
ータ・パイプラインの融通性を保持しながら、データが
処理される速度を改善するデータ・パイプラインの必要
性が存在する。しかし、そのようなデータ・パイプライ
ンは、好ましくは画像処理ファームウェアによって制御
されるので、ファームウェアが変わるとき変更の影響を
受ける。さらに、パイプラインは、好ましくはASICの形
式で構成されるので、そのような変更は、結果的にファ
ームウェアの変更に従うようASICの設計変更を要求し、
これは明らかに高価な提案である。
【0008】
【発明が解決しようとする課題】従って、この発明の目
的は、多様な画像処理プロシージャを収容するように構
成されるデータ・パイプラインを提供することである。
【0009】この発明の別の目的は、画像処理ファーム
ウェアに対する変更の影響から、パイプラインが保護さ
れることを可能にするデータ・パイプライン制御のため
の手段および方法を提供することである。
【0010】
【課題を解決するための手段】印刷データのようなデー
タを処理するための構成設定可能なデータ処理パイプラ
インは、構成の柔軟性を提供し、それによって改善され
たデータ演算速度を達成しながら、データ処理演算がデ
ータについて最適化されることを可能にする。好ましい
実施例で、構成設定可能なデータ処理パイプラインは、
ASICの中で実現される。
【0011】構成設定可能なデータ処理パイプライン
は、圧縮/解凍モジュール、ページ・ストリップ・マネ
ージャ、色空間変換モジュール、マージ・モジュール、
およびハーフトーン・モジュールを含む。パイプライン
を制御する方法は、画像描画ファームウェアによってラ
スタ画像データが処理された後にそれを受け入れ、パイ
プラインにラスタ画像データを転送する準備をする。ペ
ージ描画ファームウェアは、初めに、ラスタ画像データ
の1ページを複数のページ・ストリップに分ける。パイ
プライン制御ファームウェアは、それぞれのページ・ス
トリップを選択的に処理して、記憶されるデータブロッ
クの中へそれの圧縮および変換を達成する。次に、それ
ぞれのページ・ストリップについて、ページ描画ファー
ムウェアは、圧縮を達成するために使用された1つまた
は複数の圧縮プロシージャを示す情報および該ページ・
ストリップを構成するデータブロックのリンクリスト(l
inked list)へのポインタを含むストリップ待ち行列要
素を生成する。それぞれのストリップ待ち行列要素は、
それぞれのページ・ストリップの圧縮を達成するために
使用された1つまたは複数の圧縮プロシージャに依存し
て、損失ありストリップ待ち行列または損失なしストリ
ップ待ち行列のいずれかまたは両方に列挙される。ヌル
・インディケータ(null indicator:空を示すもの)が、
それぞれのストリップの処理中に使用されなかったスト
リップ待ち行列上に位置付けられる。
【0012】この段階で、パイプライン制御ファームウ
ェアが制御をとり、ページ・ストリップの処理中にパイ
プラインによって使用される広域(グローバル)パラメー
タを示すページ・ディスクリプタが生成される。印刷が
始まるとき、パイプライン制御ファームウェアは、損失
あり圧縮リスト、損失なし圧縮リストおよび生データブ
ロック・リストを含む、1ページを構成するデータブロ
ックの複数のリストを組み立てる。ページ・ディスクリ
プタからの広域パラメータが、パイプライン内のモジュ
ールをプログラムするためパイプライン制御ファームウ
ェアによって使用される。それぞれのページ・ストリッ
プについて、ページ・ストリップ・マネージャは、関連
するストリップ待ち行列要素内の情報に従って、データ
ブロックの1つまたは複数のリストからデータブロック
を受け入れ、パイプラインに含まれる1つまたは複数の
モジュールへ該データブロックを渡すようプログラムさ
れる。その後、パイプラインは、それぞれのページ・ス
トリップからのデータブロックを解凍し、パイプライン
内の1つまたは複数のモジュールにデータブロックを渡
すためのプログラミングと一致して、パイプライン制御
ファームウェアによって操作される。
【0013】この発明は、添付の図面に関連して行われ
る以下の詳細な説明の考察からより十分に理解すること
ができるであろう。
【0014】
【発明の実施の形態】この発明は、ここに示される特定
の例示の実施例に限定されない。また、構成設定可能な
データ処理パイプラインの実施例は、カラーレーザプリ
ンタの状況において記述されるが、当業者であれば、こ
の説明を理解した後、ハードウェア・ブロックを構成
し、画像処理ファームウェアの変更の結果からハードウ
ェア・ブロックを切り離す能力をもつことによって改善
された処理速度および柔軟性が達成される他のイメージ
ング・システムに、開示される印刷データ処理パイプラ
イン・アーキテクチャを適用できることが分かるであろ
う。
【0015】カラー印刷において、マイクロプロセッサ
ベースのデータ処理パイプラインよりも処理速度を改善
する一方、実施される処理演算の順序とタイプに関する
柔軟性を維持する印刷データ処理パイプラインの必要性
が存在する。画像処理ファームウェアに実質的に依存し
ないパイプライン制御ファームウェアを使用して、デー
タ処理パイプライン・アーキテクチャを構成するので、
パイプラインは、画像処理ファームウェアに対する変更
から切り離されることが可能になる。
【0016】印刷データのフロー図1に、印刷データ処
理パイプライン15を含むカラープリンタを通る印刷デー
タのフローの簡略図を示す。図1は、並列の損失あり経
路および損失なし経路を使用して印刷データ処理パイプ
ライン15によって実施される典型的な演算を通過する印
刷データのフローのみを示すものであることを述べてお
く。図1は、印刷データ処理パイプライン15のハードウ
ェア・ブロック図ではない。図2のハードウェア・ブロ
ック図の後の記述から明らかになるように、印刷データ
処理パイプライン15は、印刷データの処理を最適化する
ための多様なそれぞれの方法で構成することができる。
【0017】システムに入力する印刷データは、例え
ば、印刷されるページを構成するために必要な情報から
なる表示リストの形式である。表示リスト印刷データ
は、ラスタ印刷データに加えて、ラスタ印刷データがテ
キストまたは画像印刷データであること特定する符号、
テキスト文字を表すプリンタ制御言語符号、グラフィク
ス画像を表すグラフィックス言語符号、または、これら
印刷データのタイプのそれぞれの組み合わせを含むこと
ができる。画像処理は、ページ描画ファームウェア(PR
F)1・ルーチンの実行によって、表示リスト印刷データ
に実施される。
【0018】画像処理演算1には、複数のページ・スト
リップへの入力の分割が含まれる。表示リスト印刷デー
タは、ページ・ストリップに分割するため、それが対応
するページ上の垂直位置に基づいてソートされる。分割
は、ページ・ストリップに対応するページのセクション
を形成する印刷データのタイプの考察を要する。
【0019】それぞれのページ・ストリップは、1つま
たは2つのいずれかのストリップ・ディスクリプタによ
って識別される。ページ・ストリップが、完全に損失の
ある圧縮された印刷データまたは完全に損失のない圧縮
された印刷データのいずれかから形成される場合、ペー
ジの該セクションについて1つのストリップ要素(すな
わち1つのディスクリプタ)のみがPRF1によって形成さ
れる。しかし、該セクションについての表示リスト印刷
データが、損失ありおよび損失なしの両方の圧縮された
印刷データを含む場合、そのストリップについて2つの
別々のストリップ要素が形成される。ストリップ要素の
一方(および関連するデータブロック)は、損失あり圧縮
印刷データのみを含み、ストリップ要素の他方(および
関連するデータブロック)は、損失なし圧縮印刷データ
のみを含む。
【0020】データの両方のタイプが、表示リスト印刷
データ内に存在するとき、ページの対応するセクション
について損失ありおよび損失なしストリップ要素の形成
が行われる。損失ありおよび損失なしストリップ要素の
両方が形成されるとき、PRF1は対応するマージ平面を生
成する。このマージ平面は、損失ありおよび損失なしス
トリップ要素のどちらにその画素についての印刷データ
が含まれているかを示すため、2つのページ・ディスク
リプタの中の対応する画素位置のそれぞれの対について
1ビットから構成される。マージ平面を形成するビット
は、バイトに形成され、バイトのストリームとして印刷
データ処理パイプライン15を通して転送される。このマ
ージ平面は、損失ありおよび損失なしストリップ・デー
タを結合するため、印刷データ処理パイプライン15内の
後の段階で使用され、それによって元のページ・ストリ
ップが復元される。このマージ演算は以下で更に詳しく
述べる。
【0021】損失あり圧縮印刷データのみまたは損失な
し圧縮印刷データのみをもつページ・ストリップについ
て、1つのストリップ要素が形成されるケースでは、そ
のページ・ストリップに関する印刷データはすべて、そ
の1つのストリップ要素を通してアクセスされる。加え
て、そのページ・ストリップに関連するマージ平面は、
PRF1によって生成されない。ページのそのセクションに
ついて1つのストリップ要素しかないので、マージ平面
のあらゆるビットは同一である。従って、全て同じ値の
バイトからなるマージ平面を印刷データ処理パイプライ
ン15を通して送信する必要がない。画像処理演算1の中
でマージ平面を生成する代わりに、マージ平面は、印刷
データ処理パイプライン15内の後の段階で生成される。
これは後で述べる。
【0022】さらにPRF1は、ページ・ストリップ内のそ
れぞれの画素位置に対応して1つの値をもつハーフトー
ン平面を生成する。後で述べるように、それぞれのハー
フトーン値は、2ビットで表され、その画素に対応する
印刷データに適用されるハーフトーン付け演算を決定す
る。万一、実施されるハーフトーン付け演算がページ・
ストリップ内のそれぞれの画素について同一であると
き、ハーフトーン平面は、PRF1によって生成されない。
その代わりに、ハーフトーン平面は、印刷データ処理パ
イプライン15の後の段階で生成される。これは後で述べ
る。
【0023】ページ・ストリップ要素に分割された表示
リスト印刷データは、ラスタ印刷データのデータブロッ
クの取り出しを可能にし、それらデータブロックは、そ
れらが生成されると、印刷データ処理パイプライン15の
演算を通して解凍され、送られる。ラスタ印刷データ・
メモリ2が、PRF1によって生成されたラスタ印刷データ
を格納するために使用される。ラスタ印刷データ・メモ
リ2に割り当てられるメモリ空間は、ページ・ストリッ
プあたり許容できる最大ライン数からなる2つのページ
・ストリップについてのラスタ印刷データ、対応するサ
イズのマージ平面、および対応するサイズのハーフトー
ン平面を収容するに十分な記憶容量をもつ。
【0024】一般に、生成されるラスタ印刷データは、
それぞれの画素について3つの8ビット・バイトからな
る。3バイトのそれぞれは、表示リスト印刷データが表
現される色空間におけるカラー次元の1つに対応する。
印刷データ処理パイプラインの好ましい実施例が動作す
るカラープリンタの場合、これはRGB色空間である。し
かし、当業者であれば、入力印刷データの色空間は、例
えば、シアン,マジェンタ,黄,黒(CMYK)、色相,彩度,バ
リュー(hue,saturation,value:HSV)、色相,明度,彩度(h
ue,lightness,saturation:HLS)、輝度,赤黄スケール,緑
青スケール(La*b*)、輝度,赤緑スケール,黄青スケール
(Luv)、輝度,赤青スケール,緑黄スケール(YCrCb)、また
はYIQのような、任意の色空間でもよいことが分かるで
あろう。生成されるラスタ印刷データは、画像、テキス
ト、線画、グラフィックス、またはそれの組み合わせに
対応することができる。
【0025】前に述べたように、損失ありおよび損失な
しの圧縮された画像データが1つのページ・ストリップ
に含まれているような表示リスト印刷データのケースで
は、PRF1は、マージ平面を生成する。印刷データ処理パ
イプラインのその後の場所で、マージ・ビットを使用し
て、対応する損失ありおよび損失なしストリップ要素の
対から画素を選択し、画素の間の正しい空間関係を維持
しながら、損失ありおよび損失なしの解凍された画像デ
ータを結合する。
【0026】色空間変換は、色空間変換演算3の中で実
施される。ラスタ印刷データ上に達成される圧縮の程度
は、ラスタ印刷データが表現される色空間によって影響
される。例えば、同等の画質をもつ、より高い損失あり
圧縮比は、一般に、RGB色空間からYCbCr色空間への色空
間変換を実施し、YCbCr色空間に変換後、損失あり圧縮
演算を実施することによって達成することができる。YC
bCr色空間は、色空間のCrおよびCb成分がそれぞれ色相
およびクロマの両方の情報を含む輝度/色相/クロマのタ
イプの色空間である。
【0027】1ページ・ストリップに対応するページの
1セクションから損失ありおよび損失なしストリップ要
素を形成し、さらにマージ平面およびハーフトーン平面
を生成することは、印刷データ処理パイプライン15を通
して送出されるデータ量を増加させる。それぞれの画素
に関連するマージ・ビットおよび2つのハーフトーン・
ビットは、印刷データの量を増加させる。しかし、高圧
縮比が、損失ありおよび損失なし圧縮ストリップ要素に
ついて達成され、また、マージ平面およびハーフトーン
平面にも損失なし圧縮が施されるので、印刷データを収
容するのに必要なメモリ空間は、最悪の場合でもほんの
少し増加するだけである。しかし、損失ありおよび損失
なしデータについて異なるデータ圧縮アルゴリズムを適
用しないパイプラインと比べると結果として生じる印刷
品質の改善は、相当なものである。多くの印刷ジョブで
は、印刷データは、全て損失ありまたは全て損失なしの
どちらかで圧縮される。これらのケースで、ページ・ス
トリップの画素に対して適用される異なるハーフトーン
・アルゴリズムがある場合、画像処理演算1から印刷デ
ータ処理パイプライン15に送られるラスタ印刷データ量
の唯一の増加は、ハーフトーン平面である。ページ・ス
トリップの全ての画素に対して同一のハーフトーン・ア
ルゴリズムが適用される場合、ハーフトーン平面はPRF1
によって生成されない。
【0028】損失あり圧縮器演算5は、走査線に沿ったN
画素(例えば8)の幅と連続したM走査線(例えば8)の高さ
をもつセクションから形成されるラスタ印刷データのブ
ロック上に圧縮を実施する。印刷データ処理パイプライ
ン15の好ましい実施例で、使用される損失あり圧縮方法
は良く知られたJPEGアルゴリズムであるが、ベクトル量
子化のような任意の損失あり圧縮方法を使用することが
できる。損失なしページ・ストリップ要素がある場合、
このページ・ストリップ要素の圧縮は、損失なし圧縮演
算4の中で実施される。さらに、ページ・ストリップ要
素に対応するマージおよびハーフトーン平面がある場
合、これらは共に損失なし圧縮演算4の中で圧縮され
る。印刷データ処理パイプライン15の好ましい実施例
は、米国特許第5,455,576号の明細書に開示されているL
empel-Zivの損失なし圧縮/解凍方法のタイプを利用し、
その方法をここで参照として取り入れる。しかし、例え
ばJBIG、ランレングス、またはデルタ行圧縮のような任
意の損失なし圧縮/解凍方法を使用することもできる。
【0029】損失あり圧縮演算5および損失なし圧縮演
算4によってそれぞれ生成された損失ありおよび損失な
しの圧縮されたラスタ印刷データは、圧縮ラスタ印刷デ
ータ・メモリ6の中に記憶される。圧縮ラスタ印刷デー
タ・メモリ6に割り当てられる空間は、3つのカラー平
面の全てを保有するに十分な大きさであり、それぞれの
カラー平面は、ページ全体の圧縮された損失ありおよび
損失なしラスタ印刷データ、ページ全体の圧縮されたハ
ーフトーン・データ、およびページ全体の圧縮されたマ
ージ・データをもつ。
【0030】損失ありおよび損失なしストリップ要素を
形成し、損失ありまたは損失なし圧縮方法をそれぞれ使
用してこれらのストリップ要素内のラスタ印刷データを
圧縮することにより、印刷データについてメモリ圧縮お
よび画質の最適な組み合わせが達成される。損失ありラ
スタ印刷データは、損失あり圧縮技法を使用して、その
視覚的に損失のない特性を維持しながら、大幅に圧縮す
ることができる。損失なしラスタ印刷データは、損失な
し圧縮技法を使用して、画質の劣化を経験せずに高圧縮
比を達成するように圧縮される。
【0031】印刷データ処理パイプライン15内のそれぞ
れの演算をマイクロプロセッサを使用して実施すること
は可能であるが、印刷データ処理性能は著しく低減す
る。マイクロプロセッサは、損失ありおよび損失なしペ
ージ・ストリップ要素を交互に処理して、必要な印刷デ
ータ圧縮、色空間変換および印刷データ解凍演算を実施
する必要がある。さらに、マイクロプロセッサは、損失
ありおよび損失なしページ・ストリップ成分をマージし
て、ハーフトーン演算を実施する。
【0032】印刷データ処理パイプライン15の好ましい
実施例は、CMYK色仕様で表現される印刷データを受け取
るよう設計されたカラーレーザ印刷エンジン16を伴って
動作する。また、印刷エンジン16は、トナーを紙に移す
前に、それぞれのCMYKカラー平面について順次にトナー
を現像することによって動作する。印刷エンジン16によ
って使用される4パス現像プロセスは、ラスタ印刷デー
タが印刷データ処理パイプライン15の中を流れるように
指図する。レーザ印刷エンジン16のこの動作モードのた
め、1ページに関するラスタ印刷データは、4つの連続
するパスで印刷エンジン16に送信され、1つのパスが、
CMYKカラーのそれぞれの次元に対応する。
【0033】前に述べたように、損失ありおよび損失な
しストリップ・データブロックが圧縮されるとき、ペー
ジ全体の圧縮されたラスタ印刷データは、圧縮されたラ
スタ印刷データ・メモリ6に割り当てられるメモリ空間
に蓄積される。圧縮されたラスタ印刷データをレーザ印
刷エンジンのCMYKカラーの4平面の各々に変換するため
には、ページの圧縮されたラスタ印刷データを4つの連
続したパスで印刷データ処理パイプライン15に送信する
必要がある。これら4つのパスのそれぞれの中で、損失
なしおよび損失あり圧縮ラスタ印刷データは、1バイト
幅の2つのチャネルを通して、解凍するためそれぞれの
損失なし解凍演算10および損失あり解凍演算11に送り出
される。圧縮されたマージ平面およびハーフトーン平面
は、損失なし圧縮ラスタ印刷データのバイトとインタリ
ーブされる。マージ平面およびハーフトーン平面は、損
失なしラスタ印刷データとインタリーブされるので、損
失なしラスタ印刷データと共にそれらにも損失なし圧縮
を施こすことができる。解凍後、マージ平面およびハー
フトーン平面は、解凍された損失なし印刷データのスト
リームから抽出される。
【0034】損失あり圧縮印刷データは、損失ありペー
ジ・ストリップ・データブロックを含む。損失あり解凍
演算11および損失なし解凍演算10の後、損失なし印刷デ
ータおよび損失あり印刷データは共に、色空間変換演算
12内の色空間変換へ送られる。印刷エンジン16は、4パ
ス現像プロセスを使用するので、ページの全てのカラー
平面に対する圧縮されたラスタ印刷データは、4回連続
して損失あり解凍演算11および損失なし解凍演算10に送
られる。損失なし解凍演算10および損失あり解凍演算11
を通して色空間変換演算12に入る圧縮ラスタ印刷データ
の4つのパスのそれぞれについて、色空間変換演算12
は、CMYKカラーの4平面のうちの1つを生成する。
【0035】色空間変換演算12は、印刷されようとする
ページのそれぞれの画素を表す損失ありまたは損失なし
ラスタ印刷データのバイトを使用して実施される。色空
間変換演算12から出力されるラスタ印刷データストリー
ムは、損失ありラスタ印刷データおよび損失なしラスタ
印刷データから形成される2つの8ビット・チャンネル
を含む。色空間変換演算12に入力される損失なしラスタ
印刷データは、RGB色空間で表現されている。
【0036】マージ演算13は、損失なしラスタ印刷デー
タストリーム、損失ありラスタ印刷データストリーム、
ハーフトーン・データストリームおよびマージ・データ
ストリームを入力として受信する。これらの印刷データ
ストリームの各々は、バイトのストリームから形成され
る。ページ全体の画素の各々について印刷エンジン色仕
様の1つのカラー平面を表す印刷データが、損失なしお
よび損失ありラスタ印刷データストリームに含まれてい
る。マージ演算13の機能は、これら2つのラスタ印刷デ
ータストリームを画素ごとに結合し、その結果、以前に
損失なしおよび損失ありページ・ストリップ要素に分割
された元の画像が、処理されているカラー平面について
復元される。
【0037】それぞれの画素に関連するマージ・データ
のビットをマージ演算13によって使用して、現在処理さ
れている画素に関するラスタ印刷データが損失なしラス
タ印刷データストリームまたは損失ありラスタ印刷デー
タストリームから選択されるかを判断する。マージ演算
13を通る損失ありおよび損失なしラスタ印刷データのそ
の後のパスは、印刷エンジン色仕様の残りのカラー平面
について元の画像を復元する。それぞれの画素は、印刷
されるページ上の位置に対応する。復元プロセスは、元
の画像を生成するための損失なしおよび損失ありラスタ
印刷データストリームの空間的な同期化と考えることが
できる。それに加えて、空間的な同期化を達成するた
め、損失なしおよび損失ありラスタ印刷データストリー
ムならびにマージ・データのストリームを時間的に同期
させなければならない。
【0038】損失なしおよび損失あり印刷データについ
て、それぞれの経路を使用する印刷データ処理パイプラ
イン・アーキテクチャは、印刷エンジン色仕様のすべて
のカラー平面に対するラスタ印刷データを複数のパスの
代わりに1つのパスで受け取ることによって動作する印
刷エンジンと互換性をもつことを理解すべきである。こ
のケースでは、色空間変換演算12は、C、M、YおよびK次
元について対応する値のそれぞれを同時に生成するよう
各画素を表すラスタ印刷データ上に色空間変換を実施す
る必要がある。これは、色空間変換演算12が、C、M、Y
およびK次元の各々を生成するために必要な補間を同時
に実施する能力もつことを要求する。更に、マージ演算
13は、C、M、YおよびK次元それぞれについてラスタ印刷
データの1ページを収容するに十分なメモリ空間を使用
する必要がある。
【0039】印刷データ処理パイプライン15の好ましい
実施例で、マージ演算13の中で結合されるラスタ印刷デ
ータは、ハーフトーン付け演算14に渡される。ハーフト
ーン演算14は、ハーフトーン化が、印刷データの印刷エ
ンジン16への送出の前にラスタ印刷データ上に実施され
る最後の演算であるように位置付けられる。ハーフトー
ン演算14は、それぞれの画素に関連するハーフトーン印
刷データによって指示されるように、マージされたラス
タ印刷データ上に平面毎にハーフトーン化プロセスを実
施する。
【0040】ラスタ印刷データのそれぞれの画素に対す
るハーフトーン・ビットの割当てはPRF1の中で実施さ
れ、ハーフトーン平面を組み立てる。印刷データ処理パ
イプラインに入る印刷データは、ラスタ印刷データ、プ
リンタ制御言語印刷データまたはグラフィックス言語印
刷データの形式のテキスト、グラフィックスまたは画像
印刷データでありうる。PRF1は、適用されるハーフトー
ン・アルゴリズムのタイプに従って、対応する損失あり
および損失なしページ・ストリップ要素についてハーフ
トーン平面を生成する。例えば、テキスト印刷機構デー
タについてのハーフトーン・ビットは「11」を割り当て
られ、グラフィックス印刷データについてのハーフトー
ン・ビットは「10」を割り当てられ、画像印刷データに
ついてのハーフトーン・ビットは「01」を割り当てられ
る。また、画素に対応する印刷データにハーフトーン演
算が適用されないことを示すハーフトーン・ビットに
は、「00」を割り当てることができる。ハーフトーン・
ビットの割当ては、ハーフトーン・ビットに関連した印
刷データのタイプについて最適化されるハーフトーン演
算の適用を可能にする。例えば、ハーフトーン・ビット
は、インチあたり異なるライン数を有するラインスクリ
ーンをもつハーフトーン・アルゴリズムを指定すること
ができる。ハーフトーン演算は、印刷の技術の中で良く
知られている。
【0041】マージ演算13は、入力として、損失なしラ
スタ印刷データストリーム、損失ありラスタ印刷データ
ストリーム、ハーフトーン印刷データストリーム、およ
びマージ印刷データストリームを受け取る。これらの印
刷データストリームの各々は、8ビットのバイトから形
成される。ページ全体の各画素について印刷エンジン色
仕様の1カラー平面を表す印刷データが、損失なしおよ
び損失ありラスタ印刷データストリームの中に含まれて
いる。マージ演算13の機能は、これら2つのラスタ印刷
データストリームを画素毎に結合し、それによって以前
に損失なしおよび損失ありストリップ要素に分割された
元の画像が、処理されているカラー平面について復元さ
れる。マージ演算13を通る損失ありおよび損失なしラス
タ印刷データのその後のパスは、印刷エンジン色仕様の
残りの平面について元の画像を復元する。画素の各々
は、印刷されるページ上の位置に対応する。復元プロセ
スは、元の画像を生成するための損失なしおよび損失あ
りラスタ印刷データストリームの空間的な同期化と考え
ることができる。それに加えて、空間的な同期化を達成
するために、損失なしおよび損失ありラスタ印刷データ
ストリームならびにハーフトーン・ビットの印刷データ
ストリームを時間的に同期させなければならない。
【0042】印刷データ処理パイプライン15の構成は、
印刷データが印刷データ処理パイプライン15を通過する
前およびその間に実施される。パイプラインのあるパラ
メータはそれぞれのページについて構成され、あるもの
はそれぞれのカラー平面について、またあるものはそれ
ぞれのページ・ストリップについて構成することができ
る。ページあたりライン数およびラインあたり画素数
は、ページ毎に構成設定可能である。さらに、印刷デー
タ処理パイプライン15によって処理されるカラー平面の
数(すなわち画像は単色またはフルカラーで印刷される)
もページ毎に構成設定可能である。
【0043】それぞれのカラー平面についてラスタ印刷
データを処理するには、色空間変換演算3、9、12を構成
することが要求される。色空間変換演算3、9、12の実施
の前に、出力色空間の意図されるカラー平面への変換の
ために必要される色空間変換テーブルがロードされる。
さらに、ハーフトーン演算14を通るそれぞれのカラー平
面の処理は、正しいハーフトーン・テーブルを使用して
カラー平面をハーフトーン付けするようハーフトーン演
算14を構成することを要する。
【0044】パイプライン・ブロック図および演算図2
には、印刷データ処理パイプライン15の好ましい実施例
の簡略化されたハードウェア・ブロック図を示す。図2
に示される機能ブロックを接続する経路は、データ経路
を表すことに留意すべきである。図2は、機能ブロック
間のデータのフローを制御するために使用される多様な
制御線を示していない。好ましい実施例で、圧縮/解凍
演算4,5,7,8,10,11、色空間変換演算3,9,12、マージ演
算13、およびハーフトーン演算14は、ASIC100の中で実
現される。印刷データ処理パイプライン15の好ましい実
施例は、PCIバス102にASIC100を接続するように構成さ
れる。当業者であれば、印刷データ処理パイプライン15
は、VESAバスのような他のタイプのバスに接続するよう
に構成してもよいことが分かるであろう。PRF1は、PCI
バス102を通して印刷データ処理パイプライン15と通信
するプロセッサ101によって実施される。さらに、PCIバ
ス102には、読出し専用メモリ(ROM)103およびランダム
アクセスメモリ104が連結される。ROM103は、PRF1、パ
イプライン制御ファームウェア(pipeline control firm
ware: PCF)105、ハーフトーン・テーブル106、およびカ
ラー変換テーブル108を格納する。
【0045】RAM104は、直接記憶アクセス(DMA)プロシ
ージャ(すなわち「DMAブロック」)によってアクセス可
能なデータブロックの形式で、ラスタ画像データ109お
よび圧縮データ110(損失ありおよび損失なし)の両方を
格納する。RAM104はさらに、損失ありストリップ待ち行
列111および損失なしストリップ待ち行列112のための記
憶領域を提供する。損失ありストリップ待ち行列111
は、損失あり圧縮プロシージャを使用して圧縮されたデ
ータを含むDMAブロックのリストを格納し、損失なしス
トリップ待ち行列112は、損失なし圧縮プロシージャを
使用して圧縮されたデータ(または生の、圧縮されてい
ないデータ)を含むDMAブロックのリストを格納する。一
緒に、待ち行列111および112は、1ページについて全て
の印刷データを含む。
【0046】さらにRAM104は、印刷する準備のできたペ
ージのリストを含むページ待ち行列113、およびDMAデー
タブロック116を記憶する。説明の目的で、RAM104はさ
らに、実際にはデータがDMAデータブロックとインター
リーブされるとしても、処理されている現在のページに
ついてハーフトーン・ビット114およびマージ平面115の
両方を格納するものと仮定する。パイプライン制御ファ
ームウェア(PCF)105に関連した前述のそれぞれの待ち行
列の機能は、図9ないし図11に示されるロジック流れ図
と関連して後に述べる。
【0047】ASIC100は、PCIバス・インタフェース121
を通してPCIバス102にインタフェースする。PCIバス・
インタフェース121は、PCIバス・インタフェース121の
構成に必要なレジスタと、RAM104とASIC100の間を流れ
るときに印刷データをバッファするために使用されるレ
ジスタを含む。直接記憶アクセス・コントローラ(ビデ
オDMA122)は、印刷データ処理パイプライン15の多様な
機能を実施するASIC100の一部に入るまたはそこから出
る印刷データのフローを制御する。ビデオDMAバッファ1
23は、印刷データがビデオDMA122を通るときに一時的に
印刷データを記憶して、印刷データが入ったり出たりす
るときにPCIバス102とASIC100の多様な機能ブロックと
の間の印刷データレートを整合させる。ビデオDMAバッ
ファ122の使用は、PCIバス・インタフェース121とASIC1
00の残りのものの機能ブロックとの間のデータフローの
レートの不整合を補償する。
【0048】いくつかの重要な利点は、ASIC100内の印
刷データ処理パイプライン15の具体化によってもたらさ
れる。第1の利点は、印刷データ処理パイプライン15の
ための処理演算がASIC100の内部で達成される効率的な
方法である。全ての演算をASIC100上に位置付けること
によって、印刷データは、PCIバス102を通して1つの印
刷データ・パイプライン処理演算を実施する専用の個々
の集積回路間で印刷データの転送が行われる場合に生じ
る処理オーバヘッドを負わずに、連続する演算から演算
へ転送される。第2の利点は、印刷データに選択的にAS
IC100内の機能ブロックを迂回させるようASIC100を構成
する能力である。第3の利点は、別の機能ブロックに送
るため、またはメモリに記憶するため、機能ブロックの
出力を選択的にビデオDMA122に帰還させる能力である。
【0049】PCIバス102からロードされる印刷データ上
に印刷データ処理パイプライン15が実施しようとする演
算のタイプに依存して、ビデオDMA122は、ASIC100内の
適切な機能ブロックに印刷データを送るよう構成され
る。色空間変換が要求される場合、印刷データは、ビデ
オDMA122によってページ・ストリップ・マネージャ124
に送信される。ページ・ストリップ・マネージャ124
は、印刷データを、ビデオDMA122から色空間変換器125
の適切な損失ありまたは損失なし入力へ送る。さらに、
ページ・ストリップ・マネージャ124は、損失なしラス
タ印刷データとインタリーブされるマージ・データおよ
びハーフトーン・データを抽出し、異なるバイト幅のチ
ャンネルを通してこれらの各々をマージ・ユニット128
に送り出す。印刷データの圧縮または解凍が必要とされ
る場合、印刷データは、ビデオDMA122によって、損失あ
り圧縮器/解凍器126または損失なし圧縮器/解凍器127上
の適切な圧縮または解凍入力へ向けられる。
【0050】マージ・ユニット128は、色空間変換器125
から現れる損失ありおよび損失なしラスタ印刷データス
トリーム上にマージ演算13を実施する。ラインバッファ
129は、マージ演算13の中で使用される損失ありおよび
損失なしラスタ印刷データならびにマージおよびハーフ
トーン・データをバッファするSRAMを含む。ハーフトー
ン・ユニット130は、ハーフトーン平面の中で指定され
るビットに従って、それぞれの画素に対応するマージさ
れたラスタ印刷データストリーム上にハーフトーン演算
14を実施する。図2には明示的に示されないが、印刷デ
ータ上に実施される演算が、色空間変換および/または
ハーフトーン付けを含まない場合、色空間変換器125お
よびハーフトーン・ユニット130は、印刷データがこれ
らの機能ブロックを迂回するように構成することができ
る。
【0051】印刷データ処理パイプラインを流れる印刷
データ上への演算が完了すると、印刷データは、ASIC10
0からRAM104に転送され、その後さらなる処理のためASI
C100に戻される。例えば、損失あり圧縮演算5および損
失なし圧縮演算4が、それぞれ損失あり圧縮器/解凍器12
6および損失なし圧縮器/解凍器127の中で実施された
後、結果として生じる圧縮されたラスタ印刷データは、
ビデオDMA122に向けて送られ、PCIバス・インタフェー
ス121を通して、PCIバス102を介してRAM104内の圧縮印
刷データ領域110に送られることができる。
【0052】圧縮されたラスタ印刷データが解凍される
とき、それは、PCIバス102を通してASIC100およびPCIバ
ス・インタフェース121に転送される。データは、ビデ
オDMA122によって、損失あり圧縮器/解凍器126および損
失なし圧縮器/解凍器127のいずれかまたは両方の解凍入
力へ向けられる。
【0053】色空間変換演算3が、損失ありおよび/また
は損失なしラスタ印刷データ上に実施された後、結果と
して生じるラスタ印刷データは、ビデオDMA122を通して
損失あり圧縮器/解凍器126または損失なし圧縮器/解凍
器127に戻すことができ、または、ビデオDMA122およびP
CIバスインタフェース121を通してRAM104に戻すことが
でき、または、マージ演算13の実施のためマージ・ユニ
ット128に送出することができる。色空間変換器125の中
には、色空間変換された損失ありまたは損失なしラスタ
印刷データを色空間変換器125の損失ありまたは損失な
し出力に向ける選択器が含まれており、それらの出力
は、マージ・ユニット130の損失ありおよび損失なし印
刷データ入力に連結される。
【0054】ページ・ストリップ・マネージャ124はラ
スタ印刷データを管理し、それによって印刷データ処理
パイプライン15の色空間変換演算3、9、12、マージ演算
13、およびハーフトーン演算14は、一様な形式をもつラ
スタ印刷データのストリームを受け取る。例えば、1つ
の損失ありまたは損失なしストリップ要素のみがPRF演
算1の中で生成される状況で、ページ・ストリップ・マ
ネージャ124は、適宜にヌル(空の)印刷データの対応す
る損失ありまたは損失なしストリップ要素を生成し、そ
れによって対応する損失ありおよび損失なしページ・デ
ータブロックが、色空間変換器125に向けて損失ありお
よび損失なし経路上に送出される。さらに、ただ1つの
損失ありまたは損失なしストリップ要素がPRF演算1によ
って生成される場合、ページ・ストリップ・マネージャ
124は、ページ・ストリップ要素の各画素に対応する同
一ビットから形成される対応するマージ平面を生成す
る。さらに、同じハーフトーン・プロセスが、ページ・
ストリップの各画素に適用されるケースで、ページ・ス
トリップ・マネージャ124は、ページ・ストリップに対
応するハーフトーン平面を生成する。ページ・ストリッ
プ・マネージャ124は、マージ・データおよびハーフト
ーン・データを、異なるバイト幅の経路を通してマージ
・ユニット128に送出する。
【0055】ページ・ストリップ・マネージャ124は、
解凍された損失ありおよび損失なしラスタ印刷データ
を、別々のチャンネルを通して受け取る。圧縮された損
失ありラスタ印刷データが、損失あり圧縮器/解凍器126
によって解凍されるとき、色空間の各次元について結果
として生じるx画素×y画素のブロックは、損失あり圧縮
器/解凍器126に含まれる出力バッファ内に格納される。
ページ・ストリップ・マネージャ124は、出力バッファ
から送られる損失ありラスタ印刷データのストリームを
受け取る。それぞれの画素に対応する解凍された損失あ
りラスタ印刷データのバイトは、損失あり圧縮器/解凍
器126の出力バッファから、色空間の各次元に対応する
1バイトをもつ連続したバイトとして送出される。ペー
ジ・ストリップ・マネージャ124は、1画素について損
失ありラスタ印刷データの対応するバイトを組み立て、
それらを損失ありラスタ印刷データのビットストリーム
として色空間変換器125に送出する。
【0056】ページ・ストリップ・マネージャ124は、
解凍された損失なしラスタ印刷データを、それぞれの損
失なし画素について連続するバイトのストリームとして
受け取る。マージ・データおよびハーフトーン・データ
は、損失なし圧縮器/解凍器127から送り出される損失な
しラスタ印刷データとインタリーブされる。インタリー
ブは、印刷されるページ上の1行に対応する損失なしラ
スタ印刷データのバイトが送出され、その後、損失なし
ラスタ印刷データのラインに対応するマージ・データお
よびハーフトーン・データの必要なバイト数が続くよう
に行われる。ページ・ストリップ・マネージャ124は、
マージ・データおよびハーフトーン・データを抽出し、
それらを個々のチャンネルを通してマージ・ユニット12
8に送出する。ページ・ストリップ・マネージャ124は、
1画素について損失なしラスタ印刷データの対応する3
バイトを組み立て、それらを損失なしラスタ印刷データ
のビットストリームとして色空間変換器125に送り出
す。
【0057】あるケースでは、ビデオDMA122は、圧縮ス
テップを迂回して、ラスタ印刷データを直接ページ・ス
トリップ・マネージャ124に送出する。これは、ラスタ
印刷データのページが、圧縮なしで印刷エンジン16に送
信され、RAM104内のラスタデータ領域109に格納される
ときに実施することができる。この場合、ラスタ印刷デ
ータは、多様な帰還経路のいずれを取ることなく、線形
に印刷データ処理パイプライン15を流れる。また、ラス
タ印刷データは、ビデオDMA122から直接ページ・ストリ
ップ・マネージャ124に送られ、色空間変換およびハー
フトーン付けのようなその後の印刷データ処理パイプラ
イン15処理演算を通して、帰還経路に戻りビデオDMA122
を通して適切な圧縮器に送信され、圧縮されたラスタ印
刷データは、メモリに記憶するためビデオDMA122に戻さ
れることが可能である。
【0058】マージ・ユニット130の好ましい実施例
は、損失ありおよび損失なしラスタ印刷データ・ストリ
ームから選択し、マージ・ビットを使用してデータ・ス
トリームを形成し、元の画像を復元する。
【0059】制御データ構造 パイプライン制御ファームウェア(PCF)の詳細な演算に
ついて述べる前に、パイプライン100の演算を可能にす
るために利用される制御データ構造の説明を提供する。
図2に示すように、RAM104は、損失ありストリップ待ち
行列111および損失なしストリップ待ち行列112を含む。
さらに、ページ待ち行列113もそこに格納され、印刷す
るために待ち行列に入れられる多様なページを列挙す
る。
【0060】図3は、ページ待ち行列113の中にそれぞれ
のページ待ち行列要素を含む制御データ構造の内容を示
す。印刷エンジン16によって印刷されるようとする各ペ
ージについて1つのページ待ち行列要素がある。以下の
記述からよく分かるように、それぞれのページ待ち行列
要素は、ページの構造を記述し、ページを組み立てるデ
ータの表現を制御するパラメータを提供する。
【0061】より具体的には、それぞれのページ待ち行
列要素は、ページが損失なしデータを含むか、損失あり
データを含むか、および/または、データがリバース・
モードで圧縮されているかを示すブール(Boolean)の値
と、(i)ページ上の各ラインについて損失あり画素数、
(ii)ページについてデータのライン数、(iii)ページに
使用される各カラー平面について上マージンを生成する
ためのヌルデータのライン数、(iv)あらゆるラインにつ
いて左マージンを生成するヌルデータの画素数、を定め
る値を含む。別の値は、プリンタがどんなカラーモード
で、すなわちフルカラーまたは単色で動作するかを示
す。最後に、それぞれのページ待ち行列要素の中には、
ハーフトーン・テーブルを指す1つのポインタ、損失な
しデータについて入力色空間からプリンタ色空間への変
換を可能にするテーブルを指す第2のポインタ、損失あ
りデータについて入力色空間からプリンタ色空間に変換
するためのテーブルを指す別のポインタ、損失ありデー
タを印刷するために必要とされるデータへの更に別のポ
インタのような多数のポインタがある。
【0062】上に示したように、損失なしストリップ待
ち行列112は、多数の損失なしストリップ待ち行列要素
を収容し、それらの各々は、1つのページ・ストリップ
およびその内容を記述する。典型的な損失なしストリッ
プ待ち行列要素が図4に示されており、以下のデータを
含む。すなわち、ストリップに含まれる画素数に等しい
画素の総数を与える値と、そのストリップについてマー
ジ平面およびハーフトーン・テーブルの構成を可能にす
る値と、そのページ・ストリップについて全ての印刷デ
ータを含むデータブロックのリンクリストの第1データ
ブロックへのポインタである。さらに2つのブールの値
があり、一方は、このストリップのデータが圧縮されて
いることを示し、他方は、ストリップがそのページのデ
ータの最終ストリップであるかを示す。
【0063】損失ありストリップ待ち行列111は、図5に
示されるように構成される複数の損失ありストリップ待
ち行列要素を含む。そのような要素はそれぞれ、ストリ
ップ内に含まれるデータの画素の数を定める値、ストリ
ップ内の印刷されようとするデータを含む(損失ありプ
ロシージャを使用して圧縮されている)データブロック
のリンクリストの第1データブロックへのポインタ、お
よびこのページ・ストリップがそのページのデータの最
終ストリップであるかを示すブールの値を含む。
【0064】図6に示されるように、ハーフトーン・プ
ロシージャと一緒に使用するために選択可能な、複数の
ラインスクリーンを格納するハーフトーン・テーブルも
提供される。入力色空間からプリンタ色空間への色空間
変換を可能にするさらに別のテーブルが図7に示されて
いる。色空間変換テーブルは、黄色(Y)、マジェンタ
(M)、シアン(C)および黒(K)カラー平面について、カラ
ー変換値を定めるデータのバイトを含む。
【0065】図8aは、DMAプロシージャを通してアクセ
スされるデータブロックについてリストノードのデータ
構造を示す。それぞれの損失ありストリップ待ち行列要
素および損失なしストリップ待ち行列要素は、特定のス
トリップに関するデータブロックがアクセスされること
ができる開始点を定めるそのようなリストノードへのポ
インタを含む。このように、図8aに示されるように、そ
れぞれのリストノードは、DMAデータブロック・ストリ
ングのDMAデータブロックについて開始アドレスを示す
値を含む。次の値は、転送する1データブロックを含む
データのバイト数を示す。更なるポインタ値は、リスト
内の次のエントリを示す。
【0066】図8bは、マージおよびハーフトーン演算の
両方を可能にするマージ、ハーフトーン構成平面を示
す。上で述べたように、マージ平面は、画素あたり1ビ
ットを含み、それは、パイプライン演算の間、その画素
についてビットが損失なしチャンネルまたは損失ありチ
ャンネルから選択されるかを示す。更なるビット・セッ
トは、図6に示されるハーフトーン・テーブル内のハー
フトーン・ラインスクリーンのうちの1つの選択を可能
にするハーフトーン選択ビットを含む。最後に、さらに
別の値セットが、画素あたり損失なしビット数を規定
し、通常1つの値は、画素あたり8ビットに固定され
る。
【0067】ページ描画およびパイプライン制御ファー
ムウェア 図9ないし図11を参照して、ページ描画ファームウェア
(PRF)1およびパイプライン制御ファームウェア(PCF)105
の両方の演算は、それらが協力してパイプライン100を
通るデータフローを制御するように説明される。まず図
9を参照して、PRF1は、受信されたPCL(プリンタ制御言
語)またはポストスクリプト(PostScript)で構成された
印刷データを、先行技術で知られた方法でページ・スト
リップ・マップに変換する(ステップ200)。PRF1は、(i)
それぞれのストリップ・ビットマップについて、損失あ
りあるいは損失なし圧縮(または両方)が利用されるか、
(ii)ハーフトーン付けが適用されるか、を判断する。PR
F1は、ハーフトーン・テーブルを選択するため必要なビ
ットを設定する(ステップ202)。
【0068】この予備的な処理の後、PRF1は、ストリッ
プ・ビットマップ・データを圧縮するためPCF105を呼び
出す(ステップ204)。その呼び出しに応じて、PCF105
は、ページ・ストリップが損失ありまたは損失なし圧縮
プロシージャを使用して圧縮されるとの判断に従って選
択的にページ・ストリップ・ビットマップ・データを圧
縮するように、損失あり圧縮器126および/または損失な
し圧縮器127(図2)を制御する。ページ・ストリップが、
損失ありプロシージャを使用して圧縮される1つまたは
複数の部分および損失なしプロシージャを使用して圧縮
される1つまたは複数の部分を含む場合、そのページ・
ストリップについて損失あり圧縮器126および損失なし
圧縮器127が共に使用される。そして圧縮されたビット
マップ・データを包含するデータブロックが、RAM104の
領域110に格納される。さらに、ビットマップ・データ
が、生のまたは圧縮されていない形式で格納される場
合、そのようなデータもRAM104に格納される。
【0069】その後、ストリップ内に含まれるデータが
損失なし圧縮ユニット127または損失あり圧縮ユニット1
26によって圧縮されているかに依存して、PRF1は、スト
リップ待ち行列要素を、損失ありストリップ待ち行列要
素または損失なしストリップ待ち行列要素の形式で生成
する。ストリップのビットマップ・データが、損失あり
圧縮プロシージャを使用して圧縮されている場合、その
ストリップ待ち行列要素(図5参照)は、損失ありストリ
ップ待ち行列111上に位置付けられ、ヌル(空の)値を示
すストリップ待ち行列要素が、損失なしストリップ待ち
行列112に列挙される。同様に、ストリップのビットマ
ップ・データが、損失なしプロシージャを使用して圧縮
されている場合、図4に示されるようなストリップ待ち
行列要素が、損失なしストリップ待ち行列112に列挙さ
れ、ヌル値を示すストリップ待ち行列要素が、損失あり
ストリップ待ち行列111に列挙される。最後に、ページ
・ストリップの一部が、損失あり圧縮プロシージャを使
用して圧縮されており、ページ・ストリップの別の部分
が、損失なしプロシージャを使用して圧縮されている場
合、損失ありストリップ待ち行列要素および損失なしス
トリップ待ち行列要素の両方が、そのページ・ストリッ
プについて生成される。それらのストリップ待ち行列要
素は、損失ありストリップ待ち行列111および損失なし
ストリップ待ち行列112にそれぞれ列挙される。マージ
平面を後で使用して、そのようなページ・ストリップの
解凍された部分のビット毎の再結合を可能にすることに
注意されたい。
【0070】ページ・ストリップが、損失ありおよび損
失なし圧縮方法の両方を使用して圧縮されている場合を
除いて、それぞれのページ・ストリップは、一方の要素
が常にヌル値を示し、他方がそのストリップについて圧
縮データを格納するリンクされたデータブロックを列挙
する第1リストノードへのポインタを含む、損失ありス
トリップ待ち行列111および損失なしストリップ待ち行
列112に列挙される一対の待ち行列要素をもつ。あるス
トリップが、圧縮されていない生データブロックのみを
含む場合、ストリップ待ち行列要素は、損失なしストリ
ップ待ち行列112上に位置付けられ、そのデータを生の
または圧縮されていないデータとして識別するフラグを
含む(ステップ208)。
【0071】それぞれのストリップ待ち行列要素が、上
述したように構成され記憶された後、ステップ210は、
処理し残されているストリップがあるかどうか判断し、
はいである場合、プロシージャは、ステップ202に戻っ
て続行する。しかし、全てのストリップが、それらのデ
ータを圧縮されたデータブロック(または生データブロ
ック)に構成した場合、ページ完了標示が与えられ、PCF
105がページ待ち行列要素をページ待ち行列113に格納す
ることを可能にする(ステップ212)。
【0072】印刷エンジン16の印刷動作は、いくつかの
ページ・ストリップが構築されるとすぐに印刷し始める
先行技術の単色印刷エンジンとは対照的に、ページ待ち
行列要素がページ待ち行列113に入ることを待つことを
理解すべきである。この例では、印刷が始まる前にペー
ジ全体が構成される。
【0073】印刷動作の開始時、PCF105は、ページ待ち
行列113に列挙された第1のページ待ち行列要素からの
データを使用して、パイプライン100の中の広域レジス
タをプログラムする(ステップ214)。それらの広域レジ
スタは、図3に示されるようなそれぞれのページ待ち行
列要素内に記録されたパラメータを受け取る。それらの
パラメータは、そのページの全般的な処理を制御するた
めに利用され、ストリップごとに変化しない。次に、PC
F105は、ページ全体を含むストリップ待ち行列から、損
失なしDMAデータブロックのリスト、損失ありDMAデータ
ブロックのリスト、および生データブロックのリストの
3つのページDMAデータブロック・リストを組み立てる
(ステップ216)。
【0074】この時点で、PCF105は、そのページについ
て、2つの待ち行列から3つのDMAデータブロック・リ
ストを生成している。DMAブロックがRAM104からアクセ
スされるとき、上述の待ち行列およびリストが、パイプ
ライン100の全ての演算を制御するために利用される。
【0075】次に、PCF105は、各ページ・ストリップ待
ち行列から第1のストリップ待ち行列要素を取り出し、
そこに格納されたデータを使用してページ・ストリップ
・マネージャ124をプログラムする。ストリップ待ち行
列要素がヌル値ストリップ要素である場合、ページ・ス
トリップ・マネージャ124は、1つのページ・ストリッ
プ内のヌルデータビット(媒体シート上のホワイトスペ
ース)の正確な数を生成し、それらのデータビットをパ
イプライン100の下流に伝送する。
【0076】ページ・ストリップ・マネージャ124は、
選択されるストリップ待ち行列要素内にあるデータを使
用して、パイプライン100の引き続く演算の間に、パイ
プライン100の次の要素に入るデータフローを制御する
(ステップ218)。より具体的には、それぞれにアクセス
されるストリップ待ち行列要素が、そこにリンクされた
データブロックが損失ありプロシージャを使用して圧縮
されていることを示す場合、ページ・ストリップ・マネ
ージャ124は、損失あり解凍ユニット126からデータを受
け入れるようにプログラムされる。対照的に、ストリッ
プ待ち行列要素が、それにリンクされたデータブロック
内のデータが損失なし圧縮プロシージャを使用して圧縮
されていることを示す場合、ページ・ストリップ・マネ
ージャ124は、損失なし解凍器ユニット127からデータを
受け入れるようにプログラムされる。
【0077】さらに、上で述べたように、それぞれのス
トリップ待ち行列は、ストリップ内のデータの実際の構
成を表すストリップ待ち行列要素を含む。さらに、(ペ
ージ・ストリップがただ1つの圧縮プロシージャを使用
して圧縮されるデータを含むと仮定すると)同時発生の
エントリは、ヌル値を示す一方のストリップ待ち行列を
表すことができる。従って、PCF105は、一方の待ち行列
からストリップ待ち行列要素を取り出すたびに、必要に
応じて他方の待ち行列からストリップ待ち行列要素を取
り出すことがある。
【0078】ページ・ストリップ・マネージャ124は、
ヌル・ストリップ待ち行列要素についてヌルデータを生
成し、どの待ち行列からヌルストリップ待ち行列要素が
生じたかに依存して、損失ありまたは損失なしチャンネ
ルの下流にヌルデータをディスパッチするようにプログ
ラムされる。ディスパッチされるヌルデータは、適切に
構成されたデータが、「ヌル」データを運ぶチャンネル
から常に出て、パイプライン100内の下流のプロシージ
ャに悪影響を与えないことを保証する。
【0079】PCF105はさらに、損失なし/損失ありスト
リップ待ち行列要素からのデータを利用し、そこにある
値を用いて、マージ・ユニット128およびハーフトーン
・ユニット130の両方を構成する。上で述べたように、
構成データ値は、解凍された損失あり/損失なしデータ
ブロックと共にパイプラインの下流にディスパッチされ
る。最後に、PCF105は、(そこに関連するフラグを検知
することによって)圧縮されていない損失なし経路から
生データを選択し、それが損失なし解凍器127を迂回す
るようにする。
【0080】PCF105が、第1ストリップ待ち行列要素に
ついて、ページ・ストリップ・マネージャ124内の第1
のレジスタ・セットをプログラムすると、ページ・スト
リップ・マネージャ124内の第2のレジスタ・セット
が、同様に第2のストリップ待ち行列要素についてプロ
グラムされる。上で述べたように、レジスタの「ピンポ
ン」セットが用いられ、それによって1つのページ・ス
トリップがパイプライン100内で処理されているとき、
次のページ・ストリップをロードし、処理する準備をす
ることができる。
【0081】ページ・ストリップ・マネージャ124がプ
ログラムされた後、PCF105は、第1のストリップについ
てDMAデータブロックの回復を開始する(ステップ220)。
第1のページ・ストリップに関連する両方の待ち行列か
らアクセスされたデータブロックは、並行にパイプライ
ン100の下流に与えられ、その個々のユニットのプログ
ラミングと一致して処理される。第1ストリップからの
データブロックの処理が進行中である一方、次のページ
・ストリップについてDMAデータブロック回復が開始さ
れる(ステップ222)。1つのストリップについて全ての
データブロックが取り出され、処理されるまで(判断ス
テップ224)、プロシージャは循環する。全てのストリッ
プが取り出され、処理されるまで(判断ステップ226)、
プロシージャは、ステップ218に戻って繰り返す。もし
そうでなければ、特定のページについての演算が終了す
る。
【0082】上記の説明から分かるように、パイプライ
ン100の制御は、PRF1によって実行される画像処理から
は実質的に独立して、PCF105によって処理される。従っ
て、1つまたは複数の変更をプリンタ制御言語に適応さ
せるためPRF1に変更が加えられる場合、PCF105は、変化
しないままである。さらにこの仕組みは、パイプライン
100が、そのような場合に変化しないままであることを
可能にする。
【0083】この発明のいくつかの実施例を説明しそれ
らの形態を述べたが、当業者であれば、この発明の理念
から逸脱することなく多様な修正を行うことができるこ
とが分かるであろう。例えば、この発明は、ファームウ
ェアの形式で構成されるものとして記述されたが、必要
に応じてプリンタにロードされる媒体ディスクまたは他
の記憶装置上のソフトウェアの形式で構成することもで
きる。
【0084】本発明は例として次の実施態様を含む。
【0085】(1)構成設定可能な画像処理パイプライ
ン(100)を操作する方法であって、上記パイプライン(10
0)は、圧縮/解凍モジュール(126、127)と、ページ・ス
トリップ・マネージャ(124)と、色空間変換モジュール
(125)と、マージ・モジュール(128)と、ハーフトーン・
モジュール(130)とを含み、上記方法は、 a)画像データの1ページを、複数のページ・ストリップ
に分けるステップと、 b)画像データのそれぞれのページ・ストリップを選択的
に処理して、メモリ(104)内に格納されるデータブロッ
クの中へそれの圧縮および変換を達成するステップと、 c)それぞれのページ・ストリップについて、上記圧縮を
達成するために使用された1つまたは複数の圧縮プロシ
ージャを示す情報、および、該ページ・ストリップを構
成するデータブロックのリンクリストへのポインタを含
むストリップ待ち行列要素を生成するステップと、 d)個々のページ・ストリップの圧縮を達成するために使
用された1つまたは複数の圧縮プロシージャに依存し
て、上記ストリップ待ち行列要素の各々を損失ありスト
リップ待ち行列(111)または損失なしストリップ待ち行
列(112)のいずれかに列挙し、ストリップ待ち行列要素
が一方のストリップ待ち行列にのみ列挙されないストリ
ップについて、他方のストリップ待ち行列上にヌルイン
ディケータを位置付けるステップと、 e)上記ページ・ストリップの処理の間、上記パイプライ
ン(100)によって使用されようとする広域パラメータを
示すページ要素を生成するステップと、 f)1ページを構成するデータブロック複数のリストを組
み立て、上記リストは、損失あり圧縮リスト、損失なし
圧縮リスト、および生データブロック・リストを含むス
テップと、 g)上記ページ要素からの上記広域パラメータを使用し
て、上記パイプライン(100)内のモジュールをプログラ
ムするステップと、 h)それぞれのページ・ストリップについて、関連するス
トリップ待ち行列要素内の情報に従ってデータブロック
の1つまたは複数の上記リストからデータブロックを受
け入れ、上記パイプライン(100)に含まれる1つまたは
複数のモジュールに上記データブロックを渡すように、
上記ページ・ストリップ・マネージャ(124)をプログラ
ムするステップと、 i)それぞれのページ・ストリップからのデータブロック
を解凍し、上記パイプライン(100)内の上記1つまたは
複数のモジュールに上記データブロックを渡す上記プロ
グラミングと一致して、上記パイプライン(100)を操作
するステップと、を含む方法。
【0086】(2)上記ステップh)はさらに、1つのペ
ージストリップについて、上記データブロックからのデ
ータが印刷されるページ上にどのように配置されるのか
を示すマージ・マップを生成し、上記マージ・モジュー
ル(128)は、上記マージ・マップによって制御される、
上記(1)に記載の方法。
【0087】(3)1つのページ・ストリップについて
上記マージ・マップは、上記データブロックからのデー
タがどのように結合されるかをビット単位で示す、上記
(2)に記載の方法。
【0088】(4)上記ステップc)は、それぞれのスト
リップと共に使用されるようとするハーフトーン・プロ
シージャに関連する情報をストリップ待ち行列要素内に
含み、上記ハーフトーン・モジュール(130)は、それに
よって示される上記ハーフトーン・プロシージャを利用
するように上記情報によって制御される、上記(1)に記
載の方法。
【0089】(5)複数のデータチャネルが、上記ペー
ジ・ストリップ・マネージャ(124)を上記パイプライン
(100)の複数のモジュールに連結し、上記ステップh)は
さらに、上記データチャネルを介して画像データのデー
タブロックを渡し、同時に画像データの上記データブロ
ックによって占有されないチャンネルを通してヌルデー
タ・データブロックを渡すように上記ページ・ストリッ
プ・マネージャ(124)をプログラムし、それによって、
上記パイプライン(100)の上記モジュールが、画像デー
タに加えてヌルデータ上に演算することを可能にする、
上記(1)に記載の方法。
【0090】(6)上記ステップi)は、上記ページ・ス
トリップ・マネージャ(124)が、上記データブロックが
列挙されている待ち行列(111、112)と一致して、画像デ
ータのデータブロックを解凍器モジュール(126、127)に
仕向けるようにし、そこに記憶されているデータの解凍
を可能にする、上記(5)に記載の方法。
【0091】(7)上記ステップa)ないしe)は、ページ
描画ファームウェア・モジュール(1)の制御下で実行さ
れ、上記ステップf)ないしi)は、パイプライン制御ファ
ームウェア・モジュール(l05)の制御下で実行される、
上記(1)に記載の方法。
【0092】(8)構成設定可能な画像処理パイプライ
ン(100)を操作するようプロセッサ(101)を制御するメモ
リ媒体(l03)であって、上記パイプライン(100)は、圧縮
/解凍モジュール(126、127)、ページ・ストリップ・マ
ネージャ(124)、色空間変換モジュール(125)、マージ・
モジュール(128)およびハーフトーン・モジュール(130)
を含み、上記メモリ媒体は、 a)上記プロセッサ(101)を制御して、画像データの1ペ
ージを複数のページ・ストリップに分ける手段(1)と、 b)上記プロセッサ(101)を制御して、画像データのそれ
ぞれのページ・ストリップを選択的に処理し、メモリ(1
04)内に記憶されているデータブロックへその圧縮およ
び変換を達成する手段(1)と、 c)上記プロセッサ(101)を制御して、それぞれのページ
・ストリップについて、上記圧縮を達成するために使用
された1つまたは複数の圧縮プロシージャを示す情報、
および、該ページ・ストリップを構成するデータブロッ
クのリンクリストへのポインタを含むストリップ待ち行
列要素を生成する手段(1)と、 d)上記プロセッサ(101)を制御して、個々のページ・ス
トリップの圧縮を達成するために使用された1つまたは
複数の圧縮プロシージャに依存して、それぞれの上記ス
トリップ待ち行列要素を損失ありストリップ待ち行列(1
11)または損失なしストリップ待ち行列(112)のいずれか
または両方に列挙し、ストリップ待ち行列要素が一方の
ストリップ待ち行列上にのみ列挙されるストリップにつ
いて他方のストリップ待ち行列上にヌルインディケータ
を位置付ける手段(1)と、 e)上記プロセッサ(101)を制御して、上記ページ・スト
リップの処理の間、上記パイプライン(101)によって使
用されようとする広域パラメータを示すページ要素を生
成する手段(1)と、 f)上記プロセッサ(101)を制御して、1ページを含むデ
ータブロックの複数リストを組み立て、上記リストは、
上記損失あり圧縮リスト、損失なし圧縮リストおよび生
データブロック・リストを含む手段(l05)と、 g)上記プロセッサ(101)を制御して、上記ページ要素か
らの上記広域パラメータを使用して上記パイプライン(1
00)内のモジュールをプログラムする手段(105)と、 h)上記プロセッサ(101)を制御して、それぞれのページ
・ストリップについて、関連するストリップ待ち行列要
素内の情報に従ってデータブロックの1つまたは複数の
上記リストからデータブロックを受け入れ、上記パイプ
ライン(101)に含まれる1つまたは複数のモジュールに
上記データブロックを渡すように上記ページ・ストリッ
プ・マネージャ(124)をプログラムする手段(105)と、 i)上記プロセッサ(101)を制御して、それぞれのページ
・ストリップからのデータブロックを解凍し、上記パイ
プライン(101)内の上記1つまたは複数のモジュールに
上記データブロックを渡す上記プログラミングと一致し
て、上記パイプライン(100)を操作する手段(105)と、を
備えるメモリ媒体。
【0093】(9)上記手段h)はさらに、上記プロセッ
サ(101)を制御して、1つのページ・ストリップについ
て、上記データブロックからのデータが印刷されたペー
ジ上にどのように配置されるかを示すマージ・マップを
生成し、上記マージ・モジュール(128)は、上記マージ
・マップによって制御される、上記(8)に記載のメモリ
媒体(104)。
【0094】(10)1つのページ・ストリップについ
ての上記マージ・マップは、上記データブロックからの
データがどのように結合されるかをビット単位で示す、
上記(9)に記載のメモリ媒体(l04)。
【0095】(11)上記手段c)はさらに、上記プロセ
ッサ(101)を制御して、それぞれのストリップと一緒に
使用されようとするハーフトーン・プロシージャに関連
する情報をストリップ待ち行列要素内に含み、上記ハー
フトーン・プロシージャは、それによって示されるハー
フトーン・モジュール(130)を利用するように上記情報
によって制御される、上記(8)に記載のメモリ媒体(10
4)。
【0096】(12)複数のデータチャネルが、上記ペ
ージ・ストリップ・マネージャ(124)を上記パイプライ
ン(100)の複数のモジュールに連結し、上記手段h)はさ
らに、上記プロセッサ(101)を制御して、上記データチ
ャネルを介して画像データのデータブロックを渡し、同
時に画像データの上記データブロックによって占有され
ていないチャンネルを通してヌルデータのデータブロッ
クを渡すように上記ページ・ストリップ・モジュール(1
24)をプログラムし、それによって上記パイプライン(10
1)の上記モジュールは、画像データに加えてヌルデータ
上にも演算することを可能にされる、上記(8)に記載の
メモリ媒体(104)。
【0097】(13)上記手段i)は、上記プロセッサ(1
01)を制御して、上記ページ・ストリップ・マネージャ
(124)が、上記データブロックが列挙されている待ち行
列と一致して、画像データのデータブロックを解凍器モ
ジュール(126、127)に仕向けるようにし、そこに記憶さ
れたデータの解凍を可能にする、上記(12)に記載のメモ
リ媒体(104)。
【0098】(14)上記手段a)ないし手段e)は、ペー
ジ描画ファームウェア・モジュール(1)の中で構成さ
れ、上記手段f)ないし手段i)は、パイプライン制御ファ
ームウェア・モジュール(105)の中で構成される、上記
(8)に記載のメモリ媒体(104)。
【0099】
【発明の効果】本発明によれば、改善されたデータ演算
速度を達成し、処理されるデータについて演算が最適化
されることを可能にする。また、印刷データを処理する
データ処理パイプラインをハードウェアブロックで改善
されたデータ速度を達成し、画像処理ファームウェアに
対する変更の影響から、データ処理パイプラインを保護
することができる。
【図面の簡単な説明】
【図1】カラー・プリンタ内の印刷データ処理パイプラ
インの好ましい実施例を通る印刷データのフローの簡略
図。
【図2】印刷データ処理パイプラインの好ましい実施例
のハードウェア・ブロック図。
【図3】ページ待ち行列要素に含まれるデータの概略
図。
【図4】損失なしストリップ待ち行列要素(すなわち、
少なくとも一部が損失なし圧縮プロシージャを使用して
圧縮されているストリップ)に含まれるデータの概略
図。
【図5】損失ありストリップ待ち行列要素(すなわち、
損失のある圧縮プロシージャを使用して圧縮されている
ストリップ)に含まれるデータの概略図。
【図6】この発明に関して使用されるハーフトーン・テ
ーブルに含まれるデータの概略図。
【図7】この発明に関して使用される色空間変換テーブ
ルに含まれるデータの概略図。
【図8】図8aは、DMAプロシージャ(すなわち直接記憶ア
クセス)を通してアクセスされるデータブロックについ
てリストノードのデータ構造を示す図であり、図8bは、
複数のデータブロックを1つの画像形式に結合するため
に使用されるマージ構成平面に含まれるデータの概略
図。
【図9】この発明の方法のロジック流れ図。
【図10】この発明の方法のロジック流れ図。
【図11】図10から続く、この発明の方法のロジック流
れ図。
【符号の説明】
1 ページ描画ファームウェア 100 ASIC(特定用途向け集積回路) 104 メモリ 105 パイプライン制御ファームウェア 111 損失ありストリップ待ち行列 112 損失なしストリップ待ち行列 124 ページ・ストリップ・マネージャ 125 色変換モジュール 126,127 圧縮/解凍モジュール 128 マージ・モジュール 130 ハーフトーン・モジュール

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】圧縮/解凍モジュール、ページ・ストリッ
    プ・マネージャ、色空間変換モジュール、マージ・モジ
    ュール、およびハーフトーン・モジュールを含む構成設
    定可能な画像処理パイプラインを操作する方法であっ
    て、 a)画像データの1ページを、複数のページ・ストリップ
    に分けるステップと、 b)画像データのそれぞれのページ・ストリップを選択的
    に処理して、メモリ内に格納されるデータブロックの中
    へそれの圧縮および変換を達成するステップと、 c)それぞれのページ・ストリップについて、上記圧縮を
    達成するために使用された1つまたは複数の圧縮プロシ
    ージャを示す情報、および、該ページ・ストリップを構
    成するデータブロックのリンクリストへのポインタを含
    むストリップ待ち行列要素を生成するステップと、 d)個々のページ・ストリップの圧縮を達成するために使
    用された1つまたは複数の圧縮プロシージャに依存し
    て、上記ストリップ待ち行列要素の各々を損失ありスト
    リップ待ち行列または損失なしストリップ待ち行列のい
    ずれかに列挙し、ストリップ待ち行列要素が一方のスト
    リップ待ち行列にしか列挙されないストリップについ
    て、他方のストリップ待ち行列上にヌルインディケータ
    を位置付けるステップと、 e)上記ページ・ストリップの処理の間、上記パイプライ
    ンによって使用される広域パラメータを示すページ要素
    を生成するステップと、 f)1ページを構成するデータブロックの複数のリストを
    組み立て、上記リストは、損失あり圧縮リスト、損失な
    し圧縮リスト、および生データブロック・リストを含む
    ステップと、 g)上記ページ要素からの上記広域パラメータを使用して
    上記パイプライン内のモジュールをプログラムするステ
    ップと、 h)それぞれのページ・ストリップについて、関連するス
    トリップ待ち行列要素内の情報に従ってデータブロック
    1つまたは複数の上記リストからデータブロックを受け
    入れ、上記パイプラインに含まれる1つまたは複数のモ
    ジュールに上記データブロックを渡すように、上記ペー
    ジ・ストリップ・マネージャをプログラムするステップ
    と、 i)それぞれのページ・ストリップからのデータブロック
    を解凍し、上記パイプライン内の上記1つまたは複数の
    モジュールに上記データブロックを渡す上記プログラミ
    ングと一致して、上記パイプラインを操作するステップ
    と、を含む、構成設定可能な画像処理パイプラインを操
    作する方法。
JP11103650A 1998-04-14 1999-04-12 構成設定可能な画像処理パイプラインを操作する方法 Pending JPH11339023A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/061,001 US6002814A (en) 1998-04-14 1998-04-14 Means and method for configuring a data processing pipeline
US061001 1998-04-14

Publications (1)

Publication Number Publication Date
JPH11339023A true JPH11339023A (ja) 1999-12-10

Family

ID=22033032

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11103650A Pending JPH11339023A (ja) 1998-04-14 1999-04-12 構成設定可能な画像処理パイプラインを操作する方法

Country Status (4)

Country Link
US (1) US6002814A (ja)
EP (1) EP0950980B1 (ja)
JP (1) JPH11339023A (ja)
DE (1) DE69831133T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322050A (ja) * 2004-05-10 2005-11-17 Fuji Xerox Co Ltd 画像処理装置およびプログラム

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7190284B1 (en) * 1994-11-16 2007-03-13 Dye Thomas A Selective lossless, lossy, or no compression of data based on address range, data type, and/or requesting agent
US6879266B1 (en) 1997-08-08 2005-04-12 Quickshift, Inc. Memory module including scalable embedded parallel data compression and decompression engines
JP3619025B2 (ja) * 1998-09-18 2005-02-09 キヤノン株式会社 符号化方法及び符号化装置
US6822589B1 (en) 1999-01-29 2004-11-23 Quickshift, Inc. System and method for performing scalable embedded parallel data decompression
US7129860B2 (en) * 1999-01-29 2006-10-31 Quickshift, Inc. System and method for performing scalable embedded parallel data decompression
JP3660154B2 (ja) * 1999-04-01 2005-06-15 セイコーエプソン株式会社 印刷用画像処理装置
US6496878B1 (en) * 1999-11-03 2002-12-17 International Business Machines Corporation Transfer progress alert module
US7050639B1 (en) * 1999-11-24 2006-05-23 General Electric Company Image data compression employing multiple compression code tables
US6401143B1 (en) * 1999-12-02 2002-06-04 Xerox Corporation Loopback direct memory access control system for a digital scanner
US6463481B1 (en) * 1999-12-02 2002-10-08 Xerox Corporation Direct memory access control system for a digital scanner
AU2001251703A1 (en) * 2000-03-06 2001-09-17 Sony Electronics Inc. System and method for effectively implementing an electronic image manager device
US6300885B1 (en) * 2000-04-14 2001-10-09 International Business Machines Corporation Dual aldc decompressors inside printer asic
US7230729B1 (en) * 2000-05-15 2007-06-12 Hewlett-Packard Development Company, L.P. Printer pipeline bypass in hardware-ready format
AUPQ772300A0 (en) 2000-05-24 2000-06-15 Canon Kabushiki Kaisha Highly pipelined printing system architecture
AU756971B2 (en) * 2000-05-24 2003-01-30 Canon Kabushiki Kaisha Highly pipelined printing system architecture
EP1199861A3 (en) * 2000-08-25 2003-10-22 Hewlett Packard Company, a Delaware Corporation Downloading data
KR100669623B1 (ko) * 2001-03-12 2007-01-15 엘지전자 주식회사 디지털 데이터 변환방법
US6516397B2 (en) * 2001-04-09 2003-02-04 Hewlett-Packard Company Virtual memory system utilizing data compression implemented through a device
US7158254B2 (en) * 2002-05-01 2007-01-02 Sharp Laboratories Of America, Inc. Print-job, PDL/RIP-independent data-management method and system
US7136941B2 (en) * 2002-12-04 2006-11-14 Microsoft Corporation Print management architecture for computing devices having a set of filters functions wherein the functions are prevented from conflicting with one another
DE10300545B4 (de) * 2003-01-09 2010-10-07 Siemens Ag Vorrichtung, Verfahren, Speichermedium und Datenstruktur zur Kennzeichnung und Speicherung von Daten
US7039247B2 (en) * 2003-01-31 2006-05-02 Sony Corporation Graphic codec for network transmission
US7283686B2 (en) * 2003-04-14 2007-10-16 Hewlett-Packard Development Company, L.P. Image processor
US7551323B2 (en) * 2003-04-16 2009-06-23 Lexmark International, Inc. Systems and methods for error diffusion
US7457459B2 (en) * 2003-11-25 2008-11-25 Hewlett-Packard Development Company, L.P. Monochrome and color transfer
US7992145B2 (en) 2004-03-05 2011-08-02 Microsoft Corporation Multilevel ticket-based job management architecture for computing devices
US8661332B2 (en) 2004-04-30 2014-02-25 Microsoft Corporation Method and apparatus for document processing
KR100611981B1 (ko) * 2004-05-01 2006-08-11 삼성전자주식회사 이미지의 하프토닝 방법 및 장치
US7580948B2 (en) 2004-05-03 2009-08-25 Microsoft Corporation Spooling strategies using structured job information
US8243317B2 (en) 2004-05-03 2012-08-14 Microsoft Corporation Hierarchical arrangement for spooling job data
US8363232B2 (en) 2004-05-03 2013-01-29 Microsoft Corporation Strategies for simultaneous peripheral operations on-line using hierarchically structured job information
US20070165260A1 (en) * 2006-01-17 2007-07-19 Microsoft Corporation Print Driver Pipeline Filter Conformance Validation
US7729548B2 (en) * 2006-07-31 2010-06-01 Hewlett-Packard Development Company, L.P. System for high bandwidth imaging across PC chipsets and custom ASIC's
US8767240B1 (en) * 2011-01-28 2014-07-01 Marvell International Ltd. Method and apparatus for encoding data to perform real-time rendering
US9407789B2 (en) 2012-07-27 2016-08-02 Hewlett-Packard Development Company, L.P. Methods and systems to compress an image in a printing process
US9686536B2 (en) * 2013-05-20 2017-06-20 Advanced Micro Devices, Inc. Method and apparatus for aggregation and streaming of monitoring data
WO2018009226A1 (en) * 2016-07-08 2018-01-11 Hewlett-Packard Development Company, L.P. Color look up table compression
US10136002B2 (en) * 2016-11-30 2018-11-20 Kyocera Document Solutions Inc. Cloud-based document quality assurance
WO2019005118A1 (en) 2017-06-30 2019-01-03 Hewlett-Packard Development Company, L.P. PARALLEL PROCESSING OF MONOCHROMATIC PRINTING TASKS USING COLOR PRINTING DEVICE DATA COLOR CHANNELS THAT CORRESPOND TO DIFFERENT COLORANTS

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4850027A (en) * 1985-07-26 1989-07-18 International Business Machines Corporation Configurable parallel pipeline image processing system
US5029105A (en) * 1987-08-18 1991-07-02 Hewlett-Packard Programmable pipeline for formatting RGB pixel data into fields of selected size
US5638498A (en) * 1992-11-10 1997-06-10 Adobe Systems Incorporated Method and apparatus for reducing storage requirements for display data
US5455576A (en) * 1992-12-23 1995-10-03 Hewlett Packard Corporation Apparatus and methods for Lempel Ziv data compression with improved management of multiple dictionaries in content addressable memory
US5572631A (en) * 1994-05-13 1996-11-05 Hewlett-Packard Company Common font rasterizer available to multiple printer personalities
US5729668A (en) * 1995-09-15 1998-03-17 Hewlett-Packard Company Optimized hardware compression and decompression architecture for use by an image processor in a laser printer
US6538764B2 (en) * 1996-04-12 2003-03-25 Canon Kabushiki Kaisha Printing apparatus, information processing apparatus, data processing method for use in such an apparatus, and storage medium storing computer-readable program
US5852742A (en) * 1997-06-17 1998-12-22 Hewlett-Packard Company Configurable data processing pipeline

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005322050A (ja) * 2004-05-10 2005-11-17 Fuji Xerox Co Ltd 画像処理装置およびプログラム

Also Published As

Publication number Publication date
EP0950980A3 (en) 2002-11-13
DE69831133D1 (de) 2005-09-15
US6002814A (en) 1999-12-14
EP0950980B1 (en) 2005-08-10
DE69831133T2 (de) 2006-08-24
EP0950980A2 (en) 1999-10-20

Similar Documents

Publication Publication Date Title
JPH11339023A (ja) 構成設定可能な画像処理パイプラインを操作する方法
EP0886236B1 (en) Configurable data processing pipeline
EP0886235B1 (en) Merge plane generation for a data processing pipeline
EP0886205B1 (en) Multi-path data processing pipeline
US7599087B2 (en) Method and apparatus for image processing, and a computer product
US5940585A (en) Data merge unit
US5838333A (en) Image processing device and image processing method
US6348978B1 (en) Method and system for image format conversion
JPH06320802A (ja) 画像処理装置
JP2004034370A (ja) 画像形成装置及び方法並びに画像形成システム
US6594031B1 (en) Printer control unit and method, a record medium recording a printer control program and a printer system
US5966504A (en) Apparatus and method for printing
JP2000137587A (ja) 印刷制御装置及び方法
JPH07135575A (ja) カラー画像情報出力装置
JPH11164139A (ja) 画像処理装置
US20060066894A1 (en) Driver program and transfer method for data
JP3344255B2 (ja) 画像情報処理装置
JPH11259243A (ja) 印刷システム
JP3205088B2 (ja) 画像処理装置
JP2000047976A (ja) プリンタ制御装置
JPH07242031A (ja) プリンター装置
JP2001205860A (ja) 画像処理装置およびその方法
JP2002002029A (ja) 画像印刷装置
JPH106484A (ja) 画像形成システム
JPH07320041A (ja) カラー画像印刷システム