KR101399549B1 - 반도체 메모리 장치 및 그것의 블록 관리 방법 - Google Patents

반도체 메모리 장치 및 그것의 블록 관리 방법 Download PDF

Info

Publication number
KR101399549B1
KR101399549B1 KR1020070089547A KR20070089547A KR101399549B1 KR 101399549 B1 KR101399549 B1 KR 101399549B1 KR 1020070089547 A KR1020070089547 A KR 1020070089547A KR 20070089547 A KR20070089547 A KR 20070089547A KR 101399549 B1 KR101399549 B1 KR 101399549B1
Authority
KR
South Korea
Prior art keywords
block
blocks
spare area
plane
empty
Prior art date
Application number
KR1020070089547A
Other languages
English (en)
Other versions
KR20090024495A (ko
Inventor
김민영
윤송호
이수련
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020070089547A priority Critical patent/KR101399549B1/ko
Priority to US12/202,177 priority patent/US8127071B2/en
Publication of KR20090024495A publication Critical patent/KR20090024495A/ko
Application granted granted Critical
Publication of KR101399549B1 publication Critical patent/KR101399549B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/78Masking faults in memories by using spares or by reconfiguring using programmable devices
    • G11C29/80Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
    • G11C29/808Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout using a flexible replacement scheme

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

본 발명은 반도체 메모리 장치에 관한 것으로, 구체적으로는, 멀티 플레인 구조의 반도체 메모리 장치 및 그것의 블록 관리 방법에 관한 것이다. 본 발명에 따른 멀티 플레인 구조의 반도체 메모리 장치의 블록 관리 방법에 있어서, 상기 반도체 메모리 장치는 예비 영역과 데이터 영역으로 구분된 복수의 플레인들을 포함하고, 상기 예비 영역과 데이터 영역 각각은 복수의 블록들을 포함하고, 인접한 플레인에 연속하여 배열된 복수의 블록들은 다중 플레인 연산 그룹을 구성하며, 상기 블록 관리 방법은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는지 여부에 따라 제 1 또는 제 2 동작을 수행하며, 상기 제 1 동작에서는 상기 데이터 영역의 블록들이 상기 다중 플레인 연산 그룹 단위로 상기 예비 영역의 비어있는 블록들로 교체되고, 상기 제 2 동작에서는 상기 데이터 영역의 블록이 상기 예비 영역의 비어있는 블록으로 교체되는 방법이 제공된다.

Description

반도체 메모리 장치 및 그것의 블록 관리 방법{SEMICONDUCTOR MEMORY DEVICES AND BLOCK MANAGEMENT METHOD THEREOF}
본 발명은 반도체 메모리 장치에 관한 것으로, 구체적으로는, 멀티 플레인 구조의 반도체 메모리 장치 및 그것의 블록 관리 방법에 관한 것이다.
반도체 메모리 장치는 데이터를 저장해 두고 필요할 때 읽어볼 수 있는 기억장치이다. 반도체 메모리 장치는 크게 램(Random Access Memory: RAM)과 롬(Read Only Memory: ROM)으로 나누어진다. 램에 저장된 데이터는 전원 공급이 중단되면 소멸된다. 이러한 타입의 메모리를 휘발성(volatile) 메모리라고 한다. 반면에, 롬에 저장된 데이터는 전원 공급이 중단되더라도 소멸되지 않는다. 이러한 타입의 메모리를 비휘발성(nonvolatile) 메모리라고 한다. 비휘발성 메모리의 일종으로서 플래시 메모리가 각광받고 있다.
종래의 플래시 메모리에서는 모든 블록들(blocks)이 하나의 플레인(plane)에 배치된다. 이러한 구조를 단일 플레인(single plane) 구조라 한다. 여기서 블록은 소거(erase) 연산의 단위이다. 단일 플레인 구조의 플래시 메모리에서, 소거(erase)의 경우에는 한 번에 하나의 블록(block)에 대해서만, 기록(program)과 판독(read)의 경우에는 한 번에 하나의 페이지(page)에 대해서만 명령의 수행이 가능하다.
반도체 메모리 장치의 성능을 향상시키기 위하여 다중 플레인(multi plane) 구조가 제안되었다. 다중 플레인 구조 반도체 메모리에서는 블록들이 복수의 플레인들에 분산 배치된다. 다중 플레인 구조의 장점은 서로 다른 플레인에 위치한 블록들 또는 페이지들에 대해 동시에 소거(erase), 기록(program) 또는 판독(read) 등의 연산을 수행할 수 있다는 것이다. 동시에 연산이 되는 블록들은 인접한 플레인에 연속하여 배열된다. 이렇게 동시에 연산되는 블록들의 집합을 다중 플레인 연산 그룹(multi plane operation group)라고 한다.
도 1은 단일 플레인 구조와 다중 플레인 구조를 비교하여 보여주는 도면이다. 도 1(a)는 단일 플레인 구조를 보여주고, 도 1(b)는 다중 플레인 구조를 보여준다.
도 1(a)의 플래시 메모리는 하나의 플레인(PLN0)으로 구성된다. 플레인은 복수의 블록들(BLK0 ~ BLKn-1)을 포함한다. 이러한 구조를 단일 플레인 구조라 한다. 단일 플레인 구조에서는 한번에 하나의 블록에 대해서만 플래시 연산(operation)이 수행된다. 플래시 연산은 프로그램(program), 읽기(read), 소거(erase) 동작 등을 포함한다. 도시된 바와 같이, 외부로부터 블록들(BLK0, BLK1)에 대한 연산 요청이 있는 경우, 블록(BLK0)에 대한 단일 플래시 연산(OP1)이 끝난 후에 블록(BLK1)에 대한 단일 플래시 연산(OP2)이 수행된다. 결국, 두 개의 블록(BLK0, BLK1)에 대해 두 번의 단일 플래시 연산(OP1, OP2)이 수행된다.
도 1(b)의 플래시 메모리는 두 개의 플레인들(PLN0, PLN1)로 구성된다. 각각의 플레인은 복수의 블록들(BLK0 ~ BLKn-1)을 포함한다. 이러한 구조를 다중 플레인 구조라 한다. 본 실시예에서는 두 개의 플레인들(PLN0, PLN1)이 예시되었지만, 본 발명의 범위는 이에 한정되지 않는다. 예를 들어, 플레인의 개수는 2개보다 많을 수 있다.
다중 플레인 구조 반도체 메모리에서는 블록들이 하나 이상의 플레인 상에 분산 배치되고, 인접한 플레인에 연속하여 배치된 블록들에 대한 동시 연산의 수행이 가능하다. 다시 말해서, 다중 플레인 구조에서는 한번에 복수의 블록들에 대해서 플래시 연산이 수행될 수 있다. 도 1(b)를 참조하면, 외부로부터 블록들(BLK0, BLK1)에 대한 연산 요청이 있는 경우, 블록들(BLK0, BLK1)에 대해 한 번의 다중 플래시 연산(OP1)이 수행된다. 결국, 두 개의 블록(BLK0, BLK1)에 대해 한 번의 다중 플래시 연산(OP1)이 수행된다.
다중 플레인 연산은 단일 플레인 연산의 확장(expansion)이다. 예를 들면, 네 개의 메모리 플레인들을 갖추고 있는 장치에서 서로 인접한 네 개의 페이지들에 대해 동시에 프로그램이 수행될 수 있다. 자세히 설명하면, 먼저, 네 개의 페이지들에 각각 연결된 페이지 버퍼들(page buffers)에 데이터가 로드(load)된다. 네 개의 페이지 버퍼들이 모두 채워진 후에, 네 개의 페이지들이 동시에(simultaneously) 프로그램된다. 따라서, 각각의 페이지들을 별도로 프로그램할 때보다 프로그램에 걸리는 시간이 줄어들게 된다.
결국, 단일 플레인 구조 반도체 메모리에서는 한 번에 하나의 블록에 대해서 만 플래시 연산이 수행되는 반면, 다중 플레인 구조 반도체 메모리에서는 인접한 플레인에 연속하여 배열된 블록들(adjacent blocks)에 대해 동시에 플래시 연산이 수행될 수 있으므로 성능이 향상된다. 따라서, 반도체 메모리 장치의 성능을 향상시키기 위해서 다중 플레인 구조가 사용된다.
그런데, 플래시 메모리에서 배드 블록(bad block)이 발생하면, 반도체 메모리 장치의 신뢰성을 보장하기 위해 배드 블록은 검출(detect)되고, 정상 블록으로 교체(replacement)되어야 한다. 배드 블록은 정상적으로 데이터를 저장하거나 읽어내는 것이 불가능한 블록을 의미하며, 출하시부터 포함되거나 후발적인 요인에 의해서 생성된다. 특히, 다중 플레인 구조 반도체 메모리에서 배드 블록이 생성된 경우의 교체 방법이 문제된다.
본 발명의 목적은 다중 플레인 구조 반도체 메모리의 배드 블록 교체시, 다중 교체 또는 단일 교체를 병용함으로써 반도체 메모리 장치의 성능을 향상시키고 데이터 영역을 더욱 확보할 수 있는 블록 관리 방법을 제공하는 것이다.
본 발명의 다른 목적은 다중 플레인 구조 반도체 메모리의 배드 블록 교체시, 데이터 영역을 사용함으로써 반도체 메모리 장치의 성능을 향상시키고 데이터 영역을 더욱 확보할 수 있는 블록 관리 방법을 제공하는 것이다.
본 발명의 예시적인 실시예들은 멀티 플레인 구조의 반도체 메모리 장치의 블록 관리 방법에 있어서: 상기 반도체 메모리 장치는 예비 영역과 데이터 영역으로 구분된 복수의 플레인들을 포함하고, 상기 예비 영역과 데이터 영역 각각은 복수의 블록들을 포함하고, 인접한 플레인에 연속하여 배열된 복수의 블록들은 다중 플레인 연산 그룹을 구성하며, 상기 블록 관리 방법은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는지 여부에 따라 제 1 또는 제 2 동작을 수행하며, 상기 제 1 동작에서는 상기 데이터 영역의 블록들이 상기 다중 플레인 연산 그룹 단위로 상기 예비 영역의 비어있는 블록들로 교체되고, 상기 제 2 동작에서는 상기 데이터 영역의 블록이 상기 예비 영역의 비어있는 블록으로 교체되는 방법을 제공한다.
예시적인 실시예에 있어서, 상기 예비 영역에 비어있는 블록이 존재하는지 여부에 따라 상기 데이터 영역의 블록이 상기 데이터 영역의 기 교체된 유효 블록 중 비어있는 블록으로 교체되는 제 3 동작을 수행한다.
예시적인 실시예에 있어서, 상기 제 1 동작은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는 경우에 수행된다.
예시적인 실시예에 있어서, 상기 제 2 동작은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하지 않는 경우에 수행된다.
예시적인 실시예에 있어서, 상기 제 3 동작은 상기 예비 영역에 비어있는 블록이 존재하지 않는 경우에 수행된다.
예시적인 실시예에 있어서, 상기 예비 영역은 상기 데이터 영역에 존재하는 배드 블록의 교체를 위해 구비된다.
예시적인 실시예에 있어서, 블록 교체 정보를 저장하는 단계를 더 포함한다.
예시적인 실시예에 있어서, 상기 다중 플레인 연산 그룹을 하나의 단위로 하여 다중 플레인 연산이 수행된다.
본 발명의 다른 예시적인 실시예들은 반도체 메모리 장치에 있어서: 예비 영역과 데이터 영역으로 구분된 복수의 플레인들; 및 제어 모듈을 포함하고, 상기 예비 영역과 데이터 영역 각각은 복수의 블록들을 포함하고, 인접한 플레인에 연속하여 배열된 복수의 블록들은 다중 플레인 연산 그룹을 구성하며, 상기 제어 모듈은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는지 여부에 따라 제 1 또는 제 2 동작이 수행되도록 상기 복수의 플레인들을 제어하며, 상기 제 1 동작에서는 상기 데이터 영역의 블록들이 상기 다중 플레인 연산 그 룹 단위로 상기 예비 영역의 비어있는 블록들로 교체되고, 상기 제 2 동작에서는 상기 데이터 영역의 블록이 상기 예비 영역의 비어있는 블록으로 교체되는 장치를 제공한다.
예시적인 실시예에 있어서, 상기 제어 모듈은 상기 예비 영역에 비어있는 블록이 존재하는지 여부에 따라 상기 데이터 영역의 블록이 상기 데이터 영역의 기 교체된 유효 블록 중 비어있는 블록으로 교체되는 제 3 동작이 수행되도록 상기 복수의 플레인들을 제어한다.
예시적인 실시예에 있어서, 상기 제어 모듈은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는 경우에 상기 제 1 동작이 수행되도록 상기 복수의 플레인들을 제어한다.
예시적인 실시예에 있어서, 상기 제어 모듈은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하지 않는 경우에 상기 제 2 동작이 수행되도록 상기 복수의 플레인들을 제어한다.
예시적인 실시예에 있어서, 상기 제어 모듈은 상기 예비 영역에 비어있는 블록이 존재하지 않는 경우에 상기 제 3 동작이 수행되도록 상기 복수의 플레인들을 제어한다.
예시적인 실시예에 있어서, 상기 예비 영역은 상기 데이터 영역에 존재하는 배드 블록의 교체를 위해 구비된다.
예시적인 실시예에 있어서, 상기 제어 모듈은 블록 교체 정보를 저장하도록 구성된다.
예시적인 실시예에 있어서, 상기 다중 플레인 연산 그룹을 하나의 단위로 하여 다중 플레인 연산이 수행된다.
본 발명의 또 다른 예시적인 실시예들은 반도체 메모리 장치와; 그리고 상기 반도체 메모리 장치를 제어하도록 구성된 컨트롤러를 포함하며, 상기 반도체 메모리 장치는 청구항 1에 기재된 블록 관리 방법에 따라 데이터가 관리되는 메모리 카드를 제공한다.
본 발명의 또 다른 예시적인 실시예들은 반도체 메모리 장치와; 그리고 상기 반도체 메모리 장치를 제어하도록 구성된 컨트롤러를 포함하며, 상기 반도체 메모리 장치는 청구항 9에 기재된 반도체 메모리 장치인 메모리 카드를 제공한다.
본 발명에 의하면, 배드 블록 교체시 다중 교체 또는 단일 교체를 병용함으로써 반도체 메모리 장치의 성능을 향상시키고 데이터 영역을 더욱 확보하는 것이 가능해진다.
본 발명에 의하면, 배드 블록 교체시, 데이터 영역을 이용함으로써 반도체 메모리 장치의 성능을 향상시키고 데이터 영역을 더욱 확보하는 것이 가능해진다.
다중 플레인 구조에서 배드 블록을 교체하기 위한 여러 가지 방법들이 사용된다. 도 2는 배드 블록과 이에 인접한 블록을 동시에 교체하는 방법을 보여주는 도면이다. 이하에서, 이러한 교체 방법은 다중 교체(multi replacement)로 불릴 것이다.
도 2에 도시된 플래시 메모리의 각 플레인(PLN0, PLN1)은 데이터 영역(DAT)과 예비 영역(RSV)으로 나누어진다. 데이터 영역(DAT)은 일반적인 사용자 데이터를 위해 사용되고, 예비 영역(RSV)은 배드 블록을 교체하기 위해 사용된다. 본 발명의 일부 실시예들에 있어서, 데이터 영역(DAT)은 6개의 블록들(BLK0 ~ BLK5)을 포함하고, 예비 영역(RSV)은 4개의 블록들(BLK6 ~ BLK9)을 포함한다. 단, 본 발명은 이러한 구성에 의해 한정되지 않으며, 데이터 영역 및 예비 영역에 포함된 블록들의 수는 변경될 수 있다.
도 2(a)를 참조하면, 본 발명의 일부 실시예들에 있어서, 블록(BLK2)은 배드 블록(bad block)이고 이에 인접한 블록(BLK3)는 정상 블록(valid block)인 것으로 가정된다. 반도체 메모리 장치의 신뢰성 향상을 위해 배드 블록(BLK2)는 정상 블록으로 교체되어야 한다. 도 2(b)에서는 배드 블록(BLK2)과 인접한 블록(BLK3)이 함께 교체되는 다중 교체 방법이 설명될 것이다.
도 2(b)를 참조하면, 데이터 영역(DAT)의 블록들(BLK2, BLK3)이 예비 영역(RSV)의 블록들(BLK6, BLK7)로 교체된다. 교체 동작이 끝난 후, 교체(mapping) 정보가 표의 형태로 저장된다. 전원이 공급되지 않는 경우에도 교체 정보가 유지되기 위해, 교체 정보는 비휘발성 메모리 장치에 저장될 수 있다.
도 2(d)는 각 블록의 교체 상태(mapping status)를 보여주는 사상 표(mapping table)이다. 도 2(d)를 참조하면, 예를 들어, 데이터 영역의 배드 블록(BLK2)은 예비 영역의 블록(BLK6)으로 교체된다. 따라서, 외부(예를 들면, 호스트)로부터 블록(BLK2)에 접근할 것을 요구하는 명령이 입력되면, 사상 표의 참조에 의해 예비 영역의 블록(BLK6)이 액세스 된다.
도 2(c)는 교체 동작이 완료된 후의 다중 플레인 연산을 보여준다. 도시된 바와 같이, 블록들(BLK6, BLK7)에 대해서 동시에 플래시 연산(OP1)이 수행되므로 한번에 하나의 블록에 대해 연산을 수행하는 단일 플레인 연산에 비해 시스템의 성능이 향상된다. 그러나, 블록(BLK3)은 실제로는 사용 가능한(usable) 블록들임에도 불구하고 사용되지 못하게 된다. 결국, 사용 가능한 데이터 영역이 감소되는 문제가 생긴다.
도 3은 배드 블록만을 단독으로 교체하는 방법을 보여주는 도면이다. 이하에서, 이러한 교체 방법은 단일 교체(single replacement)로 불릴 것이다. 도 3에 도시된 반도체 메모리 장치는 도 2의 경우와 같은 위치(BLK2)에 배드 블록을 가진다.
도 3(b)에서는 배드 블록(BLK2)이 단독으로 교체되는 방법이 설명될 것이다. 도 3(b)를 참조하면, 데이터 영역의 배드 블록(BLK2)만이 예비 영역(RSV)의 블록(BLK6)으로 교체된다. 교체 동작이 완료된 후, 교체 정보가 표의 형태로 저장된다.
도 3(d)는 각 블록의 교체 상태를 보여주는 사상 표(mapping table)이다. 도 3(d)를 참조하면, 데이터 영역의 배드 블록(BLK2)은 예비 영역의 블록(BLK6)으로 교체된다. 따라서, 외부(예를 들면, 호스트)로부터 블록(BLK2)에 접근할 것을 요구하는 명령이 입력되면, 사상 표가 참조되어 예비 영역의 블록(BLK6)이 액세스 된다.
도 3(c)는 데이터 영역의 블록(BLK2)이 정상 블록(BLK6)으로 교체된 후의 플 래시 연산을 보여준다. 외부로부터 블록들(BLK2, BLK3)에 대한 연산 명령이 입력되면, 사상 표에 의해 블록들(BLK6, BLK3)에 대한 연산이 수행된다. 이 경우, 블록들(BLK6, BLK3)이 인접한 플레인에 연속하여 위치하지 않기 때문에 다중 플레인 연산이 수행될 수 없고, 두 번의 단일 플레인 연산들(OP1, OP2)이 수행된다. 따라서, 한번에 두 개의 블록에 대해 연산이 수행되는 다중 플레인 연산 보다 시스템의 성능이 저하된다. 그러나, 정상 블록(BLK3)이 사용될 수 있기 때문에 데이터 영역의 용량이 더욱 확보되는 장점이 있다.
도 4는 본 발명에 따른 블록 관리 방법을 설명하기 위한 블록도이다.
도 4를 참조하면, 본 발명에 따른 반도체 메모리 장치(100)는 플래시 메모리(110)와 제어 모듈(120)을 포함한다. 이하, 도면에서 동일한 참조 번호는 동일한 구성 요소를 나타내기 위해 사용된다.
플래시 메모리(110)는 데이터 영역(DAT1 ~ DATn)과 예비 영역(RSV1 ~ RSVn)으로 나누어진 복수의 플레인들(111 ~ 11n)을 포함한다. 도면에는 도시되지 않았지만, 각각의 플레인은 복수의 블록들을 포함하고, 각각의 블록은 행들(또는 워드 라인들) 및 열들(또는 비트 라인들)의 매트릭스(Matrix) 형태로 배열된 메모리 셀들로 구성된다. 단, 본 발명의 범위는 이러한 구성에 한정되지 않는다. 예를 들면, 반도체 메모리 장치 내의 데이터 영역과 예비 영역의 크기 및 위치는 임의로 변경될 수 있다.
본 발명의 예시적인 실시예에 있어서, 두 개의 플레인들(120)을 단위로 하여 다중 플레인 연산이 수행된다. 따라서, 이하에서는 두 개의 플레인들(120)을 단위 로 한 다중 플레인 연산이 주로 설명될 것이다. 그러나, 본 발명의 범위는 이러한 구성에 의해 한정되지 않고, 두 개 이상의 플레인들에 대해 다중 플레인 연산이 수행될 수 있다.
배드 블록의 생성 여부는 배드 블록 감지 모듈에 의해 수행된다. 배드 블록 감지 모듈은 제어 모듈에 포함될 수 있다. 또는, 배드 블록 감지 모듈은 독립한 구성일 수 있다. 배드 블록 감지 모듈은 이미 알려진 배드 블록 감지 방법을 이용하여 배드 블록을 감지한다. 따라서, 배드 블록 감지 모듈에 대한 자세한 설명은 생략된다. 배드 블록 감지 결과는 제어 모듈(120)에 전달된다.
제어 모듈(120)은 플래시 메모리(100)의 전반적인 동작을 제어하도록 구성된다. 본 발명의 예시적인 실시예에 따르면, 제어 모듈(120)은 배드 블록을 정상 블록으로 교체하기 위한 일련의 동작들을 제어한다. 또한, 본 발명의 예시적인 실시예에 따르면, 제어 모듈(120)은 반도체 메모리 장치(100)의 일부로서 포함되지만, 본 발명의 범위는 이러한 구성에 한정되지 않는다. 예를 들면, 플래시 메모리 카드에서 제어 모듈(120)은 반도체 메모리 장치(100)의 외부에 위치할 수 있다.
제어 모듈(120)은 호스트로부터 수신되는 제어 신호에 응답하여 메모리 셀 어레이(110)에 대한 연산을 수행한다. 제어 신호는 다중 플레인 연산의 종류(program, read, erase)에 대한 정보, 다중 플레인 연산이 수행될 플레인들의 개수에 대한 정보 등을 적어도 포함할 수 있다. 또한, 제어 모듈(120)은 사상 정보를 사상 표에 저장되도록 제어한다. 사상 표에는 블록의 교체 정보가 기록된다. 사상 표는 전원이 공급되지 않는 경우에도 교체 정보가 유지될 수 있도록 비휘발성 메모 리 장치로 구성될 수 있다. 사상 표는 플래시 메모리(110)의 일부에 저장되거나 별도의 비휘발성 메모리에 저장될 수 있다. 사상 표에 저장된 블록의 교체 정보는 제어 모듈(120)에 의해 참조된다.
도 5는 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법을 보여주는 흐름도이다. 이하, 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법이 도 4 및 도 5를 참조하여 자세히 설명될 것이다. 본 실시예에 있어서, 다중 플레인 연산은 두 개의 플레인에 대해 수행되는 것으로 가정된다. 따라서, 이하에서는 도 4에 도시된 플레인들(111~11n) 중 두 개의 플레인들(111, 112)이 예로서 설명될 것이다.
도 5를 참조하면, 먼저 두 개의 플레인들(111, 112)에 배드 블록이 생성되었는지 여부가 검출된다(S210). 배드 블록의 생성 여부는 배드 블록 감지 모듈에 의해 검출된다. 배드 블록 감지 모듈은 감지 결과를 제어 모듈(120)에 전달한다.
배드 블록이 감지되면 먼저, 예비 영역(RSV1, RSV2)에 두 개의 연속한 비어있는 블록들이 존재하는지 여부가 검출된다(S220). 여기서, 연속한 블록들이라 함은 인접한 플레인에 연속하여 위치하는 블록들을 의미한다. 예를 들어, 도 2의 블록들(BLK2, BLK3)은 연속한 블록들에 해당한다. 다중 플레인 연산은 연속한 블록들에 대하여 수행되기 때문에, 이하에서 연속한 블록들은 다중 플레인 연산 그룹(multi plane operation group)으로 불릴 것이다.
예비 영역(RSV1, RSV2)에 두 개의 연속한 비어있는 블록들이 존재하면, 배드 블록과 그에 인접한 블록이 함께 교체된다(S230). 배드 블록과 그에 인접한 블록을 함께 교체하는 이유는 다중 플레인 연산을 수행하기 위함이다. 블록의 교체가 끝난 후, 블록 교체 정보(mapping status)는 사상 표에 저장된다. 또한, 배드 블록과 함께 교체된 유효 블록(BLK3)에 대한 정보가 저장된다(S280). 블록 교체 정보와 마찬가지고, 유효 블록에 대한 정보는 비휘발성 메모리 장치에 저장될 수 있다. 여기서, 유효 블록이라 함은 사용 가능한 블록임에도 불구하고 배드 블록과 함께 교체된 블록을 의미한다. 이후, 배드 블록 교체 동작은 종료된다.
반면에, 예비 영역(RSV1, RSV2)에 두 개의 연속한 비어있는 블록들이 존재하지 않으면, 예비 영역(RSV1, RSV2)에 비어있는 블록이 존재하는지 여부가 검사된다(S240). 예비 영역(111)에 비어있는 블록이 존재하면, 배드 블록만이 교체된다(S250). 블록의 교체가 끝난 후, 블록 교체 정보는 사상 표에 저장되고(S280), 배드 블록 교체 동작은 종료된다.
반면에, 예비 영역(111)에 비어있는 블록이 존재하지 않으면, 데이터 영역(112)에 배드 블록과 함께 교체된 블록이 존재하는지 여부가 검출된다(S260). 이러한 검출을 위해 기 저장된 유효 블록에 대한 정보가 참조된다. 배드 블록에 인접한 블록은 유효한 블록임에도 불구하고 다중 플레인 연산을 위해 함께 교체된 것이기 때문에 다른 배드 블록의 교체를 위해 사용될 수 있다(S270). 배드 블록의 교체가 끝난 후, 블록 교체 정보는 사상 표에 저장되고(S280), 배드 블록 교체 동작은 종료된다. 반면에, 데이터 영역(DAT1, DAT2)에 비어있는 블록이 존재하지 않으면, 배드 블록은 교체되지 않고, 배드 블록 교체 동작은 종료된다.
요약하면, 예비 영역(RSV1, RSV2)에 두 개의 연속한 비어있는 블록들이 존재하면 다중 플레인 연산을 위해 배드 블록과 인접 블록이 함께 교체된다. 그리고, 예비 영역(RSV1, RSV2)에 연속하지 않은 비어있는 블록만이 존재하면, 배드 블록만이 교체된다. 마지막으로, 예비 영역(RSV1, RSV2)에 비어있는 블록이 존재하지 않으면, 데이터 영역(DAT1, DAT2)의 유효 블록을 이용하여 배드 블록이 교체된다. 따라서, 다중 플레인 연산을 통한 속도 향상과 데이터 영역의 용량의 확보를 동시에 실현할 수 있게 된다. 이러한 본 발명의 효과는 도 7 및 도 8을 참조하여 설명될 것이다.
도 6은 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법을 보여주는 블록도이다.
도 6(a)에는 다중 플레인 연산 단위로서 두 개의 플레인들(PLN0, PLN1)이 도시된다. 다시 말하면, 인접한 플레인에 연속하여 위치한 두 개의 블록들에 대해 다중 플레인 연산이 수행된다. 도시된 플레인들(PLN0, PLN1)은 데이터 영역(DAT)과 예비 영역(RSV)으로 구성된다. 예시적으로, 데이터 영역(DAT)은 6개의 블록들(BLK0 ~ BLK5)을 포함하고, 예비 영역(RSV)은 4개의 블록들(BLK6 ~ BLK9)을 포함한다. 블록들(BLK1, BLK2, BLK5, BLK6)은 배드 블록인 것으로 가정된다.
먼저, 배드 블록(BLK2)과 이에 인접한 블록(BLK3)을 함께 교체하기 위해, 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들이 존재하는지 여부가 검출된다. 도 6(b)를 참조하면, 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들(BLK8, BLK9)이 존재한다. 따라서, 블록들(BLK2, BLK3)은 각각 블록들(BLK8, BLK9)로 교체된다. 이 때, 유효 블록(BLK3)에 대한 정보가 저장된다. 유효 블록에 대한 정보는 배드 블록의 교체를 위해 참조될 수 있다.
그 다음, 배드 블록(BLK5)과 이에 인접한 블록(BLK4)을 함께 교체하기 위하여 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들이 존재하는지 여부가 검출된다. 도 6(b)를 참조하면, 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들이 존재하지 않는다. 이어서, 예비 영역(RSV)에 하나의 비어있는 블록이 존재하는지 여부가 검출된다. 예비 영역에 비어있는 블록이 존재하기 때문에 도 6(c)에 도시된 바와 같이, 배드 블록(BLK5)은 예비 영역(RSV)의 블록(BLK7)으로 교체된다.
그 다음, 배드 블록(BLK1)을 교체하기 위하여 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들이 존재하는지 여부가 검출된다. 도 6(c)를 참조하면, 예비 영역에 두 개의 연속한 비어있는 블록들이 존재하지 않는다. 이어서, 예비 영역에 비어있는 블록이 존재하는지 여부가 검출된다. 도 6(d)를 참조하면, 예비 영역(RSV)에 비어있는 블록이 존재하지 않고, 데이터 영역(DAT)에 사용 가능한 블록(BLK3)이 존재한다. 이 경우, 배드 블록(BLK1)은 데이터 영역(DAT) 내의 블록(BLK3)으로 교체된다.
도 6(f)는 블록이 교체된 상태를 보여주는 사상 표(mapping table)이다. 도 6(f)를 참조하면, 블록들(BLK1, BLK2, BLK3, BLK5)은 각각 블록들(BLK3, BLK8, BLK9, BLK7)로 교체된다. 따라서, 외부(예를 들면, 호스트)로부터 블록(BLK1)에 접근할 것을 요구하는 명령이 입력되면, 사상 표에 의해 예비 영역의 블록(BLK3)이 액세스 된다.
도 7은 본 발명의 다른 실시예에 따른 반도체 메모리 장치의 블록 관리 방법을 보여주는 블록도이다.
도 7(a)에는 다중 플레인 연산 단위로서 두 개의 플레인들(PLN0, PLN1)이 도시된다. 도시된 플레인들(PLN0, PLN1)은 데이터 영역(DAT)과 예비 영역(RSV)으로 구성된다. 예시적으로, 데이터 영역(DAT)은 6개의 블록들(BLK0 ~ BLK5)을 포함하고, 예비 영역(RSV)은 4개의 블록들(BLK6 ~ BLK9)을 포함한다. 블록들(BLK0, BLK2, BLK3, BLK7)은 배드 블록인 것으로 가정된다.
먼저, 배드 블록(BLK0)과 이에 인접한 블록(BLK1)을 함께 교체하기 위해, 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들이 존재하는지 여부가 검출된다. 도 7(b)를 참조하면, 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들(BLK8, BLK9)이 존재한다. 따라서, 블록들(BLK0, BLK1)은 각각 블록들(BLK8, BLK9)로 교체된다. 이때, 유효 블록(BLK1)에 대한 정보가 저장된다. 유효 블록에 대한 정보는 배드 블록의 교체를 위해 참조될 수 있다.
그 다음, 배드 블록들(BLK2, BLK3)을 교체하기 위하여 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들이 존재하는지 여부가 검출된다. 도 7(b)를 참조하면, 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들이 존재하지 않는다. 이어서, 예비 영역(RSV)에 하나의 비어있는 블록이 존재하는지 여부가 검출된다. 예비 영역에 하나의 비어있는 블록이 존재하기 때문에 도 7(c)에 도시된 바와 같이, 배드 블록(BLK2)은 예비 영역(RSV)의 블록(BLK6)으로 교체된다.
그 다음, 배드 블록(BLK3)을 교체하기 위하여 예비 영역(RSV)에 두 개의 연속한 비어있는 블록들이 존재하는지 여부가 검출된다. 도 7(c)를 참조하면, 예비 영역에 두 개의 연속한 비어있는 블록들이 존재하지 않는다. 이어서, 예비 영역에 비어있는 블록이 존재하는지 여부가 검출된다. 도 7(d)를 참조하면, 예비 영역(RSV)에 비어있는 블록이 존재하지 않고, 데이터 영역(DAT)에 사용 가능한 블록(BLK1)이 존재한다. 이 경우, 배드 블록(BLK3)은 데이터 영역(DAT) 내의 블록(BLK1)으로 교체된다.
도 7(e)는 블록이 교체된 상태를 보여주는 사상 표(mapping table)이다. 도 6(f)를 참조하면, 블록들(BLK0, BLK1, BLK2, BLK3)은 각각 블록들(BLK8, BLK9, BLK6, BLK1)로 교체된다. 따라서, 외부(예를 들면, 호스트)로부터 블록(BLK1)에 접근할 것을 요구하는 명령이 입력되면, 사상 표에 의해 예비 영역의 블록(BLK9)이 액세스 된다.
도 8은 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법에서 필요한 예비 영역(RSV)의 크기를 보여주는 도면이다.
배드 블록을 처리하는데 필요한 예비 영역(RSV)이 커질수록 사용 가능한 데이터 영역(DAT)의 크기는 줄어든다. 다중 플레인 구조에서 발생될 수 있는 최악의 경우는 도 8(a)와 같이, 데이터 영역(DAT)에 배드 블록들이 모두 인접하지 않게 발생하는 형태이다. 다중 교체 방법과 본 발명에서 배드 블록을 처리하는데 필요한 영역의 크기는 표 1과 같다.
배드 블록과 인접 블록을 함께 교체
(다중 교체)

본 발명
N개의 배드 블록을 처리하는데 필요한 예비 영역의 크기
N * 플레인의 개수

N
도 8(a)는 배드 블록과 인접 블록을 함께 교체하는 경우(다중 교체)에 필요한 예비 영역(RSV)의 크기를 보여주는 도면이다. 도 8(a)를 참조하면, 데이터 영역(DAT)에 4개의 배드 블록들이 서로 다른 행에 존재한다. 따라서, 배드 블록을 인접 블록과 함께 교체해야 하기 때문에, 예비 영역(RSV)에 총 8개의 블록들이 요구된다.
도 8(b)는 본 발명에 따른 교체 방법의 경우에 필요한 예비 영역(RSV)의 크기를 보여주는 도면이다. 도 8(b)를 참조하면, 예비 영역(RSV)에 두 개의 인접한 비어있는 블록들이 존재하는 경우에는 배드 블록과 인접 블록을 함께 교체(다중 교체)하고, 그렇지 않은 경우에는 예비 영역(RSV) 또는 데이터 영역(DAT)을 이용하여 배드 블록만을 교체(단일 교체)하기 때문에 예비 영역(RSV)에는 모두 4개의 블록만이 요구된다. 결국, 줄어든 예비 영역(RSV)의 크기 만큼 데이터 영역(DAT)을 넓게 사용하는 것이 가능해진다.
도 9는 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법에서의 연산 속도를 보여주는 도면이다.
도 9(a)는 배드 블록과 인접 블록이 함께 교체되는 경우(다중 교체)의 연산을 보여준다. 도 9(a)를 참조하면, 배드 블록과 인접 블록이 함께 교체(다중 교체)되기 때문에 4번의 다중 플레인 연산들이 수행된다. 따라서, 빠른 연산 속도를 갖는다. 도 9(b)는 배드 블록만 교체되는 경우(단일 교체)의 연산을 보여준다. 도 8(b)를 참조하면, 배드 블록만 교체(단일 교체)되기 때문에 8번의 단일 플레인 연산들이 수행된다. 따라서, 느린 연산 속도를 갖는다.
도 9(c)는 본 발명에 따른 블록 관리 방법의 연산을 보여준다. 도 9(c)를 참조하면, 다중 교체와 단일 교체가 병용되기 때문에 2번의 다중 플레인 연산들과, 4번의 단일 플레인 연산들이 수행된다. 따라서, 배드 블록만 교체(단일 교체)될 때보다 연산 속도가 향상된다. 이와 같이, 다중 교체와 단일 교체가 병용됨으로써 반도체 메모리 장치의 연산 속도가 향상되고, 데이터 영역의 용량을 더욱 확보할 수 있다.
도 10은 본 발명에 따른 반도체 메모리 장치를 포함한 컴퓨팅 시스템(300)을 개략적으로 보여주는 블록도이다.
도 10을 참조하면, 컴퓨팅 시스템(300)은 프로세서(310), 컨트롤러(320), 입력 장치들(330), 출력 장치들(340), 플래시 메모리(350), 그리고 주 기억 장치(360)를 포함한다. 도면에서 실선은 데이터 또는 명령이 이동하는 시스템 버스(system bus)를 나타낸다.
본 발명에 따른 컴퓨팅 시스템(300)은 입력 장치들(330)(키보드, 카메라 등)을 통해 외부로부터 데이터를 입력받는다. 입력된 데이터는 사용자에 의한 명령이거나 카메라 등에 의한 영상 데이터 등의 멀티 미디어 데이터일 수 있다. 입력된 데이터는 플래시 메모리(350)에 저장된다.
컨트롤러(320)는 플래시 메모리(350)에 저장된 명령에 응답하여 각 컴포넌트들을 제어한다. 프로세서(310)는 컨트롤러(320)에 의한 제어에 응답하여 프로세스를 처리한다. 처리 결과는 플래시 메모리(350) 또는 주 기억 장치(360)에 저장된다. 출력 장치들(340)은 컨트롤러(320)에 의한 제어에 응답하여 플래시 메모리(350) 또는 주 기억 장치(360)에 저장된 데이터를 출력한다. 출력 장치들(340)은 플래시 메모리(350)에 저장된 데이터를 인간이 감지 가능한 형태로 출력한다. 예를 들어, 출력 장치(340)는 디스플레이 또는 스피커 등이 될 수 있다.
플래시 메모리(350)는 도 4에 도시된 것과 실질적으로 동일하게 구성될 것이다. 프로세서(310), 컨트롤러(320), 입력 장치들(330), 출력 장치들(340), 그리고 주 기억 장치(360)는 호스트를 구성한다.
플래시 메모리(350), 그리고/또는 컨트롤러(320)는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 예를 들면, 플래시 메모리(350) 그리고/또는 컨트롤러(120)는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 등과 같은 패키지들을 이용하여 실장될 수 있다.
비록 도면에는 도시되지 않았지만 컴퓨팅 시스템(300)의 동작에 필요한 전원을 공급하기 위한 전원 공급부가 요구됨은 이 분야의 통상적인 지식을 습득한 자들에게 자명하다. 그리고, 컴퓨팅 시스템(300)이 모바일 장치인 경우, 컴퓨팅 시스템(300)의 동작 전압을 공급하기 위한 배터리가 추가로 포함될 것이다. 플래시 메모리(350)의 성능 및 용량이 향상됨에 따라 컴퓨팅 시스템(300)의 성능 및 용량도 이에 비례하여 향상될 것이다.
또한, 본 발명에 따른 반도체 메모리 장치는 SSD(Solid State Disk)에도 적용될 수 있다. 최근 하드디스크 드라이브(HDD)를 교체해 나갈 것으로 예상되는 SSD 제품이 차세대 메모리시장에서 각광을 받고 있다. SSD는 기계적으로 움직이는 하드디스크 드라이브에 비해 속도가 빠르고 외부 충격에 강하며, 소비전력도 낮다는 장점을 가진다.
본 발명의 범위 또는 기술적 사상을 벗어나지 않고 본 발명의 구조가 다양하게 수정되거나 변경될 수 있음은 이 분야에 숙련된 자들에게 자명하다. 상술한 내용을 고려하여 볼 때, 만약 본 발명의 수정 및 변경이 아래의 청구항들 및 동등물의 범주 내에 속한다면, 본 발명이 이 발명의 변경 및 수정을 포함하는 것으로 여겨진다.
도 1은 단일 플레인 구조와 다중 플레인 구조를 비교하여 보여주는 도면이다.
도 2는 배드 블록과 이에 인접한 블록을 동시에 교체하는 방법을 보여주는 도면이다.
도 3은 배드 블록만을 단독으로 교체하는 방법을 보여주는 도면이다.
도 4는 본 발명에 따른 블록 관리 방법을 설명하기 위한 블록도이다.
도 5는 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법을 보여주는 흐름도이다.
도 6은 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법을 보여주는 블록도이다.
도 7은 본 발명의 다른 실시예에 따른 반도체 메모리 장치의 블록 관리 방법을 보여주는 블록도이다.
도 8은 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법에서 필요한 예비 영역의 크기를 보여주는 도면이다.
도 9는 본 발명에 따른 반도체 메모리 장치의 블록 관리 방법에서의 연산 속도를 보여주는 도면이다.
도 10은 본 발명에 따른 반도체 메모리 장치를 포함한 컴퓨팅 시스템을 개략적으로 보여주는 블록도이다.

Claims (18)

  1. 멀티 플레인 구조의 반도체 메모리 장치의 블록 관리 방법에 있어서:
    상기 반도체 메모리 장치는 예비 영역과 데이터 영역으로 구분된 복수의 플레인들을 포함하고, 상기 예비 영역과 데이터 영역 각각은 복수의 블록들을 포함하고, 인접한 플레인에 연속하여 배열된 복수의 블록들은 다중 플레인 연산 그룹을 구성하며,
    상기 블록 관리 방법은
    상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는지 여부에 따라 제 1 또는 제 2 동작을 수행하며, 상기 제 1 동작에서는 상기 데이터 영역의 적어도 하나의 배드 블록 및 적어도 하나의 유효 블록이 상기 다중 플레인 연산 그룹 단위로 상기 예비 영역의 비어있는 블록들로 교체되고, 상기 제 2 동작에서는 상기 데이터 영역의 배드 블록이 상기 예비 영역의 비어있는 블록으로 교체되는 방법.
  2. 제 1 항에 있어서,
    상기 예비 영역에 비어있는 블록이 존재하는지 여부에 따라 상기 데이터 영역의 배드 블록이 상기 데이터 영역의 기 교체된 유효 블록 중 비어있는 블록으로 교체되는 제 3 동작을 수행하는 방법.
  3. 제 1 항에 있어서,
    상기 제 1 동작은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는 경우에 수행되는 방법.
  4. 제 1 항에 있어서,
    상기 제 2 동작은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하지 않는 경우에 수행되는 방법.
  5. 제 1 항에 있어서,
    상기 다중 플레인 연산 그룹을 하나의 단위로 하여 다중 플레인 연산이 수행되는 방법.
  6. 반도체 메모리 장치에 있어서:
    예비 영역과 데이터 영역으로 구분된 복수의 플레인들; 및
    제어 모듈을 포함하고,
    상기 예비 영역과 데이터 영역 각각은 복수의 블록들을 포함하고, 인접한 플레인에 연속하여 배열된 복수의 블록들은 다중 플레인 연산 그룹을 구성하며,
    상기 제어 모듈은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는지 여부에 따라 제 1 또는 제 2 동작이 수행되도록 상기 복수의 플레인들을 제어하며, 상기 제 1 동작에서는 상기 데이터 영역의 적어도 하나의 배드 블록 및 적어도 하나의 유효 블록이 상기 다중 플레인 연산 그룹 단위로 상기 예비 영역의 비어있는 블록들로 교체되고, 상기 제 2 동작에서는 상기 데이터 영역의 배드 블록이 상기 예비 영역의 비어있는 블록으로 교체되는 장치.
  7. 제 6 항에 있어서,
    상기 제어 모듈은 상기 예비 영역에 비어있는 블록이 존재하는지 여부에 따라 상기 데이터 영역의 배드 블록이 상기 데이터 영역의 기 교체된 유효 블록 중 비어있는 블록으로 교체되는 제 3 동작이 수행되도록 상기 복수의 플레인들을 제어하는 장치.
  8. 제 6 항에 있어서,
    상기 제어 모듈은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하는 경우에 상기 제 1 동작이 수행되도록 상기 복수의 플레인들을 제어하는 장치.
  9. 제 6 항에 있어서,
    상기 제어 모듈은 상기 예비 영역에 상기 다중 플레인 연산 그룹 단위의 비어있는 블록들이 존재하지 않는 경우에 상기 제 2 동작이 수행되도록 상기 복수의 플레인들을 제어하는 장치.
  10. 제 6 항에 있어서,
    상기 다중 플레인 연산 그룹을 하나의 단위로 하여 다중 플레인 연산이 수행되는 장치.
  11. 삭제
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
KR1020070089547A 2007-09-04 2007-09-04 반도체 메모리 장치 및 그것의 블록 관리 방법 KR101399549B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020070089547A KR101399549B1 (ko) 2007-09-04 2007-09-04 반도체 메모리 장치 및 그것의 블록 관리 방법
US12/202,177 US8127071B2 (en) 2007-09-04 2008-08-29 Semiconductor memory device and block management method of the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070089547A KR101399549B1 (ko) 2007-09-04 2007-09-04 반도체 메모리 장치 및 그것의 블록 관리 방법

Publications (2)

Publication Number Publication Date
KR20090024495A KR20090024495A (ko) 2009-03-09
KR101399549B1 true KR101399549B1 (ko) 2014-05-28

Family

ID=40407240

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070089547A KR101399549B1 (ko) 2007-09-04 2007-09-04 반도체 메모리 장치 및 그것의 블록 관리 방법

Country Status (2)

Country Link
US (1) US8127071B2 (ko)
KR (1) KR101399549B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10802751B2 (en) 2018-06-05 2020-10-13 SK Hynix Inc. Memory system and operating method thereof
US11462271B2 (en) 2020-04-03 2022-10-04 Samsung Electronics Co., Ltd. Nonvolatile memory device and operation method thereof

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8904083B2 (en) * 2008-07-30 2014-12-02 Infineon Technologies Ag Method and apparatus for storing data in solid state memory
US20100332942A1 (en) * 2008-09-10 2010-12-30 Arm Limited Memory controller for NAND memory using forward error correction
KR20120003283A (ko) * 2010-07-02 2012-01-10 삼성전자주식회사 데이터 저장 장치 및 그것의 배드 블록 관리 방법
TWI420308B (zh) * 2010-10-13 2013-12-21 Phison Electronics Corp 區塊管理方法、記憶體控制器與記憶體儲存裝置
US8578208B2 (en) * 2011-01-13 2013-11-05 Micron Technology, Inc. Determining location of error detection data
US8959416B1 (en) * 2011-12-16 2015-02-17 Western Digital Technologies, Inc. Memory defect management using signature identification
KR20180026876A (ko) * 2016-09-05 2018-03-14 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
KR102420025B1 (ko) * 2017-06-19 2022-07-13 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
CN108182960A (zh) * 2018-01-12 2018-06-19 江苏华存电子科技有限公司 一种提升储存装置可用容量的坏块管理方法
KR20190092941A (ko) * 2018-01-31 2019-08-08 에스케이하이닉스 주식회사 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법
CN108491740A (zh) * 2018-02-01 2018-09-04 珠海全志科技股份有限公司 一种tf卡性能实时监测方法
US10990472B2 (en) 2018-07-24 2021-04-27 Micron Technology, Inc. Spare substitution in memory system

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060120231A (ko) * 2003-12-30 2006-11-24 쌘디스크 코포레이션 다중 블록 유닛들로의 블록의 적응형 결정론적 그룹화

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6426893B1 (en) 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
US6567290B2 (en) 2000-07-05 2003-05-20 Mosaic Systems, Inc. High-speed low-power semiconductor memory architecture
KR100526186B1 (ko) 2003-04-04 2005-11-03 삼성전자주식회사 플래시 메모리의 오류블록 관리방법 및 장치
US20080052446A1 (en) * 2006-08-28 2008-02-28 Sandisk Il Ltd. Logical super block mapping for NAND flash memory
TWI381393B (zh) * 2008-10-06 2013-01-01 Phison Electronics Corp 區塊管理與更換方法、快閃記憶體儲存系統及其控制器
US8095765B2 (en) * 2009-03-04 2012-01-10 Micron Technology, Inc. Memory block management

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060120231A (ko) * 2003-12-30 2006-11-24 쌘디스크 코포레이션 다중 블록 유닛들로의 블록의 적응형 결정론적 그룹화

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10802751B2 (en) 2018-06-05 2020-10-13 SK Hynix Inc. Memory system and operating method thereof
US11462271B2 (en) 2020-04-03 2022-10-04 Samsung Electronics Co., Ltd. Nonvolatile memory device and operation method thereof

Also Published As

Publication number Publication date
US20090059695A1 (en) 2009-03-05
US8127071B2 (en) 2012-02-28
KR20090024495A (ko) 2009-03-09

Similar Documents

Publication Publication Date Title
KR101399549B1 (ko) 반도체 메모리 장치 및 그것의 블록 관리 방법
US10692582B2 (en) Semiconductor memory device and method of operating the same
JP5736439B2 (ja) ソリッドステート記憶装置におけるトランスレーションレイヤ
KR101942272B1 (ko) 비휘발성 메모리의 제어방법, 이를 구현한 비휘발성 메모리 컨트롤러 및 이를 포함하는 메모리 시스템
US10289557B2 (en) Storage system and method for fast lookup in a table-caching database
KR101421366B1 (ko) 메모리 디바이스들 및 시스템들에서의 부트 파티션들
US20140156966A1 (en) Storage control system with data management mechanism of parity and method of operation thereof
US20160062908A1 (en) Methods for Maintaining a Storage Mapping Table and Apparatuses using the Same
US20120324178A1 (en) Data storage system having multi-bit memory device and on-chip buffer program method thereof
KR20110084926A (ko) 고체 저장 디바이스에서의 핫 메모리 블록 테이블
US20180211707A1 (en) Semiconductor memory device and method of controlling semiconductor memory device
US10283196B2 (en) Data writing method, memory control circuit unit and memory storage apparatus
CN111158579B (zh) 固态硬盘及其数据存取的方法
US20150339223A1 (en) Memory system and method
US11954364B2 (en) Memory system and method of writing data to storage areas constituting group
KR20120055707A (ko) 메모리 시스템
US20240094930A1 (en) Storage Controller Redirecting Write Operation And Operating Method Thereof
US10365834B2 (en) Memory system controlling interleaving write to memory chips
US8370564B2 (en) Access control device, information processing device, access control program and access control method
US20150339069A1 (en) Memory system and method
US20220035566A1 (en) Pre-suspend before program in a non-volatile memory (nvm)
US9852068B2 (en) Method and apparatus for flash memory storage mapping table maintenance via DRAM transfer
KR101070511B1 (ko) Ssd 컨트롤러 및 ssd 컨트롤러의 동작 방법
CN105868046B (zh) 存储装置中管理、写入及加载固件代码的方法
US20230130884A1 (en) Method of scheduling commands for memory device and memory system performing the same

Legal Events

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

Payment date: 20170427

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180430

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190429

Year of fee payment: 6