KR20080017982A - 플래시 메모리 시스템 및 그 프로그램 방법 - Google Patents

플래시 메모리 시스템 및 그 프로그램 방법 Download PDF

Info

Publication number
KR20080017982A
KR20080017982A KR1020060079947A KR20060079947A KR20080017982A KR 20080017982 A KR20080017982 A KR 20080017982A KR 1020060079947 A KR1020060079947 A KR 1020060079947A KR 20060079947 A KR20060079947 A KR 20060079947A KR 20080017982 A KR20080017982 A KR 20080017982A
Authority
KR
South Korea
Prior art keywords
flash memory
channel
data
buffer
memory cell
Prior art date
Application number
KR1020060079947A
Other languages
English (en)
Inventor
강신욱
이동우
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020060079947A priority Critical patent/KR20080017982A/ko
Priority to US11/730,800 priority patent/US7765359B2/en
Priority to JP2007211796A priority patent/JP2008052728A/ja
Publication of KR20080017982A publication Critical patent/KR20080017982A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)

Abstract

복수 개의 버퍼를 이용하여 각 채널부에 데이터를 순차적으로 전송하는 동시에 호스트로부터 전송되는 데이터를 저장함으로써 전체 대역폭을 증가시고 데이터의 기록 속도를 향상시키는 플래시 메모리 시스템 및 그 프로그램 방법이 개시된다. 본 발명에 따른 플래시 메모리 시스템은 호스트로부터 전송되는 저장 데이터를 일시 저장하는 복수 개의 버퍼들을 구비하는 버퍼부와, 복수 개의 메모리 셀 어레이들을 구비하는 적어도 하나의 플래시 메모리 칩들을 포함하는 복수 개의 채널부 및 버퍼부에 저장된 데이터가 복수 개의 채널부에 순차적으로 전송되도록 제어하고, 전송된 저장 데이터가 채널부에 구비된 플래시 메모리 칩들의 메모리 셀 어레이에 기록되도록 제어하는 제어부를 포함하는 것을 특징으로 한다.

Description

