CN107081964B - 存储装置、液体容器以及主机装置 - Google Patents

存储装置、液体容器以及主机装置 Download PDF

Info

Publication number
CN107081964B
CN107081964B CN201710040570.7A CN201710040570A CN107081964B CN 107081964 B CN107081964 B CN 107081964B CN 201710040570 A CN201710040570 A CN 201710040570A CN 107081964 B CN107081964 B CN 107081964B
Authority
CN
China
Prior art keywords
data
write
control unit
write data
storage
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.)
Active
Application number
CN201710040570.7A
Other languages
English (en)
Other versions
CN107081964A (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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of CN107081964A publication Critical patent/CN107081964A/zh
Application granted granted Critical
Publication of CN107081964B publication Critical patent/CN107081964B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/17Ink jet characterised by ink handling
    • B41J2/175Ink supply systems ; Circuit parts therefor
    • B41J2/17503Ink cartridges
    • B41J2/17543Cartridge presence detection or type identification
    • B41J2/17546Cartridge presence detection or type identification electronically
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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
    • B41J5/00Devices or arrangements for controlling character selection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1202Dedicated interfaces to print systems specifically adapted to achieve a particular effect
    • G06F3/1211Improving printing performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/12Digital output to print unit, e.g. line printer, chain printer
    • G06F3/1201Dedicated interfaces to print systems
    • G06F3/1223Dedicated interfaces to print systems specifically adapted to use a particular technique
    • G06F3/1229Printer resources management or printer maintenance, e.g. device status, power levels
    • G06F3/1234Errors handling and recovery, e.g. reprinting
    • 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/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32101Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title
    • H04N1/32106Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file
    • H04N1/32122Display, printing, storage or transmission of additional information, e.g. ID code, date and time or title separate from the image data, e.g. in a different computer file in a separate device, e.g. in a memory or on a display separate from image data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0082Image hardcopy reproducer

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)

Abstract

本发明提供一种通过有效的数据构成来适当地控制写入和不写入的存储装置、液体容器以及主机装置。存储装置(100)包含与主机装置(400)进行通信处理的控制部(110)、存储部(120)以及进行存储部(120)的存取控制的存储控制部(130),控制部(110)从主机装置(400)接收写入数据分组,在判定为被写入数据分组中包含的写入数据和附加数据的数据模式与特定模式不一致的情况下,控制部(110)对存储控制部(130)进行地址信息的更新指示和写入数据的写入指示,在判定为一致的情况下,控制部(110)进行地址信息的更新指示,但不进行写入数据的写入指示。

Description

