KR100800484B1 - 불휘발성 메모리를 위한 버퍼와 디스크를 위한 버퍼를구비하는 데이터 저장 시스템 및 상기 데이터 저장시스템의 데이터 억세스 방법 - Google Patents
불휘발성 메모리를 위한 버퍼와 디스크를 위한 버퍼를구비하는 데이터 저장 시스템 및 상기 데이터 저장시스템의 데이터 억세스 방법 Download PDFInfo
- Publication number
- KR100800484B1 KR100800484B1 KR1020060108380A KR20060108380A KR100800484B1 KR 100800484 B1 KR100800484 B1 KR 100800484B1 KR 1020060108380 A KR1020060108380 A KR 1020060108380A KR 20060108380 A KR20060108380 A KR 20060108380A KR 100800484 B1 KR100800484 B1 KR 100800484B1
- Authority
- KR
- South Korea
- Prior art keywords
- disk
- buffer
- nonvolatile memory
- data
- address
- Prior art date
Links
- 239000000872 buffer Substances 0.000 title claims abstract description 89
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000013500 data storage Methods 0.000 claims abstract description 38
- 102000040945 Transcription factor Human genes 0.000 description 6
- 108091023040 Transcription factor Proteins 0.000 description 6
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0873—Mapping of cache memory to specific storage devices or parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/217—Hybrid disk, e.g. using both magnetic and solid state storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/283—Plural cache memories
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)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
Claims (14)
- 불휘발성 메모리;디스크;호스트와 상기 불휘발성 메모리 사이에서 상기 불휘발성 메모리의 일부 영역을 저장하는 불휘발성 메모리 버퍼; 및호스트와 상기 디스크 사이에서 상기 디스크의 일부 영역을 저장하는 디스크 버퍼를 구비하는 것을 특징으로 하는 데이터 저장 시스템.
- 제1항에 있어서, 상기 데이터 저장 시스템은,상기 불휘발성 메모리 버퍼, 상기 불휘발성 메모리, 상기 디스크 버퍼 및 상기 디스크의 순서에 따라, 상기 호스트로부터 수신되는 억세스 어드레스가 어디에 존재하는지 확인하는 것을 특징으로 하는 데이터 저장 시스템.
- 제2항에 있어서, 상기 데이터 저장 시스템은,상기 억세스 어드레스가 존재하면, 존재하는 어드레스에 대응되는 데이터를 상기 호스트로 반환하는 것을 특징으로 하는 데이터 저장 시스템.
- 제3항에 있어서, 상기 데이터 저장 시스템은,상기 억세스 어드레스가 어느 곳에도 존재하지 않으면, 에러를 발생시키는 것을 특징으로 하는 데이터 저장 시스템.
- 제1항에 있어서, 상기 불휘발성 메모리 버퍼 및 상기 디스크 버퍼는,상기 불휘발성 메모리 및 상기 디스크의 일부 영역을 블록 단위로 저장하는 것을 특징으로 하는 데이터 저장 시스템.
- 제5항에 있어서, 상기 불휘발성 메모리 버퍼에 저장되는 블록 개수는,상기 디스크 버퍼에 저장되는 블록 개수보다 적은 것을 특징으로 하는 데이터 저장 시스템.
- 제1항에 있어서, 상기 데이터 저장 시스템은,상기 디스크에 데이터를 저장하는 경우, 상기 데이터가 저장되는 디스크의 어드레스에 대응되는 불휘발성 메모리의 어드레스의 데이터를 삭제하는 것을 특징으로 하는 데이터 저장 시스템.
- 불휘발성 메모리, 상기 불휘발성 메모리의 내부 저장 영역인 블록을 저장하는 불휘발성 메모리 버퍼, 디스크 및 상기 디스크의 내부 저장 영역인 블록을 저장하는 디스크 버퍼를 구비하는 데이터 저장 시스템의 데이터 억세스 방법에 있어서,상기 불휘발성 메모리 버퍼, 상기 불휘발성 메모리, 상기 디스크 버퍼 및 상기 디스크의 순서에 따라, 상기 호스트가 요청하는 억세스 어드레스가 어디에 존재 하는지 확인하는 단계를 구비하는 것을 특징으로 하는 데이터 억세스 방법.
- 제8항에 있어서, 상기 데이터 억세스 방법은,상기 억세스 어드레스가 존재하면, 존재하는 어드레스에 대응되는 데이터를 상기 호스트로 반환하는 것을 특징으로 하는 데이터 억세스 방법.
- 제9항에 있어서, 상기 데이터 억세스 방법은,상기 억세스 어드레스가 어느 곳에도 존재하지 않으면, 에러를 발생시키는 것을 특징으로 하는 데이터 억세스 방법.
- 제8항에 있어서, 상기 데이터 억세스 방법은,상기 호스트로부터 상기 억세스 어드레스를 수신하는 단계를 더 구비하는 것을 특징으로 하는 데이터 억세스 방법.
- 불휘발성 메모리, 상기 불휘발성 메모리의 내부 저장 영역인 블록을 저장하는 불휘발성 메모리 버퍼, 디스크 및 상기 디스크의 내부 저장 영역인 블록을 저장하는 디스크 버퍼를 구비하는 데이터 저장 시스템의 데이터 억세스 방법에 있어서,호스트로부터 수신된 억세스 어드레스가 상기 불휘발성 메모리 버퍼에 존재하는지 확인하는 단계;상기 억세스 어드레스가 상기 불휘발성 메모리 버퍼에 존재하지 않으면, 상 기 억세스 어드레스가 상기 불휘발성 메모리에 존재하는지 확인하는 단계;상기 억세스 어드레스가 상기 불휘발성 메모리에 존재하지 않으면, 상기 억세스 어드레스가 상기 디스크 버퍼에 존재하는지 확인하는 단계; 및상기 억세스 어드레스가 상기 디스크 버퍼에 존재하지 않으면, 상기 억세스 어드레스가 상기 디스크에 존재하는지 확인하는 단계를 구비하는 것을 특징으로 하는 데이터 억세스 방법.
- 제12항에 있어서, 상기 데이터 억세스 방법은,상기 억세스 어드레스가 존재하면, 존재하는 어드레스에 대응되는 데이터를 상기 호스트로 반환하는 것을 특징으로 하는 데이터 억세스 방법.
- 제12항에 있어서, 상기 데이터 억세스 방법은,상기 억세스 어드레스가 상기 디스크 버퍼에 존재하지 않으면, 에러를 발생시키는 단계를 더 구비하는 것을 특징으로 하는 데이터 억세스 방법.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060108380A KR100800484B1 (ko) | 2006-11-03 | 2006-11-03 | 불휘발성 메모리를 위한 버퍼와 디스크를 위한 버퍼를구비하는 데이터 저장 시스템 및 상기 데이터 저장시스템의 데이터 억세스 방법 |
US11/644,954 US7861032B2 (en) | 2006-11-03 | 2006-12-26 | Data storage system including respective buffers for non-volatile memory and disc recording medium, and data access method thereof |
CN2007101848732A CN101174198B (zh) | 2006-11-03 | 2007-10-30 | 数据存储系统及其数据存取方法 |
US12/949,936 US7975099B2 (en) | 2006-11-03 | 2010-11-19 | Data storage system including respective buffers for non-volatile memory and disc recording medium, and data access method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060108380A KR100800484B1 (ko) | 2006-11-03 | 2006-11-03 | 불휘발성 메모리를 위한 버퍼와 디스크를 위한 버퍼를구비하는 데이터 저장 시스템 및 상기 데이터 저장시스템의 데이터 억세스 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100800484B1 true KR100800484B1 (ko) | 2008-02-04 |
Family
ID=39342172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060108380A KR100800484B1 (ko) | 2006-11-03 | 2006-11-03 | 불휘발성 메모리를 위한 버퍼와 디스크를 위한 버퍼를구비하는 데이터 저장 시스템 및 상기 데이터 저장시스템의 데이터 억세스 방법 |
Country Status (3)
Country | Link |
---|---|
US (2) | US7861032B2 (ko) |
KR (1) | KR100800484B1 (ko) |
CN (1) | CN101174198B (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8423865B2 (en) | 2009-11-18 | 2013-04-16 | Samsung Electronics Co., Ltd. | Apparatus and method for storing data using non-volatile buffer |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8850151B2 (en) * | 2010-03-24 | 2014-09-30 | Apple Inc. | Hybrid-device storage based on environmental state |
US9417794B2 (en) | 2011-07-26 | 2016-08-16 | Apple Inc. | Including performance-related hints in requests to composite memory |
US9275096B2 (en) | 2012-01-17 | 2016-03-01 | Apple Inc. | Optimized b-tree |
WO2014203028A1 (en) * | 2013-06-17 | 2014-12-24 | Freescale Semiconductor, Inc. | Diagnostic apparatus, control unit, integrated circuit, vehicle and method of recording diagnostic data |
US20160313995A1 (en) * | 2015-04-24 | 2016-10-27 | Optimum Semiconductor Technologies, Inc. | Computer processor with indirect only branching |
KR102540765B1 (ko) * | 2016-09-07 | 2023-06-08 | 에스케이하이닉스 주식회사 | 메모리 장치 및 이를 포함하는 메모리 시스템 |
US10691580B1 (en) * | 2017-11-29 | 2020-06-23 | Xilinx, Inc. | Diagnosing applications that use hardware acceleration through emulation |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040097272A (ko) * | 2002-04-05 | 2004-11-17 | 가부시끼가이샤 르네사스 테크놀로지 | 불휘발성 기억장치 |
KR20050078206A (ko) * | 2004-01-30 | 2005-08-04 | 삼성전자주식회사 | 불휘발성 메모리와 호스트간에 버퍼링 동작을 수행하는멀티 포트 휘발성 메모리 장치, 이를 이용한 멀티-칩패키지 반도체 장치 및 이를 이용한 데이터 처리장치 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5666512A (en) | 1995-02-10 | 1997-09-09 | Hewlett-Packard Company | Disk array having hot spare resources and methods for using hot spare resources to store user data |
US6243795B1 (en) | 1998-08-04 | 2001-06-05 | The Board Of Governors For Higher Education, State Of Rhode Island And Providence Plantations | Redundant, asymmetrically parallel disk cache for a data storage system |
JP3397152B2 (ja) * | 1998-12-15 | 2003-04-14 | 松下電器産業株式会社 | マルチトラックディスク再生装置及びその再生方法 |
US6378051B1 (en) * | 1999-06-14 | 2002-04-23 | Maxtor Corporation | Interrupt signal prioritized shared buffer memory access system and method |
US7010645B2 (en) * | 2002-12-27 | 2006-03-07 | International Business Machines Corporation | System and method for sequentially staging received data to a write cache in advance of storing the received data |
KR100498486B1 (ko) | 2003-02-06 | 2005-07-01 | 삼성전자주식회사 | 쓰레드 바이너리 컴파일러에 의하여 프로그램에서 여러개의 쓰레드를 다이내믹하게 추출하는 컴퓨터 시스템 및그 동시 다중 쓰레딩 방법 |
JP2006244123A (ja) * | 2005-03-03 | 2006-09-14 | Fujitsu Ltd | データストレージシステム及びデータストレージ制御装置 |
US7411757B2 (en) * | 2006-07-27 | 2008-08-12 | Hitachi Global Storage Technologies Netherlands B.V. | Disk drive with nonvolatile memory having multiple modes of operation |
-
2006
- 2006-11-03 KR KR1020060108380A patent/KR100800484B1/ko active IP Right Grant
- 2006-12-26 US US11/644,954 patent/US7861032B2/en active Active
-
2007
- 2007-10-30 CN CN2007101848732A patent/CN101174198B/zh active Active
-
2010
- 2010-11-19 US US12/949,936 patent/US7975099B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040097272A (ko) * | 2002-04-05 | 2004-11-17 | 가부시끼가이샤 르네사스 테크놀로지 | 불휘발성 기억장치 |
KR20050078206A (ko) * | 2004-01-30 | 2005-08-04 | 삼성전자주식회사 | 불휘발성 메모리와 호스트간에 버퍼링 동작을 수행하는멀티 포트 휘발성 메모리 장치, 이를 이용한 멀티-칩패키지 반도체 장치 및 이를 이용한 데이터 처리장치 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8423865B2 (en) | 2009-11-18 | 2013-04-16 | Samsung Electronics Co., Ltd. | Apparatus and method for storing data using non-volatile buffer |
Also Published As
Publication number | Publication date |
---|---|
CN101174198B (zh) | 2011-11-30 |
US7975099B2 (en) | 2011-07-05 |
US20080126694A1 (en) | 2008-05-29 |
US7861032B2 (en) | 2010-12-28 |
US20110066800A1 (en) | 2011-03-17 |
CN101174198A (zh) | 2008-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100800484B1 (ko) | 불휘발성 메모리를 위한 버퍼와 디스크를 위한 버퍼를구비하는 데이터 저장 시스템 및 상기 데이터 저장시스템의 데이터 억세스 방법 | |
KR102506392B1 (ko) | 하이브리드 메모리에서 쓰기 및 플러시 지원을 위한 시스템 및 방법 | |
US7127551B2 (en) | Flash memory management method | |
US11782826B2 (en) | Security check systems and methods for memory allocations | |
US7373452B2 (en) | Controller for controlling nonvolatile memory | |
US8180955B2 (en) | Computing systems and methods for managing flash memory device | |
CN108459826B (zh) | 一种处理io请求的方法及装置 | |
US8583879B2 (en) | Data storage device, storing medium access method and storing medium thereof | |
US20180232310A1 (en) | Mitigating dram cache metadata access overhead with sram metadata cache and bloom filter | |
US8661190B2 (en) | Flash memory device and data access method thereof | |
US7516296B2 (en) | Flash memory storage device and read/write method | |
CN105159622A (zh) | 一种减小ssd读写io时延的方法与系统 | |
CN102859504B (zh) | 复制数据的方法和系统以及获得数据副本的方法 | |
US20190121740A1 (en) | Using a First-In-First-Out (FIFO) Wraparound Address Lookup Table (ALT) to Manage Cached Data | |
US20170160940A1 (en) | Data processing method and apparatus of solid state disk | |
US20090027796A1 (en) | Information recording device and control method therefor | |
US20210365378A1 (en) | Method of cache prefetching that increases the hit rate of a next faster cache | |
KR100833178B1 (ko) | 캐시 메모리에 저장되는 블록개수를 제어할 수 있는 캐시메모리 시스템 및 동작 방법 | |
CN113377684B (zh) | 数据写入系统与方法 | |
KR19990055972A (ko) | 블록 재할당 기능을 갖는 플래시 메모리 이용 보조기억장치 및 그 방법 | |
US8341378B2 (en) | Data storage device and data access method | |
US20080120464A1 (en) | Apparatus and method for managing data | |
US20160246523A1 (en) | System for providing virtual block device | |
US8391122B2 (en) | System and method for enabling efficient small writes to worm storage | |
KR20060075181A (ko) | 이동 통신 단말기에서 데이터 액세스 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130102 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140103 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20141231 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20160104 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20170102 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20191226 Year of fee payment: 13 |