플래시 메모리 시스템 및 그 프로그램 방법{Flash memory system and program method thereof}
도 1은 종래 기술에 따른 복수 개의 플래시 메모리 칩을 이용한 2채널 방식의 플래시 메모리 시스템의 구성을 나타낸 도면이다.
도 2는 도 1의 플래시 메모리 시스템에 기록되는 데이터의 전송 순서를 나타낸 도면이다.
도 3은 본 발명에 따른 플래시 메모리 시스템을 나타낸 블록도이다.
도 4는 도 3의 플래시 메모리 칩의 구성을 간략하게 나타낸 블록도이다.
도 5는 본 발명에 따른 플래시 메모리 시스템에 전송되는 기록할 데이터의 전송 순서를 나타낸 도면이다.
도 6은 도 3의 플래시 메모리 시스템(300)의 각 채널부의 동작 상태를 나타낸 타이밍도이다.
본 발명은 메모리 장치 및 그 프로그램 방법에 관한 것으로, 보다 상세하게는 복수 개의 버퍼를 이용하여 각 채널부에 데이터를 순차적으로 전송하는 동시에 호스트로부터 전송되는 데이터를 저장함으로써 전체 대역폭을 증가시고 데이터의 기록 속도를 향상시키는 플래시 메모리 시스템 및 그 프로그램 방법에 관한 것이다.
플래시 메모리는 전기적으로 데이터를 삭제하거나 다시 기록할 수 있는 비휘발성 기억 소자로서, 셀과 비트라인의 연결 상태에 따라 노어(NOR) 형과 낸드(NAND) 형으로 구분된다.
낸드 플래시 메모리는 정보를 저장하기 위한 저장 영역으로서 메모리 셀 어레이를 포함하며, 메모리 셀 어레이는 복수 개의 셀 스트링(또는 낸드 스트링(NAND string)이라 불림)으로 이루어져 있다. 메모리 셀 어레이에 데이터를 저장하거나, 그것으로부터 데이터를 읽기 위해서 플래시 메모리에는 페이지 레지스터 회로가 제공된다. 널리 알려진 바와 같이 낸드 플래시 메모리의 메모리 셀은 F-N 터널링 전류(Folwer-Nordheim tunneling current)를 이용하여 소거 및 프로그램된다.
데이터를 메모리 셀 어레이에 저장하기 위해서는 먼저 쓰기(Write) 명령이 플래시 메모리에 주어지고, 어드레스 및 데이터가 플래시 메모리에 연속적으로 입력된다. 일반적으로, 프로그램될 데이터는 바이트 또는 워드 단위로 페이지 레지스터 회로에 순차적으로 전달된다. 프로그램될 데이터 즉, 한 페이지 분량의 데이터가 모두 페이지 레지스터 회로에 로드되면, 페이지 레지스터 회로에 보관된 데이터는 프로그램 명령에 따라 메모리 셀 어레이에 동시에 프로그램된다.
이러한 플래시 메모리 시스템의 기록 속도를 향상시키기 위해서 종래에는 각 채널마다 복수 개의 플래시 메모리 칩을 이용하여 칩 사이에 인터리브 방식을 적용 하여 페이지 데이터를 프로그램하거나, 채널의 수를 증가시켜 각 채널에 저장할 페이지 데이터를 할당하는 방법이 제안된 바 있다.
도 1은 종래 기술에 따른 복수 개의 플래시 메모리 칩을 이용한 2채널 방식의 플래시 메모리 시스템의 구성을 나타낸 도면이고, 도 2는 도 1의 플래시 메모리 시스템에 기록할 데이터를 전송하는 순서를 나타낸 도면이다.
도 1을 참조하면, 종래 기술에 따른 2채널 방식의 플래시 메모리 시스템(20)은 호스트(10)와 통신을 수행하여 기록할 데이터를 전송받는 호스트 인터페이스부(21), 전송받은 데이터를 저장하는 버퍼부(22), 제어부(24) 및 제 1 내지 제 4 플래시 메모리 칩(25,26,27,28)을 포함한다. 여기서, 제 1 및 제 2 플래시 메모리 칩들(25,26)은 제 1 채널부(CH1)를 구성하며, 제 3 및 제 4 플래시 메모리 칩들(27,28)은 제 2 채널부(CH2)를 구성한다.
호스트(10)는 기록할 데이터를 소정 크기의 데이터 단위로 분리하여 전송한다. 호스트(10)로부터 전송되어 버퍼부(22)에 일시 저장된 데이터는 제 1 및 제 2 채널부(CH1, CH2) 각각에 할당되어 저장된다. 예를 들어, 도 2를 참조하면 호스트(10)로부터 2개의 4Kbyte의 페이지 데이터(P1,P2)를 구비하는 8Kbyte 크기의 클러스터가 전송되면, 첫 번째 페이지 데이터(P1)는 제 1 채널부(CH1)에 할당되어 저장되고 두 번째 페이지 데이터(P2)는 제 2 채널부(CH2)에 할당되어 저장된다. 각 채널부(CH1, CH2)는 인터리브 방식을 적용하여 그 내부에 구비된 플래시 메모리 칩 각각에 2Kbyte 크기의 페이지 데이터를 기록한다. 구체적으로, 제 1 채널부(CH1)에 할당된 4Kbyte 크기의 첫 번째 페이지 데이터(P1)는 2Kbyte 페이지 단위로 분리 되어 각각 제 1 플래시 메모리 칩(25) 및 제 2 플래시 메모리 칩(26)에 인터리브 방식을 통해 저장되고, 제 2 채널부(CH2)에 할당된 4Kbyte 크기의 두 번째 페이지 데이터(P2)는 2Kbyte 페이지 단위로 분리되어 각각 제 3 플래시 메모리 칩(27) 및 제 4 플래시 메모리 칩(28)에 인터리브 방식을 통해 저장된다. 이와 같은 종래 기술에 따르면, 하나의 채널부만을 갖는 플래시 메모리 시스템에서 2Kbyte의 데이터가 기록될 시간 동안 2배인 4Kbyte의 데이터를 기록할 수 있다.
그러나, 종래 기술에 따르면 동일 채널 상에 구비된 칩 사이에 인터리브 방식을 적용하거나 채널을 확장하는 경우에도 데이터 기록 속도의 향상에는 한계가 있다. 한 개의 채널에 구비된 복수 개의 메모리 셀 어레이나 복수 개의 플래시 메모리 칩에 인터리브 방식으로 데이터를 기록하는 경우에 플래시 메모리 칩 고유의 기록 시간(tWC)에 의하여 대역폭이 제한된다. 예를 들어, 1byte 데이터의 기록 시간(tWC)이 25ns라고 하면, 인터리브 방식을 적용하여 대역폭을 향상시킨 경우에도 가능한 최대 대역폭은 40MB/s(=1byte/25ns)로 제한된다. 또한, 대역폭의 확장을 위해서 채널수를 증가시키는 경우에는 호스트로부터 플래시 메모리 시스템에 전송되는 데이터의 크기가 증가하고 이로 인해 호스트로부터 전송되는 데이터를 일시 저장하는 버퍼의 크기가 증가하는 문제점이 있다. 상기 예에서, 2개의 채널부(CH1, CH2)를 구비하는 플래시 메모리 시스템(20)의 경우 각 채널부(CH1, CH2)에 할당되는 4Kbyte의 페이지 데이터를 제공하기 위해서, 호스트(10)는 8Kbyte의 데이터 단위를 전송하여야 하고, 버퍼는 최소 8Kbyte 크기를 갖어야 한다. 또한, 물리적인 데이터 액세스 단위가 증가하여 클러스터 갭(cluster gap)이 발생할 수 있다. 예를 들어, 실제 기록할 데이터가 2Kbyte에 불과한 경우에도, 호스트(10)에서는 8Kbyte 크기의 클러스터 단위로 데이터를 전송함으로써 클러스터 내부에 빈 공간이 발생될 수 있다.
따라서, 본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 호스트로부터 전송되는 데이터 크기를 증가시키지 않고, 기록 속도 및 대역폭을 향상시키는 플래시 메모리 장치 및 그 프로그램 방법을 제공하는 데에 목적이 있다.
상기와 같은 기술적 과제를 해결하기 위하여 본 발명에 따른 플래시 메모리 시스템은 호스트로부터 전송되는 저장 데이터를 일시 저장하는 복수 개의 버퍼들을 구비하는 버퍼부; 복수 개의 메모리 셀 어레이들을 구비하는 적어도 하나의 플래시 메모리 칩들을 포함하는 복수 개의 채널부; 및 상기 버퍼부에 저장된 상기 저장 데이터가 상기 복수 개의 채널부에 순차적으로 전송되도록 제어하고, 상기 전송된 저장 데이터가 상기 채널부에 구비된 플래시 메모리 칩들의 메모리 셀 어레이에 기록되도록 제어하는 제어부를 포함하는 것을 특징으로 한다.
상기 제어부는 상기 복수 개의 버퍼들 중 하나의 버퍼는 일시 저장된 데이터를 상기 채널부에 전송하는 동시에 다른 하나의 버퍼는 상기 호스트로부터 전송되는 데이터를 저장하도록 제어하는 것이 바람직하다.
상기 버퍼부는 상기 복수 개의 채널부의 수를 n(n은 정수)이라고 할 때, (n+1)개의 버퍼를 구비하는 것이 바람직하다.
상기 버퍼는 적어도 상기 메모리 셀 어레이에 기록되는 하나의 페이지를 저장할 수 있는 저장 용량을 갖는 것이 바람직하다.
상기 복수 개의 채널부의 수를 n(n은 정수), 상기 메모리 셀 어레이에 기록되는 하나의 페이지 크기를 s라고 할 때, 상기 버퍼부에 구비된 버퍼들의 총 저장 용량은 적어도 s×(n+1) 인 것이 바람직하다.
상기 제어부는 상기 복수 개의 채널부를 독립적으로 제어하기 위하여 상기 복수 개의 채널부 각각에 연결된 복수 개의 메모리 제어부를 구비하며, 상기 각 채널부에 연결된 메모리 제어부는 동일 채널 상의 상기 메모리 셀 어레이에 상기 버퍼로부터 전송된 데이터를 인터리브 방식으로 기록하는 것이 바람직하다.
본 발명에 따른 플래시 메모리 시스템의 프로그램 방법은 호스트로부터 전송되어 복수 개의 버퍼들에 저장된 데이터를, 복수 개의 메모리 셀 어레이들을 구비하는 적어도 하나의 플래시 메모리 칩들을 포함하는 복수 개의 채널부에 순차적으로 전송하고 상기 버퍼들 중 빈 버퍼에 상기 호스트로부터 전송되는 데이터를 저장하는 단계; 및 상기 전송된 저장 데이터를 상기 각 채널부에 구비된 플래시 메모리 칩들의 메모리 셀 어레이에 기록하는 단계를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세히 설명한다.
도 3은 본 발명에 따른 플래시 메모리 시스템을 나타낸 블록도이다.
도 3을 참조하면, 본 발명에 따른 플래시 메모리 시스템(300)은 호스트 인터페이스부(320), 복수 개의 버퍼들(331 내지 335)을 구비하는 버퍼부(330), 제어 부(340) 및 복수 개의 플래시 메모리 칩(351,352,353,354)을 포함한다. 여기서, 플래시 메모리 칩들(351,352,353,354) 각각은 하나의 채널부(CH1,CH2,CH3, CH4)를 형성한다. 도 1에 도시된 바에 한정되지 않고, 각 채널부(CH1,CH2,CH3, CH4)는 한 개 이상의 플래시 메모리 칩들을 더 구비할 수 있다.
호스트 인터페이스부(320)는 호스트(360)로부터 전송되는 페이지 데이터를 전송 순서에 따라서 복수 개의 버퍼들(331 내지 335)에 순차적으로 전달한다.
버퍼부(320)에 구비된 복수 개의 버퍼들(331 내지 335)은 호스트(360)로부터 전송된 데이터를 일시 저장하고, 제어부(340)의 제어에 따라 저장된 데이터를 복수 개의 플래시 메모리 칩(351,352,353,354)들에 순차적으로 전송한다. 또한, 복수 개의 버퍼들(331 내지 335) 중 빈 상태가 된 버퍼에는 호스트(360)로부터 전송되는 데이터가 다시 저장된다. 이와 같이, 본 발명에 따른 플래시 메모리 장치(300)는 복수 개의 버퍼들(331 내지 335)을 구비함으로써 제어부(340)의 제어에 의해 어느 하나의 버퍼에 저장된 페이지 데이터를 복수 개의 플래시 메모리 칩(351,352,353,354)들에 순차적으로 전송하는 동시에 호스트(360)로부터 전송되는 페이지 데이터를 저장하는 것이 가능하다.
여기서, 플래시 메모리 시스템(300)에 구비된 채널부의 수를 n(n은 정수)이라고 할 때, 버퍼들(331 내지 335)의 개수는 (n+1)개인 것이 바람직하다. 도 3에서는 플래시 메모리 시스템(300)에 4개의 채널부(CH1 내지 CH4)를 구비하고 있으므로 버퍼부(330)에 5개의 버퍼들(331 내지 335)이 구비된 경우를 도시하였다. 이와 같이 n개의 채널부를 구비하는 플래시 메모리 시스템에 (n+1)개의 버퍼를 형성하는 이유는 n개의 버퍼로부터 채널부에 데이터가 전송되는 동안에 남은 하나의 버퍼가 호스트로부터 전송되는 데이터를 저장할 수 있도록 하기 위해서다. 이와 같이 복수 개의 버퍼들을 이용하여 순환적인 구조로 호스트로부터 전송되는 데이터를 저장하면서 채널부에 순차적으로 데이터를 전송하는 경우, 호스트로부터 전송되는 데이터 크기를 증가시키지 않고서도 데이터의 기록 속도 및 대역폭을 향상시킬 수 있다. 즉, 종래 기술에 따른 플래시 메모리 장치는 호스트로부터 채널부의 수에 비례하는 크기를 갖는 데이터를 전송받아 하나의 버퍼에 저장하고, 채널부에 데이터를 분할하여 할당하는 방식이지만, 본원 발명에 따른 플래시 메모리 장치(300)는 하나의 채널부의 기록에 필요한 크기의 데이터를 연속적으로 전송받아 복수 개의 버퍼부에 저장한 다음 이를 순차적으로 각 채널부에 전달함으로써 호스트로부터 전송되는 데이터의 크기를 증가시키지 않고 데이터 기록 속도 향상 및 대역폭을 향상시킬 수 있다.
이를 위해서, 버퍼들(331 내지 335)은 각각 적어도 상기 메모리 셀 어레이에 기록되는 하나의 페이지를 저장할 수 있는 저장 용량을 갖는 것이 바람직하다. 또한, 채널부의 수를 n(n은 정수), 메모리 셀 어레이에 기록되는 하나의 페이지 크기를 s라고 할 때, 버퍼들의 총 저장 용량은 적어도 s×(n+1) 인 것이 바람직하다.
도 4는 도 3의 플래시 메모리 칩(351,352,353,354)의 구성을 간략하게 나타낸 블록도이다. 도 4에서 도면 부호 400으로 표시된 플래시 메모리 칩은 도 3의 플래시 메모리 칩들(351,352,353,354)에 대응된다.
도 4를 참조하면, 플래시 메모리 칩(400)은 k(k는 정수)개의 메모리 셀 어레 이(410, 420, 430) 및 K개의 페이지 레지스터들(411,412,413)을 포함한다. 여기서, 하나의 플래시 메모리 칩(400) 내에 구비되는 메모리 셀 어레이의 개수와 그에 대응되는 페이지 레지스터의 개수는 변경될 수 있다. 제어부(340)는 하나의 플래시 메모리 칩 내에 구비된 복수 개의 메모리 셀 어레이들에 인터리브 방식으로 페이지 데이터를 번갈아 기록함으로써 기록 속도를 향상시킬 수 있다.
도 5는 본 발명에 따른 플래시 메모리 시스템에 전송되는 기록할 데이터의 전송 순서를 나타낸 도면이며, 도 6은 도 3의 플래시 메모리 시스템(300)의 각 채널부의 동작 상태를 나타낸 타이밍도이다. 이하에서는 도 3 내지 도 6을 참조하여 본 발명에 따른 플래시 메모리 시스템(300)의 기록 동작에 대하여 구체적으로 설명한다.
도 5를 참조하면, 호스트(360)는 기록할 데이터를 2Kbyte 크기의 페이지 데이터 단위로 분리하여 전송한다. 여기서, 호스트(360)는 기록할 페이지 데이터를 더 작은 섹터 단위로 분할하여 전송할 수도 있다. 이 경우, 호스트 인터페이스부(320)는 분할 전송된 섹터 단위 데이터를 조합하여 플래시 메모리 칩들의 기록 및 독출 단위인 페이지 데이터로 형성한다.
호스트(360)로부터 전송된 페이지 데이터들은 그 전송 순서에 따라 버퍼들(331 내지 335)에 순차적으로 저장된다. 예를 들어, 첫 번째 페이지 데이터(P1)는 제 1 버퍼(331), 두 번째 페이지 데이터(P2)는 제 2 버퍼(332), 세 번째 페이지 데이터(P3)는 제 3 버퍼(333), 네 번째 페이지 데이터(P4)는 제 4 버퍼(334), 다섯 번째 페이지 데이터(P5)는 제 5 버퍼(335)에 저장된다.
도 6을 참조하면 제어부(340)의 제어에 따라, 먼저 제 1 버퍼(331)에 저장된 첫 번째 페이지 데이터(P1)가 제 1 채널부(CH1)의 제 1 플래시 메모리 칩(351) 내부에 구비된 첫 번째 메모리 셀 어레이에 기록된다. 여기서, 각 플래시 메모리 칩(351,352,353,354)은 8개의 메모리 셀 어레이를 구비한 것으로 가정한다. 기록 동작은 셋업 동작과 프로그램 동작으로 분류된다. 플래시 메모리 칩의 내부에 구비된 페이지 레지스터에 데이터를 로딩하는 동작을 셋업 동작이라 하며, 셋업 동작에 소요되는 시간을 셋업 시간이라 한다. 또한, 플래시 메모리칩 내부의 페이지 레지스터에 로딩되어 있던 페이지 데이터를 메모리셀 어레이에 프로그램하는 동작을 프로그램 동작으로 정의하며, 이에 소요되는 시간을 프로그램 시간이라 정의한다.
첫 번째 페이지 데이터(P1)가 기록되는 동안 제 2 버퍼(332)에 저장된 두 번째 페이지 데이터(P2)가 제 2 채널부(CH2)의 제 2 플래시 메모리 칩(352) 내부의 첫 번째 메모리 셀 어레이에 기록된다. 두 번째 페이지 데이터(P2)가 기록되는 동안 제 3 버퍼(333)에 저장된 세 번째 페이지 데이터(P3)가 제 3 채널부(CH3)의 제 3 플래시 메모리 칩(353) 내부의 첫 번째 메모리 셀 어레이에 기록된다. 세 번째 페이지 데이터(P3)가 기록되는 동안 제 4 버퍼(334)에 저장된 네 번째 페이지 데이터(P4)가 제 4 채널부(CH4)의 제 4 플래시 메모리 칩(354) 내부의 첫 번째 메모리 셀 어레이에 기록된다.
다음, 제 1 플래시 메모리 칩(351) 내부의 첫 번째 메모리 셀 어레이에 첫 번째 페이지 데이터(P1)의 기록이 완료되면, 제 5 버퍼(335)에 저장된 다섯 번째 페이지 데이터(P5)가 제 1 채널부(CH1)의 두 번째 메모리 셀 어레이에 기록된다. 또한, 제 2 플래시 메모리 칩(352) 내부의 첫 번째 메모리 셀 어레이에 두 번째 페이지 데이터(P2)의 기록이 완료되면, 제 1 버퍼(331)에 저장된 여섯 번째 페이지 데이터(P6)가 제 2 플래시 메모리 칩(352)의 두 번째 메모리 셀 어레이에 기록된다. 이와 같이, 제어부(340)는 버퍼들(331 내지 335)에 저장된 페이지 데이터들을 각 채널부(CH1 내지 CH4)에 순차적으로 할당하고, 각 채널부(CH1 내지 CH4)의 내부에 구비된 복수 개의 메모리 셀 어레이들에 교대로 페이지 데이터가 기록되도록 제어한다. 즉, 제어부(340)는 동일 채널 내의 복수 개의 메모리 셀 어레이 사이에 인터리브 방식으로 기록 동작을 제어하는 동시에, 각 채널에서의 기록 동작이 서로 오버래핑(overlapping)될 수 있도록 제어한다. 전술한 바와 같이 각 기록 동작에 있어서, 버퍼에 저장된 데이터가 채널부의 페이지 레지스터에 로딩되어 빈 상태가 되면, 빈 버퍼에 호스트로부터 전송된 데이터가 저장된다.
도 6에 도시된 바와 같이 4 개의 채널부(CH1 내지 CH4)에 구비된 플래시 메모리 칩들의 메모리 셀 어레이에 기록 동작이 수행되는 경우, 버퍼부(330)로의 입력은 기록 동작 속도의 약 4배가 된다. 4개의 채널부(CH1 내지 CH4)에 오버래핑되어 기록 동작이 수행되기 때문에, 비록 하나의 채널부에서 수행되는 기록 동작 속도가 40MB/s라고 하더라도 4개의 채널부(CH1 내지 CH4) 전체에 기록동작 속도는 160MB/s가 되므로 호스트(360)로부터 전송되어 버퍼부(330)에 저장되는 입력 대역폭은 160MB/s가 된다. 따라서, 본 발명에 따르면 호스트(360)와 플래시 메모리 시스템(300) 사이의 대역폭이 향상된다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는, ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장 장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
전술한 본 발명에 따르면, 호스트로부터 플래시 메모시 시스템으로 전송되는 데이터의 크기를 증가시키지 않고 호스트와 플래시 메모리 장치 사이의 대역폭 및 기록 속도를 증가시킬 수 있다.
또한, 본 발명에 따르면, 호스트로부터 플래시 메모리 시스템으로 전송되는 데이터의 크기가 작으므로 데이터 액세스 단위의 증가로 인한 클러스터 갭이 발생 을 줄일 수 있다. 또한, 본 발명에 따르면 각 채널부의 오버래핑 기록 동작에 의하여 대량의 벌크 데이터(bulk data)를 효율적으로 처리할 수 있다.

Claims (11)

  1. 플래시 메모리 시스템에 있어서,
    호스트로부터 전송되는 저장 데이터를 일시 저장하는 복수 개의 버퍼들을 구비하는 버퍼부;
    복수 개의 메모리 셀 어레이들을 구비하는 적어도 하나의 플래시 메모리 칩들을 포함하는 복수 개의 채널부; 및
    상기 버퍼부에 저장된 상기 저장 데이터가 상기 복수 개의 채널부에 순차적으로 전송되도록 제어하고, 상기 전송된 저장 데이터가 상기 채널부에 구비된 플래시 메모리 칩들의 메모리 셀 어레이에 기록되도록 제어하는 제어부를 포함하는 것을 특징으로 하는 플래시 메모리 시스템.
  2. 제 1항에 있어서, 상기 제어부는
    상기 복수 개의 버퍼들 중 하나의 버퍼는 일시 저장된 데이터를 상기 채널부에 전송하는 동시에 다른 하나의 버퍼는 상기 호스트로부터 전송되는 데이터를 저장하도록 제어하는 것을 특징으로 하는 플래시 메모리 시스템.
  3. 제 1항에 있어서, 상기 버퍼부는
    상기 복수 개의 채널부의 수를 n(n은 정수)이라고 할 때, (n+1)개의 버퍼를 구비하는 것을 특징으로 하는 플래시 메모리 시스템.
  4. 제 3항에 있어서, 상기 버퍼는
    적어도 상기 메모리 셀 어레이에 기록되는 하나의 페이지를 저장할 수 있는 저장 용량을 갖는 것을 특징으로 하는 플래시 메모리 시스템.
  5. 제 1항에 있어서,
    상기 복수 개의 채널부의 수를 n(n은 정수), 상기 메모리 셀 어레이에 기록되는 하나의 페이지 크기를 s라고 할 때, 상기 버퍼부에 구비된 버퍼들의 총 저장 용량은 적어도 s×(n+1) 인 것을 특징으로 하는 플래시 메모리 시스템.
  6. 제 1항에 있어서, 상기 제어부는
    상기 복수 개의 채널부를 독립적으로 제어하기 위하여 상기 복수 개의 채널부 각각에 연결된 복수 개의 메모리 제어부를 구비하며, 상기 각 채널부에 연결된 메모리 제어부는 동일 채널 상의 상기 메모리 셀 어레이에 상기 버퍼로부터 전송된 데이터를 인터리브 방식으로 기록하는 것을 특징으로 하는 플래시 메모리 시스템.
  7. 플래시 메모리 시스템의 프로그램 방법에 있어서,
    호스트로부터 전송되어 복수 개의 버퍼들에 저장된 데이터를, 복수 개의 메모리 셀 어레이들을 구비하는 적어도 하나의 플래시 메모리 칩들을 포함하는 복수 개의 채널부에 순차적으로 전송하고 상기 버퍼들 중 빈 버퍼에 상기 호스트로부터 전송되는 데이터를 저장하는 단계; 및
    상기 전송된 저장 데이터를 상기 각 채널부에 구비된 플래시 메모리 칩들의 메모리 셀 어레이에 기록하는 단계를 포함하는 것을 특징으로 하는 플래시 메모리 시스템의 프로그램 방법.
  8. 제 7항에 있어서,
    상기 복수 개의 채널부의 수를 n(n은 정수)이라고 할 때, 상기 버퍼들의 개수는 (n+1)개인 것을 특징으로 하는 플래시 메모리 시스템의 프로그램 방법.
  9. 제 7항에 있어서, 상기 버퍼는
    적어도 상기 메모리 셀 어레이에 기록되는 하나의 페이지를 저장할 수 있는 저장 용량을 갖는 것을 특징으로 하는 플래시 메모리 시스템의 프로그램 방법.
  10. 제 7항에 있어서,
    상기 복수 개의 채널부의 수를 n(n은 정수), 상기 메모리 셀 어레이에 기록되는 하나의 페이지 크기를 s라고 할 때, 상기 버퍼들의 총 저장 용량은 적어도 s×(n+1) 인 것을 특징으로 하는 플래시 메모리 시스템의 프로그램 방법.
  11. 제 7항에 있어서,
    상기 전송된 저장 데이터를 상기 각 채널부에 구비된 플래시 메모리 칩들의 메모리 셀 어레이에 기록하는 단계는 동일 채널 상의 상기 메모리 셀 어레이에 상기 버퍼로부터 전송된 데이터를 인터리브 방식으로 기록하는 것을 특징으로 하는 플래시 메모리 시스템의 프로그램 방법.
KR1020060079947A 2006-08-23 2006-08-23 플래시 메모리 시스템 및 그 프로그램 방법 KR20080017982A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020060079947A KR20080017982A (ko) 2006-08-23 2006-08-23 플래시 메모리 시스템 및 그 프로그램 방법
US11/730,800 US7765359B2 (en) 2006-08-23 2007-04-04 Flash memory system and programming method performed therein
JP2007211796A JP2008052728A (ja) 2006-08-23 2007-08-15 フラッシュメモリシステム及びそのプログラム方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060079947A KR20080017982A (ko) 2006-08-23 2006-08-23 플래시 메모리 시스템 및 그 프로그램 방법

Publications (1)

Publication Number Publication Date
KR20080017982A true KR20080017982A (ko) 2008-02-27

Family

ID=39113250

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060079947A KR20080017982A (ko) 2006-08-23 2006-08-23 플래시 메모리 시스템 및 그 프로그램 방법

Country Status (3)

Country Link
US (1) US7765359B2 (ko)
JP (1) JP2008052728A (ko)
KR (1) KR20080017982A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8395921B2 (en) 2009-08-07 2013-03-12 Samsung Electronics Co., Ltd Memory system having improved signal integrity
US8458394B2 (en) 2009-03-18 2013-06-04 Samsung Electronics Co., Ltd. Storage device and method of managing a buffer memory of the storage device

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827348B2 (en) * 2000-01-06 2010-11-02 Super Talent Electronics, Inc. High performance flash memory devices (FMD)
KR100754226B1 (ko) * 2006-08-22 2007-09-03 삼성전자주식회사 비휘발성 데이터 저장장치의 프로그래밍 방법 및 그 장치
US8959307B1 (en) * 2007-11-16 2015-02-17 Bitmicro Networks, Inc. Reduced latency memory read transactions in storage devices
US8843691B2 (en) * 2008-06-25 2014-09-23 Stec, Inc. Prioritized erasure of data blocks in a flash storage device
US8595572B2 (en) 2009-04-08 2013-11-26 Google Inc. Data storage device with metadata command
US8566508B2 (en) * 2009-04-08 2013-10-22 Google Inc. RAID configuration in a flash memory data storage device
US9135190B1 (en) 2009-09-04 2015-09-15 Bitmicro Networks, Inc. Multi-profile memory controller for computing devices
US8665601B1 (en) 2009-09-04 2014-03-04 Bitmicro Networks, Inc. Solid state drive with improved enclosure assembly
US8447908B2 (en) 2009-09-07 2013-05-21 Bitmicro Networks, Inc. Multilevel memory bus system for solid-state mass storage
US8560804B2 (en) 2009-09-14 2013-10-15 Bitmicro Networks, Inc. Reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device
US8131889B2 (en) 2009-11-10 2012-03-06 Apple Inc. Command queue for peripheral component
US8472279B2 (en) * 2010-08-31 2013-06-25 Micron Technology, Inc. Channel skewing
US8924627B2 (en) * 2011-03-28 2014-12-30 Western Digital Technologies, Inc. Flash memory device comprising host interface for processing a multi-command descriptor block in order to exploit concurrency
US8423722B1 (en) * 2011-08-26 2013-04-16 Western Digital Technologies, Inc. System and method for high performance command processing in solid state drives
US9021146B2 (en) 2011-08-30 2015-04-28 Apple Inc. High priority command queue for peripheral component
US9372755B1 (en) 2011-10-05 2016-06-21 Bitmicro Networks, Inc. Adaptive power cycle sequences for data recovery
JP5929387B2 (ja) 2012-03-22 2016-06-08 株式会社リコー 情報処理装置、履歴データ生成プログラム及び投影システム
US9043669B1 (en) 2012-05-18 2015-05-26 Bitmicro Networks, Inc. Distributed ECC engine for storage media
WO2014102886A1 (en) * 2012-12-28 2014-07-03 Hitachi, Ltd. Information processing apparatus and cache control method
US9423457B2 (en) 2013-03-14 2016-08-23 Bitmicro Networks, Inc. Self-test solution for delay locked loops
US9501436B1 (en) 2013-03-15 2016-11-22 Bitmicro Networks, Inc. Multi-level message passing descriptor
US9842024B1 (en) 2013-03-15 2017-12-12 Bitmicro Networks, Inc. Flash electronic disk with RAID controller
US9934045B1 (en) 2013-03-15 2018-04-03 Bitmicro Networks, Inc. Embedded system boot from a storage device
US9971524B1 (en) 2013-03-15 2018-05-15 Bitmicro Networks, Inc. Scatter-gather approach for parallel data transfer in a mass storage system
US10120694B2 (en) 2013-03-15 2018-11-06 Bitmicro Networks, Inc. Embedded system boot from a storage device
US9916213B1 (en) 2013-03-15 2018-03-13 Bitmicro Networks, Inc. Bus arbitration with routing and failover mechanism
US9430386B2 (en) 2013-03-15 2016-08-30 Bitmicro Networks, Inc. Multi-leveled cache management in a hybrid storage system
US9672178B1 (en) 2013-03-15 2017-06-06 Bitmicro Networks, Inc. Bit-mapped DMA transfer with dependency table configured to monitor status so that a processor is not rendered as a bottleneck in a system
US10489318B1 (en) 2013-03-15 2019-11-26 Bitmicro Networks, Inc. Scatter-gather approach for parallel data transfer in a mass storage system
US9798688B1 (en) 2013-03-15 2017-10-24 Bitmicro Networks, Inc. Bus arbitration with routing and failover mechanism
US9734067B1 (en) 2013-03-15 2017-08-15 Bitmicro Networks, Inc. Write buffering
US9720603B1 (en) 2013-03-15 2017-08-01 Bitmicro Networks, Inc. IOC to IOC distributed caching architecture
US9875205B1 (en) 2013-03-15 2018-01-23 Bitmicro Networks, Inc. Network of memory systems
US9400617B2 (en) 2013-03-15 2016-07-26 Bitmicro Networks, Inc. Hardware-assisted DMA transfer with dependency table configured to permit-in parallel-data drain from cache without processor intervention when filled or drained
CN110175088B (zh) * 2013-08-23 2022-11-11 慧荣科技股份有限公司 存取快闪存储器中储存单元的方法以及使用该方法的装置
US10078604B1 (en) 2014-04-17 2018-09-18 Bitmicro Networks, Inc. Interrupt coalescing
US9811461B1 (en) 2014-04-17 2017-11-07 Bitmicro Networks, Inc. Data storage system
US10025736B1 (en) 2014-04-17 2018-07-17 Bitmicro Networks, Inc. Exchange message protocol message transmission between two devices
US10042792B1 (en) 2014-04-17 2018-08-07 Bitmicro Networks, Inc. Method for transferring and receiving frames across PCI express bus for SSD device
US10055150B1 (en) 2014-04-17 2018-08-21 Bitmicro Networks, Inc. Writing volatile scattered memory metadata to flash device
US9952991B1 (en) 2014-04-17 2018-04-24 Bitmicro Networks, Inc. Systematic method on queuing of descriptors for multiple flash intelligent DMA engine operation
KR102229970B1 (ko) 2014-06-27 2021-03-22 삼성전자주식회사 불휘발성 메모리, 랜덤 액세스 메모리 및 메모리 컨트롤러를 포함하는 솔리드 스테이트 드라이브
KR20170094815A (ko) 2016-02-11 2017-08-22 삼성전자주식회사 비휘발성 메모리, 그것을 포함하는 컴퓨팅 시스템, 및 그것의 읽기 방법
EP3367251B1 (en) * 2016-12-29 2023-06-21 Huawei Technologies Co., Ltd. Storage system and solid state hard disk
US10552050B1 (en) 2017-04-07 2020-02-04 Bitmicro Llc Multi-dimensional computer storage system

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000132982A (ja) * 1998-10-26 2000-05-12 Sony Corp 情報記録媒体素子、情報記録装置及び情報記録方法、並びに情報再生装置及び情報再生方法
GB9903490D0 (en) * 1999-02-17 1999-04-07 Memory Corp Plc Memory system
US20050114587A1 (en) * 2003-11-22 2005-05-26 Super Talent Electronics Inc. ExpressCard with On-Card Flash Memory with Shared Flash-Control Bus but Separate Ready Lines
US20060075395A1 (en) * 2004-10-01 2006-04-06 Lee Charles C Flash card system
JP4841070B2 (ja) * 2001-07-24 2011-12-21 パナソニック株式会社 記憶装置
US7290109B2 (en) * 2002-01-09 2007-10-30 Renesas Technology Corp. Memory system and memory card
US6871257B2 (en) * 2002-02-22 2005-03-22 Sandisk Corporation Pipelined parallel programming operation in a non-volatile memory system
KR100506062B1 (ko) 2002-12-18 2005-08-05 주식회사 하이닉스반도체 복합형 메모리 장치
KR100498508B1 (ko) * 2003-09-16 2005-07-01 삼성전자주식회사 데이터 전송시간을 감소시키는 듀얼 버퍼링(Dualbuffering) 메모리 시스템 및 이에 대한 제어방법
JP4273038B2 (ja) * 2004-05-20 2009-06-03 Tdk株式会社 メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリのデータ転送方法
TWI248617B (en) * 2004-08-13 2006-02-01 Prolific Technology Inc Data storage device
US7568075B2 (en) * 2005-09-22 2009-07-28 Hitachi, Ltd. Apparatus, system and method for making endurance of storage media

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8458394B2 (en) 2009-03-18 2013-06-04 Samsung Electronics Co., Ltd. Storage device and method of managing a buffer memory of the storage device
US8395921B2 (en) 2009-08-07 2013-03-12 Samsung Electronics Co., Ltd Memory system having improved signal integrity
US8654558B2 (en) 2009-08-07 2014-02-18 Samsung Electronics Co., Ltd. Memory system having improved signal integrity

Also Published As

Publication number Publication date
US20080049520A1 (en) 2008-02-28
US7765359B2 (en) 2010-07-27
JP2008052728A (ja) 2008-03-06

Similar Documents

Publication Publication Date Title
KR20080017982A (ko) 플래시 메모리 시스템 및 그 프로그램 방법
KR101060089B1 (ko) 온-칩 데이터 그룹화 및 정렬
KR100765786B1 (ko) 플래시 메모리 시스템, 그 프로그램을 위한 호스트 시스템및 프로그램 방법
US8208322B2 (en) Non-volatile memory control
US7490283B2 (en) Pipelined data relocation and improved chip architectures
US6426893B1 (en) Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
US7461199B2 (en) Pipelined parallel programming operation in a non-volatile memory system
TWI473116B (zh) 多通道記憶體儲存裝置及其控制方法
KR100754226B1 (ko) 비휘발성 데이터 저장장치의 프로그래밍 방법 및 그 장치
US8369163B2 (en) Memory device for reducing programming time
US10365834B2 (en) Memory system controlling interleaving write to memory chips
US8180951B2 (en) Memory system and method of controlling the memory system
JP2009163652A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
AMND Amendment
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E90F Notification of reason for final refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20140425

Effective date: 20150309