KR100704037B1 - 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법 - Google Patents

이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법 Download PDF

Info

Publication number
KR100704037B1
KR100704037B1 KR1020050031275A KR20050031275A KR100704037B1 KR 100704037 B1 KR100704037 B1 KR 100704037B1 KR 1020050031275 A KR1020050031275 A KR 1020050031275A KR 20050031275 A KR20050031275 A KR 20050031275A KR 100704037 B1 KR100704037 B1 KR 100704037B1
Authority
KR
South Korea
Prior art keywords
data
memory
speed memory
busy
low speed
Prior art date
Application number
KR1020050031275A
Other languages
English (en)
Other versions
KR20060109042A (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 KR1020050031275A priority Critical patent/KR100704037B1/ko
Priority to US11/319,363 priority patent/US7523274B2/en
Priority to DE102006007201A priority patent/DE102006007201A1/de
Priority to JP2006041379A priority patent/JP5053552B2/ja
Publication of KR20060109042A publication Critical patent/KR20060109042A/ko
Application granted granted Critical
Publication of KR100704037B1 publication Critical patent/KR100704037B1/ko

Links

Images

Classifications

    • 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
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory

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)
  • Memory System (AREA)
  • Read Only Memory (AREA)

Abstract

이종(異種)의 비휘발성 메모리를 가지는 데이터 저장장치 및 그의 구동 방법이 게시된다. 본 발명의 데이터 저장장치에서는, 이종(異種)의 비휘발성 메모리들을 포함하는 메모리 블럭이 구비된다. 본 발명의 데이터 저장장치(100) 및 그의 구동 방법에 의하면, 프리 데이터(FDAT)는 억세스 속도는 느리지만 고용량인 저속 메모리에 우선적으로 저장된다. 반면에, 비지 데이터(BDAT)는 상대적으로 저용량이지만, 데이터 억세스 속도가 빠른 고속 메모리에 우선적으로 저장된다. 따라서, 본 발명의 데이터 저장장치(100) 및 그의 구동 방법에 의하면, 제한된 자원(resource)으로 부터 데이터 저장장치의 데이터 억세스 속도가 향상될 수 있다. 또한, 비지 데이터를 저장하기 위한 상기 고속 메모리의 저장 공간이 부족하게 되는 경우에는, 저속 메모리로 대체하여 저장하는 것이 가능하다. 그러므로, 데이터의 속성 정보를 저장하기 위한 메모리 공간이 유동적이므로, 메모리 공간의 낭비가 방지될 수 있다.
데이터 저장장치, 비휘발성 메모리, 데이터, 억세스, 고속, 저속

Description

