KR20090098275A - 플래시 메모리 시스템 - Google Patents

플래시 메모리 시스템 Download PDF

Info

Publication number
KR20090098275A
KR20090098275A KR1020080023539A KR20080023539A KR20090098275A KR 20090098275 A KR20090098275 A KR 20090098275A KR 1020080023539 A KR1020080023539 A KR 1020080023539A KR 20080023539 A KR20080023539 A KR 20080023539A KR 20090098275 A KR20090098275 A KR 20090098275A
Authority
KR
South Korea
Prior art keywords
mapping
flash memory
pattern
data
write
Prior art date
Application number
KR1020080023539A
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 KR1020080023539A priority Critical patent/KR20090098275A/ko
Publication of KR20090098275A publication Critical patent/KR20090098275A/ko

Links

Images

Classifications

    • 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
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1096Write circuits, e.g. I/O line write drivers
    • 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)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

본 발명은 워크 로드 특성에 따라 쓰기 방식을 구분하는 플래시 메모리 시스템을 개시하며, 외부로부터 전송된 데이터의 쓰기 패턴을 판단하는 패턴 인식부; 상기 패턴 인식부에서 판단된 패턴에 대응하는 사상 기법을 선택적으로 수행하는 사상부; 상기 사상부에서 선택된 기법에 해당하는 사상을 위한 물리적 주소를 제공하는 블록 맵 테이블; 및 상기 사상부에서 사상된 데이터를 해당 물리적 주소에 저장하는 플래시 메모리;를 구비함을 특징으로 한다.

Description

