An energy-efficient I/O request mechanism for multi-bank flash-memory storage systems

Emerging critical issues for flash-memory storage systems, especially with regard to implementation within many embedded systems, are the programmed I/O nature of data transfers and their energy-efficient nature. We propose an I/O request mechanism in the Memory-Technology-Device (MTD) layer to exploit the programmed I/O-based data transfers for flash-memory storage systems. We propose to revise the waiting function in the Memory-Technology-Device (MTD) layer to relieve the microprocessor from busy-waiting, in order to make more CPU cycles available for other tasks. An energy-efficient mechanism based on the I/O request mechanism is also presented for multi-bank flash-memory storage systems, which particularly focuses on switching the power state of each flash-memory bank. We demonstrate that the energy-efficient I/O request mechanism not only saves more CPU cycles to execute other tasks, but also reduces the energy consumption of flash-memory, based on experiments incorporating realistic system workloads.

[1]  Sang-goo Lee,et al.  A new flash memory management for flash storage system , 1999, Proceedings. Twenty-Third Annual International Computer Software and Applications Conference (Cat. No.99CB37032).

[2]  Chanik Park,et al.  A low-cost memory architecture with NAND XIP for mobile embedded systems , 2003, First IEEE/ACM/IFIP International Conference on Hardware/ Software Codesign and Systems Synthesis (IEEE Cat. No.03TH8721).

[3]  Approximation Algorithm , 2008, Encyclopedia of Algorithms.

[4]  Hiroshi Motoda,et al.  A Flash-Memory Based File System , 1995, USENIX.

[5]  Tei-Wei Kuo,et al.  An Adaptive Two-Level Management for the Flash Translation Layer in Embedded Systems , 2006, 2006 IEEE/ACM International Conference on Computer Aided Design.

[6]  Tei-Wei Kuo,et al.  An adaptive striping architecture for flash memory storage systems of embedded systems , 2002, Proceedings. Eighth IEEE Real-Time and Embedded Technology and Applications Symposium.

[7]  Michael Wu,et al.  eNVy: a non-volatile, main memory storage system , 1994, ASPLOS VI.

[8]  Mahmut T. Kandemir,et al.  Automatic data migration for reducing energy consumption in multi-bank memory systems , 2002, DAC '02.

[9]  Carla Schlatter Ellis,et al.  Memory controller policies for DRAM power management , 2001, ISLPED '01.

[10]  Paul Horton,et al.  A Quantitative Analysis of Disk Drive Power Management in Portable Computers , 1994, USENIX Winter.

[11]  Kai Li,et al.  Storage alternatives for mobile computers , 1994, OSDI '94.

[12]  Tei-Wei Kuo,et al.  A dynamic-voltage-adjustment mechanism in reducing the power consumption of flash memory for portable devices , 2001, ICCE. International Conference on Consumer Electronics (IEEE Cat. No.01CH37182).

[13]  Carla Schlatter Ellis,et al.  Modeling of DRAM Power Control Policies Using Deterministic and Stochastic Petri Nets , 2002, PACS.

[14]  Tei-Wei Kuo,et al.  An Efficient B-Tree Layer for Flash-Memory Storage Systems , 2003, RTCSA.

[15]  Tei-Wei Kuo,et al.  Real-time garbage collection for flash-memory storage systems of real-time embedded systems , 2004, TECS.

[16]  Roberto Bez,et al.  Introduction to flash memory , 2003, Proc. IEEE.

[17]  Vijay V. Vazirani,et al.  Approximation Algorithms , 2001, Springer Berlin Heidelberg.

[18]  ChiangMei-Ling,et al.  Using data clustering to improve cleaning performance for plash memory , 1999 .

[19]  Mahmut T. Kandemir,et al.  DRAM energy management using software and hardware directed power mode control , 2001, Proceedings HPCA Seventh International Symposium on High-Performance Computer Architecture.

[20]  Tei-Wei Kuo,et al.  An efficient R-tree implementation over flash-memory storage systems , 2003, GIS '03.

[21]  Sang Lyul Min,et al.  A space-efficient flash translation layer for CompactFlash systems , 2002, IEEE Trans. Consumer Electron..

[22]  Sang-Won Lee,et al.  Design of flash-based DBMS: an in-page logging approach , 2007, SIGMOD '07.

[23]  Naehyuck Chang,et al.  Energy-Aware Data Compression for Multi-Level Cell (MLC) Flash Memory , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[24]  Hai Zhou,et al.  Parallel CAD: Algorithm Design and Programming Special Section Call for Papers TODAES: ACM Transactions on Design Automation of Electronic Systems , 2010 .

[25]  Giovanni De Micheli,et al.  Comparing System-Level Power Management Policies , 2001, IEEE Des. Test Comput..

[26]  Chanik Park,et al.  Energy-aware demand paging on NAND flash-based embedded storages , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[27]  Tei-Wei Kuo,et al.  An efficient B-tree layer implementation for flash-memory storage systems , 2007, TECS.

[28]  Theo C. Ruys,et al.  Optimal Scheduling Using Branch and Bound with SPIN 4.0 , 2003, SPIN.