이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의 구동 방법{DATA STORAGE DEVICE WITH A DIFFERENT KIND OF NON-VOLATILE MEMORIES AND OPERATING METHOD THEREFOR}
본 발명의 상세한 설명에서 사용되는 도면을 보다 충분히 이해하기 위하여, 각 도면의 간단한 설명이 제공된다.
도 1은 종래의 데이터 저장장치를 나타내는 도면이다.
도 2는 본 발명의 일실시예에 따른 데이터 저장장치를 나타내는 블럭도이다.
도 3은 도 2의 메모리 블럭을 나타내는 도면이다.
도 4는 본 발명의 일실시예에 따른 데이터 저장장치의 구동 방법을 나타내는 순서도이다.
*도면의 주요부분에 대한 부호의 설명*
BDTA : 비지 데이터 HCON : 고속제어신호
FDTA : 프리 데이터 LCON : 저속제어신호
XMFUL : 메모리풀 신호
본 발명은 외부장치에서 제공되는 데이터를 저장할 수 있는 데이터 저장장치 및 그의 구동 방법에 관한 것으로서, 특히 이종(異種)의 비휘발성 메모리를 가지는 데이터 저장장치와 그의 구동 방법에 관한 것이다.
데이터 저장장치는 외부에서 입력되는 데이터 억세스 명령에 의하여 메모리로의 억세스를 수행하여 데이터를 저장하거나 저장된 데이터를 독출한다. 데이터 저장장치는 데이터를 저장할 수 있는 메모리와 메모리로의 억세스를 제어하는 회로들로 구성되는 것이 일반적이다. 데이터 저장장치의 메모리들은 비휘발성 메모리로 구현되어, 전원의 공급이 차단되는 경우에도 데이터를 유효하게 저장한다.
비휘발성 메모리는 동작 속도에 따라, 크게 저속 메모리와 고속 메모리로 나누어 질 수 있다. 이때, 저속 메모리의 예로는, 난드형 플래쉬 메모리(NAND type flash memory)가 될 수 있다. 난드형 플래쉬 메모리(NAND type flash memory)는 상대적으로 고용량으로 구현될 수 있고 저가(低價)인 반면 데이터 억세스 속도가 떨어지는 단점을 지닌다. 그리고, 고속 메모리의 예로는, FRAM(Ferroelectric RAM), PRAM(Phase-change RAM) 등이 될 수 있다. FRAM 등의 메모리는 데이터를 랜덤(random)하게 억세스하기 때문에, 데이터 억세스 속도가 난드형 플래쉬 메모리(NAND type flash memory)에 비하여 1000배 정도 빠르다. 다만, FRAM 등은 상대적으로 고용량으로 구현되기 어렵고, 고가(高價)인 단점을 지닌다.
한편, 데이터는 크게 유저데이터(Userdata)와 메타데이터(MetaData)로 나눌 수 있다. 유저데이터는 유저(user)에 의하여 생성되는 데이터이며, 메타데이터(MetaData)는 FAT(File Allocation Table)와 같은 데이터의 저장 위치 등의 데이터 속성을 관한 데이터이다. 이때, 유저데이터(Userdata)는 상대적으로 한번에 억세스하는 데이터의 크기가 크며, 상대적으로 낮은 억세스 빈도를 가진다. 메타데이터(MetaData)는 상대적으로 한번에 억세스하는 데이터의 크기가 작으며, 상대적으로 높은 억세스 빈도를 가진다.
도 1은 종래의 데이터 저장장치를 나타내는 도면이다. 도 1을 참조하면, 종래의 데이터 저장장치(10)는 데이터를 저장에 관여하는 메모리(12)가 동종(同種)의 난드형 플래쉬 메모리(NAND type flash memory)들로만 구성되어 있다. 이와 같은 경우, 메타데이터(MetaData)와 같이 작은 단위로 빈번하게 억세스가 발생되는 데이터에 대한 억세스 처리가 지연되게 된다. 그러므로, 종래의 데이터 저장장치(10)에서는, 전체적으로 데이터의 처리 능력이 저하되는 문제점이 발생된다.
따라서, 본 발명의 목적은 종래기술의 문제점을 해결하기 위한 것으로서, 데이터 억세스 속도가 향상되는 데이터 저장장치 및 그의 구동 방법을 제공하는 데 있다.
상기와 같은 기술적 과제를 달성하기 위한 본 발명의 일면은 외부장치에서 제공되는 데이터를 저장할 수 있는 데이터 저장장치에 관한 것이다. 본 발명의 데이터 저장장치는, 상대적으로 빠른 억세스 속도를 가지는 고속 메모리와 상대적으로 느린 억세스 속도를 가지는 저속 메모리를 포함하는 메모리 블럭으로서, 상기 고속 메모리와 상기 저속 메모리는 상기 데이터의 저장이 가능한 비휘발성 메모리들인 상기 메모리 블럭; 상기 외부장치에서 제공되는 상기 데이터를 억세스 빈도에 따라 비지(busy)데이터 및 프리(free)데이터를 포함하는 데이터 그룹으로 분류하는 데이터 분류부로서, 상기 비지 데이터는 상대적으로 빈번한 억세스가 발생되는 속성을 지니며, 상기 프리 데이터는 상대적으로 드문 억세스가 발생되는 속성을 지니는 상기 데이터 분류부; 및 상기 데이터 분류부에서 제공되는 데이터를 상기 메모리 블럭에 저장되도록 제어하되, 상기 비지 데이터는 상기 고속 메모리에, 상기 프리 데이터는 상기 저속 메모리에 우선적으로 저장되도록 제어하는 메모리 제어부를 구비한다. 그리고, 상기 비지 데이터는 데이터의 속성을 나타내는 메타데이터(MetaData)를 포함하고, 상기 프리 데이터는 사용자에 의하여 생성되는 유저데이터(UserData)를 포함한다.
상기와 같은 다른 기술적 과제를 달성하기 위한 본 발명의 다른 일면은 상대적으로 빠른 억세스 속도를 가지는 고속 메모리와 상대적으로 느린 억세스 속도를 가지는 저속 메모리를 포함하는 메모리 블럭을 가지는 데이터 저장장치의 구동방법에 관한 것이다. 본 발명의 데이터 저장장치의 구동방법은 상기 데이터를 수신하는 단계; 수신되는 상기 데이터를 억세스 빈도에 따라 비지 데이터 및 프리 데이터를 포함하는 데이터 그룹으로 분류하는 단계로서, 상기 비지 데이터는 상대적으로 빈번한 억세스가 발생되는 속성을 지니며, 상기 프리 데이터는 상대적으로 드문 억세스가 발생되는 속성을 지니는 상기 데이터 그룹으로 분류하는 단계; 분류된 상기 데이터를 상기 메모리 블럭에 공급하되, 상기 비지 데이터를 상기 고속 메모리에, 상기 프리 데이터를 상기 저속 메모리에 우선적으로 공급하는 단계; 및 상기 공급되는 데이터를 상기 메모리 블럭에 저장하는 단계를 포함한다. 그리고, 상기 비지 데이터는 데이터의 속성을 나타내는 메타데이터(MetaData)를 포함하고, 상기 프리 데이터는 사용자에 의하여 생성되는 유저데이터(UserData)를 포함한다.
본 발명과 본 발명의 동작상의 잇점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다. 각 도면을 이해함에 있어서, 동일한 부재는 가능한 한 동일한 참조부호로 도시하고자 함에 유의해야 한다. 그리고, 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 공지 기능 및 구성에 대한 상세한 기술은 생략한다.
이하, 첨부한 도면을 참고하여 본 발명의 바람직한 실시예를 설명함으로써, 본 발명을 상세히 설명한다.
도 2는 본 발명의 일실시예에 따른 데이터 저장장치(100)를 나타내는 블럭도이다. 도 2를 참조하면, 외부장치에서 제공되는 데이터(DAT)를 저장할 수 있는 본 발명의 데이터 저장장치(100)는 메모리 블럭(120), 데이터 분류부(140) 및 메모리 제어부(160)을 포함한다.
상기 메모리 블럭(120)은 고속 메모리(122)와 저속 메모리(124)를 포함한다. 상기 고속 메모리(122)는 상대적으로 빠른 억세스 속도 즉, 데이터 처리 속도를 가지며, 상기 저속 메모리(124)는 느린 억세스 속도를 가진다. 바람직하기로는, 상기 고속 메모리(122)와 상기 저속 메모리(124)는 상기 데이터(DAT)의 저장이 가능한 비휘발성 메모리들이다.
상기 데이터 분류부(140)는 상기 데이터(DTA)를 억세스 빈도에 따른 데이터 그룹으로 분류한다. 이와 같은 데이터 그룹에는, 비지 데이터(busy data, BDTA) 및 프리 데이터(free data, FDTA)가 포함된다. 본 실시예에서, 상기 비지 데이터(BDTA)는 상대적으로 빈번한 억세스가 발생되는 속성을 지니며, 상기 프리 데이터(FDTA)는 상대적으로 드문 억세스가 발생되는 속성을 지닌다.
상기 메모리 제어부(160)는 상기 데이터 분류부(140)에서 제공되는 데이터(BDTA, FDTA)를 상기 메모리 블럭(120)에 저장되도록 제어한다. 다만 상기 비지 데이터(BDTA)는 상기 고속 메모리(122)에 우선적으로 저장되도록 제어하고, 상기 프리 데이터(FDTA)는 상기 저속 메모리(124)에 우선적으로 저장되도록 제어한다.
본 발명의 바람직한 실시예에 의하면, 상기 메모리 제어부(160)는 소정의 고속 메모리 제어 수단(162)과 소정의 저속 메모리 제어 수단(164)을 포함한다. 상기 고속 메모리 제어 수단(162)은 상기 비지 데이터(BDTA)를 우선적으로 수신하며, 수신되는 상기 비지 데이터(BDTA)를 상기 고속 메모리(122)에 제공한다. 이 경우 상기 고속 메모리 제어수단(162)은 상기 비지 데이터(BDTA)의 수신에 응답하여 활성화되는 고속제어신호(HCON)를 상기 고속 메모리(122)에 제공하여, 상기 비지 데이터(BDTA)가 상기 고속 메모리(122)에 저장되도록 제어한다. 같은 방법으로, 상기 저속 메모리 제어 수단(164)은 상기 프리 데이터(FDTA)를 우선적으로 수신하며, 수신되는 상기 프리 데이터(FDTA)를 상기 저속 메모리(124)에 제공한다. 이 경우 상기 저속 메모리 제어수단(164)은 상기 프리 데이터(FDTA)의 수신에 응답하여 활성 화되는 저속제어신호(LCON)를 상기 저속 메모리(124)에 제공하여, 상기 프리 데이터(FDTA)가 상기 저속 메모리(124)에 저장되도록 제어한다.
본 발명의 더욱 바람직한 실시예에 의하면, 상기 메모리 제어부(160)는 소정의 데이터 분배수단(166)을 더 구비한다. 상기 데이터 분배수단(166)은 수신되는 상기 비지 데이터(BDTA)를 우선적으로 상기 고속 메모리 제어수단(162)으로 분배한다. 그러나 상기 고속 메모리(122)에서의 데이터 저장공간의 확보에 실패하는 경우, 상기 데이터 분배수단(166)은 상기 비지 데이터(BDTA)를 상기 저속 메모리 제어수단(164)으로 분배한다.
본 명세서에서는, 설명의 편의를 위하여, 상기 고속 메모리 제어수단(162)로 제공되는 비지 데이터에 대해서는 참조부호 BDAT1이 부여되며, 상기 저속 메모리 제어수단(164)로 제공되는 비지 데이터에 대해서는 참조부호 BDAT2가 부여된다.
상기 저속 메모리 제어수단(164)은 상기 데이터 분배수단(166)에서 분배되는 상기 비지 데이터(BDTA2)를 수신한다. 또한, 수신되는 상기 비지 데이터(BDTA2)가, 상기 저속 메모리(124)에 저장될 수 있도록 제어하기 위하여, 상기 저속제어신호(LCON)를 활성화한다.
본 발명의 바람직한 실시예에 의하면, 상기 저속 메모리(124)는 난드형 플래쉬 메모리들(NAND type flash memory)를 포함하며, 상기 고속 메모리(122)는 상기 저속 메모리(124)와 상이한 종류의 비휘발성 메모리를 포함한다. 상기 저속 메모리(124)와 상이한 종류의 비휘발성 메모리는 FRAM, PRAM 등이 될 수 있다.
본 발명의 바람직한 실시예에 의하면, 상기 비지 데이터(BDTA)는 FAT(File Allocation Table)와 같이 데이터의 저장 위치 등을 나타내는 데이터 속성에 관한 메타데이터(MetaData)일 수 있고, 상기 프리 데이터(FDTA)는 사용자에 의하여 생성되는 유저데이터(User Data)일 수 있다.
본 실시예에서, 상기 각 메모리 제어 수단들(162, 164)과 상기 각 메모리들(122, 124) 사이의 상기 데이터들(BDTA1, BDTA2, FDTA)의 교환은 각각의 개별적인 라인(line)에 의하거나, 상기 각 메모리 제어 수단들(162, 164)과 상기 각 메모리들(122, 124)의 칩(chip)의 핀(pin) 수를 줄이기 위하여 상기 핀(pin) 중 일부의 핀(pin)을 공유할 수 있는 하나의 버스 시스템(bus system)에 의하여 수행될 수 있다.
본 발명의 바람직한 실시예에 의하면, 상기 데이터 저장장치(100)는 상기 외부장치와 인터페이싱하며, 입출력되는 데이터를 버퍼링하는 입출력 인터페이싱부(180)를 더 구비한다. 컴퓨터 보조기억장치에서는 외부장치와의 인터페이싱을 위해 ATA 인터페이스를 취하기도 한다.
한편, 상기 메모리 블럭(120)의 고속 및 저속 메모리(122, 124)에 저장된 데이터는 고속 및 저속 메모리 제어수단(162, 164)과 입출력 인터페이싱부(180)를 통하여 외부장치에 독출될 수 있다. 이와 같은 외부장치로의 데이터 독출 과정은 당업자에게는 자명한 사실이므로, 본 명세서에서는, 그에 대한 구체적인 기술은 생략된다.
도 3은 도 2의 메모리 블럭(120)을 나타내는 도면이다. 도 3을 참조하면, 상기 메모리 블럭(120)은 고속 메모리(122)와 저속 메모리(124)를 포함한다. 일반적 으로 상기 프리 데이터(FDTA)에 대한 저장은 상기 저속 메모리(124)에서 이루어 지고, 상기 비지 데이터(BDTA)에 대한 저장은 상기 고속 메모리(122)에서 이루어 지게 된다. 그러나 상기 비지 데이터(BDTA)의 저장시에, 상기 고속 메모리(122)에서의 데이터 저장공간의 확보에 실패할 경우에는, 상기 데이터 분배수단(166)은 상기 비지 데이터(BDTA)를 상기 저속 메모리 제어수단(164)으로 분배한다. 상기 데이터 분배수단(166)이 분배하는 상기 비지 데이터(BDTA2)의 저장은 상기 저속 메모리 제어수단(164)에 의하여 상기 저속 메모리(124)에서 이루어 진다. 본 실시예에서, 상기 고속 메모리(122)에서의 데이터 저장공간의 확보가 실패되는 경우, 소정의 메모리풀 신호(XMFUL)의 활성화에 의해, 상기 데이터 분배수단(166)이 제어된다. 상기 메모리풀 신호(XMFUL)는, 상기 고속 메모리(122)에의 데이터 저장이 가능한 용량의 상태를 파악하고 있는 외부의 처리장치(미도시)로부터 제공될 수 있다. 한편, 상기 외부의 처리장치(미도시)는 상기 데이터 저장장치(100)가 포함되는 시스템의 운영체제일 수 있고, 상기 운영체제가 상기 메모리풀 신호(XMFUL)를 상기 데이터 분배수단(166)으로 제공하는 과정은 당업자에게 용이한 것이므로, 그에 대한 구체적인 기술은 생략된다. 또한, 상기 데이터 분배수단(166) 및 상기 외부의 처리장치(미도시)의 구현도 당업자에게 용이한 것이므로, 그에 대한 구체적인 기술은 생략된다.
도 4는 본 발명의 일실시예에 따른 데이터 저장장치(100)의 구동 방법을 나타내는 순서도이다. 도 4를 참조하면, 먼저, S210 단계에서, 본 발명의 데이터 저장장치(100)는 외부장치로부터 데이터(DTA)를 수신한다. S230 단계에서는, 상기 데이터(DTA)가 수신된 경우, 상기 데이터 분류부(140)에서, 수신되는 상기 데이터 (DTA)는 억세스 빈도에 따라 비지 데이터(BDTA)와 프리 데이터(FDTA)를 포함하는 데이터 그룹으로 분류된다. 전술한 바와 같이, 상기 비지 데이터(BDTA)는 상대적으로 빈번한 억세스가 발생하는 속성을 지니며, 상기 프리 데이터(FDTA)는 상대적으로 드문 억세스가 발생하는 속성을 지닌다.
S250 단계에서는, 분류된 상기 데이터(BDTA, FDTA)를 상기 메모리 블럭(120)에 공급한다. 이때, 상기 비지 데이터(BDTA)는 상기 고속 메모리(122)에, 상기 프리 데이터(FDTA)를 상기 저속 메모리(124)에 우선적으로 공급하는 동작을 수행한다.
S250 단계는 S251 단계, S253 단계, S255 단계 및 S257 단계를 포함한다. 먼저 S251 단계에서는, 상기 S230 단계에서 분류되는 데이터가 상기 비지 데이터(BDTA)인지가 판단된다. 그리고, 상기 비지 데이터(BDTA)인 경우, S253 단계에서는 상기 고속 메모리(122)에서의 데이터 저장공간이 확보되는 지가 판단된다. 만약, 상기 고속 메모리(122)에서의 데이터 저장공간이 확보되는 경우에는, 수신되는 비지 데이터(BDAT)가 상기 고속 메모리(122)에 제공된다(S255 단계).
반면에, S251 단계에서 비지 데이터가 아닌 것으로 판단되는 경우, 수신되는 프리 데이터(FDAT)는 상기 저속 메모리(124)에 공급한다(S257 단계). 또한, S253 단계에서 상기 고속 메모리(122)에서의 데이터 저장공간의 확보가 실패되는 경우에도, 수신되는 비지 데이터(BDTA2)는 상기 저속 메모리(124)에 공급한다(S257 단계).
S290단계에서, 상기 메모리 블럭(120)에 공급되는 데이터가 상기 메모리 블 럭(120)에 저장된다. 즉, 고속 메모리(122)는 상기 고속제어신호(HCON)에 응답하여 억세스되어, 상기 비지 데이터(BDAT1)를 저장한다(S291 단계). 저속 메모리(124)는 상기 저속제어신호(LCON)에 응답하여 억세스되어, 상기 프리 데이터(FDAT) 또는 상기 비지 데이터(BDAT2)를 저장한다(S293 단계).
본 발명은 도면에 도시된 일 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
상기와 같은 본 발명의 데이터 저장장치(100) 및 그의 구동 방법에 의하면, 상기 프리 데이터(FDAT)는 억세스 속도는 느리지만 고용량인 저속 메모리에 우선적으로 저장된다. 반면에, 비지 데이터(FDAT)는 상대적으로 저용량이지만, 데이터 억세스 속도가 빠른 고속 메모리에 우선적으로 저장된다. 따라서, 본 발명의 데이터 저장장치(100) 및 그의 구동 방법에 의하면, 제한된 자원(resource)으로 부터 데이터 저장장치의 데이터 억세스 속도가 향상될 수 있다.
또한, 본 발명의 데이터 저장장치(100) 및 그의 구동 방법에 의하면, 비지 데이터를 저장하기 위한 상기 고속 메모리의 저장 공간이 부족하게 되는 경우에는, 저속 메모리로 대체하여 저장하는 것이 가능하다. 따라서, 본 발명의 데이터 저장 장치(100) 및 그의 구동 방법에 의하면, FAT(File Allocation Table)와 같은 데이터의 속성 정보를 저장하기 위한 메모리 공간이 유동적이므로, 메모리 공간의 낭비를 방지될 수 있다.