플래시 메모리 시스템{Flash memory system}
본 발명은 플래시 메모리 시스템에 관한 것으로서, 보다 상세하게는 워크 로드 특성에 따라 쓰기 방식을 구분하는 플래시 메모리 시스템에 관한 것이다.
일반적으로 컴퓨터 등과 같이 멀티미디어를 기록 및 재생하는 장치는 대용량 데이터를 저장하기 위한 저장소를 필요로 하며, 대용량 저장장치로서 하드디스크가 많이 이용되고 있으나, 최근 모바일 장치나 네트워크 등을 고려한 휴대성이나 용량의 확장성 등을 확보하기 위하여 플래시 메모리가 메인 저장 장치로 개발되어 상용화되는 추세이다.
플래시 메모리 저장 장치는 일반적으로 덮어쓰기가 어렵다는 제약으로 인해서 제자리 갱신(In-place update) 방법을 사용하지 못하기 때문에 기본적으로 주소 사상(Mapping) 기법을 사용하여 쓰기를 수행한다.
주소 사상 기법은 플래시 메모리의 프로그램 단위인 페이지 단위로 수행하거나 지우기 단위인 블록 단위로 수행하는 것이 일반적이다.
그러나, 위 두 사상 기법은 각각 장점과 단점을 갖는다. 페이지 단위 사상 기법의 경우 사상 정보량이 많아서 비효율적인 반면 소량 랜덤 쓰기에 효율적이며, 반대로 블록 단위 사상 기법의 경우 사상 정보량이 적은 반면 소량 랜덤 쓰기에 비효율적이다.
일반적인 호스트 시스템의 워크 로드는 대부분 대량 순차 쓰기를 수행하나, 워크 로드 특성에 따라 사상 정보량이나 쓰기의 효율성이 같이 고려되어서 효율적으로 쓰기를 수행하기 어렵다.
본 발명의 목적은 플래시 메모리 시스템에서 워크 로드 특성에 따라 쓰기 패턴을 구분하여 해당 패턴에 적합한 쓰기 처리 기법을 적용함에 있다.
본 발명에 따른 플래시 메모리 시스템은, 외부로부터 전송된 데이터의 쓰기 패턴을 판단하는 패턴 인식부; 상기 패턴 인식부에서 판단된 패턴에 대응하는 사상 기법을 선택적으로 수행하는 사상부; 상기 사상부에서 선택된 기법에 해당하는 사상을 위한 물리적 주소를 제공하는 블록 맵 테이블; 및 상기 사상부에서 사상된 데이터를 해당 물리적 주소에 저장하는 플래시 메모리;를 구비함을 특징으로 한다.
여기에서, 상기 데이터는 버스나 네트워크 중 어느 하나로부터 전송되는 것일 수 있다.
그리고, 상기 패턴 인식부는 쓰기 패턴을 소량 랜덤 쓰기와 대량 순차 쓰기로 인식함이 바람직하다.
그리고, 상기 패턴 인식부는 쓰기 요청이 이전의 대량 순차 쓰기 요청에 이 어지는 경우와, 쓰기 요청된 데이터의 크기가 미리 정해진 크기 이상인 경우 대량 순차 쓰기로 판단함이 바람직하다.
그리고, 상기 패턴 인식부는 쓰기 요청이 이전의 대량 순차 쓰기 요청에 이어지는 경우와 데이터의 크기가 미리 정해진 크기 이상인 경우 이외의 경우에 대하여 소량 랜덤 쓰기로 판단함이 바람직하다.
여기에서, 상기 사상부는 소량 랜덤 쓰기로 구분된 데이터를 페이지 단위로 저장하는 페이지 버퍼와 대량 순차 쓰기로 구분된 데이터를 블록 단위로 저장하는 블록 버퍼를 구비할 수 있다.
그리고, 상기 사상부는 소량 랜덤 쓰기에 대응하여 페이지 맵 테이블과 사상을 수행하고 대량 순차 쓰기에 대응하여 버퍼 맵 테이블과 사상을 수행함이 바람직하다.
본 발명에 따르면 사상 정보량을 줄이기 위해서 블록 단위 사상을 사용하면서, 일부 영역에 대해서만 소량 페이지 단위 사상을 적용함으로써 소량 랜덤 쓰기 처리 효율성이 높아질 수 있다.
본 발명은 워크 로드 특성에 따라 소량 랜덤 쓰기와 대량 순차 쓰기로 구분하고, 플래시 메모리에 데이터를 쓸 때 페이지 사상 기법 또는 블록 사상 기법을 선택적으로 수행하는 구성을 갖는다.
도 1은 본 발명에 따른 플래시 메모리 시스템의 실시예이며, 호스트(10), 패 턴인식부(12), 사상부(14), 플래시 메모리(16), 맵 테이블로서 블록 맵 테이블(20) 및 페이지 맵 테이블(22)을 구비하며, 사상부(14)는 내부에 블록 버퍼(30)와 페이지 버퍼(32)를 구비한다.
호스트(10)는 플래시 메모리(16)를 저장소로 이용하기 위하여 버스(BUS) 또는 네트워크를 통하여 데이터를 전송 채널에서 요구하는 포맷에 맞게 데이터를 전송하며, 전송되는 데이터는 쓰기 요청 패턴 정보와 같이 전송된다.
패턴 인식부(12)는 데이터와 같이 전송되는 쓰기 요청 패턴 정보를 참조하여 호스트(10)에서 전송되는 데이터를 쓰는 패턴을 인식하기 위한 것이며, 대량 순차 쓰기를 수행할 경우 데이터를 사상부(14)의 블록 버퍼(30)로 전송하고, 소량 랜덤 쓰기를 수행할 경우 데이터를 사상부(14)의 페이지 버퍼(32)로 전송한다.
패턴 인식부(12)는 소량 랜덤 쓰기와 대량 순차 쓰기의 패턴 분류 방법에 있어서, 쓰기 요청이 이전의 대량 순차 쓰기 요청에 이어지는 경우 대량 순차 쓰기로 판단할 수 있고, 하나의 쓰기 요청된 데이터의 크기가 미리 정해진 크기 이상인 경우 대량 순차 쓰기로 판단할 수 있으며, 그외의 경우는 소량 랜덤 쓰기로 판단할 수 있다.
사상부(14)는 블록 버퍼(30) 또는 페이지 버퍼(32)의 데이터를 블록 맵 테이블(20) 또는 페이지 맵 테이블(22)을 참조하여 지정된 물리적 어드레스의 플래시 메모리(16)에 저장하는 기능을 수행하며, 이에 대하여 도 2 및 도 3을 참조하여 후술한다..
그리고, 블록 버퍼(20)는 데이터를 블록 단위로 저장하는 복수의 블록 버퍼 로 이루어지고, 페이지 버퍼(22)도 데이터를 페이지 단위로 저장하는 복수의 페이지 버퍼로 이루어진다.
상술한 바와 같이 구성됨으로써 사상부(14)는 패턴 인식부(12)에서 인식된 쓰기 요청 패턴에 따라 사상을 수행한다.
즉, 사상부(14)는 쓰기 요청 패턴이 대량 순차 쓰기 패턴으로 패턴 인식부(12)에서 인식하여 구분된 경우, 도 2와 같은 사상을 수행한다.
사상부(14)의 블록 버퍼(30)에 저장되는 데이터는 블록 단위로 논리 주소(블록 논리 번호)를 갖는다. 그리고, 블록 맵 테이블(20)은 논리 주소와 맵핑할 블록 프레임 번호(물리적 주소)에 대한 정보를 갖는다.
그에 따라 사상부(14)는 맵핑을 수행하며, 도 2를 하나의 예로 설명하면 블록 논리 번호(0, 1, 2, 3)의 각 블록이 블록 맵 테이블(20)을 참조하여 블록 프레임 번호(2, 5, 3, 7)에 맵핑되고, 블록 버퍼(30)에 저장된 데이터는 블록 단위로 메모리의 해당 블록 프레임 번호에 해당하는 주소 공간에 쓰여진다.
한편, 사상부(14)는 쓰기 요청 패턴이 소량 랜덤 쓰기 패턴으로 패턴 인식부(12)에서 인식하여 구분된 경우, 도 3와 같은 사상을 수행한다.
사상부(14)의 페이지 버퍼(30)에 저장되는 데이터는 페이지 단위로 논리 주소(블록 논리 번호)를 갖는다. 그리고, 페이지 맵 테이블(22)은 논리 주소와 맵핑할 페이지 프레임 번호(물리적 주소)에 대한 정보를 갖는다.
그에 따라 사상부(14)는 맵핑을 수행하며, 도 3를 하나의 예로 설명하면 페이지 논리 번호(0, 1, 2, 3)의 각 페이지가 페이지 맵 테이블(20)을 참조하여 페이 지 프레임 번호(2, 5, 3, 7)에 맵핑되고, 페이지 버퍼(30)에 저장된 데이터는 페이지 단위로 해당 블록 프레임 번호에 해당하는 주소 공간에 쓰여진다.
이상과 같이 본 발명에 따른 실시예는 쓰기 요청 패턴에 따라 소량 랜덤 쓰기 또는 대량 순차 쓰기를 병행하여 플래시 메모리(16)에 데이터를 저장한다.
그에 따라서 사상 정보량을 줄이기 위해서 블록 단위 사상을 사용하면서, 일부 영역에 대해서만 소량 페이지 단위 사상을 적용함으로써 소량 랜덤 쓰기 처리 효율성이 높아질 수 있다.
본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 특허청구위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형의 실시가 가능한 것은 물론이고, 그와 같은 변경은 특허청구범위 기재의 범위 내에 있게 된다.
도 1은 본 발명에 따른 플래시 메모리 시스템의 바람직한 실시예를 나타내는 블록도.
도 2는 도 1의 시스템에서 블록 단위 사상을 설명하는 도면.
도 3은 도 1의 시스템에서 페이지 단위 사상을 설명하는 도면.

Claims (8)

  1. 외부로부터 전송된 데이터의 쓰기 패턴을 판단하는 패턴 인식부;
    상기 패턴 인식부에서 판단된 패턴에 대응하는 사상 기법을 선택적으로 수행하는 사상부;
    상기 사상부에서 선택된 기법에 해당하는 사상을 위한 물리적 주소를 제공하는 블록 맵 테이블; 및
    상기 사상부에서 사상된 데이터를 해당 물리적 주소에 저장하는 플래시 메모리;를 구비함을 특징으로 하는 플래시 메모리 시스템.
  2. 제 1 항에 있어서, 상기 데이터는 버스나 네트워크 중 어느 하나로부터 전송하는 플래시 메모리 시스템.
  3. 제 1 항에 있어서, 상기 패턴 인식부는 쓰기 패턴을 소량 랜덤 쓰기와 대량 순차 쓰기로 인식하는 플래시 메모리 시스템.
  4. 제 1 항에 있어서, 상기 패턴 인식부는 쓰기 요청이 이전의 대량 순차 쓰기 요청에 이어지는 경우 대량 순차 쓰기로 판단하는 플래시 메모리 시스템.
  5. 제 1 항에 있어서, 상기 패턴 인식부는 쓰기 요청된 데이터의 크기가 미리 정해진 크기 이상인 경우 대량 순차 쓰기로 판단하는 플래시 메모리 시스템.
  6. 제 1 항에 있어서, 상기 패턴 인식부는 쓰기 요청이 이전의 대량 순차 쓰기 요청에 이어지는 경우와 데이터의 크기가 미리 정해진 크기 이상인 경우 이외의 경우에 대하여 소량 랜덤 쓰기로 판단하는 플래시 메모리 시스템.
  7. 제 1 항에 있어서, 상기 사상부는 소량 랜덤 쓰기로 구분된 데이터를 페이지 단위로 저장하는 페이지 버퍼와 대량 순차 쓰기로 구분된 데이터를 블록 단위로 저장하는 블록 버퍼를 구비하는 플래시 메모리 시스템.
  8. 제 7 항에 있어서, 상기 사상부는 소량 랜덤 쓰기에 대응하여 페이지 맵 테이블과 사상을 수행하고 대량 순차 쓰기에 대응하여 버퍼 맵 테이블과 사상을 수행하는 플래시 메모리 시스템.
KR1020080023539A 2008-03-13 2008-03-13 플래시 메모리 시스템 KR20090098275A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080023539A KR20090098275A (ko) 2008-03-13 2008-03-13 플래시 메모리 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080023539A KR20090098275A (ko) 2008-03-13 2008-03-13 플래시 메모리 시스템

Publications (1)

Publication Number Publication Date
KR20090098275A true KR20090098275A (ko) 2009-09-17

Family

ID=41357378

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080023539A KR20090098275A (ko) 2008-03-13 2008-03-13 플래시 메모리 시스템

Country Status (1)

Country Link
KR (1) KR20090098275A (ko)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101114398B1 (ko) * 2010-01-25 2012-02-22 인하대학교 산학협력단 삭제 그룹 플래시 변환 계층을 이용한 퓨전 플래시 메모리의 주소 변환 방법 및 다중 블록 삭제 방법
US10095411B2 (en) 2014-09-24 2018-10-09 Samsung Electronics Co., Ltd. Controllers including separate input-output circuits for mapping table and buffer memory, solid state drives including the controllers, and computing systems including the solid state drives
US10146474B2 (en) 2015-12-23 2018-12-04 SK Hynix Inc. Memory system and operating method of memory system
CN111949203A (zh) * 2019-05-17 2020-11-17 北京兆易创新科技股份有限公司 一种存储器及其控制方法和控制装置
US11086795B2 (en) 2019-04-01 2021-08-10 SK Hynix Inc. Memory system, memory controller and operating method thereof

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101114398B1 (ko) * 2010-01-25 2012-02-22 인하대학교 산학협력단 삭제 그룹 플래시 변환 계층을 이용한 퓨전 플래시 메모리의 주소 변환 방법 및 다중 블록 삭제 방법
US10095411B2 (en) 2014-09-24 2018-10-09 Samsung Electronics Co., Ltd. Controllers including separate input-output circuits for mapping table and buffer memory, solid state drives including the controllers, and computing systems including the solid state drives
US10146474B2 (en) 2015-12-23 2018-12-04 SK Hynix Inc. Memory system and operating method of memory system
US11086795B2 (en) 2019-04-01 2021-08-10 SK Hynix Inc. Memory system, memory controller and operating method thereof
CN111949203A (zh) * 2019-05-17 2020-11-17 北京兆易创新科技股份有限公司 一种存储器及其控制方法和控制装置
CN111949203B (zh) * 2019-05-17 2024-03-01 兆易创新科技集团股份有限公司 一种存储器及其控制方法和控制装置

Similar Documents

Publication Publication Date Title
TWI594121B (zh) 使用資料壓縮的快取技術
US8144515B2 (en) Interleaved flash storage system and method
US10877898B2 (en) Method and system for enhancing flash translation layer mapping flexibility for performance and lifespan improvements
KR20180123192A (ko) 직접 판독 액세스를 갖는 메모리 장치
US20230333977A1 (en) Garbage collection - automatic data placement
KR20170097609A (ko) 압축된 데이터 백그라운드를 캐싱하는 장치, 시스템 및 방법
US10296250B2 (en) Method and apparatus for improving performance of sequential logging in a storage device
KR101374065B1 (ko) 칩 레벨 평행 플래시 메모리를 위한 정보 분별 방법 및 장치
WO2015054338A1 (en) System and method of storing data in a data storage device with a selection of two writing orders in order to improve the reading speed of a differential look ahead reading mode.
CN112445721A (zh) 提高效率的经混淆逻辑到物理映射管理
KR20090098275A (ko) 플래시 메모리 시스템
KR101469771B1 (ko) 플래시 메모리를 포함하는 반도체 장치 및 이의 어드레스 사상 방법
KR20150062039A (ko) 반도체 장치 및 그 동작 방법
US11681638B2 (en) Method of synchronizing time between host device and storage device and system performing the same
CN108664217B (zh) 一种降低固态盘存储系统写性能抖动的缓存方法及系统
US20150121033A1 (en) Information processing apparatus and data transfer control method
CN114253461A (zh) 混合通道存储设备
US11853614B2 (en) Synchronous write method and device, storage system and electronic device
JP6100927B2 (ja) 情報処理装置
US10331385B2 (en) Cooperative write-back cache flushing for storage devices
KR101477776B1 (ko) 플래시 메모리에서의 페이지 교체 방법
CN213338708U (zh) 一种控制部件及存储设备
CN104268005B (zh) 虚拟机唤醒方法和装置
KR20090098276A (ko) 하이브리드 저장 장치
TWI674531B (zh) 資料儲存裝置及操作該資料儲存裝置的方法

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
E902 Notification of reason for refusal
E601 Decision to refuse application