KR20120126654A - Semiconductor System - Google Patents

Semiconductor System Download PDF

Info

Publication number
KR20120126654A
KR20120126654A KR1020110044634A KR20110044634A KR20120126654A KR 20120126654 A KR20120126654 A KR 20120126654A KR 1020110044634 A KR1020110044634 A KR 1020110044634A KR 20110044634 A KR20110044634 A KR 20110044634A KR 20120126654 A KR20120126654 A KR 20120126654A
Authority
KR
South Korea
Prior art keywords
code
data code
read
write
correction code
Prior art date
Application number
KR1020110044634A
Other languages
Korean (ko)
Other versions
KR101788737B1 (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 KR1020110044634A priority Critical patent/KR101788737B1/en
Publication of KR20120126654A publication Critical patent/KR20120126654A/en
Application granted granted Critical
Publication of KR101788737B1 publication Critical patent/KR101788737B1/en

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

PURPOSE: A semiconductor system is provided to reduce power consumption by controlling an error correction operation according to errors. CONSTITUTION: A selecting unit(110) outputs a first write data code and a first write correction code or a first read data code and a first read correction code according to a mode signal. An error processing unit(120) generates an output data code by correcting the errors of the input data code and generates an output correction code by encoding the output data code. A distribution unit(130) outputs an output data code and an output correction code as a second write data code and a second write correction code or a second read data code and a second read correction code according to a mode signal. A storage unit(140) stores the second write data code and the second write correction code or outputs the stored value as the first read data code and the first read correction code according to a mode signal. [Reference numerals] (140) Storage unit; (200) Controller; (210) Error correcting circuit; (AA) Semiconductor memory device R/W

Description

반도체 시스템{Semiconductor System}Semiconductor System {Semiconductor System}

본 발명은 반도체 시스템에 관한 것으로, 보다 상세하게는 에러 보정 회로를 포함하는 반도체 시스템에 관한 것이다.The present invention relates to a semiconductor system, and more particularly, to a semiconductor system including an error correction circuit.

고속 동작과 저전력이 중시되면서 점차 컨트롤러와 반도체 메모리 장치 사이의 전송 환경이 악화되어 에러 발생률이 증가하고 있다. As high-speed operation and low power are emphasized, the transmission rate between the controller and the semiconductor memory device is worsening, and the error occurrence rate is increasing.

또한 반도체 메모리 장치 내부에서, 데이터 저장, 출력 및 보관 등의 과정에서 에러 발생률도 증가하고 있다. 플래시 메모리 장치와 같이 한 셀에 복수 비트의 데이터가 저장될 수 있는 경우, 이러한 데이터 저장, 출력 및 보관 등에서 발생하는 에러의 발생률이 상대적으로 높다.In addition, the error occurrence rate in the process of storing, outputting, and storing data in the semiconductor memory device is also increasing. When a plurality of bits of data can be stored in one cell, such as a flash memory device, the incidence of errors occurring in such data storage, output, and storage is relatively high.

이러한 에러를 보정하기 위한 에러 보정 방법이 사용된다. An error correction method is used to correct this error.

에러 보정 방법으로서, 전송 측에서는 전달하고자 하는 데이터 코드를 인코딩한 보정 코드를 추가로 전송하고, 수신 측에서는 보정 코드를 디코딩 함을 통해 전송 중 발생한 데이터 코드의 에러를 정정하는 방법이 사용된다.As the error correction method, a transmission side further transmits a correction code encoding a data code to be transmitted, and a reception side uses a method of correcting an error of a data code generated during transmission by decoding the correction code.

보정 코드를 디코딩 함을 통해 데이터 코드의 에러를 정정하는 방법으로서, 보정 코드를 사용하여 신드롬(Syndrome)을 계산하고, 신드롬을 이용하여 데이터 코드에서 에러가 발생한 위치를 계산하며, 에러가 발생한 비트의 값을 반전시킴 으로서 수행될 수 있다.A method of correcting an error in a data code by decoding a correction code, comprising: calculating a syndrome using a correction code, calculating a location of an error in the data code using a syndrome, and This can be done by inverting the value.

일반적으로, 에러 보정회로는 컨트롤러와 반도체 메모리 장치 간 전송에서 발생된 에러를 보정하기 위한 에러 보정 회로 및 반도체 메모리 장치 내부의 저장, 출력 및 보관 동작 중에 발생된 에러를 보정하기 위한 에러 보정 회로로 구분된다. In general, the error correction circuit is divided into an error correction circuit for correcting an error occurring in a transmission between the controller and the semiconductor memory device, and an error correction circuit for correcting an error generated during storage, output, and storage operations inside the semiconductor memory device. do.

에러를 보정하기 위한 보정 코드를 반도체 메모리 장치에 추가로 저장하는 것은 반도체 메모리 장치의 유효 기억 용량을 감소시키게 된다. Further storing the correction code for correcting the error in the semiconductor memory device reduces the effective storage capacity of the semiconductor memory device.

또한 반도체 메모리 장치가 보정 코드를 디코딩 및 인코딩하기 위한 에러 처리 회로를 추가로 구비하는 것은 반도체 메모리 장치의 집적화에 단점으로 적용된다.Further, the semiconductor memory device further includes an error processing circuit for decoding and encoding the correction code, which is a disadvantage in the integration of the semiconductor memory device.

본 발명은 보다 면적을 적게 차지하면서 데이터의 전송, 저장 및 출력 간에 발생할 수 있는 에러를 보정할 수 있는 반도체 시스템을 제공하는 데에 그 기술적 과제가 있다.SUMMARY OF THE INVENTION The present invention has a technical problem to provide a semiconductor system that can correct errors that may occur between data transmission, storage and output while occupying less area.

본 발명의 일 실시예에 따른 반도체 시스템은 반도체 메모리 장치를 포함하고, 상기 반도체 메모리 장치는, 모드 신호에 따라 제 1 라이트 데이터 코드 및 제 1 라이트 보정 코드 또는 제 1 리드 데이터 코드 및 제 1 리드 보정 코드를 각각 입력 데이터 코드 및 입력 보정 코드로서 출력하는 선택부, 상기 입력 보정 코드를 디코딩하고, 디코딩 결과에 따라 상기 입력 데이터 코드의 에러를 보정하여 출력 데이터 코드를 생성하고, 상기 출력 데이터 코드를 인코딩하여 출력 보정 코드를 생성하는 에러 처리부, 상기 모드 신호에 따라 상기 출력 데이터 코드 및 상기 출력 보정 코드를 제 2 라이트 데이터 코드 및 제 2 라이트 보정 코드 또는 제 2 리드 데이터 코드 및 제 2 리드 보정 코드로서 출력하는 분배부 및 상기 모드 신호에 따라 상기 제 2 라이트 데이터 코드 및 상기 제 2 라이트 보정 코드를 내부에 저장하거나, 상기 내부에 저장된 값을 상기 제 1 리드 데이터 코드 및 상기 제 1 리드 보정 코드로서 출력하는 저장부를 포함한다.A semiconductor system according to an embodiment of the present invention includes a semiconductor memory device, wherein the semiconductor memory device includes a first write data code and a first write correction code or a first read data code and a first read correction according to a mode signal. A selector for outputting a code as an input data code and an input correction code, respectively, decoding the input correction code, correcting an error of the input data code according to a decoding result, generating an output data code, and encoding the output data code An error processing unit for generating an output correction code, and outputting the output data code and the output correction code as a second write data code and a second write correction code or a second read data code and a second read correction code according to the mode signal. The second write data according to a distribution unit and the mode signal De and a second storing the write correction code therein, save that the second output as the first read data code and the first lead correction code values stored in the inner portion.

또한 본 발명의 다른 실시예에 따른 반도체 시스템은 반도체 메모리 장치를 포함하고, 상기 반도체 메모리 장치는, 모드 신호에 따라 제 1 라이트 데이터 코드 및 제 1 라이트 보정 코드 또는 제 1 리드 데이터 코드 및 제 1 리드 보정 코드를 각각 입력 데이터 코드 및 입력 보정 코드로서 출력하는 선택부, 상기 입력 보정 코드를 디코딩하고, 디코딩 결과에 따라 상기 입력 데이터 코드의 에러를 보정하여 출력 데이터 코드를 생성하는 에러 보정부, 상기 모드 신호에 따라 상기 출력 데이터 코드 및 상기 입력 보정 코드를 제 2 라이트 데이터 코드 및 제 2 라이트 보정 코드 또는 제 2 리드 데이터 코드 및 제 2 리드 보정 코드로서 출력하는 분배부 및 상기 모드 신호에 따라 상기 제 2 라이트 데이터 코드 및 상기 제 2 라이트 보정 코드를 내부에 저장하거나, 상기 내부에 저장된 값을 상기 제 1 리드 데이터 코드 및 상기 제 1 리드 보정 코드로서 출력하는 저장부를 포함한다.In addition, a semiconductor system according to another embodiment of the present invention includes a semiconductor memory device, wherein the semiconductor memory device includes a first write data code and a first write correction code or a first read data code and a first read according to a mode signal. A selection unit for outputting a correction code as an input data code and an input correction code, an error correction unit for decoding the input correction code and correcting an error of the input data code according to a decoding result, and generating an output data code, the mode A distribution unit which outputs the output data code and the input correction code as a second write data code and a second write correction code or a second read data code and a second read correction code according to a signal and the second according to the mode signal Storing the write data code and the second write correction code therein; Storing and outputting a value stored therein as the first group read data codes, and the first lead correction code, comprising: a.

본 발명은 하나의 에러 보정 회로를 사용하여 반도체 시스템이 데이터의 전송, 저장, 출력 및 보관을 수행함에 따라 발생할 수 있는 에러를 보정하도록 함으로써 에러 보정을 위한 필요 면적을 감소시키는 효과를 창출한다. The present invention creates the effect of reducing the area required for error correction by using one error correction circuit to compensate for errors that may occur as the semiconductor system performs data transfer, storage, output and storage.

또한 본 발명은 에러의 발생 여부에 따라 에러 보정 동작을 조절함으로써, 불필요한 전력 소모를 방지하는 효과를 창출한다.The present invention also creates an effect of preventing unnecessary power consumption by adjusting the error correction operation according to whether an error occurs.

도 1은 본 발명의 일 실시예에 따른 반도체 시스템(1)의 블록도,
도 2는 도 1에 도시된 반도체 메모리 장치(100a)의 동작의 일 실시예를 도시하는 흐름도,
도 3은 도 1에 도시된 반도체 메모리 장치(100a)의 동작의 다른 실시예를 도시하는 흐름도,
도 4는 본 발명의 다른 실시예에 따른 반도체 시스템(2)의 블록도,
도 5는 4에 도시된 에러 보정부(150)의 일 실시예에 따른 개략적인 블록도이다.
1 is a block diagram of a semiconductor system 1 according to an embodiment of the present invention;
2 is a flowchart illustrating an embodiment of an operation of the semiconductor memory device 100a shown in FIG. 1;
3 is a flow chart showing another embodiment of the operation of the semiconductor memory device 100a shown in FIG.
4 is a block diagram of a semiconductor system 2 according to another embodiment of the present invention;
FIG. 5 is a schematic block diagram of an error correcting unit 150 shown in FIG.

도 1은 본 발명의 일 실시예에 따른 반도체 시스템(1)의 블록도이다.1 is a block diagram of a semiconductor system 1 according to an embodiment of the present invention.

상기 반도체 시스템(1)은 데이터를 저장하기 위한 반도체 메모리 장치(100a)를 포함한다. The semiconductor system 1 includes a semiconductor memory device 100a for storing data.

상기 반도체 메모리 장치(100a)는 선택부(110), 에러 처리부(120), 분배부(130) 및 저장부(140)를 포함하여 구성될 수 있다.The semiconductor memory device 100a may include a selector 110, an error processor 120, a distributor 130, and a storage 140.

상기 선택부(110)는 모드 신호(R/W)에 따라 제 1 라이트 데이터 코드(wdcode1) 및 상기 제 1 라이트 보정 코드(wecode1) 또는 제 1 리드 데이터 코드(rdcode1) 및 제 1 리드 보정 코드(recode1)를 각각 입력 데이터 코드(idcode) 및 입력 보정 코드(iecode)로서 출력한다. The selector 110 may include a first write data code wdcode1 and a first write correction code wecode1 or a first read data code rdcode1 and a first read correction code according to a mode signal R / W. recode1) is output as an input data code (idcode) and an input correction code (iecode), respectively.

상기 선택부(110)는 일반적인 먹스(Mux) 회로를 포함하여 구성될 수 있다.The selector 110 may include a general mux circuit.

상기 제 1 라이트 데이터 코드(wdcode1)는 에러가 보정되기 전의 코드로서, 이후 레어가 보정되어 상기 제 2 라이트 데이터 코드(wdcode2)로서 상기 저장부(140)에 저장된다. The first write data code wdcode1 is a code before the error is corrected, and then the rare is corrected and stored in the storage 140 as the second write data code wdcode2.

상기 제 1 라이트 데이터 코드(wdcode1)는 상기 반도체 메모리 장치(1)의 외부, 예를 들어 컨트롤러(200)로부터 버스(bus, 300)를 통해 입력될 수 있다. 상기 제 1 라이트 데이터 코드(wdcode1)는 상기 컨트롤러(200)의 송신 시점부터 상기 선택부(110)로 수신되기까지의 전송 과정에서 에러가 발생될 수 있다.The first write data code wdcode1 may be input from the outside of the semiconductor memory device 1, for example, from the controller 200 through a bus 300. An error may occur in the transmission process from the transmission time of the controller 200 to the reception of the first write data code wdcode1 to the selection unit 110.

상기 제 1 라이트 보정 코드(wecode1)는 상기 라이트 데이터 코드(wdcode1)의 에러를 보정하기 위해 인코딩된 코드이다. The first write correction code wecode1 is an encoded code to correct an error of the write data code wdcode1.

상기 제 1 라이트 보정 코드(wecode1)는 상기 반도체 메모리 장치(1)의 외부, 예를 들어 상기 컨트롤러(200)로부터 상기 버스(bus, 300)를 통해 입력될 수 있다. The first write correction code wecode1 may be input from the outside of the semiconductor memory device 1, for example, from the controller 200 through the bus 300.

상기 제 1 리드 데이터 코드(rdcode1)는 저장부(140)로부터 출력된 코드로서, 상기 반도체 메모리 장치(100a)의 외부로 출력되기 위한 데이터이다. 상기 제 1 리드 데이터 코드(rdcode1)는 상기 저장부(140)로부터 출력되는 과정에서 에러가 발생할 수 있다. The first read data code rdcode1 is a code output from the storage 140 and is data to be output to the outside of the semiconductor memory device 100a. An error may occur while the first read data code rdcode1 is output from the storage 140.

상기 제 1 리드 보정 코드(recode1)는 상기 저장부(140)로부터 출력된 코드로서, 상기 제 1 리드 데이터 코드(rdcode1)가 상기 저장부(140)로부터 출력되는 과정에서 발생한 오류를 보정하기 위한 코드이다. The first read correction code record1 is a code outputted from the storage 140, and a code for correcting an error occurring while the first read data code rdcode1 is outputted from the storage 140. to be.

상기 에러 처리부(120)는 상기 입력 보정 코드(iecode)를 디코딩하고, 디코딩 결과에 따라 상기 입력 데이터 코드(idcode)의 에러를 보정하여 출력 데이터 코드(odcode)를 생성한다. The error processor 120 decodes the input correction code (iecode), corrects an error of the input data code (idcode) according to the decoding result, and generates an output data code (odcode).

도 1에는 상기 에러 처리부(120)가 두 입력 경로(DI, EI) 및 두 출력 경로(EO, DO)를 구비함이 도시되어 있다. In FIG. 1, the error processor 120 has two input paths DI and EI and two output paths EO and DO.

하지만 이는 특정 입출력 경로를 위한 한정을 위한 것이 아니라 설명의 용이성을 위해 예시한 것이다. However, this is not intended to limit the specific input / output path, but is illustrated for ease of description.

