一种成像设备的数据读写方法和系统与流程

文档序号:11519532阅读:231来源:国知局
一种成像设备的数据读写方法和系统与流程

本发明涉及数据存储技术领域,特别涉及一种成像设备的数据读写方法和系统。



背景技术:

成像设备需要在使用中不断的改写存在存储媒介里的数据,成像设备在整个使用寿命中,改写数据的次数从几千到几万次,另一个特点是断电后,这些数据必须保留,针对这些特点,目前成像设备主要是使用eeprom或flash作为存储媒介。

在实现本发明的过程中,发明人发现至少存在如下问题:

传统的多协议多设备兼容的成像设备,是采用eeprom或flash,每个协议/设备会有一个专用的数据区。eeprom和flash为这种方案提供了高达10万次的写次数。但eeprom和flash成本都比较高,加上每个协议/设备都有一个单独的区域,所需的eeprom/flash比较大,成本就更高。



技术实现要素:

本发明的目的是提供一种能够节约存储成本的成像设备的读写数据方法和系统。

根据本发明实施例的一个方面,提供一种成像设备的写数据方法,包括:接收包含待写入数据和待写入地址的数据包;判断待写入地址的寿命是否已结束;若已结束,则在备用存储区中寻找一个未使用的地址作为新写入地址;将待写入数据写入新写入地址。

根据本发明实施例的另一个方面,提供一种成像设备的读数据方法,包括:接收待读取地址;在地址映射表中查找待读取地址是否存在映射关系;若存在,从与待读取地址形成映射关系的地址中读取数据,否则从待读取地址中读取数据。

根据本发明实施例的又一方面,提供一种成像设备的数据读写系统,包括:存储媒介,包括常用存储区和备用存储区;控制模块,用于接收包含待写入数据和待写入地址的数据包,判断待写入地址的寿命是否已结束,若已结束,则在备用存储区中寻找一个未使用的地址作为新写入地址,将待写入数据写入新写入地址。

进一步,存储媒介包括:地址映射表,用于存储数据地址与映射地址或新映射地址的映射关系,数据地址为常用存储区中的地址,映射地址或新映射地址为备用存储区中的地址。

进一步,控制模块包括:查找单元,用于在地址映射表中查找是否存在与待写入地址对应的映射关系,以及在地址映射表中查找待读取地址是否存在映射关系;判断单元,用于当存在映射关系时,判断映射关系中与数据地址形成映射关系的地址的寿命是否已结束,否则,判断数据地址的寿命是否已结束。

进一步,控制模块还包括:写入单元,用于将接收到的待写入数据写入数据地址或映射关系中与数据地址形成映射关系的地址,和将新写入地址作为数据地址的映射地址,将映射地址与数据地址形成映射关系写入地址映射表,以及将新写入地址作为数据地址的新映射地址,将数据地址与新映射地址形成映射关系写入地址映射表;读取单元,用于读取写入数据地址或映射关系中与数据地址形成映射关系的地址中的待写入数据,和读取数据地址或映射关系中与数据地址形成映射关系的地址中的数据,以及基于待读取地址,从待读取地址或与待读取地址形成映射关系的地址中;比对单元,用于将读取到的数据与接收到的待写入数据比对;若两者不相同,则认为数据地址或映射关系中与数据地址形成映射关系的地址的寿命已结束;以及将读取到的数据与接收到的数据比对;若读取到的数据与接收到的数据相同,则不进行写入操作,并发送写入成功的消息;若读取到的数据与接收到的数据不相同,则进行写入操作。

进一步,数据读写系统还包括:通信接口模块,用于接收主机发送的命令,命令包含命令参数;通信协议判断模块,用于基于预存的各个通信协议的协议参数,获取与命令参数相匹配的特征信息,特征信息包括协议参数;通信模块,用于按照匹配成功的协议参数对应的通信协议与主机通信,还用于接收包含待写入数据和待写入地址的数据包,并发送至控制模块。

进一步,存储媒介还包括:参数表,用于存储多种通信协议的特征信息。

进一步,通信接口模块包括:i/o接口,用于完成外部主机与漏极开路、adc电路、dac电路和电压比较器之间数据的输入/输出;漏极开路,用于支持与多个主机进行通信;adc电路,用于在接收到主机发送的模拟信号时,将其转换成数字信号,并对数字信号解析得到通信协议;dac电路,用于将发送至主机的数字信号转换为模拟信号;电压比较器,用于从模拟信号中提取通信内容,通信内容包括命令。

本发明实施例提供的一种成像设备的数据读写方法和系统,通过把对打印机的读写集中放在mtp中的常用存储区域中,打印机要读/写的数据在常用存储区域,不会给每个设备一个专用的常用存储区域,通过控制模块根据mtp的使用情况动态分配地址,从而相比以往的固定分配区域在存储媒介的使用上来说,所需的存储容量较小,因此能够节约存储成本,并且还能够满足成像设备断电保持数据的要求。

附图说明

图1是本发明实施例一的一种成像设备的写数据方法的流程图;

图2是本发明实施例二的一种成像设备的写数据方法的流程图;

图3是本发明实施例三的一种成像设备的写数据方法的流程图;

图4是本发明实施例四的关于寿命判断的一种实施方式的流程图;

图5是本发明实施例五的关于寿命判断的另一种实施方式的流程图;

图6是本发明实施例六的一种成像设备的写数据方法的流程图;

图7是本发明实施例七的一种成像设备的写数据方法的流程图;

图8是本发明实施例八的一种成像设备的读写数据系统的结构示意图;

图9是本发明实施例九的关于控制模块的一种实施方式的结构示意图;

图10是本发明实施例十的关于控制模块的另一种实施方式的结构示意图;

图11是本发明实施例十一的一种成像设备的读写数据系统的结构示意图;

图12是本发明实施例十八中关于存储媒介的另一种实施方式的结构示意图;

图13是本发明实施例十二中通信接口模块的结构示意图;

图14是本发明实施例十三的一种成像设备的读数据方法的流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明了,下面结合具体实施方式并参照附图,对本发明进一步详细说明。应该理解,这些描述只是示例性的,而并非要限制本发明的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本发明的概念。

实施例一

图1显示了本发明实施例一的一种成像设备的写数据方法的流程图。

如图1所示,该方法包括:

s1,接收包含待写入数据和待写入地址的数据包;

s2,判断待写入地址的寿命是否已结束;

由于本发明使用多次可编程的存储媒介(multi-timeprogrammable,mtp)进行存储数据,而mtp的一个地址只能反复写几十次到几百次,因而在将数据写入待写入地址时,需要判断该待写入地址的寿命是否已结束。具体地,判断寿命的方法可以有很多种,例如:可以通过记录每个待写入地址的写次数,并将写次数与该待写入地址能够写数据的最大写次数比较,若两者相等,则认为该待写入地址的寿命已结束,否则,认为该待写入地址的寿命未结束。

具体地,待写入地址可以是mtp中常用存储区域中的地址,也可以是备用常用存储区中地址,常用存储区域中的地址统称为数据地址,备用存储区中的地址统称为映射地址,对于mtp而言,由于大部分数据地址的使用次数不多,这些数据地址不会到达mtp使用寿命,因而,待写入数据一般指数据地址。

s3,若已结束,则寻找一个未使用的地址作为新写入地址;

若当前使用的待写入地址的写次数已经达到最大写次数,则需要在mtp的常用存储区域当中寻找一个未使用的地址作为待写入地址的映射地址。

s4,将待写入数据写入新写入地址。

在本发明实施例一中,作为步骤s2的一种可选的实施方式,还包括:

s5,若未结束,则将待写入数据写入待写入地址。

本发明实施例一通过将mtp应用于成像设备中,并对mtp中地址的寿命进行判断,当寿命已结束时,则在mtp的常用存储区域中寻找一个未使用过的地址作为该地址的映射地址,再将待写入的数据写入映射地址,从而不但实现了断电保持数据,还降低了存储成本。

实施例二

在本发明实施例一的基础上,当待写入地址为数据地址时,如图2所示,本发明实施例二还可以包括如下步骤:

