KR20140088212A - 장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들 - Google Patents
장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들 Download PDFInfo
- Publication number
- KR20140088212A KR20140088212A KR1020147014964A KR20147014964A KR20140088212A KR 20140088212 A KR20140088212 A KR 20140088212A KR 1020147014964 A KR1020147014964 A KR 1020147014964A KR 20147014964 A KR20147014964 A KR 20147014964A KR 20140088212 A KR20140088212 A KR 20140088212A
- Authority
- KR
- South Korea
- Prior art keywords
- memory cells
- pages
- valid
- page
- storing
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
장치들 및 유효 마스크를 저장하고 장치들을 동작시키는 방법들이 설명된다. 장치를 동작시키는 다수의 방법들은 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들과 연관되고 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 제공하는 유효 마스크를 저장하는 단계를 포함한다.
Description
본 개시는 일반적으로 반도체 메모리 장치들 및 방법들에 관한 것으로, 특히 장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들에 관한 것이다.
메모리 디바이스들은 전형적으로 컴퓨터들 또는 다른 전자 디바이스들에서 내부, 반도체, 집적 회로들로 제공된다. 휘발성 및 비휘발성 메모리를 포함하는 많은 상이한 타입들의 메모리가 존재한다. 휘발성 메모리는 그것의 정보, 예를 들어 데이터를 유지하기 위해 전력을 필요로 할 수 있고, 다른 것들 중에서 랜덤 액세스 메모리(RAM), 동적 랜덤 액세스 메모리(DRAM), 동기식 동적 랜덤 액세스 메모리(SDRAM), 및 정적 랜덤 액세스 메모리(SRAM)를 포함한다. 비휘발성 메모리는 전력이 공급되지 않을 때 저장된 정보를 유지함으로써 지속적 정보를 제공할 수 있고 다른 것들 중에서 NAND 플래시 메모리, NOR 플래시 메모리, 판독 전용 메모리(ROM), 전기적으로 소거가능한 프로그램가능 ROM(EEPROM), 소거가능한 프로그래가능 ROM(EPROM), 및 상 변화 랜덤 액세스 메모리(PCRAM)를 포함할 수 있다.
메모리 디바이스들은 고체 상태 드라이브(SSD)를 형성하기 위해 함께 결합될 수 있다. 고체 상태 드라이브는 비휘발성 메모리, 예를 들어 NAND 플래시 메모리 및 NOR 플래시 메모리를 포함할 수 있고/있거나, 다양한 다른 타입들의 비휘발성 및 휘발성 메모리 중에서 휘발성 메모리, 예를 들어 DRAM 및 SRAM을 포함할 수 있다. 질화물 층에 전하 트랩들의 정보를 저장하는 반도체-산화물-질화물-산화물-반도체 및 금속-산화물-질화물-산화물-반도체 커패시터 구조들을 사용한 플로팅 게이트 플래시 디바이스들 및 CTF(charge trap flash) 디바이스들을 포함하는 플래시 메모리 디바이스들은 광범위한 전자 응용들에 대한 비휘발성 메모리로 이용될 수 있다. 플래시 메모리 디바이스들은 전형적으로 고메모리 밀도, 고신뢰성, 및 저전력 소모를 허용하는 단일 트랜지스터 메모리 셀을 사용한다.
고체 상태 드라이브는 성능, 크기, 중량, 견고성, 동작 온도 범위, 및 전력 소모 면에서 하드 드라이브들에 비해 장점들을 가질 수 있으므로, SSD는 하드 디스크 드라이브들을 컴퓨팅 시스템에 대한 주요 저장 디바이스로 대체하기 위해 사용될 수 있다. 예를 들어, SSD들은 그들의 가동 부분으로 인해 자기 디스크 드라이브들과 비교할 때 우수한 성능을 가질 수 있으며, 이는 자기 디스크 드라이브들과 연관되는 검색 시간, 레이턴시, 및 다른 전기-기계 지연들을 회피할 수 있다. SSD 제조자들은 내부 배터리 서플라이를 사용하지 않을 수 있는 플래시 SSD들을 생성하기 위해 비휘발성 플래시 메모리를 사용할 수 있고, 따라서 드라이브가 보다 다목적이고 작게 되는 것을 허용한다.
SSD는 다수의 메모리 디바이스들, 예를 들어 다수의 메모리 칩들을 포함할 수 있다(본 명세서에 사용된 바와 같이, “다수의”어떤 것은 그러한 것들 중 하나 이상을 지칭할 수 있으며, 예를 들어 다수의 메모리 디바이스들은 하나 이상의 메모리 디바이스들을 지칭할 수 있음). 당해 기술에서 통상의 기술자가 이해하는 바와 같이, 메모리 칩은 다수의 다이들 및/또는 로직 유닛들(LUNs)을 포함할 수 있다. 각각의 다이는 그 위에 다수의 메모리 어레이들 및 주변 회로조직을 포함할 수 있다. 메모리 어레이들은 다수의 물리적 페이지들로 조직된 다수의 메모리 셀들을 포함할 수 있고, 물리적 페이지들은 다수의 블록들로 조직될 수 있다.
RAID(redundant array of independent devices)는 다수의 메모리 디바이스들 중에서 데이터를 분할하고/하거나 복제하는 컴퓨터 데이터 저장 방식들에 대한 상위 용어이다. RAID 어레이 내의 다수의 메모리 디바이스들은 단일 메모리 디바이스, 예를 들어 디스크로서 사용자 및 컴퓨터의 운영 체제에 나타날 수 있다.
블록의 다수의 페이지들과 같은 메모리 디바이스의 부분들은 손상될 수 있고 그들에 기록된 데이터 및/또는 그들로부터 판독된 데이터를 갖지 않을 수 있다. 손상되는 메모리 디바이스의 부분들은 마스터 레코드에 표시될 수 있다. 마스터 레코드의 부분들은 손상될 수도 있고, 따라서 메모리 디바이스의 손상된 부분들을 위치시키는 능력을 잃는다.
도 1은 본 개시의 다수의 실시예들에 따른 컴퓨팅 시스템의 형태인 장치의 기능 블록도이다.
도 2는 본 개시의 다수의 실시예들에 따른 컴퓨팅 시스템에 저장된 다수의 유효 마스크들의 표를 예시한다.
도 2는 본 개시의 다수의 실시예들에 따른 컴퓨팅 시스템에 저장된 다수의 유효 마스크들의 표를 예시한다.
본 개시는 장치들 및 유효 마스크(validity mask)를 저장하고 장치들을 동작시키는 방법들을 포함한다. 장치를 동작시키는 다수의 방법들은 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들과 연관되고 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들에 대한 유효 정보(validity information)를 제공하는 유효 마스크를 저장하는 단계를 포함한다.
본 개시의 이하의 상세한 설명에서, 그것의 일부를 형성하고, 본 개시의 다수의 실시예들이 어떻게 실시될 수 있는지가 예시로서 도시되는 첨부 도면들이 참조된다. 이러한 실시예들은 당해 기술에서 통상의 기술자들이 본 개시의 실시예들을 실시할 수 있게 하기 위해 충분히 상세하게 설명되고, 다른 실시예들이 이용될 수 있고 프로세서, 전기적, 및/또는 구조적 변경들이 본 개시의 범위로부터 벗어나는 것 없이 이루어질 수 있다는 점이 이해되어야 한다.
본 명세서에 사용된 바와 같이, 특히 도면들 내의 참조 번호들에 관한 지시어“N”은 그렇게 지시된 다수의 특정 특징이 본 개시의 다수의 실시예들에 포함될 수 있는 것을 표시한다. 게다가, 본 명세서에 사용된 바와 같이, “다수의”어떤 것은 하나 이상의 그러한 것들을 지칭할 수 있다. 예를 들어, 다수의 메모리 디바이스들은 하나 이상의 메모리 디바이스들을 지칭할 수 있다.
본 명세서의 도면들은 첫번째 숫자 또는 숫자들이 도면 번호에 상응하고 나머지 숫자들이 도면 내의 요소 또는 구성요소를 식별하는 번호 부여 규정을 따른다. 상이한 도면들 사이의 유사한 요소들 또는 구성요소들은 유사한 숫자들의 사용에 의해 식별될 수 있다. 예를 들어, 150은 도 1의 요소 “50”을 참조할 수 있고, 유사한 요소는 도 2의 250으로 참조될 수 있다. 이해되는 바와 같이, 본 명세서의 다양한 실시예들에 도시된 요소들은 본 개시의 다수의 추가 실시예들을 제공하도록 추가, 교환, 및/또는 제거될 수 있다. 게다가, 이해되는 바와 같이, 도면들에 제공되는 요소들의 비율 및 상대적 규모는 본 발명의 실시예들을 예시하도록 의도되고, 제한적인 의미로 해석되지 않아야 한다.
도 1은 본 개시의 다수의 실시예들에 따른 적어도 하나의 메모리 시스템(104)을 포함하는 컴퓨팅 시스템(100)의 형태인 장치의 기능 블록도이다. 도 1에 예시된 실시예에서, 메모리 시스템(104), 예를 들어 고체 상태 드라이브(SSD)는 물리적 호스트 인터페이스(106), 메모리 시스템 제어기(108), 예를 들어 SSD 제어기, 및 다수의 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)을 포함할 수 있다. 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)은 메모리 시스템에 저장 볼륨을 제공할 수 있다. 다수의 실시예들에서, 고체 상태 메모리 시스템 제어기(108)는 응용 주문형 집적 회로(ASIC)일 수 있으며, 제어기(108)는 예를 들어 ASIC의 형태로, 물리적 인터페이스(106) 및 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)을 포함하는 인쇄 회로 보드에 결합된다.
도 1에 예시된 바와 같이, 메모리 시스템 제어기(108), 예를 들어 고체 상태 메모리 시스템 제어기는 물리적 호스트 인터페이스(106) 및 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)에 결합될 수 있다. 물리적 호스트 인터페이스(106)는 메모리 시스템(104)과 호스트(102)와 같은 다른 디바이스 사이에서 정보를 전달하기 위해 사용될 수 있다. 호스트(102)는 메모리 액세스 디바이스, 예를 들어 프로세서를 포함할 수 있다. 당해 기술에서 통상의 기술자는“프로세서”가 다수의 프로세서들, 예컨대 병렬 처리 시스템, 다수의 코프로세서들 등을 의도할 수 있는 것을 이해할 것이다. 호스트들의 예들은 랩톱 컴퓨터들, 개인용 컴퓨터들, 디지털 카메라들, 디지털 레코딩 및 플레이백 디바이스들, 이동 전화들, PDA들, 메모리 카드 리더들, 인터페이스 허브들 등을 포함한다. 다수의 실시예들에 대해, 물리적 호스트 인터페이스(106)는 표준화된 물리적 인터페이스의 형태일 수 있다. 예를 들어, 메모리 시스템(104)이 컴퓨팅 시스템(100) 내의 정보 저장에 사용될 때, 물리적 호스트 인터페이스(106)는 다른 인터페이스들 중에서 SATA(serial advanced technology attachment) 물리적 인터페이스, PCIe(peripheral component interconnect express) 물리적 인터페이스, SCSI(small computer system interface) 인터페이스, SAS(serial attachment SCSI) 인터페이스, 또는 USB(universal serial bus) 물리적 인터페이스일 수 있다. 그러나, 일반적으로, 물리적 호스트 인터페이스(106)는 메모리 시스템(104)과 물리적 호스트 인터페이스(106)에 대한 호환가능 리셉터들을 갖는 호스트(102) 사이에서 제어, 어드레스, 정보, 예를 들어 데이터, 및 다른 신호들을 통과시키는 인터페이스를 제공할 수 있다.
고체 상태 메모리 시스템 제어기(108)는 다른 동작들 중에서 정보를 판독하며, 기록하고, 소거하기 위해 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)과 통신할 수 있다. 고체 상태 메모리 시스템 제어기(108)는 다수의 집적 회로들 및/또는 개별 구성요소들일 수 있는 펌웨어 및/또는 회로조직을 가질 수 있다. 다수의 실시예들에 대해, 고체 상태 메모리 시스템 제어기(108) 내의 회로조직은 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)을 가로질러 액세스를 제어하는 제어 회로조직 및 호스트(102)와 메모리 시스템(104) 사이에 변환 계층을 제공하는 회로조직을 포함할 수 있다. 따라서, 메모리 제어기는 적절한 신호를 적절한 I/O 연결에서 적절한 시간에 수신하기 위해 고체 상태 메모리 디바이스(110-1, . . ., 110-N)의 I/O 연결(도 1에 도시되지 않음)을 선택적으로 결합할 수 있다. 유사하게, 호스트(102)와 메모리 시스템(104) 사이의 통신 프로토콜은 고체 상태 메모리 디바이스(110-1, . . ., 110-N)의 액세스에 요구되는 것과 상이할 수 있다. 그 다음, 고체 상태 메모리 시스템 제어기(108)는 호스트(102)로부터 수신된 커맨드들을 고체 상태 메모리 디바이스(110-1, . . ., 110-N)에 원하는 액세스를 달성하는 적절한 커맨드들로 변환할 수 있다.
고체 상태 메모리 디바이스들(110-1, . . ., 110-N)은 함께 연관될 수 있는 다수의 메모리 셀들을 포함할 수 있다. 본 명세서에 사용된 바와 같이, 다수의 메모리 셀들은 페이지들, 블록들, 평면들, 다이들, 전체 어레이들, 또는 다른 연관성들과 같이 함께 연관될 수 있다. 예를 들어, 일부 메모리 어레이들은 메모리 셀들의 블록을 구성하는 메모리 셀들의 다수의 페이지들을 포함할 수 있다. 한 페이지의 메모리 셀들은 단일 동작으로부터 판독되거나 단일 동작에 기록될 수 있는 그들의 메모리 셀들이다. 모든 비트 라인 아키텍처들에서와 같은, 일부 경우들에서, 메모리 셀들의 페이지는 특정 워드 라인에 공통 결합되는 메모리 셀들의 행일 수 있다. 차폐된(shielded) 비트 라인 아키텍처들에서와 같은, 다른 아키텍처들에서, 한 페이지의 메모리 셀들은 특정 워드 라인에 공통 결합되는 메모리 셀들의 행의 모든 다른 메모리 셀일 수 있다(예를 들어, 특정 워드 라인에 공통 결합되는 메모리 셀들의 단일 행은 메모리 셀들의 2개의 페이지: "홀수" 페이지 및 "짝수" 페이지를 포함할 수 있음). 메모리 셀들의 페이지를 형성하는 메모리 셀들의 다른 연관성들은 과거, 현재, 또는 미래에 존재할 수 있다. 다수의 블록들은 메모리 셀들의 평면에 포함될 수 있다. 메모리 셀들의 다수의 평면들은 다이 상에 포함될 수 있다. 일 예로서, 128 GB 메모리 디바이스는 메모리 셀들의 페이지 당 4320 바이트의 데이터, 블록 당 128 페이지들, 평면 당 2048 블록들, 및 디바이스 당 16 평면들을 포함할 수 있는 메모리 셀들의 페이지들을 포함할 수 있다.
다수의 실시예들에서, 각각의 고체 상태 메모리 디바이스(110-1, . . ., 110-N)는 개별 채널에 의해 제어 회로조직(108)에 결합될 수 있다. 각각의 채널은 별개 채널 제어 회로조직과 연관될 수 있다.
제어기(108)는 각각의 채널 제어 회로에 결합된 에러 복구, 예를 들어 검출 및/또는 정정 회로조직(112), 예를 들어 ECC(error correction code) 회로조직 및/또는 하나보다 더 많은 채널과 사용될 수 있는 다수의 에러 복구, 예를 들어, 검출 및/또는 정정 회로들을 포함할 수 있다. 에러 복구 회로조직(112)은 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)로부터 판독된 정보와 연관되는 에러들을 검출하고/하거나 정정하도록 구성될 수 있다. 에러 복구 회로조직(112)은 단일 및/또는 멀티 레벨 셀(SLC/MLC) 동작에 다른 에러 복구 방식들을 제공하도록 구성될 수 있다.
RAID 어레이에서, 스트라이프 기록 동작은 복수의 페이지 기록 동작들, 예를 들어 비휘발성 메모리 제어 회로조직과 연관되는 각각의 채널 당 하나의 페이지 기록 동작을 포함할 수 있다. 다수의 실시예들에서, 스트라이프 기록 동작 내의 복수의 페이지 기록 동작들은 복수의 채널들을 가로질러 실질적으로 동시에 수행될 수 있다. 페이지 기록 동작은 메모리 셀들의 페이지에 액세스를 허용할 수 있다. 페이지 기록 커맨드는 원하는 채널 메모리 제어기에 송신, 예를 들어 큐잉되고 다수의 고체 상태 메모리 디바이스들(110-1, . . ., 110-N) 상에 실행될 수 있다. 예를 들어, 페이지 기록 동작은 고체 상태 메모리 디바이스(110-1, . . ., 110-N) 내의 메모리 셀들의 페이지의 크기에 따라 4 KB(kilobyte), 8KB, 또는 다른 볼륨의 사용자 데이터, 플러스 메타데이터를 포함할 수 있다. 페이지 기록 동작으로부터의 데이터는 채널 메모리 제어기에 의해 기록 버퍼로부터 고체 상태 메모리 디바이스(110-1, . . ., 110-N)로 전송될 수 있다. 스트라이프 기록 동작에 대한 기록 데이터는 호스트, 예를 들어 도 1의 호스트(102)로부터 수신될 수 있다.
기록 데이터는 복수의 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)의 저장 볼륨을 가로질러 스트라이프될 수 있다. 예를 들어, 호스트로부터 수신된 기록 데이터의 제 1 부분은 제 1 메모리 디바이스에 기록되며, 제 2 부분은 제 2 메모리 디바이스에 기록될 수 있는 등등이다. 데이터가 스트라이프 기반 동작으로 기록될 수 있지만, 데이터는 여전히 페이지 기반 동작으로 판독될 수 있다. 기록 데이터에 포함된 데이터, 예를 들어 메모리 셀들의 페이지에 대한 사용자 데이터 플러스 메타데이터는 유효 마스크를 포함할 수 있다. 유효 마스크는 다수의 유닛들, 예를 들어 데이터의 비트들을 포함할 수 있으며 데이터의 각각의 유닛은 스트라이프 기록 동작 동안 저장 볼륨을 가로질러 기록된 메모리 셀들의 각각의 페이지의 유효 상태(validity status)를 제공한다. 유효 마스크 내의 데이터의 유닛에 의해 제공되는 유효 상태는 메모리 셀들의 페이지에 유효 정보를 제공할 수 있다. 유효 마스크는 RAID 어레이 내의 다수의 메모리 디바이스들에 스트라이프된 데이터가 복구되고 있는 RAID 복구 동작 동안 사용될 수 있다. 유효 마스크는 데이터의 스트라이프 내의 메모리 셀들의 페이지로부터의 데이터가 유효했는지, 및 따라서 RAID 복구 동작이 메모리 셀들의 페이지로부터 데이터를 복구하려고 시도해야 하는지를 판단하기 위해 사용될 수 있다.
메모리 시스템(104)은 메모리 셀들의 페이지들의 그룹과 연관되는 유효 마스크를 저장할 수 있다. 유효 마스크는 데이터의 다수의 비트들을 포함할 수 있으며, 다수의 비트들의 일부는 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 제공한다. 유효 마스크는 페이지들의 그룹의 메모리 셀들의 페이지, 예를 들어 타켓 페이지에 저장되고 그것이 저장되는 메모리 셀들의 페이지, 예를 들어 타켓 페이지, 및 페이지들의 그룹의 메모리 셀들의 다수의 다른 페이지들에 대한 유효 정보를 포함할 수 있다. 유효 마스크는 메모리 셀들의 페이지에 저장되는 메타데이터의 일부이고 그것이 저장되는 메모리 셀들의 페이지와 연관될 수 있다.
다수의 실시예들에서, 유효 마스크는 메모리 셀들의 페이지들이 기록되는 시퀀스에 기초하여 페이지들의 그룹의 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 저장할 수 있다. 페이지들의 그룹의 메모리 셀들의 페이지들은 알려진 시퀀스로 기록되며, 따라서 페이지들의 그룹의 메모리 셀들의 페이지에 저장된 유효 마스크는 유효 마스크가 저장되는 메모리 셀들의 페이지 전에 및/또는 후에 기록되는 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 포함한다. 예를 들어, 유효 마스크는 유효 마스크가 저장되는 메모리 셀들의 페이지 전에 기록되는 메모리 셀들의 어떤 수의 페이지들 및 유효 마스크가 저장되는 메모리 셀들의 페이지 후에 기록되는 메모리 셀들의 어떤 수의 페이지들에 대한 유효 정보를 포함할 수 있다.
다수의 실시예들에서, 유효 정보는 유효 마스크로 저장되는 이진 데이터 값들, 예를 들어 “1” 또는 “0”를 나타내는 데이터의 비트들에 기초할 수 있으며, 이진 데이터 값 “1”은 비트와 연관되는 메모리 셀들의 페이지가 좋은 것을 표시하며, 예를 들어 메모리 셀들의 페이지에 기록된 데이터 및/또는 메모리 셀들의 페이지로부터 판독된 데이터를 가질 수 있고, 이진 데이터 값 “0”은 비트와 연관되는 메모리 셀들의 페이지가 손상되고/되거나 나쁜 것을 표시하며, 예를 들어 메모리 셀들의 페이지에 기록된 데이터 및/또는 메모리 셀들의 페이지로부터 판독된 데이터를 가질 수 없다. 메모리 셀들의 페이지는 기록 동작 동안 손상되고/되거나 나쁘고 생략되는 것으로 공지될 수 있고/있거나 메모리 셀들의 페이지는 메모리 디바이스의 동작 동안 손상되고/되거나 나쁠 수 있고 판독 에러들은 메모리 셀들의 페이지로부터 데이터를 판독하려고 시도할 때 발생한다. 유효 정보는 판독가능하지 않은 페이지들의 그룹에서 데이터를 복구하려고 시도할 때 메모리 시스템에 의해 사용될 수 있다. 메모리 시스템은 판독가능하지 않은 페이지들의 그룹으로부터의 메모리 셀들의 페이지가 복구되어야 하는 데이터를 가졌는지를 판단하기 위해 유효 마스크로부터 유효서 정보를 사용할 수 있다. 예를 들어, 판독가능하지 않은 페이지들의 그룹으로부터의 메모리 셀들의 페이지가 유효 마스크로부터의 유효 정보에 기초하여 손상되고/되거나 나쁜 것으로 알려져 있으면, 그 메모리 셀들의 페이지로부터의 데이터를 복구하는 시도는 ECC 동작 및/또는 RAID 복구 동작 동안 이루어질 수 없으며, 예를 들어 ECC 동작 및/또는 RAID 복구 동작은 유효 마스크 내의 유효 정보에 기초하여 페이지들의 그룹의 메모리 셀들의 손상 및/또는 나쁜 페이지를 생략할 수 있다.
다수의 실시예들에서, 유효 마스크는 페이지들의 그룹의 메모리 셀들의 각각의 페이지에 대한 유효 정보를 포함할 수 있다. 다수의 실시예들에서, 유효 마스크는 페이지들의 그룹의 메모리 셀들의 페이지들의 일부에 대한 유효 정보를 포함할 수 있다. 유효 마스크에 저장된 유효 정보를 갖는 페이지들의 그룹의 메모리 셀들의 페이지들의 일부는 페이지들의 그룹의 메모리 셀들의 페이지들이 기록되는 시퀀스 및/또는 ECC 동작 및/또는 손상되고/되거나 나쁜 메모리 셀들의 페이지들, 예를 들어 그들에 기록된 데이터 및/또는 그들로부터 판독된 데이터를 가질 수 없는 메모리 셀들의 페이지들 상에서 데이터를 복구하는 RAID 복구 동작의 능력에 기초할 수 있다. 예를 들어, 유효 마스크는 유효 마스크가 저장되는 메모리 셀들의 페이지 직전에 기록되는 메모리 셀들의 15 페이지들 및 유효 마스크가 저장되는 메모리 셀들의 페이지 직후에 기록되는 메모리 셀들의 16 페이지들에 대한 유효 정보를 포함할 수 있다. 유효 마스크는 메모리 셀들의 32 페이지들에 대한 유효 정보를 포함하며, 이는 예를 들어 ECC 동작 및/또는 RAID 복구 동작을 통해 복구될 수 있는 것보다 적어도 하나 더 많은 페이지일 수 있다.
도 1에 예시된 컴퓨팅 시스템(100)은 예시된 것 이상의 추가 회로조직을 포함할 수 있다. 도 1에 예시된 컴퓨팅 시스템(100)의 상세는 본 개시의 실시예들을 모호하게 하지 않도록 감소되었다. 예를 들어, 메모리 시스템(104)은 I/O 연결들에 의해 I/O 회로조직을 통하여 제공된 어드레스 신호들을 래치하기 위해 어드레스 회로조직을 포함할 수 있다. 어드레스 신호들은 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)에 액세스하기 위해 수신되고 행 디코더 및 열 디코더에 의해 디코딩될 수 있다. 어드레스 입력 연결들의 수는 고체 상태 메모리 디바이스들(110-1, . . ., 110-N)의 밀도 및 아키텍처에 의존할 수 있다는 점이 당해 기술에서 통상의 기술자들에 의해 이해될 것이다.
도 2는 본 개시의 다수의 실시예들에 따른 컴퓨팅 시스템에 저장된 다수의 유효 마스크들의 표를 예시한다. 도 2는 메모리 셀들의 다수의 페이지들에 저장되는 다수의 유효 마스크들(232-0, 232-12, 232-44, 232-80, 232-100, 및 232-127)을 예시한다. 메모리 셀들의 파수의 페이지들은 블록과 같은 그룹의 일부이고, 예를 들어 블록은 128 페이지들을 포함할 수 있다. 도 2에서, 유효 마스크(232-0)는 그룹의 페이지(0)에 저장되고, 유효 마스크(232-12)는 그룹의 페이지(12)에 저장되고, 유효 마스크(232-44)는 그룹의 페이지(44)에 저장되고, 유효 마스크(232-80)는 그룹의 페이지(80)에 저장되고, 유효 마스크(232-100)는 그룹의 페이지(100)에 저장되며, 유효 마스크(232-127)는 그룹의 페이지(127)에 저장된다.
유효 마스크들(232-0, 232-12, 232-44, 232-80, 232-100, 및 232-127) 각각은 그룹 내의 메모리 셀들의 페이지들의 수를 표시하는 카운트(220); 유효 마스크와 연관되는 그룹 내의 메모리 셀들의 페이지를 표시하는 오프셋(222); 제 1 윈도우(224); 제 2 윈도우(226); 제 3 윈도우(228); 및 제 4 윈도우(230)를 포함하며, 각각의 윈도우는 그룹 내의 메모리 셀들의 페이지들의 유효 상태를 제공하는 다수의 비트들을 포함한다.
다수의 실시예들에서, 페이지들의 그룹은 메모리 셀들의 8 페이지들의 윈도우들로 더 분할될 수 있으며, 유효 마스크와 연관되는 윈도우는 그룹 내의 메모리 셀드들의 다수의 페이지들과 연관되는 유효 마스크 내의 다수의 비트들을 포함할 수 있다. 예를 들어, 각각의 윈도우는 그룹 내의 메모리 셀들의 상이한 페이지와 각각 연관되는 8 비트를 포함할 수 있고, 따라서 각각의 윈도우는 그룹 내의 메모리 셀들의 8 페이지들에 대한 유효 정보를 포함한다. 제 1 윈도우(224)는 유효 마스크가 저장되는 메모리 셀들의 페이지 전에 8 페이지들을 기록한 메모리 셀들의 페이지를 포함하는 윈도우 내의 메모리 셀들의 8 페이지들에 대한 유효 정보를 포함할 수 있다. 제 2 윈도우(226)는 유효 정보가 저장되는 메모리 셀들의 페이지를 포함하는 윈도우 내의 메모리 셀들의 8 페이지들에 대한 유효 정보를 포함할 수 있다. 제 3 윈도우(228)는 유효 마스크가 저장되는 메모리 셀들의 페이지 후에 8 페이지들을 기록한 메모리 셀들의 페이지를 포함하는 윈도우 내의 메모리 셀들의 8 페이지들에 대한 유효 정보를 포함할 수 있다. 제 4 윈도우(230)는 유효 마스크가 저장되는 메모리 셀들의 페이지 후에 16 페이지들을 기록한 메모리 셀들의 페이지를 포함하는 윈도우 내의 메모리 셀들의 8 페이지들에 대한 유효 정보를 포함할 수 있다.
다수의 실시예들에서, 유효 마스크들(232-0, 232-12, 232-44, 232-80, 232-100, 및 232-128)은 48 비트를 포함할 수 있고, 8 비트는 카운트를 제공하고, 8 비트는 오프셋을 제공하며, 4개의 윈도우 각각에 대한 8 비트는 그룹의 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 제공한다. 다수의 실시예들에서, 다수의 비트들은 유효 정보를 제공할 수 있다. 예를 들어, 유효 마스크는 메모리 셀들의 32 페이지들에 대한 유효 정보를 제공하는 32 비트를 포함할 수 있고, 다른 예에서, 유효 마스크는 메모리 셀들의 48 페이지들에 대한 유효 정보를 제공하는 48 비트를 포함할 수 있다. 유효 정보를 제공하기 위해 사용되는 유효 마스크 내의 다수의 비트들은 유효 마스크를 저장하는 것에 전용일 수 있는 저장의 양 및 ECC 동작 및/또는 RAID 복구 동작 동안 사용되는 액세스가능한 유효 정보를 갖는 요구에 기초할 수 있다.
다수의 실시예들에서, 다수의 유효 마스크들로부터의 유효 정보는 페이지들의 그룹 내의 메모리 셀들의 각각의 페이지 또는 컴퓨팅 시스템 내의 메모리 셀들의 페이지들 각각과 같은 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 획득하기 위해 결합하여 사용될 수 있다. 페이지들의 그룹 내의 메모리 셀들의 페이지들의 일부에 대한 유효 정보를 포함하는 유효 마스크들은 페이지들의 그룹 내의 메모리 셀들의 각각의 페이지에 대한 유효 정보를 획득하기 위해 결합될 수 있고, 따라서 페이지들의 그룹 내의 메모리 셀들의 특정 페이지에 저장된 유효 마스크에 페이지들의 전체 그룹에 대한 유효 정보를 저장하는 요구를 감소시킨다. 유효 마스크들은 ECC 동작 및/또는 RAID 복구 동작 동안 복구될 수 있는 메모리 셀들으 다수의 페이지들보다 적어도 하나 더 많은 페이지에 대한 유효 정보를 포함할 수 있다. 따라서, 페이지들의 그룹 내의 메모리 셀들의 각각의 페이지에 대한 유효 정보는 페이지들의 그룹의 메모리 셀들의 페이지들에 저장된 유효 마스크들을 통해 및/또는 ECC 동작 및/또는 RAID 복구 동작 동안 복구된 데이터를 통해 인식될 수 있다.
다수의 실시예들에서, 컴퓨팅 시스템 내의 메모리 셀들의 각각의 페이지에 대한, 다른 정보 중에서 유효 상태를 표시하는 마스터 레코드는 컴퓨팅 시스템의 다수의 메모리 디바이스들에 저장될 수 있다. 마스터 레코드가 손상되는 경우에, 컴퓨팅 시스템의 메모리 셀들의 페이지들에 저장된 유효 마스크들은 마스터 레코드를 복구하기 위해 사용될 수 있다. 컴퓨팅 시스템의 메모리 셀들의 페이지들에 저장된 유효 마스크들은 메모리 셀들의 페이지의 유효 상태를 결정할 때 마스터 레코드에 대한 대안으로서 사용될 수도 있다.
결론
본 개시는 장치들 및 유효 마스크를 저장하고 장치들을 동작시키는 방법들을 포함한다. 장치를 동작시키는 다수의 방법들은 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들과 연관되고 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 제공하는 유효 마스크를 저장하는 단계를 포함한다.
특정 실시예들이 본 명세서에 예시되고 설명되었지만, 당해 기술에서 통상의 기술자들은 동일한 결과들을 달성하기 위해 계산되는 배열이 도시된 특정 실시예들을 대체할 수 있다는 것을 이해할 것이다. 본 개시는 본 개시의 다수의 실시예들의 개조들 또는 변형들을 커버하도록 의도된다. 상기 설명은 예시적 방식으로 이루어지고, 제한적인 방식으로 이루어지지 않는다는 점이 이해되어야 한다. 상기 실시예들, 및 본 명세서에 구체적으로 설명되지 않은 다른 실시예들의 조합은 상기 설명을 검토할 시에 당해 기술에서 통상의 기술자들에게 분명할 것이다. 본 개시의 다수의 실시예들의 범위는 상기 구조들 및 방법들이 사용되는 다른 응용들을 포함한다. 따라서, 본 개시의 다수의 실시예들의 범위는 첨부된 청구항들의 권리가 부여되는 전체 범위의 균등물들과 함께, 그러한 청구항들을 참조하여 결정되어야 한다.
이전 상세한 설명에서, 일부 특징들은 본 개시를 간소화하기 위해 단일 실시예에 함께 그룹화된다. 이러한 개시 방법은 본 개시의 개시된 실시예들이 각각의 청구항에 분명히 열거되는 더 많은 특징들을 사용해야 한다는 의도를 반영하는 것으로 해석되지 않아야 한다. 오히려, 이하의 청구항들이 반영하는 바와 같이, 독창적인 발명 대상은 단일 개시된 실시예의 모든 특징들 미만에 있다. 따라서, 이하의 청구항들은 이로써 상세한 설명에 통합되며, 각각의 청구항은 개별 실시예로서 그 자체에 기초한다.
Claims (35)
- 장치를 동작시키는 방법으로서,
페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들과 연관되고 상기 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들에 대한 유효 정보(validity information)를 제공하는 유효 마스크(validity mask)를 저장하는 단계를 포함하는 방법. - 청구항 1에 있어서, 상기 유효 마스크를 저장하는 단계는 메모리 셀들의 타겟 페이지에 상기 유효 마스크를 저장하는 단계를 포함하는 방법.
- 청구항 2에 있어서, 상기 페이지들의 그룹은 상기 메모리 셀들의 타겟 페이지 전에 기록되는 메모리 셀들의 다수의 페이지들을 포함하는 방법.
- 청구항 2에 있어서, 상기 페이지들의 그룹은 상기 메모리 셀들의 타겟 페이지 후에 기록되는 메모리 셀들의 다수의 페이지들을 포함하는 방법.
- 청구항 1 내지 4 중 어느 하나에 있어서, 상기 유효 마스크를 저장하는 단계는 상기 장치에 상기 유효 마스크를 저장하는 단계를 포함하는 방법.
- 청구항 5에 있어서, 상기 장치는 메모리 시스템인 방법.
- 청구항 5에 있어서, 상기 유효 마스크를 저장하는 단계는 상기 장치의 다수의 메모리 디바이스들에 상기 유효 마스크를 저장하는 단계를 포함하는 방법.
- 청구항 1 내지 4 중 어느 하나에 있어서, 상기 유효 마스크를 저장하는 단계는 상기 유효 마스크와 연관되는 페이지들의 그룹 내에 메모리 셀들의 다수의 페이지들을 표시하는 카운트를 저장하는 단계를 포함하는 방법.
- 청구항 2 내지 4 중 어느 하나에 있어서, 상기 유효 마스크를 저장하는 단계는 상기 유효 마스크와 연관되는 페이지들의 그룹 내에 상기 메모리 셀들의 타겟 페이지의 위치를 표시하는 오프셋을 저장하는 단계를 포함하는 방법.
- 청구항 1 내지 4 중 어느 하나에 있어서, 상기 유효 마스크를 저장하는 단계는 상기 유효 마스크의 데이터의 다수의 유닛들에 카운트, 오프셋, 및 유효 정보를 저장하는 단계를 포함하는 방법.
- 청구항 1 내지 4 중 어느 하나에 있어서, 상기 유효 마스크를 저장하는 단계는 상기 유효 마스크의 데이터의 다수의 유닛을 저장하는 단계를 포함하며, 상기 다수의 유닛들의 일부는 상기 페이지들의 그룹 내의 메모리 셀들의 특정 페이지의 유효 상태(validity status)를 표시하는 방법.
- 장치를 동작시키는 방법으로서,
페이지들의 그룹 내의 메모리 셀들의 특정 페이지에 유효 마스크의 데이터의 다수의 유닛들을 저장하는 단계로서, 상기 데이터의 다수의 유닛들은 상기 페이지들의 그룹 내의 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 제공하는 상기 단계를 포함하는 방법. - 청구항 12에 있어서, 상기 유효 마스크의 데이터의 다수의 유닛들을 저장하는 단계는 상기 장치에 상기 데이터의 다수의 유닛들을 저장하는 단계를 포함하는 방법.
- 청구항 13에 있어서, 상기 유효 마스크의 데이터의 다수의 유닛들을 저장하는 단계는 상기 장치의 다수의 메모리 디바이스들에 상기 데이터의 다수의 유닛들을 저장하는 단계를 포함하는 방법.
- 청구항 12에 있어서, 상기 유효 정보는 ECC 동작을 사용하여 복구될 수 있는 메모리 셀들의 다수의 페이지들보다 적어도 하나 더 많은 페이지에 유효 정보를 제공하는 것을 포함하는 방법.
- 청구항 12에 있어서, 상기 유효 정보는 상기 특정 페이지 전에 기록되는 메모리 셀들의 페이지들 및 상기 특정 페이지 후에 기록되는 메모리 셀들의 페이지들에 대한 유효 정보를 포함하는 방법.
- 청구항 12 내지 16 중 어느 하나에 있어서, 상기 페이지들의 그룹에 대한 유효 마스크를 형성하기 위해 상기 메모리 셀들의 특정 페이지의 유효 마스크를 상기 그룹 내의 메모리 셀들의 다수의 페이지들과 연관되는 다른 유효 마스크들과 결합하는 단계를 포함하는 방법.
- 청구항 12 내지 16 중 어느 하나에 있어서, 상기 유효 정보는 기록 동작 동안 생략될 메모리 셀들의 페이지들에 대한 유효 정보를 포함하는 방법.
- 청구항 12 내지 16 중 어느 하나에 있어서, 상기 유효 정보는 상기 페이지들과 연관되는 판독 에러들로 인해 상기 메모리 셀들의 페이지들로부터 판독된 데이터를 가질 수 없도록 결정되는 메모리 셀들의 페이지들에 대한 유효 정보를 포함하는 방법.
- 청구항 12 내지 16 중 어느 하나에 있어서, 상기 다수의 유닛들의 일부는 시퀀스로 기록된 메모리 셀들의 각각의 페이지에 유효 정보를 제공하는 방법.
- 장치를 동작시키는 방법으로서,
데이터를 시퀀스내 메모리 셀들의 다수의 페이지들에 기록하는 단계; 및
상기 시퀀스내 상기 메모리 셀들의 다수의 페이지들의 적어도 일부와 연관되는 유효 마스크를 저장하는 단계를 포함하는 방법. - 청구항 21에 있어서, 상기 유효 마스크를 저장하는 단계는 상기 장치의 다수의 메모리 디바이스들에 상기 유효 마스크를 저장하는 단계를 포함하는 방법.
- 청구항 21에 있어서, 상기 유효 마스크는 메모리 셀들의 타겟 페이지 전에 기록되는 시퀀스 내의 메모리 셀들의 페이지들, 상기 메모리 셀들의 타켓 페이지, 및 상기 메모리 셀들의 타겟 페이지 후에 기록되는 메모리 셀들의 페이지들을 포함하는 시퀀스 내의 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 포함하는 방법.
- 청구항 21 내지 23 중 어느 하나에 있어서, 상기 유효 마스크는 상기 시퀀스내 상기 메모리 셀들의 페이지들의 적어도 일부의 메모리 셀들의 각각의 페이지에 대한 유효 상태를 표시하는 유효 정보를 포함하는 방법.
- 청구항 21 내지 23 중 어느 하나에 있어서, 상기 유효 마스크는 ECC 동작을 사용하여 복구될 수 있는 메모리 셀들의 다수의 페이지들보다 적어도 하나 더 많은 페이지에 대한 유효 정보를 포함하는 방법.
- 청구항 21 내지 23 중 어느 하나에 있어서, 상기 유효 마스크는 상기 메모리 셀들의 다수의 페이지들 중 어느 것이 ECC 동작을 사용하여 복구하려고 시도하는 것 인지를 표시하는 유효 정보를 포함하는 방법.
- 장치로서,
메모리 셀들의 다수의 어레이들; 및
상기 다수의 어레이들에 동작가능하게 결합되고, 그리고
데이터를 메모리 셀들의 페이지들의 그룹에 스트라이프(stripe)하며, 상기 페이지들의 그룹은 상기 메모리 셀들의 다수의 어레이들의 메모리 셀들의 페이지들을 포함하고;
상기 페이지들의 그룹 내 메모리 셀들의 다수의 페이지들에 대한 유효 정보를 제공하는 유효 마스크를 저장하도록 구성된 제어기;를 포함하는 장치. - 청구항 27에 있어서, 상기 유효 마스크의 데이터의 다수의 유닛들은 상기 메모리 셀들의 페이지들의 그룹에 기록하는 데이터의 시퀀스에 기초하는 장치.
- 청구항 27에 있어서, 상기 유효 마스크의 데이터의 유닛은 상기 페이지들의 그룹의 다수의 페이지들 중 특정 페이지의 유효 상태를 제공하는 장치.
- 청구항 27 내지 29 중 어느 하나에 있어서, 상기 유효 마스크는 상기 유효 마스크와 연관되는 페이지들의 그룹 내 상기 메모리 셀들의 다수의 페이지들을 표시하는 카운트를 포함하는 장치.
- 청구항 27 내지 29 중 어느 하나에 있어서, 상기 유효 마스크는 상기 유효 마스크와 연관되는 페이지들의 그룹 내 메모리 셀들의 타겟 페이지의 위치를 표시하는 오프셋을 포함하고 그리고 상기 유효 마스크는 상기 메모리 셀들의 타겟 페이지에 저장되는 장치.
- 장치로서,
메모리 셀들의 다수의 어레이들; 및
상기 다수의 어레이들에 동작가능하게 결합되고, 그리고
메모리 셀들의 어레이에 메모리 셀들의 다수의 페이지들과 연관되는 유효 마스크를 저장하며, 상기 메모리 셀들의 다수의 페이지들은 기록 시퀀스 내 메모리 셀들의 타겟 페이지 전의 메모리 셀들의 제 1 수의 페이지들 및 상기 기록 시퀀스 내 메모리 셀들의 타겟 페이지 후의 메모리 셀들의 제 2 수의 페이지들을 포함하도록 구성된 제어기;를 포함하는 장치. - 청구항 32에 있어서, 상기 메모리 셀들의 다수의 페이지들은 ECC 동작을 사용하여 정정될 수 있는 메모리 셀들의 다수의 페이지들보다 적어도 하나 더 많은 페이지를 포함하는 장치.
- 청구항 32 내지 33 중 어느 하나에 있어서, 상기 유효 마스크는 데이터의 다수의 비트들을 포함하며 상기 비트들의 일부는 상기 메모리 셀들의 다수의 페이지들의 페이지의 유효 정보를 제공하는 장치.
- 청구항 32 내지 33 중 어느 하나에 있어서, 상기 유효 마스크는 상기 메모리 셀들의 타겟 페이지와 연관되는 메타데이터(metadata)로 저장되는 장치.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/299,430 | 2011-11-18 | ||
US13/299,430 US8892828B2 (en) | 2011-11-18 | 2011-11-18 | Apparatuses and methods for storing validity masks and operating apparatuses |
PCT/US2012/064480 WO2013074420A1 (en) | 2011-11-18 | 2012-11-09 | Apparatuses and methods for storing validity masks and operating apparatuses |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20140088212A true KR20140088212A (ko) | 2014-07-09 |
KR101645829B1 KR101645829B1 (ko) | 2016-08-04 |
Family
ID=48428091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020147014964A KR101645829B1 (ko) | 2011-11-18 | 2012-11-09 | 장치들 및 유효 마스크들을 저장하고 장치들을 동작시키는 방법들 |
Country Status (6)
Country | Link |
---|---|
US (2) | US8892828B2 (ko) |
EP (1) | EP2780812B1 (ko) |
JP (1) | JP5908106B2 (ko) |
KR (1) | KR101645829B1 (ko) |
CN (1) | CN104094238B (ko) |
WO (1) | WO2013074420A1 (ko) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180087496A (ko) * | 2017-01-23 | 2018-08-02 | 에스케이하이닉스 주식회사 | 메모리 시스템 |
CN110720126B (zh) * | 2017-06-30 | 2021-08-13 | 华为技术有限公司 | 传输数据掩码的方法、内存控制器、内存芯片和计算机系统 |
CN111949199B (zh) * | 2019-05-16 | 2024-04-26 | 兆易创新科技集团股份有限公司 | 一种存储设备的数据写入方法、装置及存储设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5598553A (en) * | 1994-03-08 | 1997-01-28 | Exponential Technology, Inc. | Program watchpoint checking using paging with sub-page validity |
US20060109725A1 (en) * | 2003-04-04 | 2006-05-25 | Samsung Electronics Co., Ltd. | Apparatus and method for managing bad blocks in a flash memory |
JP2008226149A (ja) * | 2007-03-15 | 2008-09-25 | Hitachi Ltd | ストレージシステム及びストレージシステムのライト性能低下防止方法 |
CN101770427A (zh) * | 2009-01-07 | 2010-07-07 | 芯邦科技(深圳)有限公司 | 一种利用Flash存储空间的方法及装置 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0810553B2 (ja) * | 1986-06-13 | 1996-01-31 | 松下電器産業株式会社 | 記憶回路 |
JPH0546490A (ja) * | 1991-08-09 | 1993-02-26 | Toshiba Corp | メモリカード装置 |
US5361345A (en) | 1991-09-19 | 1994-11-01 | Hewlett-Packard Company | Critical line first paging system |
US6571323B2 (en) | 1999-03-05 | 2003-05-27 | Via Technologies, Inc. | Memory-access management method and system for synchronous dynamic Random-Access memory or the like |
US8266367B2 (en) * | 2003-12-02 | 2012-09-11 | Super Talent Electronics, Inc. | Multi-level striping and truncation channel-equalization for flash-memory system |
JP4129381B2 (ja) | 2002-09-25 | 2008-08-06 | 株式会社ルネサステクノロジ | 不揮発性半導体記憶装置 |
US6978353B2 (en) | 2002-10-18 | 2005-12-20 | Sun Microsystems, Inc. | Low overhead snapshot in a storage array using a tree-of-slabs metadata |
US6996664B2 (en) | 2003-01-22 | 2006-02-07 | Micron Technology, Inc. | Ternary content addressable memory with enhanced priority matching |
US7873878B2 (en) | 2007-09-24 | 2011-01-18 | International Business Machines Corporation | Data integrity validation in storage systems |
GB2476215B (en) | 2008-09-15 | 2013-02-06 | Otis Elevator Co | Method of handling passenger requests during elevator modernization |
KR101515525B1 (ko) | 2008-10-02 | 2015-04-28 | 삼성전자주식회사 | 메모리 장치 및 메모리 장치의 동작 방법 |
US8261158B2 (en) * | 2009-03-13 | 2012-09-04 | Fusion-Io, Inc. | Apparatus, system, and method for using multi-level cell solid-state storage as single level cell solid-state storage |
US20110035540A1 (en) * | 2009-08-10 | 2011-02-10 | Adtron, Inc. | Flash blade system architecture and method |
US20120166749A1 (en) | 2009-09-08 | 2012-06-28 | International Business Machines Corporation | Data management in solid-state storage devices and tiered storage systems |
US8595425B2 (en) | 2009-09-25 | 2013-11-26 | Nvidia Corporation | Configurable cache for multiple clients |
US8266501B2 (en) * | 2009-09-29 | 2012-09-11 | Micron Technology, Inc. | Stripe based memory operation |
-
2011
- 2011-11-18 US US13/299,430 patent/US8892828B2/en active Active
-
2012
- 2012-11-09 KR KR1020147014964A patent/KR101645829B1/ko active IP Right Grant
- 2012-11-09 WO PCT/US2012/064480 patent/WO2013074420A1/en active Application Filing
- 2012-11-09 EP EP12850652.4A patent/EP2780812B1/en active Active
- 2012-11-09 CN CN201280056819.9A patent/CN104094238B/zh active Active
- 2012-11-09 JP JP2014542361A patent/JP5908106B2/ja active Active
-
2014
- 2014-10-22 US US14/520,732 patent/US9274883B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5598553A (en) * | 1994-03-08 | 1997-01-28 | Exponential Technology, Inc. | Program watchpoint checking using paging with sub-page validity |
US20060109725A1 (en) * | 2003-04-04 | 2006-05-25 | Samsung Electronics Co., Ltd. | Apparatus and method for managing bad blocks in a flash memory |
JP2008226149A (ja) * | 2007-03-15 | 2008-09-25 | Hitachi Ltd | ストレージシステム及びストレージシステムのライト性能低下防止方法 |
CN101770427A (zh) * | 2009-01-07 | 2010-07-07 | 芯邦科技(深圳)有限公司 | 一种利用Flash存储空间的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2014534539A (ja) | 2014-12-18 |
WO2013074420A1 (en) | 2013-05-23 |
US20150100853A1 (en) | 2015-04-09 |
CN104094238A (zh) | 2014-10-08 |
KR101645829B1 (ko) | 2016-08-04 |
US20130132703A1 (en) | 2013-05-23 |
US9274883B2 (en) | 2016-03-01 |
JP5908106B2 (ja) | 2016-04-26 |
US8892828B2 (en) | 2014-11-18 |
CN104094238B (zh) | 2018-02-02 |
EP2780812A1 (en) | 2014-09-24 |
EP2780812B1 (en) | 2018-06-13 |
EP2780812A4 (en) | 2015-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11042441B2 (en) | Stripe mapping in memory | |
US9235503B2 (en) | Stripe-based non-volatile multilevel memory operation | |
US9298545B2 (en) | Data protection across multiple memory blocks | |
US8788876B2 (en) | Stripe-based memory operation | |
US20180129558A1 (en) | Optimizing reclaimed flash memory | |
KR20130088173A (ko) | 트랜잭션 로그 복구 | |
US9274883B2 (en) | Apparatuses and methods for storing validity masks and operating apparatuses |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
FPAY | Annual fee payment |
Payment date: 20190724 Year of fee payment: 4 |