상기 에러 처리부(120)의 상세한 설명은 이후 도 2 및 도 3을 참조하여 설명하기로 한다.A detailed description of the error processing unit 120 will be described later with reference to FIGS. 2 and 3.

또한 상기 에러 처리부(120)는 상기 출력 데이터 코드(odcode)를 인코딩하여 출력 보정 코드(oecode)를 생성한다. In addition, the error processor 120 encodes the output data code (odcode) to generate an output correction code (oecode).

상기 에러 처리부(120)는 디코딩 및 인코딩을 통해 에러를 보정하는 일반적인 에러 보정 회로를 포함하여 구성될 수 있다.The error processor 120 may include a general error correction circuit that corrects an error through decoding and encoding.

일반적으로 에러 보정 회로는 인코더 및 디코더가 하나의 회로로 구성된 구조로 구성될 수 있고, 또는 인코더 및 디코더가 별도로 구성된 구조로도 구성될 수 있다. In general, the error correction circuit may be configured as a structure in which the encoder and the decoder are configured as one circuit, or may be configured as a structure in which the encoder and the decoder are separately configured.

상기 분배부(130)는 상기 모드 신호(R/W)에 따라 상기 출력 데이터 코드(odcode) 및 상기 출력 보정 코드(oecode)를 제 2 라이트 데이터 코드(wdcode2) 및 제 2 라이트 보정 코드(wecode2) 또는 제 2 리드 데이터 코드(rdcode2) 및 제 2 리드 보정 코드(recode2)로서 출력한다. The distribution unit 130 converts the output data code (odcode) and the output correction code (oecode) into a second write data code (wdcode2) and a second write correction code (wecode2) according to the mode signal R / W. Or output as the second read data code rdcode2 and the second read correction code record2.

상기 분배부(130)는 일반적인 디먹스(Demux) 회로를 포함하여 구성될 수 있다.The distribution unit 130 may include a general demux circuit.

상기 저장부(140)는 상기 모드 신호(R/W)에 따라 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 2 라이트 보정 코드(wecode2)를 내부에 저장하거나, 상기 내부에 저장된 값을 상기 제 1 리드 데이터 코드(rdcode1) 및 상기 제 1 리드 보정 코드(recode1)로서 출력한다. The storage unit 140 stores the second write data code wdcode2 and the second write correction code wecode2 therein according to the mode signal R / W, or stores the value stored therein. The data is output as one read data code rdcode1 and the first read correction code record1.

상기 저장부(140)는 일반적인 기억 소자를 포함하여 구성될 수 있다. The storage unit 140 may include a general memory device.

상기 제 2 라이트 데이터 코드(wdcode2)는 상기 저장부(140)에 저장되기 위한 데이터로서, 에러가 보정된 이후의 코드이다. 상기 제 2 라이트 데이터 코드(wdcode2)는 상기 저장부(140)에 저장되는 과정에서 오류가 발생할 수 있다.The second write data code wdcode2 is data to be stored in the storage 140 and is a code after an error is corrected. An error may occur while the second write data code wdcode2 is stored in the storage 140.

상기 제 2 라이트 데이터 코드(wdcode2)는 상기 저장부(140)에 입력되는 코드이고, 상기 제 1 리드 데이터 코드(rdcode1)는 상기 저장부(140)에서 출력되는 코드로서, 서로 동일한 코드이다. 하지만, 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 1 리드 데이터 코드(rdcode1)는 상기 저장부(140)에 입력되고 출력되는 동안 오류가 발생할 수 있으므로, 설명의 용이성을 위해 서로 다른 이름으로 구분하였다.The second write data code wdcode2 is a code input to the storage 140, and the first read data code rdcode1 is a code output from the storage 140 and are the same codes. However, since the error may occur while the second write data code wdcode2 and the first read data code rdcode1 are input to and output from the storage 140, they are divided into different names for ease of explanation. It was.

상기 제 2 라이트 보정 코드(wecode2)는 상기 제 2 라이트 데이터 코드(wdcode2)와 함께 상기 저장부(140)에 저장되는 코드로서, 상기 제 2 라이트 데이터 코드(wdcode2)가 상기 저장부(140)에 저장되는 동안 발생하는 오류를 보정하기 위한 코드이다.The second write correction code wecode2 is stored in the storage unit 140 together with the second write data code wdcode2, and the second write data code wdcode2 is stored in the storage unit 140. This code corrects errors that occur while saving.

상기 제 2 라이트 보정 코드(wecode2)는 상기 저장부(140)에 입력되는 코드이고, 상기 제 1 리드 보정 코드(recode1)는 상기 저장부(140)에서 출력되는 코드로서, 서로 동일한 코드이다. 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 1 리드 데이터 코드(rdcode1)처럼, 설명의 용이성을 위해 서로 다른 이름으로 구분하였다. The second write correction code wecode2 is a code input to the storage unit 140, and the first read correction code record1 is a code output from the storage unit 140 and is the same code. Like the second write data code (wdcode2) and the first read data code (rdcode1), they are separated by different names for ease of description.

상기 모드 신호(R/W)는 상기 선택부(110), 상기 분배부(130) 및 상기 저장부(140)의 동작을 제어하는 신호로서, 반도체 메모리 장치의 라이트 및 리드 동작 시 활성화되는 신호를 사용하여 구성될 수 있다. The mode signal R / W is a signal for controlling operations of the selector 110, the distributor 130, and the storage 140. The mode signal R / W is a signal that is activated during a write and read operation of the semiconductor memory device. It can be configured using.

예를 들어, 제한하려는 것은 아니지만 상기 모드 신호(R/W)는 라이트 모드 시 하이 레벨이 되고, 리드 모드 시 로우 레벨이 되도록 구성될 수 있다.For example, although not intended to be limiting, the mode signal R / W may be configured to be at the high level in the write mode and at the low level in the read mode.

본 발명의 일 실시예에 따른 상기 반도체 시스템(1)는 상기 컨트롤러(200) 및 상기 버스(300)를 더 포함하여 구성될 수 있다. The semiconductor system 1 according to an exemplary embodiment of the present invention may further include the controller 200 and the bus 300.

상기 컨트롤러(200)는 상기 반도체 메모리 장치(100a)를 제어하기 위한 구성부로서, 일반적인 프로세서를 포함하여 구성될 수 있다.The controller 200 is a component for controlling the semiconductor memory device 100a and may include a general processor.

상기 버스(300)는 상기 컨트롤러(200) 및 상기 반도체 메모리 장치(100a)의 통신을 위한 경로이다. The bus 300 is a path for communication between the controller 200 and the semiconductor memory device 100a.

상기 컨트롤러(200)는 상기 제 1 라이트 데이터 코드(wdcode1) 및 상기 제 1 라이트 보정 코드(wecode1)를 생성하고, 상기 버스(300)를 통해 상기 반도체 메모리 장치(100a)로 제공하도록 구성될 수 있다. The controller 200 may be configured to generate the first write data code wdcode1 and the first write correction code wecode1 and provide them to the semiconductor memory device 100a through the bus 300. .

또한 상기 컨트롤러(200)는 상기 버스(300)를 통해 상기 제 2 리드 데이터 코드(rdcode2) 및 상기 제 2 리드 보정 코드(recode2)를 수신하고, 상기 제 2 리드 보정 코드(recode2)를 디코딩하여 상기 제 2 리드 데이터 코드(rdcode2)의 에러를 보정하도록 구성될 수 있다. In addition, the controller 200 receives the second read data code rdcode2 and the second read correction code record2 through the bus 300, decodes the second read correction code record2 to perform the decoding. The second read data code rdcode2 may be configured to correct an error.

이러한 동작을 위해, 상기 컨트롤러(200)는 상기 제 1 라이트 데이터 코드(wdcode1)를 인코딩하여 상기 제 1 라이트 보정 코드(wecode1)를 생성하고, 또한 상기 제 2 리드 보정 코드(recode2)를 디코딩하여 상기 제 2 리드 데이터 코드(rdcode2)의 에러를 보정하는 에러 보정 회로(210)를 더 포함하여 구성될 수 있다.
For this operation, the controller 200 encodes the first write data code wdcode1 to generate the first write correction code wecode1, and also decodes the second read correction code record2 to It may be configured to further include an error correction circuit 210 for correcting the error of the second read data code (rdcode2).