s201,将新写入地址作为数据地址的映射地址;

s202,将映射地址与数据地址形成映射关系写入地址映射表。

实施例三

在本发明实施例一的基础上,当待写入地址为映射地址时,如图3所示,本发明实施例三还可以包括如下步骤:

s301,将新写入地址作为数据地址的新映射地址;

s302,将数据地址与新映射地址形成映射关系写入地址映射表。

实施例四

在本发明实施例一的基础上,作为步骤s2的一种可选的实施方式,如图4所示,步骤s2包括如下子步骤:

s401,在地址映射表中查找数据地址是否存在映射关系;

s402,若数据地址存在映射关系,判断映射关系中与数据地址形成映射关系的地址的寿命是否已结束;

s403,若不存在数据地址的映射关系,判断数据地址的寿命是否已结束。

本发明实施例中,若地址映射表中存在数据地址的映射关系,则表明该数据地址的寿命已结束,此时数据需要写入映射关系中的地址,若不存在映射关系,则表明该数据地址还在使用,此时数据需要写入数据地址。

作为一种优选实施例,本发明还可以包括如下步骤:记录该数据地址或映射地址写入数据的写入次数;将写入次数与该地址的最大写入次数比较;若达到最大写入次数,则返回一个新地址,主机在下次改写数据时,则将改写的数据与新地址同时发送至mtp,由mtp在相应的地址中改写数据即可,无需在地址映射表中进行查询,地址映射表中存储的映射关系仅供mtp在寻找未使用的地址时使用,若未达到最大写入次数,则进行正常写入。实施例五

在本发明实施例四的基础上,如图5所示,本发明实施例五进行寿命判断的步骤还包括如下步骤s501-s504:

s501,将接收到的待写入数据写入数据地址或映射关系中与数据地址形成映射关系的地址;

s502,读取写入数据地址或映射关系中与数据地址形成映射关系的地址中的待写入数据;

步骤s502是将步骤s501中写入数据地址或映射地址中的数据读取出来;

s503,将读取到的数据与接收到的数据比对,判断两者是否相同;

s504,若两者不相同,则认为数据地址或映射关系中与数据地址形成映射关系的地址的寿命已结束。

作为一种可选的实施方式,本发明实施例五还可以包括:

s505,若两者相同,则认为数据地址或映射关系中与数据地址形成映射关系的地址的寿命未结束。

其中,步骤s504和步骤s505并不对步骤的执行顺序作限定,可以是先执行步骤s504,再执行步骤s505,也可以是先执行步骤s505,再执行步骤s504。

本发明实施例五通过将写入的数据读取出来与接收到的待写入的数据进行比较进而判断其是否写入正确,以判断待写入地址的寿命是否已结束,从而保证数据能够正确写入,以及对地址的寿命进行判断,避免地址寿命已结束,还继续在该地址进行写数据,造成数据写入失败的问题。

实施例六

在本发明前述实施例中将待写入数据写入数据地址或映射地址之前,本发明实施例四还可以提供步骤s601-s604:

s601,读取数据地址或映射关系中与数据地址形成映射关系的地址中的数据;

步骤s601中,读取的数据是本次写入待写入地址或新寻找到的映射地址中的数据,在读取数据时,读取数据的时间应设置为小于两次写数据之间的时间间隔,以避免读取的数据不是本次写入的数据,造成误判。

s602,将读取到的数据与接收到的数据比对,判断两者是否相同;

具体地,是将读取到的数据与接收到的待写入数据进行比对,比较两者是否相同;

s603,若读取到的数据与接收到的待写入数据相同,则不进行写入操作,并发送写入成功的消息;

s604,若读取到的数据与接收到的待写入数据不相同,则进行写入操作。

本发明实施例四通过上述方法步骤实现减少写次数,进而延长存储区域中每个字节的寿命,实现进一步节省存储成本的效果。

实施例七

如图7所示,该方法包括:

s701,接收主机发送的命令,命令包含命令参数;

其中,命令参数主要是一些辨别命令,用来判断成像设备是否存在,以及主机的型号与成像设备是否匹配,命令参数包括id号、命令格式、命令长短等信息;

