Abstract

본 논문에서는 플래시 메모리의 FTL에서 페이지 매핑 기법을 기반으로 소거횟수를 줄이는 알고리듬을 제안한다. 제안된 알고리듬은 버퍼에서 매 쓰기요청들의 가중치들을 유지하고 이용하여 현재 쓰여질 요청의 시간적 지역성의 정도를 판단한다. 시간적 지역성을 효율적으로 이용하여 핫 요청을 판단하기 위해 현재 쓰여질 요청은 실험적으로 정한 기준점보다 높은 시간적 지역성을 가져야 한다. 반면 LRU 알고리듬을 이용한 FTL에서는 새로 쓰여질 요청을 항상 시간적 지역성이 높은 요청으로 판단하여 데이터를 순차적으로 저장하지만 제안된 알고리듬을 사용하여 판단된 핫 요청들의 데이터는 핫 블록에 집중적으로 저장한다. 핫 블록에 저장된 데이터들은 웜 블록의 데이터들보다 자주 업데이트되어 Garbage Collection 수행 시 핫 블록들 중 무효한 페이지가 많은 블록이 주로 희생블록으로 선택되므로 소거연산의 시작을 지연시켜 전체 소거횟수를 줄인다. 임의적인 요청을 위주로 하는 실제 I/O시스템에서 추출한 트레이스 파일들을 적용하여 검증한 결과, 기존의 LRU 알고리듬을 사용하는 경우에 비해 소거횟수는 9.3% 줄어들었다. This paper proposes an efficient page-level mapping algorithm that reduces the erase count in the FTL for flash memory systems. By maintaining the weight for each write request in the request buffer, the proposed algorithm estimates the degree of temporal locality for each incoming write request. To exploit temporal locality deliberately for determination of hot request, the degree of temporal locality should be much higher than the reference point determined experimentally. While previous LRU algorithm treats a new write request to have high temporal locality, the proposed algorithm allows write requests that are estimated to have high temporal locality to access hot blocks to store hot data intensively. The pages are more frequently updated in hot blocks than warm blocks. A hot block that has most of invalid pages is always selected as victim block at Garbage Collection, which results in delayed erase operation and in reduced erase count. Experimental results show that erase count is reduced by 9.3% for real I/O workloads, when compared to the previous LRU algorithm.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call