[go: up one dir, main page]

JP6858636B2 - Semiconductor storage device - Google Patents

Semiconductor storage device Download PDF

Info

Publication number
JP6858636B2
JP6858636B2 JP2017099120A JP2017099120A JP6858636B2 JP 6858636 B2 JP6858636 B2 JP 6858636B2 JP 2017099120 A JP2017099120 A JP 2017099120A JP 2017099120 A JP2017099120 A JP 2017099120A JP 6858636 B2 JP6858636 B2 JP 6858636B2
Authority
JP
Japan
Prior art keywords
bit
error
circuit
bits
data
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
JP2017099120A
Other languages
Japanese (ja)
Other versions
JP2018195122A (en
Inventor
邦範 川畑
邦範 川畑
Original Assignee
富士通セミコンダクターメモリソリューション株式会社
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 富士通セミコンダクターメモリソリューション株式会社 filed Critical 富士通セミコンダクターメモリソリューション株式会社
Priority to JP2017099120A priority Critical patent/JP6858636B2/en
Publication of JP2018195122A publication Critical patent/JP2018195122A/en
Application granted granted Critical
Publication of JP6858636B2 publication Critical patent/JP6858636B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Detection And Correction Of Errors (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

本発明は、半導体記憶装置に関する。 The present invention relates to a semiconductor storage device.

性能向上や歩留まり向上を目的にしてメモリセルから読み出されたデータのエラーを検出して訂正するECC(Error Checking and Correcting)機能を備えた半導体記憶装置がある。たとえば、MRAM(Magnetoresistive Random Access Memory)などの不揮発性メモリでは、正常なビットであってもある確率(エラーレート)で不良となるため、上記のようなECC機能を実行するECC回路が用いられている。その一例として、ハミング符号を用いて1ビットのエラー検出及び訂正を行うECC回路がある。 There is a semiconductor storage device having an ECC (Error Checking and Correcting) function that detects and corrects an error in data read from a memory cell for the purpose of improving performance and yield. For example, in a non-volatile memory such as MRAM (Magnetoresistive Random Access Memory), even a normal bit becomes defective with a certain probability (error rate), so an ECC circuit that executes the above ECC function is used. There is. As an example, there is an ECC circuit that detects and corrects a 1-bit error using a Hamming code.

なお、2ビット以上のエラー検出及び訂正に対応した符号もある。その一例としてゴレイ符号がある。ゴレイ符号を用いることで、11ビットの検査ビット(パリティビットと呼ばれる場合もある)と12ビットのデータビットを合わせた23ビットから、3ビットのエラーの検出及び訂正が可能となる。 There is also a code corresponding to error detection and correction of 2 bits or more. One example is the Golay code. By using the Golay code, it is possible to detect and correct a 3-bit error from 23 bits, which is a combination of an 11-bit inspection bit (sometimes called a parity bit) and a 12-bit data bit.

特開2008−117430号公報Japanese Unexamined Patent Publication No. 2008-117430 特開平11−73797号公報Japanese Unexamined Patent Publication No. 11-73797 特開2008−176828号公報Japanese Unexamined Patent Publication No. 2008-176828 特開2009−43385号公報Japanese Unexamined Patent Publication No. 2009-433585

ところで、従来の半導体記憶装置では、出荷前試験などの工程において歩留まりを上げるためにECC回路を用いてエラー検出及び訂正が行われる。しかし、その工程において、訂正できるビット数分のエラービットの訂正を行ってしまった場合、その工程後に増加したエラービット(たとえば、出荷後に増えたエラービット)を訂正できなくなる問題がある。 By the way, in a conventional semiconductor storage device, error detection and correction are performed using an ECC circuit in order to increase the yield in a process such as a pre-shipment test. However, if the error bits corresponding to the number of correctable bits are corrected in the process, there is a problem that the error bits increased after the process (for example, the error bits increased after shipment) cannot be corrected.

1つの側面では、本発明は、増加したエラービットを訂正可能とする半導体記憶装置を提供することを目的とする。 In one aspect, it is an object of the present invention to provide a semiconductor storage device capable of correcting an increased error bit.

1つの実施態様では、第1のビット数のライトデータと、第2のビット数の第1のデータとに基づいて、第3のビット数を上限とした複数ビットのエラー検出及び訂正に対応した符号の第1の検査ビットを生成する検査ビット生成回路と、前記ライトデータと、前記第1の検査ビットとを記憶するメモリセル部と、設定信号に基づいて設定される動作状態が第1の状態のときに、前記第1のデータに対して少なくとも1ビットの値が異なる第2のデータを出力し、前記動作状態が第2の状態のときに、前記第2のデータよりも前記第1のデータに対して値が異なるビット数が少ない第3のデータを出力する設定回路と、前記ライトデータに対応しており前記メモリセル部から読み出された第1のリードデータと、前記設定回路が出力する前記第2のデータまたは前記第3のデータと、に基づいて前記符号の第2の検査ビットを生成し、前記第1の検査ビットに対応しており前記メモリセル部から読み出された第3の検査ビットと、前記第2の検査ビットと、に基づいてエラービットを検出し、検出結果を出力するエラー検出回路と、前記検出結果に基づいて、前記エラービットのうち、少なくとも前記第1のリードデータに含まれる第1のエラービットを訂正するエラー訂正回路と、を有する半導体記憶装置が提供される。 In one embodiment, a plurality of bits of error detection and correction up to a third bit number are supported based on the write data of the first bit number and the first data of the second bit number. The inspection bit generation circuit that generates the first inspection bit of the code, the memory cell unit that stores the write data and the first inspection bit, and the operating state set based on the set signal are the first. In the state, the second data having a value different from the first data by at least one bit is output, and when the operating state is the second state, the first data is higher than the second data. A setting circuit that outputs a third data having a different value from the data of the above and a small number of bits, a first read data corresponding to the write data and read from the memory cell unit, and the setting circuit. Generates the second inspection bit of the code based on the second data or the third data output by, and corresponds to the first inspection bit and is read from the memory cell unit. An error detection circuit that detects an error bit based on the third inspection bit and the second inspection bit and outputs a detection result, and at least the above error bits based on the detection result. Provided is a semiconductor storage device including an error correction circuit that corrects a first error bit included in the first read data.

1つの側面では、本発明は、増加したエラービットの訂正が可能となる。 In one aspect, the invention allows for correction of increased error bits.

第1の実施の形態の半導体記憶装置の一例を示す図である。It is a figure which shows an example of the semiconductor storage device of 1st Embodiment. 第2の実施の形態の半導体記憶装置の一例を示す図である。It is a figure which shows an example of the semiconductor storage device of 2nd Embodiment. 12ビットのデータの各ビットに対応付けられたゴレイ符号の11ビットのデータパターンを示す図である。It is a figure which shows the 11-bit data pattern of the Golay code associated with each bit of the 12-bit data. 7入力1出力のXOR演算を行うXOR回路の一例を示す図である。It is a figure which shows an example of the XOR circuit which performs the XOR operation of 7 input 1 output. 7入力1出力のXOR演算回路の各入力とデータビットと出力される検査ビットとの対応関係を示す図である。It is a figure which shows the correspondence relationship between each input of 7-input 1-output XOR arithmetic circuit, data bit, and output inspection bit. 12ビットのデータと11ビットの検査ビットの各ビットに対応付けられたゴレイ符号の11ビットのデータパターンを示す図である。It is a figure which shows the 11-bit data pattern of the Golay code associated with each bit of 12-bit data and 11-bit inspection bit. 8入力1出力のXOR演算を行うXOR回路の一例を示す図である。It is a figure which shows an example of the XOR circuit which performs the XOR operation of 8 inputs and 1 output. 8入力1出力のXOR演算回路の各入力とリードデータ及び読み出された検査ビットの各ビットと、出力されるシンドロームの各ビットとの対応関係を示す図である。It is a figure which shows the correspondence relationship between each input of an XOR arithmetic circuit of 8 inputs 1 output, each bit of read data and read inspection bit, and each bit of output syndrome. シンドロームに基づくデコード信号とエラービットとの対応関係を示す図である。It is a figure which shows the correspondence relationship between a decoded signal based on a syndrome, and an error bit. シンドロームデコーダの一例を示す図である。It is a figure which shows an example of a syndrome decoder. 2ビットエラーが生じている場合のシンドロームデコーダの動作の一例を示すタイミングチャートである。It is a timing chart which shows an example of the operation of the syndrome decoder when a 2-bit error occurs. 4ビットエラーが生じている場合のシンドロームデコーダの動作の一例を示すタイミングチャートである。It is a timing chart which shows an example of the operation of the syndrome decoder when a 4-bit error occurs. 仮想データエラー検出回路とエラー信号出力回路の一例を示す図である。It is a figure which shows an example of a virtual data error detection circuit and an error signal output circuit. 4ビットエラーが生じている場合の仮想データエラー検出回路とエラー信号出力回路の動作の一例を示すタイミングチャートである。It is a timing chart which shows an example of the operation of a virtual data error detection circuit and an error signal output circuit when a 4-bit error occurs. エラー訂正回路の一例を示す図である。It is a figure which shows an example of an error correction circuit. 2ビットエラーが生じている場合のエラー訂正回路の動作の一例を示すタイミングチャートである。It is a timing chart which shows an example of the operation of an error correction circuit when a 2-bit error occurs. 4ビットエラーが生じている場合のエラー訂正回路の動作の一例を示すタイミングチャートである。It is a timing chart which shows an example of the operation of an error correction circuit when a 4-bit error occurs. チップグレードの分別方法の一例を示すフローチャートである。It is a flowchart which shows an example of the chip grade sorting method. 第3の実施の形態の半導体記憶装置の一例を示す図である。It is a figure which shows an example of the semiconductor storage device of 3rd Embodiment. 選択回路の一例を示す図である。It is a figure which shows an example of a selection circuit. エラーMAXフラグ生成回路の一例を示す図である。It is a figure which shows an example of the error MAX flag generation circuit. フラグ出力回路の一例を示す図である。It is a figure which shows an example of a flag output circuit. 冗長セルを有する第3の実施の形態の半導体記憶装置の一例の動作の流れを示すフローチャートである。It is a flowchart which shows the operation flow of an example of the semiconductor storage device of 3rd Embodiment which has a redundant cell.

以下、発明を実施するための形態を、図面を参照しつつ説明する。
(第1の実施の形態)
図1は、第1の実施の形態の半導体記憶装置の一例を示す図である。
Hereinafter, embodiments for carrying out the invention will be described with reference to the drawings.
(First Embodiment)
FIG. 1 is a diagram showing an example of a semiconductor storage device according to the first embodiment.

半導体記憶装置10は、データ入出力部11、仮想データ設定回路12、検査ビット生成回路13、メモリセル部14、試験モード設定回路15、エラー検出回路16、エラー訂正回路17を有する。仮想データ設定回路12、検査ビット生成回路13、メモリセル部14、試験モード設定回路15、エラー検出回路16、エラー訂正回路17は、ECC回路として機能する。なお、図1では、メモリセル部14へのアドレスの指定を受け付ける部分や、書き込みコマンドや読み出しコマンドを受け付ける部分、アドレスに応じてメモリセルを選択する回路、書き込み回路や読み出し回路などについては、図示が省略されている。 The semiconductor storage device 10 includes a data input / output unit 11, a virtual data setting circuit 12, an inspection bit generation circuit 13, a memory cell unit 14, a test mode setting circuit 15, an error detection circuit 16, and an error correction circuit 17. The virtual data setting circuit 12, the inspection bit generation circuit 13, the memory cell unit 14, the test mode setting circuit 15, the error detection circuit 16, and the error correction circuit 17 function as ECC circuits. Note that FIG. 1 shows a portion that accepts an address designation to the memory cell unit 14, a portion that accepts a write command or a read command, a circuit that selects a memory cell according to the address, a write circuit, a read circuit, and the like. Is omitted.

データ入出力部11は、メモリセル部14へ書き込まれるライトデータwdを半導体記憶装置10の外部から受け、メモリセル部14から読み出され、エラー訂正されたリードデータrdaを半導体記憶装置10の外部へ出力する。 The data input / output unit 11 receives the write data wd written to the memory cell unit 14 from the outside of the semiconductor storage device 10, reads it from the memory cell unit 14, and receives the error-corrected read data rda from the outside of the semiconductor storage device 10. Output to.

仮想データ設定回路12は、検査ビット生成回路13に、ライトデータwdに付加される所定のビット数のデータ(以下仮想データと呼ぶ)18aを供給する。図1の例では、仮想データ18aは、各ビットの値が0の4ビット値(0000)である。 The virtual data setting circuit 12 supplies the inspection bit generation circuit 13 with data (hereinafter referred to as virtual data) 18a having a predetermined number of bits to be added to the write data wd. In the example of FIG. 1, the virtual data 18a is a 4-bit value (0000) in which the value of each bit is 0.

検査ビット生成回路13は、所定のビット数のライトデータwdと、仮想データ18aとに基づいて、所定のビット数を上限とした複数ビットのエラー検出及び訂正に対応した符号の検査ビットwpbを生成する。複数ビットのエラー検出及び訂正に対応した符号として、ゴレイ符号やBCH符号などがある。なお、ライトデータwdは、たとえば、1バイト(8ビット)単位でメモリセル部14に書き込まれる。 The inspection bit generation circuit 13 generates an inspection bit wpb having a code corresponding to error detection and correction of a plurality of bits up to a predetermined number of bits based on the write data wd having a predetermined number of bits and the virtual data 18a. To do. Codes corresponding to error detection and correction of a plurality of bits include Golay code and BCH code. The write data wd is written to the memory cell unit 14 in units of 1 byte (8 bits), for example.

たとえば、検査ビット生成回路13が3ビットを上限としたエラー検出及び訂正に対応したゴレイ符号の検査ビットwpbを生成する場合、8ビットのライトデータwdと4ビットの仮想データ18aから、12ビットの検査ビットwpbを生成する。 For example, when the inspection bit generation circuit 13 generates a Gorey code inspection bit wpb corresponding to error detection and correction up to 3 bits, 12 bits from 8-bit write data wd and 4-bit virtual data 18a. Generate the check bit wpb.

メモリセル部14は、ライトデータwdと、検査ビットwpbとを記憶する。図1の例では、検査ビットwpbは、メモリセル部14の検査ビット記憶部14aに書き込まれ、ライトデータwdは、メモリセル部14のデータ記憶部14bに書き込まれる。メモリセル部14には、たとえば、図示しない複数のメモリセルがアレイ状に配置されている。メモリセルは、MRAMセルや、FeRAM(Ferroelectric Random Access Memory)セル、DRAM(Dynamic Random Access Memory)セルなどの記憶素子である。 The memory cell unit 14 stores the write data wd and the inspection bit wpb. In the example of FIG. 1, the inspection bit wpb is written in the inspection bit storage unit 14a of the memory cell unit 14, and the write data wd is written in the data storage unit 14b of the memory cell unit 14. In the memory cell unit 14, for example, a plurality of memory cells (not shown) are arranged in an array. The memory cell is a storage element such as an MRAM cell, a FeRAM (Ferroelectric Random Access Memory) cell, or a DRAM (Dynamic Random Access Memory) cell.

試験モード設定回路15は、設定信号setに基づいて設定される動作状態が第1の状態のとき、仮想データ18aに対して少なくとも1ビットの値が異なる仮想データ18bを出力する。また、試験モード設定回路15は、動作状態が第2の状態のとき、仮想データ18bよりも仮想データ18aに対して値が異なるビット数が少ない仮想データ18cを出力する。設定信号setは、たとえば、図示しない制御回路または、半導体記憶装置10の外部から供給される。 The test mode setting circuit 15 outputs virtual data 18b having a value of at least one bit different from that of the virtual data 18a when the operating state set based on the setting signal set is the first state. Further, when the operating state is the second state, the test mode setting circuit 15 outputs virtual data 18c having a smaller number of bits with different values for the virtual data 18a than the virtual data 18b. The setting signal set is supplied from, for example, a control circuit (not shown) or the outside of the semiconductor storage device 10.

図1の例では、仮想データ18bは、仮想データ18aの最下位ビットが反転された4ビット値(0001)であり、仮想データ18cは、仮想データ18aと同じ4ビット値(0000)である。たとえば、意図的にエラーを発生させる場合には第1の状態が試験モード設定回路15に設定され、意図的なエラーを発生させない場合には第2の状態が試験モード設定回路15に供給される。 In the example of FIG. 1, the virtual data 18b is a 4-bit value (0001) in which the least significant bit of the virtual data 18a is inverted, and the virtual data 18c is a 4-bit value (0000) which is the same as the virtual data 18a. For example, when an error is intentionally generated, the first state is set in the test mode setting circuit 15, and when the error is not intentionally generated, the second state is supplied to the test mode setting circuit 15. ..

エラー検出回路16は、試験モード設定回路15が出力する仮想データ18bまたは仮想データ18cと、メモリセル部14から読み出されたリードデータrd(ライトデータwdに対応している)とに基づいて上記の符号の検査ビットを生成する。そして、エラー検出回路16は、その検査ビットと検査ビット記憶部14aから読み出された検査ビットrpbとに基づいてエラービットを検出し、検出結果を出力する。 The error detection circuit 16 described above is based on the virtual data 18b or virtual data 18c output by the test mode setting circuit 15 and the read data rd (corresponding to the write data wd) read from the memory cell unit 14. Generates a check bit for the sign of. Then, the error detection circuit 16 detects the error bit based on the inspection bit and the inspection bit rpb read from the inspection bit storage unit 14a, and outputs the detection result.

なお、リードデータrdは、ライトデータwdに対応しており、エラービットがなければ、ライトデータwdと同じ値である。また、検査ビットrpbは、検査ビットwpbに対応しており、エラービットがなければ、検査ビットwpbと同じ値である。 The read data rd corresponds to the write data wd, and if there is no error bit, the read data rd has the same value as the write data wd. Further, the inspection bit rpb corresponds to the inspection bit wpb, and if there is no error bit, the inspection bit rpb has the same value as the inspection bit wpb.

エラー訂正回路17は、エラー検出回路16が出力する検出結果に基づいて、エラービットのうち、リードデータrdに含まれるエラービットを訂正する。図1の例では、エラー訂正回路17は、リードデータrdを受けて、リードデータrdのエラービットを訂正したリードデータrdaを出力している。 The error correction circuit 17 corrects the error bits included in the read data rd among the error bits based on the detection result output by the error detection circuit 16. In the example of FIG. 1, the error correction circuit 17 receives the read data rd and outputs the read data rda in which the error bit of the read data rd is corrected.

なお、エラー訂正回路17は、検査ビットrpbを受けて、検査ビットrpbのエラービットを訂正し、出力してもよい。
以下、第1の実施の形態の半導体記憶装置10の動作の一例を説明する。
The error correction circuit 17 may receive the inspection bit rpb, correct the error bit of the inspection bit rpb, and output the error bit.
Hereinafter, an example of the operation of the semiconductor storage device 10 according to the first embodiment will be described.

なお、以下では、検査ビット生成回路13は、3ビットのエラー検出及び訂正可能な符号の検査ビットwpbを生成するものとして説明する。
たとえば、半導体記憶装置10に対する出荷前試験時において、設定信号setに基づいて第1の状態が試験モード設定回路15に設定される場合、エラー検出回路16には、仮想データ18bが供給される。
In the following description, the inspection bit generation circuit 13 will be described as generating the inspection bit wpb having a code that can detect and correct a 3-bit error.
For example, in the pre-shipment test for the semiconductor storage device 10, when the first state is set in the test mode setting circuit 15 based on the setting signal set, the error detection circuit 16 is supplied with virtual data 18b.

このとき、エラー検出回路16は、仮想データ18bとリードデータrdとに基づいて上記の符号の検査ビットを生成する。そして、エラー検出回路16は生成した検査ビットと、検査ビット記憶部14aから読み出された検査ビットrpbとに基づいてエラービットを検出する。 At this time, the error detection circuit 16 generates the inspection bit having the above-mentioned code based on the virtual data 18b and the read data rd. Then, the error detection circuit 16 detects an error bit based on the generated inspection bit and the inspection bit rpb read from the inspection bit storage unit 14a.

図1の例では、仮想データ18bは、仮想データ18aに対して1ビットの値が異なるため、エラー検出回路16では、少なくとも1ビットのエラービットが検出される。言い換えると、エラー検出回路16は、さらに2ビットのエラービットを検出可能となる。 In the example of FIG. 1, since the virtual data 18b has a value of 1 bit different from that of the virtual data 18a, the error detection circuit 16 detects at least 1 bit of an error bit. In other words, the error detection circuit 16 can further detect an error bit of 2 bits.

そのため、検査ビットrpbにエラービットがなく、ライトデータwdに対してリードデータrdの2ビットの値が異なる場合(2ビットエラーが発生している場合)、エラー検出回路16は、3ビットのエラービットを検出する。このとき、エラー訂正回路17は、エラー検出回路16が出力する検出結果に基づいて、リードデータrdに含まれる2ビットのエラービットの値を1から0または0から1に反転することでエラー訂正を行う。そして、エラー訂正回路17は、リードデータrdaを出力する。 Therefore, when there is no error bit in the inspection bit rpb and the 2-bit value of the read data rd is different from the write data wd (when a 2-bit error occurs), the error detection circuit 16 has a 3-bit error. Detect a bit. At this time, the error correction circuit 17 corrects the error by inverting the value of the 2-bit error bit included in the read data rd from 1 to 0 or 0 to 1 based on the detection result output by the error detection circuit 16. I do. Then, the error correction circuit 17 outputs the read data rda.

なお、図1に示すような仮想データ18bが用いられ、リードデータrdに3ビット以上のエラービットが含まれる場合、4ビット以上のエラーとなるため、エラー検出回路16ではエラービットが正常には検出されない。これによりエラービットの訂正は正常に行われず、リードデータrdaは、ライトデータwdと異なるものとなり、半導体記憶装置10の不良が検出される。 If the virtual data 18b as shown in FIG. 1 is used and the read data rd contains 3 or more error bits, an error of 4 or more bits occurs. Therefore, the error bits are normally set in the error detection circuit 16. Not detected. As a result, the error bit is not corrected normally, the read data rda is different from the write data wd, and a defect of the semiconductor storage device 10 is detected.

上記のような半導体記憶装置10の出荷前試験後に、設定信号setに基づいて第2の状態が試験モード設定回路15に設定される場合、エラー検出回路16には、仮想データ18cが供給される。 When the second state is set in the test mode setting circuit 15 based on the setting signal set after the pre-shipment test of the semiconductor storage device 10 as described above, the virtual data 18c is supplied to the error detection circuit 16. ..

このとき、エラー検出回路16は、仮想データ18cとリードデータrdとに基づいて上記の符号の検査ビットを生成する。そして、エラー検出回路16は生成した検査ビットと、検査ビット記憶部14aから読み出された検査ビットrpbとに基づいてエラービットを検出する。 At this time, the error detection circuit 16 generates the inspection bit having the above-mentioned code based on the virtual data 18c and the read data rd. Then, the error detection circuit 16 detects an error bit based on the generated inspection bit and the inspection bit rpb read from the inspection bit storage unit 14a.

図1の例では、仮想データ18cは、仮想データ18aと同じ値をもつため、エラー検出回路16では、意図的に発生させたエラービットは検出されない。言い換えると、エラー検出回路16は、3ビットのエラービットを検出可能となる。 In the example of FIG. 1, since the virtual data 18c has the same value as the virtual data 18a, the error detection circuit 16 does not detect the intentionally generated error bit. In other words, the error detection circuit 16 can detect a 3-bit error bit.

そのため、出荷前試験時に検出された2ビットのエラーに加えてさらに1ビットのエラーが発生した場合でも、エラー検出回路16は、その増加したエラービットを検出できる。たとえば、検査ビットrpbにエラービットがなく、リードデータrdに3ビットのエラービットが生じている場合、エラー訂正回路17は、エラー検出回路16が出力する検出結果に基づいて、その3ビットのエラービットの値を反転することでエラー訂正を行う。そして、エラー訂正回路17は、リードデータrdaを出力する。 Therefore, even if a 1-bit error occurs in addition to the 2-bit error detected during the pre-shipment test, the error detection circuit 16 can detect the increased error bit. For example, when the inspection bit rpb has no error bit and the read data rd has a 3-bit error bit, the error correction circuit 17 has the 3-bit error based on the detection result output by the error detection circuit 16. Error correction is performed by inverting the bit value. Then, the error correction circuit 17 outputs the read data rda.

このように、第1の実施の形態の半導体記憶装置10によれば、ライトデータwdとメモリセル部14に書き込まれない仮想データ18aとに基づいて検査ビットwpbが生成される。そして、読み出された検査ビットrpbを用いたエラー検出及び訂正時に、仮想データ18b,18cを用いて意図的なエラービット数が設定されることで、リードデータrdに対するエラーの訂正能力(検出し訂正できるエラービットの上限)を変えられる。たとえば、上記のように出荷前試験時には訂正能力を制限し、その後に訂正能力を最大にするなどの変更ができる。これにより、出荷後などに増加するエラービットの訂正が可能になる。 As described above, according to the semiconductor storage device 10 of the first embodiment, the inspection bit wpb is generated based on the write data wd and the virtual data 18a that is not written to the memory cell unit 14. Then, at the time of error detection and correction using the read inspection bit rpb, the number of intentional error bits is set using the virtual data 18b and 18c, so that the error correction capability (detection) for the read data rd is performed. The upper limit of error bits that can be corrected) can be changed. For example, as described above, changes can be made such as limiting the correction ability during the pre-shipment test and then maximizing the correction ability. This makes it possible to correct error bits that increase after shipment.

なお、上記では、意図的に1ビットエラーを発生させる仮想データ18bを用いた例を説明したが、2ビット以上のエラービットを発生させる仮想データを用いてもよい。その例については後述する。 In the above description, an example using virtual data 18b that intentionally generates a 1-bit error has been described, but virtual data that generates an error bit of 2 bits or more may be used. An example will be described later.

(第2の実施の形態)
図2は、第2の実施の形態の半導体記憶装置の一例を示す図である。
半導体記憶装置20は、ゴレイ符号を用いてエラー検出及び訂正を行うECC機能を有する。半導体記憶装置20は、データ入出力部21、仮想データ設定回路22、検査ビット生成回路23、メモリセル部24、試験モード設定回路25、エラー検出回路26、エラー訂正回路27を有する。
(Second Embodiment)
FIG. 2 is a diagram showing an example of the semiconductor storage device of the second embodiment.
The semiconductor storage device 20 has an ECC function that detects and corrects errors using the Golay code. The semiconductor storage device 20 includes a data input / output unit 21, a virtual data setting circuit 22, an inspection bit generation circuit 23, a memory cell unit 24, a test mode setting circuit 25, an error detection circuit 26, and an error correction circuit 27.

なお、図2では、メモリセル部24へのアドレスの指定を受け付ける部分や、書き込みコマンドや読み出しコマンドを受け付ける部分、アドレスに応じてメモリセルを選択する回路、書き込み回路や読み出し回路などについては、図示が省略されている。 Note that FIG. 2 shows a portion that accepts an address designation to the memory cell unit 24, a portion that accepts a write command or a read command, a circuit that selects a memory cell according to the address, a write circuit, a read circuit, and the like. Is omitted.

データ入出力部21は、メモリセル部24へ8ビット単位で書き込まれるライトデータWDを半導体記憶装置20の外部から受け、メモリセル部24から8ビット単位で読み出され、エラー訂正されたリードデータRDaを半導体記憶装置20の外部へ出力する。 The data input / output unit 21 receives the write data WD written in the memory cell unit 24 in 8-bit units from the outside of the semiconductor storage device 20, reads it from the memory cell unit 24 in 8-bit units, and corrects the error. The RDa is output to the outside of the semiconductor storage device 20.

仮想データ設定回路22は、検査ビット生成回路23に、ライトデータWDに付加される4ビットの仮想データを供給する。
検査ビット生成回路23は、8ビットのライトデータWDに対して、たとえば、上位側に4ビットの仮想データを付加した12ビットのデータに基づいて、ゴレイ符号の11ビットの検査ビットWPBを生成する。
The virtual data setting circuit 22 supplies the inspection bit generation circuit 23 with 4-bit virtual data added to the write data WD.
The inspection bit generation circuit 23 generates an 11-bit inspection bit WPB having a Golay code based on, for example, 12-bit data in which 4-bit virtual data is added to the upper side with respect to the 8-bit write data WD. ..

メモリセル部24は、ライトデータWDと、検査ビットWPBとを記憶する。図2の例では、検査ビットWPBは、メモリセル部24の検査ビット記憶部24aに書き込まれ、ライトデータWDは、メモリセル部24のデータ記憶部24bに書き込まれる。メモリセル部24には、たとえば、図示しない複数のメモリセルがアレイ状に配置されている。メモリセルは、MRAMセルや、FeRAMセル、DRAMセルなどの記憶素子である。各メモリセルは、半導体記憶装置20の図示しないアドレス端子または、図示しない制御回路から供給されるアドレスによって指定される。そして、指定されたメモリセルから図示しない読み出し回路によってデータが読み出される、または指定されたメモリセルに図示しない書き込み回路によってデータが書き込まれる。 The memory cell unit 24 stores the write data WD and the inspection bit WPB. In the example of FIG. 2, the inspection bit WPB is written in the inspection bit storage unit 24a of the memory cell unit 24, and the write data WD is written in the data storage unit 24b of the memory cell unit 24. In the memory cell unit 24, for example, a plurality of memory cells (not shown) are arranged in an array. The memory cell is a storage element such as an MRAM cell, a FeRAM cell, or a DRAM cell. Each memory cell is designated by an address terminal (not shown) of the semiconductor storage device 20 or an address supplied from a control circuit (not shown). Then, data is read from the designated memory cell by a read circuit (not shown), or data is written to the designated memory cell by a write circuit (not shown).

試験モード設定回路25は、設定信号seta,setb,setcを受ける。設定信号seta〜setcは、たとえば、図示しない制御回路または、半導体記憶装置20の外部から供給される。この設定信号seta〜setcの値に基づいて、動作状態として4つの状態(試験モード)の何れかが、試験モード設定回路25に設定される。そして、試験モード設定回路25は、設定された試験モードに対応付けられた4ビットの仮想データを出力する。 The test mode setting circuit 25 receives the setting signals seta, setb, and setc. The setting signals seta to setc are supplied from, for example, a control circuit (not shown) or the outside of the semiconductor storage device 20. Based on the values of the setting signals seta to setc, any one of the four states (test mode) as the operating state is set in the test mode setting circuit 25. Then, the test mode setting circuit 25 outputs 4-bit virtual data associated with the set test mode.

設定信号seta〜setcのそれぞれは、たとえば、0または1の1ビット値である。その場合、設定信号seta〜setcのそれぞれは、3ビットの設定信号の各ビット値に対応しているとみなすこともできる。3ビットの設定信号は、設定信号seta〜setcの値に応じた複数の値をもつ。そして、その複数の値のそれぞれは、仮想データ設定回路22が出力する仮想データに対して異なるビット数がそれぞれ異なる複数の仮想データの何れか1つに対応付けられている。 Each of the setting signals seta to setc is, for example, a 1-bit value of 0 or 1. In that case, each of the setting signals seta to setc can be considered to correspond to each bit value of the 3-bit setting signal. The 3-bit setting signal has a plurality of values according to the values of the setting signals seta to setc. Each of the plurality of values is associated with any one of the plurality of virtual data having different numbers of bits with respect to the virtual data output by the virtual data setting circuit 22.

図2には、設定信号seta〜setcによる3ビット値と仮想データとの対応関係の一例が示されている。たとえば、仮想データ設定回路22が出力する仮想データが“0000”である場合、設定信号setaが1、設定信号setb,setcが0である3ビット値は、仮想データ“0001”に対応付けられている。また、設定信号setbが1、設定信号seta,setcが0である3ビット値は、仮想データ“0011”に対応付けられている。また、設定信号setcが1、設定信号seta,setbが0である3ビット値は、仮想データ“0111”に対応付けられている。また、設定信号seta〜setcが全て0である3ビット値は、仮想データ“0000”に対応付けられている。なお、ゴレイ符号でエラー検出及び訂正が可能であるのは23ビット当たり3ビットまでであるため、試験モード設定回路25が出力する仮想データの最上位ビットは0で固定であるものとする。 FIG. 2 shows an example of the correspondence between the 3-bit value by the setting signals seta to setc and the virtual data. For example, when the virtual data output by the virtual data setting circuit 22 is “0000”, the 3-bit values in which the setting signal seta is 1 and the setting signals setb and setc are 0 are associated with the virtual data “0001”. There is. Further, a 3-bit value in which the setting signal setb is 1 and the setting signals seta and setc are 0 is associated with the virtual data “0011”. Further, a 3-bit value in which the setting signal setc is 1 and the setting signals seta and setb are 0 is associated with the virtual data “0111”. Further, the 3-bit value in which the setting signals seta to set are all 0 is associated with the virtual data "0000". Since the error can be detected and corrected by the Golay code up to 3 bits per 23 bits, it is assumed that the most significant bit of the virtual data output by the test mode setting circuit 25 is fixed at 0.

試験モード設定回路25は、上記のような4種類の3ビット値のうちの1つの値を受け、複数の仮想データのうち、その1つの値に対応付けられた仮想データを選択して出力する。 The test mode setting circuit 25 receives one of the four types of 3-bit values as described above, and selects and outputs the virtual data associated with the one value from the plurality of virtual data. ..

以下上記4つの試験モード(4種類の仮想データの何れかを出力する動作状態)を、第1試験モード、第2試験モード、第3試験モード、通常モードという。
第1試験モードは、意図的に1ビットエラーを発生させる試験モードである。第1試験モードでは、試験モード設定回路25は、仮想データ設定回路22が出力する仮想データに対して1ビットの値が異なる仮想データを出力する。
Hereinafter, the above four test modes (operating states for outputting any of the four types of virtual data) are referred to as a first test mode, a second test mode, a third test mode, and a normal mode.
The first test mode is a test mode in which a 1-bit error is intentionally generated. In the first test mode, the test mode setting circuit 25 outputs virtual data having a 1-bit value different from the virtual data output by the virtual data setting circuit 22.

第2試験モードは、意図的に2ビットエラーを発生させる試験モードである。第2試験モードでは、試験モード設定回路25は、仮想データ設定回路22が出力する仮想データに対して2ビットの値が異なる仮想データを出力する。 The second test mode is a test mode in which a 2-bit error is intentionally generated. In the second test mode, the test mode setting circuit 25 outputs virtual data having a 2-bit value different from the virtual data output by the virtual data setting circuit 22.

第3試験モードは、意図的に3ビットエラーを発生させる試験モードである。第3試験モードでは、試験モード設定回路25は、仮想データ設定回路22が出力する仮想データに対して3ビットの値が異なる仮想データを出力する。 The third test mode is a test mode in which a 3-bit error is intentionally generated. In the third test mode, the test mode setting circuit 25 outputs virtual data having a 3-bit value different from the virtual data output by the virtual data setting circuit 22.

通常モードは、意図的なビットエラーを発生させない試験モードである。通常モードでは、試験モード設定回路25は、仮想データ設定回路22が出力する仮想データと同じ値の仮想データを出力する。 The normal mode is a test mode in which an intentional bit error does not occur. In the normal mode, the test mode setting circuit 25 outputs virtual data having the same value as the virtual data output by the virtual data setting circuit 22.

たとえば、設定信号setaが1、設定信号setb,setcが0のときは、第1試験モードが設定され、設定信号setbが1、設定信号seta,setcが0のときは、第2試験モードが設定される。また、設定信号setcが1、設定信号seta,setbが0のときは、第3試験モードが設定され、設定信号seta〜setcが全て0のときは、通常モードが設定される。 For example, when the setting signal seta is 1 and the setting signals setb and setc are 0, the first test mode is set, and when the setting signal setb is 1 and the setting signals seta and setc are 0, the second test mode is set. Will be done. When the setting signal setc is 1 and the setting signals seta and setb are 0, the third test mode is set, and when the setting signals seta to setc are all 0, the normal mode is set.

エラー検出回路26は、試験モード設定回路25が出力する仮想データと、メモリセル部24から読み出されたリードデータRDとに基づいてゴレイ符号の検査ビットを生成する。そして、エラー検出回路26は、その検査ビットと検査ビット記憶部24aから読み出された検査ビットRPBとに基づいてエラービットを検出し、その検出結果に基づいてエラー信号を出力する。 The error detection circuit 26 generates a Golay code inspection bit based on the virtual data output by the test mode setting circuit 25 and the read data RD read from the memory cell unit 24. Then, the error detection circuit 26 detects an error bit based on the inspection bit and the inspection bit RPB read from the inspection bit storage unit 24a, and outputs an error signal based on the detection result.

なお、リードデータRDは、ライトデータWDに対応しており、エラービットがなければ、ライトデータWDと同じ値である。また、検査ビットRPBは、検査ビットWPBに対応しており、エラービットがなければ、検査ビットWPBと同じ値である。 The read data RD corresponds to the write data WD, and if there is no error bit, the read data RD has the same value as the write data WD. Further, the inspection bit RPB corresponds to the inspection bit WPB, and if there is no error bit, the inspection bit RPB has the same value as the inspection bit WPB.

エラー検出回路26は、シンドローム生成回路26a、シンドロームデコーダ26b、仮想データエラー検出回路26c、エラー信号出力回路26dを有する。
シンドローム生成回路26aは、8ビットのリードデータRDと試験モード設定回路25から供給される4ビットの仮想データとに基づいて、ゴレイ符号の検査ビットを生成する。そしてシンドローム生成回路26aは、生成した検査ビットと検査ビットRPBとに基づいてシンドロームを生成し、出力する。
The error detection circuit 26 includes a syndrome generation circuit 26a, a syndrome decoder 26b, a virtual data error detection circuit 26c, and an error signal output circuit 26d.
The syndrome generation circuit 26a generates a Golay code inspection bit based on the 8-bit read data RD and the 4-bit virtual data supplied from the test mode setting circuit 25. Then, the syndrome generation circuit 26a generates and outputs a syndrome based on the generated inspection bit and the inspection bit RPB.

シンドロームデコーダ26bは、シンドロームをデコードし、エラービットの検出結果を出力する。
仮想データエラー検出回路26cは、シンドロームデコーダ26bが出力するエラービットの検出結果と、設定信号seta〜setcとに基づいて、試験モード設定回路25が出力する仮想データに意図しないエラーが生じているか否かを検出する。
The syndrome decoder 26b decodes the syndrome and outputs the detection result of the error bit.
The virtual data error detection circuit 26c is based on the error bit detection result output by the syndrome decoder 26b and the setting signals seta to setc, and whether or not an unintended error has occurred in the virtual data output by the test mode setting circuit 25. Is detected.

エラー信号出力回路26dは、シンドロームデコーダ26bが出力するエラービットの検出結果と、仮想データエラー検出回路26cによる仮想データのエラーの検出結果とに基づいて、エラー信号を出力する。 The error signal output circuit 26d outputs an error signal based on the error bit detection result output by the syndrome decoder 26b and the virtual data error detection result by the virtual data error detection circuit 26c.

エラー訂正回路27は、エラー検出回路26が出力するエラー信号に基づいて、リードデータRD、検査ビットRPB、仮想データに含まれるエラービットを訂正する。図2の例では、エラー訂正回路27は、リードデータRDと検査ビットRPBと仮想データを受けて、それらのエラービットを訂正したリードデータRDa、検査ビットRPBa、仮想データVDaを出力している。なお、検査ビットRPBa、仮想データVDaは、データ入出力部21には送られない。つまり、半導体記憶装置20の外部には出力されない。 The error correction circuit 27 corrects the error bits included in the read data RD, the inspection bit RPB, and the virtual data based on the error signal output by the error detection circuit 26. In the example of FIG. 2, the error correction circuit 27 receives the read data RD, the inspection bit RPB, and the virtual data, and outputs the read data RDa, the inspection bit RPBa, and the virtual data VDa in which the error bits are corrected. The inspection bit RPBa and virtual data VDa are not sent to the data input / output unit 21. That is, it is not output to the outside of the semiconductor storage device 20.

(ゴレイ符号に用いられる11ビットのデータパターンと、検査ビットWPBの生成方法)
ゴレイ符号では、12ビットのデータの各ビットに、以下に示すような11ビットのデータパターンが対応付けられている。
(11-bit data pattern used for Golay code and method of generating inspection bit WPB)
In the Golay code, each bit of the 12-bit data is associated with an 11-bit data pattern as shown below.

図3は、12ビットのデータの各ビットに対応付けられたゴレイ符号の11ビットのデータパターンを示す図である。
たとえば、ビットD<0>には、“10001110101”の11ビットが対応付けられており、ビットD<11>には、“11000111010”の11ビットが対応付けられている。
FIG. 3 is a diagram showing an 11-bit data pattern of the Golay code associated with each bit of the 12-bit data.
For example, bit D <0> is associated with 11 bits of “100001110101”, and bit D <11> is associated with 11 bits of “11000111010”.

以下、図3のビットD<0>〜D<11>のうち、たとえば、下位8ビットであるビットD<0>〜D<7>が、第2の実施の形態の半導体記憶装置20における8ビットのライトデータWDに対応するものとする。また、図3のビットD<0>〜D<11>のうち、上位4ビットであるビットD<8>〜D<11>が、第2の実施の形態の半導体記憶装置20において、仮想データ設定回路22が出力する4ビットの仮想データに対応するものとする。 Hereinafter, among the bits D <0> to D <11> in FIG. 3, for example, the lower 8 bits D <0> to D <7> are 8 in the semiconductor storage device 20 of the second embodiment. It shall correspond to the bit write data WD. Further, among the bits D <0> to D <11> in FIG. 3, the upper four bits D <8> to D <11> are virtual data in the semiconductor storage device 20 of the second embodiment. It corresponds to the 4-bit virtual data output by the setting circuit 22.

また、ビットD<0>〜D<11>のそれぞれに対応付けられた上記の11ビットのデータパターンの各ビットは、図3に示されているように、検査ビットWPBのビットP<0>〜P<10>のそれぞれに対応付けられているものとする。 Further, as shown in FIG. 3, each bit of the above 11-bit data pattern associated with each of the bits D <0> to D <11> is the bit P <0> of the inspection bit WPB. It is assumed that they are associated with each of ~ P <10>.

検査ビットWPBのビットP<0>〜P<10>のそれぞれは、ビットD<0>〜D<11>のうち、上記11ビットのデータパターンにおいて“1”となっているビットの値を排他的論理和演算(以下XOR演算という)することで得られる。 Each of the inspection bits WPB bits P <0> to P <10> excludes the value of the bit D <0> to D <11> that is "1" in the above 11-bit data pattern. It can be obtained by performing an exclusive OR operation (hereinafter referred to as XOR operation).

たとえば、ビットP<0>の値は、ビットD<0>〜D<4>,D<7>,D<10>の値をXOR演算することで得られる。ビットP<10>の値は、ビットD<0>〜D<3>,D<6>,D<9>,D<11>の値をXOR演算することで得られる。ビットP<0>〜P<10>の何れの値も、ビットD<0>〜D<11>のうちの7つの値をXOR演算することで得られる。 For example, the value of bit P <0> can be obtained by XORing the values of bits D <0> to D <4>, D <7>, and D <10>. The value of the bit P <10> can be obtained by XORing the values of the bits D <0> to D <3>, D <6>, D <9>, and D <11>. Any value of bits P <0> to P <10> can be obtained by XORing seven values of bits D <0> to D <11>.

すなわち、検査ビット生成回路23として、7入力1出力のXOR演算を行うXOR回路を用いることで、検査ビットWPBを生成することができる。
図4は、7入力1出力のXOR演算を行うXOR回路の一例を示す図である。
That is, the inspection bit WPB can be generated by using the XOR circuit that performs the XOR calculation of 7 inputs and 1 output as the inspection bit generation circuit 23.
FIG. 4 is a diagram showing an example of an XOR circuit that performs an XOR operation with 7 inputs and 1 output.

7入力1出力のXOR演算を行うXOR回路23aは、6つの2入力1出力のXOR演算を行うXOR回路23a1,23a2,23a3,23a4,23a5,23a6により実現可能である。 The XOR circuit 23a that performs the XOR calculation of 7 inputs and 1 output can be realized by the XOR circuits 23a1, 23a2, 23a3, 23a4, 23a5, 23a6 that perform the XOR calculation of 6 2-input 1-output.

XOR回路23a1は、入力値in1と入力値in2とのXOR演算を行う。XOR回路23a2は、入力値in3と入力値in4とのXOR演算を行う。XOR回路23a3は、入力値in5と入力値in6とのXOR演算を行う。XOR回路23a4は、XOR回路23a1の出力値と、XOR回路23a2の出力値とのXOR演算を行う。XOR回路23a5は、入力値in7とXOR回路23a3の出力値とのXOR演算を行う。XOR回路23a6は、XOR回路23a4の出力値とXOR回路23a5の出力値とのXOR演算を行う。XOR回路23a6の出力値が、7入力1出力のXOR回路23aの出力値outとなる。 The XOR circuit 23a1 performs an XOR operation on the input value in1 and the input value in2. The XOR circuit 23a2 performs an XOR operation on the input value in3 and the input value in4. The XOR circuit 23a3 performs an XOR operation on the input value in5 and the input value in6. The XOR circuit 23a4 performs an XOR operation on the output value of the XOR circuit 23a1 and the output value of the XOR circuit 23a2. The XOR circuit 23a5 performs an XOR operation on the input value in7 and the output value of the XOR circuit 23a3. The XOR circuit 23a6 performs an XOR operation on the output value of the XOR circuit 23a4 and the output value of the XOR circuit 23a5. The output value of the XOR circuit 23a6 becomes the output value out of the XOR circuit 23a with 7 inputs and 1 output.

図5は、7入力1出力のXOR演算回路の各入力とデータビットと出力される検査ビットとの対応関係を示す図である。
たとえば、入力値in1〜in7として、図3に示したデータのビットD<0>〜D<4>,D<7>,D<10>の値を用いることで、出力値outとして、ビットP<0>が得られる。また、入力値in1〜in7として、図3に示したデータのビットD<0>〜D<3>,D<6>,D<9>,D<11>の値を用いることで、ビットP<10>の値が得られる。
FIG. 5 is a diagram showing the correspondence between each input of the 7-input / 1-output XOR arithmetic circuit, the data bit, and the output inspection bit.
For example, by using the values of the data bits D <0> to D <4>, D <7>, and D <10> shown in FIG. 3 as the input values in1 to in7, the bit P is used as the output value out. <0> is obtained. Further, by using the values of the data bits D <0> to D <3>, D <6>, D <9>, and D <11> shown in FIG. 3 as the input values in1 to in7, the bit P The value of <10> is obtained.

図5に示すようなビットP<0>〜P<10>を全て同時に生成するためには、11個の7入力1出力のXOR回路を用いればよい。
(シンドロームの生成方法)
図6は、12ビットのデータと11ビットの検査ビットの各ビットに対応付けられたゴレイ符号の11ビットのデータパターンを示す図である。
In order to generate all the bits P <0> to P <10> as shown in FIG. 5 at the same time, an XOR circuit having 11 7 inputs and 1 output may be used.
(Syndrome generation method)
FIG. 6 is a diagram showing an 11-bit data pattern of the Golay code associated with each bit of the 12-bit data and the 11-bit inspection bit.

ビットp<0>〜p<10>は、検査ビット記憶部24aから読み出された検査ビットRPBのビットに対応している。
たとえば、ビットp<0>には、“00000000001”の11ビットが対応付けられており、ビットp<10>には、“10000000000”の11ビットが対応付けられている。
The bits p <0> to p <10> correspond to the bits of the inspection bit RPB read from the inspection bit storage unit 24a.
For example, the bit p <0> is associated with 11 bits of “0000000000001”, and the bit p <10> is associated with 11 bits of “10000000000000”.

ビットd<0>〜d<11>は、8ビットのリードデータRDと、試験モード設定回路25から供給される4ビットの仮想データのビットである。ビットd<0>〜d<11>のうち、たとえば、下位8ビットであるビットd<0>〜d<7>がリードデータRDに対応しており、上位4ビットであるビットd<8>〜d<11>が仮想データに対応している。 The bits d <0> to d <11> are 8-bit read data RD and 4-bit virtual data bits supplied from the test mode setting circuit 25. Of the bits d <0> to d <11>, for example, the lower 8 bits d <0> to d <7> correspond to the read data RD, and the upper 4 bits d <8>. ~ D <11> corresponds to virtual data.

ビットd<0>〜d<11>のそれぞれに対応付けられているデータパターンは、図3に示したビットD<0>〜D<11>のそれぞれに対応付けられているデータパターンと同じである。 The data pattern associated with each of the bits d <0> to d <11> is the same as the data pattern associated with each of the bits D <0> to D <11> shown in FIG. is there.

さらに、ビットd<0>〜d<11>,p<0>〜p<10>のそれぞれに対応付けられた上記の11ビットのデータパターンの各ビットは、11ビットのシンドロームのビットS<0>〜S<10>のそれぞれに対応付けられている。シンドロームのビットS<0>〜S<10>のそれぞれは、ビットd<0>〜d<11>,p<0>〜p<10>のうち、上記11ビットのデータパターンにおいて“1”となっているビットの値をXOR演算することで得られる。 Further, each bit of the above 11-bit data pattern associated with each of the bits d <0> to d <11> and p <0> to p <10> is a bit S <0 of the 11-bit syndrome. > To S <10> are associated with each other. Each of the bits S <0> to S <10> of the syndrome is set to "1" in the above 11-bit data pattern among the bits d <0> to d <11> and p <0> to p <10>. It can be obtained by XORing the value of the bit that has become.

たとえば、ビットS<0>の値は、ビットd<0>〜d<4>,d<7>,d<10>,p<0>の値をXOR演算することで得られる。ビットS<10>の値は、ビットd<0>〜d<3>,d<6>,d<9>,d<11>,p<10>の値をXOR演算することで得られる。ビットS<0>〜S<10>の何れの値も、ビットd<0>〜d<11>,p<0>〜p<10>のうちの8つの値をXOR演算することで得られる。 For example, the value of bit S <0> can be obtained by XORing the values of bits d <0> to d <4>, d <7>, d <10>, and p <0>. The value of bit S <10> can be obtained by XORing the values of bits d <0> to d <3>, d <6>, d <9>, d <11>, and p <10>. Any value of bits S <0> to S <10> can be obtained by XORing eight values of bits d <0> to d <11> and p <0> to p <10>. ..

すなわち、シンドローム生成回路26aとして、8入力1出力のXOR演算を行うXOR回路を用いることで、シンドロームを生成することができる。
図7は、8入力1出力のXOR演算を行うXOR回路の一例を示す図である。
That is, the syndrome can be generated by using the XOR circuit that performs the XOR operation of 8 inputs and 1 output as the syndrome generation circuit 26a.
FIG. 7 is a diagram showing an example of an XOR circuit that performs an XOR operation with 8 inputs and 1 output.

8入力1出力のXOR演算を行うXOR回路26a1は、7入力1出力のXOR演算を行うXOR回路26a2と、2入力1出力のXOR演算を行うXOR回路26a3により実現可能である。 The XOR circuit 26a1 that performs the XOR calculation of 8 inputs and 1 output can be realized by the XOR circuit 26a2 that performs the XOR calculation of 7 inputs and 1 output and the XOR circuit 26a3 that performs the XOR calculation of 2 inputs and 1 output.

XOR回路26a2は、入力値IN1,IN2,IN3,IN4,IN5,IN6,IN7のXOR演算を行う。XOR回路26a2の出力は、リードデータRDに基づいて生成された1ビットの検査ビットPBに相当する。XOR回路26a2の回路構成は、図4に示したXOR回路23aと同じである。 The XOR circuit 26a2 performs an XOR operation on the input values IN1, IN2, IN3, IN4, IN5, IN6, IN7. The output of the XOR circuit 26a2 corresponds to a 1-bit inspection bit PB generated based on the read data RD. The circuit configuration of the XOR circuit 26a2 is the same as that of the XOR circuit 23a shown in FIG.

XOR回路26a3は、入力値IN0と検査ビットPBとのXOR演算を行う。XOR回路26a3の出力が、8入力1出力のXOR回路26a1の出力値OUT(すなわちシンドロームの1ビット)となる。 The XOR circuit 26a3 performs an XOR operation between the input value IN0 and the inspection bit PB. The output of the XOR circuit 26a3 becomes the output value OUT (that is, 1 bit of the syndrome) of the XOR circuit 26a1 having 8 inputs and 1 output.

図8は、8入力1出力のXOR演算回路の各入力とリードデータ及び読み出された検査ビットの各ビットと、出力されるシンドロームの各ビットとの対応関係を示す図である。
たとえば、入力値IN0〜IN7として、図6に示したビットp<0>,d<0>〜d<4>,d<7>,d<10>の値を用いることで、出力値OUTとして、ビットS<0>が得られる。また、入力値IN0〜IN7として、図6に示したビットp<10>,d<0>〜d<3>,d<6>,d<9>,d<11>の値を用いることで、ビットS<10>の値が得られる。
FIG. 8 is a diagram showing the correspondence between each input of the XOR arithmetic circuit having 8 inputs and 1 output, each bit of the read data and the read inspection bit, and each bit of the output syndrome.
For example, by using the values of bits p <0>, d <0> to d <4>, d <7>, and d <10> shown in FIG. 6 as the input values IN0 to IN7, the output value OUT can be set. , Bit S <0> is obtained. Further, by using the values of bits p <10>, d <0> to d <3>, d <6>, d <9>, and d <11> shown in FIG. 6 as the input values IN0 to IN7. , The value of bit S <10> is obtained.

図8に示すようなビットS<0>〜S<10>を全て同時に生成するためには、11個の8入力1出力のXOR回路を用いればよい。
(シンドロームデコーダ26bによるエラービットの検出方法)
シンドローム生成回路26aが出力する11ビットのシンドロームによって、2048通りのエラービットの検出結果が表せる。シンドロームデコーダ26bは、シンドロームをデコードし、エラービットの検出結果を出力する。
In order to generate all the bits S <0> to S <10> as shown in FIG. 8 at the same time, 11 XOR circuits with 8 inputs and 1 output may be used.
(Method of detecting error bit by syndrome decoder 26b)
The 11-bit syndrome output by the syndrome generation circuit 26a can represent the detection results of 2048 error bits. The syndrome decoder 26b decodes the syndrome and outputs the detection result of the error bit.

図9は、シンドロームに基づくデコード信号とエラービットとの対応関係を示す図である。
シンドロームデコーダ26bは、11ビットのシンドロームに基づいて、デコード信号SO<*>を生成する。“*”は、11ビットのシンドロームを10進数で表した値である。たとえば、ビットS<0>〜S<10>が全て0であれば、*=0であり、ビットS<0>が1でビットS<1>〜S<10>が0であれば、*=1であり、ビットS<0>〜S<10>が全て1であれば、*=2047である。
FIG. 9 is a diagram showing the correspondence between the decoded signal based on the syndrome and the error bit.
The syndrome decoder 26b generates a decoded signal SO <<> based on the 11-bit syndrome. “*” Is a decimal value representing the 11-bit syndrome. For example, if bits S <0> to S <10> are all 0, then * = 0, and if bits S <0> are 1 and bits S <1> to S <10> are 0, then *. If = 1 and the bits S <0> to S <10> are all 1, then * = 2047.

シンドロームデコーダ26bは、シンドロームに基づいて、何れか1つが1となり、他が0となるデコード信号SO<0>〜SO<2047>を生成する。そしてシンドロームデコーダ26bは、デコード信号SO<0>〜SO<2047>に基づいて、エラービットの検出結果を出力する。図9において、ビットd<0>〜d<11>,p<0>〜p<10>のうち、黒い四角のマークが付されたビットが、デコード信号SO<0>〜SO<2047>が示すエラービットである。 The syndrome decoder 26b generates decoded signals SO <0> to SO <2047> in which one of them becomes 1 and the other becomes 0 based on the syndrome. Then, the syndrome decoder 26b outputs the detection result of the error bit based on the decoded signals SO <0> to SO <2047>. In FIG. 9, among the bits d <0> to d <11> and p <0> to p <10>, the bits marked with black squares have the decoded signals SO <0> to SO <2047>. Indicates the error bit.

たとえば、デコード信号SO<15>が1となる場合、ビットd<3>,d<6>,p<5>がエラービットであることが示される。また、デコード信号SO<0>が1となる場合、エラービットがないことが示される。 For example, when the decode signal SO <15> is 1, it is indicated that the bits d <3>, d <6>, and p <5> are error bits. When the decode signal SO <0> is 1, it is indicated that there is no error bit.

図10は、シンドロームデコーダの一例を示す図である。図10では、シンドロームデコーダ26bの一部が示されている。
シンドロームデコーダ26bは、デコード信号生成回路30、複数のトランジスタ(たとえば、トランジスタ31a,31b,31c,31d,31e,31f,31g,31h,31i,31j,31k,31l,31m,31n,31o)を有する。さらにシンドロームデコーダ26bは、wired−OR型の信号バス32a1〜32a23、エラー訂正フラグ出力回路33a1〜33a23を有する。
FIG. 10 is a diagram showing an example of a syndrome decoder. In FIG. 10, a part of the syndrome decoder 26b is shown.
The syndrome decoder 26b has a decode signal generation circuit 30, a plurality of transistors (for example, transistors 31a, 31b, 31c, 31d, 31e, 31f, 31g, 31h, 31i, 31j, 31k, 31l, 31m, 31n, 31o). .. Further, the syndrome decoder 26b has a wire-OR type signal bus 32a1 to 32a23 and an error correction flag output circuit 33a1 to 33a23.

デコード信号生成回路30は、タイミング信号time(たとえば、クロック信号)が1になるタイミングで、シンドロームのビットS<0>〜S<10>の値に基づいて、デコード信号SO<0>〜SO<2047>を出力する論理回路である。なお、デコード信号生成回路30は、タイミング信号timeが0になるタイミングで、デコード信号SO<0>〜SO<2047>を全て0にリセットする。 The decode signal generation circuit 30 determines the decode signals SO <0> to SO <based on the values of the syndrome bits S <0> to S <10> at the timing when the timing signal time (for example, the clock signal) becomes 1. This is a logic circuit that outputs 2047>. The decode signal generation circuit 30 resets all the decode signals SO <0> to SO <2047> to 0 at the timing when the timing signal time becomes 0.

複数のトランジスタは、nチャネル型MOSFET(Metal-Oxide Semiconductor Field Effect Transistor)である。複数のトランジスタのそれぞれのゲートには、デコード信号SO<1>〜SO<2047>の何れかが供給され、複数のトランジスタのそれぞれのドレインは、信号バス32a1〜32a23の何れかに接続されている。また複数のトランジスタのそれぞれのソースは接地されている(基準電位(たとえば、0V)となっている)。 The plurality of transistors are n-channel MOSFETs (Metal-Oxide Semiconductor Field Effect Transistors). One of the decoded signals SO <1> to SO <2047> is supplied to each gate of the plurality of transistors, and the drain of each of the plurality of transistors is connected to any of the signal buses 32a1 to 22a23. .. Further, each source of the plurality of transistors is grounded (at a reference potential (for example, 0V)).

たとえば、トランジスタ31aのゲートには、デコード信号SO<1>が供給され、トランジスタ31aのドレインは、信号バス32a13に接続されている。また、トランジスタ31f,31gのゲートには、デコード信号SO<5>が供給され、トランジスタ31fのドレインは、信号バス32a13に接続され、トランジスタ31gのドレインは、信号バス32a15に接続されている。 For example, the decode signal SO <1> is supplied to the gate of the transistor 31a, and the drain of the transistor 31a is connected to the signal bus 32a13. Further, the decoding signal SO <5> is supplied to the gates of the transistors 31f and 31g, the drain of the transistor 31f is connected to the signal bus 32a13, and the drain of the transistor 31g is connected to the signal bus 32a15.

信号バス32a1〜32a23のそれぞれは、エラー訂正フラグ出力回路33a1〜33a23のうち対応する1つに接続されている。たとえば、信号バス32a1は、エラー訂正フラグ出力回路33a1に接続され、信号バス32a23は、エラー訂正フラグ出力回路33a23に接続されている。以下信号バス32a1〜32a23を伝搬する信号を信号ebd<0>〜ebd<11>,ebp<0>〜ebp<10>という。 Each of the signal buses 32a1 to 22a23 is connected to the corresponding one of the error correction flag output circuits 33a1 to 23a23. For example, the signal bus 32a1 is connected to the error correction flag output circuit 33a1, and the signal bus 32a23 is connected to the error correction flag output circuit 33a23. Hereinafter, the signals propagating on the signal buses 32a1 to 22a23 are referred to as signals edb <0> to ebd <11> and ebp <0> to ebp <10>.

エラー訂正フラグ出力回路33a1〜33a23は、信号ebd<0>〜ebd<11>,ebp<0>〜ebp<10>に基づいて、エラービットの検出結果として、エラー訂正フラグを出力する。 The error correction flag output circuits 33a1 to 33a23 output an error correction flag as an error bit detection result based on the signals ebd <0> to ebd <11> and ebp <0> to ebp <10>.

たとえば、エラー訂正フラグ出力回路33a23は、pチャネル型MOSFETであるトランジスタ33b,33c、インバータ回路33dを有する。なお、トランジスタ33cは、弱トランジスタである。 For example, the error correction flag output circuit 33a23 includes transistors 33b and 33c, which are p-channel MOSFETs, and an inverter circuit 33d. The transistor 33c is a weak transistor.

トランジスタ33b,33cのドレイン及びインバータ回路33dの入力端子は、信号バス32a23に接続されている。トランジスタ33b,33cのソースには、電源電圧が供給される。トランジスタ33bのゲートには、リセット信号rstbが、たとえば、図示しない制御回路から供給され、トランジスタ33cのゲート及びインバータ回路33dの出力端子の電位が、エラー訂正フラグerrpa<10>となる。 The drain of the transistors 33b and 33c and the input terminal of the inverter circuit 33d are connected to the signal bus 32a23. A power supply voltage is supplied to the sources of the transistors 33b and 33c. A reset signal rstb is supplied to the gate of the transistor 33b from, for example, a control circuit (not shown), and the potentials of the gate of the transistor 33c and the output terminal of the inverter circuit 33d become the error correction flag errpa <10>.

図10では図示が省略されているが、エラー訂正フラグ出力回路33a1〜33a23のうち、エラー訂正フラグ出力回路33a23以外についても同様の回路構成となっており、エラー訂正フラグを出力する。以下、エラー訂正フラグ出力回路33a1〜33a23の出力をエラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<10>という。エラー訂正フラグerrda<0>〜errda<11>は、信号ebd<0>〜ebd<11>に基づいて生成され、エラー訂正フラグerrpa<0>〜errpa<10>は、信号ebp<0>〜ebp<10>に基づいて生成される。 Although not shown in FIG. 10, the same circuit configuration is used for the error correction flag output circuits 33a1 to 33a23 other than the error correction flag output circuits 33a23, and the error correction flag is output. Hereinafter, the outputs of the error correction flag output circuits 33a1 to 33a23 are referred to as error correction flags errda <0> to errda <11> and errpa <0> to errpa <10>. The error correction flags errda <0> to errda <11> are generated based on the signals ebd <0> to ebd <11>, and the error correction flags errpa <0> to errpa <10> are the signals ebp <0> to errpa <10>. Generated based on ebp <10>.

なお、エラー訂正フラグerrda<0>〜errda<11>は、リードデータRD及び試験モード設定回路25から供給される仮想データの、ビットd<0>〜d<11>のエラーの有無を示すものである。エラー訂正フラグerrpa<0>〜errpa<10>は、検査ビットRPBのビットp<0>〜p<10>のエラーの有無を示すものである。リセット信号rstbの電位がH(High)レベルのとき、エラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<10>のうち、(電位が)Hレベルになるエラー訂正フラグに対応するリードデータRD、仮想データまたは検査ビットRPBのビットがエラービットである。 The error correction flags errda <0> to errda <11> indicate the presence or absence of an error in bits d <0> to d <11> of the read data RD and the virtual data supplied from the test mode setting circuit 25. Is. The error correction flags errpa <0> to errpa <10> indicate the presence or absence of an error in bits p <0> to p <10> of the inspection bit RPB. When the potential of the reset signal rstb is H (High) level, the error correction flag (potential) becomes H level among the error correction flags errda <0> to errda <11> and errpa <0> to errpa <10>. The bit of the read data RD, virtual data or inspection bit RPB corresponding to is an error bit.

たとえば、エラー訂正フラグerrda<5>が、Hレベルである場合、リードデータRDのビットd<5>がエラービットである。
なお、デコード信号SO<0>は、エラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<10>の生成には用いられないが、エラービットの有無を示すために、半導体記憶装置20の外部に出力されるようにしてもよい。
For example, when the error correction flag errda <5> is H level, the bit d <5> of the read data RD is an error bit.
The decode signal SO <0> is not used to generate the error correction flags errda <0> to errda <11> and errpa <0> to errpa <10>, but to indicate the presence or absence of an error bit, It may be output to the outside of the semiconductor storage device 20.

図11は、2ビットエラーが生じている場合のシンドロームデコーダの動作の一例を示すタイミングチャートである。図11には、検査ビットRPBのビットp<0>,p<2>の2ビットにエラーが生じている場合のシンドロームデコーダの動作の一例が示されている。 FIG. 11 is a timing chart showing an example of the operation of the syndrome decoder when a 2-bit error occurs. FIG. 11 shows an example of the operation of the syndrome decoder when an error occurs in the two bits p <0> and p <2> of the inspection bit RPB.

図11には、シンドロームのビットS<0>〜S<10>、リセット信号rstb、タイミング信号time、デコード信号SO<0>〜SO<2047>の時間変化の一例が示されている。さらに、図11には、信号ebd<0>〜ebd<11>,ebp<0>〜ebp<10>、エラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<10>の時間変化の一例が示されている。 FIG. 11 shows an example of time changes of the syndrome bits S <0> to S <10>, the reset signal rstb, the timing signal time, and the decode signals SO <0> to SO <2047>. Further, in FIG. 11, signals ebd <0> to ebd <11>, ebp <0> to ebp <10>, error correction flags errda <0> to errda <11>, errpa <0> to errpa <10>. An example of the time change of is shown.

初期状態ではリセット信号rstbは、(電位が)L(Low)レベルであり、図10に示したトランジスタ33bがオンし、信号ebp<10>は(電位が)Hレベル、エラー訂正フラグerrpa<10>はLレベルである。同様に信号ebd<0>〜ebd<10>,ebp<0>〜ebp<9>はHレベルであり、エラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<9>はLレベルである。 In the initial state, the reset signal rstb is at the (potential) L (Low) level, the transistor 33b shown in FIG. 10 is turned on, the signal ebp <10> is at the (potential) H level, and the error correction flag errpa <10. > Is the L level. Similarly, the signals ebd <0> to ebd <10> and ebp <0> to ebp <9> are H levels, and the error correction flags errda <0> to errda <11> and errpa <0> to errpa <9>. Is the L level.

なお、たとえば、Hレベルは電源電圧の電位レベルであり、Lレベルは基準電位(たとえば、接地電位)である。Hレベルは、“1”に対応し、Lレベルは、“0”に対応する。 For example, the H level is the potential level of the power supply voltage, and the L level is the reference potential (for example, the ground potential). The H level corresponds to "1" and the L level corresponds to "0".

タイミングt1において、メモリセル部24からリードデータRDと検査ビットRPBが読み出された後、シンドローム生成回路26aでシンドロームが生成される(タイミングt2)。図11の例では、シンドロームのビットS<0>〜S<10>のうち、ビットS<0>,S<2>の値がHレベル(つまり“1”)で、他のビットの値はLレベル(つまり“0”)となっている。 At the timing t1, after the read data RD and the inspection bit RPB are read from the memory cell unit 24, the syndrome is generated by the syndrome generation circuit 26a (timing t2). In the example of FIG. 11, among the bits S <0> to S <10> of the syndrome, the values of the bits S <0> and S <2> are H level (that is, “1”), and the values of the other bits are It is the L level (that is, "0").

タイミングt3においてタイミング信号timeがHレベルに立ち上がっている。これによって、シンドロームデコーダ26bのデコード信号生成回路30は、ビットS<0>〜S<10>の値に基づいて、デコード信号SO<0>〜SO<2047>を生成する。図11の例では、タイミングt4において、デコード信号SO<5>だけがHレベルとなり、他はLレベルとなるデコード信号SO<0>〜SO<2047>が生成されている。なお、タイミングt3では、リセット信号rstbもHレベルに立ち上がっている。 At the timing t3, the timing signal time rises to the H level. As a result, the decode signal generation circuit 30 of the syndrome decoder 26b generates the decode signals SO <0> to SO <2047> based on the values of the bits S <0> to S <10>. In the example of FIG. 11, at the timing t4, only the decoded signal SO <5> has the H level, and the other decoded signals SO <0> to SO <2047> have the L level. At the timing t3, the reset signal rstb also rises to the H level.

デコード信号SO<5>がHレベルとなるとき、図10に示したシンドロームデコーダ26bにおいて、トランジスタ31f,31gがオンする。したがって、信号バス32a13,32a15が基準電位となり、信号ebp<0>,ebp<2>がLレベルとなる(タイミングt5)。そして、エラー訂正フラグerrpa<0>,errpa<2>がHレベルとなる(タイミングt6)。信号ebp<0>,ebp<2>は、検査ビットRPBのビットp<0>,p<2>に対応している。したがって、シンドロームデコーダ26bから、検査ビットRPBのビットp<0>,p<2>がエラービットであることを示す検出結果が出力されることになる。 When the decode signal SO <5> reaches the H level, the transistors 31f and 31g are turned on in the syndrome decoder 26b shown in FIG. Therefore, the signal buses 32a13 and 32a15 become the reference potential, and the signals ebp <0> and ebp <2> become the L level (timing t5). Then, the error correction flags errapa <0> and errpa <2> become the H level (timing t6). The signals ebp <0> and ebp <2> correspond to bits p <0> and p <2> of the inspection bit RPB. Therefore, the syndrome decoder 26b outputs a detection result indicating that the bits p <0> and p <2> of the inspection bit RPB are error bits.

タイミングt7において、タイミング信号timeがLレベルに立ち下がっている。これによって、デコード信号SO<5>がLレベルになる(タイミングt8)。また、タイミングt9において、リセット信号rstbがLレベルに立ち下がっている。これによって、信号ebp<0>,ebp<2>がHレベルに戻り(タイミングt10)、エラー訂正フラグerrpa<0>,errpa<2>はLレベルに戻る(タイミングt11)。 At the timing t7, the timing signal time falls to the L level. As a result, the decoded signal SO <5> becomes the L level (timing t8). Further, at the timing t9, the reset signal rstb drops to the L level. As a result, the signals ebp <0> and ebp <2> return to the H level (timing t10), and the error correction flags errapa <0> and errapa <2> return to the L level (timing t11).

図12は、4ビットエラーが生じている場合のシンドロームデコーダの動作の一例を示すタイミングチャートである。図12には、検査ビットRPBのビットp<4>,p<5>,p<9>,p<10>の4ビットにエラーが生じている場合の、図11に示した各信号や値の時間変化の一例が示されている。 FIG. 12 is a timing chart showing an example of the operation of the syndrome decoder when a 4-bit error occurs. FIG. 12 shows each signal and value shown in FIG. 11 when an error occurs in 4 bits of the inspection bit RPB bits p <4>, p <5>, p <9>, and p <10>. An example of the time change of is shown.

初期状態ではリセット信号rstbは、Lレベルであり、図11に示したタイミングチャートと同様に、信号ebd<0>〜ebd<10>,ebp<0>〜ebp<10>はHレベルであり、エラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<10>はLレベルである。 In the initial state, the reset signal rstb is at the L level, and the signals ebd <0> to ebd <10> and ebp <0> to ebp <10> are at the H level, as in the timing chart shown in FIG. The error correction flags errda <0> to errda <11> and errpa <0> to errpa <10> are L levels.

タイミングt20において、メモリセル部24からリードデータRDと検査ビットRPBが読み出された後、シンドローム生成回路26aでシンドロームが生成される(タイミングt21)。図12の例では、シンドロームのビットS<0>〜S<10>のうち、ビットS<10>,S<9>(“S<10:9>”と表記されている)と、ビットS<5>,S<4>(“S<5:4>”と表記されている)の値がHレベル(つまり“1”)となっている。他のビット(“S<8:6>”、“S<3:0>”と表記されている)の値はLレベル(つまり“0”)となっている。 At the timing t20, after the read data RD and the inspection bit RPB are read from the memory cell unit 24, the syndrome is generated by the syndrome generation circuit 26a (timing t21). In the example of FIG. 12, among the bits S <0> to S <10> of the syndrome, the bits S <10> and S <9> (denoted as “S <10: 9>”) and the bit S The values of <5> and S <4> (denoted as "S <5: 4>") are the H level (that is, "1"). The values of the other bits (denoted as "S <8: 6>" and "S <3: 0>") are at the L level (that is, "0").

タイミングt22においてタイミング信号timeがHレベルに立ち上がっている。これによって、シンドロームデコーダ26bのデコード信号生成回路30は、ビットS<0>〜S<10>の値に基づいて、デコード信号SO<0>〜SO<2047>を生成する。図12の例では、タイミングt23において、デコード信号SO<1584>だけがHレベルとなり、他はLレベルとなるデコード信号SO<0>〜SO<2047>が生成されている。なお、タイミングt22では、リセット信号rstbもHレベルに立ち上がっている。 At the timing t22, the timing signal time rises to the H level. As a result, the decode signal generation circuit 30 of the syndrome decoder 26b generates the decode signals SO <0> to SO <2047> based on the values of the bits S <0> to S <10>. In the example of FIG. 12, at the timing t23, only the decoded signal SO <1584> has the H level, and the other decoded signals SO <0> to SO <2047> have the L level. At the timing t22, the reset signal rstb also rises to the H level.

デコード信号SO<1584>がHレベルとなるとき、図10に示したシンドロームデコーダ26bにおいて、デコード信号SO<1584>に対応した複数のトランジスタ(図示せず)がオンする。これにより、信号ebp<1>,ebp<3>,ebd<11>がLレベルとなる(タイミングt24)。そして、エラー訂正フラグerrpa<1>,errpa<3>,errda<11>がHレベルとなる(タイミングt25)。信号ebp<1>,ebp<3>は、検査ビットRPBのビットp<1>,p<3>に対応している。また、信号ebd<11>は、4ビットの仮想データの最上位ビットであるビットd<11>に対応している。 When the decode signal SO <1584> reaches the H level, a plurality of transistors (not shown) corresponding to the decode signal SO <1584> are turned on in the syndrome decoder 26b shown in FIG. As a result, the signals ebp <1>, ebp <3>, and ebd <11> become the L level (timing t24). Then, the error correction flags errpa <1>, errpa <3>, and errda <11> become the H level (timing t25). The signals ebp <1> and ebp <3> correspond to bits p <1> and p <3> of the inspection bit RPB. Further, the signal ebd <11> corresponds to the bit d <11>, which is the most significant bit of the 4-bit virtual data.

したがって、シンドロームデコーダ26bから、検査ビットRPBのビットp<1>,p<3>、仮想データの最上位ビットであるビットd<11>がエラービットであることを示す検出結果が出力されることになる。 Therefore, the syndrome decoder 26b outputs a detection result indicating that the inspection bits RPB bits p <1> and p <3> and the most significant bit d <11> of the virtual data are error bits. become.

この場合、エラー訂正回路27では、実際にエラーが生じている検査ビットRPBのビットp<4>,p<5>,p<9>,p<10>の4ビットは訂正されず、エラー訂正回路27が誤訂正するビットp<1>,p<3>,d<11>がエラーとして加わることになる。ビットd<11>は仮想データのビットであるため、外部には出力されない。 In this case, in the error correction circuit 27, the 4 bits of the inspection bit RPB bit p <4>, p <5>, p <9>, and p <10> in which the error actually occurs are not corrected, and the error is corrected. Bits p <1>, p <3>, and d <11> that the circuit 27 erroneously corrects are added as an error. Since the bit d <11> is a bit of virtual data, it is not output to the outside.

このような4ビットエラーの発生を半導体記憶装置20の外部に通知するために、後述するような仮想データエラー検出回路26cとエラー信号出力回路26dが用いられる。 なお、図12のタイミングt26において、タイミング信号timeがLレベルに立ち下がっている。これによって、デコード信号SO<1584>がLレベルになる(タイミングt27)。また、タイミングt28において、リセット信号rstbがLレベルに立ち下がっている。これによって、信号ebp<1>,ebp<3>,ebd<11>がHレベルに戻り(タイミングt29)、エラー訂正フラグerrpa<1>,errpa<3>,errda<11>はLレベルに戻る(タイミングt30)。 In order to notify the occurrence of such a 4-bit error to the outside of the semiconductor storage device 20, a virtual data error detection circuit 26c and an error signal output circuit 26d as described later are used. At the timing t26 of FIG. 12, the timing signal time has dropped to the L level. As a result, the decoded signal SO <1584> becomes L level (timing t27). Further, at the timing t28, the reset signal rstb drops to the L level. As a result, the signals ebp <1>, ebp <3>, and ebd <11> return to the H level (timing t29), and the error correction flags errapa <1>, errpa <3>, and errda <11> return to the L level. (Timing t30).

(仮想データエラー検出回路26cとエラー信号出力回路26dの一例)
図13は、仮想データエラー検出回路とエラー信号出力回路の一例を示す図である。
なお、図13の仮想データエラー検出回路26cでは、設定信号setaが1(Hレベル)、設定信号setb,setcが0(Lレベル)のときは、第1試験モードが設定されるものとしている。また、設定信号setbが1、設定信号seta,setcが0のときは、第2試験モードが設定されるものとしている。また、設定信号setcが1、設定信号seta,setbが0のときは、第3試験モードが設定され、設定信号seta〜setcが全て0のときは、通常モードが設定されるものとしている。
(Example of virtual data error detection circuit 26c and error signal output circuit 26d)
FIG. 13 is a diagram showing an example of a virtual data error detection circuit and an error signal output circuit.
In the virtual data error detection circuit 26c of FIG. 13, when the setting signal seta is 1 (H level) and the setting signals setb and setc are 0 (L level), the first test mode is set. Further, when the setting signal setb is 1 and the setting signals seta and set are 0, the second test mode is set. Further, when the setting signal setc is 1 and the setting signals seta and setb are 0, the third test mode is set, and when the setting signals seta to set are all 0, the normal mode is set.

また、図13の仮想データエラー検出回路26cでは、仮想データ設定回路22からライトデータWDに付加される4ビットデータが“0000”、第1試験モードで試験モード設定回路25が出力する仮想データが“0001”であるものとしている。また、第2試験モードで試験モード設定回路25が出力する仮想データが“0011”、第3試験モードで試験モード設定回路25が出力する仮想データが“0111”、通常モードで試験モード設定回路25が出力する仮想データが“0000”であるものとしている。ゴレイ符号でエラー検出及び訂正が可能であるのは23ビット当たり3ビットまでであるため、試験モード設定回路25が出力する仮想データの最上位ビットは0(Lレベル)で固定であるものとしている。 Further, in the virtual data error detection circuit 26c of FIG. 13, the 4-bit data added to the write data WD from the virtual data setting circuit 22 is “0000”, and the virtual data output by the test mode setting circuit 25 in the first test mode is It is assumed to be "0001". Further, the virtual data output by the test mode setting circuit 25 in the second test mode is "0011", the virtual data output by the test mode setting circuit 25 in the third test mode is "0111", and the test mode setting circuit 25 in the normal mode. It is assumed that the virtual data output by is "0000". Since error detection and correction is possible with the Golay code up to 3 bits per 23 bits, it is assumed that the most significant bit of the virtual data output by the test mode setting circuit 25 is fixed at 0 (L level). ..

仮想データエラー検出回路26cは、インバータ回路26c1,26c2,26c3,26c4、NAND回路26c5,26c6,26c7,26c8,26c9,26c10,26c11,26c12を有する。さらに、仮想データエラー検出回路26cは、NOR回路26c13,26c14,26c15,26c16,26c17,26c18を有する。 The virtual data error detection circuit 26c has an inverter circuit 26c1,26c2,26c3,26c4, a NAND circuit 26c5,26c6,26c7,26c8,26c9,26c10, 26c11,26c12. Further, the virtual data error detection circuit 26c has NOR circuits 26c13, 26c14, 26c15, 26c16, 26c17, 26c18.

NOR回路26c13の3つの入力端子には設定信号seta〜setcが供給される。NOR回路26c13の出力端子は、NAND回路26c5の一方の入力端子に接続されている。NAND回路26c5の他方の入力端子には、エラー訂正フラグerrda<11>がインバータ回路26c4を介して供給される。NAND回路26c6の3つの入力端子の1つ目には、エラー訂正フラグerrda<10>がインバータ回路26c3を介して供給され、2つ目には、エラー訂正フラグerrda<9>がインバータ回路26c2を介して供給される。また、3つ目には、エラー訂正フラグerrda<8>がインバータ回路26c1を介して供給される。 The setting signals seta to setc are supplied to the three input terminals of the NOR circuit 26c13. The output terminal of the NOR circuit 26c13 is connected to one input terminal of the NAND circuit 26c5. An error correction flag errda <11> is supplied to the other input terminal of the NAND circuit 26c5 via the inverter circuit 26c4. The error correction flag errda <10> is supplied to the first of the three input terminals of the NAND circuit 26c6 via the inverter circuit 26c3, and the error correction flag errda <9> provides the inverter circuit 26c2 to the second. Supplied through. Thirdly, the error correction flag errda <8> is supplied via the inverter circuit 26c1.

NAND回路26c7の一方の入力端子には、設定信号setaが供給され、他方の入力端子には、エラー訂正フラグerrda<11>がインバータ回路26c4を介して供給される。NAND回路26c8の3つの入力端子の1つ目には、エラー訂正フラグerrda<10>がインバータ回路26c3を介して供給され、2つ目には、エラー訂正フラグerrda<9>がインバータ回路26c2を介して供給される。また、3つ目には、エラー訂正フラグerrda<8>が供給される。 The setting signal seta is supplied to one input terminal of the NAND circuit 26c7, and the error correction flag errda <11> is supplied to the other input terminal via the inverter circuit 26c4. The error correction flag errda <10> is supplied to the first of the three input terminals of the NAND circuit 26c8 via the inverter circuit 26c3, and the error correction flag errda <9> supplies the inverter circuit 26c2 to the second. Supplied through. Thirdly, the error correction flag errda <8> is supplied.

NAND回路26c9の一方の入力端子には、設定信号setbが供給され、他方の入力端子には、エラー訂正フラグerrda<11>がインバータ回路26c4を介して供給される。NAND回路26c10の3つの入力端子の1つ目には、エラー訂正フラグerrda<10>がインバータ回路26c3を介して供給され、2つ目には、エラー訂正フラグerrda<9>が供給される。また、3つ目には、エラー訂正フラグerrda<8>が供給される。 The setting signal setb is supplied to one input terminal of the NAND circuit 26c9, and the error correction flag errda <11> is supplied to the other input terminal via the inverter circuit 26c4. The error correction flag errda <10> is supplied to the first of the three input terminals of the NAND circuit 26c10 via the inverter circuit 26c3, and the error correction flag errda <9> is supplied to the second. Thirdly, the error correction flag errda <8> is supplied.

NAND回路26c11の一方の入力端子には、設定信号setcが供給され、他方の入力端子には、エラー訂正フラグerrda<11>がインバータ回路26c4を介して供給される。NAND回路26c12の3つの入力端子の1つ目には、エラー訂正フラグerrda<10>が供給され、2つ目には、エラー訂正フラグerrda<9>が供給され、3つ目には、エラー訂正フラグerrda<8>が供給される。 The setting signal setc is supplied to one input terminal of the NAND circuit 26c11, and the error correction flag errda <11> is supplied to the other input terminal via the inverter circuit 26c4. The error correction flag errda <10> is supplied to the first of the three input terminals of the NAND circuit 26c12, the error correction flag errda <9> is supplied to the second, and the error is supplied to the third. The correction flag errda <8> is supplied.

NOR回路26c14の一方の入力端子は、NAND回路26c5の出力端子に接続されており、他方の入力端子は、NAND回路26c6の出力端子に接続されている。NOR回路26c15の一方の入力端子は、NAND回路26c7の出力端子に接続されており、他方の入力端子は、NAND回路26c8の出力端子に接続されている。NOR回路26c16の一方の入力端子は、NAND回路26c9の出力端子に接続されており、他方の入力端子は、NAND回路26c10の出力端子に接続されている。NOR回路26c17の一方の入力端子は、NAND回路26c11の出力端子に接続されており、他方の入力端子は、NAND回路26c12の出力端子に接続されている。 One input terminal of the NOR circuit 26c14 is connected to the output terminal of the NAND circuit 26c5, and the other input terminal is connected to the output terminal of the NAND circuit 26c6. One input terminal of the NOR circuit 26c15 is connected to the output terminal of the NAND circuit 26c7, and the other input terminal is connected to the output terminal of the NAND circuit 26c8. One input terminal of the NOR circuit 26c16 is connected to the output terminal of the NAND circuit 26c9, and the other input terminal is connected to the output terminal of the NAND circuit 26c10. One input terminal of the NOR circuit 26c17 is connected to the output terminal of the NAND circuit 26c11, and the other input terminal is connected to the output terminal of the NAND circuit 26c12.

NOR回路26c18の4つの入力端子には、NOR回路26c14〜26c17の出力端子が接続されている。NOR回路26c18の出力端子は、エラー信号出力回路26dに接続されている。 The output terminals of the NOR circuits 26c14 to 26c17 are connected to the four input terminals of the NOR circuit 26c18. The output terminal of the NOR circuit 26c18 is connected to the error signal output circuit 26d.

このような仮想データエラー検出回路26cでは、試験モード設定回路25が出力する仮想データに意図しないエラーが生じているか否か(設定信号seta〜setcに対応した仮想データか否か)を検出する。そして、仮想データエラー検出回路26cは、その検出結果を示す仮想データビットエラーフラグerrvdを出力する。仮想データビットエラーフラグerrvdがHレベルのときは、仮想データに意図しないエラーが生じていることを示し、仮想データビットエラーフラグerrvdがLレベルのときは、仮想データに意図しないエラーが生じていないことを示す。 Such a virtual data error detection circuit 26c detects whether or not an unintended error has occurred in the virtual data output by the test mode setting circuit 25 (whether or not the virtual data corresponds to the setting signals seta to set). Then, the virtual data error detection circuit 26c outputs a virtual data bit error flag errvd indicating the detection result. When the virtual data bit error flag errvd is H level, it indicates that an unintended error has occurred in the virtual data, and when the virtual data bit error flag errvd is L level, an unintended error has not occurred in the virtual data. Show that.

たとえば、意図的に1ビットエラーを発生させる試験モードである第1試験モードが設定されている場合、エラー訂正フラグerrda<11>がHレベルであれば、NAND回路26c7の出力信号は、Hレベルとなる。この場合、NOR回路26c15の出力信号は、NAND回路26c8の出力信号の論理レベルにかかわらず、Lレベルになる。第1試験モードの場合、設定信号setb,setcは0であり、NOR回路26c14,26c16,26c17の出力信号はLレベルになる。そのため、NOR回路26c18の出力信号である仮想データビットエラーフラグerrvdは、Hレベルとなる。つまり、仮想データに意図しないエラーが生じていることが検出される。 For example, when the first test mode, which is a test mode for intentionally generating a 1-bit error, is set, if the error correction flag errda <11> is H level, the output signal of the NAND circuit 26c7 is H level. It becomes. In this case, the output signal of the NOR circuit 26c15 becomes the L level regardless of the logic level of the output signal of the NAND circuit 26c8. In the first test mode, the set signals setb and setc are 0, and the output signals of the NOR circuits 26c14, 26c16, and 26c17 are at the L level. Therefore, the virtual data bit error flag errvd, which is the output signal of the NOR circuit 26c18, becomes H level. That is, it is detected that an unintended error has occurred in the virtual data.

エラー訂正フラグerrda<11>は、仮想データの最上位ビットであるビットd<11>に対応している。仮想データの最上位ビットは、前述のように0で固定であるので、ビットd<11>にエラーが生じている場合には、そのエラーは、意図しないエラーである。 The error correction flag errda <11> corresponds to bit d <11>, which is the most significant bit of virtual data. Since the most significant bit of the virtual data is fixed at 0 as described above, when an error occurs in bit d <11>, the error is an unintended error.

エラー訂正フラグerrda<11>がHレベルとなる場合は、試験モードによらず、仮想データビットエラーフラグerrvdは、Hレベルとなる。
一方、第1試験モードが設定されており、エラー訂正フラグerrda<11>がLレベルの場合、NAND回路26c7の出力信号は、Lレベルとなる。この場合、NOR回路26c15の出力信号は、NAND回路26c8の出力信号の論理レベルによって決まる。エラー訂正フラグerrda<8>がHレベルで、エラー訂正フラグerrda<9>,errda<10>がLレベルの場合は、NAND回路26c8の出力信号はLレベルとなり、それ以外の場合は、NAND回路26c8の出力信号はHレベルとなる。
When the error correction flag errda <11> becomes the H level, the virtual data bit error flag errvd becomes the H level regardless of the test mode.
On the other hand, when the first test mode is set and the error correction flag errda <11> is L level, the output signal of the NAND circuit 26c7 becomes L level. In this case, the output signal of the NOR circuit 26c15 is determined by the logic level of the output signal of the NAND circuit 26c8. When the error correction flag errda <8> is H level and the error correction flags errda <9> and errda <10> are L level, the output signal of the NAND circuit 26c8 is L level. In other cases, the NAND circuit The output signal of 26c8 becomes H level.

NAND回路26c8の出力信号がLレベルの場合、NOR回路26c15の出力信号はHレベルとなり、NOR回路26c18の出力信号である仮想データビットエラーフラグerrvdはLレベルとなる。NAND回路26c8の出力信号がHレベルの場合、NOR回路26c15の出力信号はLレベルとなり、NOR回路26c18の出力信号である仮想データビットエラーフラグerrvdはHレベルとなる。つまり、仮想データに意図しないエラーが生じていることが検出される。 When the output signal of the NAND circuit 26c8 is L level, the output signal of the NOR circuit 26c15 is H level, and the virtual data bit error flag errvd which is the output signal of the NOR circuit 26c18 is L level. When the output signal of the NAND circuit 26c8 is H level, the output signal of the NOR circuit 26c15 is L level, and the virtual data bit error flag errvd which is the output signal of the NOR circuit 26c18 is H level. That is, it is detected that an unintended error has occurred in the virtual data.

エラー訂正フラグerrda<9>,errda<10>は、仮想データの2つのビットであるビットd<9>,d<10>に対応している。仮想データのビットd<9>,d<10>は、第1試験モードが設定されている場合には、意図的なエラーを生じさせないビットであるため、ビットd<9>,d<10>にエラーが生じている場合には、そのエラーは、意図しないエラーである。 The error correction flags errda <9> and errda <10> correspond to bits d <9> and d <10>, which are two bits of virtual data. Since the bits d <9> and d <10> of the virtual data are bits that do not cause an intentional error when the first test mode is set, the bits d <9> and d <10> If there is an error in, the error is an unintended error.

エラー信号出力回路26dは、回路部26d1〜26d8,26d9〜26d12,26d13〜26d23を有する。
回路部26d1〜26d23のそれぞれは、OR回路である。図13の例では、NOR回路とインバータ回路とを用いてOR回路が実現されている。たとえば、回路部26d1は、NOR回路26daとインバータ回路26dbを有し、回路部26d9は、NOR回路26dcとインバータ回路26ddを有し、回路部26d13は、NOR回路26deとインバータ回路26dfを有する。
The error signal output circuit 26d includes circuit units 26d1 to 26d8, 26d9 to 26d12, 26d13 to 26d23.
Each of the circuit units 26d1 to 26d23 is an OR circuit. In the example of FIG. 13, the OR circuit is realized by using the NOR circuit and the inverter circuit. For example, the circuit unit 26d1 has a NOR circuit 26da and an inverter circuit 26db, the circuit unit 26d9 has a NOR circuit 26dc and an inverter circuit 26dd, and the circuit unit 26d13 has a NOR circuit 26de and an inverter circuit 26df.

回路部26d1〜26d8のそれぞれは、仮想データビットエラーフラグerrvdと、エラー訂正フラグerrda<0>〜errda<7>の何れか1つとの論理和を、エラー信号errd<0>〜errd<7>の1つとして出力する。 Each of the circuit units 26d1 to 26d8 is ORed with the virtual data bit error flag errvd and any one of the error correction flags errda <0> to errda <7>, and the error signals errd <0> to errd <7>. Output as one of.

たとえば、回路部26d1は、仮想データビットエラーフラグerrvdと、エラー訂正フラグerrda<0>との論理和を、エラー信号errd<0>として出力する。回路部26d8は、仮想データビットエラーフラグerrvdと、エラー訂正フラグerrda<7>との論理和を、エラー信号errd<7>として出力する。 For example, the circuit unit 26d1 outputs the logical sum of the virtual data bit error flag errvd and the error correction flag errda <0> as an error signal errd <0>. The circuit unit 26d8 outputs the logical sum of the virtual data bit error flag errvd and the error correction flag errda <7> as an error signal errd <7>.

回路部26d1〜26d8は、仮想データビットエラーフラグerrvdがHレベルになると、エラー訂正フラグerrda<0>〜errda<7>の値によらず、Hレベルのエラー信号errd<0>〜errd<7>を出力する。 When the virtual data bit error flag errvd becomes H level, the circuit units 26d1 to 26d8 have H level error signals errd <0> to errd <7 regardless of the values of the error correction flags errda <0> to errda <7>. > Is output.

回路部26d9〜26d12のそれぞれは、基準電位(Lレベルの電位)と、エラー訂正フラグerrda<8>〜errda<11>の何れか1つとの論理和を、エラー信号errd<8>〜errd<11>の1つとして出力する。 Each of the circuit units 26d9 to 26d12 is ORed with the reference potential (L level potential) and any one of the error correction flags errda <8> to errda <11>, and the error signals errd <8> to errd < Output as one of 11>.

たとえば、回路部26d9は、基準電位と、エラー訂正フラグerrda<8>との論理和を、エラー信号errd<8>として出力する。回路部26d12は、基準電位と、エラー訂正フラグerrda<11>との論理和を、エラー信号errd<11>として出力する。 For example, the circuit unit 26d9 outputs the logical sum of the reference potential and the error correction flag errda <8> as an error signal errd <8>. The circuit unit 26d12 outputs the logical sum of the reference potential and the error correction flag errda <11> as an error signal errd <11>.

回路部26d9〜26d12は、エラー訂正フラグerrda<8>〜errda<11>のうちHレベルになるものに対応したエラー信号をHレベルとする。たとえば、エラー訂正フラグerrda<8>がHレベルである場合、エラー信号errd<8>がHレベルになる。 The circuit units 26d9 to 26d12 set the error signal corresponding to the error correction flags errda <8> to errda <11> that become the H level as the H level. For example, when the error correction flag errda <8> is H level, the error signal errd <8> becomes H level.

回路部26d13〜26d23のそれぞれは、基準電位と、エラー訂正フラグerrpa<0>〜errpa<10>の何れか1つとの論理和を、エラー信号errp<0>〜errp<10>の1つとして出力する。 Each of the circuit units 26d13 to 26d23 uses the logical sum of the reference potential and any one of the error correction flags errpa <0> to errpa <10> as one of the error signals errp <0> to errp <10>. Output.

たとえば、回路部26d13は、基準電位と、エラー訂正フラグerrpa<0>との論理和を、エラー信号errp<0>として出力する。回路部26d23は、基準電位と、エラー訂正フラグerrpa<10>との論理和を、エラー信号errp<10>として出力する。 For example, the circuit unit 26d13 outputs the logical sum of the reference potential and the error correction flag errp <0> as an error signal errp <0>. The circuit unit 26d23 outputs the logical sum of the reference potential and the error correction flag errp <10> as an error signal errp <10>.

回路部26d13〜26d23は、エラー訂正フラグerrpa<0>〜errpa<10>のうちHレベルになるものに対応したエラー信号をHレベルとする。たとえば、エラー訂正フラグerrpa<0>がHレベルである場合、エラー信号errp<0>がHレベルになる。 The circuit units 26d13 to 26d23 set the error signal corresponding to the error correction flags errpa <0> to errpa <10> that become the H level as the H level. For example, when the error correction flag errp <0> is H level, the error signal errp <0> becomes H level.

図14は、4ビットエラーが生じている場合の仮想データエラー検出回路とエラー信号出力回路の動作の一例を示すタイミングチャートである。
図14には、エラー訂正フラグerrpa<0>〜errpa<10>,errda<0>〜errda<11>の時間変化の一例が示されている。また、図14には、仮想データビットエラーフラグerrvd、エラー信号errd<0>〜errd<11>,errp<0>〜errp<10>の時間変化の一例が示されている。
FIG. 14 is a timing chart showing an example of the operation of the virtual data error detection circuit and the error signal output circuit when a 4-bit error occurs.
FIG. 14 shows an example of the time change of the error correction flags errpa <0> to errpa <10> and errda <0> to errda <11>. Further, FIG. 14 shows an example of time changes of the virtual data bit error flag errvd, the error signals errd <0> to errd <11>, and errp <0> to errp <10>.

Lレベルのエラー訂正フラグerrpa<0>〜errpa<10>,errda<0>〜errda<11>のうち、エラー訂正フラグerrpa<1>,errpa<3>,errda<11>が、タイミングt40で、Hレベルに立ち上がっている。前述のように、エラー訂正フラグerrda<11>がHレベルになると、試験モードによらず、仮想データビットエラーフラグerrvdは、Hレベルとなる。これにより、エラー信号errd<0>〜errd<7>がHレベルになる。 Of the L-level error correction flags errpa <0> to errpa <10> and errda <0> to errda <11>, the error correction flags errpa <1>, errpa <3>, and errda <11> are at timing t40. , Standing up to H level. As described above, when the error correction flag errda <11> becomes the H level, the virtual data bit error flag errvd becomes the H level regardless of the test mode. As a result, the error signals errd <0> to errd <7> become H level.

また、エラー訂正フラグerrpa<1>,errpa<3>,errda<11>がHレベルになると、それらに対応したエラー信号errp<1>,errp<3>,errd<11>がHレベルになる。 When the error correction flags errpa <1>, errpa <3>, and errda <11> reach the H level, the corresponding error signals errp <1>, errp <3>, and errd <11> become the H level. ..

タイミングt41において、エラー訂正フラグerrpa<1>,errpa<3>,errda<11>がLレベルに立ち下がると、仮想データビットエラーフラグerrvdも、Lレベルとなる。また、エラー信号errd<0>〜errd<7>,errd<11>,errp<1>,errp<3>も、Lレベルになる。 At the timing t41, when the error correction flags errpa <1>, errpa <3>, and errda <11> fall to the L level, the virtual data bit error flag errvd also becomes the L level. Further, the error signals errd <0> to errd <7>, errd <11>, errp <1>, and errp <3> also reach the L level.

(エラー訂正回路27の一例)
エラー訂正回路27は、複数の2入力1出力のXOR回路で実現できる。
図15は、エラー訂正回路の一例を示す図である。図15には、ビットd<0>〜d<7>のエラーを訂正する回路部分が示されている。
(Example of error correction circuit 27)
The error correction circuit 27 can be realized by a plurality of 2-input / 1-output XOR circuits.
FIG. 15 is a diagram showing an example of an error correction circuit. FIG. 15 shows a circuit portion that corrects an error of bits d <0> to d <7>.

エラー訂正回路27は、2入力1出力のXOR回路27a1〜27a8を有する。
XOR回路27a1〜27a8のそれぞれには、リードデータRDのビットd<0>〜d<7>のうちの1ビットと、そのビットに対応するエラー訂正フラグ(errd<0>〜errd<7>の何れか1つ)が入力される。XOR回路27a1〜27a8の出力値であるビットdECC<0>〜dECC<7>が、8ビットのリードデータRDaとなる。
The error correction circuit 27 has two inputs and one output XOR circuits 27a1 to 27a8.
In each of the XOR circuits 27a1 to 27a8, one of the bits d <0> to d <7> of the read data RD and the error correction flags (errd <0> to errd <7> corresponding to the bits Any one) is input. Bits dECC <0> to dECC <7>, which are output values of the XOR circuits 27a1 to 27a8, are 8-bit read data RDas.

図示を省略しているが、ビットd<8>〜d<11>のエラーを訂正する回路部分は、4つのXOR回路で実現され、エラー信号errd<8>〜errd<11>が用いられる。また、図示を省略しているが、検査ビットp<0>〜p<10>のエラーを訂正する回路部分は、11個のXOR回路で実現され、エラー信号errp<0>〜errp<10>が用いられる。 Although not shown, the circuit portion for correcting the error of the bits d <8> to d <11> is realized by four XOR circuits, and the error signals errd <8> to errd <11> are used. Further, although not shown, the circuit portion for correcting the error of the inspection bits p <0> to p <10> is realized by 11 XOR circuits, and the error signals errp <0> to errp <10> are realized. Is used.

図16は、2ビットエラーが生じている場合のエラー訂正回路の動作の一例を示すタイミングチャートである。
図16には、リードデータRDのビットd<0>〜d<7>、エラー信号errd<0>〜errd<7>、リードデータRDaのビットdECC<0>〜dECC<7>の時間変化の一例が示されている。
FIG. 16 is a timing chart showing an example of the operation of the error correction circuit when a 2-bit error occurs.
In FIG. 16, the time changes of the bits d <0> to d <7> of the read data RD, the error signals errd <0> to errd <7>, and the bits dECC <0> to dECC <7> of the read data RD are shown. An example is shown.

なお、リードデータRDのビットd<0>〜d<7>の期待値(ライトデータWDのビットD<0>〜D<7>に相当)は、全てHレベルであるものとする。
また、エラー信号errd<0>〜errd<7>の初期値はLレベルである。
It is assumed that the expected values of the bits d <0> to d <7> of the read data RD (corresponding to the bits D <0> to D <7> of the write data WD) are all H level.
Further, the initial value of the error signals errd <0> to errd <7> is the L level.

タイミングt50においてメモリセル部24から読み出されたリードデータRDのビットd<0>〜d<7>のうち、ビットd<0>,d<2>の値は、Lレベルとなっている。つまり、ビットd<0>,d<2>がエラービットとなっている。 Of the bits d <0> to d <7> of the read data RD read from the memory cell unit 24 at the timing t50, the values of the bits d <0> and d <2> are at the L level. That is, the bits d <0> and d <2> are error bits.

また、タイミングt50では、エラー信号errd<0>〜errd<7>がLレベルであるため、XOR回路27a1〜27a8の出力値であるビットdECC<0>〜dECC<7>は、ビットd<0>〜d<7>の値と同じとなる。 Further, at the timing t50, since the error signals errd <0> to errd <7> are at the L level, the bits dECC <0> to dECC <7>, which are the output values of the XOR circuits 27a1 to 27a8, are bit d <0. > ~ D <7> is the same as the value.

その後、前述したエラー検出回路26の動作により、エラー信号errd<0>,errd<2>がLレベルからHレベルになる(タイミングt51)。
これによって、XOR回路27a1〜27a8の出力値であるビットdECC<0>〜dECC<7>のうち、ビットdECC<0>,dECC<2>がLレベルからHレベル(つまり0から1)に反転する(タイミングt52)。つまり、2ビットエラー訂正が行われる。
After that, due to the operation of the error detection circuit 26 described above, the error signals errd <0> and errd <2> change from the L level to the H level (timing t51).
As a result, among the bits dECC <0> to dECC <7>, which are the output values of the XOR circuits 27a1 to 27a8, the bits dECC <0> and dECC <2> are inverted from the L level to the H level (that is, from 0 to 1). (Timing t52). That is, 2-bit error correction is performed.

図17は、4ビットエラーが生じている場合のエラー訂正回路の動作の一例を示すタイミングチャートである。
図17には、ビットp<0>〜p<10>,d<0>〜d<11>、仮想データビットエラーフラグerrvd、エラー信号errp<0>〜errp<10>,errd<0>〜errd<11>の時間変化の一例が示されている。さらに、検査ビットRPBのエラー訂正後のビットpECC<0>〜pECC<10>、リードデータRDaのビットdECC<0>〜dECC<7>、仮想データのエラー訂正後のビットdECC<8>〜dECC<11>の時間変化の一例が示されている。
FIG. 17 is a timing chart showing an example of the operation of the error correction circuit when a 4-bit error occurs.
In FIG. 17, bits p <0> to p <10>, d <0> to d <11>, virtual data bit error flag errvd, error signal errp <0> to errp <10>, errd <0> to An example of time variation of error <11> is shown. Further, the check bit RPB error-corrected bits pECC <0> to pECC <10>, the read data RDa bits dECC <0> to dECC <7>, and the virtual data error-corrected bits dECC <8> to dECC. An example of the time change of <11> is shown.

なお、ビットp<0>〜p<10>,d<0>〜d<11>の期待値は、全てHレベルであるものとする。
また、エラー信号errp<0>〜errp<10>,errd<0>〜errd<11>の初期値はLレベルである。
It is assumed that the expected values of the bits p <0> to p <10> and d <0> to d <11> are all H levels.
Further, the initial values of the error signals errp <0> to errp <10> and errd <0> to errd <11> are L levels.

タイミングt60においてメモリセル部24から読み出されたビットp<0>〜p<10>,d<0>〜d<7>のうち、ビットp<4>,p<5>,p<9>,p<10>の値は、Lレベルとなっている。つまり、4ビットエラーが生じている。 Of the bits p <0> to p <10> and d <0> to d <7> read from the memory cell unit 24 at the timing t60, the bits p <4>, p <5>, and p <9> , P <10> is the L level. That is, a 4-bit error has occurred.

また、タイミングt60では、エラー信号errp<0>〜errp<10>がLレベルであるため、ビットpECC<0>〜pECC<10>は、ビットp<0>〜p<10>の値と同じとなる。また、タイミングt60では、エラー信号errd<0>〜errd<11>がLレベルであるため、ビットdECC<0>〜dECC<11>は、ビットd<0>〜d<11>の値と同じとなる。 Further, at the timing t60, since the error signals errp <0> to errp <10> are at the L level, the bits pECC <0> to pECC <10> are the same as the values of the bits p <0> to p <10>. It becomes. Further, at the timing t60, since the error signals errd <0> to errd <11> are at the L level, the bits dECC <0> to dECC <11> are the same as the values of the bits d <0> to d <11>. It becomes.

その後、エラー検出回路26の動作により、エラー信号errp<1>,errp<3>,errd<11>がHレベルになる(タイミングt61)。また、タイミングt61では、仮想データエラー検出回路26cの動作により、仮想データビットエラーフラグerrvdがHレベルになる。これにより、エラー信号出力回路26dの動作により、エラー信号errd<0>〜errd<7>もHレベルになる。 After that, due to the operation of the error detection circuit 26, the error signals errp <1>, errp <3>, and errd <11> become H level (timing t61). Further, at the timing t61, the virtual data bit error flag errvd becomes H level due to the operation of the virtual data error detection circuit 26c. As a result, due to the operation of the error signal output circuit 26d, the error signals errd <0> to errd <7> also become H level.

エラー信号errp<1>,errp<3>,errd<11>がHレベルになるため、エラー訂正回路27の動作により、ビットpECC<1>,pECC<3>,dECC<11>がHレベルからLレベル(つまり1から0)に反転する(タイミングt62)。実際にビットエラーが生じているのは、ビットp<4>,p<5>,p<9>,p<10>であるため、3ビットの誤訂正が生じている。しかし、タイミングt62では、エラー信号出力回路26dの動作により、リードデータRDaのビットdECC<0>〜dECC<7>が全て、HレベルからLレベルに反転している。リードデータRDaは、半導体記憶装置20から出力されるため、ビットdECC<0>〜dECC<7>を全てLレベルとすることで、4ビットエラーの発生を半導体記憶装置20の外部に通知することができる。なお、上記の説明では、エラー信号出力回路26dは、ビットdECC<0>〜dECC<7>を全て、HレベルからLレベルに反転しているが、これに限定されず、エラー検出及び訂正可能な3ビットよりも多くのビットを反転することで、4ビットエラーの発生を半導体記憶装置20の外部に通知するようにしてもよい。 Since the error signals errp <1>, errp <3>, and errd <11> are at the H level, the bits pECC <1>, pECC <3>, and dECC <11> are changed from the H level by the operation of the error correction circuit 27. Invert to L level (ie 1 to 0) (timing t62). Since it is the bits p <4>, p <5>, p <9>, and p <10> that actually cause the bit error, a 3-bit error correction occurs. However, at the timing t62, all the bits dECC <0> to dECC <7> of the read data RDa are inverted from the H level to the L level due to the operation of the error signal output circuit 26d. Since the read data RDa is output from the semiconductor storage device 20, the occurrence of a 4-bit error is notified to the outside of the semiconductor storage device 20 by setting all the bits dECC <0> to dECC <7> to the L level. Can be done. In the above description, the error signal output circuit 26d inverts all the bits dECC <0> to dECC <7> from the H level to the L level, but the error is not limited to this and can be detected and corrected. By inverting more bits than 3 bits, the occurrence of a 4-bit error may be notified to the outside of the semiconductor storage device 20.

(半導体記憶装置20の試験モード変更例)
たとえば、半導体記憶装置20に対する出荷前試験時において、試験モード設定回路25に第2試験モードが設定される場合、エラー検出回路26には、仮想データ“0011”が供給される。
(Example of changing the test mode of the semiconductor storage device 20)
For example, when the second test mode is set in the test mode setting circuit 25 at the time of the pre-shipment test for the semiconductor storage device 20, virtual data “0011” is supplied to the error detection circuit 26.

メモリセル部24から8ビットのリードデータRDが読み出された場合、シンドローム生成回路26aには、リードデータRDの上位側に仮想データ“0011”を追加した12ビット(前述したビットd<0>〜d<11>)の値が供給される。さらに、シンドローム生成回路26aには、メモリセル部24から読み出された11ビットの検査ビットRPB(前述したビットp<0>〜p<10>)が供給される。なお、メモリセル部24から読み出される検査ビットRPBは、メモリセル部24から読み出されるリードデータRDに対応付けられたものである。 When 8-bit read data RD is read from the memory cell unit 24, 12 bits (the above-mentioned bit d <0>) in which virtual data “0011” is added to the upper side of the read data RD are added to the syndrome generation circuit 26a. A value of ~ d <11>) is supplied. Further, the syndrome generation circuit 26a is supplied with the 11-bit inspection bit RPB (bits p <0> to p <10> described above) read from the memory cell unit 24. The inspection bit RPB read from the memory cell unit 24 is associated with the read data RD read from the memory cell unit 24.