s702,基于预存的各个通信协议的特征信息,获取与命令参数相匹配的特征信息,特征信息包括协议参数和初始数据;

优选地,特征信息包括通信协议的标志信息,例如命令头、命令格式、命令长度、电压特性和速度特性等;还包含各种通信协议的协议参数,客户可以在出厂前或出厂后,配置这些协议参数,来适应不同的主机或适应由于主机环境变更引起的通信协议的协议参数改变的情况,如速度、上拉电阻值、电压幅度和/或明令时间特性等;以及通信需要的初始数据,这些初始数据会在与外部主机建立通信后被拷贝到数据地址中使用。具体地,是按照每个打印机机型要求的固定格式,将初始数据拷贝到与该打印机机型要求的固定格式对应的数据地址中。初始数据包括主机id号、通信密码、总打印页数和已打印页数。

s703,按照匹配成功的协议参数对应的通信协议与主机通信。实施例八

图8显示了本发明实施例八的一种成像设备的读写系统的结构示意图。

如图8所示,该系统包括:

存储媒介1,包括常用存储区12和备用存储区13;

存储媒介1可以选择多次可编程的存储媒介(multi-timeprogrammable,mtp)1,存储媒介1包括:地址映射表10、常用存储区12和备用存储区13;其中,常用存储区12由一定数量的数据地址组成,备用存储区13由一定数量的映射地址组成,地址映射表中存储的是数据地址和映射地址的映射关系,数据地址和映射地址的寿命均由存储媒介的性能决定,可以是1000次,3000次,本发明不以此为限。

需要说明的是,在出厂时,地址映射表10是空的,说明没有映射关系。地址映射表10是动态更新,也是动态长度,即根据需要加入映射关系。当一个数据地址要映射时,会加入一对地址,常用存储区的数据地址和备用存储区的映射地址,并往后移动地址映射表10的结尾标志。寻找时,看到结尾标志就结束。要是数据地址没有在表里,表明不存在映射关系,就是该数据地址寿命还未结束,还在使用,通过以上方式能够做到寻找空间和寻找时间的优化。

控制模块2,用于接收包含待写入数据和待写入地址的数据包,判断待写入地址的寿命是否已结束,若已结束,则在备用存储区中寻找一个未使用的地址作为新写入地址,将待写入数据写入新写入地址。

数据包中的待写入数据是指待写入数据地址或映射地址的数据,需要说明的是,此处的数据地址可以是常用存储区的地址,对于打印机而言,待写入数据可以是打印页数。当一个打印机在开始使用时,往往都是在最初设定的常用存储区进行读写,当该数据地址到了使用寿命,就会启用备用存储区的地址。

备用存储区13是当常用存储区12中某数据地址的寿命到了,就会从备用存储区13里启用一个未使用过的地址作为映射地址来替代该数据地址,但也有可能,该映射地址在这个常用存储区12里,也到了寿命,那就可以在备用存储区13里再找一个未使用过的地址来替代。备用存储区13的大小,需要根据主机的型号、使用次数和使用特点来设计,以保证任何一个数据地址或映射地址寿命到了都有备用的空间做替代。

由于大部分数据的使用次数不多,这些数据不会到达使用寿命,因而接收到的主机发送的待写入地址一般是指数据地址,但本发明不以此为限,也可以是映射地址。

其中,地址映射表10,用于存储待写入地址和映射地址形成的映射关系。在地址映射表10中,一个数据地址可以有一个映射地址,也可以有一个以上的映射地址,每个数据地址的映射地址的数量由打印机性能和mtp的寿命共同来决定,例如:一个打印机最多可以打印1万页,已使用的页数数据可能写1万次,要是mtp寿命是1000次,就需要给这个数据地址准备10个备用的地址,如打印机最多只能打印5000次,则只需要给这个数据地址准备5个备用的地址就够了,有的打印机每打一次,需要改写20个地址的数据,那么就要给这20个地址都要准备备用的地址,如果可以打印1万次,就要准备200个备用的地址。

