JP2012033090A - Memory device and ink information transfer device - Google Patents

Memory device and ink information transfer device Download PDF

Info

Publication number
JP2012033090A
JP2012033090A JP2010173594A JP2010173594A JP2012033090A JP 2012033090 A JP2012033090 A JP 2012033090A JP 2010173594 A JP2010173594 A JP 2010173594A JP 2010173594 A JP2010173594 A JP 2010173594A JP 2012033090 A JP2012033090 A JP 2012033090A
Authority
JP
Japan
Prior art keywords
data
parity
memory
ink
ink information
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.)
Pending
Application number
JP2010173594A
Other languages
Japanese (ja)
Inventor
Satoru Uematsu
悟 植松
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
Priority to JP2010173594A priority Critical patent/JP2012033090A/en
Publication of JP2012033090A publication Critical patent/JP2012033090A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To shorten a recovery period with respect to data corruption due to static electricity or the like, which is generated during a data retention period or a data read period of a buffer memory.SOLUTION: A memory device includes a buffer memory 210 for storing data sent from an upper device, a parity generating circuit 228 for generating first parity data and second parity data that is related to the first parity data according to a predetermined rule based on a written data when the data is written on the buffer memory 210, a parity comparison part 234 for comparing the first parity data with the second parity data during a retention period in which the data written on the buffer memory 210 is retained, and an output part 216 for outputting a data retransmission request to the upper device when the relation by the predetermined rule is invalid as a result of the comparison by the parity comparison part 234.

Description

本発明は、メモリー装置およびインク情報転送装置等に関する。   The present invention relates to a memory device, an ink information transfer device, and the like.

特許文献1には、着脱自在の記録ヘッドに、記録特性データと、その記録ヘッドの正当性あるいは動作の正常/異常を確認するためのチェック用のデータとを記憶させた画像形成装置が示されている。この特許文献1に記載される技術では、記録ヘッドが装着されると、本体装置側が、記録ヘッドからチェック用のデータを読み出し、記録ヘッドが正当なものであるか否か、あるいは正常に動作しているか否かを判断する。   Patent Document 1 discloses an image forming apparatus in which recording characteristic data and check data for confirming the correctness or normal / abnormal operation of the recording head are stored in a detachable recording head. ing. In the technique described in Patent Document 1, when the recording head is mounted, the main body side reads the check data from the recording head and determines whether the recording head is valid or operates normally. Judge whether or not.

特開平6−64157号公報JP-A-6-64157

特許文献1に示される画像形成装置では、本体装置が、記録ヘッドに記録特性データを書き込む際に生じるエラーのチェックについては、何ら考慮されていない。例えば、本体装置の制御部と記録ヘッドとの距離が離れているような場合には、記録特性データは、本体装置から、バッファメモリーを経由して記録ヘッドに転送されるのが通常である。ここで、記録特性データが、バッファメモリーに一時的に保持されている保持期間において、静電気や過大なノイズ等によってデータの破壊が生じた場合を想定する。この場合、バッファメモリー自体はデータ破壊を検出できないため、バッファメモリーからリードされたデータは、記録ヘッドに転送され、そして、記録ヘッドにおけるデータ誤り検出等によって、初めてデータのエラーが検出されることになる。   In the image forming apparatus disclosed in Patent Document 1, no consideration is given to checking for errors that occur when the main body apparatus writes recording characteristic data to the recording head. For example, when the distance between the control unit of the main unit and the recording head is large, the recording characteristic data is usually transferred from the main unit to the recording head via a buffer memory. Here, it is assumed that data is destroyed due to static electricity, excessive noise, or the like during the holding period in which the recording characteristic data is temporarily held in the buffer memory. In this case, since the buffer memory itself cannot detect the data destruction, the data read from the buffer memory is transferred to the recording head, and the data error is detected for the first time by the data error detection in the recording head. Become.

但し、エラーが初めて検出された時点では、そのデータエラーが、受信時に生じたのか、あるいは、バッファメモリーから出力されたデータ自体が破壊されていたのかは不明である。よって、例えば、記録ヘッドは、バッファメモリーに対して、データ再送要求を、例えば許容範囲の回数だけ繰り返し送出することになる。そして、データの再送の繰り返しによっても問題が解決しない場合に、バッファメモリーに蓄積されていたデータ自体が破壊されていたことが判明し、この時点で初めて、最上流の装置である、本体装置からのバッファメモリーへの、同一データの再書き込みがなされる。   However, when an error is detected for the first time, it is unclear whether the data error occurred at the time of reception or whether the data output from the buffer memory itself was destroyed. Thus, for example, the recording head repeatedly sends a data retransmission request to the buffer memory, for example, an allowable number of times. If the problem cannot be solved even by repeating the data retransmission, it was found that the data itself stored in the buffer memory was destroyed. The same data is rewritten to the buffer memory.

このように、バッファメモリーにデータが保持されている状態で、静電気等によるデータ破壊が生じた場合において、本体装置からバッファメモリーへの同一データの再書き込みがなされるまでには、かなり長い時間を要する。つまり、データエラーのリカバリー(エラーの回復)に時間がかかり、そのリカバリー期間においては、例えば、画像形成装置における他の処理が停止される場合もあり得る。また、バッファメモリーからデータをリードしているときに、静電気等によるデータ破壊が生じた場合においても、同様の課題が生じる。   In this way, if data is destroyed due to static electricity or the like while data is held in the buffer memory, it takes a considerable amount of time before the same data is rewritten from the main unit to the buffer memory. Cost. That is, it takes time to recover the data error (error recovery), and during the recovery period, for example, other processing in the image forming apparatus may be stopped. A similar problem occurs when data is destroyed due to static electricity or the like when data is read from the buffer memory.

本発明の少なくとも一つの態様によれば、バッファメモリーのデータ保持期間またはデータリード期間に発生する、静電気等に基づくデータ破壊に対するリカバリー期間を短縮することができる。   According to at least one aspect of the present invention, it is possible to shorten a recovery period for data destruction caused by static electricity or the like that occurs during a data holding period or a data read period of a buffer memory.

(1)本発明のメモリー装置の一態様は、上位装置から送られてきたデータを蓄積するバッファメモリーと、前記バッファメモリーに前記データがライトされるとき、ライトされたデータに基づいて、第1パリティデータと、前記第1パリティデータと所定の規則で関係付けられた第2パリティデータと、を生成するパリティ生成回路と、前記バッファメモリーに前記ライトされたデータが保持されている保持期間において、前記第1パリティデータと前記第2パリティデータとを比較するパリティ比較部と、前記パリティ比較部による比較の結果、前記所定の規則による関係が不成立であった場合に、前記上位装置に対して、データ再送要求を出力する出力部と、を含む。   (1) According to one aspect of the memory device of the present invention, a buffer memory for storing data sent from a host device, and when the data is written to the buffer memory, the first is based on the written data. A parity generation circuit that generates parity data and second parity data related to the first parity data according to a predetermined rule; and a holding period in which the written data is held in the buffer memory. As a result of the comparison by the parity comparison unit that compares the first parity data and the second parity data and the comparison by the parity comparison unit, when the relationship according to the predetermined rule is not established, An output unit for outputting a data retransmission request.

本態様では、メモリー装置自体が、バッファメモリーへのデータライト時に第1パリティデータおよび第2パリティデータを生成する機能をもち、かつ、データ保持期間において、生成した第1パリティと第2パリティを比較し、そして、両パリティデータ間に、生成当初の所定の規則による関係が成立しない場合には、上位装置に対して、データ再送要求を出力するという構成が採用されている。本態様では、データ保持期間におけるデータ破壊の発生を、メモリー装置自体が検出することができる。よって、従来に比べて早期に、データ破壊に対する対策を採ることができ、したがって、データ破壊に対するリカバリーに要する時間を短縮することができる。   In this aspect, the memory device itself has a function of generating the first parity data and the second parity data when writing data to the buffer memory, and compares the generated first parity with the second parity during the data holding period. In addition, when a relationship according to a predetermined rule at the beginning of generation is not established between both parity data, a configuration is adopted in which a data retransmission request is output to a higher-level device. In this aspect, the memory device itself can detect the occurrence of data corruption during the data holding period. Therefore, it is possible to take measures against data destruction earlier than in the prior art, and therefore it is possible to reduce the time required for recovery against data destruction.

例えば、パリティ生成回路は、バッファメモリーへの各パリティデータの値は一致しないという規則の下で、各1ビットの第1パリティデータおよび第2パリティデータを生成する。データ保持期間において、静電気や過大なノイズ等がメモリー装置に入力された場合に、第1パリティデータおよび第2パリティデータのいずれかの値が反転したとすると、第1パリティデータおよび第2パリティデータの各値が一致する状態となる。この場合には、バッファメモリーに保持されているデータにもデータ化けが生じた可能性が高いと推定することができる。   For example, the parity generation circuit generates 1-bit first parity data and second parity data for each bit under the rule that the values of the parity data to the buffer memory do not match. If static electricity, excessive noise, or the like is input to the memory device during the data holding period and the value of either the first parity data or the second parity data is inverted, the first parity data and the second parity data Each value of is in a matching state. In this case, it can be estimated that there is a high possibility that the data held in the buffer memory is garbled.

パリティ比較部によって、両パリティデータの値の一致が検出されると、出力部から、上位装置に対してデータ再送要求(同一データの再送を要求するリクエスト信号)が出力される。したがって、バッファメモリーにおける破壊されたデータを、迅速に回復させることができる。   When the parity comparison unit detects a match between the values of both parity data, the output unit outputs a data retransmission request (request signal requesting retransmission of the same data) to the higher-level device. Therefore, the corrupted data in the buffer memory can be quickly recovered.

(2)本発明のメモリー装置の他の態様では、前記バッファメモリーは、メモリーセルアレイを有し、前記メモリーセルアレイは、前記上位装置から送られてきたデータを一時的に蓄積するための、少なくともm行n列(mおよびnの各々は2以上の整数)のデータ記憶領域と、前記第1パリティデータを記憶する第1パリティメモリー領域と、前記第2パリティデータを記憶する第2パリティメモリー領域と、を有し、前記パリティ生成回路は、前記データ記憶領域にライトされたデータのうちの、同一列のデータの各々に基づく演算によって、縦パリティデータである前記第1パリティデータおよび前記第2パリティデータの各々を生成する。   (2) In another aspect of the memory device of the present invention, the buffer memory has a memory cell array, and the memory cell array stores at least m for temporarily storing data sent from the host device. A data storage area of row n columns (each of m and n is an integer of 2 or more), a first parity memory area for storing the first parity data, and a second parity memory area for storing the second parity data The parity generation circuit has the first parity data and the second parity that are vertical parity data by an operation based on each of the data in the same column of the data written to the data storage area. Generate each of the data.

本態様では、バッファメモリーにおけるメモリーセルアレイは、データ記憶領域の他に、第1パリティデータを記憶する第1パリティメモリー領域および第2パリティデータを記憶する第2パリティメモリー領域を有している。例えば、バッファメモリーとしてSRAMを使用する場合、データ記憶領域の近傍において、ワード線やメモリセルを追加して、第1パリティメモリー領域や第2パリティメモリー領域を確保することに特に問題はなく、実現が容易である。   In this aspect, the memory cell array in the buffer memory has a first parity memory area for storing the first parity data and a second parity memory area for storing the second parity data in addition to the data storage area. For example, when SRAM is used as the buffer memory, there is no particular problem in securing the first parity memory area and the second parity memory area by adding word lines and memory cells in the vicinity of the data storage area. Is easy.

そして、例えば、データ記憶領域がm行n列(mおよびnの各々は2以上の整数)の記憶容量を有する場合に、データ記憶領域にライトされたデータ(あるいはデータ記憶領域に保持されているデータ)のうちの、同一列のデータの各々に基づく演算(縦パリティ演算)を実行する。例えば、同一列のデータの2進法による加算を実行し、その加算結果である縦パリティビットを、例えば第1パリティデータとすることができる。また、例えば、第1パリティデータの値をインバーター等で反転させて第2パリティデータとすることができる。第1パリティデータおよび第2パリティデータの各々は、第1パリティメモリー領域や第2パリティメモリー領域の各々に記憶される。   For example, when the data storage area has a storage capacity of m rows and n columns (each of m and n is an integer of 2 or more), the data written in the data storage area (or held in the data storage area) Data), an operation based on each of the data in the same column (vertical parity operation) is executed. For example, the addition of the data in the same column by the binary method can be executed, and the vertical parity bit as a result of the addition can be set as, for example, the first parity data. Further, for example, the value of the first parity data can be inverted by an inverter or the like to obtain the second parity data. Each of the first parity data and the second parity data is stored in each of the first parity memory area and the second parity memory area.

本態様では、データ記憶領域にライトされたデータの各データ列毎に、例えば1ビットの縦パリティデータを無理なく、容易に生成することができる。また、各データ列毎に縦パリティが生成されるため、縦パリティデータが、ライトデータのビット数だけ生成されることになり、縦パリティデータの総数が増えることから、データ破壊を検出し易くなる。また、データ破壊が生じる可能性に関して、2次元のメモリー領域内でバラツキが生じる場合でも、各データ列毎に縦パリティデータが生成されている(つまり、ライトデータの行方向に沿って、広がりをもって縦パリティデータが配置されている)ことから、データ破壊が生じ易い領域におけるデータ化けを検出できる可能性が高まる。   In this aspect, for example, 1-bit vertical parity data can be easily generated without difficulty for each data string of data written to the data storage area. Also, since vertical parity is generated for each data string, vertical parity data is generated by the number of bits of write data, and the total number of vertical parity data increases, making it easy to detect data corruption. . In addition, regarding the possibility of data destruction, even when there is a variation in the two-dimensional memory area, vertical parity data is generated for each data string (that is, with a spread along the row direction of the write data). Since vertical parity data is arranged), the possibility of detecting data corruption in an area where data destruction is likely to occur increases.

(3)本発明のメモリー装置の他の態様では、前記上位装置から送られてきたデータには、nビットのデータ毎にsビット(sは1以上の整数)の横パリティデータが付加されており、前記データ記憶領域は、少なくともm行(n+s)列の記憶容量を有し、また、前記nビットのデータ毎に付加されている前記sビットの横パリティデータの各々に基づくパリティチェックを実行する横パリティチェック部を、さらに有する。   (3) In another aspect of the memory device of the present invention, s bits (s is an integer of 1 or more) of lateral parity data is added to the data sent from the host device for every n bits of data. The data storage area has a storage capacity of at least m rows (n + s) columns, and performs a parity check based on each of the s-bit horizontal parity data added to each n-bit data. And a horizontal parity check unit.

本態様では、上位装置から送られてくるデータにおいて、nビットのデータ毎にsビットの横パリティデータが付加されている。このデータ構造に対応できるように、データ記憶領域は、少なくとも、m行(n+s)列の記憶容量を有する。また、本態様では、横パリティチェック部が設けられている。横パリティチェック部は、各行毎に付加されているsビットの横パリティデータの各々に基づくパリティチェックを、例えば、データの受信時、あるいはバッファメモリーへのデータのライト時に実行する。   In this aspect, s-bit horizontal parity data is added to each n-bit data in the data sent from the host device. In order to support this data structure, the data storage area has a storage capacity of at least m rows (n + s) columns. In this aspect, a horizontal parity check unit is provided. The horizontal parity check unit executes a parity check based on each of the s-bit horizontal parity data added to each row, for example, when receiving data or writing data to the buffer memory.

本態様では、上述の縦パリティデータに基づく、データの保持期間中におけるデータ破壊の検出に加えて、横パリティデータに基づく、データの受信時、あるいはバッファメモリーへのデータのライト時におけるデータエラーの検出も実行される。縦パリティチェックと横パリティチェックの併用によって、データエラー検出の信頼性が高まる。   In this aspect, in addition to the detection of data destruction during the data holding period based on the above-described vertical parity data, data errors caused by data reception or data writing to the buffer memory based on the horizontal parity data are detected. Detection is also performed. The combined use of the vertical parity check and the horizontal parity check increases the reliability of data error detection.

(4)本発明のメモリー装置の他の態様では、前記パリティ生成回路は、前記バッファメモリーから前記データがリードされるとき、リードされたデータに基づいて第3パリティデータを生成し、前記パリティ比較部は、前記第3パリティデータと前記第2パリティデータとを比較し、前記出力部は、前記パリティ比較部による比較の結果、前記所定の規則による関係が不成立であった場合に、前記上位装置に対して、データ再送要求を出力する。   (4) In another aspect of the memory device of the present invention, when the data is read from the buffer memory, the parity generation circuit generates third parity data based on the read data, and compares the parity The comparison unit compares the third parity data with the second parity data, and the output unit determines that the higher-level device is not established when the relationship according to the predetermined rule is not established as a result of the comparison by the parity comparison unit. In response, a data retransmission request is output.

上述したように、バッファメモリーからデータをリードしているときにおいても、静電気等によるデータ破壊が生じる可能性がある。そこで、本態様では、バッファメモリーから、データをリードするときにおいても、データ破壊を検出するためのパリティチェックを実行する。すなわち、本態様では、リードされたデータに基づいて第3パリティデータを新たに生成し、生成された第3パリティデータと、データライト時において生成された第2パリティデータとを比較し、所定の規則による関係が不成立のときに、上位装置に対して、データ再送要求を出力するという構成を採用する。   As described above, even when data is read from the buffer memory, there is a possibility that data destruction due to static electricity or the like occurs. Therefore, in this aspect, a parity check for detecting data corruption is executed even when data is read from the buffer memory. That is, in this aspect, the third parity data is newly generated based on the read data, the generated third parity data is compared with the second parity data generated at the time of data write, A configuration is adopted in which a data retransmission request is output to a higher-level device when a rule relationship is not established.

データリード時において、静電気等によるデータ破壊が生じないのであれば、生成された第3パリティデータは、データライト時に生成された第1パリティデータと同じになるはずである。上述のとおり、例えば、第1パリティデータと第2パリティデータは、値が異なるように生成されていることから、通常ならば、第3パリティデータと第2パリティデータの各値も異なっているはずである。ここで、リード期間中においてデータ破壊が生じて、第3パリティデータおよび第2パリティデータのいずれかの値が反転したとすると、第3パリティデータの値と第2パリティデータの値が一致し、よって、リード時におけるデータ破壊を検出することができる。この場合にも、迅速なデータ回復処理を実行可能であることから、バッファメモリーにおけるデータリード期間に発生する、静電気等に基づくデータ破壊に対するリカバリー期間を短縮することができる。   If data destruction due to static electricity or the like does not occur during data reading, the generated third parity data should be the same as the first parity data generated during data writing. As described above, for example, since the first parity data and the second parity data are generated so as to have different values, normally, the values of the third parity data and the second parity data should also be different. It is. Here, if data destruction occurs during the read period and the value of either the third parity data or the second parity data is inverted, the value of the third parity data matches the value of the second parity data, Therefore, data destruction at the time of reading can be detected. Also in this case, since a rapid data recovery process can be executed, the recovery period for data destruction caused by static electricity or the like that occurs during the data read period in the buffer memory can be shortened.

(5)本発明のメモリー装置の他の態様では、前記バッファメモリーは、前記上位装置から送られてきたデータを一時的に蓄積するためのデータ記憶領域を有するメモリーセルアレイと、前記メモリーセルアレイとは別に設けられた、前記第1パリティデータを記憶する第1パリティメモリーと、前記メモリーセルアレイとは別に設けられた、前記第2パリティデータを記憶する第2パリティメモリーと、を有する。   (5) In another aspect of the memory device of the present invention, the buffer memory includes a memory cell array having a data storage area for temporarily storing data sent from the host device, and the memory cell array A first parity memory for storing the first parity data; and a second parity memory for storing the second parity data, provided separately from the memory cell array.

本態様では、第1パリティデータを記憶する第1パリティメモリーおよび第2パリティデータを記憶する第2パリティメモリーを、メモリーセルアレイとは別個に設ける。第1パリティメモリー(第2パリティメモリーも同様)は、例えば、少なくとも1個のフリップフロップによって構成することができる。例えば、複数のフリップフロップの各々を、例えば、ICチップ内で、2次元の広がりをもって分散させて配置する、あるいは、データ破壊が生じる可能性の程度に対応して分散させて配置する等の工夫をすれば、パリティメモリーの容量を縮小しつつ、データ破壊を検出できる可能性を高めることができる。   In this aspect, the first parity memory that stores the first parity data and the second parity memory that stores the second parity data are provided separately from the memory cell array. The first parity memory (the same applies to the second parity memory) can be constituted by, for example, at least one flip-flop. For example, each of the plurality of flip-flops, for example, is arranged with a two-dimensional spread in an IC chip, or is arranged according to the degree of possibility of data destruction. By doing so, it is possible to increase the possibility of detecting data corruption while reducing the capacity of the parity memory.

(6)本発明のインク情報転送装置の一態様では、インク容器に収容されているインクに関するインク情報を記憶する不揮発性メモリーを備えるインク情報記憶部と、前記インク情報を生成して出力する上位装置と、前記上位装置から出力される前記インク情報をバッファメモリーにライトし、ライトされたインク情報を保持し、前記ライトされたインク情報を前記バッファメモリーからリードし、リードされたインク情報を前記インク情報記憶部に供給する、上記いずれかのメモリー装置と、含み、前記上位装置は、前記インク情報を前記メモリー装置に出力した後、前記メモリー装置からのデータ再送要求を受信した場合には、先に出力した前記インク情報と同じ内容のインク情報を、前記メモリー装置に再度出力する。   (6) In one aspect of the ink information transfer device of the present invention, an ink information storage unit comprising a nonvolatile memory for storing ink information relating to ink contained in the ink container, and a host for generating and outputting the ink information The ink information output from the apparatus and the host device is written to the buffer memory, the written ink information is held, the written ink information is read from the buffer memory, and the read ink information is read from the buffer memory. Including any one of the above memory devices to be supplied to an ink information storage unit, and when the host device receives a data retransmission request from the memory device after outputting the ink information to the memory device, Ink information having the same contents as the previously output ink information is output again to the memory device.

本態様では、転送されるインク情報を中継するメモリー装置においてデータ破壊が検出されたときに、上位装置に対してデータ再送要求が出力される。よって、上位装置からの同一データの再送、ならびに再送されたデータの、メモリー装置内のバッファメモリーへのリライトを、早期に、かつ効率的に実行することができる。この結果、データ破壊が生じた場合でも、上位装置からインク情報が最初に出力された時点から、正しいインク情報が、インク情報記憶部における不揮発性メモリーに記憶されるまでの時間を、従来に比べて、格段に短縮することができる。   In this aspect, when data corruption is detected in the memory device that relays the transferred ink information, a data retransmission request is output to the host device. Therefore, retransmission of the same data from the host device and rewrite of the retransmitted data to the buffer memory in the memory device can be executed early and efficiently. As a result, even if data destruction occurs, the time from when the ink information is first output from the host device until the correct ink information is stored in the non-volatile memory in the ink information storage unit is compared with the conventional case. And can be significantly shortened.

インク情報転送装置を有する印刷装置(ここではインクジェット方式のカラープリンター)の構成の一例を示す図The figure which shows an example of a structure of the printing apparatus (here inkjet-type color printer) which has an ink information transfer apparatus. 図2(A)および図2(B)は、第1実施形態にかかるメモリー装置(ASIC)の動作手順を説明するための図2A and 2B are diagrams for explaining the operation procedure of the memory device (ASIC) according to the first embodiment. メモリー装置としてのASICの具体的な構成例を示す図The figure which shows the specific structural example of ASIC as a memory device. 静電気やノイズによるデータ破壊を検出する動作を説明するための図Diagram for explaining the operation to detect data destruction due to static electricity or noise 図5(A)〜図5(C)は、パリティ生成動作ならびにパリティ比較動作について、より具体的に説明するための図5A to 5C are diagrams for more specifically explaining the parity generation operation and the parity comparison operation. 図5(A),図5(B)に示されるASICの、データライト時の動作およびデータリード時の動作を示すタイミング図FIG. 5A and FIG. 5B are timing charts showing the data write operation and data read operation of the ASIC shown in FIG. 図7(A)および図7(B)は、第1実施形態にかかるメモリー装置を採用したインク情報転送装置における動作を、従来例の動作と対比して示す図FIGS. 7A and 7B are diagrams showing the operation of the ink information transfer apparatus employing the memory device according to the first embodiment in comparison with the operation of the conventional example. 図8(A)および図8(B)は、第1実施形態にかかるインク情報転送装置の動作タイミングを、従来例の動作タイミングと比較して示す図8A and 8B are diagrams showing the operation timing of the ink information transfer apparatus according to the first embodiment in comparison with the operation timing of the conventional example. メモリー装置(ASIC)の他の例を示す図The figure which shows the other example of a memory device (ASIC)

以下、本発明の好適な実施の形態について詳細に説明する。なお以下に説明する本実施形態は特許請求の範囲に記載された本発明の内容を不当に限定するものではなく、本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。   Hereinafter, preferred embodiments of the present invention will be described in detail. The present embodiment described below does not unduly limit the contents of the present invention described in the claims, and all the configurations described in the present embodiment are indispensable as means for solving the present invention. Not necessarily.

(第1実施形態)
図1は、インク情報転送装置を有する印刷装置(ここではインクジェット方式のカラープリンター)の構成の一例を示す図である。インク情報転送装置は、上位装置としてのSOC(システムオンチップ)100と、転送されるインク情報を中継するメモリー装置としてのASIC(例えば、SRAMで構成されるバッファメモリー210を含むIC)200と、インク情報記憶部CSIC(EEPROM等の不揮発性メモリー310を含むIC)300と、によって構成される。
(First embodiment)
FIG. 1 is a diagram illustrating an example of a configuration of a printing apparatus (here, an inkjet color printer) having an ink information transfer apparatus. The ink information transfer device includes an SOC (system on chip) 100 as a host device, an ASIC (for example, an IC including a buffer memory 210 formed of SRAM) 200 as a memory device that relays transferred ink information, and And an ink information storage unit CSIC (an IC including a nonvolatile memory 310 such as an EEPROM) 300.

上位装置としてのSOC100は、CPU102と、ヘッド駆動部112と、システムバスBUSと、を有する。CPU102は、インク情報記憶部CSIC300からのデータのリード(R)ならびにインク情報記憶部CSIC300へのデータのライト(W)を制御するR/W制御部104と、インク残量が少ないことを判定する閾値であるニアエンド閾値を記憶しているレジスター108と、インク消費量演算部110と、インク残量の程度を判定する判定部106と、を有する。判定部106は、例えば、表示部114に指示して、ユーザーにインク残量が少ないことを報知するための文章やアイコン等を表示させることができる。   The SOC 100 as the host device includes a CPU 102, a head drive unit 112, and a system bus BUS. The CPU 102 determines an R / W control unit 104 that controls reading (R) of data from the ink information storage unit CSIC300 and writing (W) of data to the ink information storage unit CSIC300, and determines that the ink remaining amount is low. It has a register 108 that stores a near-end threshold value that is a threshold value, an ink consumption calculation unit 110, and a determination unit 106 that determines the degree of ink remaining. For example, the determination unit 106 can instruct the display unit 114 to display a sentence, an icon, or the like for notifying the user that the ink remaining amount is low.

また、インク情報記憶部CSIC300は、着脱自在のインク容器部(液体容器部)400に設けられている。インク容器部(液体容器部)400には、CSIC300の他、例えば、シアン(C)、マゼンタ(M)、イエロー(Y)、ブラック(KあるいはBk)の各色のインクカートリッジ10a〜10dが設けられている。例えば、インク情報記憶部CSIC300は、インクカートリッジ10a〜10d毎に設けることができるが、図1では、説明の便宜上、インク情報記憶部CSIC300を一つだけ記載している。   The ink information storage unit CSIC300 is provided in a detachable ink container unit (liquid container unit) 400. In addition to the CSIC 300, the ink container part (liquid container part) 400 is provided with, for example, ink cartridges 10a to 10d for each color of cyan (C), magenta (M), yellow (Y), and black (K or Bk). ing. For example, although the ink information storage unit CSIC300 can be provided for each of the ink cartridges 10a to 10d, only one ink information storage unit CSIC300 is shown in FIG. 1 for convenience of explanation.

インクカートリッジ10a〜10dの各々は、ホルダー31によって保持されている。ホルダー31は、キャリッジ25によって支持されている。キャリッジ25は、ガイド軸26に沿って移動することができる。また、キャリッジ25には、CMYKの各色のインクに対応したヘッド20a〜20dが固定されている。また、インクカートリッジ10a〜10dの各々に収納されている各色のインクは、インクチューブ32を経由して、各ヘッド20a〜20dに供給される。各ヘッド20a〜20dからのインクの吐出によって、印刷用紙9上に、文字や画像を印刷することができる。各ヘッド20a〜20dの各々は、SOC100に含まれるヘッド駆動部112によって駆動される。   Each of the ink cartridges 10 a to 10 d is held by a holder 31. The holder 31 is supported by the carriage 25. The carriage 25 can move along the guide shaft 26. The carriage 25 is fixed with heads 20a to 20d corresponding to CMYK inks. Ink of each color stored in each of the ink cartridges 10 a to 10 d is supplied to the heads 20 a to 20 d via the ink tube 32. Characters and images can be printed on the printing paper 9 by ejecting ink from the heads 20a to 20d. Each of the heads 20a to 20d is driven by a head driving unit 112 included in the SOC 100.

着脱自在のインク容器部(液体容器部)400が、印刷装置本体に装着されると、CSIC300内のインク容量メモリー(EEPROM等の不揮発性メモリー)310に記憶されている各種のデータ(現在のインク容量データやインクカートリッジの型番データ等)が読み出され、読み出された各種データは、ASIC200を経由して、SOC100に送られる。SOC100にて受信された各種データは、例えば、CPU102に設けられる判定部106ならびにインク消費量110に記憶される。   When the removable ink container part (liquid container part) 400 is attached to the printing apparatus main body, various data (current inks) stored in the ink capacity memory (nonvolatile memory such as EEPROM) 310 in the CSIC 300 are provided. Capacity data, ink cartridge model number data, etc.) are read out, and the read out various data are sent to the SOC 100 via the ASIC 200. Various data received by the SOC 100 is stored in, for example, the determination unit 106 and the ink consumption 110 provided in the CPU 102.

印刷が実行される場合には、例えば、各ヘッド20a〜20dの駆動回数に基づいて、インク消費量演算部110がインク消費量を演算する。ヘッドの駆動1回当たりのインク消費量は既知であるため、各ヘッドの駆動回数に基づいて各色のインクの消費量を演算することができる。印刷前における、各インクカートリッジ10a〜10dの各々におけるインク容量は既知であるため、各インクの消費量が求められれば、印刷後の各インクの残量も一義的に定まる。インク消費量演算部110によって各インクの容量(印刷後のインク残量)が求められると、求められたインク容量データは、判定部106ならびにR/W制御部104に供給される。判定部106は、ニアエンド閾値と求められたインク容量とを比較して、インク残量が閾値以下となったことを検出すると、所定の報知情報を、表示部114に表示させる。   When printing is performed, for example, the ink consumption calculation unit 110 calculates the ink consumption based on the number of driving times of each of the heads 20a to 20d. Since the amount of ink consumed per head drive is known, the amount of ink consumed for each color can be calculated based on the number of times each head is driven. Since the ink capacity in each of the ink cartridges 10a to 10d before printing is known, the remaining amount of each ink after printing is uniquely determined if the consumption amount of each ink is obtained. When the ink consumption calculation unit 110 obtains the capacity of each ink (ink remaining amount after printing), the obtained ink capacity data is supplied to the determination unit 106 and the R / W control unit 104. When the determination unit 106 compares the near-end threshold value with the obtained ink capacity and detects that the remaining ink amount is equal to or less than the threshold value, the determination unit 106 causes the display unit 114 to display predetermined notification information.

また、R/W制御部104は、例えば、インク消費量演算部110によってインク容量データが求められる毎に、そのインク容量データ(広義のインク情報)を、メモリー装置としてのASIC200を経由して、インク容量記憶部としてのCSIC300に送信する。CSIC300は、送られてきたインク容量データを受信し、そのインク容量データを、不揮発性メモリー(EEPROM等)で構成されるインク容量メモリー310に書き込む。インク残量を示すデータが常に更新され、不揮発性メモリーであるインク容量メモリー310に保持されることによって、例えば、不意の停電等による電源のオフが生じても、最新のインク残量情報が消えることがない。つまり、SOC100は、電源の復旧後に、インク容量メモリー310から最新のインク残量情報を読み出すことができ、これによって、不意の電源オフがあったとしても、SOC100は、各色のインクの残量を正確に把握することができる。   Further, the R / W control unit 104, for example, every time ink capacity data is obtained by the ink consumption calculation unit 110, the ink capacity data (broadly defined ink information) is transmitted via the ASIC 200 as a memory device. The data is transmitted to the CSIC 300 serving as an ink capacity storage unit. The CSIC 300 receives the transmitted ink capacity data, and writes the ink capacity data into the ink capacity memory 310 constituted by a non-volatile memory (such as an EEPROM). Data indicating the remaining amount of ink is constantly updated and held in the ink capacity memory 310, which is a non-volatile memory, so that the latest ink remaining amount information disappears even if the power is turned off due to, for example, a sudden power failure. There is nothing. In other words, the SOC 100 can read the latest ink remaining amount information from the ink capacity memory 310 after the power supply is restored, so that even if the power is unexpectedly turned off, the SOC 100 determines the remaining amount of ink of each color. Accurately grasp.

上述のとおり、SOC100から送信されるインク容量データ(広義のインク情報)は、メモリー装置としてのASIC200内のバッファメモリー210に一時的に蓄積され、その後、CSIC300に転送される。   As described above, ink capacity data (ink information in a broad sense) transmitted from the SOC 100 is temporarily stored in the buffer memory 210 in the ASIC 200 serving as a memory device, and then transferred to the CSIC 300.

ここで、ASIC200内のバッファメモリー210に、インク容量データが一時的に保持されている保持期間、あるいはインク容量データがリードされるリード期間において、静電気や過大なノイズ等によって、データ破壊が生じる場合を想定する。従来は、そのデータ破壊は、CSIC300によってしか検出できないため、データ破壊に対する早期の対策を採ることができなかった。   Here, when data destruction occurs due to static electricity, excessive noise, or the like in the holding period in which the ink capacity data is temporarily stored in the buffer memory 210 in the ASIC 200 or the reading period in which the ink capacity data is read. Is assumed. Conventionally, since the data destruction can be detected only by the CSIC 300, it was not possible to take an early measure against the data destruction.

そこで、本実施形態では、メモリー装置としてのASIC200自体に、データ破壊が生じたことを検出するモニター機能を付与する。この点について、以下、図2を参照して説明する。   Therefore, in this embodiment, the ASIC 200 itself as a memory device is provided with a monitor function for detecting that data destruction has occurred. This point will be described below with reference to FIG.

図2(A)および図2(B)は、本実施形態のメモリー装置(ASIC)の動作手順を説明するための図である。図2(A)は比較例の動作手順を示し、図2(B)は、本実施形態のメモリー装置(ASIC200)の動作手順を示す。先に説明したように、メモリー装置としてのASIC200は、SOC100とCSIC300との間に位置しており、SOC100から送信されるデータ(例えばインク容量データ)を受信し、一時的に保持した後、CSIC300に転送する。   2A and 2B are diagrams for explaining the operation procedure of the memory device (ASIC) of the present embodiment. 2A shows an operation procedure of the comparative example, and FIG. 2B shows an operation procedure of the memory device (ASIC 200) of the present embodiment. As described above, the ASIC 200 as a memory device is located between the SOC 100 and the CSIC 300, receives data (for example, ink capacity data) transmitted from the SOC 100, temporarily holds the data, and then stores the data in the CSIC 300. Forward to.

まず、図2(A)に示される比較例の動作を説明する。図2(A)に示されるASIC200は、データを受信し(ステップS1)、受信したデータをバッファメモリー210にライトし(ステップS2)、このとき、受信時パリティチェックを実行する(ステップS3)。バッファメモリー210にライトされたデータは、所定期間だけ保持され(ステップS4)、その後、保持されているデータがリードされ(ステップS5)、リードされたデータが、CSIC300に送信される(ステップS6)。   First, the operation of the comparative example shown in FIG. The ASIC 200 shown in FIG. 2A receives data (step S1), writes the received data to the buffer memory 210 (step S2), and at this time, executes a parity check at reception (step S3). The data written in the buffer memory 210 is held for a predetermined period (step S4), then the held data is read (step S5), and the read data is transmitted to the CSIC 300 (step S6). .

ここで、データの保持期間(蓄積期間)やリード期間(読み出し期間)において、静電気や過大なノイズ等が入力されて、データの一部が破壊された場合を想定する。この場合、ASIC200はデータ破壊を検出できない。よって、結果的に、CSIC300におけるデータ誤り検出等によって、初めてデータのエラーが検出されることになる。但し、エラーが初めて検出された時点では、そのデータエラーが、受信時に生じたのか、あるいは、ASIC200から出力されたデータ自体が破壊されていたのかは不明である。   Here, it is assumed that static electricity, excessive noise, or the like is input during the data retention period (accumulation period) or read period (readout period), and a part of the data is destroyed. In this case, the ASIC 200 cannot detect data corruption. Therefore, as a result, a data error is detected for the first time by data error detection in the CSIC 300 or the like. However, when an error is detected for the first time, it is unclear whether the data error occurred during reception or whether the data output from the ASIC 200 has been destroyed.

そこで、CSIC300は、まず、ASIC200に対してデータ再送要求(再送要求1)を送信する。上記の例では、データ自体に破損が生じているため、データの再送によってもデータエラーが解消せず、データ再送要求2が送信され、続いて、データ再送要求3が出力される。データの再送の繰り返しによっても問題が解決しないことから、この時点で、ASIC200から送られてきたデータ自体に異常があることが検出される。   Therefore, the CSIC 300 first transmits a data retransmission request (retransmission request 1) to the ASIC 200. In the above example, since the data itself is damaged, the data error is not resolved even by the retransmission of the data, the data retransmission request 2 is transmitted, and then the data retransmission request 3 is output. Since the problem is not solved by repeating the retransmission of data, it is detected at this point that there is an abnormality in the data itself sent from the ASIC 200.

CSIC300は、最上流の装置であるSOC100に対して、再データ書き込み要求を送信する。これに応じて、SOC100は、先に送信したデータと同じ内容のデータをASIC200に再送送し、ASIC200は、再送されてきたデータを所定期間、蓄積した後、CSIC300に向けて送信する。この比較例の場合、ASIC200から送られてきたデータ自体に異常があることを、早期に検出することができないため、データエラーの回復に時間がかかる。   The CSIC 300 transmits a re-data write request to the SOC 100 which is the most upstream device. In response to this, the SOC 100 retransmits data having the same content as the previously transmitted data to the ASIC 200, and the ASIC 200 accumulates the retransmitted data for a predetermined period and then transmits it to the CSIC 300. In the case of this comparative example, since it is impossible to detect at an early stage that there is an abnormality in the data itself sent from the ASIC 200, it takes time to recover the data error.

これに対して、図2(B)に示される本実施形態のASIC200は、データが破損したことを検出する機能をもつため、上位装置であるSOC100に対するデータ再送要求を、早期に送信することができる。よって、データエラーの回復に要する時間が格段に短縮される。   On the other hand, the ASIC 200 of the present embodiment shown in FIG. 2B has a function of detecting that data has been damaged, and therefore can transmit a data retransmission request to the SOC 100, which is a higher-level device, at an early stage. it can. Therefore, the time required for data error recovery is significantly shortened.

すなわち、図2(B)に示される本実施形態にかかる例では、データのライト時に、データ破壊検出用のパリティデータを新たに生成する(ステップS3’)。そして、データ保持期間において、新たに生成されたパリティデータを用いたパリティチェックが実行される(ステップS7)。また、保持データのリード期間中においても、データリード時のパリティチェックが実行される(ステップS9)。   That is, in the example according to the present embodiment shown in FIG. 2B, parity data for data destruction detection is newly generated when data is written (step S3 '). Then, in the data holding period, a parity check using newly generated parity data is executed (step S7). Further, a parity check at the time of data reading is executed even during the read period of the retained data (step S9).

このステップS9では、例えば、リードされたデータに基づくパリティデータが生成され、生成されたパリティデータと、ライト時に生成されたパリティデータとが比較され、これによって、リード時のデータ破壊が検出可能となる。ステップS7またはステップS9にて、パリティチェックの結果がNGであるとき、ASIC200は、上位装置であるSOC100に、直ちにデータ再送要求を送信する。   In this step S9, for example, parity data based on the read data is generated, and the generated parity data is compared with the parity data generated at the time of writing, whereby it is possible to detect data corruption at the time of reading. Become. In step S7 or step S9, when the result of the parity check is NG, the ASIC 200 immediately transmits a data retransmission request to the SOC 100, which is the host device.

このように、図2(B)に示される本実施形態にかかる例では、静電気等に起因するデータの破壊が生じたことが早期に検出される。よって、データエラーの回復に要する時間が、図2(A)に示される比較例に比べて、格段に短縮される。   As described above, in the example according to the present embodiment shown in FIG. 2B, it is detected at an early stage that data destruction due to static electricity or the like has occurred. Therefore, the time required to recover the data error is significantly shortened compared to the comparative example shown in FIG.

次に、メモリー装置としてのASIC200の具体的な構成例と、その動作について、図3〜図7を用いて説明する。図3は、メモリー装置としてのASICの具体的な構成例を示す図である。   Next, a specific configuration example and operation of the ASIC 200 as a memory device will be described with reference to FIGS. FIG. 3 is a diagram illustrating a specific configuration example of the ASIC as the memory device.

ASIC200は、SRAMで構成されるバッファメモリー210と、入力インターフェース(入力I/F)212と、入力データSDA(図1のインク容量情報に相当する)に付加されている横パリティに基づくパリティチェックを実行する横パリティチェック部213と、入出力インターフェース(入出力I/F)214と、上位装置であるSOCに対してデータ再送要求RQを出力する出力インターフェース(出力I/F,あるいは出力部)216と、データ破壊検出用の縦パリティデータを生成するパリティ生成回路228と、生成された第1パリティデータを格納する第1パリティメモリー230と、生成された第2パリティデータを格納する第2パリティメモリー232と、第1パリティデータと第2パリティデータとを比較して、エラー(データ破壊の有無)を検出するパリティ比較部234と、入出力インターフェース(入出力I/F)236と、出力インターフェース(出力I/F)238と、を有する。   The ASIC 200 performs a parity check based on the lateral parity added to the buffer memory 210 composed of SRAM, the input interface (input I / F) 212, and the input data SDA (corresponding to the ink capacity information in FIG. 1). A lateral parity check unit 213 to be executed, an input / output interface (input / output I / F) 214, and an output interface (output I / F or output unit) 216 that outputs a data retransmission request RQ to the SOC that is the host device. A parity generation circuit 228 that generates vertical parity data for detecting data corruption, a first parity memory 230 that stores the generated first parity data, and a second parity memory that stores the generated second parity data 232 and the first parity data and the second parity data are compared. Has a parity comparison unit 234 detects an error (whether data destruction), and output interface (input-output I / F) 236, an output interface (output I / F) 238, a.

ここで、バッファメモリー210は、カラムデコーダー220と、ロウデコーダ−222と、メモリーセルアレイ224と、リード/ライト回路226と、を有する。メモリーセルアレイ224は、データSDAを記憶するデータ記憶領域223を有する。また、後述する第1パリティメモリー230ならびに第2パリティメモリー232を、メモリーセルアレイ224内に設けることもできる(図3の例では、この構成を想定している)。   Here, the buffer memory 210 includes a column decoder 220, a row decoder-222, a memory cell array 224, and a read / write circuit 226. The memory cell array 224 has a data storage area 223 for storing data SDA. Also, a first parity memory 230 and a second parity memory 232 described later can be provided in the memory cell array 224 (this configuration is assumed in the example of FIG. 3).

また、入力インターフェース(入力I/F)212には、動作クロックSCKと、リセット信号XRSTが入力される。また、入出力インターフェース(入出力I/F)214は、データ(SDA)およびデータSDAに付加されている横パリティデータの入力、あるいは出力を実行する。また、出力インターフェース(出力I/F,あるいは出力部)216は、パリティ比較部234の比較結果によってデータ破壊が検出された場合に、データ再送要求RQをSOC100に対して送信する。また、入出力インターフェース(入出力I/F)236は、CSIC300に、SDA(横パリティ付き)を送信する。また、出力インターフェース(出力I/F)238は、CSIC300に、動作クロックSCKおよびリセット信号XRSTを送信する。   An operation clock SCK and a reset signal XRST are input to the input interface (input I / F) 212. The input / output interface (input / output I / F) 214 executes input or output of data (SDA) and horizontal parity data added to the data SDA. The output interface (output I / F or output unit) 216 transmits a data retransmission request RQ to the SOC 100 when data corruption is detected based on the comparison result of the parity comparison unit 234. Further, the input / output interface (input / output I / F) 236 transmits SDA (with horizontal parity) to the CSIC 300. Further, the output interface (output I / F) 238 transmits an operation clock SCK and a reset signal XRST to the CSIC 300.

図4は、静電気やノイズによるデータ破壊を検出する動作を説明するための図である。メモリーセルアレイ224内のデータ記憶領域223に書き込まれて保持されるデータSDAは、例えば、8行(A0〜A7)×8列(C1〜C8)のデータである。また、データSDAには、1行分のデータ(8ビットのデータ)毎に、通信エラーを検出するための1ビットの横パリティデータが付加されている。   FIG. 4 is a diagram for explaining an operation of detecting data destruction due to static electricity or noise. The data SDA written and held in the data storage area 223 in the memory cell array 224 is, for example, data of 8 rows (A0 to A7) × 8 columns (C1 to C8). Further, 1-bit horizontal parity data for detecting a communication error is added to the data SDA for each row of data (8-bit data).

また、図4の例では、奇パリティが採用されている。すなわち、8ビットのビット列に含まれる“1”の数が奇数となるように、横パリティデータの値が決定されている。データ通信に伴って、1ビットのデータ化けが発生すると、8ビットのビット列に含まれる“1”の数が偶数となることから、データエラーを検出することができる。通信に伴うデータエラーの検出は、図3に示される横パリティチェック部213が実行する。   In the example of FIG. 4, odd parity is employed. That is, the value of the horizontal parity data is determined so that the number of “1” included in the 8-bit bit string is an odd number. When 1-bit data corruption occurs along with data communication, the number of “1” included in the 8-bit bit string becomes an even number, so that a data error can be detected. Detection of a data error accompanying communication is executed by the horizontal parity check unit 213 shown in FIG.

また、データ保持期間ならびにデータリード期間における、静電気やノイズ等に起因するデータの破壊は、縦パリティデータを用いて検出することができる。   In addition, data destruction due to static electricity or noise in the data holding period and the data read period can be detected using vertical parity data.

図4の下側に示されるように、縦パリティデータは、第1パリティデータである正パリティデータと、第2パリティデータである反転パリティデータとによって構成される。縦パリティデータは、メモリーセルアレイ224にライトされたデータのうちの、同一列のデータの各々に基づく演算(縦パリティ演算)によって求めることができる。例えば、同一列のデータの2進法による加算を実行し、その加算結果である縦パリティビットを、例えば第1パリティデータ(正パリティデータ)とする。また、第1パリティデータ(正パリティデータ)の値をインバーター等で反転させることによって、第2パリティデータ(反転パリティデータ)を生成することができる。このような縦パリティ演算は、図3に示されるパリティ生成回路228が実行する。   As shown in the lower part of FIG. 4, the vertical parity data is composed of primary parity data that is first parity data and inverted parity data that is second parity data. The vertical parity data can be obtained by an operation (vertical parity operation) based on each of the data in the same column among the data written to the memory cell array 224. For example, the addition of the data in the same column by the binary method is executed, and the vertical parity bit as the addition result is set as, for example, first parity data (normal parity data). Also, the second parity data (inverted parity data) can be generated by inverting the value of the first parity data (normal parity data) with an inverter or the like. Such a vertical parity operation is executed by the parity generation circuit 228 shown in FIG.

第1パリティデータ(正パリティデータ)は、第1パリティメモリー(あるいは第1パリティメモリー領域)230に格納されている。また、第2パリティデータ(反転パリティデータ)は、第2パリティメモリー(あるいは第2パリティメモリー領域)232に格納されている。パリティ比較部234は、第1パリティデータ(正パリティデータ)と第2パリティデータ(反転パリティデータ)とを比較して、チェック結果信号Chkを出力する。   The first parity data (normal parity data) is stored in the first parity memory (or first parity memory area) 230. The second parity data (inverted parity data) is stored in the second parity memory (or second parity memory area) 232. The parity comparison unit 234 compares the first parity data (normal parity data) and the second parity data (inverted parity data), and outputs a check result signal Chk.

このように、図3および図4に示される本実施形態の例では、メモリー装置としてのASIC200自体が、バッファメモリー210へのデータライト時に第1パリティデータ(正パリティデータ)および第2パリティデータ(反転パリティデータ)を生成する機能をもち、かつ、例えば、データ保持期間においては、パリティ比較部234が、第1パリティデータと第2パリティデータを常に比較する。両パリティデータ間には、生成当初の所定の規則による関係が成立する。つまり、図4の例では、第2パリティデータは、第1パリティデータの値を反転して得られるという規則が適用されており、よって、両パリティデータの値(1または0)は一致しないという関係が成立している。   As described above, in the example of the present embodiment shown in FIG. 3 and FIG. 4, the ASIC 200 itself as the memory device has the first parity data (primary parity data) and the second parity data (when the data is written to the buffer memory 210). For example, in the data holding period, the parity comparison unit 234 always compares the first parity data and the second parity data. A relationship according to a predetermined rule at the beginning of generation is established between both parity data. That is, in the example of FIG. 4, the rule that the second parity data is obtained by inverting the value of the first parity data is applied, and therefore the values (1 or 0) of both parity data do not match. The relationship is established.

静電気等によってデータ化けが生じると、両パリティデータ間において、生成当初の所定の規則による関係が成立しなくなる。つまり、両データの値が一致するという現象が生じる。この場合には、チェック結果信号Chkがアクティブレベルとなり、データエラーが検出される。   When data corruption occurs due to static electricity or the like, the relationship according to a predetermined rule at the beginning of generation does not hold between both parity data. That is, a phenomenon occurs in which the values of both data match. In this case, the check result signal Chk becomes an active level, and a data error is detected.

つまり、例えば、データ保持期間におけるデータ破壊の発生を、メモリー装置としてのASIC200自体が検出することができる。よって、従来に比べて早期に、データ破壊に対する対策を採ることができ、したがって、データ破壊に対するリカバリーに要する時間を短縮することができる。   That is, for example, the occurrence of data destruction in the data holding period can be detected by the ASIC 200 itself as a memory device. Therefore, it is possible to take measures against data destruction earlier than in the prior art, and therefore it is possible to reduce the time required for recovery against data destruction.

すなわち、データエラーが検出されたときには、上位装置であるSOC100からの同一データの再送、ならびに再送されたデータのバッファメモリー210へのリライトが実行される。これによって、破壊されたデータを、迅速に回復させることができる。   That is, when a data error is detected, retransmission of the same data from the SOC 100, which is the host device, and rewrite of the retransmitted data to the buffer memory 210 are executed. As a result, the corrupted data can be quickly recovered.

また、上述したように、バッファメモリー210からデータをリードしているときにおいても、静電気等によるデータ破壊が生じる可能性がある。そこで、本実施形態では、バッファメモリー210から、データをリードするときにおいても、データ破壊を検出するためのパリティチェックを実行する。   Further, as described above, even when data is read from the buffer memory 210, there is a possibility of data destruction due to static electricity or the like. Therefore, in this embodiment, a parity check for detecting data corruption is executed even when data is read from the buffer memory 210.

この場合は、パリティ生成回路228は、リードされたデータに基づいて縦パリティ演算を実行して第3パリティデータを生成し、生成した第3パリティデータを、第1パリティメモリー(第1パリティメモリー領域)230に格納する(例えば、第1パリティデータを上書きする)。パリティ比較部234は、第3パリティデータと、データライト時において生成された第2パリティデータとを比較し、所定の規則による関係(ここでは、両データが一致しないという関係)が不成立のときにチェック結果信号Chkがアクティブレベルに変化する。   In this case, the parity generation circuit 228 performs vertical parity calculation based on the read data to generate third parity data, and the generated third parity data is stored in the first parity memory (first parity memory area). ) 230 (for example, the first parity data is overwritten). The parity comparison unit 234 compares the third parity data with the second parity data generated at the time of data write, and when the relationship according to a predetermined rule (here, the relationship that the two data do not match) is not established. The check result signal Chk changes to the active level.

つまり、リード時において、静電気等によるデータ破壊が生じないのであれば、生成された第3パリティデータは、データライト時に生成された第1パリティデータと同じになるはずである。上述のとおり、例えば、第1パリティデータと第2パリティデータは、値が異なるように生成されていることから、通常ならば、第3パリティデータと第2パリティデータの各値は異なっているはずである。   That is, if data destruction due to static electricity or the like does not occur at the time of reading, the generated third parity data should be the same as the first parity data generated at the time of data writing. As described above, for example, the first parity data and the second parity data are generated so as to have different values. Therefore, normally, the values of the third parity data and the second parity data should be different from each other. It is.

ここで、リード期間中においてデータ破壊が生じて、第3パリティデータおよび第2パリティデータのいずれかの値が反転したとすると、第3パリティデータの値と第2パリティデータの値が一致し、よって、リード時におけるデータ破壊を検出することができる。この場合にも、迅速なデータ回復処理を実行可能であることから、バッファメモリー210におけるデータリード期間に発生する、静電気等に基づくデータ破壊に対するリカバリー期間を短縮することができる。   Here, if data destruction occurs during the read period and the value of either the third parity data or the second parity data is inverted, the value of the third parity data matches the value of the second parity data, Therefore, data destruction at the time of reading can be detected. Also in this case, since a rapid data recovery process can be executed, the recovery period for data destruction caused by static electricity or the like that occurs during the data read period in the buffer memory 210 can be shortened.

図5(A)〜図5(C)は、パリティ生成動作ならびにパリティ比較動作について、より具体的に説明するための図である。図5(A)は、データ保持期間における動作を示し、図5(B)はデータリード期間における動作を示し、図5(C)は、縦パリティ生成動作を示している。   FIG. 5A to FIG. 5C are diagrams for more specifically explaining the parity generation operation and the parity comparison operation. FIG. 5A shows the operation in the data holding period, FIG. 5B shows the operation in the data read period, and FIG. 5C shows the vertical parity generation operation.

図5(A)に示すように、ライト回路226aには、データSDAと、ライトイネーブル信号WEと、リセット信号XRSTが入力される。ライト時には、ライトイネーブル信号WEがアクティブレベルとなっている。なお、インバーターINV1〜INV8は、第1パリティデータ(正パリティデータ)のレベルを反転させて、反転パリティデータを生成するために設けられている。パリティ生成回路228は、メモリーセルアレイ224にライトされるデータに基づいて、縦パリティ演算を実行して、第1パリティデータ(正パリティデータ)および第2パリティデータ(反転リティデータ)を生成する。   As shown in FIG. 5A, data SDA, a write enable signal WE, and a reset signal XRST are input to the write circuit 226a. At the time of writing, the write enable signal WE is at an active level. The inverters INV1 to INV8 are provided to invert the level of the first parity data (normal parity data) to generate inverted parity data. The parity generation circuit 228 performs vertical parity calculation based on data written to the memory cell array 224, and generates first parity data (normal parity data) and second parity data (inverted parity data).

パリティ生成回路228は、例えば、図5(C)に示すような累積加算器(アキュームレーター)を有する。累積加算器(アキュームレーター)は、同一列のデータ同士を加算する加算器229と、加算結果を蓄積するレジスター231とで構成される。累積加算器(アキュームレーター)は、データ列毎に設けられる。図5(C)の例において、A0行C1列のデータをXとし、A1行C2列のデータをYとすると、加算器229によってX+Yの演算(2進数の加算演算)が実行され、その結果がレジスター231に格納される。以下、同様に、データが書き込まれる毎に累積加算が実行され、A7行のデータがライトされた時点では、A0行からA7行のデータの、同一列のデータ同士の加算結果がレジスター231に格納されている。   The parity generation circuit 228 includes, for example, a cumulative adder (accumulator) as shown in FIG. The cumulative adder (accumulator) includes an adder 229 that adds data in the same column and a register 231 that stores the addition result. A cumulative adder (accumulator) is provided for each data string. In the example of FIG. 5C, when the data in the A0 row C1 column is X and the data in the A1 row C2 column is Y, the adder 229 performs an X + Y operation (binary addition operation), and the result Is stored in the register 231. Similarly, cumulative addition is executed each time data is written, and when the data in the A7 row is written, the addition result of the data in the same column of the data in the A0 to A7 rows is stored in the register 231. Has been.

その加算結果が第1パリティデータ(正パリティデータ)となる。また、第1パリティデータ(正パリティデータ)のレベルを、インバーターINV1で反転させることによって、第2パリティデータが生成される。   The addition result is the first parity data (positive parity data). Also, the second parity data is generated by inverting the level of the first parity data (normal parity data) by the inverter INV1.

この例によれば、各データ列毎に、例えば1ビットの縦パリティデータを無理なく、容易に生成することができる。また、各データ列毎に縦パリティが生成されるため、縦パリティデータが、データのビット数(ここでは8ビット)分だけ生成されることになり、縦パリティデータの総数が増えることから、データ破壊を検出し易くなる。また、データ破壊が生じる可能性に関して、2次元のメモリー領域内でバラツキが生じる場合でも、各データ列毎に縦パリティが生成されている(つまり、ライトデータの行方向に沿って、広がりをもって縦パリティが配置されている)ことから、データ破壊が生じ易い領域におけるデータ化けを検出できる可能性が高まる。   According to this example, for example, 1-bit vertical parity data can be easily generated for each data string without difficulty. In addition, since vertical parity is generated for each data string, vertical parity data is generated for the number of bits of data (here, 8 bits), and the total number of vertical parity data increases. It becomes easy to detect destruction. Also, regarding the possibility of data destruction, even when there is a variation in the two-dimensional memory area, vertical parity is generated for each data string (that is, the data is vertically expanded along the row direction of the write data). (Parity is arranged), the possibility of detecting data corruption in an area where data destruction is likely to occur is increased.

図5(B)に示される例では、リード回路226bには、ライトイネーブル信号WEと、リセット信号XRSTが入力される。リード時には、ライトイネーブル信号WEは非アクティブレベルとなっている。リード回路226bからは、読み出されたデータSDAが出力される。   In the example shown in FIG. 5B, a write enable signal WE and a reset signal XRST are input to the read circuit 226b. At the time of reading, the write enable signal WE is at an inactive level. The read data SDA is output from the read circuit 226b.

パリティ生成回路228は、メモリーセルアレイ224から読み出されたデータに基づいて、縦パリティ演算を実行して、第3パリティデータ(正パリティデータ)を生成する。なお、リードされたデータに基づく反転パリティデータの生成は行われない。したがって、第2パリティメモリー232には、ライト時に生成された第2パリティデータがそのまま格納されている。パリティ比較部234は、第3パリティデータ(正パリティデータ)と、ライト時に生成された第2パリティデータとを比較する。両データの一致が検出された場合には、チェック結果信号Chkがアクティブレベルになる。   The parity generation circuit 228 performs vertical parity calculation based on the data read from the memory cell array 224 to generate third parity data (normal parity data). Note that generation of inverted parity data based on the read data is not performed. Therefore, the second parity memory 232 stores the second parity data generated at the time of writing as it is. The parity comparison unit 234 compares the third parity data (positive parity data) with the second parity data generated at the time of writing. When the coincidence of both data is detected, the check result signal Chk becomes an active level.

また、図5(A)および図5(B)に示す例では、第1パリティデータを記憶する第1パリティメモリー(第1パリティメモリー領域)230と、第2パリティデータを記憶する第2パリティメモリー(第2パリティメモリー領域)232は、例えば、メモリーセルアレイ224において設けている。例えば、バッファメモリーとしてSRAMを使用する場合、メモリーセルアレイ224を拡張し、データSDAを記憶するデータ記憶領域223の近傍において、ワード線やメモリセルを追加して、第1パリティメモリー領域や第2パリティメモリー領域を確保することに特に問題はない。よって、この構成は、実現が容易である。   5A and 5B, the first parity memory (first parity memory area) 230 that stores the first parity data and the second parity memory that stores the second parity data. The (second parity memory area) 232 is provided in the memory cell array 224, for example. For example, when an SRAM is used as the buffer memory, the memory cell array 224 is expanded, and word lines and memory cells are added in the vicinity of the data storage area 223 for storing the data SDA, so that the first parity memory area and the second parity memory area are stored. There is no particular problem in securing the memory area. Therefore, this configuration is easy to realize.

そして、例えば、データ記憶領域がm行n列(mおよびnの各々は2以上の整数)の記憶容量を有する場合に、ライトされたデータSDAのうちの、同一列のデータの各々に基づく縦パリティ演算が実行される。上述のとおり、生成された第1パリティデータおよび第2パリティデータの各々は、第1パリティメモリー(第1パリティメモリー領域)230、ならびに第2パリティメモリー(第2パリティメモリー領域)232の各々に記憶される。   For example, if the data storage area has a storage capacity of m rows and n columns (each of m and n is an integer of 2 or more), the vertical direction based on each of the data in the same column in the written data SDA. Parity operation is performed. As described above, each of the generated first parity data and second parity data is stored in each of the first parity memory (first parity memory area) 230 and the second parity memory (second parity memory area) 232. Is done.

また、図5(A)および図5(B)に記載される例では、横パリティデータを用いたデータ受信時(あるいはデータライト時)のパリティチェックと、データ保持期間ならびにデータリード期間における、縦パリティを用いたパリティチェックとが併用されている。よって、データエラー検出の信頼性が高まる。   In the example shown in FIGS. 5A and 5B, the parity check at the time of data reception (or data write) using the horizontal parity data, the vertical period in the data holding period and the data read period Parity check using parity is also used. Therefore, the reliability of data error detection is increased.

なお、図4に示した例では、横パリティビットは1ビットであったが、これに限定されるものではなく、横パリティビットはsビット(sは1以上の整数)とすることができる。この場合には、メモリーセルアレイ224に設けられるデータ記憶領域223は、少なくともm行(n+s)列のデータを格納する大きさを有することになる。   In the example shown in FIG. 4, the horizontal parity bit is 1 bit, but the horizontal parity bit is not limited to this, and the horizontal parity bit can be s bits (s is an integer of 1 or more). In this case, the data storage area 223 provided in the memory cell array 224 has a size for storing at least m rows (n + s) columns of data.

図6は、図5(A),図5(B)に示されるASICの、データライト時の動作およびデータリード時の動作を示すタイミング図である。図6において、時刻t1〜t3の期間T1がデータライト期間である。時刻t1〜t2の期間において、ライトコマンドと、データSDAならびに横パリティ(図中、1Pと記載されている)が、メモリーセルアレイ224にライトされる。時刻t2〜時刻t3の期間が、縦パリティライト期間T2である。この期間T2において、縦パリティデータが生成され、生成された縦パリティデータが、第1パリティメモリー230ならびに第2パリティメモリー232にライトされる。   FIG. 6 is a timing chart showing an operation at the time of data writing and an operation at the time of data reading of the ASIC shown in FIGS. 5 (A) and 5 (B). In FIG. 6, a period T1 between times t1 and t3 is a data write period. During the period from time t1 to time t2, the write command, data SDA, and horizontal parity (indicated as 1P in the figure) are written to the memory cell array 224. The period from time t2 to time t3 is the vertical parity write period T2. In this period T 2, vertical parity data is generated, and the generated vertical parity data is written to the first parity memory 230 and the second parity memory 232.

また、時刻t3〜時刻t5の期間T3が、ライト後のデータ保持期間となる。このデータ保持期間T3において、静電気等によるデータ化けのチェックが実行される。この期間T3は、ライト後モニター期間ということもできる。   A period T3 from time t3 to time t5 is a data holding period after writing. In this data holding period T3, data corruption due to static electricity or the like is checked. This period T3 can also be referred to as a monitor period after writing.

時刻t5〜時刻t7の期間T4がデータリード期間である。時刻t5〜t6の期間において、リードコマンドと、データSDAならびに横パリティ(1P)が、メモリーセルアレイ224から読み出される。時刻t6〜時刻t7の期間T5は、リード時における正パリティデータ(第3パリティデータ)のライト期間となる。すなわち、この期間T5において、第3パリティデータ(正パリティデータ)が生成され、生成された第3パリティデータが、第1パリティメモリー230に上書きされる。   A period T4 from time t5 to time t7 is a data read period. During the period from time t5 to t6, the read command, data SDA, and horizontal parity (1P) are read from the memory cell array 224. A period T5 from time t6 to time t7 is a write period of the normal parity data (third parity data) at the time of reading. That is, in this period T5, third parity data (primary parity data) is generated, and the generated third parity data is overwritten on the first parity memory 230.

また、時刻t7〜t8の期間T6が、リード後モニター期間である。このリード後モニター期間T6において、データSDAのリード期間中における、データ破壊の有無がチェックされる。   A period T6 from time t7 to t8 is a post-read monitoring period. In the post-read monitoring period T6, the presence or absence of data destruction during the data SDA read period is checked.

なお、データSDAのリード期間中において、データ破壊が生じたことが検出されたとき、バッファメモリー210から読み出されたデータが、すでに次段のCSIC300に送信されている場合があり得る。この場合には、例えば、ASIC200が、CSIC300に対して、データエラーがあったことを示す報知信号を送信し、その報知信号によって、CSIC300が受信したデータを破棄させればよい。   When it is detected that data corruption has occurred during the data SDA read period, the data read from the buffer memory 210 may already be transmitted to the CSIC 300 at the next stage. In this case, for example, the ASIC 200 may transmit a notification signal indicating that a data error has occurred to the CSIC 300, and the data received by the CSIC 300 may be discarded by the notification signal.

図7は、本実施形態のメモリー装置を採用したインク情報転送装置における動作を、従来例の動作と対比して示す図である。図7(A)は比較例の動作を示し、図7(B)は本実施形態にかかるインク情報転送装置の動作を示す図である。インク情報転送装置(データ転送システム)は、図1に示したように、上位装置としてのSOC100と、バッファメモリー210を有するメモリー装置(ASIC)200と、インク情報記憶部としてのCSIC300と、によって構成される。   FIG. 7 is a diagram showing the operation of the ink information transfer apparatus employing the memory device of the present embodiment in comparison with the operation of the conventional example. FIG. 7A shows the operation of the comparative example, and FIG. 7B shows the operation of the ink information transfer apparatus according to the present embodiment. As shown in FIG. 1, the ink information transfer device (data transfer system) includes an SOC 100 as a host device, a memory device (ASIC) 200 having a buffer memory 210, and a CSIC 300 as an ink information storage unit. Is done.

図7(A)に示されるように、従来は、まず、ASIC200へのデータのライトが実行される(ステップST1)。ASIC200では、横パリティデータを用いた受信時のパリティチェックが実行される(ステップST2)。チェック結果がNGの場合は、第1カウントをインクリメントして、ステップST1に戻る。チェック結果がOKの場合には、ASIC200から読み出されたデータがCSIC300に送られ、そのデータがCSIC300にライトされる(ステップST4)。CSIC300では、横パリティを用いた受信時のパリティチェックが実行される(ステップST5)。チェック結果がNGの場合は、第2カウントをインクリメントして、ステップST4に戻る。第2カウントの値が許容範囲を超えると、第3カウントをインクリメントして(ステップST7)、ステップST1に戻る。   As shown in FIG. 7A, conventionally, first, data is written to the ASIC 200 (step ST1). In ASIC 200, a parity check at the time of reception using horizontal parity data is executed (step ST2). If the check result is NG, the first count is incremented and the process returns to step ST1. If the check result is OK, the data read from the ASIC 200 is sent to the CSIC 300, and the data is written to the CSIC 300 (step ST4). In CSIC 300, a parity check at the time of reception using horizontal parity is executed (step ST5). If the check result is NG, the second count is incremented and the process returns to step ST4. When the value of the second count exceeds the allowable range, the third count is incremented (step ST7), and the process returns to step ST1.

これに対して、図7(B)に示されるように、本実施形態にかかるインク情報転送装置では、まず、ASIC200へのデータのライトが実行され(ステップST1)、ASIC200では、横パリティデータを用いた受信時のパリティチェックが実行され(ステップST2)、チェック結果がNGの場合は、第1カウントをインクリメントして、ステップST1に戻る。チェック結果がOKの場合には、縦パリティデータを用いた、データ保持期間あるいはデータリード期間におけるパリティチェックが実行される(ステップST4)。チェック結果がNGの場合は、インクリメントして、ステップST1に戻って、ステップST1およびステップST2が再度、実行される(エラー回復のためのリトライ動作)。   On the other hand, as shown in FIG. 7B, in the ink information transfer apparatus according to the present embodiment, data is first written to the ASIC 200 (step ST1), and the ASIC 200 stores the horizontal parity data. The parity check at the time of reception used is executed (step ST2). If the check result is NG, the first count is incremented and the process returns to step ST1. If the check result is OK, a parity check is performed in the data holding period or data read period using vertical parity data (step ST4). If the check result is NG, the process increments and returns to step ST1, and step ST1 and step ST2 are executed again (retry operation for error recovery).

ステップST4において、パリティチェックの結果がOKの場合は、ASIC200から読み出されたデータがCSIC300に送られ、そのデータがCSIC300にライトされる(ステップST5)。CSIC300では、横パリティを用いた受信時のパリティチェックが実行される(ステップST6)。チェック結果がNGの場合は、第2カウントをインクリメントし、次に、例えば、縦パリティデータを用いたパリティチェックの結果がNGであるか、OKであるかを判定する(ステップST8)。OKの場合は、ステップST5に戻り、NGの場合は、ステップST1に戻る。   If the result of the parity check is OK in step ST4, the data read from the ASIC 200 is sent to the CSIC 300, and the data is written to the CSIC 300 (step ST5). In CSIC 300, a parity check at the time of reception using horizontal parity is executed (step ST6). If the check result is NG, the second count is incremented, and then, for example, it is determined whether the result of the parity check using vertical parity data is NG or OK (step ST8). If OK, the process returns to step ST5. If NG, the process returns to step ST1.

また、ステップST6におけるパリティチェックの結果がOKの場合は、縦パリティデータを用いたパリティチェックが実行される(ステップST9)。ステップST9におけるチェック結果がNGの場合は、ステップST1に戻る。なお、以上の動作例は、一例であり、この動作に限定されるものではない。   If the result of the parity check in step ST6 is OK, a parity check using vertical parity data is executed (step ST9). If the check result in step ST9 is NG, the process returns to step ST1. Note that the above operation example is an example, and the present invention is not limited to this operation.

図8(A)および図8(B)は、本実施形態にかかるインク情報転送装置の動作タイミングを、従来例の動作タイミングと比較して示す図である。ここでは、ASIC200へのデータライト後、データ保持期間にて、静電気等によってデータの一部が破損した場合を想定する。   FIGS. 8A and 8B are diagrams illustrating the operation timing of the ink information transfer apparatus according to the present embodiment in comparison with the operation timing of the conventional example. Here, it is assumed that a part of data is damaged due to static electricity or the like in the data holding period after data is written to the ASIC 200.

図8(A)に示される従来例では、時刻t5〜t10までの期間において、3回のリトライ処理が実行される。なお、この回数は、図7(A)の動作フローに示される第2カウントによって管理される。3回目のリトライによってもデータエラーが解消しないため、時刻t11に、最上流の上位装置であるSOC100からデータが再送され、そのデータのASIC200へのライト動作が実行され、続いて、時刻t13において、ASIC200から出力されたデータが、CSIC300にライトされる。時刻t11〜t14におけるリトライ回数は、図7(A)の動作フローに示される第3カウントによって管理される。結果的に、図8(A)の従来例では、正しいデータがASIC200にライトされるまでに、時刻t1〜t14までの時間を要することになる。   In the conventional example shown in FIG. 8A, three retry processes are executed in the period from time t5 to time t10. This number is managed by the second count shown in the operation flow of FIG. Since the data error is not resolved by the third retry, the data is retransmitted from the SOC 100, which is the most upstream host device, at time t11, the write operation of the data to the ASIC 200 is executed, and then at time t13. Data output from the ASIC 200 is written to the CSIC 300. The number of retries at times t11 to t14 is managed by the third count shown in the operation flow of FIG. As a result, in the conventional example of FIG. 8A, it takes time from time t1 to time t14 before correct data is written to the ASIC 200.

これに対して、図8(B)に示される本実施形態にかかる例では、ASIC200自体が、パリティチェック結果Chkに基づいてデータ破壊を検出することができる。よって、時刻t3において、ASIC200に対する同一データの再書き込みが実行される。よって、図8(B)に示される本実施形態にかかる例では、正しいデータがASIC200にライトされるまでの時間は、時刻t1〜t6までの時間となる。よって、従来例に比べて、データのエラー回復に要する時間が格段に短縮される。   In contrast, in the example according to the present embodiment shown in FIG. 8B, the ASIC 200 itself can detect data corruption based on the parity check result Chk. Therefore, rewriting of the same data to the ASIC 200 is executed at time t3. Therefore, in the example according to this embodiment shown in FIG. 8B, the time until the correct data is written to the ASIC 200 is the time from time t1 to time t6. Therefore, the time required for error recovery of data is remarkably reduced as compared with the conventional example.

(第2実施形態)
図9は、メモリー装置(ASIC)の他の例を示す図である。図9に示される例では、第1パリティデータを記憶する第1パリティメモリー(フリップフロップFF1,FF3,FF5)および第2パリティデータを記憶する第2パリティメモリー(フリップフロップFF2,FF4,FF6)が、データSDAを格納するメモリーセルアレイ224とは別個に設けられている。
(Second Embodiment)
FIG. 9 is a diagram illustrating another example of the memory device (ASIC). In the example shown in FIG. 9, a first parity memory (flip-flops FF1, FF3, FF5) that stores first parity data and a second parity memory (flip-flops FF2, FF4, FF6) that stores second parity data are included. The memory cell array 224 for storing the data SDA is provided separately.

第1パリティメモリーならびに第2パリティメモリーは、少なくとも1個のフリップフロップによって構成することができる。例えば、複数のフリップフロップ(FF)の各々を、例えば、ICチップ内で、2次元の広がりをもって分散させて配置する、あるいは、データ破壊が生じる可能性の程度に対応して分散させて配置する等の工夫をすれば、パリティメモリーの容量を縮小しつつ、データ破壊を検出できる可能性を高めることが可能である。   The first parity memory and the second parity memory can be configured by at least one flip-flop. For example, each of the plurality of flip-flops (FFs) is distributed and arranged with a two-dimensional spread, for example, in an IC chip, or is distributed according to the degree of possibility of data destruction. If such measures are taken, it is possible to increase the possibility of detecting data corruption while reducing the capacity of the parity memory.

電源ライン(VDD)に静電気やノイズが重畳されたとき、グランドラインの抵抗が高い箇所ほど、接地電位の浮き上がりが大きくなる。よって、その箇所にあるフリップフロップ(FF)のデータ化けが生じ易くなる。図9の例では、グランドラインには、抵抗R1,R2が介在している。よって、フリップフロップFF1およびFF2において、最もデータ化けが生じやすく、次に、フリップフロップFF3およびFF4において、データ化けが生じやすい。   When static electricity or noise is superimposed on the power supply line (VDD), the higher the ground line resistance, the greater the rise of the ground potential. Therefore, data corruption of the flip-flop (FF) at that location is likely to occur. In the example of FIG. 9, resistors R1 and R2 are interposed in the ground line. Therefore, data corruption is most likely to occur in the flip-flops FF1 and FF2, and then data corruption is most likely to occur in the flip-flops FF3 and FF4.

パリティ比較部234は、例えば、データ保持期間において、FF1とFF2のデータ値の比較、FF3とFF4のデータ値の比較、FF5とFF6のデータ値の比較を常時行う。そして、例えば、いずれか一つについて、データの一致が検出された場合には、チェック結果信号Chkがアクティブレベルに変化する。なお、チェック結果信号Chkは、エラー検出信号として利用することができる。   For example, in the data holding period, the parity comparison unit 234 constantly compares the data values of FF1 and FF2, compares the data values of FF3 and FF4, and compares the data values of FF5 and FF6. For example, when data coincidence is detected for any one of them, the check result signal Chk changes to the active level. The check result signal Chk can be used as an error detection signal.

このように、本発明の少なくとも一つの実施形態によれば、バッファメモリーのデータ保持期間またはデータリード期間に発生する、静電気等に基づくデータ破壊に対するリカバリー期間を、従来例に比べて、格段に短縮することができる。   As described above, according to at least one embodiment of the present invention, the recovery period for data destruction caused by static electricity or the like that occurs during the data holding period or the data read period of the buffer memory is remarkably shortened compared to the conventional example. can do.

以上、いくつかの実施形態について説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるものである。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。   Although several embodiments have been described above, it is easily understood by those skilled in the art that many modifications can be made without substantially departing from the novel matters and effects of the present invention. Accordingly, all such modifications are intended to be included in the scope of the present invention. For example, a term described at least once together with a different term having a broader meaning or the same meaning in the specification or the drawings can be replaced with the different term in any part of the specification or the drawings.

9 印刷用紙、10a〜10d インクカートリッジ、
20a〜20d ヘッド、25 キャリッジ、26 ガイド軸、31 ホルダー、
32 インクチューブ、104 制御部、106 判定部、108 レジスター、
110 インク消費量演算部、112 ヘッド駆動部、 114 表示部、
210 バッファメモリー、213 横パリティチェック部、
220 カラムデコーダー、
224 メモリーセルアレイ(メモリーセルアレイ領域)、
226 リード/ライト回路、226a ライト回路、226b リード回路、
228 パリティ生成回路、229 加算器、230 第1パリティメモリー、
231 レジスター、232 第2パリティメモリー、
234 パリティ比較部、300 インク情報記憶部、
310 不揮発性メモリー
9 printing paper, 10a-10d ink cartridge,
20a to 20d head, 25 carriage, 26 guide shaft, 31 holder,
32 ink tube, 104 control unit, 106 determination unit, 108 register,
110 ink consumption calculation unit, 112 head drive unit, 114 display unit,
210 Buffer memory, 213 Horizontal parity check section,
220 column decoder,
224 memory cell array (memory cell array area),
226 read / write circuit, 226a write circuit, 226b read circuit,
228 parity generation circuit, 229 adder, 230 first parity memory,
231 registers, 232 second parity memory,
234 Parity comparison unit, 300 ink information storage unit,
310 Nonvolatile memory

Claims (6)

上位装置から送られてきたデータを蓄積するバッファメモリーと、
前記バッファメモリーに前記データがライトされるとき、ライトされたデータに基づいて、第1パリティデータと、前記第1パリティデータと所定の規則で関係付けられた第2パリティデータと、を生成するパリティ生成回路と、
前記バッファメモリーに前記ライトされたデータが保持されている保持期間において、前記第1パリティデータと前記第2パリティデータとを比較するパリティ比較部と、
前記パリティ比較部による比較の結果、前記所定の規則による関係が不成立であった場合に、前記上位装置に対して、データ再送要求を出力する出力部と、
を含むことを特徴とするメモリー装置。
A buffer memory that stores data sent from the host device;
Parity for generating first parity data and second parity data related to the first parity data according to a predetermined rule based on the written data when the data is written to the buffer memory A generation circuit;
A parity comparison unit that compares the first parity data and the second parity data in a holding period in which the written data is held in the buffer memory;
As a result of comparison by the parity comparison unit, when the relationship according to the predetermined rule is not established, an output unit that outputs a data retransmission request to the higher-level device;
A memory device comprising:
請求項1記載のメモリー装置であって、
前記バッファメモリーは、メモリーセルアレイを有し、前記メモリーセルアレイは、前記上位装置から送られてきたデータを一時的に蓄積するための、少なくともm行n列(mおよびnの各々は2以上の整数)のデータ記憶領域と、前記第1パリティデータを記憶する第1パリティメモリー領域と、前記第2パリティデータを記憶する第2パリティメモリー領域と、を有し、
前記パリティ生成回路は、前記データ記憶領域にライトされたデータのうちの、同一列のデータの各々に基づく演算によって、縦パリティデータである前記第1パリティデータおよび前記第2パリティデータの各々を生成することを特徴とするメモリー装置。
The memory device according to claim 1,
The buffer memory has a memory cell array, and the memory cell array temporarily stores at least m rows and n columns (m and n are integers of 2 or more) for temporarily storing data sent from the host device. ) Data storage area, a first parity memory area for storing the first parity data, and a second parity memory area for storing the second parity data,
The parity generation circuit generates the first parity data and the second parity data, which are vertical parity data, by performing an operation based on each of the data in the same column among the data written in the data storage area. A memory device characterized by that.
請求項2記載のメモリー装置であって、
前記上位装置から送られてきたデータには、nビットのデータ毎にsビット(sは1以上の整数)の横パリティデータが付加されており、
前記データ記憶領域は、少なくともm行(n+s)列の記憶容量を有し、
また、前記nビットのデータ毎に付加されている前記sビットの横パリティデータの各々に基づくパリティチェックを実行する横パリティチェック部を、さらに有することを特徴とするメモリー装置。
The memory device according to claim 2,
In the data sent from the host device, s bits (s is an integer of 1 or more) horizontal parity data is added for each n bits of data,
The data storage area has a storage capacity of at least m rows (n + s) columns;
The memory device further includes a lateral parity check unit that performs a parity check based on each of the s-bit lateral parity data added to each n-bit data.
請求項1〜請求項3のいずれかに記載のメモリー装置であって、
前記パリティ生成回路は、前記バッファメモリーから前記データがリードされるとき、リードされたデータに基づいて第3パリティデータを生成し、
前記パリティ比較部は、前記第3パリティデータと前記第2パリティデータとを比較し、前記出力部は、前記パリティ比較部による比較の結果、前記所定の規則による関係が不成立であった場合に、前記上位装置に対して、データ再送要求を出力することを特徴とするメモリー装置。
The memory device according to any one of claims 1 to 3,
The parity generation circuit generates third parity data based on the read data when the data is read from the buffer memory;
The parity comparison unit compares the third parity data with the second parity data, and the output unit, as a result of the comparison by the parity comparison unit, the relationship according to the predetermined rule is not established, A memory device that outputs a data retransmission request to the host device.
請求項1記載のメモリー装置であって、
前記バッファメモリーは、
前記上位装置から送られてきたデータを一時的に蓄積するためのデータ記憶領域を有するメモリーセルアレイと、
前記メモリーセルアレイとは別に設けられた、前記第1パリティデータを記憶する第1パリティメモリーと、
前記メモリーセルアレイとは別に設けられた、前記第2パリティデータを記憶する第2パリティメモリーと、を有することを特徴とするメモリー装置。
The memory device according to claim 1,
The buffer memory is
A memory cell array having a data storage area for temporarily storing data sent from the host device;
A first parity memory that is provided separately from the memory cell array and stores the first parity data;
And a second parity memory for storing the second parity data, which is provided separately from the memory cell array.
インク容器に収容されているインクに関するインク情報を記憶する不揮発性メモリーを備えるインク情報記憶部と、
前記インク情報を生成して出力する上位装置と、
前記上位装置から出力される前記インク情報をバッファメモリーにライトし、ライトされたインク情報を保持し、前記ライトされたインク情報を前記バッファメモリーからリードし、リードされたインク情報を前記インク情報記憶部に供給する、請求項1〜請求項5のいずれかに記載のメモリー装置と、含み、
前記上位装置は、前記インク情報を前記メモリー装置に出力した後、前記メモリー装置からのデータ再送要求を受信した場合には、先に出力した前記インク情報と同じ内容のインク情報を、前記メモリー装置に再度出力することを特徴とするインク情報転送装置。
An ink information storage unit comprising a non-volatile memory for storing ink information relating to the ink contained in the ink container;
A host device that generates and outputs the ink information;
The ink information output from the host device is written to a buffer memory, the written ink information is held, the written ink information is read from the buffer memory, and the read ink information is stored in the ink information The memory device according to any one of claims 1 to 5, comprising:
When the host device receives the data retransmission request from the memory device after outputting the ink information to the memory device, the upper device outputs the ink information having the same content as the previously output ink information. The ink information transfer device is characterized in that the information is output again.
JP2010173594A 2010-08-02 2010-08-02 Memory device and ink information transfer device Pending JP2012033090A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010173594A JP2012033090A (en) 2010-08-02 2010-08-02 Memory device and ink information transfer device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010173594A JP2012033090A (en) 2010-08-02 2010-08-02 Memory device and ink information transfer device

Publications (1)

Publication Number Publication Date
JP2012033090A true JP2012033090A (en) 2012-02-16

Family

ID=45846395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010173594A Pending JP2012033090A (en) 2010-08-02 2010-08-02 Memory device and ink information transfer device

Country Status (1)

Country Link
JP (1) JP2012033090A (en)

Similar Documents

Publication Publication Date Title
TW544686B (en) Method of managing a defect in a flash memory
US8782326B2 (en) Memory device and system including a memory device electronically connectable to a host circuit
US8348377B2 (en) Storage device, board, liquid container, method of receiving data which are to be written in data storage unit from host circuit, and system including storage device which is electrically connectable to host circuit
CN103064274B (en) Imaging box chip, data processing method and imaging box
EP1008936A2 (en) Flash memory control method
JP2009255550A (en) Liquid storing body
JP2009259225A (en) Liquid container
KR20080003539A (en) Method and system for communicating between image forming apparatus and non-volatile memory in consumption goods
EP3483732B1 (en) Redundant storage of error correction code (ecc) checkbits for validating proper operation of a static random access memory (sram)
JPS61157959A (en) Error correction for memory
US20110058420A1 (en) Storage Apparatus, Substrate, Liquid Container, System, and Control Method of the Storage Apparatus
US8117524B2 (en) Data recovery circuit
US9007622B2 (en) Replaceable printer component including a memory updated atomically
US6971051B2 (en) System and method of recovering from soft memory errors
US8392769B2 (en) Storage device, circuit board, liquid reservoir and system
JP2012033090A (en) Memory device and ink information transfer device
KR100636190B1 (en) Apparatus and method for image forming by detecting thermal print head type
CN110737539A (en) Die level error recovery scheme
JP2015215678A (en) Image processor, information processing method and program
JP5391018B2 (en) Counting device
JP2013198986A (en) Printing apparatus
CN113535459B (en) Data access method and device for responding to power event
JP2017146687A (en) Storage device, liquid container, and host device
JP2005234855A (en) Information processor
JP2012185724A (en) System, host device, and error detecting method