KR101353967B1 - 환형 구조의 비휘발성 메모리 캐쉬에 데이터를 읽고 쓰기 위한 데이터 처리 방법 - Google Patents
환형 구조의 비휘발성 메모리 캐쉬에 데이터를 읽고 쓰기 위한 데이터 처리 방법 Download PDFInfo
- Publication number
- KR101353967B1 KR101353967B1 KR1020120007545A KR20120007545A KR101353967B1 KR 101353967 B1 KR101353967 B1 KR 101353967B1 KR 1020120007545 A KR1020120007545 A KR 1020120007545A KR 20120007545 A KR20120007545 A KR 20120007545A KR 101353967 B1 KR101353967 B1 KR 101353967B1
- Authority
- KR
- South Korea
- Prior art keywords
- block
- data
- area
- read
- write
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/31—Providing disk cache in a specific location of a storage system
- G06F2212/313—In storage device
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
도 2는 본 발명의 일 실시예에 따른, 환형 구조의 비휘발성 메모리 캐쉬(200)의 구조를 도시한 도면,
도 3a는 본 발명의 일 실시예에 따른 하나의 블록의 구조를 도시한 도면,
도 3b는 본 발명의 일 실시예에 따른, 복수개의 페이지를 포함하는 블록을 도시한 도면,
도 4a는 본 발명의 일 실시예에 따른, 데이터가 처리되기 전의 환형 구조의 비휘발성 메모리 캐쉬의 상태를 도시한 도면,
도 4b는 본 발명의 일 실시예에 따른, 읽기 및 쓰기에 대한 데이터 처리가 수행된 경우를 도시한 도면,
도 4c는 본 발명의 일 실시예에 따른, 제2 블록의 데이터가 아웃 플레이스 업데이트되는 경우를 도시한 도면,
도 5a는 본 발명의 일 실시예에 따른, 읽기 캐쉬 영역의 빈 블록이 1개 남은 상태에서 3개의 블록에 해당되는 새로운 데이터에 대한 액세스가 발생한 경우를 도시한 도면,
도 5b는 본 발명의 일 실시예에 따른, 3개의 블록이 빈 블록으로 선정된 상태를 도시한 도면,
도 6a는 본 발명의 일 실시예에 따른, 읽기 캐쉬 영역의 빈 블록이 1개 남은 상태에서 3개의 블록에 해당되는 새로운 데이터에 대한 액세스가 발생한 경우를 도시한 도면,
도 6b는 본 발명의 일 실시예에 따른, 액세스 리스트를 이용하여 3개의 블록이 빈 블록으로 선정된 상태를 도시한 도면,
도 7a는 본 발명의 일 실시예에 따른, 쓰기 캐쉬 영역이 모두 사용된 경우를 도시한 도면,
도 7b는 본 발명의 일 실시예에 따른, 가비지 콜랙션 과정에서 1개의 블록만큼 시계방향으로 쓰기 캐쉬 영역이 이동된 상태를 도시한 도면이다.
112 : CPU 114 : 메모리
116, 200 : 비휘발성 메모리 캐쉬 210 : 쓰기 캐쉬 영역
220 : 읽기 캐쉬 영역 230 : 제1 예약 영역
240 : 제2 예약 영역
Claims (6)
- 비휘발성 메모리 캐쉬를 포함하는 스토리지 장치의 데이터 처리방법에 있어서,
읽기 액세스가 요청된 경우, 상기 비휘발성 메모리 캐쉬의 읽기 캐쉬 영역에서 블록 단위로 읽기 액세스를 실행하는 단계; 및
쓰기 액세스가 요청된 경우, 상기 비휘발성 메모리 캐쉬의 쓰기 캐쉬 영역에서 페이지 단위로 쓰기 액세스를 실행하는 단계;를 포함하고,
상기 읽기 액세스를 수행하는 단계는,
읽기 액세스가 요청된 경우, 요청된 읽기 액세스에 대응되는 데이터인 제1 데이터가 비휘발성 메모리 캐쉬의 읽기 캐쉬 영역에 존재하는지 여부를 블록단위로 검색하는 단계;
제1 데이터가 읽기 캐쉬 영역에 존재하는 경우, 제1 데이터에 대응되는 블록인 제1 블록으로부터 해당 데이터를 읽는 단계;
상기 제1 블록의 스패어 영역에 액세스가 있었음을 표시하는 단계; 및
상기 제1 블록 다음에 위치된 빈 블록에 읽기할당 포인터를 대응시키는 단계;를 포함하는 것을 특징으로 하는 데이터 처리방법.
- 삭제
- 제1항에 있어서,
상기 읽기 액세스를 수행하는 단계는,
읽기 액세스가 요청된 경우, 요청된 읽기 액세스에 대응되는 데이터인 제1 데이터가 비휘발성 메모리 캐쉬의 읽기 캐쉬 영역에 존재하는지 여부를 블록단위로 검색하는 단계;
상기 제1 데이터가 읽기 캐쉬 영역에 존재하지 않는 경우, 디스크 어레이로부터 제1 데이터를 읽어오는 단계;
읽기할당 포인터가 대응된 빈 블록인 제2 블록에 제1 데이터를 기록하는 단계;
상기 제2 블록의 스패어 영역에 데이터가 기록되었으나 액세스는 없었음을 표시하는 단계; 및
상기 제2 블록 다음에 위치된 빈 블록에 읽기할당 포인터를 대응시키는 단계;를 포함하는 것을 특징으로 하는 데이터 처리방법.
- 제1항에 있어서,
상기 쓰기 액세스 수행 단계는,
쓰기 액세스가 요청된 경우, 요청된 쓰기 액세스에 대응되는 데이터인 제2 데이터가 상기 비휘발성 메모리 캐쉬의 쓰기 캐쉬 영역에 존재하는지 여부를 페이지 단위로 검색하는 단계;를 포함하는 것을 특징으로 하는 데이터 처리방법.
- 제4항에 있어서,
상기 쓰기 액세스 수행단계는,
상기 제2 데이터가 쓰기 캐쉬 영역에 존재하는 경우, 제2 데이터에 대응되는 페이지인 제1 페이지의 스패어 영역에 기록된 데이터가 무효화 되었음을 표시하는 단계;
상기 제1 페이지가 포함된 블록인 제3 블록의 스패어 영역에 무효화된 페이지가 있음을 표시하는 단계; 및
상기 비휘발성 메모리 캐쉬의 제1 예약 영역에 제2 데이터를 기록하는 단계;
상기 제1 페이지 다음에 위치된 빈 페이지에 쓰기할당 포인터를 대응시키는 단계;를 더 포함하는 것을 특징으로 하는 데이터 처리방법.
- 제4항에 있어서,
상기 쓰기 액세스 수행단계는,
상기 제2 데이터가 쓰기 캐쉬 영역에 존재하지 않는 경우, 쓰기 할당 포인터가 대응된 빈 페이지인 제2 페이지에 상기 제2 데이터를 기록하는 단계;
상기 제2 페이지의 스패어 영역에 기록된 데이터가 유효함을 표시하는 단계;
상기 제2 페이지가 포함된 블록에 빈 페이지가 있으면, 다음 빈 페이지로 상기 쓰기할당 포인터(W_alloc_ptr)를 이동시키는 단계; 및
상기 제2 페이지가 포함된 블록에 빈 페이지가 없으면, 다음 블록으로 상기 쓰기할당 포인터를 이동시키는 단계;를 더 포함하는 것을 특징으로 하는 데이터 처리방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120007545A KR101353967B1 (ko) | 2012-01-26 | 2012-01-26 | 환형 구조의 비휘발성 메모리 캐쉬에 데이터를 읽고 쓰기 위한 데이터 처리 방법 |
US13/623,414 US20130198453A1 (en) | 2012-01-26 | 2012-09-20 | Hybrid storage device inclucing non-volatile memory cache having ring structure |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120007545A KR101353967B1 (ko) | 2012-01-26 | 2012-01-26 | 환형 구조의 비휘발성 메모리 캐쉬에 데이터를 읽고 쓰기 위한 데이터 처리 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130086692A KR20130086692A (ko) | 2013-08-05 |
KR101353967B1 true KR101353967B1 (ko) | 2014-01-23 |
Family
ID=49213796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120007545A Active KR101353967B1 (ko) | 2012-01-26 | 2012-01-26 | 환형 구조의 비휘발성 메모리 캐쉬에 데이터를 읽고 쓰기 위한 데이터 처리 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101353967B1 (ko) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101536410B1 (ko) | 2013-09-09 | 2015-07-13 | 엘에스산전 주식회사 | 에너지 관리 시스템의 데이터 관리 장치 및 방법 |
CN116431395B (zh) * | 2023-06-07 | 2023-09-08 | 成都云祺科技有限公司 | 基于卷实时备份的缓存动态平衡方法、系统及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009104687A (ja) * | 2007-10-22 | 2009-05-14 | Fujitsu Ltd | 記憶装置及び制御回路 |
-
2012
- 2012-01-26 KR KR1020120007545A patent/KR101353967B1/ko active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009104687A (ja) * | 2007-10-22 | 2009-05-14 | Fujitsu Ltd | 記憶装置及び制御回路 |
Also Published As
Publication number | Publication date |
---|---|
KR20130086692A (ko) | 2013-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11216185B2 (en) | Memory system and method of controlling memory system | |
CN104268094B (zh) | 一种优化的闪存地址映射方法 | |
JP5907739B2 (ja) | 不揮発性記憶装置 | |
KR101257691B1 (ko) | 메모리 컨트롤러 및 이의 데이터 관리방법 | |
US8688894B2 (en) | Page based management of flash storage | |
KR101297442B1 (ko) | 공간 지역성을 고려한 요구 기반 플래시 메모리 변환 계층을 포함하는 낸드 플래시 메모리 시스템 | |
JP2009211233A (ja) | メモリシステム | |
US20170139825A1 (en) | Method of improving garbage collection efficiency of flash-oriented file systems using a journaling approach | |
US8825946B2 (en) | Memory system and data writing method | |
US20130198453A1 (en) | Hybrid storage device inclucing non-volatile memory cache having ring structure | |
JP2009211219A (ja) | メモリシステム | |
JP2009211232A (ja) | メモリシステム | |
JP2012141946A (ja) | 半導体記憶装置 | |
CN109446117B (zh) | 一种固态硬盘页级闪存转换层设计方法 | |
US10635581B2 (en) | Hybrid drive garbage collection | |
KR20100115090A (ko) | 버퍼를 고려한 가비지 컬렉션 기법 | |
CN106815152A (zh) | 一种优化页级闪存转换层的方法 | |
US20140258591A1 (en) | Data storage and retrieval in a hybrid drive | |
US20140047161A1 (en) | System Employing MRAM and Physically Addressed Solid State Disk | |
JP5221593B2 (ja) | メモリシステム | |
US20220374360A1 (en) | Memory device and method for accessing memory device | |
KR101353967B1 (ko) | 환형 구조의 비휘발성 메모리 캐쉬에 데이터를 읽고 쓰기 위한 데이터 처리 방법 | |
CN110221774A (zh) | 一种具有磨损均衡意识的固态硬盘垃圾回收的方法 | |
KR101373613B1 (ko) | 환형 구조의 비휘발성 메모리 캐쉬를 포함하는 하이브리드 스토리지 장치 | |
WO2019136969A1 (zh) | 一种实体位置映到逻辑映像位置的高效能方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20120126 |
|
PA0201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20130715 Patent event code: PE09021S01D |
|
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20140110 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20140115 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20140116 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20161229 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20161229 Start annual number: 4 End annual number: 4 |
|
FPAY | Annual fee payment |
Payment date: 20171207 Year of fee payment: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20171207 Start annual number: 5 End annual number: 5 |
|
FPAY | Annual fee payment |
Payment date: 20190115 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20190115 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20230103 Start annual number: 10 End annual number: 10 |
|
PR1001 | Payment of annual fee |
Payment date: 20240102 Start annual number: 11 End annual number: 11 |
|
PR1001 | Payment of annual fee |
Payment date: 20250102 Start annual number: 12 End annual number: 12 |