在形成数据地址和新映射地址的映射关系时,可以将数据地址与旧映射地址之间的映射关系删除,也可以保留数据地址与旧映射地址之间的映射关系,在地址映射表10中形成一个数据地址与多个映射地址之间的映射关系。如若是后者,在备用存储区13中寻找一个未使用的地址作为数据地址的新映射地址时,可以以地址映射表10中记录的所有映射地址为寻找依据,以此判断该映射地址在备用存储区中是否已使用。

实施例九

图9显示了本发明实施例九的控制模块的结构示意图。

如图9所示,控制模块2包括:

查找单元21,用于在地址映射表中查找是否存在与待写入地址对应的映射关系,以及在地址映射表中查找待读取地址是否存在映射关系;

判断单元22,用于当存在映射关系时,判断映射关系中与数据地址形成映射关系的地址的寿命是否已结束,否则,判断数据地址的寿命是否已结束。

实施例十

在本发明实施例九的基础上,如图10所示,控制模块2还包括:

写入单元23,用于将接收到的待写入数据写入数据地址或映射关系中与数据地址形成映射关系的地址,和将新写入地址作为数据地址的映射地址,将映射地址与数据地址形成映射关系写入地址映射表,以及将新写入地址作为数据地址的新映射地址,将数据地址与新映射地址形成映射关系写入地址映射表;

读取单元24,用于读取写入数据地址或映射关系中与数据地址形成映射关系的地址中的待写入数据,和读取数据地址或映射关系中与数据地址形成映射关系的地址中的数据,以及基于待读取地址,从待读取地址或与待读取地址形成映射关系的地址中;

比对单元25,用于将读取到的数据与接收到的待写入数据比对;若两者不相同,则认为数据地址或映射关系中与数据地址形成映射关系的地址的寿命已结束;以及将读取到的数据与接收到的数据比对;若读取到的数据与接收到的数据相同,则不进行写入操作,并发送写入成功的消息;若读取到的数据与接收到的数据不相同,则进行写入操作。

实施例十一

图11显示了本发明实施例十一的一种成像设备的读写系统的结构示意图。

如图11所示,该读写系统还包括:

通信接口模块5,用于接收主机发送的命令,命令包含命令参数;

通信接口模块5是为外部主机提供通信接口以接收主机发送的命令,命令至少包含主机id、命令格式和命令长度等命令参数;

在传统的通信接口模块中,一般是数字可控制io口,有一定的灵活性,但非常有限,且每一个型号的打印机或每一种通信协议的数据都用一个专用区域的存储媒介来存储,而本发明将通信时钟控制和通信协议存储在存储媒介的参数表中。优选地,为了节省存储空间,可以将通信协议的特征信息压缩后集中进行存储在mtp中,待通信协议判断模块找到匹配的通信协议时,再将该通信协议对应的初始数据从参数表当中读出,并解压后写到数据存储区中。

通信协议判断模块4,用于基于预存的各个通信协议的协议参数,获取与命令参数相匹配的特征信息,特征信息包括协议参数;

通信协议判断模块4,主要是判断是哪种通信协议,其会监控通信的电气特性、通信的内容、通信协议特性、通信时间特性、命令参数和命令序列等等一一与参数表里预先存储的特征参数进行匹配,直到匹配成功,并把匹配成功的通信协议通知通信模块。

其中,电气特性包括电压、电压震荡幅度、电流、上拉电阻等信息;通信的内容包括命令头、命令格式和命令标志等;通信协议特性包括信号个数和信号行为,信号行为包括通信的时钟、时钟频率、信号个数和信号特性等;通信时间特性包括命令之间的时间间隔等。

通信模块3,还用于按照匹配成功的协议参数对应的通信协议与主机通信。

通信模块3主要是在收到通信协议判断模块的发送过来的匹配成功的特征参数后,从参数表里把通信需要的参数全部读出使用,并按照这种通信协议和主机进行通信。这些通信协议预先存储在参数表当中,只是得到通信协议判断模块的通知后,选用匹配成功的通信协议,并按参数表中存储的通信协议的参数调整通信协议的细节,如速度,电压幅度等,以完成和外部主机的通信。

