KR20200071484A - 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 메모리 시스템 - Google Patents
불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 메모리 시스템 Download PDFInfo
- Publication number
- KR20200071484A KR20200071484A KR1020180159264A KR20180159264A KR20200071484A KR 20200071484 A KR20200071484 A KR 20200071484A KR 1020180159264 A KR1020180159264 A KR 1020180159264A KR 20180159264 A KR20180159264 A KR 20180159264A KR 20200071484 A KR20200071484 A KR 20200071484A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- write data
- write
- read
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/107—Programming all cells in an array, sector or block to the same state prior to flash erasing
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- 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/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1816—Testing
- G11B2020/1823—Testing wherein a flag is set when errors are detected or qualified
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- 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
- G11C2029/0409—Online test
-
- 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
- G11C2029/0411—Online error correction
-
- 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
- G11C2029/4402—Internal storage of test result, quality data, chip identification, repair information
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/564—Miscellaneous aspects
- G11C2211/5646—Multilevel memory with flag bits, e.g. for showing that a "first page" of a word line is programmed but not a "second page"
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/564—Miscellaneous aspects
- G11C2211/5647—Multilevel memory with bit inversion arrangement
-
- 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/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
Description
도 2는 도 1의 메모리 시스템의 동작 방법의 예를 보여주는 순서도이다.
도 3은 도 1의 불휘발성 메모리 장치가 제어기로부터 전송된 제1 쓰기 데이터를 기입하는 비교 및 쓰기 동작을 수행하는 과정의 예를 보여준다.
도 4는 본 발명의 실시 예에 따른 불휘발성 메모리 장치가 데이터를 읽는 읽기 동작을 수행하는 과정의 예를 보여준다.
도 5는 본 발명의 수정 예에 따른 메모리 시스템을 보여주는 블록도이다.
도 6은 도 5의 메모리 시스템의 동작 방법의 예를 보여주는 순서도이다.
도 7은 도 5의 제어기가 데이터를 불휘발성 메모리 장치에 기입하는 비교 및 쓰기 동작을 수행하는 과정의 예를 보여준다.
도 8은 도 5의 제어기가 불휘발성 메모리 장치로부터 데이터를 읽는 읽기 동작을 수행하는 과정의 예를 보여준다.
도 9는 5의 메모리 시스템의 동작 방법의 다른 예를 보여주는 순서도이다.
도 10은 도 5의 제어기가 데이터를 불휘발성 메모리 장치에 기입하는 비교 및 쓰기 동작을 수행하는 과정의 예를 보여준다.
도 11은 도 5의 제어기가 불휘발성 메모리 장치로부터 데이터를 읽는 읽기 동작을 수행하는 과정의 예를 보여준다.
도 12는 5의 메모리 시스템의 동작 방법의 다른 예를 보여주는 순서도이다.
도 13은 도 5의 제어기가 데이터를 불휘발성 메모리 장치에 기입하는 비교 및 쓰기 동작을 수행하는 과정의 예를 보여준다.
도 14는 도 5의 제어기가 불휘발성 메모리 장치로부터 데이터를 읽는 읽기 동작을 수행하는 과정의 예를 보여준다.
도 15는 본 발명의 응용 예에 따른 메모리 시스템을 보여준다.
120, 120: 제어기
Claims (20)
- 메모리 셀들을 포함하는 메모리 셀 블록; 그리고
상기 메모리 셀들에 기입될 제1 쓰기 데이터를 외부 장치로부터 수신하고, 상기 제1 쓰기 데이터를 이용하여 상기 메모리 셀들에 대해 비교 및 쓰기 동작을 수행하도록 구성되는 주변 블록을 포함하고,
상기 비교 및 쓰기 동작은:
상기 주변 블록이 상기 메모리 셀들로부터 읽기 데이터를 읽는 동작;
상기 주변 블록이 상기 제1 쓰기 데이터를 반전하여 제2 쓰기 데이터를 생성하는 동작;
상기 주변 블록이 상기 제1 쓰기 데이터에 제1 플래그 비트를 추가하여 제3 쓰기 데이터를 생성하고, 그리고 상기 제2 쓰기 데이터에 제2 플래그 비트를 추가하여 제4 쓰기 데이터를 생성하는 동작;
상기 주변 블록이 상기 제3 및 제4 쓰기 데이터들에 대해 각각 보강 동작을 수행하여 제5 및 제6 쓰기 데이터들을 각각 생성하는 동작; 그리고
상기 주변 블록이 상기 제5 및 제6 쓰기 데이터들을 상기 읽기 데이터와 각각 비교하고, 비교의 결과에 따라 상기 제5 및 제6 쓰기 데이터들 중 하나를 상기 메모리 셀들에 기입하는 동작을 포함하는 불휘발성 메모리 장치. - 제1항에 있어서,
상기 보강 동작은 상기 제1 플래그 비트 및 상기 제2 플래그 비트의 무결성을 향상하는 불휘발성 메모리 장치. - 제1항에 있어서,
상기 보강 동작은 상기 주변 블록이 상기 제3 쓰기 데이터에 상기 제1 플래그 비트를 더 추가하고, 그리고 상기 제4 쓰기 데이터에 상기 제2 플래그 비트를 더 추가하는 것을 포함하는 불휘발성 메모리 장치. - 제3항에 있어서,
상기 주변 블록은 상기 메모리 셀들에 대해 읽기 동작을 수행하도록 더 구성되고,
상기 읽기 동작은:
상기 주변 블록이 상기 메모리 셀들로부터 제1 읽기 데이터를 읽는 동작;
상기 주변 블록이 상기 제1 읽기 데이터에서 플래그 비트들을 검출하고, 상기 제1 읽기 데이터에서 상기 플래그 비트들을 제거하여 제2 읽기 데이터를 생성하는 동작; 그리고
상기 주변 블록이 상기 플래그 비트들에 따라 상기 제2 읽기 데이터, 상기 제2 읽기 데이터의 반전 데이터, 또는 상기 제2 읽기 데이터 및 상기 반전 데이터를 출력하는 동작을 포함하는 불휘발성 메모리 장치. - 제4항에 있어서,
상기 플래그 비트들 중 절반을 넘는 비트들이 상기 제2 플래그 비트에 대응할 때, 상기 주변 블록은 상기 제2 읽기 데이터의 상기 반전 데이터를 출력하는 불휘발성 메모리 장치. - 제4항에 있어서,
상기 플래그 비트들 모두가 상기 제2 플래그 비트에 대응할 때, 상기 주변 블록은 상기 제2 읽기 데이터의 상기 반전 데이터를 출력하는 불휘발성 메모리 장치. - 제4항에 있어서,
상기 플래그 비트들 중 일부가 상기 제1 플래그 비트에 대응하고 나머지 일부가 상기 제2 플래그 비트에 대응할 때, 상기 주변 블록은 상기 제2 읽기 데이터 및 상기 제2 읽기 데이터의 반전 데이터를 모두 출력하는 불휘발성 메모리 장치. - 제1항에 있어서,
상기 보강 동작은 상기 주변 블록이 상기 제3 쓰기 데이터 및 상기 제4 쓰기 데이터에 대해 각각 에러 정정 인코딩을 수행하는 것을 포함하는 불휘발성 메모리 장치. - 제1항에 있어서,
상기 주변 블록은 상기 메모리 셀들에 대해 읽기 동작을 수행하도록 더 구성되고,
상기 읽기 동작은:
상기 주변 블록이 상기 메모리 셀들로부터 제1 읽기 데이터를 읽는 동작;
상기 주변 블록이 상기 제1 읽기 데이터에 대해 에러 정정 디코딩을 수행하여 제2 읽기 데이터를 생성하는 동작;
상기 주변 블록이 상기 제2 읽기 데이터로부터 플래그 비트를 검출하고, 상기 제2 읽기 데이터에서 상기 플래그 비트를 제거하여 제3 읽기 데이터를 생성하는 동작;
상기 주변 블록이 상기 플래그 비트에 따라 상기 제3 읽기 데이터, 상기 제3 읽기 데이터의 반전 데이터, 또는 상기 제3 읽기 데이터 및 상기 반전 데이터 모두를 출력하는 동작을 포함하는 불휘발성 메모리 장치. - 제1항에 있어서,
상기 주변 블록은 상기 제5 쓰기 데이터와 상기 읽기 데이터 사이의 제1 해밍 거리를 계산하고, 상기 제6 쓰기 데이터와 상기 읽기 데이터 사이의 제2 해밍 거리를 계산하고, 상기 제1 해밍 거리가 상기 제2 해밍 거리보다 클 때 상기 제6 쓰기 데이터를 상기 메모리 셀들에 기입하는 불휘발성 메모리 장치. - 메모리 셀들을 포함하는 불휘발성 메모리 장치; 그리고
상기 메모리 셀들에 기입될 제1 쓰기 데이터를 이용하여 상기 메모리 셀들에 대해 비교 및 쓰기 동작을 수행하도록 구성되는 제어기를 포함하고,
상기 비교 및 쓰기 동작은:
상기 제어기가 상기 메모리 셀들로부터 읽기 데이터를 읽는 동작;
상기 제어기가 상기 제1 쓰기 데이터를 반전하여 제2 쓰기 데이터를 생성하는 동작;
상기 제어기가 상기 제1 쓰기 데이터에 제1 플래그 비트를 추가하여 제3 쓰기 데이터를 생성하고, 그리고 상기 제2 쓰기 데이터에 제2 플래그 비트를 추가하여 제4 쓰기 데이터를 생성하는 동작;
상기 제어기가 상기 제3 및 제4 쓰기 데이터들에 대해 각각 보강 동작을 수행하여 제5 및 제6 쓰기 데이터들을 각각 생성하는 동작; 그리고
상기 제어기가 상기 제5 및 제6 쓰기 데이터들을 상기 읽기 데이터와 각각 비교하고, 비교의 결과에 따라 상기 제5 및 제6 쓰기 데이터들 중 하나를 상기 메모리 셀들에 기입하는 동작을 포함하는 메모리 시스템. - 제11항에 있어서,
상기 보강 동작은 상기 제어기가 상기 제3 쓰기 데이터에 상기 제1 플래그 비트를 더 추가하고, 그리고 상기 제4 쓰기 데이터에 상기 제2 플래그 비트를 더 추가하는 것을 포함하는 메모리 시스템. - 제12항에 있어서,
상기 제어기는 상기 제1 쓰기 데이터에 대해 제1 에러 정정 인코딩을 수행하고, 그리고 상기 제1 에러 정정 인코딩의 결과에 상기 제1 플래그 비트를 추가하여 상기 제3 쓰기 데이터를 생성하고,
상기 제어기는 상기 제2 쓰기 데이터에 대해 제2 에러 정정 인코딩을 수행하고, 그리고 상기 제2 에러 정정 인코딩의 결과에 상기 제2 플래그 비트를 추가하여 상기 제4 쓰기 데이터를 생성하는 메모리 시스템. - 제11항에 있어서,
상기 보강 동작은 상기 제어기가 상기 제3 쓰기 데이터 및 상기 제4 쓰기 데이터에 대해 각각 에러 정정 인코딩을 수행하는 것을 포함하는 메모리 시스템. - 제13항에 있어서,
상기 제어기는 상기 제3 쓰기 데이터 및 상기 제4 쓰기 데이터의 에러 정정 인코딩을 병렬로 수행하는 메모리 시스템. - 제11항에 있어서,
제2 불휘발성 메모리 장치를 더 포함하고,
상기 제어기는 쓰기 데이터를 상기 제1 쓰기 데이터 및 제2 쓰기 데이터로 분할하고, 상기 제2 쓰기 데이터를 이용하여 상기 제2 불휘발성 메모리 장치의 메모리 셀들에 대해 제2 비교 및 쓰기 동작을 수행하도록 더 구성되고,
상기 제2 비교 및 쓰기 동작은 상기 비교 및 쓰기 동작과 동시에 수행되는 메모리 시스템. - 제11항에 있어서,
상기 불휘발성 메모리 장치는 제1 불휘발성 메모리 장치 및 제2 불휘발성 메모리 장치를 포함하고, 상기 메모리 셀들은 상기 제1 불휘발성 메모리 장치의 제1 메모리 셀들 및 상기 제2 불휘발성 메모리 장치의 제2 메모리 셀들을 포함하고,
상기 제어기는 상기 제5 쓰기 데이터 및 상기 제6 쓰기 데이터 중 상기 하나를 분할하여 상기 제1 메모리 셀들 및 상기 제2 메모리 셀들에 각각 기입하도록 더 구성되는 메모리 시스템. - 메모리 셀들을 포함하는 불휘발성 메모리 장치; 그리고
상기 메모리 셀들에 기입될 제1 쓰기 데이터를 이용하여 상기 메모리 셀들에 대해 비교 및 쓰기 동작을 수행하도록 구성되는 제어기를 포함하고,
상기 비교 및 쓰기 동작은:
상기 제어기가 상기 메모리 셀들로부터 읽기 데이터를 읽는 동작;
상기 제어기가 상기 제1 쓰기 데이터에 대해 제1 인코딩을 수행하여 제2 쓰기 데이터를 생성하는 동작;
상기 제어기가 상기 제2 쓰기 데이터에 대해 제2 인코딩을 수행하여 제3 쓰기 데이터를 생성하는 동작;
상기 제어기가 상기 제3 쓰기 데이터를 반전하여 제4 쓰기 데이터를 생성하는 동작;
상기 제어기가 상기 제3 쓰기 데이터에 제1 플래그 비트를 추가하여 제5 쓰기 데이터를 생성하고, 그리고 상기 제4 쓰기 데이터에 제2 플래그 비트를 추가하여 제6 쓰기 데이터를 생성하는 동작; 그리고
상기 제어기가 상기 제5 및 제6 쓰기 데이터들을 상기 읽기 데이터와 각각 비교하고, 비교의 결과에 따라 상기 제5 및 제6 쓰기 데이터들 중 하나를 상기 메모리 셀들에 기입하는 동작을 포함하는 메모리 시스템. - 제18항에 있어서,
상기 제어기는 상기 메모리 셀들에 대해 읽기 동작을 수행하도록 더 구성되고,
상기 읽기 동작은:
상기 제어기가 상기 메모리 셀들로부터 제1 읽기 데이터를 읽는 동작;
상기 제어기가 상기 제1 읽기 데이터로부터 플래그 비트를 검출하고, 상기 제1 읽기 데이터로부터 상기 플래그 비트를 제거하여 제2 읽기 데이터를 생성하는 동작;
상기 제어기가 상기 플래그 비트에 따라 상기 제2 읽기 데이터를 유지하거나 반전하여 제3 읽기 데이터를 생성하는 동작;
상기 제어기가 상기 제3 읽기 데이터에 대해 상기 제2 인코딩에 대응하는 제2 디코딩을 수행하여 제4 읽기 데이터를 생성하는 동작;
상기 제어기가 상기 제4 읽기 데이터에 대해 상기 제1 인코딩에 대응하는 제1 디코딩을 수행하여 제5 읽기 데이터를 생성하는 동작; 그리고
상기 제1 디코딩이 성공이면, 상기 제어기가 상기 제5 읽기 데이터를 출력하는 동작을 포함하는 메모리 시스템. - 제19항에 있어서,
상기 읽기 동작은:
상기 제1 디코딩이 실패이면, 상기 제어기가 상기 제2 디코딩에 사용된 상기 제3 읽기 데이터의 반전 데이터에 대해 상기 제2 디코딩을 수행하여 제6 읽기 데이터를 생성하고, 상기 제어기가 상기 제6 읽기 데이터에 대해 상기 제1 디코딩을 수행하여 제7 읽기 데이터를 생성하고, 그리고 상기 제7 읽기 데이터에 대한 상기 제1 디코딩이 성공이면, 상기 제어기가 상기 제7 읽기 데이터를 출력하는 동작을 더 포함하는 메모리 시스템.
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020180159264A KR102774807B1 (ko) | 2018-12-11 | 2018-12-11 | 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 메모리 시스템 |
| US16/506,307 US11144388B2 (en) | 2018-12-11 | 2019-07-09 | Nonvolatile memory device and memory system including nonvolatile memory device |
| DE102019123510.3A DE102019123510B4 (de) | 2018-12-11 | 2019-09-03 | Nichtflüchtige Speichervorrichtung und Speichersystem, das die nichtflüchtige Speichervorrichtung umfasst |
| CN201910847251.6A CN111312316B (zh) | 2018-12-11 | 2019-09-09 | 非易失性存储器装置和存储器系统 |
| US17/479,067 US12013754B2 (en) | 2018-12-11 | 2021-09-20 | Nonvolatile memory device and memory system including nonvolatile memory device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020180159264A KR102774807B1 (ko) | 2018-12-11 | 2018-12-11 | 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 메모리 시스템 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| KR20200071484A true KR20200071484A (ko) | 2020-06-19 |
| KR102774807B1 KR102774807B1 (ko) | 2025-03-04 |
Family
ID=70859491
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020180159264A Active KR102774807B1 (ko) | 2018-12-11 | 2018-12-11 | 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 메모리 시스템 |
Country Status (4)
| Country | Link |
|---|---|
| US (2) | US11144388B2 (ko) |
| KR (1) | KR102774807B1 (ko) |
| CN (1) | CN111312316B (ko) |
| DE (1) | DE102019123510B4 (ko) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR102774807B1 (ko) * | 2018-12-11 | 2025-03-04 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 메모리 시스템 |
| US10937495B2 (en) * | 2019-07-02 | 2021-03-02 | Winbond Electronics Corp. | Resistive memory apparatus and method for writing data thereof |
| KR102790220B1 (ko) * | 2019-07-03 | 2025-04-03 | 에스케이하이닉스 주식회사 | 패일 정보 제어회로, 이를 포함하는 반도체 장치 및 반도체 장치의 패일 정보 제어방법 |
| TWI737495B (zh) * | 2020-09-17 | 2021-08-21 | 大陸商珠海南北極科技有限公司 | 記憶體裝置的控制方法 |
| KR20230022060A (ko) * | 2021-08-06 | 2023-02-14 | 삼성전자주식회사 | 설정 데이터를 저장하는 메모리 장치 및 그 동작방법 |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20130182488A1 (en) * | 2011-07-14 | 2013-07-18 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory and data processing method in non-volatile semiconductor memory |
| KR20140051687A (ko) * | 2012-10-23 | 2014-05-02 | 삼성전자주식회사 | 불휘발성 메모리 및 컨트롤러를 포함하는 메모리 시스템, 그리고 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법 |
| KR20180020006A (ko) * | 2016-08-17 | 2018-02-27 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
| KR20180072026A (ko) * | 2016-12-20 | 2018-06-29 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러, 이를 포함하는 메모리 시스템, 및 그의 동작 방법 |
| KR20180087496A (ko) * | 2017-01-23 | 2018-08-02 | 에스케이하이닉스 주식회사 | 메모리 시스템 |
Family Cites Families (21)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05164607A (ja) * | 1991-12-10 | 1993-06-29 | Murata Mfg Co Ltd | 温度補償型焦電型赤外線検出器 |
| KR100460708B1 (ko) | 1997-09-23 | 2005-05-24 | 삼성전자주식회사 | 반도체 메모리 테스트용 에러체크 및 정정회로 |
| US7549011B2 (en) | 2001-08-30 | 2009-06-16 | Micron Technology, Inc. | Bit inversion in memory devices |
| JP2006004475A (ja) * | 2004-06-15 | 2006-01-05 | Toshiba Corp | 半導体集積回路装置 |
| KR100613463B1 (ko) * | 2005-07-06 | 2006-08-22 | 주식회사 하이닉스반도체 | 반도체 장치의 데이터 출력장치 및 출력방법 |
| KR100827702B1 (ko) | 2006-11-01 | 2008-05-07 | 삼성전자주식회사 | 가변저항 반도체 메모리 장치 |
| US7577028B2 (en) | 2007-03-23 | 2009-08-18 | Intel Corporation | Memory storage technique for a bi-directionally programmable memory device |
| JP4719236B2 (ja) * | 2008-03-21 | 2011-07-06 | 株式会社東芝 | 半導体記憶装置及び半導体記憶システム |
| US8583986B2 (en) * | 2008-12-17 | 2013-11-12 | Seagate Technology Llc | Solid-state memory with error correction coding |
| KR101650130B1 (ko) * | 2010-05-14 | 2016-08-24 | 삼성전자주식회사 | 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 카피-백 방법 |
| US8848465B2 (en) | 2011-07-06 | 2014-09-30 | Samsung Electronics Co., Ltd. | Memory devices including selective RWW and RMW decoding |
| JP5942781B2 (ja) * | 2012-04-16 | 2016-06-29 | ソニー株式会社 | 記憶制御装置、メモリシステム、情報処理システム、および、記憶制御方法 |
| US9183082B2 (en) * | 2013-01-29 | 2015-11-10 | Qualcomm Incorporated | Error detection and correction of one-time programmable elements |
| CN104142892B (zh) * | 2013-05-09 | 2017-08-11 | 华为技术有限公司 | 一种数据读写方法、装置及系统 |
| KR20160025927A (ko) * | 2014-08-28 | 2016-03-09 | 에스케이하이닉스 주식회사 | 반도체 메모리 장치 |
| US9979416B2 (en) | 2014-12-10 | 2018-05-22 | Rambus Inc. | Memory controller and method of data bus inversion using an error detection correction code |
| JP6272581B2 (ja) * | 2015-09-07 | 2018-01-31 | 三菱電機株式会社 | 符号化装置、復号装置及び送信装置 |
| KR20170032052A (ko) * | 2015-09-14 | 2017-03-22 | 에스케이하이닉스 주식회사 | 에러정정 장치 및 에러정정 방법 |
| JP6606039B2 (ja) | 2016-09-09 | 2019-11-13 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
| KR20180085396A (ko) * | 2017-01-18 | 2018-07-27 | 에스케이하이닉스 주식회사 | 비휘발성 메모리 장치, 및 그의 데이터 라이트 동작방법 |
| KR102774807B1 (ko) * | 2018-12-11 | 2025-03-04 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 메모리 시스템 |
-
2018
- 2018-12-11 KR KR1020180159264A patent/KR102774807B1/ko active Active
-
2019
- 2019-07-09 US US16/506,307 patent/US11144388B2/en active Active
- 2019-09-03 DE DE102019123510.3A patent/DE102019123510B4/de active Active
- 2019-09-09 CN CN201910847251.6A patent/CN111312316B/zh active Active
-
2021
- 2021-09-20 US US17/479,067 patent/US12013754B2/en active Active
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20130182488A1 (en) * | 2011-07-14 | 2013-07-18 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory and data processing method in non-volatile semiconductor memory |
| KR20140051687A (ko) * | 2012-10-23 | 2014-05-02 | 삼성전자주식회사 | 불휘발성 메모리 및 컨트롤러를 포함하는 메모리 시스템, 그리고 불휘발성 메모리에 데이터를 프로그램하는 프로그램 방법 |
| KR20180020006A (ko) * | 2016-08-17 | 2018-02-27 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
| KR20180072026A (ko) * | 2016-12-20 | 2018-06-29 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러, 이를 포함하는 메모리 시스템, 및 그의 동작 방법 |
| KR20180087496A (ko) * | 2017-01-23 | 2018-08-02 | 에스케이하이닉스 주식회사 | 메모리 시스템 |
Also Published As
| Publication number | Publication date |
|---|---|
| DE102019123510A1 (de) | 2020-06-18 |
| CN111312316A (zh) | 2020-06-19 |
| US12013754B2 (en) | 2024-06-18 |
| DE102019123510B4 (de) | 2024-03-21 |
| CN111312316B (zh) | 2024-08-13 |
| US11144388B2 (en) | 2021-10-12 |
| US20200183784A1 (en) | 2020-06-11 |
| KR102774807B1 (ko) | 2025-03-04 |
| US20220004457A1 (en) | 2022-01-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US9043678B2 (en) | Detecting effect of corrupting event on preloaded data in non-volatile memory | |
| KR102774807B1 (ko) | 불휘발성 메모리 장치 및 불휘발성 메모리 장치를 포함하는 메모리 시스템 | |
| US20150085571A1 (en) | Updating read voltages | |
| US20100162083A1 (en) | Flash memory controller, error correction code controller therein, and the methods and systems thereof | |
| US10114693B2 (en) | Memory systems and electronic systems performing an adaptive error correction operation with pre-checked error rate, and methods of operating the memory systems | |
| US11367502B2 (en) | Bad block management for memory sub-systems | |
| JP2012118979A (ja) | Nandフラッシュ・メモリにおける確率論的多層エラー訂正のためのシステム、方法、およびコンピュータ・プログラム | |
| WO2008076550A1 (en) | Method, system, and apparatus for ecc protection of small data structures | |
| US11550663B2 (en) | Changing of error correction codes based on the wear of a memory sub-system | |
| WO2009156870A1 (en) | Method and apparatus for error correction | |
| US11374595B2 (en) | Method for selectively inverting words to be written to a memory and device for implementing same | |
| US11709733B2 (en) | Metadata-assisted encoding and decoding for a memory sub-system | |
| US8549384B1 (en) | Method and apparatus for determining, based on an error correction code, one or more locations to store data in a flash memory | |
| CN110100236B (zh) | 数据读取方法及闪存设备 | |
| CN113094307B (zh) | 映射信息管理方法、存储器存储装置及存储器控制器 | |
| TWI541818B (zh) | 於記憶體陣列編碼資料之技術 | |
| TWI908216B (zh) | 記憶體控制方法及記憶體儲存裝置 | |
| CN111240584A (zh) | 存储器的控制方法及非暂态电脑可读媒体 | |
| US11632137B2 (en) | Early decoding termination for a memory sub-system | |
| US20220058087A1 (en) | Error read flow component |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20181211 |
|
| PG1501 | Laying open of application | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20211209 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20181211 Comment text: Patent Application |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20230821 Patent event code: PE09021S01D |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20240402 Patent event code: PE09021S01D |
|
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20241125 |
|
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20250225 Patent event code: PR07011E01D |
|
| PR1002 | Payment of registration fee |
Payment date: 20250226 End annual number: 3 Start annual number: 1 |
|
| PG1601 | Publication of registration |