连接通用控制码和设备专用控制码的方法和设备的制作方法

文档序号:6589807阅读:174来源:国知局
专利名称:连接通用控制码和设备专用控制码的方法和设备的制作方法
技术领域
本发明涉及传真机、打印机、多功能机、和具有打印机构的其它机器。具体来说,本发明涉及打印控制器和用于这些机器的码的开发。
在制造传真机、打印机、多功能机、和具有打印机构的其它机器期间,初始的设备制造者(OEM)要购买一个“核心部件”。这个核心部件一般包括打印头驱动器、输纸电机驱动器、托架电机驱动器、纸传感器和标志、编程有基本功能和可改变数值以控制这些核心打印部件的控制器。然后OEM向核心部件添加某些部件和功能,于是,一个最终的产品诞生了。例如,不同的OME可能向它们的传真机添加不同的功能块和不同的纸路机构。
OEM可能从一个销售商购买这些核心部件的全部或者一部分。但最低限度,OEM一般要从销售商购买打印控制器和打印只读存储器(ROM),因为这些部件控制这个核心打印设备的极基本的或者低水平的功能。其余的核心部件可以从打印控制器销售商以外的来源购买。
打印ROM存储用于控制打印机构的控制码。控制码包括通用可执行码和设备专用可执行码。
在码的开发期间,销售商产生控制码。如果OEM从这个销售商以外的来源购买了核心打印设备,那么,销售商产生的设备专用码可能会和OEM设计的特定纸路不同。
当前的作法是,销售商向OEM提供源码部分,让OEM修改源码并且确定与OEM的机器一起操作的最终功能和可变数值。如果缺省纸路不同于OEM使用的纸路,0EM就要修改销售商提供的可变数值和纸路功能。一旦OEM开发出设备专用码,OEM就要将这个经过修改的设备专用源码(包括经过修改的可变数值和纸路功能)送到销售商。然后,销售商编译整个源码,并将编译好的码烧结在打印ROM中,然后将这个打印ROM传回OEM。将打印ROM安装在OEM的机器内。
在这样的码开发中存在3个固有的问题。第一,销售商向OEM提供通用源码,并且OEM向销售商提供设备专用源码。这样,每一方都向对方暴露了自已的有价值的知识产权。然而,这种情况下对于期望保护自已的源码的一方,是不期望出现的。
第二,码的开发是按照顺序实现的,这需要时间。平行地进行销售商和OEM码的开发可能会更加迅速和更加有效。
第三,销售商为每个OEM定制它的打印ROM。向不同的OEM提供不同的打印ROM,对于销售商来说,成本是高的。
本发明克服了这些问题。按本发明的一个方面,设备包括一个打印机构,打印机构有一个第一控制器和暂时存储器。暂时存储器的一部分留作跳转表。该设备进一步还包括一个第二控制器。在设备起动期间,第二控制器向打印控制器传送可变数值和功能。打印控制器将可变数值写到跳转表的特定位置。打印控制器还将功能写到暂时存储器,并且将这些功能的起始地址写到跳转表的特定位置。打印控制器使用跳转表访问可变数值并执行这些功能。于是,这个跳转表就允许第二控制器与第一控制器共享这些可变数值和功能。这样一种体系结构允许更加有效地开发代码。这种体系结构还允许对于代码进行保护,减少打印控制器的制造费用。
从以下结合附图的详细描述以及作为本发明原理的实例说明,本发明的其它方面和优点都将变成显而易见。


图1表示按照本发明的一个传真机;图2表示用于传真机的打印ROM和打印RAM的存储器的映射;图3表示在传真机操作期间通用码和设备专用码的连接方法;图4表示开发用于传真机打印机构的控制码的方法;图5表示按照本发明的另一个机器。
如用于说明的附图所示,本发明是在一个传真机中实施的,这个传真机包括一个打印控制器、一个传真控制器、和随机存取存储器。该打印控制器包括一个打印ROM,用于存储通用码。该传真控制器包括一个传真ROM,用于存储设备专用码。该打印控制器在随机存取存储器中产生一个跳转表,用于连接通用码和设备专用码。销售商开发通用码和缺省的设备专用码。OEM随意使用缺省设备专用码或开发它自已的设备专用码。分割通用码和设备专用码,以便允许OEM修改设备专用码而不需要知道通用码的细节。因此,销售商不需要向OEM提交它的通用源码。而且,OEM也不需要向销售商提交它的设备专用源码。因而每一方都可以保护它的代码。
此外,OEM和销售商可以平行地开发代码。因此,提高了代码的开发效率,减小了代码的开发时间。
这样一种体系结构允许销售商产生可以分配给不同的OEM的一种打印ROM。销售商不需要为每个OEM定制打印ROM;因此降低了制造成本。然而,OEM可以在这个打印控制器中嵌入这个打印ROM,这又进一步减小了制造成本。
图1所示的传真机8包括一个传真机构10和一个打印机构12。传真机构10包括一个传真控制器14和由传真控制器14控制的各种传真和扫描设备。传真和扫描设备包括(但不限于)行接口单元16、扫描器18、自动文件供给器20、前面板22、传真ROM24、传真随机存取存储器(RAM)26。传真控制器14可以在具有一个嵌入式处理器28的“应用特殊集成电路”(ASIC)上实现。
打印机构12包括一个打印控制器30和各种核心打印设备,例如打印头驱动器32、供纸电机驱动器34、托架电机驱动器36、和纸传感器和标记38。打印控制器30包括一个嵌入式处理器40、嵌入式打印ROM42、和嵌入式打印RAM44。传真控制器14和打印控制器30通过一个双向链路46通信。
打印ROM42存储通用可执行码54。传真ROM26存储传真控制码48和设备专用控制码50、52,以用于核心打印设备。设备专用控制码包括设备专用功能50和设备专用可变数值52。通用码54调用设备专用功能50并且使用设备专用可变数值52来控制核心打印设备32-38。
打印RAM44的一部分留给了跳转表,跳转表包括一个连接可变数值表和一个连接功能表。打印控制器30建立跳转表,并且使用跳转表连接通用码54和设备专用码50、52。
现在参照图2,图2表示一个用于打印ROM42和打印RAM44的存储图的一个例子。打印ROM42和打印RAM44可以占用从16进制00000到16进制17FFF的一个连续的存储地址空间,其中打印ROM42的大小是64千字节。连接可变数值表44a和连接功能表44b各占据RAM32的256个字节。打印RAM44的一个7424字节的部分44c可以留作设备专用功能50的复制。打印RAM44的其余的24个千字节和256个字节部分44d和44e可以用作打印处理器40的工作存储器,以执行通用码54、并且执行设备专用码52、54的复制。
现在附带参照图3,图3描述打印控制器30如何建立跳转表并且使用跳转表连接通用码54和设备专用码50、52。在传真机8起动时(方块100),打印控制器30执行它的通用码54,传真控制器执行它的传真控制码48(方块102)。传真控制器14经链路46向打印控制器传送一个数据块(方块104)。这个方块包括设备专用码50、52的复制。
打印控制器30知道如何分析这个方块并将功能50和可变数值52存储在打印RAM44中。设备专用可变数值52存储在打印RAM44的预先指定的位,借此产生连接可变数值表44a(方块106)。在传真机8正常操作期间,通用码54将指示打印处理器40在连接可变数值表44a中的这些设备专用可变数值的预先指定的位置去寻找这些设备专用可变数值。表1表示用于传真机8的一个示例性的连接可变数值表的一部分。
表1
例如,在起动期间,打印控制器30在为弹出距离指定的打印RAM位置中存储用于弹出距离的一个值。在正常操作期间,当打印控制器30需要知道电机驱动器34移动一张纸进入输出盘所需的步数时,打印控制器30就要使用存储在连接功能表44a中的弹出距离值。
打印控制器30在RAM44的指定部分44c存储设备专用功能50(方块108),并在连接功能表44b的预先指定的位置存储功能50的起始地址(方块110)。因为设备专用功能的存储器要求可能发生变化(例如,OEM可能修改专用功能,因此增加了它的存储器要求),所以打印控制器30要使用连接功能表44b来识别存储在打印RAM44的指定部分44c中的功能的起始地址。在传真机8的正常操作期间,通用码54将要指示打印处理器40向连接功能表44b中指示的起始地址处的这些设备专用功能传送控制。表2表示用于传真机8的一个示例性连接功能表44b的一部分。
表2
例如,在起动期间,打印控制器30在打印RAM44的指定部分44c中存储一个“读出传感器”功能。打印控制器30还要在为“读出传感器”功能指定的位置存储在连接功能表44b中“读出传感器”功能的起始地址。不管何时通用码54调用“读出传感器”功能,打印处理器40都要向在连接功能表44b的“入口”处指示的起始地址传送控制。
在传真机8正常操作期间,通用码54指示打印处理器40在连接可变数值表44a中的设备专用可变数值的指定位置寻找设备专用可变数值(方块112)。通用码54还指示打印处理器40通过向连接功能表44b中的这个起始地址传送控制来执行设备专用功能(方块112)。
因此,跳转表允许传真控制器14在传真机8操作期间与打印控制器30共享设备专用功能50和可变数值52。然而,跳转表还允许打印控制器30与传真控制器14共享信息(方块114)。传真控制器14可以访问打印控制器30写入连接可变数值表44b的值。例如,传真控制器30可以看见OOPS标记,以确定传真机8是否缺纸。
现在参照图4。在为传真机8开发代码期间,OEM一般要从销售商那里购买打印控制器30(方块202)。OEM可以从打印控制器30的销售商那里或从打印控制器30的销售商以外的来源购买其余的部件(方块204)。
将打印控制器30和打印ROM42以及打印RAM44一起都嵌入一个ASIC中。销售商向OEM提供缺省设备专用源码(方块206)。OEM可以随意地使用这个缺省设备专用源码。然而,如果OEM从不同的销售商那里购买这些部件,则缺省设备专用源码的功能和可变数值就不可能和这些混合的部件一起适当地工作。
因此,OEM可以任选地修改缺省设备专用源码(方块208)。在OEM已经确定了设备专用源码(修改过的或未经修改的)后,OEM编译这个设备专用源码,并且将编译的码50、52“烧结”在打印ROM中(方块210)。缺省源码将显示功能和可变数值在传真ROM26中的存储位置。如果OEM修改设备专用源码50或52,则OEM将在和对应的缺省功能和可变数值相同的位置“烧结”修改过的功能和可变数值。从本质上看,OEM将用修改过的功能和可变数值去代替缺省的功能和可变数值。这将允许打印控制器30去识别在传真机8起动期间通过传真控制器14传送到打印控制器30的可变数值和功能。
如果OEM改变设备专用码,则不必更新在打印ROM40中的销售商的通用码54。然而,OEM也不需要向打印控制器销售商公开修改过的设备专用码。OEM甚致于不需要通知打印控制器销售商已经修改过缺省设备专用码。打印控制器销售商不知道传真机8是在执行缺省设备专用码还是在执行修改过的设备专用码。
打印控制器销售商只需向OEM公开设备专用码。而不需向OEM公开通用码。因此,打印控制器销售商能够保护它的通用码,OEM可以保护它的修改过的设备专用码。
此外,在OEM修改它的设备专用码50、52的同时,打印控制器销售商可以修改它的通用码54。任何一方都可以凭空改变它自己的代码。因为码的开发可以平行地进行,所以提高了码的开发效率,并且减小了码的开发时间。
销售商可以产生一种打印ROM,将其分配给不同的OEM。销售商不需要为每个OEM定制打印ROM 42;因此降低了制造成本。然而,OEM可以将打印ROM42嵌入打印控制器ASIC,这进一步减小了制造成本。
对于传真机、打印机、或具有打印机构的其它机器,可以使用相同的打印控制器30。因此,销售商甚致于不需要为不同类型的机器定制打印控制器30。
虽然以上结合传真机8描述了本发明,但本发明不限于此。本发明可以应用到任何具有打印机构的机器上。图5表示一个机器308,它包括核心打印设备332、打印ROM342、打印RAM344、和打印处理器340。打印ROM344存储通用码354。在一个计算机314的持久性存储器336(如硬盘驱动器)中存储设备专用码350、352。对于一个计算机处理器348进行编程,以便可以经一个通信端口向机器308发送设备专用码350、352。打印处理器340在打印RAM344中产生跳转表,并且在打印RAM344中存储设备专用功能350的副本。跳转表允许计算机314与机器308共享设备专用码350、352。
以上结合打印ROM描述了打印机构。然而,可以使用任何类型的持久性存储器代替只读存储器。
本发明不限于以上描述的设备专用功能和可变数值。任何类型的信息都可以与这种打印控制器共享。
打印控制器已经被描述为向RAM写入设备专用码的副本。然而,其它的控制器(如传真控制器)也可以向非嵌入式打印RAM直接写入副本。
因此,本发明不限于上述的实施例。相反,本发明被认为是符合下面的权利要求书。
权利要求
1.设备(8),包括一个包括打印控制器(30)的打印机构(12);一个第二控制器(14);和暂时存储器(44),它包括留作跳转表(44a、44b)的一个部分;第二控制器(14)在设备(8)起动期间向打印控制器(30)传送控制码(50、52),控制码(50、52)包括功能(50)和可变数值(52);打印控制器(30)向跳转表的预先指定的位置(44a)写入可变数值(52),打印控制器(30)向暂时存储器(44)写入功能(50),并且向跳转表中的预先指定位置(44b)写入功能(50)的起始地址;对打印控制器(30)进行编程,以便可以访问跳转表(44a)中的可变数值,并且还要对打印控制器(30)进行编程,以便可以使用跳转表(44b)中的起始地址执行存储在暂时存储器(44)中的功能;借此,跳转表(44a、44b)允许第二控制器(14)与打印控制器(30)共享可变数值(52)和功能(50)。
2.权利要求1的设备,其特征在于还要对打印控制器(30)进行编程,以便可以向跳转表(44a)写入可变数值;并且,其特征在于还要对第二控制器(14)进行编程,以便可以访问跳转表(44a)中的可变数值。
3.权利要求1的设备,其特征在于打印控制器(30)包括第一处理器(40)和第一ROM(42),第一ROM(42)为第一处理器(40)存储通用控制码(54);其特征在于第二控制器(14)包括第二处理器(28)和第二ROM(24),第二ROM(24)为第二处理器(28)存储控制码,第二ROM(24)还存储可变数值(52)和功能(50)。
4.权利要求3的设备,其特征在于第二控制器(14)是一个传真控制器;其特征在于可变量(52)和功能(50)包括纸路可变数值和功能;其特征在于对于传真控制器(14)进行编程,以便在设备起动期间能向打印控制器(30)传送纸路可变量和功能;其特征在于对于打印控制器(14)进行编程,以便向跳转表的指定位置(44a)写入纸路可变数值(52);其特征在于对于打印控制器(14)进行编程,以便将纸路功能(50)写入暂时存储器(44c),并把纸路功能(50)的起始地址写入跳转表的指定位置(44b)。
5.权利要求3的设备,其特征在于第一ROM(42)和第一处理器(40)嵌入第一ASIC中。
6.权利要求1的设备,其特征在于跳转表包括连接可变数值表(44a)和连接功能表(44b)。
7.权利要求1的设备,其特征在于打印控制器(340、342)包括第一处理器(340)和ROM(342),ROM(342)为第一处理器(340)存储可执行码(354);其特征在于第二控制器(336、348)包括一个微处理器(348)和一个计算机(314)的持久性存储器(336),持久性存储器(336)为微处理器存储可执行码,持久性存储器还为打印机构(332、340、342、344)存储可变数值(352)和功能(350)。
全文摘要
一种传真机(8),包括一个打印控制器(30)、一个传真控制器(14)、和随机存取存储器(44)。通用码(54)存储在打印控制器(30)的ROM(42)中,纸路码存储在传真控制器(14)的ROM(24)中。在传真机(8)起动时,传真控制器(14)向打印控制器(14)传送纸路码功能(50)和可变数值(52)的副本。打印控制器(14)还向随机存取存储器(44)的跳转表(44a)写入可变数值(52),向随机存取存储器(44)的指定部分(44c)写入功能(50),并且向跳转表(44b)写入功能(50)的起始地址。在传真机(8)操作期间,打印控制器(30)执行通用控制码(54),并且使用使用跳转表(44a、44b)访问可变数值(52)并执行功能(50)。于是,跳转表(44a、44b)允许打印控制器(14)连接通用控制码(54)和设备专用可变数值(52)以及功能(50)。
文档编号G06F3/12GK1300978SQ00124278
公开日2001年6月27日 申请日期2000年8月17日 优先权日1999年12月17日
发明者L·H·恩古云 申请人:惠普公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1