如图12所示,存储媒介1还包括:

参数表11,用于存储多种通信协议的特征信息。

特征信息包含通信协议的标志信息,例如命令头、命令格式、命令长度、电压特性和速度特性等,还包含各种通信协议的参数,客户可以在出厂前或出厂后,配置这些参数,来适应不同的主机或适应由于主机环境变更引起的通信参数改变的情况,如速度、上拉电阻值、电压幅度和/或明令时间特性等,以及通信需要的初始数据,这些初始数据会在与外部主机建立通信后被拷贝到常用存储区使用。初始数据包括主机id号、通信密码、总打印页数和已打印页数。

由于每个通信协议都需要有一些预先设定初始数据,如页数等,为了节省mtp的存储空间,本发明把成像设备支持的多个通信协议的协议参数压缩后集中放在参数表11里,当通信判断模块找到匹配的通信协议时,通信判断模块会把该通信协议对应的初始数据从参数表502里读出,解压,写到常用存储区域。初始数据包括:主机id、密码、打印总页数和已打印页数等。

实施例十二

如图13所示,通信接口模块5包括:

i/o接口51,用于完成外部主机与漏极开路52、adc电路53、dac电路54和电压比较器55之间数据的输入/输出;

漏极开路52,用于支持与多个主机进行通信;

adc电路53,用于在接收到主机发送的模拟信号时,将其转换成数字信号,并对数字信号解析得到通信协议;

dac电路54,用于将将发送至主机的数字信号转换为模拟信号;

电压比较器55,用于从模拟信号中提取通信内容,通信内容包括命令。

在传统的通信接口模块中,一般是数字可控制io口,有一定的灵活性,但非常有限,本发明的通信接口模块,在保护了传统的数字可控制io口,如可设置为输出或输入或高阻,上拉电阻和下拉电阻的基础上,还加入了opensource,opendrain的配置,来适应如i2c等的需求,上拉电阻的阻值配置,如usb需要的电阻值准确的要求,本发明还通过加入adc、dac和电压比较器,来适应一些模拟通信协议,例如:苹果和惠普的主机对各自的一些配件有加密通信,都采用了模拟通信,如用电压变化来传,这就需要adc电路和dac电路。adc电路、dac电路和电压比较器均由通信模块控制。

实施例十三

图14显示了本发明实施例十三的一种成像设备的读数据方法的流程图。

如图14所示,该读数据方法包括:

s1401,接收待读取地址;

s1402,在地址映射表中查找待读取地址是否存在映射关系;

s1403,若存在,从与待读取地址形成映射关系的地址中读取数据;

s1404,若不存在,从待读取地址中读取数据。

其中,本发明实施例十三的读数据方法是在本发明前述实施例详述的写数据的方法基础上实现的,在利用本发明前述实施例介绍的写数据的方法将数据写入存储媒介之后,可以利用本发明实施例十三介绍的读数据方法进行读数据。

本发明实施例旨在提供一种成像设备的写、读数据的方法和系统,通过把对打印机的读写集中放在存储媒介中的一个常用存储区域中,打印机要读/写的数据在一个常用存储区域,不会给每个设备一个专用的常用存储区域,通过控制模块根据存储媒介存储空间的使用情况动态分配地址,从而相比以往的固定分配区域在存储媒介的使用上来说,所需的存储容量较小,因此能够节约存储成本,并且还能够满足成像设备断电保持数据的要求。

需要说明的是,本发明读写的系统是与涉及计算机程序流程的数据读写方法对应的装置/系统,且两者的实施过程相同,由于在前已经对读写方法的具体实施方式进行的详细描述,读写系统可同样适用,同样地,对读写系统的具体实施方式进行的详细描述,对读写方法也同样适用。

应当理解的是,本发明的上述具体实施方式仅仅用于示例性说明或解释本发明的原理,而不构成对本发明的限制。因此,在不偏离本发明的精神和范围的情况下所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。此外,本发明所附权利要求旨在涵盖落入所附权利要求范围和边界、或者这种范围和边界的等同形式内的全部变化和修改例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1