シンドローム生成回路26aは、図8に示したような対応関係に基づいてXOR演算により、シンドロームのビットS<0>〜S<10>を生成する。そして、シンドロームデコーダ26bは、ビットS<0>〜S<10>に基づいて、エラービットの検出結果を示すエラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<10>を出力する。 The syndrome generation circuit 26a generates syndrome bits S <0> to S <10> by an XOR operation based on the correspondence as shown in FIG. Then, the syndrome decoder 26b has error correction flags errda <0> to errda <11> and errpa <0> to errpa <10> indicating an error bit detection result based on the bits S <0> to S <10>. Is output.

第2試験モードでは、仮想データ“0011”が用いられているため、エラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<10>のうち少なくともエラー訂正フラグerrda<8>,errda<9>はHレベルとなる。また、リードデータRD及び検査ビットRPBの全19ビットのうちの1ビットにエラーが生じている場合には、そのビットに対応したエラー訂正フラグがHレベルとなる。 In the second test mode, since the virtual data “0011” is used, at least the error correction flag errda <8> out of the error correction flags errda <0> to errda <11> and errpa <0> to errpa <10>. , Error <9> is H level. If an error occurs in one of all 19 bits of the read data RD and the inspection bit RPB, the error correction flag corresponding to that bit becomes the H level.

エラー訂正回路27は、エラー信号errp<0>〜errp<10>,errd<0>〜errd<11>に基づいて、ビットp<0>〜p<10>,d<0>〜d<11>nのうちのエラービットを訂正する。 The error correction circuit 27 has bits p <0> to p <10> and d <0> to d <11 based on the error signals errp <0> to errp <10> and errd <0> to errd <11>. Correct the error bit of> n.

たとえば、リードデータRD及び検査ビットRPBの全19ビットのうち、リードデータRDに1ビットのエラービットが生じている場合、エラー訂正回路27によりエラー訂正が行われる。この場合、エラー訂正で得られたリードデータRDaは、期待値であるライトデータWDと同じになる。 For example, if an error bit of 1 bit occurs in the read data RD out of all 19 bits of the read data RD and the inspection bit RPB, the error correction circuit 27 performs error correction. In this case, the read data RDa obtained by error correction becomes the same as the write data WD, which is the expected value.

半導体記憶装置20の出荷前試験後、たとえば、設定信号seta〜setcが全て0となり、通常モードが設定される。通常モードでは、エラー検出回路26には、仮想データ“0000”が供給される。 After the pre-shipment test of the semiconductor storage device 20, for example, the setting signals seta to set become all 0, and the normal mode is set. In the normal mode, virtual data “0000” is supplied to the error detection circuit 26.

通常モードでは、仮想データ“0000”が用いられているため、4ビット以上のエラーが生じていない場合には、エラー訂正フラグerrda<8>〜errda<11>はLレベルとなる。また、リードデータRD及び検査ビットRPBの全19ビットのうちの1乃至3ビットがエラービットである場合には、そのビットに対応したエラー訂正フラグがHレベルとなる。 In the normal mode, since the virtual data “0000” is used, the error correction flags errda <8> to errda <11> are at the L level when an error of 4 bits or more has not occurred. Further, when 1 to 3 bits of all 19 bits of the read data RD and the inspection bit RPB are error bits, the error correction flag corresponding to the bits becomes the H level.

エラー訂正回路27は、リードデータRD及び検査ビットRPBの全19ビットのうち、検査ビットRPBにエラービットがなく、リードデータRDに3ビットまでのエラービットが生じている場合、エラー訂正回路27により正しくエラー訂正が行われる。また、検査ビットRPBに1ビットのエラービットがあっても、そのエラービットと、リードデータRDに生じる2ビットまでのエラービットが正しく訂正可能である。また、検査ビットRPBに2ビットのエラービットがあっても、それらのエラービットと、リードデータRDに生じる1ビットまでのエラービットが正しく訂正可能である。 The error correction circuit 27 uses the error correction circuit 27 when the check bit RPB has no error bits and the read data RD has up to 3 error bits among all 19 bits of the read data RD and the check bit RPB. The error is corrected correctly. Further, even if the inspection bit RPB has one error bit, the error bit and the error bits up to two bits generated in the read data RD can be correctly corrected. Further, even if the inspection bit RPB has 2 error bits, those error bits and up to 1 error bit generated in the read data RD can be correctly corrected.

上記のような方法では、出荷前試験において、第2試験モードにより意図的に追加された2ビットエラーが発生し、リードデータRD及び検査ビットRPBの全19ビットに対してエラー検出及び訂正が可能なビット数が1ビットに制限される。その後、試験モードが通常モードに変更されることによって、たとえば、検査ビットRPBにエラービットの増加がなく、リードデータRDのエラービットが2ビット増加した場合でも正しくエラー訂正が可能となる。また、検査ビットRPBのエラービットが1ビット増加しても、リードデータRDの1ビットのエラービットの増加に対応できる。さらに、検査ビットRPBのエラービットが2ビット増加しても、リードデータRDを誤訂正することなく正常な動作を行うことが可能である。 In the above method, in the pre-shipment test, a 2-bit error intentionally added by the second test mode occurs, and it is possible to detect and correct all 19 bits of the read data RD and the inspection bit RPB. The number of bits is limited to 1 bit. After that, by changing the test mode to the normal mode, for example, even if the error bit does not increase in the inspection bit RPB and the error bit of the read data RD increases by 2 bits, the error can be corrected correctly. Further, even if the error bit of the inspection bit RPB increases by 1 bit, it is possible to cope with the increase of the error bit of 1 bit of the read data RD. Further, even if the error bit of the inspection bit RPB increases by 2 bits, normal operation can be performed without erroneously correcting the read data RD.

なお、出荷前試験を第1試験モードで行う場合には、意図的に追加された1ビットエラーが発生し、リードデータRD及び検査ビットRPBの全19ビットに対してエラー検出及び訂正が可能なビット数が2ビットに制限される。その後、試験モードが通常モードに変更されることによって、たとえば、検査ビットRPBにエラービットの増加がなく、リードデータRDのエラービットが1ビット増加した場合でも正しくエラー訂正が可能となる。また、検査ビットRPBのエラービットが1ビット増加しても、リードデータRDを誤訂正することなく正常な動作を行うことが可能である。 When the pre-shipment test is performed in the first test mode, an intentionally added 1-bit error occurs, and the error can be detected and corrected for all 19 bits of the read data RD and the inspection bit RPB. The number of bits is limited to 2 bits. After that, by changing the test mode to the normal mode, for example, even if the error bit does not increase in the inspection bit RPB and the error bit of the read data RD increases by 1 bit, the error can be corrected correctly. Further, even if the error bit of the inspection bit RPB increases by 1 bit, normal operation can be performed without erroneously correcting the read data RD.

また、出荷前試験を第3試験モードで行う場合には、意図的に追加された3ビットエラーが発生し、リードデータRD及び検査ビットRPBの全19ビットに対してエラー検出及び訂正が可能なビット数は0ビットとなる。その後、試験モードが通常モードに変更されることによって、たとえば、検査ビットRPBにエラービットの増加がなく、リードデータRDのエラービットが3ビット増加した場合でも正しくエラー訂正が可能となる。また、検査ビットRPBのエラービットが1ビット増加しても、リードデータRDの2ビットのエラービットの増加に対応できる。また、検査ビットRPBのエラービットが2ビット増加しても、リードデータRDの1ビットのエラービットの増加に対応できる。さらに、検査ビットRPBのエラービットが3ビット増加しても、リードデータRDを誤訂正することなく正常な動作を行うことが可能である。 Further, when the pre-shipment test is performed in the third test mode, an intentionally added 3-bit error occurs, and the error can be detected and corrected for all 19 bits of the read data RD and the inspection bit RPB. The number of bits is 0 bits. After that, by changing the test mode to the normal mode, for example, even if the error bit does not increase in the inspection bit RPB and the error bit of the read data RD increases by 3 bits, the error can be corrected correctly. Further, even if the error bit of the inspection bit RPB increases by 1 bit, it is possible to cope with the increase of the error bit of 2 bits of the read data RD. Further, even if the error bit of the inspection bit RPB increases by 2 bits, it is possible to cope with the increase of 1 bit of the error bit of the read data RD. Further, even if the error bit of the inspection bit RPB increases by 3 bits, normal operation can be performed without erroneously correcting the read data RD.

このように、第2の実施の形態の半導体記憶装置20によれば、第1の実施の形態の半導体記憶装置10と同様に、出荷後に増えたエラービットの検出及び訂正が可能になる。
なお、出荷前試験を通常モードで行い、3ビットエラーが生じている半導体記憶装置20についても良品として出荷できるようにして、歩留まりを向上させてもよい。
As described above, according to the semiconductor storage device 20 of the second embodiment, as in the semiconductor storage device 10 of the first embodiment, it is possible to detect and correct the error bits that have increased after shipment.
The pre-shipment test may be performed in the normal mode so that the semiconductor storage device 20 in which a 3-bit error occurs can also be shipped as a non-defective product to improve the yield.

また、出荷前後で試験モードを変更することに限定されず、ある試験では、第3試験モードを使用し、次の試験では、第2試験モード、第1試験モードまたは通常モードに変更するようにしてもよい。 In addition, the test mode is not limited to change before and after shipment, and one test uses the third test mode, and the next test changes to the second test mode, the first test mode, or the normal mode. You may.

これによって、たとえば、チップグレードの分別も可能になる。
図18は、チップグレードの分別方法の一例を示すフローチャートである。
初めは、第3試験モードで試験が行われ(ステップS1)、パスした場合(つまり、リードデータRDと検査ビットRPBにエラービットが生じていない場合)、通常モードへの変更が行われ、半導体記憶装置20は高信頼性チップとして出荷される。この、半導体記憶装置20は、たとえば、突発的にエラービットが増加しても、19ビットのリードデータRDと検査ビットRPBの各組あたり、3ビットまでならそのエラービットを訂正することができるためである。たとえば、高信頼性が要求される車載チップ用として、第3試験モードでの試験にパスした半導体記憶装置20が出荷される。
This also allows, for example, chip grade sorting.
FIG. 18 is a flowchart showing an example of a chip grade sorting method.
Initially, the test is performed in the third test mode (step S1), and if it passes (that is, if there is no error bit in the read data RD and the inspection bit RPB), the change to the normal mode is performed and the semiconductor is used. The storage device 20 is shipped as a highly reliable chip. For example, even if the error bit suddenly increases, the semiconductor storage device 20 can correct the error bit up to 3 bits for each set of the 19-bit read data RD and the inspection bit RPB. Is. For example, a semiconductor storage device 20 that has passed the test in the third test mode is shipped for an in-vehicle chip that requires high reliability.

第3試験モードでの試験でフェイルとなった場合(つまり、リードデータRDまたは検査ビットRPBにエラービットが生じている場合)、通常モードでの試験が行われる(ステップS2)。通常モードの試験でパスした場合は、半導体記憶装置20は低価格チップとして出荷される。第3試験モードの試験にパスできなかった半導体記憶装置20は、第3試験モードの試験にパスしたものよりも、エラービットの増加に対する訂正能力が劣るためである。 If the test in the third test mode fails (that is, an error bit occurs in the read data RD or the inspection bit RPB), the test in the normal mode is performed (step S2). If the normal mode test passes, the semiconductor storage device 20 is shipped as a low-cost chip. This is because the semiconductor storage device 20 that failed to pass the test in the third test mode is inferior in its ability to correct an increase in error bits than the device that passed the test in the third test mode.

半導体記憶装置20が、通常モードの試験でフェイルとなった場合(つまり、リードデータRDと検査ビットRPBによる各組の何れかに、合計4ビット以上のエラービットが生じている場合)、その半導体記憶装置20は、不良チップであるとして出荷されない。 When the semiconductor storage device 20 fails in the normal mode test (that is, when any of the sets of the read data RD and the inspection bit RPB has an error bit of 4 bits or more in total), the semiconductor. The storage device 20 is not shipped as a defective chip.

(第3の実施の形態)
図19は、第3の実施の形態の半導体記憶装置の一例を示す図である。図19において、図2に示した第2の実施の形態の半導体記憶装置20と同じ要素については、同一符号が付されている。
(Third Embodiment)
FIG. 19 is a diagram showing an example of the semiconductor storage device of the third embodiment. In FIG. 19, the same elements as those of the semiconductor storage device 20 of the second embodiment shown in FIG. 2 are designated by the same reference numerals.

第3の実施の形態の半導体記憶装置40は、エラー訂正後の検査ビットRPBaと、エラー訂正後のリードデータRDaをメモリセル部24に書き戻す機能を有している。第3の実施の形態の半導体記憶装置40は、ゴレイ符号によりエラー訂正できる上限である3ビットエラーが生じている場合に、上記書き戻し機能を実行する。 The semiconductor storage device 40 of the third embodiment has a function of writing back the inspection bit RPBa after error correction and the read data RDa after error correction to the memory cell unit 24. The semiconductor storage device 40 of the third embodiment executes the above-mentioned write-back function when a 3-bit error, which is an upper limit of error correction, occurs due to the Golay code.

そのための要素として、半導体記憶装置40のエラー訂正回路41は、検査ビット訂正部41aとリードデータ訂正部41bを有する。なお、エラー訂正回路41は、仮想データのエラーを訂正する回路部を有しているが、図示が省略されている。 As an element for that purpose, the error correction circuit 41 of the semiconductor storage device 40 has an inspection bit correction unit 41a and a read data correction unit 41b. The error correction circuit 41 has a circuit unit for correcting an error in virtual data, but the illustration is omitted.

また、半導体記憶装置40は、選択回路42a,42bを有する。さらに、半導体記憶装置40のエラー検出回路43は、エラーMAXフラグ生成回路43aを有する。また、半導体記憶装置40はビジー信号出力回路44、制御回路45を有する。 Further, the semiconductor storage device 40 has selection circuits 42a and 42b. Further, the error detection circuit 43 of the semiconductor storage device 40 has an error MAX flag generation circuit 43a. Further, the semiconductor storage device 40 has a busy signal output circuit 44 and a control circuit 45.

なお、図19の例では、メモリセル部24は、固定不良のメモリセルの代わりに使用される複数の冗長セルを含む冗長セル部24cを有しているがなくてもよい。
検査ビット訂正部41aと、リードデータ訂正部41bは、図15に示したような複数のXOR回路により実現できる。
In the example of FIG. 19, the memory cell unit 24 may or may not have a redundant cell unit 24c including a plurality of redundant cells used in place of the memory cell having a fixed defect.
The inspection bit correction unit 41a and the read data correction unit 41b can be realized by a plurality of XOR circuits as shown in FIG.

選択回路42aは、エラーMAXフラグ生成回路43aが出力するフラグERRmaxに基づいて、検査ビットWPBまたはエラー訂正された検査ビットRPBaの何れか一方を選択して出力する。 The selection circuit 42a selects and outputs either the inspection bit WPB or the error-corrected inspection bit RPBa based on the flag ERRmax output by the error MAX flag generation circuit 43a.

選択回路42bは、フラグERRmaxに基づいて、ライトデータWDまたはエラー訂正されたリードデータRDaの何れか一方を選択して出力する。
図20は、選択回路の一例を示す図である。
The selection circuit 42b selects and outputs either the write data WD or the error-corrected read data RDa based on the flag ERRmax.
FIG. 20 is a diagram showing an example of a selection circuit.

図20では、図19に示した選択回路42aの一例が示されている。選択回路42bについても、選択回路42aと同様の回路で実現できる。
選択回路42aは、インバータ回路42a1,42a2,42a3,42a4、nチャネル型MOSFETであるトランジスタ42a5,42a6、pチャネル型MOSFETであるトランジスタ42a7,42a8を有する。
FIG. 20 shows an example of the selection circuit 42a shown in FIG. The selection circuit 42b can also be realized by the same circuit as the selection circuit 42a.
The selection circuit 42a includes inverter circuits 42a1, 42a2, 42a3, 42a4, transistors 42a5, 42a6 which are n-channel MOSFETs, and transistors 42a7, 42a8 which are p-channel MOSFETs.

インバータ回路42a1の入力端子にはビットP<*>の値が入力され、インバータ回路42a2の入力端子には、ビットpa<*>の値が供給される。ビットP<*>は、11ビットの検査ビットWPBのビットP<0>〜P<10>の何れかである。ビットpa<*>は、エラー訂正された11ビットの検査ビットRPBaのビットpa<0>〜pa<10>の何れかである。インバータ回路42a1の出力端子は、トランジスタ42a5,42a7の一方の入出力端子(ドレインまたはソース)に接続されており、インバータ回路42a2の出力端子は、トランジスタ42a6,42a8の一方の入出力端子に接続されている。 The value of bit P <*> is input to the input terminal of the inverter circuit 42a1, and the value of bit pa <*> is supplied to the input terminal of the inverter circuit 42a2. Bit P <*> is any of bits P <0> to P <10> of the 11-bit inspection bit WPB. Bit pa <*> is any of bits pa <0> to pa <10> of the error-corrected 11-bit inspection bit RPBa. The output terminal of the inverter circuit 42a1 is connected to one input / output terminal (drain or source) of the transistors 42a5 and 42a7, and the output terminal of the inverter circuit 42a2 is connected to one input / output terminal of the transistors 42a6 and 42a8. ing.

トランジスタ42a5,42a7の他方の入出力端子と、トランジスタ42a6,42a8の他方の入出力端子は、インバータ回路42a4の入力端子に接続されている。また、トランジスタ42a6,42a7の制御端子(ゲート)とインバータ回路42a3の入力端子にはフラグERRmaxが供給され、トランジスタ42a5,42a8の制御端子には、インバータ回路42a3の出力端子に接続されている。 The other input / output terminals of the transistors 42a5 and 42a7 and the other input / output terminals of the transistors 42a6 and 42a8 are connected to the input terminals of the inverter circuit 42a4. Further, the flag ERRmax is supplied to the control terminals (gates) of the transistors 42a6 and 42a7 and the input terminals of the inverter circuit 42a3, and the control terminals of the transistors 42a5 and 42a8 are connected to the output terminals of the inverter circuit 42a3.

フラグERRmaxがLレベルの場合、トランジスタ42a5,42a7がオンし、トランジスタ42a6,42a8がオフするので、インバータ回路42a4の出力は、ビットP<*>の値となる。 When the flag ERRmax is L level, the transistors 42a5 and 42a7 are turned on and the transistors 42a6 and 42a8 are turned off, so that the output of the inverter circuit 42a4 becomes the value of the bit P <<.

フラグERRmaxがHレベルの場合、トランジスタ42a5,42a7がオフし、トランジスタ42a6,42a8がオンするので、インバータ回路42a4の出力は、ビットpa<*>の値となる。 When the flag ERRmax is H level, the transistors 42a5 and 42a7 are turned off and the transistors 42a6 and 42a8 are turned on, so that the output of the inverter circuit 42a4 becomes the value of the bit pa <*>.

選択回路42aは、検査ビットWPBのビットP<0>〜P<10>の各ビットに対応して、上記のような回路を11個有する。
図19のエラーMAXフラグ生成回路43aは、シンドロームデコーダ26bが生成するデコード信号SO<0>〜SO<2047>に基づいて、エラービットの数が検出可能な最大数に達したときに、その旨を示す検出信号であるフラグERRmaxを生成する。第3の実施の形態の半導体記憶装置40では、ゴレイ符号を用いるため、検出可能な最大数は3ビットである。以下では、エラーMAXフラグ生成回路43aは、エラービットが3ビットである場合、HレベルのフラグERRmaxを出力するものとする。
The selection circuit 42a has 11 circuits as described above corresponding to the bits P <0> to P <10> of the inspection bit WPB.
The error MAX flag generation circuit 43a of FIG. 19 indicates that when the number of error bits reaches the maximum number that can be detected based on the decoding signals SO <0> to SO <2047> generated by the syndrome decoder 26b. Generates the flag ERRmax, which is a detection signal indicating. In the semiconductor storage device 40 of the third embodiment, since the Golay code is used, the maximum number that can be detected is 3 bits. In the following, it is assumed that the error MAX flag generation circuit 43a outputs the H level flag ERRmax when the error bit is 3 bits.

図21は、エラーMAXフラグ生成回路の一例を示す図である。
なお、図21には、シンドロームデコーダ26bの一部と共に、エラーMAXフラグ生成回路43aの一部が示されている。
FIG. 21 is a diagram showing an example of an error MAX flag generation circuit.
Note that FIG. 21 shows a part of the error MAX flag generation circuit 43a together with a part of the syndrome decoder 26b.

エラーMAXフラグ生成回路43aは、複数のトランジスタ(たとえば、トランジスタ50a,50b,50c,50d,50e,50f,50g,50h,50i)、wired−OR型の信号バス51a,51b,51cを有する。さらにエラーMAXフラグ生成回路43aは、0ビットエラー検出回路52a1、1ビットエラー検出回路52a2、2ビットエラー検出回路52a3、フラグ出力回路53を有する。 The error MAX flag generation circuit 43a has a plurality of transistors (for example, transistors 50a, 50b, 50c, 50d, 50e, 50f, 50g, 50h, 50i) and a wire-OR type signal bus 51a, 51b, 51c. Further, the error MAX flag generation circuit 43a includes a 0-bit error detection circuit 52a1, a 1-bit error detection circuit 52a2, a 2-bit error detection circuit 52a3, and a flag output circuit 53.

複数のトランジスタは、nチャネル型MOSFETである。複数のトランジスタのそれぞれのゲートには、デコード信号SO<0>〜SO<2047>のうち、0ビットエラー、1ビットエラー、2ビットエラーの発生の有無を示すデコード信号の何れかが供給される。たとえば、図9に示したように、デコード信号SO<7>などの3ビットエラーの発生の有無を示す信号は、複数のトランジスタの何れのゲートにも供給されない。複数のトランジスタのそれぞれのドレインは、信号バス51a〜51cの何れかに接続されている。また複数のトランジスタのそれぞれのソースは接地されている(基準電位(たとえば、0V)となっている)。 The plurality of transistors are n-channel MOSFETs. Of the decoded signals SO <0> to SO <2047>, one of the decoded signals indicating whether or not a 0-bit error, a 1-bit error, or a 2-bit error has occurred is supplied to each gate of the plurality of transistors. .. For example, as shown in FIG. 9, a signal indicating whether or not a 3-bit error has occurred, such as the decode signal SO <7>, is not supplied to any of the gates of the plurality of transistors. Each drain of the plurality of transistors is connected to any of the signal buses 51a to 51c. Further, each source of the plurality of transistors is grounded (at a reference potential (for example, 0V)).

たとえば、トランジスタ50aのゲートには、デコード信号SO<0>が供給され、トランジスタ50aのドレインは、信号バス51aに接続されている。
信号バス51aは、0ビットエラー検出回路52a1に接続されており、信号バス51bは、1ビットエラー検出回路52a2に接続されており、信号バス51cは、2ビットエラー検出回路52a3に接続されている。以下信号バス51aを伝搬する信号を信号e0b、信号バス51bを伝搬する信号を信号e1b、信号バス51cを伝搬する信号を信号e2bという。
For example, the decode signal SO <0> is supplied to the gate of the transistor 50a, and the drain of the transistor 50a is connected to the signal bus 51a.
The signal bus 51a is connected to the 0-bit error detection circuit 52a1, the signal bus 51b is connected to the 1-bit error detection circuit 52a2, and the signal bus 51c is connected to the 2-bit error detection circuit 52a3. .. Hereinafter, the signal propagating on the signal bus 51a is referred to as signal e0b, the signal propagating on the signal bus 51b is referred to as signal e1b, and the signal propagating on the signal bus 51c is referred to as signal e2b.

0ビットエラー検出回路52a1は、信号e0bに基づいて、0ビットエラー(つまりエラービットがないこと)の発生の有無を示す信号err0を出力する。1ビットエラー検出回路52a2は、信号e1bに基づいて、1ビットエラーの発生の有無を示す信号err1を出力する。2ビットエラー検出回路52a3は、信号e2bに基づいて、2ビットエラーの発生の有無を示す信号err2を出力する。 The 0-bit error detection circuit 52a1 outputs a signal err0 indicating whether or not a 0-bit error (that is, no error bit) has occurred, based on the signal e0b. The 1-bit error detection circuit 52a2 outputs a signal err1 indicating whether or not a 1-bit error has occurred, based on the signal e1b. The 2-bit error detection circuit 52a3 outputs a signal err2 indicating whether or not a 2-bit error has occurred, based on the signal e2b.

たとえば、2ビットエラー検出回路52a3は、pチャネル型MOSFETであるトランジスタ52b,52c、インバータ回路52dを有する。なお、トランジスタ52cは、弱トランジスタである。 For example, the 2-bit error detection circuit 52a3 includes transistors 52b and 52c, which are p-channel MOSFETs, and an inverter circuit 52d. The transistor 52c is a weak transistor.

トランジスタ52b,52cのドレイン及びインバータ回路52dの入力端子は、信号バス51cに接続されている。トランジスタ52b,52cのソースには、電源電圧が供給される。トランジスタ52bのゲートには、リセット信号rstbが、たとえば、制御回路45から供給され、トランジスタ52cのゲート及びインバータ回路52dの出力端子の電位が、信号err2となる。 The drain of the transistors 52b and 52c and the input terminal of the inverter circuit 52d are connected to the signal bus 51c. A power supply voltage is supplied to the sources of the transistors 52b and 52c. A reset signal rstb is supplied to the gate of the transistor 52b, for example, from the control circuit 45, and the potential of the gate of the transistor 52c and the output terminal of the inverter circuit 52d becomes the signal err2.

2ビットエラー検出回路52a3は、リセット信号rstbがHレベルで、信号e2bがLレベルになるとき、2ビットエラーが検出されたことを示すHレベルの信号err2を出力する。 The 2-bit error detection circuit 52a3 outputs an H-level signal err2 indicating that a 2-bit error has been detected when the reset signal rstb is at the H level and the signal e2b is at the L level.

図21では図示が省略されているが、0ビットエラー検出回路52a1、1ビットエラー検出回路52a2についても、2ビットエラー検出回路52a3と同様の回路構成となっている。 Although not shown in FIG. 21, the 0-bit error detection circuit 52a1 and the 1-bit error detection circuit 52a2 have the same circuit configuration as the 2-bit error detection circuit 52a3.

フラグ出力回路53は、信号err0〜err2に基づいて、エラービットが3ビットであるか否かを示すフラグERRmaxを出力する。
図22は、フラグ出力回路の一例を示す図である。
The flag output circuit 53 outputs a flag ERRmax indicating whether or not the error bit is 3 bits based on the signals err0 to err2.
FIG. 22 is a diagram showing an example of a flag output circuit.

フラグ出力回路53は、NAND回路53a,53b、NOR回路53c,53d,53e、インバータ回路53f,53g,53h,53i,53j,53k、信号線53l、トランジスタ53m,53n,53oを有する。 The flag output circuit 53 includes NAND circuits 53a, 53b, NOR circuits 53c, 53d, 53e, inverter circuits 53f, 53g, 53h, 53i, 53j, 53k, signal lines 53l, and transistors 53m, 53n, 53o.

NAND回路53aの4つの入力端子の3つには電源電圧が供給され、1つの入力端子にはタイミング信号timeが供給される。NAND回路53aの出力端子は、NOR回路53cの一方の入力端子に接続されている。NOR回路53cの他方の入力端子は接地されており、NOR回路53cの出力端子は、NAND回路53bの一方の入力端子に接続されている。NAND回路53bの他方の入力端子には電源電圧が供給され、NAND回路53bの出力端子は、インバータ回路53fを介してトランジスタ53mのゲートに接続されている。 A power supply voltage is supplied to three of the four input terminals of the NAND circuit 53a, and a timing signal time is supplied to one input terminal. The output terminal of the NAND circuit 53a is connected to one input terminal of the NOR circuit 53c. The other input terminal of the NOR circuit 53c is grounded, and the output terminal of the NOR circuit 53c is connected to one input terminal of the NAND circuit 53b. A power supply voltage is supplied to the other input terminal of the NAND circuit 53b, and the output terminal of the NAND circuit 53b is connected to the gate of the transistor 53m via the inverter circuit 53f.

トランジスタ53mは、nチャネル型MOSFETである。トランジスタ53mのドレインは信号線53lを介して、pチャネル型MOSFETであるトランジスタ53n,53oのドレイン及びインバータ回路53gの入力端子に接続されている。トランジスタ53mのソースは接地されている。 The transistor 53m is an n-channel MOSFET. The drain of the transistor 53m is connected to the drain of the transistors 53n and 53o, which are p-channel MOSFETs, and the input terminal of the inverter circuit 53g via the signal line 53l. The source of the transistor 53m is grounded.

トランジスタ53n,53oのソースには電源電圧が供給され、トランジスタ53nのゲートにはリセット信号rstbが供給される。トランジスタ53lのゲート及びインバータ回路53gの出力端子は、インバータ回路53h〜53jを介してNOR回路53eの一方の入力端子に接続されている。なお、トランジスタ53oは弱トランジスタである。 A power supply voltage is supplied to the sources of the transistors 53n and 53o, and a reset signal rstb is supplied to the gate of the transistors 53n. The gate of the transistor 53l and the output terminal of the inverter circuit 53g are connected to one input terminal of the NOR circuit 53e via the inverter circuits 53h to 53j. The transistor 53o is a weak transistor.

NOR回路53eの他方の入力端子には、インバータ回路53kの出力端子が接続されている。NOR回路53eの出力端子の電位が、フラグERRmaxである。インバータ回路53kの入力端子には、NOR回路53dの出力端子が接続されている。NOR回路53dの3つの入力端子には、信号err0〜err2が供給される。 The output terminal of the inverter circuit 53k is connected to the other input terminal of the NOR circuit 53e. The potential of the output terminal of the NOR circuit 53e is the flag ERRmax. The output terminal of the NOR circuit 53d is connected to the input terminal of the inverter circuit 53k. Signals err0 to err2 are supplied to the three input terminals of the NOR circuit 53d.

このような、フラグ出力回路53では、信号err0〜err2が何れもLレベルの場合、すなわち3ビット以上のエラービットがある場合、インバータ回路53kの出力はLレベルとなる。リセット信号rstbがHレベルで、タイミング信号timeがHレベルになるとき、3ビットエラーの発生を示すデコード信号が出力されるタイミングを考慮した遅延時間後に、インバータ回路53jの出力はLレベルとなる。これにより、NOR回路53eは、3ビットエラーの発生を示す検出信号であるHレベルのフラグERRmaxを出力する。 In such a flag output circuit 53, when the signals err0 to err2 are all L level, that is, when there are error bits of 3 bits or more, the output of the inverter circuit 53k becomes L level. When the reset signal rstb is at H level and the timing signal time is at H level, the output of the inverter circuit 53j becomes L level after a delay time considering the timing at which the decode signal indicating the occurrence of a 3-bit error is output. As a result, the NOR circuit 53e outputs the H level flag ERRmax, which is a detection signal indicating the occurrence of a 3-bit error.

図19のビジー信号出力回路44は、フラグERRmaxがHレベルになると、半導体記憶装置40が書き戻しを行うためにビジー状態であることを示す信号busy(たとえば、Hレベルの信号)を所定期間出力する。ビジー信号出力回路44は、たとえば、フラグERRmaxがHレベルになると、所定期間Hレベルの信号busyを出力するパルス信号発生回路である。 When the flag ERRmax reaches the H level, the busy signal output circuit 44 of FIG. 19 outputs a signal busy (for example, an H level signal) indicating that the semiconductor storage device 40 is in a busy state for writing back for a predetermined period of time. To do. The busy signal output circuit 44 is, for example, a pulse signal generation circuit that outputs a signal busy of the H level for a predetermined period when the flag ERRmax reaches the H level.

(第3の実施の形態の半導体記憶装置40の動作例)
以下、半導体記憶装置40の動作の一例を説明する。
メモリセル部24から8ビットのリードデータRDが読み出された場合、エラー検出回路43には、そのリードデータRDと、試験モード設定回路25から設定信号seta〜setcに基づく4ビットの仮想データが供給される。さらに、そのリードデータRDに対応付けられた検査ビットRPBもメモリセル部24から読み出され、エラー検出回路43に供給される。
(Operation example of the semiconductor storage device 40 of the third embodiment)
Hereinafter, an example of the operation of the semiconductor storage device 40 will be described.
When 8-bit read data RD is read from the memory cell unit 24, the error detection circuit 43 contains the read data RD and 4-bit virtual data based on the set signals seta to setc from the test mode setting circuit 25. Be supplied. Further, the inspection bit RPB associated with the read data RD is also read from the memory cell unit 24 and supplied to the error detection circuit 43.

なお、図21では図示を省略しているが、エラーMAXフラグ生成回路43aは、制御信号setrにより制御され、制御信号setrが1のとき有効となる。また、エラーMAXフラグ生成回路43aは、制御信号setrが0のときは無効となり、フラグERRmaxはLレベルとなる。前述の設定信号seta〜setcを用いた出荷前試験においては、設定信号setrは0となり、エラーMAXフラグ生成回路43aが無効となる。設定信号setrを1に変えて出荷することで、出荷後にエラーMAXフラグ生成回路43aが機能し、エラービットが3ビットに達したときにエラーMAXフラグがHレベルとなる。 Although not shown in FIG. 21, the error MAX flag generation circuit 43a is controlled by the control signal setr and is effective when the control signal setr is 1. Further, the error MAX flag generation circuit 43a is invalid when the control signal setr is 0, and the flag ERRmax becomes the L level. In the pre-shipment test using the above-mentioned setting signals seta to setc, the setting signal setr becomes 0, and the error MAX flag generation circuit 43a becomes invalid. By changing the setting signal setr to 1 and shipping, the error MAX flag generation circuit 43a functions after shipping, and when the error bit reaches 3 bits, the error MAX flag becomes H level.

エラー検出回路43のシンドローム生成回路26aは、前述のように、図8に示したような対応関係に基づいてXOR演算により、シンドロームのビットS<0>〜S<10>を生成する。そして、シンドロームデコーダ26bは、シンドロームのビットS<0>〜S<10>に基づいて、エラービットの検出結果である、エラー訂正フラグerrda<0>〜errda<11>,errpa<0>〜errpa<10>を出力する。 As described above, the syndrome generation circuit 26a of the error detection circuit 43 generates the syndrome bits S <0> to S <10> by the XOR operation based on the correspondence as shown in FIG. Then, the syndrome decoder 26b is based on the syndrome bits S <0> to S <10>, and is an error correction flag errda <0> to errda <11>, errpa <0> to errpa, which are error bit detection results. Output <10>.

エラー信号出力回路26dは、エラー訂正フラグerrda<0>〜errda<11>と、仮想データビットエラーフラグerrvdに基づいて、エラー信号errd<0>〜errd<11>を出力する。また、エラー信号出力回路26dは、エラー訂正フラグerrpa<0>〜errpa<10>に基づいて、エラー信号errp<0>〜errp<10>を出力する。 The error signal output circuit 26d outputs error signals errd <0> to errd <11> based on the error correction flags errda <0> to errda <11> and the virtual data bit error flag errvd. Further, the error signal output circuit 26d outputs error signals errp <0> to errp <10> based on the error correction flags errpa <0> to errpa <10>.

検査ビット訂正部41aは、エラー信号errd<0>〜errd<11>,errp<0>〜errp<10>のうち、エラー信号errp<0>〜errp<10>に基づいて、検査ビットRPBのエラービットを訂正する。また、リードデータ訂正部41bは、エラー信号errd<0>〜errd<7>に基づいて、リードデータRDのエラービットを訂正する。 The inspection bit correction unit 41a sets the inspection bit RPB based on the error signals errp <0> to errp <10> among the error signals errd <0> to errd <11> and errp <0> to errp <10>. Correct the error bit. Further, the read data correction unit 41b corrects the error bit of the read data RD based on the error signals errd <0> to errd <7>.

さらに、第3の実施の形態の半導体記憶装置40のエラー検出回路43において、エラーMAXフラグ生成回路43aは、シンドロームデコーダ26bが生成するデコード信号SO<0>〜SO<2047>に基づいて、フラグERRmaxを生成する。 Further, in the error detection circuit 43 of the semiconductor storage device 40 of the third embodiment, the error MAX flag generation circuit 43a is a flag based on the decode signals SO <0> to SO <2047> generated by the syndrome decoder 26b. Generate ERRmax.

リードデータRDと検査ビットRPBと仮想データとを合わせた全23ビット中、エラービットが2ビット以下の場合には、フラグERRmaxはLレベルとなる。このとき、選択回路42aは、検査ビットWPBを選択して出力する。これにより、図示しない書き込み回路によって、検査ビットWPBがメモリセル部24の検査ビット記憶部24aに書き込まれる。また、選択回路42bは、ライトデータWDを選択して出力する。これにより、図示しない書き込み回路によって、ライトデータWDがメモリセル部24のデータ記憶部24bに書き込まれる。またビジー信号出力回路44が出力する信号busyはLレベルとなる。 If the error bit is 2 bits or less out of the total of 23 bits including the read data RD, the inspection bit RPB, and the virtual data, the flag ERRmax becomes the L level. At this time, the selection circuit 42a selects and outputs the inspection bit WPB. As a result, the inspection bit WPB is written to the inspection bit storage unit 24a of the memory cell unit 24 by a writing circuit (not shown). Further, the selection circuit 42b selects and outputs the write data WD. As a result, the write data WD is written to the data storage unit 24b of the memory cell unit 24 by a writing circuit (not shown). Further, the signal busy output by the busy signal output circuit 44 is at the L level.

リードデータRDと検査ビットRPBと仮想データとを合わせた全23ビット中、エラービットが3ビットの場合、フラグERRmaxはHレベルとなる。このとき、選択回路42aは、エラー訂正された検査ビットRPBaを選択して出力する。これにより、図示しない書き込み回路によって、検査ビットRPBaがメモリセル部24の検査ビット記憶部24aに書き込まれる。また、選択回路42bは、エラー訂正されたリードデータRDaを選択して出力する。これにより、図示しない書き込み回路によって、リードデータRDaがメモリセル部24のデータ記憶部24bに書き込まれる。 If the error bit is 3 bits out of a total of 23 bits including the read data RD, the inspection bit RPB, and the virtual data, the flag ERRmax becomes the H level. At this time, the selection circuit 42a selects and outputs the error-corrected inspection bit RPBa. As a result, the inspection bit RPBa is written to the inspection bit storage unit 24a of the memory cell unit 24 by a writing circuit (not shown). Further, the selection circuit 42b selects and outputs the error-corrected read data RDa. As a result, the read data RDa is written to the data storage unit 24b of the memory cell unit 24 by a writing circuit (not shown).

なお、検査ビットRPBaとリードデータRDaは、検査ビットRPBとリードデータRDが読み出されたアドレスのメモリセルに書き込まれる。
またビジー信号出力回路44が出力する信号busyはHレベルとなる。なお、信号busyがHレベルの場合、データ入出力部21を介した外部からのライトデータWDの供給は停止される。
The inspection bit RPBa and the read data RDa are written to the memory cell at the address where the inspection bit RPB and the read data RD are read.
Further, the signal busy output by the busy signal output circuit 44 becomes H level. When the signal bush is H level, the supply of the write data WD from the outside via the data input / output unit 21 is stopped.

たとえば、出荷前試験が第2試験モードで行われ、その後、通常モードへの変更が行われる場合、半導体記憶装置40は、出荷後に新たに発生したエラービットを23ビット当たり最低でも2ビットまで訂正できる。出荷後に突発的なエラーが累積され、エラービットの数が、トータルで3ビットになった時点で、エラー訂正された検査ビットRPBaと、リードデータRDaが、メモリセル部24に書き戻される。 For example, if the pre-shipment test is performed in the second test mode and then the mode is changed to the normal mode, the semiconductor storage device 40 corrects the newly generated error bits after shipment to at least 2 bits per 23 bits. it can. When sudden errors are accumulated after shipment and the total number of error bits reaches 3 bits, the error-corrected inspection bit RPBa and read data RDa are written back to the memory cell unit 24.

以下、半導体記憶装置40が有する効果を説明する。
半導体記憶装置には、読み出し時にメモリセルにストレスがかかるものがあり、まれではあるが、読み出しを行うことでメモリセルに記憶されたデータが壊れ、突発的なエラーが生じる場合がある。読み出しが繰り返されると、そのエラーが複数回発生し、エラービットが累積することになる。エラービット数が、ECCの訂正能力の上限(ゴレイ符号が用いられる場合は3ビット)を超えると、システム的なメモリエラーが引き起こされる。
Hereinafter, the effects of the semiconductor storage device 40 will be described.
Some semiconductor storage devices put stress on the memory cells at the time of reading, and in rare cases, the data stored in the memory cells may be corrupted by the reading, and a sudden error may occur. When the reading is repeated, the error occurs a plurality of times, and the error bits are accumulated. If the number of error bits exceeds the upper limit of ECC correction capability (3 bits when Golay code is used), a systematic memory error is caused.

第3の実施の形態の半導体記憶装置40では、エラービット数が訂正能力の上限である3ビットになると、エラー訂正回路41でエラー訂正された検査ビットRPBaと、リードデータRDaが、メモリセル部24に書き戻される。つまり、揮発性メモリにおけるリフレッシュ動作に対応した動作が行われる。これにより、上記突発的なエラーがメモリセル自体の固定不良でなければ、エラービットの累積をゼロにリセットでき、システム的なメモリエラーの発生を未然に防ぐことができる。 In the semiconductor storage device 40 of the third embodiment, when the number of error bits reaches 3 bits, which is the upper limit of the correction capability, the check bit RPBa and the read data RDa that have been error-corrected by the error correction circuit 41 are stored in the memory cell unit. Written back to 24. That is, the operation corresponding to the refresh operation in the volatile memory is performed. As a result, if the sudden error is not a fixed defect of the memory cell itself, the accumulation of error bits can be reset to zero, and the occurrence of a systematic memory error can be prevented.

なお、半導体記憶装置40のメモリセル部24は冗長セルを有していてもよい。その場合、半導体記憶装置40の制御回路45は、検査ビットRPBaと、リードデータRDaの検査ビット記憶部24a、データ記憶部24bへの書き戻し後に、再度読み出しを行い、再びフラグERRmaxがHレベルとなるか否かを検出する。再びフラグERRmaxがHレベルとなる場合、制御回路45は、メモリセル自身の固定不良が発生しているとみなし、そのメモリセルのアドレスを冗長セルのアドレスに置き換える処理を行う。これにより、そのメモリセルのアドレスに対するデータの書き込みや読み出しが行われる場合、冗長セルへデータの書き込み、または冗長セルからデータの読み出しが行われるようになる。 The memory cell unit 24 of the semiconductor storage device 40 may have redundant cells. In that case, the control circuit 45 of the semiconductor storage device 40 writes back to the inspection bit RPBa, the inspection bit storage unit 24a, and the data storage unit 24b of the read data RDa, and then reads the data again, and the flag ERRmax is set to the H level again. Detects whether or not it becomes. When the flag ERRmax becomes H level again, the control circuit 45 considers that a fixing defect of the memory cell itself has occurred, and performs a process of replacing the address of the memory cell with the address of the redundant cell. As a result, when data is written or read to the address of the memory cell, data is written to the redundant cell or data is read from the redundant cell.

図23は、冗長セルを有する第3の実施の形態の半導体記憶装置の一例の動作の流れを示すフローチャートである。
読み出し処理が行われると(ステップS10)、制御回路45は、フラグERRmaxがHレベルであるか否かを判定する(ステップS11)。読み出し処理では、メモリセル部24からリードデータRDとそのリードデータRDに対応付けられた検査ビットRPBが読み出される。
FIG. 23 is a flowchart showing an operation flow of an example of the semiconductor storage device of the third embodiment having redundant cells.
When the read process is performed (step S10), the control circuit 45 determines whether or not the flag ERRmax is at the H level (step S11). In the read process, the read data RD and the inspection bit RPB associated with the read data RD are read from the memory cell unit 24.

フラグERRmaxがHレベルである場合には、エラー訂正されたリードデータRDaと検査ビットRPBaが、メモリセル部24に書き戻される(ステップS12)。ステップS12の処理では、検査ビットRPBaとリードデータRDaは、検査ビットRPBとリードデータRDが読み出されたアドレスのメモリセルに書き込まれる。 When the flag ERRmax is H level, the error-corrected read data RDa and the inspection bit RPBa are written back to the memory cell unit 24 (step S12). In the process of step S12, the inspection bit RPBa and the read data RDa are written to the memory cell at the address where the inspection bit RPB and the read data RD are read.

フラグERRmaxがLレベルである場合、半導体記憶装置40に入力されるコマンドに応じた通常動作(書き込み処理や読み出し処理など)が行われる(ステップS17)。
一方、ステップS12の処理後、制御回路45の制御のもと、再読み出し処理が行われる(ステップS13)。再読み出し処理では、メモリセル部24に書き戻された検査ビットRPBaとリードデータRDaが、再度読み出される。
When the flag ERRmax is at the L level, normal operations (write processing, read processing, etc.) according to the command input to the semiconductor storage device 40 are performed (step S17).
On the other hand, after the processing of step S12, the re-reading processing is performed under the control of the control circuit 45 (step S13). In the re-reading process, the inspection bit RPBa and the read data RDa written back to the memory cell unit 24 are read again.

そして、制御回路45は、フラグERRmaxがHレベルであるか否かを再度判定する(ステップS14)。フラグERRmaxがLレベルである場合、ステップS17の処理が行われる。 Then, the control circuit 45 again determines whether or not the flag ERRmax is at the H level (step S14). When the flag ERRmax is the L level, the process of step S17 is performed.

フラグERRmaxが再度Hレベルとなる場合には、たとえば、制御回路45が、3ビットのエラービットが記憶されているメモリセルのアドレスの代わりに、冗長セルのアドレスを指定する。そして図示しない書き込み回路が、検査ビットRPBaとリードデータRDaに含まれるエラー訂正された上記3ビットの値を、指定されたアドレスの冗長セルに書き込む(ステップS15)。検査ビットRPBaとリードデータRDaに含まれるその他のビットの値は、検査ビット記憶部24aまたはデータ記憶部24bに書き込まれる。 When the flag ERRmax becomes H level again, for example, the control circuit 45 specifies the address of the redundant cell instead of the address of the memory cell in which the 3-bit error bit is stored. Then, a writing circuit (not shown) writes the error-corrected 3-bit values included in the inspection bit RPBa and the read data RDa to the redundant cell at the specified address (step S15). The values of the inspection bit RPBa and the other bits included in the read data RDa are written in the inspection bit storage unit 24a or the data storage unit 24b.

なお、検査ビット記憶部24aやデータ記憶部24bのアドレスの冗長セルのアドレスへの置き換え処理がメモリセルアレイの行または列ごとに行われる場合、エラービットが記憶されているメモリセルと同じ行または列アドレスの値も読み出される。そして、その値も指定された行または列アドレスの冗長セルに書き込まれる。 When the processing of replacing the address of the inspection bit storage unit 24a or the data storage unit 24b with the address of the redundant cell is performed for each row or column of the memory cell array, the same row or column as the memory cell in which the error bit is stored is performed. The value of the address is also read. The value is also written to the redundant cell at the specified row or column address.

その後、制御回路45の制御のもと、図示しない書き込み回路は、冗長セルのアドレスに置き換えられた検査ビット記憶部24aまたはデータ記憶部24bのアドレスを、冗長セルに書き込む(ステップS16)。これにより、次に冗長セルのアドレスに置き換えられた検査ビット記憶部24aまたはデータ記憶部24bのアドレスが指定された場合、たとえば、制御回路45は、冗長セルのアドレスに変換して、読み出しや書き込みを行えるようにする。 After that, under the control of the control circuit 45, the writing circuit (not shown) writes the address of the inspection bit storage unit 24a or the data storage unit 24b replaced with the address of the redundant cell to the redundant cell (step S16). As a result, when the address of the inspection bit storage unit 24a or the data storage unit 24b replaced with the address of the redundant cell is specified next, for example, the control circuit 45 converts it to the address of the redundant cell and reads or writes it. To be able to do.

ステップS16の処理後は、ステップS17の処理が行われる。
以上のような処理によれば、メモリセル自身の固定不良にも対応でき、さらに半導体記憶装置40の信頼性を高めることができる。
After the process of step S16, the process of step S17 is performed.
According to the above processing, it is possible to deal with improper fixing of the memory cell itself, and further improve the reliability of the semiconductor storage device 40.

以上、実施の形態に基づき、本発明の半導体記憶装置の一観点について説明してきたが、これらは一例にすぎず、上記の記載に限定されるものではない。
たとえば、上記の説明では、主に3ビットエラー検出及び訂正に対応した符号を用いた半導体記憶装置を説明したが、これに限定されない。2ビットエラー検出及び訂正に対応した符号または4ビットエラー検出及び訂正に対応した符号を用いた半導体記憶装置についても、その符号に対応するように仮想データのビット数や意図的に発生させるビット数を変更し、回路を適宜変更すれば実現可能である。
Although one aspect of the semiconductor storage device of the present invention has been described above based on the embodiments, these are merely examples and are not limited to the above description.
For example, in the above description, a semiconductor storage device using a code corresponding to 3-bit error detection and correction has been mainly described, but the present invention is not limited thereto. For semiconductor storage devices that use a code that supports 2-bit error detection and correction or a code that supports 4-bit error detection and correction, the number of bits of virtual data and the number of bits that are intentionally generated so as to correspond to the code. This can be achieved by changing the above and changing the circuit as appropriate.

10 半導体記憶装置
11 データ入出力部
12 仮想データ設定回路
13 検査ビット生成回路
14 メモリセル部
14a 検査ビット記憶部
14b データ記憶部
15 試験モード設定回路
16 エラー検出回路
17 エラー訂正回路
18a〜18c 仮想データ
rd,rda リードデータ
rpb,wpb 検査ビット
set 設定信号
wd ライトデータ
10 Semiconductor storage device 11 Data input / output unit 12 Virtual data setting circuit 13 Inspection bit generation circuit 14 Memory cell unit 14a Inspection bit storage unit 14b Data storage unit 15 Test mode setting circuit 16 Error detection circuit 17 Error correction circuit 18a to 18c Virtual data rd, rda read data rpb, wpb inspection bit set setting signal wd write data

Claims (9)

第1のビット数のライトデータと、第2のビット数の第1のデータとに基づいて、第3のビット数を上限とした複数ビットのエラー検出及び訂正に対応した符号の第1の検査ビットを生成する検査ビット生成回路と、
前記ライトデータと、前記第1の検査ビットとを記憶するメモリセル部と、
設定信号に基づいて設定される動作状態が第1の状態のときに、前記第1のデータに対して少なくとも1ビットの値が異なる第2のデータを出力し、前記動作状態が第2の状態のときに、前記第2のデータよりも前記第1のデータに対して値が異なるビット数が少ない第3のデータを出力する設定回路と、
前記ライトデータに対応しており前記メモリセル部から読み出された第1のリードデータと、前記設定回路が出力する前記第2のデータまたは前記第3のデータと、に基づいて前記符号の第2の検査ビットを生成し、前記第1の検査ビットに対応しており前記メモリセル部から読み出された第3の検査ビットと、前記第2の検査ビットと、に基づいてエラービットを検出し、検出結果を出力するエラー検出回路と、
前記検出結果に基づいて、前記エラービットのうち、少なくとも、前記第1のリードデータにエラーが含まれていれば、該エラーを前記第3のビット数の範囲で訂正するエラー訂正回路と、
を有する半導体記憶装置。
Based on the write data of the first bit number and the first data of the second bit number, the first inspection of the code corresponding to the error detection and correction of a plurality of bits up to the third bit number. An inspection bit generation circuit that generates bits, and
A memory cell unit that stores the write data and the first inspection bit, and
When the operating state set based on the setting signal is the first state, the second data in which the value of at least one bit is different from the first data is output, and the operating state is the second state. At this time, a setting circuit that outputs a third data having a smaller number of bits with a different value from the first data than the second data, and a setting circuit.
The number of the code is based on the first read data corresponding to the write data and read from the memory cell unit and the second data or the third data output by the setting circuit. 2 inspection bits are generated, and an error bit is detected based on the third inspection bit corresponding to the first inspection bit and read from the memory cell unit and the second inspection bit. And the error detection circuit that outputs the detection result,
Based on the detection result, an error correction circuit that corrects the error within the range of the third bit number if at least the first read data contains an error among the error bits.
A semiconductor storage device having.
前記第3のデータは、前記第1のデータと同じ値である、請求項1に記載の半導体記憶装置。 The semiconductor storage device according to claim 1, wherein the third data has the same value as the first data. 前記第2のデータの前記第1のデータに対して値が異なる上限のビット数は、前記第3のビット数である、請求項1または2に記載の半導体記憶装置。 The semiconductor storage device according to claim 1 or 2, wherein the upper limit number of bits of the second data having a value different from that of the first data is the number of the third bit. 前記設定信号は複数の値をもち、前記複数の値のそれぞれは、前記第1のデータに対して値が異なるビット数が異なる複数の第4のデータの何れか1つに対応付けられており、
前記設定回路は、前記複数の値のうちの第1の値を受け、前記複数の第4のデータの1つであり、前記第1の値に対応付けられた前記第2のデータを選択して出力する、請求項1乃至3の何れか一項に記載の半導体記憶装置。
The setting signal has a plurality of values, and each of the plurality of values is associated with any one of a plurality of fourth data having different values and different numbers of bits with respect to the first data. ,
The setting circuit receives the first value of the plurality of values, is one of the plurality of fourth data, and selects the second data associated with the first value. The semiconductor storage device according to any one of claims 1 to 3, wherein the semiconductor storage device is output.
前記エラー検出回路は、前記第2のデータに関して検出された前記エラービットが、前記第1のデータに対して値が異なるビットと一致しない場合には、前記エラー訂正回路に、前記第1のリードデータの全ビット、または前記第3のビット数よりも多いビットの値を反転させる、請求項1乃至4の何れか一項に記載の半導体記憶装置。 When the error bit detected with respect to the second data does not match a bit having a value different from that of the first data, the error detection circuit leads the error correction circuit to the first read. The semiconductor storage device according to any one of claims 1 to 4, which inverts the values of all bits of data or bits larger than the third number of bits. 前記エラー検出回路は、前記エラービットのビット数が、前記第3のビット数を超える場合、前記エラー訂正回路に、前記第1のリードデータの全ビット、または前記第3のビット数よりも多いビットの値を反転させる、請求項1乃至4の何れか一項に記載の半導体記憶装置。 In the error detection circuit, when the number of bits of the error bit exceeds the number of the third bit, the error correction circuit has more than all the bits of the first read data or the number of the third bit. The semiconductor storage device according to any one of claims 1 to 4, wherein the bit value is inverted. 前記エラー訂正回路は、前記第1のリードデータに含まれる第1のエラービットを訂正して第2のリードデータを出力し、前記エラービットのうち、前記第3の検査ビットに含まれる第2のエラービットを訂正して第4の検査ビットを出力し、
前記エラー検出回路は、前記エラービットの数が前記第3のビット数に達したときに、前記第3のビット数に達したことを示す検出信号を出力し、
前記半導体記憶装置は、さらに、
前記エラー検出回路が前記検出信号を出力した場合、前記ライトデータの代わりに、前記第2のリードデータを選択して、前記メモリセル部に供給する第1の選択回路と、
前記エラー検出回路が前記検出信号を出力した場合、前記第1の検査ビットの代わりに、前記第4の検査ビットを選択して、前記メモリセル部に供給する第2の選択回路と、
を有する請求項1乃至6の何れか一項に記載の半導体記憶装置。
The error correction circuit, the first to correct the first error bit is Ru contained in the read data and outputs the second read data, of the error bit, first included in the third check bit Correct the error bit of 2 and output the 4th check bit.
When the number of the error bits reaches the third number of bits, the error detection circuit outputs a detection signal indicating that the number of the third bits has been reached.
The semiconductor storage device further
When the error detection circuit outputs the detection signal, the first selection circuit that selects the second read data instead of the write data and supplies it to the memory cell unit and the first selection circuit.
When the error detection circuit outputs the detection signal, the second selection circuit that selects the fourth inspection bit instead of the first inspection bit and supplies it to the memory cell unit and the second selection circuit.
The semiconductor storage device according to any one of claims 1 to 6.
前記メモリセル部は冗長セルを有し、
前記半導体記憶装置は、さらに、
前記メモリセル部に記憶された前記第2のリードデータと前記第4の検査ビットの読み出し時に、再度、前記検出信号が出力されるか否かを判定し、前記検出信号が出力される場合に、前記第1のエラービットと前記第2のエラービットの値を、前記エラー訂正回路による訂正後に、前記冗長セルに書き込む制御を行う制御回路、を有する請求項7に記載の半導体記憶装置。
The memory cell portion has a redundant cell and has a redundant cell.
The semiconductor storage device further
When reading the second read data and the fourth inspection bit stored in the memory cell unit, it is determined again whether or not the detection signal is output, and when the detection signal is output. The semiconductor storage device according to claim 7, further comprising a control circuit that controls writing the values of the first error bit and the second error bit into the redundant cell after being corrected by the error correction circuit.
前記符号はゴレイ符号であり、前記第1のビット数は8ビットであり、前記第2のビット数は4ビットである、請求項1乃至8の何れか一項に記載の半導体記憶装置。 The semiconductor storage device according to any one of claims 1 to 8, wherein the reference numeral is a Golay code, the first bit number is 8 bits, and the second bit number is 4 bits.
JP2017099120A 2017-05-18 2017-05-18 Semiconductor storage device Active JP6858636B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017099120A JP6858636B2 (en) 2017-05-18 2017-05-18 Semiconductor storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017099120A JP6858636B2 (en) 2017-05-18 2017-05-18 Semiconductor storage device

Publications (2)

Publication Number Publication Date
JP2018195122A JP2018195122A (en) 2018-12-06
JP6858636B2 true JP6858636B2 (en) 2021-04-14

Family

ID=64570514

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017099120A Active JP6858636B2 (en) 2017-05-18 2017-05-18 Semiconductor storage device

Country Status (1)

Country Link
JP (1) JP6858636B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022112914A (en) * 2021-01-22 2022-08-03 ソニーセミコンダクタソリューションズ株式会社 semiconductor storage device

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117430A (en) * 2006-10-31 2008-05-22 Toshiba Corp Integrated circuit with built-in rom having error correction function, and test method thereof
JP2008176828A (en) * 2007-01-16 2008-07-31 Toshiba Microelectronics Corp Test circuit and test method of error detection correcting circuit
JP5176646B2 (en) * 2008-03-28 2013-04-03 富士通セミコンダクター株式会社 Error correction function confirmation circuit, error correction function confirmation method, computer program thereof, and storage device

Also Published As

Publication number Publication date
JP2018195122A (en) 2018-12-06

Similar Documents

Publication Publication Date Title
US10803971B2 (en) Device for supporting error correction code and test method thereof
US9727412B2 (en) Memory device having error notification function
EP1815338B1 (en) Predictive error correction code generation facilitating high-speed byte-write in a semiconductor memory
US10198314B2 (en) Memory device with in-system repair capability
JP6841698B2 (en) Semiconductor device
JP2001014888A (en) Flash memory
US20070226597A1 (en) Semiconductor memory having embedded microcomputer with ECC function
US20170132075A1 (en) Serial bus dram error correction event notification
CN110580927A (en) Variable Resistor Random Access Memory
US10565049B2 (en) Memory device and repair method with column-based error code tracking
US9529667B2 (en) DRAM error correction event notification
KR20160016051A (en) Semiconductor memory device having selective ECC function
US8949694B2 (en) Address error detection
US11003529B2 (en) Encoding method and memory storage apparatus using the same
US20120151300A1 (en) Error Correcting
US10481973B2 (en) Memory module with dedicated repair devices
JPH03248251A (en) Information processor
JP4353329B2 (en) Semiconductor memory device and test method thereof
US12222829B2 (en) Memory module with dedicated repair devices
KR20070026075A (en) Semiconductor integrated circuit device
TWI808098B (en) Device for supporting error correction code and test method thereof
US10839935B2 (en) Dynamic redundancy for memory
JP6858636B2 (en) Semiconductor storage device
US20200089418A1 (en) Memory having different reliabilities
JP7235591B2 (en) Information processing circuit and information processing method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200129

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200129

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20200129

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20200708

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20200714

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20201125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210127

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210309

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210324

R150 Certificate of patent or registration of utility model

Ref document number: 6858636

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350