JP4621766B2 - ハーフトーン化方法 - Google Patents

ハーフトーン化方法 Download PDF

Info

Publication number
JP4621766B2
JP4621766B2 JP2008321665A JP2008321665A JP4621766B2 JP 4621766 B2 JP4621766 B2 JP 4621766B2 JP 2008321665 A JP2008321665 A JP 2008321665A JP 2008321665 A JP2008321665 A JP 2008321665A JP 4621766 B2 JP4621766 B2 JP 4621766B2
Authority
JP
Japan
Prior art keywords
contone
page
dither
nozzles
printer
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.)
Expired - Fee Related
Application number
JP2008321665A
Other languages
English (en)
Other versions
JP2009124715A (ja
Inventor
シルバーブルック、キア
ラプスタン、ポール
ロバート ワルムズレー、サイモン
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.)
Silverbrook Research Pty Ltd
Original Assignee
Silverbrook Research Pty 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
Priority claimed from AUPP7024A external-priority patent/AUPP702498A0/en
Priority claimed from AUPP7025A external-priority patent/AUPP702598A0/en
Application filed by Silverbrook Research Pty Ltd filed Critical Silverbrook Research Pty Ltd
Publication of JP2009124715A publication Critical patent/JP2009124715A/ja
Application granted granted Critical
Publication of JP4621766B2 publication Critical patent/JP4621766B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B41PRINTING; LINING MACHINES; TYPEWRITERS; STAMPS
    • B41JTYPEWRITERS; SELECTIVE PRINTING MECHANISMS, i.e. MECHANISMS PRINTING OTHERWISE THAN FROM A FORME; CORRECTION OF TYPOGRAPHICAL ERRORS
    • B41J2/00Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed
    • B41J2/005Typewriters or selective printing mechanisms characterised by the printing or marking process for which they are designed characterised by bringing liquid or particles selectively into contact with a printing material
    • B41J2/01Ink jet
    • B41J2/07Ink jet characterised by jet control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/387Composing, repositioning or otherwise geometrically modifying originals
    • H04N1/3871Composing, repositioning or otherwise geometrically modifying originals the composed originals being of different kinds, e.g. low- and high-resolution originals
    • 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
    • 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/1801Input data handling means
    • G06K15/181Receiving print data characterized by its formatting, e.g. particular page description languages
    • G06K15/1815Receiving print data in mixed format
    • 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/1852Generation of the printable image involving combining data of different types
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computational Linguistics (AREA)
  • Ink Jet (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Image Processing (AREA)
  • Color Image Communication Systems (AREA)
  • Hydrogenated Pyridines (AREA)
  • Fixing For Electrophotography (AREA)
  • Color, Gradation (AREA)
  • Record Information Processing For Printing (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)
  • Particle Formation And Scattering Control In Inkjet Printers (AREA)
  • Editing Of Facsimile Originals (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Fax Reproducing Arrangements (AREA)

Description

本発明は、ページ幅ドロップ・オン・デマンドインクジェットプリントヘッドを使用するプリンタのような高性能カラープリンタ用のドライバに関する。別の観点から見た場合、本発明は印刷方法に関する。
本発明は、カラープリンタ用のモジュラプリントヘッドに関する。別の観点から見た場合、本発明は、プリントヘッドを使用する印刷及びローディング方法に関する。
本発明は、カラープリンタ用のモジュラプリントヘッドに関する。別の観点から見た場合、本発明は、プリントヘッドを使用する印刷及びローディング方法に関する。
本発明は、通常、ページ幅ドロップ・オン・デマンドインクジェットプリントヘッドを使用する高性能カラープリンタに関する。特に、本発明は、コントーンカラー層をバイレベルにデジタル的にハーフトーン化し、ハーフトーン化されたコントーン層上に黒色層を合成するためのハーフトーン化/合成ユニットに関する。別の観点から見た場合、本発明は、ハーフトーン化及び合成に関する。
本発明は、コントーンカラーピクセル値のアレイの形態にあるコントーンカラー画像をバイレベルのドットにハーフトーン化するためのディザユニットに関する。他の観点から見た場合、本発明は、ディザユニットの操作方法に関する。
本発明は、プリントヘッド用の予熱サイクルに関する。本発明は、例えば、ドロップ・オン・デマンドインクジェットプリントヘッドを使用する高性能カラープリンタで使用することができる。
本発明は、リソースに同時アクセスを必要とするコンピュータメモリ及び複数の並列プロセッサ内に保持されるリソースに関する。上記リソースは、コントーンカラーピクセル値のアレイの形態にあるコントーンカラー画像をバイレベルのドットにデジタル的にハーフトーン化するために使用されるディザマトリックス又はディザボリュームであってもよい。このリソースには、異なる閾値ユニットにより並列にアクセスしなければならない場合がある。他の観点から見た場合、本発明は、このようなリソースにアクセスするための方法である。
本発明は、プリンタシステム、及びプリンタ用のインクタンクのインクが空になる時期を予測するための方法に関する。プリンタは、例えば、ドロップ・オン・デマンドインクジェットプリントヘッドを使用し得る。
本発明は、高性能カラープリンタのようなプリンタ用のプリントヘッドの吐出パルス継続時間の制御に関する。特に、本発明は、制御システム及び方法に関する。プリンタは、例えば、ページ幅ドロップ・オン・デマンドインクジェットプリントヘッドを使用し得る。
通常の256階調のディザボリュームを使用すると、異なる明暗度レベルを分離することによりディザセルの設計を非常に柔軟に行うことができる。最適な確率的なディザを設計すると(非特許文献12)、ディザボリュームはディザマトリックスは余分な自由度を与える。通常のディザボリュームは、64×64×256の大きさにすることができ、例
えば、128KBの大きさを有する。また、各色成分がボリュームからの異なるビットの検索を必要とし得るため、ディザボリュームはアクセスが非効率的となり得る。
ドロップ・オン・デマンドインクジェットプリントヘッドの場合には、印刷したドットの大きさは、インクの温度により異なる。インクの滴を吐出するためにエネルギを使用すると、インクの温度は上昇する。インクの滴が実際に吐出されると、インクの滴は、自分自身と一緒にインクの温度の一部を運び去る。複数のインクの滴を吐出している間にインクの温度は平衡状態に達する。一旦、平衡状態に達すると、印刷プロセスは、平衡状態に留まろうとする傾向がある。
本発明は、プリントヘッドの温度を示す信号を発生するための温度センサを備えるタイプのプリントヘッド用のプリントヘッドコントローラ、及び、各々がタンクからインクの供給を受けるためのインク供給ポートを有する複数のノズルと、インクドットを吐出するためのインク配置ポートと、及びプリントヘッドの吐出サイクル中に、配置ポートからインクドットを配置するために信号を受信するための吐出制御ポートとを備える。この場合、プリントヘッドコントローラは、温度センサからプリントヘッドの温度を示す信号を受信するための手段、及びノズルの吐出制御ポートへ吐出信号を供給するための手段とを備える。上記プリントヘッドコントローラは、各印刷ジョブの前に、すべてのノズルを吐出させるよう設定し、各ノズルに一連の短い吐出パルスを供給するために、一連の修正した吐出サイクルを実行するために作動可能である。各パルスの継続時間は、インクの滴を吐出させるには短すぎるが、プリントヘッドの温度を示す信号がその動作平衡温度に達したことを示すまでインクを加熱するのには十分長い時間である。
予熱モード中のフィードバックは、Tsense(以下に定義する)により供給され得、温度が周囲温度より約30℃高い温度に達するまで継続的に行われる。時間及び温度はインクの組成に捕縄に依存するので、平衡温度に達したころに温度情報をフィードバックさせることは重要である。
ある実施形態の場合には、各ノズルに対して約200個のパルスが必要である。
予熱モードの継続時間は、約50ミリ秒であり、この時間はインクの組成により異なる。
予熱は性能には影響を与えないが、データはプリンタに送られる。
予熱サイクルは、1を有するすべてのノズル(すなわち、すべてのノズルの吐出状態に設定)に対する1回のロードサイクルと、各ノズルに対する多数の短い吐出パルスとを伴う。パルスの継続時間は、インク滴の吐出させるには短過ぎるが、インクを加熱するには十分長い。パルスの継続時間は、プリンタで使用する各インクにより異なる。各ノズルに対しては、全部で約200個のパルスが必要であり、標準印刷サイクルと同じシーケンスが反復して実行される。
ANSI/EIA 538-1988, Facsimile Coding Schemes and Coding Control Functions for Group 4 Facsimile Equipment, August 1988. Humphrey, G. W., and V. Bruce, Visual Cognition, Lawrence Erlbaum Associates, 1989, p.15. IEEE Std 1284-1994, IEEE Standard Signaling Method for a Bidirectional Parallel Peripheral Interface for Personal Computers, Dec. 2, 1994. Intel Corp. and Microsoft Corp., PC 98 System Design Guide, 1997. Intel Corp. and Microsoft Corp., PC 99 System Design Gidde, 1998. ISO/IEC 19018-1:1994, Information technology-Digital compression and coding of continuous-tone still images: Requirements and guidelines, 1994. Loeffler, C., A. Ligtenberg and G. Moschytz, "Practical Fast 1-D DCT Algorithms with 11 Multiplications", Proceedings of the International Conference on Acoustics, Speech, and Signal Processing 1989 (ICASSP '89), pp.988-991. Microsoft Corp., Microsoft Windows NT 4.0 Device Driver Kit, 1997. Microsoft Corp., Microsoft Windows NT 5.0 Device Driver Kit, 1998. Olsen, J. "Smoothing Enlarged Monochrome Images", in Glassner, A. S. (ed.), Graphics Gems, AP Professional, 1990. Schmit, M. L., Pentium Processor Optimization Tools, AP Professional, 1995. Thompson, H. S., Multilingual Corpus 1 CD-ROM, European Corpus Initiative. Urban, S. J., "Review of standards for electronic imaging for facsimile systems", Journal of Electronic Imaging, Vol.1(1), January 1992, pp.5-21. USB Implementers Forum, Universal Serial Bus Specification, Revision 1.0, 1996. USB Implementers Forum, Universal Serial Bus Device Class Definition for Printer Devices, Version 1.07 Draft, 1998. Wallace, G. K., "The JPEG Still Picture Compression Standard", Communications of the ACM, 34(4), April 1991, pp.30-44. Yasuda, Y., "Overview of Digital Facsimile Coding Techniques in Japan", Proceedings of the IEEE, Vol. 68(7), July 1980, pp.830-845.
複数の並列プロセッサが、コンピュータメモリに内蔵されているリソースに同時にアクセスしなければならない場合には、いくつかの方法をとることができる。第1の方法の場合は、複数のプロセッサは、順番にリソースにアクセスし得るが、この方法だとプロセッサの性能が低下する。第2の方法の場合には、複数のポートを有するメモリを使用することができる。第3の方法の場合には、全リソースを異なるメモリバンク内にコピーすることが可能である。後の2つの方法は双方とも高価である。
コンピュータメモリに内蔵されているリソースの特定の例としては、コントーンカラー画像をデジタル的にハーフトーン化するために使用されるディザマトリックス又はディザボリュームがある。画像の異なる色平面の間で、ディザセルを位置合わせする必要がない場合には、個々の色成分のディザを処理する1組の閾値ユニットは、異なるディザセルへの同時アクセスを必要とし得る。
プリントヘッドへの吐出パルスの継続時間は、温度及びインク特性に依存するインク粘度と、プリントヘッドに供給可能な電力量により異なる。通常のパルスの継続時間は、1.3〜1.8ミリ秒の範囲である。
本発明は、高性能のプリンタ用のプリンタドライバである。該プリンタドライバは、印刷対象の1ページを表わす2層ページバッファを管理する。該バッファの第1の層は、背
景コントーンデータを有し、第2の層は、前景のバイレベルデータを有する。プリンタドライバは、そのページの印刷が完了すると、プリンタにバッファを送信し、プリンタは、コントーン層をハーフトーン化した後、上記2つの層を合成する。プリンタドライバは、コントーン層と合成しているコントーンデータが、バイレベルの層のデータを覆い隠すと判断した場合には、覆い隠されているバイレベルデータをバイレベルの層から除去するか、廃棄し、あるいは覆い隠しているコントーンデータにより表わされる画像と、覆い隠されているバイレベルデータによって表わされる画像との間に相互作用がある場合には、覆い隠しているコントーンデータが、コントーン層と合成される前に、覆い隠されているバイレベルデータをコントーン層と合成する。
コントーンデータの解像度は、バイレベルデータの解像度より低くてもよい。
2層ページバッファには、コントーンデータの第3の層を追加し得る。この場合、第3の層は、第1の層の解像度でサブサンプリングされた第2の層のバイレベルデータのコントーンバージョンを含む。プリンタドライバが、第1の層と合成中のコントーンデータは第3の層のデータを覆い隠していると判断した場合に、覆い隠されているコントーンデータは第3層から除去され、覆い隠しているコントーンデータは、コントーン層と合成される前に、コントーン層と合成され、第3の層の覆い隠されているコントーンデータに対応する第2の層のバイレベルデータが第2の層から除去される。
相互作用は、通常、覆い隠しているコントーンデータにより表わされる画像と覆い隠されているバイレベルデータとの間で発生し、この場合、コントーンデータは、不透明でない画像オブジェクトを表わす。
コントーンデータは、通常、カラーデータであり、一方、バイレベルデータは、通常、黒色のデータである。しかし、バイレベルデータは他の色であってもよい。付加的な色の付加的な前景のバイレベルの層を収容するために付加的な層が与えられてもよい。
プリンタドライバは、ホストグラフィックスシステムに密に結合しており、そのため、プリンタドライバは、異なるグラフィックス用のデバイスに特有な処理及びイメージング動作、特に合成動作及びテキスト動作を提供し得る。
ホストは、カラー管理をサポートし、そのため、デバイスに依存するカラーを標準的な方法でプリンタのタイプ特有のカラーに変換することが可能である。プリンタに送られるページの記述は、通常、デバイス特有のカラーを有する。
ホストグラフィックスシステムは、画像及びグラフィックスをプリンタドライバが指定する公称解像度にするが、ホストグラフィックスシステムは、プリンタドライバにレンダリングテキストを制御させる。より詳細に説明すると、グラフィックスシステムは、プリンタドライバが、公称デバイス解像度より高い解像度でテキストを再現し、配置することが可能であるようにプリンタドライバに十分な情報を供給する。
ホストグラフィックスシステムは、このシステムが、グラフィックス及び画像オブジェクトを合成するが、プリンタドライバがページバッファを管理すると予想される実際の合成を制御することが可能である公称デバイス解像度で、コントーンページバッファにランダムアクセスをする必要がある。
プリンタのページ記述は、267ppiのコントーン層及び800dpiの黒色層を含むことが可能である。プリンタドライバはグラフィックシステムに対し、267ppiの公称ページ解像度を指定し得る。可能な場合には、プリンタドライバは、黒色のテキストを除いて、画像及びグラフィックスオブジェクトを267ppiのピクセルレベルにする
ためにグラフィックスシステムに依存する。プリンタドライバは、すべてのテキストの再現要求をうまく処理し、黒色のテキストを検出して、800dpiで再現するが、267ppiで再現するために、グラフィックスシステムに黒でないテキストの再現要求を返信する。
下記の規則は、プリンタドライバにより実行することが可能である。
黒色のオブジェクトがページバッファにより合成される場合には、黒色のオブジェクトはバイレベルの黒色層と合成される。黒色層は、単に黒色層の不透明性とオブジェクトの不透明性との論理和をとることにより更新され、中間解像度のコントーンの黒色層の対応する部分は、高い解像度の黒色層から再計算される。
コントーンカラーオブジェクトが、ページバッファにより合成される場合には、上記カラーオブジェクトはコントーン層と合成される。コントーン層及び黒色層は、下記のように更新される。
コントーンオブジェクトが黒色層を覆い隠す場合は何時でも、完全に不透明でない場合でも、影響を受けた黒色層のピクセルは、黒色層からコントーン層に押し出される。すなわち、コントーン層と合成され、黒色層から除去される。その後で、コントーンオブジェクトはコントーン層と合成される。
コントーンオブジェクトのピクセルが、完全に不透明である場合には、対応する黒色のピクセルを背景のコントーン層内に押し出す必要はない。何故なら、背景のコントーンピクセルは、後で前景のコントーンピクセルにより完全に抹消されるからである。
バイレベルの黒色層のデータは、圧縮した形でプリンタに送ることが可能である。グループ4のファクシミリのコーディングをこの目的のために使用することが可能であるが、水平走行距離の修正ハフマンコーディングが除去される場合、又はもっと高い解像度に調整される場合に使用した方がよい結果が得られる。別の方法としては、EDRL圧縮を使用することも可能である。
コントーン層のデータも、圧縮した形でプリンタに送ることが可能である。JPEG又はウェーブレット圧縮をこの目的のために使用することが可能である。
別の態様において、本発明は、プリンタドライバが、2層ページバッファを管理する場合に、高性能プリンタ用のプリンタドライバを動作するための方法である。第1の層はコントーンデータ用であり、第2の層はバイレベルデータ用であり、この場合、バイレベルデータは、プリンタによりコントーンデータと合成される。上記方法は、コントーン層と合成中のコントーンデータが、バイレベルの層のデータを覆い隠す場合には、バイレベルの層から覆い隠されているバイレベルデータを除去し、それを放棄するか、あるいは覆い隠しているコントーンデータにより表わされる画像と覆い隠されているバイレベルデータによって表わされる画像との間に何等かの相互作用がある場合には、コントーンデータがコントーン層と合成される前に、覆い隠されているバイレベルデータをコントーン層と合成するかに決定するステップを有する。
本発明は、それぞれが、インク供給ポートと、インク配置ポートと、及びプリントヘッドの吐出サイクル中に配置ポート(吐出)からインクドットを配置するために信号を受信するための吐出制御ポートを備える複数のノズルとを備えるカラープリンタ用のモジュラプリントヘッドである。プリントヘッドのノズルは、グループ又はポッドの形で配置されている。この場合、各ポッドのノズルのインク供給ポートは、共通のインク供給ラインに接続している。各ポッドのノズルは複数の列(印刷対象のページを横切る方向に延びる列)に配列されていて、複数の列のノズルは互いに偏位しており、そのため、各行のノズルは
、吐出した場合異なるライン上に同時にドットを配置する。異なる各色のポッドは、共に作動グループ内に配置されていて、ノズルの選択された相互に排他的なサブグループは、吐出サイクルの所定の段階で同時に吐出することが可能であるようにゲート制御されている吐出制御ポートを有する。
一例において、各ポッドは2列のノズルを有し、一方の列のノズルは、ページ上の1本のラインに沿って偶数ドットを配置し、他方の列のノズルは、ページ上の隣接するラインに沿って奇数ドットを配置する。
ノズル列の間の偏位は、ノズルの下方にある紙の流れに合致するように形成される。
各ポッドのノズルは、第1の側面から出発して第1の列に沿って、次に、他方の側面で終結するもう1つの列に同じ方向で沿って順次吐出を行うことが可能である。
1つのポッドは、共通のインクタンクを共有する10本のノズルから構成され得る。一方の列が5本のノズルを備え、他方の列が5本のノズルを備える。各ノズルは、15.875mmの格子上に間隔をおいて直径22.5mmのドットを形成する。
各異なる色につき1つのポッドを共にグループ化して1つのクロマポッドを形成する。前記クロマポッドにおいて、1つの色のノズルにより印刷したドットが同時に他の色により印刷されたドットとは異なるラインに位置するが、クロマポッドの各ポッドが、順次同じグループのドットを印刷するように、異なる色のポッドが配置されている。
シアン、マゼンタ、黄色及び黒色の1つのポッドを1つのクロマポッドにグループとして形成することが可能である。クロマポッドは、異なるライン上にある10個のドットからなる同一の水平方向のセットの異なる色成分を表わす。異なる色ポッドの間の正確な距離は、ドット幅の一定の数であり、それ故、印刷の際にはそれを考慮に入れなければならない。印刷アルゴリズムは、各色の間のドット幅の長さの変化を許容しなければならない。
1つ又はそれ以上のクロマポッドは位相グループに形成され得る。前記位相グループにおいて、作動可能なポッドグループ内のノズルのグループは、所与の吐出段階で同時に吐出させられる。位相グループの1つ又はそれ以上のポッドグループは、必要な印刷速度に依存して、同時に作動可能にされる。
5つのクロマポッドを1つのポッドグループに形成することが可能である。各クロマポッドは40本のノズルを備え得るので、各ポッドグループは、200本のノズル、すなわち、50本のシアンノズル、50本のマゼンタノズル、50本の黄色ノズル、及び50本の黒色ノズルを備え得る。
2つのポッドグループを1つの位相グループに形成することが可能である。位相グループという名前がつけられたのは、1つの位相グループ内におけるノズルのグループが、所与の吐出段階で同時に吐出するからである。2つのポッドグループから1つの位相グループを形成することにより、2つのPodgroupEnableラインにより低速及び高速の双方で印刷することが可能である。
2つの位相グループを1つの吐出グループにすることが可能である。この場合、各セグメントの吐出グループの数は4つである。吐出グループという名前がついたのは、これらの吐出グループが、すべて同時に吐出するからである。2つのイネーブルラインにより、位相グループのノズルを異なる吐出位相として別々に吐出させることが可能である。
4インチプリントヘッドは、通常、横に並んだ8つのセグメントからなり、各セグメントは4つの吐出グループを有する。
2つのプリントヘッドを組合せることにより、より幅広なプリントヘッドを形成することが可能である。それ故、8インチプリントヘッドは、2つの4インチプリントヘッドからなり、ノズル数は全部で51,200本となる。
ノズルの階層構造は、同じ電力消費を維持している間に、位相のオーバーラップ及び複数の速度を可能にする。さらに、ノズルグループ化しているポッドは物理的に安定している。
電力消費という点からいって、ノズルをグループ化することにより、低速印刷モード及び高速印刷モードが可能になり、異なる製品構成において、速度/電力消費の間で折り合いをつけることが可能である。
1つの4インチのプリントヘッドは、25,600本のノズルを備え得る。1つの印刷サイクルは、印刷されるべき情報によって、最高でこれらのノズルのすべての吐出を伴う。これらのノズルすべてを同時に吐出させると、余りに多くの電力が消費され、インクの再充填及びノズル干渉の点で問題を有する。さらに、ノズルの吐出は、ノズルポッドの共通のインクタンク内において制限された時間の間、音響的混乱をも発生させる。この混乱は、同じポッド内の他のノズルの吐出と干渉する恐れがある。従って、あるポッド内でのノズルの吐出は、可能である限り相互に偏位させる必要がある。
この問題を解決するために、1つのクロマポッドから各色の1本のノズルを吐出させ、その後、ポッドグループ内の次のクロマポッドからのノズルを吐出させることが可能である。
2つの吐出モード、すなわち低速印刷モード及び高速印刷モードが定義され得る。
低速印刷モード中においては、各位相グループの1つのポッドグループだけに吐出パルスが供給されるので、2つのうちの一方のポッドグループだけがノズルを吐出させる。低速印刷モード中は、双方のポッドグループ内のクロマポッドは、第1のクロマポッドが再び吐出する前にすべてのノズルを吐出させなければならない。
低速印刷モード中においては、各4インチのプリントヘッドから128本のノズルを同時に吐出させることが可能である。吐出させられるノズルの間隔は、最も遠く離れていなければならない。それ故、8つの各グメントから16本のノズルが吐出する。25,600のノズルすべてを吐出させるには、128本のノズルからなる異なる200組を吐出させなければならない。
高速印刷モード中は、双方のポッドグループが設定される。それ故、双方のポッドグループがノズルを吐出させる。高速印刷モード中、1つのポッドグループ内のクロマポッドは、第1のクロマポッドが再度吐出する前にすべて吐出しなければならない。
高速印刷モード中は、各4インチのプリントヘッドから256本のノズルを同時に吐出させることが可能である。吐出させられるノズルの間隔は最も遠く離れていなければならない。それ故、各セグメントから32本のノズルが吐出させられる。25,600本のノズルすべてを吐出するには、256本のノズルからなる異なる100組を吐出させなければならない。
従って、低速印刷の所要時間は、高速印刷の所要時間の2倍掛かる。何故なら、高速印刷の場合には、一度に2倍のノズルを吐出させるからである。低速印刷モードの場合の消
費電力は、高速印刷モードの場合の消費電力の半分である。しかし、1枚のページを印刷するのに消費されるエネルギは、双方の場合同じである。
プリントヘッドは、吐出パルスのタイミングを調整するためにいくつかのフィードバック線を印刷する。1つのフィードバック信号は、コントローラに、プリントヘッドの温度を知らせる。それにより、コントローラは、吐出パルスのタイミングを調整することが可能である。何故なら、温度によりインクの粘度が変化するからである。第2のフィードバック信号は、コントローラにアクチュエータに供給可能な電圧を知らせる。これは、コントローラが、パルス幅を調整することにより、フラットバッテリー又は高圧源を補償することを許容する。第3のフィードバック信号は、コントローラにアクチュエータヒータの比抵抗(オーム毎平方(Ohmes per square)を知らせる。これにより、コントローラは、ヒータの比抵抗とは無関係に、一定のエネルギを維持するためにパルス幅を調整することが可能である。第4のフィードバック信号は、コントローラに、リソグラフィ及びエッチングの変動により、±5%まで変化し得るヒータの重要部分の幅を知らせる。これにより、コントローラは、パルス幅を適当に調整することが可能である。
ロードサイクルは、プリントヘッドに、以降の印刷サイクル中に印刷される情報をロードする。各ノズルの吐出制御ポートは、印刷サイクル中にノズルを吐出させるかどうかを決定する関連するNozzleEnableビットを有することが可能である。NozzleEnableビットは、ロードサイクル中に、1組のシフトレジスタによりロードされる。すべてのシフトレジスタが完全にロードされると、すべてのビットは、平行して適当なNozzleEnableビットに転送される。この転送が行われると、印刷サイクルは開始し得る。印刷サイクル及びロードサイクルは、すべてのNozzleEnableビットの平行したローディングが印刷サイクルの終わりに行われる限りは、同時に行うことが可能である。
印刷プロセスは、プリントヘッドに対して正しいシーケンスで、データを印刷しなければならない。一例を挙げると、第1のクロックパルスは、次の印刷サイクルの0番、800番、1600番、2400番、3200番、4000番、4800番及び5600番のドットに対して、CMYKビットを転送することが可能である。第2のクロックパルスは、次の印刷サイクル1番、801番、1601番、2401番、3201番、4001番、4801番及び5601番のドットに対して、CMYKビットを転送することが可能である。800個のSRクロックパルスの後で、転送パルスが供給される。
もちろん、800個のSRクロックパルス内において、NozzleEnableビットへの最後の転送に対応してシフトレジスタをローディングしなければならない。この場合、多数の異なる書込みの可能性が存在する。一方のローディング(すなわち、書込み)の可能性は、ポッドの順序でビットをローディングする方法であり、各ポッドにおいては、ビットはポッドの一方の側面から他方の側面に配置されている各ノズルを表わす(第1の列内の第2のノズルに移動する前に、第1の列から最後の列にわたる第1のノズルを効率的にロードすること)。2列を有するポッドにおいては、このことは、目に明らかなジグザグ状でのノズルのローディングを意味する。もう1つの可能性は、ポッドの順序でビットをローディングする方法であり、この場合は、各ポッドにおいて、複数のビットが各列を表わし、各列は、ポッドの一方の側面のノズルから出発して他方の側面のノズルに至る。
重要なことは、同じ印刷サイクル中に印刷した場合でも、奇数及び偶数のCMYK出力は、同じ物理的出力ライン上に印刷されないという事実に注意することである。プリントヘッド内における奇数ノズルと偶数ノズルとの間の物理的な間隔、及び異なる色のノズル同士の間隔によって、ドットがページの異なるライン上に印刷されることが保証される。
データをプリントヘッドにローディングする場合には、この相対的な違いを考慮に入れなければならない。ライン内の実際の違いは、プリントヘッドで使用するインクジェット機構の特性により異なる。この違いは、異なる色のノズル間の距離を表わす変数、及び同じ色のノズル間の距離により定義することが可能である。
本発明は、それぞれが、インク供給ポートと、インク配置ポートと、及びプリントヘッドの吐出サイクル中に、配置ポート(吐出)からインクドットを配置するために、信号を受信するための吐出制御ポートとを備える複数のノズルを備えるカラープリンタ用のモジュラプリントヘッドである。プリントヘッドのノズルは、グループ又はポッドの形で配置されている。この場合、各ポッドのノズルのインク供給ポートは、共通のインク供給ラインに接続している。各ポッドのノズルは、複数の列(印刷されるべきページを横切る方向に延びる列)に配列されており、複数の列のノズルは互いに偏位しており、そのため、各列のノズルは、同時に吐出させた場合、異なるライン上にドットを配置する。各々の異なる色のポッドは、一緒に作動グループ内に配置されており、そのグループにおいては、選択された相互に排他的なノズルのサブグループが、吐出サイクルの所定の段階で同時に吐出することが可能であるようにゲート制御されている吐出制御ポートを有する。
一例において、各ポッドは2列のノズルを有し、一方の列のノズルは、ページ上の1本のラインに沿って偶数ドットを配置し、他方の列のノズルは、ページ上の隣接するラインに沿って奇数ドットを配置する。
ノズル列の間の偏位は、ノズルの下方に位置する紙の流れに合致するように形成される。
各ポッドのノズルは、第1の側面から出発する第1の列に沿って、次に、同じ方向で他方の側面で終結する他方の列に沿って順次吐出し得る。
1つのポッドは、共通のインクタンクを共有する10本のノズルから構成され得る。一方の列が5本のノズルを備え、他方の列も5本のノズルを備える。各ノズルは、15.875mmの格子上に間隔をおいて直径22.5mmのドットを形成する。
異なる各色の1つのポッドをグループ化して1つのクロマポッドを形成する。前記クロマポッドにおいて、1つの色のノズルにより印刷したドットは、同時に他の色により印刷されたドットとは異なるラインに位置するが、クロマポッドの各ポッドが、順次同じグループのドットを印刷するように、異なる色のポッドが配置されている。
シアン、マゼンタ、黄色及び黒色の1つのポッドを1つのクロマポッドにグループ化し得る。クロマポッドは、異なるライン上に、10個のドットからなる同一の水平方向の組の異なる色成分を表わす。異なる色ポッド同士の間の正確な距離は、ドット幅の一定の数であり、それ故、印刷の際にはそれを考慮に入れなければならない。印刷アルゴリズムは、各色間のドット幅の長さの変化を許容しなければならない。
1つ又はそれ以上のクロマポッドは、作動可能なポッドグループにおけるノズルのグループが、所与の吐出位相で同時に吐出させられる位相グループに形成され得る。位相グループの1つ又はそれ以上のポッドグループは、必要な印刷速度に依存して、同時に作動可能にされる。
5つのクロマポッドを1つのポッドグループに編成することが可能である。各クロマポッドは、40本のノズルを備え得るるので、各ポッドグループは、200本のノズル、すなわち、50本のシアンノズル、50本のマゼンタノズル、50本の黄色ノズル、及び50本の黒色ノズルを備え得る。
2つのポッドグループを1つの位相グループに編成することが可能である。位相グループという名前がつけられたのは、1つの位相グループ内のノズルのグループが、所与の吐出段階で同時に吐出するからである。2つのポッドグループから1つの位相グループを形成することにより、2つのPodgroupEnableラインにより低速及び高速の双方で印刷することが可能である。
2つの位相グループを1つの吐出グループに編成することが可能である。この場合、各セグメント内の吐出グループの数は4つである。吐出グループという名前がついたのは、これら吐出グループが、すべて同時に同じノズルを吐出するからである。2つのイネーブルラインにより、位相グループのノズルを異なる吐出位相として別々に吐出させることが可能である。
4インチプリントヘッドは、通常、横に並んだ8つのセグメントからなり、各セグメントは4つの吐出グループを有する。
2つのプリントヘッドを組合せることにより、より幅広なプリントヘッドを形成することが可能である。それ故、8インチプリントヘッドは、2つの4インチプリントヘッドからなり、ノズル数は全部で51,200本となる。
ノズルの階層構造により、同じ電力消費を維持している間に、オーバーラップした位相及び複数の速度を有することが可能である。さらに、ノズルをグループ化したポッドは、物理的に安定している。
電力消費という点からいって、ノズルをグループ化することにより、低速印刷モード及び高速印刷モードが可能になり、異なる製品構成において速度/電力消費の間で折り合いをつけることが可能である。
1つの4インチのプリントヘッドは、25,600本のノズルを備えることが可能である。1つの印刷サイクルは、印刷されるべき情報によって、最高でこれらのノズルのすべての吐出を伴う。これらのノズルすべてを同時に吐出させると、余りに多くの電力が消費され、インクの再充填及びノズル干渉の点で問題がある。さらに、ノズルの吐出は、またそのノズルポッドの共通のインクタンク内において制限された時間の間、音響的混乱を発生させる。この混乱は、同じポッド内の他のノズルの吐出と干渉する恐れがある。従って、あるポッド内でのノズルの吐出は、可能である限り相互にずらす必要がある。
この問題を解決するために、1つのクロマポッドから各色の1本のノズルを吐出させ、その後、ポッドグループ内の次のクロマポッドからのノズルを吐出させることが可能である。
2つの吐出モードは、低速印刷モード及び高速印刷モードと定義することが可能である。
低速印刷モード中は、各位相グループの1つのポッドグループだけに吐出パルスが供給されるので、2つのうちの一方のポッドグループだけが、ノズルを吐出させる。低速印刷モード中は、双方のポッドグループ内のクロマポッドは、第1のクロマポッドが再び吐出する前にすべてのノズルを吐出させなければならない。
低速印刷モード中は、各4インチのプリントヘッドから128本のノズルを同時に吐出することが可能である。吐出させられるノズルの間隔は最も遠く離れていなければならない。それ故、8つの各グメントから16本のノズルが吐出する。25,600本のノズルすべてを吐出させるには、128本のノズルからなる異なる200組を吐出させなければ
ならない。
高速印刷モード中は、双方のポッドグループが設定される。それ故、双方のポッドグループが、ノズルを吐出させる。高速印刷モード中、1つのポッドグループ内のクロマポッドは、第1のクロマポッドが再度吐出する前にすべて吐出させなければならない。
高速印刷モード中は、各4インチのプリントヘッドから256本のノズルを同時に吐出することが可能である。吐出させられるノズルの間隔は、最も遠く離れていなければならない。それ故、各グメントから32本のノズルが吐出する。25,600本のノズルすべてを吐出させるには、256本のノズルからなる異なる100組を吐出させなければならない。
従って、低速印刷の所要時間は、高速印刷の所要時間の2倍掛かる。何故なら、高速印刷の場合には、一度に2倍のノズルを吐出させるからである。低速印刷モードの場合の消費電力は、高速印刷モードの場合の消費電力の半分である。しかし、1枚のページを印刷するのに消費されるエネルギは、双方の場合同じである。
プリントヘッドは、吐出パルスのタイミングを調整するために、数行のフィードバックを印刷する。1つのフィードバック信号は、コントローラにプリントヘッドの温度を知らせる。それにより、コントローラは、吐出パルスのタイミングを調整することが可能である。何故なら、温度によりインクの粘度が変化するからである。第2のフィードバック信号は、コントローラにアクチュエータに供給可能な電圧を知らせる。これにより、コントローラは、パルス幅を調整することによって、フラットバッテリー又は高圧源を補償することが可能である。第3のフィードバック信号は、コントローラにアクチュエータヒータの比抵抗(オーム毎平方)を知らせる。これにより、コントローラは、ヒータの比抵抗とは無関係に一定のエネルギを維持するために、パルス幅を調整することが可能である。第4のフィードバック信号は、コントローラに、リソグラフィ及びエッチングの変動により±5%まで変化し得るヒータの重要部分の幅を知らせる。これにより、コントローラは、パルス幅を適当に調整することが可能である。
ロードサイクルは、プリントヘッドに、以降の印刷サイクル中に印刷される情報をローディングする。各ノズルの吐出制御ポートは、印刷サイクル中にノズルを吐出するかどうかを決定する関連NozzleEnableビットを有することが可能である。NozzleEnableビットは、ロードサイクル中に、1組のシフトレジスタによりロードされる。すべてのシフトレジスタが完全にロードされると、すべてのビットは、並列に適当なNozzleEnableビットに転送される。この転送が行われると、印刷サイクルは開始し得る。印刷サイクル及びロードサイクルは、すべてのNozzleEnableビットの平行したローディングが印刷サイクルの終わりで行われる限りは、同時に行うことが可能である。
印刷プロセスは、プリントヘッドに対して、正しいシーケンスでデータを印刷しなければならない。一例を挙げると、第1のクロックパルスは、次の印刷サイクルの0番、800番、1600番、2400番、3200番、4000番、4800番及び5600番のドットに対して、CMYKビットを転送することが可能である。第2のクロックパルスは、次の印刷サイクルの801番、1601番、2401番、3201番、4001番、4801番及び5601番のドットに対して、CMYKビットを転送することが可能である。800個のSRクロックパルスの後で、転送パルスが供給される。
もちろん、800個のSRクロックパルス内において、NozzleEnableビットの最後の転送に対応して、シフトレジスタをローディングしなければならず、多数の異
なる書込みの可能性が存在する。1つのローディング(すなわち、書込み)の可能性は、ポッドの順序でビットをロードすることであり、各ポッドにおいて、ビットはポッドの一方の側面から他方の側面にわたる各ノズルを表わす(第1の列の第2のノズルに移動する前に、第1の列から最後の列にわたって第1のノズルを効率的にロードすること)。2列のポッドにおいては、これは、目に明らかなジグザグの形でノズルをロードすることを意味する。もう1つの可能性は、ポッドの順序でビットをロードすることである。各ポッドにおいて、ビットが各列を表わし、各列は、ポッドの一方の側面のノズルから出発して、他方の側面に至る。
重要なことは、同じ印刷サイクル中に印刷した場合でも、奇数及び偶数のCMYK出力は、同じ物理的出力ライン上に印刷されないという事実に注意することである。プリントヘッドでの奇数ノズル及び偶数ノズルの間の間隔、及び異なる色のノズルの間の間隔により、ドットがページの異なるライン上に印刷されることが保証される。データをプリントヘッドにロードする場合には、この相対的な違いを考慮に入れなければならない。ライン内の実際の違いは、プリントヘッドで使用するインクジェット機構の特性により異なる。この違いは、異なる色のノズル間の距離を表わす変数、及び同じ色のノズル間の距離により定義することが可能である。
本発明は、コントーンカラー層をバイレベルにハーフトーン化し、ハーフトーン化したコントーン層上に黒色層を合成するためのハーフトーン化装置/コンポジタユニットである。前記ハーフトーン化装置/コンポジタユニット本発明は、一連のコントーンカラーピクセル値の形態にある展開されたコントーンカラー層、及び一連の黒色のドット値の形態にある展開された黒色層を受け入れるための入力ポートと、入力ポートで受け入れた各コントーンカラーピクセル値をディザさせ、各色成分用のバイレベルの出力ドットの値を決定するためのディザユニットと、ディザユニットからバイレベルの出力ドットの値、及び入力ポートから黒色のドット値を受け入れ、例えば、黒色のドットの値が完全な不透明を表わす場合には、各色に対するハーフトーン化されたドットの値を無色に表わすように設定されるように、ハーフトーン化された層の上に黒色層を合成するための合成ユニットと、コントーンカラーピクセル入力、黒色のドット入力、及びドット出力をクロック制御するために、イネーブル信号を発生するためのクロックイネーブルジェネレータと、独立した色平面を有し得る一連のバイレベルのドットの形態にある1組のバイレベルの画像ラインを供給するための出力ポートとを備える。
出力は、1セットの1600dpiのバイレベルの画像ラインであってもよい。
カラーコントーン層は、CMYKコントーン層であってもよい。
入力コントーンCMYK FIFOは、8KBのラインバッファを備えることが可能である。各ラインは、一度に読み出され、その後で、ラインの複製ーにより、垂直方向の拡大を行うために、コントーン基準倍率の回数だけ使用される。クロックイネーブルジェネレータが、ラッピングを可能にするコントーンライン前進イネーブル信号(contone line advanve enable signal)を発生する、最後の繰返されたラインの使用が開始する時点まで、FIFO書込みアドレスラッピングは不能になる。
別の方法としては、メモリトラフィックを65MB/sだけ増大するが、オンチップ8KBラインバッファは使用しないで、メインメモリから、コントーン基準倍率の回数だけラインを読み出すという方法がある。
上記ユニットが形成したデータを消費者は、通常、プリントヘッドインターフェースである。プリントヘッドインターフェースは、平面フォーマットの、すなわち、独立した色平面を備えるバイレベル画像データを必要とし得る。しかし、プリントヘッドは、また、
偶数及び奇数のピクセルが分離されていることを必要とする場合もある。カラーコントーン層がCMYKコントーン層である場合には、上記ユニットの出力段は、その各々が、偶数のシアン、奇数のシアン、偶数のマゼンタ、奇数のマゼンタ、偶数の黄色、奇数の黄色、偶数の黒、及び奇数の黒用の8つの並列ピクセルFIFOを使用することが可能である。
この目的のために、クロックイネーブルジェネレータは、また、出力ドットFIFOの偶数の組又は奇数の組を選択するために使用する偶数信号を発生することが可能である。
一旦開始すると、上記ユニットは、自分がページの終わりを検出するまで、又はその制御レジスタにより、はっきりと停止されるまで処理を続行する。
上記ユニットは、1ページ分の指定の幅及び長さのドットを発生するが、ページ構造及びパラメータを制御する目的のデータを供給するために多くのレジスタを使用することが可能である。
ページ幅レジスタは、プリントヘッドの幅に対応するページ幅データを受信するためのものである。
ページ長レジスタは、目標ページの長さに対応するページ長さデータを受信するためのものである。
左マージンレジスタは、左のマージンの位置を示すデータを受信するためのものである。
右マージンレジスタは、右のマージンの位置を示すデータを受信するためのものである。
左マージンから右マージンまでの距離は、目標のページ幅に対応する。ハーフトーン化装置/コンポジタユニットは、ページ幅に対して、指定された左右のマージンの間の目標ページ幅を発生する。
黒色ページ幅レジスタは、黒色ページ幅を示すデータを受信するためのものである。
コントーンページ幅レジスタは、コントーンページ幅を示すデータを受信するためのものである。
ハーフトーン化装置/コンポジタユニットは、指定の黒及びコントーンページ幅に従って黒及びコントーンデータを使用する。
ハーフトーン化装置/コンポジタユニットは、目標ページ幅に従って、黒及びコントーンデータをクリップする。それにより、入力FIFOレベルのところで、特殊なラインの終了ロジックを必要とすることなく、黒色及びコントーンページ幅は、目標ページ幅を超えることが可能である。
この目標のために、クロックイネーブルジェネレータは、また、現在のドット位置がページの左又は右のマージン内に位置している場合、白い点を発生するために使用するマージン信号を発生することが可能である。
ハーフトーン化装置/コンポジタユニットは、指定の基準倍率に基づいて、水平方向及び垂直方向の双方のプリンタの解像度においてコントーンデータをスケーリングする。コントーン基準倍率を受信するために、コントーン基準倍率レジスタを設置することが可能である。この基準倍率は、ハーフトーン化装置/コンポジタユニットをスタートする前にコントーン基準倍率レジスタに書き込まなければならない。
下記の表は、ハーフトーン化装置/コンポジタ制御及び構成レジスタの概要を示す。
Figure 0004621766
ディザセルにおいては、ボリュームの各ドットの列を256個の個々のビットとして実行することが可能である。
別の方法としては、ボリュームの各ドット列を閾値の一定の組として実行することも可能である。例えば、3つの8ビットの閾値を使用した場合には、24のビットしか必要としない。n個の閾値は、対応するディザセルの位置が、設定されていない状態、設定されている状態に交互になっているn+1個の明暗度間隔を定義する。ディザしているコントーンピクセル値は、n+1個の間隔の中の一つを一意に選択し、そうすることにより、対応する出力ドットの値を決定する。
コントーンデータは、3つの閾値、すなわち、64×64×3×8ビット(12KB)のディザボリュームを使用してディザさせることが可能である。上記3つの閾値は、1回のサイクル中に、ディザセルROMから検索することが可能である便利な24ビット値を形成する。
色平面の間で、ディザセル位置合わせが必要な場合には、同じ3つの閾値の値を1回検索することができ、各色成分をディザするために使用することが可能である。
ディザセル位置合わせが必要ない場合には、ディザセルを4つのサブセルに分割し、そこから4つの異なる3つの閾値を1回のサイクル中に、並列に検索することが可能である4つの個々のアドレス可能なROMに記憶することが可能である。4つの色平面は、相互に垂直方向及び/又は水平方向に32ドットずれた位置で同じディザセルを共有する。
多重閾値ディザユニットを使用することが可能である。例えば、3つの閾値ユニットは、3つの閾値の値及び1つの明暗度の値を1つの間隔に、すなわち、1ビット又は0ビットに変換する。下記表は、3つの閾値規則を示す。
Figure 0004621766
合成ユニットは、ハーフトーン化されたCMYK層ドット上で黒色層ドットを合成する。黒色層の不透明度が1である場合には、ハーフトーン化されたCMYはゼロに設定される。
4ビットのハーフトーン化されたカラーCcMcYcKc、及び1ビット黒色層不透明度Kbである場合には、合成ロジックは、下記の表のようになる。
Figure 0004621766
クロックイネーブルジェネレータは、1組のカウンタを使用する。下記表は、カウンタの内部ロジックの定義を示す。
Figure 0004621766
下記表は、クロックイネーブル信号のロジックの定義を示す。
Figure 0004621766
本発明は、コントーンカラーピクセル値のアレイの形態にあるコントーンカラー画像をバイレベルのドットにデジタル的にハーフトーン化するためのディザユニットである。上記ディザユニットは、各ディザセル位置に対する、対応するディザセルの位置が、交互に設定されていない状態、設定されている状態になるように定義されているn+1個の明暗度間隔を定義するn個の閾値の固定の組を含むディザボリュームを備える。
上記ディザユニットは、ディザボリュームを参照することによって、各色成分に対するバイレベルの出力ドットの値を決定することにより、入力ポートにおいて受信した各コントーンカラーピクセル値をディザするように動作することが可能である。
ディザボリュームの1つのビット列を効果的にランレングスコード化するために、すなわち、1つのビット列を圧縮するために使用することが可能である。この処理は、上記列内の隣接するビットの間には、通常、コーヒレンスが存在するという事実に依存している。閾値の数が制限されているか、固定されている場合には、一般的なディザボリュームは、もはや必ずしも表示されることはできず、それ故、ディザボリュームが生成された場合、制限された数の閾値を尊重する必要がある。閾値の数が1に制限されている場合には、従来のディザマトリックスが得られる。
画像の各色成分に対して、多重閾値ユニットが供給される。すべての多重閾値ユニットは、ディザボリュームに作動可能に接続している。各多重閾値ユニットは、出力ドットの位置に対応するディザセルの位置が、コントーン値が一意に選択する明暗度間隔内に設定されるように定義されているかどうかを判断することによって、コントーンカラーピクセル成分値に対応する出力ドットの値を決定する。
3つの閾値を使用することが可能であるが、これらの閾値は8ビット閾値であってもよい。
色平面の間で、ディザセル位置合わせが必要な場合には、多重閾値の値を1回検索することができ、各色成分をディザするために使用することが可能である。
色平面間で、ディザセル位置合わせが必要ない場合には、ディザセルを分割し、そこから異なる多重閾値の値を平行して検索することが可能である個々のアドレス可能なメモリに記憶することが可能である。
4つの色成分コントーン層をハーフトーン化する必要がある場合には、4つの個々の3成分閾値ユニット(triple threshold unit)は、それぞれ、各色成分に対する一連のコントーンカラーピクセル値を受信し得、ディザセルアドレスジェネレータは、ディザユニットのサブセルから4つの個々の3成分閾値の値の検索を制御するために、各3成分閾値ユニットのために、4つの四方向マルチプレクサと共に動作することが可能である。
3成分閾値ユニットは、3組の閾値の値を、T1、T2及びT3に変換することができ、
下記の表に従って、明暗度の値Vを、インターバルへ、そこから1ビット又は0ビットに変換することが可能である。
Figure 0004621766
さらなる態様において、本発明は、コントーンカラーピクセル値のアレイの形態にあるコントーンカラー画像をバイレベルのドットにデジタル的にハーフトーン化するためのディザユニットである。この場合、上記ディザユニットは、ディザボリュームを有する。ハーフトーン化方法は、上記ディザセルの位置が、設定されていない状態、設定されている状態に交互に定義されているn+1個の明暗度間隔を定義するn個の閾値の固定された組により、上記ディザボリュームの各ディザセルの位置を表示するステップと、上記コントーンピクセル成分の値に対応する出力ドットの値を決定する目的で、n+1個の明暗度間隔の内から1つを一意に選択するためにディザしているコントーンピクセル成分の値を使用するステップとを有する。
ディザユニットが、さらに、画像の各色成分に対して、1つの多重閾値ユニットを備えている場合には、上記多重閾値ユニットのすべては、ディザボリュームに作動可能に接続している。上記方法は、さらに下記のステップ、すなわち上記各多重閾値ユニットにおいて、上記出力ドットの位置に対応するディザセルの位置が、上記コントーン値が一意に選択する明暗度間隔内に設定されるように定義されているかどうかを判断することによって、コントーンカラーピクセル成分値に対応する出力ドットの値を決定するステップを有する。
本発明は、プリントヘッドの温度を示す信号を発生するための温度センサを含むタイプのプリントヘッド用のプリントヘッドコントローラと、それぞれがタンクからインクの供給を受けるためのインク供給ポートを有する複数のノズルと、インクドットを吐出するためのインク配置ポートと、及びプリントヘッドの吐出サイクル中に配置ポートからインクドットを配置するために信号を受信するための吐出制御ポートとを備えるプリンタである。この場合、プリントヘッドコントローラは、温度センサからプリントヘッドの温度を示す信号を受信するための手段と、ノズルの吐出制御ポートへ吐出信号を供給するための手段とを有する。上記プリントヘッドコントローラは、各印刷ジョブの前にすべてのノズルを吐出させるように設定し、各ノズルに一連の短い吐出パルスを供給するために、一連の修正した吐出サイクルを実行するよう作動可能である。各パルスの継続時間は、インクの滴を吐出させるには短すぎるが、プリントヘッドの温度を示す信号が動作平衡温度に達したことを示すまでインクを加熱するのには十分長い時間である。
予熱モード中のフィードバックは、Tsense(以下に定義する)により供給し得、温度が周囲温度より約30℃高い温度に達するまで継続的に行われる。時間又は温度は、インクの組成により変化するため、平衡温度に達したころに、温度情報をフィードバックさせることは重要である。
一例において、各ノズルに対して約200個のパルスが必要になる。
予熱モードの継続時間は、約50ミリ秒であり、この時間はインクの組成により異なる。
予熱は性能には影響を与えないが、データはプリンタに送られる。
予熱サイクルは、1を有するすべてのノズル(すなわち、すべてのノズルの吐出状態に設定)に対する1回のロードサイクルと、各ノズルに対する多数の短い吐出パルスとを伴う。パルスの継続時間は、インクの滴の吐出させるには短過ぎるが、インクを加熱するには十分長い。パルスの継続時間は、プリンタで使用する各インクにより異なる。各ノズルに対しては、全部で約200個のパルスが必要であり、標準印刷サイクルと同じシーケンスが反復して実行される。
本発明は、コンピュータメモリに内蔵されているリソースであって、リソースへの同時アクセスを必要とする複数の並列プロセッサ及びリソース内に座標を形成するためのリソースアドレスジェネレータを備える。この場合、上記リソースは、いくつかの部分に分割され、分割された各部分は、異なるメモリバンク内に記憶され、リソースアドレスジェネレータは、各プロセッサが使用するリソースの一部を選択するために使用される座標を発生する。選択は、各部分が一度に1つのプロセッサによってだけ使用されることを保証する。また、この選択により、各プロセッサは、リソース内に位置する順番に従って各部分を使用することも保証する。
リソースは、コントーンカラーピクセル値のアレイの形態にあるコントーンカラー画像をバイレベルのドットにデジタル的にハーフトーン化するための多重閾値ディザマトリックスであってもよい。上記ディザマトリックスは、各ディザセル位置に対して、ディザセル位置が設定されていない状態、設定されている状態に交互になっているn+1個の明暗度間隔を定義するn個の閾値の固定された組を有することが可能である。
リソースへの同時アクセスを必要とする複数の並列プロセッサは、画像の各色成分用の多重閾値ユニットであってもよい。すべての多重閾値ユニットは、多重閾値ディザマトリックスに作動可能に接続していて、各多重閾値ユニットは、上記出力ドットの位置に対応するディザセルの位置が、コントーン値が一意に選択する明暗度間隔内に設定されるように定義されているかどうかを判断することによって、コントーンカラーピクセル成分値に対応する出力ドットの値を決定する。
上記ディザユニットは、多重閾値ディザマトリックスを参照することによって、各色成分に対するバイレベルの出力ドットの値を決定することにより、入力ポートのところで受信した各コントーンカラーピクセル値をディザするように動作することが可能である。
ディザセルはサブセルに分割され、個々にアドレス可能なメモリに記憶され得、前記メモリからは異なる多重閾値の値が平行して検索される。
4つの色成分コントーン層をハーフトーン化する必要がある場合には、4つの個々の3成分閾値ユニットは、それぞれ、各色成分に対する一連のコントーンカラーピクセル値を受信することができ、ディザセルアドレスジェネレータは、ディザマトリックスの4つの異なるサブセルから4つの異なる3成分閾値の値の検索を制御するために、各閾値ユニットのために、4つの四方向マルチプレクサと一緒に動作する。
アドレスジェネレータは、色平面間でディザセル位置合わせを必要としない場合には、2つの閾値ユニットが、同じサブセルに対して同時アクセスを要求しないように、容易に配置され得る。
さらに他の観点から見た場合、本発明は、コンピュータメモリに内蔵されているリソースにアクセスするための方法である。この場合、複数の並列プロセッサは、リソースへの
同時アクセスを必要とし、リソース内に座標を形成するためのリソースアドレスジェネレータが設置されている。上記方法は、
リソースをいくつかの部分に分割するステップと、異なるメモリバンク内に各部分を記憶するステップと、
各プロセッサが使用するリソースの一部を選択するために使用される座標を形成するためのリソースアドレスジェネレータを動作するステップとを備え、選択は各部分が一度に1つのプロセッサによってだけ使用されることを保証する。
この選択により、各プロセッサは、リソース内に位置する順番に従って、各部分を使用することを保証する。
リソースは、コントーンカラーピクセル値のアレイの形態にあるコントーンカラー画像をバイレベルのドットに、デジタル的にハーフトーン化するための、多重閾値ディザマトリックスであってもよい。上記ディザマトリックスは、各ディザセル位置に対して、ディザセル位置が設定されていない状態、設定されている状態に交互になっているn+1個の明暗度間隔を定義するn個の閾値の固定された組を含むことが可能である。
リソースへの同時アクセスを必要とする複数の並列プロセッサは、画像の各色成分用の多重閾値ユニットであってもよい。すべての多重閾値ユニットは、多重閾値ディザマトリックスに作動可能に接続していて、各多重閾値ユニットは、出力ドットの位置に対応するディザセルの位置が、上記コントーン値が一意に選択する明暗度間隔内に設定されるように定義されているかどうかを判断することによって、コントーンカラーピクセル成分値に対応する出力ドットの値を決定する。
ディザセルはサブセルに分割され、個々にアドレス可能なメモリに記憶され得る。前記メモリからは異なる複数の閾値の値が平行して検索される。
4つの色成分コントーン層をハーフトーン化する必要がある場合には、4つの個々の3成分閾値ユニットは、それぞれ、各色成分に対する一連のコントーンカラーピクセル値を受信することができ、ディザセルアドレスジェネレータは、ディザマトリックスの4つの異なるサブセルから、4つの異なる3成分閾値の値の検索を制御するために、各閾値ユニットのために、4つの四方向マルチプレクサと一緒に動作する。
ディザセルアドレスジェネレータは、ディザセルの大きさの以外の現在のドット座標を反映するディザセル座標を発生することが可能である。ディザセル座標の低次のビットは、各ディザサブセル内の位置をアドレスするために使用することができ、ディザセル座標の高次のビットは、各多重閾値ユニットにより使用されるディザサブセルを選択するために使用することが可能である。上記選択は、各サブセル分が一度に1つの多重閾値ユニットによってだけ使用されることを保証する。また、この選択により、各多重閾値ユニットは、ディザセル内に位置する順番に従ってディザサブセルを使用することを保証する。
本発明は、それぞれが、インク供給ポートと、インク配置ポートと、及びプリントヘッドの吐出サイクル中に、配置ポート(吐出)からインクドットを配置するために、信号を受信するための吐出制御ポートを備える複数のノズルとを備えるタイプのプリントヘッドを有するプリンタで使用するためのプリンタシステムである。プリンタは、また、上記ノズルのインク供給ポートにインクを供給するための(カートリッジのような)インクタンクを備え、前記プリンタシステムは、インクタンクが空になる時点を予測するために動作する。プリンタシステムは、プリンタにより印刷された、又は印刷されるべきインクドットの数を示す信号を受信するための入力ポートと、上記タンク内に残っているインクドットの数を示すデータを記憶するためのメモリと、上記入力ポートから信号を受信し、印刷が行われる場合に、上記メモリを更新するためのプロセッサとを備える。プリンタが印刷するインクドットの数を示す信号は、上記ノズルの吐出制御ポートにおいて受信する信号
と関連する。
所定数のページの終わりがくると、他のページを印刷するのに十分なインクが、タンク内に残っているかどうかを示す表示を発生することが可能である。
十分なインクが残っていない場合には、新しいページは印刷されない。
印刷されたドット数、又は印刷されるべきドット数を示す信号は、プリントヘッド用のコントローラ、プリントヘッド自身、又はインクタンクから入手することが可能である。
ドットカウンタは、プリントヘッドから吐出したインクドットの数の計数を維持することが可能である。ドットの計数は、周期的に消去することが可能である。ドットカウンタは、ドットが印刷された場合は、何時でも信号を受信するための入力ポートと、クロックターミナル及び入力クリアターミナルを備えるビットカウンタと、このカウンタの周囲の正のフィードバック接続と、現在の計数を示すカウンタからの出力とを有することが可能である。
エンコーダは、受信した信号を変換するために、ドットカウンタへの入力ライン内に設置することが可能である。
プリンタが1つ以上のインクタンクを有している場合には、プリンタシステムは、プリンタにより印刷した、又は印刷しようとするインクドットの数を示す信号をタンクから受信するために、各インクタンクに対する入力ポートを備えることができ、メモリは、各タンク内に残っているインクドットの数を示すデータを記憶することが可能である。
別の態様において、本発明は、上記インクタンクが空になる時点を予測するためのプリンタの動作方法である。上記方法は、下記のステップ、すなわち、プリンタにより印刷されたインクドットの数、又は印刷されるべきインクドットの数を示す信号を受信するステップと、各タンク内に残っているインクドットの数を示すデータを記憶するステップと、印刷が行われた場合に、メモリを更新するステップとを有する。この場合、プリンタにより印刷されたインクドットの数、又は印刷され得るインクドットの数を示す信号は、上記ノズルの吐出制御ポートにおいて受信される信号に関連する。
所定数のページの終わりのところで、他のページを印刷するのに十分なインクがタンク内に残っているかどうかを示す表示を発生することが可能である。十分なインクが残っていない場合には、新しいページは印刷されない。
本発明は、プリンタ用の吐出パルス継続時間制御システムである。上記システムは、
使用可能な電圧を示す信号を受信するための第1の入力ポートと、
吐出パルスの所定の継続時間を示す制御信号を発生するために、第1の入力ポートにおいて受信した信号により索引付けされた(indexed)プログラム可能なパルス継続時間表と、
制御信号を送信するための出力ポートとを備える。
プリンタのプリントヘッドの温度を示す信号を受信するために、第2の入力ポートを設置することが可能である。この場合、プログラム可能なパルス継続時間表は、制御信号を発生するために、第1の入力ポート及び第2の入力ポートの双方から受信した信号により索引付けされる。
パルス継続時間表により、より低コストの電源を使用することができ、より正確なインク滴吐出を楽に維持することを援助する。
表の入力は、0〜4ミリ秒の範囲の値を表わすことができ、制御出力は索引付けされた入力により発生する。
使用において、パルス幅ジェネレータは、その制御出力を受信し、プリントヘッド用の吐出パルスを発生するために、制御システムの下流に設置され得る。
表は、印刷する最初のページを印刷する前に書き込まれることが可能である。所望により、表は印刷時にページ間において更新され得る。
表内の各入力は、下記の1つ又はそれ以上の特徴からの重み付けを有し得る。
・ユーザーの明暗度設定
・インクの粘度曲線
・Tsenseは、コントローラに、プリントヘッドの温度を知らせる。これにより、コントローラは吐出パルスのタイミングを調整することが可能である。何故なら、温度によりインクの粘度が変化するからである。
・Vsenseは、コントローラに、アクチュエータに供給可能な電圧を知らせる。これにより、コントローラは、パルス幅を調整することによって、フラットバッテリー又は高圧源を補償することが可能である。
・Rsenseは、コントローラに、アクチュエータヒータの比抵抗(オーム毎平方)を知らせる。これにより、コントローラは、ヒータの比抵抗とは無関係に一定のエネルギを維持するためにパルス幅を調整することが可能である。
・Wsenseは、コントローラに、リソグラフィ及びエッチングの変動により、±5%まで変化し得るヒータの重要部分の幅を知らせる。これにより、コントローラは、パルス幅を正しく調整することが可能である。
パルス継続時間表は、256個の入力を有し得、各入力は8ビットであり得る。電圧を示す信号は、Vsenseからのものであり、温度を示す信号は、Tsenseからのものである。この場合、入力ポートにおいて受信される信号は、表を索引付けする目的で使用するために、変換されることが可能である。表への8ビットの入力は、2つの4ビットの数で索引付けすることができ、よって、上位4ビットはVsenseから由来し、下位4ビットはTsenseから由来する。
さらなる態様において、本発明は、プリンタ用の吐出パルス継続時間制御システムに関する。上記システムは、
第1の入力ポートと、
プログラム可能なパルス継続時間表と、
出力ポートとを備え、吐出パルス継続時間制御信号を発生するための方法は、
使用することが可能である電圧を示す信号を受信するステップと、
吐出パルスの所定の継続時間を示す制御信号を発生するために、第1信号によりプログラム可能なパルス継続時間表を索引付けするステップと、
制御信号を送信するステップとを有する。
1. 緒言
写真画質画像再現と雑誌画質テキスト再現とを組み合わせる高性能カラープリンタを参照しながら、本発明を説明する。このプリンタは、1600ドット/インチ(dpi)の2値CMYK(シアン、マゼンタ、黄色、黒色)を与える約20.3cm(8インチ)ページ幅ドロップオンデマンド超小型電気機械式インクジェット(「メムジェト(Memjet)」プリントヘッドを使用する。このプリンタは、フルカラーA4又はレターページを毎分30枚を印刷し、入門レベルのデスクトッププリンタとして意図されている。このプリンタは、iプリント(iPrint)として設計されたものであり、以下の説明ではこの名称で呼ぶ。
1.1 動作の概要
iプリントは、2値黒色を直接用いる黒色テキスト及びグラフィック、並びにディザリングされた2値CMYKを用いる連続階調(コントーン(contone))画像及びグラフィックを再現する。実用的にはiプリントは黒色解像度800dpi及びコントーン解像度267ピクセル/インチ(ppi)を可能とする。
使用する際にはiプリントは、比較的低速の(1.5Mバイト/秒)ユニバーサルシリアルバス(USB)接続[非特許文献14]を介して作業端末又はパーソナルコンピュータ(PC)に取り付けられる。iプリントはPCによって、各ページをコントーン画素及び黒色ドットのレベルまでレンダリングする。PCは、レンダリングされた各ページを3MB未満まで圧縮して、プリンタに2秒以下で送る。iプリントはメムジェットプリントヘッドの速度でラインごとにページを解凍・印刷する。iプリントは圧縮したページの2ページ分には十分なバッファメモリ(6MB)を有していることから、次のページを受信しながら1ページを印刷することが可能である。但し、圧縮されていない1ページ分(119MB)に十分なバッファメモリは備えていない。
1.2 ページ幅
標準的なメムジェットノズルの構成には、約1.27cm(1/2インチ)の単位セルを有することから、約1.27cm(1/2インチ)の複数倍であるページ幅に簡易に調整することが可能である。専門化が妥当である市場においては、特注のノズルレイアウトによって任意のページ幅を得ることが可能である。最初のメムジェット組立ブロックは、広範囲で有用な約10.2cm(4インチ)プリントヘッドであり、それによって約15.2cm(6インチ)シリコンウェハを有効に用いることが可能である。従って、iプリントの設計は、約10.2cm(4インチ)プリントヘッド2個を合体させて構成されている約20.3cm(約8インチ)メムジェットプリントヘッドを想定している。さらに幅の大きいプリントヘッドを用いてA4/レターページ上でフルブリードを得るようにしても、iプリントの設計のわずかな点、具体的には正確な機械的設計及びプリントヘッドインターフェースの論理に影響があるのみである。
2. メムジェット印刷
メムジェットプリントヘッドは1600dpiの2値CMYKを与える。低拡散紙上では、各吐出液滴はほぼ完全な円形の直径22.5μmのドットを形成する。ドットは独立させて得ることが容易であり、拡散ドットディザをその最大まで活用することが可能である。メムジェットプリントヘッドはページ幅であり、一定の紙送り速度で動作することから、4色面が完全な位置合わせ精度をもって印刷され、理想的なドット・オン・ドットの印刷が可能となる。結果的に色平面間には空間的相互作用がないことから、同じディザマトリクスを各色平面に用いる。
ページレイアウトには、画像、グラフィック及びテキストが混在していても良い。連続階調(コントーン)画像及びグラフィックは、確率的拡散ドットディザを用いて再現される。クラスタードット(又は振幅変調)ディザとは異なり、拡散ドット(又は周波数変調)ディザは高い空間周波数(すなわち、画像の詳細)をドット解像度のほぼ限界まで再現し、同時に相対的に低い空間周波数をそのフルカラーの色数(full color depth)まで再現する。確率的ディザマトリクスを注意深く設計して、画像全体にタイル表示する際に好ましくない低周波数パターンがないようにする。それ自体のサイズは、多くの強度レベルをサポートする上で必要な最小サイズ(すなわち、257強度レベルでは16×16×8ビット)を超えるのが普通である。iプリントは、サイズ64×64×3×8ビットのディザ容量を用いる。その容量は、1個のドットが強度範囲を通じて複数回(従来のディザマトリクスの場合のようにただ1回ではなく)状態を変えることが可能であるようにすることで、ディザ設計時にかなりの自由度を提供するものである。
人間のコントラスト感度は視野1度当たり約3周期の空間周波数でピークとなり、それから対数的に下降して係数100で低下し、1度当たり約40周期を超えて測定することは困難となる[非特許文献2]。400mm〜250mmという通常の目視距離では、それは印刷ページ上で150〜250周期/インチ(cpi)又はナイキストの定理によれば300〜500サンプル/インチに相当する。色感度はグレースケール感度ほど鋭くないことを考慮すると、約400画素/インチ(ppi)を超えるコントーン解像度は用途が限られ、実際にはディザによる色誤差にわずかに寄与するものである。
黒色のテキスト及びグラフィックは2値黒色ドットを直接用いて再現されることから、印刷に先だってアンチエリアジング(すなわち低域能動フィルター処理)されない。従ってテキストは、上記で説明した知覚範囲を超えてサンプリングされ、空間的に統合されると滑らかなエッジを与える。約1200dpiまでのテキスト解像度はやはり、知覚されたテキストの鮮明度(sharpness)に寄与する(当然のことながら、低拡散紙と仮定して)。
3.1 制約
USB(ユニバーサルシリアルバス)は、新しいPCでの標準的な低速周辺機器接続である[非特許文献4]。標準的な高速周辺機器接続IEEE1394が望ましいが、残念ながらやはりPC99仕様で動作可能であることから[非特許文献5]、iプリントが最初に発売される頃には広く使用され得ない。従ってiプリントは、USBを介してパーソナルコンピュータ(PC)や作業端末に接続されることから、USB接続の速度がiプリントシステム構成に対する最も大きい制約となる。30ページ/分という一定の印刷速度では、1.5MB/秒のUSBでは平均限界が3MB/ページとなる。ページ印刷時にメムジェットに基づくプリンタを中断するという動作は肉眼で観察される不連続を生じることから、プリンタが印刷を始める前に全ページを受信し、バッファ不足の可能性を排除することが有利である。プリンタは限られたバッファメモリ、すなわち2ページ相当又は6MBのみを備えることが可能であることから、3MB/ページという限界は絶対的と考えなければならない。
図1には、プリンタにおける二重バッファリングで得ることが可能である定常印刷速度を示してある。第1段階1では、最初のページをPCでレンダリングする必要があり、それには2秒以下の時間を要する。第2段階2では、次のページをレンダリングし、最初のページをプリンタに転送するが、やはりそれには2秒以下の時間を要する。第3段階3では、最初のページを印刷し、第2のページを送り、第3のページをレンダリングし、それに2秒を要する。その結果、最初のページを印刷するのに最高で6秒を要し、その後2秒ごとに1ページを印刷することが可能である。
他のデスクトップ接続オプションはUSBと同様のバンド幅を提供することから、構成に対して同様の制約がある。それには、2MB/秒のパラレルポート、約1MB/秒の10ベース−Tイーサネットなどがある。
3.2 ページのレンダリング及び圧縮
ページレンダリング(又はラスター化)は、各種方法によってPCとプリンタとの間で分割することが可能である。一部のプリンタは、ポストスクリプトなどの全ページ記述言語(PDL)をサポートし、それに応じて複雑なレンダラーを有する。他のプリンタは、テキストのレンダリング専用の特別なサポートを提供して、高いテキスト解像度を実現する。これは、通常、内蔵又はダウンロード可能なフォントのサポートを含む。そのような場合、埋込レンダラーを用いることでPCへのレンダリング負担が軽減され、PCからプリンタに転送されるデータ量が減少する。しかしそれには代償が伴う。そのプリンタは予
想された以上に複雑となり、多くの場合、アプリケーションプログラムがページの構成、レンダリング及び印刷を行うPCのグラフィックシステムを完全にサポートすることができない。上記は、大抵、現行のPCの高性能を利用できず、PC性能における予定された級数的成長を利用できない。
iプリントはPC4によってページ、すなわちコントーン画像及びグラフィックを画素レベルまでレンダリングし、黒色のテキスト及びグラフィックをドットレベルまでレンダリングする。iプリント5は、コントーンデータをディザ処理し、結果をフォアグラウンドの2値式黒色テキスト及びグラフィックと結合させる簡単なレンダリングエンジンのみを有する。この戦略によってプリンタは簡素であり、かつページ記述言語やグラフィックシステムに依存しなくなる。それは現行のPCの高性能を完全に利用するものである。この戦略の欠点は、PCからプリンタに転送しなければならないデータ量が大きくなる可能性があることである。そこで我々は、一定の印刷速度30ページ/分を可能とする上で必要な3MB/ページまでそのデータを減少させるために圧縮を用いる。
図2は、アプリケーション6から印刷ページ7への概念的なデータの流れを示すフローチャートである。
約20.3cm(8インチ)×約29.7cm(11.7インチ)のA4ページは、1600dpiで114.3Mバイトの2値CMYKページサイズを有し、300ppiで32.1MBのコントーンCMYKページサイズを有する。
プリンタドライバ8においては、JPEG圧縮を用いて、コントーンデータを圧縮する。JPEGは性質上損失が大きいが、10:1以下の圧縮率では、通常、その損失は無視できる程度である[非特許文献16]。2値比までの積算コントーンを得、かつある程度の圧縮許容差を得るために、267ppiのコントーン解像度を選択する。これは、25.5MBのコントーンCMYKページサイズと、3MB/ページという制限内に合致する8.5:1という対応する圧縮比と、コントーンを各次元において1.6という2値比(bi−level ratio)とする。
プリンタの解像度(1600dpi)でラスター化した黒色テキスト(及び/又はグラフィック)の全ページは28.6MBの2値画像を与える。1600dpiでのテキストのラスター化は小さい利得を得るのにPCにかなりの負担を負わせることから、完全に許容される800dpiでテキストをラスター化することを選択する。これにより、7.1MBの2値画像が得られ、3MB/ページという制限内に適合するために2.5:1未満の損失のない圧縮比が必要となる。いずれも符号10で示したグループ4ファクシミリ(Group 4 Faxcsimile)から採用した2次元圧縮法にて、これを行っている。
ページの画像領域とテキスト領域が重なっていない限り、これら2つの組合せは3MBの制限内に適合する。テキストが背景画像の上部にあると、最悪の場合には6MBに近い圧縮ページサイズとなる(実際のテキスト圧縮率によって決まる)。これは、プリンタのページバッファメモリ内に適合するが、プリンタにおけるページの二重バッファリングを防止することで、プリンタのページ速度を2/3、すなわち10ページ/分まで低下させる。
3.3 ページ拡大と印刷
前述のように、PCはコントーン画像及びグラフィックを画素レベルまでレンダリングし、黒色のテキスト及びグラフィックをドットレベルまでレンダリングする。それらは、工程11において異なる手段によって圧縮され、一緒にプリンタに転送される。
プリンタには2つの3MBページバッファを備え、一方はPCから受信するページ用のバッファ12であり、もう一方は印刷されるページ用のバッファ13である。プリンタは圧縮されたページを印刷時に展開する。その展開は、267ppiコントーンCMYK画像データを解凍する工程14と、得られたコントーン画素を1600dpi2値CMYKドットまで階調表現する工程15と、800dpiの2値黒色テキストデータを解凍する工程16と、相当する2値CMYK画像ドット上に得られた2値黒色テキストドットを合成する工程17とからなる。
アプリケーションから印刷ページへの概念的なデータの流れを図2に示す。4. プリンタハードウェア
ページ幅メムジェットプリントヘッドが簡素であることから、iプリントは非常に小型である。その寸法は、閉じた状態で幅270mm×奥行き85mm×高さ77mmしかない。図3は、閉じた状態でのiプリント21の模式図である。
カバー22は開くと、図4に示したように紙トレイの一部を形成する。第2の部分23はカバー内に蝶番止めされており、開くと紙トレイが広がる。排紙トレイ24はプリンタの正面から摺動して伸長可能である。
カバー22を開くと現れるフロントパネル25には、ユーザーインターフェース(すなわち電源ボタン26及び電源インジケータLED27)、給紙ボタン28、ならびに用紙切れLED29及びインク切れLED30がある。
4.1 用紙経路
iプリントは標準的な紙送り機構を用いる。用紙経路50は図5に示してあり、図中において1個のステッパモータ51がシート送りローラ52と紙搬送手段の両方を駆動する。順方向に動作すると、それぞれ能動的用紙経路のそれぞれ始点と終点でステッパモータが紙駆動ローラ53とピンチホイール54を駆動させる。逆方向の場合、ステッパモータは、シートフィーダから最も上のシートを掴み、そのシートを紙駆動ローラ53までの短い距離で搬送するシート送りローラ52を駆動し、ローラ53では自動媒体センサー55によってシートを検出する。
紙センタリングスライダー56によって、紙の中心合わせが行われる。それによって、1個の中央にある媒体センサーによるシート検出が行われ、やはりプリントヘッドより広いシートが均衡の取れたマージンを有して印刷される。
4.1.1 メムジェットプリントヘッド
交換可能なメムジェットプリントヘッドカートリッジ60も図5に示してある。これは、iプリントなどの製品におけるインクカートリッジに関して、プリントヘッドを備えるための以下の4つの可能な方法の一つを代表するものである。
・恒久型プリントヘッド、交換可能インクカートリッジ(本明細書に示したもの)、
・独立した交換可能なプリントヘッド及びインクカートリッジ、
・再充填可能な一体型のプリントヘッド及びインクカートリッジ、
・使い捨ての一体型のプリントヘッド及びインクカートリッジ。
プリントヘッドカートリッジ60の下にはプリントヘッドアセンブリ61とプリントヘッドキャッピング機構62とがあり、それらは図6の模式的破断図と図7の断面図に示してある。用時以外は、メムジェットプリントヘッド63はインクが充填された状態であることから、キャップを施してノズルからのインク蒸発を防止しなければならない。インクが蒸発すると、インク成分が徐々に堆積する場合があり、それによってノズル動作に支障が生じる場合がある。
iプリントは、自動ページ幅キャッピング機構62を備え、同機構62は弾性シール65とスポンジ66とを有する回動式キャッピング成形物64から構成されている。プリントヘッドを使用していない時には、キャッピング成形物64はバネによって、プリントヘッドアセンブリ61の面に当接されており、弾性シール65はプリントヘッドアセンブリの面と合致し、プリントヘッド63周囲で気密シールを行う。スポンジ66は、プリントヘッドクリーニングサイクル中に吐出される液滴を捕捉するのに使用される。プリントヘッド使用中には、キャッピング成形物64はプリントヘッドアセンブリ61から離れて、用紙経路から外部に保持されている。
キャッピング成形物64は、ロッド69から一対の可撓性アーム68によって偏位している。キャッピング成形物64とアーム68は、ロッド69に対してその軸線を中心として回動する。ロッド69の端部にはスリップホイール70が取り付けられている。スリップホイール70は駆動ホイール71と接触している。印刷を行っている時は、駆動ホイール71は紙搬送モータと組み合って、キャッピングしない方向72において駆動される。それによって、スリップホイール70とロッド69がその軸を中心として回転して、キャッピング成形物64をプリントヘッドから離反する方向に回転させる。スリップホイールがキャッピングしないスリップ点73の間で回転すると、スリップホイールとキャッピング成形物は回転を停止する。印刷が完了すると、駆動ホイールが逆転し、キャッピング方向74に駆動される。スリップホイールがキャッピングスリップ点75まで回転すると、スリップホイール及びキャッピング成形物が回転を停止し、キャッピングバネがプリントヘッドアセンブリ面に当接するような位置でキャッピングプレートを保持する。可撓性アーム68はキャッピングプレート67がプリントヘッドアセンブリ61の面に一致するようにする。
4.2 プリンタ制御装置
プリンタ制御装置80を図8に示す。プリンタ制御装置80は、64MビットRDRAM82と、iプリント中央処理装置(ICP)チップ83と、エラー状態をユーザーに知らせるためのスピーカ84と、QAチップ85と、外部3ボルトDC電源接続部86と、外部USB接続部87と、紙搬送ステッパモータへの接続部88と、媒体センサー55、LED類7,9,10、ボタン6,8に接続する可撓性PCBへの接続部89と、プリントヘッド63のリンク90などの、いくつかの構成要素のみを有する小型PCB81から構成されている。
4.3 インクカートリッジ及びインク経路
インクカートリッジには、大型のインクカートリッジと小型のインクカートリッジとの2種類がある。いずれもiプリントユニットの背後にある同じインクカートリッジ溝に嵌合する。
5. プリンタ制御プロトコル
このセクションは、ホストとiプリントとの間で使用されるプリンタ制御プロトコルについて説明するものである。本セクションは、制御及びステータスの取り扱いならびに実際のページ記述を有する。
5.1 制御及びステータス
プリンタについてのUSB機器クラスの定義[非特許文献15]は、単方向性及び双方向性の双方のIEEE1284パラレルポートのエミュレーションを規定するものである[非特許文献3]。最も基本的なレベルでは、それによってホストはプリンタの能力を決定し(GET_DEVICE_IDによって)、プリンタステータスを把握し(GET_PORT_STATUSによって)、プリンタをリセットする(SOFT_RESETに
よって)ことが可能である。以下の表1には、セントロニクス/IEEE1284プリンタステータスフィールドを示してある。
Figure 0004621766
パーソナルコンピュータの印刷サブシステムは、一般的には、ある程度IEEE1284をサポートする。従って、プリンタにおけるIEEE1284との適合性があれば、相当するプリンタドライバの開発が容易となる。プリンタに関するUSB機器クラス定義は、この同じ適合性を利用するためのものである。
iプリントは、プリンタについてのUSB機器クラス定義を超えて制御プロトコルをサポートすることはない。留意すべき点として、さらに高レベルの制御プロトコルが定義されていれば、インク切れなどの状態もユーザーに報告されると考えられる(プリンタのインク切れLEDによるだけではなく)。
iプリントは未処理転送データ、すなわち、さらに高レベルの制御プロトコルでカプセル化されていない未処理転送データとしてページ記述を受信する。5.2 ページ記述
iプリントはフルドット解像度(1600dpi)で黒色を再現するが、コントーン色については階調表現を用いて若干低い解像度で再現する。従ってページ記述は、黒色層とコントーン層とに分割される。黒色層はコントーン層の上に合成されるものと定義される。
この黒色層は、各画素当たり1ビットの不透明度を有するビットマップからなる。この黒色層マット(matte)は、プリンタのドット解像度の整数倍率である解像度を有する。サポートされた最高解像度は1600dpi、すなわちプリンタのフルドット解像度である。
コントーン層は、各ピクセルにつき32ビットCMYK色を有するビットマップからなる。このコントーン画像は、プリンタのドット解像度の整数倍率である解像度を有する。サポートされた最高解像度は267ppi、すなわちプリンタのドット解像度の1/6である。
コントーン解像度も一般的には黒色解像度の整数倍率とすることで、プリンタドライバでの計算を単純化する。しかしながらそれは必要条件ではない。
黒色層とコントーン層はいずれも圧縮型として、低速のUSB接続によるプリンタへの効率的な転送を行うようにする。
5.2.1 ページ構造
iプリントは、そのプリントヘッド幅、その用紙経路の特性及び現在選択されているプリント媒体の大きさによって決定される印字可能ページ領域を有する。
印字可能ページ領域は、約20.3cm(8インチ)の最大幅を有する。物理的なページ幅が約20.3cm(8インチ)を超えた場合、対称な左マージン及び右マージンが必ず設けられる。物理的なページ幅が約20.3cm(8インチ)未満であれば、印字可能ページ幅はそれに応じて小さくなる。印字可能ページ領域は、最大長を有さない。最大長
は単に、用紙経路の特性によって決まる上マージン及び下マージンを除いた物理的なページ長である。
目標ページサイズは、ページ記述で具体的に述べた明瞭な(所望の)左マージン及び右マージンを除く印字可能ページ領域によって制限される。
理論的にはiプリントは、上マージンや下マージンを規定するものではない。すなわち、垂直方向ではフルブリードが可能である。しかし実際には、iプリントは約20.3cm(8インチ)プリントヘッドを用いるためにフルブリードA4/レタープリンタとしては設計されていないことから、強制的な上下マージンを設けて、通常のエッジ外印刷に対処するのに十分な大きさのスポンジを備えなければならない事態を回避させる。
5.2.2 ページ記述フォーマット
表2には、iプリントによって期待されるページ記述のフォーマットを示してある。
Figure 0004621766
印刷可能ページ領域に関連して明瞭に定義される場合は別として、各ページ記述は完全であり、かつ自己独立型である。ページ記述が言及しているプリンタに、ページ記述とは別に送られるデータはない。
ページ記述は、プリンタにページ記述フォーマットを確認させる記号及びバージョンを有する。記号及び/又はバージョンが欠落していたりプリンタと適合しない場合、プリンタはそのページを拒否する場合がある。
ページ記述は、目標ページの解像度とサイズを定義するものである。必要に応じて、黒色層及びコントーン層を目標ページにクリップする。黒色又はコントーン倍率が目標のページ幅やページ高さの倍数ではない場合には必ずそれを行う。
目標の左及び上マージンは、印刷可能ページ領域内での目標ページの位置決めを規定するものである。
黒色層パラメータは、黒色層の画素のサイズ、その目標解像度に対する整数倍率、その圧縮ページデータのサイズを定義するものである。サイズ可変の黒色ページデータは、ページ記述のサイズが固定された部分の次にある。
コントーン層パラメータは、コントーン層の画素のサイズ、その目標解像度に対する整数倍率、その圧縮ページデータのサイズを定義するものである。サイズ可変のコントーンページデータは、サイズ可変黒色ページデータの次にある。
ページ記述中の整数はいずれも、ビッグエンディアンバイトで保存される。
サイズ可変黒色ページデータ及びサイズ可変コントーンページデータは、8バイト境界で位置合わせされる。必要なパディングのサイズは、ページ記述構造のサイズ固定部分及びサイズ可変黒色データのサイズに含まれる。
全ページ記述は、プリンタにおけるページバッファメモリに従って、3MB未満の目標サイズ及び6MBの最大サイズを有する。
以下のセクションでは、圧縮黒色層及び圧縮コントーン層のフォーマットについて説明する。
5.2.3 2値黒色層圧縮
5.2.3.1 グループ3及び4ファクシミリ圧縮
グループ3ファクシミリ圧縮アルゴリズム[非特許文献1]は、低速でノイズの多い電話回線での転送のために損失なく2値データを圧縮するものである。2値データは、白色背景上で走査された黒色のテキスト及びグラフィックを表すものであり、アルゴリズムはそのクラスの画像用に調整される(例えば階調表現された2値画像については明瞭には調整されない)。1Dグループ3アルゴリズムが各走査線をランレングスコード化し、次に得られたランレングスをハフマンコード化する。0〜63の範囲のランレングスは停止コードでコード化される。64〜2623の範囲のランレングスは、それぞれが64の整数倍を表す構成(make−up)コードとそれに続く停止コードでコード化される。2623を超えるランレングスは、複数の構成コードとそれに続く停止コードでコード化される。ハフマンコード表は固定されるが、黒色ランと白色ランについて別々に調整される(一般的である1728より上の構成コードを除く)。可能であれば、2Dグループ3アルゴリズムは、前記走査線に関しての1組の短エッジデルタ値(short edge deltas)(0、±1、±2、±3)として走査線をコード化する。デルタ記号はエントロピーコード化される(従って、ゼロデルタ記号は1ビット長のみとなる等である)。デルタコード化できない2Dコード化ライン内のエッジはランレングスコード化され、接頭部によって識別される。1D及び2Dコード化ラインは区別してマークされる。1Dコード化ラインは、実際に必要であるか否かとは無関係に、一定の間隔で設けられて、デコーダが画像劣化を最小限としながらラインノイズから再生可能であるようにする。2Dグループ3は6:1までの圧縮比を与える[非特許文献13]。
グループ4ファクシミリアルゴリズム[非特許文献1]は、エラーフリー通信ライン(すなわち、ラインが真にエラーを有さないか、あるいは比較的低いプロトコルレベルでエラー補正が行われる)での転送のために2値データを損失なく圧縮する。グループ4アルゴリズムは2Dグループ3アルゴリズムに基づいたものであり、転送がエラーを有さない
と仮定されることから、1Dコード化ラインがエラー復旧の補助として一定間隔で設けられないという本質的な変更を有する。グループ4は、CCITTセットの試験画像について20:1〜60:1の範囲の圧縮比を達成する[非特許文献13]。
グループ4圧縮アルゴリズムの設計目的と性能により、グループ4圧縮アルゴリズムは2値黒色層の圧縮アルゴリズムとして適している。しかしそのハフマンコード表は比較的低い走査解像度(100〜400dpi)に調整されており、2623を超えるランレングスを無駄にコード化する。800dpiでは、我々の最大ランレングスは現在のところ6400である。グループ4デコーダコアはプリンタ制御装置チップに利用可能であり得ることから(セクション7)、グループ4デコーダコアは400dpiファクシミリの利用で通常生じるランレングスを超えるランレングスを扱うことはできないと考えられる。従って、変更を行う必要があると考えられる。
グループ4の利点のほとんどがデータコード化に由来するものであることから、デルタコード化のみに基づく比較的単純なアルゴリズムが我々の要件を満足するものと考えられる。このアプローチについて以下に詳細に説明する。
5.2.3.2 2値エッジデルタ及びランレングス(EDRL)圧縮フォーマット
エッジデルタ及びランレングス(EDRL)圧縮フォーマットは、ある程度グループ4圧縮フォーマット及びその先行形式に基づいたものである[非特許文献1][非特許文献17]。
EDRLは、適切にエントロピーコード化された3種類の記号を用いる。それはエッジ作成(create edge)、エッジ消去(kill edge)及びエッジデルタ(edge delta)である。各線はその先行者( p
redecessor)を参照してコード化される。第1線の先行者は白色線と定義される。各線は白色を開始すると定義される。線が実際には黒色で開始すると(比較的起こりにくい状況)、それはオフセットゼロで黒色エッジを規定しなければならない。各線はその左端、すなわちオフセットページ幅でそのエッジを規定する。
同じ意味を有する(白色−黒色又は黒色−白色)最大デルタ範囲内にエッジがある場合、前の線でのエッジを参照してエッジをコード化することが可能である。それはエッジデルタコードの一つを利用する。デルタが短く、しかも可能性の高いものであるほど、コードが短い。最大デルタ範囲(±2)を選択して、代表的なシンボルエッジにデルタの分布を適合させる。その分布はほとんどの場合、ポイント数とは独立である。代表的な例を表3に示してある。
Figure 0004621766
エッジも、同じ線における前のエッジからランレングスを用いてコード化することが可能である。それは、短(7ビット)ランレングス及び長(13ビット)ランレングスについてエッジ作成コードの一つを用いる。簡明さを期すと、グループ4とは異なり、ランレングスはエントロピーコード化されない。エッジデルタが前の線におけるエッジと明瞭に同期化した状態とするために、現在の線を通過する際に前の線における各未使用エッジを「消去する」。これはエッジ消去コードを用いる。ページ終了コードは、デコーダにペー
ジの終端を知らせる。
留意すべき点として、7ビットランレングスと13ビットランレングスを具体的に選択して、800dpiにてA4/レターページをサポートする。比較的長いランレングスは圧縮性能に対してほとんど影響なくサポート可能であると考えられる。例えば、1600dpi圧縮をサポートする場合、ランレングスはそれぞれ少なくとも8ビット及び14ビットなければならない。一般用途での選択は8ビット及び16ビットであると考えられることから、幅約101.6cm(40インチ)1600dpiページまでがサポートされる。
表4に、全組合せのコードを示してある。留意すべき点として、線終端コードはない。デコーダはページ幅を用いて線終端を検出する。コードの長さは、コード発生の相対的確率によって配列してある。
Figure 0004621766
図9には、簡単な黒色及び白色画像90のコード化例を示してある。画像は画素92の線91として配列してある。第1の線91が白色であると仮定すると、白色であることからΔ0とコード化される。留意すべき点として、別の全白線に続く全白線の一般的状況は単一ビット(Δ0)を用いてコード化され、別の全黒線に続く全黒線は2つのビット(Δ0,Δ0)を用いてコード化される。第4線93のようにエッジが線にある場合、作成コードを用いてエッジを規定する。次の線94では、Δ−1及びΔ+1コードを用いてエッジを移動させる。次の線95では、新たなエッジを作成し、前のエッジは移動させずに消去するのがより簡便である。
EDRLコード化例
上記のものは圧縮アルゴリズム自体ではなく、圧縮フォーマットについて説明していることに留意されたい。同一画像について各種の同等のコード化を行い、一部はそれ以外のものより小型にすることが可能である。例えば、純粋なランレングスコード化は圧縮フォーマットに適合する。圧縮アルゴリズムの目的は、最良ではないとしても、所定画像についての良好なコード化を発見することにある。
以下は、先行者を参照した線のEDRLコード化を行うための簡単なアルゴリズムである。

Figure 0004621766


Figure 0004621766
アルゴリズムは線間の実際のエッジ連続性については分からず、実際には2本の線間で「誤った」エッジに合致し得ることに注意されたい。幸運にも、圧縮フォーマットは正しくデコードすることから、「誤った」マッチングが圧縮比に悪影響を与えることは困難であるので、本件ついては言及しない。
完全を期するため、相当する解凍アルゴリズムを以下に示す。同アルゴリズムは、プリンタ制御装置チップでのEDRLエキスパンダユニットの中核を形成している(セクション7)。
Figure 0004621766
5.2.3.3 EDRL圧縮性能
表5には、グループ4アルゴリズムを選択するのに使用されるCCITT試験ドキメントについてのグループ4及びEDRLの圧縮性能を示してある。各ドキメントは、400dpiで走査された単一のページを表す。グループ4の優れた性能は、400dpiの特徴に調整されたそのエントロピーコード化ランレングスによるものである。
Figure 0004621766
雑誌テキストは一般的には、ポイントサイズ10の活字(Timesなど)書体で植字されている。そのサイズでは、A4/レターページは14000文字まで有する、代表的な雑誌のページは約7000文字を有する。テキストは5未満のポイントサイズで植字されることは希である。800dpiにおいてテキストは、標準的な書体を用いて2未満のポイントサイズとすることは実用上不可能である。表6には、各種ポイントサイズの判読性を示してある。
Figure 0004621766
表7には、800dpiで表現した各種ポイントサイズのテキストページについてのグループ4及びEDRLの圧縮性能を示してある。EDRLによって、ポイントサイズ3で植字されたテキストの全ページについて必要な圧縮比2.5が得られることに留意されたい。テキストページ上の文字分布は、英語統計学に基づいている[非特許文献12]。
Figure 0004621766
9以上のポイントサイズでは、単にグループ4のランレングスコードが400dpiに調整されているという理由で、EDRLはグループ4よりわずかに性能が優れている。
これらの圧縮結果は、非常に小さい文字の場合のように、データの垂直方向での関連づけが低くない限り、エントロピーコード化ランレングスが2Dコード化ほど圧縮に寄与しないという所見を裏付けるものである。
5.2.4 コントーン層圧縮
5.2.4.1 JPEG圧縮
JPEG圧縮アルゴリズム[非特許文献6]は、指定の画質レベルにて、損失を伴って、コントーン画像を圧縮する。JPEG圧縮アルゴリズムは、5:1以下の圧縮比で知覚できない程度の画像劣化、及び10:1以下の圧縮比では無視可能であるほどの画像劣化を伴う[非特許文献16]。
JPEGは一般的には、最初に明るさとクロミナンスを別個の色チャンネルに分ける色空間に画像を変換する。人間の視覚系はクロミナンスより明るさに対する感度が相対的に高いことから、それによってクロミナンスチャンネルはほとんど損失なくサブサンプリングすることが可能である。この第1段階の後、各色チャンネルを別個に圧縮する。
画像は8×8画素ブロックに分割される。次に、各ブロックを離散余弦変換(DCT)を介して周波数ドメインに変換する。この変換は、比較的低い周波数係数で画像エネルギを集中する効果があり、それによって比較的高い周波数係数のより粗の量子化が行われる。その量子化はJPEGにおける主要な圧縮源である。係数を周波数ごとに配列することによりさらに圧縮が行われて、隣接するゼロ係数の見込みを最大にし、次にゼロのランレングスコード化ランを最大にする。最終的に、ランレングス及びゼロ以外の周波数係数をエントロピーコード化する。解凍は圧縮の逆のプロセスである。
5.2.4.2 CMYKコントーンJPEG圧縮フォーマット
CMYKコントーン層は、インターリーブド・カラーJPEGバイト流(bytestream)に圧縮される。インターリービングは、プリンタにおける空間効率的解凍に必要であるが、デコーダを4組(すなわち、色チャンネル当たり1)ハフマンコード表ではなく、2組のハフマンコード表に制限する場合がある[非特許文献16]。明るさとクロミナンスを分離すると、明るさチャンネルは一方の組の表を共有することができ、クロミナンスチャンネルは他方の組を共有することが可能である。
表の共有又はクロミナンスのサブサンプリングのいずれかのために明るさ/クロミナンスの分離が必要と思われる場合、CMYをYCrCbに変換し、Cr及びCbについて妥当なサブサンプリングを行う。Kは明るさチャンネルとして処理され、サブサンプリングされない。
JPEGバイト流は完全かつ自己独立型である。JPEGバイト流は、量子化及びハフマンコード表を含む解凍に必要な全てのデータを有している。
6. メムジェットプリントヘッド
8インチメムジェットプリントヘッドは、2個の標準的な約10.2cm(4インチ)メムジェットプリントヘッドを並べて合体させた構成となっている。
その2個の約10.2cm(4インチ)プリントヘッドはiプリントで使用するように特定の方法で一体に結束されている。結束を行うには約10.2cm(4インチ)プリントヘッドについて理解しておく必要があることから、約10.2cm(4インチ)プリントヘッドの概観をここでは示してある。
6.1 約10.2cm(4インチ)プリントヘッドの構成
各約10.2cm(4インチ)プリントヘッドは8個のセグメントからなり、各セグメ
ントは長さ約1.3cm(1/2インチ)である。各セグメントは、ページの異なるセグメント上に2値のシアン、マゼンタ、黄色及び黒色のドットを印刷して最終画像を与える。
プリントヘッドが1600dpiでドットを印刷することから、各ドットは直径約22.5ミクロンであり、15.875ミクロンの間隔を有する。そこで各約1.3cm(1/2インチ)のセグメントが800ドットをプリントし、8つのセグメントは表8に示した位置に相当する。
Figure 0004621766
各セグメントは最終画像の800ドットを生成するが、各ドットは2値のシアン、マゼンタ、黄色及び黒色のインクの組合せによって表される。印刷は2値であることから、入力画像についてディザリング又はエラー拡散を行って、最良の結果を得るようにしなければならない。
各セグメントには3200のノズル、すなわち各800個のシアン、マゼンタ、黄色及び黒色のノズルを有する。約10.2cm(4インチ)プリントヘッドは、このようなセグメントを8個有することから合計で25600個のノズルを有する。
6.1.1 セグメント内のノズルのグループ化
一つのセグメント内にあるノズルは、物理的安定性ならびに印刷時の電力消費節減の理由からグループ化される。物理的安定性に関しては、計10個のノズルが同じインク貯留部を共有する。電力消費に関しては、グループ化を行って、低速印刷モード及び高速印刷モードを可能とする。
プリントヘッドは2種類の印刷速度をサポートしていることから、異なる製品形状で速度/電力消費のトレードオフを行うことが可能である。
低速印刷モードでは、128個のノズルが各約10.2cm(4インチ)プリントヘッドから同時に吐出される。吐出ノズルは間隔が最大となるようにして、16個のノズルが各セグメントから吐出されるようにする。25,600個のノズル全てを吐出させるには、128個のノズルの200の異なる組合せを吐出させなければならない。
高速印刷モードでは、256個のノズルが各約10.2cm(4インチ)プリントヘッドから同時に吐出される。吐出ノズルは間隔が最大となるようにして、32個のノズルが各セグメントから吐出されるようにする。25,600個のノズル全てを吐出させるには、256個のノズルの100の異なる組合せを吐出させなければならない。
低速モードでの電力消費は、高速モードでの消費の1/2である。しかしながら、ページを印刷するのに消費されるエネルギはいずれの場合も同じであることに留意されたい。
6.1.1.1 ノズル10個での1ポッドの形成
1個のポッド100は、共通のインク貯留部を共有する10個のノズル101からなる。5個のノズルで1列であり、5個で別の列となっている。各ノズルによって、15.875ミクロン格子上に隔たった直径22.5ミクロンのドットが形成される。図10には、吐出させなければならない順序に従って番号を施したノズル101を有する1個のポッド100の配置を示してある。
ノズルはその順序で吐出されることから、ノズルと印刷ページ上のドットとの物理的位置の関係は異なっている。一方の列からのノズルはページ上の一方の列からの偶数ドットを示し、他方の列のノズルはそのページで隣接する線からの奇数ドットを示す。図11には、負荷すべき順序に従って番号割り付けされたノズルを有する同じポッド100を示してある。
従って、ポッド内のノズルは1ドット幅だけ論理的に離間されている。ノズル間の正確な距離は、メムジェット吐出機構の特性によって決まる。プリントヘッドは、紙の流れに適合するよう設計された波形ノズルを用いて設計されている。
6.1.1.2 各色1個のポッドによる色ポッド(chromapod)の形成
各色1個のポッド、すなわちシアン121、マゼンタ122、黄色123及び黒色124を色ポッド125にグループ化する。色ポッドは異なる線上の同じ水平方向の10ドット1組の異なる色成分を表す。異なる色ポッド間の正確な距離はメムジェット動作パラメータによって決まり、メムジェット設計ごとに変動し得る。その距離は一定数のドット幅であると考えられることから、印刷時に考慮しなければならない。シアンノズルが印刷するドットは、マゼンタ、黄色及び黒色ノズルが印刷するものとは異なる線のものである。印刷アルゴリズムは、色間で約8ドット幅までの可変距離を許容するものでなければならない。図12には、1個の色ポッドを示してある。
6.1.1.3 5個の色ポッドによるポッドグループの構成
5個の色ポッド125を1個のポッドグループ126に編成する。各色ポッドは40個のノズルを有することから、各ポッドグループは200個のノズル、すなわちシアン50個、マゼンタ50個、黄色50個及び黒色50個のノズルを有する。配置は図13に示してあり、色ポッドには0〜4の番号が施してある。留意すべき点として、隣接する色ポッド間の距離は明瞭を期すために誇張してある。
6.1.1.4 2個のポッドグループによる位相グループの構成
2個のポッドグループ126を1個の位相グループ127に編成する。位相グループ内のノズルグループは所定の吐出位相時に同時に吐出されることから、位相グループという呼称を与えている(それについては以下の詳細に説明する)。2個のポッドグループからの位相グループの形成は専ら、2つのポッドグループイネーブル(PodgrouopEnable)線を介した低速印刷及び高速印刷のためである。
低速印刷時には、2つのポッドグループイネーブル線のうちの一方のみを所定の吐出パルスにセットすることから、2グループのうちの一方のポッドグループのみがノズルを吐出させる。高速印刷時には、両方のポッドグループイネーブル線をセットすることから、両方のポッドグループがノズルを吐出させる。結果的に、高速印刷では1回で2倍の数のノズルを吐出させることから、低速印刷は高速印刷の2倍の時間を必要とする。
図14には、位相グループの構成を示してある。隣接する位相グループ間の距離は、明瞭を期すために誇張してある。
6.1.1.5 2つの位相グループによる吐出グループの構成
2つの位相グループ127(位相グループA及び位相グループB)を1個の吐出グループ128に編成し、各セグメント128には4つの吐出グループがある。吐出グループは、それらが全て同時に同じノズルを吐出させることからその名称となっている。2つのイネーブル線すなわちAイネーブルとBイネーブルによって、異なる吐出位相として独立に位相グループAノズルと位相グループBノズルの吐出が可能となる。配置を図15に示してある。隣接するグループ間の距離は明瞭を期して誇張してある。
6.1.1.6 ノズルグループ化の要約
表9は、プリントヘッドにおけるノズルグループ化の要約を示す。
Figure 0004621766
6.1.2 ロード及び印刷サイクル
単一の10.2cm(4インチ)プリントヘッドは合計で25,600個のノズルを有する。印刷サイクルは、印刷されるべき情報に依存してこれらのノズルの全てを吐出する段階を備える。ロードサイクルは、引き続く印刷サイクルの間に印刷されるべき情報をプリントヘッドにロードする段階を有する。
各ノズルは、印刷サイクルの間において該ノズルが吐出するか否かを決定する関連NozzleEnableビットを有する。(ノズル毎に1個の)該NozzleEnableビットは、一グループのシフトレジスタを介してロードされる。
論理的に、セグメント毎(ひとつのカラー毎に1個の)に、各々が800深度(deep)の4個のシフトレジスタが在る。所定のカラーに対してシフトレジスタに各ビットがシフトされると、各ビットは交番のパルスにて上側及び下側ノズルに導向される。内部的には、各800深度シフトレジスタは2個の400深度シフトレジスタから成り、一方は上側ノズル用であり他方が下側ノズル用である。上記の交番的な内部レジスタに対して、交番的なビットがシフトされる。但し、外部インターフェースに関する限り、単一の800深度シフトレジスタが在る。
全てのシフトレジスタが完全にロードされた(800個のロード・パルス)なら、全てのビットが適切なNozzleEnableビットへと平行して転送される。これは、25,600ビットの単一並列転送に相当する。上記転送が生じると、上記印刷サイクルが開始する。上記印刷サイクルの最後において全てのNozzleEnableビットに対する並列ロードが生ずる限りにおいて、上記印刷サイクル及びロードサイクルは同時に生
じ得る。
6.1.2.1 ロードサイクル
ロードサイクルは、プリントヘッド用シフトレジスタに対して次の印刷サイクルの各NozzleEnableビットをロードする段階に関する。
各セグメントは、シアン、マゼンタ、黄色及び黒色・シフトレジスタに直接的に関連付けられた4個の入力を有する。これらの入力は、CDataIn、MDataIn、YDataIn及びKDataInと称される。8個のセグメントが在ることから、10.2cm(4インチ)プリントヘッド毎に合計で32本のカラー入力ラインが在る。(全ての8個のセグメントで共有された)SRClockラインへの単一パルスにより、上記32ビットは適切な各シフトレジスタへと転送される。交互的パルスにより各ビットは夫々上記上側ノズル及び下側ノズルへと転送される。25,600個のノズルが在ることから、上記転送に対しては合計で800個のパルスが必要である。25,600ビットの全てが転送されたなら、共有されたPTransferライン上の単一パルスにより、各シフトレジスタからのデータは適切な各NozzleEnableビットへと並列転送される。
PTransfer上のパルスによる上記並列転送は、上記印刷サイクルが終了した後に生ぜねばならない。さもないと、印刷されつつあるラインに対するNozzleEnableビットは誤りとなる。
全ての8個のセグメントは単一のSRClockパルスによりロードされることから、一切の印刷プロセスは上記プリントヘッドに対する正しいシーケンスでデータを生成せねばならない。一例として、第1のSRClockパルスは次の印刷サイクルのドット0、800、1600、2400、3200、4000、4800及び5600に対するCMYKビットを転送する。第2のSRClockパルスは次の印刷サイクルのドット1、801、1601、2401、3201、4001、4801及び5601に対するCMYKビットを転送する。800個のSRClockパルスの後、上記PTransferパルスが与えられ得る。
奇数番目及び偶数番目のCMYK出力は、同一の印刷サイクル内において印刷されるが、同一の物理的出力ライン上には現れないことに注意することは重要である。上記プリントヘッド内において奇数番目及び偶数番目のノズルを物理的に分離すると共に、異なるカラー間を分離すると、それらは確実にページの別ライン上に各ドットを生成する。この相対的差異は、データをプリントヘッドにロードするときに考慮されねばならない。各ラインにおける実際の差異は、上記プリントヘッドに使用されるインクジェットの特性に依存する。上記差異は、変数D1 及びD2 により定義され、D1 は異なるカラーの各ノズル間の距離であり、D2 は同一カラーの各ノズル間の距離である。表10は、最初の4個のパルスに関してプリントヘッドのセグメントnに転送されるドットを示している。
Figure 0004621766
以下、全ての800個のパルスに対して同様である。
データは20MHzの最大速度でプリントヘッドにクロック入力され得るが、これは次ラインに対して40μs内に全データをロードするものである。
6.1.2.2 印刷サイクル
10.2cm(4インチ)プリントヘッドは25,600個のノズルを含む。それらの全てを一度に吐出させる電力の消費が多すぎ、インクの再充填及びノズル干渉に関して問題となる。故に、2種類の吐出モード、すなわち低速印刷モード及び高速印刷モードが定義される。
・低速印刷モードにおいては200個の位相があり、各位相は128個のノズルを吐出する。これは、セグメント毎の16個のノズルもしくは吐出グループ毎の4個のノズルに等しい。
・高速印刷モードにおいては100個の位相があり、各位相は256個のノズルを吐出する。これは、セグメント毎の32個のノズルもしくは吐出グループ毎の8個のノズルに等しい。
而して、所定の吐出パルス内に吐出されるべきノズルは、 ・3ビットのChromapodSelect(吐出グループからの5個のクロマポッドの内から1個を選択する)
・4ビットのNozzleSelect(ひとつのポッドからの10個のノズルの内の1個を選択する)
・2ビットのPodgroupEnableライン(吐出すべき0組、1組もしくは2組のポッドグループを選択する)
により決定される。
上記各PodgroupEnableラインのひとつがセットされたとき、ChromapodSelect及びNozzleSelectにより決定されるように特定されたポッドグループの4個のノズルのみが吐出される。上記各PodgroupEnableラインの両者がセットされたとき、上記ポッドグループの両者がそれらのノズルを吐出する。上記低速モードに対しては、2個の吐出パルスが必要とされ、それぞれ、PodgroupEnable=10及び01である。高速モードに対しては、唯一個の吐出パルスが必要とされ、PodgroupEnable=11である。
上記吐出パルスの存続時間は、AEnableライン及びBEnableラインにより与えられるが、これらのラインは夫々、全ての吐出グループからPhasegroupAノズル及びPhasegroupBノズルを吐出させる。吐出パルスの典型的な存続時間は1.3〜1.8μsである。パルスの存続時間は、(温度とインク特性とに依存する)インクの粘度と、上記プリントヘッドに対して利用可能な電力量とに依存する。温度変化を補償すべき上記プリントヘッドからのフィードバックの詳細に関しては、第6.1.3節を参照されたい。
上記AEnable及びBEnableは、各吐出パルスが重複し得るべく、別々のラインである。故に低速印刷サイクルの200個の位相は、100個のA位相及び100個のB位相から成り、実効的に100組の位相A及び位相Bを与える。同様に、高速印刷サイクルの100個の位相は50個のA位相及び50個のB位相から成り、実効的に50組の位相A及び位相Bを与える。
図16は、典型的な印刷サイクルの間におけるAEnableライン130及びBEnableライン131を示している。高速印刷においては、各々が2μsの50サイクルが在る一方、低速印刷では各々が2μsの100サイクルが在る。該図に示された如く、呼び値に関しては最小及び最大の半サイクル時間における僅かな変動は容認され得る。
高速印刷モードに対し、吐出順序は次の通りである。
・ChromapodSelect 0、NozzleSelect 0、PodgroupEnable 11(位相A及びB)
・ChromapodSelect 1、NozzleSelect 0、PodgroupEnable 11(位相A及びB)
・ChromapodSelect 2、NozzleSelect 0、PodgroupEnable 11(位相A及びB)
・ChromapodSelect 3、NozzleSelect 0、PodgroupEnable 11(位相A及びB)
・ChromapodSelect 4、NozzleSelect 0、PodgroupEnable 11(位相A及びB)
・ChromapodSelect 0、NozzleSelect 1、PodgroupEnable 11(位相A及びB)
・....
・ChromapodSelect 3、NozzleSelect 9、PodgroupEnable 11(位相A及びB)
・ChromapodSelect 4、NozzleSelect 9、PodgroupEnable 11(位相A及びB)
低速印刷モードに対し、吐出順序は同様である。PodgroupEnableが11である高速モードの各位相に対し、PodgroupEnable=01及び10の2つの位相は次の様に置換される。
・ChromapodSelect 0、NozzleSelect 0、PodgroupEnable 01(位相A及びB)
・ChromapodSelect 0、NozzleSelect 0、PodgroupEnable 10(位相A及びB)
・ChromapodSelect 1、NozzleSelect 0、PodgroupEnable 01(位相A及びB)
・ChromapodSelect 1、NozzleSelect 0、PodgroupEnable 10(位相A及びB)
・...
・ChromapodSelect 3、NozzleSelect 9、PodgroupEnable 01(位相A及びB)
・ChromapodSelect 3、NozzleSelect 9、PodgroupEnable 10(位相A及びB)
・ChromapodSelect 4、NozzleSelect 9、PodgroupEnable 01(位相A及びB)
・ChromapodSelect 4、NozzleSelect 9、PodgroupEnable 10(位相A及びB)
ノズルが吐出するとき、再充填には約100μsを要する。そのノズルは該再充填時間が経過するまで吐出され得ない。このため、最高印刷速度は100μs/ラインに制限される。高速印刷モードにおいて1ラインを印刷する時間は100μsであることから、1つのラインのノズルの吐出から次のラインのノズル吐出までの時間は再充填時間と整合する。上記低速印刷モードはこれより低速であることから、これもまた容認可能である。
ノズルを吐出すると、そのノズルのポッドの共通インクリザーバ内における限定時間内
での音響的摂動も引き起こされる。この摂動は、同一のポッド内における他のノズルの吐出と干渉する可能性がある。故にポッド内の各ノズルの吐出は、可及的に長時間に亙り相互からオフセットされねばならない。故に本発明では、ひとつのクロマポッド(1つのカラー毎に1個のノズル)からの4個のノズルを吐出してから、そのポッドグループ内における次のクロマポッドへと移動する。
低速印刷モードにおいて各ポッドグループは別々に吐出される。故に両ポッドグループ内における5個のクロマポッドは第1クロマポッドが再び吐出される前に全て吐出されねばならず、合計で10×2μサイクルとなる。その結果、各ポッドは20μs毎に1度吐出される。
高速印刷モードにおいて各ポッドグループは一緒に吐出される。故に単一のポッドグループ内の5個のクロマポッドは第1クロマポッドが再び吐出される前に全て吐出されるべきことから、合計で5×2μサイクルとなる。その結果、各ポッドは10μs毎に1度吐出される。
上記インクチャネルは300ミクロン長であると共にインク内の音速は約1,500m/sであることから、インクチャネルの共振周波数は2.5MHzである。故に、音響パルスの減衰に対して低速モードは50個の共振サイクルを許容し、高速モードは25個の共振サイクルを許容する。その結果、いずれの場合においても一切の音響的干渉は最小である。
6.1.3 プリントヘッドからのフィードバック
上記プリントヘッドは(8個のセグメントから集中された)数本のフィードバックのラインを生成する。これらのフィードバック用ラインは、各吐出パルスのタイミングを調節すべく使用される。各セグメントは同一のフィードバックを生成するが、全てのセグメントからのフィードバックは同一のトライステートバスラインを共有する。その結果、一度に1個のセグメントのみがフィードバックを提供し得る。
シアン上のデータとANDされたSenseSegSelectライン上のパルスは、どのセグメントがフィードバックを提供するかを選択する。次のSenseSegSelectパルスまで、上記フィードバック検知ラインは選択されたセグメントに由来する。各フィードバック検知ラインは次の通りである。
・Tsenseは上記コントローラに対し、プリントヘッドの温度を知らせる。温度はインクの粘度に影響するので、これにより上記コントローラはパルス吐出のタイミングを調節し得る。
・Vsenseはコントローラに対し、上記アクチュエータが利用し得る電圧を知らせる。これによりコントローラはパルス幅を調節することにより、低電圧バッテリもしくは高電圧源に対処し得る。
・Rsenseはコントローラに対し、アクチュエータヒータの抵抗率(単位面積当たりのオーム値)を知らせる。これによりコントローラはパルス幅を調節し、上記ヒータの抵抗率に関わりなく一定エネルギを維持し得る。
・Wsenseはコントローラに対し、リソグラフ及びエッチングの変動により±5%まで変化し得るヒータの重要部分の幅を知らせる。これによりコントローラは、パルス幅を適切に調節し得る。
6.1.4 予備加熱サイクル
上記印刷プロセスは平衡温度に留まるという強い傾向を有する。印刷された写真の第1の部分が一貫したドット・サイズを有するのを確かなものとすべく、上記平衡温度は一切
のドットを印刷する前に満足されねばならない。これは予備加熱サイクルにより達成される。
該予備加熱サイクルは、全てのノズルに対する1(すなわち全てのノズルの吐出を設定)による単一のロードサイクルと、各ノズルに対する多数の短時間吐出パルスとを有する。パルスの存続時間は、インク滴を吐出するには不十分であり乍らも、インクを加熱するには十分とされねばならない。故に各ノズルに対しては、標準的な印刷サイクルと同一のシーケンスで反復される全部で約200個のパルスが必要とされる。
予備加熱モードの間におけるフィードバックはTsenseにより提供されると共に、(周囲よりも約30℃高い)平衡温度に到達するまで継続される。予備加熱モードの存続時間は約50ミリ秒であり、かつインク組成に依存する。
予備加熱は、各印刷ジョブの前に実施される。予備加熱はデータがプリンタに転送されている間に行われるため、これが性能に影響することは無い。
6.1.5 清掃サイクル
各ノズルが詰まる可能性を減少すべく、各印刷ジョブの前に清掃サイクルが行われ得る。各ノズルは、吸収スポンジに向けて多数回吐出させられる。
該浄化サイクルは、全てのノズルに対する1(すなわち全てのノズルの吐出を設定)による単一のロードサイクルと、各ノズルに対する多数の吐出パルスとを有する。各ノズルは、標準的印刷サイクルと同一のノズル吐出シーケンスにより清掃される。各ノズルが吐出される回数は、インク組成と、それまでのプリンタのアイドル時間とに依存する。予備加熱と同様に、清掃サイクルはプリンタの性能には影響しない。
6.1.6 プリントヘッドインターフェースの概要
単一の10.2cm(4インチ)プリントヘッドは表11に示された接続を有する。
Figure 0004621766
10.2cm(4インチ)プリントヘッドの内部的に、各セグメントは表12に示された結合パッドへの接続を有する。
Figure 0004621766
6.2 20.3cm(8インチ)プリントヘッドの考察
8インチのメムジェットプリントヘッドは、2個の10.2cm(4インチ)プリントヘッドを物理的に結合したにすぎない。制御チップからのピンの本数が減少されると共に2個のプリントヘッドが同時に印刷を行い得るべく、各プリントヘッドは相互に結線されて多くの共通接続を共有する。以下においては、上記に関する多くの詳細事項を考察せねばならない。
6.2.1 接続
2個のプリントヘッドからのノズルの吐出は同時に生ずることから、ChromapodSelect、NozzleSelect、AEnable及びBEnableの各ラインは共有される。各プリントヘッドにデータをロードするために、CDataIn、MDataIn、YDataIn及びKDataInの32ラインは共有されると共に2本の異なるSRClockラインは、2個のプリントヘッドのいずれに対してロードされるかを決定すべく使用される。ロードされたデータを両プリントヘッドに対するNozzleEnableビットに転送するために、単一のPTransferパルスが使用される。同様に、Tsense、Vsense、Rsense及びWsenseの各ラインが共有され、2本のSenseEnableラインは2個のプリントヘッド間を区別する。
故に上記2個の10.2cm(4インチ)プリントヘッドは、SRClock及びSenseEnableを除き、全ての接続を共有する。これらの2本の接続は、各プリント
ヘッドに対して1度ずつ接続される様に反復される。此処で、実際の接続は表13に示す。
Figure 0004621766
6.2.2 タイミング
2個の10.2cm(4インチ)プリントヘッドを結合して適切な接続を結線すると、8インチ幅の画像が4インチ幅の画像と同様に高速に印刷され得る。但し次のラインが印刷される前に、2個のプリントヘッドに対して転送する2倍のデータが在る。継続するた
めには、印刷されるべき出力画像に対する所望速度に依存して適切な速度でデータが生成かつ転送されねばならない。
6.2.2.1 例
一例として、2秒で20.3×30.48cm(8”×12”)のページを印刷するタイミングを考察する。このページを2秒で印刷するために、20.3cm(8インチ)プリントヘッドは19,200ライン(12×1600)を印刷せねばならない。20,000ラインを2秒で切り上げると、100μsのライン時間となる。単一の印刷サイクル及び単一のロードサイクルの両者がこの時間内に終了せねばならない。これに加え、プリントヘッドの外部の物理的プロセスは用紙を適切な量だけ移動せねばならない。
印刷の観点からは、上記高速印刷モードによれば10.2cm(4インチ)プリントヘッドはライン全体を100μsで印刷し得る。故に双方の10.2cm(4インチ)プリントヘッドは、高速印刷モードで走行して同時に印刷せねばならない。故に、1個の吐出パルス毎に512個のノズルが吐出することにより、指定時間内において20.3cm(8インチ)のラインの印刷が可能とされる。
上記100μのライン時間内に、双方の10.2cm(4インチ)プリントヘッドに対して800個のSRClockパルス(各クロック・パルスは32ビットを転送する)も生ぜねばならない。もし両プリントヘッドが同時にロードされるのであれば(64本のデータライン)、ひとつのSRClockパルスの長さは100μs/800=125ナノ秒を超えることはできず、プリントヘッドは8MHzでクロック供給されるべきことを示している。もし2個のプリントヘッドが一度にロードされるのであれば(32本の共有データライン)、SRClockパルスの長さは100μs/1600=62.5ナノ秒を超えることはできない。故に上記プリントヘッドは、16MHzでクロック供給されねばならない。いずれの場合においても、(51,200個のノズルの各々に対する)各ビット値を計算する平均時間は100μs/51,200=2ナノ秒を超えてはならない。これは、ドット生成器が次の速度のいずれかで作動することを要する。
・サイクル毎に1ビット(ドット)を生成する500MHz、
・サイクル毎に2ビット(ドット)を生成する250MHz、
・サイクル毎に4ビット(ドット)を生成する125MHz。
7 印刷コントローラ
7.1 印刷コントローラの構造
図8に示された如く、上記印刷コントローラはiPrint中央プロセッサ(ICP)チップ83、64MビットRDRAM82及びマスタQAチップ85から成る。
また、図17に示された如くICP 83は、汎用プロセッサ139と、プロセッサ・バスを介して上記プロセッサにより制御される一グループの目的別機能ユニットとを含む。3個の機能ユニットのみが標準的でなく、それは、EDRLエキスパンダ140、ハーフトーン化装置/コンポジタ(halftoner/compositor)141、及び、上記メムジェットプリントヘッドを制御するプリントヘッドインターフェース142である。
上記プロセッサ上で作動するソフトウェアは、各ページを受信、展開(expand)及び印刷する種々の機能ユニットを連携させる。これについては、次の節で記載する。
上記ICPの種々の機能ユニットについては続く各節で記載する。
7.2 ページの展開及び印刷
ページの展開及び印刷プロセスは以下の通りである。ページ記述(page desc
ription)は、USBインターフェース146を介して上記ホストから受信されて、メインメモリ内に記憶される。メインメモリの6MBがページ記憶に割り当てられる。これは、各々が3MBを超えない2頁、又は、6MBまでの1頁を保持し得る。もし上記ホストが3MBを超えないページを生成するならば上記プリンタはストリーミングモードで作動し、すなわち、プリンタは1ページを印刷し乍ら次のページを受信する。ホストが3MBを超えるページを生成するならば上記プリンタは単一ページモード、すなわちプリンタは各ページを受信し、次のページを受信する前に該ページを印刷して作動する。ホストが6MBを超えるページを生成したならば、それらのページはプリンタにより拒否される。実用的に、上記プリンタドライバはこの状態が生ずるのを防止する。
1ページは2つの部分、すなわち、2値(bi−level)黒色層と、コントーン層(contone layer)とから成る。これらの層は異なるフォーマットで圧縮され、すなわち2値黒色層はEDRLフォーマットで且つコントーン層はJPEGフォーマットで圧縮される。ページ展開の第1段階は、2つの層を並列に解凍する段階から成る。上記2値層は、工程16においてEDRLエキスパンダ140により解凍され、上記コントーン層は工程14にてJPEGデコーダ143により解凍される。
ページ展開の第2段階は、上記コントーンCMYKデータを2値CMYKにハーフトーン化(halftone)する工程15と、次に、上記2値黒色層を記2値CMYK層に合成する工程17とから成る。上記ハーフトーン化及び合成は、ハーフトーン化装置/コンポジタ141により実行される。
最後に上記の合成された2値CMYKイメージは、工程18にて上記メムジェットプリントヘッドを制御するプリントヘッドインターフェースユニット142により印刷される。
上記メムジェットプリントヘッドは高速で印刷することから、用紙は上記プリントヘッドを一定速度で通過して移動せねばならない。プリントヘッドに対してデータが十分に高速に供給されずに用紙が停止されると、視認可能な印刷の不整合が生ずる。故に、要求される速度で上記プリントヘッドインターフェースに対して2値CMYKデータを転送することが重要である。
完全に展開された1600dpiの2値CMYKページは、114.3MBのサイズを有する。展開されたページをプリンタメモリに記憶するのは非実用的であることから、各ページは印刷の間に即時に展開される。故に、ページの展開及び印刷の種々の過程はパイプライン化される。ページの展開及び印刷のデータフローは、表14に記述される。メインメモリへの、又はメインメモリからの174MB/sの集合体トラフィックは十分に、Rambusなどの現在の技術の能力内である。
Figure 0004621766
各段階は、メインメモリにおける共有FIFOを介して次の過程と通信する。各FIFOは各ラインへと構成され、各FIFOの最小サイズ(ライン数)は、生成側の出力ウィンドウ(ライン数)と消費側の入力ウィンドウ(ライン数)に対処すべく設計される。過程間のメインメモリバッファは表15に記述される。バッファ空間を総計で6.3MB使用すると、プログラムコード及びスクラッチメモリに対しては(利用可能な8MBの内の)1.7MBが残る。
Figure 0004621766
各FIFOを含む全体的なデータフローは図18に示されている。
コントーンページの解凍は、JPEGデコーダ143により実行される。2値ページ解凍はEDRLエキスパンダ140により実行される。ハーフトーン化及び合成は、ハーフトーン化装置/コンポジタ141により実行される。これらの機能ユニットは次の各節で記載する。
7.2.1 DMA方法
各機能ユニットは、一個以上のオンチップ入力及び/又は出力FIFOを備える。各FIFOには、マルチチャネルDMAコントローラ144内の別個のチャネルが割り当てられる。DMAコントローラ144は2重アドレス転送では無く単一アドレス転送を処理することから、各チャネルに対して別々の要求/受取通知インターフェースを提供する。
各機能ユニットは、入力FIFOが消尽するか、又は出力FIFOが満たされると常に適切に停止する。
プロセッサ139は、各DMA転送をプログラムする。DMAコントローラ144は、そのチャネルに接続された機能ユニットからの要求時に、転送の各ワードに対するアドレスを生成する。その機能ユニットは、自身の要求がDMAコントローラ144により受取通知されたときに上記ワードをデータバス145上に/からラッチする。上記転送が完了したときにDMAコントローラ144はプロセッサ139に割り込みを掛けることから、プロセッサ139は同一チャネル上で別の転送を適時な様式でプログラムし得る。
一般的に、対応するメインメモリFIFOが利用可能となれば(すなわち、読取りのための空でない状態、書込みのための非充填状態)、プロセッサ139は直ちにチャネル上の別の転送をプログラムする。
DMAコントローラ144で実施されるチャネルサービスの細分性は、或る程度メインメモリの待ち時間に依存する。
7.2.2 EDRLエキスパンダ
図19に示されたEDRLエキスパンダユニット(EEU)140は、EDRL圧縮された2値画像を解凍する。
上記EEUへの入力は、EDRLビットストリーム150である。上記EEUからの出力は、展開された2値画像の解像度から、整数の基準倍率により、1600dpiへと水平方向に換算された一グループの2値画像ライン151である。
一旦開始されると、上記EEUはEDRLビットストリーム内のend−of−pageコードを検出するまで、又は該EEUの制御レジスタにより明示的に停止されるまで、動作を続行する。
上記EEUは、ビットストリームをデコードすべく明示的ページ幅に依存する。この明示的ページ幅は、上記EEUを開始する前にページ幅レジスタ152に書き込まれねばならない。
展開された2値画像の換算は、明示的基準倍率に頼る。該明示的基準倍率は、上記EEUを開始する前に基準倍率レジスタ153に書込まれねばならない。
Figure 0004621766
上記EDRL圧縮フォーマットは、5.2.3節に記述されている。該フォーマットは、その各エッジに関する2値画像を表現する。各ラインにおける各エッジは、先行ラインにおけるエッジに対して、又は、同一ラインにおける先行エッジに対してコード化される
。如何にしてコード化されるかに関わらず各エッジは最終的に、同一ラインにおける先行エッジからの該エッジの距離へとデコードされる。この距離すなわちランレングスはその後、画像の対応部分を表現する1の各ビットもしくはゼロの各ビットのストリングへとデコードされる。解凍アルゴリズムもまた、5.2.3.2節に定義されている。
上記EEUは、ビットストリームデコーダ154、状態マシン155、エッジ計算ロジック156、2個のランレングスデコーダ157及び158、及び、ランレングス(再)エンコーダ159から成る。
ビットストリームデコーダ154は、ビットストリームからのエントロピーコード化(entropy−coded)されたコードワードをデコードし、それを状態マシン155へと受け渡す。状態マシン155はビットストリームデコーダ154に対して上記コードワードのサイズを戻すことから、デコーダ154は次のコードワードへと進み得る。エッジ生成コードの場合、状態マシン155は上記ビットストリームデコーダを使用して、そのビットストリームからの対応ランレングスを抽出する。上記状態マシンは、表18で定義された如く上記エッジ計算ロジック及びランレングスのデコード/コード化を制御する。
エッジ計算ロジックは極めて簡易である。先行する(基準)ライン及び現在の(コード化中)ラインの現在エッジオフセットは、夫々、基準エッジレジスタ160及びエッジレジスタ161に保持される。エッジ生成コードに関連するランレングスは上記ランレングスデコーダへと直接的に出力され、上記現在エッジへと加算される。デルタコードは、上記基準エッジに対して関連デルタを加算し、且つ、現在のエッジを減算することによりランレングスへと書き換えられる。生成されたランレングスは上記ランレングスデコーダへと出力されると共に、上記現在エッジに加算される。次のランレングスはランレングスエンコーダ159から抽出されると共に、基準エッジ160へと加算される。エッジ消去(kill
edge)コードによれば単に、現在基準エッジがスキップされるだけである。再び、次のランレングスが上記ランレングスエンコーダから抽出され、上記基準エッジに加算される。
エッジ計算ロジック156がエッジを表すランレングスを生成する毎に、該ランレングスは上記ランレングスデコーダへと受け渡される。上記ランレングスデコーダはランをデコードする一方、上記状態マシンへの停止信号を生成する。ランレングスデコーダ157は上記エッジ計算ロジックよりも低速であることから、ランレングスデコーダ157を結合解除(decouple)する点は多くない。展開されたラインは、20.3cm(8インチ)800dpiライン(800バイト)を保持する上で十分に大きいラインバッファ162に蓄積される。
工程163において、先行して展開されたラインもまたバッファされる。それは、現在ラインのデコードに対する基準として作用する。先行ラインは、要求があると再コード化される。これは、先行ラインのデコード済ランレングスをバッファするよりも安価である、と言うのも、最悪の場合は各ピクセルに対して1本の13ビットランレングス(1600dpiで20KB)だからである。ランレングスエンコーダ159はランをコード化する一方、上記状態マシンに対して停止信号を生成する。上記ランレングスエンコーダはページ幅152を使用してend−of−lineを検出する。(現在)ラインバッファ162及び先行ラインバッファ163は、単一のFIFOとして連結かつ管理され、ランレングスエンコーダ159を簡素化する。
ランレングスデコーダ158は、8”1600dpiライン(1600バイト)を保持
する上で十分な大きさを有するラインバッファ164へ出力ランレングスをデコードする。この出力ランレングスデコーダに受け渡されたランレングスは基準倍率153と乗算されることから、このデコーダは1600dpiのラインを生成する。そのラインは、出力ピクセルFIFO165を介して基準倍率倍されて出力される。これにより、必要な垂直方向の換算が簡素なライン復元で達成される。上記EEUは、その画像スケーリングに組み込まれたエッジスムージングと共に設計され得る。テンプレートマッチングに基づく簡素なスムージング方式は極めて効果的であり得る[非特許文献10]。これは、低解像度ランレングスデコーダとスムーズ換算ユニットとの間にマルチラインバッファを要するが、高解像度ランレングスデコーダを排除するものである。
図20に示されたEDRLストリームデコーダ154は、入力ビットストリーム中のエントロピーコード化EDRLコードワードをデコードする。該デコーダ154は、ビットストリーム内のコードワード境界に左(最上位)エッジが常に整列される16ビットバレルシフタ168を介して視認される2バイト入力バッファ167を使用する。バレルシフタ168に接続されたデコーダ169は表17に従いコードワードをデコードし、それを対応コードと共に状態マシン155へと供給する。
Figure 0004621766
その結果、状態マシン155はそのコードの長さを出力する。これは、工程170において現在のコードワードビットオフセットに対してmodulo−8にて加算され、次のコードワードビットオフセットを生成する。このビットオフセットはバレルシフタ168を制御する。上記コードワードビットオフセットが循環(wrap)したなら、キャリービットは入力FIFO 166からの次のバイトのラッチを制御する。このとき、バイト2はバイト1へとラッチされ上記FIFO出力はバイト2へとラッチされる。それは入力バッファを埋めるために長さ8の2サイクルを要する。これは、状態マシン155の状態を開始することで処理される。
7.2.2.2 EDRLエキスパンダ状態マシン
EDRLエキスパンダ状態マシン155はEDRLストリームデコーダ154により供給された各コードに応じてエッジ計算及びランレングス展開ロジックを制御する。該マシンは、現在コードワードの長さを上記EDRLストリームデコーダに供給し、且つ、現在のデルタコードに関連するデルタ値を上記エッジ計算ロジックに供給する。上記状態マシンはまた、上記制御レジスタからの開始及び停止制御信号と、上記エッジ計算ロジックからのend−of−line(EOL)信号とに対して応答する。
上記状態マシンはまた、エッジ生成コードに関連するマルチサイクルフェッチも制御す
る。
Figure 0004621766
7.2.2.3 ランレングスデコーダ
図21に示されたランレングスデコーダ157/158はランレングスを、出力ストリームにおける対応長さの1の各ビットもしくはゼロの各ビットのシーケンスへと展開する。ラインの最初のランは白色(色0)と想定される。各ランは、その先行ランの逆の色であると想定される。最初のランが実際に黒色(色1)であれば、それはゼロ長さの白色ランにより先行されねばならない。上記ランレングスデコーダは、現在の色を内部的に追尾する。
上記ランレングスデコーダは、クロック毎に上記出力ストリームに対して最大で8ビッ
トを付加する。各ランレングスは典型的に8の整数倍ではないことから、画像における最初のラン以外のランは、一般的にバイト整列されない。上記ランデコーダは、現在において構築されつつあるバイト内で利用可能なビット数を、バイト空間レジスタ180内に維持する。これは、デコードの開始時において、且つ、バイト毎の出力時に、8へと初期化される。
上記デコーダは、“次のラン”ラインがランレングスレジスタ181に非ゼロ値をラッチすると直ちに、各ビットのランを出力する。上記デコーダは、上記ランレングスレジスタがゼロになったときに実効的に停止する。
現状色の所定数のビットは、クロック毎に出力バイトレジスタ182へとシフトされる。現状色は、1ビットカラーレジスタ183に維持される。実際に出力されるビットの個数は、ランレングス内に残置されたビット数と、出力バイト内に残置されたスペアビットの個数とにより制限される。出力されるビットの個数は上記ランレングス及びバイト空間から減算される。ランレングスがゼロになるときにそれは完全にデコードされているが、そのランの後部ビット(trailing bits)は依然として上記出力バイトレジスタ内に在り、出力を未決とする。上記バイト空間がゼロになったとき、上記出力バイトは一杯であり、上記出力ストリームに付加される。
16ビットバレルシフタ184、出力バイトレジスタ182及びカラーレジスタ183は協働して8ビットシフトレジスタを実現するが、該8ビットシフトレジスタは、カラーを並列入力としてクロック毎に複数ビット位置だけシフトされ得る。
ラインの開始時に上記ランレングスデコーダをリセットすべく、外部リセットラインが使用される。また、新ランレングスのデコードを要求すべく外部“次のラン”ラインが使用される。それに対しては、外部ランレングスラインが伴う。上記“次のラン”ラインは、resetラインと同一のクロックでセットされてはならない。“次のラン”は現状色を反転することから、その色のリセットは該色ーをゼロでは無く1にセットする。外部flushラインは、もし不完全であればランの最後のバイトをフラッシュ(flush)すべく使用される。それは、ライン毎に基づき使用されることでバイト整列されたラインを生成し、又は、画像に基づき使用されることでバイト整列された画像を生成する。
外部readyラインは、上記ランレングスデコーダがランレングスをデコードする準備ができたか否かを示す。それは、上記外部ロジックを停止すべく使用され得る。
7.2.2.4 ランレングスエンコーダ
図22に示されたランレングスエンコーダ159は、上記入力ストリームにおけるゼロもしくは1のビットのランを検出する。ラインの最初のランはホワイト(カラー0)と想定される。各ランは、その先行ランの逆のカラーであると想定される。最初のランが実際に黒色(カラー1)であれば、上記ランレングスエンコーダはそのラインの最初にてゼロ長さのホワイトランを生成する。上記ランレングスデコーダは、現在のカラーを内部的に追尾する。
上記ランレングスエンコーダは、クロック毎に上記入力ストリームから最大で8ビットを読取る。上記ランレングスエンコーダは、ビットストリーム内の現在位置に左(最上位)エッジが常に整列される16ビットバレルシフタ191を介して視認される2バイト入力バッファ190を使用する。上記バレルシフタに接続されたエンコーダ192は、表19に従い8ビット(部分的)ランレングスをコード化する。エンコーダ192は現状色を使用し、適切な色のランを認識する。
上記8ビットランレングスエンコーダにより生成された8ビットランレングスは、ランレングスレジスタ193内の値に加算される。上記8ビットランレングスエンコーダが現在ランの最後を認識したとき、該8ビットランレングスエンコーダはreadyレジスタ194によりラッチされるend−of−run信号を生成する。readyレジスタ194の出力は、上記エンコーダがランレングスレジスタ193内に蓄積された現在ランレングスのコード化を完了したことを表す。readyレジスタ194の出力は、8ビットランレングスエンコーダ192を停止するためにも使用される。停止されたときに8ビットランレングスエンコーダ192はゼロ長さラン及びゼロend−of−run信号を出力し、ランレングスエンコーダ全体を実効的に停止する。
Figure 0004621766
8ビットランレングスエンコーダ192の出力は、残存ページ幅により制限される。実際の8ビットランレングスは、残存ページ幅から減算されると共に、工程195にて、バレルシフタ191を制御してバイトストリーム入力にクロック供給すべく使用されるmodulo−8ビット位置に加算される。
上記外部リセットラインは、1ラインの開始時に上記ランレングスエンコーダをリセットすべく使用される。それは現状色をリセットすると共に、ページ幅をページ幅レジスタへとラッチする。上記外部“次のラン”ラインは、上記ランレングスエンコーダから別のランレングスを要求すべく使用される。それは現状色を反転すると共に、上記ランレングスレジスタ及びreadyレジスタをリセットする。上記外部flushラインは、もし不完全であれば、そのランの最終バイトをフラッシュすべく使用される。それは、ライン毎に基づき使用されることでバイト整列されたラインを処理し、又は、画像に基づき使用されることでバイト整列された画像を処理する。
外部readyラインは、上記ランレングスエンコーダがランレングスをコード化する準備ができると共に現在ランレングスがランレングスライン上で利用可能であることを示す。それは、上記外部ロジックを停止すべく使用され得る。
7.2.3 JPEGデコーダ
図23に示されたJPEGデコーダ143は、JPEG圧縮されたCMYKコントーン画像を解凍する。
上記JPEGデコーダへの入力は、JPEGビットストリームである。上記JPEGデコーダからの出力は、1グループのコントーンCMYK画像ラインである。
解凍するとき、上記JPEGデコーダはその出力を8×8ピクセルブロックの形態で書込む。これらのブロックは、コーダに緊密に連結されたページ幅×8ストリップバッファを介して全幅ラインに変換される。このためには67KBのバッファが必要とされる。本発明ではこの代わりに、図23に示された如く、バスアクセスが共有された8個の並列ピクセルFIFOと、対応する8個のDMAチャネルとを使用する。
7.2.4 ハーフトーン化装置/コンポジタ
図24に示されているハーフトーン化装置/コンポジタユニット(HCU)141は、コントーンCMYK層を2値CMYKにハーフトーン化する機能及びハーフトーン化されたコントーン層の上に黒色層を合成する機能を兼ねている。
HCUに対する入力は、展開された267ppiのCMYKコントーン層200及び展開された1600dpiの黒色層201である。HCUからの出力は、1600dpiの2値CMYK画像ライン202のセットである。
一旦、始動すると、HCUは、ページ終了条件を検出するまで、又は制御レジスタを介して明示的に停止させられるまで続行する。
HCUは、指定された幅及び長さのドットページを生成する。幅及び長さは、HCUの始動に先立ち、ページ幅レジスタ及びページ長レジスタに書込まれなくてはならない。ページ幅はプリントヘッド171の幅に対応する。ページ長は、目標ページの長さに対応する。
HCUは、ページ幅との関係において指定された左右マージンの間で目標ページを生成する。左右マージンの位置は、HCUを始動するに先立ち左マージンレジスタ及び右マージンレジスタに書込まれなくてはならない。左マージンから右マージンまでの距離は、目標ページ幅に対応する。
HCUは、指定された黒色172及びコントーン173ページ幅に従って黒色及びコントーンデータを消費する。これらのページ幅は、HCUの始動に先立ち、黒色ページ幅及びコントーンページ幅レジスタに書込まれなくてはならない。HCUは、黒色及びコントーンデータを目標ページ幅174にクリップする。こうして、黒色及びコントーンページ幅は、入力FIFOレベルで何らかの特別な行の終了論理を必要とすることなく目標ページ幅を上回ることができるようになる。
ページ幅171、黒色ページ幅172及びコントーンページ幅173とマージンとの間の関係は、図25に示されている。
HCUは、指定された基準倍率に基づいて水平方向及び垂直方向の両方向でコントーンデータをプリンタ解像度に合わせて拡縮する。この基準倍率は、HCUを始動させる前に、コントーン基準倍率レジスタに書込まれなくてはならない。
Figure 0004621766
HCUによって生成されたデータのコンシューマは、プリントヘッドインターフェースである。プリントヘッドインターフェースは、平面フォーマット(planar format)、すなわち色平面が分離された状態における2値CMYK画像データを必要とする。さらに、プリントヘッドインターフェースは、偶数及び奇数の画素が分離されていることも必要とする。従って、HCUの出力段階は、8つ、すなわち偶数シアン、奇数シアン、偶数マゼンタ、奇数マゼンタ、偶数黄色、奇数黄色、偶数黒色及び奇数黒色に各々1つずつの平行な画素FIFOを使用する。
入力コントーンCMYK FIFOは、フル8KBラインバッファである。ラインは、ラインの複製を介して垂直方向の拡大を実施するためコントーン基準倍率回だけ使用される。ラインの最終使用の開始まで、FIFO書込みアドレスラッピングは無効化される。1つの代替案は、メモリトラフィックを65MB/秒だけ増大させるとともに、一方オンチップ8KBラインバッファは必要とせずに、メインメモリからコントーン基準倍率回だけそのラインを読取ることである。
7.2.4.1 多重閾値ディザ
汎用256層ディザボリュームは、異なる強度レベルを非干渉化させることにより、ディザセル設計において大きな柔軟性を与える。汎用ディザボリュームは大きいものであり得、例えば64×64×256ディザボリュームは128KBのサイズをもつ。同様に、各色成分がこのボリュームからの異なるビットの検索(retrieval)を必要とすることから、これらのボリュームのアクセス効率は低い。実際には、ディザボリュームの各層を完全に非干渉化させる必要は全くない。ボリュームの各ドット列は、256の分離したビットではなくむしろ固定された閾値セットとして実現することが可能である。例えば3つの8ビット閾値を使用すると、24ビットしか消費されない。ここでn個の閾値がn+1個の強度間隔を定義づけ、これらの間隔内で対応するディザセルの場所が交互にセットされないか、又はセットされた状態となる。ディザされているコントーン画素値は、n+1個の間隔の1つを一意的に選択し、こうして、対応する出力ドットの値が決定され
る。
3重閾値64×64×3×8ビット(12KB)のディザボリュームを用いてコントーンデータをディザリングする。これら3つの閾値は、1サイクル内でディザセルROMから検索され得る適切な24ビット値を形成する。色平面間でディザセルの位置合わせが望まれる場合には、同じ3重閾値を1回検索し、各色成分をディザリングするために使用することが可能である。ディザセルの位置合わせが望まれない場合には、ディザセルを4つのサブセルに分割し、1回のサイクルで4つの異なる3重閾値を並行して検索可能である別々にアドレス指定可能な4個のROMの中にこれらを記憶することが可能である。図26に示されたアドレス指定スキームを用いて、4つの色平面は、互いから32ドットの垂直方向及び/又は水平方向のオフセットにおいて、同じディザセルを共有する。
多重閾値ディザ203は図26に示されている。3重閾値ユニット204は、3重閾値及び強度値をインターバルへ、そこから1ビット又はゼロビットへと変換する。3重閾値処理規則は表21に示されている。対応する論理208は図27に示されている。
ここで図26をさらに詳しく参照すると、概して符号204で表わされている4つの別々の3重閾値は、各々、CMYK信号のそれぞれの色成分について一連のコントーン色画素値を受理する。ディザボリュームは、概して符号205で表われさている4つのディザサブセルA,B,C,Dに分割される。ディザセルアドレスジェネレータ206及び概して符号207で表わされている4つのゲートが、異なる色について1回のサイクルで並行して検索可能である4つの異なる3重閾値の検索を制御する。
Figure 0004621766
7.2.4.2 合成
合成ユニット205は、ハーフトーン化されたCMYK層ドット全体上に黒色層ドットを合成する。黒色層不透明度が1である場合には、ハーフトーン化されたCMYはゼロにセットされる。
4ビットのハーフトーン化されたカラーCcMcYcKc及び1ビット黒色層不透明度Kbを仮定すると、合成及びクリップ論理は、表22に定義されたとおりである。
Figure 0004621766
7.2.4.3 クロック有効化ジェネレータ
クロック有効化ジェネレータ206は、コントーンCMYK画素入力、黒色ドット入力及びCMYKドット出力を刻時するため、有効化信号を生成する。
前述したとおり、コントーン画素入力バッファは、ラインバッファ及びFIFOの双方として使用される。各々のラインは一回読取られ、次にコントーン基準倍率回使用される。FIFO書込みアドレスラッピングは、そのラインの繰り返された使用の最後の開始まで無効化され、その時点でクロック有効化ジェネレータは、ラッピングを有効化するコントーンライン前進イネーブル信号(contone line advanve enable signal)を生成する。
クロック有効化ジェネレータは、出力ドットFIFOの偶数セット又は奇数セットを選択するのに使用される偶数信号及び、現行ドット位置がページの左又は右マージンにあるとき白色ドットを生成するのに使用されるマージン信号をも生成する。
クロック有効化ジェネレータは、1組の計数器を使用する。計数器の内部論理は表23に定義されている。クロック有効化信号の論理は、表24に定義されている。
Figure 0004621766

Figure 0004621766
7.3 プリントヘッドインターフェース
プリントヘッドインターフェース(PHI)142は、プロセッサがメムジェットプリントヘッドに印刷すべきドットをロードし、実際のドット印刷プロセスを制御する手段である。PHIは以下を備える。
・一定の与えられた印刷ラインのためのドットをローカルバッファ記憶装置内にロードし、それをメムジェットプリントヘッドに必要とされる順序に書式化するラインローダ/フォーマットユニット(LIFU)209、 ・データをメムジェットプリントヘッド63に転送し、印刷中のノズル吐出シーケンスを制御するメムジェットインターフェース(MJI)210。
PHI内のユニットは、プロセッサ139によりプログラミングされる一定数のレジスタによって制御される。さらに、プロセッサは、メモリからLIFUへの転送のため、DMAコントローラ144内の適切なパラメータを設定することも担当する。これには、ページが明瞭な縁部をもつような形で、1ページの開始と終了中に白色(すべてが0)を適切な色へとロードすることが含まれる。
プリントヘッドインターフェース142の内部構造は、図28に示されている。
7.3.1 ラインローダ/フォーマットユニット
ラインローダ/フォーマットユニット(LLFU)209は、一定の与えられた印刷ラインのためのドットをローカルバッファ記憶装置内にロードし、それらをメムジェットプリントヘッドに必要とされる順序にフォーマットする。LLFUは、ページを場合によって印刷するためにメムジェットインターフェースに対し予め計算されたノズル有効化ビットを供給することを担当している。
20.3cm(8インチ)のプリントヘッド内の1本のラインは、12800の4色ドットから成る。1色につき1ビットで、単一の印刷ラインは51200ビットで構成されている。これらのビットは、プリントヘッド上へ送られるため適正な順序で供給されなくてはならない。ロードサイクルのドットローディング順序に関するさらなる情報については、6.1.2.1 節を参照されたい。但し、要約すると、32ビットが2つの10.2cm(4インチ)プリントヘッドに対し一度に転送され、32ビットは8セグメント各々について4ドットを表わしている。
印刷には、ドット−ビット情報を準備しアクセスするため2重バッファリングスキームが用いられる。第1のバッファ213に1本のラインがロードされている間に、第2のバッファ214内の予めロードされたラインがメムジェットドット順序で読取られている。
ライン全体がひとたび第2のバッファ214からプリントヘッドまでメムジェットインターフェースを介して転送された時点で、読取り及び書込みプロセスは、バッファをスワップする。第1のバッファ213はここで読取られ、第2のバッファは、新しいデータラインでアップロードされる。これは、図29の概念的概観を見ればわかるように、印刷プロセス全体を通して反復される。
LLFUの実際の実施は図30に示されている。1つのバッファはもう1つのバッファが書込まれている間に読出されることから、2セットのアドレスラインが使用されなくてはならない。共通データバスからの32ビットのDataInは、DMA肯定応答に応えて状態マシンにより生成されるWriteEnableに応じて、ロードされる。
マルチプレクサ215は、バッファ0,213及びバッファ1,214の2つの4ビット出力の中から選択を行ない、結果を4ビットシフトレジスタ216により8−エントリに送る。最初の8回の読取りサイクルの後、アドバンスパルスがMJIからきた時点でつねに、シフトレジスタからの現行の32ビットの値は32ビットの転送レジスタ217内へとゲートされ、ここでMJIにより使用され得る。
7.3.1.1 バッファ
2つのバッファ213,214の各々は、1色につき1つずつの計4つのサブバッファ220,221,222,223に分割される。全ての偶数ドットは、図31に示されているように、各色のバッファ内の奇数ドットの前に置かれる。
印刷すべき次のライン中のドットを表わす51200ビットは、400個の32ビットワードとして、1色のバッファあたり12800ビットずつ記憶される。第1の200個の32ビットワード(6400ビット)は、その色のための偶数ドットを表わし、一方第2の200個の32ビットワード(6400ビット)は、その色のための奇数ドットを表わす。
アドレス指定用復号化回路は、一定の与えられたサイクル内で、4つ全てからの読取り又は4つのうちの1つへの書込みのいずれかである単一の32ビットアクセスが4つのサブバッファ全てに行われ得るというようなものである。各々のカラーバッファから読取られた32ビットのうちの1つのみが、合計4つの出力ビットについて選択される。プロセスは、図32に示されている。13ビットのアドレスは、32ビットを選択するのに使用されている8ビットのアドレスにより、特定のビットの読取りを許容し、5ビットのアドレスはそれら32のビットから1ビットを選択する。全てのカラーバッファはこの論理を共有していることから、単一の13ビットアドレスは、1色に1つずつの計4つのビットを割り当てる。各バッファは、単一の32ビット値を一定の与えられたサイクル内で特定のカラーバッファに書込むことを可能にさせるため、その独自のWriteEnableラインを有する。実際には1つのバッファしかデータインを刻時しないことから、32ビットのDataInが共有される。
7.3.1.2 アドレス生成
7.3.1.2.1 読取り
読取りのためのアドレス生成は簡単である。サイクル毎に、特定のセグメントについて1色あたり1ビットを表す4ビットを取り出すのに使用される1つのビットアドレスを生成する。現行のラインビットアドレスに400を加えることにより、次のセグメントの等価ドットまで前進する。バッファ内で奇数及び偶数のドットは分離されていることから、400(800ではなく)を加える。偶数ドットを表す8セグメントの2セットについて32ビットの2セットを検索するため、これを16回行い(得られたデータは、MJI32ビットに1度に転送される)、奇数ドットをロードするためにさらにもう16回行う。
この32サイクルプロセスは400回くり返され、毎回開始アドレスを増分する。こうして400×32サイクルで、合計400×32×4(51,200)のドット値が、プリントヘッドにより必要とされる順序で転送される。
さらに、TransferWriteEnable制御信号を生成する。LLFUはMJIより前に始動することから、MJIからのアドバンスパルスの前に第1の値を転送しなければならない。同様に、第1のアドバンスパルスのための準備として次の32ビット値も生成しなければならない。その解決法は、8サイクルの後で転送レジスタに対し最初の32ビット値を転送し、次にアドバンスパルスが次の8サイクルグループを開始するのを待って、8サイクル後に動作を停止させることである。最初のアドバンスパルスがひとたび到着すると、LLFUはMJIに同期化される。しかしながら、MJIは、初期転送値が有効であり、次の32ビット値が転送レジスタ内にロードされるのに準備されているように、LLFUから少なくとも16サイクル後に開始されなくてはならない。
読取りプロセスは、以下の擬似コードに示されている。
Figure 0004621766
ラインが終了すると、CurrReadBuffer値は、プロセッサによりトグルされなくてはならない。
7.3.1.2.2 書込み
書込みプロセスも同様に簡単である。4本のDMA要求ラインがDMAコントローラに出力される。返信DMA肯定応答ライン(return DMA Acknowledge line)により要求が満たされるにつれて、適切な8ビット宛先アドレスが選択され(13ビット出力アドレスの下部5ビットは考慮しない値( don’t care value)である)、肯定応答信号は、
適正なバッファのWriteEnable制御ラインまで移行させられる(現行の書込みバッファはCurrentReadBufferである) 。8ビットの宛先アドレスは、1色につき1アドレスずつ、4つの現行アドレスから選択される。DMA要求が満たされるにつれて、適切な宛先アドレスが増分され、対応するTransfersRemai
ningカウンタが減分される。DMA要求ラインは、その色について残っている転送の数がゼロでない場合にのみセットされる。
以下の擬似コードは書込みプロセスを示している。
Figure 0004621766
7.3.1.3 レジスタ
LLFU内には以下のレジスタが収納されている。
Figure 0004621766
7.3.2 メムジェットインターフェース
メムジェットインターフェース(MJI)211はデータをメムジェットプリントヘッド63に転送し、印刷中のノズル吐出シーケンスを制御する。
MJIは、単に、6.1.2節に記されているプリントヘッドローディング及び吐出順序に従う状態マシン(図28参照)であり、6.1.4節及び6.1.5節で記述されて
いるような予熱サイクル及び清浄サイクルの機能を備える。高速及び低速印刷モードの両方が利用可能である。各色についてのドット計数も同様にMJIによって維持される。 MJIは、次の2つのデータ源の選択からプリントヘッド内にデータをロードする。
すべて1。これは、全てのノズルがその後の印刷サイクル中に吐出することことを意味し、予熱又は清浄サイクルのためにプリントヘッドをロードするための標準的なメカニズムである。
LLFUの転送レジスタ内に保持された32ビットの入力から。これは、画像を印刷する標準的手段である。LLFUからの32ビット値は、プリントヘッドに直接送られ、LLFUに対し1ビットの「アドバンス」制御パルスが送られる。各ラインの終りで、1ビットの「AdvanceLine」パルスも利用可能である。
MJIは、LLFUがすでに第1の32ビット転送値を準備した後で開始されなくてはならない。これは、32ビットのデータ入力がプリントヘッドに対する第1の転送について有効であるようにするためである。
従って、MJIはLLFU及び外部メムジェットプリントヘッドに対し直接接続される。
7.3.2.1 プリントヘッドに対する接続
MJI211は、MJIとの関係における入力及び出力の検知と合わせて、プリントヘッド63に対する以下のような接続を有する。名前は、プリントヘッド上のピン接続に整合する(8インチのプリントヘッドの配線方法の説明については、6.2.1節を参照されたい)。


Figure 0004621766


Figure 0004621766
7.3.2.2 吐出パルス継続時間
AEnableライン及びBEnableライン上の吐出パルスの継続時間は、(温度及びインク特性によって左右される)インクの粘度及びプリントヘッドに利用可能な電力量によって異なる。標準的なパルス継続時間の範囲は1.3〜1.8μsである。従って、MJIは、プリントヘッドからのフィードバックによって指標付けされるプログラミング可能なパルス継続時間表230を有する。このパルス継続時間表は、より低コストの電源の使用を可能にし、より精確な液滴の噴射の一助となる。
パルス継続時間表は256個のエントリを有し、現行のVsense設定値231及びTsense設定値232により指標づけされる。上部の4アドレスビットはVsenseから由来し、下部の4アドレスビットはTsenseから由来する。各エントリは8ビットで、0〜4μsの範囲内の固定小数点値を表わす。AEnable及びBEnable ラインを生成するプロセスは、図33に示されている。アナログVsense信号231及びTsense信号232は、それぞれの標本及び保持回路233,234によって受信され、次に、パルス継続時間表230に適用される前にそれぞれの変換器235,236内でデジタルワードに変換される。パルス接続時間表230の出力は、パルス幅ジェネレータ237に適用され、吐出パルスを生成する。
256バイト表は、最初のページを印刷する前にCPUにより書込まれる。表は、望まれる場合、ページ間で更新され得る。表中の各々の8ビットのパルス接続時間エントリは、以下のものを組み合わせる。
・ユーザーによる輝度設定値(ページの記述から)
・インクの粘度曲線(QAチップから)
・Rsense
・Wsense
・Vsense
・Tsense
7.3.2.3 ドット計数
MJI211は、ドット計数レジスタ240内のプリントヘッドから吐出された各色の
ドット数の計数を維持する。各色についてのドット計数は、プロセッサ制御下で信号241により個々にクリアされる32ビット値である。32ビットの長さで、各ドット計数は、30.48cm(12インチ)ページで17ページ分の最大被覆率ドット計数を保持することが可能であるが、標準的な利用においては、ドット計数は、各ページの後に読取られてクリアされることになる。
ドット計数は、インクカートリッジにインクが無くなる時を予測する目的で、QAチップ85(7.5.4.1節参照)を更新するために、プロセッサにより使用される。プロセッサは、QAチップから、C、M、Y及びKの各々についてカートリッジ内のインク量を知る。液滴数で計数することにより、インクセンサの必要はなくなり、インクチャネルが乾燥するのを防ぐことが可能である。各ページの後で、更新された液滴計数がQAチップに書込まれる。充分なインクが残っていないかぎり、新しいページが印刷されることはなく、こうして再び印刷されなければならない無駄な半ページ印刷が発生することなく、ユーザーがインクを交換することが可能となる。
シアンのためのドットカウンタのレイアウトが図34に示されている。残りの3ドット計数器(それぞれマゼンタ、黄色及び黒色のためのMDotCount、YDotCount及びKDotCount)は、同一の構造を有する。
7.3.2.4 レジスタ
プロセッサ139は、レジスタセットを介してMJI211と通信する。レジスタにより、プロセッサは印刷をパラメータ化し、かつ印刷の進度についてのフィードバックを受取ることが可能である。
MJI内には、以下のレジスタが備えられている。


Figure 0004621766

Figure 0004621766
Figure 0004621766
MJIのステータスレジスタは、以下のようなビット解釈をもつ16ビットのレジスタである。
Figure 0004621766
7.3.2.5 予熱及び清浄サイクル
清浄及び予熱サイクルは、単に適切なレジスタをセットすることによって達成される。すなわち、
・SetAllNozzles=1
・低継続時間(予熱モードの場合)又は清浄モードについては適切な液滴吐出継続時間のいずれかにPulseDurationレジスタをセットする。
・ノズルが吐出されるべき回数となるようNumLinesをセットする。
・Goビットをセットし、印刷サイクルが完了した時点でGoビットがクリアされるのを待つ。
7.4 プロセッサ及びメモリ
7.4.1 プロセッサ
プロセッサ139は、ページ受信、展開及び印刷中にその他の機能ユニットを同期化する制御プログラムを実ラインする。これは、さまざまな外部インターフェースのためのテバイスドライバも実行し、ユーザーインターフェースを介してユーザーの動作にも応答する。
これは、効率のよいDMA管理を提供するよう低い割込み待ち時間を有していなくてはならないが、それ以外の点では、特に高性能のDMAコントローラである必要はない。
DMAコントローラは、27本のチャネル上で単一アドレスの転送をサポートする(表
29参照)。これは、転送完了時点でプロセッサに対しベクトル割込みを生成する。
Figure 0004621766
7.4.3 プログラムROM
プログラムROMは、システムブート中にメインメモリ内にロードされるICP制御プログラムを保持する。
7.4.4 Rambusインターフェース
Rambusインターフェースは、外部8MB(64Mbit)のRambusDRAM(RDRAM)に対する高速インターフェースを提供する。
7.5 外部インターフェース
7.5.1 USBインターフェース
ユニバーサルシリアルバス(USB)インターフェースは、標準的なUSBデバイスインターフェースを提供する。
7.5.2 スピーカインターフェース
スピーカインターフェース250(図35)は、メインメモリからのサウンドクリップのDMA媒介された転送に用いられる小型FIFO251、各々の8ビットのサンプル値を電圧に変換する8ビットのデジタル−アナログ変換器(DAC)252、及び外部スピーカに供給を行う増幅器253を備える。FIFOがエンプティであるとき、そのFIFOはゼロ値を出力する。
スピーカインターフェースは、サウンドクリップの周波数で刻時される。
プロセッサは、単にスピーカインターフェースのDMAチャンネルをプログラミングすることによってスピーカにサウンドクリップを出力する。
7.5.3 パラレルインターフェース
パラレルインターフェース231は、一定数のパラレル外部信号ライン上に入出力を提供する。
これは、プロセッサが表30に列挙されているデバイスを検知又は制御することを可能にする。
Figure 0004621766
7.5.4 シリアルインターフェース
シリアルインターフェース232は、2つの標準的な低速シリアルポートを提供する。
1つのポートは、マスタQAチップ85に接続するために用いられる。もう1つのポートは、インクカートリッジ233内のQAチップに接続するために用いられる。2つの間のプロセッサ媒体プロトコルは、インクカートリッジを認証するために用いられる。プロセッサはこのときQAチップからのインク特性ならびに各インクの残量を検索することが可能である。プロセッサは、メムジェットプリントヘッドを適切に構成するために、これらのインク特性を使用する。プロセッサは、プリントヘッドが乾燥状態で作動することにより損傷を受けることを確実に防ぐために、プリントヘッドインターフェースにより蓄積されたインク消費情報を用いてページ毎に基づいて更新されるインク残量を使用する。
7.5.4.1 インクカートリッジQAチップ
インクカートリッジ内のQAチップ233は、可能なかぎり最良の印刷品質を維持するために必要とされる情報を備えており、認証チップを用いて実現される。認証チップ内の256データビットは、以下のように割り当てられる。
Figure 0004621766
各ページを印刷する前に、プロセッサは、最悪の場合でも1ページ全面を印刷するのに充分なインクが存在することを保証するべく、インク残量を確認しなければならない。ひとたびページが印刷された時点で、プロセッサは(プリントヘッドインターフェースから得られた)各色の液滴合計数に液滴体積を乗算する。印刷されたインクの量は、インク残量から差引かれる。インク残量の測定単位はナノリットルであり、従って32ビットは4リットル以上のインクを表わすことが可能である。1ページに使用されるインクの量は、最も近いナノリットル(すなわち約1000の印刷済みドット)に切り上げられなければならない。
7.5.5 JTAGインターフェース
標準的なJTAG(Joint Test Action Group)インターフェースが、テスト用に備えられている。チップの複雑性に起因して、BIST(Built
in Self Test)及び機能ブロック絶縁を含めたさまざまなテスト技術が必要とされる。チップテスト回路全体について、チップ面積の10%のオーバヘッドが仮定される。
8.一般的なプリンタドライバ
この節では、iプリントのためのあらゆるホストベースのプリンタドライバの一般的態様について説明する。
8.1 グラフィクス及び画像形成モデル
ここで、プリンタドライバがホストグラフィクスシステムと密に結合され、その結果、プリンタドライバがさまざまなグラフィクス及び画像形成操作、特に合成操作及びテキスト操作のためのデバイス特有の処理を提供可能であるとする。
ホストがカラーマネージメントのためのサポートを提供し、そのため、デバイスとは独
立した色を、ユーザーの選択したiプリント特有のICC(International
Color Consortium)カラープロフィールに基づき、標準的な方法でiプリント特有のCMYKへと変換することが可能であるとする。カラープロフィールは、通常、ユーザーがプリンタにおける出力媒体(すなわち普通紙、塗被紙、OHP用紙など)を指定するときにユーザーにより暗黙の内に選択される。プリンタに送られたページ記述は常に、デバイス特有のCMYK色を含んでいる。
さらに、ホストグラフィクスシステムは、画像及びグラフィクスを、プリンタドライバにより指定された公称解像度までレンダリングするものの、プリンタドライバがテキストのレンダリングを制御することを許容するものとする。特に、グラフィクスシステムは、プリンタドライバが公称デバイス解像度よりも高い解像度でテキストをレンダリングし、配置するのを可能にするために充分な情報をプリンタドライバに提供する。
また、ホストグラフィクスシステムは、それがグラフィクス及び画像形成オブジェクトを合成する、公称デバイス解像度でのコントーンページバッファに対するランダムアクセスを必要とするが、プリンタドライバが実際の合成を制御することを可能にしている、すなわち、プリンタドライバがページバッファを管理することを期待しているものとする。
8.2 2層ページバッファ
プリンタのページ記述は、267ppiのコントーン層と800dpiの黒色層を有している。黒色層は概念的に、コントーン層より上方に位置する。すなわち黒色層はプリンタによりコントーン層上にわたって合成される。従って、プリンタドライバは、中解像度のコントーン層261と高解像度の黒色層262を対応して含むページバッファ260を維持する。
グラフィクスシステムは、オブジェクトをレンダリングし、ページバッファをボトムアップ、すなわち後続オブジェクトが先行オブジェクトを覆い隠して合成する。これは、1
層しか存在しないときには当然作動するが、2層が存在する場合にはそうはいかず、これらの層は後で合成されることになる。従って、何時コントーン層上に配置されようとしているオブジェクトが黒色層上の何かを覆い隠しているかを検知することが必要である。
覆い隠しが検出された時点で、覆い隠された黒色画素は、コントーン層と合成され黒色層から除去される。覆い隠しているオブジェクトは次にコントーン層上に置かれ、場合によって何らかの形で黒色の画素と相互作用する。覆い隠しているオブジェクトの合成モードが背景との相互作用が全く不可能となるようなものである場合には、黒色画素は、コントーン層と合成されることなく単に廃棄され得る。実際には、当然のことながら、コントーン層と黒色層の間にはわずかな相互作用しか存在しない。
プリンタドライバは、グラフィクスシステムに対し267ppiという公称ページ解像度を指定する。可能な場合、プリンタドライバは、黒色テキストを除いて267ppiでの画素レベルに画像及びグラフィクスオブジェクトをレンダリングするのにグラフィクスシステムに依存する。プリンタドライバは全てのテキストレンダリング要求に対処し、800dpiで黒色テキストを検出しレンダリングするが、267ppiでレンダリングするためグラフィクスシステムに対し非黒色テキストレンダリング要求を返信する。
理想的には、グラフィクスシステム及びプリンタドライバは、デバイスに依存しないRGBにて色を操作し、ページが完結し、いつでもプリンタに送れる状態になるまでデバイス特有のCMYKに対する変換を延期する。こうしてページバッファ必要条件は削減され、合成はさらに合理的になる。CMYK色空間内での合成は理想的ではない。
究極的には、グラフィクスシステムは、プリンタドライバのページバッファ内に、各々のレンダリング済みオブジェクトを合成することをプリンタドライバに要求する。このようなオブジェクトは各々24ビットのコントーンRGBを使用し、明示的な(又は暗示的に不透明の)不透明チャンネルを有する。
プリンタドライバは、3つの部分の形で2層ページバッファ260を維持する。第1の部分は、中解像度(267ppi)のコントーン層261である。これは24ビットのRGBビットマップで構成されている。第2の部分は、中解像度の黒色層263である。これは、8ビットの不透明ビットマップから成る。第3の部分は、高解像度(800dpi)の黒色層262である。これは1ビットの不透明ビットマップから成る。中解像度の黒色層は、高解像度の不透明層のサブサンプリングされたバージョンである。実際には、中解像度が高解像度の整数因数n(例えばn=800/267=3)であると仮定すると、各々の中解像度の不透明度値は、対応するn×nの高解像度不透明度を平均することによって得られる。これは、ボックスフィルタにかけられたサブサンプリングに対応する。黒色画素のサブサンプリングは、実際、高解像度の黒色層内の縁部をエイリアス除去し、これにより、コントーン層がその後JPEG圧縮され圧縮解除された時点で、リンギングの人為結果を低減する。
ページバッファの構造及びサイズは、図36に示されている。
8.3 合成モデル
ページバッファ合成モデルについて論述する目的で、以下の変数を定義づけする。
Figure 0004621766
不透明度aTxHの黒色オブジェクトが黒色層と合成される場合、黒色層は以下のように更新される。
Figure 0004621766
オブジェクトの不透明度は単に黒色層不透明度と論理和され(規則1)、中解像度の黒色層の対応する部分が、高解像度の黒色層から再度計算される(規則2)。
色CObM及び不透明度aObMのコントーンオブジェクトがコントーン層と合成される場合、コントーン層及び黒色層は以下のように更新される。
Figure 0004621766

コントーンオブジェクトがたとえ完全に不透明にではなくても、コントーンオブジェクトが黒色層を覆い隠す場合には常に、影響を受けた黒色層の画素は、黒色層からコントーン層へと押し出され、すなわちコントーン層と合成され(規則3)、黒色層から除去される(規則4及び規則5)。コントーンオブジェクトはこのときコントーン層と合成される(規則6)。
コントーンオブジェクト画素が完全に不透明である場合(すなわちaObM(x、y)=255)には、背景コントーン画素が、その後、前景コントーン画素により完全に消し去られることから(規則6)、背景コントーン層内に対応する黒色画素を押し出す必要は全くない(規則3)。
図37〜41は、2層で表わされた画像上へさまざまなタイプのオブジェクトを合成することによって前景黒色層及び背景コントーン層にもたらされる効果について示している。各々の場合において、オブジェクトが合成される前後の2つの層の状態が示されている。前景及び背景層の異なる解像度が、層の異なる画素格子密度によって表示されている。
2層に表わされた出力画像は、画像の実際のレンダリングがここでの論述の焦点ではないことから、画素格子は有さずに示されている。
中解像度の前景黒色層は示されていないが、潜在的に存在している。規則1が高解像度の前景黒色層に適用される場合には常に、規則2が中解像度前景黒色層に必然的に適用される。規則4が適用される場合にはつねに、規則5も必然的に適用される。
図37は、白色画像上への黒色オブジェクト270の合成の効果を例示している。黒色オブジェクトは、単純に前景黒色層271内に合成される(規則1)。背景コントーン層272は影響を受けず、出力画像273は黒色オブジェクトである。
図38は、白色画像上へのコントーン画像280の合成の効果を例示している。コントーンオブジェクト280は、単純に背景コントーン層282内に合成される(規則6)。前景黒色層281は影響を受けず、出力画像283はコントーンオブジェクトである。
図39は、すでにコントーンオブジェクト292を含む画像上への黒色オブジェクト290の合成の効果を示している。ここでもまた黒色オブジェクトは、単純に前景黒色層291内に合成される(規則1)。背景コントーン層は影響を受けず、出力画像293は、コントーンオブジェクト292全体にわたり黒色オブジェクト290を有する。
図40は、すでに黒色オブジェクト301を含む画像上への不透明なコントーンオブジェクト300の合成の効果を示している。コントーンオブジェクトは既存の黒色オブジェクトの一部分を覆い隠していることから、既存の2値オブジェクトの影響を受けた部分は、前景黒色層302から除去される(規則4)。コントーンオブジェクトは完全に不透明であることから、影響を受けた部分をコントーン層内に合成する必要は全くなく、従って規則3はスキップされる。コントーンオブジェクトは、通常どおりの背景コントーン層303へと合成され(規則6)、出力画像304は、黒色オブジェクト全体の上で、かつこ
のオブジェクトを覆い隠すコントーンオブジェクト300を示す。
図41は、すでに黒色オブジェクト311を含む画像上への部分的に透明なコントーンオブジェクト310の合成の効果を例示している。コントーンオブジェクトは、既存の黒色オブジェクトの一部分を部分的に透過して覆い隠すことから、黒色オブジェクトの影響を受けた部分は、コントーン層312内に合成され(規則3)、次に前景黒色層313から除去される(規則4)。コントーンオブジェクトは、通常どおりの背景コントーン層314内に合成される(規則6)。
最終画像315は、既存の黒色オブジェクトの一部分を透過して覆い隠すようなコントーン画素の暗化を示す。
8.4 ページの圧縮及び送出
ページレンダリングがひとたび完了すると、プリンタドライバはグラフィクスシステム内のカラーマネージメント機能の補助により、コントーン層をiプリント特有のCMYKに変換する。
プリンタドライバは次に黒色層及びコントーン層を、5.2節で記述されているように、iプリントページ記述へと圧縮しパッケージ化する。このページ記述は、標準的なスプーラを介してプリンタに送出される。
黒色層は1組の1ビット不透明度値として操作されるが、1組の1ビット黒色値としてプリンタに送出されるという点に留意されたい。これら2つの解釈は異なっているものの、同じ表現を共有しており、従ってデータ変換は必要とされない。
9.ウィンドウズ9X/NTプリンタドライバ
9.1 ウィンドウズ9X/NT印刷システム
ウィンドウズ9x/NT印刷システム(非特許文献8)(非特許文献9)においては、プリンタ320は、グラフィクスデバイスであり、1つのアプリケーション321がグラフィクスデバイスインターフェース322(GDI)を介してプリンタ320と通信する。プリンタドライバグラフィクスDLL323(ダイナミックリンクライブラリ)は、GDIによって提供されるさまざまなグラフィクス機能のデバイスに依存する点を実現する。
スプーラ333は、プリンタへのページの送出を処理し、印刷を要求するアプリケーションに向けて異なるマシン上に常駐し得る。これは、プリンタに対する物理的接続を取扱うポートモニター334を介してプリンタにページを送出する。任意の言語モニター335は、プリンタとの通信に対し付加的なプロトコルを課し、特にスプーラのためにプリンタからの状態応答を復号化するプリンタドライバの一部分である。
プリンタドライバユーザーインターフェースDLL336は、プリンタ特有の特性を編集しプリンタ特定的事象を報告するためにユーザーインターフェースを実現する。
ウィンドウズ9x/NT印刷システムの構造は、図42に例示されている。
iプリントはUSB IEEE−1284エミュレーションを使用することから、iプリントのために言語モニターを実現する必要は全くない。
本節の残りの部分では、プリンタドライバグラフィクスDLLの設計について記述する。これは、適切なウィンドウズ9x/NT DDK文書(非特許文献8)(非特許文献9)と合わせて読まれるべきものである。
9.2 ウィンドウズ9x/NTグラフィクスデバイスインターフェース(GDI)
GDIは、1つのアプリケーションがデバイス表面上で描画することを可能にする機能、すなわち表示スクリーン又は印字済みページの抽象化を提供する。ラスターデバイスについては、デバイス表面は概念上1つのカラービットマップである。アプリケーションは、デバイスとは独立して、すなわちデバイスの解像度及び色特性とは独立した形で表面上に描画し得る。
アプリケーションは、デバイス表面全体にランダムにアクセス可能である。これはすなわち、メモリが制限されたプリンタデバイスがバンド出力を必要とする場合、GDIは、全ページのGDI指令をバッファし、次にこれらを各バンド内にウィンドウ処理された状態で再生しなければならないということを意味している。これはアプリケーションに大きな柔軟性を与えるものの、性能に不利な影響を及ぼす可能性がある。
GDIは、カラーマネージメントをサポートし、これにより、アプリケーションによって提供されるデバイスに依存しない色は、デバイスの標準的ICC(International Color Consortium)カラープロフィールに従ってデバイスに依存した色へと即応的に変換される。例えば、ドライバにより管理されるプリンタ特性シート上におけるユーザーによる用紙種類の選択などに応じて、プリンタドライバが異なるカラープロフィールを起動することが可能である。
GDIは、ライン及びスプラインアウトライングラフィクス(経路)、画像及びテキストをサポートする。アウトラインフォントグリフを含むアウトライングラフィクスは、ストロークされ、ビットマップ化されたブラシパターンにて充填されることが可能である。グラフィクス及び画像は、幾何学的に変形されて、デバイス表面のコンテンツと合成されることが可能である。ウィンドウズ95/NT4は、ブールの合成演算子のみを提供するものの、ウィンドウズ98/NT5は、適切なアルファブレンディングを提供している(非特許文献9)。
9.3 プリンタドライバグラフィクスDLL
ラスタプリンタは、理論的には、ウィンドウズ9x/NT下で標準的なプリンタドライバコンポーネントを利用することができ、これは、プリンタドライバトリビアルを展開するジョブを行うことが可能である。これは、単一のビットマップとしてデバイス表面をモデリングする能力に依存する。これに付随する問題は、テキスト及び画像が同じ解像度でレンダリングされなくてはならないということである。このことは、テキストの解像度を危険にさらすかあるいは、過度に多い出力データを生成して性能を危うくするかのいずれかである。
前出のとおり、iプリントのアプローチは、各々の再現を最適化するため異なる解像度で黒色のテキスト及び画像をレンダリングすることにある。従って、プリンタドライバは、第8節に記述されている一般的な設計に従って実現される。
従って、ドライバは、第8.2節で記述されているように、2層の3部分ページバッファを維持し、これはプリンタドライバがデバイス表面の管理を引き継がなくてはならないことを意味し、それはプリンタドライバがデバイス表面に対する全てのGDIアクセスを媒介しなければならないということを意味している。
9.3.1 デバイス表面の管理
プリンタドライバは、以下を含む多数の標準機能をサポートしなければならない。
Figure 0004621766

DrvEnablePDEVは、GDIに対し、返信されたDEVINFO構造のflGraphicsCapsを介して、ドライバのグラフィクスレンダリング能力を指示する。これについては以下でさらに論述する。
DrvEnableSurfaceは、2つの概念上の層と3つの部分すなわち、267ppiのコントーン層24ビットRGB色、267ppiの黒色層8ビット不透明度、及び800dpiの黒色層1ビット不透明度から成るデバイス表面を生成する。これら2層をカプセル化する仮想デバイス表面は、267ppiの公称解像度をもち、従って、これはGDIオペレーションが行われる解像度である。
統合ページバッファは約33MBのメモリを必要とするが、PC99オフィス規準(非特許文献5)は64MBという最小値を規定している。
実際には、デバイス表面の管理及びそれへのGDIアクセスの媒介というのは、プリンタドライバが以下の付加的な機能をサポートしなければならないことを意味している。
Figure 0004621766

画像の複製、描線(stroking path)及び領域の充填は全てコントーン層上で起こるが、一方、黒ベタのテキストのレンダリングは、2値黒色層上で起こる。さらにまた、黒色ではないテキストのレンダリングは、黒色層上でサポートされていないことから、コントーン層上で起こる。換言すると、ストローク又は黒ベタでの充填は、黒色層上でラインなわれ得る(そのように選択した場合)。
プリンタドライバは、上述の機能をフックせざるを得なくなるものの、コントーン層が標準フォーマットのビットマップであることから、その機能の対応するGDI実現に戻るように、コントーン層に適用される機能呼出しをパント(放棄)することが可能である。全てのDrvXxx機能について、GDIにより対応するEngXxx機能が提供されて
いる。
第8.2節で記述したように、コントーン層向けのオブジェクトが黒色層上の画素を覆い隠す場合、覆い隠された黒色画素は、コントーンオブジェクトがコントーン層と合成される前に黒色層からコントーン層まで転送されなくてはならない。このプロセスがうまくいくための鍵は、覆い隠しが検出されてフックされた呼出しにおいてGDIに戻るようパントされる前にそれが取扱われることにある。これには、コントーンオブジェクトの画素毎の不透明度をその幾何形状から決定すること及び、第8.2項で記述したように黒色層からコントーン層まで黒色画素を選択的に転送するためにこの不透明度を用いることが関与している。
9.3.2 コントーンオブジェクト幾何形状の決定
レンダリングされる前に各コントーンオブジェクトの幾何形状を決定し、よってコントーンオブジェクトがどの黒色画素を覆い隠しているかを効率よく決定することが可能である。DrvCopyBits及びDrvPaintの場合、幾何形状は、1組の矩形として列挙可能なクリップオブジェクト(CLIPOBJ)によって決定される。
DrvStrokePathの場合、事はさらに複雑になる。DrvStrokePathは、直線ライン及びベジエ−スプライン曲線セグメント及び単一画素幅ライン及び幾何学幅ラインの両方をサポートする。第1の工程は、ドライバのDEVINFO構造のflGraphicsCapsメンバー内の対応する能力フラグ(GCAPS_BEZIERS及びGCAPS_GEOMETRICWIDE)をクリアすることによって、ベジェ−スプライン曲線セグメント及び幾何学的幅ラインの複雑性をまとめて回避することである。こうしてGDIは、DrvPaintに対するより単純な呼出しセットとして、このような呼出しを再度公式化することになる。一般に、GDIはドライバに対し高レベルの能力を加速する機会を与えるが、ドライバにより提供されていないあらゆる能力をシミュレートする。
残るのは単に、単一画素幅の直線の幾何形状を決定することだけである。このような線は、実線であっても装飾線であってもよい。装飾線である場合には、線のスタイルは、指定された線属性内のスタイリングアレイによって決定される(LINEATTRS)。スタイリングアレイは、線がその長さに沿って不透明であることと透明であることの間でいかに交番するかを特定し、従ってさまざまな破線効果などをサポートする。
ブラシが黒ベタである場合、800dpiの解像度が暗に意味する幅の増大を伴ってではあるが、直線も黒色層へと有用にレンダリングされ得る。
9.3.3 テキストのレンダリング
DrvTextOutの場合にも、事はさらに複雑になる。まず第1に不透明な背景がある場合、それは、コントーン層上のその他のいずれかの充填と同様に扱われる(DrvPaint参照)。前景ブラシが黒色でない場合、又は混合モードが実際上不透明でない場合、又はフォントが拡大縮小不能である場合、又はフォントがアウトラインストロークを指示している場合、呼出しはコントーン層に適用されるべきEngTextOutにパントされる。しかしながら、呼出しがパントされる前に、ドライバは、そのビットマップを(FONTOBJ_cGetGlyphsを介して)得ることによって、各グリフの幾何形状を決定し、黒色層に対し通常の覆い隠しチェックをラインなう。
DrvTextOut呼出しのパントが許されない場合(文書化があいまいである)には、ドライバは複雑なテキストオペレーションを禁じるべきである。これには、(GCAPS_VECTOR_FONT能力フラグをクリアすることによる)アウトラインストロークの禁止及び(GCAPS_ARBMIXTXT能力フラグをクリアすることによる)
複雑な混合モードの禁止が含まれる。
前景ブラシが黒色かつ不透明であり、フォントが拡大縮小可能でストロークされていない場合には、グリフは、黒色層上でレンダリングされる。この場合、ドライバはそのアウトラインを(ここでもまた、FONTOBJ_cGetGlyphsを介して、但しPATHOBJとして)得ることによって、各グリフの幾何形状を決定する。このときドライバは、800dpiでそのアウトラインから各グリフをレンダリングしそれを黒色層に書込む。アウトライン幾何形状は、デバイス座標(すなわち267ppiで)を用いるが、この座標は、より高い解像度のレンダリングのための十分な少数部精度を有する固定少数点フォーマットの形をしている。
ここで、指定されている場合には、取り消し線及び下線の矩形がグリフ幾何形状に加えられるという点に留意されたい。
ドライバは、800dpiにおける正確な位置づけを可能にするため、高精度の固定小数点フォーマットでGDIによりグリフ位置(ここでもまた267ppiのデバイス座標で)が供給されるよう要求するべく、DEVINFO内でGCAPS_HIGHRESTEXTをセットしなければならない。ドライバがビットマップではなくむしろアウトラインとしてグリフをキャッシュすべきであるということをGDIに指示し得るように、同ドライバはDrvGetGlyphMode機能の実施も提供しなければならない。理想的には、ドライバは、効率的なメモリを可能にするレンダリングされたグリフビットマップをキャッシュすべきである。一定のポイントサイズ以下のグリフのみがキャッシュされるべきである。
9.3.4 コントーン層の圧縮
前述したように、コントーン層はJPEGを用いて圧縮される。順方向離散的余弦変換(DCT)は、JPEG圧縮において最もコストが高くなる部分である。現行の高品質ソフトウェア実現においては、各々の8×8ブロックの順方向DCTは、12の整数乗算及び32の整数加算を必要とする(非特許文献7)。ペンティアムプロセッサ上では、整数乗算には10サイクルが必要であり、整数加算には2サイクルが必要である(非特許文献11)。これは、184サイクルというブロックあたりの合計コストに等しい。
25.5MBのコントーン層は、417,588JPEGブロックから成り、全体的順方向DCTコストは約77Mサイクルとなる。300MHzのPC99デスクトップ規準で(非特許文献5)、これは0.26秒に等しく、これは1ページあたり2秒の限界内に充分入っている。
プリンタ内の二重バッファリングにより達成することが可能である持続印刷速度を示す表。 印刷したページへの適用からの、概念上のデータの流れを示すフローチャート。 閉じた場合のiPrintプリンタの絵画図。 開いた場合のiPrintプリンタの絵画図。 プリンタを通る紙の経路を示す断面図。 Memjetプリントヘッドカートリッジ、及びプリントヘッド被覆機構の絵画図。 図6のMemjetプリントヘッドカートリッジ及びプリントヘッド被覆機構の断面図。 プリンタコントローラの絵画面。 簡単な白黒画像のコード化の一例を示す図。 吐出順序に従って番号が付されている10本の印刷ノズルからなる1つのポッドを示す概略図。 ローディング順序に従って番号が付されている10本の印刷ノズルからなる同じポッドを示す概略図。 クロマポッドの概略図。 5つのクロマポッドからなるポッドグループの概略図。 2つのクロマポッドからなる位相グループの概略図。 セグメント、吐出グループ、位相グループ、ポッドグループ及びクロマポッドの間の関係を示す概略図。 通常の印刷サイクル中の、AEnableライン及びBEnableラインの位相図。 プリンタコントローラアーキテクチャを示す図。 ページの拡張及び印刷データの流れの概要を示すフローチャート。 EDRLエクスパンダユニットのブロック図。 EDRLストリームデコーダのブロック図。 ランレングスデコーダのブロック図。 ランレングスエンコーダのブロック図。 JPEGデコーダのブロック図。 ハーフトーン化装置/コンポジタユニットのブロック図。 ページ幅とマージンとの間の関係を示す一連のページライン。 多重閾値ディザのブロック図。 3成分閾値ユニットのロジックのブロック図。 プリントヘッドインターフェースの内部構造のブロック図。 印刷ラインNとN+1との間の二重バッファリングの概念的な概要示す線図。 LIFUの構造のブロック図。 バッファの構造を示すブロック図。 バッファの論理構造を示す線図。 AEnableパルス幅及びBEnableパルス幅の発生を示すブロック図。 ドットカウントロジックの線図。 スピーカインターフェースのブロック図。 2層ページバッファの線図。 白い画像上における黒色のオブジェクトの合成を示す一連の線図。 白い画像上におけるコントーンオブジェクトの合成を示す一連の線図。 コントーンオブジェクトを含む画像上での黒色のオブジェクトの合成を示す一連の線図。 黒色のオブジェクトを含む画像上での不透明のコントーンオブジェクトの合成を示す一連の線図。 黒色のオブジェクトを含む画像上での透明なコントーンオブジェクトの合成を示す一連の線図。 プリンタドライバの構成要素によるウィンドウズ9x/NT印刷システムのブロック図。

Claims (8)

  1. ディザボリュームを備える多重閾値ディザ(203)によるハーフトーン化方法であって、前記多重閾値ディザ(203)は、コントーンカラーピクセル値のアレイ形態のコントーンカラー画像を、ハーフトーン化することによってバイレベルの出力ドットにし、
    前記ハーフトーン化方法は、
    n個の閾値の固定された組によって、前記ディザボリュームのそれぞれディザセルの位置を示すディザセル位置を表わす表示ステップであって、前記ディザセル位置は、前記出力ドット値の位置に対応し、n個の前記閾値は、n+1個の明暗度間隔を規定し、n+1個の前記明暗度間隔は、前記出力ドット値が未設定状態であることを示す0と、前記出力ドット値が設定状態であることを示す1とに交互に規定されることと;
    n+1個の前記明暗度間隔のうちの一つを一意に選択するために前記コントーンカラーピクセル値をn個の前記閾値と比較することによって、前記コントーンカラーピクセル値に対応する前記出力ドット値を決定する決定ステップと
    を有する、ハーフトーン化方法。
  2. 前記多重閾値ディザ(203)は更に、前記コントーンカラー画像の色成分ごとに、多重閾値ユニット(204)を1つずつ備え、
    それぞれ前記多重閾値ユニット(204)は、互いに異なるn個の前記閾値を有する多重閾値を備え、
    前記多重閾値ユニット(204)の全ては、前記ディザボリュームに作動可能に接続し、
    前記決定ステップでは、
    記ディザセル位置に対応する前記コントーンカラーピクセル値が、n+1個の前記明暗度間隔のうちのいずれに規定される判定することによって、それぞれ前記多重閾値ユニット(204)が前記出力ドット値を決定する、
    請求項1記載のハーフトーン化方法。
  3. 前記nは3である、請求項2記載のハーフトーン化方法。
  4. 前記閾値は8ビットである、請求項3記載のハーフトーン化方法。
  5. 前記コントーンカラー画像は、色成分ごとに前記コントーンカラーピクセル値を備え、
    色成分ごとの前記コントーンカラーピクセル値の間でディザセル位置合わせが必要な場合、前記ハーフトーン化方法は更に、
    前記多重閾値を1回だけ検索するステップと;
    検索した前記多重閾値を使用することによって、それぞれ前記コントーンカラーピクセル値をディザするステップと
    を有する、
    請求項2記載のハーフトーン化方法。
  6. 前記コントーンカラー画像は、色成分ごとに前記コントーンカラーピクセル値を備え、
    色成分ごとの前記コントーンカラーピクセル値の間でディザセル位置合わせが必要ない場合、前記ハーフトーン化方法は更に、
    前記ディザセルをサブセル(205)に分割するステップと;
    前記サブセル(205)を個々のアドレス可能なメモリに記憶するステップと;
    前記サブセル(205)ごとに、互いに異なる前記多重閾値を並列に検索するステップと
    を有する、
    請求項2記載のハーフトーン化方法。
  7. 前記サブセル(205)の数は4つであり、
    前記多重閾値ディザ(203)は、ディザセルアドレスジェネレータを備え、
    前記多重閾値は、それぞれ互いに異なる3つの前記閾値を有する3重閾値であり、
    それぞれ前記多重閾値ユニット(204)は、前記3重閾値を有する3重閾値ユニット(204)であり、
    前記ハーフトーン化方法は更に、
    前記3重閾値ユニット(204)が、前記コントーンカラーピクセル値を受信するステップと;
    前記ディザセルアドレスジェネレータが、4つの前記サブセル(205)に対応する前記3重閾値ユニット(204)のために4つの四方向マルチプレクサと共に動作することによって、4組の互いに異なる前記3重閾値の検索を制御するステップであって、4組の前記3重閾値のそれぞれは、4個の前記サブセル(205)のそれぞれに対応することとを有する、
    請求項6記載のハーフトーン化方法。
  8. 前記3重閾値ユニット(204)は、下記の表に示すように、前記3重閾値の値T1、T2、およびT3を、前記明暗度値Vと比較することによって、そこから1ビットまたは0ビットに変換する、
    請求項7記載のハーフトーン化方法。
    Figure 0004621766
JP2008321665A 1998-11-09 2008-12-17 ハーフトーン化方法 Expired - Fee Related JP4621766B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
AUPP7024A AUPP702498A0 (en) 1998-11-09 1998-11-09 Image creation method and apparatus (ART77)
AUPP7025A AUPP702598A0 (en) 1998-11-09 1998-11-09 Image creation method and apparatus (ART71)

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000580843A Division JP2003508827A (ja) 1998-11-09 1999-11-09 プリンタ及びその作動方法

Publications (2)

Publication Number Publication Date
JP2009124715A JP2009124715A (ja) 2009-06-04
JP4621766B2 true JP4621766B2 (ja) 2011-01-26

Family

ID=25645923

Family Applications (5)

Application Number Title Priority Date Filing Date
JP2000580843A Pending JP2003508827A (ja) 1998-11-09 1999-11-09 プリンタ及びその作動方法
JP2008321665A Expired - Fee Related JP4621766B2 (ja) 1998-11-09 2008-12-17 ハーフトーン化方法
JP2008321663A Pending JP2009119870A (ja) 1998-11-09 2008-12-17 プリンタ用の吐出パルス継続時間制御システムおよびその動作方法
JP2008321666A Pending JP2009188985A (ja) 1998-11-09 2008-12-17 コンピュータメモリに内蔵されるリソースへの多重同時アクセスシステムおよびその動作方法
JP2008321664A Pending JP2009184347A (ja) 1998-11-09 2008-12-17 ハーフトーン化装置/コンポジタおよびその動作方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2000580843A Pending JP2003508827A (ja) 1998-11-09 1999-11-09 プリンタ及びその作動方法

Family Applications After (3)

Application Number Title Priority Date Filing Date
JP2008321663A Pending JP2009119870A (ja) 1998-11-09 2008-12-17 プリンタ用の吐出パルス継続時間制御システムおよびその動作方法
JP2008321666A Pending JP2009188985A (ja) 1998-11-09 2008-12-17 コンピュータメモリに内蔵されるリソースへの多重同時アクセスシステムおよびその動作方法
JP2008321664A Pending JP2009184347A (ja) 1998-11-09 2008-12-17 ハーフトーン化装置/コンポジタおよびその動作方法

Country Status (8)

Country Link
EP (1) EP1128961B1 (ja)
JP (5) JP2003508827A (ja)
KR (9) KR100576642B1 (ja)
CN (3) CN1277678C (ja)
AT (1) ATE430443T1 (ja)
AU (1) AU1533600A (ja)
DE (1) DE69940824D1 (ja)
WO (1) WO2000027640A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8749831B2 (en) 2011-10-24 2014-06-10 Seiko Epson Corporation Printing system and data transfer method

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7145696B2 (en) 1998-11-09 2006-12-05 Silverbrook Research Pty Ltd Print data compression method and printer driver
US6547368B2 (en) * 1998-11-09 2003-04-15 Silverbrook Research Pty Ltd Printer including printhead capping mechanism
AUPP702598A0 (en) 1998-11-09 1998-12-03 Silverbrook Research Pty Ltd Image creation method and apparatus (ART71)
US6795215B1 (en) 2000-05-23 2004-09-21 Silverbrook Research Pty Ltd Print engine/controller and printhead interface chip incorporating the engine/controller
US6859289B1 (en) * 2000-05-23 2005-02-22 Silverbrook Research Pty Ltd Print engine/controller with color mask
US7457001B2 (en) 2000-05-23 2008-11-25 Silverbrook Research Pty Ltd Half-toner compositor for use in a print engine/controller
US7525677B2 (en) 2000-05-23 2009-04-28 Silverbrook Research Pty Ltd Inkjet printer having image decoding controller
US8270023B2 (en) 2000-05-23 2012-09-18 Zamtec Limited Print engine controller for double-buffered processing
AU775392B2 (en) 2000-05-24 2004-07-29 Silverbrook Research Pty Ltd Printed page tag encoder
CN1812474B (zh) * 2000-05-24 2010-05-12 西尔弗布鲁克研究有限公司 具有标签编码器的打印控制器
WO2001089851A1 (en) * 2000-05-24 2001-11-29 Silverbrook Research Pty. Ltd. Print engine/controller and printhead interface chip incorporating the engine/controller
AU2000247250B2 (en) 2000-05-24 2004-03-25 Memjet Technology Limited Print engine/controller with color mask
JP2004501813A (ja) * 2000-06-30 2004-01-22 シルバーブルック リサーチ ピーティワイ リミテッド プリントヘッドノズル噴射のタイミング制御
AU2005200474B8 (en) * 2000-06-30 2006-08-31 Memjet Technology Limited Print engine/controller configured to synchronize output from half-toner/compositor to printhead
CN100349746C (zh) * 2000-06-30 2007-11-21 西尔弗布鲁克研究有限公司 具有半色调器/合成器的打印引擎/控制器
SG152036A1 (en) * 2000-06-30 2009-05-29 Silverbrook Res Pty Ltd A pagewidth printhead defining an array of nozzles with predetermined groupings
US6977751B1 (en) 2000-06-30 2005-12-20 Silverbrook Research Pty Ltd Print engine/controller to work in multiples and a printhead driven by multiple print engine/controllers
AUPR399001A0 (en) 2001-03-27 2001-04-26 Silverbrook Research Pty. Ltd. An apparatus and method(ART104)
US7268910B2 (en) * 2001-05-16 2007-09-11 Agfa Corporation Just-in-time raster image assembly
JP4125145B2 (ja) * 2002-02-13 2008-07-30 キヤノン株式会社 データ処理方法、プログラム及びデータ処理システム
AU2003202630B2 (en) * 2002-02-13 2007-03-29 Silverbrook Research Pty Ltd Printer with capping device
AUPS048502A0 (en) 2002-02-13 2002-03-07 Silverbrook Research Pty. Ltd. Methods and systems (ap44)
GB2387817A (en) * 2002-04-27 2003-10-29 Hewlett Packard Co Page wide array inkjet printer having halftone controller and multiple printheads, each printing different image strips.
KR100636202B1 (ko) 2004-12-03 2006-10-19 삼성전자주식회사 프린트 장치 및 프린트 방법
JP5430364B2 (ja) * 2009-11-17 2014-02-26 キヤノン株式会社 画像形成装置
KR101685150B1 (ko) * 2011-01-14 2016-12-09 주식회사 원익아이피에스 박막 증착 장치 및 이를 포함한 기판 처리 시스템
US8553286B2 (en) * 2011-06-08 2013-10-08 Electronics For Imaging, Inc. Halftoning method and apparatus using templates indexed by code
JP5899863B2 (ja) 2011-11-22 2016-04-06 セイコーエプソン株式会社 印刷装置および印刷装置の印刷方法
CN103182864B (zh) * 2011-12-31 2015-05-20 北大方正集团有限公司 数码喷印同步控制装置及其控制方法
US9162450B2 (en) * 2012-03-22 2015-10-20 Canon Kabushiki Kaisha Image processing apparatus and image processing method
WO2013150915A1 (ja) * 2012-04-04 2013-10-10 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
JP6027427B2 (ja) * 2012-12-19 2016-11-16 理想科学工業株式会社 インクジェット記録装置
JP6184115B2 (ja) 2013-02-01 2017-08-23 キヤノン株式会社 画像処理方法及び画像処理装置
JP6184196B2 (ja) 2013-06-26 2017-08-23 キヤノン株式会社 画像処理方法及び画像処理装置
US9669627B2 (en) 2014-01-10 2017-06-06 Fujifilm Dimatix, Inc. Methods, systems, and apparatuses for improving drop velocity uniformity, drop mass uniformity, and drop formation
CN103862879B (zh) * 2014-01-15 2016-08-17 珠海艾派克微电子有限公司 一种墨盒芯片及使用该芯片的墨盒
WO2015116117A1 (en) * 2014-01-30 2015-08-06 Hewlett-Packard Development Company, L.P. Embedding data in halftone images
JP6728578B2 (ja) * 2014-08-22 2020-07-22 セイコーエプソン株式会社 印刷装置、印刷装置の制御方法およびプログラム
JP2016055595A (ja) * 2014-09-12 2016-04-21 セイコーエプソン株式会社 印刷装置、及び、印刷装置の制御方法
US9363422B1 (en) * 2015-01-30 2016-06-07 Kyocera Document Solutions Inc. Cell-based compression with edge detection and interleaved encoding
US9531920B2 (en) * 2015-01-30 2016-12-27 Kyocera Document Solutions Inc. Digital image color plane compression
US9363416B1 (en) * 2015-01-30 2016-06-07 Kyocera Document Solutions Inc. Digital image attribute plane compression
KR101980030B1 (ko) * 2015-02-13 2019-08-28 휴렛-팩커드 디벨롭먼트 컴퍼니, 엘.피. 어드레스 데이터를 포함하는 데이터 패킷을 사용하는 프린트헤드
CN106681673B (zh) * 2016-12-21 2019-08-30 福建升腾资讯有限公司 一种热敏打印机灰度打印方法
TWI681310B (zh) * 2017-01-05 2020-01-01 三緯國際立體列印科技股份有限公司 圖檔轉換方法與立體列印系統
JP6832441B2 (ja) 2017-01-31 2021-02-24 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. メモリバンク内のメモリユニットに対するアクセス
CN110267819A (zh) * 2017-02-07 2019-09-20 惠普发展公司,有限责任合伙企业 对打印头组件的打印笔进行校准
US10850509B2 (en) * 2017-04-05 2020-12-01 Hewlett-Packard Development Company, L.P. On-die actuator evaluation with pre-charged thresholds
JP6985810B2 (ja) * 2017-04-27 2021-12-22 キヤノン株式会社 転送装置、転送方法および複合機
US10796209B2 (en) * 2018-06-26 2020-10-06 Xerox Corporation Ink jet print head with standard computer interface
CN109034142A (zh) * 2018-09-29 2018-12-18 广州微印信息科技有限公司 一种基于图像识别的照片处理方法
US11971699B2 (en) 2018-10-29 2024-04-30 Hewlett-Packard Development Company, L.P. Thermal mapping
CN110027324A (zh) * 2019-05-06 2019-07-19 珠海艾派克微电子有限公司 喷嘴墨盒、喷墨组件及电路基板
CN110816100B (zh) * 2019-11-13 2021-04-23 深圳诚拓数码设备有限公司 打印方法、打印设备及打印制品
US10855881B1 (en) * 2019-12-18 2020-12-01 Ricoh Company, Ltd. Vectorized multi-level halftoning using ternary logic
CN111737307B (zh) * 2020-04-10 2024-04-09 中国电力工程顾问集团中南电力设计院有限公司 基于配电网典设边界条件全要素的自动校核方法
CN112181870B (zh) * 2020-09-17 2022-10-28 重庆大学 内存页面管理方法、装置、设备及可读存储介质
CN112918116B (zh) * 2021-01-27 2022-07-22 北京印刷学院 一种用于提高彩色印刷系统打印精度的方法
KR102611146B1 (ko) * 2021-06-28 2023-12-06 세메스 주식회사 기판 처리 장치의 예열 방법 및 이를 위한 컴퓨터 프로그램
CN113945544B (zh) * 2021-10-13 2023-10-17 天津大学 面向空间频域测量的动态单像素成像及退化图像复原方法
CN114661132B (zh) * 2022-03-29 2024-04-26 厦门汉印电子技术有限公司 一种电量监测方法、装置、打印机及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63184886A (ja) * 1987-01-27 1988-07-30 Fujitsu Ltd 画像処理における2値化方式
JPH0385870A (ja) * 1989-08-29 1991-04-11 Mutoh Ind Ltd スキャナ読取画像データの二値化回路

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2716593B1 (fr) * 1983-03-17 1997-03-28 Canon Kk Appareil et procédé de traitement d'images et système de traitement de données.
EP0506148B1 (en) * 1986-08-29 1999-10-27 Canon Kabushiki Kaisha Input/output apparatus and method of processing image data
NL8902726A (nl) * 1989-11-06 1991-06-03 Oce Nederland Bv Werkwijze en inrichting voor het bewerken van data afkomstig van beelden.
EP0469852B1 (en) * 1990-07-31 1999-06-23 Canon Kabushiki Kaisha Image processing method and apparatus
JPH04199975A (ja) * 1990-11-29 1992-07-21 Canon Inc 画像形成装置
JPH05328075A (ja) * 1992-05-22 1993-12-10 Canon Inc 画像形成装置
JPH06305146A (ja) * 1993-04-28 1994-11-01 Canon Inc 記録装置
JP3311097B2 (ja) * 1993-08-20 2002-08-05 キヤノン株式会社 インクジェット記録装置
JP3207652B2 (ja) * 1993-12-28 2001-09-10 キヤノン株式会社 プリント素子情報検出装置、プリントヘッド駆動装置および前記装置を具えた印刷装置
JP2905106B2 (ja) * 1994-12-02 1999-06-14 大日本スクリーン製造株式会社 閾値マトリクスの作成方法並びにカラー画像の2値化方法
US5745657A (en) * 1994-06-22 1998-04-28 T/R Systems Method and apparatus for multi-modal printing with electrophotographic print engine
JPH08256255A (ja) * 1995-03-16 1996-10-01 Konica Corp 画像形成装置
JP3749282B2 (ja) * 1995-05-16 2006-02-22 株式会社東芝 画像処理装置
JPH09116751A (ja) * 1995-10-20 1997-05-02 Hitachi Ltd 画像処理装置およびプリンタ装置
JPH09138847A (ja) * 1995-11-14 1997-05-27 Canon Inc 画像処理方法及び装置
JPH09191402A (ja) * 1996-01-09 1997-07-22 Canon Inc 画像処理装置
JPH09277607A (ja) * 1996-04-10 1997-10-28 Konica Corp カラー画像形成装置
JPH10258504A (ja) * 1997-03-19 1998-09-29 Sharp Corp 捺染用プリンタ
JP3372821B2 (ja) * 1997-04-15 2003-02-04 キヤノン株式会社 インクジェット装置、該装置用インクジェットヘッドの温度推定方法および制御方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63184886A (ja) * 1987-01-27 1988-07-30 Fujitsu Ltd 画像処理における2値化方式
JPH0385870A (ja) * 1989-08-29 1991-04-11 Mutoh Ind Ltd スキャナ読取画像データの二値化回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8749831B2 (en) 2011-10-24 2014-06-10 Seiko Epson Corporation Printing system and data transfer method

Also Published As

Publication number Publication date
JP2009184347A (ja) 2009-08-20
KR100577357B1 (ko) 2006-05-08
KR100576642B1 (ko) 2006-05-04
KR20040104714A (ko) 2004-12-10
CN1277678C (zh) 2006-10-04
KR100577022B1 (ko) 2006-05-08
KR20040104715A (ko) 2004-12-10
KR100576605B1 (ko) 2006-05-04
KR100576744B1 (ko) 2006-05-03
JP2009188985A (ja) 2009-08-20
KR20040104716A (ko) 2004-12-10
KR100577025B1 (ko) 2006-05-08
KR100622619B1 (ko) 2006-09-19
KR20040106499A (ko) 2004-12-17
WO2000027640A1 (en) 2000-05-18
KR20040104720A (ko) 2004-12-10
JP2009124715A (ja) 2009-06-04
JP2003508827A (ja) 2003-03-04
KR20040104717A (ko) 2004-12-10
EP1128961A1 (en) 2001-09-05
EP1128961A4 (en) 2007-05-16
CN1508013A (zh) 2004-06-30
KR20040104719A (ko) 2004-12-10
ATE430443T1 (de) 2009-05-15
KR20040104718A (ko) 2004-12-10
DE69940824D1 (de) 2009-06-10
KR100577088B1 (ko) 2006-05-08
CN1284673C (zh) 2006-11-15
KR100577056B1 (ko) 2006-05-08
CN1326403A (zh) 2001-12-12
CN1138636C (zh) 2004-02-18
EP1128961B1 (en) 2009-04-29
CN1508014A (zh) 2004-06-30
JP2009119870A (ja) 2009-06-04
KR20010107956A (ko) 2001-12-07
AU1533600A (en) 2000-05-29

Similar Documents

Publication Publication Date Title
JP4621766B2 (ja) ハーフトーン化方法
US7973966B2 (en) Method of printing a compressed image having bi-level black contone data layers
JP2005500191A (ja) プリントヘッドキャッピング機構付きプリンタ
AU2002319010A1 (en) Printer including printhead capping mechanism
JP2002532287A (ja) アクセスが制限されている大衆消費電子(ce)システムに内蔵するためのプリンタ
US7806500B2 (en) Printer with processor having bused decoding and expansion units

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100112

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100412

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100415

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100712

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20101005

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101101

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131105

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees