Garbage Collection Method for NAND Flash Memory based on Analysis of Page Ratio

페이지 비율 분석 기반의 NAND 플래시 메모리를 위한 가비지 컬렉션 기법

  • 이승환 (부산대학교 컴퓨터공학과) ;
  • 옥동석 (부산대학교 컴퓨터공학과) ;
  • 윤창배 (부산대학교 컴퓨터공학과) ;
  • 이태훈 (부산대학교 컴퓨터공학과) ;
  • 정기동 (부산대학교 컴퓨터공학과)
  • Published : 2009.09.15

Abstract

NAND flash memory is widely used in embedded systems because of many attractive features, such as small size, light weight, low power consumption and fast access speed. However, it requires garbage collection, which includes erase operations. Erase operation is very slow. Besides, the number of the erase operations allowed to be carried out for each block is limited. The proposed garbage collection method focuses on minimizing the total number of erase operations, the deviation value of each block and the garbage collection time. NAND flash memory consists of pages of three types, such as valid pages, invalid pages and free pages. In order to achieve above goals, we use a page rate to decide when to do garbage collection and to select the target victim block. Additionally, We implement allocating method and group management method. Simulation results show that the proposed policy performs better than Greedy or CAT with the maximum rate at 82% of reduction in the deviation value of erase operation and 75% reduction in garbage collection time.

NAND 플래시 메모리는 부피가 작고, 가볍고, 소비전력이 낮으며 입출력이 빠르고 집적도가 높아 최근 임베디드 기기들에 널리 사용되고 있다. 그러나 NAND 플래시 메모리는 지움 연산을 수반하는 가비지 컬렉션 연산을 수행해야 한다. 게다가 지움 연산은 속도가 느리고, 각 블록마다 지움 연산 횟수가 제한이 있다. 따라서 제안하는 가비지 컬렉션 기법은 전체 지움 연산 횟수와 각 블록의 지움 횟수 편차를 감소시키고, 가비지 컬렉션 수행 시간을 최소화하는데 초점을 맞춘다. NAND 플래시 메모리는 유효 페이지, 무효 페이지, 빈 페이지로 구성되어 있다. 제안하는 기법은 페이지들의 비율을 이용해 가비지 컬렉션의 수행 시기를 결정하고 대상 블록을 선택한다. 그리고 할당 기법과 그룹 관리기법을 추가적으로 구현하였다. 실험 결과 제안한 정책은 기존의 Greedy나 CAT 기법에 비해 전체 지움 횟수를 최소화 하면서, 최대 82% 지움 횟수 편차를 감소시켰고, 최대 75%의 가비지 컬렉션 수행 시간을 단축시켰다.

Keywords

References

  1. M-systems Flash Disk Pioneer, “Implementing MLC NAND Flash for Cost-Effective, High-Capa-city Memory,” http://www.data-io.corn/pdf/NAND/MSystems/Implementing_MLC_NAND_Flash.pdf/
  2. F.Douglis, R. Caceres, F. Kaashoek, K. Li, B. Marsh and J.A Tauber, "Storage Alternatives for Mobile Computers," Proceedings of the 1st Sym-posium on Operating Systems Design and Imple-mentation(SDI), pp.25-37, 1994
  3. Samsung Electronics, "NAND Flash data sheet," http://www.samsung.com/global/business/semiconductor/products/flash/Products_NANDFIash.html/
  4. Mei-Ling Chiang, Paul C. H. Lee, Ruei-Chuan Chang, “Cleaning policies in mobile computers using flash memory,” Journal of Systems and Software, vol.48, 1999 https://doi.org/10.1016/S0164-1212(99)00059-X
  5. Alepha One company, “The Yet Another Flash Memory File System(YAFFS),” http://www.yaffs.net/
  6. Intel Corporation, “Flash File Systems Overview,” http://www.intel.com/
  7. M. Rosenblum, and J, K. Ousterhout, “The Design and Implementation of a Log-Structured File System,” ACM Transactions on Computer Sys-tems, vol.10, no.1, pp.26-52, 1992 https://doi.org/10.1145/146941.146943
  8. Ohhoon Kwon, Kem Koh, “Swap-aware Garbage Collection for NAND Flash Memory Based Em-bedded Systems,” Seventh International Conference on Computer and Information Technology, pp. 787-792, 2007 https://doi.org/10.1109/CIT.2007.76
  9. 김경윤, 김영필, 송인준, 유혁, "Greedy 방법을 개선한 플래시 메모리 지움 정책", 한국정보처리학회 춘계학술발표대회 논문집, 제11권 제1호, pp.1685-1688, 2004
  10. 백승재, 최종무, "블록 클리닝 비용 분석에 기초한 MODA할당 정책 설계 및 구현", 정보과학회논문지 시스템 및 이론, 제34권 제11호, pp.599-609, 2007