도 2는 도 1에 도시된 상기 반도체 메모리 장치(100a)의 동작의 일 실시예를 도시하는 흐름도이다.FIG. 2 is a flowchart illustrating an embodiment of an operation of the semiconductor memory device 100a shown in FIG. 1.

도 2의 흐름도는 상기 반도체 메모리 장치가 라이트 모드(Write)를 수행하는 경우를 도시하였다. 2 illustrates a case where the semiconductor memory device performs a write mode.

상기 모드 신호(R/W)가 라이트 모드(Write)를 나타내도록 입력된다. The mode signal R / W is input to indicate a write mode.

여기서 상기 모드 신호(R/W)는 상기 반도체 메모리 장치(100a)의 외부, 예를 들어 상기 컨트롤러(200)에서 직접 입력될 수 있다. 또는 상기 모드 신호(R/W)는 상기 컨트롤러(200)의 다른 명령에 응답하여 상기 반도체 메모리 장치(100a)가 내부에서 생성하여 입력될 수도 있다. The mode signal R / W may be directly input from the outside of the semiconductor memory device 100a, for example, from the controller 200. Alternatively, the mode signal R / W may be generated and input by the semiconductor memory device 100a in response to another command of the controller 200.

상기 모드 신호(R/W)가 어디로부터 입력되는 지가 본 발명을 실시하기 위한 필수적 특징을 제한하려는 것이 아님을 명시한다.It is noted that where the mode signal R / W is input from is not intended to limit the essential features for practicing the present invention.

상기 선택부(110)는 상기 모드 신호(R/W)에 응답하여 상기 제 1 라이트 데이터 코드(wdcode1) 및 상기 제 1 라이트 보정 코드(wecode1)를 상기 입력 데이터 코드(idcode) 및 상기 입력 보정 코드(iecode)로서 출력한다. The selector 110 converts the first write data code wdcode1 and the first write correction code wecode1 into the input data code idcode and the input correction code in response to the mode signal R / W. Output as (iecode)

상기 에러 처리부(120)는 상기 입력 보정 코드(iecode), 즉 상기 제 1 라이트 보정 코드(wecode1)를 디코딩하여 상기 입력 데이터 코드(idcode), 즉 상기 제 1 라이트 데이터 코드(wdcode1)의 에러를 보정하고, 상기 출력 데이터 코드(odcode)로서 출력한다. The error processor 120 decodes the input correction code iecode, that is, the first write correction code wecode1, to correct an error of the input data code idcode, that is, the first write data code wdcode1. And output as the output data code (odcode).

도 2에는 상기 에러 처리부(120)가 디코딩 동작을 위해 상기 입력 보정 코드(iecode) 및 상기 입력 데이터 코드(idcode)를 수신(DI)하고, 디코딩 결과에 따라 보정된 상기 출력 데이터 코드(odcode)를 출력(DO)하는 것이 도시되어 있다.In FIG. 2, the error processor 120 receives the input correction code iecode and the input data code ID for a decoding operation, and outputs the corrected output data code according to a decoding result. The output DO is shown.

또한 상기 에러 처리부(120)는 상기 출력 데이터 코드(odcode)를 인코딩하여 상기 출력 보정 코드(oecode)를 생성한다. In addition, the error processor 120 encodes the output data code (odcode) to generate the output correction code (oecode).

도 2에는 상기 에러 처리부(120)가 상기 입력 보정 코드(iecode)를 수신(EI)하여 인코딩하고, 상기 출력 보정 코드(oecode)를 출력(EO)하는 것이 도시되어 있다.FIG. 2 shows that the error processing unit 120 receives (EI) and encodes the input correction code (iecode) and outputs the output correction code (oecode).

상기 분배부(130)는 상기 모드 신호(R/W)에 응답하여 상기 출력 데이터 코드(odcode) 및 상기 출력 보정 코드(oecode)를 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 2 라이트 보정 코드(wecode2)로서 출력한다. The distribution unit 130 converts the output data code (odcode) and the output correction code (oecode) into the second write data code (wdcode2) and the second write correction code in response to the mode signal R / W. Output as (wecode2).

상기 저장부(140)는 상기 모드 신호(R/W)에 응답하여 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 2 라이트 보정 코드(wecode2)를 내부에 저장한다.
The storage unit 140 stores the second write data code wdcode2 and the second write correction code wecode2 in response to the mode signal R / W.

도 3은 도 1에 도시된 상기 반도체 메모리 장치(100a)의 동작의 다른 실시예를 도시하는 흐름도이다.FIG. 3 is a flowchart illustrating another embodiment of the operation of the semiconductor memory device 100a shown in FIG. 1.

도 3의 흐름도는 상기 반도체 메모리 장치가 리드 모드(Read)를 수행하는 경우를 도시하였다. 3 illustrates a case in which the semiconductor memory device performs a read mode.

상기 모드 신호(R/W)가 리드 모드(Read)를 나타내도록 입력된다. The mode signal R / W is input to indicate a read mode Read.

상기 저장부(140)는 상기 모드 신호(R/W)에 응답하여 내부에 저장된 값을 상기 제 1 리드 데이터 코드(rdcode1) 및 상기 제 1 리드 보정 코드(recode1)로서 출력한다. The storage unit 140 outputs a value stored therein as the first read data code rdcode1 and the first read correction code record1 in response to the mode signal R / W.

상기 선택부(110)는 상기 모드 신호(R/W)에 응답하여 상기 제 1 리드 데이터 코드(rdcode1) 및 상기 제 1 리드 보정 코드(recode1)를 상기 입력 데이터 코드(idcode) 및 상기 입력 보정 코드(iecode)로서 출력한다. The selector 110 converts the first read data code rdcode1 and the first read correction code record1 into the input data code idcode and the input correction code in response to the mode signal R / W. Output as (iecode)

상기 에러 처리부(120)는 상기 입력 보정 코드(iecode), 즉 상기 제 1 리드 보정 코드(recode1)를 디코딩하여 상기 입력 데이터 코드(idcode), 즉 상기 제 1 리드 데이터 코드(rdcode1)의 에러를 보정하고, 상기 출력 데이터 코드(odcode)로서 출력한다. The error processor 120 decodes the input correction code iecode, that is, the first read correction code record1, to correct an error of the input data code idcode, that is, the first read data code rdcode1. And output as the output data code (odcode).

또한 상기 에러 처리부(120)는 상기 출력 데이터 코드(odcode)를 인코딩하여 상기 출력 보정 코드(oecode)를 생성한다. In addition, the error processor 120 encodes the output data code (odcode) to generate the output correction code (oecode).

상기 분배부(130)는 상기 모드 신호(R/W)에 응답하여 상기 출력 데이터 코드(odcode) 및 상기 출력 보정 코드(oecode)를 상기 제 2 리드 데이터 코드(rdcode2) 및 상기 제 2 리드 보정 코드(recode2)로서 출력한다.
The distribution unit 130 converts the output data code (odcode) and the output correction code (oecode) into the second read data code (rdcode2) and the second read correction code in response to the mode signal R / W. Output as (recode2).

도 2 및 도 3에 도시된 것처럼, 상기 반도체 메모리 장치(100a)의 상기 선택부(110), 상기 에러 처리부(120), 상기 분배부(130) 및 상기 저장부(140)는 상기 모드 신호(R/W)에 따라 서로 다른 동작을 수행한다. 2 and 3, the selector 110, the error processor 120, the distributor 130, and the storage 140 of the semiconductor memory device 100a may receive the mode signal ( R / W) performs different operations.

즉, 상기 반도체 메모리 장치(100a)의 상기 선택부(110), 상기 에러 처리부(120), 상기 분배부(130) 및 상기 저장부(140)는 상기 라이트 모드(Write) 및 상기 리드 모드(Read)에 따른 동작을 모두 수행할 수 있다. That is, the selector 110, the error processor 120, the distribution unit 130, and the storage 140 of the semiconductor memory device 100a may read the write mode and the read mode read. ) Can be performed.

이처럼, 상기 반도체 메모리 장치가(100a)가 데이터의 에러 보정을 위해 상기 라이트 모드(Write) 및 상기 리드 모드(Read) 별로 각각의 에러 보정 회로를 구비하는 것이 아니라, 도 2 및 도 3에 도시된 것처럼 상기 선택부(110), 상기 에러 처리부(120), 상기 분배부(130) 및 상기 저장부(140)가 상기 라이트 모드(Write) 및 상기 리드 모드(Read)에 따른 동작을 모두 수행하도록 구성하는 것은 에러 보정 동작을 위한 필요 회로 면적을 감소시키는 효과를 창출한다. 이는 반도체 메모리 장치 및 그를 포함하는 반도체 시스템의 집적화에 장점으로 적용된다.As such, the semiconductor memory device 100a does not include an error correction circuit for each of the write mode and the read mode for error correction of data, but is illustrated in FIGS. 2 and 3. As illustrated, the selection unit 110, the error processing unit 120, the distribution unit 130, and the storage unit 140 perform all operations according to the write mode and the read mode. Doing so creates the effect of reducing the necessary circuit area for the error correction operation. This is advantageously applied to the integration of semiconductor memory devices and semiconductor systems including the same.

이에 따라 상기 반도체 메모리 장치(100a)는 상기 라이트 모드(Write)에서, 상기 제 1 라이트 데이터 코드(wdcode1)가 수신되기까지 발생할 수 있는 에러를 보정할 수 있다. Accordingly, the semiconductor memory device 100a may correct an error that may occur until the first write data code wdcode1 is received in the write mode.

또한 상기 반도체 메모리 장치(100a)는 상기 리드 모드(Read)에서, 상기 제 2 라이트 데이터 코드(wdcode2)가 상기 저장부(140)에 저장되고 상기 제 1 리드 데이터 코드(rdcode1)로서 출력되는 동안 발생할 수 있는 에러를 보정할 수 있다. In addition, the semiconductor memory device 100a may occur while the second write data code wdcode2 is stored in the storage 140 and output as the first read data code rdcode1 in the read mode Read. You can correct the possible errors.

도 2 및 도 3에서, 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 2 라이트 보정 코드(wecode2)가 상기 분배부(130)에서 상기 저장부(140)로 직접 전달되고, 또한 상기 제 1 리드 데이터 코드(rdcode1) 및 상기 제 1 리드 보정 코드(recode1)가 상기 저장부(140)에서 상기 분배부(110)로 직접 전달되는 것으로 도시되었지만, 이는 설명의 용이성을 위해 개략적으로 도시된 것이다. 2 and 3, the second write data code wdcode2 and the second write correction code wecode2 are directly transferred from the distribution unit 130 to the storage unit 140, and also the first read. Although the data code rdcode1 and the first read correction code record1 are shown to be directly transmitted from the storage 140 to the distribution unit 110, this is schematically illustrated for ease of description.

상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 2 라이트 보정 코드(wecode2)가 상기 분배부(130)로부터 출력되어 상기 저장부(140)로 수신될 때까지, 그리고 상기 제 1 리드 데이터 코드(rdcode1) 및 상기 제 1 리드 보정 코드(recode1)가 상기 저장부(140)로부터 출력되어 상기 분배부(110)로 수신될 때까지 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 2 라이트 보정 코드(wecode2) 및 상기 제 1 리드 데이터 코드(rdcode1) 및 상기 제 1 리드 보정 코드(recode1)는 다른 연산을 수행할 수 있다. Until the second write data code wdcode2 and the second write correction code wecode2 are output from the distribution unit 130 and received by the storage unit 140, and the first read data code rdcode1. ) And the second write data code wdcode2 and the second write correction code wecode2 until the first read correction code record1 is output from the storage 140 and received by the distribution unit 110. ) And the first read data code rdcode1 and the first read correction code record1 may perform different operations.

예를 들어, 상기 반도체 메모리 장치(100a)는 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 2 라이트 보정 코드(wecode2)와 상기 제 1 리드 데이터 코드(rdcode1) 및 상기 제 1 리드 보정 코드(recode1)를 임시 보관(예를 들어 래치)하는 동작을 수행할 수 있다. For example, the semiconductor memory device 100a may include the second write data code wdcode2, the second write correction code wecode2, the first read data code rdcode1, and the first read correction code record1. ) May be temporarily stored (eg, latched).

도 2 및 도 3에서 상기 제 2 라이트 데이터 코드(wdcode2) 및 상기 제 2 라이트 보정 코드(wecode2)가 상기 분배부(130)에서 상기 저장부(140)로 직접 전달되고, 또한 상기 제 1 리드 데이터 코드(rdcode1) 및 상기 제 1 리드 보정 코드(recode1)가 상기 저장부(140)에서 상기 분배부(110)로 직접 전달되는 것이 본 발명의 신호 전달을 한정하기 위한 필수적 요소가 아님을 명시한다.
2 and 3, the second write data code wdcode2 and the second write correction code wecode2 are directly transferred from the distribution unit 130 to the storage unit 140, and the first read data. It is noted that the direct transfer of the code rdcode1 and the first read correction code record1 from the storage 140 to the distribution unit 110 is not essential to limit the signal transmission of the present invention.

도 4는 본 발명의 다른 실시예에 따른 반도체 시스템(2)의 블록도이다.4 is a block diagram of a semiconductor system 2 according to another embodiment of the present invention.

도 4에 도시된 상기 반도체 시스템(2)은 도 1에 도시된 상기 반도체 시스템(1)과 유사하게 구성되며, 상기 반도체 메모리 장치(100b)가 상기 에러 처리부(120) 대신 상기 에러 보정부(150)를 포함하도록 구성된다. The semiconductor system 2 shown in FIG. 4 is configured similarly to the semiconductor system 1 shown in FIG. 1, and the semiconductor memory device 100b replaces the error processor 120 with the error corrector 150. It is configured to include).

상기 에러 처리부(120)가 상기 입력 보정 코드(iecode)를 디코딩하여 상기 입력 데이터 코드(idcode)의 에러를 보정하는 디코딩 동작 및 상기 출력 데이터 코드(odcode)를 인코딩하여 상기 출력 보정 코드(oecode)를 생성하는 인코딩 동작을 모두 수행한 것과 달리, 상기 에러 보정부(150)는 상기 입력 보정 코드(iecode)를 디코딩하여 상기 입력 데이터 코드(idcode)의 에러를 보정하는 디코딩 동작만을 수행하도록 구성되었다. The error processing unit 120 decodes the input correction code (iecode) to correct an error of the input data code (idcode) and encodes the output data code (odcode) to encode the output correction code (oecode). Unlike performing all encoding operations to be generated, the error correction unit 150 is configured to perform only a decoding operation of correcting an error of the input data code by decoding the input correction code.

상기 에러 보정부(150)는 상기 입력 보정 코드(iecode)를 디코딩하여 상기 입력 데이터 코드(idcode)의 에러를 보정함으로써 상기 출력 데이터 코드(odcode)를 생성하고, 상기 출력 데이터 코드(odcode) 및 상기 입력 보정 코드(iecode)를 상기 분배부(130)로 제공한다. The error correction unit 150 generates the output data code (odcode) by decoding the input correction code (iecode) to correct an error of the input data code (idcode), and outputs the output data code (odcode) and the An input correction code (iecode) is provided to the distribution unit 130.

에러 보정 방법에서 각각의 데이터 코드 및 보정 코드가 1:1로 대응하여 인코딩 또는 디코딩되는 경우, 상기 데이터 코드의 에러가 보정되었다면, 보정된 상기 데이터 코드를 다시 인코딩하더라도 같은 보정 코드가 생성된다. 이 경우 입력된 보정 코드를 그대로 출력함으로써 인코딩 동작을 생략할 수 있다. In the error correction method, when each data code and the correction code are encoded or decoded in a 1: 1 correspondence, if the error of the data code is corrected, the same correction code is generated even if the corrected data code is encoded again. In this case, the encoding operation may be omitted by outputting the input correction code as it is.

도 4에는 상기 에러 보정부(150)가 상기 입력 데이터 코드(idcode) 및 상기 입력 보정 코드(iecode)를 수신(IN)하고, 생성된 상기 출력 데이터 코드(odcode) 및 상기 입력 보정 코드(iecode)를 출력(OUT)함이 도시되어 있다.In FIG. 4, the error correcting unit 150 receives (IN) the input data code (idcode) and the input correction code (iecode), and generates the output data code (odcode) and the input correction code (iecode). OUT is shown.

도 4에 도시된 상기 반도체 시스템(2)는 상기 인코딩 동작을 생략함에 따라 최대 지연 시간이나 레이턴시(latency)를 감소시킬 수 있다.The semiconductor system 2 shown in FIG. 4 may reduce the maximum delay time or latency by omitting the encoding operation.

도 4에 도시된 상기 반도체 시스템(1)은 도 1 내지 도 3에 도시된 상기 반도체 시스템(2)과 비교하여 볼 때, 상술된 차이점을 제외하고 동일하게 동작될 수 있다. 따라서 상세한 설명은 생략한다. The semiconductor system 1 shown in FIG. 4 can be operated in the same manner except for the above-described differences when compared with the semiconductor system 2 shown in FIGS. 1 to 3. Therefore, detailed description is omitted.

일반적으로 에러 보정 회로는 인코더 및 디코더가 하나의 회로로 구성된 구조로 구성될 수 있고, 또는 인코더 및 디코더가 별도로 구성된 구조로도 구성될 수 있다. In general, the error correction circuit may be configured as a structure in which the encoder and the decoder are configured as one circuit, or may be configured as a structure in which the encoder and the decoder are separately configured.

도 1 내지 도 3에 도시된 상기 반도체 시스템(1)의 경우, 상기 에러 처리부(120)는 인코딩 동작 및 디코딩 동작을 모두 수행하므로, 상기 에러 처리부(120)는 인코더 및 디코더가 하나의 회로로 구성된 구조로 구성된 에러 보정회로를 포함하여 구성하는 것이 면적 측면에서 바람직하다. 이 경우 인코더 및 디코더의 입출력 단자를 공유하므로 디코딩 결과를 인코딩하기까지 임시적으로 저장할 수 있는 기억 소자(예를 들어, 래치 회로)를 구비하도록 구성하는 것이 바람직하다.In the semiconductor system 1 illustrated in FIGS. 1 to 3, the error processor 120 performs both an encoding operation and a decoding operation. Thus, the error processor 120 includes an encoder and a decoder configured as one circuit. It is desirable to include an error correction circuit composed of a structure in terms of area. In this case, since the input and output terminals of the encoder and the decoder are shared, it is preferable to have a storage element (for example, a latch circuit) that can be temporarily stored until the decoding result is encoded.

도 4에 도시된 상기 반도체 시스템(2)의 경우, 상기 에러 보정부(150)는 디코딩 동작만을 수행하므로, 상기 에러 보정부(150)는 디코더만으로 구성된 에러 보정 회로를 포함하여 구성하는 것이 면적 측면에서 바람직하다.
In the case of the semiconductor system 2 shown in FIG. 4, since the error correction unit 150 performs only a decoding operation, the error correction unit 150 includes an error correction circuit configured only with a decoder. Preferred at

도 5는 4에 도시된 상기 에러 보정부(150)의 일 실시예에 따른 개략적인 블록도이다. 5 is a schematic block diagram of an error correcting unit 150 shown in FIG.

상기 에러 보정부(150)는 신드롬 생성부(151), 에러 감지부(152), 에러 위치 판단부(153) 및 보정부(154)를 포함하여 구성될 수 있다. The error corrector 150 may include a syndrome generator 151, an error detector 152, an error position determiner 153, and a corrector 154.

상기 신드롬 생성부(151)는 상기 입력 데이터 코드(idcode) 및 상기 입력 보정 코드(iecode)를 수신하여 신드롬(syn)을 생성한다. The syndrome generator 151 receives the input data code (idcode) and the input correction code (iecode) to generate a syndrome (syn).

상기 신드롬 생성부(151)는 일반적인 신드롬 생성 회로를 포함하여 구성될 수 있다.The syndrome generator 151 may include a general syndrome generator.

상기 에러 감지부(152)는 상기 신드롬(syn)을 이용하여 상기 입력 데이터 코드(idcode)에 에러가 존재하는 지 여부를 확인하고, 그 결과를 인에이블 신호(en)로서 출력한다. The error detector 152 checks whether an error exists in the input data code id using the syndrome syn, and outputs the result as an enable signal en.

상기 에러 위치 판단부(153)는 상기 인에이블 신호(en)가 활성화되면 상기 신드롬(syn)을 이용하여 상기 입력 데이터 코드(idcode) 중 어디에서 에러가 발생하였는 지를 나타내는 에러 위치 신호(erl)를 생성한다. When the enable signal en is activated, the error position determiner 153 uses the syndrome syn to generate an error position signal erl indicating where an error occurred in the input data code id. Create

상기 에러 위치 판단부(153)는 일반적인 에러 위치 판단 회로처럼, 상기 신드롬(syn)을 이용하여 에러 다항식(error locator polynominal)을 구성한 다음, 상기 에러 위치 다항식의 근을 구하여 상기 입력 데이터 코드(idcode) 중 에러가 발생한 비트의 위치를 계산하도록 구성될 수 있다. The error position determining unit 153 constructs an error locator polynominal using the syndrome syn, like a general error position determining circuit, and then obtains a root of the error position polynomial to obtain the input data code. Can be configured to calculate the location of the bit in which the error occurred.

또한 상기 에러 위치 판단부(153)는 상기 인에이블 신호(en)가 비활성화되면 비활성화되어 전력 소모를 방지한다. In addition, the error position determiner 153 is deactivated when the enable signal en is deactivated to prevent power consumption.

상기 보정부(154)는 상기 인에이블 신호(en)가 활성화되면 상기 에러 위치 신호(erl)를 이용하여 상기 입력 데이터 코드(idcode)의 에러를 보정하고, 상기 출력 데이터 코드(odcode)로서 출력한다. When the enable signal en is activated, the correction unit 154 corrects an error of the input data code (idcode) by using the error position signal erl and outputs the output data code as odcode. .

상기 보정부(154)는 일반적인 보정 회로처럼, 에러가 발생한 위치의 비트 값을 반전함으로써 상기 입력 데이터 코드(idcode)의 에러를 보정할 수 있다.The correction unit 154 may correct an error of the input data code (idcode) by inverting a bit value of a location where an error occurs, like a general correction circuit.

또한 상기 보정부(154)는 상기 입력 보정 코드(iecode)를 그대로 출력한다. In addition, the correction unit 154 outputs the input correction code (iecode) as it is.

또한 상기 보정부(154)는 상기 인에이블 신호(en)가 비활성화되면 에러 보정 동작을 수행하지 않고, 상기 입력 데이터 코드(idcode)를 그대로 상기 출력 데이터 코드(odcode)로서 출력함으로써 전력 소모를 방지한다. In addition, when the enable signal en is deactivated, the correction unit 154 prevents power consumption by outputting the input data code as the output data code as it is without performing an error correction operation. .

도 5와 같이 구성된 상기 에러 보정부(150)는 상기 입력 데이터 코드(iecode)에 에러가 발생하지 않으면 에러 위치 판별 동작 및 에러 보정 동작을 수행하지 않음으로써 불필요한 전력 소모를 방지할 수 있다. 이러한 점은 반도체 시스템의 저전력화에 장점으로 적용된다.The error correction unit 150 configured as shown in FIG. 5 may prevent unnecessary power consumption by not performing an error position determination operation and an error correction operation when an error does not occur in the input data code. This is an advantage in lowering the power of semiconductor systems.

본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the present invention as defined by the following claims and their equivalents. Only. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

1/2: 반도체 시스템 100a/100b: 반도체 메모리 장치
110: 선택부 120: 에러 처리부
130: 분배부 140: 저장부
150: 에러 보정부 151: 신드롬 생성부
152: 에러 감지부 153: 에러 위치 판단부
154: 보정부 200: 컨트롤러
210: 에러 보정 회로
1/2: semiconductor system 100a / 100b: semiconductor memory device
110: selection unit 120: error processing unit
130: distribution unit 140: storage unit
150: error correction unit 151: syndrome generator
152: error detection unit 153: error position determination unit
154: correction unit 200: controller
210: error correction circuit

Claims (14)

반도체 메모리 장치를 포함하고,
상기 반도체 메모리 장치는,
모드 신호에 따라 제 1 라이트 데이터 코드 및 제 1 라이트 보정 코드 또는 제 1 리드 데이터 코드 및 제 1 리드 보정 코드를 각각 입력 데이터 코드 및 입력 보정 코드로서 출력하는 선택부;
상기 입력 보정 코드를 디코딩하고, 디코딩 결과에 따라 상기 입력 데이터 코드의 에러를 보정하여 출력 데이터 코드를 생성하고, 상기 출력 데이터 코드를 인코딩하여 출력 보정 코드를 생성하는 에러 처리부;
상기 모드 신호에 따라 상기 출력 데이터 코드 및 상기 출력 보정 코드를 제 2 라이트 데이터 코드 및 제 2 라이트 보정 코드 또는 제 2 리드 데이터 코드 및 제 2 리드 보정 코드로서 출력하는 분배부; 및
상기 모드 신호에 따라 상기 제 2 라이트 데이터 코드 및 상기 제 2 라이트 보정 코드를 내부에 저장하거나, 상기 내부에 저장된 값을 상기 제 1 리드 데이터 코드 및 상기 제 1 리드 보정 코드로서 출력하는 저장부를 포함하는 반도체 시스템.
A semiconductor memory device,
The semiconductor memory device,
A selection unit for outputting the first write data code and the first write correction code or the first read data code and the first read correction code as the input data code and the input correction code, respectively, according to the mode signal;
An error processor to decode the input correction code, correct an error of the input data code according to a decoding result, generate an output data code, and generate an output correction code by encoding the output data code;
A distribution unit outputting the output data code and the output correction code as a second write data code and a second write correction code or a second read data code and a second read correction code according to the mode signal; And
A storage unit configured to store the second write data code and the second write correction code therein according to the mode signal, or to output the stored value as the first read data code and the first read correction code. Semiconductor system.
제 1 항에 있어서,
상기 반도체 메모리 장치를 제어하기 위한 컨트롤러; 및
상기 컨트롤러 및 상기 반도체 메모리 간 통신을 위한 버스를 더 포함하는 반도체 시스템.
The method of claim 1,
A controller for controlling the semiconductor memory device; And
And a bus for communication between the controller and the semiconductor memory.
제 2 항에 있어서,
상기 컨트롤러는 상기 제 1 라이트 데이터 코드를 인코딩하여 상기 제 1 라이트 보정 코드를 생성하고 상기 버스로 출력하는 에러 보정 회로를 더 포함하고,
상기 반도체 메모리 장치는 상기 버스를 통해 상기 제 1 라이트 데이터 코드 및 상기 제 1 라이트 보정 코드를 수신하는 반도체 시스템.
The method of claim 2,
The controller further comprises an error correction circuit for encoding the first write data code to generate the first write correction code and output the output to the bus;
And the semiconductor memory device receives the first write data code and the first write correction code through the bus.
제 2 항에 있어서,
상기 반도체 메모리 장치는 상기 제 2 리드 데이터 코드 및 상기 제 2 리드 보정 코드를 상기 버스로 출력하고,
상기 컨트롤러는 상기 버스를 통해 상기 제 2 리드 데이터 코드 및 상기 제 2 리드 보정 코드를 수신하고, 상기 제 2 리드 보정 코드를 디코딩하며, 디코딩 결과에 따라 상기 제 2 리드 데이터 코드의 에러를 보정하는 에러 보정 회로를 더 포함하는 반도체 시스템.
The method of claim 2,
The semiconductor memory device outputs the second read data code and the second read correction code to the bus,
The controller receives the second read data code and the second read correction code through the bus, decodes the second read correction code, and corrects an error of the second read data code according to a decoding result. A semiconductor system further comprising a correction circuit.
제 1 항에 있어서,
상기 모드 신호는 라이트 모드 또는 리드 모드를 나타내고,
상기 모드 신호가 상기 라이트 모드를 나타내는 경우,
상기 선택부는 상기 제 1 라이트 데이터 코드 및 상기 제 1 라이트 보정 코드를 각각 상기 입력 데이터 코드 및 상기 입력 보정 코드로서 출력하고,
상기 분배부는 상기 출력 데이터 코드 및 상기 출력 보정 코드를 상기 제 2 라이트 데이터 코드 및 상기 제 2 라이트 보정 코드로서 출력하는 반도체 시스템.
The method of claim 1,
The mode signal indicates a write mode or a read mode,
If the mode signal indicates the write mode,
The selecting unit outputs the first write data code and the first write correction code as the input data code and the input correction code, respectively,
And the distribution unit outputs the output data code and the output correction code as the second write data code and the second write correction code.
제 1 항에 있어서,
상기 모드 신호는 라이트 모드 또는 리드 모드를 나타내고,
상기 모드 신호가 상기 리드 모드를 나타내는 경우,
상기 선택부는 상기 제 1 리드 데이터 코드 및 상기 제 1 리드 보정 코드를 각각 상기 입력 데이터 코드 및 상기 입력 보정 코드로서 출력하고,
상기 분배부는 상기 출력 데이터 코드 및 상기 출력 보정 코드를 상기 제 2 리드 데이터 코드 및 상기 제 2 리드 보정 코드로서 출력하는 반도체 시스템.
The method of claim 1,
The mode signal indicates a write mode or a read mode,
When the mode signal indicates the read mode,
The selecting unit outputs the first read data code and the first read correction code as the input data code and the input correction code, respectively,
And the distribution unit outputs the output data code and the output correction code as the second read data code and the second read correction code.
반도체 메모리 장치를 포함하고,
상기 반도체 메모리 장치는,
모드 신호에 따라 제 1 라이트 데이터 코드 및 제 1 라이트 보정 코드 또는 제 1 리드 데이터 코드 및 제 1 리드 보정 코드를 각각 입력 데이터 코드 및 입력 보정 코드로서 출력하는 선택부;
상기 입력 보정 코드를 디코딩하고, 디코딩 결과에 따라 상기 입력 데이터 코드의 에러를 보정하여 출력 데이터 코드를 생성하는 에러 보정부;
상기 모드 신호에 따라 상기 출력 데이터 코드 및 상기 입력 보정 코드를 제 2 라이트 데이터 코드 및 제 2 라이트 보정 코드 또는 제 2 리드 데이터 코드 및 제 2 리드 보정 코드로서 출력하는 분배부; 및
상기 모드 신호에 따라 상기 제 2 라이트 데이터 코드 및 상기 제 2 라이트 보정 코드를 내부에 저장하거나, 상기 내부에 저장된 값을 상기 제 1 리드 데이터 코드 및 상기 제 1 리드 보정 코드로서 출력하는 저장부를 포함하는 반도체 시스템.
A semiconductor memory device,
The semiconductor memory device,
A selection unit for outputting the first write data code and the first write correction code or the first read data code and the first read correction code as the input data code and the input correction code, respectively, according to the mode signal;
An error correction unit for decoding the input correction code and correcting an error of the input data code according to a decoding result to generate an output data code;
A distribution unit outputting the output data code and the input correction code as a second write data code and a second write correction code or a second read data code and a second read correction code according to the mode signal; And
A storage unit configured to store the second write data code and the second write correction code therein according to the mode signal, or to output the stored value as the first read data code and the first read correction code. Semiconductor system.
제 7 항에 있어서,
상기 반도체 메모리 장치를 제어하기 위한 컨트롤러; 및
상기 컨트롤러 및 상기 반도체 메모리 간 통신을 위한 버스를 더 포함하는 반도체 시스템.
The method of claim 7, wherein
A controller for controlling the semiconductor memory device; And
And a bus for communication between the controller and the semiconductor memory.
제 8 항에 있어서,
상기 컨트롤러는 상기 제 1 라이트 데이터 코드를 인코딩하여 상기 제 1 라이트 보정 코드를 생성하고 상기 버스로 출력하는 컨트롤러 측 에러 처리 회로를 더 포함하고,
상기 반도체 메모리 장치는 상기 버스를 통해 상기 제 1 라이트 데이터 코드 및 상기 제 1 라이트 보정 코드를 수신하는 반도체 시스템.
The method of claim 8,
The controller further comprises a controller side error processing circuit that encodes the first write data code to generate the first write correction code and output to the bus;
And the semiconductor memory device receives the first write data code and the first write correction code through the bus.
제 8 항에 있어서,
상기 반도체 메모리 장치는 상기 제 2 리드 데이터 코드 및 상기 제 2 리드 보정 코드를 상기 버스로 출력하고,
상기 컨트롤러는 상기 버스를 통해 상기 제 2 리드 데이터 코드 및 상기 제 2 리드 보정 코드를 수신하고, 상기 제 2 리드 보정 코드를 디코딩하며, 디코딩 결과에 따라 상기 제 2 리드 데이터 코드의 에러를 보정하는 컨트롤러 측 에러 처리 회로를 더 포함하는 반도체 시스템.
The method of claim 8,
The semiconductor memory device outputs the second read data code and the second read correction code to the bus,
The controller receives the second read data code and the second read correction code through the bus, decodes the second read correction code, and corrects an error of the second read data code according to a decoding result. And a side error processing circuit.
제 7 항에 있어서,
상기 모드 신호는 라이트 모드 또는 리드 모드를 나타내고,
상기 모드 신호가 상기 라이트 모드를 나타내는 경우,
상기 선택부는 상기 제 1 라이트 데이터 코드 및 상기 제 1 라이트 보정 코드를 각각 상기 입력 데이터 코드 및 상기 입력 보정 코드로서 출력하고,
상기 분배부는 상기 출력 데이터 코드 및 상기 출력 보정 코드를 상기 제 2 라이트 데이터 코드 및 상기 제 2 라이트 보정 코드로서 출력하는 반도체 시스템.
The method of claim 7, wherein
The mode signal indicates a write mode or a read mode,
If the mode signal indicates the write mode,
The selecting unit outputs the first write data code and the first write correction code as the input data code and the input correction code, respectively,
And the distribution unit outputs the output data code and the output correction code as the second write data code and the second write correction code.
제 7 항에 있어서,
상기 모드 신호는 라이트 모드 또는 리드 모드를 나타내고,
상기 모드 신호가 상기 리드 모드를 나타내는 경우,
상기 선택부는 상기 제 1 리드 데이터 코드 및 상기 제 1 리드 보정 코드를 각각 상기 입력 데이터 코드 및 상기 입력 보정 코드로서 출력하고,
상기 분배부는 상기 출력 데이터 코드 및 상기 출력 보정 코드를 상기 제 2 리드 데이터 코드 및 상기 제 2 리드 보정 코드로서 출력하는 반도체 시스템.
The method of claim 7, wherein
The mode signal indicates a write mode or a read mode,
When the mode signal indicates the read mode,
The selecting unit outputs the first read data code and the first read correction code as the input data code and the input correction code, respectively,
And the distribution unit outputs the output data code and the output correction code as the second read data code and the second read correction code.
제 7 항에 있어서,
상기 에러 보정부는,
상기 입력 데이터 코드 및 상기 입력 보정 코드를 수신하여 신드롬을 생성하는 신드롬 생성부;
상기 신드롬을 이용하여 상기 입력 데이터 코드의 에러 발생 여부를 판단하고, 인에이블 신호로서 출력하는 에러 감지부;
상기 인에이블 신호에 응답하여, 상기 신드롬을 이용하여 상기 입력 데이터 코드에서 에러가 발생한 위치를 나타내는 에러 위치 신호를 생성하는 에러 위치 판단부;
상기 인에이블 신호에 응답하여, 상기 에러 위치 신호를 이용하여 상기 입력 데이터 코드의 에러를 보정하는 보정부를 포함하는 반도체 시스템.
The method of claim 7, wherein
The error correction unit,
A syndrome generator for generating a syndrome by receiving the input data code and the input correction code;
An error detector which determines whether an error occurs in the input data code using the syndrome and outputs the signal as an enable signal;
An error position determining unit for generating an error position signal indicating a position where an error occurs in the input data code using the syndrome in response to the enable signal;
And a corrector configured to correct an error of the input data code using the error position signal in response to the enable signal.
제 13 항에 있어서,
상기 에러 위치 판단부 및 상기 보정부는 상기 인에이블 신호가 비활성화되면 비활성화되는 반도체 시스템.
The method of claim 13,
And the error position determiner and the corrector are deactivated when the enable signal is deactivated.
KR1020110044634A 2011-05-12 2011-05-12 Semiconductor System KR101788737B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110044634A KR101788737B1 (en) 2011-05-12 2011-05-12 Semiconductor System

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110044634A KR101788737B1 (en) 2011-05-12 2011-05-12 Semiconductor System

Publications (2)

Publication Number Publication Date
KR20120126654A true KR20120126654A (en) 2012-11-21
KR101788737B1 KR101788737B1 (en) 2017-10-24

Family

ID=47511941

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110044634A KR101788737B1 (en) 2011-05-12 2011-05-12 Semiconductor System

Country Status (1)

Country Link
KR (1) KR101788737B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180000789A (en) * 2016-06-23 2018-01-04 에스케이하이닉스 주식회사 Semiconductor device

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4710934A (en) 1985-11-08 1987-12-01 Texas Instruments Incorporated Random access memory with error correction capability
KR100202654B1 (en) 1996-03-29 1999-06-15 구본준 Memory cell device apparatus
FR2810152A1 (en) 2000-06-13 2001-12-14 St Microelectronics Sa EEPROM for securing electronic devices such as chip cards has elements for detection and correction of memory errors within the secure non-erasable memory area
US6804799B2 (en) 2001-06-26 2004-10-12 Advanced Micro Devices, Inc. Using type bits to track storage of ECC and predecode bits in a level two cache
US7392456B2 (en) * 2004-11-23 2008-06-24 Mosys, Inc. Predictive error correction code generation facilitating high-speed byte-write in a semiconductor memory

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180000789A (en) * 2016-06-23 2018-01-04 에스케이하이닉스 주식회사 Semiconductor device

Also Published As

Publication number Publication date
KR101788737B1 (en) 2017-10-24

Similar Documents

Publication Publication Date Title
JP2008299855A (en) Memory system provided with multichannel error correction coder using embedded memory and method thereof
US8458566B2 (en) Method for performing copy back operations and flash storage device
KR101466694B1 (en) ECC circuit, and storage device having the same, and method there-of
US7890818B2 (en) Read level control apparatuses and methods
KR102393427B1 (en) Semiconductor device and semiconductor system
KR102599033B1 (en) Low-power double error correction—triple error detection (DEB-TED) decoder
US8402352B2 (en) Multi-bit error correction method and apparatus based on a BCH code and memory system
EP2297641B1 (en) Efficient in-band reliability with separate cyclic redundancy code frames
US20140019833A1 (en) Memory system and method
JP2009048640A (en) Memory system comprising error correction decoder architecture capable of reducing latency and increasing throughput
US9811417B2 (en) Semiconductor memory device
US9692455B2 (en) Multi channel memory with flexible code-length ECC
US10404283B2 (en) Method and associated decoding circuit for decoding an error correction code
US8615690B2 (en) Controller of memory device and method for operating the same
WO2013014974A1 (en) Memory controller, semiconductor storage device, and decoding method
KR101314232B1 (en) Coding and decoding method and codec of error correction code
US9003269B2 (en) Memory controller and semiconductor storage device
AU2022211512A1 (en) Data transmission method and apparatus, and device, system and computer-readable storage medium
KR102420641B1 (en) Error correction method and semiconductor device using the same
US9239755B2 (en) Semiconductor device and semiconductor system including the same
KR101788737B1 (en) Semiconductor System
US11043964B2 (en) Memory system, packet protection circuit, and CRC calculation method
US20090249138A1 (en) Semiconductor memory apparatus for reducing bus traffic between NAND flash memory device and controller
US9916240B2 (en) Interleaver and de-interleaver for correcting a burst bit error
JP2003273841A (en) Transmission device provided with error correction function

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant