CN1508013A - 打印机集成电路 - Google Patents

打印机集成电路 Download PDF

Info

Publication number
CN1508013A
CN1508013A CNA2003101130305A CN200310113030A CN1508013A CN 1508013 A CN1508013 A CN 1508013A CN A2003101130305 A CNA2003101130305 A CN A2003101130305A CN 200310113030 A CN200310113030 A CN 200310113030A CN 1508013 A CN1508013 A CN 1508013A
Authority
CN
China
Prior art keywords
page
nozzle
data
continuous tone
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.)
Granted
Application number
CNA2003101130305A
Other languages
English (en)
Other versions
CN1277678C (zh
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 AUPP7025A external-priority patent/AUPP702598A0/en
Priority claimed from AUPP7024A external-priority patent/AUPP702498A0/en
Application filed by Silverbrook Research Pty Ltd filed Critical Silverbrook Research Pty Ltd
Publication of CN1508013A publication Critical patent/CN1508013A/zh
Application granted granted Critical
Publication of CN1277678C publication Critical patent/CN1277678C/zh
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)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Ink Jet (AREA)
  • Facsimile Image Signal Circuits (AREA)
  • Color Image Communication Systems (AREA)
  • Image Processing (AREA)
  • Fixing For Electrophotography (AREA)
  • Hydrogenated Pyridines (AREA)
  • Color, Gradation (AREA)
  • Particle Formation And Scattering Control In Inkjet Printers (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Fax Reproducing Arrangements (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)
  • Record Information Processing For Printing (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

一种在单衬底上构造的集成电路。该集成电路包括数据总线和连接到数据总线上的专用功能单元。功能单元包括一个JPEG解码器、一个压缩的二级扩展器、一个过渡调色器,和一个打印头接口。一个通用处理机也可连接到数据总线上的,用于控制所述功能单元。可连接处理机从而运行使功能单元与接收、扩展和打印页面相配合的软件。

Description

打印机集成电路
本申请是中国专利申请99813084.2的分案申请。
技术领域
本发明涉及一种用于高性能彩色打印机的打印机驱动程序,例如用于一使用页面宽度按需喷墨打印头的打印机。在另一方面,本发明涉及一种打印方法。
本发明涉及一种用于彩色打印机的模块化打印头。另一方面,本发明涉及使用打印头进行打印和加载的方法。
本发明涉及一般使用页面宽度按需喷墨打印头的高性能彩色打印机。特别地,本发明涉及一种过渡调色器/合成器(halftoner/compositor)单元,用于对一连续色调(Contone)彩色层进行数字过渡调色,从而使之二级化(bi-level),并在过渡调色的该连续色调层上合成一黑色层。另一方面,本发明涉及一种过渡调色和合成方法。
本发明涉及一抖动单元,用于以一连续色调彩色像素值阵列的形式对一连续色调彩色图像进行过渡调色,从而使点二级化。另一方面,本发明涉及一种抖动单元的操作方法。
本发明涉及用于打印头的预热循环。本发明具有实用性,例如,用在使用按需喷墨打印头的高性能彩色打印机中。
本发明涉及一种装在计算机存储器中的资源和多重需要同时访问该资源的并行处理机。该资源可以是用于对一连续色调彩色图像进行数字过渡调色的抖动显示阵或抖动量,其以连续色调彩色像素值阵列的形式存在,从而使点二级化,这可能需要被不同的阈值处理单元并联地访问。另一方面,本发明为一种访问该资源的方法。
本发明涉及一打印机系统和预测打印机储墨器中的墨水何时用完的方法。例如,该打印机可使用按需喷墨打印头。
本发明涉及对打印机例如高性能彩色打印机中打印头触发脉冲持续时间的控制。特别地,本发明涉及一控制系统和一方法。例如,该打印机可使用页面宽度按需喷墨打印头。
发明背景
通过去耦不同强度级,一普通的256级抖动量在抖动单元设计中提供足够的适应性。当设计一最佳随机抖动〔12〕时,其在一抖动显示阵上提供一额外的自由度。普通的抖动量可为大抖动量-64×64×256,例如大小为128KB。由于每个彩色分量需要从该量中查找不同的位,所以它们的访问效率同样不高。
在一按需喷墨打印头中,打印点的尺寸根据墨水的温度而变化。当使用能量喷出一滴墨水时,墨水温度升高。当实际喷出一滴墨水时,会带走一些墨水的温度。在喷出多滴墨水期间,达到平衡温度。当达到平衡温度时,打印过程具有很强的停留在平衡温度的趋势。
本发明为一打印机,它配有一个用于这样类型打印头的打印头控制器,即该打印头包括:一个温度传感器,用来产生一指示打印头的温度的信号;许多喷嘴,其中每个喷嘴具有一墨水供应口,用来接收储墨器的墨水;一个墨水沉积口,用来喷出墨点;以及一个喷射控制口,该喷射控制口用来在打印头的一喷射循环中接收信号,从而从沉积口产生一墨点沉积。在此,打印头控制器包括从温度传感器接收指示打印头温度的信号的装置,和为喷嘴的喷射控制口提供一喷射信号的装置,并且该打印头控制器在每次打印作业之前是可操作的,从而设定所有将喷射的喷嘴,并执行一系列改变的喷射循环从而为每个喷嘴提供一系列的短喷射脉冲,每个脉冲的持续时间对于喷射墨滴是不充足的,但对于加热墨水是足够的,直到指示打印头温度的信号指示其温度已达到操作平衡温度为止。
在预热模式期间的反馈可由T传感(见下文定义)提供,并一直持续到温度高于环境温度大约30℃为止。当大致达到平衡温度时,反馈温度信息是重要的,这是由于时间或温度可能根据墨水的组成而发生变化。
在一个实例中,每个喷嘴需要大约200个脉冲。
预热模式的持续时间可在50毫秒左右,并且取决于墨水的组成。
当数据传输到打印机时,预热在其进行时不影响性能。
预热循环包括一个用1s时间给所有喷嘴加上负载的单个加载循环(即设定所有将喷射的喷嘴),和向每个喷嘴发射的许多短喷射脉冲。脉冲的持续时间必须不足以喷射墨滴,但足够加热墨水。脉冲的持续时间可随着打印机中的每种墨水而发生变化。每个喷嘴总共需要约200个脉冲,循环的顺序与标准的打印循环相同。
当多重并行处理机需要同时访问一个装在计算机存储器中的资源时,可以有几种策略。首先,处理机能够按序访问该资源,不过这样降低了处理机的性能。其次,可使用多端口存储器,再次,全部资源能被复制在不同的存储体中;后两种选择的成本是昂贵的。
有关于一个装在计算机存储器中的资源的一特定例子是一用于对连续色调彩色图像进行数字过渡调色的抖动显示阵或抖动量。当抖动单元记录在图像的不同彩色平面之间不理想时,一组进行单独彩色分量抖动的设定阈值单元可能需要对一不同的抖动单元位置进行同时访问。
加到打印头的喷射脉冲的持续时间取决于墨水的粘性,而墨水的粘性又取决于温度、墨水的特性和加到打印头的功率。一典型的脉冲持续时间范围为1.3至1.8ms。
发明的概述
本发明是用于高性能打印机的打印机驱动程序,其中该打印机驱动程序管理两层表示待打印页面的页面缓冲器。第一层缓冲器包含背景连续色调数据,而第二层包含前景二级数据。该打印机驱动程序将数据从缓冲器传输到打印机直到页面完成,并且打印机在对连续色调层过渡调色后将两层合成。该打印机驱动程序是这样操作的,即当其确定与连续色调层合成的连续色调数据模糊化二级层中的数据时,模糊(obscured)的二级数据从二级层中被取走,并且或者将其删除,或者使之处在这样的情况下:即以模糊化(obscuring)的连续色调数据表示的图像和以模糊的二级数据表示的图像之间有一些相互影响,接着,在模糊化连续色调数据与连续色调层合成之前,模糊的二级数据与连续色调层合成。
连续色调数据的分辨率可以比二级数据的低。
两层页面缓冲器可增加第三层连续色调数据,其中,第三层包括一第二层连续色调式的二级数据,其是按第一层的分辨率被二次抽样的,并且打印机驱动程序是这样操作的,即当其确定与第一层合成的连续色调数据模糊化第三层中的连续色调数据时,模糊的数据从第三层中取走,并在模糊化连续色调数据与连续色调层合成之前,与连续色调层合成,并且将第二层中的二级数据从第二层中取走,其中该二级数据与第三层中模糊的连续色调数据相应。
在由模糊化连续色调数据表示的图像和模糊的二级数据表示的图像之间一般会发生相互影响,其中连续色调数据表示透明的图像对象。
连续色调数据典型地为彩色数据,而二级数据通常为黑色数据;尽管它可能是另一种颜色。可以提供附加层,从而容纳附加颜色的附加前景二级层。
打印机驱动程序通常紧密地与主图形系统连接,从而打印机驱动程序可为不同图形和图像操作提供特定设备处理(device-specifichandling),特别是合成处理和文字处理。
主机支持色彩管理,从而设备独立(device-independent)颜色可按一种标准方式转换为打印机指定颜色。发送到打印机的页面描述一般包含设备指定颜色。
主图形系统以由打印机驱动程序指定的标准分辨率再现图像和图形,但其允许打印机驱动程序控制文字的再现。特别地,该图形系统为打印机驱动程序提供了足够的信息,从而允许其以高于标准设备分辨率的分辨率再现和定位文字。
主图形系统需要以标准设备分辨率随机访问连续色调页面缓冲器。在其中,它将图形和图像对象合成,但其允许打印机驱动程序控制实际合成,这样就可期望打印机驱动程序管理页面缓冲器。
打印机的页面描述可包括一267ppi的连续色调层和一800dpi的黑色层。打印机驱动程序可为图形系统指定一标准页面分辨率267ppi。可能打印机驱动程序依赖图形系统来以267ppi的像素级来再现图像和图形对象,黑色文字除外。打印机即时响应所有的文字再现需求,以800dpi检测和再现黑色文字,但将非黑色文字再现需求返回到图形系统,用于以267ppi再现。
打印机驱动程序进行下面的规程:
当一黑色对象与页面缓冲器合成时,它与二级黑色层合成。该黑色层通过简单地将对象暗度与黑色层暗度进行“或”运算而被更新,且从高分辨率黑色层重新计算中间分辨率连续色调黑色层的相应部分。
当一连续色调彩色对象与页面缓冲器合成时,它与连续色调层合成。该连续色调层和黑色层被更新如下:
无论连续色调对象在哪里模糊化黑色层,即使不是完全地不透明,被影响的黑色层像素也从黑色层被“推”到连续色调层,即与连续色调层合成并从黑色层取走。接着,连续色调对象与连续色调层合成。
如果一连续色调对象像素完全不透明,那么就不需要将相应的黑色像素推到背景连续色调层中,这是因为随后背景连续色调像素将完全被前景连续色调像素清除。
二级黑色层数据可以压缩形式传输到打印机。为此,可采用组4传真编码,但最好是将水平行程的修正霍夫曼编码删除,或使分辨率变得更高。或者,可采用EDRL压缩。
连续色调层数据也可以压缩的形式传输到打印机。为此,可采用JPEG或子波压缩。
另一方面,本发明为一种用于高性能打印机的打印机驱动程序的操作方法,其中,打印机驱动程序管理两层页面缓冲器;第一层用于连续色调数据,第二层用于二级数据,在此二级数据将通过打印机与连续色调数据合成;该方法包括以下步骤:
确定与连续层合成的连续色调数据何时模糊化二级层中的数据,从二级层中移走模糊的二级数据,并且或将其删除,或使之在这样的情况下,即由模糊化连续色调数据表示的图像和由模糊二级数据表示的图像之间有一些相互影响,在将连续色调数据与连续色调层合成之前将模糊的二级数据与连续色调层合成。
本发明用于彩色打印机的一模块化打印头,该打印头包括许多喷嘴,每个喷嘴具有一墨水供应口、一墨水沉积口和一喷射控制口,该喷射控制口用来接收信号,在一打印头的喷射循环期间使墨水点从沉积口(喷射)沉积。打印头的喷嘴按组或槽(pod)布置,其中每个槽的喷嘴的墨水供应口与一条公共墨水供应线路连接。每个槽的喷嘴按行布置(这些行沿横过待打印的页面的方向延伸),成行的喷嘴彼此偏移,从而如果同时喷射,每行喷嘴就将点沉积到不同的行上。每种不同颜色的槽布置在一起成为操作组,其中选定的相互独立的喷嘴子组具有它们的喷射控制口,用于控制喷嘴能够在一喷射循环的预定相位同时喷墨。
在一个实例中,每个槽中有两行喷嘴,一行喷嘴沿着页面上的一行沉积偶数的墨点,另一行喷嘴沿着页面上的相邻的行沉积奇数的墨点。
将喷嘴的行之间的偏移量设计成与在喷嘴下的纸张的运动相配合。
每个槽的喷嘴可沿着开始于第一端的第一行,然后沿着终止于另一端的相同方向的另一行按序喷射。
单个槽可包括十个喷嘴,它们共享一公共储墨器。五个喷嘴在一行中,另五个在另一行中。每个喷嘴可在间距为15.875mm的网格中产生直径为22.5mm的墨点。
每种不同颜色的一个槽可组合在一起形成色度槽(chromapod),其中不同颜色的槽是这样布置的,即由一种颜色的喷嘴打印的点与由其它颜色的喷嘴同时打印的点位于不同的行上,但每个色度槽的槽将按序打印同组的点。
青、品红、黄和黑色槽可组成一个色度槽。色度槽表示不同行上十个点的相同水平组的不同彩色分量。不同颜色槽之间的准确距离为点-宽度的固定倍数,且在打印时必须考虑这一点,即打印算法必须考虑不同颜色的点-宽度的可变距离。
一个或多个色度槽可形成在相位组中,其中在一给定喷射相位期间,启动槽组中的喷嘴组同时喷射。根据打印所需要的速度,同时启动一个或多个相位组的槽组。
五个色度槽可组合成一个单独的槽组。由于每个色度槽可包含40个喷嘴,因此每个槽组可包含200个喷嘴:50个青色喷嘴、50个品红喷嘴、50个黄色喷嘴和50个黑色喷嘴。
两个槽组可组合为一个单独的相位组。之所以命名为相位组,是因为一相位组中的喷嘴组在一给定的喷射相位中同时喷射。由两个槽组形成的一相位组的结构可允许通过两个槽组启动线进行低速打印和高速打印。
两个相位组可组合为一个单独的喷射组,其中每个区段具有四个喷射组。之所以命名为喷射组,是因为它们同时使相同的喷嘴喷射。两条启动线允许相位组的喷嘴在不同的喷射相位独立喷射。
4英寸打印头一般由八个区段并排构成,并且每个区段具有四个喷射组。
宽打印头可通过将两个打印头组合在一起而构成。因此一个8英寸打印头包括两个4英寸打印头,总共51,200个喷嘴。
喷嘴分级结构允许在保持均匀的功率消耗的情况下存在重叠相位和多种速度。另外,喷嘴分组槽提供了物理稳定性。
就功率的消耗而言,喷嘴分组能够进行低速和高速打印模式,从而允许可在不同产品结构中实现速度/功率消耗的平衡。
单独4英寸打印头可包括总共25,600喷嘴。根据待打印的信息,一打印循环包括使所有这些喷嘴喷射。为了迅速使所有的喷嘴喷射,将消耗很大功率,并且存在墨水的再充填和喷嘴干扰的问题。此外,一个喷嘴的喷射也在该喷嘴槽的公共储墨器内产生一定时间的声音扰动。这种扰动能干扰在相同槽中的另一喷嘴的喷射。因此,在一槽中的喷嘴的喷射应尽可能地彼此偏移。
为了说明这一点,每种颜色的一个喷嘴可从色度槽喷射,然后一喷嘴可从槽组内的下一个色度槽喷射。
两种喷射模式可定义为:低速打印模式和高速打印模式:
在低速打印期间,仅每个相位组的一个槽组被提供喷射脉冲,因此,两个槽组中仅有一个使喷嘴喷射。在低速打印模式中,在两个槽组中的色度槽必须在第一色度槽再次喷射之前全部喷射。
在低速打印模式中,128个喷嘴可从各个4英寸打印头同时喷射。喷射的喷嘴应间隔最大距离,从而16个喷嘴从八个区段中的每个区段喷射。为了使所有25,600个喷嘴喷射,不同的200组128个喷嘴必须喷射。
在高速打印期间,两个槽组都被设定,因此两个槽组的喷嘴都喷射。在高速打印模式中,在一个单独的槽组中的色度槽必须在第一色度槽再次喷射之前全部喷射。
在高速打印模式中,256个喷嘴可从各个4英寸打印头同时喷射。喷射的喷嘴应间隔最大距离,从而32个喷嘴从各个区段喷射。为了使所有25,600个喷嘴喷射,不同的100组256个喷嘴必须喷射。
因此,低速打印的时间是高速打印时间的二倍,这是因为高速打印迅速使许多喷嘴喷射两次。低速打印模式的功率消耗为高速打印模式功率消耗的一半。不过,应注意到:在这两种情况下,打印一页所消耗的能量是相同的。
打印头产生几条反馈的线路,从而调节喷射脉冲的定时。一个反馈信号通知控制器打印头有多热。这就允许控制器调节喷射脉冲的定时,这是因为温度影响墨水的粘度。第二反馈信号通知控制器可提供给激励器多大的电压。这就允许控制器通过调节脉冲宽度来补偿扁型电池或高压源。第三反馈信号通知控制器激励器的加热器的电阻率(欧姆每平方)。这就允许控制器调节脉冲宽度,从而在不考虑加热器电阻率的情况下保持一恒定的能量。第四反馈信号通知控制器加热器的关键部分的宽度,该宽度因平版印刷和蚀刻的变化而变化±5%。这就允许控制器适当地调节脉冲宽度。
加载循环将在随后的打印循环中待打印的信息加载到打印头。每个喷嘴的喷射控制口可具有相关的喷嘴启动位,其确定在打印循环中喷嘴是否进行喷射。该喷嘴启动位在加载循环中经一组移位寄存器被加载。一旦所有的移位寄存器加载满后,所有的位被并行传输到相应的喷嘴启动位。一旦传输发生,打印循环即可开始。只要所有喷嘴启动位的并行加载发生在打印循环的结尾,打印循环和加载循环就能同时发生。
打印操作必须以正确的顺序为打印头产生数据。作为一个例子,第一时钟脉冲可为下一打印循环的点0、800、1600、2400、3200、4000、4800和5600传输CMYK位。第二时钟脉冲可为下一打印循环的点1、801、1601、2401、3201、4001、4801和5601传输CMYK位。在提供了800个移位寄存器时钟脉冲之后,传输脉冲可被提供。
当然,在800个移位寄存器时钟脉冲中,移位寄存器必须根据与最后传输到喷嘴启动位的对应关系而进行加载,并且此时存在许多不同的布线可能性。一种加载(下文称布线)的可能性是这样的,即按槽的顺序加载位,并且在每个槽中位表示从槽的一端到另一端的每个喷嘴(在移动到第一行的第二喷嘴上之前,从第一行到最后一行有效地给第一喷嘴加载)。在一个2行的槽中,这意味着以明显为之字形的形式给喷嘴加载。另一种可能性是这样的,即按槽的顺序加载位,在每个槽中位表示每行,在每行中从槽的一端到另一端给喷嘴加载。
应该注意到:奇数和偶数CMYK输出虽然在相同的打印循环中被打印,但并不出现在相同的物理输出线路上。打印头中的奇数和偶数喷嘴的物理分隔,和不同颜色的喷嘴之间的分隔保证了它们将在页面的不同行上产生点。当加载数据到打印头时,必须考虑到这种相对差值。该行中的实际差值取决于应用在打印头中的喷墨机构的特性。该差值可由表示不同颜色的喷嘴之间距离的变量和相同颜色的喷嘴之间距离的变量来定义。
本发明为一用于彩色打印机的模块化打印头,该打印头包括许多喷嘴,其中每个喷嘴具有一墨水供应口,一墨水沉积口和一喷射控制口,该喷射控制口用来接收信号,从而在打印头的喷射循环中从沉积口(喷射)产生一墨水点的沉积。打印头的喷嘴按组或槽布置,其中每个槽的喷嘴的墨水供应口与一公共墨水供应线路相连。每个槽的喷嘴按行布置(这些行沿横过待打印页面的方向延伸),成行的喷嘴间彼此偏移,从而如果同时喷射,每行的喷嘴将点沉积到不同的行上。每种不同颜色的槽布置在一起成为操作组,其中选定的相互独立的喷嘴子组具有它们的喷射控制口,用于控制喷嘴能够在一喷射循环的预定相位同时喷墨。
在一个实例中,每个槽中有两行喷嘴,一行喷嘴沿着页面上的一行沉积偶数的墨点,而另一行喷嘴沿着页面上的相邻的行沉积奇数的墨点。
将喷嘴的行之间的偏移量设计成与在喷嘴下方的纸张运动相配合。
每个槽的喷嘴可沿着开始于第一端的第一行,然后沿着终止于另一端的相同方向的另一行按序喷射。
单个槽可包括十个喷嘴,它们共享一公共储墨器。五个喷嘴在一行中,另五个在另一行中。每个喷嘴可在间距为15.875mm的网格中产生直径为22.5mm的墨点。
每种不同颜色的槽可组合在一起形成色度槽,其中不同颜色的槽是这样布置的,即由一种颜色的喷嘴打印的点与由其它颜色的喷嘴同时打印的点位于不同的行上,但色度槽中的每个槽将按序打印同组的点。
青、品红、黄和黑色槽可组成一个色度槽。色度槽表示不同行上十个点的相同水平组的不同彩色分量。不同颜色槽之间的准确距离为点宽度的固定倍数,因此在打印时必须考虑这一点,即打印算法必须考虑不同颜色的点宽度的可变距离。
一个或多个色度槽可形成相位组,其中在一给定喷射相位期间,启动槽组中的喷嘴组同时喷射。根据打印所需要的速度,同时启动一个或多个相位组的槽组。
五个色度槽可组合成一个单独的槽组。由于每个色度槽可包含40个喷嘴,因此每个槽组可包含200个喷嘴:50个青色喷嘴、50个品红喷嘴、50个黄色喷嘴和50个黑色喷嘴。
两个槽组可组合为一个单独的相位组。之所以命名为相位组,是因为一相位组中的喷嘴组在一给定的喷射相位中同时喷射。由两个槽组形成的一相位组的结构可允许通过两个槽组启动线进行低速打印和高速打印。
两个相位组可组合为一个单独的喷射组,其中每个区段具有四个喷射组。之所以命名为喷射组,是因为它们同时使相同的喷嘴喷射。两条启动线允许相位组的喷嘴在不同的喷射相位独立喷射。
4英寸打印头一般由八个区段并排构成,并且每个区段具有四个喷射组。
宽打印头可通过将两个打印头组合在一起而构成。因此一8英寸打印头包括两个4英寸打印头,总共51,200个喷嘴。
喷嘴分级结构允许在保持均匀的功率消耗的情况下存在重叠相位和多种速度。另外,喷嘴分组槽提供了物理稳定性。
就功率的消耗而言,喷嘴分组能够进行低速和高速打印模式,从而允许可在不同产品结构中折衷地考虑速度/功率消耗。
一单独4英寸打印头可包括总共25,600喷嘴。根据待打印的信息,一打印循环包括使所有这些喷嘴喷射。为了迅速使所有的喷嘴喷射,将消耗很大功率,并且存在墨水的再充填和喷嘴干扰的问题。此外,一个喷嘴的喷射也在该喷嘴槽的公共储墨器内产生一定时间的声音扰动。这种扰动能干扰在相同槽中的另一喷嘴的喷射。因此,在一槽中的喷嘴的喷射应尽可能地彼此偏移。
为了说明这一点,每种颜色的一个喷嘴可从色度槽喷射,然后一喷嘴可从槽组内的下一个色度槽喷射。
两种喷射模式可定义为:低速打印模式和高速打印模式:
在低速打印期间,仅每个相位组的一个槽组被提供喷射脉冲,因此,两个槽组中仅有一个使喷嘴喷射。在低速打印模式中,在两个槽组中的色度槽必须在第一色度槽再次喷射之前全部喷射。
在低速打印模式中,128个喷嘴可从各个4英寸打印头同时喷射。喷射的喷嘴应间隔最大距离,从而16个喷嘴从八个区段中的每个区段喷射。为了使所有25,600个喷嘴喷射,不同的200组128个喷嘴必须喷射。
在高速打印期间,两个槽组都被设定,因此两个槽组的喷嘴都喷射。在高速打印模式中,在一个单独的槽组中的色度槽必须在第一色度槽再次喷射之前全部喷射。
在高速打印模式中,256个喷嘴可从各4英寸打印头同时喷射。喷射的喷嘴应间隔最大距离,从而32个喷嘴从每个区段喷射。为了使所有25,600个喷嘴喷射,不同的100组256个喷嘴必须喷射。
因此,低速打印的时间为高速打印时间的二倍,这是因为高速打印迅速使许多喷嘴喷射两次。低速打印模式的功率消耗为高速打印模式功率消耗的一半。不过,应注意到:在这两种情况下,打印一页所消耗的能量是相同的。
打印头产生几条反馈的线路,从而调节喷射脉冲的定时。一个反馈信号通知控制器打印头有多热。这就允许控制器调节喷射脉冲的定时,这是因为温度影响墨水的粘度。第二反馈信号通知控制器可提供给激励器多大的电压。这就允许控制器通过调节脉冲宽度来补偿扁型电池或高压源。第三反馈信号通知控制器激励器的加热器的电阻率(欧姆每平方)。这就允许控制器调节脉冲宽度,从而在不考虑加热器电阻率的情况下保持一恒定的能量。第四反馈信号通知控制器加热器的关键部分的宽度,该宽度因平版印刷和蚀刻的变化而变化±5%。这就允许控制器适当地调节脉冲宽度。
加载循环将在随后的打印循环中待打印的信息加载到打印头。每个喷嘴的喷射控制口可具有相关的喷嘴启动位,其确定在打印循环中喷嘴是否进行喷射。该喷嘴启动位在加载循环中经一组移位寄存器被加载。一旦所有的移位寄存器加载满后,所有的位被并行传输到相应的喷嘴启动位。一旦传输发生,打印循环即可开始。只要所有喷嘴启动位的并行加载发生在打印循环的末尾,打印循环和加载循环就能同时发生。
打印操作必须以正确的顺序为打印头产生数据。作为一个例子,第一时钟脉冲可为下一打印循环的点0、800、1600、2400、3200、4000、4800和5600传输CMYK位。第二时钟脉冲可为下一打印循环的点1、801、1601、2401、3201、4001、4801和5601传输CMYK位。在提供了800个移位寄存器时钟脉冲之后,传输脉冲可被提供。
当然,在800个移位寄存器时钟脉冲中,移位寄存器必须根据与最后传输到喷嘴启动位的对应关系而进行加载,并且此时存在许多不同的布线可能性。一种加载(下文称布线)的可能性是这样的,即按槽的顺序加载位,并且在每个槽中位表示从槽的一端到另一端的每个喷嘴(在移动到第一行的第二喷嘴上之前,从第一行到最后一行有效地给第一喷嘴加载)。在一个2行的槽中,这意味着以明显为之字形的形式给喷嘴加载。另一种可能性是这样的,即按槽的顺序加载位,在每个槽中位表示每行,在每行中从槽的一端到另一端给喷嘴加载。
应该注意到:奇数和偶数CMYK输出虽然在相同的打印循环中被打印,但并不出现在相同的物理输出线路上。打印头中的奇数和偶数喷嘴的物理分隔,和不同颜色的喷嘴之间的分隔保证了它们将在页面的不同行上产生点。当加载数据到打印头时,必须考虑到这种相对差值。该行中的实际差值取决于应用在打印头中的喷墨机构的特性。该差值可由表示不同颜色的喷嘴之间距离的变量和相同颜色的喷嘴之间距离的变量来定义。
本发明为一过渡调色器/合成器单元,用于对连续色调彩色层进行过渡调色,从而实现二级化,并在过渡调色的连续色调层上合成一黑色层,该过渡调色器/合成器单元包括:
输入口,用于接收一形式为一系列的连续色调彩色像素值的扩展连续色调彩色层和一形式为黑色点值的扩展黑色层;
抖动单元,用于抖动该输入口接收的每个连续色调彩色像素值并为每个彩色分量确定二级输出点的值;
合成单元,用于从该抖动单元接收该二级输出点的值和从该输入口接收该黑色点的值,并且在该过渡调色层上合成该黑色层,例如是这样进行的,即当一黑色点的值表示完全不透明时,每种颜色的过渡调色点的值便设定成表示无颜色;
一个时钟启动发生器,用于为连续色调彩色像素输入、黑色点输入和点输出的计时产生启动信号;
一个输出口,用于传送形式为一系列二级点的一组二级图像扫描线,其可使彩色平面分隔开。
输出的可以是一组1600dpi的二级图像扫描线。
彩色连续色调层可以是CMYK连续色调层。
一个输入连续色调CMYK FIFO可包括一个8KB满载行缓冲器。每一行读取一次,接着采用其与连续色调比例系数的乘积通过行复制来实现垂直方向上的比例放大。FIFO写入地址环绕(wrapping)不能执行,直到开始该行的最终重复使用为止,此时时钟启动发生器产生一启动环绕的连续色调换行启动信号。
或者,读取行与主存储器连续色调比例系数的乘积,使信息传输加快了65MB/s,而不再需要芯片内8KB行缓冲器。
该单元产生的数据的使用者一般是打印头接口。打印头接口不仅需要平面格式(即具有分开的彩色平面)的二级图像数据,还需要偶数和奇数像素分开。当彩色连续色调层是CMYK连续色调层时,该单元的输出级可采用8个并行像素FIFO,它们分别涉及偶数青色、奇数青色、偶数品红、奇数品红、偶数黄色、奇数黄色、偶数黑色和奇数黑色像素。
为此,时钟启动发生器还产生一个偶数信号,它用于选择输出点FIFO的偶数组或奇数组。
一旦开始,该单元便可进行操作直到它检测到页面结束的情况或通过其控制寄存器明显地停止住为止。
该单元产生一页具有特定宽度和长度的点,并可采用许多寄存器来提供数据,控制该页面结构和参数。
页面宽度寄存器接收与打印头宽度相对应的页面宽度数据。
页面长度寄存器接收与打印头长度相对应的页面长度数据。
左页边空白寄存器接收描述左页边空白位置的数据。
右页边空白寄存器接收描述右页边空白位置的数据。
从左页边空白到右页边空白的距离与对象页面宽度相对应。过渡调色器/合成器单元产生相对于该页面宽度的特定左、右页边空白之间的对象页面数据。
黑色页面宽度寄存器接收描述该黑色页面宽度的数据。
连续色调页面宽度寄存器接收描述该连读调页面宽度的数据。
过渡调色器/合成器单元根据特定的黑色和连续色调页面宽度来使用黑色和连续色调数据。
过渡调色器/合成器单元将黑色和连续色调数据夹在对象页面宽度中。这便使该黑色和连续色调页面宽度超过对象页面宽度,而不用在输入FIFO级中任何特定的线路终端逻辑电路。
为此,时钟启动发生器还产生一页边空白信号,它用于当当前点位置在页面的左或右页边空白中时产生白点。
过渡调色器/合成器单元在特定比例系数的基础上在水平方向和垂直方向上依照打印机分辨率换算连读调数据。可提供一个连续色调比例系数寄存器来接收一连续色调比例系数。这个比例系数必须在启动过渡调色器/合成器单元之前写入该连续色调比例系数寄存器。
过渡调色器/合成器控制和结构寄存器可根据下面的表格加以总结:
                过渡调色器/合成器控制和配置寄存器
  寄存器     宽度 说明
  开始     1 过渡调色器/合成器开始操作
  停止     1 过渡调色器/合成器停止操作
  页面宽度     14 打印页的页面宽度,以点计。这是为每行必须产生的点数。
  左页边空白     14 左页边空白位置,以点计。
  右页边空白     14 右页边空白位置,以点计。
  页面长度     15 打印页的页面长度,以点计。这是为每页必须产生的行数。
  黑色页面宽度     14 黑色层的页面宽度,以点计。它用于检测一黑色行的行结束。
  连续色调页面宽度     14 连续色调层的页面宽度,以点计。它用于检测一连续色调行的行结束。
  连续色调比例系数     4 用于依二级分辨率来换算连续色调数据的比例系数。
在抖动单元中,抖动量的每一点列都为256个独立的位。
或者,该量的每个点列可为固定的一组阈值。例如,采用三个8位阈值也仅消耗了24个位。现在,n个阈值限定了n+1个强度间隔,在其中相应的抖动单元的位置或者固定或者不固定。均匀抖动的连续色调像素值选择该n+1个间隔中的一个,并且其确定了相应的输出点的值。
可采用一个三阈值64×64×3×8位(12KB)抖动量来对连续色调数据进行抖动。这三个阈值形成一个适当的24位值,它可从抖动单元ROM在一个循环中找回。
如果在彩色平面之间需要抖动单元的记录,那么相同的三阈值可重现一次并用于抖动每个彩色分量。
如果不需要抖动单元的记录,那么该抖动单元可分成四个子单元并储存在四个可独立寻址ROM,其中四个不同的三阈值的值可从该ROM在一个循环中并行得到重现。四个彩色平面彼此以垂直和/或水平方向偏移32个点的形式共享相同的抖动单元。
可使用多阈值抖动单元。例如,一个三阈值单元三阈值的值和一强度值转换成一个时间间隔,由此而为1位或0位。三阈值的确定规则在下表中示出:
      三阈值确定规则
    时间间隔     输出
    V≤T1     0
    T1<V≤T2     1
    T2<V≤T3     0
    T3<V     1
合成单元在一过渡调色的CMYK层的点上合成一黑色层的点。如果黑色层暗度是1的话,那么过渡调色的CMY便设定为0。
假定4位的过渡调色为CCMCYCKC,1位的黑色层暗度为Kb,则合成的逻辑电路限定在下表中:
        合成逻辑电路
    色彩通道     条件
    C     Cc∧﹁Kb
    M     Mc∧﹁Kb
    Y     Yc∧﹁Kb
    K     Kc∨Kb
时钟启动发生器采用了一组计数器。这些计数器的内在逻辑电路限定在下表中:
                         时钟启动发生器计数器逻辑电路
  计数器 缩写   宽度   数据 加载条件   衰减条件
  点 D   14   页面宽度 RPa∨EOLb (D>0)^clk
  行 L   15   页面长度 RP (L>0)^EOL
  左页边空白 LM   14   左页边空白 RP∨EOL (LM>0)^clk
  右页边空白 RM   14   右页边空白 RP∨EOL (RM>0)^clk
  偶数/奇数点 E   1   0 RP∨EOL clk
  黑色点 BD   14   黑色宽度 RP∨EOL (LM=0)^(BD>0)^clk
  连续色调点 CD   14   连续色调宽度 RP∨EOL (LM=0)^(CD>0)^clk
  连续调子像素 CSP   4   连续色调比例系数 RP∨EOL∨(CSP=0) (LM=0)^clk
  连续调子行 CSL   4   连续色调比例系数 RP∨(CSL=0) EOL^clk
  a RP(复位页)条件:外部信号b EOL(行结束)条件:(D=0)^(BD=0)^(CD=0)
时钟启动信号的逻辑电路限定在下表中:
             时钟启动发生器输出信号逻辑电路
    输出信号 条件
    输出点时钟启动 (D>0)^﹁EOPa
    黑色点时钟启动 (LM=0)^(BD=0)^﹁EOP
    连续色调像素时钟启动 (LM=0)^(CD=0)^(CSP=0)^﹁EOP
    连续色调行前进启动 (CSL=0)^﹁EOP
    偶数 E=0
    页边空白 (LM=0)∨(RM=0)
    a EOP(页结束)条件:L=0
本发明为一抖动单元,用于以一连续色调彩色像素值阵列的形式对一连续色调彩色图像进行数字过渡调色,从而使点二级化。该抖动单元包括一抖动量,相应于每个抖动单元位置,该抖动量包含固定的一组n个阈值,这组阈值限定了n+1个强度间隔,在这些强度间隔中抖动单元位置可固定或不固定。
这样一个抖动单元是如此操作的,即通过检查抖动量来确定每个彩色分量的二级输出点的值,从而抖动在输入口处接收的每个连续色调彩色像素值。
可采用一组阈值对一抖动量的点列进行有效地游程长度编码,即对点列进行压缩。这取决于这样一个事实,即在列中相邻的点之间一般存在相干性。当阈值的数量有限或固定时,一般的抖动量就不必再显示出来,从而在抖动量产生时考虑这些有限数量的阈值。当阈值的数量限制到1时,就可获得一个常规的抖动显示阵。
可为图像的每个彩色分量提供一个多阈值单元。所有的多阈值单元在操作中与抖动量连接,并且每个多阈值单元通过确定与输出点位置相应的抖动单元位置在连续色调值唯一选择的强度间隔中是否是固定的,来确定与该连续色调彩色像素分量值相应的该输出点的值。
可采用三个阈值,并且它们可是8位阈值。
如果在彩色平面之间需要抖动单元的记录,那么一多阈值可取回一次并用于抖动每个彩色分量。
如果在彩色平面之间不需要抖动单元的记录,那么该抖动单元可分成多个子单元并储存在独立的可寻址存储器中,其中不同的多阈值的值可从该可寻址存储器中并行取回。
在将要对一四色彩色分量连续色调层进行过渡调色的情况下,四个独立的三阈值单元可分别为各彩色分量接收一系列连续色调彩色像素值,并且一个抖动单元地址发生器可连同四个四向多路转换器进行操作,为相应的三阈值单元控制四个不同三阈值的值从该抖动单元的子单元中的取回。
该三阈值单元可将三阈值的值T1、T2和T3以及一个强度值V转换为一个时间间隔,由此为1位或0位,其中三阈值的确定规则在下表中示出:
      三阈值确定规则
    时间间隔     输出
    V≤T1     0
    T1<V≤T2     1
    T2<V≤T3     0
    T3<V     1
另一方面,本发明为一种过渡调色方法,它用于在一抖动单元中以一连续色调彩色像素值阵列的形式对一连续色调彩色图像进行过渡调色,从而实现点二级化,其中所述抖动单元包括一抖动量,该过渡调色方法包括下列步骤:
通过固定的一组n个阈值来显示所述抖动量的每个抖动单元的位置,其中这n个阈值限定了n+1个强度间隔,在这些强度间隔中所述抖动单元的位置可限定成不固定或固定;
采用抖动到所述n+1个强度间隔中唯一选择的间隔中的连续色调像素分量值,从而确定与所述连续色调像素分量值相应的输出点的值。
该抖动单元还包括一相应于图像的每个彩色分量的多阈值单元,所有多阈值单元在操作中与该抖动量连接;并且该方法还包括下列步骤:
在每个所述多阈值单元中通过确定与输出点位置相应的抖动单元位置在连续色调值唯一选择的强度间隔中是否是固定的,来确定与所述连续色调彩色像素分量值相应的所述输出点的值。
本发明为一打印机,它配有一个用于这样类型打印头的打印头控制器,即该打印头包括一个温度传感器,用来产生一指示打印头的温度的信号;许多喷嘴,其中每个喷嘴具有一墨水供应口,用来接收储墨器的墨水,一个墨水沉积口,用来喷出墨点,以及一个喷射控制口,用来在打印头的一喷射循环中接收信号,从而从沉积口产生一墨点沉积。在此,打印头控制器包括从温度传感器取回表示打印头温度的信号的装置,和为喷嘴的喷射控制口提供喷射信号的装置,并且该打印头控制器在每次打印作业之前是可操作的,从而设定所有的喷嘴喷射,并执行一系列改变的喷射循环从而为每个喷嘴提供一系列的短喷射脉冲,每个脉冲的持续时间对于喷射墨滴是不充足的,但对于加热墨水是足够的,直到指示打印头温度的信号指示其温度已达到操作平衡温度为止。
在预热模式期间的反馈可由T传感(见下文定义)提供,并一直持续到温度高于环境温度大约30℃为止。关于何时达到平衡温度的反馈温度信息是重要的,这是由于时间或温度可能根据墨水的组成而发生变化。
在一个实例中,每个喷嘴需要大约200个脉冲。
预热模式的持续时间可在50毫秒左右,并且取决于墨水的组成。
当数据传输到打印机时,预热在其进行时不影响性能。
预热循环包括一个用1s时间给所有喷嘴加上负载的单个加载循环(即设定所有的喷嘴喷射),和向每个喷嘴发射的许多短喷射脉冲。脉冲的持续时间必须不足以喷射墨滴,但足够加热墨水。脉冲的持续时间可随着打印机中的每种墨水而发生变化。每个喷嘴总共需要约200个脉冲,循环的顺序与标准的打印循环相同。
本发明为一装在计算机存储器中的资源,需要同时访问该资源的多重并行处理机和一用来产生该资源中坐标的资源地址发生器,其中该资源分为不同的部分,每一部分储存在不同的存储器存储体中,并且该资源地址发生器产生这样的坐标,即用于选择由每一处理机采用的该资源的多个部分,选择是这样布置的,即保证每一部分在某个时间内仅被一个处理机使用。该选择也可保证每一处理机按照这些部分在资源中所出现的顺序来使用它们。
该资源可为一多阈值抖动显示阵,用于以一连续色调彩色像素值阵列的形式来对一连续色调彩色图像进行数字过渡调色,从而使点二级化。与每个抖动单元位置相应,所述抖动显示阵可包括固定的一组n个阈值,这些阈值限定了n+1个强度间隔,在这些间隔中该抖动单元的位置限定成不固定或固定。
需要同时访问该资源的多重并行处理机可以是多个为图像的每种彩色分量提供的多阈值单元。所有的多阈值单元在操作中与多阈值抖动显示阵相连,并且每个多阈值单元通过确定与输出点位置相应的抖动单元位置在连续色调值唯一选择的强度间隔中是否是固定的,来确定与所述连续色调彩色像素分量值相应的所述输出点的值。
这样一个抖动单元是如此操作的,即通过检查多阈值抖动显示阵来确定每个彩色分量的二级输出点的值,从而抖动在输入口处接收的每个连续色调彩色像素值。
该抖动单元可分成多个子单元并储存在单独的可寻址存储器中,不同的多阈值的值可从其中并行得到取回。
在将要对一个四色彩色分量连续色调层进行过渡调色的情况下,四个独立的三阈值单元可分别为各彩色分量接收一系列连续色调彩色像素值,并且一个抖动单元地址发生器可连同四个四向多路转换器进行操作,从而为相应的三阈值单元控制四个不同三阈值的值从该抖动单元的子单元中的取回。
该地址发生器容易这样布置,即如果抖动单元的记录在彩色平面之间不理想的话,那么没有两阈值单元需要同时访问相同的子单元。
另一方面,本发明为一种访问装在计算机存储器中的资源的方法,其中多重并行处理机需要同时访问该资源并且一个资源地址发生器在该资源中产生坐标,该方法包括的步骤有:
将该资源分成不同的部分;
将每个部分储存在不同的存储器存储体中;以及
操作该资源地址发生器以产生这样的坐标,即用于选择由每一处理机采用的该资源的多个部分,选择是这样布置的,即保证每一部分在同一时间仅被一个处理机使用。
该选择也可保证每一处理机按照这些部分在资源中所出现的顺序来使用它们。
该资源可为一多阈值抖动显示阵,用于以一连续色调彩色像素值阵列的形式来对一连续色调彩色图像进行数字过渡调色,从而使点二级化。对于每个抖动单元位置,所述抖动显示阵可包括固定的一组n个阈值,这些阈值限定了n+1个强度间隔,在这些间隔中该抖动单元的位置限定成不固定或固定。
需要同时访问该资源的多重并行处理机可以是多个为图像的每种彩色分量提供的多阈值单元。所有的多阈值单元与多阈值抖动显示阵相连,并且每个多阈值单元通过确定与输出点位置相应的抖动单元位置在连续色调值唯一选择的强度间隔中是否是固定的,来确定与所述连续色调彩色像素分量值相应的所述输出点的值。
该抖动单元可分成多个子单元并储存在单独的可寻址存储器中,不同的多阈值的值可从其中并行取回。
在将要对一个四色彩色分量连续色调层进行过渡调色的情况下,四个独立的三阈值单元可分别为相应的彩色分量接收一系列连续色调彩色像素值,并且一个抖动单元地址发生器可连同四个四向多路转换器进行操作,从而为相应的三阈值单元控制四个不同三阈值的值从该抖动单元的子单元中的取回。
该抖动单元地址发生器可产生抖动单元坐标,这些坐标反映了对该抖动单元按模计算的当前的点坐标。该抖动单元坐标的低阶位可用于寻找每个抖动子单元内的位置,而该抖动单元坐标的高阶位可用于选择哪一个抖动子单元是由每个多阈值单元使用的。这一选择是如此布置的,即保证每个子单元在同一时间内仅被一多阈值单元使用,并保证每个多阈值单元按照抖动子单元在该抖动单元中出现的顺序来使用它们。
本发明为一打印机系统,它用于具有这样类型打印头的打印机中,即该打印头包括许多喷嘴,其中每个喷嘴具有一墨水供应口,一个墨水沉积口,以及一个喷射控制口,该喷射控制口用来在打印头的一喷射循环中从沉积口接收信号,从而产生墨点沉积。该打印机还包括一个储墨器(例如为一个墨盒),用来将墨水供应给所述喷嘴的墨水供应口,并且所述打印机系统在操作中预测所述储墨器何时用完墨水。该打印机系统包括:一个输入口、一个存储器和一个处理机,其中该输入口用来接收一指示由打印机打印的或要打印的墨水点数的信号,该存储器用来储存表示在所述储墨器中剩余的墨水点数的数据,该处理机用来接收所述输入口的信号并当打印时更新所述存储器。指示由打印机打印的墨水点数的信号与在所述喷嘴的喷射控制口处接收的信号相关。
到了打印预定页数的尾端,便可产生一种指示,它表明在储墨器中是否剩有足够的墨水来打印其它页。
除非剩有足够的墨水,才可以打印新的一页。
指示打印的点数或将要打印的点数的信号可以来自打印头的控制器、打印头本身或储墨器。
点计数器可以维持从打印头喷出的墨点的个数。该点计数器可以定期归零。该点计数器可具有:输入口,每当打印一点时,该输入口接收一信号;带有时钟和归零输入端子的位计数器;绕该计数器的正反馈连接件;和显示当前计数的计数器的输出端。
一编码器可以放置到该点计数器的输入线内,从而转换接收的信号。
在一个打印机包括多个储墨器的情况下,打印机系统可以包括与每个储墨器相应的输入口,从而接收一指示打印机打印的或待打印的储墨器的墨点数的信号,并且存储器可以存储表示在每个储墨器中剩余的墨点数的数据。
另一方面,本发明为一种打印机系统的操作方法,从而预知所述储墨器的墨水何时用完,该操作方法包括下列步骤:
接收一指示打印机打印的或将要打印的墨点数的信号;
存储代表储墨器中剩余墨点数的数据;
当打印时更新存储器;
其中,指示打印机打印的或将要打印的墨点数的信号与所述喷嘴的喷射控制口处接收的信号有关。
在打印预定页数的尾端,可产生一种指示,它表明在储墨器中是否剩余有足够打印下一页的墨水。除非剩有足够的墨水,才打印新的一页。
本发明为打印机的喷射脉冲持续时间控制系统,它包括:
接收指示可用电压的信号的第一输入口,
可编程的脉冲持续时间表,以在该第一输入口接收的信号为索引,从而产生表示一喷射脉冲的预定持续时间的控制信号,
传递该控制信号的输出口。
可设置一第二输入口,从而接收一指示打印机打印头温度的信号。在这种情况下,可编程脉冲持续时间表由来自于该第一和第二输入口的信号为索引,从而产生控制信号。
脉冲持续时间表允许使用低成本的电源,并有助于保持更精确的喷墨。
表的多个条目(entry)可以代表处于0-4ms范围内的值,并根据索引的条目产生一控制输出。
一脉冲宽度发生器在使用中处于该控制系统的下游,从而接收控制输出并产生用于打印头的喷射脉冲。
可在打印过程中打印第一页之前写入该表。如果需要的话,可在打印过程的各页间更新该表。
表中的每一条目可以包括一来自下列一种或多种特性的加权:
●用户亮度设置
●墨水粘度曲线
●T传感,通知控制器打印头有多热。由于温度影响墨水的粘度,所以这便允许控制器调节喷射脉冲的定时。
●V传感,通知控制器多大的电压可以供给激励器。这便允许控制器通过调节脉冲宽度来补偿一扁型电池或高压源。
●R传感,通知控制器激励器加热器的电阻率(欧姆每平方)。这便允许控制器调节脉冲宽度,从而不考虑加热器的电阻率而保持一恒定电能。
●W传感,通知控制器加热器关键部分的宽度,其因平版印刷和蚀刻的变化而变化±5%。这便允许控制器适宜地调节脉冲宽度。
脉冲持续时间表可以有256个条目,且每一条目可以是8位的。指示电压的信号可来自V传感,而指示温度的信号可来自T传感。在这种情况下,在输入口处接收的信号可以作转换,而用于索引该表。该表的8位条目可以由两个4位数指示,所以上4位可来自V传感,而下4位可来自T传感。
另一方面,本发明涉及用于打印机的喷射脉冲持续时间控制系统,它包括:
第一输入口;
可编程脉冲持续时间表;
输出口;
本发明还涉及一种产生喷射脉冲持续时间控制信号的方法,该方法包括的步骤有:
接收一指示可用电压的第一信号;
通过该第一信号去索引该可编程脉冲持续时间表,从而产生控制信号,该控制信号代表喷射脉冲的预定持续时间;以及
传递该控制信号。
附图的简要说明
下面参照附图将对体现本发明的一打印机的实例进行描述,其中:
图1是一示出了在该打印机中进行双重缓冲时可达到持续的打印速率的表;
图2是从申请到打印页的总体数据流的流程图;
图3是iPrint打印机处于关闭位置的视图;
图4是iPrint打印机处于开启位置的视图;
图5是通过打印机的纸张路径的剖面图;
图6是Memjet打印头墨盒和打印头加盖机构的剖面图;
图7是图6的该Memjet打印头墨盒和打印头加盖机构的断面图;
图8是打印机控制器的视图;
图9是对一简单的黑白图像进行编码的实例;
图10是以喷射顺序编号的由十个打印喷嘴组成的槽的示意图;
图11是以加载顺序编号的同样由十个打印喷嘴组成的槽的示意图;
图12是色度槽的示意图;
图13是由五个色度槽组成的槽组的示意图;
图14是由两个槽组组成的相位组的示意图。
图15是区段、喷射组、相位组、槽组和色度槽之间关系的示意图;
图16是典型的打印循环中A启动和B启动线的相位图;
图17是该打印机控制器机构的图表;
图18是概述页面扩展和打印数据流的流程图;
图19是EDRL扩展器单元的方框图;
图20是EDRL流解码器的方框图;
图21是游程长度解码器的方框图;
图22是游程长度编码器的方框图;
图23是JPEG解码器的方框图;
图24是过渡调色器/合成器单元的方框图;
图25示出页面宽度和页边空白间关系的一系列页行;
图26是多阈值抖动单元的方框图;
图27是该三阈值单元逻辑电路的方框图;
图28是该打印头接口的内部结构的方框图;
图29是在打印N和N+1行的过程中进行双缓冲的总体图表;
图30是LLFU结构的方框图;
图31是缓冲器的总体结构图表;
图32是缓冲器的逻辑电路结构图表;
图33是产生A启动和B启动脉冲宽度的方框图;
图34是点计数逻辑电路的图表;
图35是扬声器接口的方框图;
图36是两层页面缓冲器的图表;
图37示出在白色图像上合成黑色对象的一系列图表;
图38示出在白色图像上合成连续色调对象的一系列图表;
图39示出在包含连续色调对象的图像上合成黑色对象的一系列图表;
图40示出在包含黑色对象的图像上合成不透明的连续色调对象的一系列图表;
图41示出在包含黑色对象的图像上合成透明的连续色调对象的一系列图表;
图42是带有打印机驱动程序部件的Windows 9x/NT的打印系统的方框图。
优选和其它实施例的说明
1 介绍
本发明将参照一高性能的彩色打印机进行描述,该彩色打印机将照相质量图像的复制和杂志质量文字的复制结合起来。该打印机利用一8”页宽按需滴墨型微电子机械喷墨(“Memjet”)打印头,该打印头产生1600点每英寸(dpi)的二级CMYK(青色、品红、黄色和黑色)点。该打印机每分钟打印30张全彩色的A4页面或信纸页面,并且称作一入口级桌面打印机。已将该打印机称之为iPrint,并在下面的说明中将其这样称之。
1.1操作综述
iPrint直接利用二级黑色复制黑色文字和图形,并利用抖动的二级CMYK复制连续色调的图像和图形。实际上,iPrint支持的黑色分辨率为800dpi,连续色调分辨率为267像素每英寸(ppi)。
使用中,iPrint经一相对低速(1.5MB字节/s)的通用串行总线(USB)连接到一工作站或一个人电脑(PC)上[14]。iPrint依靠PC机将每一页面再现到连续色调像素和黑色点的级上。该PC机将再现的每一页面压缩成小于3MB,从而在下两秒将之发送到打印机。iPrint进行解压缩,并以Memjet打印头的速度逐行打印该页面。iPrint包括足够存储两个压缩过的页面(6MB)的缓冲存储器,从而允许当打印页面的同时接收下一页,但其不足以存储即便是单个的未压缩页面(119MB)。
1.2页面宽度
标准Memjet喷嘴的布置结构具有一半英寸的单元晶格,因此一般能适用于为半英寸倍数的页面宽度。任意的页面宽度可根据市场中常规的喷嘴布置来实现。最初Memjet的预制构件是一广泛使用的四英寸打印头,其有效地利用了六英寸的硅片。因此iPrint设计方案构思出八英寸Memjet打印头,其由两个四英寸打印头连接在一起。采用一个宽打印头在A4纸/信纸页面上实现完全超出页面格式(fullbleed),这一点只影响iPrint设计的几个方面,明确地说即是精确的机械设计和打印头接口的逻辑电路。
2 基于Memjet的打印
一个Memjet打印头产生1600dpi的二级CMYK点。在低扩散纸张上,每个喷射的墨滴形成一几乎完全为圆形的直径为22.5微米的点。点容易独立地产生,从而允许散开的点抖动而被最完全地利用。由于Memjet打印头是页宽型的,并以一恒定的进纸速度工作,所以四色平面被完整地记录而打印下来,从而允许进行理想的点式(dot-on-dot)打印。由于在彩色平面之间没有空间交互作用,所以每一彩色面使用相同的抖动显示阵。
一页面布置可以包含图像、图形和文字的混合体。连续色调图像和图形是利用一随机的散开点的抖动来复制的。不象聚集点(或调幅)抖动,散开点(或调频)抖动复制高的空间频率(即图像细微层次),该频率几乎达到点分辨率的极限,与此同时,复制较低的空间频率直至达到它们的全彩色浓度。我们仔细设计了一随机的抖动显示阵,从而在平铺(tiled)过图像时没有不许可的低频图案。这样的话,其尺寸一般大于需要用来支持许多强度级(即257强度级的16×16×8位)的最小尺寸。iPrint使用了一64×64×3×8位的抖动量。在抖动的设计过程中,这个量通过允许一点多次改变在强度范围中的状态而提供了一特别大的自由度(而不是象在通常的抖动显示阵中那样,只有一次)。
人类反差灵敏度在空间频率为每视野度为约3周时达到峰值,然后对数性地下降,减少到原来的百分之一,并且在大于40周/度时难于测量[2]。在一正常的400mm到250mm之间的观察距离中,在打印页上反差灵敏度大致转变为150-250周每英寸(cpi),或根据Nyquist定理转变为300-500个样品每英寸。考虑到色彩灵敏度比灰度级灵敏性要迟钝一些,因此高于约400像素每英寸(ppi)的连续色调分辨率就限制性地利用,并且实际上通过抖动仅仅稍微地引起彩色误差。
黑色文字和图形是直接利用二级黑色点来复制的,因此在打印之前不会去掉假频(antialiased)(即低通滤波)。因此,除上面所讨论的知觉上的限制外,对文字进行超抽样(supersampled),从而当在空间中与图形成为一体时产生平滑的边缘。文字分辨率达到约1200dpi便有助于让人感觉到文字清晰(当然,假定纸张是低扩散纸)。
3.1限制条件
USB(通用串行总线)是在新的PC机上的标准的低速外围连接件[4]。推荐选用标准高速外围连接件IEEE1394,但不幸的是,它在PC99的说明书中仍然是可选择的[5],并且当iPrint第一次投放市场时,该连接件没有广泛地被使用。因此iPrint经USB与个人电脑(PC)或工作站相连,并且USB连接件的速度将最明显的限制条件强加于iPrint系统的体系机构。在一持续的30页/分钟的打印速率下,1.5MB/s的USB强加了一项30MB/页的限制条件。由于信号中断,在打印一页面的过程中,基于Memjet的打印机便产生看得见的不连续性,对于打印机,这是一个优点,即在开始打印之前接收完整的页面,而消除了缓冲器欠载运行的可能性。由于打印机可仅包含有限制的缓冲存储器,即两页大小或6MB,所以该3MB/页的限制必须被认为是绝对的。
图1示出了在该打印机中进行双重缓冲时可达到持续的打印速率。第一阶段1要求在PC中再现第一页,并且这需花2秒。在第二阶段2,再现下一页,并且第一页传送到打印机,又花2秒。在第三阶段中,打印第一页、传送第二页并再现第三页,花2秒。结果打印第一页共花6秒,此后每两秒打印一页。
其它桌面连接件的选择提供与USB相似的带宽,且因此将类似的限制条件强加到体系机构中。这些包括:并口2MB/s,10Base-T以太网1MB/s。
3.2页面再现和压缩
页面再现(或光栅化)能以各种方式在PC机和打印机间分开。一些打印机支持一种整页说明语言(PDL),如Postscript,并包含相应地复杂的再现器。其它打印机只为再现文字提供特定的支持,从而达到高文字分辨率。通常这包括对内置的或可下载的字体的支持。在每种情况下,装入一个再现器便减少了PC机的再现负担,并减少了从PC机传输到打印机的数据量。不过,这代价高。与可能存在的情况相比,这些打印机要更复杂些,并且常常不能为该PC机的图形系统提供完全的支持,通过应用这个图形系统可进行编程、再现并打印页面。它们常常未能利用当前PC机的高性能,并不能对预计的PC机性能中的指数增长产生影响。
iPrint依靠PC4再现页面,即将连续色调图像和图形再现为像素级,而将黑色文字和图形再现为点级。iPrint5只包含一简单的再现引擎,该引擎抖动连续色调数据,并将该结果与任何的前景二级黑色文字和图形组合。这项策略简化了打印机,并且使打印机不依靠任何页面说明语言或图形系统。它完全地利用当前PC机的高性能。该策略的负面效应是潜在大量必须从PC机传送到打印机的数据。因此,我们利用压缩将这一数据减小至3MB/页,压缩的数据允许以30页/分钟的持续打印速率打印。
图2是从申请打印6至打印一页7的总体数据流的流程图。
8”×11.7”的A4页面具有1600dpi的、114.3M字节的二级CMYK页面尺寸和300ppi的、32.1MB的连续色调CMYK页面尺寸。
在打印机驱动程序8中,我们使用JPEG压缩9来压缩连续色调数据。尽管JPEG是有内在损耗的,压缩比为10∶1或更小,不过该损耗通常可忽略[16]。为了获得一连续色调对二级的整数比,并且为了提供一些压缩的活动余地(leeway),我们选择267ppi的连续色调分辨率。这产生了25.5MB的连续色调CMYK的页面尺寸,相应的压缩比为8.5∶1,从而在3MB/页的限制范围内,并且在每一维中产生一1∶6的连续色调对二级比。
按打印机分辨率(1600dpi)去掉假频的一整页黑色文字(和/或图形)产生28.6MB的二级图像。由于按1600dpi去掉假频的文字产生的效果小却带给PC机沉重的负担,所以我们选择按一完全可接受的800dpi对文字去假频。这便产生了二级的7.1MB的图像,这需要无损耗的小于2.5∶1的压缩比,从而在3MB/页的限制范围内。我们采用从组4传真(Group 4 Facsimile)修改的二维压缩方案来实现这一点,所有这些一般用10标记。
只要一页的图像和文字区是非重叠的,那么它们的任何组合都落在3MB的范围内。如果文字处于一背景图像的顶部,那么最坏的情况便是压缩的页面尺寸达到6MB(取决于实际文字的压缩比)。这落在打印机页面缓冲存储器的范围内,但阻止在打印机内进行页面的双缓冲,因此将打印机页面的打印速率减少了2/3,即打印速率为10页/分钟。
3.3页面扩展和打印
如上所述,PC将连续色调图像和图形再现为像素级,而将黑色文字和图形再现为点级。这些像素级和点级由不同的装置压缩11,并一起传送给打印机。
打印机包括两个3MB的页面缓冲器,一个页面缓冲器12用于从PC接收页面,一个页面缓冲器13用于打印该页面。当压缩过的页面要打印时,打印机便扩展该页面。这种扩展包括对267ppi的连续色调CMYK图像数据解压缩14,将产生的连续色调像素过渡调色成1600dpi的二级CMYK点15,对800dpi的二级黑色文字数据进行解压缩16,并在相应的二级CMYK图像点上合成产生的二级黑色文字点17。
从申请到打印出页面的总体数据流在图2中示出。
4 打印机硬件
由于页面宽度Memjet打印头的简单性,所以iPrint的结构非常紧凑。当其关闭时只有270mm宽、85mm深、77mm高。图3是当iPrint21关闭时的视图。
盖22打开以成为纸盘的一部分,如图4所示。一第二部件23在盖22内铰接,并在打开时延伸该纸盘。出纸盘24可滑动地从打印机前部延伸。
前板25在盖22打开时露出,其包含用户界面,即开关按钮26、电能指示LED27、进纸按钮28、出纸LED29和墨水不足LED30。
4.1纸张路径
iPrint使用一标准的送纸机构。图5示出了该纸张路径50,其中一简单的步进电机51驱动送纸辊52和纸张的传送。当向前运转时,该步进电机在运行的纸张路径的开始和结束端,分别驱动纸张驱动辊53和空转轮54。当反转时,该步进电机驱动送纸辊52,该送纸辊夹住来自纸张进纸器的最上面的一张纸,并以最短的距离传送该纸至纸张驱动辊53,该纸在此受到机械介质传感器55的检测。
纸张定中滑动器56确保纸张居中。这保证了一简单的定中心的纸张传感器检测该纸张,并且也确保带有对称的页边空白的宽于打印头的纸张被打印。
4.1.1Memjet打印头
图5中也示出了可更换的Memjet打印头墨盒60。这表示了可实施下面四种可能方式中的一种方式来采用一例如iPrint的产品中的打印头和墨水盒:
●永久打印头,可更换墨水盒(如这里所示)
●单独的可更换打印头和墨水盒
●可再充填的组合打印头和墨水盒
●一次性的组合打印头和墨水盒
打印头墨盒60的下方是一打印头组件61和一打印头加盖机构62,它们在图6的剖面图和图7的断面图中示出。当不使用时,Memjet打印头63剩余有墨水,因此必须加盖,防止墨水经喷嘴蒸发。墨水的蒸发会使墨水的成分逐渐沉积而损害喷嘴的工作。
iPrint包括一机械的页宽加盖机构62,其由一绕枢轴转动的加盖模制件组成,该模制件带有一弹性的密封件65和海棉66。当打印头没有使用时,该加盖模制件64由一弹簧顶在该打印头组件61的表面上,并且该弹性密封件65与该打印头组件的表面一致,并围绕该打印头63产生气密封。海棉66用来在打印头清洗循环中吸住喷射的水滴。当打印头使用时,该加盖模制件64远离该打印头组件61,并脱离纸张路径。
该加盖模制件64通过一套弹性臂68从一杆69偏移。该加盖模制件64和臂68与杆69绕其轴线转动。一滑轮70安装在杆69的端部。该滑轮70与一驱动轮71接触。当打印时,该驱动轮71与送纸电机相连,并沿开盖方向72被带动。这使滑轮70和杆69绕其轴线转动,并摆动该盖模制件64远离打印头。一旦滑轮转到开盖滑动点73,滑轮和盖模制件停止转动。当打印完成时,驱动轮反转并沿加盖的方向74被驱动。一旦滑轮转动到加盖滑动点75时,滑轮和加盖模制件停止转动,并且加盖弹簧将加盖板保持在顶住打印头组件表面的位置。弹性臂68帮助加盖板67与打印头组件61的表面一致。
4.2打印机控制器
图8示出了打印机控制器80,其由一小的PCB81组成,只带少量部件即一64M位的RDRAM82、iPrint中心处理机(ICP)芯片83、一通知用户出现错误的扬声器84、一QA芯片85、一外部3V DC电源接头86、一外部USB连接件87、一与送纸步进电机相连的连接件88、挠曲PCB89以及一连接打印头63的连接件90,其中该挠曲PCB89与纸张传感器55、LED7、9和10以及按钮6和8相连。
4.3墨水盒和墨水路径
墨水盒有两种型式即一种大,一种小。两种都适合iPrint单元的后部的同样的墨水盒槽。
5 打印机控制协议
这一节描述在一主机和iPrint之间使用的打印机控制协议。它包括控制和状态处理以及实际页面说明。
5.1控制和状态
USB装置关于打印机的分类定义[15]提供了对单向和双向IEEE1284并行端口的仿真[3]。在其最初级处,允许主机确定打印机容量(通过GET-DEVICE-ID)、获得打印机状态(通过GET-PORT-STATUS)并使打印机复位(通过SOFT-RESET)。下表1描述了Centronics/IEEE1284打印机状态字段:
         表1 Centronics/IEEE1284打印机状态
    字段 说明
    选择 选择打印机并用来传送数据
    缺纸 打印机存在缺纸状况
    错误 打印机出现错误状况(包括缺纸和无选择)
个人电脑打印子系统一般提供一些IEEE1284支持的能级(level)。因此打印机中的IEEE1284的兼容性简化了相应打印机驱动程序的研制。打印机的USB装置的分类定义试图对该同样的兼容性产生影响。
iPrint不支持打印机的USB装置分类定义之外的控制协议。应该注意:如果定义了一较高级别的控制协议,那么如无墨水这样的状况也能通知给用户(而不只经过打印机无墨水LED)。
iPrint接收为原始传送的页面说明,即在任何较高级别的控制协议内不加密。
5.2页面说明
iPrint以完全的点分辨率(1600dpi)复制黑色,但以稍低的分辨率采用过渡调色的方式复制连续色调色。因此,页面说明被分成黑色层和连续色调层。该黑色层被限定成在该连续色调层上进行合成。
黑色层由位图组成,该位图包含相应于每一像素的1位暗度。该黑色层毛面(matte)具有的分辨率是打印机点分辨率的整数倍。最高的支持分辨率是1600dpi,即打印机完全点分辨率。
连续色调层由包含相应于每一像素为32位的CMYK色的位图。这种连续色调图像具有的分辨率是打印机点分辨率的整数倍。最高的支持分辨率是267dpi,即打印机点分辨率的1/6。
连续色调分辨率一般也是黑色分辨率的整数倍,从而简化了打印机驱动程序的计算。不过,这并不是必要的。
黑色层和连续色调层都是以压缩的形式在与打印机相连的低速USB连接件上进行有效的传送的。
5.2.1页面结构
iPrint具有一可打印的页面区,其由打印头的宽度、纸张路径的特征和当前选择的打印介质的尺寸来确定。
可打印的页面区具有的一最大宽度为8”。如果实际页面宽度大于8”,那么无疑会产生对称的左右页边空白。如果实际页面宽度小于8”,那么可打印的页面宽度就减少了。可打印的页面区没有最大长度。其只是实际页面长度,扣除了由纸张路径的特性施加上下页边空白。
对象页面大小受到可打印页面区的限制,扣除了页面说明中指定的明显的(对象)左、上页边空白。
在理论上,iPrint不会在排版中施加一上或下页边空白,即它允许在垂直方向上完全超出页面格式。不过实际上,由于iPrint使用了一8”打印头而使其没有设计成一完全超出页面格式的A4/信纸的打印机,所以施加一人为的上下页边空白,从而避免包括大的海棉体,该海棉体要大得足以应付规则的出边打印。
5.2.2页面说明格式
表2示出了iPrint所希望达到的页面说明格式。
                        表2 页面说明格式
字段   格式 说明
特征标记(signature)   16位整数 页面说明格式特征标记
版本   16位整数 页面说明格式版本号
结构尺寸   16位整数 页面说明的定尺寸部分的尺寸
对象分辨率(dpi)   16位整数 对象页面分辨率。对于iPrint来说,总是1600dpi。
对象页面宽度   16位整数 对象页面宽度,以点计。
对象页面高度   16位整数 对象页面高度,以点计。
对象左页边空白   16位整数 对象左页边空白宽度,以点计。
对象上页边空白   16位整数 对象上页边空白高度,以点计。
黑色比例系数   16位整数 从黑色分辨率到对象分辨率的比例系数(必须是2或更大)
黑色页面宽度   16位整数 黑色页面的宽度,以黑色像素计。
黑色页面高度   16位整数 黑色页面的高度,以黑色像素计。
黑色页面数据尺寸   16位整数 黑色页面数据的尺寸,以字节计。
连续色调比例系数   16位整数 从连续色调分辨率到对象分辨率的比例系数(必须是6或更大)
连续色调页面宽度   16位整数 连续色调页面的宽度,以连续色调像素计。
连续色调页面高度   16位整数 连续色调页面的高度,以连续色调像素计。
连续色调页面数据尺寸   16位整数 连续色调页面数据的尺寸,以字节计。
黑色页面数据   EDRL字节流 压缩的二级黑色页面数据
连续色调页面数据   JPEG字节流 压缩的连续色调CMYK页面数据
除了明确限定成与可打印的页面区相关外,每一页面说明都是完整并独立的。没有数据从页面说明单独地传送到打印机,该页面说明面是在此提到的页面说明。
页面说明包含一签名和版本,其允许打印机识别页面说明格式。如果缺少签名和/或版本,或与打印机不兼容,那么打印机拒绝该页面。
页面说明限定了分辨率和对象页面的尺寸。如果必要的话,黑色和连续色调层就加到对象页面上。当黑色或连续色调比例系数不是对象页面宽度或高度的倍数时,便发生上面状况。
对象左和上页边空白限定了对象页面在可打印的页面区内的定位。
黑色层参数限定了黑色层的像素尺寸、其与对象分辨率所成的整数比例系数以及它的压缩页面数据的尺寸。可变尺寸的黑色页面数据遵循页面说明的定尺寸部分。
连续色调参数限定了连续色调层的像素尺寸、其与对象分辨率所成的整数比例系数以及它的压缩页面数据的尺寸。可变尺寸的连续色调页面数据遵循页面说明的定尺寸部分。
在页面说明中的所有整数以big-endian字节的顺序存储。
可变尺寸黑色页面数据和可变尺寸连续色调页面数据对准(align)8字节的界限。所需填充的尺寸包括在页面说明结构的定尺寸部分的尺寸和可变尺寸的黑色数据的尺寸内。
根据打印机中的页面缓冲存储器,全部的页面说明具有一小于3MB、最大尺寸为6MB的对象尺寸。
下面的各节描述压缩黑色层和压缩连续色调层的格式。
5.2.3二级黑色层的压缩
5.2.3.1组3和组4传真压缩
组3传真压缩算法[1]无损耗地压缩二级数据,以用来在慢的并有噪声的电话线上传送数据。该二级数据代表经扫描后的白色背景下的黑色文字和图形,并且对于这种类的图像来说,对算法进行了调整(例如对于半色调的二级图像来说,没有明显地调整)。1D组3的算法对每一扫描行进行游程长度-编码(runlengh-encode),接着对得出的游程长度进行霍夫曼编码。在0至63范围内的游程长度用终止码编码。在64至2623范围内的游程长度用组成代码编码,该代码中的每一个是64的倍数,后面跟着一终止码。大于2623的游程长度用多个其后跟着一终止码的组成代码编码。霍夫曼表是固定的,但对于黑白游程来说,该表是被分别调整的(除了1728上的组成代码,这些代码是公共的)。可能时,2D组3算法对一扫描行编码,将其作为以前一扫描行为基准的一套短边增量(deltas)(0,±1,±2,±3)。增量符号是熵编码(以便0增量符号只有一位长)。对一2D编码行内的边进行游程长度编码,并通过一前缀加以识别,其中这个2D编码行不能被增量编码。1D和2D编码行的标记不同。不管实际需要与否,为了确保解码器能从线路噪声中恢复,并伴有最少的图像退化,1D编码行以规则的时间间隔产生。2D组3达到6∶1的压缩率[13]。
组4传真算法[1]无损耗地压缩二级数据,以便在无差错的通讯线路(即,线路真正是无差错的,或以一较低的协议级完成差错更正)上传送。组4算法是基于2D组3算法的,主要的改变在于:由于传送是被假定为无差错的,所以1D编码行不再辅助差错复原,而以规则的时间间隔产生。对于CCITT这套测试图像[13]来说,组4压缩率达到20∶1至60∶1。
组4压缩算法的设计对象和性能限定它为二级黑色层的一压缩算法。不过,它的霍夫曼表被调整到一较低的扫描分辨率(100-400dpi),并且它不适合对大于2623的游程长度编码。在800dpi下,我们的最大游程长度当前为6400。尽管一组4解码器核心可以用在打印机控制器芯片(第7节)内,但它不能处理那些正常地在400dpi传真应用程序中所出现的游程长度,因此需要修改。
由于组4的大量的益处来自于增量编码,所以仅基于增量编码的更简化的算法可能符合我们的需要。这个方案在下面将详细说明。
5.2.3.2二级边增量和游程长度(EDRL)的压缩格式
边增量和游程长度(EDRL)压缩格式大概取决于组4的压缩格式和它的预报器(precursor)[1][17]。
EDRL使用三种符号,它们适宜经过熵编码。这些是创建边、删除边和边增量。每一行是参照它的前行进行编码的。第一行的前行被定义为白色。每一行都定义成从白色开始。如果一行实际上是从黑色开始的(较小可能发生的情形),那么必须在偏离0处定义一黑边。每一行必须在其左手端即在偏离页面宽度处定义一边。
如果在最大增量范围内有一边具有相同的传感(白对黑,黑对白),那么能参照前行内的一边对一边进行编码。这利用了一个边增量代码。较短和较有可能的增量有较短代码。选择最大增量范围(±2),从而与典型的点符(glyph)边的增量分布相匹配。这种分布大部分不取决于磅值。表3给出了一典型的实例。
    表3 800dpi的10磅次的边增量分布
    |增量|     概率
    0     65%
    1     23%
    2     7%
    ≥3     5%
一边也能利用同一行中前一边的游程长度来编码。对于短(7位)和长(13位)游程长度来说,使用的是一个创建边代码。简而言之,不象组4,游程长度没有熵编码过。为了保持边增量与前一行的边暗中同步,当在前一行中未使用的每一边在当前行经过时,其被“删除(kill)”。这使用的便是删除边代码。页结束代码告诉解码器到了页尾。
应注意到:为了支持800dpi的A4/信纸页面,特定地选择7位和13位游程长度。能支持较长的游程长度而不会对压缩性能产生明显的影响。例如,如果支持1600dpi的压缩,游程长度应该至少分别是8位和14位。一通用的选择可以是8位和16位,因此支持40”宽1600dpi页面。
表4定义全套代码。应注意到在此没有行结束代码。解码器利用页面宽度来检测行结束。代码长度通过代码出现的相对概率来制定。
                        表4 EDRL代码字
 代码     编码     后缀 说明
 Δ0     1     - 不移动相应边
 Δ+1     010     - 移动相应边+1
 Δ-1     011     - 移动相应边-1
 Δ+2     00010     - 移动相应边+2
 Δ-2     00011     - 移动相应边-2
 删除边     0010     - 删除相应边
 创建近边     0011     7位RL 从短的游程长度创建边(RL)
 创建远边     00001     13位RL 从长的游程长度创建边(RL)
 页结束(EOP)     000001     - 页尾标志
图9示出了对一简单的黑白图像90进行编码的实例。该图像被排列成像素92的行91。第一行91假定是白色的,并且既然它是白色的,便将其编码为Δ0。应注意到这样一个常见的现象:利用单个位(Δ0)对跟在另一全白行后的一全白行进行编码,并且利用两位(Δ0,Δ0)对跟在另一全黑行后的一全黑行编码。在一行内的一边,如第四行93,用创建代码定义这些边。在下一行94中,Δ-1和Δ+1代码被用来移动边。在下一行95中,更便于创建一新边和删除旧边,而不是移动它。
EDRL编码实例
应注意到:上述文字描述的是压缩格式,而不是压缩算法本身。对于同一图像来说,能产生多种等同的编码,其中一些代码比另一些更加紧凑。例如,一纯的游程长度编码与压缩格式一致。压缩算法的对象是发现一用于一给定图像的即使不是最好也是良好的编码。
下面是一产生一行参照其原行的EDRL的编码的简单算法。
#define SHORT_RUN_PRECISION7    ∥  precision of short run
#define LONG_RUN_PRECISION13    ∥  precision of long run
EDRL_CompressLine
(
  Byte prevLine[],               ∥  previous(reference)bi-level line
  Byte currLine[],               ∥  current(coding)bi-level line
  int lineLen                  ∥  line length
  BITSTREAM s                  ∥  output(compressed)bitstream
)
  int prevEdge=0              ∥  current edge offset in previous line
  int currEdge=0              ∥  current edge offset in current line
  int codedEdge=currEdge      ∥  most recent coded(output)edge
  int prevColor=0             ∥  current color in previous line(0=
white)
  int currColor=0             ∥  current color in current line
  int prevRun                  ∥  current run in previous line
  int currRun                  ∥  current run in current line
  bool bUpdatePrevEdge=true   ∥  force first edge update
  bool bUpdateCurrEdge=true   ∥  force first edge update
				
				<dp n="d48"/>
    while(codedEdge<lineLen)

    ∥possibly update current edge in previous line

    if(bUpdatePrevEdge)

       if(prevEdge<lineLen)

        prevRun=GetRun(prevLine,prevEdge,lineLen,prevColor)

       else

        prevRun=0

        prevEdge+=prevRun

        prevColor=!prevColor

        bUpdatePrevEdge=false

    ∥possibly update current edge in current line

    if(bUpdateCurrEdge)

       if(currEdge<lineLen)

        currRun=GetRun(currLine,currEdge,lineLen,currColor)

    else

    currRun=0

    currEdRe+=currRun

    currColor=!currColor

    bUpdateCurrEdge=false
∥output delta whenever possible,i.e.when
∥edge senses match.and delta is small enough
if(prevColor==currColor)
   delta=currEdge-prevEdge

    f(abs(delta)<=MAX_DELTA)

       PutCode(s,EDGE_DELTA0+delta)

       codedEdRe=currEdge

       bUpdatePrevEdge=true

       bUpdateCurrEdge=true

       continue

    ∥kill unmatched edge in previous line

    if(prevEdge<=currEdge)

       PutCode(s,KILL_EDGE)

       bUpdatePrevEdge=true

    ∥create unmatched edge in current line

    if(currEdge<=prevEdge)

       PutCode(s,CREATE_EDGE)

       if(currRun<128)

        PutCode(s,CREATE_NEAR_EDGE)

        PutBits(currRun,SHORT_RUN_PRECISION)

      else

       PutCode(s,CREATE_FAR_EDGE)

       PutBits(currRun,LONG_RUN_PRECISION)

      codedEdge=currEdge
      bUpdateCurrEdge=true
应注意到:算法看不到行间实际边的连续性,并且实际上可与两行间的“错误”边相匹配。幸运地是,压缩格式与此无关,由于它正确地解码,所以“错误”的匹配很难对压缩率产生有害的影响。
就完整性而言,下面给出相应的解码算法。它形成打印机控制器芯片(第7节)内的EDRL扩展器的核心。
EDRL_DecompressLine
(
  BITSTREAM s,                                       ∥ input
(compressed)bitstream    
   Byte prevLine[],          ∥previous(reference)bi-level line
   Byte currLine[],          ∥current(coding)bi-level line
   int lineLen              ∥line length
)
   int prevEdge=0          ∥current edge offset in previous line
   int currEdge=0          ∥current edge offset in current line
   int prevColor=0         ∥current color in previous line(0=white)
   int currColor=0         ∥current color in current line
   while(currEdge<lineLen)

     code=GetCode(s)

     switch(code)

     case EDGE_DELTA_MINUS2:

     case EDGE_DELTA_MINUS1:

     case EDGE_DELTA0:

     case EDGE_DELTA_PLUS1:

     case EDGE_DELTA_PLUS2:

        ∥create edge from delta

        intdelta=code-EDGE_DELTA_0

       int run=prevEdge+delta-currEdge

        FillBitRun(currLine,currEdge,currColor,run)

        currEdge+=run

        currColor=!currColor
        prevEdge+=GetRun(prevLine.prevEdge,lineLen,prevColor)

        prevColor=!prevColor

     case KILL_EDGE:

        ∥discard unused reference edge

        prevEdge+=GetRun(prevLine,prevEdge,lineLen,prevColor)

        prevColor=!prevColor
				
				<dp n="d50"/>
    case CREATE_NEAR_EDGE:

    case CREATE_FAR_EDGE:

      ∥create edge explicitly

      int run

      if(code==CREATE_NEAR_EDGE)

      run=GetBits(s,SHORT_RUN_PRECISION)

      else

        run=GetBits(s,LONG_RUN_PRECISION)

      FillBitRun(currLine,currEdge,currColor,run)

      currColor=!currColor

      currEdge+=run
5.2.3.3EDRL压缩性能
表5示出了CCITT测试文档上的组4和EDRL的压缩性能,其中CCITT测试文档用以选择组4的算法。每一文档代表400dpi扫描的一单个页面。组4的较高性能归因于它的熵编码游程长度,该游程长度被调整至400dpi。
    表5 400dpi下标准CCITT文档的组4和EDRL压缩性能
CCITT文档号   组4的压缩率     EDRL压缩率
    1     29.1     21.6
    2     49.9     41.3
    3     17.9     14.1
    4     7.3     5.5
    5     15.8     12.4
    6     31.0     25.5
    7     7.4     5.3
    8     26.7     23.4
杂志文字一般已排过版,其字体为一带有衬线的字体(如Times),磅值为10。按照这个尺寸,一A4/信纸页面支持14000个字符,而一典型的杂志页面只支持7000字符。文字很少以小于5的磅值排版。在800dpi下,文字不能利用一标准字体在小于2的磅值处有意义地再现。表6例举了易辨认的各种磅值。
                   表6 不同磅值的文字
    磅值     字样(Times字体)
    8     The quick brown fox jumps over the lazy dog.
    9     The quick brown fox jumps over the lazy dog.
    10     The quick brown fox jumps over the lazy dog.
表7示出了以800dpi再现的文字磅值变化的页面上组4和EDRL的压缩性能。应注意到:EDRL在文字按磅值为3进行排版的一整页上实现了所需的压缩比2.5。在测试页上字符的分布是建立在英文的统计[12]的基础上的。
           表7 800dpi文字上的组4和EDRL压缩性能
    磅值     字符/A4页面    组4压缩率     EDRL压缩率
    2     340000     2.3     1.7
    3     170000     3.2     2.5
    4     86000     4.7     3.8
    5     59000     5.5     4.9
    6     41000     6.5     6.1
    7     28000     7.7     7.4
    8     21000     9.1     9.0
    9     17000     10.2     10.4
    10     14000     10.9     11.3
    11     12000     11.5     12.4
    12     8900     13.5     14.8
    13     8200     13.5     15.0
    14     7000     14.6     16.6
    15     5800     16.1     18.5
    20     3400     19.8     23.9
就9或更大的磅值来说,EDRL的压缩性能稍微胜过组4,这只是由于组4的游程长度代码被调整到400dpi。
这些压缩结果证实:与2D编码相比,熵编码游程长度对压缩产生的影响更少,除非数据垂直相关不足,比如在字符十分小的情形中。
5.2.4连续色调层压缩
5.2.4.1JPEG压缩
JPEG压缩算法[6]以一指定的质量标准无损耗地压缩一连续图像。它在小于5∶1的压缩率下引入了难以觉察的图像退化,并且在小于10∶1的压缩率引入了可忽略的图像退化。
JPEG一般首先转换图像为一色空间,该空间将亮度和色度分成分离的彩色通道。由于人类视觉系统对亮度要比对色度更敏感,这便允许对色度通道二次取样,而无明显的损耗。在第一步后,每一彩色通道被分别压缩。
图像被分成8×8像素块。然后,第一块经一离散余弦变换(DCT)被转换成频域。这种转换具有以相对较低的频率系数集中图像能的效果,这便允许较高频的系数更粗略地被量化。通过定制频率系数来实现进一步的压缩,从而使邻近0系数的可能性最大,然后对0游程进行游程长度的编码。最后,对游程长度和非0频率系数进行熵编码。解压缩是压缩相反的过程。
5.2.4.2CMYK连续色调JPEG压缩格式
将CMYK连续色调层压缩成一个隔行扫描的彩色JPEG字节流。隔行扫描需要在打印机中提供利用空间的解压缩,但会将解码器限制成两组霍夫曼表而不是四组(即每彩色通道一组)[16]。如果亮度和色度区分开的话,那么亮度通道可共享一组表,而色度通道共享另一组表。
如果认为亮度/色度的区分不论对于表的共享还是对于色度的二次抽样来说都是必要的话,那么就将CMY转换成YCrCb,并且及时地将Cr和Cb二次抽样。把K作为一亮度通道来处理并且不用二次抽样。
JPEG字节流是完整并独立的。它包含所有需要提供解压缩的数据,其中包括量化和霍夫曼表。
6 memjet打印头
一个8英寸memjet打印头是由两个标准的并接在一起的4英寸memjet打印头构成的。
这两个4英寸的打印头是采用一种用在iprint中的特定方式用导线连接起来的。由于布线之前需要了解一下4英寸的打印头,所以在这里对该4英寸的打印头作一个概述。
6.1 4英寸打印头的组成
每个4英寸打印头是由8个区段构成的,每个区段的长度为1/2英寸。每个区段用来在页面的不同部分上打印上二级青色、品红、黄色和黑色点,从而生成最终的图像。
由于打印头以1600dpi的扫描分辨率打印点,所以每个墨点的直径大致为22.5微米,并且间隔开15.875微米的距离。因而每个半英寸的区段打印800个点,这8个区段与表8中所示的位置相应。
               表8 由每个区段寻址的最终图像点
    区段           打印头1           打印头2
    第一个点     最后一个点     第一个点     最后一个点
    0     0     799     6,400     7,199
    1     800     1,599     7,200     7,999
    2     1,600     2,399     8,000     8,799
    3     2,400     3,199     8,800     9,599
    4     3,200     3,999     9,600     10,399
    5     4,000     4,799     10,400     11,199
    6     4,800     5,599     11,200     11,999
    7     5,600     6,399     12,000     12,799
尽管每个区段产生该最终图像的800个点,但每个点都是由二级青、品红、黄色和黑色墨水的组合显示的。因为打印是二级的,所以输入的图像应是抖动的或是错误-扩散(error-diffused)的,从而带来最佳效果。
每个区段包含3,200个喷嘴:青、品红、黄色和黑色各为800个。一个4英寸打印头包含8个这样的区段,总共有25,600个喷嘴。
6.1.1一个区段内的喷嘴分组
之所以将单个区段内的喷嘴分组,是为了保证物理稳定性和在打印过程中使耗电最少。就物理稳定性来说,共有10个喷嘴共享相同的储墨器。就电力消耗来说,分组方式能实现低速和高速的打印模式。
打印头支持两种打印速度,从而允许在不同的产品构造中折衷地考虑速度/电力消耗。
在低速打印模式中,128个喷嘴从每个4英寸打印头同时喷射。喷射的喷嘴应最大程度地远离,从而16个喷嘴可从每个区段喷射。为了使所有的25,600个喷嘴喷射,必须使不同的200组128个喷嘴喷射。
在高速打印模式中,256个喷嘴从每个4英寸打印头同时喷射。喷射的喷嘴应最大程度地远离,从而32个喷嘴可从每个区段喷射。为了使所有的25,600个喷嘴喷射,必须使不同的100组256个喷嘴喷射。
低速模式中的电力消耗是高速模式中的一半。不过,应注意在这两种情况下打印一页所消耗的电能是相同的。
6.1.1.1十个喷嘴形成一个槽
单个槽100是由共享一个公共储墨器5的10个喷嘴101构成的。5个喷嘴为一行,另5个为一行。每个喷嘴在相邻15.875微米的网格上产生直径为22.5微米的点。图10示出了单个槽100的布置方式,其中喷嘴101按照其必须遵循的喷射顺序编号。
尽管喷嘴是按此顺序喷射的,但喷嘴的关系和打印页上点的实际位置是不同的。一行上的喷嘴表示的是页面上一行的偶数点,而另一行上的喷嘴表示的是页面上相邻行的奇数点。图11示出的是相同的槽100,其中喷嘴按照其必须遵循的加载顺序编号。
因此,一个槽中的喷嘴逻辑上是按照1个点的宽度隔开的。喷嘴之间精确的间隔距离取决于Memjet喷射系统的性能。将打印头设计成:喷嘴交替排列,从而与纸张的运动相匹配。
6.1.1.2每种色彩的一个槽形成一个色度槽
每种色彩的一个槽也即青色槽121、品红色槽122、黄色槽123和黑色槽12组4合成一个色度槽125。一个色度槽表示的是不同行上同一水平组的10个点的不同彩色分量。不同色彩槽间的精确距离取决于Memjet操作参数,并且会因Memjet设计的不同而不同。该距离被认为是点宽的固定数字,且因此当打印时必须这样考虑:青色喷嘴打印的点与那些由品红、黄色或黑色喷嘴打印的点所处的行不同。打印规则允许距离变化到大约各色间的8个点宽长。图12示出了单个的色度槽。
6.1.1.3五个色度槽形成一个槽组
5个色度槽125组成单个的槽组126。由于每个色度槽包含40个喷嘴,所以每个槽组包含200个喷嘴:50个青色喷嘴、50个品红喷嘴、50个黄色喷嘴和50个黑色喷嘴。这一布置方式在图13中示出,其中色度槽编号为0-4。应注意到:为清楚可见,将相邻色度槽间的距离放大了。
6.1.1.4两个槽组形成一个相位组
2个槽组126组成单个的相位组127。之所以命名为相位组,是因为一个相位组内的喷嘴组在给定的喷射相位中是同时喷射的(这在下面将详细地作出解释)。由两个槽组形成一个相位组,完全是为了通过2条槽组启动线来实现低速和高速打印。
在低速打印中,在一个给定的喷射脉冲中仅设定两条槽组启动线中的一条,所以仅一个槽组使喷嘴喷射。在高速打印中,设定两条槽组启动线,所以两个槽组使喷嘴喷射。由于高速打印一次便使两倍的喷嘴数量喷射,因此低速打印所花的时间是高速打印的两倍。
图14示出了一个相位组的结构。为清楚可见,将相邻槽组之间的距离放大了。
6.1.1.5两个相位组形成一个喷射组
两个相位组127(相位组A和相位组B)组成单个的喷射组128,其中每个区段129内有4个喷射组。之所以命名为喷射组,是因为它们都同时使相同的喷嘴喷射。两条启动线即A启动线和B启动线允许相位组A喷嘴和相位组B喷嘴独立地作为不同的喷射相位喷射。这一布置方式在图15中示出。为清楚可见,将相邻组之间的距离放大了。
6.1.1.6喷嘴分组简介
表9是有关打印头中喷嘴分组的简介。
                  表9 单个4英寸打印头的喷嘴分组
   分组的名称   组成     重复率 喷嘴量
   喷嘴   基本单元     1∶1  1
   槽   每个槽由喷嘴组成     10∶1  10
   色度槽   每个C、M、Y、K色度槽由槽组成     4∶1  40
   槽组   每个槽组由色度槽组成     5∶1  200
   相位组   每个相位组由槽组组成     2∶1  400
   喷射组   每个喷射组由相位组组成     2∶1  800
   区段   每个区段由喷射组组成     4∶1  3,200
   4英寸打印头   每个4英寸打印头由区段组成     8∶1  25,600
一个8英寸打印头由两个4英寸打印头共51,200个喷嘴构成。
6.1.2加载和打印循环
单个4英寸打印头共包含25,600个喷嘴。一个打印循环涉及根据待打印的信息,致使所有的这些喷嘴喷射。一个加载循环涉及给打印头加载上随后打印循环中待打印的信息。
每个喷嘴都具有相关的喷嘴启动位,用于确定喷嘴是否在打印循环中喷射了。该喷嘴启动位(每个喷嘴具有一个喷嘴启动位)通过一组移位寄存器被加载。
逻辑上说,每个区段具有4个移位寄存器(每种彩色为一个),每个移位寄存器为800-deep。因为多个位移动到给定彩色的移位寄存器中,所以它们导向交替脉冲(alternate pulse)上的下部和上部喷嘴。每个800-deep移位寄存器自身包括两个400-deep移位寄存器:一个用于上部的喷嘴,而一个用于下部的喷嘴。交替的多个位移动到交替内部寄存器。不过,就外部接口而言,只有单个的800-deep移位寄存器。
一旦所有的移位寄存器都已完全加载(800个加载脉冲)了,那么所有的位都并行转换为合适的喷嘴启动位。这等于单个的25,600位的并行转换。一旦转换已发生时,打印循环就可开始了。只要所有喷嘴启动位的并行加载在打印循环的末端进行,打印循环和加载循环便可同时发生。
6.1.2.1加载循环
加载循环涉及给打印头的移位寄存器加上下一个打印循环的喷嘴启动位。
每个区段具有4个与青色、品红、黄色和黑色移位寄存器直接相关的输入端。这些输入端称作C数据输入、M数据输入、Y数据输入和K数据输入。由于有8个区段,所以每个4英寸打印头共有32色输入线。SR时钟线上的单个脉冲(在所有8个区段之间共享)将该32位转移到合适的移位寄存器。交替脉冲分别将多个位转移到下部和上部喷嘴。由于有25,600个喷嘴,所以转移共需要800个脉冲。一旦所有的25,600位已转移了时,该共享的P转移线上的单个脉冲便使移位寄存器中的数据并行转换成合适的喷嘴启动位。
通过P转移上的脉冲进行的并行转移必须发生在打印循环结束之后。要不然,打印线的喷嘴启动位会不正确。
由于所有的8个区段都加上了单个SR时钟脉冲,所以任何打印步骤必须按照打印头的正确顺序产生数据。例如,第一SR时钟脉冲会转移下一个打印循环的点0,800,1600,2400,3200,4000,4800和5600的CMYK位。第二SR时钟脉冲会转移下一个打印循环的点1,801,1601,2401,3201,4001,4801和5601的CMYK位。在800个SR时钟脉冲转移之后,便可指定P转移脉冲。
应格外注意:奇数和偶数CMYK输出尽管是在相同的打印循环中打印的,但不出现在相同的实际输出线上。打印头内奇数和偶数喷嘴的实际隔开以及不同色喷嘴之间的隔开保证了它们在页面的不同行上产生点。当将数据加载到打印头中时,必须考虑到这一相对的差量。各行中的实际差量取决于用在打印头中的喷墨机构的性能。该差量可用变量D1和D2来限定,其中D1是不同色喷嘴之间的距离,而D2是相同色喷嘴之间的距离。表10示出了转移到4个第一脉冲上打印头区段n的点。
                表10 转移到4英寸打印头的点的顺序
 脉冲     点     黑色行   黄色行   品红行   青色行
  1     800Sa     N   N+D1 b   N+2D1   N+3D1
  2     800S+1     N+D2 c   N+D1+D2   N+2D1+D2   N+3D1+D2
  3     800S+2     N   N+D1   N+2D1   N+3D1
  4     800S+3     N+D2   N+D1+D2   N+2D1+D2   N+3D1+D2
a S等于区段数(0-7)b D1等于不同色喷嘴间的行数(例如=4-8)c D2等于相同色两行喷嘴间的行数(例如=1)
所有800个脉冲的转移情况也就是这样的。
数据可以20MHZ的最大速率输入到打印头中,加载下一行的所有数据需要40μs。
6.1.2.2打印循环
一个4英寸打印头包含25,600个喷嘴。为迅速使这些喷嘴喷射,会消耗很大的功率,并且存在墨水的再充填和喷嘴干扰上的问题。因此,限定了两种喷射模式:低速打印模式和高速打印模式,即:
●在低速打印模式中,有200个相位,其中每个相位使128个喷嘴喷射。这相当于每区段或每4个喷射组使16个喷嘴喷射。
●在高速打印模式中,有100个相位,其中每个相位使256个喷嘴喷射。这相当于每区段或每8个喷射组使32个喷嘴喷射。
在给定喷射脉冲中喷射的喷嘴的确定是通过:
●3位色度槽选择(从一喷射组的5个色度槽中选择1个)
●4位喷嘴选择(从一槽的10个喷嘴中选择1个)
●2位槽组启动线(选择0、1或2个槽组来喷射)
当设定一个槽组启动线时,通过色度槽选择和喷嘴选择的确定仅指定的槽组中的4个喷嘴喷射。当设定两个槽组启动线时,两槽组都使它们的喷嘴喷射。对于低速模式来说,需要两个喷射脉冲,其中它们的槽组启动分别为10和01。对于高速模式来说,仅需要一个喷射脉冲,其中槽组启动为11。
喷射脉冲的持续时间由A启动和B启动线来确定,它们分别使相位组A和相位组B的喷嘴由所有的喷射组喷射。一般喷射脉冲的持续时间为1.3-1.8μs。脉冲的持续时间取决于墨水的粘度(取决于温度和墨水的性能)和打印头需要的电量。参看第6.1.3节,对于打印头补偿温度变化的反馈作了详细描述。
A启动和B启动线是分开的,以便喷射脉冲能重叠在一起。因而,低速打印循环的200个相位由100个A相位和100个B相位构成,从而有效地给出100组相位A和相位B。同样,高速打印循环的100个相位由50个A相位和50个B相位构成,从而有效地给出50组相位A和相位B。
图16示出了一个典型的打印循环中的A启动线130和B启动线131。在高速打印中,每个启动线进行50次循环周期为2μs的循环,而在低速打印中每个启动行进行100次循环周期为2μs的循环。如图所示,在大约标称值一半的循环次数的最小和最大范围内作微小的变化是可接受的。
就高速打印模式而言,喷射顺序为:
●色度槽选择0,喷嘴选择0,槽组启动11(相位A和B)
●色度槽选择1,喷嘴选择0,槽组启动11(相位A和B)
●色度槽选择2,喷嘴选择0,槽组启动11(相位A和B)
●色度槽选择3,喷嘴选择0,槽组启动11(相位A和B)
●色度槽选择4,喷嘴选择0,槽组启动11(相位A和B)
●色度槽选择0,喷嘴选择1,槽组启动11(相位A和B)
●色度槽选择-1;喷嘴选择0;槽组启动10(相位A和B)
●...
●色度槽选择3,喷嘴选择9,槽组启动11(相位A和B)
●色度槽选择4,喷嘴选择9,槽组启动11(相位A和B)
对于低速打印模式而言,喷射顺序相似。槽组启动为01和10的两个相位取代了槽组启动为11的高速模式下的每个相位,如下所示:
●色度槽选择0,喷嘴选择0,槽组启动01(相位A和B)
●色度槽选择0,喷嘴选择0,槽组启动10(相位A和B)
●色度槽选择1,喷嘴选择0,槽组启动01(相位A和B)
●色度槽选择-1,喷嘴选择0,槽组启动10(相位A和B)
●...
●色度槽选择3,喷嘴选择9,槽组启动01(相位A和B)
●色度槽选择3,喷嘴选择9,槽组启动10(相位A和B)
●色度槽选择4,喷嘴选择9,槽组启动01(相位A和B)
●色度槽选择4,喷嘴选择9,槽组启动10(相位A和B)
当一个喷嘴喷射时,大致需要100μs的时间来再充填。在这一再充填时间结束之前,喷嘴不能喷射。这便限制了每行100μs的最快打印速度。在高速打印模式中,打印一行的时间为100μs,从而不同行喷嘴喷射之间的时间间隔与再充填时间相配。低速打印模式要比高速打印慢一些,因而也是可以接受的。
一个喷嘴的喷射也会在该喷嘴槽的公共储墨器内引起一定时间的声干扰。这种干扰能干涉到相同槽内另一喷嘴的喷射。因此,一个槽内多个喷嘴的喷射应该尽可能地相互偏离。因此,我们使一个色度槽中的四个喷嘴(每色为一个喷嘴)喷射,然后再使槽组中的下一个色度槽进行喷射。
在低速打印模式中,槽组是分开来喷射的。因而,在第一色度槽再一次喷射之前,两个槽组中的5个色度槽必须都喷射,共循环10×2μ次。因此,每个槽均每隔20μs喷射一次。
在高速打印模式中,槽组是一起来喷射的。因而,在第一色度槽再一次喷射之前,单个槽组中的5个色度槽必须都喷射,共循环5×2μ次。因此,每个槽均每隔10μs喷射一次。
因为墨水通道为300微米长并且墨水中的声速为约1500m/s,所以墨水通道的共振频率为2.5HZ。因而,低速模式允许声脉冲共振循环50次而减幅,而高速模式允许共振循环25次。因此在两种情况下任何声干扰都是最小的。
6.1.3打印头的反馈
打印头中有几行是反馈行(累积在8个区段中)。反馈行用于调整喷射脉冲的时间。尽管每个区段产生相同的反馈,但所有区段的反馈都共享相同的三态总线。因此,一次仅一个区段能提供反馈。
与青色上的数据进行“与”运算的传感区段选择线上的脉冲选择由哪个区段提供反馈。反馈传感线一直从所选择的区段中产生,直到选择下一个传感区段选择脉冲为止。反馈传感线如下:
●T传感,通知控制者打印头有多热。由于温度影响墨水的粘度,这便允许控制者调整喷射脉冲的时间。
●V传感,通知控制者激励器需要的电压有多大。这便允许控制者通过调整脉冲的宽度来补偿扁型电池或高电压源。
●R传感,通知控制者激励器加热器的电阻率(欧姆每平方)有多大。这便允许控制者调整脉冲宽度,从而不管喷射器的电阻率有多大而保持能量不变。
●W传感,通知控制者喷射器关键部分的宽度,这一宽度会因平印和蚀刻的变化而上下浮动±5%。这便允许控制者适当地调整脉冲宽度。
6.1.4预热循环
打印步骤受均衡温度的影响很大。为了保证打印段落的第一区域具有一致的点大小,在打印任何点之前就必须使温度均衡。这是通过一个预热循环完成的。
该预热循环包括单个用1s给所有喷嘴加上负载(即设定所有要喷射的喷嘴)的加载循环和许多使每个喷嘴喷射的喷射短脉冲。脉冲的持续时间要喷射墨滴肯定不够,但要喷射墨水是足够的。尽管每个喷嘴需要大约200个脉冲,但循环是按照与标准打印循环的相同顺序进行的。
预热模式下的反馈是由T传感提供的,并且一直持续到达到均衡温度(高于环境温度约30℃)为止。预热模式的持续时间大约为50毫秒,并取决于墨水的组成。
预热是在每次打印作业之前进行的。这并不影响操作的运行,因为它是在将数据转移到打印机时完成的。
6.1.5清洁循环
为了减少喷嘴堵塞的机会,可在每次打印作业之前实施一个清洁循环。将每个喷嘴朝一块吸收性的海绵喷射多次。
该清洁循环包括单个用1s给所有喷嘴加上负载(即调整所有要喷射的喷嘴)的加载循环和许多使每个喷嘴喷射的喷射脉冲。喷嘴是按照与标准打印循环相同的喷嘴喷射顺序来清洁的。每个喷嘴喷射的次数取决于墨水的组成和打印机空转的时间。虽然需要预热,但清洁循环对打印机的操作不产生什么影响。
6.1.6打印头接口简介
单个4英寸打印头具有表11所示的连接件。
                     表11 4英寸打印头的连接件
  名称     插脚 说明
  色度槽选择     3 选择哪个色度槽将喷射(0-4)
  喷嘴选择     4 选择槽的哪个喷嘴将喷射(0-9)
  槽组启动     2 启动槽组喷射(选择:01、10、11)
  A启动     1 用于相位组A的喷射脉冲
  B启动     1 用于相位组B的喷射脉冲
  C数据输入[0-7]     8 区段0-7的青色移位寄存器的青色输入端
  M数据输入[0-7]     8 区段0-7的品红移位寄存器的品红输入端
  Y数据输入[0-7]     8 区段0-7的黄色移位寄存器的黄色输入端
  K数据输入[0-7]     8 区段0-7的黑色移位寄存器的黑色输入端
  SR时钟     1 从C数据输入[0-7]、M数据输入[0-7]、Y数据输入[0-7]和K数据输入[0-7]将电流值加载到32个移位寄存器的SR时钟(移位寄存器时钟)脉冲
  P转移     1 从移位寄存器至内部喷嘴启动位(每个喷嘴具有一个)的并行转换
  传感区段选择     1 与青色数据输入[n]逻辑电路乘的传感区段选择脉冲选择用于区段n的传感线
  T传感     1 温度传感
  V传感     1 电压传感
  R传感     1 电阻率传感
  W传感     1 宽度传感
  逻辑电路GND     1 逻辑电路地线
  逻辑电路PWR     1 逻辑电路功率
  V-     母线 激励器地线
  V+ 激励器功率
  总数     52
在4英寸的打印头内部,每个区段都具有与表12中所示连接板相连的连接件。
               表12 4英寸打印头的内部区段连接件
  名称   插脚 说明
  色度槽选择   3 选择哪个色度槽将喷射(0-4)
  喷嘴选择   4 选择槽的哪个喷嘴将喷射(0-9)
  槽组启动   2 启动槽组喷射(选择:01、10、11)
  A启动   1 用于相位组A的喷射脉冲
  B启动   1 用于相位组B的喷射脉冲
  C数据输入   1 青色移位寄存器的青色输入端
  M数据输入   1 品红移位寄存器的品红输入端
  Y数据输入   1 黄色移位寄存器的黄色输入端
  K数据输入   1 黑色移位寄存器的黑色输入端
  SR时钟   1 从C数据输入、M数据输入、Y数据输入和K数据输入将电流值加载到4个移位寄存器的SR时钟(移位寄存器时钟)脉冲
  P转移   1 从移位寄存器至内部喷嘴启动位(每个喷嘴具有一个)的并行转换
  传感区段选择   1 与青色数据输入逻辑电路乘的传感区段选择脉冲选择用于该区段的传感线
  T传感   1 温度传感
  V传感   1 电压传感
  R传感   1 电阻率传感
  W传感   1 宽度传感
  逻辑电路地线   1 逻辑电路地线
  逻辑电路功率   1 逻辑电路功率
  V-   21 激励器地线
  V+   21 激励器功率
  总数   66 (66×8区段)=所有的528个区段
6.2 8英寸打印头的条件
一个8英寸Memjet打印头只是简单地把两个4英寸的打印头从结构上配置到一起而形成的。多个打印头接到一起并共享许多公共的连接件,这是为了让控制芯片上的插脚数量减少并能让两个打印头同时打印。因此必须要考虑到许多细节。
6.2.1连接件
由于这两个打印头的喷嘴喷射是同时发生的,所以色度槽选择、喷嘴选择、A启动和B启动线是共享的。就给打印头加载上数据而言,C数据输入、M数据输入、Y数据输入和K数据输入的32条线是共享的,并且两条不同的SR时钟线用于确定给哪一个打印头加上负载。单个P转移脉冲用于将加载的数据转换为这两打印头的喷嘴启动位。与此相似,T传感、V传感、R传感和W传感线也是共享的,其中这两个打印头的2条传感启动线是有区分的。
因此这两个4英寸打印头共享除了SR时钟和传感启动之外的所有连接件。对于每个打印头而言,这两个连接件都要反复一次。实际的连接件在表13中示出:
                   表13 8英寸打印头的连接件
    名称     插脚 说明
    色度槽选择     3 选择哪个色度槽将喷射(0-4)
    喷嘴选择     4 选择槽的哪个喷嘴将喷射(0-9)
    槽组启动     2 启动槽组喷射(选择:01、10、11)
    A启动     1 用于相位组A的喷射脉冲
    B启动     1 用于相位组B的喷射脉冲
    C数据输入[0-7]     8 区段0-7的青色移位寄存器的青色输入端
    M数据输入[0-7]     8 区段0-7的品红移位寄存器的品红输入端
    Y数据输入[0-7]     8 区段0-7的黄色移位寄存器的黄色输入端
    K数据输入[0-7]     8 区段0-7的黑色移位寄存器的黑色输入端
    SR时钟1     1 从C数据输入[0-7]、M数据输入[0-7]、Y数据输入[0-7]和K数据输入[0-7]将电流值加载到用于4英寸打印头1的32个移位寄存器的SR时钟(移位寄存器时钟)脉冲
    SR时钟2     1 从C数据输入[0-7]、M数据输入[0-7]、Y数据输入[0-7]和K数据输入[0-7]将电流值加载到用于4英寸打印头2的32个移位寄存器的SR时钟(移位寄存器时钟)脉冲
    P转移     1 从移位寄存器至内部喷嘴启动位(每个喷嘴具有一个)的并行转换
    传感区段选择1     1 与青色数据输入[n]逻辑电路乘的4英寸打印头1的传感区段选择线上的脉冲选择用于区段n的传感线
    传感区段选择2     1 与青色数据输入[n]逻辑电路乘的4英寸打印头1的传感区段选择线上的脉冲选择用于区段n的传感线
    T传感     1 温度传感
    V传感     1 电压传感
    R传感     1 电阻率传感
    W传感     1 宽度传感
    逻辑电路GND     1 逻辑电路地线
    逻辑电路PWR     1 逻辑电路功率
    V-     母线 激励器地线
    V+ 激励器功率
    总数     54
6.2.2时序
两个4英寸打印头的连接和适当连接件的布线使得8英寸宽的图像能快速作为4英寸宽的图像打印出来。不过,在打印下一行之前要将两倍的数据传输到这2个打印头。根据待打印的输出图像的所需速度,必须产生数据并按照合适的速度传输数据,从而维持操作。
6.2.2.1实例
在一实例中,将打印一幅8”×12”页面的时间定为两秒。为了在两秒内打印这一页,8英寸的打印头就必须要打印19,200行(12×1600)。在两秒内要打印完20,000行也就是在100μs的时间内打印一行。单个的打印循环和单个的加载循环都要在这一时间内完成。此外,一个打印头不介入的物理过程必须要使纸张达到合适的量。
从打印的角度来看,高速打印模式允许一个4英寸的打印头在100μs内打印完整的一行。因此,两个4英寸打印头必须在高速打印模式下同时进行打印。因此每个喷射脉冲喷射512个喷嘴,从而使8英寸行的打印在指定时间内完成。
800个SR时钟脉冲必须在100μs的行时间内向两个4英寸打印头施加(每个时钟脉冲传输32位)。如果两个打印头同时加上负载(64个数据行),那么一个SR时钟脉冲的长度不可能超过100μs/800=125纳秒,示出了打印头的频率必须定在8MHZ。如果两个打印头一次一个地加上负载(32个共享的数据行),那么一个SR时钟脉冲的长度不可能超过100μs/1600=62.5纳秒。因此打印头的频率必须定在16MHZ。在这两种情况下,计算每个一位值的平均时间(相对于51,200个喷嘴中的每个喷嘴而言)必须不超过100μs/51,200=2纳秒。这需要一个点发生器按照下列速度运行:
●500HZ每循环产生1位(点)
●250HZ每循环产生2位(点)
●125HZ每循环产生4位(点)
7 打印机控制器
7.1打印机控制器结构
打印机控制器是由iprint中心处理机(ICP)芯片83、64M位RDRAM82和主QA芯片85构成的,如图8所示。
如图17所示,ICP83包含一个通用处理机139和一组专用功能单元,其中这些专用功能单元通过处理机总线受到该处理机的控制。仅3个功能单元是不标准的,即EDRL扩展器140、过渡调色器/合成器141和控制Memjet打印头的打印头接口142。
运行在处理机上的软件与接收、扩展和打印页面的不同功能单元相配合。这将在下面加以描述。
ICP的不同功能单元将在随后加以描述。
7.2页面扩展和打印
页面的扩展和打印操作如下。页面说明是通过USB接口146从主机获得的,并储存在主存储器中。主存储器的6MB空间显示为用于页面储存。这可保持两页面的空间都不超过3MB,或使一个页面空间达到6MB。如果主机产生的页面空间不超过3MB,那么打印机便在流线的模式下操作,即在打印一页的同时接收另一页。如果主机产生的页面空间超过3mB,那么打印机便在单页的模式下操作,即接收每一页并在接收下一页之前打印完它。如果主机产生的页面空间超过6MB,那么它们便由打印机剔除掉。实际上,打印机驱动程序防止这种现象发生。
一页包括两部分:二级黑色层和连续色调层。这些层被压缩成不同的格式,即二级黑色层压缩成EDRL格式,连续色调层压缩成JPEG格式。页面扩展的第一步包括将这两层并行解压缩。二级层由EDRL扩展器单元140解压缩,附图中标记为16,而连续色调层由JPEG解码器143解压缩,附图中标记为14。
页面扩展的第二步包括将连续色调的CMYK数据变为半色调的二级CMYK数据15,然后在二级CMYK层上合成二级黑色层17。过渡调色和合成是通过过渡调色器/合成器单元141进行的。
最后,二级CMYK合成图像通过打印头接口单元142进行打印,此步骤在附图中标记为18,其中该打印头接口单元142控制Memjet打印头。
因为Memjet打印头是高速进行打印的,所以纸张必须以固定的速率通过打印头。如果纸张停止了,是因为数据不能足够快地输送到打印头,接着将出现不规则的可视打印。因此按所需的速率将二级CMYK数据传输到打印头接口是重要的。
一幅完全扩展的1600的dpi的二级CMYK页面具有114.3MB的空间大小。因为要在打印机的存储器中储存一幅扩展的页面是不实际的,所以每幅页面都是在打印过程中实时扩展的。因而页面扩展的不同阶段和打印是流线形式进行的。页面扩展和打印数据流在表14中描述。174MB的集中来/回运输主存储器是现有技术例如Rambus能达到的。
                         表14 页面扩展和打印数据流
  过程   输入 输入窗   输出 输出窗    输入速率 输出速率
  接收连续色调数据   - -   JPEG流     1   -  1.5MB/s3.3Mp/s
  接收二级数据   - -   EDRL流     1   -  1.5MB/s30Mp/sa
  对连续色调数据解压缩   JPEG流 -   32位CMYK     8   1.5MB/s3.3Mp/s  13MB/s3.3Mp/s
  对二级数据解压缩   EDRL流 -   1位K     1   1.5MB/s30Mp/sa  14MB/s120Mp/s
  过渡调色   32位CMYK 1   -b     -   13MB/s3.3Mp/sc   -
  合成   1位K 1   4位CMYK     1   14MB/s120Mp/s   57MB/s120Mp/s
  打印   4位CMYK 24,1d   -     -   57MB/s120Mp/s   -
   87MB/s    87MB/s
   174MB/s
a 800dpi→1600dpi(2×2扩展)b 过渡调色与合成相组合,从而在它们之间没有外在的数据流c 267ppi→1600dpi(6×6扩展)d 需要一个24行的窗口,但只前进一行
每一级都通过一个主存储器中的共享FIFO与下一级相通。每个FIFO都按行组织起来,并且每个FIFO的最小尺寸(成行)是这样设计的,即能容纳制造商的输出窗(成行)和使用者的输入窗(成行)。级间主存储器缓冲器在表15中作了描述。集合缓冲器使用了6.3MB,剩下的1.7MB留作程序代码和暂时存储器用(共使用了8MB空间)。
                 表15 页面扩展和打印主存储器缓冲器
  缓冲器     结构和行尺寸   行数   缓冲器大小
  压缩页面缓冲器146     字节流(一或两页)-   -   6MB
  连续色调CMYK缓冲器147     32位隔行扫描CMYK(267ppi×8″×32=8.3KB)   8×2=16   134KB
  二级K缓冲器148     1位K(800dpi×8″×1=1.5KB)   1×2=2   3KB
  二级CMYK缓冲器149     4位平面偶数/奇数CMYK(1600dpi×8″×4=6.3KB)   24+1=25   156KB
  6.3MB
包括FIFO的总数据流在图18中示出。
连续色调页面解压缩是通过JPEG解码器143进行的。二级页面解压缩是通过EDRL扩展器140进行的。过渡调色和合成是通过过渡调色器/合成器单元140进行的。这些功能单元在下面加以描述。
7.2.1DMA方法
每个功能单元包含一个或更多芯片内输入和/或输出FIFO。每个FIFO在多通道DMA控制器144中都分配有一个独立的通道。DMA控制器144处理单地址而不是双地址的传输,这样便给每个通道提供了一个独立的请求/确认接口。
无论何时一个输入FIFO排空还是一个输出FIFO填满,每个功能单元都能适度地停止。
处理机139使每次DMA传输按程序工作。DMA控制器144根据与通道相连的功能单元的请求产生每个传输字码的地址。当功能单元的请求得到DMA控制器144的确认时,它便将字码锁存到数据总线145之上或之外。当传输完成时DMA控制器144便中断处理机139,因而允许该处理机139适时地使相同通道的另一个传输按程序工作。
一般地,相应的主存储器FIFO一使用时(即判读数据时不空,存入数据时不满),处理机139就使通道上的另一传输按程序工作。
DMA控制器144内实现的通道维护的间隔尺寸(granularity)在一定程度上取决于主存储器的执行时间。
7.2.2EDRL扩展器
图19所示的EDRL扩展器单元(EEU)140对一幅压缩成EDRL格式的二级图像进行解压缩。
输入到EEU中的是一EDRL位流150。EEU输出的是一组二级图像行151,它们水平地按整数比例系数从扩展的二级图像分辨率变为1600dpi。
一旦开始了,EEU便一直操作到它检测到EDRL位流中的页尾代码为止,或直到它通过其控制寄存器明显地停止为止。
EEU根据显页面宽度对位流进行解码。在EEU开始操作之前必须将解码写入页面宽度寄存器152。
扩展二级图像的规定尺寸取决于显比例系数。在EEU开始操作之前必须将它写入比例系数寄存器153。
                 表16 EDRL扩展器控制和配置寄存器
  寄存器   宽度 说明
  开始   1 EEU开始操作
  停止   1 EEU停止操作
  页面宽度   13 在解码过程中使用的页面宽度,用来检测行结束。
  比例系数   4 在定出扩展图像的尺寸的过程中使用的比例系数
在第5.2.3节中对EDRL压缩格式作了描述。它以其边缘的形式表示出一幅二级图像。每行中的每个边缘都相对于前行的边缘或相对于同行的前边缘作了解码。不管解码的情况是怎样的,每个边缘都最终经解码到达与同行的前边缘相距的距离。接着,这一距离或游程长度经解码到了表示图像响应部分的1位或0位字串。解压缩步骤在第5.2.3.2节中也作了限定。
EEU由一个位流解码器154、一个状态机155、一个边缘计算逻辑电路156、两个游程长度解码器157和158以及一个游程长度(再)编码器159构成。
位流解码器154对位流中的一个熵代码的代码字进行解码,并将它传送到状态机155。该状态机155使代码字的尺寸返回到位流解码器154,这便允许解码器154前进到下一个代码字。在创建边缘代码的情况下,状态机155采用位流解码器从位流中提取相应的游程长度出来。该状态机控制边缘计算逻辑电路和表18中限定的游程长度解码/编码。
边缘计算逻辑电路非常简单。在前(参考)行和当前(编码)行中有偏移的当前边缘分别保持在参考边缘寄存器160和边缘寄存器161中。与产生边缘代码相关的游程长度直接输出到游程长度解码器,并加到当前边缘中。通过将相关的增量加到参考边缘中并减去当前边缘,来将增量代码翻译成游程长度。产生的游程长度输出到游程长度解码器并加到当前边缘中。下一个游程长度是从游程长度编码器159提取并加到参考边缘160中的。仅一个删除边缘(kill edge)代码就会使当前参考边缘跳过。再一次从游程长度编码器提取下一个游程长度并将之加到参考边缘中。
每一次边缘计算逻辑电路156产生代表一个边缘的游程长度,该游程长度都传送到游程长度编码器中。在游程长度编码器对游程长度进行编码时,它会向状态机产生一个停止信号。由于游程长度编码器157比边缘计算逻辑电路要慢得多,所以没有必要使它们相互脱离。扩展行充分地集中在一个行缓冲器162中,从而足以保持一8”800dpi(800字节)的行。
先前扩展行也得到缓冲,在附图中将前行缓冲器标记为163。在对当前行编码时可将其作为参考。前行按需再次编码为游程长度。由于最坏的情况是每个像素(1600dpi的像素占20KB)的游程长度为13位,所以这与缓冲前行的编码游程长度相比要便宜得多。当游程长度编码器159对游程长度编码时,它还向状态机产生一个失速信号。该游程长度编码器采用页面宽度寄存器152来检测行终止端。(当前)行缓冲器162和前行缓冲器163连接在一起并控制成为单个的FIFO,从而简化了游程长度编码器159。
游程长度解码器158将游程长度输出到大得足以保持一8”1600dpi(1600字节)的行的行缓冲器164。传送到这一输出游程长度解码器的游程长度是由比例系数寄存器153复用起来的,这样这个解码器便产生1600dpi的行。该行是输出比例系数乘输出像素FIFO165。这便可通过简单的行复制来定出所需的垂直比例。在设计EEU时可将边缘平滑与其图像比例的确定结合起来。基于模板匹配的简单的光滑技术方案是非常有效的[10]。这便需要在低分辨率游程长度解码器和光滑定比例单元之间进行多行缓冲,但可除去高分辨率游程长度解码器。
7.2.2.1EDRL流解码器
图20所示的EDRL流解码器154对输入位流中的熵代码EDRL代码字进行解码。它采用了一个通过一16位桶形移位器168观察的两字节的输入缓冲器167,其中该16位桶形移位器168的左(最明显)边缘总与位流中的代码字边界相齐平。与该桶形移位器168相连的解码器169对表17中的代码字进行解码,并且给状态机155提供相应的代码。
                 表17 EDRL流代码字解码表
输入代码字位图案a     输出代码     输出代码位图案
1xxx xxxx     Δ0     1 0000 0000
010x xxxx     Δ+1     0 1000 0000
011x xxxx     Δ-1     0 0100 0000
0010 xxxx     删除边缘     0 0010 0000
0011 xxxx     创建近边缘     0 0001 0000
0001 0xxx     Δ+2     0 0000 1000
0001 1xxx     Δ-2     0 0000 0100
0000 1xxx     创建远边缘     0 0000 0010
0000 01xx     页尾(EOP)     0 0000 0001
                           a x为任意值
状态机155依次输出代码的长度。这一代码长度便被添加到当前代码(模8)字位偏移累加器170中,从而产生下一个代码字位偏移。位偏移按序控制桶形移位器168。如果代码字位偏移叠加的话,进位法便接着控制输入FIFO166的下一个字节的锁存。此时,字节2锁存到字节1,并且FIFO输出锁存到字节2。需要花费标记为8的两个循环长度的时间来填充输入缓冲器。这是通过开始状态机155中的状态来操纵的。
7.2.2.2EDRL扩展器状态机
EDRL扩展器状态机155响应于由EDRL流解码器154所提供的代码来控制边缘计算和游程长度扩展逻辑电路。它为EDRL流解码器提供当前代码字的长度并且为边缘计算逻辑电路提供与当前增量代码有关的增量值。该状态机还响应于来自控制寄存器的启动和停止控制信号以及来自于边缘计算逻辑电路的行结束(EOL)信号。
该状态机还控制着与创建边缘代码有关的游程长度的多循环读取。
                              表18 EDRL扩展器状态机
输入信号 输入代码   当前状态 次状态   代码长度 增量 动作
启动 -   停止的 启动的   8 - -
- -   启动的 空闲   8 - -
停止 -   - 停止的   0 - 使RL解码器和FIFO复位
EOL -   - EOL1   0 - 使RL编码器复位;使RL解码器复位;使参考边缘和边缘复位
- -   EOL1 空闲 RL编码器参考RL参考边缘+=参考RL
- D0   空闲 空闲   1 0 RL=边缘-参考边缘+增量;边缘+=RL;RLRL解码器;RL编码器参考RL参考边缘+=参考RL
- Δ+1   空闲 空闲   2 +1
- Δ-1   空闲 空闲   3 -1
- Δ+2   空闲 空闲   4 +2
- Δ-2   空闲 空闲   5 -2
- 删除边缘   空闲 空闲   6 - RL编码器参考RL参考边缘+=参考RL
- 创建前缘   空闲 创建RLlo7   7 - 使创建RL复位
- 创建后缘   空闲 创建RLhi6   8 - -
- EOP   空闲 停止的   8 - -
-   创建RLhi6 创建RLlo7   6 - 锁存创建RLhi6
-   创建RLlo7 创建边缘   7 - 锁存创建RLlo7
-   创建边缘 空闲   0 - RL=创建RL;边缘+=RL;RLRL编码器
7.2.2.3游程长度解码器
图21所示的游程长度解码器157/158将一游程长度扩展成在输出流中的相应长度中一系列0位或1位。在一条线中的第一游程被假定为白色(色彩0)。每一游程被假定为其前面的相反色彩。如果第一游程实际上为黑(色彩1)时,那么它前面必须有一个零长度的白色游程。游程长度解码器在内部保持着当前色彩的径迹。
游程长度解码器每时钟给输出流追加最大8个位数。游程长度通常不是8的整数倍,因此在图像中除了第一个之外的游程通常不是字节定位的。该游程解码器在字节空间寄存器180中保持着在当前被创建在该字节中可用的位数的数目。该位数的数量在解码开始的时候被初始化为8,并且在每个字节的输出上。
解码器在下一游程行将一个非零值锁存到游程长度寄存器181中的同时,解码器开始输出位数的游程。解码器在游程长度寄存器达到零的时候有效地停止。
每一时钟当前色彩的许多位数被移位进输出字节寄存器182中。当前色彩被保留在1位色彩寄存器183中。实际输出的位数数量由游程长度中剩下的位数数目以及在输出字节中剩下的空闲位数所限制。输出的位数数目从游程长度和字节空间中被减掉。当游程长度达到零时则已经完全地被解码了,虽然该游程的后缀字节可以一直在输出字节寄存器中直到输出。当字节空间达到零时,输出字节满了并且被添加到输出流中。
16位桶形移位器184、输出字节寄存器182和色彩寄存器183一起实现了一个8位移位寄存器,它在每个时钟可以被移动多个位位置,并且其色彩作为串行输入。
外部复位线用来在一行的开始使游程长度解码器复位。外部下一游程线用来请求一个新游程长度的解码。它是由外部游程长度线上的游程长度来完成的。下一游程线不应该被设定在和复位线相同的时钟上。因为下一游程倒置当前的色彩,所以色彩的复位将它设定为1而不是0。如果没有完成的话,外部刷新线用来刷新该游程的最后的字节。在逐行的基础上它可以用来产生出字节定位的行,或者在图像的基础上用来产生字节定位的图像。
外部就绪线表明游程长度解码器是否准备解码一个游程长度。它可以用来使外部逻辑电路停止。
7.2.2.4游程长度编码器
图22所示的游程长度编码器159探测在输入流中的0或1位数的游程。在一条线上的第一游程被假定为白色(色彩0)。每下一游程被假定为其前面的相反色彩。如果第一游程实际上为黑色(色彩1)时,那么它前面必须有一个零长度的白色游程。游程长度解码器在内部保持着当前色彩的径迹。
每个时钟游程长度编码器读取来自输入流的最大8个位数。通过16位桶形移位器191来看它采用了双字节输入缓冲器190,其左(最明显)边缘在位流中总是对准当前位置。连接在桶形移位器上的编码器192根据表19将8位(部分)游程长度编码。编码器192采用当前的色彩以辨认出适当色彩的游程。
由8位游程长度编码器所产生出的8位游程长度被加入到游程长度寄存器193中的数值中。当8位游程长度编码器辨认出当前游程的结束时,它产生出终止游程信号,该信号被就绪寄存器194锁存。就绪寄存器194的输出表明编码器已经完成对累积在游程长度寄存器193中的当前游程长度的编码。就绪寄存器194的输出还用来停止8位游程长度编码器192。当已停止的8位游程长度编码器192输出0长度的游程以及0终止游程信号,从而就有效地使整个游程长度编码器停止。
                表19 8位游程长度编码器表
    色彩     输入     长度    游程结束
    0     0000 0000     8     0
    0     0000 0001     7     1
    0     0000 001x     6     1
    0     0000 01xx     5     1
    0     0000 1xxx     4     1
    0     0001 xxxx     3     1
    0     001x xxxx     2     1
    0     01xx xxxx     1     1
    0     1xxx xxxx     0     1
    1     1111 1111     8     0
    1     1111 1110     7     1
    1     1111 110x     6     1
    1     1111 10xx     5     1
    1     1111 0xxx     4     1
    1     1110 xxxx     3     1
    1     110x xxxx     2     1
    1     10xx xxxx     1     1
    1     0xxx xxxx     0     1
8位游程长度编码器192的输出受到剩余的页宽的限制。实际的8位游程长度是被从剩余的页宽减去,并且被加到模数-8位偏移累加器195的位置上,用来控制桶形移位器191并为字节流输入定时。
外部复位线用来在一行的开始时使游程长度编码器复位。它使当前的色彩复位并且将页宽锁存进页宽寄存器中。外部下一游程线用来请求另一个来自游程长度编码器中的游程长度。它使当前的色彩倒相,并且使游程长度寄存器和就绪寄存器复位。如果未完成的话,外部刷新线用来刷新(flush)该游程的最后的字节。它可以在逐行的基础上用来处理字节定位的行,或者在图像的基础上处理字节定位的图像。
外部就绪线表明游程长度编码器准备好对游程长度进行编码,以及当前游程长度在游程长度线上是可用的。它还可以用来使外部逻辑电路停止。
7.2.3JPEG解码器
图23中所示的JPEG解码器143将JPEG-压缩的CMYK连续色调图像解压缩。
输入到JPEG解码器上的是JPEG位流。来自JPEG解码器的输出是一组连续色调CMYK图像线。
当解压缩时,JPEG解码器以8×8的像素块写入其输出。通过与编解码器紧密相连的页宽×8条型缓冲区,这些输出有时被转换成全宽线。这将需要67KB的缓冲区。我们改为采用具有共享的总线访问的8个平行像素FIFO和8条相应的DMA通道,如图23中所示。
7.2.4过渡调色器/合成器
图24所示的过渡调色器/合成器单元(HCU)141将过渡调色的功能和合成的功能组合起来,即对连续色调CMYK层进行过渡调色成二级CMYK,并且在该半色调连续色调层上合成黑色层。
输入到HCU上的是一种扩展的267ppiCMYK的连续色调层200,以及一种扩展的1600dpi黑色层201。从HCU中输出的是一组1600dpi二级CMYK图像线202。
一旦启动,HCU就继续进行直到它探测到页结束的条件,或者直到它通过其控制寄存器被明确地终止了。
HCU产生出特定宽度和长度的点页。在启动HCU之前,该宽度和长度必须被写到页宽和页长寄存器上。页宽对应于打印头171的宽度。页长对应于对象页的长度。
HCU在相对于页宽所指定的左和右页边空白之间产生出对象页数据。在启动HCU之前,左和右页边空白的位置必须写到左页边空白和右页边空白寄存器上。从左页边空白到右页边空白的距离对应于对象页宽度。
HCU根据指定的黑色172和连续色调173页宽来使用黑色和连续色调数据。在启动HCU之前,这些页宽必须被写到黑色页宽和连续色调页宽寄存器上。HCU将黑色和连续色调数据剪贴到对象页宽174上。这就允许黑色和连续色调页宽可以超出对象页宽,而不需要在输入FIFO能级的任何特别的行结束逻辑电路。
页宽171、黑色172和连续色调173页宽以及页边空白之间的关系如图25中所示。
HCU根据指定的比例系数水平地和垂直地将连续色调数据标定到打印机分辨率上。在启动HCU之前,该比例系数必须被写到连续色调比例系数寄存器上。
               表20 过渡调色器/合成器控制和结构寄存器
  寄存器     宽度 说明
  启动     1 启动HCU
  终止     1 终止HCU
  页宽     14 以点计的打印页页宽。这是对于每一行而言所必须产生出的点数。
  左页边空白     14 以点计的左页边空白的位置。
  右页边空白     14 以点计的右页边空白的位置
  页长     15 以点计的打印页的长度。这是对于每一页而言所必须产生出的行数。
  黑色页宽     14 以点计的黑色页的宽度。用来探测黑色行的结束
  连续色调页宽     14 以点计的连续色调层的页宽。用来探测连续色调行的结束。
  连续色调比例系数     4 比例系数用来将连续色调数据标定到二级分辨率上
由HCU所产生出的数据的使用者是打印头接口。打印头接口要求以二维格式的二级CMYK图像数据,即其色彩平面被分开。因此HCU的输出阶段采用了8个平行像素FIFO,每一个分别用于偶数青、奇数青,偶数品红、奇数品红、偶数黄、奇数黄、偶数黑和奇数黑像素。
输出的连续色调CMYK FIFO是一种全8KB的行缓冲器。该行缓冲器被使用了连续色调比例系数的次数以通过行重复来进行垂直向上定标。另一个方法是从主存储的连续色调比例系数的次数读取该行,将存储通讯量增加65MB/s,但是要避免需要用芯片内的8KB行缓冲器。
7.2.4.1多阈值抖动
通常的256层抖动量通过使不同的强度能级分开而在抖动单元的设计中提供了很大的灵活性。通常的抖动量可以较大-a64×64×256抖动量,例如尺寸为128KB。由于每个色彩组分要求从该量中取回不同的位,所以它们还不足以存取。在实际中,没有必要将抖动量的每一层完全分开。该量的每个点量可以被实现为一固定组的阈值而不是256个单独位。使用三个8位阈值,例如仅使用24位。现在,n阈值限定了n+1的密度间隔,在该间隔中对应的抖动单元的位置被选择地不设定或设定。被单独地抖动的连续色调像素值选择n+1间隔中的一个,并且这决定了对应的输出点的值。
我们采用了三阈值64×64×3×8位(12KB)的抖动量来使连续色调数据抖动。这三阈值游程长度形成了一个方便的24位数值,该数值可以在一个循环中从抖动单元ROM中读取。如果在色彩平面之间要求抖动单元寄存器的话,那么相同的三阈值数值可以被读取一次并且用来使每一个色彩组分抖动。如果不需要抖动单元寄存的话,那么该抖动单元就能够被分成四个子单元并且被存储在四个可单独寻址的ROM中,从这些存储器中可以在一个循环中并行地读取四个不同的三阈值数值。采用图26所示的寻址方案,从而四个色彩平面就在32个点彼此垂直和/或水平偏移的时候享有相同的抖动单元。
多阈值抖动203显示在图26中。三阈值装置204将三阈值和密度数值转换成间隔以及由此开始的1或0位。这些三阈值法则显示在表21中。相应的逻辑电路208显示在图27中。
更详细地参照图26,大体上在204处所示的四个单独的三阈值装置每一个都接收一系列用于相应CMYK信号的色彩组分的连续色调色彩像素数值。抖动量被分成大体上在205处所示的四个抖动子单元A、B、C和D。抖动单元寻址发生器206和大体上在207处所示的四个栅控制着四个不同三阈值数值的读取,这些数值可以在一个循环中并行地读取以便用于不同的色彩。
      表21 三阈值法则
    时间间隔     输出
    V≤T1     0
    T1<V≤T2     1
    T2<V≤T3     0
    T3<V     1
7.2.4.2合成
合成装置205将黑色层点合成在半色调CMYK层点的上面。如果黑色层暗度为1,那么过渡调色的CMY被设定为0。
假定4位过渡调色色彩为CcMcYcKc和1位黑色层暗度为Kb,那么合成和剪取逻辑电路如在表22中所规定的一样。
      表22 合成逻辑电路
    彩色通道     条件
    C     Cc∧﹁Kb
    M     MC∧﹁Kb
    Y     Yc∧﹁Kb
    K     Kc∨Kb
7.2.4.3时钟启动发生器
时钟启动发生器206产生出用于为连续色调CMYK像素输入、黑色点输入和CMYK点输出计时的启动信号。
如前所述,连续色调像素输入缓冲器被用作行缓冲器和FIFO。每行被读一次,然后被使用了连续色调比例系数的次数。FIFO写地址环绕直到该行的最后重复使用开始时才中止,在这时候时钟启动发生器产生出启动环绕的连续色调行前进启动信号。
该时钟启动发生器还产生出一个偶数信号,该偶数信号用来选择输出点FIFO的偶数或奇数组,还产生出一个页边空白信号,该信号在当前点位置在页面的左边或右边的时候用来产生出白点。
该时钟启动发生器使用了一组计数器。这些计数器的内部逻辑电路被规定在表23中。时钟启动信号的逻辑电路限定在表24中。
                     表23 时钟启动发生器计数器逻辑电路
计数器 缩写   宽度     数据 加载条件 衰减条件
D   14     页宽 Rpa∨EOLb (D>0)^clk
L   15     页长 RP (L>0)^EOL
左页边空白 LM   14     左页边空白 RP∨EOL (LM>0)^clk
右页边空白 RM   14     右页边空白 RP∨EOL (RM>0)^clk
偶数/奇数点 E   1     0 RP∨EOL clk
黑点 BD   14     黑色宽度 RP∨EOL (LM=0)^(BD>0)^clk
连续调点 CD   14     连续色调宽度 RP∨EOL (LM=0)^(CD>0)^clk
连续色调分像素 CSP   4     连续色调比例系数 RP∨EOL∨(CSP=0) (LM=0)^clk
连续色调分行 CSL   4     连续色调比例系数 RP∨(CSL=0) EOL^clk
a BP(页复位)条件:外部信号b EOL(行结束)条件:(D=0)^(BD=0)^(CD=0)
            表24 时钟启动发生器输出信号逻辑电路
    输出信号   条件
    输出点时钟启动   (D>0)^﹁EOPa
    黑色点时钟启动   (LM=0)^(BD>0)^﹁EOP
    连续色调像素时钟启动   (LM=0)^(CD>0)^(CSP=0)^﹁EOP
    连续色调行前进启动   (CSL=0)^﹁EOP
    偶数   E=0
    页边空白   (LM=0)∨(RM=0)
a EOP(页结束)条件:L=0
7.3打印头接口
打印头接口(PHI)142是这样的装置,即通过该装置处理机将所要打印的点输入加载Memjet打印头。该PHI包含:
●行加载器/格式化装置(LLFU)209,该装置将用于给定打印行的点加载到本地的缓冲存储器中并且把它们格式化成Memjet打印头所要求的格式。
●Memjet接口(MJI)210,该接口将数据传送到Memjet打印头63上,并且控制喷嘴在打印期间的喷射顺序。
在PHI内部的这些装置由许多通过处理机139来编程的寄存器来控制。另外,处理机负责在DMA控制器144中建立适当的参数以便从存储器中转移到LLFU。这包括在一页的启动和结束期间将白色(所有为0的)加载进适当的色彩中,这样该页面就具有干净的边缘。
在图28中显示出打印头接口142的内部结构。
7.3.1行加载器/格式化单元
行加载器/格式化单元(LLFU)209将用于给定行的点加载进本地的缓冲存储器中并且将它们格式化成Memjet所要求的格式。它责任在于为Memjet接口提供预计算的喷嘴启动位数,用于进行页面可能发生的打印。
在8英寸的打印头中的单行是由12,800个四色点构成的。在每色彩1位的条件下,单打印行由51,200位构成。这些位必须以正确的顺序输送以便转交给打印头。参见6.1.2.1节以便获得更多的有关加载循环点加载顺序的信息,但是总的来说,一次传送32位给两个4英寸打印头中每一个上,并且32位代表用于每个8区段的4个点。
该打印采用了双缓冲区域以便准备并得到点位信息。在1行正在被输入进第一缓冲器213中的期间,在第二缓冲器214中的预加载行以Memjet点顺序被读取。一旦全部行都已经通过Memjet接口从第二缓冲器214中被转移到打印头上,则读取和写入处理交换缓冲区。第一缓冲器213现在被读取,而第二缓冲器被加载新的数据行。这在整个打印过程中重复进行,从图29中的概述中可以看出。
在图30中显示出LLFU的实际设备。由于一个缓冲器被读取同时另一个被写入,所以必须使用两套地址线。根据写入启动将来自共同数据总线中的32位数据加载,所述写入启动是通过状态机响应于DMA确认而产生的。
多路交换器215在缓冲器0,213和缓冲器1,214的两个4位输出之间选择,并且通过4位移位寄存器216将结果送到8入口上。在第一8次读取循环之后,并且无论何时前进脉冲从MJI中出来,将来自移位寄存器的当前32位数值选通进32位转移寄存器217中,在那里它可以被MJI使用。
7.3.1.1缓冲器
两个缓冲器213和214中的每一个都被分成4个子缓冲器220,221,222和223,为每种色彩分配一个。所有偶数点都被放在每个色彩缓冲器中的奇数点之前,如图31所示。
代表在要被打印的下一行中的点的51,200位每种色彩缓冲器被存储了12,800位,存储为400个32位的字。第一区段200个32位字(6400位)表示用于色彩的偶数点,同时第二区段200个32位字(6400位)代表用于色彩的奇数点。
寻址解码电路是这样的:在一个给定的循环中,可以给所有4个子缓冲器进行单个32位访问-从所有4个中读取或写入到4个中的一个中。只从每个色彩缓冲器中选择出32位中的一位。在图32中显示出该过程。13位地址允许来读取特定的位,通过被用来选择32位的8位地址,并且5位地址从那32位中挑选出1位。由于所有色彩缓冲器共享着这个逻辑电路,所以单个13位地址总共用了4位,每种色彩一位。每个缓冲器具有其自己的写入启动线,用来让单个32位数值能够在一个给定的循环中被写入到特定的色彩缓冲器上。数据输入的32位是共享的,由于只有一个缓冲器会真实地定时数据的进入。
7.3.1.2地址的产生
7.3.1.2.1读取
用于读取的地址的产生是简单明了的。每个循环我们产生出一个位地址,该位地址用来取得代表每色彩1位的用于特定区段的4位。通过将400加入到当前的位地址上,从而我们继续到下一个区段的等价的点。由于奇数和偶数点在缓冲器中是分开的,所以我们加上400(而不是800)。我们重复该过程16次以获取代表偶数点(该合成数据一次被传送到MJI32位上)的两组用于两套8区段的32位,并且再重复另一个16次以输入奇数点。这个32循环的过程重复400次,将开始地址每次加1。因此在400×32循环中,以打印头所要求的顺序传送了总共400×32×4(51,200)个点数值。
另外,我们产生出传送写入启动控制信号。由于LLFU在MJI之前启动,所以我们必须在来自MJI的推进脉冲之前传送第一个数值。我们还必须产生出用于第一推进脉冲的准备状态中的下一个32位数值。该方案要在8个循环之后将第一个32位数值传送到传送寄存器上,然后使随后的8个循环终止。等待推进脉冲以启动下一个8个循环组。一旦第一推进脉冲到达,则LLFU就与MJI同步。然而MJI必须在LLFU之后启动至少16个循环,这样最初的传送数值才有效,并且下一个32位数值准备被加载到该传送寄存器中。
下面的伪代码显示出该读取过程:
DotCount=0
For DotInSegment0=0 to 400

    CurrAdr=DotInSegment0

    Do

      V1=(CurrAdr=0)OR(CurrAdr=3200)

      V2=Low 3 bits of DotCount=0

      TransferWriteEnable=V1 OR ADVANCE

      Stall=V2 AND(NOT TransferWriteEnable)

      If(NOT Stall)

      Shift Register=Fetch 4-bits from CurrReadBuffer:CurrAdr

      CurrAdr=CurrAdr+400

      DotCount=(DotCount+1)MOD 32(odd&amp;even,printheads 1&amp;2,
segments 0-7)

      EndIf
  Until(DotCount=0)AND(NOT Stall)
EndFor
一旦该行已经结束,则CurrReadBuffer数值必须通过处理机进行触发。
7.3.1.2.2写入
写入过程也是简单明了的。4条DMA请求线被输出到DMA控制器上。当所有请求都被返回DMA确认线所满足的时候,选择出适当的8位目的地址(13位输出地址的下面5位不是所要关心的数值)并且让确认信号通到修正缓冲器的写入启动控制线(当前的写入缓冲器为当前的读取缓冲器)。从4个当前地址中选择出8位目的地址,一种色彩一个地址。在DMA请求被满足的时候,使适当的目的地址增加1,并且将相应的传送剩余计数器减1。DMA请求线只是在用于那个色彩的输送剩余非零的时候才进行设定。
下面的伪代码示出了写入程序:
CurrentAdr[0-3]=0
While(TransfersRemaining[0-3]are all non-zero)
  DMARequest[0-3]=TransfersRemaining[0-3]!=0
  If DMAAknowledge[N]

      CurrWriteBuffer.CurrentAdr[N]=Fetch 32-bits from data bus

      CurrentAdr[N]=CurrentAdr[N]+1

      TransfersRemaining[N]=TransfersRemaining[N]-1(floor 0)
  EndIf
EndWhile
7.3.1.3寄存器
以下寄存器包含在LLFU中:
                  表25 行加载/格式化单元寄存器
寄存器名称 说明
当前读取缓冲器 当前缓冲区被选读。当缓冲区0正在被选读的时候,缓冲区1则被写入,反之亦然。对于来自MJI的每个推进脉冲要进行触发。
进行 位0和1分别控制了读取和写入过程的启动。写入到适当位上的非零值使该过程启动。
终止 位0和1分别控制了读取和写入过程的终止。写入到适当位上的非零值使该过程终止。
转移剩余C 要被读进青色缓冲器中的32位的转移剩余的数量。
转移剩余M 要被读进品红色缓冲器中的32位的转移剩余的数量。
转移剩余Y 要被读进黄色缓冲器中的32位的转移剩余的数量。
转移剩余K 要被读进黑色缓冲器中的32位的转移剩余的数量。
7.3.2Memjet接口
Memjet接口(MJI)211将数据转移到Memjet打印头63上,并且在打印期间控制喷嘴的喷射顺序。
MJI只是这样一种状态机(参见图28),该状态机遵循着在节6.1.2中所描述的打印头加载和喷射,并且包括如在节6.1.4和节6.1.5中所述的预加热循环和清洁循环的功能。可以采用高速打印模式和低速打印模式。计算用于每个色彩的点也由MJI保持。
MJI根据2个数据源的选择将数据输入进打印头:
所有1s。这表示所有喷嘴在随后的打印循环期间将喷射,并且它是用于给打印头加载预加热循环或清洁循环的标准机构。
来自LLFU的移位寄存器中保留的32位输入。这是打印图像的标准装置。来自LLFU的32位数值被直接送到打印头上,并且1位‘推进’控制脉冲被送到LLFU上。在每行的结束处,也可以采用1位‘推进行’脉冲。
在LLFU已经准备好第一32位转移数值之后,MJI必须启动。也就是这样,该32位数据输入将对到打印头上的第一转移适用。
因此该MJI与LLFU和外部Memjet打印头直接相连。
7.3.2.1打印头的连接件
MJI211具有以下连接打印头63的连接件,此时考虑相对于MJI的输入和输出。这些名称与打印头上管脚连接件匹配(参见节6.2.1的8英寸打印头布线方式的说明)。
                       表26 Memjet接口连接件
  名称    #插脚   I/O   说明
  色度槽选择    3   O   选择要喷射的色度槽(0-4)
  喷嘴选择    4   O   选择要从该槽的哪个喷嘴来喷射(0-9)
  槽组启动    2   O   启动槽组进行喷身(选择:01,10,11)
  A启动    1   O   用于槽组A的喷射脉冲
  B启动    1   O   用于槽组B的喷射脉冲
  C数据输入(0-7)    8   O   将青色输出到区段0-7的青色移位寄存器
  M数据输入(0-7)    8   O   将品红色输出到区段0-7的青色移位寄存器
  Y数据输入(0-7)    8   O   将黄色输出到区段0-7的青色移位寄存器
  K数据输入(0-7)    8   O   将黑色输出到区段0-7的青色移位寄存器
  SR时钟1    1   O   SR时钟1(移位寄存器时钟1)上的脉冲将来自C数据输入[0-7],M数据输入[0-7],Y数据输入[0-7],和K数据输入[0-7]的当前值输入进4英寸打印头1的32位移位寄存器中。
  SR时钟2    1   O   SR时钟2(移位寄存器时钟2)上的脉冲将来自C数据输入[0-7],M数据输入[0-7]、Y数据输入[0-7]、K数据输入[0-7]的当前值输入进4英寸打印头2的32位移位寄存器中。
  P转移    1   O   将来自移位寄存器的数据并行地转移到打印头的内部喷嘴启动位上(每喷嘴一个)
  传感区段选择1    1   O   在传感区段启动1上的脉冲与C数据输入[n]上的数据的“与”运算启动用于4英寸打印头1中的段n的传感线
  传感区段启动2    1   O   在传感区段启动2上的脉冲与C数据输入[n]上的数据的“与”运算启动用于4英寸打印头2中的区段n的传感线
  T传感    1   I   温度传感
  V传感    1   I   电压传感
  R传感    1   I   电阻率传感
  W传感    1   I   宽度传感
  TOTAL    52
7.3.2.2喷射脉冲持续时间
在A启动和B启动线上的喷射脉冲的持续时间取决于墨水的粘度(它取决于温度和墨水特性)以及打印头可能得到的能量数量。通常的脉冲持续时间范围为1.3到1.8μs。因此MJI含有可编程的脉冲持续时间表230,由来自打印头的反馈索引。该脉冲持续时间表允许适用低成本的电源,并且有助于保持更精确的墨滴喷射。
脉冲持续时间表具有256个条目,并且由当前的V传感231和T传感232的设置来索引。地址的上面4位来自V传感,地址的下面4位来自T传感。每个条目为8位,并且代表在0-4μs范围内的固定点数值。在图33中显示出产生出A启动和B启动的过程。模拟的V传感231和T232信号被相应的采样和保持电路233和234接收,然后在被应用到脉冲持续时间表230上之前在相应的转换器235和236中被转换成数码字。脉冲持续时间表230的输出被输送到脉冲宽度发生器237上以产生出喷射脉冲。
256字节表在打印第一页之前被CPU写入。如果需要的话,该表可以在页与页之间进行更新。在该表中的每个8位脉冲持续时间条目包括有:
●用户亮度设置(来自页面描述)
●墨水粘度曲线(来自QA芯片)
●R传感
●W传感
●V传感
●T传感
7.3.2.3点计数
MJI211在点计数寄存器240中保留了从打印头喷射出的每种色彩的点数。用于每种色彩的点计数是32位的数值,它在处理机的控制下通过信号241单独地清除。在32位的长度处,每个点计数可以保持17张12英寸页的最大覆盖点计数,虽然在通常的使用中,该点计数将在每页之后被读取并清除。
这些点计数被处理机用来更新QA芯片85(参见节7.5.4.1)以便预估墨水盒消耗光墨水的时间。该处理机知道在墨水盒中用于来自QA片中C、M、Y和K每一种的墨水的量。计算出墨滴的数量消除了对墨水传感器的需要,并且防止墨水通道干枯。在每页之后将更新的墨滴量写入QA芯片上。除非剩下足够量的墨水,要不然就不会打印新页并且允许用户更换墨水,而不会得到一页需要重新打印的打印了一半的作废页。
用于青色的点计数器的布置显示在图34中。剩下的3个点计数器(分别用于品红色、黄色和黑色的M点计数器、Y点计数器和K点计数器)具有相同的结构。
7.3.2.4寄存器
处理机139通过寄存器组与MJI211通讯。这些寄存器让处理机能够确定打印的参数以及接收有关打印过程的反馈。
在MJI中包含有以下寄存器:
                表27 Memjet接口寄存器
  寄存器名称 说明
  打印参数
  输送数量 要求加载到打印头的输送的数量(通常为1600)。这是用于SR时钟线和用来转移给给定线路的32位数据值的总数的脉冲数量。
  打印速度 是以低速打印或是以高速打印(决定了在打印期间的槽组启动线上的数值)
线数 要进行的输入/打印循环的数量
监测打印
状态 Memjet接口的状态寄存器
线路的剩余 剩下要打印的线的数量。只有当Go=1时有效。启动数值为线数。
输送剩余 在考虑将打印头输入当前的线路之前剩余的线路数量,只有当Go=1时有效。
传感区段 在随后的反馈传感区段选择脉冲期间要放在青色数据线上的8位数值。只有8位中的一个应该被设置,对应于8区段中的一区段。看传感区段选择是怎样确定要传感两个4英寸打印头的哪个。
设置所有喷嘴 如果非零,则在加载点过程期间写入到打印头上的32位数值都是1s,这样在随后的打印点过程期间所有喷嘴都将喷射。这在预加热和清洁循环期间采用。如果为0,则写入到打印头上的32位数值来自LLFU。这是在规则图像的实际打印期间的情况。
动作
复位 一个到该寄存器的写入使MJI复位,终止任何加载或者打印过程,并且将所有寄存器加载0。
传感区段选择 具有任意数值的到这个寄存器上的写入清除该状态寄存器的反馈有效位,如果加载点和打印点状态位都为0的话,则根据低顺序位在传感启动1或传感启动2线路上传送脉冲。如果任何一个状态位都被设置的话,则清除该反馈位并且不做其它工作。一旦已经测试完各种传感线,则将这些数值存进T传感、V传感、R传感以及W传感寄存器中,然后设置状态寄存器的反馈位。
进行 向该位写入1启动加载点/打印点循环。打印全部的线数,每个含有输送数32位的输送。在打印每条线的时候,剩余线数减1,并且输送剩余重新
加载输送数。在完成线数的条件下,加载/打印过程终止并且清除进行位。在最后的打印循环期间,任何东西都没有加载进打印头。向该位上写入0终止该打印过程,但是不清除任何其它寄存器。
    清除计数 如果位0、1、2或3分别被设置的话,则到该寄存器的写入清除C点计数,M点计数,Y点计数以及K点计数寄存器。结果0写入就没有任何效果
    反馈
    T传感 只读取来自发送到区段传感区段的最后的传感区段选择脉冲的T传感的反馈。只有在设置了状态寄存器的反馈有效位的情况下才是有效的。
    V传感 只读取来自发送到区段传感区段的最后的传感区段选择脉冲的V传感的反馈。只有在设置了状态寄存器的反馈有效位的情况下才是有效的。
    R传感 只读取来自发送到区段传感区段的最后的传感区段选择脉冲的R传感的反馈。只有在设置了状态寄存器的反馈有效位的情况下才是有效的。
    W传感 只读取来自发送到区段传感区段的最后的传感区段选择脉冲的W传感的反馈。只有在设置了状态寄存器的反馈有效位的情况下才是有效的。
    C点计数 只读取传送到打印头的青色点的32位计数
    M点计数 只读取传送到打印头的品红色点的32位计数
    Y点计数 只读取传送到打印头的黄色点的32位计数
    K点计数 只读取传送到打印头的黑色点的32位计数
MJI的状态寄存器是具有如下所述的16位寄存器:
                        表28 MJI状态寄存器
  名称   位数 说明
  加载点   1 如果设置的话,MJI在当前加载点,剩余点的数目被转移在转移剩余中。如果清除,MJI不在当前加载点。
  打印点   1 如果设置,MJI在当前打印点。如果清除,MJI不在当前打印点。
  打印A   1 该位被设置,同时在A启动线上有一个脉冲。
  打印B   1 该位被设置,同时在B启动线上有一个脉冲。
  反馈有效   1 该位被设置,同时反馈值T传感、V传感、R传感和W传感是有效的。
  保留   3 -
  打印色度槽   4 它保持当前被喷射的色度槽同时设置打印点状态位。
  打印喷嘴   4 它保持当前被喷射的喷嘴同时设置打印点状态位。
7.3.2.5预热和清洁循环
清洁和预热循环是通过设置适当的寄存器而简单地完成:
●设置所有喷嘴=1
●将脉冲持续时间寄存器设置为低持续时间(在预热模式的情况中)或为用于清洁模式的适当的墨滴喷射持续时间。
●将数字线设置为喷嘴应该喷射的次数
●设置进行位,然后等待该进行位在完成打印循环时被清除。
7.4处理机和存储器
7.4.1处理机
处理机130运行控制程序,该程序在页接收、扩展和打印期间与其它功能单元同步。它还运行用于各种外部接口的装置驱动程序,并且通过用户界面响应用户的动作。
它必须具有低的中断等待时间以提供有效的DMA管理,但不必是特别高性能的DMA控制器。
该DMA控制器在27条通道上支持单地址传输(参见表29)它在传输完成的时候产生出到处理机的向量中断。
                 表29 DMA通道用途
  功能单元     输入通道     输出通道
  USB接口     -     1
  EDRL扩展器     1     1
  JPEG解码器     1     8
  过渡调色器/合成器     2     8
  扬声器接口     1     -
  打印头接口     4     -
    8     19
    27
7.4.3程序ROM
该程序ROM保存着ICP控制程序,该程序在系统引导期间被加载进主存储器中。
7.4.4Rambus接口
Rambus接口为外部的8MB(64兆位)的RambusDRAM(RDRAM)提供了高速接口。
7.5外部接口
7.5.1USB接口
通用串行总线(USB)提供了标准的USB设备接口。
7.5.2扬声器接口
扬声器接口250(图35)含有用于来自主存储器的声音片断的DMA间接传输的小FIFO251;8位数模转换器(DAC)252,它将每一个8位采样值转换成电压;以及放大器253,它供给外部扬声器。当FIFO是空的时候,它输出0值。
以声音片断的频率来对该扬声器接口计时。
处理机简单地通过对扬声器接口的DMA通道编程从而将声音片断输送到扬声器上。
7.5.3并行接口
并行接口231在许多并行外部信号线上提供I/O。
它让处理机能够传感或控制在表30中所列的装置。
表30 并行接口装置
并行接口装置
电源开关
送纸开关
电源LED
缺纸LED
缺墨LED
介质传感器
纸传送步进马达
7.5.4串行接口
串行接口232提供两个标准低速串行端口。
一个端口用来与主QA芯片85相连。另一个用来与在墨水盒233中的QA芯片相连。在这两个端口之间的处理机间接协议被用来验证该墨水盒。然后该处理机能够从QA芯片中获取墨水特征以及每种墨水的剩余量。该处理机用这些墨水特征来正确地配置Memjet打印头。它使用用由打印头接口所收集的耗墨信息在逐页的基础上更新的剩余墨水量,来确保它决不让打印头由于干枯而受到损害。
7.5.4.1墨水盒QA芯片
在墨水盒中的QA芯片含有维持最佳的打印质量所需要的信息,并使用验证芯片来执行。在验证芯片中的数据的256位如下进行分配的:
                表31 墨水盒的256位(16位的16个条目)
    M[n]   访问     宽度     说明
    0   ROa     16     基本头标,标记等
    1   RO     16     序列号
    2   RO     16     批号
    3   RO     16     保留用来进一步扩展。必须为0
    4   RO     16     青色墨水特性
    5   RO     16     品红色墨水特性
    6   RO     16     黄色墨水特性
    7   RO     16     黑色墨水特性
    8-9   DOb     32     剩下青色墨水,单位为毫微升
    10-11   DO     32     剩下品红色墨水,单位为毫微升
    12-13   DO     32     剩下黄色墨水,单位为毫微升
    14-15   DO     32     剩下黑色墨水,单位为毫微升
a 只读(RO)b 只减小1(DO)
在打印每一页之前,处理机必须检查墨水剩下的数量以确保有足够用于最坏情况的整页的量。一旦已经打印出该页,则将每种色彩(从打印头接口中获得)的全部墨滴数量乘以墨滴体积。从剩下墨水量中减去所打印的墨水量。用于测量剩余墨水的单位为毫微升,这样32位能够表示4升以上的墨水。用于一页的墨水量必须上舍入最接近的毫微升(即大约1000个打印点)。
7.5.5JTAG接口
为了测试目的包括有标准的JTAG(连接测试行动组)接口。由于芯片的复杂性,所以需要多种测试技术,包括BIST(机内自检测)以及功能块隔离。在芯片面积中的10%以上被用于整个芯片测试电路。
8.普通打印机驱动程序
该节说明任何用于iPrint的基于主机的打印机驱动程序的一般方面。
8.1图形和成像模型
我们假定打印机驱动程序紧密地与主图形系统连接,这样打印机驱动程序就能够提供用于不同图形和成像操作的设备指定的处理,尤其是合成操作和测试操作。
我们假定该主机为色彩管理提供支持,这样根据用户所选择的特定iPrint指定的ICC(国际色彩协会)色彩配置文件,与设备无关的色彩就能够以标准的方式被转换成iPrint指定的CMYK色彩。当用户指定了在打印机中的输出介质(即普通纸、铜版纸、透明胶片等)的时候,该色彩配置文件通常由用户暗中地选择。传送到打印机上的页面描述总是包含设备指定的CMYK色彩。
我们假定主图形系统以由打印机驱动程序所指定的名义上的分辨率再现图像和图形,但是它让打印机驱动程序能够控制再现文字。具体而言,该图形系统给打印机驱动程序提供足够的信息,以让它能够以比名义分辨率更高的分辨率再现并定位文字。
我们假定主图形系统需要以名义设备分辨率随机访问连续色调页面缓冲器,在该缓冲器中它将图形和成像对象合成,但是它让打印机驱动程序控制实际的合成-即,希望打印机驱动程序来管理页面缓冲器。
8.2双层页面缓冲器
打印机的页面描述包含一层267ppi的连续色调层和一层800dpi的黑色层。黑色层在概念上位于连续色调层的上面,即黑色层被打印机合成在连续色调层的上面。因此打印机驱动程序保持着一个页面缓冲器260,该缓冲器相应地包含有一中等分辨率的连续色调层261和一高分辨率的黑色层262。
该图形系统自底向上将对象再现并合成进页面缓冲器中-即后面的对象使前面的对象变暗。这在只有一层单层的时候自然地进行,但是不是在有以后要合成的两层的时候进行。因此就有必要探测放在连续色调层上的对象何时使黑色层上的某些东西变暗。
当探测到变暗的时候,变暗的黑色像素与连续色调层合成并且从黑色层上被除去。然后将该变暗的对象铺放在连续色调层上,从而可能会以某种方式与黑色像素反应。如果变暗的对象的合成模式这样的话,即不可能与背景层有反应,则可以在不和连续色调层反应的情况下简单地将黑色像素废弃。当然,在连续色调层和黑色层中实际上有一点反应。
打印机驱动程序给图形系统指定一个267ppi的通常的页面分辨率。在可能的情况下打印机驱动程序依靠图形系统以使图像和图形对象再现到267ppi的像素水平,除了黑色文字之外。该打印机驱动程序产生所有文字再现请求,探测并且以800dpi再现黑色文字,但是将非黑色文字再现请求返回到图形系统以267ppi绘制。
理论上图形系统和打印机驱动程序操纵着与设备无关的RGB中色彩,从而到设备指定的CMYK的转换延期直到该页面完成并准备被发送到打印机上。这减小了页面缓冲器要求并且使合成更加合理。在CMYK色彩空间中的合成不理想。
最后图形系统请求打印机驱动程序将每一个再现的对象合成进打印机驱动程序的页面缓冲器中。每个这样的对象使用了24位连续色调RGB,并且具有清楚(或者暗的不透明物)的不透光通道。
该打印机驱动程序将该双层页面缓冲器260保持在三个部分中。第一部分为中分辨率(267ppi)连续色调层261。这由24位RGB位图构成。第二部分为中分辨率黑色层263。这由8位不透光位图构成。第三层为高分辨率(800dpi)黑色层262。这由1位不透光位图构成。中分辨率黑色层是高分辨率不透光层的二次抽样版本。在实际中,假定中分辨率是高分辨率的整数倍(例如n=800/267=3),则每个中分辨率不透光数值是通过将相应的n×n高分辨率不透光数值取平均值得到的。这对应于箱式过滤二次取样。黑色像素的二次取样有效地防止在高分辨率黑色层的边缘锯齿,从而减少了在连续色调层随后被JPEG压缩和解压缩的时候振铃(ringing)赝象。
在图36中示出了该页面缓冲器的结构和尺寸。
8.3合成模型
为了说明页面缓冲器合成模型,我们定义了以下变量。
                        表32 合成变量
变量     说明     分辨率 格式
n     中到高分辨率比例系数     -
CBgM     背景连续色调层色彩     中 8位彩色分量
CobM     连续色调对象色彩     中 8位彩色分量
áObM     连续色调对象暗度     中 8位暗度
áFgM     中分辨率前景黑色层暗度     中 8位暗度
áFgH     前景黑色层暗度     高 1位暗度
áTxH     黑色对象暗度     高 1位暗度
当暗度áTxH的黑色对象与黑色层合成的时候,如下来更新该黑色层:
aFgH[x,y]←aFgH[x,y]∨aTxH[x,y]                          (法则1)
aFgM [ x , y ] &LeftArrow; 1 n 2 &Sigma; i = 0 n - 1 &Sigma; j = 0 n - 1 255 a FgH [ nx + i , ny + j ] (法则2)
对象的暗度简单地与黑色层暗度相配(ored)(法则1),中分辨率黑色层的相应部分从高分辨率黑色层中再计算出(法则2)。
当色彩CObM和暗度αObM与连续色调层合成的时候,连续色调层和黑色层如下进行更新:
CBgM[x,y]←CBgM[x,y](1-aFgM[x,y])  如果αObM[x,y]>0    (法则3)
aFgM[x,y]←0          如果αObM[x,y]>0                     (法则4)
aFgH[x,y]←0          如果αObM[x/n,y/n]>0                 (法则5)
CBgM[x,y]←CBgM[x,y](1-aObM[x,y])+CObM[x,y]aObM[x,y]   (法则6)
无论什么情况下连续色调对象使黑色层变暗,即使没有完全变暗,受了影响的黑色层像素从黑色层被推到连续色调层上,即与连续色调层合成(法则3)并且从黑色层中被除去(法则4和法则5)。然后连续色调对象与连续色调层合成(法则6)。
如果连续色调对象像素是完全暗的(即,αObM[x,y]=255),则就没有必要将相应的黑色像素推进背景连续色调层(法则3),由于背景连续色调像素随后将被前景连续色调像素完全涂掉(法则6)。
图37至41说明了将各种类型的对象合成到由双层所代表的图像上的前景黑色层和背景连续色调层上效果。在每种情况中,在该对象合成之前和之后显示出双层的状态。前景和背景层的不同分辨率由这些层的不同像素格密度所表示。
表示到这两层的输出图像没有显示出像素格,这是由于图像的实际再现不是这里说明的重点。
虽然没有显示出分辨率的前景黑色层,但是它是绝对地存在的。不论什么时候法则1被应用在高分辨率的前景黑色层,都要将法则2清楚地应用在中分辨率前景黑色层上。不论什么时候应用法则4,也要清楚地应用法则5。
图37显示出将黑色对象270合成在白色图像上的效果。黑色对象被简单地合成进前景黑色层271(法则1)中。背景连续色调层272没有受到影响,并且输出图像273是黑色对象。
图38显示出将连续色调对象280合成到白色图像上的效果。该连续色调对象280被简单地合成进背景连续色调层282中(法则6)。前景黑色层281没有受到影响,并且输出图像283是连续色调对象。
图39显示出将黑色对象290合成到已经包含了连续色调对象292的图像上的效果。再将黑色对象简单地合成进前景黑色层291中(法则1)。该背景连续色调层没有受到影响,并且输出图像293具有在连续色调对象292上面的黑色对象290。
图40显示出将不透明的连续色调对象300合成到已经包含了黑色对象301的图像上的效果。由于连续色调对象使部分现存的黑色对象变暗,所以现存的二级对象的受到影响的部分会从前景黑色层302中被除去(法则4)。因为连续色调对象是完全不透明的,所以没有必要将受到影响的部分合成进连续色调层,因此就跳过法则3。照常(法则6)将连续色调对象合成进的背景连续色调层中303,并且输出的图像304显示出连续色调对象300在黑色对象之上并且使之变暗。
图41显示出将部分透明的连续色调对象310合成到已经含有黑色对象311的图像上的效果。由于连续色调对象使部分现存的部分透明的黑色对象变暗,所以黑色对象的受到影响的部分被合成进连续色调层312中(法则3),然后从前景黑色层313中被除去(法则4)。然后将该连续色调对象合成进照常的背景连续色调层314中(法则6)。
最终的图像315显示出那些连续色调像素的变暗,这些像素显然使部分现有的黑色对象变暗。
8.4页面压缩和传输
一旦页面再现完成,打印机驱动程序在图形系统中的色彩管理功能的帮助下将连续色调层转换到iPrint指定的CMYK。
然后打印机驱动程序将黑色层和连续色调层压缩并打包到在节5.2中所述的iPrint页面描述中。该页面描述通过标准的假脱机程序被传输到打印机上。
要注意的是,黑色层是作为一组1位暗度数值来操纵的,但是是作为一组1位黑色数值被输送的。虽然这两个说明是不同的,但是它们共享相同的表示,并且这样就不需要任何数据转换。
9 Windows 9X/NT打印机驱动程序
9.1Windows 9X/NT打印系统
在Windows 9X/NT打印系统[8][9]中,打印机320是一种图形设备,并且应用程序321通过图像设备接口322(GDI)与它相联系。打印机驱动程序图形DLL323(动态链接库)执行由GDI提供的各种图形功能的与设备无关的方面。
假脱机程序333管理页面到打印机的输送,并且可以驻留在不同机器上以进行应用程序请求打印。它通过端口监视器334将页面输送到打印机上,该监视器管理着到打印机上的物理连接。可选的语言监视器335是打印机驱动程序的一部分,它在与打印机的通讯上实行附加的协议,并且尤其是代表假脱机程序将来自打印机的状态响应解码。
打印机驱动程序用户接口DLL336执行用户接口,用于编辑打印机指定的特性并报告打印机指定的事件。
在图42中显示出Windows 9X/NT打印系统的结构。
由于iPrint使用USB IEEE-1284仿真,所以没有必要执行用于iPrint的语言监测。
该节的剩余部分说明了打印机驱动程序图形DLL的设计。它应该与适当的Windows 9X/NT DKK文档编制[8][9]结合读取。
9.2Windows 9X/NT图形设备接口(GDI)
GDI提供让应用程序能够在设备表面上绘制的功能,即通常显示屏幕或打印页面的抽象。对于光栅设备而言,该设备表面在概念上是一种彩色位图。该应用程序可以以一种与设备无关的方式在表面上绘制,即与设备的分辨率和色彩特性无关。
该应用程序具有到整个设备表面的随机存取。这意味着如果存储器受限制的打印机设备要求带状输出的话,则GDI必须缓冲整个页面的GDI指令并且将它们在窗口上顺序重演进每个带中。虽然这给该应用程序提供了极大的便利,但是它会负面地影响性能。
GDI支持色彩管理,从而由应用程序提供的与设备无关的色彩根据设备的标准ICC(国际色彩协会)色彩配置文件明显地被翻译成与设备无关的色彩。打印机驱动程序能够根据用户在驱动程序管理的打印机属性页上的纸张类型的选择来激活不同的色彩配置文件。
GDI支持着线路和样条外形图形(通道)、图像和文字。包括外形字形符号的外形图形可以由位映象画笔图案绘制并充满。图形和图像可以用设备表面的内容来几何转换并合成。在Windows 9X/NT4只提供逻辑合成运算符的同时,Windows 9X/NT5提供了正确的字母混合[9]。
9.3打印机驱动程序图形DLL
在Windows 9X/NT下光栅打印机在理论上可以利用标准的打印机驱动程序组件,并且这能够使开发打印机驱动程序的工作变得普通。这依靠能够模仿设备表面作为单个位图。它的问题是,文字和图像必须以相同的分辨率再现。这会危害文字的分辨率或者产生出太多的输出数据,从而危害性能。
如上所述,iPrint的方案用来以不同的分辨率再现黑色文字和图像,从而优化了每次再现。因此该打印机驱动程序根据在节8中所描述的设计来执行。
因此如在节8.2中所述的一样,驱动程序保持了双层三部分页面缓冲器,并且这意味着打印机驱动程序必须接管管理设备表面的工作,而这又意味着介入所有到设备表面的存取访问。
9.3.1管理设备表面
打印机驱动程序必须制成具有许多标准功能,包括如下:
                表33 标准图形驱动程序接口功能
 功能 说明
 Drv启动驱动程序 指向驱动程序图形DLL的初始条目。返回驱动程序支持功能的地址。
 Drv启动PDEV 产生物理设备的逻辑表示法,驱动程序借助该表示法可以与绘图表面相关联。
 Drv启动表面 产生与给定PDEV相关的、待绘制的表面。
Drv启动PDEV通过返回的DEVINFO结构的flGraphics Caps来表明驱动程序的图形再现特征。这将在下面讨论。
Drv启动表面产生由两个概念层和三部分组成的设备表面。三部分分别是:267ppi连续色调层24位RGB色,267ppi黑色层8位暗度,以及800dpi黑色层1位暗度。包含这两层的虚拟设备表面具有267ppi的名义分辨率,这是GDI操作发生的分辨率。
尽管总体的页面缓冲器需要约33MB存储空间,但PC99办公标准[5]规定最少需要64MB。
实践中,管理设备表面和介入对其的GDI访问意味着打印机驱动程序必须支持以下附加功能:
    表34 用于设备管理的表面的所要求的图形驱动程序功能
  功能 说明
  驱动复制位 在设备管理的光栅表面和GDI管理的标准格式的位图之间翻译
  驱动笔划轨迹 划出一条轨迹
  驱动画图 画出指定的区域
  驱动文字输出 在指定的位置再现一组符号
复制图像、划出轨迹和填满区域都发生在连续色调层上,而再现原色黑色文字在二级黑色层上出现。另外,再现非黑色文字还在连续色调层上出现,由于它在黑色层上不被支持。相反,笔划或填满原色黑能够在黑色层上出现(如果我们选择的话)。
虽然打印机驱动程序被迫挂起上述功能,但是它能够挂起应用在连续色调层的函数调用以回到这些函数的相应的GDI执行,由于连续色调层是一种标准格式的位图。对于每个DrvXxx函数而言,有由GDI提供的相应的EngXxx函数。
如在节8.2中所述,当前往连续色调层的对象使黑色层上像素变暗的时候,在连续色调对象与连续色调层合成之前该变暗的黑色像素必须从黑色层转移到连续色调层上。该过程进行的关键在于暗化是在它被挂回到GDI中之前在挂起调用中被探测并处理的。这涉及从其几何结构中确定出连续色调对象的逐像素的暗度,并且采用该暗度来从黑色层中选择地将黑色像素转移到如在节8.2中所述的连续色调层。
9.3.2确定连续色调对象几何形状
有可能在再现之前确定出每个连续色调对象的几何形状,从而能有效地确定出它使哪个黑色像素变暗。在Drv复制位和Drv绘画的情况中,几何形状由片断对象(CLIPOBJ)来确定,它能够被列举为一组矩形。
在Drv笔划轨迹的情况中,事情更加复杂。Drv笔划轨迹支持直线和Bézier-样条曲线段,以及单像素宽度线和几何宽度线。第一步是要通过清除在驱动程序的DEVINFO结构的flGraphicsCaps部件中相应的权能特征(GCAPS_BEZIERS and GCAPS_GEOMETRICWIDE),而避免Bézier-样条曲线段和几何宽度线合成在一起。这会使GDI将这些调用作为更简单的调用再阐述到Drv绘画上。通常,GDI给驱动程序加速高速权能的机会,但是模拟驱动程序所没有提供的任意权能。
剩下的是简单地来确定出单像素宽度直线的几何形状。这样的线段可以是实线或者装饰性的。在后面的情况中,线条样式是由在指定线属性(LINEATTRS)中的样式列来确定的。该样式列指定该线条如何沿着其长度在不透明和透明之间变换,因此支持了各种虚线效果等。
当画笔是原色黑的时候,直线还可以有用地被再现到黑色层上,尽管具有由800dpi分辨率所施加的增加的宽度。
9.3.3再现文字
在DrvTextOut的情况中,情况也更复杂。首先,不透明背景即便要被想在连续色调层上的任何其它填充一样进行处理(参见DrvPaint)。如果前景画笔不是黑色的、或者混合模式不是有效地不透明、或者字体不是可缩放的,或者该字体表示外形笔划,则该调用被挂到EngTextOut上以应用在连续色调层上。然而在调用被挂起的时候,驱动程序通过得到其位图(通过FONTOBJ_cGetGLyphs)来确定出每个符号的几何形状,并且使通常的暗化核对黑色层。
如果不允许将DrvTextOut挂起的话(文件不明确),则驱动程序应该不允许复杂的文字操作。这包括不允许外形笔划(通过清除GCAPS_VECTOR_FONT权能特征),以及不允许复杂的混合模式(通过清除GCAPS_ARBMIXTXT权能特征)。
如果前景画笔是黑色且不透明的,而且该字体是可缩放的并且不是有笔划的话,则这些字符会在黑色层上再现。在该情况中,驱动程序通过获得其外形(再次通过FONTOBJ_cGetGLyphs,但是作为PATHOBJ)确定出每个字符的几何形状。然后驱动程序从其外形以800dpi再现出每个字符并且将它写入到黑色层上。虽然外形几何形状使用了设备坐标(即在267ppi下),但是这些坐标是以固定的点格式,并具有许多用于高分辨率再现的小数精度。
要注意的是,如果指定的话,删除线和下划线矩形被加入到字符的几何形状中。
驱动程序必须在DEVINFO中设置GCAPS_HIGHRESTEXT特征以请求由GDI在高精度固定点格式中提供的字符位置(又在267ppi设备坐标中)以便能够在800dpi精确地定位。驱动程序必须还提供DrvGetGlyphMode函数的实现,这样它能够给GDI指出字符应该被缓存为外形而不是位图。理论上驱动程序应该隐藏所再现的字符位图以便系统、存储器承认。只在特定点尺寸之下的字符才应该被隐藏。
9.3.4压缩连续色调层
如上所述,连续色调层是采用JPEG来压缩的。向前的离散余弦变换(DCT)是JPEG压缩的最有价值的部分。在当前的高质量软件的实施中,每个8×8方块的向前的DCT需要12个整数乘法和32个整数加法[7]。在奔腾处理机上,整数乘法需要10个循环,而整数加法需要2个循环[11]。这等于184个循环的每个方块的总成本。
25.5MB连续色调层由417,588个JPEG块构成,从而给出一个大约77兆循环的全部向前的DCT成本。在300MHz,PC99桌面标准[5]下,这等于0.26秒,这在每页2秒的范围内是好的。
10 参考书目
[1]ANSI/EIA 538-1988,Facsimile Coding Schemes and CodingControl Functions for Group 4 Facsimile Equipment,1988.8
[2]Hurnphreys.G.W..和V.Bruce.Visual Cognition.LawrenceEribaum Associates.1989,第15页
[3]IEEE Std 1284-1994.IEEE Standard Signaling Method for aBidirectional Parallel Peripheral Interface for Personal Computers,1994.12.2
[4]Intel Corp.和Microsoft Corp.,PC 98 System Design Guide,1997
[5]Intel Corp.和Microsoft Corp.,PC 99 System Design Guide,1998
[6]ISO/IEC 19018-1:1994.Information technology-Digitalcompression and coding of continuous-tone still images:Requirements andguidelines,1994
[7]Loeffler,C..A.Ligtenberg和G.Moschytz,″Practical Fast 1-DDCT Algorithms with 11 Multiplications″,Proceedings of the InternationalConference on Acoustics,Speech,and Signal Processing 1989(ICASSP′89),第988-991页
[8]Microsoft Corp.,Microsoft Windows NT 4.0 Device DriverKit,1997
[9]Microsoft Corp.,Microsoft Windows NT 5.0 Device Driver Kit,1998
[10]Olsen,J.′Smoothing Enlarged Monochrome Images″,inG1assner,A.S.(ed.),Graphics Gems.AP Professional.1990
[11]Schmit.M.L..Pentium Processor Optimization Tools,APProfessional,1995
[12]Thompson.H.S.,Multilingual Corpus 1 CD-ROM,EuropeanCorpus Initiative
[13]Urban,S.J.,″Review of standards for electronic imaging forfacsimile systems″.Journal of Electronic Imaging,Vol.1(1),1992.1,第5-21页
[14]USB Implementers Forum,Universal Serial Bus Specification,Revision 1.0,1996
[15]USB Implementers Forum,Universal Serial Bus Device ClassDefinition for Printer Devices.Version 1.07 Draft.1998
[16]Wallace.G.K..″The JPEG Still Picture CompressionStandard″,Communications of the ACM,34(4),1991.4,第30-44页
[17]Yasuda,Y..″Overview of Digital Facsimile CodingTechniques in Japan″.Proceedings of the IEEE.Vol.68(7).1980.7,第830-845页
对于本领域普通技术人员来说,应该理解的是:可以对在具体实施方案中所示的本发明进行各种变化和/或改进,而不会脱离如广义上所描述的本发明的精神或范围。因此,这些实施方案只是示意性的而不是限制性的。

Claims (15)

1.一种在单衬底上构造的集成电路,包括:
数据总线;和
可操作地连接到所述数据总线上的专用功能单元,所述功能单元包括:
JPEG解码器;
压缩的二级扩展器;
过渡调色器;和
打印头接口。
2.根据权利要求1所述的集成电路,还包括可操作地连接到所述数据总线上的通用处理机,用于控制所述功能单元,其特征在于,可操作所述处理机从而运行调节所述功能单元以便接收、扩展和打印页面的软件。
3.根据权利要求2所述的集成电路,其特征在于,可操作所述处理机在流线的模式下打印页面。
4.根据权利要求2所述的集成电路,其特征在于,当所述接受到的页面尺寸超出内存阈值时,可操作所述处理机在单页的模式下打印页面。
5.根据权利要求4所述的集成电路,其特征在于,所述内存阈值为3MB。
6.根据权利要求1所述的集成电路,其特征在于,可操作所述JPER解码器和所述压缩的二级扩展器以便将二级层和连续色调层并行解压缩。
7.根据权利要求1所述的集成电路,其特征在于,可操作所述过渡调色器将连续色调彩色数据过渡调色成二级彩色层,然后在所述二级彩色层上合成一个二级黑色层。
8.根据权利要求1所述的集成电路,其特征在于,可操作所述过渡调色器将连续色调CMYK数据过渡调色成二级CMYK层,然后在所述二级CMYK层上合成一个二级黑色层。
9.根据权利要求2所述的集成电路,其特征在于,可操作所述处理机以恒定的所需速度将二级CMYK数据转移到所述打印头接口。
10.根据权利要求2所述的集成电路,其特征在于,打印时可操作所述处理机以便实时扩展页面。
11.根据权利要求2所述的集成电路,还包括可操作地连接到所述数据总线的多通道DMA控制器,其特征在于,每个所述功能单元还包含一个或更多芯片内输入和/或输出FIFO,每个FIFO在所述多通道DMA控制器中都分配有一个独立的通道。
12.根据权利要求11所述的集成电路,其特征在于,当输出传输完成时,可操作所述DMA控制器中断所述处理机。
13.根据权利要求12所述的集成电路,其特征在于,所述压缩的二级扩展器单元包括:
一个位流解码器;
一个可操作地连接到所述位流解码器上的状态机;
一个可操作地连接到所述状态机上的边缘计算逻辑电路;
两个可操作地连接到所述边缘计算逻辑电路上的游程长度解码器;以及
一个可操作地连接到所述边缘计算逻辑电路上的游程长度(再)编码器。
14.根据权利要求13所述的集成电路,其特征在于,可操作所述状态机以便响应于所述位流解码器提供的代码来控制所述边缘计算逻辑电路。
15.根据权利要求1所述的集成电路,其特征在于,所述压缩的二级扩展器为EDRL扩展器。
CNB2003101130305A 1998-11-09 1999-11-09 打印机集成电路 Expired - Fee Related CN1277678C (zh)

Applications Claiming Priority (4)

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

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNB998130842A Division CN1138636C (zh) 1998-11-09 1999-11-09 用于打印机的打印机驱动程序及其驱动方法

Publications (2)

Publication Number Publication Date
CN1508013A true CN1508013A (zh) 2004-06-30
CN1277678C CN1277678C (zh) 2006-10-04

Family

ID=25645923

Family Applications (3)

Application Number Title Priority Date Filing Date
CNB998130842A Expired - Fee Related CN1138636C (zh) 1998-11-09 1999-11-09 用于打印机的打印机驱动程序及其驱动方法
CNB2003101130292A Expired - Fee Related CN1284673C (zh) 1998-11-09 1999-11-09 数字打印系统
CNB2003101130305A Expired - Fee Related CN1277678C (zh) 1998-11-09 1999-11-09 打印机集成电路

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CNB998130842A Expired - Fee Related CN1138636C (zh) 1998-11-09 1999-11-09 用于打印机的打印机驱动程序及其驱动方法
CNB2003101130292A Expired - Fee Related CN1284673C (zh) 1998-11-09 1999-11-09 数字打印系统

Country Status (8)

Country Link
EP (1) EP1128961B1 (zh)
JP (5) JP2003508827A (zh)
KR (9) KR100576744B1 (zh)
CN (3) CN1138636C (zh)
AT (1) ATE430443T1 (zh)
AU (1) AU1533600A (zh)
DE (1) DE69940824D1 (zh)
WO (1) WO2000027640A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103733208A (zh) * 2011-06-08 2014-04-16 图像电子公司 半色调方法和装置
CN107206816A (zh) * 2015-02-13 2017-09-26 惠普发展公司,有限责任合伙企业 采用包括地址数据的数据分组的打印头

Families Citing this family (60)

* 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
AUPP702598A0 (en) 1998-11-09 1998-12-03 Silverbrook Research Pty Ltd Image creation method and apparatus (ART71)
US6547368B2 (en) * 1998-11-09 2003-04-15 Silverbrook Research Pty Ltd Printer including printhead capping mechanism
WO2001089838A1 (en) 2000-05-24 2001-11-29 Silverbrook Research Pty. Ltd. Printed page tag encoder
US6795215B1 (en) 2000-05-23 2004-09-21 Silverbrook Research Pty Ltd Print engine/controller and printhead interface chip incorporating the engine/controller
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
US6859289B1 (en) * 2000-05-23 2005-02-22 Silverbrook Research Pty Ltd Print engine/controller with color mask
US8270023B2 (en) 2000-05-23 2012-09-18 Zamtec Limited Print engine controller for double-buffered processing
CN1812474B (zh) * 2000-05-24 2010-05-12 西尔弗布鲁克研究有限公司 具有标签编码器的打印控制器
AU2000247255B2 (en) * 2000-05-24 2004-03-25 Memjet Technology Limited Print engine/controller and printhead interface chip incorporating the engine/controller
SG148836A1 (en) 2000-05-24 2009-01-29 Silverbrook Res Pty Ltd Print engine controller with dithering and compositing circuitry
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
SG152036A1 (en) * 2000-06-30 2009-05-29 Silverbrook Res Pty Ltd A pagewidth printhead defining an array of nozzles with predetermined groupings
DE60030893D1 (de) * 2000-06-30 2006-11-02 Silverbrook Res Pty Ltd Steuerung der ausstosszeiten der druckkopfdüsen
IL166422A0 (en) * 2000-06-30 2006-01-15 Silverbrook Res Pty Ltd Print engine/controller with half-toner/compositor
AU2005200474B8 (en) * 2000-06-30 2006-08-31 Memjet Technology Limited Print engine/controller configured to synchronize output from half-toner/compositor to printhead
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 キヤノン株式会社 データ処理方法、プログラム及びデータ処理システム
AUPS048502A0 (en) 2002-02-13 2002-03-07 Silverbrook Research Pty. Ltd. Methods and systems (ap44)
AU2003202630B2 (en) * 2002-02-13 2007-03-29 Silverbrook Research Pty Ltd Printer with capping device
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 주식회사 원익아이피에스 박막 증착 장치 및 이를 포함한 기판 처리 시스템
JP2013092814A (ja) 2011-10-24 2013-05-16 Seiko Epson Corp 印刷システム、データ転送方法
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 珠海艾派克微电子有限公司 一种墨盒芯片及使用该芯片的墨盒
US10027843B2 (en) 2014-01-30 2018-07-17 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 セイコーエプソン株式会社 印刷装置、及び、印刷装置の制御方法
US9363416B1 (en) * 2015-01-30 2016-06-07 Kyocera Document Solutions Inc. Digital image attribute plane compression
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
CN106681673B (zh) * 2016-12-21 2019-08-30 福建升腾资讯有限公司 一种热敏打印机灰度打印方法
TWI681310B (zh) * 2017-01-05 2020-01-01 三緯國際立體列印科技股份有限公司 圖檔轉換方法與立體列印系統
EP3554844B1 (en) 2017-01-31 2023-03-22 Hewlett-Packard Development Company, L.P. Accessing memory units in a memory bank
US10857808B2 (en) 2017-02-07 2020-12-08 Hewlett-Packard Development Company, L.P. Calibrating printing pens of print head assemblies
CN110248811B (zh) * 2017-04-05 2021-01-22 惠普发展公司,有限责任合伙企业 利用预充电的阈值的管芯上致动器评估的系统和方法
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 广州微印信息科技有限公司 一种基于图像识别的照片处理方法
EP3837106A4 (en) * 2018-10-29 2022-03-23 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 厦门汉印电子技术有限公司 一种电量监测方法、装置、打印机及存储介质

Family Cites Families (21)

* 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.
EP0262801B1 (en) * 1986-08-29 1992-12-23 Canon Kabushiki Kaisha Method or system for processing image data
JPS63184886A (ja) * 1987-01-27 1988-07-30 Fujitsu Ltd 画像処理における2値化方式
JPH0385870A (ja) * 1989-08-29 1991-04-11 Mutoh Ind Ltd スキャナ読取画像データの二値化回路
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 キヤノン株式会社 インクジェット装置、該装置用インクジェットヘッドの温度推定方法および制御方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103733208A (zh) * 2011-06-08 2014-04-16 图像电子公司 半色调方法和装置
CN103733208B (zh) * 2011-06-08 2017-02-15 图像电子公司 半色调方法和装置
CN107206816A (zh) * 2015-02-13 2017-09-26 惠普发展公司,有限责任合伙企业 采用包括地址数据的数据分组的打印头
CN107206816B (zh) * 2015-02-13 2020-01-10 惠普发展公司,有限责任合伙企业 采用包括地址数据的数据分组的打印头

Also Published As

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

Similar Documents

Publication Publication Date Title
CN1138636C (zh) 用于打印机的打印机驱动程序及其驱动方法
CN1578733A (zh) 包括打印头盖帽机构的打印机
CN1146498C (zh) 以受限制访问方式加入消费者电子系统中的打印机
CN1827371A (zh) 双面喷墨打印系统
US7973966B2 (en) Method of printing a compressed image having bi-level black contone data layers
AU2002319010A1 (en) Printer including printhead capping mechanism

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20061004

Termination date: 20141109

EXPY Termination of patent right or utility model