Font Size: a A A

Design And Implementation Of NAND Flash Storage Manage- Ment Systems For Embedded Applications

Posted on:2017-03-27Degree:DoctorType:Dissertation
Country:ChinaCandidate:Q ZhangFull Text:PDF
GTID:1108330485961775Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
With the rapid development and popularization of embedded devices, a large num-ber of embedded applications were designed and developed. NAND flash memory, as one of the most important components in embedded devices, had many attractive ad-vantages, such as non-volatile, low power consumption, high performance, and good shock resistance. Therefore NAND flash memory had been widely adopted in many kinds of embedded devices. However, NAND flash memory also had some constraints such as "out-of-place updates", and limited lifetime of physical blocks. In order to hide these constraints, Flash storage management system (Flash Translation Layer) was de-signed to manage the storage activities. Different from general applications, embedded applications had many special requirements, such as time constraints, limited resources and long-term running. Current research works of flash storage management system mainly focused on performance optimization and duration improvement, but did not take consideration of the requirements of embedded applications and made an overall design. Therefore, how to design flash storage management system to meet the needs of embedded applications became an important issue. In this thesis, we focused on the requirements of embedded applications:time constraints, resource constrained, and long-term running to design and implement flash storage management systems.1.To satisfy the time constraints in embedded application, we analyzed the main reasons which led to un-satisfy the given time constraints. By using of space config-uration and partial garbage collection, we designed a garbage collection mechanism to satisfy the worst-case time constraints, but did not affect much to average perfor-mance. Based on this technology, we extended it to on-demand page-level mapping scheme and designed a data block and translation block jointly optimization scheme so that improved the ability of satisfying time constraints from embedded applications.2.NAND flash memory storage systems usually adopted demand-based page-level mapping scheme to achieve high performance with low memory cost. However, such scheme might take much extra overhead. In order to satisfy the limited resources re-quirements, we designed a data assemblage based page-level mapping scheme. As a result, we optimized data access and reduced the extra overhead from translation pages which could improve the average performance of NAND flash memory storage sys-tems.3.To satisfy the long-term running requirement, we designed the wear-leveling and meta-data recovery strategy, including cold/hot data identification, free block al-location, cold/host data exchanging and garbage collection. By using of meta-data storage and partial reversed page-level mapping technologies, we could recover all mapping information after power failures.4.Based on above designs, we implemented our scheme on FlashSim simulation platform and Tiny6410 ARM development board. We used a set of traces and bench-marks to evaluate our scheme and the experimental results showed our scheme can satisfy the requirement of time constraints, resource constraints, and long-term run-ning from embedded applications.
Keywords/Search Tags:Embedded Systems, NAND Flash Memory, NAND Flash Storage Man- agement Systems, Time Constraints, Long-term Running
PDF Full Text Request
Related items