KR102342315B1 - Semiconductor apparatus and semiconductor system - Google Patents
Semiconductor apparatus and semiconductor system Download PDFInfo
- Publication number
- KR102342315B1 KR102342315B1 KR1020170107232A KR20170107232A KR102342315B1 KR 102342315 B1 KR102342315 B1 KR 102342315B1 KR 1020170107232 A KR1020170107232 A KR 1020170107232A KR 20170107232 A KR20170107232 A KR 20170107232A KR 102342315 B1 KR102342315 B1 KR 102342315B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory cells
- memory cell
- column address
- signal lines
- main
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/80—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
- G11C29/808—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a flexible replacement scheme
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
Abstract
반도체 장치는 하나 이상의 메인 메모리 셀들 및 하나 이상의 스페어 메모리 셀들; 및 하나 이상의 결함 메모리 셀들의 결함 정보에 근거하여 상기 메인 메모리 셀들에 각각 대응하는 쉬프트 값들을 생성하고, 하나 이상의 제1 비트들을 상기 메인 메모리 셀들로부터 상기 쉬프트 값들만큼 스페어 메모리 셀 방향으로 각각 쉬프트된 메모리 셀들에 라이트하도록 구성된 제어부를 포함한다.A semiconductor device includes one or more main memory cells and one or more spare memory cells; and generating shift values respectively corresponding to the main memory cells based on defect information of one or more defective memory cells, and shifting one or more first bits from the main memory cells in the direction of the spare memory cell by the shift values. and a control unit configured to write to the cells.
Description
본 발명은 반도체 장치에 관한 것으로, 더욱 상세하게는 데이터를 저장할 수 있는 반도체 메모리 장치에 관한 것이다.The present invention relates to a semiconductor device, and more particularly, to a semiconductor memory device capable of storing data.
반도체 장치, 그 중에서도 반도체 메모리 장치는 데이터를 저장하는 용도로 사용될 수 있다. 반도체 메모리 장치는 크게 불휘발성 메모리 장치와 휘발성 메모리 장치로 구분할 수 있다.A semiconductor device, particularly a semiconductor memory device, may be used to store data. A semiconductor memory device may be largely divided into a nonvolatile memory device and a volatile memory device.
불휘발성 메모리 장치는 전원이 인가되지 않더라도 저장된 데이터를 유지할 수 있다. 불휘발성 메모리 장치는 낸드 플래시(NAND Flash) 또는 노어 플래시(NOR Flash)와 같은 플래시 메모리 장치, FeRAM(Ferroelectrics Random Access Memory), PCRAM(Phase-Change Random Access Memory), MRAM(Magnetic Random Access Memory) 또는 ReRAM(Resistive Random Access Memory) 등을 포함할 수 있다.The nonvolatile memory device may retain stored data even when power is not applied. Nonvolatile memory devices include flash memory devices such as NAND Flash or NOR Flash, Ferroelectrics Random Access Memory (FeRAM), Phase-Change Random Access Memory (PCRAM), Magnetic Random Access Memory (MRAM), or It may include resistive random access memory (ReRAM) and the like.
휘발성 메모리 장치는 전원이 인가되지 않는 경우 저장된 데이터를 유지하지 못하고 소실할 수 있다. 휘발성 메모리 장치는 SRAM(Static Random Access Memory) 또는 DRAM(Dynamic Random Access Memory) 등을 포함할 수 있다.The volatile memory device may not retain stored data and may lose it when power is not applied. The volatile memory device may include static random access memory (SRAM) or dynamic random access memory (DRAM).
본 발명의 실시 예는 결함 셀에 대비한 스페어 셀을 효율적으로 활용함으로써 극대화된 메모리 용량 및 향상된 양품률을 제공하는 반도체 장치 및 반도체 시스템을 제공하는 데 있다.SUMMARY OF THE INVENTION An aspect of the present invention is to provide a semiconductor device and a semiconductor system that provide a maximized memory capacity and an improved yield rate by efficiently utilizing a spare cell in preparation for a defective cell.
본 발명의 실시 예에 따른 반도체 장치는 하나 이상의 메인 메모리 셀들 및 하나 이상의 스페어 메모리 셀들; 및 하나 이상의 결함 메모리 셀들의 결함 정보에 근거하여 상기 메인 메모리 셀들에 각각 대응하는 쉬프트 값들을 생성하고, 하나 이상의 제1 비트들을 상기 메인 메모리 셀들로부터 상기 쉬프트 값들만큼 스페어 메모리 셀 방향으로 각각 쉬프트된 메모리 셀들에 라이트하도록 구성된 제어부를 포함할 수 있다.A semiconductor device according to an embodiment of the present invention includes one or more main memory cells and one or more spare memory cells; and generating shift values respectively corresponding to the main memory cells based on defect information of one or more defective memory cells, and shifting one or more first bits from the main memory cells in the direction of the spare memory cell by the shift values. It may include a control unit configured to write to the cells.
본 발명의 실시 예에 따른 반도체 시스템은 하나 이상의 메인 신호 라인들 및 하나 이상의 스페어 신호 라인들; 하나 이상의 결함 신호 라인들의 결함 정보에 근거하여 상기 메인 신호 라인들에 각각 대응하는 쉬프트 값들을 생성하고, 하나 이상의 제1 신호들을 상기 메인 신호 라인들로부터 상기 쉬프트 값들만큼 스페어 신호 라인 방향으로 각각 쉬프트된 신호 라인들로 전송하도록 구성된 제1 반도체 장치; 및 상기 쉬프트 값들을 동일하게 생성하고 상기 쉬프트 값들에 근거하여 상기 제1 신호들을 상기 쉬프트된 신호 라인들로부터 수신하도록 구성된 제2 반도체 장치를 포함할 수 있다.A semiconductor system according to an embodiment of the present invention includes one or more main signal lines and one or more spare signal lines; Shift values corresponding to each of the main signal lines are generated based on defect information of one or more defective signal lines, and one or more first signals are respectively shifted from the main signal lines in the direction of the spare signal line by the shift values. a first semiconductor device configured to transmit to the signal lines; and a second semiconductor device configured to equally generate the shift values and receive the first signals from the shifted signal lines based on the shift values.
본 발명의 실시 예에 따른 반도체 장치 및 반도체 시스템은 결함 셀에 대비한 스페어 셀을 효율적으로 활용함으로써 극대화된 메모리 용량 및 향상된 양품률을 제공할 수 있다.A semiconductor device and a semiconductor system according to an embodiment of the present invention may provide a maximized memory capacity and an improved yield rate by efficiently utilizing a spare cell in preparation for a defective cell.
도1은 본 발명의 실시 예에 따른 반도체 장치를 간략하게 도시한 블록도,
도2는 메인 메모리 셀들에 대해 생성된 쉬프트 값들을 예시적으로 도시하는 도면,
도3은 도1의 쉬프트 값 생성부의 동작 방법을 구체적으로 도시한 도면,
도4는 본 발명의 실시 예에 따른 반도체 장치를 간략하게 도시한 블록도,
도5는 도4의 벡터 생성부가 인코딩 벡터들을 생성하는 방법을 예시적으로 설명하기 위한 도면,
도6은 도4의 인코더가 제1 데이터에 근거하여 제2 데이터를 생성하는 방법을 예시적으로 설명하기 위한 도면,
도7은 도4의 벡터 생성부가 디코딩 벡터들을 생성하는 방법을 예시적으로 설명하기 위한 도면,
도8은 도4의 디코더가 제2 데이터에 근거하여 제1 데이터를 복구하는 방법을 예시적으로 설명하기 위한 도면,
도9는 본 발명의 실시 예에 따른 쉬프트 값 생성부를 도시한 블록도,
도10은 본 발명의 실시 예에 따른 벡터 생성부를 도시한 블록도,
도11은 본 발명의 실시 예에 따른 반도체 시스템을 예시적으로 도시하는 블록도이다.1 is a block diagram schematically illustrating a semiconductor device according to an embodiment of the present invention;
2 is a diagram exemplarily showing shift values generated for main memory cells;
3 is a diagram specifically illustrating an operation method of the shift value generator of FIG. 1;
4 is a block diagram schematically illustrating a semiconductor device according to an embodiment of the present invention;
FIG. 5 is a diagram for exemplarily explaining a method of the vector generator of FIG. 4 generating encoding vectors; FIG.
FIG. 6 is a diagram for exemplarily explaining a method in which the encoder of FIG. 4 generates second data based on the first data;
7 is a diagram for illustratively explaining a method for the vector generator of FIG. 4 to generate decoded vectors;
FIG. 8 is a diagram for exemplarily explaining a method in which the decoder of FIG. 4 recovers first data based on second data;
9 is a block diagram illustrating a shift value generator according to an embodiment of the present invention;
10 is a block diagram illustrating a vector generator according to an embodiment of the present invention;
11 is a block diagram exemplarily illustrating a semiconductor system according to an embodiment of the present invention.
이하, 도면들을 참조하여 본 발명의 실시 예에 대해 상세히 설명하기로 한다.Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings.
도1은 본 발명의 실시 예에 따른 반도체 장치(100)를 간략하게 도시한 블록도이다.1 is a block diagram schematically illustrating a
도1을 참조하면, 반도체 장치(100)는 메모리 영역(110) 및 제어부(120)를 포함할 수 있다.Referring to FIG. 1 , a
메모리 영역(110)은 제어부(120)의 제어에 따라 외부 장치로부터 전송된 데이터(DATA)를 저장할 수 있다. 메모리 영역(110)은 데이터(DATA)를 저장하기 위한 복수의 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)을 포함할 수 있다. 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)은 단일의 로우 어드레스에 대응하고 복수의 연속적인 컬럼 어드레스들에 각각 대응할 수 있다. 컬럼 어드레스들은, 예를 들어, 스페어 메모리 셀 방향으로 순차적으로 할당될 수 있다. 즉, 메인 메모리 셀들(MC0~MCm) 중에서 제일 앞선 메인 메모리 셀(MC0)의 컬럼 어드레스가 제일 앞서고 제일 마지막의 스페어 메모리 셀(SCs)의 컬럼 어드레스가 제일 뒤설 수 있다. 그러나, 이러한 컬럼 어드레스들의 순서는 메모리 셀들에게 상대적인 위치들을 할당하여 아래에서 발명을 용이하게 설명하기 위해 가정한 것이다. 실시 예에 따라 컬럼 어드레스들은 이와 다른 순서에 따라 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)에 할당될 수 있다.The
메인 메모리 셀들(MC0~MCm)은 외부 장치가 액세스 가능한 영역일 수 있다. 즉, 외부 장치는 메인 메모리 셀들(MC0~MCm)의 로우 어드레스 및 컬럼 어드레스를 지정하여 라이트 동작 및 리드 동작을 수행하도록 반도체 장치(100)에게 지시할 수 있다.The main memory cells MC0 to MCm may be regions accessible to an external device. That is, the external device may instruct the
스페어 메모리 셀들(SC0~SCs)은 메인 메모리 셀들(MC0~MCm)에 포함된 하나 이상의 결함 메모리 셀들로 인해 부족해진 메모리 용량을 보충하기 위해 사용될 수 있다. 즉, 메인 메모리 셀들(MC0~MCm)이 결함 메모리 셀들을 포함할 때, 반도체 장치(100)는 스페어 메모리 셀들(SC0~SCs)을 사용하여 데이터를 저장할 수 있다. 스페어 메모리 셀들(SC0~SCs)은 메인 메모리 셀들(MC0~MCm)의 일측, 즉, 스페어 메모리 셀 방향에 정렬될 수 있다. 한편 이하에서, 스페어 메모리 셀 방향의 반대 방향은 메인 메모리 셀 방향으로 언급될 수 있다.The spare memory cells SC0 to SCs may be used to compensate for memory capacity insufficient due to one or more defective memory cells included in the main memory cells MC0 to MCm. That is, when the main memory cells MC0 to MCm include defective memory cells, the
도1은 예시적으로 하나의 로우 어드레스에 대응하는 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)을 도시하지만, 메모리 영역(110)은 복수의 로우 어드레스들에 대응하는 메인 메모리 셀들 및 스페어 메모리 셀들을 더 포함할 수 있다.1 exemplarily illustrates main memory cells MC0 to MCm and spare memory cells SC0 to SCs corresponding to one row address, the
제어부(120)는 외부 장치로부터 메인 메모리 셀들(MC0~MCm)의 로우 어드레스(RA) 및 컬럼 어드레스(CA)에 대해 데이터(DATA)의 라이트 요청을 수신하고, 라이트 동작을 수행할 수 있다. 이때, 제어부(120)는 로우 어드레스(RA)의 결함 정보(FINF), 즉, 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)에 포함된 결함 메모리 셀들의 위치 정보에 근거하여, 데이터(DATA)에 포함된 하나 이상의 비트들을 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs) 중 결함 메모리 셀들을 제외한 정상 메모리 셀들에만 저장할 수 있다.The
구체적으로, 제어부(120)는 결함 정보(FINF)에 근거하여 메인 메모리 셀들(MC0~MCm)에 각각 대응하는 쉬프트 값들을 생성할 수 있다. 그리고 제어부(120)는, 외부 장치가 소정 메인 메모리 셀에 라이트하도록 지시한 데이터(DATA)의 비트를 소정 메인 메모리 셀에 대응하는 쉬프트 값만큼 소정 메인 메모리 셀로부터 스페어 메모리 셀 방향으로 쉬프트된 메모리 셀에 저장할 수 있다. 도2를 참조하여 자세히 살펴볼 바와 같이, 메인 메모리 셀들(MC0~MCm)에 대응하는 쉬프트 값들은, 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs) 중 정상 메모리 셀들이 데이터(DATA)의 비트들을 저장하도록 생성될 수 있다.Specifically, the
한편, 외부 장치는, 데이터(DATA)가 메인 메모리 셀들(MC0~MCm)에 저장된 것으로 인식하고 메인 메모리 셀들(MC0~MCm)로부터 데이터(DATA)를 리드하도록 제어부(120)에게 지시할 수 있다. 제어부(120)는 외부 장치로부터 메인 메모리 셀들(MC0~MCm)의 로우 어드레스(RA) 및 컬럼 어드레스들(CA)에 대해 데이터(DATA)의 리드 요청을 수신하고, 리드 동작을 수행할 수 있다. 이때, 제어부(120)는 로우 어드레스(RA)의 결함 정보(FINF)에 근거하여, 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs) 중 정상 메모리 셀들에 저장된 데이터(DATA)의 비트들을 리드할 수 있다. 즉, 제어부(120)는 라이트 동작을 수행할 때 결함 정보(FINF)를 통해 결함 메모리 셀들을 회피하여 정상 메모리 셀들에 데이터(DATA)를 저장하였으므로, 리드 동작을 수행할 때도 결함 정보(FINF)를 통해 결함 메모리 셀들을 회피하여 정상 메모리 셀들로부터 데이터(DATA)를 리드할 수 있다. 이를 위해, 제어부(120)는 라이트 동작을 위해 생성했던 메인 메모리 셀들(MC0~MCm)에 대응하는 쉬프트 값들을 결함 정보(FINF)에 근거하여 동일하게 생성하고, 쉬프트 값들에 근거하여 데이터(DATA)를 리드할 수 있다.Meanwhile, the external device may recognize that the data DATA is stored in the main memory cells MC0 to MCm and instruct the
제어부(120)는 결함 정보 관리부(121) 및 쉬프트 값 생성부(122)를 포함할 수 있다.The
결함 정보 관리부(121)는 메모리 영역(110)의 결함 정보(FINF)를 저장할 수 있다. 결함 정보 관리부(121)는 메모리 영역(110)의 복수의 로우 어드레스들에 각각 대응하는 결함 정보(FINF)를 저장할 수 있다. 결함 정보 관리부(121)는 라이트 동작 또는 리드 동작이 수행될 때, 외부 장치로부터 제공된 로우 어드레스(RA)에 응답하여, 로우 어드레스(RA)에 대응하는 결함 정보(FINF)를 쉬프트 값 생성부(122)로 제공할 수 있다. 로우 어드레스(RA)에 대응하는 결함 정보(FINF)는 로우 어드레스(RA)의 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs) 중 결함 메모리 셀들의 위치 정보, 예를 들어, 결함 메모리 셀들의 컬럼 어드레스들을 포함할 수 있다.The
쉬프트 값 생성부(122)는 결함 정보 관리부(121)로부터 전송된 결함 정보(FINF) 및 외부 장치로부터 전송된 컬럼 어드레스(CA)에 근거하여, 라이트 동작이 수행될 메인 메모리 셀들(MC0~MCm)에 각각 대응하는 쉬프트 값들을 생성할 수 있다. 쉬프트 값 생성부(122)는, 외부 장치가 데이터(DATA)를 라이트하도록 지시한 컬럼 어드레스(CA)와 결함 정보(FINF)에 포함된 결함 메모리 셀들의 컬럼 어드레스들을 비교하여, 데이터(DATA)의 비트들이 결함 메모리 셀들을 건너 뛰어 정상 메모리 셀들에 저장되도록 쉬프트 값들을 생성할 수 있다. 쉬프트 값 생성부(122)의 구체적인 동작 방법은 도2 및 도3을 참조하여 상세하게 설명될 것이다. The shift
한편, 제어부(220)는 외부 장치로부터 리드 동작 또는 라이트 동작이 수행되는지 여부를 나타내는 리드/라이트 신호(RW)를 더 수신할 수 있다. Meanwhile, the
한편, 반도체 장치(100)는 불휘발성 메모리 장치 또는 휘발성 메모리 장치를 포함할 수 있다. 불휘발성 메모리 장치는 낸드 플래시(NAND Flash) 또는 노어 플래시(NOR Flash)와 같은 플래시 메모리 장치, FeRAM(Ferroelectrics Random Access Memory), PCRAM(Phase-Change Random Access Memory), MRAM(Magnetic Random Access Memory) 또는 ReRAM(Resistive Random Access Memory) 등을 포함할 수 있다. 휘발성 메모리 장치는 SRAM(Static Random Access Memory) 및 DRAM(Dynamic Random Access Memory) 등을 포함할 수 있다. 그러나, 본 발명의 반도체 장치(100)는 이에 제한되지 않고, 기타 타입의 반도체 메모리 장치들을 포함할 수 있다.Meanwhile, the
도2는 메인 메모리 셀들(C0~C5)에 대해 생성된 쉬프트 값들을 예시적으로 도시하는 도면이다. 도2는 메인 메모리 셀들(C0~C5)에 이어서 스페어 메모리 셀 방향으로 위치하는 메모리 셀들(C6~C7)을 더 도시한다. 메모리 셀들(C6~C7)은 스페어 메모리 셀들이거나 또는 메인 메모리 셀들일 수 있다. 메모리 셀들(C0~C7)은 동일한 로우 어드레스(RA)에 대응하고, 스페어 메모리 셀 방향으로 컬럼 어드레스들(CA0~CA7)을 순차적으로 할당받을 수 있다. 이때, 메모리 셀들(C0~C7)은 결함 메모리 셀들(C1, C4)과 정상 메모리 셀들(C0, C2, C3, C5~C7)을 포함할 수 있다.2 is a diagram exemplarily illustrating shift values generated with respect to the main memory cells C0 to C5. FIG. 2 further shows memory cells C6 to C7 positioned in the spare memory cell direction after the main memory cells C0 to C5. The memory cells C6 to C7 may be spare memory cells or main memory cells. The memory cells C0 to C7 may correspond to the same row address RA, and may be sequentially assigned column addresses CA0 to CA7 in the direction of the spare memory cell. In this case, the memory cells C0 to C7 may include defective memory cells C1 and C4 and normal memory cells C0 , C2 , C3 , C5 to C7 .
이제 도2를 참조하면, 정상 메모리 셀(C0)은 라이트 가능하므로, 정상 메모리 셀(C0)에 대응하는 쉬프트 값(SHV)은 "0"으로 생성될 수 있다. 따라서, 외부 장치가 정상 메모리 셀(C0)에 저장하도록 지시한 데이터는 쉬프트 값(SHV) "0"에 근거하여 정상 메모리 셀(C0)에 그대로 저장될 수 있다. Referring now to FIG. 2 , since the normal memory cell C0 is writeable, a shift value SHV corresponding to the normal memory cell C0 may be generated as “0”. Accordingly, data instructed by the external device to be stored in the normal memory cell C0 may be directly stored in the normal memory cell C0 based on the shift value SHV of “0”.
결함 메모리 셀(C1)에 대응하는 쉬프트 값(SHV)은, 결함 메모리 셀(C1)보다 "1"만큼 뒤선 정상 메모리 셀(C2)이 라이트 가능하므로, "1"로 생성될 수 있다. 따라서, 외부 장치가 결함 메모리 셀(C1)에 저장하도록 지시한 데이터는 쉬프트 값(SHV) "1"에 근거하여 정상 메모리 셀(C2)에 저장될 수 있다.The shift value SHV corresponding to the defective memory cell C1 may be “1” because the normal memory cell C2 that follows the defective memory cell C1 by “1” is writeable. Accordingly, data instructed by the external device to be stored in the defective memory cell C1 may be stored in the normal memory cell C2 based on the shift value SHV of “1”.
정상 메모리 셀(C2)에 대응하는 쉬프트 값(SHV)은, 정상 메모리 셀(C2)보다 "1"만큼 뒤선 정상 메모리 셀(C3)이 라이트 가능하므로, "1"로 생성될 수 있다. 즉, 앞선 데이터가 일단 쉬프트되면 후속하는 데이터도 계속 쉬프트되어야 하므로, 외부 장치가 정상 메모리 셀(C2)에 저장하도록 지시한 데이터는 쉬프트 값(SHV) "1"에 근거하여 정상 메모리 셀(C3)에 저장될 수 있다.The shift value SHV corresponding to the normal memory cell C2 may be generated as “1” because the normal memory cell C3 that follows the normal memory cell C2 by “1” is writeable. That is, once the preceding data is shifted, subsequent data must also be shifted continuously, so the data instructed by the external device to be stored in the normal memory cell C2 is transmitted to the normal memory cell C3 based on the shift value SHV “1”. can be stored in
정상 메모리 셀(C3)에 대응하는 쉬프트 값(SHV)은, 정상 메모리 셀(C3)보다 "2"만큼 뒤선 정상 메모리 셀(C5)이 라이트 가능하므로, "2"로 생성될 수 있다. 즉, 외부 장치가 정상 메모리 셀(C3)에 저장하도록 지시한 데이터는 쉬프트 값(SHV) "2"에 근거하여 결함 메모리 셀(C4)을 건너 뛰고 정상 메모리 셀(C5)에 저장될 수 있다.The shift value SHV corresponding to the normal memory cell C3 may be generated as “2” because the normal memory cell C5 that follows the normal memory cell C3 by “2” is writeable. That is, data instructed by the external device to be stored in the normal memory cell C3 may be stored in the normal memory cell C5 by skipping the defective memory cell C4 based on the shift value SHV of “2”.
결함 메모리 셀(C4)에 대응하는 쉬프트 값(SHV)은, 결함 메모리 셀(C4)보다 "2"만큼 뒤선 정상 메모리 셀(C6)이 라이트 가능하므로, "2"로 생성될 수 있다. 따라서, 외부 장치가 결함 메모리 셀(C4)에 저장하도록 지시한 데이터는 쉬프트 값(SHV) "2"에 근거하여 정상 메모리 셀(C6)에 저장될 수 있다.The shift value SHV corresponding to the defective memory cell C4 may be “2” because the normal memory cell C6 that follows the defective memory cell C4 by “2” is writeable. Accordingly, data instructed by the external device to be stored in the defective memory cell C4 may be stored in the normal memory cell C6 based on the shift value SHV of “2”.
정상 메모리 셀(C5)에 대응하는 쉬프트 값(SHV)은, 정상 메모리 셀(C5)보다 "2"만큼 뒤선 정상 메모리 셀(C7)이 라이트 가능하므로, "2"로 생성될 수 있다. 따라서, 외부 장치가 정상 메모리 셀(C5)에 저장하도록 지시한 데이터는 쉬프트 값(SHV) "2"에 근거하여 정상 메모리 셀(C7)에 저장될 수 있다.The shift value SHV corresponding to the normal memory cell C5 may be generated as “2” because the normal memory cell C7 that follows the normal memory cell C5 by “2” is writeable. Accordingly, data instructed by the external device to be stored in the normal memory cell C5 may be stored in the normal memory cell C7 based on the shift value SHV of “2”.
정리하면, 소정 메인 메모리 셀에 대응하는 쉬프트 값(SHV)은, 외부 장치가 소정 메인 메모리 셀에 저장하도록 지시한 데이터가 소정 메인 메모리 셀로부터 실제로 저장되는 정상 메모리 셀까지 쉬프트되는 값일 수 있다. 따라서, 외부 장치가 소정 메인 메모리 셀에 저장하도록 지시한 데이터는 소정 메인 메모리 셀로부터 스페어 메모리 셀 방향으로 쉬프트 값(SHV)만큼 쉬프트된 정상 메모리 셀에 저장될 수 있다.In summary, the shift value SHV corresponding to the predetermined main memory cell may be a value in which data instructed by an external device to be stored in the predetermined main memory cell is shifted from the predetermined main memory cell to a normal memory cell where it is actually stored. Accordingly, data instructed by the external device to be stored in the predetermined main memory cell may be stored in the normal memory cell shifted by the shift value SHV from the predetermined main memory cell toward the spare memory cell.
도3은 도1의 쉬프트 값 생성부(122)의 동작 방법을 구체적으로 도시한 도면이다.FIG. 3 is a diagram specifically illustrating an operation method of the
도3을 참조하면, 쉬프트 값 생성부(122)는 도1의 결함 정보 관리부(121)로부터 로우 어드레스(RA)에 대응하는 결함 정보(FINF), 즉, 결함 메모리 셀들의 컬럼 어드레스들(FA0~FA(n-1))을 수신할 수 있다. 또한, 쉬프트 값 생성부(122)는, 외부 장치가 라이트 동작을 수행하도록 지시한 소정 메인 메모리 셀의 컬럼 어드레스(CA)를 수신할 수 있다.Referring to FIG. 3 , the
쉬프트 값 생성부(122)는 단계들(S10~S14)에서, 소정 메인 메모리 셀의 컬럼 어드레스(CA)를 결함 메모리 셀들의 컬럼 어드레스들(FA0~FA(n-1))에 근거한 참조 컬럼 어드레스들과 비교함으로써, 소정 메인 메모리 셀에 대응하는 쉬프트 값(SHV)을 생성할 수 있다. 라이트 동작이 둘 이상의 메인 메모리 셀들에 대해 수행되도록 지시되었을 때, 쉬프트 값 생성부(122)는 해당 메인 메모리 셀들 각각에 대해 쉬프트 값(SHV)을 생성하기 위해서 도3에 도시된 절차를 반복적으로 수행할 수 있다. 단계들(S10~S14)에서 결함 메모리 셀들의 컬럼 어드레스들(FA0~FA(n-1))은 첫번째 결함 메모리 셀의 컬럼 어드레스(FA0)부터 마지막 결함 메모리 셀의 컬럼 어드레스(FA(n-1))까지 스페어 메모리 셀 방향에 따라 순차적으로 적용될 수 있다.In steps S10 to S14 , the
우선, 단계(S10)에서, 쉬프트 값 생성부(122)는 메인 메모리 셀의 컬럼 어드레스(CA)가 첫번째 참조 컬럼 어드레스, 즉, 첫번째 결함 메모리 셀의 컬럼 어드레스(FA0)보다 앞서는지를 결정하고, 결정한 결과에 따라 쉬프트 값(SHV)을 생성할 수 있다. 구체적으로, 메인 메모리 셀의 컬럼 어드레스(CA)가 첫번째 결함 메모리 셀의 컬럼 어드레스(FA0)보다 앞설 때, 쉬프트 값 생성부(122)는 쉬프트 값(SHV)을 "0"으로 생성할 수 있다. 그러나, 메인 메모리 셀의 컬럼 어드레스(CA)가 첫번째 결함 메모리 셀의 컬럼 어드레스(FA0)보다 앞서지 않을 때, 즉, 메인 메모리 셀의 컬럼 어드레스(CA)가 첫번째 결함 메모리 셀의 컬럼 어드레스(FA0)와 같거나 뒤설 때, 절차는 단계(S11)로 이동할 수 있다.First, in step S10 , the
단계(S11)에서, 쉬프트 값 생성부(122)는 메인 메모리 셀의 컬럼 어드레스(CA)가 두번째 참조 컬럼 어드레스(FA1-1)보다 앞서는지를 결정하고, 결정한 결과에 따라 쉬프트 값(SHV)을 생성할 수 있다. 두번째 참조 컬럼 어드레스(FA1-1)는 두번째 결함 메모리 셀의 컬럼 어드레스(FA1)보다 "1"만큼 앞선 컬럼 어드레스일 수 있다. 구체적으로, 메인 메모리 셀의 컬럼 어드레스(CA)가 두번째 참조 컬럼 어드레스(FA1-1)보다 앞설 때, 쉬프트 값 생성부(122)는 쉬프트 값(SHV)을 "1"로 생성할 수 있다. 그러나, 메인 메모리 셀의 컬럼 어드레스(CA)가 두번째 참조 컬럼 어드레스(FA1-1)보다 앞서지 않을 때, 즉, 메인 메모리 셀의 컬럼 어드레스(CA)가 두번째 참조 컬럼 어드레스(FA1-1)와 같거나 뒤설 때, 절차는 그 다음 단계로 이동할 수 있다.In step S11 , the
이러한 절차는 마지막 결함 메모리 셀의 컬럼 어드레스(FA(n-1))까지 반복될 수 있다. 구체적으로, 중간의 어떤 단계(S12)에서, 쉬프트 값 생성부(122)는 메인 메모리 셀의 컬럼 어드레스(CA)가 "i"번째 참조 컬럼 어드레스(FA(i-1)-(i-1))보다 앞서는지를 결정하고, 결정한 결과에 따라 쉬프트 값(SHV)을 생성할 수 있다. "i"번째 참조 컬럼 어드레스(FA(i-1)-(i-1))는 "i"번째 결함 메모리 셀의 컬럼 어드레스(FA(i-1))보다 "i-1"만큼 앞선 컬럼 어드레스일 수 있다. 구체적으로, 메인 메모리 셀의 컬럼 어드레스(CA)가 "i"번째 참조 컬럼 어드레스(FA(i-1)-(i-1))보다 앞설 때, 쉬프트 값 생성부(122)는 쉬프트 값(SHV)을 "i-1"로 생성할 수 있다. 그러나, 메인 메모리 셀의 컬럼 어드레스(CA)가 "i"번째 참조 컬럼 어드레스(FA(i-1)-(i-1))보다 앞서지 않을 때, 즉, 메인 메모리 셀의 컬럼 어드레스(CA)가 "i"번째 참조 컬럼 어드레스(FA(i-1)-(i-1))와 같거나 뒤설 때, 절차는 그 다음 단계(S13)로 이동할 수 있다.This procedure may be repeated until the column address FA(n-1) of the last defective memory cell. Specifically, in a certain intermediate step ( S12 ), the
단계(S13)에서, 쉬프트 값 생성부(122)는 메인 메모리 셀의 컬럼 어드레스(CA)가 "i+1"번째 참조 컬럼 어드레스(FAi-i)보다 앞서는지를 결정하고, 결정한 결과에 따라 쉬프트 값(SHV)을 생성할 수 있다. "i+1"번째 참조 컬럼 어드레스(FAi-i)는 "i+1"번째 결함 메모리 셀의 컬럼 어드레스(FAi)보다 "i"만큼 앞선 컬럼 어드레스일 수 있다. 구체적으로, 메인 메모리 셀의 컬럼 어드레스(CA)가 "i+1"번째 참조 컬럼 어드레스(FAi-i)보다 앞설 때, 쉬프트 값 생성부(122)는 쉬프트 값(SHV)을 "i"로 생성할 수 있다. 그러나, 메인 메모리 셀의 컬럼 어드레스(CA)가 "i+1"번째 참조 컬럼 어드레스(FAi-i)보다 앞서지 않을 때, 즉, 메인 메모리 셀의 컬럼 어드레스(CA)가 "i+1"번째 참조 컬럼 어드레스(FAi-i)와 같거나 뒤설 때, 절차는 그 다음 단계로 이동할 수 있다.In step S13 , the
절차가 계속되어 마지막 단계(S14)에 도달하면, 쉬프트 값 생성부(122)는 메인 메모리 셀의 컬럼 어드레스(CA)가 "n"번째 참조 컬럼 어드레스(FA(n-1)-(n-1))보다 앞서는지를 결정하고, 결정한 결과에 따라 쉬프트 값(SHV)을 생성할 수 있다. "n"번째 참조 컬럼 어드레스(FA(n-1)-(n-1))는 마지막 "n"번째 결함 메모리 셀의 컬럼 어드레스(FA(n-1))보다 "n-1"만큼 앞선 컬럼 어드레스일 수 있다. 구체적으로, 메인 메모리 셀의 컬럼 어드레스(CA)가 "n"번째 참조 컬럼 어드레스(FA(n-1)-(n-1))보다 앞설 때, 쉬프트 값 생성부(122)는 쉬프트 값(SHV)을 "n-1"로 생성할 수 있다. 그러나, 메인 메모리 셀의 컬럼 어드레스(CA)가 "n"번째 참조 컬럼 어드레스(FA(n-1)-(n-1))보다 앞서지 않을 때, 즉, 메인 메모리 셀의 컬럼 어드레스(CA)가 "n"번째 참조 컬럼 어드레스(FA(n-1)-(n-1))와 같거나 뒤설 때, 쉬프트 값 생성부(122)는 쉬프트 값(SHV)을 "n"으로 생성할 수 있다.When the procedure continues and the final step S14 is reached, the
정리하면, 소정 메인 메모리 셀에 대응하는 쉬프트 값(SHV)은, 이전 메인 메모리 셀에 대응하는 쉬프트 값(SHV)을 유지하되, 유지된 쉬프트 값(SHV)에 의해 결함 메모리 셀로 쉬프트되는 경우라면 "1"만큼 더 증가됨으로써 생성될 수 있다. 또한, 쉬프트 값 생성부(122)는 도3에 도시된 절차에 따라, 어떤 메인 메모리 셀이 랜덤 액세스되더라도 해당 메인 메모리 셀에 대응하는 쉬프트 값(SHV)을 생성할 수 있다. 결과적으로, 외부 장치가 어떤 메인 메모리 셀에 라이트하도록 지시한 데이터는 결함 메모리 셀들을 회피하여 정상 메모리 셀에 라이트될 수 있다.In summary, if the shift value SHV corresponding to a predetermined main memory cell maintains the shift value SHV corresponding to the previous main memory cell, but is shifted to the defective memory cell by the maintained shift value SHV, can be created by incrementing further by 1". Also, according to the procedure illustrated in FIG. 3 , the
도4는 본 발명의 실시 예에 따른 반도체 장치(200)를 간략하게 도시한 블록도이다.4 is a block diagram schematically illustrating a
도4를 참조하면, 반도체 장치(200)는 메모리 영역(210) 및 제어부(220)를 포함할 수 있다. 메모리 영역(210)은 도1의 메모리 영역(110)과 동일하게 구성될 수 있다.Referring to FIG. 4 , the
제어부(220)는 외부 장치로부터 메인 메모리 셀들(MC0~MCm)의 로우 어드레스(RA) 및 컬럼 어드레스(CA)에 대해 제1 데이터(DATA1)의 라이트 요청을 수신하면, 메인 메모리 셀들(MC0~MCm)에 포함된 결함 메모리 셀들을 회피하기 위해 메인 메모리 셀들(MC0~MCm)에 대응하는 쉬프트 값들(SHV)에 근거하여 제1 데이터(DATA1)로부터 제2 데이터(DATA2)를 생성하고 제2 데이터(DATA2)를 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)에 저장할 수 있다. 또한, 제어부(220)는 외부 장치로부터 메인 메모리 셀들(MC0~MCm)의 로우 어드레스(RA) 및 컬럼 어드레스들(CA)에 대해 제1 데이터(DATA1)의 리드 요청을 수신하면, 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)로부터 제2 데이터(DATA2)를 리드하고, 메인 메모리 셀들(MC0~MCm)에 대응하는 쉬프트 값들(SHV)에 근거하여 제2 데이터(DATA2)로부터 제1 데이터(DATA1)를 복구할 수 있다. When the
정리하면, 제어부(220)는 외부 장치로부터 전송된 제1 데이터(DATA1)를 메인 메모리 셀들(MC0~MCm)에 포함된 결함 메모리 셀들을 회피하여 정상 메모리 셀들에 저장하기 위해 제2 데이터(DATA2)로 재배치함으로써, 실질적으로 제2 데이터(DATA2)를 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)에 라이트할 수 있다. 즉, 제2 데이터(DATA2)는 제1 데이터(DATA1)의 비트들이 정상 메모리 셀들의 위치에 재배치됨으로써 생성될 수 있다. 그리고, 제2 데이터(DATA2)는 결함 메모리 셀들의 위치에 삽입된 더미 비트들을 포함할 수 있다. In summary, the
제어부(220)는 결함 정보 관리부(221), 쉬프트 값 생성부(222), 벡터 생성부(223), 인코더(224) 및 디코더(225)를 포함할 수 있다. 결함 정보 관리부(221) 및 쉬프트 값 생성부(222)는 도1에 도시된 결함 정보 관리부(121) 및 쉬프트 값 생성부(122)와 동일하게 구성되고 동작할 수 있으므로 상세한 설명은 생략될 것이다.The
벡터 생성부(223)는, 라이트 동작이 수행될 때, 쉬프트 값 생성부(222)에 의해 생성된 메인 메모리 셀들(MC0~MCm)에 대응하는 쉬프트 값들(SHV)에 근거하여 하나 이상의 인코딩 벡터들(EV)을 생성할 수 있다. 인코딩 벡터들(EV)은 제2 데이터(DATA2)가 저장될 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs)에 각각 대응할 수 있다. 인코딩 벡터(EV)들 각각은 대응하는 메모리 셀에 저장될 제2 데이터(DATA2)의 비트를 생성하기 위해서, 인코더(224)에 의해 사용될 수 있다. 벡터 생성부(223)의 인코딩 벡터(EV)의 생성 방법은 도5를 참조하여 상세하게 설명될 것이다. The
인코더(224)는 인코딩 벡터들(EV)에 근거하여 제1 데이터(DATA1)로부터 제2 데이터(DATA2)를 생성할 수 있다. 특히, 인코더(224)는 제2 데이터(DATA2)의 하나 이상의 비트들을 병렬적으로 생성할 수 있다. 인코더(224)의 동작 방법은 도6을 참조하여 상세하게 설명될 것이다.The
또한, 벡터 생성부(223)는 리드 동작이 수행될 때, 쉬프트 값 생성부(222)에 의해 생성된 메인 메모리 셀들(MC0~MCm)에 대응하는 쉬프트 값들(SHV)에 근거하여 하나 이상의 디코딩 벡터들(DV)을 생성할 수 있다. 디코딩 벡터들(DV)은, 외부 장치가 제1 데이터(DATA1)를 리드하도록 지시한 메인 메모리 셀들(MC0~MCm)에 각각 대응할 수 있다. 디코딩 벡터들(DV) 각각은 대응하는 메인 메모리 셀에 저장되도록 지시되었었던 제1 데이터(DATA1)의 비트를 복구하기 위해서, 디코더(225)에 의해 사용될 수 있다. 벡터 생성부(223)의 디코딩 벡터(DV)의 생성 방법은 도7을 참조하여 상세하게 설명될 것이다.Also, when a read operation is performed, the
디코더(225)는 디코딩 벡터들(DV)에 근거하여 제2 데이터(DATA2)로부터 제1 데이터(DATA1)를 복구할 수 있다. 특히, 디코더(225)는 제1 데이터(DATA1)의 비트들을 병렬적으로 복구할 수 있다. 디코더(225)의 동작 방법은 도8을 참조하여 상세하게 설명될 것이다.The
도5는 도4의 벡터 생성부(223)가 인코딩 벡터들(EV0~EV7)을 생성하는 방법을 예시적으로 설명하기 위한 도면이다. 도5는, 예를 들어, 외부 장치가 메인 메모리 셀들(C0~C5)에 대한 제1 데이터(DATA1)의 라이트 동작을 지시하였을 때, 도2를 참조하여 생성된 메모리 셀들(C0~C5)에 각각 대응하는 쉬프트 값들(SHV)에 근거하여 메모리 셀들(C0~C7)에 각각 대응하는 인코딩 벡터들(EV0~EV7)이 생성되는 과정을 도시한다.FIG. 5 is a diagram for exemplarily explaining a method of generating the encoding vectors EV0 to EV7 by the
도5를 설명하기 전에 우선, 단일의 로우 어드레스(RA)에 대해 "s"개의 스페어 메모리 셀들이 존재한다면 "s"개의 결함 메모리 셀들이 허용될 것이다. 그리고, 단일의 로우 어드레스(RA)에 대해 "s"개의 스페어 메모리 셀들이 존재한다면, 즉, 최대 "s"개의 결함 메모리 셀들이 존재한다면 쉬프트 값(SHV)은 최대 "s"로 생성될 수 있다.5. First, if there are "s" spare memory cells for a single row address RA, "s" defective memory cells will be allowed. And, if there are “s” number of spare memory cells for a single row address RA, that is, if there are a maximum of “s” number of defective memory cells, the shift value SHV may be generated with a maximum of “s”. .
이때, 단일의 로우 어드레스(RA)에 대해 "s"개의 스페어 메모리 셀들이 존재할 때, 어떤 단일의 인코딩 벡터는 "s+1"개의 벡터 성분들을 포함할 수 있다. 이하에서는 로우 어드레스(RA)에 대해 "2"개의 스페어 메모리 셀들이 존재하는 것으로 가정될 것이고, 따라서, 인코딩 벡터들(EV0~EV7) 각각은 "3"개의 벡터 성분들을 포함할 수 있다. 그리고, 소정 쉬프트 값(SHV)은 인코딩 벡터의 소정 값에 대응할 수 있다. 예를 들어, 쉬프트 값(SHV) "0"은 인코딩 벡터 "001"에 대응하고 쉬프트 값(SHV) "1"은 인코딩 벡터 "010"에 대응하고, 쉬프트 값(SHV) "2"는 인코딩 벡터 "100"에 대응할 수 있다. In this case, when “s” number of spare memory cells exist for a single row address RA, a single encoding vector may include “s+1” number of vector elements. Hereinafter, it will be assumed that there are “2” spare memory cells for the row address RA, and therefore, each of the encoding vectors EV0 to EV7 may include “3” vector elements. In addition, the predetermined shift value SHV may correspond to a predetermined value of the encoding vector. For example, a shift value (SHV) “0” corresponds to the encoding vector “001”, a shift value (SHV) “1” corresponds to the encoding vector “010”, and a shift value (SHV) “2” corresponds to the encoding vector “001”. It can correspond to "100".
한편, 메모리 셀들(C0~C5)에 대응하는 쉬프트 값들(SHV) 중 제일 앞선 메인 메모리 셀(C0)에 대응하는 쉬프트 값(SHV)은 제1 데이터(DATA1)의 시작 비트, 즉, 최하위 비트가 제2 데이터(DATA2)의 시작 비트로서 재배치되는 위치를 가리킬 수 있다. 현재, 메모리 셀(C0)에 대응하는 쉬프트 값(SHV)이 "0"이므로, 제1 데이터(DATA1)의 시작 비트는 쉬프트되지 않고 메모리 셀(C0)에 그대로 저장될 수 있고, 메모리 셀(C0)은 제2 데이터(DATA2)의 라이트 동작의 시작 메모리 셀이 될 수 있다.Meanwhile, among the shift values SHV corresponding to the memory cells C0 to C5 , the shift value SHV corresponding to the first main memory cell C0 is the start bit of the first data DATA1 , that is, the least significant bit. As a start bit of the second data DATA2 , it may indicate a rearranged position. Currently, since the shift value SHV corresponding to the memory cell C0 is “0”, the start bit of the first data DATA1 is not shifted and may be stored in the memory cell C0 as it is, and the memory cell C0 ) may be a start memory cell of a write operation of the second data DATA2 .
이러한 상황에서, 각각의 쉬프트 값들(SHV)에 대응하는 인코딩 벡터들(EV0, EV2, EV3, EV5~EV7)이 결함 메모리 셀들(C1, C4)을 건너 뛰고 시작 메모리 셀(C0)부터 정상 메모리 셀들(C0, C2, C3, C5~C7)에 순차적으로 대응될 수 있다. 그리고, 결함 메모리 셀들(C1, C4)은 임의의 더미 인코딩 벡터들(EV1, EV4)에 대응될 수 있다. 더미 인코딩 벡터들(EV1, EV4)이 삽입되는 위치는 인코딩 벡터들(EV0, EV2, EV3, EV5~EV7) 중 서로 다른 값들을 가진 연속된 인코딩 벡터들의 사이, 예를 들어, "001"과 "010"을 가진 연속된 인코딩 벡터들(EV0, EV2) 및 "010" 및 "100"을 가진 연속된 인코딩 벡터들(EV3, EV5) 사이일 수 있다. 더미 인코딩 벡터들(EV1, EV4) 각각은, 도시된 바와 같이 예를 들어, 직전에 배치된 인코딩 벡터가 중복될 수 있다. 그러나, 더미 인코딩 벡터들(EV1, EV4)은 후술될 바와 같이, 결함 메모리 셀들(C1, C4)에 저장될 더미 비트들을 선택하기 위해 사용되는 것이므로 이와 다른 값으로 생성될 수도 있다.In this situation, the encoding vectors EV0, EV2, EV3, EV5 to EV7 corresponding to the respective shift values SHV skip the defective memory cells C1 and C4, and start the normal memory cells from the start memory cell C0. (C0, C2, C3, C5 to C7) may be sequentially corresponding. In addition, the defective memory cells C1 and C4 may correspond to arbitrary dummy encoding vectors EV1 and EV4. A position at which the dummy encoding vectors EV1 and EV4 are inserted is between consecutive encoding vectors having different values among the encoding vectors EV0, EV2, EV3, and EV5 to EV7, for example, "001" and " between the consecutive encoding vectors EV0, EV2 with 010" and the continuous encoding vectors EV3, EV5 with "010" and "100". As illustrated in each of the dummy encoding vectors EV1 and EV4, for example, an encoding vector disposed immediately before may be overlapped. However, since the dummy encoding vectors EV1 and EV4 are used to select dummy bits to be stored in the defective memory cells C1 and C4, as will be described later, they may be generated with different values.
결국, 인코딩 벡터들(EV0~EV7)은 메모리 셀들(C0~C5)의 개수와 메모리 셀들(C0~C5)에 포함된 결함 메모리 셀들(C1, C4)의 개수의 합만큼 생성될 수 있다. 즉, 인코딩 벡터들(EV0~EV7)은, 외부 장치가 라이트 동작을 지시한 메모리 셀들(C0~C5)뿐만 아니라 결함 메모리 셀들(C1, C4)을 보충할 메모리 셀들(C6, C7)에 대해서도 생성될 수 있다. 도6에서 자세하게 살펴볼 바와 같이 인코딩 벡터들(EV0~EV7) 각각은 대응하는 메모리 셀에 저장될 제2 데이터(DATA2)의 비트를 제1 데이터(DATA1)로부터 선택하기 위해 사용될 수 있다.As a result, the encoding vectors EV0 to EV7 may be generated by the sum of the number of the memory cells C0 to C5 and the number of defective memory cells C1 and C4 included in the memory cells C0 to C5 . That is, the encoding vectors EV0 to EV7 are generated not only for the memory cells C0 to C5 to which the external device has instructed the write operation, but also for the memory cells C6 and C7 to supplement the defective memory cells C1 and C4. can be As will be described in detail with reference to FIG. 6 , each of the encoding vectors EV0 to EV7 may be used to select a bit of the second data DATA2 to be stored in a corresponding memory cell from the first data DATA1 .
도6은 도4의 인코더(224)가 제1 데이터(DATA1)에 근거하여 제2 데이터(DATA2)를 생성하는 방법을 예시적으로 설명하기 위한 도면이다. 도6은, 외부 장치가 메모리 셀들(C0~C5)에 대한 제1 데이터(DATA1)의 라이트 동작을 지시하였을 때, 제1 데이터(DATA1) 및 도5에서 생성된 인코딩 벡터들(EV0~EV7)에 근거하여 제2 데이터(DATA2)가 생성되고, 제2 데이터(DATA2)가 메모리 셀들(C0~C7)에 실제로 라이트되는 과정을 도시한다. 제2 데이터(DATA2)가 메모리 셀들(C0~C7)에 라이트된 결과, 제1 데이터(DATA1)의 비트들(b0~b5)은 결함 메모리 셀들을 회피하고 정상 메모리 셀들에 저장될 수 있다.FIG. 6 is a diagram for exemplarily explaining a method in which the
도6을 참조하면, 인코더(224)는 제1 데이터(DATA1) 및 인코딩 벡터들(EV0~EV7)에 근거하여 제2 데이터(DATA2)의 비트들을 병렬적으로 생성할 수 있다. Referring to FIG. 6 , the
우선, 인코더(224)는 제1 데이터(DATA1)에 근거하여, 인코딩 비트 그룹들(EG0~EG7)을 생성할 수 있다. 인코딩 비트 그룹들(EG0~EG7)은 제2 데이터(DATA2)가 라이트될 메모리 셀들(C0~C7)에 각각 대응할 수 있다. 결국, 인코딩 비트 그룹들(EG0~EG7)은 인코딩 벡터들(EV0~EV7)과 동일한 개수만큼 생성되고 인코딩 벡터들(EV0~EV7)과 각각 대응할 수 있다.First, the
인코딩 비트 그룹들(EG0~EG7)은 결함 메모리 셀들의 존재나 위치와는 무관하게 제1 데이터(DATA1)만 수신하면 소정 규칙에 따라 생성될 수 있다. 우선, 단일의 로우 어드레스(RA)에 대해 "s"개의 스페어 메모리 셀들이 존재할 때, 어떤 단일의 인코딩 비트 그룹은 "s+1"개의 비트 성분들을 포함할 수 있다. 도5에서 가정한 바와 같이 로우 어드레스(RA)에 대해 "2"개의 스페어 메모리 셀들이 존재하는 것으로 가정하였으므로, 인코딩 비트 그룹들(EG0~EG7) 각각은 "3"개의 비트 성분들을 포함할 수 있다.The encoding bit groups EG0 to EG7 may be generated according to a predetermined rule when only the first data DATA1 is received regardless of the presence or location of defective memory cells. First, when there are “s” spare memory cells for a single row address RA, any single encoding bit group may include “s+1” bit components. As it is assumed in FIG. 5 that "2" spare memory cells exist for the row address RA, each of the encoding bit groups EG0 to EG7 may include "3" bit components. .
인코딩 비트 그룹들(EG0~EG7) 각각에 포함된 비트 성분들은, 제1 데이터(DATA1)의 비트들(b0~b5) 중에서 선택된 하나 이상의 후보 비트 성분들을 포함할 수 있다. 구체적으로, 인코딩 비트 그룹들(EG0~EG7) 각각에 포함된 후보 비트 성분들은, 대응하는 메모리 셀이 정상 메모리 셀이라면 제1 데이터(DATA1)의 비트들(b0~b5) 중에서 대응하는 메모리 셀에 저장될 가능성이 있는 비트들일 수 있다. 일부 인코딩 비트 그룹들(EG0, EG1, EG6, EG7)은 "3"개 미만의 후보 비트 성분들을 포함할 수 있고, 이러한 경우 더미 비트 성분, 예를 들어, "0"을 포함할 수 있다.Bit components included in each of the encoding bit groups EG0 to EG7 may include one or more candidate bit components selected from bits b0 to b5 of the first data DATA1 . Specifically, the candidate bit components included in each of the encoding bit groups EG0 to EG7 are stored in the corresponding memory cell among the bits b0 to b5 of the first data DATA1 if the corresponding memory cell is a normal memory cell. It may be bits that are likely to be stored. Some encoding bit groups EG0, EG1, EG6, EG7 may include fewer than “3” candidate bit components, and in this case may include a dummy bit component, for example, “0”.
예를 들어, 제1 데이터(DATA1)의 비트들(b0~b5) 중에서 메모리 셀(C0)에 저장될 가능성이 있는 비트는 비트(b0)뿐일 것이다. 즉, 메모리 셀(C0)이 정상 메모리 셀일 경우 비트(b0)는 메모리 셀(C0)에 저장될 수 있다. 따라서, 메모리 셀(C0)에 대응하는 인코딩 비트 그룹(EG0)은 후보 비트 성분(b0) 및 더미 비트 성분들로서 2개의 "0"들을 포함할 수 있다.For example, among the bits b0 to b5 of the first data DATA1 , only the bit b0 is likely to be stored in the memory cell C0 . That is, when the memory cell C0 is a normal memory cell, the bit b0 may be stored in the memory cell C0. Accordingly, the encoding bit group EG0 corresponding to the memory cell C0 may include two “0s” as candidate bit components b0 and dummy bit components.
그리고, 제1 데이터(DATA1)의 비트들(b0~b5) 중에서 메모리 셀(C1)에 저장될 가능성이 있는 비트들은 비트들(b0, b1)일 것이다. 즉, 메모리 셀(C0)이 결함 메모리 셀일 경우 비트(b0)가 메모리 셀(C1)에 저장될 수 있고, 메모리 셀들(C0, C1)이 모두 정상 메모리 셀일 경우 비트(b1)가 메모리 셀(C1)에 저장될 수 있다. 따라서, 메모리 셀(C1)에 대응하는 인코딩 비트 그룹(EG1)은 후보 비트 성분들(b0, b1) 및 더미 비트 성분으로서 1개의 "0"을 포함할 수 있다. Also, among the bits b0 to b5 of the first data DATA1 , bits that are likely to be stored in the memory cell C1 may be bits b0 and b1 . That is, when the memory cell C0 is a defective memory cell, the bit b0 may be stored in the memory cell C1 , and when the memory cells C0 and C1 are all normal memory cells, the bit b1 is stored in the memory cell C1 . ) can be stored in Accordingly, the encoding bit group EG1 corresponding to the memory cell C1 may include the candidate bit components b0 and b1 and one “0” as the dummy bit component.
그리고, 제1 데이터(DATA1)의 비트들(b0~b5) 중에서 메모리 셀(C7)에 저장될 가능성이 있는 비트는 비트(b5)뿐일 것이다. 즉, 가정한 바와 같이 2개의 결함 메모리 셀들까지 허용되는 상태에서, 메모리 셀들(C0~C5)이 2개의 결함 메모리 셀들을 포함할 경우 비트(b5)는 메모리 셀(C7)에 저장될 수 있다. 따라서, 메모리 셀(C7)에 대응하는 인코딩 비트 그룹(EG7)은 후보 비트 성분(b5) 및 더미 비트 성분으로서 2개의 "0"들을 포함할 수 있다. And, among the bits b0 to b5 of the first data DATA1 , only the bit b5 is likely to be stored in the memory cell C7 . That is, in a state where up to two defective memory cells are allowed as assumed, when the memory cells C0 to C5 include two defective memory cells, the bit b5 may be stored in the memory cell C7 . Accordingly, the encoding bit group EG7 corresponding to the memory cell C7 may include two “0s” as a candidate bit component b5 and a dummy bit component.
즉, 본 발명은 이러한 가능성을 고려하여 인코딩 비트 그룹들(EG0~EG7)의 후보 비트 성분들을 일괄적으로 생성한 뒤, 결함 메모리 셀들(C1, C4)의 실제 위치가 반영된 인코딩 벡터들(EV0~EV7)에 근거하여 후보 비트 성분들 중 어느 하나를 선택할 수 있다. 나머지 메모리 셀들(C2~C6)에 대응하는 인코딩 비트 그룹들(EG2~EG6)을 생성하는 방법은 상술한 규칙에 따라 통상의 기술자 입장에서 용이하게 적용할 수 있으므로 상세한 설명이 생략될 것이다.That is, the present invention collectively generates the candidate bit components of the encoding bit groups EG0 to EG7 in consideration of this possibility, and then the encoding vectors EV0 to EV0 to which the actual positions of the defective memory cells C1 and C4 are reflected. EV7), any one of the candidate bit components may be selected. A method of generating the encoding bit groups EG2 to EG6 corresponding to the remaining memory cells C2 to C6 can be easily applied to a person skilled in the art according to the above-described rule, and thus a detailed description thereof will be omitted.
또한, 인코딩 비트 그룹들(EG0~EG7) 각각에서 후보 비트 성분들은 소정 방식에 따라 정렬될 수 있다. 예를 들어, 어떤 단일의 인코딩 비트 그룹에 포함된 후보 비트 성분들은 제1 데이터(DATA1)에서 상위 비트일수록 인코딩 비트 그룹에서 하위 후보 비트 성분으로서 정렬되고, 더미 비트 성분인 "0"들은 인코딩 비트 그룹의 나머지 위치들에 정렬될 수 있다. 예를 들어, 인코딩 비트 그룹(EG0)에서, 후보 비트 성분(b0)은 최하위 비트 성분이 되고, "0"들은 나머지 위치들에 정렬될 수 있다. 예를 들어, 인코딩 비트 그룹(G1)에서, 후보 비트 성분(b1)은 최하위 비트 성분이 되고, 후보 비트 성분(b0)은 그 다음 하위 비트 성분이 되고, "0"들은 나머지 위치들에 정렬될 수 있다. Also, candidate bit components in each of the encoding bit groups EG0 to EG7 may be arranged according to a predetermined method. For example, candidate bit components included in a single encoding bit group are arranged as lower candidate bit components in the encoding bit group as higher bits in the first data DATA1 are higher, and “0s”, which are dummy bit components, are encoded in the encoding bit group. can be aligned to the remaining positions of . For example, in the encoding bit group EG0, the candidate bit component b0 becomes the least significant bit component, and “0s” may be aligned at the remaining positions. For example, in the encoding bit group G1, the candidate bit component b1 becomes the least significant bit component, the candidate bit component b0 becomes the next least significant bit component, and "0s" are to be aligned in the remaining positions. can
그리고, 인코더(224)는 제2 데이터(DATA2)를 병렬적으로 생성하는 연산부들(OP0~OP7)을 포함할 수 있다. 연산부들(OP0~OP7) 각각은 서로 대응하는 인코딩 벡터 및 인코딩 비트 그룹을 입력받아 비트와이즈 연산함으로써, 제2 데이터(DATA2)에 포함될 비트를 출력할 수 있다. 연산부들(OP0~OP7) 각각은 입력받은 인코딩 벡터에 근거하여 입력받은 인코딩 비트 그룹의 후보 비트 성분들 중 어느 하나를 출력할 수 있다. 구체적으로, 연산부들(OP0~OP7) 각각은 입력받은 인코딩 벡터의 벡터 성분 "1"에 대응하는, 즉, 벡터 성분 "1"과 동일한 위치로 배치된 후보 비트 성분을 출력할 수 있다. Also, the
결과적으로, 인코더(224)는 제1 데이터(DATA1)의 비트들(b0~b5)을 결함 메모리 셀들(C1, C4)을 회피하여 정상 메모리 셀들(C0, C2, C3, C5~C7)의 위치로 재배치함으로써 제2 데이터(DATA2)를 생성할 수 있다. 결함 메모리 셀(C1)의 위치에는 더미 비트, 예를 들어, 결함 메모리 셀(C1)이 정상 메모리 셀이었다면 저장되었을 비트(b1)가 저장될 수 있다. 결함 메모리 셀들(C4)의 위치에는 더미 비트, 예를 들어, 결함 메모리 셀(C4)이 정상 메모리 셀이었다면 저장되었을 비트(b3)가 저장될 수 있다. As a result, the
도7은 도4의 벡터 생성부(223)가 디코딩 벡터들(DV0~DV5)을 생성하는 방법을 예시적으로 설명하기 위한 도면이다. 도7은, 예를 들어, 외부 장치가 메인 메모리 셀들(C0~C5)에 대한 제1 데이터(DATA1)의 리드 동작을 지시하였을 때, 메모리 셀들(C0~C5)에 각각 대응하는 쉬프트 값들(SHV)에 근거하여 메모리 셀들(C0~C5)에 각각 대응하는 디코딩 벡터들(DV0~DV5)이 생성되는 과정을 도시한다.FIG. 7 is a diagram for exemplarily explaining a method in which the
도7을 설명하기 전에 우선, 단일의 로우 어드레스(RA)에 대해 "s"개의 스페어 메모리 셀들이 존재할 때, 어떤 단일의 디코딩 벡터는 "s+1"개의 벡터 성분들을 포함할 수 있다. 앞서 가정한 바에 따라 로우 어드레스(RA)에 대해 "2"개의 스페어 메모리 셀들이 존재할 것이므로, 따라서, 디코딩 벡터들(DV0~DV5) 각각은 "3"개의 벡터 성분들을 포함할 수 있다. Before describing FIG. 7, when there are “s” spare memory cells for a single row address RA, any single decoding vector may include “s+1” vector elements. As previously assumed, there will be “2” spare memory cells for the row address RA. Accordingly, each of the decoding vectors DV0 to DV5 may include “3” vector components.
그리고, 도5에서 인코딩 벡터를 생성할 때와 마찬가지로, 소정 쉬프트 값(SHV)은 디코딩 벡터의 소정 값에 대응할 수 있다. 예를 들어, 쉬프트 값(SHV) "0"은 디코딩 벡터 "001"에 대응하고 쉬프트 값(SHV) "1"은 디코딩 벡터 "010"에 대응하고, 쉬프트 값(SHV) "2"는 디코딩 벡터 "100"에 대응할 수 있다.And, similarly to generating the encoding vector in FIG. 5 , the predetermined shift value SHV may correspond to the predetermined value of the decoding vector. For example, a shift value (SHV) "0" corresponds to a decoding vector "001", a shift value (SHV) "1" corresponds to a decoding vector "010", and a shift value (SHV) "2" corresponds to a decoding vector It can correspond to "100".
이러한 상황에서, 외부 장치가 리드 동작을 지시한 각각의 메모리 셀들(C0~C5)에 대해 쉬프트 값들(SHV)에 따라 디코딩 벡터들(DV0~DV5)이 생성될 수 있다. 도8에서 자세하게 살펴볼 바와 같이 디코딩 벡터들(DV0~DV5) 각각은 대응하는 메모리 셀에 저장되도록 지시되었었던 제1 데이터(DATA1)의 비트를, 메모리 셀들(C0~C7)로부터 실제로 리드된 제2 데이터(DATA2)로부터 복구하기 위해 사용될 수 있다.In this situation, decoding vectors DV0 to DV5 may be generated according to the shift values SHV for each of the memory cells C0 to C5 for which the external device has instructed the read operation. As will be described in detail with reference to FIG. 8 , each of the decoding vectors DV0 to DV5 corresponds to the bit of the first data DATA1 that was instructed to be stored in the corresponding memory cell, and the second bit of the first data DATA1 actually read from the memory cells C0 to C7. It can be used to recover from data DATA2.
도8은 도4의 디코더(225)가 제2 데이터(DATA2)에 근거하여 제1 데이터(DATA1)를 복구하는 방법을 예시적으로 설명하기 위한 도면이다. 도8은, 외부 장치가 메모리 셀들(C0~C5)에 대한 제1 데이터(DATA1)의 리드 동작을 지시하였을 때, 메모리 셀들(C0~C7)로부터 실제로 리드된 제2 데이터(DATA2) 및 도7에서 생성된 디코딩 벡터들(DV0~DV5)에 근거하여 제1 데이터(DATA1)가 복구되는 과정을 도시한다.FIG. 8 is a diagram for exemplarily explaining a method in which the
우선, 외부 장치가 메모리 셀들(C0~C5)을 리드하도록 지시하였을 때 실제로 리드하는 범위는, 결함 메모리 셀들 때문에 추가 메모리 셀들이 사용되었을 가능성을 고려하여, 메모리 셀들(C0~C5)뿐만 아니라 스페어 메모리 셀 방향으로 후속하는 메모리 셀들(C6, C7)까지 일 수 있다. 즉, 추가로 리드되는 메모리 셀들의 개수는 스페어 메모리 셀들의 개수만큼일 수 있다.First, when the external device instructs to read the memory cells C0 to C5, the range actually read is, considering the possibility that additional memory cells are used due to defective memory cells, not only the memory cells C0 to C5 but also the spare memory. It may be up to the memory cells C6 and C7 that follow in the cell direction. That is, the number of additionally read memory cells may be equal to the number of spare memory cells.
디코더(225)는 메모리 셀들(C0~C7)로부터 리드된 제2 데이터(DATA2) 및 디코딩 벡터들(DV0~DV5)에 근거하여 제1 데이터(DATA1)의 비트들을 병렬적으로 복구할 수 있다.The
우선, 디코더(225)는 제2 데이터(DATA2)에 근거하여, 디코딩 비트 그룹들(DG0~DG5)을 생성할 수 있다. 디코딩 비트 그룹들(DG0~DG5)은, 외부 장치가 리드 동작을 지시한 메모리 셀들(C0~C5)에 각각 대응할 수 있다. 결국, 디코딩 비트 그룹들(DG0~DG5)은 디코딩 벡터들(DV0~DV5)과 동일한 개수만큼 생성되고 디코딩 벡터들(DV0~DV5)과 각각 대응할 수 있다.First, the
디코딩 비트 그룹들(DG0~DG5)은 결함 메모리 셀들의 존재나 위치와는 무관하게 제2 데이터(DATA2)만 리드되면 소정 규칙에 따라 생성될 수 있다. 우선, 단일의 로우 어드레스(RA)에 대해 "s"개의 스페어 메모리 셀들이 존재할 때, 어떤 단일의 디코딩 비트 그룹은 "s+1"개의 비트 성분들을 포함할 수 있다. 도5에서 가정한 바와 같이 로우 어드레스(RA)에 대해 "2"개의 스페어 메모리 셀들이 존재하는 것으로 가정하였으므로, 디코딩 비트 그룹들(DG0~DG5) 각각은 "3"개의 비트 성분들을 포함할 수 있다.The decoding bit groups DG0 to DG5 may be generated according to a predetermined rule when only the second data DATA2 is read regardless of the presence or location of defective memory cells. First, when there are “s” spare memory cells for a single row address RA, any single decoding bit group may include “s+1” bit components. As it is assumed in FIG. 5 , it is assumed that “2” spare memory cells exist for the row address RA, so each of the decoding bit groups DG0 to DG5 may include “3” bit components. .
디코딩 비트 그룹들(DG0~DG5) 각각에 포함된 비트 성분들은, 제2 데이터(DATA2)의 비트들(b10~b17) 중에서 선택된 하나 이상의 후보 비트 성분들을 포함할 수 있다. 구체적으로, 디코딩 비트 그룹들(DG0~DG5) 각각에 포함된 후보 비트 성분들은, 외부 장치가 대응하는 메모리 셀에 저장하도록 지시하였을 가능성이 있는 비트들일 수 있다. 결과적으로, 디코딩 비트 그룹들(DG0~DG5) 각각에 포함된 후보 비트 성분들은, 제2 데이터(DATA2)의 비트들(b10~b17) 중에서 대응하는 메모리 셀로부터 리드된 비트 및 해당 비트의 "2"개의 상위 비트들일 수 있다.Bit components included in each of the decoding bit groups DG0 to DG5 may include one or more candidate bit components selected from bits b10 to b17 of the second data DATA2 . Specifically, the candidate bit components included in each of the decoding bit groups DG0 to DG5 may be bits that an external device has likely instructed to store in a corresponding memory cell. As a result, the candidate bit components included in each of the decoding bit groups DG0 to DG5 are the bit read from the corresponding memory cell among the bits b10 to b17 of the second data DATA2 and the "2" of the corresponding bit. "It can be the upper bits of
예를 들어, 메모리 셀(C0)에 대응하는 디코딩 비트 그룹(DG0)은, 외부 장치가 메모리 셀(C0)에 저장하도록 지시하였을 가능성이 있는 후보 비트 성분들(b10, b11, b12)을 포함할 수 있다. 즉, 비트(b10)는 메모리 셀(C0)이 정상 메모리 셀일 때 외부 장치의 지시에 따라 그대로 메모리 셀(C0)에 저장되었을 수 있다. 비트(b11)는 외부 장치에 의해 메모리 셀(C0)에 저장되도록 지시되었었으나, 메모리 셀(C0)이 결함 메모리 셀일 경우 메모리 셀(C1)에 쉬프트되어 저장되었을 수 있다. 또한, 비트(b12)는 외부 장치에 의해 메모리 셀(C0)에 저장되도록 지시되었었으나, 메모리 셀들(C0, C1)이 결함 메모리 셀들일 경우 메모리 셀(C2)에 쉬프트되어 저장되었을 수 있다. For example, the decoding bit group DG0 corresponding to the memory cell C0 may contain the candidate bit components b10, b11, b12 that the external device has likely instructed to store in the memory cell C0. can That is, when the memory cell C0 is a normal memory cell, the bit b10 may be stored in the memory cell C0 as it is according to an instruction from an external device. The bit b11 is instructed to be stored in the memory cell C0 by an external device, but may be shifted and stored in the memory cell C1 when the memory cell C0 is a defective memory cell. Also, although the bit b12 is instructed to be stored in the memory cell C0 by an external device, when the memory cells C0 and C1 are defective memory cells, the bit b12 may be shifted and stored in the memory cell C2.
즉, 본 발명은 이러한 가능성을 고려하여 디코딩 비트 그룹들(DG0~DG5)의 후보 비트 성분들을 일괄적으로 생성한 뒤, 결함 메모리 셀들(C1, C4)의 실제 위치가 반영된 디코딩 벡터들(DV0~DV5)에 근거하여 후보 비트 성분들 중 어느 하나를 선택할 수 있다. 나머지 메모리 셀들(C2~C5)에 대응하는 디코딩 비트 그룹들(DG2~DG5)을 생성하는 방법은 상술한 규칙에 따라 통상의 기술자 입장에서 용이하게 적용할 수 있으므로 상세한 설명이 생략될 것이다.That is, the present invention collectively generates the candidate bit components of the decoding bit groups DG0 to DG5 in consideration of this possibility, and then the decoding vectors DV0 to which the actual positions of the defective memory cells C1 and C4 are reflected. DV5), any one of the candidate bit components may be selected. A method of generating the decoding bit groups DG2 to DG5 corresponding to the remaining memory cells C2 to C5 can be easily applied from a point of view of a person skilled in the art according to the above-described rule, and thus a detailed description thereof will be omitted.
또한, 디코딩 비트 그룹들(DG0~DG5) 각각에서 후보 비트 성분들은 소정 방식에 따라 정렬될 수 있다. 예를 들어, 어떤 단일의 디코딩 비트 그룹에 포함된 후보 비트 성분들은 제2 데이터(DATA2)에서 상위 비트일수록 디코딩 비트 그룹에서 상위 비트 성분으로서 정렬될 수 있다.In addition, candidate bit components in each of the decoding bit groups DG0 to DG5 may be arranged according to a predetermined method. For example, candidate bit components included in a single decoding bit group may be arranged as high-order bit components in the decoding bit group as the higher bits in the second data DATA2 are.
그리고, 디코더(225)는 제1 데이터(DATA1)를 병렬적으로 생성하는 연산부들(OP10~OP15)을 포함할 수 있다. 연산부들(OP10~OP15) 각각은 서로 대응하는 디코딩 벡터 및 디코딩 비트 그룹을 입력받아 비트와이즈 연산함으로써, 제1 데이터(DATA1)로서 복구될 비트를 출력할 수 있다. 연산부들(OP10~OP15) 각각은 입력받은 디코딩 벡터에 근거하여 입력받은 디코딩 비트 그룹의 후보 비트 성분들 중 어느 하나를 출력할 수 있다. 구체적으로, 연산부들(OP10~OP15) 각각은 입력받은 디코딩 벡터의 벡터 성분 "1"에 대응하는, 즉, 벡터 성분 "1"과 동일한 위치로 배치된 후보 비트 성분을 출력할 수 있다. In addition, the
결과적으로, 디코더(225)는 제2 데이터(DATA2)에서, 결함 메모리 셀들(C1, C4)로부터 리드된 비트들(b11, b14)을 제거하고 정상 메모리 셀들(C0, C2, C3, C5~C7)로부터 리드된 비트들(b10, b12, b13, b15~b17)만 남김으로써 제1 데이터(DATA1)를 복구할 수 있다.As a result, the
도9는 본 발명의 실시 예에 따른 쉬프트 값 생성부(322)를 도시한 블록도이다. 쉬프트 값 생성부(322)는 도1 또는 도4의 쉬프트 값 생성부(122, 222)의 실시 예일 수 있다.9 is a block diagram illustrating a
도3에 도시된 절차를 통해 생성된 쉬프트 값은 이후 새로운 결함 메모리 셀이 발생하지 않는다면 변함이 없을 것이다. 즉, 현재 결함 메모리 셀들의 위치에 근거하여 소정 메인 메모리 셀에 대해 생성된 쉬프트 값은 해당 메인 메모리 셀의 로우 어드레스에서 새로운 결함 메모리 셀이 발생하지 않는다면 언제나 동일할 것이다. The shift value generated through the procedure shown in FIG. 3 will not change unless a new defective memory cell is subsequently generated. That is, the shift value generated for a predetermined main memory cell based on the positions of the current defective memory cells will always be the same unless a new defective memory cell is generated at the row address of the corresponding main memory cell.
따라서, 도9를 참조하면, 쉬프트 값 생성부(322)는 쉬프트 값 저장부(422)를 더 포함할 수 있다. 쉬프트 값 저장부(422)는 쉬프트 값 생성부(322)에 의해 생성된 쉬프트 값들을 저장할 수 있다. 쉬프트 값 저장부(422)는 외부 장치로부터 제공된 로우 어드레스 및 컬럼 어드레스에 근거하여, 라이트 동작이 수행될 메인 메모리 셀에 대응하는 쉬프트 값을 출력할 수 있다. 만일 소정 로우 어드레스에서 새로운 결함 메모리 셀이 발생하면 해당 로우 어드레스의 메인 메모리 셀들에 대응하는 새로운 쉬프트 값들이 쉬프트 값 생성부(322)를 통해 생성되고 쉬프트 값 저장부(422)에 저장될 수 있다. Accordingly, referring to FIG. 9 , the shift
도10은 본 발명의 실시 예에 따른 벡터 생성부(323)를 도시한 블록도이다. 벡터 생성부(323)는 도4의 벡터 생성부(223)의 실시 예일 수 있다.10 is a block diagram illustrating a
도5 및 도7을 참조하여 설명한 과정을 통해 생성된 인코딩 벡터들 및 디코딩 벡터들은 이후 새로운 결함 메모리 셀이 발생하지 않는다면 변함이 없을 것이다. 즉, 현재 결함 메모리 셀들의 위치에 근거하여 소정 메모리 셀에 대해 생성된 인코딩 벡터 및 디코딩 벡터는 해당 메모리 셀의 로우 어드레스에서 새로운 결함 메모리 셀이 발생하지 않는다면 언제나 동일할 것이다.The encoding vectors and decoding vectors generated through the process described with reference to FIGS. 5 and 7 will not change unless a new defective memory cell is generated thereafter. That is, the encoding vector and decoding vector generated for a given memory cell based on the positions of the current defective memory cells will always be the same unless a new defective memory cell occurs at the row address of the corresponding memory cell.
따라서, 도10을 참조하면, 벡터 생성부(323)는 벡터 저장부(423)를 더 포함할 수 있다. 벡터 저장부(423)는 벡터 생성부(323)에 의해 생성된 인코딩 벡터들 및 디코딩 벡터들을 저장할 수 있다. 벡터 저장부(423)는 외부 장치로부터 제공된 로우 어드레스 및 컬럼 어드레스에 근거하여, 라이트 동작 또는 리드 동작이 수행될 메모리 셀에 대응하는 인코딩 벡터 또는 디코딩 벡터를 출력할 수 있다. 만일 소정 로우 어드레스에서 새로운 결함 메모리 셀이 발생하면 해당 로우 어드레스의 메모리 셀들에 대응하는 새로운 인코딩 벡터들 및 디코딩 벡터들이 벡터 생성부(323)를 통해 생성되고 벡터 저장부(423)에 저장될 수 있다.Accordingly, referring to FIG. 10 , the
도11은 본 발명의 실시 예에 따른 반도체 시스템(1)을 예시적으로 도시하는 블록도이다.11 is a block diagram exemplarily showing a
반도체 시스템(1)은 제1 반도체 장치(1100) 및 제2 반도체 장치(1200)를 포함할 수 있다. The
제1 및 제2 반도체 장치들(1100, 1200)은 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs)을 통해 연결될 수 있다. 설명하기에 앞서, 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs)은 스페어 신호 라인 방향으로 소정 순서가 부여될 수 있다. 즉, 메인 신호 라인들(ML0~MLm) 중에서 메인 신호 라인(ML0)이 제일 앞서고 제일 마지막의 스페어 메모리 셀(SLs)이 제일 뒤설 수 있다. 이러한 순서는 신호 라인들에게 상대적인 위치들을 할당하여 아래에서 발명을 용이하게 설명하기 위해 가정한 것이다.The first and
메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs)을 통한 제1 및 제2 반도체 장치들(1100, 1200)의 통신 방식은 도1 및 도4의 반도체 장치들(100, 200)이 메인 메모리 셀들(MC0~MCm) 및 스페어 메모리 셀들(SC0~SCs) 중 결함 메모리 셀들을 회피하여 정상 메모리 셀들만 사용하는 방식과 실질적으로 유사할 수 있다.The communication method of the first and
구체적으로, 제1 반도체 장치(1100)는 결함 신호 라인들을 회피하기 위하여 메인 신호 라인들(ML0~MLm)을 통해 제2 반도체 장치(1200)로 전송할 제1 신호들(SGN1)을 제2 신호들(SGN2)로 변환하여 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs)을 통해 전송할 수 있다. 제2 신호들(SGN2)은 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs) 중 정상 신호 라인들로 전송될 제1 신호들(SGN1)을 포함하고 결함 신호 라인들로 전송될 더미 신호들을 포함할 수 있다. Specifically, the
제2 반도체 장치(1200)는 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs)로부터 수신된 제2 신호들(SGN2)로부터 제1 신호들(SGN1)을 복구할 수 있다. The
따라서, 메인 신호 라인들(ML0~MLm)에 결함 신호 라인들이 존재하더라도 제1 및 제2 반도체 장치들(1100, 1200)은 정상적으로 통신할 수 있다. Accordingly, even if defective signal lines exist in the main signal lines ML0 to MLm, the first and
제1 반도체 장치(1100)는 결함 정보 관리부(1110), 쉬프트 값 생성부(1120), 인코딩 벡터 생성부(1130) 및 인코더(1140)를 포함할 수 있다. 제2 반도체 장치(1200)는 결함 정보 관리부(1210), 쉬프트 값 생성부(1220), 디코딩 벡터 생성부(1230) 및 디코더(1240)를 포함할 수 있다. 제1 및 제2 반도체 장치들(1100, 1200)에 포함된 결함 정보 관리부들(1110, 1210), 쉬프트 값 생성부들(1120, 1220), 인코딩 벡터 생성부(1130), 디코딩 벡터 생성부(1230), 인코더(1140) 및 디코더(1240)는 도1 또는 도4에 도시된 결함 정보 관리부(121, 221), 쉬프트 값 생성부(122, 222), 벡터 생성부(223), 인코더(224) 및 디코더(225)와 실질적으로 유사하게 구성되고 동작할 수 있다. The
구체적으로, 제1 및 제2 반도체 장치들(1100, 1200)에서 결함 정보 관리부들(1110, 1210)은 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs)의 하나 이상의 결함 신호 라인들의 위치 정보를 포함하는 결함 정보(FINF_L)를 각각 저장할 수 있다. 결함 정보 관리부들(1110, 1210)은, 제1 및 제2 반도체 장치들(1100, 1200)이 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs)을 통해 서로 통신하려 할 때 결함 정보(FINF_L)를 쉬프트 값 생성부들(1120, 1220)로 각각 제공할 수 있다. Specifically, in the first and
쉬프트 값 생성부들(1120, 1220)은 결함 정보(FINF_L)에 근거하여 메인 신호 라인들(ML0~MLm)에 각각 대응하는 쉬프트 값들(SHV_L)을 생성할 수 있다. 쉬프트 값 생성부들(1120, 1220)은 도3에 도시된 과정과 유사하게, 소정 메인 신호 라인의 위치를 결함 신호 라인들의 위치들에 근거한 참조 위치들과 비교함으로써, 소정 메인 신호 라인에 대응하는 쉬프트 값(SHV_L)을 생성할 수 있다. 참조 위치들 중 i번째 참조 위치는 결함 신호 라인들 중 i번째 결함 신호 라인의 위치보다 (i-1)만큼 앞선 위치일 수 있다. 쉬프트 값 생성부들(1120, 1220)은 소정 메인 신호 라인의 위치가 결함 신호 라인들 중 첫번째 결함 신호 라인의 위치보다 앞설 때, 소정 메인 신호 라인의 쉬프트 값을 "0"으로 생성할 수 있다. 쉬프트 값 생성부들(1120, 1220)은 소정 메인 신호 라인의 위치가 i번째 참조 위치와 같거나 뒤서고 (i+1)번째 참조 위치보다 앞설 때, 소정 메인 신호 라인의 쉬프트 값을 "i"로 생성할 수 있다. 쉬프트 값 생성부들(1120, 1220)은 소정 메인 신호 라인의 위치가 n번째 참조 위치와 같거나 뒤설 때, 소정 메인 신호 라인의 쉬프트 값을 "n"으로 생성하되, 이때, n번째 참조 위치는 결함 신호 라인 중 마지막 결함 신호 라인인 n번째 결함 신호 라인의 위치 "n-1"만큼 앞선 위치일 수 있다. 쉬프트 값 생성부들(1120, 1220)은 쉬프트 값들(SHV_L)을 인코딩 벡터 생성부(1130) 및 디코딩 벡터 생성부(1230)로 각각 제공할 수 있다. The
인코딩 벡터 생성부(1130) 및 디코딩 벡터 생성부(1230)는 쉬프트 값들(SHV_L)에 근거하여 하나 이상의 인코딩 벡터들(EV_L) 및 하나 이상의 디코딩 벡터들(DV_L)을 각각 생성할 수 있다. 인코딩 벡터 생성부(1130)는 도5를 참조하여 설명한 바와 유사하게 인코딩 벡터들(EV_L)을 생성하고 인코더(1140)로 제공할 수 있다. 디코딩 벡터 생성부(1230)는 도7을 참조하여 설명한 바와 유사하게 디코딩 벡터들(DV_L)을 생성하고 디코더(1240)로 제공할 수 있다.The
인코더(1140)는 제1 신호들(SGN1) 및 인코딩 벡터 생성부(1130)로부터 제공된 인코딩 벡터들(EV_L)에 근거하여 제2 신호들(SGN2)을 생성할 수 있다. 인코더(1140)는 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs) 중 정상 신호 라인들의 위치로 제1 신호들(SGN1)을 재배치시키고 결함 신호 라인들의 위치에 더미 신호들 배치함으로써 제2 신호들(SGN2)을 생성할 수 있다. The
그리고, 디코더(1240)는 제2 신호들(SGN2) 및 디코딩 벡터 생성부(1230)로부터 제공된 디코딩 벡터들(DV_L)에 근거하여 제1 신호들(SGN1)을 복구할 수 있다. 디코더(1240)는 결함 신호 라인들을 통해 전송된 더미 신호들을 제2 신호들(SGN2)로부터 제거함으로써 제1 신호들(SGN1)을 복구할 수 있다.In addition, the
실시 예에 따라, 제1 및 제2 반도체 장치들(1100, 1200)은 수직으로 적층된 반도체 메모리 장치들일 수 있다. 이러한 경우, 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs) 각각은 관통 실리콘 비아로 구성될 수 있다. 메인 신호 라인들(ML0~MLm) 및 스페어 신호 라인들(SL0~SLs)은 반도체 메모리 장치의 제어를 위한 제어 신호들 및 데이터를 전송할 수 있다.According to an embodiment, the first and
한편, 도11은 단방향 통신하는 제1 및 제2 반도체 장치들(1100, 1200)을 도시하나, 실시 예에 따라서 제1 및 제2 반도체 장치들(1100, 1200)은 양방향 통신하도록 구성될 수 있다. 이러한 경우, 제1 및 제2 반도체 장치들(1100, 1200) 각각은 인코딩 벡터 생성부, 디코딩 벡터 생성부, 인코더 및 디코더를 모두 포함할 수 있다. 이러한 반도체 시스템의 구성 및 동작 방법은 상술한 설명들을 통해 통상의 기술자가 용이하게 도출할 수 있는 것이므로 상세한 설명은 생략될 것이다.Meanwhile, although FIG. 11 illustrates the first and
실시 예에 따라, 도11의 쉬프트 값 생성부들(1120, 1220)은 도9의 쉬프트 값 생성부(322)와 유사하게 구성되고 동작할 수 있다. 즉, 쉬프트 값 생성부들(1120, 1220)은 쉬프트 값 저장부들을 각각 포함할 수 있다.According to an embodiment, the
실시 예에 따라, 도11의 인코딩 벡터 생성부(1130) 및 디코딩 벡터 생성부(1230)는 도10의 벡터 생성부(323)와 유사하게 구성되고 동작할 수 있다. 즉, 인코딩 벡터 생성부(1130) 및 디코딩 벡터 생성부(1230)는 인코딩 벡터 저장부 및 디코딩 벡터 저장부를 각각 포함할 수 있다.According to an embodiment, the
본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있으므로, 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.Those of ordinary skill in the art to which the present invention pertains, since the present invention can be embodied in other specific forms without changing the technical spirit or essential features thereof, the embodiments described above are illustrative in all respects and not restrictive must be understood as The scope of the present invention is indicated by the following claims rather than the above detailed description, and all changes or modifications derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. do.
100: 반도체 장치
110: 메모리 영역
MC0~MCm: 메인 메모리 셀들
SC0~SCs: 스페어 메모리 셀들
120: 제어부
121: 결함 정보 관리부
122: 쉬프트 값 생성부100: semiconductor device
110: memory area
MC0~MCm: main memory cells
SC0~SCs: spare memory cells
120: control unit
121: defect information management unit
122: shift value generator
Claims (21)
하나 이상의 결함 메모리 셀들의 결함 정보에 근거하여 상기 메인 메모리 셀들에 각각 대응하는 쉬프트 값들을 생성하고, 하나 이상의 제1 비트들을 상기 메인 메모리 셀들로부터 상기 쉬프트 값들만큼 스페어 메모리 셀 방향으로 각각 쉬프트된 메모리 셀들에 라이트하도록 구성된 제어부를 포함하되,
상기 제어부는, 메인 메모리 셀의 컬럼 어드레스를 상기 결함 정보에 근거한 하나 이상의 참조 컬럼 어드레스들과 순차적으로 비교함으로써 상기 메인 메모리 셀에 대응하는 쉬프트 값을 생성하고,
상기 참조 컬럼 어드레스들 중 i번째 참조 컬럼 어드레스는 상기 결함 메모리 셀들 중 i번째 결함 메모리 셀의 컬럼 어드레스보다 (i-1)만큼 앞선 컬럼 어드레스인 반도체 장치.one or more main memory cells and one or more spare memory cells; and
Memory cells in which shift values corresponding to each of the main memory cells are generated based on defect information of one or more defective memory cells, and one or more first bits are respectively shifted from the main memory cells in the direction of the spare memory cell by the shift values A control unit configured to write to
The control unit generates a shift value corresponding to the main memory cell by sequentially comparing a column address of the main memory cell with one or more reference column addresses based on the defect information;
The i-th reference column address among the reference column addresses is a column address preceding the column address of the i-th defective memory cell among the defective memory cells by (i-1).
상기 제어부는, 상기 메인 메모리 셀의 상기 컬럼 어드레스가 상기 결함 메모리 셀들 중 첫번째 결함 메모리 셀의 컬럼 어드레스보다 앞설 때, 상기 메인 메모리 셀의 쉬프트 값을 "0"으로 생성하는 반도체 장치.According to claim 1,
The control unit is configured to generate a shift value of the main memory cell as “0” when the column address of the main memory cell precedes the column address of a first defective memory cell among the defective memory cells.
상기 제어부는, 상기 메인 메모리 셀의 상기 컬럼 어드레스가 i번째 참조 컬럼 어드레스와 같거나 뒤서고 (i+1)번째 참조 컬럼 어드레스보다 앞설 때, 상기 메인 메모리 셀의 쉬프트 값을 "i"로 생성하는 반도체 장치.According to claim 1,
The control unit generates the shift value of the main memory cell as “i” when the column address of the main memory cell is equal to or after the i-th reference column address and precedes the (i+1)-th reference column address. semiconductor device.
상기 제어부는, 상기 메인 메모리 셀의 상기 컬럼 어드레스가 n번째 참조 컬럼 어드레스와 같거나 뒤설 때, 상기 메인 메모리 셀의 쉬프트 값을 "n"으로 생성하고,
상기 n번째 참조 컬럼 어드레스는, 상기 결함 메모리 셀들 중 마지막 결함 메모리 셀인 n번째 결함 메모리 셀의 컬럼 어드레스보다 "n-1"만큼 앞선 컬럼 어드레스인 반도체 장치.According to claim 1,
The control unit generates a shift value of the main memory cell as “n” when the column address of the main memory cell is equal to or behind an n-th reference column address;
The n-th reference column address is a column address that precedes a column address of an n-th defective memory cell that is a last defective memory cell among the defective memory cells by “n-1”.
상기 제어부는, 상기 쉬프트된 메모리 셀들의 위치들에 상기 제1 비트들을 배치하고 상기 결함 메모리 셀들의 위치들에 더미 비트들을 배치함으로써 제2 비트들을 병렬적으로 생성하고, 상기 제2 비트들을 상기 쉬프트된 메모리 셀들 및 상기 결함 메모리 셀들에 라이트하는 반도체 장치.According to claim 1,
The controller generates second bits in parallel by arranging the first bits at positions of the shifted memory cells and dummy bits at positions of the defective memory cells, and generates the second bits in the shifted positions. A semiconductor device for writing to the old memory cells and the defective memory cells.
상기 제어부는, 상기 쉬프트 값들에 각각 대응하는 하나 이상의 인코딩 벡터들을 생성하고, 상기 인코딩 벡터들 중 서로 다른 값들을 가진 연속된 인코딩 벡터들의 사이에 더미 인코딩 벡터들을 삽입하고, 상기 인코딩 벡터들에 근거하여 상기 제1 비트들을 배치하고 상기 더미 인코딩 벡터들에 근거하여 상기 더미 비트들을 배치하는 반도체 장치.8. The method of claim 7,
The controller generates one or more encoding vectors respectively corresponding to the shift values, inserts dummy encoding vectors between consecutive encoding vectors having different values among the encoding vectors, and based on the encoding vectors and disposing the first bits and disposing the dummy bits based on the dummy encoding vectors.
상기 제어부는, 상기 쉬프트된 메모리 셀들 및 상기 결함 메모리 셀들로부터 상기 제2 비트들을 리드하고, 상기 쉬프트 값들에 근거하여 상기 제2 비트들로부터 상기 더미 비트들을 제거함으로써 상기 제1 비트들을 병렬적으로 복구하는 반도체 장치.8. The method of claim 7,
The controller reads the second bits from the shifted memory cells and the defective memory cells, and restores the first bits in parallel by removing the dummy bits from the second bits based on the shift values. semiconductor device.
상기 제어부는, 상기 쉬프트 값들에 각각 대응하는 하나 이상의 디코딩 벡터들을 생성하고, 상기 디코딩 벡터들에 근거하여 상기 제1 비트들을 복구하는 반도체 장치.10. The method of claim 9,
The control unit generates one or more decoding vectors corresponding to the shift values, respectively, and recovers the first bits based on the decoding vectors.
상기 메인 메모리 셀들 및 상기 스페어 메모리 셀들은 단일의 로우 어드레스에 대응하는 반도체 장치.According to claim 1,
The main memory cells and the spare memory cells correspond to a single row address.
하나 이상의 결함 신호 라인들의 결함 정보에 근거하여 상기 메인 신호 라인들에 각각 대응하는 쉬프트 값들을 생성하고, 하나 이상의 제1 신호들을 상기 메인 신호 라인들로부터 상기 쉬프트 값들만큼 스페어 신호 라인 방향으로 각각 쉬프트된 신호 라인들로 전송하도록 구성된 제1 반도체 장치; 및
상기 쉬프트 값들을 동일하게 생성하고 상기 쉬프트 값들에 근거하여 상기 제1 신호들을 상기 쉬프트된 신호 라인들로부터 수신하도록 구성된 제2 반도체 장치를 포함하되,
상기 제1 반도체 장치는, 메인 신호 라인의 위치를 상기 결함 정보에 근거한 하나 이상의 참조 위치들과 순차적으로 비교함으로써 상기 메인 신호 라인에 대응하는 쉬프트 값을 생성하고,
상기 참조 위치들 중 i번째 참조 위치는 상기 결함 신호 라인들 중 i번째 결함 신호 라인의 위치보다 (i-1)만큼 앞선 위치인 반도체 시스템.one or more main signal lines and one or more spare signal lines;
Shift values corresponding to each of the main signal lines are generated based on defect information of one or more defective signal lines, and one or more first signals are respectively shifted from the main signal lines in the direction of the spare signal line by the shift values. a first semiconductor device configured to transmit to the signal lines; and
a second semiconductor device configured to equally generate the shift values and to receive the first signals from the shifted signal lines based on the shift values,
the first semiconductor device generates a shift value corresponding to the main signal line by sequentially comparing the position of the main signal line with one or more reference positions based on the defect information;
The i-th reference position among the reference positions is a position preceding the position of the i-th defect signal line among the defect signal lines by (i-1).
상기 제1 반도체 장치는, 상기 메인 신호 라인의 상기 위치가 상기 결함 신호 라인들 중 첫번째 결함 신호 라인의 위치보다 앞설 때, 상기 메인 신호 라인의 쉬프트 값을 "0"으로 생성하는 반도체 시스템.13. The method of claim 12,
The first semiconductor device generates a shift value of the main signal line as “0” when the position of the main signal line precedes the position of a first defect signal line among the defect signal lines.
상기 제1 반도체 장치는, 상기 메인 신호 라인의 상기 위치가 i번째 참조 위치와 같거나 뒤서고 (i+1)번째 참조 위치보다 앞설 때, 상기 메인 신호 라인의 쉬프트 값을 "i"로 생성하는 반도체 시스템.13. The method of claim 12,
The first semiconductor device generates a shift value of the main signal line as “i” when the position of the main signal line is equal to or behind the i-th reference position and precedes the (i+1)-th reference position. semiconductor system.
상기 제1 반도체 장치는, 상기 메인 신호 라인의 상기 위치가 n번째 참조 위치와 같거나 뒤설 때, 상기 메인 신호 라인의 쉬프트 값을 "n"으로 생성하고,
상기 n번째 참조 위치는, 상기 결함 신호 라인들 중 마지막 결함 신호 라인인 n번째 결함 신호 라인의 위치보다 "n-1"만큼 앞선 위치인 반도체 시스템.13. The method of claim 12,
the first semiconductor device generates a shift value of the main signal line as “n” when the position of the main signal line is equal to or behind an n-th reference position;
The n-th reference position is a position preceding a position of an n-th defect signal line which is a last defect signal line among the defect signal lines by “n-1”.
상기 제1 반도체 장치는, 상기 쉬프트된 신호 라인들의 위치들에 상기 제1 신호들을 배치하고 상기 결함 신호 라인들의 위치들에 더미 신호들을 배치함으로써 제2 신호들을 병렬적으로 생성하고, 상기 제2 신호들을 상기 쉬프트된 신호 라인들 및 상기 결함 신호 라인들로 전송하는 반도체 시스템.13. The method of claim 12,
The first semiconductor device generates second signals in parallel by arranging the first signals at positions of the shifted signal lines and dummy signals at positions of the defect signal lines, and the second signal are transmitted to the shifted signal lines and the defect signal lines.
상기 제1 반도체 장치는, 상기 쉬프트 값들에 각각 대응하는 하나 이상의 인코딩 벡터들을 생성하고, 상기 인코딩 벡터들 중 서로 다른 값들을 가진 연속된 인코딩 벡터들의 사이에 더미 인코딩 벡터들을 삽입하고, 상기 인코딩 벡터들 및 더미 인코딩 벡터들에 근거하여 상기 제1 신호들 및 상기 더미 신호들을 배치하는 반도체 시스템.19. The method of claim 18,
The first semiconductor device generates one or more encoding vectors respectively corresponding to the shift values, inserts dummy encoding vectors between consecutive encoding vectors having different values among the encoding vectors, and selects the encoding vectors. and disposing the first signals and the dummy signals based on dummy encoding vectors.
상기 제2 반도체 장치는 상기 쉬프트된 신호 라인들 및 상기 결함 신호 라인들로부터 상기 제2 신호들을 수신하고, 상기 쉬프트 값들에 근거하여 상기 제2 신호들로부터 더미 비트들을 제거함으로써 상기 제1 신호들을 병렬적으로 복구하는 반도체 시스템.19. The method of claim 18,
The second semiconductor device receives the second signals from the shifted signal lines and the defective signal lines, and parallelizes the first signals by removing dummy bits from the second signals based on the shift values. A semiconductor system that recovers from the enemy.
상기 제2 반도체 장치는, 상기 쉬프트 값들에 각각 대응하는 하나 이상의 디코딩 벡터들을 생성하고, 상기 디코딩 벡터들에 근거하여 상기 제1 신호들을 복구하는 반도체 시스템.21. The method of claim 20,
The second semiconductor device generates one or more decoding vectors respectively corresponding to the shift values, and recovers the first signals based on the decoding vectors.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170107232A KR102342315B1 (en) | 2017-08-24 | 2017-08-24 | Semiconductor apparatus and semiconductor system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170107232A KR102342315B1 (en) | 2017-08-24 | 2017-08-24 | Semiconductor apparatus and semiconductor system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190021867A KR20190021867A (en) | 2019-03-06 |
KR102342315B1 true KR102342315B1 (en) | 2021-12-24 |
Family
ID=65761190
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170107232A KR102342315B1 (en) | 2017-08-24 | 2017-08-24 | Semiconductor apparatus and semiconductor system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102342315B1 (en) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111609654B (en) | 2019-02-25 | 2022-03-08 | Lg电子株式会社 | Entrance refrigerator and refrigerator |
CN111609656A (en) | 2019-02-25 | 2020-09-01 | Lg电子株式会社 | Entrance refrigerator and refrigerator |
CN111609648A (en) | 2019-02-25 | 2020-09-01 | Lg电子株式会社 | Entrance refrigerator and refrigerator |
CN111609649B (en) | 2019-02-25 | 2022-01-18 | Lg电子株式会社 | Entrance refrigerator and refrigerator |
CN111609650A (en) | 2019-02-25 | 2020-09-01 | Lg电子株式会社 | Entrance refrigerator and refrigerator |
EP3699526A1 (en) | 2019-02-25 | 2020-08-26 | LG Electronics Inc. | Entrance refrigerator |
CN111609647B (en) | 2019-02-25 | 2021-11-05 | Lg电子株式会社 | Entrance refrigerator and refrigerator |
CN111609651B (en) | 2019-02-25 | 2022-06-28 | Lg电子株式会社 | Entrance refrigerator and refrigerator |
CN111609655B (en) | 2019-02-25 | 2021-12-21 | Lg电子株式会社 | Entrance refrigerator and refrigerator |
EP3699521B1 (en) | 2019-02-25 | 2023-09-06 | LG Electronics Inc. | Entrance refrigerator |
-
2017
- 2017-08-24 KR KR1020170107232A patent/KR102342315B1/en active IP Right Grant
Non-Patent Citations (3)
Title |
---|
A.-C. Hsieh 외, "TSV Redundancy: Architecture and Design Issues in 3-D IC," IEEE Transactions on Very Large Scale Integration (VLSI) Systems, vol. 20, no. 4, 2012. 04.* |
K. H. Choi 외, "A Decoupled Bit Shifting Technique Using Data Encoding/Decoding for DRAM Redundancy Repair," IEICE Electronics Express, 2017. 06.* |
T. Namekawa 외, "Dynamically Shift-Switched Dataline Redundancy Suitable for DRAM Macro with Wide Data Bus," IEEE Journal of Solid-State Circuits, vol. 35, no. 5, 2000. 05.* |
Also Published As
Publication number | Publication date |
---|---|
KR20190021867A (en) | 2019-03-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102342315B1 (en) | Semiconductor apparatus and semiconductor system | |
US10074443B2 (en) | Semiconductor device including fuse circuit | |
CN101171641B (en) | Use of data latches in cache operations of non-volatile memories | |
US8867286B2 (en) | Repairable multi-layer memory chip stack and method thereof | |
US8498153B2 (en) | Semiconductor memory device and method of operating the same | |
CN101512668A (en) | Pseudo random and command driven bit compensation for the cycling effects in flash memory and methods therefor | |
US9324407B2 (en) | Semiconductor apparatus capable of preventing refresh error and memory system using the same | |
US9312032B2 (en) | Semiconductor memory apparatus and data processing system with main memory blocks and redundant memory blocks sharing a common global data line | |
EP2962304A1 (en) | Sub-block disabling in 3d memory | |
CN107408411B (en) | Memory device and control method thereof | |
KR102336458B1 (en) | Non-volatile memory device and test system therof | |
CN105321576A (en) | Semiconductor memory device and method for operating the same | |
JP2009176384A (en) | Semiconductor memory device | |
CN104798136A (en) | Memory cell array with reserved sector for storing configuration information | |
CN103198863A (en) | 2-transistor flash memory and programming method of 2-transistor flash memory | |
KR20180043432A (en) | Memory system and operation method of memory device | |
CN1248236C (en) | Semiconductor memory | |
CN103310849B (en) | The method of testing of test circuit, accumulator system and accumulator system | |
KR101131569B1 (en) | Non-volatile memory apparatus, repair circuit and d read out method of code addressable memory data | |
CN107767916A (en) | Memory device and the system for including it | |
WO2007023545A1 (en) | Memory device having redundancy repairing function | |
US6496428B2 (en) | Semiconductor memory | |
CN102543171A (en) | Phase change memory with redundant circuit and redundancy method for phase change memory | |
CN105047226A (en) | Semiconductor memory device and operating method thereof | |
KR20150072043A (en) | Semiconductor device |
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 |