Claims (10)

  1. 외부장치에서 제공되는 데이터를 저장할 수 있는 데이터 저장장치에 있어서,
    상대적으로 빠른 억세스 속도를 가지는 고속 메모리와 상대적으로 느린 억세스 속도를 가지는 저속 메모리를 포함하는 메모리 블럭으로서, 상기 고속 메모리와 상기 저속 메모리는 상기 데이터의 저장이 가능한 비휘발성 메모리들인 상기 메모리 블럭;
    상기 외부장치에서 제공되는 상기 데이터를 억세스 빈도에 따라 비지(busy)데이터 및 프리(free)데이터를 포함하는 데이터 그룹으로 분류하는 데이터 분류부로서, 상기 비지 데이터는 상대적으로 빈번한 억세스가 발생되는 속성을 지니며, 상기 프리 데이터는 상대적으로 드문 억세스가 발생되는 속성을 지니는 상기 데이터 분류부; 및
    상기 데이터 분류부에서 제공되는 데이터를 상기 메모리 블럭에 저장되도록 제어하되, 상기 비지 데이터는 상기 고속 메모리에, 상기 프리 데이터는 상기 저속 메모리에 우선적으로 저장되도록 제어하는 메모리 제어부를 구비하며,
    상기 비지 데이터는 데이터의 속성을 나타내는 메타데이터(MetaData)를 포함하고, 상기 프리 데이터는 사용자에 의하여 생성되는 유저데이터(UserData)를 포함하는 것을 특징으로 하는 데이터 저장장치.
  2. 제1 항에 있어서, 상기 메모리 제어부는
    상기 비지 데이터를 우선적으로 수신하며, 수신되는 상기 비지 데이터를 상 기 고속 메모리로 제공하는 고속 메모리 제어수단으로서, 상기 비지 데이터의 수신에 응답하여 활성화되는 고속제어신호를 상기 고속 메모리에 제공하여, 상기 비지 데이터가 상기 고속 메모리에 저장되도록 제어하는 상기 고속 메모리 제어수단; 및
    상기 프리 데이터를 우선적으로 수신하며, 수신되는 상기 프리 데이터를 상기 저속 메모리로 제공하는 저속 메모리 제어수단으로서, 상기 프리 데이터의 수신에 응답하여 활성화되는 저속제어신호를 상기 저속 메모리에 제공하여, 상기 프리 데이터가 상기 저속 메모리에 저장되도록 제어하는 상기 저속 메모리 제어수단을 구비하는 것을 특징으로 하는 데이터 저장장치.
  3. 제2 항에 있어서, 상기 메모리 제어부는
    수신되는 상기 비지 데이터를 우선적으로 상기 고속 메모리 제어수단으로 분배하되, 상기 고속 메모리에서의 데이터 저장공간의 확보에 실패하는 경우, 상기 비지 데이터를 상기 저속 메모리 제어수단으로 분배하는 데이터 분배수단을 더 구비하며,
    상기 저속 메모리 제어수단은
    상기 데이터 분배수단에서 분배되는 상기 비지 데이터를 수신하며, 수신되는 상기 비지 데이터가 상기 저속 메모리에 저장될 수 있도록 제어하기 위하여, 상기 저속제어신호를 활성화하는 것을 특징으로 하는 데이터 저장장치.
  4. 제1 항에 있어서,
    상기 저속 메모리는 난드형 플래쉬 메모리(NAND type flash memory)를 포함하며, 상기 고속 메모리는 상기 저속 메모리와 상이한 종류의 비휘발성 메모리를 포함하는 것을 특징으로 하는 데이터 저장장치.
  5. 삭제
  6. 제1 항에 있어서, 상기 데이터 저장장치는
    상기 외부장치와 인터페이싱하며, 입출력되는 데이터를 버퍼링하는 입출력 인터페이싱부를 더 구비하는 것을 특징으로 하는 데이터 저장장치.
  7. 외부장치에서 제공되는 데이터를 저장할 수 있는 데이터 저장장치의 구동방법으로서, 상대적으로 빠른 억세스 속도를 가지는 고속 메모리와 상대적으로 느린 억세스 속도를 가지는 저속 메모리를 포함하는 메모리 블럭을 포함하는 상기 데이터 저장장치의 구동방법에 있어서,
    상기 데이터를 수신하는 단계;
    수신되는 상기 데이터를 억세스 빈도에 따라 비지 데이터 및 프리 데이터를 포함하는 데이터 그룹으로 분류하는 단계로서, 상기 비지 데이터는 상대적으로 빈번한 억세스가 발생되는 속성을 지니며, 상기 프리 데이터는 상대적으로 드문 억세스가 발생되는 속성을 지니는 상기 데이터 그룹으로 분류하는 단계;
    분류된 상기 데이터를 상기 메모리 블럭에 공급하되, 상기 비지 데이터를 상기 고속 메모리에, 상기 프리 데이터를 상기 저속 메모리에 우선적으로 공급하는 단계; 및
    상기 공급되는 데이터를 상기 메모리 블럭에 저장하는 단계를 구비하며,
    상기 비지 데이터는 데이터의 속성을 나타내는 메타데이터(MetaData)를 포함하고, 상기 프리 데이터는 사용자에 의하여 생성되는 유저데이터(UserData)를 포함하는 것을 특징으로 하는 데이터 저장장치의 구동 방법.
  8. 제7 항에 있어서, 상기 우선적으로 공급하는 단계는
    상기 데이터 그룹으로 분류하는 단계에서, 분류되는 데이터가 상기 비지 데이터인지를 판단하는 단계;
    분류되는 데이터가 상기 비지 데이터이면, 상기 고속 메모리에서의 데이터저장공간의 확보가 실패인지를 판단하는 단계; 및
    상기 고속 메모리에서의 저장공간의 확보가 실패이면, 상기 비지 데이터를 상기 저속 메모리에 공급하는 단계를 구비하는 것을 특징으로 하는 데이터 저장장치의 구동방법.
  9. 제7 항에 있어서,
    상기 저속 메모리는 난드형 플래쉬 메모리(NAND type flash memory)를 포함하며, 상기 고속 메모리는 상기 저속 메모리와 상이한 종류의 비휘발성 메모리를 포함하는 것을 특징으로 하는 데이터 저장장치의 구동 방법.
  10. 삭제
KR1020050031275A 2005-04-15 2005-04-15 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법 KR100704037B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020050031275A KR100704037B1 (ko) 2005-04-15 2005-04-15 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법
US11/319,363 US7523274B2 (en) 2005-04-15 2005-12-29 Data storage device and method using heterogeneous nonvolatile memory
DE102006007201A DE102006007201A1 (de) 2005-04-15 2006-02-15 Vorrichtung und Verfahren zur Datenspeicherung mit nichtflüchtigen Speichern
JP2006041379A JP5053552B2 (ja) 2005-04-15 2006-02-17 異種の非揮発性メモリを持つデータ記憶装置とその駆動方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050031275A KR100704037B1 (ko) 2005-04-15 2005-04-15 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법

Publications (2)

Publication Number Publication Date
KR20060109042A KR20060109042A (ko) 2006-10-19
KR100704037B1 true KR100704037B1 (ko) 2007-04-04

Family

ID=37055593

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050031275A KR100704037B1 (ko) 2005-04-15 2005-04-15 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법

Country Status (4)

Country Link
US (1) US7523274B2 (ko)
JP (1) JP5053552B2 (ko)
KR (1) KR100704037B1 (ko)
DE (1) DE102006007201A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101498673B1 (ko) * 2007-08-14 2015-03-09 삼성전자주식회사 반도체 드라이브, 그것의 데이터 저장 방법, 그리고 그것을포함한 컴퓨팅 시스템
US10503406B2 (en) 2015-06-22 2019-12-10 Samsung Electronics Co., Ltd. Data storage device and data processing system having the same

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8560760B2 (en) * 2007-01-31 2013-10-15 Microsoft Corporation Extending flash drive lifespan
US7657572B2 (en) 2007-03-06 2010-02-02 Microsoft Corporation Selectively utilizing a plurality of disparate solid state storage locations
JP5224706B2 (ja) * 2007-03-23 2013-07-03 キヤノン株式会社 記憶装置及び記憶装置の制御方法
US8429677B2 (en) 2007-04-19 2013-04-23 Microsoft Corporation Composite solid state drive identification and optimization technologies
KR101464338B1 (ko) 2007-10-25 2014-11-25 삼성전자주식회사 불휘발성 메모리 장치를 이용한 데이터 저장장치, 메모리시스템, 그리고 컴퓨터 시스템
JP2009230414A (ja) * 2008-03-21 2009-10-08 Toshiba Corp 複数の不揮発性メモリデバイスを有する記憶装置
US8069300B2 (en) 2008-09-30 2011-11-29 Micron Technology, Inc. Solid state storage device controller with expansion mode
TWI499906B (zh) * 2008-12-08 2015-09-11 Apacer Technology Inc Memory reorganization method of storage device, computer storage medium, computer program product, reorganization method
US8458562B1 (en) * 2008-12-30 2013-06-04 Micron Technology, Inc. Secondary memory element for non-volatile memory
US8806101B2 (en) * 2008-12-30 2014-08-12 Intel Corporation Metaphysical address space for holding lossy metadata in hardware
US8627017B2 (en) 2008-12-30 2014-01-07 Intel Corporation Read and write monitoring attributes in transactional memory (TM) systems
US9785462B2 (en) 2008-12-30 2017-10-10 Intel Corporation Registering a user-handler in hardware for transactional memory event handling
US8245060B2 (en) * 2009-10-15 2012-08-14 Microsoft Corporation Memory object relocation for power savings
KR20110048304A (ko) 2009-11-02 2011-05-11 삼성전자주식회사 솔더 리플로우에서 코드 데이터의 손실을 방지할 수 있는 방법과 그 장치들
US9015441B2 (en) * 2010-04-30 2015-04-21 Microsoft Technology Licensing, Llc Memory usage scanning
US8990538B2 (en) 2010-11-05 2015-03-24 Microsoft Corporation Managing memory with limited write cycles in heterogeneous memory systems
US8627176B2 (en) 2010-11-30 2014-01-07 Microsoft Corporation Systematic mitigation of memory errors
US8504106B2 (en) * 2011-11-01 2013-08-06 Kt Corporation Smart card and method for managing data of smart card, and mobile terminal
JP2013142947A (ja) * 2012-01-10 2013-07-22 Sony Corp 記憶制御装置、記憶装置および記憶制御装置の制御方法
KR20130114354A (ko) 2012-04-09 2013-10-18 삼성전자주식회사 메모리 시스템 및 컨트롤러의 동작 방법
KR101938210B1 (ko) 2012-04-18 2019-01-15 삼성전자주식회사 낸드 플래시 메모리, 가변 저항 메모리 및 컨트롤러를 포함하는 메모리 시스템의 동작 방법
US9037587B2 (en) 2012-05-10 2015-05-19 International Business Machines Corporation System and method for the classification of storage
US9064603B1 (en) 2012-11-28 2015-06-23 Samsung Electronics Co., Ltd. Semiconductor memory device and memory system including the same
JP6098262B2 (ja) * 2013-03-21 2017-03-22 日本電気株式会社 記憶装置および記憶方法
KR20150033859A (ko) 2013-09-25 2015-04-02 삼성전자주식회사 반도체 메모리 장치 및 메모리 시스템
KR102289919B1 (ko) * 2014-04-15 2021-08-12 삼성전자주식회사 스토리지 컨트롤러, 스토리지 장치, 스토리지 시스템 및 상기 스토리지 컨트롤러의 동작 방법
US10318175B2 (en) * 2017-03-07 2019-06-11 Samsung Electronics Co., Ltd. SSD with heterogeneous NVM types
KR20200054600A (ko) * 2018-11-12 2020-05-20 삼성전자주식회사 스토리지 장치의 구동 방법, 이를 수행하는 스토리지 장치 및 이를 포함하는 스토리지 시스템
TWI716993B (zh) * 2019-09-03 2021-01-21 宜鼎國際股份有限公司 雙通道資料儲存系統

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05313995A (ja) * 1992-05-07 1993-11-26 Nec Corp メモリ制御方式
KR19990036633A (ko) * 1997-10-02 1999-05-25 포만 제프리 엘 램 장치 및 고속 메모리 시스템
KR19990057677A (ko) * 1997-12-30 1999-07-15 윤종용 단일 및 이중 데이터 율 겸용 반도체 메모리 장치
JPH11213668A (ja) 1998-01-23 1999-08-06 Samsung Electronics Co Ltd 同期式半導体メモリ装置及びその出力制御方法
KR20010113496A (ko) * 2000-06-16 2001-12-28 가네꼬 히사시 메모리 제어 기술
KR20020039374A (ko) * 1999-10-19 2002-05-25 바누치 유진 지. 상이한 메모리 기술 특성을 갖는 분할 메모리 장치

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04263386A (ja) * 1991-02-18 1992-09-18 Fuji Photo Film Co Ltd Icメモリカード
JPH06236316A (ja) * 1992-12-18 1994-08-23 Toshiba Corp 情報伝送システム
JPH07219720A (ja) * 1993-10-01 1995-08-18 Hitachi Maxell Ltd 半導体メモリ装置ならびにその制御方法
JPH0822404A (ja) 1994-07-08 1996-01-23 Yaskawa Electric Corp ファイル管理システム
JPH09288895A (ja) * 1996-04-19 1997-11-04 Toshiba Corp 3値記憶半導体記憶システム
JPH1131102A (ja) 1997-07-14 1999-02-02 Toshiba Corp データ記憶システム及び同システムに適用するアクセス制御方法
US20030005219A1 (en) * 2001-06-29 2003-01-02 Royer Robert J. Partitioning cache metadata state
CN100371873C (zh) * 2003-09-18 2008-02-27 松下电器产业株式会社 半导体存储卡、半导体存储器控制装置以及半导体存储器控制方法
US7502256B2 (en) * 2004-11-30 2009-03-10 Siliconsystems, Inc. Systems and methods for reducing unauthorized data recovery from solid-state storage devices

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05313995A (ja) * 1992-05-07 1993-11-26 Nec Corp メモリ制御方式
KR19990036633A (ko) * 1997-10-02 1999-05-25 포만 제프리 엘 램 장치 및 고속 메모리 시스템
KR19990057677A (ko) * 1997-12-30 1999-07-15 윤종용 단일 및 이중 데이터 율 겸용 반도체 메모리 장치
JPH11213668A (ja) 1998-01-23 1999-08-06 Samsung Electronics Co Ltd 同期式半導体メモリ装置及びその出力制御方法
KR20020039374A (ko) * 1999-10-19 2002-05-25 바누치 유진 지. 상이한 메모리 기술 특성을 갖는 분할 메모리 장치
KR20010113496A (ko) * 2000-06-16 2001-12-28 가네꼬 히사시 메모리 제어 기술

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101498673B1 (ko) * 2007-08-14 2015-03-09 삼성전자주식회사 반도체 드라이브, 그것의 데이터 저장 방법, 그리고 그것을포함한 컴퓨팅 시스템
US9208079B2 (en) 2007-08-14 2015-12-08 Samsung Electronics Co., Ltd. Solid state memory (SSM), computer system including an SSM, and method of operating an SSM
US10503406B2 (en) 2015-06-22 2019-12-10 Samsung Electronics Co., Ltd. Data storage device and data processing system having the same

Also Published As

Publication number Publication date
US7523274B2 (en) 2009-04-21
KR20060109042A (ko) 2006-10-19
JP2006302255A (ja) 2006-11-02
DE102006007201A1 (de) 2006-10-19
JP5053552B2 (ja) 2012-10-17
US20060248259A1 (en) 2006-11-02

Similar Documents

Publication Publication Date Title
KR100704037B1 (ko) 이종의 비휘발성 메모리를 가지는 데이터 저장장치와 그의구동 방법
US8240575B2 (en) Method of multi-interfacing between smart card and memory card, and multi-interface card
US11132143B2 (en) Universal flash storage (UFS) device and computing device and computing device including storage UFS device for reporting buffer size based on reuse time after erase
CN103927127A (zh) 可重新配置存储装置
JPH1131102A (ja) データ記憶システム及び同システムに適用するアクセス制御方法
US20020138702A1 (en) Using non-executable memory as executable memory
US6498750B2 (en) Boot block flash memory control circuit; IC memory card and semiconductor memory device incorporating the same; and erasure method for boot block flash memory
US6742089B1 (en) Access controller and access method for controlling access from a CPU to a memory based on use states of plural access ports
CN103631533A (zh) 计算装置以及计算装置的操作方法
CN112306906A (zh) 存储设备、包括该存储设备的存储系统及其操作方法
KR20210004629A (ko) 메모리 시스템 및 그것의 동작방법
US9170929B2 (en) Memory controller
US9058113B2 (en) Storage region providing device, storage region providing method, and recording medium
US12014080B2 (en) Memory system using host memory buffer and operation method thereof
KR102497130B1 (ko) 스토리지 장치 및 그것의 동작 방법
US11282565B1 (en) Memory system and controlling method of memory system
US20230376340A1 (en) Memory system and operating method thereof
US11907761B2 (en) Electronic apparatus to manage memory for loading data and method of controlling the same
CN111694512B (zh) 共享存储器的存储系统以及包括其的数据处理系统
US20240152381A1 (en) Computational storage device for executing offloading program and electronic system including the same
CN111078261B (zh) 闪存升级装置及车辆
US20230281115A1 (en) Calendar based flash command scheduler for dynamic quality of service scheduling and bandwidth allocations
JP2007293564A (ja) メモリデバイスおよび情報記憶システム
CN117149052A (zh) 提供高清除性能的存储设备及其存储块管理方法
CN118072793A (zh) 用于改进命令输入操作的效率的存储器装置

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: 20130228

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140228

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20150302

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20170228

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20180228

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190228

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20200228

Year of fee payment: 14