存储装置、液体容器以及主机装置
技术领域
本发明涉及存储装置、液体容器以及主机装置。
背景技术
以往,已知有依次存储从主机装置发送的数据的存储装置。这样的存储装置存在以下情况:为了执行与期望的逻辑地址对应的数据的写入处理,需要针对比该期望的逻辑地址更靠前面存取的逻辑地址的数据进行处理。例如,在从主机装置依次发送第1~第k(k是2以上的整数)写入数据分组的情况下,为了在存储装置中进行第k写入数据分组的写入处理,需要还接收第1~第k-1写入数据分组。这时,当存储装置执行第1~第k-1写入数据分组的写入处理时,写入时间会增加。
对此,公开一种将不需要写入的数据分组设为不写入的存储装置或者主机装置。
在专利文献1中公开了如下内容:在写入数据分组中附加数据奇偶校验位并发送到存储装置的主机装置;以及错误检测操作译码器检查校验位、当有错误时设为不进行写入使能的存储装置。在专利文献1的方法中,关于不需要写入的地址,通过主机装置生成有错误的数据(发送用编码数据)并发送到存储装置,由此存储装置能够省略写入处理。
另外,在专利文献2中公开如下内容:将包含写入使能位WE的数据分组发送到存储装置的主机装置;以及当写入使能位WE为不允许写入时只更新地址、不执行写入的存储装置。在专利文献2的方法中,主机装置将写入使能位WE设定为不允许写入并发送到存储装置,由此存储装置能够省略写入处理。
在先技术文献
专利文献
专利文献1:日本专利文献特开2009-259225号公报;
专利文献2:日本专利文献特开2012-88779号公报。
发明内容
发明所要解决的问题
在专利文献1的方法中,在检测出错误的情况下,存储装置无法辨别确实发生了错误、还是主机装置发送了发送用编码数据。另外,在专利文献2的方法中,主机装置必须在要发送的数据分组中包含写入使能位WE。因此,数据分组的大小变大,或者包含于数据分组中的写入用的数据的大小变小。
根据本发明的几种方式,能够提供通过有效的数据构成来适当地控制写入和不写入的存储装置、液体容器以及主机装置。
用于解决问题的手段
本发明的一个方式涉及一种存储装置,包括:控制部,所述控制部进行与主机装置之间的通信处理;存储部,所述存储部被写入从所述主机装置发送的写入数据分组中包含的写入数据;以及存储控制部,所述存储控制部进行所述存储部的存取控制,所述控制部从所述主机装置接收所述写入数据分组,所述控制部在判定为通过被所述写入数据分组包含的所述写入数据和附加数据构成的数据模式与特定模式不一致的情况下,对所述存储控制部进行地址信息的更新指示,并进行所述写入数据的写入指示,所述控制部在判定为通过所述写入数据和所述附加数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述写入数据的写入指示。
在本发明的一个方式中,存储装置的控制部基于由写入数据和附加数据构成的数据模式与特定模式的一致判定的结果,决定是否进行写入数据的写入指令。由此,无需使用写入判定专用的数据(位),因此能够通过有效的数据构成来实现进行写入处理的跳过的存储装置。
另外,在本发明的一个方式中,所述附加数据可以是所述写入数据的错误检查用的数据。
由此,错误检查用的数据也可以作为是否进行写入的判定(跳过判定)用数据而使用,因此能够通过有效的数据构成来实现进行写入处理的跳过的存储装置。
另外,在本发明的一个方式中,可以是所述控制部在基于所述写入数据和所述附加数据的所述错误检查中判定为错误、且判定为所述数据模式与所述特定模式不一致的情况下,向所述主机装置发送表示数据错误的信息。
由此,通过进行错误检查处理和跳过判定处理两者,能够适当地判定数据错误。
另外,在本发明的一个方式中,所述特定模式可以是在所述错误检查中被判定为错误的数据。
由此,能够抑制将作为写入对象的写入数据错误地判定为不写入的可能性。
另外,在本发明的一个方式中,所述写入数据分组包括奇偶校验数据作为所述附加数据,所述控制部在判定为通过所述写入数据和所述奇偶校验数据构成的所述数据模式与所述特定模式不一致、且所述写入数据与所述奇偶校验数据的关系被肯定的情况下,对所述存储控制部进行所述地址信息的更新指示,并进行所述写入数据的写入指示,所述控制部在判定为通过所述写入数据和所述奇偶校验数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述写入数据的写入指示。
由此,能够使用奇偶校验数据作为附加数据。
另外,在本发明的一个方式中,可以是:所述写入数据分组包括所述写入数据的反转数据作为所述附加数据,所述控制部在判定为通过所述写入数据和所述反转数据构成的所述数据模式与所述特定模式不一致的情况下,对所述存储控制部进行所述地址信息的更新指示,并进行所述写入数据的写入指示,所述控制部在判定为通过所述写入数据和所述反转数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述写入数据的写入指示。
由此,能够使用反转数据作为附加数据。
另外,在本发明的一个方式中,所述特定模式可以是通过第1数据以及第2数据构成的模式,所述第2数据不是所述第1数据的反转数据。
由此,能够抑制将作为写入对象的写入数据错误地判定为不写入的可能性。
另外,在本发明的一个方式中,可以是:所述写入数据分组包括奇偶校验数据以及所述写入数据的反转数据作为所述附加数据,所述控制部在判定为通过所述写入数据、所述奇偶校验数据以及所述反转数据构成的所述数据模式与所述特定模式不一致且所述写入数据与所述奇偶校验数据的关系被肯定的情况下,对所述存储控制部进行所述地址信息的更新指示,并进行所述写入数据的写入指示,所述控制部在判定为通过所述写入数据、所述奇偶校验数据以及所述反转数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述写入数据的写入指示。
由此,能够使用奇偶性数据以及反转数据作为附加数据。
另外,在本发明的一个方式中,可以是:所述控制部接收第1~第m(m是2以上的整数)写入数据分组作为针对指令分组的所述写入数据分组,在所述第1~第m写入数据分组中的第i(i是满足1≤i≤m的整数)写入数据分组包含第i写入数据和第i附加数据,所述控制部在判定为通过所述第i写入数据和所述第i附加数据构成的所述数据模式与所述特定模式不一致的情况下,对所述存储控制部进行所述地址信息的更新指示,并进行所述第i写入数据的写入指示,所述控制部在判定为通过所述第i写入数据和所述第i附加数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述第i写入数据的写入指示。
由此,在从主机装置接收多个写入数据分组的情况下,控制部能够针对各写入数据分组决定是否进行相对于存储控制部的写入指令。
另外,在本发明的一个方式中,所述控制部包括:比较部,所述比较部对所述数据模式和所述特定模式进行比较;以及错误检测部,所述错误检测部基于所述附加数据进行错误检查。
由此,控制部能够进行跳过判定和错误检查处理。
另外,本发明的其他方式涉及包含上述存储装置的液体容器。
另外,本发明的其他方式涉及一种主机装置,包括:通信处理部,所述通信处理部进行与第1存储装置~第n(n是2以上的整数)存储装置之间的通信处理;以及控制部,所述控制部控制所述通信处理部,在向所述第1存储装置~所述第n存储装置中的第j(j是满足1≤j≤n的整数)存储装置发送指令分组以及与所述指令分组对应的多个写入数据分组的情况下,所述多个写入数据分组的各写入数据分组包括写入数据和附加数据,所述通信处理部将不向所述第j存储装置的存储部写入所述写入数据的所述写入数据分组设定成通过所述写入数据和所述附加数据构成的数据模式与特定模式一致,所述通信处理部将向所述第j存储装置的所述存储部写入所述写入数据的所述写入数据分组设定成通过所述写入数据和所述附加数据构成的所述数据模式与所述特定模式不一致。
在本发明的其他方式中,主机装置根据是否向存储装置的存储部中写入写入数据,进行通过写入数据和附加数据构成的数据模式的设定。由此,主机装置能够发送用于通过有效的数据构成来对存储装置进行写入处理的跳过的信息。
附图说明
图1是存储装置以及主机装置的基本的构成例子;
图2是比较部以及错误检测部的构成例子;
图3是现有方法的通信分组的构成例子;
图4是本实施方式的通信分组的构成例子;
图5是与各逻辑地址对应的数据构成例子;
图6是逻辑地址与物理地址的关系例子;
图7是逻辑地址与逻辑页的关系例子;
图8是说明存储控制部中的写入处理的流程图;
图9是说明控制部中的跳过判定以及错误检查处理的流程图;
图10是说明本实施方式的写入处理的时序图;
图11是说明现有方法的写入处理的时序图;
图12是系统的构成例子;
图13是液体容器的详细的构成例子;
图14是电路基板的详细的构成例子;
图15是电路基板的详细的构成例子;
图16是本实施方式的通信分组的其他构成例子;
图17是说明控制部中的跳过判定以及错误检查处理的其他流程图。
具体实施方式
下面,对本实施方式进行说明。此外,下面说明的本实施方式并没有不当地限制权利要求所记载的本发明的内容。另外,在本实施方式中说明的构成不一定全是本发明的必要构成要件。
1.本实施方式的方法
首先,对本实施方式的方法进行说明。在与主机装置之间依次地进行数据通信的存储装置中,通过控制数据的写入/不写入,能够快速进行写入处理。
例如如使用图3而在后面叙述的现有方法那样,在主机装置和存储装置之间收发的通信分组包括ID分组IDPK、指令分组CMPK、以及m个数据分组DPK1~DPKm。存在关于该数据分组仅写入第k(k是满足1<k≤m的整数)数据分组DPKk、不需要写入其他数据分组的情况。例如,在通过主机装置侧的处理来更新了与数据分组DPKk对应的数据的值、但其他数据不进行更新而保持当前的值的情况下,只要进行数据分组DPKk的写入就足够。
但是,当在依次存取的存储装置中写入数据的情况下,主机装置从前头依次发送数据分组。因此,主机装置无法在指令分组CMPK之后继续发送第k数据分组DPKk,将包含第1~第k-1数据分组DPK1~DPKk-1的通信分组发送到存储装置。此时,当存储装置对所有的第1~第k-1数据分组DPK1~DPKk-1的全部进行写入处理时,处理所需的时间变长,效率低。另外,在如由于主机装置的电源异常而在限制的时间中将必要的数据保存到存储装置的情况下,要求快速地写入重要的数据。
在专利文献1、专利文献2中公开将不需要写入的数据分组设为不写入的方法。但是,在专利文献1的方法中,在主机装置中生成并发送不写入用的数据分组(发送用编码数据)使得变成奇偶校验错误,存储装置在检测出奇偶校验错误的情况下省略写入处理。因此,在检测出奇偶校验错误的情况下,无法辨别在存储装置中是确实发生了数据错误还是发送用编码数据,无法基于奇偶校验位进行错误检测。
另外,在专利文献2的方法中,存储装置使用写入使能位WE而判定不写入。后面叙述的图3是说明专利文献2的方法的图,但如果是图3的例子,在发送D0~D7的8位的数据时,主机装置发送D0~D7、写入使能位WE以及奇偶校验位DP的10位的数据分组。因此,数据分组的大小会增加。另外,在通过将D0~D7中的任何位用作写入使能位WE来抑制数据分组的大小的情况下,数据部分降低到7位。
本实施方式涉及的存储装置100包括:如图1所示进行与主机装置400之间的通信处理的控制部110、被写入从主机装置400发送的写入数据分组中包含的写入数据的存储部120、以及进行存储部120的存取控制的存储控制部130。并且,控制部110从主机装置400接收写入数据分组,控制部110在判定为通过写入数据分组中包含的写入数据和附加数据构成的数据模式与特定模式不一致的情况下,对存储控制部130进行地址信息的更新指示,并进行写入数据的写入指示。另一方面,控制部110在判定为通过写入数据和附加数据构成的数据模式与特定模式一致的情况下,对存储控制部130进行地址信息的更新指示,但不会进行写入数据的写入指示。
这里,写入数据分组是包含g位的写入数据和h位的附加数据的数据。g是正整数,例如,g=8。h是正整数,在奇偶校验位的情况下,h=1。如使用图16在后面叙述的变形例那样,附加数据并不限于奇偶校验位。此外,在数据模式与特定模式一致的情况下,该写入数据分组中包含的数据不成为向存储部120的写入对象,但在该情况下,也将写入数据分组中的g位描述为写入数据、将h位描述为附加数据。
另外,数据模式表示被写入数据和附加数据包含的位的值的排列(排序)。只要是从主机装置400发送8位的写入数据、并在写入数据之后发送1位的附加数据的例子,组合9个0或者1的值的信息就变成数据模式。在该例子中,数据模式能够获得29种方式的模式。
另外,特定模式是成为与通过写入数据和附加数据构成的数据模式之间的比较对象的模式。因此,特定模式的形式与由写入数据和附加数据构成的数据模式同样,只要是上述的例子,特定模式就成为组合9个0或者1的值的信息。
根据本实施方式的方法,基于通过写入数据和附加数据构成的数据模式是否与固定的特定模式一致,存储装置100(控制部110)能够判定写入/不写入。
由于使用固定的特定模式,因此能够抑制虽然没有计划不写入但数据模式因错误偶然与特定模式一致的可能性。换句话说,本实施方式的存储装置100能够抑制混淆错误状态和不写入状态的可能性。例如,考虑附加数据是基于奇数的奇偶校验的奇偶校验位、且作为特定模式使用FFh+‘0’(‘111111110’)的情况。在该情况下,因错误而数据模式与特定模式一致的情况局限于写入数据为FFh(‘11111111’)、且因奇偶校验错误而本应为‘1’的奇偶校验位变成‘0’的情况等特定的情况。进一步地,只要是使用图16而在后面叙述的变形例的情况,只要不在多位中发生错误,计划写入的写入数据分组的数据模式不会与特定模式一致,并且能够抑制存储装置100错误地判定错误状态和不写入状态的可能性。
另外,本实施方式的存储装置100能够通过写入数据和附加数据来进行写入还是不写入的判定(跳过判定),因此无需使用如专利文献2的写入使能位WE那样的跳过判定专用的位。因此,不会增加或者减少写入数据分组的大小,能够通过有效的数据构成来判定不写入状态。
此外,附加数据是为了跳过判定以外的某种用途而附加的数据,在写入数据分组中由于包含附加数据而导致的大小的增加不成问题。具体而言,附加数据是写入数据的错误检查用的数据。即,能够将附加数据用于错误检查和跳过判定这两者上,并且能够不浪费地利用数据。如上所述,即使用于跳过判定,附加数据丧失错误检查功能的可能性也低。
下面,对本实施方式涉及的存储装置100和主机装置400的构成例子进行说明,此后,对从主机装置400向存储装置100发送的通信分组的结构例子以及在存储装置100中存储的数据的结构例子(存储器映射的例子)进行说明。进一步地,在说明本实施方式中的数据的写入处理的流程之后,对包含主机装置400、存储装置100的系统(包含印刷系统、印刷装置以及液体容器的系统)的例子进行说明。最后,对数据构成的变形例进行说明。
此外,下面,将特定模式作为‘111111110’来进行说明,关于不同的实施方式,作为变形例在后面叙述。
2.存储装置以及主机装置
图1示出本实施方式的存储装置以及主机装置的基本的构成例子。本实施方式的存储装置100包括控制部110、存储部120、存储控制部130、时钟端子TCK、数据端子TDA、复位端子TRST。另外,本实施方式的主机装置400包括通信处理部410、控制部420、时钟端子HCK、数据端子HDA、复位端子HRST。此外,本实施方式的存储装置以及主机装置并不限于图1的构成,可以是省略其构成要素的一部分、以其他构成要素替换、或者增加其他构成要素等的各种变形实施。
存储装置100(100-1~100-n(n是2以上的整数))经由总线BS而与主机装置400连接。例如图1所示,总线BS包括时钟信号线SCK、数据信号线SDA、复位信号线XRST。经由时钟信号线SCK,主机装置400向多个存储装置100-1~100-n供应时钟。另外,经由数据信号线SDA,在主机装置400与各存储装置100之间进行数据等的收发。另外,经由复位信号线XRST,主机装置400向多个存储装置100-1~100-n输出复位信号。
多个存储装置100-1~100-n分别具有ID信息,主机装置400通过指定该ID信息,能够向多个存储装置100-1~100-n中的一个存储装置发送指令、数据。例如在图1中,第1存储装置100-1的ID信息是ID=1,第2存储装置100-2的ID信息是ID=2。
存储装置100包含时钟端子TCK(广义地说,第一端子)、数据端子TDA(广义地说,第二端子)以及复位端子TRST(广义地说,第三端子)。时钟信号线SCK与时钟端子TCK连接,数据信号线SDA与数据端子TDA连接,复位信号线XRST与复位端子TRST连接。
存储装置100的控制部110进行与经由总线BS连接的主机装置400之间的通信处理。具体而言,如图1所示,基于来自主机装置400的时钟以及复位信号,经由数据信号线SDA接收从主机装置400发送的指令(指令分组)、写入数据(写入数据分组)等,并且经由数据信号线SDA向主机装置400发送从存储部120读出的数据、后面叙述的确认(Acknowledge)等。
存储部120是非易失性存储装置,被写入来自主机装置400的数据。存储部120通过MONOS(Metal-Oxide-Nitride-Oxide-Silicon,金属氧氮氧化硅)型存储器来实现。但是,存储部120例如不是MONOS型,也能够通过EEPROM(Electrically Erasable ProgrammableRead-Only Memory,电可擦写可编程只读存储器)或者铁电体存储器等来实现。存储控制部130进行存储部120的存取控制。
控制部110例如包括ID比较器ID_COMP、I/O控制器I/O_CNTL、操作码译码器OPCDEC、地址计数器ADDR_COUNT。ID比较器ID_COMP对从主机装置400发送的ID信息和自身的ID信息是否一致进行比较。在一致的情况下,向操作码译码器OPCDEC输出使能信号,操作码译码器OPCDEC对从主机装置400发送的指令(操作码)进行解码。另一方面,在从主机装置400发送的ID信息和自身的ID信息不一致的情况下,控制部110使自身处于禁用状态,直至输入下一个激活复位信号。
操作码译码器OPCDEC对从主机装置400发送的指令(操作码)进行解码的结果为,在从主机装置400发送的指令为写入指令的情况下,I/O控制器I/O_CNTL接收来自主机装置400的写入数据。存储控制部130基于来自操作码译码器OPCDEC的写入指示wr将所接收的写入数据作为存储器数据m_data而写入在存储部120。该写入时的地址信息addr基于来自主机装置400的时钟通过地址计数器ADDR_COUNT来生成,写入数据依次地、即按照发送的顺序被写入到存储部120。在写入数据被正常写入到存储部120的情况下,存储控制部130将内部确认(Acknowledge)信号i_ack输出到I/O控制器I/O_CNTL。
另外,控制部110包括对数据模式和特定模式进行比较的比较部COMP、以及基于附加数据而进行错误检查的错误检测部ERR_DET。在图2中示出比较部COMP和错误检测部ERR_DET的构成例子。如图2所示,向比较部COMP输入写入数据分组(写入数据以及附加数据)和特定模式,比较部COMP对这两者进行比较。在错误检测部ERR_DET中被输入写入数据以及附加数据,错误检测部ERR_DET基于附加数据而进行写入数据的错误检查。
在从主机装置400发送的指令是读出指令的情况下,存储控制部130基于来自操作码译码器OPCDEC的读出指示rd从存储部120读取存储器数据m_data。该读取时的地址信息addr也基于来自主机装置400的时钟通过地址计数器ADDR_COUNT来生成,并被依次读出。
在本实施方式的存储装置100中,通过接收的写入数据分组的数据模式和特定模式之间的比较处理,控制部110能够判断是否写入该写入数据分组的数据。即,控制部110在从主机装置400接收指令分组以及与指令分组对应的写入数据分组的情况下,在数据模式与特定模式不一致的情况下,对存储控制部130进行地址信息addr的更新指示,并对存储控制部130进行写入数据分组的数据的写入指示wr。另一方面,在数据模式和特定模式一致的情况下,对存储控制部130进行地址信息addr的更新指示,但不对存储控制部130进行写入数据分组的数据的写入指示wr。由此,存储装置100能够基于数据模式来判断写入的允许或者不允许,对于不允许写入的写入数据分组不进行写入,并进入到下一个写入数据分组的收发处理以及写入处理。其结果为,能够缩短针对存储装置100的数据写入处理时间。此外,关于数据写入处理的细节将在后面叙述。
主机装置400的通信处理部410在向第1存储装置~第n存储装置中的第j(j是满足1≤j≤n的整数)存储装置发送指令分组以及与指令分组对应的多个写入数据分组的情况下,使多个写入数据分组的各写入数据分组中包含写入数据和附加数据。在不被写入到存储部120的写入数据分组中进行设定,使得通过写入数据和附加数据构成的数据模式与特定模式一致(例如,‘111111110’)。由此,通信处理部410能够将该写入数据分组的数据的写入设为不允许。
另外,通信处理部410对将写入数据写入到第j存储装置100-j的存储部120中的写入数据分组进行设定,使得通过写入数据和附加数据构成的数据模式与特定模式不一致。由此,通信处理部410能够允许该写入数据分组的数据的写入。
具体而言,本实施方式中的特定模式是在所述错误检查中被判定为错误的数据。在将特定模式(‘111111110’)作为判定为奇偶校验错误的信息的情况下,只要对写入数据附以正常的奇偶校验位,数据模式就与特定模式不一致。
通过上述,接收了写入数据分组的存储装置100基于数据模式与特定模式之间的比较处理,能够对无需写入的写入数据分组不进行写入,并进入到下一个写入数据分组的收发处理以及写入处理。其结果为,能够缩短针对存储装置100的数据写入处理的时间。
另外,通信处理部410在向第j存储装置100-j发送不写入数据的写入数据分组之后,在从第j存储装置100-j返回确认ACK的情况下,可以发送下一个写入数据分组,其中,确认ACK通知没有通信错误的情况。通过如此,主机装置400能够在确认没有发生通信错误的情况之后,进入到下一个数据分组的发送处理。
3.数据构成的例子
图3、图4是用于说明从主机装置400向存储装置100发送的ID分组、指令分组以及写入数据分组的图。在图3中,作为比较例,示出专利文献2中公开的包含写入使能位WE的数据分组,图4中示出在本实施方式的存储装置100以及主机装置400中使用的写入数据分组。
如图3、图4所示,ID分组IDPK是与存储装置100的ID信息相关的分组,例如由ID0~ID7的8位构成,并对其附加奇偶校验位IP。另外,指令分组CMPK例如由C0~C7的8位构成,并对其附加奇偶校验位CP。另外,写入数据分组DPK包括由D0~D7的8位构成的数据部分(写入数据)和奇偶校验位DP。奇偶校验位IP、CP、DP是为了奇偶校验检查而附加的位,是以1的数量总是为偶数或者奇数中的任一者的方式附加的位。在本说明书中,以1的数量为奇数的奇数奇偶校验为例子进行说明。
如图3所示,在专利文献2的方法中,各数据分组DPK除了写入数据D0~D7之外还包括写入使能位WE,还附加奇偶校验位DP。与此相对,在本实施方式中如图4所示,由于通过由写入数据D0~D7和奇偶校验位DP构成的数据模式来判定写入/不写入,因此不需要写入使能位WE。此外,可以通过图4所示的数据构成来实现专利文献2的方法,但在该情况下,D0~D7中的任一位被用作写入使能位WE,实质上写入数据减小到7位。
各分组与时钟SCK同步,按照ID分组IDPK、指令分组CMPK、数据分组DPK的顺序,从主机装置400发送到存储装置100。在发送多个数据分组的情况下,设置用于在通过主机装置400发送第1数据分组DPK1之后存储装置100向主机装置400返回确认ACK的期间,并在其后从主机装置400向存储装置100发送第2数据分组DPK2。
此外,本实施方式的存储装置100以及主机装置400中的各分组的构成并不限于图4所示的构成,可以是省略其构成要素的一部分、以其他构成要素替代、或者增加其他构成要素等的各种变形实施。例如,可以增减各分组的位数。
图5、图6、图7是说明被存储在存储部120的数据的构成(存储器映射)的图。图5是表示逻辑地址以及与各逻辑地址对应的数据的结构的图,图6是示出逻辑地址与物理地址的对应关系的图,图7是示出逻辑页与逻辑地址的对应关系的图。
如图5所示,例如存储部120具有第1~第m(m是2以上的整数)逻辑地址A1~Am,能够针对各地址存储32位的数据。如A1所示,在1个逻辑地址保存8位的数据,并使用其他24位存储附加的数据。此外,数据的位数并不限于8位,能够进行增减。
这里的附加的数据例如为错误校正码(ECC:Error Correction Code)。另外,附加的数据能够包含写入锁定位WLCK。写入锁定位WLCK是被设置于各地址并用于设定针对该地址的写入禁止(写入锁定)的位。例如在地址A1的写入锁定位WLCK被设定为1的情况下,通过存储控制部130来禁止针对地址A1的写入。通常,在出厂时设定写入锁定位WLCK,此后不能改写写入锁定位WLCK。另外,写入锁定位WLCK可以不是1位,可以由多个位构成。另外,作为附加数据,可以设定ECC、写入锁定位WLCK以外的位。另外,可以设置值必须由‘1’或‘0’固定的位。
存储装置100所接收的第1~第m数据分组DPK1~DPKm按照接收的顺序(依次)通过地址计数器ADDR_COUNT来分配逻辑地址。即,在第1数据分组DPK1被分配第1逻辑地址A1,第2数据分组DPK2被分配第2逻辑地址A2,同样,在第3~第m数据分组DPK3~DPKm分别被分配第3~第m逻辑地址A3~Am。该逻辑地址是与图1的地址信息addr对应的,控制部110对地址计数器ADDR_COUNT进行更新指示,由此每当接收数据分组时地址信息addr被更新(增加)。
如上所述,在本实施方式的存储装置以及主机装置中,在写入数据分组DPK的数据模式和特定模式一致的情况下,进行地址信息addr的更新指示(增加),但不进行写入数据的写入。
具体而言,控制部110接收与指令分组CMPK对应的第1~第m数据分组DPK1~DPKm。第1~第m写入数据分组DPK1~DPKm中的第i(i是满足1≤i≤m的整数)写入数据分组包括第i写入数据和第i附加数据。并且,控制部110在判定为通过第i写入数据和第i附加数据构成的数据模式与特定模式不一致的情况下,对存储控制部130进行地址信息addr的更新指示(例如增加),并进行第i写入数据的写入指示。控制部110在被判定为通过第i写入数据和第i附加数据构成的数据模式与特定模式一致的情况下,对存储控制部130进行地址信息addr的更新指示,但不进行第i写入数据的写入指示。
通过如此,存储装置100能够不进行被设定为不允许写入的DPKi的数据的写入处理,并进入到下一个数据分组DPKi+1的接收处理,在DPKi+1为允许写入的情况下,能够在与下一个逻辑地址Ai+1对应的物理地址写入DPKi+1的写入数据D0~D7。
在图6所示的例子中,由于1个逻辑地址Ai对应于1个物理地址PAi,因此在DPKi为允许写入的情况下,在与逻辑地址Ai对应的物理地址PAi写入DPKi的写入数据D0~D7。在图6中,对存储控制部130(狭义地讲,未图示的物理地址生成部)将1个逻辑地址转换为1个物理地址的例子进行了说明,但并不限于此。存储控制部130可以针对1个逻辑地址分配一个或者多个物理地址。由此,能够将与被给予的逻辑地址对应的数据写入到多个物理地址中的、通过预先决定的规则来选择的1个物理地址。
或者,存储控制部130如图7所示可以以页为单位、针对1个逻辑页P分配多个逻辑地址。在图7的例子中,4个逻辑地址对应于1个逻辑页。
此外,本实施方式的存储部的构成并不限于图5、图6、图7所示的构成,可以是省略其构成要素的一部分、或者以其他构成要素替换、或者增加其他构成要素等的各种变形实施。例如,可以增减存储在1个地址的位数。
4.写入处理
图8是说明本实施方式涉及的存储装置100中的写入处理的流程图。图8的各步骤的处理由存储装置100的存储控制部130来进行。存储装置100是进行以1页为单位的写入的非易失性存储器,图8是说明1页的写入控制的图。此外,这里的1页例如为与4个地址对应的128位的区域。
当开始进行该处理时,首先,存储控制部130对通信错误标志以及跳过标志进行初始化(步骤S101、S102)。通信错误标志是表示是否发生了通信错误的标志,通过步骤S101的初始化来变成表示没有发生通信错误的状态。另外,跳过标志是与各逻辑地址对应地设置的标志,表示是否跳过(是否设为不写入)被分配对应的逻辑地址的写入数据的写入的标志。通过步骤S102的初始化,关于1页的所有地址,设定不跳过写入的状态作为初始状态。
存储控制部130将作为对象的1页的数据复制到临时缓冲器(步骤S103)。
并且,存储控制部130从控制部110获取1个地址的写入数据分组的接收结果(步骤S104)。这时,在控制部110对从主机装置接收的写入数据分组DPK进行跳过判定以及错误检查(通信错误判定)。
图9是说明控制部110中的跳过判定以及通信错误判定的流程图。当开始进行该处理时,控制部110(狭义地讲,比较部COMP)判定由写入数据D0~D7和附加数据(奇偶校验位DP)构成的数据模式与特定模式(FFh+‘0’)是否一致(步骤S201)。在一致的情况下,控制部110判定成“地址跳过”并结束处理。
在数据模式与特定模式不一致的情况下(在步骤S201中是“否”的情况),控制部110(狭义地讲,错误检测部ERR_DET)判定是否为奇偶校验错误(步骤S202)。在检测出奇偶校验错误的情况下,控制部110判定成“通信错误”并结束处理。
在没有检测奇偶校验错误的情况下(在步骤S202中是“否”的情况),控制部110判定成“通常写入”并结束处理。
存储控制部130在步骤S104中接收写入数据D0~D7(data),并从控制部110接收图9所示的处理的判定结果。即,存储控制部130获取是“地址跳过”、“通信错误”、“通常写入”中的哪一个的判定结果。
存储控制部130判定是否为“地址跳过”(步骤S105),在“否”的情况下判定是否为“通信错误”(步骤S106)。在也不是“通信错误”的情况下,即,在“通常写入”的情况下,存储控制部130通过接收的写入数据来更新步骤S103中被复制到临时缓冲器的数据中的、作为对象的地址的数据(步骤S107)。
在为“通信错误”的情况下,存储控制部130将通信错误标志设置成表示发生通信错误的状态(步骤S108)。另一方面,在“地址跳过”的情况下(在步骤S105中“是”的情况),不进行步骤S107、S108的任何处理,进入步骤S109。由此,在“地址跳过”的情况下,控制部110能够不进行临时缓冲器的更新,并进行下一个写入数据分组的接收。关于具体的动作例子,使用图10的时序图在后面叙述。
并且,存储控制部130判定是否结束对所有地址的处理(步骤S109),在没有结束的情况下,返回到步骤S104,继续进行处理。当结束对于所有地址的处理时,判定通信错误标志的状态(步骤S110)。
在设定了通信错误标志(发生通信错误)的情况下,存储控制部130判定为1页的写入异常地结束。在该情况下,控制部110向主机装置通知通信错误。
在没有设定通信错误标志的情况(在步骤S110中“否”的情况)下,存储控制部130参照跳过标志,判定是否对1页的所有地址设定有跳过标志(步骤S111)。在步骤S111中“是”的情况下,即判定为在所有地址中不写入的情况下,无需进行写入本身,因此直接正常地结束1页的写入。在步骤S111中“否”的情况下,存在需要更新的数据,因此擦去对象的1页的数据,并将步骤S107中更新的临时缓冲器的数据写入到存储部120的对应的区域(S112)。在步骤S112的处理之后,存储控制部130也正常地结束1页的写入。
如图8、图9所示,在跳过写入处理的情况下,只要将数据模式和特定模式一致的情况作为条件即可,但在执行写入处理的情况下,不仅是数据模式和特定模式不一致的情况,没有通信错误的情况也变成条件。具体而言,控制部110在判定为通过写入数据和奇偶校验数据构成的数据模式与特定模式不一致、并且写入数据和奇偶校验数据的关系被肯定的情况下,对存储控制部130进行地址信息的更新指示,并进行写入数据的写入指示。另外,控制部110在判定为通过写入数据和奇偶校验数据构成的数据模式与特定模式一致的情况下,对存储控制部130进行地址信息的更新指示,但不进行写入数据的写入指示。
通过如此,如图9所示,可以在控制部110中执行写入处理的跳过判定和通信错误判定两者。
另外,由于特定模式在错误检查中使用被判定为错误的数据构成,因此控制部110即使基于附加数据检测出错误,也无法辨别对应地确实是通信错误还是接收了成为特定模式的写入数据分组。因此,控制部110在基于写入数据分组和附加数据的错误检查中判定为错误、并且判定为数据模式和特定模式不一致的情况下,向主机装置400发送表示数据错误的信息。这与图9中的、在步骤S201中“否”且步骤S202中“是”的情况下判定为“通信错误”的处理流程对应。
由此,能够适当地辨别“地址跳过”和“通信错误”。
图10示出本实施方式的存储装置100、主机装置400的写入处理的时序图。图10示出复位信号XRST、时钟信号SCK以及数据信号SDA的各信号波形,以及存储装置100中的控制部110、存储部120的动作状态以及内部信号wr、i_ack的信号波形。
在图10中,I是空闲期间,IDC是ID识别期间,CMD是指令识别期间,DAT是数据接收期间,IAKW是内部确认等待期间,MWRT是存储器写入期间,AKS是确认返回期间,NW是在接收的数据分组被设定为不允许写入的情况下不进行写入处理而判断有无通信错误的期间。此外,如以上使用图7所述,以1页对应于4个逻辑地址的例子进行说明。另外,如以上使用图8的流程图所述,对使用作为写入单位的1页的数据来判定是否进行写入跳过的例子进行说明。
在图10的例子中,第1~第4数据分组DPK1~DPK4、以及第9~第12数据分组DPK9~DPK12的所有写入数据被设定为FFh(‘11111111’),奇偶校验位DP被设定为‘0’。即,第1~第4数据分组DPK1~DPK4以及第9~第12数据分组DPK9~DPK12被设定为使得数据模式与特定模式一致。另一方面,在第5~第8数据分组DPK5~DPK8以及第13~第16数据分组DPK13~DPK16中,四个数据分组中的至少一个数据分组的数据模式被设定为不与特定模式一致。
首先,主机装置400将复位信号XRST从L电平(低电位电平,广义地说,第2逻辑电平)设定为H电平(高电位电平,广义地说,第1逻辑电平)并解除存储装置的复位。并且,控制部110变成空闲状态。
接着,主机装置400向存储装置100发送ID分组IDPK、指令分组CMPK以及数据分组DPK1~DPK4,此后进入到等待来自存储装置100的确认ACK返回的状态。
存储装置100的ID比较器ID_COMP在ID识别期间IDC中识别所接收到的ID信息与自身的ID信息一致的情况。在连续的指令识别期间CMD,操作码译码器OPCDEC识别所接收的指令是写入指令的情况。在接着的数据接收期间DAT中,I/O控制器I/O_CNTL接收写入数据分组DPK1~DPK4,比较部COMP判断写入数据分组的数据模式是否与特定模式一致。具体而言,对第1~第4数据分组DPK1~DPK4的每一个判断数据模式是否与特定模式一致。
如图10所示,在DPK1~DPK4的所有数据分组中数据模式和特定模式一致的情况下,控制部110不会对存储控制部130进行写入指示。并且,控制部110检查有无通信错误,在判断为没有通信错误的情况下,对主机装置400返回确认ACK。主机装置400在接收通知没有通信错误的情况的确认ACK之后,发送与第2页对应的数据分组(第5~第8数据分组DPK5~DPK8)。
控制部110在第1~第4数据分组DPK1~DPK4(广义地说,与第i页对应的数据分组)被设定为不允许写入状态的情况下,不等待来自存储控制部130的内部确认信号i_ack,进行下一页的数据分组DPK5~DPK8(广义地说,与第i+1页对应的数据分组)的接收处理。
由于第5~第8数据分组DPK5~DPK8被设定为使得至少一个数据分组的数据模式与特定模式不一致,因此控制部110在DPK5~DPK8的接收之后对存储控制部130进行写入指示wr。存储部120基于写入指示wr,在存储器写入期间MWRT写入数据。在该存储器写入期间MWRT,控制部110处于内部确认等待期间IAKW,并等待从存储控制部130输出内部确认信号i_ack。在数据被正常写入的情况下,存储控制部130将内部确认信号i_ack输出到控制部110。控制部110当接收到内部确认信号i_ack时,向主机装置400返回确认ACK。主机装置400在接收确认ACK之后,发送与第3页对应的数据分组(DPK9~DPK12)。
在图10的例子中,由于DPK9~DPK12的所有数据分组被设定为不允许写入状态,因此控制部110在DPK9~DPK12的接收之后检查有无通信错误,在判断为没有通信错误的情况下,对主机装置400返回确认ACK。主机装置400在接受通知没有通信错误的情况的确认ACK之后,发送与第4页对应的数据分组(DPK13~DPK16)。
由于DPK13~DPK16中的至少一个数据分组被设定为允许写入状态,因此控制部110在DPK13~DPK16的接收之后,对存储控制部130进行写入指示wr。存储部120基于写入指示wr在存储器写入期间MWRT写入数据。在数据被正常写入的情况下,存储控制部130向控制部110输出内部确认信号i_ack。控制部110当接收到内部确认信号i_ack时,向主机装置400返回确认ACK。
图11作为比较例示出在不进行写入跳过的情况下的、写入处理的时序图。在图11的比较例中,对于每一个与m个页对应的数据分组(DPK1~DPK4、DPK5~DPK8、…、DPK4m-3~DPK4m)需要存储器写入期间MWRT。数据分组的发送所需的时间例如为约100μs左右,与此相对,存储器写入期间MWRT的长度TM(写入必要时间)约为5ms。因此,在写入m页数据分组DPK1~DPK4m的情况下的写入处理时间至少变成m×TM。
另一方面,根据本实施方式的存储装置100、主机装置400,能够选择写入所需要的数据分组并进行写入。即,能够写入仅限于被设定为使得数据模式和特定模式不一致的写入数据分组(具体而言,包含该写入数据分组的1页的数据),因此能够缩短写入处理时间。
5.系统、液体装置以及电路基板
图12示出本实施方式的系统的基本的构成例。本实施方式的系统例如为喷墨方式的打印机,并包括第1存储装置100-1~第n(n是2以上的整数)存储装置100-n、安装存储装置的n个电路基板200-1~200-n、具备电路基板的n个液体容器300-1~300-n以及主机装置400。此外,本实施方式的系统并不限于图12的构成,可以省略其构成要素的一部分、以其他构成要素替换、或者增加其他构成要素等的各种变形实施。
下面,以主机装置400是喷墨方式的打印机主体、液体容器300是墨盒、电路基板200是被设置在墨盒的电路基板的情况为例进行说明。但是,在本实施方式中,主机装置、液体容器、电路基板可以是其他装置、容器、电路基板。例如,主机装置可以是存储卡的读卡器/写卡器,电路基板可以是被设置在存储卡的电路基板。
第1存储装置100-1~第n存储装置100-n分别包括复位端子TRST、时钟端子TCK、数据端子TDA、第1电源端子VDD以及第2电源端子VSS。这些n个存储装置100-1~100-n分别包括存储部120(例如,非易失性存储器等),在每个存储部120中存储有用于识别n个液体容器(例如墨盒等)300-1~300-n的ID(识别)信息(例如ID=1、ID=2、ID=3等)。针对每个被容纳在液体容器中的液体的颜色等种类,附以不同的ID。另外,在存储部120中通过主机装置400写入液体容器的墨水余量(或者墨水消耗量)等的数据。
主机装置400例如为打印机主体等,包含主机侧复位端子HRST、主机侧时钟端子HCK、主机侧数据端子HDA、第1电源端子VDD以及第2电源端子VSS。
如上所述,根据本实施方式的存储装置100、主机装置400以及系统,能够使用从主机装置400发送到存储装置100的写入数据分组的数据模式,设定写入数据的允许写入状态或者不允许写入状态。
并且,存储装置100基于所接收的写入数据分组的数据模式和特定模式的比较处理,判断是否将该数据写入到存储部120,在不允许写入的情况下能够不写入数据,并进入到下一个数据分组的接收处理以及写入处理。即,对于不需要写入的写入数据分组,能够跳过数据的写入,并进入到下一个写入数据分组的处理。其结果为,能够缩短针对存储装置100的数据写入处理的时间。另外,由于对于无需写入的数据不进行写入处理,因此能够降低由于写入时的错误等破坏已经存储的数据的可能性。
图13示出本实施方式的液体容器(墨盒)300的详细的构成例子。在液体容器300的内部形成用于容纳墨水的未图示的墨室。另外,在液体容器300设置与墨室连通的供墨口340。该供墨口340用于在液体容器300被安装到打印机时向印刷头单元供应墨水。
液体容器300包括电路基板200。在电路基板200设置本实施方式的存储装置100,并进行墨水消耗量等数据的存储以及与主机装置400之间的数据收发。电路基板200例如通过印刷基板实现,被设置在液体容器300的表面上。在电路基板200设置第1电源端子VDD等端子。并且,当液体容器300被安装到打印机时,这些端子与打印机侧的端子接触(电连接),由此进行电源以及数据的处理。
图14、图15示出设置了本实施方式的存储装置100的电路基板200的详细的构成例子。如图14所示,在电路基板200的表面(与打印机连接的面)上设置具有多个端子的端子组。该端子组包含第1电源端子VDD、第2电源端子VSS、复位端子TRST、时钟端子TCK、数据端子TDA。各端子例如通过以矩形形状(大致矩形形状)形成的金属端子来实现。并且,各端子经由设置于电路基板200上的未图示的布线图案层、通孔而与存储装置100连接。
如图15所示,在电路基板200的背面(与打印机连接的面的里侧面)上设置本实施方式的存储装置100。存储装置100例如能够通过具有MONOS型存储器的半导体存储装置来实现。在该存储装置100中保存与墨水或者液体容器300相关的各种数据,例如保存用于识别液体容器300的ID信息、墨水的消耗量等数据。墨水消耗量的数据是表示关于容纳于液体容器300内的墨水的、随着印刷的执行等而消耗的墨水量的累计的数据。该墨水消耗量的数据可以是表示液体容器300内的墨水量的信息,也可以是表示消耗的墨水量的比例的信息。
6.变形例
以上,写入数据分组通过8位写入数据以及1位作为奇偶校验位的附加数据构成,但并不限于此。图16示出通信分组的变形例子。
如图16所示,写入数据分组作为附加数据可以包含写入数据的反转数据。D0~D7是写入数据,/D0~/D7是反转数据。这里的反转数据是反转各位的值的0和1的数据,在写入数据中是‘1’的位在反转数据中变成‘0’,在写入数据中是‘0’的位在反转数据中变成‘1’。例如,如果写入数据为FFh(‘11111111’),则反转数据就变成00h(‘00000000’)。
反转数据是用于写入数据的错误检查的信息。具体而言,控制部110获取写入数据和反转数据,并判定反转数据是否为对写入数据进行位反转后的数据。例如,控制部110(错误检测部ERR_DET)判定写入数据和反转数据的异或(XOR)是否与FFh(‘11111111’)一致。在正常状态下,写入数据和反转数据的异或与FFh一致,因此控制部110在一致的情况下判定为没有通信错误,在不一致的情况下判定为有错误。
在该情况下,由写入数据和附加数据(反转数据)构成的数据模式变成16位,因此特定模式也变成16位。另外,由于计划写入的数据和特定模式一致并不是优选的,因此特定模式是通过错误检查来判定为错误的数据。
具体而言,特定模式是由第1数据以及不是第1数据的反转数据的第2数据构成的模式。例如,只要将FFh+FFh(‘1111111111111111’)设为特定模式即可。
主机装置400设定使得进行写入处理的写入数据分组包含写入数据及其反转数据,设定使得不进行写入处理的写入数据分组为FFh+FFh。
在存储装置100中,对所接收的写入数据分组的数据模式和特定模式(FFh+FFh)进行比较。具体而言,在判定为由写入数据和反转数据构成的数据模式与特定模式不一致的情况下,控制部110对存储控制部130进行地址信息的更新指示,并进行写入数据的写入指示,在判定为由写入数据和反转数据构成的数据模式与特定模式一致的情况下,控制部110对存储控制部130进行地址信息的更新指示,但不进行写入数据的写入指示。
在该情况下,控制部110也能够不使用写入使能位WE,判定写入/不写入。另外,只要不在多位上发生通信错误,计划写入的写入数据分组的数据模式不会与特定模式一致。例如,由于在写入数据为FFh的情况下反转数据变成00h,因此在其由于通信错误而与FFh+FFh一致的情况下变为在8位发生了错误。由于在多位发生通信错误的可能性非常低,因此能够抑制在存储装置100中弄错写入处理的对象的写入数据分组而设为不写入的可能性。
此外,如图16所示,写入数据分组作为附加数据可以包含奇偶校验数据以及写入数据的反转数据。在图16的例子中,写入数据分组包括写入数据D0~D7、写入数据的奇偶校验位DP、反转数据/D0~/D7以及反转数据的奇偶校验位/DP。
在此,奇偶校验位DP是如下设定的位:在写入数据D0~D7和奇偶校验位DP的9位中,变成‘1’的位数为奇数(奇数奇偶校验的情况)。另外,奇偶校验位/DP是如下设定的位:在反转数据/D0~/D7和奇偶校验位/DP的9位中,成为‘1’的位数为奇数。即,/DP不是对DP进行位反转的数据。
在该情况下,由写入数据和附加数据(反转数据以及奇偶校验位)构成的数据模式变成18位,因此特定模式也变成18位。特定模式设为通过第1数据、不是第1数据的反转数据的第2数据、以及通过错误检查来判定为奇偶校验错误的位构成的模式。例如,只要将FFh+‘0’+FFh+‘0’(‘111111110111111110’)设为特定模式即可。
在存储装置100中对接收的写入数据分组的数据模式和特定模式(FFh+‘0’+FFh+‘0’)进行比较。具体而言,在判定为通过写入数据、奇偶校验数据以及反转数据构成的数据模式与特定模式不一致、且写入数据和奇偶校验数据的关系被肯定的情况下,控制部110对存储控制部130进行地址信息的更新指示,并进行写入数据的写入指示。另外,在判定为通过写入数据、奇偶校验数据以及反转数据构成的数据模式与特定模式一致的情况下,控制部110对存储控制部130进行地址信息的更新指示,但不进行写入数据的写入指令。
如此,控制部110由于将反转数据和奇偶校验位两者用于错误检查,因此能够精确地检测通信错误。另外,由于能够抑制因通信错误而偶然发生的写入数据分组的数据模式与特定模式一致的可能性,因此能够抑制将作为写入对象的写入数据分组错误地判定为不写入的可能性。
图17示出使用图16的数据的情况下的、说明控制部110中的错误检查和跳过判定的流程图。当开始进行该处理时,控制部110(比较部COMP)判定数据模式和特定模式是否一致(步骤S301)。在一致的情况下,控制部110判定为“地址跳过”。
在不一致的情况下,控制部110(错误检测部ERR_DET)进行使用了写入数据D0~D7和奇偶校验位DP的奇偶校验检查,并判定是否有错误(步骤S302)。在检测出错误的情况下,控制部110判定为“通信错误”。
在步骤S302中没有奇偶校验错误的情况下,进行使用了反转数据/D0~/D7和奇偶校验位/DP的奇偶校验检查,并判定是否有错误(步骤S303)。在检测出错误的情况下,控制部110判定成“通信错误”。
在步骤S303中没有奇偶校验错误的情况下,控制部110判定反转数据是否为写入数据的位反转(步骤S304)。例如,如上所述,只要进行写入数据与反转数据的异或(XOR)以及与FFh之间的比较处理即可。在反转数据不是写入数据的位反转的情况下,控制部110判定为“通信错误”。在反转数据是写入数据的位反转的情况(在步骤S304中“是”的情况)下,控制部110判定为是“通常写入”。
此外,在该情况下,只要将图9所示的处理替换为图17所示的处理即可,在存储控制部130中进行的处理的流程与图8相同。
另外,以上,将特定模式中的与写入数据对应的位(第1数据)的值设为FFh,但并不限于此,能够使用00h~FFh的任意值作为第1数据。在该情况下,只要根据与写入数据对应的位的值决定特定模式中的与附加数据对应的位(第2数据)的值即可。
在附加数据为奇数校验的奇偶校验位的情况下,如果第1数据为00h,则第2数据只要是被判定为奇偶校验错误的位即可,即只要设为‘0’即可,特定模式变成00h+‘0’。同样,如果第1数据为01h(‘00000001’),则将第2数据设为‘1’,特定模式变成01h+‘1’(‘000000011’)。除此之外,不管第1数据是什么值,都能够设定对应的特定模式。
另外,在附加数据是写入数据的反转数据的情况下,如果第1数据为00h,则第2数据只要为不是位反转的数据即可,例如设为00h即可,特定模式变成00h+00h。同样,如果第1数据为01h,则将第2数据设为01h,特定模式变成01h+01h。在该情况下,也不管第1数据是什么值,都能够设定对应的特定模式。另外,附加数据为写入数据的反转数据和奇偶校验位的情况也是同样。
另外,特定模式并不限于1个固定值,能够使用多个固定的特定模式。在此情况下,控制部110可以同时使用多个特定模式。具体而言,控制部110在数据模式与多个特定模式中的任何一个一致的情况下跳过写入数据分组的写入处理。但是,通过增加同时使用的特定模式的数量,弄错进行写入处理的写入数据分组而设为不写入的可能性增加。因此,在控制部110中,可以预先准备多个特定模式并选择其中的少数(狭义地讲,1个)来使用。
此外,虽然与写入处理的跳过没有直接的关系,但如图16所示,关于通信分组中包含的ID分组IDPK以及指令分组CMPK,也可以设为包含反转数据的构成。如此,在存储装置100的控制部110中,也能精确地检测与ID分组IDPK以及指令分组CMPK相关的通信错误。
此外,如上所述,对本实施方式以及变形例进行详细的说明,但本领域技术人员应该理解的是,在没有实质性超出本发明的新事项以及效果的情况下,可以进行很多变形。因此,这样的变形例也全部包含于本发明的范围内。例如,关于在说明书或者附图中至少一次与更广义或者等同含义的不同术语一同记载的术语,可以在说明书或者附图中的任何位置替换成该其他不同的术语。另外,存储装置、主机装置的构成、动作也不限于本实施方式中说明的,可以进行各种变形实施。
符号说明
ADDR_COUNT…地址计数器、BS…总线、CMPK...指令分组、COMP…比较部、DPK…数据分组、ERR_DET…错误检测部、HCK…时钟端子、HAD…数据端子、HRST...复位端子、I/O_CNTL…I/O控制器、ID_COMP…ID比较器、IDPK...ID分组、OPCDEC…操作码译码器、SCK...时钟信号线、SDA...数据信号线、TCK...时钟端子、TDA...数据端子、TRST…复位端子、XRST…复位信号线、100…存储装置、110…控制部、120…存储部、130…存储控制部、200…电路基板、300…液体容器、340…供墨口、400…主机装置、410…通信处理部、420…控制部。

Claims (10)

1.一种存储装置,其特征在于,包括:
控制部,所述控制部进行与主机装置之间的通信处理;
存储部,所述存储部被写入从所述主机装置发送的写入数据分组中包含的写入数据;以及
存储控制部,所述存储控制部进行所述存储部的存取控制,
所述控制部从所述主机装置接收所述写入数据分组,
所述控制部在判定为通过被所述写入数据分组包含的所述写入数据和附加数据构成的数据模式与特定模式不一致的情况下,对所述存储控制部进行地址信息的更新指示,并进行所述写入数据的写入指示,
所述控制部在判定为通过所述写入数据和所述附加数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述写入数据的写入指示,
所述附加数据是所述写入数据的错误检查用的数据,
所述特定模式是在所述错误检查中被判定为错误的数据。
2.根据权利要求1所述的存储装置,其特征在于,
所述控制部在基于所述写入数据和所述附加数据的所述错误检查中判定为错误、且判定为所述数据模式与所述特定模式不一致的情况下,向所述主机装置发送表示数据错误的信息。
3.根据权利要求1或2所述的存储装置,其特征在于,
所述写入数据分组包括奇偶校验数据作为所述附加数据,
所述控制部在判定为通过所述写入数据和所述奇偶校验数据构成的所述数据模式与所述特定模式不一致、且所述写入数据与所述奇偶校验数据的关系被肯定的情况下,对所述存储控制部进行所述地址信息的更新指示,并进行所述写入数据的写入指示,
所述控制部在判定为通过所述写入数据和所述奇偶校验数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述写入数据的写入指示。
4.根据权利要求1或2所述的存储装置,其特征在于,
所述写入数据分组包括所述写入数据的反转数据作为所述附加数据,
所述控制部在判定为通过所述写入数据和所述反转数据构成的所述数据模式与所述特定模式不一致的情况下,对所述存储控制部进行所述地址信息的更新指示,并进行所述写入数据的写入指示,
所述控制部在判定为通过所述写入数据和所述反转数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述写入数据的写入指示。
5.根据权利要求4所述的存储装置,其特征在于,
所述特定模式是通过第1数据以及第2数据构成的模式,所述第2数据不是所述第1数据的反转数据。
6.根据权利要求1或2所述的存储装置,其特征在于,
所述写入数据分组包括奇偶校验数据以及所述写入数据的反转数据作为所述附加数据,
所述控制部在判定为通过所述写入数据、所述奇偶校验数据以及所述反转数据构成的所述数据模式与所述特定模式不一致且所述写入数据与所述奇偶校验数据的关系被肯定的情况下,对所述存储控制部进行所述地址信息的更新指示,并进行所述写入数据的写入指示,
所述控制部在判定为通过所述写入数据、所述奇偶校验数据以及所述反转数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述写入数据的写入指示。
7.根据权利要求1或2所述的存储装置,其特征在于,
所述控制部接收第1~第m写入数据分组作为针对指令分组的所述写入数据分组,m是2以上的整数,
在所述第1~第m写入数据分组中的第i写入数据分组包含第i写入数据和第i附加数据,i是满足1≤i≤m的整数,
所述控制部在判定为通过所述第i写入数据和所述第i附加数据构成的所述数据模式与所述特定模式不一致的情况下,对所述存储控制部进行所述地址信息的更新指示,并进行所述第i写入数据的写入指示,
所述控制部在判定为通过所述第i写入数据和所述第i附加数据构成的所述数据模式与所述特定模式一致的情况下,对所述存储控制部进行所述地址信息的更新指示,但不进行所述第i写入数据的写入指示。
8.根据权利要求1或2所述的存储装置,其特征在于,
所述控制部包括:
比较部,所述比较部对所述数据模式和所述特定模式进行比较;以及
错误检测部,所述错误检测部基于所述附加数据进行错误检查。
9.一种液体容器,其特征在于,包括权利要求1至8中任一项所述的存储装置。
10.一种主机装置,其特征在于,包括:
通信处理部,所述通信处理部进行与第1存储装置~第n存储装置之间的通信处理,n是2以上的整数;以及
控制部,所述控制部控制所述通信处理部,
在向所述第1存储装置~所述第n存储装置中的第j存储装置发送指令分组以及与所述指令分组对应的多个写入数据分组的情况下,j是满足1≤j≤n的整数,
所述多个写入数据分组的各写入数据分组包括写入数据和附加数据,
所述通信处理部将不向所述第j存储装置的存储部写入所述写入数据的所述写入数据分组设定成通过所述写入数据和所述附加数据构成的数据模式与特定模式一致,
所述通信处理部将向所述第j存储装置的所述存储部写入所述写入数据的所述写入数据分组设定成通过所述写入数据和所述附加数据构成的所述数据模式与所述特定模式不一致,
所述附加数据是所述写入数据的错误检查用的数据,
所述特定模式是在所述错误检查中被判定为错误的数据。
CN201710040570.7A 2016-02-16 2017-01-19 存储装置、液体容器以及主机装置 Active CN107081964B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-026519 2016-02-16
JP2016026519A JP6679971B2 (ja) 2016-02-16 2016-02-16 記憶装置、液体容器及びホスト装置

Publications (2)

Publication Number Publication Date
CN107081964A CN107081964A (zh) 2017-08-22
CN107081964B true CN107081964B (zh) 2020-08-07

Family

ID=59560297

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710040570.7A Active CN107081964B (zh) 2016-02-16 2017-01-19 存储装置、液体容器以及主机装置

Country Status (3)

Country Link
US (1) US10055141B2 (zh)
JP (1) JP6679971B2 (zh)
CN (1) CN107081964B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11436080B2 (en) * 2017-11-21 2022-09-06 Sony Semiconductor Solutions Corporation Memory controller, memory, memory system, information processing system, and method of control thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1483581A (zh) * 2002-08-01 2004-03-24 ������������ʽ���� 记录装置的控制方法
JP2005190324A (ja) * 2003-12-26 2005-07-14 Seiko Epson Corp 不意の書き込みを抑制する記憶装置
JP2009259225A (ja) * 2008-03-18 2009-11-05 Seiko Epson Corp 液体収容体
JP2012088779A (ja) * 2010-10-15 2012-05-10 Seiko Epson Corp 記憶装置、ホスト装置、回路基板、液体容器及びシステム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5916196A (ja) * 1982-06-23 1984-01-27 Technical Design Rabu Kk Prom短時間大量書込装置
US20100174850A1 (en) * 2009-01-08 2010-07-08 Chin-Huo Chu Data moving method and system utilizing the same
JP5445072B2 (ja) * 2009-11-27 2014-03-19 セイコーエプソン株式会社 複数の記憶装置を備えるシステム及びそのためのデータ転送方法
US20120173795A1 (en) * 2010-05-25 2012-07-05 Ocz Technology Group, Inc. Solid state drive with low write amplification
US8738848B2 (en) * 2010-12-28 2014-05-27 OCZ Storage Solutions Inc. Methods, storage devices, and systems for promoting the endurance of non-volatile solid-state memory components
CN105579980A (zh) * 2013-09-27 2016-05-11 仁荷大学校产学协力团 基于ssd的raid系统中的校验数据的去重
EP2871625B1 (en) * 2013-11-08 2019-03-27 EchoStar Technologies L.L.C. A method and system for configuring a remote control device
US9792069B2 (en) * 2014-09-29 2017-10-17 Western Digital Technologies, Inc. Offline deduplication for solid-state storage devices

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1483581A (zh) * 2002-08-01 2004-03-24 ������������ʽ���� 记录装置的控制方法
JP2005190324A (ja) * 2003-12-26 2005-07-14 Seiko Epson Corp 不意の書き込みを抑制する記憶装置
JP2009259225A (ja) * 2008-03-18 2009-11-05 Seiko Epson Corp 液体収容体
JP2012088779A (ja) * 2010-10-15 2012-05-10 Seiko Epson Corp 記憶装置、ホスト装置、回路基板、液体容器及びシステム

Also Published As

Publication number Publication date
JP6679971B2 (ja) 2020-04-15
JP2017146687A (ja) 2017-08-24
US20170235523A1 (en) 2017-08-17
CN107081964A (zh) 2017-08-22
US10055141B2 (en) 2018-08-21

Similar Documents

Publication Publication Date Title
JP5621496B2 (ja) 記憶装置、回路基板、液体容器及びシステム
JP5141606B2 (ja) 印刷装置
US7903474B2 (en) Redundant purge for flash storage device
WO2006059772A2 (en) Memory system, memory system controller, and a data processing method in a host apparatus
US8959294B2 (en) Storage device, host device, circuit board, liquid container, and system
US9266342B2 (en) Storage device, host apparatus, circuit substrate, liquid container, and system
US9490022B2 (en) Data storage device and data maintenance method
CN107081964B (zh) 存储装置、液体容器以及主机装置
JP5678516B2 (ja) 記憶装置、回路基板、液体容器及びシステム
US8745274B2 (en) Storage device, host device, circuit board, liquid receptacle, and system
JP2006171930A (ja) 記憶装置および記憶装置を備える印刷記録材容器
US8625386B2 (en) Non-volatile memory device, circuit board, printing material container and printer
US20070088905A1 (en) System and method for purging a flash storage device
US20070101049A1 (en) Redundant purge for flash storage device
US8924671B2 (en) Semiconductor storage device and control method thereof
US20070101048A1 (en) Verified purge for flash storage device
JP2017146686A (ja) 記憶装置及び液体容器

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant