JP6439463B2 - Semiconductor memory device and method for controlling semiconductor memory device - Google Patents
Semiconductor memory device and method for controlling semiconductor memory device Download PDFInfo
- Publication number
- JP6439463B2 JP6439463B2 JP2015015702A JP2015015702A JP6439463B2 JP 6439463 B2 JP6439463 B2 JP 6439463B2 JP 2015015702 A JP2015015702 A JP 2015015702A JP 2015015702 A JP2015015702 A JP 2015015702A JP 6439463 B2 JP6439463 B2 JP 6439463B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- data group
- parity
- circuit
- write
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Description
本発明は、半導体記憶装置および半導体記憶装置の制御方法に関する。 The present invention relates to a semiconductor memory device and a method for controlling the semiconductor memory device.
半導体記憶装置内にデータとともにパリティデータを記憶し、パリティデータを用いて半導体記憶装置から読み出されるデータの誤りを検出または訂正する手法が知られている。例えば、複数ビットのデータをそれぞれ記憶する複数のメモリ素子のビット位置に対応して複数の誤り検出回路を設けることで、バースト誤りを発生させたメモリ素子が検出される(例えば、特許文献1参照)。また、メモリセルアレイから読み出す2つのデータ群の一方を選択的に出力する半導体記憶装置において、データ群の選択後、データ群に共通のパリティデータを用いて誤りを訂正することで、誤り訂正回路の回路規模は削減される(例えば、特許文献2参照)。 There is known a technique of storing parity data together with data in a semiconductor memory device, and detecting or correcting an error in data read from the semiconductor memory device using the parity data. For example, by providing a plurality of error detection circuits corresponding to the bit positions of a plurality of memory elements that respectively store a plurality of bits of data, a memory element that has caused a burst error is detected (see, for example, Patent Document 1). ). Further, in a semiconductor memory device that selectively outputs one of two data groups read from the memory cell array, the error correction circuit can be configured to correct errors using parity data common to the data groups after the data groups are selected. The circuit scale is reduced (see, for example, Patent Document 2).
メモリセルアレイから読み出されるデータの誤りを訂正する場合、誤りの訂正時間は、データの読み出し要求を受けてからデータを出力するまでのデータ読み出し時間に含まれる。このため、誤り訂正回路を有する半導体記憶装置のデータの読み出し時間は、誤り訂正回路を持たない半導体記憶装置のデータの読み出し時間に比べて長くなる。 When correcting an error in data read from the memory cell array, the error correction time is included in the data read time from when the data read request is received until the data is output. For this reason, the data read time of the semiconductor memory device having the error correction circuit is longer than the data read time of the semiconductor memory device having no error correction circuit.
また、メモリセルアレイから読み出される並列データを直列データに変換して出力するシリアルメモリに誤り訂正回路が搭載される場合、並列データの誤り訂正が実行された後、先頭データが出力端子から出力される。したがって、先頭データの出力タイミングは、誤り訂正回路による誤り訂正時間に依存して変化する。 Further, when an error correction circuit is mounted on a serial memory that converts parallel data read from the memory cell array into serial data and outputs the data, the head data is output from the output terminal after error correction of the parallel data is executed. . Therefore, the output timing of the head data changes depending on the error correction time by the error correction circuit.
1つの側面では、本件開示の半導体記憶装置および半導体記憶装置の制御方法は、誤り訂正回路を有し、データを直列に出力する半導体記憶装置におけるデータの読み出し時間を短縮することを目的とする。 In one aspect, a semiconductor memory device and a method for controlling the semiconductor memory device disclosed herein are intended to shorten a data read time in a semiconductor memory device that includes an error correction circuit and outputs data in series.
一つの観点によれば、半導体記憶装置は、第1のデータ群と、第1のデータ群に対応する第1のパリティデータ群と、第1のデータ群と異なる第2のデータ群と、第2のデータ群に対応する第2のパリティデータ群とを並列に出力するメモリ部と、第1のパリティデータ群を用いて第1のデータ群の誤りを訂正して第1の訂正データ群を生成する第1の誤り訂正回路と、第2のパリティデータ群を用いて第2のデータ群の誤りを訂正して第2の訂正データ群を生成する第2の誤り訂正回路と、第1の訂正データ群に含まれるデータと、第2の訂正データ群に含まれるデータとを順次に出力する出力回路とを有し、第1のデータ群のビット数は、第2のデータ群のビット数より少ない。
別の観点によれば、半導体記憶装置は、第1のデータ群と、第1のデータ群に対応する第1のパリティデータ群と、第1のデータ群と異なる第2のデータ群と、第2のデータ群に対応する第2のパリティデータ群とを並列に出力するメモリ部と、第1のパリティデータ群を用いて第1のデータ群の誤りを訂正して第1の訂正データ群を生成する第1の誤り訂正回路と、第2のパリティデータ群を用いて第2のデータ群の誤りを訂正して第2の訂正データ群を生成する第2の誤り訂正回路と、第1の訂正データ群に含まれるデータと、第2の訂正データ群に含まれるデータとを順次に出力する出力回路とを有し、第1の誤り訂正回路による第1のデータ群の誤り訂正時間は、第2の誤り訂正回路による第2のデータ群の誤り訂正時間より短い。
According to one aspect, the semiconductor memory device includes a first data group, a first parity data group corresponding to the first data group, a second data group different from the first data group, A memory unit that outputs in parallel a second parity data group corresponding to two data groups, and correcting the error in the first data group using the first parity data group, A first error correction circuit for generating, a second error correction circuit for correcting a second data group error using the second parity data group to generate a second correction data group, and data contained in the correction data group, possess an output circuit for outputting the data included in the second correction data group sequentially, the number of bits of the first data group, the number of bits of the second data group Less .
According to another aspect, the semiconductor memory device includes a first data group, a first parity data group corresponding to the first data group, a second data group different from the first data group, A memory unit that outputs in parallel a second parity data group corresponding to two data groups, and correcting the error in the first data group using the first parity data group, A first error correction circuit for generating, a second error correction circuit for correcting a second data group error using the second parity data group to generate a second correction data group, An output circuit that sequentially outputs data included in the correction data group and data included in the second correction data group, and the error correction time of the first data group by the first error correction circuit is: It is shorter than the error correction time of the second data group by the second error correction circuit .
別の観点によれば、半導体記憶装置の制御方法は、第1のデータ群と、前記第1のデータ群に対応する第1のパリティデータ群と、前記第1のデータ群と異なる第2のデータ群と、前記第2のデータ群に対応する第2のパリティデータ群とをメモリ部から並列に出力し、前記第1のパリティデータ群を用いて前記第1のデータ群の誤りを訂正して第1の訂正データ群を生成し、前記第2のパリティデータ群を用いて前記第2のデータ群の誤りを訂正して第2の訂正データ群を生成し、前記第1の訂正データ群に含まれるデータと、前記第2の訂正データ群に含まれるデータとを順次に出力し、前記第1のデータ群のビット数は、前記第2のデータ群のビット数より少ない。
別の観点によれば、半導体記憶装置の制御方法は、第1のデータ群と、前記第1のデータ群に対応する第1のパリティデータ群と、前記第1のデータ群と異なる第2のデータ群と、前記第2のデータ群に対応する第2のパリティデータ群とをメモリ部から並列に出力し、前記第1のパリティデータ群を用いて前記第1のデータ群の誤りを訂正して第1の訂正データ群を生成し、前記第2のパリティデータ群を用いて前記第2のデータ群の誤りを訂正して第2の訂正データ群を生成し、前記第1の訂正データ群に含まれるデータと、前記第2の訂正データ群に含まれるデータとを順次に出力し、前記第1のデータ群の誤り訂正時間は、前記第2のデータ群の誤り訂正時間より短い。
According to another aspect, a method for controlling a semiconductor memory device includes a first data group, a first parity data group corresponding to the first data group, and a second data different from the first data group. A data group and a second parity data group corresponding to the second data group are output in parallel from the memory unit, and an error in the first data group is corrected using the first parity data group. The first correction data group is generated, the second parity data group is used to correct the error of the second data group, and the second correction data group is generated. The first correction data group And the data included in the second correction data group are sequentially output, and the number of bits of the first data group is smaller than the number of bits of the second data group .
According to another aspect, a method for controlling a semiconductor memory device includes a first data group, a first parity data group corresponding to the first data group, and a second data different from the first data group. A data group and a second parity data group corresponding to the second data group are output in parallel from the memory unit, and an error in the first data group is corrected using the first parity data group. The first correction data group is generated, the second parity data group is used to correct the error of the second data group, and the second correction data group is generated. The first correction data group And the data included in the second correction data group are sequentially output, and the error correction time of the first data group is shorter than the error correction time of the second data group.
本件開示の半導体記憶装置および半導体記憶装置の制御方法は、誤り訂正回路を有し、データを直列に出力する半導体記憶装置におけるデータの読み出し時間を短縮することができる。 The semiconductor memory device and the method for controlling the semiconductor memory device disclosed herein have an error correction circuit, and can shorten the data read time in the semiconductor memory device that outputs data in series.
以下、図面を用いて実施形態を説明する。信号が伝達される信号線には、信号名と同じ符号を使用する。先頭に”/”の付いている信号は、負論理を示す。図中の二重の四角印は、外部端子を示す。外部端子は、例えば、半導体チップ上のパッド、あるいは半導体チップが収納されるパッケージのリードである。外部端子を介して供給される信号には、端子名と同じ符号を使用する。 Hereinafter, embodiments will be described with reference to the drawings. The same reference numerals as the signal names are used for signal lines through which signals are transmitted. A signal prefixed with “/” indicates negative logic. Double square marks in the figure indicate external terminals. The external terminal is, for example, a pad on a semiconductor chip or a lead of a package in which the semiconductor chip is stored. For the signal supplied via the external terminal, the same symbol as the terminal name is used.
図1は、半導体記憶装置および半導体記憶装置の制御方法の一実施形態を示す図である。図1に示す半導体記憶装置MEM1は、メモリ部1、誤り訂正回路2、3および出力回路4を有する。図1では、メモリ部1からデータを読み出すための要素を示し、メモリ部1にデータを書き込む要素の記載は省略している。
FIG. 1 is a diagram illustrating an embodiment of a semiconductor memory device and a method for controlling the semiconductor memory device. A semiconductor memory device MEM1 illustrated in FIG. 1 includes a
メモリ部1は、データ群RDG1と、データ群RDG1に対応するパリティデータ群RPG1と、データ群RDG1と異なるデータ群RDG2と、データ群RDG2に対応するパリティデータ群RPG2とを記憶する複数のメモリセルを有する。例えば、データ群RDG1は、m+1ビット(mは0以上の整数)であり、データ群RDG2は、n+1ビット(nは0以上の整数)である。
The
メモリ部1は、読み出し要求に応じて、データ群RDG1、RDG2およびパリティデータ群RPG1、RPG2を並列に出力する。例えば、メモリ部1は、データ群RDG1、RDG2およびパリティデータ群RPG1、RPG2をそれぞれ含む複数のデータブロックを記憶する。メモリ部1が複数のデータブロックを記憶する場合、各データブロックは、半導体記憶装置MEM1の外部から供給されるアドレスにより識別される。
The
誤り訂正回路2は、読み出し要求に基づく読み出し動作において、パリティデータ群RPG1を用いてデータ群RDG1の誤りを訂正し、訂正データ群CRDG1を生成する。誤り訂正回路3は、パリティデータ群RPG2を用いてデータ群RDG2の誤りを訂正し、訂正データ群CRDG2を生成する。メモリ部1に記憶されるデータの誤りを、データ群RDG1、RDG2毎に訂正することで、データ群RDG1、RDG2の誤りをまとめて訂正する場合に比べて、訂正時間を短縮することができる。
In the read operation based on the read request, the
出力回路4は、読み出し動作において、まず、訂正データ群CRDG1から先頭データCRDG1[m]を選択し、選択した先頭データCRDG1[m]を外部端子を介して半導体記憶装置の外部に出力する。次に、出力回路4は、訂正データ群CRDG1のうち先頭データCRDG1「m」を除くデータCRDG1[m−1」、...、CRDG1[0]を順次に出力する。なお、訂正データ群CRDG1が1ビットの場合、出力回路4は、1ビットの訂正データ群CRDG1を先頭データとして出力し、先頭データを除くデータは存在しないため出力しない。
In the read operation, the
出力回路4は、訂正データ群CRDG1の出力に続き、訂正データ群CRDG2に含まれるデータCRDG2[n」、CRDG2[n−1]、...、CRDG2[0]を順次に出力する。このように、出力回路4は、並列の訂正データ群CRDG1、CRDG2を、出力順が訂正データ群CRDG1、CRDG2の順になるように直列に変換し、変換した直列のデータを外部端子に順次に出力する。
The
図2は、図1に示す半導体記憶装置MEM1の読み出し動作の一例を示す。図2に示す矩形は、半導体記憶装置の各回路の動作を示す。図2(a)は、データ群RDG1が1ビットであり、データ群RDG2が7ビットである場合の動作を示す。ハミング符号方式を採用する場合、2ビットのパリティデータ群RPG1がデータ群RDG1の誤りの訂正に使用され、4ビットのパリティデータ群RPG2がデータ群RDG2の誤りの訂正に使用される。 FIG. 2 shows an example of the read operation of the semiconductor memory device MEM1 shown in FIG. The rectangle shown in FIG. 2 indicates the operation of each circuit of the semiconductor memory device. FIG. 2A shows the operation when the data group RDG1 is 1 bit and the data group RDG2 is 7 bits. When the Hamming code method is employed, the 2-bit parity data group RPG1 is used for error correction of the data group RDG1, and the 4-bit parity data group RPG2 is used for error correction of the data group RDG2.
図2(b)は、データ群RDG1、RDG2がそれぞれ4ビットである場合の動作を示す。ハミング符号方式を採用する場合、3ビットのパリティデータ群RPG1、RPG2が、データ群RDG1、RDG2の誤りの訂正にそれぞれ使用される。図2(c)は、8ビットのデータ群RDGを1つの誤り訂正回路で訂正し、訂正データ群CRDGを生成する場合の動作(比較例)を示す。ハミング符号方式を採用する場合、4ビットのパリティデータ群RPGが、データ群RDGの誤りの訂正に使用される。 FIG. 2B shows the operation when the data groups RDG1 and RDG2 each have 4 bits. When the Hamming code method is adopted, 3-bit parity data groups RPG1 and RPG2 are used for error correction of the data groups RDG1 and RDG2, respectively. FIG. 2C shows an operation (comparative example) when an 8-bit data group RDG is corrected by one error correction circuit to generate a corrected data group CRDG. When the Hamming code method is employed, a 4-bit parity data group RPG is used to correct an error in the data group RDG.
図2(a)および図2(b)において、半導体記憶装置MEM1は、読み出し要求RRQに基づいてメモリ部1を動作させる。メモリ部1は、データ群RDG1、RDG2およびパリティデータ群RPG1、RPG2を出力する。誤り訂正回路2は、パリティデータ群RPG1を用いてデータ群RDG1の誤りを訂正し、訂正データ群CRDG1(1ビット)を出力する。誤り訂正回路3は、パリティデータ群RPG2を用いてデータ群RDG2の誤りを訂正し、訂正データ群CRDG2(7ビット)を、訂正データ群CRDG1に続いて順次に出力する。
2A and 2B, the semiconductor memory device MEM1 operates the
図2(a)において、誤り訂正回路2が処理する符号長(1+2ビット)は、誤り訂正回路3が処理する符号長(7+4ビット)より少ない。このため、誤り訂正回路2によるデータ群RDG1の誤り訂正時間は、誤り訂正回路3によるデータ群RDG2の誤り訂正時間に比べて短い。このため、出力回路4は、誤り訂正回路3が、データ群RDG2の誤りの訂正を実行中に、最初のデータの出力を開始することができる。すなわち、出力回路4から出力される先頭データを、訂正データ群CRDG1とすることで、読み出し要求RRQを受けてから最初のデータを出力するまでの時間である読み出しアクセス時間tRDを、図2(b)、図2(c)に比べて短くすることができる。なお、読み出しアクセス時間tRDを短縮は、訂正データ群CRDG1の生成時間の短縮により短縮されるが、訂正データ群CRDG2の生成時間の短縮によっては短縮されない。このため、先頭で出力される訂正データ群CRDG1の生成時間の短縮が、読み出しアクセス時間tRDを短縮するために重要である。
In FIG. 2A, the code length (1 + 2 bits) processed by the
図2(b)において、誤り訂正回路2、3が処理する符号長(7ビット)は、互いに同じであるため、誤り訂正回路2によるデータ群RDG1の誤り訂正時間は、誤り訂正回路3によるデータ群RDG2の誤り訂正時間と同じである。しかしながら、メモリ部1から読み出される8ビットのデータを2つのデータ群RDG1、RDG2に分けて、誤り訂正回路2、3によりそれぞれの誤りを訂正することで、読み出しアクセス時間tRDを、図2(c)に比べて短くすることができる。
In FIG. 2B, since the code lengths (7 bits) processed by the
以上、図1および図2に示す実施形態では、メモリ部1から並列に出力されるデータ群RDG1、RDG2の誤りを、誤り訂正回路2、3でそれぞれ訂正する。これにより、直列データのうちの先頭データを外部端子に出力する時間を、データ群RDG1、RDG2の誤りを1つの誤り訂正回路で訂正する場合に比べて早くすることができる。すなわち、読み出し要求を受けてから先頭データを出力するまでの読み出しアクセス時間tRDを、データ群RDG1、RDG2の誤りを1つの誤り訂正回路で訂正する場合に比べて短縮することができる。この結果、半導体記憶装置MEM1の性能を向上することができる。
As described above, in the embodiment shown in FIGS. 1 and 2, the
図3は、半導体記憶装置および半導体記憶装置の別の実施形態を示す図である。図3に示す半導体記憶装置MEM2は、SPI(Serial Peripheral Interface)方式のシリアルメモリであり、入力端子SIに直列に供給されるデータを記憶し、記憶しているデータを出力端子SOから直列に出力する。例えば、データの入力単位および出力単位は、8ビットであり、8ビットのデータは、アドレスA0−A1に応じて4つの8ビットの記憶領域(32ビット)のいずれかに記憶される。半導体記憶装置MEM2の読み出し動作および書き込み動作の例は、図14および図16で説明する。 FIG. 3 is a diagram illustrating another embodiment of the semiconductor memory device and the semiconductor memory device. The semiconductor memory device MEM2 shown in FIG. 3 is an SPI (Serial Peripheral Interface) type serial memory, stores data supplied in series to the input terminal SI, and outputs the stored data in series from the output terminal SO. To do. For example, the data input unit and output unit are 8 bits, and the 8-bit data is stored in one of four 8-bit storage areas (32 bits) according to the addresses A0 to A1. Examples of the read operation and the write operation of the semiconductor memory device MEM2 will be described with reference to FIGS.
半導体記憶装置MEM2は、メモリセルアレイ10、アドレスデコーダ20、読み書き制御回路30、パリティ制御回路40、50および入出力制御回路60を有する。
The semiconductor memory device MEM2 includes a
メモリセルアレイ10は、6ビットのアドレスIA0−IA5に応じて、64個のデータ群D0−D31(すなわち、2048ビット)を保持する複数のメモリセルを有する。メモリセルは、強誘電体メモリ、SRAM(Static Random Access Memory)、またはDRAM(Dynamic Random Access Memory)等のメモリセルである。メモリセルは、MRAM(Magnetoresistive Random Access Memory)のメモリセルでもよい。メモリセルアレイ10は、4ビットのデータD7、D15、D23、D31をアドレスIA0−IA5毎に保持する記憶領域M1を有する。メモリセルアレイ10は、28ビットのデータD0−D6、D8−D14、D16−D22、D24−D30をアドレスIA0−IA5毎に保持する記憶領域M2を有する。また、メモリセルアレイ10は、データD7、D15、D23、D31の誤りを訂正するための3ビットのパリティデータP0−P2をアドレスIA0−IA5毎に記憶する記憶領域MP1を有する。さらに、メモリセルアレイ10は、データD0−D6、D8−D14、D16−D22、D24−D30の誤りを訂正するための6ビットのパリティデータP3−P8をアドレスIA0−IA5毎に記憶する記憶領域MP2を有する。
The
なお、記憶領域M1、M2の各々は、物理的にまとめて設けられなくてもよい。例えば、メモリセルアレイ10は、データD0−D7、D8−D15、D16−D23、D24−D31の4つの記憶領域を有し、記憶領域M1、M2は、4つの記憶領域に分散して配置されてもよい。メモリセルアレイ10は、メモリ部の一例である。データD7、D15、D23、D31は、第1のデータ群の一例であり、データD0−D6、D8−D14、D16−D22、D24−D30は第2のデータ群の一例である。パリティデータP0−P2は、第1のパリティデータ群の一例であり、パリティデータP3−P8は、第2のパリティデータ群の一例である。
Note that each of the storage areas M1 and M2 may not be physically provided collectively. For example, the
アドレスデコーダ20は、内部クロックICKに同期して、アドレスIA0−IA5をデコードし、アドレスIA0−IA5の値に応じて、64個のデータ群D0−D31のいずれかと、64個のパリティデータ群P0−P8のいずれかとを選択する。
The
読み書き制御回路30は、メモリセルアレイ10からデータを読み出す読み出し動作時に、制御信号RCNTに基づいて動作する。そして、読み書き制御回路30は、アドレスデコーダ30により選択され、メモリセルアレイ10から並列に出力されるデータD0−D31およびパリティデータP0−P8を受信する。読み書き制御回路30は、メモリセルアレイ10からのデータD7、D15、D23、D31を読み出しデータRD7、RD15、RD23、RD31として、パリティ制御回路40に出力する。読み書き制御回路30は、メモリセルアレイ10からのパリティデータP0−P2を読み出しパリティデータRP0−RP2として、パリティ制御回路40に出力する。読み書き制御回路30は、メモリセルアレイ10からのデータD0−D6、D8−D14、D16−D22、D24−D30を読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30として、パリティ制御回路50に出力する。読み書き制御回路30は、メモリセルアレイ10からのパリティデータP3−P8を読み出しパリティデータRP3−RP8として、パリティ制御回路50に出力する。
The read /
一方、読み書き制御回路30は、メモリセルアレイ10にデータを書き込む書き込み動作時に、制御信号WCNTに基づいて動作する。読み書き制御回路30は、パリティ制御回路40から書き込みデータWD7、WD15、WD23、WD31と書き込みパリティデータWP0−WP2とを受信する。また、読み書き制御回路30は、パリティ制御回路50から書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30と書き込みパリティデータWP3−WP8とを受信する。
On the other hand, the read /
読み書き制御回路30は、書き込みデータWD0−WD31をデータD0−D31としてメモリセルアレイ10に出力し、書き込みパリティデータWP0−WP8をパリティデータP0−P8としてメモリセルアレイ10に出力する。メモリセルアレイ10にデータを書き込む読み書き制御回路30は、書き込み回路の一例である。書き込みデータWD7、WD15、WD23、WD31は、第1の書き込みデータ群の一例であり、書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30は、第2の書き込みデータ群の一例である。
The read /
なお、図3では、説明を分かりやすくするために、読み出し動作を実行するための全ての制御信号は、制御信号RCNTとして示されるが、制御信号RCNTは、複数のタイミング信号を含む。読み書き制御回路30に供給される制御信号RCNTは、パリティ制御回路40、50に供給される制御信号RCNTとは異なる。同様に、書き込み動作を実行するための全ての制御信号は、制御信号WCNTとして示されるが、制御信号WCNTは、複数のタイミング信号を含む。読み書き制御回路30に供給される制御信号WCNTは、パリティ制御回路40、50に供給される制御信号WCNTとは異なる。
In FIG. 3, for the sake of easy understanding, all the control signals for executing the read operation are shown as the control signal RCNT, but the control signal RCNT includes a plurality of timing signals. The control signal RCNT supplied to the read /
パリティ制御回路40は、読み出し動作時および書き込み動作時に動作し、読み出しデータRD7、RD15、RD23、RD31の誤りを読み出しパリティデータRP0−RP2を用いて訂正する。パリティ制御回路40は、訂正した読み出しデータRD7、RD15、RD23、RD31を出力データDO7、DO15、DO23、DO31として出力する。出力データDO7、DO15、DO23、DO31は、第1の訂正データ群の一例であり、出力データDO7、DO15、DO23、DO31の各々は、第1の部分データ群の一例である。
The
パリティ制御回路40は、書き込み動作時に、制御信号WCNTに基づいて動作し、入力データDI07を受ける。パリティ制御回路40は、誤りが訂正された出力データDO7、DO15、DO23、DO31のいずれかを、アドレスA0−A1の値に応じて入力データDI07に置き換え、書き込みデータWD7、WD15、WD23、WD31を生成する。すなわち、入力データDI07は、書き込みデータWD7、WD15、WD23、WD31のいずれかとして、メモリセルアレイ10に書き込まれる。
The
パリティ制御回路40は、生成した書き込みデータWD7、WD15、WD23、WD31を用いて、書き込みパリティデータWP0−WP2を生成する。そして、パリティ制御回路40は、書き込みデータWD7、WD15、WD23、WD31および書き込みパリティデータWP0−WP2を読み書き制御回路30に出力する。
The
パリティ制御回路50は、読み出し動作時および書き込み動作時に動作し、読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30の誤りを読み出しパリティデータRP3−RP8を用いて訂正する。パリティ制御回路50は、訂正した読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30を出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30として出力する。出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30は、第2の訂正データ群の一例である。出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30の各々は、第2の部分データ群の一例である。
The
パリティ制御回路50は、書き込み動作時に、制御信号WCNTに基づいて動作し、7ビットの入力データDI00−DI06を受ける。パリティ制御回路50は、誤りが訂正された出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30のいずれかの組を、アドレスA0−A1の値に応じて入力データDI00−DI06に置き換える。そして、パリティ制御回路50は、書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30を生成する。すなわち、入力データDI00−DI06は、書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30のいずれかとして、メモリセルアレイ10に書き込まれる。
The
パリティ制御回路50は、生成した書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30を用いて、書き込みパリティデータWP3−WP8を生成する。そして、パリティ制御回路50は、WD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30および書き込みパリティデータWP3−WP8を読み書き制御回路30に出力する。
The
入出力制御回路60は、チップセレクト/CSがロウレベルの期間に有効になり、クロックSCKに同期して動作する。入出力制御回路60は、入力端子SIを介してコマンド(読み出しコマンドまたは書き込みコマンド)と、アドレスとを受け、受けたアドレスの一部をアドレスIA0−IA5としてアドレスデコーダ20に出力する。入出力制御回路60は、読み出しコマンドを受けた場合、複数の制御信号RCNTを生成し、パリティ制御回路40、50から出力される32ビットの出力データDO0−DO31のうちの8ビットを2ビットのアドレスA0−A1に応じて選択する。入出力制御回路60は、選択したデータを直列に変換し、出力端子SOから順次に出力する。
The input /
入出力制御回路60は、出力データDO0−DO7を選択した場合、出力データDO7、DO6、DO5、DO4、DO3、DO2、DO1、DO0の順に出力端子SOに出力する。入出力制御回路60は、出力データDO8−DO15を選択した場合、出力データDO15、DO14、DO13、DO12、DO11、DO10、DO9、DO8の順に出力端子SOに出力する。入出力制御回路60は、出力データDO16−23を選択した場合、出力データDO23、DO22、DO21、DO20、DO19、DO18、DO17、DO16の順に出力端子SOに出力する。入出力制御回路60は、出力データDO24−DO31を選択した場合、出力データDO31、DO30、DO29、DO28、DO27、DO26、DO25、DO24の順に出力端子SOに出力する。すなわち、入出力制御回路60は、パリティ制御回路40により誤りが訂正されたデータを、パリティ制御回路50により誤りが訂正されたデータよりも先に出力する。
When the output data DO0-DO7 is selected, the input /
入出力制御回路60は、書き込みコマンドを受けた場合、アドレスに続いて8ビットの直列データ(書き込みデータ)を、入力端子SIを介して順次に受け、複数の制御信号WCNTを生成する。入出力制御回路60は、入力端子SIを介して受けた先頭の1ビットのデータを入力データDI07としてパリティ制御回路40に出力し、残りの7ビットのデータを入力データDI06−DI00としてパリティ制御回路50に出力する。
When receiving a write command, the input /
なお、半導体記憶装置MEM2は、I2C(Inter-Integrated Circuit)等の他のシリアルインタフェース方式が採用されてもよい。I2C方式では、データを直列に入出力する双方向の入出力端子が、入力端子SIおよび出力端子SOの代わりに設けられる。また、I2C方式では、半導体記憶装置MEM2を識別するためのデバイスアドレスコードを受けるデバイスアドレス端子が、チップセレクト端子/CSの代わりに設けられる。そして、半導体記憶装置MEM2は、デバイスアドレスコードをデコードし、自身へのアクセスを認識するデコーダを有する。 The semiconductor memory device MEM2 may adopt another serial interface method such as I2C (Inter-Integrated Circuit). In the I2C method, bidirectional input / output terminals for inputting / outputting data in series are provided in place of the input terminal SI and the output terminal SO. In the I2C method, a device address terminal that receives a device address code for identifying the semiconductor memory device MEM2 is provided instead of the chip select terminal / CS. The semiconductor memory device MEM2 includes a decoder that decodes the device address code and recognizes access to itself.
図4は、図3に示す入出力制御回路60の一例を示す。入出力制御回路60は、入力制御回路62、内部クロック生成回路64、選択回路66および出力制御回路68を有する。入力制御回路62は、読み出し動作時および書き込み動作時に動作する。内部クロック生成回路64は、入力制御回路62からの制御に基づいて動作する。選択回路66および出力制御回路68は、読み出し動作時に動作する。
FIG. 4 shows an example of the input /
入力制御回路62は、チップセレクト/CSがロウレベルの期間に動作し、入力端子SIを介して供給される情報(コマンド、アドレス、データ等)をクロックSCKに同期して受ける。入力制御回路62は、シフトレジスタSFTRIおよびコマンドデコーダCDECを有する。シフトレジスタSFTRIは、入力端子SIに供給される情報を下位ビットLSB側から上位ビットMSB側に順次に保持する8ビットの記憶領域を有する。シフトレジスタSFTRIは、保持した情報をコマンドCMD、内部アドレスIA0−IA5、アドレスA0−A1および入力データDI00−DI07として出力する。入力制御回路62は、入力回路の一例である。
The
コマンドデコーダCDECは、チップセレクト/CSがロウレベルになった後に最初にシフトレジスタSFTRIに保持された8ビットをコマンドCMD(オペコード)として受ける。コマンドデコーダCDECは、コマンドCMDが読み出しコマンド(読み出し要求)を示す場合、複数の制御信号RCNTを生成し、コマンドCMDが書き込みコマンド(書き込み要求)を示す場合、複数の制御信号WCNTを生成する。 The command decoder CDEC receives, as a command CMD (opcode), 8 bits held in the shift register SFTRI first after the chip select / CS becomes low level. The command decoder CDEC generates a plurality of control signals RCNT when the command CMD indicates a read command (read request), and generates a plurality of control signals WCNT when the command CMD indicates a write command (write request).
内部クロック生成回路64は、読み出しコマンドまたは書き込みコマンドを受けてから所定のクロックサイクル後に内部クロックICKを生成する。内部クロックICKが生成されるクロックサイクルは、制御信号RNCT、WNCTの受信タイミングに応じて設定される。図3で説明したように、内部クロックICKが生成されるクロックサイクルは、アドレスデコーダ20が動作を開始するタイミングを示す。
The internal
選択回路66は、読み出し動作において動作し、パリティ制御回路40、50から出力される出力データDO0−DO31のうちの8ビットをアドレスA0−A1に応じて選択し、選択したデータを出力データDOUTとして出力制御回路68に出力する。例えば、選択回路66は、アドレスA0−A1の値が”0”の場合、出力データDO0−DO7を選択し、アドレスA0−A1の値が”1”の場合、出力データDO8−DO15を選択する。選択回路66は、アドレスA0−A1の値が”2”の場合、出力データDO16−DO23を選択し、アドレスA0−A1の値が”3”の場合、出力データDO24−DO31を選択する。
The
出力制御回路68は、8ビットの出力データDOUTを保持するシフトレジスタSFTROを有する。シフトレジスタSFTROは、保持した出力データDOUTを上位ビットMSBから下位ビットLSBの順に、クロックSCKに同期して出力端子SOに出力する。例えば、出力データDOUTが出力データDO0−DO7の場合、データDO7、DO6、DO5、DO4、DO3、DO2、DO1、DO0の順に出力端子SOに出力される。出力制御回路68は、出力回路の一例である。
The
図5は、図3に示すパリティ制御回路40の一例を示す。パリティ制御回路40は、読み出しデータRD7、RD15、RD23、RD31のいずれか1ビットの誤りを検出し、検出した誤りを訂正する機能を有する。パリティ制御回路40は、読み出しパリティ生成回路41、シンドローム生成回路42、シンドロームデコーダ43、誤り訂正回路44、置き換え回路45および書き込みパリティ生成回路46を有する。読み出しパリティ生成回路41、シンドローム生成回路42、シンドロームデコーダ43および誤り訂正回路44は、第1の誤り訂正回路の一例である。
FIG. 5 shows an example of the
読み出しパリティ生成回路41は、4ビットの読み出しデータRD7、RD15、RD23、RD31を用いて3ビットの読み出しパリティデータRP00−RP02を生成する。そして、読み出しパリティ生成回路41は、生成した読み出しパリティデータRP00−RP02をシンドローム生成回路42に出力する。シンドローム生成回路42は、読み書き制御回路30を介してメモリセルアレイ10から読み出される読み出しパリティデータRP0−RP2と読み出しパリティデータRP00−RP02との排他的論理和を演算し、シンドロームS0−S2を生成する。シンドローム生成回路42は、生成したシンドロームS0−S2をシンドロームデコーダ43に出力する。
The read
シンドロームデコーダ43は、シンドロームS0−S2で示される論理値をデコードし、誤りが発生したビットを示す誤りビット情報E7、E15、E23、E31のいずれかを生成する。シンドロームデコーダ43は、生成した誤りビット情報E7、E15、E23、E31のいずれかを誤り訂正回路44に出力する。誤りビット情報E7、E15、E23、E31のそれぞれは、読み出しデータRD7、RD15、RD23、RD31のそれぞれに誤りがあることを示す。
The
誤り訂正回路44は、誤りビット情報E7、E15、E23、E31で示される読み出しデータRD7、RD15、RD23、RD31のいずれかの誤りを訂正し、訂正したデータを含む出力データDO7、DO15、DO23、DO31を出力する。
The
置き換え回路45は、書き込み動作において、アドレスA0−A1の値に対応する出力データDO7、DO15、DO23、DO31のいずれかを入力データDI07(書き込みデータ)に置き換える。そして、置き換え回路45は、置き換えたデータを含む書き込みデータWD7、WD15、WD23、WD31を出力する。書き込みデータWD7、WD15、WD23、WD31は、メモリセルアレイ10に書き込むために図3に示す読み書き制御回路30に出力される。
The
置き換え回路45は、アドレスA0−A1の値が”0”の場合、出力データDO7を入力データDI07に置き換え、アドレスA0−A1の値が”1”の場合、出力データDO15を入力データDI07に置き換える。置き換え回路45は、アドレスA0−A1の値が”2”の場合、出力データDO23を入力データDI07に置き換え、アドレスA0−A1の値が”3”の場合、出力データDO31を入力データDI07に置き換える。
The
書き込みパリティ生成回路46は、4ビットの書き込みデータWD7、WD15、WD23、WD31を用いて3ビットの書き込みパリティデータWP0−WP2を生成する。書き込みパリティ生成回路46は、生成した書き込みパリティデータWP0−WP2をメモリセルアレイ10に書き込むために図3に示す読み書き制御回路30に出力する。書き込みパリティ生成回路46は、書き込みパリティデータWP0−WP2を生成するパリティ生成回路の一例である。
The write
図6は、図5に示す読み出しパリティ生成回路41、書き込みパリティ生成回路46、シンドローム生成回路42およびシンドロームデコーダ43で使用されるパリティ検査行列の一例を示す。図6に示すパリティ検査行列は、ハミング符号方式によるパリティ検査に使用される。
FIG. 6 shows an example of a parity check matrix used in the read
読み出しパリティ生成回路41は、パリティ検査行列の(a)列から(d)列の論理を用いて、読み出しデータRD7、RD15、RD23、RD31の読み出しパリティデータRP00−RP02を生成する。書き込みパリティ生成回路46は、(a)列から(d)列の論理を用いて、書き込みデータWD7、WD15、WD23、WD31の書き込みパリティデータWP0−WP2を生成する。
The read
シンドローム生成回路42は、(e)列から(g)列の論理を用いて、読み出しパリティデータRP00−RP02と読み出しパリティデータRP0−RP2とからシンドロームS0−S2を生成する。シンドロームデコーダ43は、(a)列から(d)列の論理を用いて、誤りが発生したビットをシンドロームS0−S2から特定する。
The
図7は、図5に示す読み出しパリティ生成回路41、シンドローム生成回路42、シンドロームデコーダ43および誤り訂正回路44の一例を示す。
FIG. 7 shows an example of the read
読み出しパリティ生成回路41は、図6に示す(a)列から(d)列のパリティ検査行列の論理に対応する排他的論理和ゲートを有する。読み出しデータRD7、RD15、RD23、RD31は、(a)列から(d)列のそれぞれに対応し、読み出しパリティデータRP00−RP02は、パリティ検査行の第1行から第3行に対応する。読み出しパリティ生成回路41は、各行において論理1で示される列に対応する読み出しデータ(RD7、RD15、RD23、RD31のいずれか3つ)の排他的論理和を演算する。そして、読み出しパリティ生成回路41は、得られた排他的論理和の論理を読み出しパリティデータRP00−RP02として出力する。
The read
シンドローム生成回路42は、図6に示す(e)列から(g)列のパリティ検査行列の論理に対応する排他的論理和ゲートを有する。読み出しパリティデータRP0、RP1、RP2は、(e)列から(g)列のそれぞれに対応し、読み出しパリティデータRP00、RP01、RP02は、パリティ検査行の第1行から第3行に対応する。シンドローム生成回路42は、(e)列から(g)列において、論理1に対応する読み出しパリティデータ(RP0−RP2のいずれか)と読み出しパリティデータ(RP00−RP02のいずれか)の排他的論理和を演算する。そして、シンドローム生成回路42は、得られた排他的論理和の論理をシンドロームS0−S2として出力する。
The
シンドロームデコーダ43は、図6に示す(a)列から(d)列のパリティ検査行列の論理に対応するデコード回路を有する。誤りビット情報E7、E15、E23、E31は、(a)列から(d)列のそれぞれに対応し、シンドロームS0、S1、S2は、パリティ検査行の第1行から第3行に対応する。シンドロームデコーダ43は、(a)列の論理を用いて誤りビット情報E7を生成し、(b)列の論理を用いて誤りビット情報E15を生成し、(c)列の論理を用いて誤りビット情報E23を生成し、(d)列の論理を用いて誤りビット情報E31を生成する。
The
誤り訂正回路44は、読み出しデータRD7、RD15、RD23、RD31と誤りビット情報E7、E15、E23、E31とのそれぞれを受ける4つの排他的論理和ゲートを有する。そして、誤り訂正回路44は、誤りビット情報E7(または、E15、E23、E31)が論理1の場合に、読み出しデータRD7(または、RD15、RD23、RD31)の論理を反転することで、誤りを訂正する。誤り訂正回路44は、誤りを訂正したデータを出力データDO7、DO15、DO23、DO31として出力する。
The
なお、読み出し動作において、誤りを訂正したデータを出力データDO7、DO15、DO23、DO31をメモリセルアレイ10に書き戻す手法が、半導体記憶装置MEM2に適用される場合がある。この場合、読み出しパリティデータRP0−RP2の誤りも訂正され、メモリセルアレイ10に書き戻される。読み出しパリティデータRP0−RP2の誤りを訂正するために、図6に示す(a)列から(g)列のパリティ検査行列の論理に対応するデコード回路が、シンドロームデコーダ43に設けられる。また、シンドロームデコーダ43により誤りが検出された読み出しパリティデータRP0−RP2のいずれかのビットを反転する排他的論理和ゲートが、誤り訂正回路44に設けられる。出力データDO7、DO15、DO23、DO31および誤りが訂正された読み出しパリティデータRP0−RP2は、図5に示す置き換え回路45および書き込みパリティ生成回路46を介することなくメモリセルアレイ10に書き戻される。
In the read operation, there is a case in which a method of writing output data DO7, DO15, DO23, and DO31 back to the
また、図7では、読み出しパリティ生成回路41およびシンドローム生成回路42は、図6に示すパリティ検査行列の論理に対応して排他的論理和ゲートを直列に配置しているが、排他的論理和ゲートは、並列に配置されてもよい。
In FIG. 7, the read
図8は、図7に示す読み出しパリティ生成回路41およびシンドローム生成回路42を融合し、排他的論理和ゲートを並列に配置した場合の一例を示す。排他的論理和ゲートを並列に配置することで、シンドロームS0−S2の各々を生成するために直列に接続される排他的論理和ゲートの段数を、図7の3段から2段にすることができる。
FIG. 8 shows an example in which the read
なお、32ビットの読み出しデータRD0−RD31の1ビットの誤りを、1つの誤り訂正回路を使用してハミング符号方式により訂正する場合を考える。この場合、誤り訂正回路に設けられる排他的論理和ゲートの最大の段数は、直列接続の場合で18段、並列接続の場合で5段になる。したがって、排他的論理和ゲートの最大の接続段数を、1つの誤り訂正回路を使用する場合に比べて、直列接続の場合に18段から3段に削減することができ、並列接続の場合に5段から2段に削減することができる。この結果、誤りの訂正時間の短縮効果は、排他的論理和ゲートの15段分または3段分に相当する時間になり、読み出しデータRD7、RD15、RD23、RD31の誤りの訂正時間を、1つの誤り訂正回路を使用する場合に比べて短縮することができる。 Consider a case where a 1-bit error in 32-bit read data RD0 to RD31 is corrected by a Hamming code method using one error correction circuit. In this case, the maximum number of exclusive OR gates provided in the error correction circuit is 18 in the case of serial connection and 5 in the case of parallel connection. Therefore, the maximum number of connection stages of exclusive OR gates can be reduced from 18 to 3 in the case of series connection compared to the case of using one error correction circuit, and 5 in the case of parallel connection. The number of stages can be reduced to two. As a result, the effect of shortening the error correction time becomes a time corresponding to 15 stages or 3 stages of the exclusive OR gate, and the error correction time of the read data RD7, RD15, RD23, RD31 is reduced to one. This can be shortened compared to the case of using an error correction circuit.
図9は、図5に示す置き換え回路45および書き込みパリティ生成回路46の一例を示す。置き換え回路45は、デコーダDECおよびセレクタSELを有する。デコーダDECは、アドレスA0−A1の論理に応じて、入力データDI07(書き込みデータ)を書き込むビット位置を求める。
FIG. 9 shows an example of the
セレクタSELは、デコーダDECが求めたビット位置に基づいて、出力データDO7、DO15、DO23、DO31のいずれかを入力データDI07に置き換える4つのスイッチ回路を有する。例えば、各スイッチ回路は、一対のCMOS(Complementary Metal Oxide Semiconductor)伝達ゲートを有する。そして、セレクタSELは、置き換えた入力データDI07を含む書き込みデータWD7、WD15、WD23、WD31を書き込みパリティ生成回路46に出力する。
The selector SEL has four switch circuits that replace any of the output data DO7, DO15, DO23, and DO31 with the input data DI07 based on the bit position obtained by the decoder DEC. For example, each switch circuit has a pair of complementary metal oxide semiconductor (CMOS) transmission gates. Then, the selector SEL outputs the write data WD7, WD15, WD23, and WD31 including the replaced input data DI07 to the write
書き込みパリティ生成回路46は、図7に示す読み出しパリティ生成回路41と同じ論理を有する。書き込みデータWD7、WD15、WD23、WD31は、図6に示すパリティ検査行列の(a)列から(d)列のそれぞれに対応し、書き込みパリティデータWP0−WP2は、パリティ検査行の第1行から第3行に対応する。書き込みパリティ生成回路46は、各行において論理1で示される列に対応する書き込みデータ(WD7、WD15、WD23、WD31のいずれか3つ)の排他的論理和を演算する。そして、書き込みパリティ生成回路46は、得られた排他的論理和の論理を書き込みパリティデータWP0−WP2として出力する。
The write
図10は、図3に示すパリティ制御回路50の一例を示す。パリティ制御回路50は、読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30のいずれか1ビットの誤りを検出し、検出した誤りを訂正する機能を有する。パリティ制御回路50は、図5に示すパリティ制御回路40と同様の回路を有する。すなわち、パリティ制御回路50は、読み出しパリティ生成回路51、シンドローム生成回路52、シンドロームデコーダ53、誤り訂正回路54、置き換え回路55および書き込みパリティ生成回路56を有する。読み出しパリティ生成回路51、シンドローム生成回路52、シンドロームデコーダ53および誤り訂正回路54は、第2の誤り訂正回路の一例である。
FIG. 10 shows an example of the
読み出しパリティ生成回路51は、28ビットの読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30を用いて6ビットの読み出しパリティデータRP03−RP08を生成する。シンドローム生成回路52は、読み書き制御回路30を介してメモリセルアレイ10から読み出される読み出しパリティデータRP3−RP8と読み出しパリティデータRP03−RP08との排他的論理和を演算し、シンドロームS3−S8を生成する。
The read
シンドロームデコーダ53は、シンドロームS3−S8で示される論理値をデコードし、誤りが発生したビットを示す誤りビット情報E0−E6、E8−E14、E16−E22、E24−E30のいずれかを生成する。誤りビット情報E0−E6、E8−E14、E16−E22、E24−E30のそれぞれは、読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30のそれぞれに誤りがあることを示す。
The
誤り訂正回路54は、誤りビット情報E0−E6、E8−E14、E16−E22、E24−E30で示される読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30のいずれかの誤りを訂正する。そして、誤り訂正回路54は、訂正したデータを出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30として出力する。
The
置き換え回路55は、書き込み動作において、アドレスA0−A1の値に対応する出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30のいずれかの組を入力データDI00−DI06(書き込みデータ)に置き換える。そして、置き換え回路45は、置き換えたデータを含む書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30を出力する。書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30は、メモリセルアレイ10に書き込むために図3に示す読み書き制御回路30に出力される。
In the write operation, the
置き換え回路55は、アドレスA0−A1の値が”0”の場合、出力データDO0−DO6を入力データDI00−DI06に置き換え、アドレスA0−A1の値が”1”の場合、出力データDO8−DO14を入力データDI00−DI06に置き換える。置き換え回路55は、アドレスA0−A1の値が”2”の場合、出力データDO16−DO22を入力データDI00−DI06に置き換え、アドレスA0−A1の値が”3”の場合、出力データWD24−WD30を入力データDI00−DI06に置き換える。
The
書き込みパリティ生成回路56は、28ビットの書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30を用いて6ビットの書き込みパリティデータWP3−WP8を生成する。書き込みパリティ生成回路56は、生成した書き込みパリティデータWP3−WP8をメモリセルアレイ10に書き込むために図3に示す読み書き制御回路30に出力する。書き込みパリティ生成回路56は、書き込みパリティデータWP3−WP8を生成するパリティ生成回路の一例である。
The write
図11は、図10に示す読み出しパリティ生成回路51、書き込みパリティ生成回路56、シンドローム生成回路52およびシンドロームデコーダ53で使用されるパリティ検査行列の一例を示す。図11に示すパリティ検査行列は、ハミング符号方式によるパリティ検査に使用される。
FIG. 11 shows an example of a parity check matrix used in the read
読み出しパリティ生成回路51は、パリティ検査行列の(a)列から(b1)列の28列の論理を用いて、読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30の読み出しパリティデータRP03−RP08を生成する。読み出しパリティ生成回路51は、図7に示す読み出しパリティ生成回路41と同様に、(a)列から(b1)列のパリティ検査行列の論理に対応する排他的論理和ゲートを有する。すなわち、読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30は、(a)列から(b1)列のそれぞれに対応し、読み出しパリティデータRP03−RP08は、パリティ検査行の第1行から第6行に対応する。読み出しパリティ生成回路51は、各行において論理1で示される列に対応する読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30の所定数の排他的論理和を演算する。そして、読み出しパリティ生成回路51は、得られた排他的論理和の論理を読み出しパリティデータRP03−RP08として出力する。
The read
シンドローム生成回路52は、(c1)列から(h1)列の6列の論理を用いて、読み出しパリティデータRP3−RP8、RP03−RP08からシンドロームS3−S8を生成する。シンドローム生成回路52は、図7に示すシンドローム生成回路42と同様に、(c1)列から(h1)列のパリティ検査行列の論理に対応する排他的論理和ゲートを有する。すなわち、読み出しパリティデータRP3−RP8は、(c1)列から(h1)列のそれぞれに対応し、読み出しパリティデータRP03−RP08は、パリティ検査行の第1行から第6行に対応する。シンドローム生成回路52は、(c1)列から(h1)列において、論理1に対応する読み出しパリティデータ(RP3−RP8のいずれか)と読み出しパリティデータ(RP03−RP08のいずれか)の排他的論理和を演算する。そして、シンドローム生成回路52は、得られた排他的論理和の論理をシンドロームS3−S8として出力する。
The
シンドロームデコーダ53は、(a)列から(b1)列の28列の論理を用いて、シンドロームS3−S8から誤りが発生したビットを特定する。シンドロームデコーダ53の回路構成は、図7に示すシンドロームデコーダ43と同様である。すなわち、誤りビット情報E0−E6、E8−E14、E16−E22、E24−E30は、(a)列から(b1)列のそれぞれに対応し、シンドロームS3−S8は、パリティ検査行の第1行から第6行に対応する。シンドロームデコーダ53は、(a)列の論理を用いて誤りビット情報E0を生成し、(b)列の論理を用いて誤りビット情報E1を生成し、...、(b1)列の論理を用いて誤りビット情報E30を生成する。
The
書き込みパリティ生成回路56は、(a)列から(b1)列の28列の論理を用いて、書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30の書き込みパリティデータWP3−WP8を生成する。書き込みパリティ生成回路56の論理は、読み出しパリティ生成回路51の論理と同じである。書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30は、(a)列から(b1)列のそれぞれに対応し、書き込みパリティデータWP3−WP8は、パリティ検査行の第1行から第6行に対応する。
The write
なお、図10に示すパリティ検査行列の論理にしたがって、図7と同様に、読み出しパリティ生成回路51およびシンドローム生成回路52の論理を設計する場合、直列に接続される排他的論理和ゲートの段数は、最大で17段になる。直列に接続される排他的論理和ゲートの段数は、パリティ検査行列の各行における論理1の個数から”1”を引いた数である。図8と同様に、読み出しパリティ生成回路51およびシンドローム生成回路52を融合し、排他的論理和ゲートを並列に配置する場合、排他的論理和ゲートの段数の最大値は、17段から5段に削減される。
When designing the logic of the read
図12は、図10に示す誤り訂正回路54の一例を示す。誤り訂正回路54は、読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30とビット情報E0−E6、E8−E14、E16−E22、E24−E30とのそれぞれを受ける排他的論理和ゲートを有する。そして、誤り訂正回路54は、図7に示す誤り訂正回路44と同様に、誤りビット情報(例えば、E0)が論理1の場合に、読み出しデータ(例えば、RD0)の論理を反転することで、誤りを訂正する。誤り訂正回路54は、誤りを訂正したデータを出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30として出力する。
FIG. 12 shows an example of the
なお、読み出し動作において、誤りを訂正したデータを出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30をメモリセルアレイ10に書き戻す手法が、半導体記憶装置MEM2に適用される場合がある。この場合、読み出しパリティデータRP3−RP8の誤りも訂正され、メモリセルアレイ10に書き戻される。読み出しパリティデータRP3−RP8の誤りを訂正するために、図11に示す(c1)列から(h1)列のパリティ検査行列の論理に対応するデコード回路が、シンドロームデコーダ53に設けられる。また、シンドロームデコーダ53により誤りが検出された読み出しパリティデータRP3−RP8のいずれかのビットを反転する排他的論理和ゲートが、誤り訂正回路54に設けられる。そして、出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30および誤りが訂正された読み出しパリティデータRP3−RP8は、メモリセルアレイ10に書き戻される。この際、図10に示す置き換え回路55および書き込みパリティ生成回路56は、データの書き戻しに使用されない。
In the read operation, there is a case where a method of writing back the corrected data in the output data DO0-DO6, DO8-DO14, DO16-DO22, DO24-DO30 to the
図13は、図10に示す置き換え回路55の一例を示す。置き換え回路55は、図9に示す置き換え回路45と同様に、デコーダDECおよびセレクタSELを有する。デコーダDECは、図9に示すデコーダDECと同じである。
FIG. 13 shows an example of the
セレクタSELは、デコーダDECが求めたビット位置に基づいて、出力データDO0、DO8、DO16、DO24のいずれかを入力データDI00に置き換え、出力データDO1、DO9、DO17、DO25のいずれかを入力データDI01に置き換える。また、セレクタSELは、出力データDO2、DO10、DO18、DO26のいずれかを入力データDI02に置き換え、出力データDO3、DO11、DO19、DO27のいずれかを入力データDI03に置き換える。セレクタSELは、出力データDO4、DO12、DO20、DO28のいずれかを入力データDI04に置き換え、出力データDO5、DO13、DO21、DO29のいずれかを入力データDI05に置き換える。そして、セレクタSELは、出力データDO6、DO14、DO22、DO30のいずれかを入力データDI06に置き換える。 The selector SEL replaces any of the output data DO0, DO8, DO16, and DO24 with the input data DI00 based on the bit position obtained by the decoder DEC, and replaces any of the output data DO1, DO9, DO17, and DO25 with the input data DI01. Replace with The selector SEL replaces any of the output data DO2, DO10, DO18, and DO26 with the input data DI02, and replaces any of the output data DO3, DO11, DO19, and DO27 with the input data DI03. The selector SEL replaces any of the output data DO4, DO12, DO20, and DO28 with the input data DI04, and replaces any of the output data DO5, DO13, DO21, and DO29 with the input data DI05. Then, the selector SEL replaces any of the output data DO6, DO14, DO22, and DO30 with the input data DI06.
図14は、図3に示す半導体記憶装置MEM2の読み出し動作の一例を示す。まず、図4に示すコマンドデコーダCDECは、チップセレクト/CSがロウレベルに変化した後の最初の8クロックサイクルで入力端子SIを介して8ビットのデータ”00000011”を受ける(図14(a))。コマンドデコーダCDECは、データ”00000011”に基づいて読み出しコマンドを認識し、制御信号RCNTを出力する(図14(b))。 FIG. 14 shows an example of the read operation of the semiconductor memory device MEM2 shown in FIG. First, the command decoder CDEC shown in FIG. 4 receives 8-bit data “00000011” via the input terminal SI in the first 8 clock cycles after the chip select / CS changes to the low level (FIG. 14A). . The command decoder CDEC recognizes the read command based on the data “00000011” and outputs the control signal RCNT (FIG. 14B).
次に、図4に示すシフトレジスタSFTRIは、8番目から13番目のクロックサイクルで入力端子SIを介してアドレスA7−A2を受ける(図14(c))。図4に示す内部クロック生成回路64は、14番目のクロックサイクルで内部クロックICKを出力する(図14(d))。
Next, the shift register SFTRI shown in FIG. 4 receives the address A7-A2 via the input terminal SI in the eighth to thirteenth clock cycles (FIG. 14 (c)). The internal
アドレスデコーダ20は、内部クロックICKに同期して、アドレスA7−A2を内部アドレスIA5−IA0として受け、デコード動作を開始する(図14(e))。メモリセルアレイ10は、アドレスデコーダ20によるデコードの結果に基づいて読み出し動作を開始する。そして、図3に示す読み書き制御回路30は、14番目のクロックサイクル中に、内部アドレスIA5−IA0が示す記憶領域から読み出した読み出しデータRD0−RD31と読み出しパリティデータRP0−RP8とを出力する(図14(f))。シフトレジスタSFTRIは、14番目と15番目のクロックサイクルで32ビットの読み出しデータRD0−RD31のうちの8ビットを選択するためのアドレスA1、A0を受ける(図14(g))。
The
図3に示すパリティ制御回路40は、14番目のクロックサイクルで、読み出しデータRD7、RD15、RD23、RD31の誤りを読み出しパリティデータRP0−RP2を用いて訂正する。パリティ制御回路40は、誤りを訂正した読み出しデータRD7、RD15、RD23、RD31を出力データDO7、DO15、DO23、DO31として出力する(図14(h))。
The
図3に示すパリティ制御回路50は、14番目のクロックサイクルで、読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30の誤りを読み出しパリティデータRP3−RP8を用いて訂正する。パリティ制御回路50は、誤りを訂正した読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30を出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30として出力する(図14(i))。ここで、パリティ制御回路40による誤りの訂正時間は、パリティ制御回路50による誤りの訂正時間より短い。このため、出力データDO7、DO15、DO23、DO31の出力時刻は、出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30の出力時刻より早い。
The
図4に示す選択回路66は、14番目から15番目のクロックサイクルにかけて、アドレスA1−A0に基づいて、誤りが訂正された読み出しデータRD0−RD31のうちの8ビットを選択し、シフトレジスタSFTROに転送する(図14(j))。図14に示す例では、選択回路66は、アドレスA1−A0=”00”に基づいて、読み出しデータRD0−RD7(データD0−D7)を選択する。
The
例えば、選択回路66からシフトレジスタSFTROへの読み出しデータRD7−RD0の転送は、誤りの訂正時間に応じて変化する。読み出しデータRD7は、読み出しデータRD6−RD0に比べて誤りの訂正時間が短いため、シフトレジスタSFTROへの転送時刻は、読み出しデータRD6−RD0の転送時刻に比べて早い。図14では、読み出しデータRD6−RD0がシフトレジスタSFTROに転送されるタイミングを斜線の矩形で示す。
For example, the transfer of the read data RD7-RD0 from the
シフトレジスタSFTR0は、16番目のクロックサイクルで、データD7を出力端子SOに出力する(図14(k))。この後、シフトレジスタSFTR0は、17番目から23番目のクロックサイクルで、データD6−D0を出力端子SOに順次に出力する(図14(l))。そして、クロックSCKが停止し、チップセレクト/CSがハイレベルに変化し、読み出し動作が完了する。 The shift register SFTR0 outputs the data D7 to the output terminal SO in the 16th clock cycle (FIG. 14 (k)). Thereafter, the shift register SFTR0 sequentially outputs data D6-D0 to the output terminal SO in the 17th to 23rd clock cycles (FIG. 14 (l)). Then, the clock SCK stops, the chip select / CS changes to high level, and the read operation is completed.
なお、読み出しデータRD6−RD0に対応するデータD6−D0は、データD7が出力端子SO7から出力されるタイミングで、シフトレジスタSFTROに格納されていなくてもよい。データD6−D0は、16番目のクロックSCKの立ち上がりエッジまでにシフトレジスタSFTROに格納されていればよい。 Note that the data D6-D0 corresponding to the read data RD6-RD0 may not be stored in the shift register SFTR at the timing when the data D7 is output from the output terminal SO7. The data D6-D0 only needs to be stored in the shift register SFTR by the rising edge of the 16th clock SCK.
例えば、データD6−D0のシフトレジスタSFTROへの格納タイミングが、16番目のクロックSCKの立ち上がりエッジまでに間に合わないことが予め分かっているとする。この場合、選択回路66は、シフトレジスタSFTROにおいて、最上位ビット側に1ビットずらした位置にデータD6−D0を格納してもよい。ビット位置をずらすために、図4において、例えば、データD6−D0に対応する出力データDOUTを、16番目のクロックSCKの立ち上がりエッジに同期して、最上位ビット側に1ビットずらす切り替え回路が設けられる。
For example, it is assumed in advance that the storage timing of the data D6-D0 in the shift register SFTR is not in time for the rising edge of the 16th clock SCK. In this case, the
図15は、図14に示す読み出し動作の要部の一例を示す。図15の上側の波形は、図3に示す半導体記憶装置MEM2の動作(すなわち、図14の動作)を示し、図15の下側の波形は、読み出しデータRD0−RD31の誤りを1つの誤り検出回路で一度に訂正する半導体記憶装置の動作(比較例)を示す。 FIG. 15 shows an example of a main part of the read operation shown in FIG. The upper waveform in FIG. 15 shows the operation of the semiconductor memory device MEM2 shown in FIG. 3 (that is, the operation in FIG. 14), and the lower waveform in FIG. 15 detects errors in the read data RD0 to RD31 as one error detection. An operation (comparative example) of a semiconductor memory device in which correction is performed at once by a circuit will be described.
アドレスデコーダ20は、内部クロックICKの立ち上がりエッジに同期して、14番目のクロックサイクルでアドレスIA0−IA5をデコードする動作を開始する。また、最初のデータD7は、16番目のクロックサイクルで出力端子SOに出力される。このため、アドレスデコーダ20とメモリセルアレイ10との動作期間、読み出しデータRD7、RD15、RD23、RD31の誤り訂正期間およびデータD7の選択期間の合計が2クロックサイクル以下になるように、クロックSCKの周波数が設定される。以下、アドレスデコーダ20とメモリセルアレイ10との動作期間、読み出しデータRD7、RD15、RD23、RD31の誤り訂正期間およびデータD7の選択期間の合計は、内部動作期間と称される。
The
2クロックサイクルの周期は、クロックSCKの周波数を”f”とすると、”2/f”で表される。内部動作期間は周期2/f以下を満たすため(2/f≧内部動作期間)、半導体記憶装置MEM2のクロックSCKの最大周波数fmaxは、”2/内部動作期間”になる。例えば、内部動作期間が80ナノ秒の場合、クロックSCKの最大周波数fmaxは、25MHz(メガヘルツ)になる。
The period of two clock cycles is represented by “2 / f”, where the frequency of the clock SCK is “f”. Since the internal operation period satisfies the
一方、メモリセルアレイ10から出力される32ビットの読み出しデータRD0−RD31の誤りを1つの誤り検出回路で一度に訂正する場合、誤り検出回路の回路規模は、図5から図9に示すパリティ制御回路40の回路規模より大きくなる。例えば、誤り検出回路に設けられる読み出しパリティ生成回路およびシンドローム生成回路において、直列に接続される排他的論理和ゲートの数は増加する。これにより、読み出しデータRD0−RD31の誤り訂正期間は、図15の上側の波形に比べて長くなる。アドレスデコーダ、メモリセルアレイの動作期間、読み出しデータRD0−RD31の誤り訂正期間およびデータD7の選択期間の合計は、図15の上側の波形においても、2クロックサイクル以下に制限される。この結果、クロックSCKの周期は、図15の上側の波形に比べて長くなり、クロックSCKの周波数は、図15の上側の波形に比べて低くなる。換言すれば、図3に示す半導体記憶装置MEM2では、クロックSCKの周波数を従来に比べて高くすることができ、データの読み出し時間を短縮することができる。
On the other hand, when errors in 32-bit read data RD0-RD31 output from the
なお、図3に示す半導体記憶装置MEM2では、出力端子SOから順次に出力される8ビットのデータD7−D0の4倍の読み出しデータRD0−RD31がメモリセルアレイ10から出力される。入力端子SIで順次に受けるアドレスA0−A1は、32ビットの読み出しデータRD0−RD31のうちの8ビットを選択するために使用され、アドレスデコーダ20では使用されない。このため、アドレスA0−A1が供給される2クロックサイクルは、内部動作期間に割り当てられる。
In the semiconductor memory device MEM2 shown in FIG. 3, read data RD0-RD31 that is four times the 8-bit data D7-D0 sequentially output from the output terminal SO is output from the
例えば、メモリセルアレイから出力される64ビットの読み出しデータRD0−RD63のうちの8ビットを選択して出力端子SOから出力する半導体記憶装置では、3クロックサイクルが内部動作期間に割り当て可能である。メモリセルアレイから出力される16ビットの読み出しデータRD0−RD15のうちの8ビットを選択して出力端子SOから出力する半導体記憶装置では、1クロックサイクルが内部動作期間に割り当て可能である。メモリセルアレイから出力される読み出しデータのビット数が”2のn乗(nは4以上の整数)であり、出力端子SOから8ビットのデータが順次に出力される場合、クロックSCKの最大周波数は、”(n−3)/内部動作期間”で表される。 For example, in a semiconductor memory device that selects 8 bits out of 64-bit read data RD0 to RD63 output from the memory cell array and outputs the selected data from the output terminal SO, 3 clock cycles can be assigned to the internal operation period. In a semiconductor memory device that selects 8 bits out of 16-bit read data RD0 to RD15 output from the memory cell array and outputs the selected data from the output terminal SO, one clock cycle can be allocated to the internal operation period. When the number of bits of read data output from the memory cell array is “2 to the power of n” (n is an integer of 4 or more) and 8-bit data is sequentially output from the output terminal SO, the maximum frequency of the clock SCK is , “(N−3) / internal operation period”.
図16は、図3に示す半導体記憶装置MEM2の書き込み動作の一例を示す。図14と同様の動作については、詳細な説明は省略する。 FIG. 16 shows an example of the write operation of the semiconductor memory device MEM2 shown in FIG. Detailed description of operations similar to those in FIG. 14 is omitted.
書き込み動作を実行する書き込みコマンドは、チップセレクト/CSがロウレベルに変化した後の最初の8クロックサイクルで入力端子SIを介して受ける8ビットのデータ”00000010”により認識される(図16(a))。コマンドデコーダCDECは、データ”00000010”に基づいて書き込みコマンドを認識し、制御信号WCNTを出力する(図16(b))。 The write command for executing the write operation is recognized by 8-bit data “00000010” received via the input terminal SI in the first 8 clock cycles after the chip select / CS changes to the low level (FIG. 16A). ). The command decoder CDEC recognizes the write command based on the data “00000010” and outputs the control signal WCNT (FIG. 16B).
次に、シフトレジスタSFTRIは、8番目から13番目のクロックサイクルで入力端子SIからアドレスA7−A2を受け、受けたアドレスA7−A2を内部アドレスIA5−IA0としてアドレスデコーダ20に出力する(図16(c))。内部クロック生成回路64は、14番目のクロックサイクルに内部クロックICKを出力する(図16(d))。
Next, the shift register SFTRI receives the address A7-A2 from the input terminal SI in the eighth to thirteenth clock cycles, and outputs the received address A7-A2 to the
アドレスデコーダ20は、内部クロックICKに同期してデコード動作を開始し、メモリセルアレイ10は、アドレスデコーダ20によるデコードの結果に基づいて書き込み動作を開始する(図16(e))。この後、図14と同様に、パリティ制御回路40、50により、読み出しデータRD7、RD15、RD23、RD31および読み出しデータRD0−RD6、RD8−RD14、RD16−RD22、RD24−RD30の誤りがそれぞれ訂正される。パリティ制御回路40、50は、誤りが訂正された出力データDO7、DO15、DO23、DO31および出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30をそれぞれ出力する(図16(f)、(g))。
The
シフトレジスタSFTRIは、14番目と15番目のクロックサイクルで、8ビットの書き込みデータを32ビット中のいずれの8ビットの位置に書き込むかを示すアドレスA1、A0を受ける(図16(h))。 The shift register SFTRI receives addresses A1 and A0 indicating which 8-bit write data is written in 32 bits in the 14th and 15th clock cycles (FIG. 16 (h)).
この後、シフトレジスタSFTRIは、16番目から23番目のクロックサイクルで、8ビットの書き込みデータD7−D0を順次に受ける(図16(i))。図5に示す置き換え回路45は、出力データDO7、DO15、DO23、DO31のいずれかをシフトレジスタSFTRIから受けるデータDI00に置き換え、書き込みデータWD7、WD15、WD23、WD31を生成する(図16(j))。図5に示す書き込みパリティ回路46は、書き込みデータWD7、WD15、WD23、WD31の書き込みパリティデータWP0−WP2を生成する。
Thereafter, the shift register SFTRI sequentially receives 8-bit write data D7-D0 in the 16th to 23rd clock cycles (FIG. 16 (i)). The
一方、図10に示す置き換え回路55は、出力データDO0−DO6、DO8−DO14、DO16−DO22、DO24−DO30のいずれか7ビットをシフトレジスタSFTRIから受けるデータDI00−DI06で置き換える。そして、置き換え回路55は、書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30を生成する(図16(k))。図10に示す書き込みパリティ回路56は、書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30の書き込みパリティデータWP3−WP8を生成する。
On the other hand,
そして、書き込みデータWD0−WD31および書き込みパリティデータWP0−WP8がメモリセルアレイ10に書き込まれる。書き込みデータD0が入力端子SIに供給された後、クロックSCKが停止し、チップセレクト/CSがハイレベルに変化し、書き込み動作が完了する。なお、メモリセルアレイ10への書き込みデータWD0−WD31および書き込みパリティデータWP0−WP8の書き込みは、チップセレクト/CSがハイレベルに変化した後に完了されてもよい。
Then, write data WD 0 -WD 31 and write parity data WP 0 -
以上、図3から図16に示す実施形態においても、図1および図2に示す実施形態と同様に、読み出しコマンドを受けてから先頭データ(例えば、D7)を出力するまでの時間を従来に比べて短縮することができる。この結果、半導体記憶装置MEM2の性能を向上することができる。 As described above, in the embodiment shown in FIGS. 3 to 16 as well, in the same way as the embodiment shown in FIGS. Can be shortened. As a result, the performance of the semiconductor memory device MEM2 can be improved.
さらに、図3から図16に示す実施形態では、誤り訂正回路44は、出力端子SOから出力する先頭データとなる4ビットのデータ(D7、D15、D23、D31)の誤りを訂正し、誤り訂正回路54は、先頭データに続く28ビットのデータの誤りを訂正する。これにより、先頭データの誤りを訂正する誤り訂正回路44の回路規模を誤り訂正回路54の回路規模より小さくすることができ、誤り訂正回路44による誤りの訂正時間を、誤り訂正回路54による誤りの訂正時間より短くできる。この結果、出力端子SOから出力する最初のデータ(例えば、D7)の出力タイミングを、従来に比べて速くすることができる。
Further, in the embodiment shown in FIGS. 3 to 16, the
メモリセルアレイ10から出力される32ビットのデータのうちの8ビットを選択回路66により選択する半導体記憶装置MEM2においても、先頭データの出力端子SOからの出力タイミングを、従来に比べて早くすることができる。この際、誤り訂正回路44は、出力端子SOから出力する先頭データとなる読み出しデータRD7、RD15、RD23、RD31の誤りを訂正する。これにより、アドレスA0−A1により選択される先頭データに拘わらず、先頭データの出力タイミングを従来に比べて早くすることができる。
In the semiconductor memory device MEM2 that selects 8 bits of the 32-bit data output from the
置き換え回路45、55は、誤りが訂正された読み出しデータの一部を入力端子SIで受けた書き込みデータで置き換える。これにより、入力端子SIで受ける書き込みデータよりビット幅が大きいデータD0−D31をメモリセルアレイ10に記憶する場合にも、書き込みデータとパリティデータとの整合性を保持することができる。
The
置き換え回路45および書き込みパリティ生成回路46は、先頭データに対応する書き込みデータWD7、WD15、WD23、WD31の書き込みパリティデータWP0−WP2を生成する。置き換え回路55および書き込みパリティ生成回路56は、先頭データに続く後続のデータに対応する書き込みデータWD0−WD6、WD8−WD14、WD16−WD22、WD24−WD30の書き込みパリティデータWP3−WP8を生成する。これにより、誤り訂正回路44、54による誤り訂正で使用するパリティデータP0−P2、P3−P8のそれぞれをメモリセルアレイ10に保持させることができ、誤り訂正回路44、54による誤り訂正を正常に実行することができる。
The
図17は、半導体記憶装置および半導体記憶装置の制御方法の別の実施形態を示す。図3から図16に示した実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。 FIG. 17 shows another embodiment of the semiconductor memory device and the method for controlling the semiconductor memory device. The same or similar elements as those described in the embodiment shown in FIGS. 3 to 16 are denoted by the same reference numerals, and detailed description thereof will be omitted.
この実施形態の半導体記憶装置MEM3は、8ビットのデータD0−D7と、データD7の誤りを訂正するためのパリティデータP0−P1と、データD0−D6の誤りを訂正するためのパリティデータP2−P5とを記憶するメモリセルアレイ10aを有する。例えば、メモリセルアレイ10aは、6ビットのアドレスIA0−IA5に応じて、64個のデータ群D0−D7(すなわち、512ビット)を保持する複数のメモリセルを有する。
The semiconductor memory device MEM3 of this embodiment includes 8-bit data D0-D7, parity data P0-P1 for correcting an error in the data D7, and parity data P2- for correcting an error in the data D0-D6. A
アドレスデコーダ20は、図3のアドレスデコーダ20と同じである。読み書き制御回路30aは、メモリセルアレイ10aに入出力するデータのビット幅が14ビットであることを除き、図3に示す読み書き制御回路30と同様の機能を有する。
The
パリティ制御回路40aは、図5に示す置き換え回路45を持たないことを除き、図5に示すパリティ制御回路40と同様の回路である。パリティ制御回路50aは、図10に示す置き換え回路55を持たないことを除き、図10に示すパリティ制御回路50と同様の回路である。半導体記憶装置MEM3では、メモリセルアレイ10aに対して入出力されるデータD0−D7のビット数は、入力端子SIで受ける書き込みデータのビット数および出力端子SOに出力される読み出しデータのビット数と等しい。このため、パリティ制御回路40aは、図5に示す置き換え回路45を持たず、パリティ制御回路50aは、図10に示す置き換え回路55を持たない。パリティ制御回路40a、50aは、読み出しデータと書き込みデータとの合成をしないため、図3に示すアドレスA0−A1を受けない。
The
パリティ制御回路40aは、読み出し動作時に、読み出しデータRD7の誤りを読み出しパリティデータRP0−RP1を用いて訂正して出力データDO7を生成し、先頭データとして出力端子SOに出力する。パリティ制御回路40aは、書き込み動作時に、入力端子SIを介して受ける先頭の入力データDI07の書き込みパリティデータWP0−WP1を生成し、入力データDI07と書き込みパリティデータWP0−WP1とをメモリセルアレイ10aに出力する。
During the read operation, the
パリティ制御回路50aは、読み出し動作時に、読み出しデータRD0−RD6の誤りを読み出しパリティデータRP2−RP5を用いて訂正して出力データDO0−DO6を生成し、先頭データ(D7)に続いて出力端子SOに出力する。パリティ制御回路50aは、書き込み動作時に、入力端子SIを介して入力データDI07に続いて受ける入力データDI06−DI00の書き込みパリティデータWP2−WP5を生成する。そして、パリティ制御回路50aは、入力データDI06−DI00と書き込みパリティデータWP2−WP5とをメモリセルアレイ10aに出力する。
During the read operation, the
入出力制御回路60aは、図4に示す選択回路66を持たないことを除き、図4に示す選択回路66と同様の回路である。入出力制御回路60aの例は、図18に示す。
The input /
図18は、図17に示す入出力制御回路60aの一例を示す。入出力制御回路60aは、選択回路66を持たないことを除き、図4に示す入出力制御回路60と同様である。すなわち、シフトレジスタSFTROは、図17に示すパリティ制御回路50aから出力される出力データDO0−DO7を直接受ける。また、図4に示すアドレスA0−A1は、入力端子SIに供給されないため、シフトレジスタSFTRIは、アドレスA0−A1を出力しない。
FIG. 18 shows an example of the input /
図19は、図17に示す半導体記憶装置MEM3の読み出し動作の一例を示す。図14と同様の動作については、詳細な説明は省略する。半導体記憶装置MEM3の読み出し動作は、アドレスA1−A0を受けるクロックサイクルが省略されることを除き、図14に示す読み出し動作と同様である。13番目のクロックサイクルまでの動作は、図14と同じである。 FIG. 19 shows an example of the read operation of the semiconductor memory device MEM3 shown in FIG. Detailed description of operations similar to those in FIG. 14 is omitted. The read operation of the semiconductor memory device MEM3 is the same as the read operation shown in FIG. 14 except that the clock cycle that receives the addresses A1-A0 is omitted. The operation up to the 13th clock cycle is the same as in FIG.
アドレスA1−A0を受けるクロックサイクルが省略されるため、メモリセルアレイ10aから出力される読み出しデータRD7(D7)の誤り訂正は、内部クロックICKが生成される14番目のクロックサイクルの終わりまでに実行される。そして、誤りが訂正された出力データDO7が生成される(図19(a))。出力データDO7に対応するデータD7は、15番目のクロックサイクルで出力端子SOに出力される(図19(b))。
Since the clock cycle for receiving the addresses A1-A0 is omitted, error correction of the read data RD7 (D7) output from the
また、15番目のクロックサイクルの終わりまでに、読み出しデータRD0−RD6の誤りが訂正され、出力データDO0−DO6が生成される(図19(c))。そして、出力データDO6−DO0に対応するデータD6−D0は、16番目から22番目のクロックサイクルで出力端子SOに順次に出力される(図19(d))。すなわち、先頭データD7より後に出力されるデータD6−D0の誤り訂正に掛かる時間は、先頭データD7の誤り訂正に掛かる時間より長くてもよい。換言すれば、パリティ制御回路40aにより先頭データD7の誤りを訂正し、パリティ制御回路50aにより残りのデータD6−D0の誤りを訂正することで、先頭データD7を出力するまでの時間を従来に比べて短縮することができる。
Further, by the end of the fifteenth clock cycle, errors in the read data RD0-RD6 are corrected, and output data DO0-DO6 are generated (FIG. 19 (c)). The data D6-D0 corresponding to the output data DO6-DO0 are sequentially output to the output terminal SO in the 16th to 22nd clock cycles (FIG. 19 (d)). That is, the time required for error correction of data D6-D0 output after head data D7 may be longer than the time required for error correction of head data D7. In other words, by correcting the error of the head data D7 by the
図20は、図17に示す半導体記憶装置MEM3の書き込み動作の一例を示す。図16と同様の動作については、詳細な説明は省略する。13番目のクロックサイクルまでの動作は、図16と同じである。 FIG. 20 shows an example of the write operation of the semiconductor memory device MEM3 shown in FIG. Detailed description of the same operations as those in FIG. 16 is omitted. The operation up to the 13th clock cycle is the same as in FIG.
半導体記憶装置MEM3は、書き込みデータによる読み出しデータの置き換えをしないため、書き込み動作時にメモリセルアレイ10aからデータを読み出さず、読み出しデータの誤りを訂正しない。このため、アドレスデコーダ20は、メモリセルアレイ10aへのデータの書き込みに合わせて動作すればよく、内部クロックICKは、21番目のクロックサイクルに生成される(図20(a))。13番目のクロックサイクルでシフトレジスタSFTRIから出力されるアドレスIA0−IA5は、21番目のクロックサイクルまでアドレスデコーダ20内で保持される(図20(b))。アドレスデコーダ20は、内部クロックICKに同期してデコード動作を開始し、メモリセルアレイ10aは、アドレスデコーダ20によるデコードの結果に基づいて書き込み動作を開始する(図20(c))。
Since the semiconductor memory device MEM3 does not replace the read data with the write data, it does not read data from the
なお、内部クロックICKは、図16と同様に、14番目のクロックサイクルで生成されてもよい。この場合、アドレスデコーダ20は、14番目のクロックサイクルでデコード動作を開始し、メモリセルアレイ10aは、アドレスデコーダ20によるデコードの結果に基づいて書き込み動作を開始する。しかしながら、メモリセルアレイ10aの消費電力を削減する観点から、内部クロックICKは、21番目のクロックサイクルに生成することが望ましい。
The internal clock ICK may be generated in the 14th clock cycle, as in FIG. In this case, the
シフトレジスタSFTRIは、14番目から21番目のクロックサイクルで、8ビットの書き込みデータD7−D0を順次に受ける(図20(d))。図17に示すパリティ制御回路40aは、データD7に対応する書き込みデータWD7の書き込みパリティデータWP0−WP1を生成し、書き込みデータWD7および書き込みパリティデータWP0−WP1をメモリセルアレイ10aに出力する(図20(e))。図17に示すパリティ制御回路50aは、データD0−D6に対応する書き込みデータWD0−WD6の書き込みパリティデータWP2−WP5を生成する。パリティ制御回路50aは、書き込みデータWD0−WD6および書き込みパリティデータWP2−WP5をメモリセルアレイ10aに出力する(図20(f))。そして、書き込みデータWD0−WD7および書き込みパリティデータWP0−WP5がメモリセルアレイ10aに書き込まれる。なお、メモリセルアレイ10aへの書き込みデータWD0−WD7および書き込みパリティデータWP0−WP5の書き込みは、チップセレクト/CSがハイレベルに変化した後に完了されてもよい。
The shift register SFTRI sequentially receives 8-bit write data D7-D0 in the 14th to 21st clock cycles (FIG. 20 (d)). The
以上、図17から図20に示す実施形態においても、図1から図16に示す実施形態と同様の効果を得ることができる。すなわち、読み出しコマンドを受けてから先頭データ(例えば、D7)を出力するまでの時間を従来に比べて短縮することができ、半導体記憶装置MEM3の性能を向上することができる。また、パリティ制御回路40aにより誤り訂正するビット数をパリティ制御回路50aにより誤り訂正するビット数より少なくすることで、出力端子SOから出力する最初のデータD7の出力タイミングを、従来に比べて早くすることができる。
As described above, also in the embodiment shown in FIGS. 17 to 20, the same effect as that of the embodiment shown in FIGS. 1 to 16 can be obtained. That is, the time from receiving the read command to outputting the leading data (for example, D7) can be shortened compared to the conventional case, and the performance of the semiconductor memory device MEM3 can be improved. Further, by reducing the number of bits for error correction by the
なお、図1から図20に示す実施形態は、読み出しデータを1つの端子から出力する半導体記憶装置(シリアルメモリ)の例を示している。しかしながら、例えば、図1に示す半導体記憶装置MEM1の構成を2つ組み合わせることで、2つの読み出しデータを2つの端子から出力する2ビットのシリアルメモリが設計されてもよい。同様に、図3に示す半導体記憶装置MEM2および半導体記憶装置MEM3の各々を、複数個組み合わせて、複数ビットのデータが出力されるシリアルメモリが設計されてもよい。 The embodiment shown in FIGS. 1 to 20 shows an example of a semiconductor memory device (serial memory) that outputs read data from one terminal. However, for example, a 2-bit serial memory that outputs two read data from two terminals may be designed by combining two configurations of the semiconductor memory device MEM1 illustrated in FIG. Similarly, a serial memory that outputs a plurality of bits of data may be designed by combining a plurality of semiconductor memory devices MEM2 and MEM3 shown in FIG.
さらに、図1から図20に示す実施形態は、コマンドおよびアドレスを入力することなくデータを連続して記憶部に格納するFIFO(First In First Out)メモリなどの半導体記憶装置に適用することができる。この場合、図17に示すパリティ制御回路40a、40b等のそれぞれに含まれる2つの書き込み回路を利用してデータの書き込みが実行あれる。例えば、入力端子SIにデータD7−D0が直列に入力される場合、一方の書き込み回路は、データD7−D1が入力されたことに基づいて、データD7−D1のパリティデータを生成し、データD7−D1とパリティデータとをメモリセルアレイに書き込む。他方の書き込み回路は、最後のデータD0が入力されたことに基づいて、データD0のパリティデータを生成し、データD0とパリティデータとをメモリセルアレイに書き込む。これにより、全てのデータD7−D0が入力されたことに基づいて、データD7−D0のパリティデータを生成し、データD7−D0とパリティデータとをメモリセルアレイに書き込む場合に比べて、書き込み時間を短縮することができる。
Further, the embodiment shown in FIGS. 1 to 20 can be applied to a semiconductor memory device such as a FIFO (First In First Out) memory that continuously stores data in a storage unit without inputting a command and an address. . In this case, data is written using two write circuits included in each of the
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。 From the above detailed description, features and advantages of the embodiments will become apparent. This is intended to cover the features and advantages of the embodiments described above without departing from the spirit and scope of the claims. Also, any improvement and modification should be readily conceivable by those having ordinary knowledge in the art. Therefore, there is no intention to limit the scope of the inventive embodiments to those described above, and appropriate modifications and equivalents included in the scope disclosed in the embodiments can be used.
1…メモリ部;2、3…誤り訂正回路;4…出力回路;10、10a…メモリセルアレイ;20…アドレスデコーダ;30、30a…読み書き制御回路;40、40a…パリティ制御回路;41…読み出しパリティ生成回路;42…シンドローム生成回路;43…シンドロームデコーダ;44…誤り訂正回路;45…置き換え回路;46…書き込みパリティ生成回路;50、50a…パリティ制御回路;51…読み出しパリティ生成回路;52…シンドローム生成回路;53…シンドロームデコーダ;54…誤り訂正回路;55…置き換え回路;56…書き込みパリティ生成回路;60、60a…入出力制御回路;62…入力制御回路;64…内部クロック生成回路;66…選択回路;68…出力制御回路;A0−A1…アドレス;CRDG1、CRDG2…訂正データ群;/CS…チップセレクト;D0−D31…データ;DEC…デコーダ;DI00−DI07…入力データ;DO0−DO31…出力データ;E0−E31…誤りビット情報;IA0−IA5…アドレス;ICK…内部クロック;MEM1、MEM2、MEM3…半導体記憶装置;P0−P8…パリティデータ;RCNT…制御信号;RD0−RD31…読み出しデータ;RP00−RP08…読み出しパリティデータ;RP0−RP8…読み出しパリティデータ;RPG1、RPG2…パリティデータ群;RDG1、RDG2…データ群;S0−S8…シンドローム;SCK…クロック;SEL…セレクタ;SI…入力端子;SO…出力端子;WCNT…制御信号;WD0−WD31…書き込みデータ;WP0−WP8…書き込みパリティデータ
DESCRIPTION OF
Claims (7)
前記第1のパリティデータ群を用いて前記第1のデータ群の誤りを訂正して第1の訂正データ群を生成する第1の誤り訂正回路と、
前記第2のパリティデータ群を用いて前記第2のデータ群の誤りを訂正して第2の訂正データ群を生成する第2の誤り訂正回路と、
前記第1の訂正データ群に含まれるデータと、前記第2の訂正データ群に含まれるデータとを順次に出力する出力回路と
を備え、
前記第1のデータ群のビット数は、前記第2のデータ群のビット数より少ないこと
を特徴とする半導体記憶装置。 A first data group; a first parity data group corresponding to the first data group; a second data group different from the first data group; and a second data group corresponding to the second data group. A memory unit that outputs a parity data group in parallel,
A first error correction circuit that corrects an error in the first data group using the first parity data group to generate a first corrected data group;
A second error correction circuit that corrects an error in the second data group using the second parity data group to generate a second corrected data group;
E Bei and data contained in the first correction data group, and an output circuit for outputting the data included in the second correction data group sequentially,
The number of bits of the first data group is smaller than the number of bits of the second data group .
前記第1のパリティデータ群を用いて前記第1のデータ群の誤りを訂正して第1の訂正データ群を生成する第1の誤り訂正回路と、
前記第2のパリティデータ群を用いて前記第2のデータ群の誤りを訂正して第2の訂正データ群を生成する第2の誤り訂正回路と、
前記第1の訂正データ群に含まれるデータと、前記第2の訂正データ群に含まれるデータとを順次に出力する出力回路と
を備え、
前記第1の誤り訂正回路による前記第1のデータ群の誤り訂正時間は、前記第2の誤り訂正回路による前記第2のデータ群の誤り訂正時間より短いこと
を特徴とする半導体記憶装置。 A first data group; a first parity data group corresponding to the first data group; a second data group different from the first data group; and a second data group corresponding to the second data group. A memory unit that outputs a parity data group in parallel,
A first error correction circuit that corrects an error in the first data group using the first parity data group to generate a first corrected data group;
A second error correction circuit that corrects an error in the second data group using the second parity data group to generate a second corrected data group;
An output circuit for sequentially outputting data included in the first correction data group and data included in the second correction data group ;
The semiconductor memory device , wherein an error correction time of the first data group by the first error correction circuit is shorter than an error correction time of the second data group by the second error correction circuit .
前記第2の誤り訂正回路は、前記出力回路が出力するデータのうち前記先頭データを除く残りのデータの誤りを訂正すること
を特徴とする請求項1または請求項2記載の半導体記憶装置。 The first error correction circuit corrects an error of the head data among the data output from the output circuit,
3. The semiconductor memory device according to claim 1, wherein the second error correction circuit corrects an error in remaining data excluding the head data among data output from the output circuit. 4.
前記出力回路は、前記選択回路が選択した前記複数の第1の部分データ群の前記いずれかと前記複数の第2の部分データ群の前記いずれかとを順次に出力すること
を特徴とする請求項1ないし請求項3のいずれか1項記載の半導体記憶装置。 A selection circuit configured to select one of a plurality of first partial data groups included in the first correction data group and one of a plurality of second partial data groups included in the second correction data group; ,
The output circuit sequentially outputs the one of the plurality of first partial data groups selected by the selection circuit and the one of the plurality of second partial data groups. The semiconductor memory device according to claim 3.
前記複数の第1の部分データ群の前記いずれかを、前記書き込みデータ群のうち前記第1のデータ群に対応するデータに置き換えて第1の書き込みデータ群を生成し、前記複数の第2の部分データ群の前記いずれかを、前記書き込みデータのうち前記第2のデータ群に対応するデータに置き換えて第2の書き込みデータ群を生成する置き換え回路と、
前記第1の書き込みデータ群に対応する前記第1のパリティデータ群を生成し、前記第2の書き込みデータ群に対応する前記第2のパリティデータ群を生成するパリティ生成回路と、
前記第1の書き込みデータ群と、前記第2の書き込みデータ群と、前記パリティ生成回路が生成した前記第1のパリティデータ群および前記第2のパリティデータ群とを前記メモリ部に書き込む書き込み回路と
を備えることを特徴とする請求項4記載の半導体記憶装置。 An input circuit for sequentially receiving data included in a write data group to be written to the memory unit;
The one of the plurality of first partial data groups is replaced with data corresponding to the first data group among the write data groups to generate a first write data group, and the plurality of second partial data groups A replacement circuit that generates a second write data group by replacing any one of the partial data groups with data corresponding to the second data group of the write data;
A parity generation circuit for generating the first parity data group corresponding to the first write data group and generating the second parity data group corresponding to the second write data group;
A write circuit for writing the first write data group, the second write data group, and the first parity data group and the second parity data group generated by the parity generation circuit to the memory unit; The semiconductor memory device according to claim 4, further comprising:
前記第1のパリティデータ群を用いて前記第1のデータ群の誤りを訂正して第1の訂正データ群を生成し、
前記第2のパリティデータ群を用いて前記第2のデータ群の誤りを訂正して第2の訂正データ群を生成し、
前記第1の訂正データ群に含まれるデータと、前記第2の訂正データ群に含まれるデータとを順次に出力する半導体記憶装置の制御方法であって、
前記第1のデータ群のビット数は、前記第2のデータ群のビット数より少ないこと
を特徴とする半導体記憶装置の制御方法。 A first data group; a first parity data group corresponding to the first data group; a second data group different from the first data group; and a second data group corresponding to the second data group. Output the parity data group from the memory unit in parallel,
Correcting the error of the first data group using the first parity data group to generate a first corrected data group;
Correcting the error of the second data group using the second parity data group to generate a second corrected data group;
A method for controlling a semiconductor memory device, which sequentially outputs data included in the first correction data group and data included in the second correction data group ,
The number of bits of the first data group is smaller than the number of bits of the second data group .
前記第1のパリティデータ群を用いて前記第1のデータ群の誤りを訂正して第1の訂正データ群を生成し、
前記第2のパリティデータ群を用いて前記第2のデータ群の誤りを訂正して第2の訂正データ群を生成し、
前記第1の訂正データ群に含まれるデータと、前記第2の訂正データ群に含まれるデータとを順次に出力する半導体記憶装置の制御方法であって、
前記第1のデータ群の誤り訂正時間は、前記第2のデータ群の誤り訂正時間より短いこと
を特徴とする半導体記憶装置の制御方法。 A first data group; a first parity data group corresponding to the first data group; a second data group different from the first data group; and a second data group corresponding to the second data group. Output the parity data group from the memory unit in parallel,
Correcting the error of the first data group using the first parity data group to generate a first corrected data group;
Correcting the error of the second data group using the second parity data group to generate a second corrected data group;
A method for controlling a semiconductor memory device, which sequentially outputs data included in the first correction data group and data included in the second correction data group ,
The method of controlling a semiconductor memory device , wherein an error correction time of the first data group is shorter than an error correction time of the second data group .
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015015702A JP6439463B2 (en) | 2015-01-29 | 2015-01-29 | Semiconductor memory device and method for controlling semiconductor memory device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2015015702A JP6439463B2 (en) | 2015-01-29 | 2015-01-29 | Semiconductor memory device and method for controlling semiconductor memory device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2016143068A JP2016143068A (en) | 2016-08-08 |
| JP6439463B2 true JP6439463B2 (en) | 2018-12-19 |
Family
ID=56570495
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015015702A Expired - Fee Related JP6439463B2 (en) | 2015-01-29 | 2015-01-29 | Semiconductor memory device and method for controlling semiconductor memory device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP6439463B2 (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7016332B2 (en) | 2019-07-05 | 2022-02-04 | 華邦電子股▲ふん▼有限公司 | Semiconductor memory device |
| US11210167B2 (en) * | 2019-10-28 | 2021-12-28 | Intel Corporation | Memory wordline isolation for improvement in reliability, availability, and scalability (RAS) |
| JP2023032889A (en) * | 2021-08-27 | 2023-03-09 | ナノブリッジ・セミコンダクター株式会社 | Semiconductor device |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2000020409A (en) * | 1998-07-07 | 2000-01-21 | Seiko Epson Corp | Semiconductor storage device |
| JP2001202792A (en) * | 2000-01-17 | 2001-07-27 | Sony Corp | Error correction coding method for semiconductor memory device and semiconductor memory device |
| JP2012022422A (en) * | 2010-07-13 | 2012-02-02 | Panasonic Corp | Semiconductor recording/reproducing device |
-
2015
- 2015-01-29 JP JP2015015702A patent/JP6439463B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2016143068A (en) | 2016-08-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110389851B (en) | Memory device with error correction function and operation method thereof | |
| US6678860B1 (en) | Integrated circuit memory devices having error checking and correction circuits therein and methods of operating same | |
| US8806316B2 (en) | Circuits, integrated circuits, and methods for interleaved parity computation | |
| JP3272903B2 (en) | Error correction detection circuit and semiconductor memory device | |
| JP6542075B2 (en) | Memory system | |
| US20070226590A1 (en) | Semiconductor memory in which error correction is performed by on-chip error correction circuit | |
| US11755209B2 (en) | Semiconductor memory device and error detection and correction method | |
| JP5134569B2 (en) | Memory device | |
| JP6439463B2 (en) | Semiconductor memory device and method for controlling semiconductor memory device | |
| JP2014033364A (en) | Error detection and correction circuit and memory device | |
| CN101930799A (en) | Non-volatile memory with error detection/correction circuit and method for reading and writing data | |
| JP4102313B2 (en) | Semiconductor integrated circuit device | |
| US7075851B2 (en) | Semiconductor memory device inputting/outputting data and parity data in burst operation | |
| US8614920B2 (en) | Method and apparatus for logic read in flash memory | |
| JP4602246B2 (en) | Semiconductor integrated circuit | |
| JP5617776B2 (en) | MEMORY CIRCUIT, MEMORY DEVICE, AND MEMORY DATA ERROR CORRECTION METHOD | |
| US20110119563A1 (en) | Semiconductor memory | |
| JP4528087B2 (en) | Semiconductor memory | |
| CN118677466A (en) | Error correction coding system and method applied to on-chip memory | |
| JP2014137834A (en) | Semiconductor storage device | |
| JP2014071914A (en) | Flash memory device and method for operating memory device | |
| TWI812346B (en) | Semiconductor storage device and reading method | |
| US20120008423A1 (en) | Setting circuit and integrated circuit including the same | |
| CN115732014B (en) | Semiconductor memory device with a memory cell having a memory cell with a memory cell having a memory cell | |
| JP4549073B2 (en) | Memory control circuit |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7426 Effective date: 20170803 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20170803 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20170804 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171002 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20180214 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20180219 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20180219 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180727 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180807 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180928 |
|
| 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: 20181023 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181105 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6439463 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |