Design and Implementation for Multi-Level Cell Flash Memory Storage Systems

Size: px
Start display at page:

Download "Design and Implementation for Multi-Level Cell Flash Memory Storage Systems"

Transcription

1 Design and Implementation for Multi-Level Cell Flash Memory Storage Systems Amarnath Gaini, K Vijayalaxmi Assistant Professor Department of Electronics VITS (N9), Andhra Pradesh Sathish Mothe Assistant Professor Department of Electronics JITS (27), Andhra Pradesh Abstract The flash memory management functions of write coalescing, space management, logical-to-physical mapping, wear leveling, and garbage collection require significant on-going computation and data movement. MLC flash memory also introduces new challenges: (1) Pages in a block must be written sequentially. (2) Information to indicate a page being obsolete cannot be recorded in its spare area. This paper designs an MLC Flash Translation Layer (MFTL) for flash-memory storage systems which takes new constraints of MLC flash memory and access behaviors of file system into consideration. A series of trace driven simulations is conducted to evaluate the performance of the proposed scheme. Our experiment results show that the proposed MFTL outperforms other related works in terms of the number of extra page writes, the number of total block erasures, and the memory requirement for the management. implemented in the Flash Translation Layer (FTL). The objective of the FTL is to provide transparent services for file systems such that flash memory can be accessed as a block oriented device. As an alternative approach, a file system can be made flashmemory-aware by having the characteristics of flash memory been taken into consideration. JFFS and YAFFS take this approach. Although a flash-memory aware file system is more efficient, FTL scheme has the advantage of enabling flash memory available to existing file systems directly. Since most of the applications, especially for portable devices, access their files under FAT file systems, this paper focuses on FTL. Keywords-Flash memory; MFTL; MLC; BAST; FAST. I. INTRODUCTION Flash memory chips are constructed from different types of cells (NOR and NAND), and with different numbers of cells per memory location (single-level cell or SLC; and multi-level cell or MLC). These variations result in very different performance, cost, and reliability characteristics. NOR flash memory chips have much lower density, much lower bandwidth, much longer write and erase latencies, and much higher cost than NAND flash memory chips. For these reasons, NOR flash has minimal penetration in enterprise deployments; it is primarily used in consumer devices. Leading enterprise solid state drives (SSDs) are all designed with NAND flash. Another distinction in flash memory is SLC versus MLC. MLC increases density by storing more than a single bit per memory cell. With their increased density, the cost of MLC flash chips is roughly half that of SLC, but the MLC write bandwidth is about 2 times worse than SLC, and MLC supports from 3 to 30 times fewer erase cycles than SLC. A new generation of SSDs incorporates special firmware that closes the performance and durability gap between SLC and MLC. Flash-memory storage systems are normally organized inlayers, as shown in Figure. 1. The Memory Technology Device (MTD) layer provides lower-level functionalities of flash memory, such as read, write, and erase. Based on these services, higher-level management algorithms, such as wear-leveling, garbage collections, and logical/physical address translation, are Figure 1. Architecture of Flash-Memory Storage Systems Depending on the granularity with which the mapping information is managed, FTL can be classified into page-level, block-level, and hybrid mapping schemes. For a page-level mapping scheme, each entry in the mapping table includes a physical page number (PPN), which is indexed by the logical page number (LPN). When a request arrives, the mapping scheme translates the associated logical address into an LPN and uses this LPN to locate the corresponding PPN from the mapping table. With the mapping table, a logical address can be directly mapped to a page in any location of a flash memory. It makes storage management more flexible and results in better performance for random accesses. Since the mapping table is large in size 138 P a g e

2 and usually resides in SRAM, a page-level mapping scheme is considered impractical due to cost consideration. To reduce SRAM requirement, block-level mapping scheme was proposed. In a block-level mapping scheme, a logical address has two components: a logical block address (LBA) and a logical page offset. LBA can be translated into a physical block address (PBA), and the logical page offset is used to locate the target page in the physical block. The size of the mapping table is now significantly reduced and proportional to the total number of blocks in flash memory. However, update requests usually incur a block-level copy overhead. Block level mapping shown in fig 2. Figure 2: Block level mapping A hybrid mapping scheme is a block-level mapping scheme with a limited number of records adopting page-level mapping. In a hybrid scheme, a logical address is consisted of an LBA and a logical page offset as a block-level scheme. However, unlike the block-level scheme, it allows data update to the next available page in another physical block, i.e., a log block. A page mapping table is required for recording the actual locations of the updated data. Hybrid mapping schemes consume an extra amount of SRAM space for the records with page-level mapping but reduces the copying overhead of a block-level mapping scheme. Block Associative Sector Translation (BAST) is a hybrid mapping scheme proposed by Kim et al. [4]. BAST maintains a limited number of log blocks to handle update requests. Each data block may associate with at most one log block. When processing an update request, the associated data is appended to free pages of the corresponding log block sequentially, as long as such free pages are available. Merge operation is required when no free log block available. Fully Associative Sector Translation (FAST) is another hybrid mapping scheme proposed by Lee et al. [6]. FAST shares the log blocks among all of the data blocks. It allows an update request to be written to the current log block. As a result, FAST improves the utilization of log blocks and reduces the number of merge operations. Since a log block may associate with several data blocks at the same time, merging a log block may require the merging of several data blocks. Both BAST and FAST are designed for single-level cell (SLC) flash memory. Currently, multi-level cell (MLC) flash memory has occupied the largest part of the flash memory market, due to an increasing demand for a larger capacity and smaller size storage medium. In MLC flash memory, each cell can store two or more bits of data. Although MLC flash memory offers a lower cost and higher density solution, it imposes additional stringent constraints [8]. First, the number of partial program cycles in the same page is limited to one. This constraint implies that it is no longer permitted to mark a page as dead by simply clearing some specific bit in the spare area, which is widely adopted in previous researches. Another constraint is related to the order in which write operations are performed. In MLC, free pages of a block must be written consecutively from the first free page to the target page in the block; random written order is prohibited. Such a constraint makes most existing block-level mapping schemes and hybrid mapping schemes inapplicable for modern flash memory chips. Further, direct modification to these mapping schemes is not appropriate as it will inevitably lead to a significant increase of overhead. Motivated by the above concerns, we propose a hybrid mapping scheme for the management of the modern MLC flash memory. Since FAT file system is most commonly used for accessing flash memory, the proposed scheme focuses on the file access behavior under FAT file system as well. In the proposed scheme, the mapping granularity would adjust adaptively according to the access pattern. Our scheme is distinguished from existing solutions in that the proposed scheme consumes less SRAM while provides a better performance. In addition, existing solutions does not take stringent constraints of MLC flash memory into account while our scheme could apply to SLC flash memory as well. The rest of the paper is organized as follows. Section II presents the proposed scheme in details. Section III evaluates the performance of the proposed scheme and compares it with existing works. Section IV draws the conclusion. A. LAYER II. MFTL:MLC FLASH TRANSLATION 1) Overview When a write request arrives, MFTL calculates the corresponding virtual block address (VBA) via the logical address of the request, allocates a free (physical) flash-memory block for the virtual block, and writes data to the allocated block. The PBA of the allocated block is recorded in Block Table [VBA]. Note that VBA is similar to LBA in block-level mapping schemes, and we use different notation to avoid confusion. Since out-place update is a widely adopted solution for handling data-update requests, an extra replacement block (physical flash-memory block) is assigned to store the newly updated data. To keep track of the latest version of data, an UpdateRec is created whenever a replacement blocks is allocated for a virtual block. Note that we do not maintain UpdateRec for every virtual block all the time as we do for Block Table. In fact, as shown later in the experiments maintaining five UpdateRec s would be enough to deal with sustained read/write requests and MFTL always keeps the latest UpdateRec s in SRAM. Since data updates might be random and data amount of each update might be small, only UpdateRec is insufficient if fast data access is required. 2) Data Structure Each UpdateRec contains the following fields: 139 P a g e

3 a) VBA records the corresponding virtual blockaddress. b) Primary records the physical block address of the associatedprimary block. c) Replace records the physical block address of The associatedreplacement block. d) LWP is the index of the last written page in the associatedreplacement block. e) Count maintains the number of backward updates occurred in thisrecord. The initial value of Count is 0. f) Mode is a one-bit flag indicating whether the mapping isin block mapping mode (0) or pagemapping mode (1). g) Priority is the priority for UpdateRec replacement. Whenwrite/update request arrives, Priority of The correspondingupdaterec (if any) is set to 0xFF, while Priority ofotherupdaterec s would be decreased by 1. Page Map Status is introduced to maintain page-mapping information for virtual blocks. When an UpdateRec switches from block mapping mode to page mapping mode, MFTL has to merge the corresponding primary block into the replacement block and then treat the resulting replacement block as the primary block. We can eliminate such overhead by directly switching to page mapping mode without merging operation when LWP is less than half of total pages in a block. The most significant bit (MSB) is used to indicate whether the mapped age is located in the primary block (set to 0) or in the replacement block (set to 1). Each Page Map Status contains two elements: a) VBA records the corresponding virtual blockaddress. b) MapArray[N] is an integer array keeping the page mapping information of the block, Where N is the number of pages per block. A value smaller than 0x80 in the Map Array[i] means the i-th logical page is located at the Map Array[i]-th page of the primary block. Otherwise, the i-th logical page is located at the (Map Array[i] AND 0x7F)-th page of the replacement block. 3) Write Flow When the FAT file system creates a new file, it first issues a write to root directory to update the file information. It then updates FAT tables to allocate required storage space for the file. Finally, the file body is written to the allocated area. Conceptually, the storage space could be treated as containing two parts: system area and data area. System area consists of a boot record, FAT tables and a root directory, while data area is the area used to store file body. Any write/update to a file (data area) is accompanied by several small updates to the system area to ensure correct file information. Observing the very different behavior over system area and data area, we adopt various mechanisms to deal with write operations in an adaptive manner. Since writing data is trivial in flash-memory management, we will focus on the operation of data updating. Upon arrival of an update request, MFTL first determines whether the corresponding UpdateRec exists by checking the VBA field of each UpdateRec. If no such an UpdateRec exists, MFTL allocates a new one. In case that all the UpdateRec s have been assigned and the new update request does not match any one of them, MFTL will select the UpdateRec with the lowest priority as a victim for replacement (ties are broken arbitrarily). Live pages in the primary block and the replacement block of the victim UpdateRec will be merged to a newly allocated block, and the victim UpdateRec could then be released and reassigned to the new request. After the UpdateRec is located, MFTL determines the mapping mode of the UpdateRec. Different mapping mode would affect the manner how MFTL writes data to flash memory. If the mapping mode is in block mapping mode, some further checks are required. According to the index of starting target page for the update request (i.e., STP) relative to the index of the last written page in the replacement block (i.e. LWP); the update request is treated differently. For the case in which STP is larger than LWP, the request is treated as a forward update. Otherwise, some previously updated data is to be updated again by the request, and the request is treated as a backward update. Since backward updates incur higher page copying overheads, page-mapping mode is thus introduced to deal with small, random, and frequently updated data. The Count Field in UpdateRec is used to maintain the number of backward updates that had occurred in this record. When it exceeds a threshold, the mapping is switched to page mapping mode. If a backward update occurs but does not result in a switch to page mapping mode, MFTL will examine whether page-copying after updating data is required. The primary reason behind page-copying after updating data is the assurance of data integrity, since the primary block or the replacement block would be reassigned in this case. 4) Read Flow For a read request, MFTL locates the target data through either Block Table or UpdateRec s (and Page Map Status s, if required).when a read request arrives, MFTL first derives the corresponding VBA and STP via the logical address of the request. Then, MFTL determines whether the derived VBA matches the VBA field of any UpdateRec. If no such UpdateRec is found, the PBA of the target data can be obtained from Block Table [VBA]. With the PBA, MFTL accesses the corresponding flash-memory block and read the required data from page STP to the last page of the block. Suppose that the UpdateRec is successfully found, and it is in block mapping mode. In this case, MFTL has to identify which block and how many pages shall be read. It compares the derived STP with LWP of the UpdateRec. If STP is smaller than or equal to LWP, a portion of the required data shall be read from the corresponding replacement block. MFTL reads the required data from page STP to page 140 P a g e

4 LWP in the replacement block and then read from page LWP+1 to the last page in the primary block. Otherwise, MFTL simply reads the required data from STP to the last page in the primary block. For the case in which the corresponding UpdateRec is found and in page mapping mode, MFTL may not be able to read the required data sequentially because the live pages in the replacement block are not programmed in such a manner. MFTL must look up Map Array to determine physical locations of the needed data. For each target page i, if the value of Map Array[i] is 0xFF, MFTL reads data from page i in the primary block. Otherwise, MFTL reads from page Map Array[i] in the replacement block. III. PERFORMANCE EVALUATION A. Experiment Setup This section is meant to evaluate the performance of the proposed MFTL in terms of the number of extra page writes2, the number of total block erasures, and the memory requirement for the management. We compared the proposed MFTL with two well-known hybrid mapping schemes, BAST [4] and FAST [6], under different number of extra blocks. Suppose the number of extra blocks is set to n, MFTL could have up to n UpdateRec s. The maximum number of blocks reserved for random accesses in BAST could be n, while FAST would contain one sequential write (SW) log block and (n 1)random write (RW) log blocks. The experiments were conducted by a trace-driven simulation. Traces with various access behaviors were collected under Windows XP with FAT16 file system over a 2GB flash memory. The flash memory chip adopted in the experiment was Samsung K9WAG08U1B 16G-bit SLC flash memory each block contains 64 pages, and each page is of 2KB. All of the traces were captured by the SD/MMC card protocol analyzer VTE2100 [9]. Note that the FAT file system would update the root directory and FAT tables frequently to maintain the correct file information. The cluster size was defined as16kb, where the cluster size was the minimum allocation unit for a file. TABLE I summarizes characteristics of the seven evaluation patterns. B. Experiment Results Fig. 3 compares the number of extra page writes and the number of total block erasures of BAST, FAST, and the proposed MFTL under different number of extra blocks over a 2GB flash memory. In addition to the extreme case (i.e. the pattern 4KB-R), FAST had a good performance when the number of extra blocks was very limited; three extra blocks would be enough to make its performance stable. This was because FAST shares its extra blocks for all logical blocks. However, the proposed MFTL outperformed both BAST and FAST for all patterns when four extra blocks could be provided. Based on our experimentation, the performance improvement was significant when the number of extra blocks was between four and five. Such results were caused by two reasons: (1) Since the FAT file system would update two FAT tables, root directory, and data area while writing a file to storage, four extra blocks could significantly improve the performance area while writing a file to storage, four extra blocks could significantly improve the performance. (2) Windows XP writes files with size over64kb by two threads; five extra blocks might be required for updating a large file. As a result, over six extra blocks would not have an obvious improvement for extra page writes and block erasures. TABLE I: CHARACTERISTICS OF EVALUATION PATTERNS For the pattern 4KB-R, as illustrated in Fig. 3(a) and Fig. 3(b), the number of extra blocks seemed to have no effect on the performance improvement. It was because a tremendous amount of random 4KB file updates would rapidly use up log blocks. For BAST, each subsequent update would trigger a merge operation, and each merge operation would incur 64extra page writes and 2 block erasures. For FAST, since a log block was shared by all data blocks, merge operations would not be triggered as frequent as BAST did. Recall that each flash-memory block contains 64 2KB pages and the cluster size was 16KB, each merge operation would incur 8 64 = 512 extra page writes and 9 block erasures (compared with 8 merge operations in BAST with 512 extra page writes and 16 block erasures). For MFTL, random 4KB file updates would not switch UpdateRec s into page mapping mode, and each 4KB file update would be treated as a forward update in block mapping mode (please refer to Section II-C1). In addition, updates to root directory and FAT tables could always reside in page mapping mode thanks to Count and Priority in UpdateRec. As a result, FAST and MFTL could have a better performance in extra page writes and outperform BAST in block erasures. For the pattern 64KB-S, as illustrated in Fig. 3(c) and Fig.3(d), there was no internal fragmentation issue and readers might expect similar performances for the three hybrid mapping schemes. However, the experiment result showed a different story. For BAST and FAST, while there was no log block assigned to the corresponding data block and page off set of the write request did not align to the block boundary (i.e. page offset 0), a log block would be assigned and updated data would be written to the page 0 of the block. Even the following write requests were sequential writes; BAST and FAST would still incur extra page writes and block erasures during merge operations. On the other hand, as mentioned in Section II-C, MFTL uses Count in UpdateRec to prevent from switching to page mapping mode immediately. 141 P a g e

5 This mechanism helped UpdateRec to keep in block mapping mode for sequential write requests. Thus merge overheads could be reduced, and a better performance was achieved. For patterns SUB and MP3, since large files led to much more sequential write operations, the number of merge operations was largely reduced. As shown in Fig. 3(f) and Fig. 3(h),the improvement over the reduction of block erasures was not as significant as patterns 4KB-R and 64KB-S; MFTL could achieved a better performance on block erasures and extra page writes compared With the other two schemes for large file patterns while at least four extra blocks were provided. Note that in the pattern MP3 with at least four extra blocks, MFTL outperformed BAST and FAST in terms of extra page writes. It was because MFTL uses Count in UpdateRec to prevent from switching to page mapping mode immediately. With a small overhead of page copying, this mechanism helped UpdateRec to keep in block mapping mode. As a result, merge overhead could be reduced when an update request dose not begins from page 0 of some block. For the memory requirements of the three hybrid mapping schemes, since block mapping tables were the same for each scheme, we focused on the memory requirement for managing extra blocks. TABLE II lists the memory requirements for each extra block and each Map Array under the three different schemes. BAST reserved one more byte to store information for the selection of a victim log block when a merge operation is triggered. MFTL reserved three extra bytes for fields of LWP, Count, Mode, and Priority. For page mapping, BAST required an array for each log block to keep track of the page mapping information. Since each block contained 64 pages, 64entries were required for the array and each entry was of one byte. FAST required an array for each RW block. Since each RW block was shared by all data blocks, Each entry of the array required three bytes to maintain complete information. MFTL did not reserve an array for each UpdateRec. Thus MFTL required two more bytes to record the corresponding VBA. Figure 3: Performance Comparison of BAST/FAST/MFTL under Different Number of Extra Blocks. TABLE II: SRAM REQUIREMENTS FOR DIFFERENT SCHEMES (UNIT: BYTES) up to 69.55% compared with FAST. These savings can be as high as 59.44% and 83.89% when there are ten extra blocks provided by the system. TABLE III: SRAM REQUIREMENTS FOR MANAGING UPDATE REQUESTS WITH DIFFERENT NUMBER OF EXTRA BLOCKS. (UNIT: BYTES) TABLE III lists the memory requirements for these schemes with respect to different number of extra blocks. As shown in the table, when the number of extra blocks is five, MFTL can save about 31.55% memory space compared with BAST and 142 P a g e

6 IV. CONCLUSION Flash technology is constantly changing, providing faster program and erase cycles, a bigger number of guaranteed erase and re-program cycles and longer data retention. This paper proposes a management scheme for MLC flash memory storage systems. Observing that most of existing user applications access NAND flash memory under FAT file system, this paper takes new constraints of MLC flash memory and access behaviors of FAT file system into consideration. The proposed MFTL scheme treats different access behaviors in an adaptive manner. It adopts a hybrid mapping approach to balance between performance and SRAM requirement. An extensive set of experiments has been conducted to evaluate the performance of the proposed MFTL. Our experiment results show that the proposed scheme out performs BAST and FAST in terms of extra page writes and block erasures while SRAM requirement is largely reduced. For the future work, we shall further take the crash recovery and wear leveling issues into our design and survey other newly announced hybrid mapping schemes, e.g., LAST and KAST, for comparisons. REFERENCES [1] Journaling Flash File System (JFFS) and Journaling Flash File System 2 (JFFS2), s2/j s2-html/ [2] Understanding the Flash Translation Layer (FTL) Specification. Technical report, Intel Corporation, Dec [3] Aleph One Company. Yet another Flash Filing System. [4] H. Cho, D. Shin, and Y. I. Eom. KAST: K-Associative Sector Translation for NAND Flash Memory in Real-Time Systems. In Design, Automation and Test in Europe (DATE), pages , April [5] J. Kim, J. M. Kim, S. H. Noh, S. L. Min, and Y. Cho. A Space - Efficient Flash Translation Layer for Compact Flash Systems. In IEEE Transactions on Consumer Electronics, Vol. 48, No. 2, pages [6] S. Lee, D. Shin, Y.-J. Kim, and J. Kim. LAST: Locality-Aware Sector Translation for NAND Flash Memory-Based Storage Systems. ACM SIGOPS Operating Systems Review, 42:36 42, October [7] S.-W. Lee, D.-J. Park, T.-S. Chung, D.-H. Lee, S. Park, and H.-J. Song. A Log Buffer-Based Flash Translation Layer Using Fully-Associative Sector Translation. In ACM Transactions on embedded Computing Systems, Vol. 6, No. 3, Article 18, July [8] M-Systems. Flash-memory Translation Layer for NAND flash (NFTL), [9] Samsung Electronics. Samsung K9LBG08U0M(v1.0) - 32Gb DDP MLC Data Sheet. [10] Test metrix Inc. VTE2100. [11] D. Woodhouse. JFFS: The Journaling Flash File System. In Ottawa Linux Symposium, [12] A set-based mapping strategy for flash-memory reliability enhancement. Design, Automation & Test in Europe Conference & Exhibition, [13] Program/erase selection for flash memory, Jerry A. Kreifels et al. [14] A flash-memory based file system, TCON'95 Proceedings of the USENIX 1995 Technical Conference Proceedings USENIX Association Berkeley, CA, USA 1995 [15] Dr. John R Busch; Flash Memory Architecture Alternatives. AUTHOR PROFILE Amarnath Gaini received the Bachelor s. degree in Electronics and Communication Engineering from JNTUH, Hyderabad, India in 2007 and Master s degree in VLSI System Design from JNTUH, Hyderabad, India in He is currently working as an Assistant professor in Electronics and Communication Engineering department in VITS (N9), Andhra Pradesh, India. He has a Life Member ship in ISTE. His research interests in VLSI, Embedded systems and digital systems platform. 143 P a g e

Page Mapping Scheme to Support Secure File Deletion for NANDbased Block Devices

Page Mapping Scheme to Support Secure File Deletion for NANDbased Block Devices Page Mapping Scheme to Support Secure File Deletion for NANDbased Block Devices Ilhoon Shin Seoul National University of Science & Technology ilhoon.shin@snut.ac.kr Abstract As the amount of digitized

More information

Storage Architecture and Software Support for SLC/MLC Combined Flash Memory

Storage Architecture and Software Support for SLC/MLC Combined Flash Memory Storage Architecture and Software Support for SLC/MLC Combined Flash Memory Soojun Im and Dongkun Shin Sungkyunkwan University Suwon, Korea {lang33, dongkun}@skku.edu ABSTRACT We propose a novel flash

More information

A File-System-Aware FTL Design for Flash Memory Storage Systems

A File-System-Aware FTL Design for Flash Memory Storage Systems 1 A File-System-Aware FTL Design for Flash Memory Storage Systems Po-Liang Wu, Yuan-Hao Chang, Po-Chun Huang, and Tei-Wei Kuo National Taiwan University 2 Outline Introduction File Systems Observations

More information

A Memory Management Scheme for Hybrid Memory Architecture in Mission Critical Computers

A Memory Management Scheme for Hybrid Memory Architecture in Mission Critical Computers A Memory Management Scheme for Hybrid Memory Architecture in Mission Critical Computers Soohyun Yang and Yeonseung Ryu Department of Computer Engineering, Myongji University Yongin, Gyeonggi-do, Korea

More information

LAST: Locality-Aware Sector Translation for NAND Flash Memory-Based Storage Systems

LAST: Locality-Aware Sector Translation for NAND Flash Memory-Based Storage Systems : Locality-Aware Sector Translation for NAND Flash Memory-Based Storage Systems Sungjin Lee, Dongkun Shin, Young-Jin Kim and Jihong Kim School of Information and Communication Engineering, Sungkyunkwan

More information

A Mixed Flash Translation Layer Structure for SLC-MLC Combined Flash Memory System

A Mixed Flash Translation Layer Structure for SLC-MLC Combined Flash Memory System A Mixed Flash Translation Layer Structure for SLC-MLC Combined Flash Memory System Seung-Ho Park, Jung-Wook Park, Jong-Min Jeong, Jung-Hwan Kim, Shin-Dug Kim Department of Computer Science, Yonsei University,

More information

Clustered Page-Level Mapping for Flash Memory-Based Storage Devices

Clustered Page-Level Mapping for Flash Memory-Based Storage Devices H. Kim and D. Shin: ed Page-Level Mapping for Flash Memory-Based Storage Devices 7 ed Page-Level Mapping for Flash Memory-Based Storage Devices Hyukjoong Kim and Dongkun Shin, Member, IEEE Abstract Recent

More information

Presented by: Nafiseh Mahmoudi Spring 2017

Presented by: Nafiseh Mahmoudi Spring 2017 Presented by: Nafiseh Mahmoudi Spring 2017 Authors: Publication: Type: ACM Transactions on Storage (TOS), 2016 Research Paper 2 High speed data processing demands high storage I/O performance. Flash memory

More information

Rechnerarchitektur (RA)

Rechnerarchitektur (RA) 12 Rechnerarchitektur (RA) Sommersemester 2017 Flash Memory 2017/07/12 Jian-Jia Chen (Slides are based on Tei-Wei Kuo and Yuan-Hao Chang) Informatik 12 Jian-jia.chen@tu-.. http://ls12-www.cs.tu.de/daes/

More information

Baoping Wang School of software, Nanyang Normal University, Nanyang , Henan, China

Baoping Wang School of software, Nanyang Normal University, Nanyang , Henan, China doi:10.21311/001.39.7.41 Implementation of Cache Schedule Strategy in Solid-state Disk Baoping Wang School of software, Nanyang Normal University, Nanyang 473061, Henan, China Chao Yin* School of Information

More information

Data Organization and Processing

Data Organization and Processing Data Organization and Processing Indexing Techniques for Solid State Drives (NDBI007) David Hoksza http://siret.ms.mff.cuni.cz/hoksza Outline SSD technology overview Motivation for standard algorithms

More information

BPCLC: An Efficient Write Buffer Management Scheme for Flash-Based Solid State Disks

BPCLC: An Efficient Write Buffer Management Scheme for Flash-Based Solid State Disks BPCLC: An Efficient Write Buffer Management Scheme for Flash-Based Solid State Disks Hui Zhao 1, Peiquan Jin *1, Puyuan Yang 1, Lihua Yue 1 1 School of Computer Science and Technology, University of Science

More information

A Caching-Oriented FTL Design for Multi-Chipped Solid-State Disks. Yuan-Hao Chang, Wei-Lun Lu, Po-Chun Huang, Lue-Jane Lee, and Tei-Wei Kuo

A Caching-Oriented FTL Design for Multi-Chipped Solid-State Disks. Yuan-Hao Chang, Wei-Lun Lu, Po-Chun Huang, Lue-Jane Lee, and Tei-Wei Kuo A Caching-Oriented FTL Design for Multi-Chipped Solid-State Disks Yuan-Hao Chang, Wei-Lun Lu, Po-Chun Huang, Lue-Jane Lee, and Tei-Wei Kuo 1 June 4, 2011 2 Outline Introduction System Architecture A Multi-Chipped

More information

S-FTL: An Efficient Address Translation for Flash Memory by Exploiting Spatial Locality

S-FTL: An Efficient Address Translation for Flash Memory by Exploiting Spatial Locality S-FTL: An Efficient Address Translation for Flash Memory by Exploiting Spatial Locality Song Jiang, Lei Zhang, Xinhao Yuan, Hao Hu, and Yu Chen Department of Electrical and Computer Engineering Wayne State

More information

SFS: Random Write Considered Harmful in Solid State Drives

SFS: Random Write Considered Harmful in Solid State Drives SFS: Random Write Considered Harmful in Solid State Drives Changwoo Min 1, 2, Kangnyeon Kim 1, Hyunjin Cho 2, Sang-Won Lee 1, Young Ik Eom 1 1 Sungkyunkwan University, Korea 2 Samsung Electronics, Korea

More information

I/O Devices & SSD. Dongkun Shin, SKKU

I/O Devices & SSD. Dongkun Shin, SKKU I/O Devices & SSD 1 System Architecture Hierarchical approach Memory bus CPU and memory Fastest I/O bus e.g., PCI Graphics and higherperformance I/O devices Peripheral bus SCSI, SATA, or USB Connect many

More information

Optimizing Translation Information Management in NAND Flash Memory Storage Systems

Optimizing Translation Information Management in NAND Flash Memory Storage Systems Optimizing Translation Information Management in NAND Flash Memory Storage Systems Qi Zhang 1, Xuandong Li 1, Linzhang Wang 1, Tian Zhang 1 Yi Wang 2 and Zili Shao 2 1 State Key Laboratory for Novel Software

More information

Meta Paged Flash Translation Layer

Meta Paged Flash Translation Layer Meta Paged Flash Translation Layer Abstract -- Today NAND Flash Memory is used in handheld electronic devices like mobile, cameras, ipods, music players, is also used as an alternative storage medium for

More information

Improving File System Performance and Reliability of Car Digital Video Recorders

Improving File System Performance and Reliability of Car Digital Video Recorders 222 IEEE Transactions on Consumer Electronics, Vol. 61, No. 2, May 2015 Improving File System Performance and Reliability of Car Digital Video Recorders Younghun Kim, Dongkun Shin, Member, IEEE Abstract

More information

1110 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 33, NO. 7, JULY 2014

1110 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 33, NO. 7, JULY 2014 1110 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 33, NO. 7, JULY 2014 Adaptive Paired Page Prebackup Scheme for MLC NAND Flash Memory Jaeil Lee and Dongkun Shin,

More information

Solid State Drives (SSDs) Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Solid State Drives (SSDs) Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Solid State Drives (SSDs) Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Memory Types FLASH High-density Low-cost High-speed Low-power High reliability

More information

NAND Flash-based Storage. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

NAND Flash-based Storage. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University NAND Flash-based Storage Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics NAND flash memory Flash Translation Layer (FTL) OS implications

More information

TEFS: A Flash File System for Use on Memory Constrained Devices

TEFS: A Flash File System for Use on Memory Constrained Devices 2016 IEEE Canadian Conference on Electrical and Computer Engineering (CCECE) TEFS: A Flash File for Use on Memory Constrained Devices Wade Penson wpenson@alumni.ubc.ca Scott Fazackerley scott.fazackerley@alumni.ubc.ca

More information

FILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23

FILE SYSTEMS. CS124 Operating Systems Winter , Lecture 23 FILE SYSTEMS CS124 Operating Systems Winter 2015-2016, Lecture 23 2 Persistent Storage All programs require some form of persistent storage that lasts beyond the lifetime of an individual process Most

More information

NAND Flash-based Storage. Computer Systems Laboratory Sungkyunkwan University

NAND Flash-based Storage. Computer Systems Laboratory Sungkyunkwan University NAND Flash-based Storage Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics NAND flash memory Flash Translation Layer (FTL) OS implications

More information

A Buffer Replacement Algorithm Exploiting Multi-Chip Parallelism in Solid State Disks

A Buffer Replacement Algorithm Exploiting Multi-Chip Parallelism in Solid State Disks A Buffer Replacement Algorithm Exploiting Multi-Chip Parallelism in Solid State Disks Jinho Seol, Hyotaek Shim, Jaegeuk Kim, and Seungryoul Maeng Division of Computer Science School of Electrical Engineering

More information

[537] Flash. Tyler Harter

[537] Flash. Tyler Harter [537] Flash Tyler Harter Flash vs. Disk Disk Overview I/O requires: seek, rotate, transfer Inherently: - not parallel (only one head) - slow (mechanical) - poor random I/O (locality around disk head) Random

More information

NLE-FFS: A Flash File System with PRAM for Non-linear Editing

NLE-FFS: A Flash File System with PRAM for Non-linear Editing 16 IEEE Transactions on Consumer Electronics, Vol. 55, No. 4, NOVEMBER 9 NLE-FFS: A Flash File System with PRAM for Non-linear Editing Man-Keun Seo, Sungahn Ko, Youngwoo Park, and Kyu Ho Park, Member,

More information

SUPA: A Single Unified Read-Write Buffer and Pattern-Change-Aware FTL for the High Performance of Multi-Channel SSD

SUPA: A Single Unified Read-Write Buffer and Pattern-Change-Aware FTL for the High Performance of Multi-Channel SSD SUPA: A Single Unified Read-Write Buffer and Pattern-Change-Aware FTL for the High Performance of Multi-Channel SSD DONGJIN KIM, KYU HO PARK, and CHAN-HYUN YOUN, KAIST To design the write buffer and flash

More information

Implementation of metadata logging and power loss recovery for page-mapping FTL

Implementation of metadata logging and power loss recovery for page-mapping FTL LETTER IEICE Electronics Express, Vol.10, No.11, 1 6 Implementation of metadata logging and power loss recovery for page-mapping FTL Seung-Ho Lim a) 1 Hankuk University of Foreign Studies, 89 Wangsan-ri,

More information

NAND Flash-based Storage. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

NAND Flash-based Storage. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University NAND Flash-based Storage Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics NAND flash memory Flash Translation Layer (FTL) OS implications

More information

Flash Memory Based Storage System

Flash Memory Based Storage System Flash Memory Based Storage System References SmartSaver: Turning Flash Drive into a Disk Energy Saver for Mobile Computers, ISLPED 06 Energy-Aware Flash Memory Management in Virtual Memory System, islped

More information

NAND/MTD support under Linux

NAND/MTD support under Linux 12 July 2012 NAND Features 1 Flash is everywhere NAND Features non-volatile computer storage chip that can be electrically erased and reprogrammed usb flash drives memory cards solid-state drives Flash

More information

New Techniques for Real-Time FAT File System in Mobile Multimedia Devices

New Techniques for Real-Time FAT File System in Mobile Multimedia Devices New Techniques for Real-Time FAT File System in Mobile Multimedia Devices Sunhwa Park and Seong-Young Ohm 1 Abstract Flash memory has become the most important storage media in the mobile multimedia products

More information

P2FS: supporting atomic writes for reliable file system design in PCM storage

P2FS: supporting atomic writes for reliable file system design in PCM storage LETTER IEICE Electronics Express, Vol.11, No.13, 1 6 P2FS: supporting atomic writes for reliable file system design in PCM storage Eunji Lee 1, Kern Koh 2, and Hyokyung Bahn 2a) 1 Department of Software,

More information

Performance Trade-Offs in Using NVRAM Write Buffer for Flash Memory-Based Storage Devices

Performance Trade-Offs in Using NVRAM Write Buffer for Flash Memory-Based Storage Devices Performance Trade-Offs in Using NVRAM Write Buffer for Flash Memory-Based Storage Devices Sooyong Kang, Sungmin Park, Hoyoung Jung, Hyoki Shim, and Jaehyuk Cha IEEE TRANSACTIONS ON COMPUTERS, VOL. 8, NO.,

More information

System Software for Flash Memory: A Survey

System Software for Flash Memory: A Survey System Software for Flash Memory: A Survey Tae-Sun Chung 1, Dong-Joo Park 2, Sangwon Park 3, Dong-Ho Lee 4, Sang-Won Lee 5, and Ha-Joo Song 6 1 College of Information Technoloty, Ajou University, Korea

More information

Sentient Storage: Do SSDs have a mind of their own? Tom Kopchak

Sentient Storage: Do SSDs have a mind of their own? Tom Kopchak Sentient Storage: Do SSDs have a mind of their own? Tom Kopchak :: @tomkopchak About me Why we're here Current forensic practices for working with hard drives are well-defined Solid state drives behave

More information

Flash File Systems Overview

Flash File Systems Overview Table of contents 1.0 Overview 3 1.1 Flash architecture 3 1.1.1 Partitions 3 1.1.2 Blocks 3 1.2 Programming data 3 1.3 Data integrity 4 2.0 Flash file system functions 4 2.1 Wear leveling 4 2.2 Reclaim

More information

FILE SYSTEMS, PART 2. CS124 Operating Systems Fall , Lecture 24

FILE SYSTEMS, PART 2. CS124 Operating Systems Fall , Lecture 24 FILE SYSTEMS, PART 2 CS124 Operating Systems Fall 2017-2018, Lecture 24 2 Last Time: File Systems Introduced the concept of file systems Explored several ways of managing the contents of files Contiguous

More information

NAND Flash-based Storage. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

NAND Flash-based Storage. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University NAND Flash-based Storage Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Today s Topics NAND flash memory Flash Translation Layer (FTL) OS implications

More information

S A N D I S K F L A S H M E M O R Y C A R D S W E A R L E V E L I N G

S A N D I S K F L A S H M E M O R Y C A R D S W E A R L E V E L I N G WHITE PAPER SANDISK FLASH MEMORY CARDS WEAR LEVELING October 2003 140 Caspian Court Sunnyvale, California 94089 Phone: 408-542-0500 Fax: 408-542-0503 SanDisk Corporation general policy does not recommend

More information

OSSD: A Case for Object-based Solid State Drives

OSSD: A Case for Object-based Solid State Drives MSST 2013 2013/5/10 OSSD: A Case for Object-based Solid State Drives Young-Sik Lee Sang-Hoon Kim, Seungryoul Maeng, KAIST Jaesoo Lee, Chanik Park, Samsung Jin-Soo Kim, Sungkyunkwan Univ. SSD Desktop Laptop

More information

VSSIM: Virtual Machine based SSD Simulator

VSSIM: Virtual Machine based SSD Simulator 29 th IEEE Conference on Mass Storage Systems and Technologies (MSST) Long Beach, California, USA, May 6~10, 2013 VSSIM: Virtual Machine based SSD Simulator Jinsoo Yoo, Youjip Won, Joongwoo Hwang, Sooyong

More information

NAND Flash Memory. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

NAND Flash Memory. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University NAND Flash Memory Jinkyu Jeong (Jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu ICE3028: Embedded Systems Design, Fall 2018, Jinkyu Jeong (jinkyu@skku.edu) Flash

More information

Rejuvenator: A Static Wear Leveling Algorithm for NAND Flash Memory with Minimized Overhead

Rejuvenator: A Static Wear Leveling Algorithm for NAND Flash Memory with Minimized Overhead Rejuvenator: A Static Wear Leveling Algorithm for NAND Flash Memory with Minimized Overhead Muthukumar Murugan University Of Minnesota Minneapolis, USA-55414 Email: murugan@cs.umn.edu David.H.C.Du University

More information

CFTL: A Convertible Flash Translation Layer with Consideration of Data Access Patterns. Technical Report

CFTL: A Convertible Flash Translation Layer with Consideration of Data Access Patterns. Technical Report : A Convertible Flash Translation Layer with Consideration of Data Access Patterns Technical Report Department of Computer Science and Engineering University of Minnesota 4-9 EECS Building Union Street

More information

Storage Systems : Disks and SSDs. Manu Awasthi July 6 th 2018 Computer Architecture Summer School 2018

Storage Systems : Disks and SSDs. Manu Awasthi July 6 th 2018 Computer Architecture Summer School 2018 Storage Systems : Disks and SSDs Manu Awasthi July 6 th 2018 Computer Architecture Summer School 2018 Why study storage? Scalable High Performance Main Memory System Using Phase-Change Memory Technology,

More information

p-oftl: An Object-based Semantic-aware Parallel Flash Translation Layer

p-oftl: An Object-based Semantic-aware Parallel Flash Translation Layer p-oftl: An Object-based Semantic-aware Parallel Flash Translation Layer Wei Wang, Youyou Lu, and Jiwu Shu Department of Computer Science and Technology, Tsinghua University, Beijing, China Tsinghua National

More information

Pseudo SLC. Comparison of SLC, MLC and p-slc structures. pslc

Pseudo SLC. Comparison of SLC, MLC and p-slc structures. pslc 1 Pseudo SLC In the MLC structures, it contains strong pages and weak pages for 2-bit per cell. Pseudo SLC (pslc) is to store only 1bit per cell data on the strong pages of MLC. With this algorithm, it

More information

A Semi Preemptive Garbage Collector for Solid State Drives. Junghee Lee, Youngjae Kim, Galen M. Shipman, Sarp Oral, Feiyi Wang, and Jongman Kim

A Semi Preemptive Garbage Collector for Solid State Drives. Junghee Lee, Youngjae Kim, Galen M. Shipman, Sarp Oral, Feiyi Wang, and Jongman Kim A Semi Preemptive Garbage Collector for Solid State Drives Junghee Lee, Youngjae Kim, Galen M. Shipman, Sarp Oral, Feiyi Wang, and Jongman Kim Presented by Junghee Lee High Performance Storage Systems

More information

Understanding SSD overprovisioning

Understanding SSD overprovisioning Understanding SSD overprovisioning Kent Smith, LSI Corporation - January 8, 2013 The over-provisioning of NAND flash memory in solid state drives (SSDs) and flash memory-based accelerator cards (cache)

More information

Storage Systems : Disks and SSDs. Manu Awasthi CASS 2018

Storage Systems : Disks and SSDs. Manu Awasthi CASS 2018 Storage Systems : Disks and SSDs Manu Awasthi CASS 2018 Why study storage? Scalable High Performance Main Memory System Using Phase-Change Memory Technology, Qureshi et al, ISCA 2009 Trends Total amount

More information

Power Analysis for Flash Memory SSD. Dongkun Shin Sungkyunkwan University

Power Analysis for Flash Memory SSD. Dongkun Shin Sungkyunkwan University Power Analysis for Flash Memory SSD Dongkun Shin Sungkyunkwan University dongkun@skku.edu Introduction SSD requires low power/energy than does HDD. attractive to mobile systems and power-hungry data centers

More information

Journal Remap-Based FTL for Journaling File System with Flash Memory

Journal Remap-Based FTL for Journaling File System with Flash Memory Journal Remap-Based FTL for Journaling File System with Flash Memory Seung-Ho Lim, Hyun Jin Choi, and Kyu Ho Park Computer Engineering Research Laboratory, Department of Electrical Engineering and Computer

More information

80 IEEE TRANSACTIONS ON COMPUTERS, VOL. 60, NO. 1, JANUARY Flash-Aware RAID Techniques for Dependable and High-Performance Flash Memory SSD

80 IEEE TRANSACTIONS ON COMPUTERS, VOL. 60, NO. 1, JANUARY Flash-Aware RAID Techniques for Dependable and High-Performance Flash Memory SSD 80 IEEE TRANSACTIONS ON COMPUTERS, VOL. 60, NO. 1, JANUARY 2011 Flash-Aware RAID Techniques for Dependable and High-Performance Flash Memory SSD Soojun Im and Dongkun Shin, Member, IEEE Abstract Solid-state

More information

Empirical Analysis on Energy Efficiency of Flash-based SSDs

Empirical Analysis on Energy Efficiency of Flash-based SSDs Empirical Analysis on Energy Efficiency of -based SSDs Euiseong Seo Seon Yeong Park Bhuvan Urgaonkar Dept. of Computer Science and Engineering, Pennsylvania State University Abstract Embedded Processor

More information

Bitmap discard operation for the higher utilization of flash memory storage

Bitmap discard operation for the higher utilization of flash memory storage LETTER IEICE Electronics Express, Vol.13, No.2, 1 10 Bitmap discard operation for the higher utilization of flash memory storage Seung-Ho Lim 1a) and Woo Hyun Ahn 2b) 1 Division of Computer and Electronic

More information

A Long Endurance Policy (LEP): An Improved Swap Aware Garbage Collection For NAND Flash Memory Used As A Swap Space In Electronic Devices

A Long Endurance Policy (LEP): An Improved Swap Aware Garbage Collection For NAND Flash Memory Used As A Swap Space In Electronic Devices International Journal of Scientific & Engineering Research Volume 3, Issue 6, June-2012 1 A Long Endurance Policy (LEP): An Improved Swap Aware Garbage Collection For NAND Flash Memory Used As A Swap Space

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Spring 2018 Lecture 22 File Systems Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 Disk Structure Disk can

More information

Delayed Partial Parity Scheme for Reliable and High-Performance Flash Memory SSD

Delayed Partial Parity Scheme for Reliable and High-Performance Flash Memory SSD Delayed Partial Parity Scheme for Reliable and High-Performance Flash Memory SSD Soojun Im School of ICE Sungkyunkwan University Suwon, Korea Email: lang33@skku.edu Dongkun Shin School of ICE Sungkyunkwan

More information

pblk the OCSSD FTL Linux FAST Summit 18 Javier González Copyright 2018 CNEX Labs

pblk the OCSSD FTL Linux FAST Summit 18 Javier González Copyright 2018 CNEX Labs pblk the OCSSD FTL Linux FAST Summit 18 Javier González Read Latency Read Latency with 0% Writes Random Read 4K Percentiles 2 Read Latency Read Latency with 20% Writes Random Read 4K + Random Write 4K

More information

Maximizing Data Center and Enterprise Storage Efficiency

Maximizing Data Center and Enterprise Storage Efficiency Maximizing Data Center and Enterprise Storage Efficiency Enterprise and data center customers can leverage AutoStream to achieve higher application throughput and reduced latency, with negligible organizational

More information

STAFF: State Transition Applied Fast Flash Translation Layer

STAFF: State Transition Applied Fast Flash Translation Layer STAFF: State Transition Applied Fast Flash Translation Layer Tae-Sun Chung, Stein Park, Myung-Jin Jung, and Bumsoo Kim Software Center, Samsung Electronics, Co., Ltd., Seoul 135-893, KOREA {ts.chung,steinpark,m.jung,bumsoo}@samsung.com

More information

3D NAND - Data Recovery and Erasure Verification

3D NAND - Data Recovery and Erasure Verification 3D NAND - Data Recovery and Erasure Verification Robin England Hardware Research & Development Team Lead Santa Clara, CA The Causes of SSD Data Loss What can go wrong? Logical Damage Data accidentally

More information

Reducing MLC Flash Memory Retention Errors through Programming Initial Step Only

Reducing MLC Flash Memory Retention Errors through Programming Initial Step Only Reducing MLC Flash Memory Retention Errors through Programming Initial Step Only Wei Wang 1, Tao Xie 2, Antoine Khoueir 3, Youngpil Kim 3 1 Computational Science Research Center, San Diego State University

More information

Performance Impact and Interplay of SSD Parallelism through Advanced Commands, Allocation Strategy and Data Granularity

Performance Impact and Interplay of SSD Parallelism through Advanced Commands, Allocation Strategy and Data Granularity Performance Impact and Interplay of SSD Parallelism through Advanced Commands, Allocation Strategy and Data Granularity Yang Hu, Hong Jiang, Dan Feng, Lei Tian,Hao Luo, Shuping Zhang School of Computer,

More information

College of Computer & Information Science Spring 2010 Northeastern University 12 March 2010

College of Computer & Information Science Spring 2010 Northeastern University 12 March 2010 College of Computer & Information Science Spring 21 Northeastern University 12 March 21 CS 76: Intensive Computer Systems Scribe: Dimitrios Kanoulas Lecture Outline: Disk Scheduling NAND Flash Memory RAID:

More information

Prediction of Elapsed Time based Wear Leveling for NAND Flash Memory in Embedded Systems

Prediction of Elapsed Time based Wear Leveling for NAND Flash Memory in Embedded Systems Prediction of Elapsed Time based Wear Leveling for NAND Flash Memory in Embedded Systems Sung Ho Kim Ph. D. Candidate, Department of Computer Engineering, Yeungnam University, 214-1 Dae-dong, Gyeongsan-si,

More information

A Self Learning Algorithm for NAND Flash Controllers

A Self Learning Algorithm for NAND Flash Controllers A Self Learning Algorithm for NAND Flash Controllers Hao Zhi, Lee Firmware Manager Core Storage Electronics Corp./Phison Electronics Corp. haozhi_lee@phison.com Santa Clara, CA 1 Outline Basic FW Architecture

More information

A Novel Buffer Management Scheme for SSD

A Novel Buffer Management Scheme for SSD A Novel Buffer Management Scheme for SSD Qingsong Wei Data Storage Institute, A-STAR Singapore WEI_Qingsong@dsi.a-star.edu.sg Bozhao Gong National University of Singapore Singapore bzgong@nus.edu.sg Cheng

More information

Chapter 12 Wear Leveling for PCM Using Hot Data Identification

Chapter 12 Wear Leveling for PCM Using Hot Data Identification Chapter 12 Wear Leveling for PCM Using Hot Data Identification Inhwan Choi and Dongkun Shin Abstract Phase change memory (PCM) is the best candidate device among next generation random access memory technologies.

More information

Reducing Solid-State Storage Device Write Stress Through Opportunistic In-Place Delta Compression

Reducing Solid-State Storage Device Write Stress Through Opportunistic In-Place Delta Compression Reducing Solid-State Storage Device Write Stress Through Opportunistic In-Place Delta Compression Xuebin Zhang, Jiangpeng Li, Hao Wang, Kai Zhao and Tong Zhang xuebinzhang.rpi@gmail.com ECSE Department,

More information

Proceedings of the Linux Symposium. July 13th 17th, 2009 Montreal, Quebec Canada

Proceedings of the Linux Symposium. July 13th 17th, 2009 Montreal, Quebec Canada Proceedings of the Linux Symposium July 13th 17th, 2009 Montreal, Quebec Canada Conference Organizers Andrew J. Hutton, Steamballoon, Inc., Linux Symposium, Thin Lines Mountaineering Programme Committee

More information

I/O Topology. Martin K. Petersen Oracle Abstract. 1 Disk Drives and Block Sizes. 2 Partitions

I/O Topology. Martin K. Petersen Oracle Abstract. 1 Disk Drives and Block Sizes. 2 Partitions I/O Topology Martin K. Petersen Oracle martin.petersen@oracle.com Abstract The smallest atomic unit a storage device can access is called a sector. With very few exceptions, a sector size of 512 bytes

More information

744 IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 6, JUNE 2009

744 IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 6, JUNE 2009 744 IEEE TRANSACTIONS ON COMPUTERS, VOL. 58, NO. 6, JUNE 2009 Performance Trade-Offs in Using NVRAM Write Buffer for Flash Memory-Based Storage Devices Sooyong Kang, Sungmin Park, Hoyoung Jung, Hyoki Shim,

More information

CS3600 SYSTEMS AND NETWORKS

CS3600 SYSTEMS AND NETWORKS CS3600 SYSTEMS AND NETWORKS NORTHEASTERN UNIVERSITY Lecture 11: File System Implementation Prof. Alan Mislove (amislove@ccs.neu.edu) File-System Structure File structure Logical storage unit Collection

More information

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University

Che-Wei Chang Department of Computer Science and Information Engineering, Chang Gung University Che-Wei Chang chewei@mail.cgu.edu.tw Department of Computer Science and Information Engineering, Chang Gung University Chapter 10: File System Chapter 11: Implementing File-Systems Chapter 12: Mass-Storage

More information

SHRD: Improving Spatial Locality in Flash Storage Accesses by Sequentializing in Host and Randomizing in Device

SHRD: Improving Spatial Locality in Flash Storage Accesses by Sequentializing in Host and Randomizing in Device SHRD: Improving Spatial Locality in Flash Storage Accesses by Sequentializing in Host and Randomizing in Device Hyukjoong Kim 1, Dongkun Shin 1, Yun Ho Jeong 2 and Kyung Ho Kim 2 1 Samsung Electronics

More information

Middleware and Flash Translation Layer Co-Design for the Performance Boost of Solid-State Drives

Middleware and Flash Translation Layer Co-Design for the Performance Boost of Solid-State Drives Middleware and Flash Translation Layer Co-Design for the Performance Boost of Solid-State Drives Chao Sun 1, Asuka Arakawa 1, Ayumi Soga 1, Chihiro Matsui 1 and Ken Takeuchi 1 1 Chuo University Santa Clara,

More information

The Google File System

The Google File System October 13, 2010 Based on: S. Ghemawat, H. Gobioff, and S.-T. Leung: The Google file system, in Proceedings ACM SOSP 2003, Lake George, NY, USA, October 2003. 1 Assumptions Interface Architecture Single

More information

A Reliable B-Tree Implementation over Flash Memory

A Reliable B-Tree Implementation over Flash Memory A Reliable B-Tree Implementation over Flash Xiaoyan Xiang, Lihua Yue, Zhanzhan Liu, Peng Wei Department of Computer Science and Technology University of Science and Technology of China, Hefei, P.R.China

More information

LETTER Solid-State Disk with Double Data Rate DRAM Interface for High-Performance PCs

LETTER Solid-State Disk with Double Data Rate DRAM Interface for High-Performance PCs IEICE TRANS. INF. & SYST., VOL.E92 D, NO.4 APRIL 2009 727 LETTER Solid-State Disk with Double Data Rate DRAM Interface for High-Performance PCs Dong KIM, Kwanhu BANG, Seung-Hwan HA, Chanik PARK, Sung Woo

More information

Asymmetric Programming: A Highly Reliable Metadata Allocation Strategy for MLC NAND Flash Memory-Based Sensor Systems

Asymmetric Programming: A Highly Reliable Metadata Allocation Strategy for MLC NAND Flash Memory-Based Sensor Systems Sensors 214, 14, 18851-18877; doi:1.339/s14118851 Article OPEN ACCESS sensors ISSN 1424-822 www.mdpi.com/journal/sensors Asymmetric Programming: A Highly Reliable Metadata Allocation Strategy for MLC NAND

More information

Secondary storage. CS 537 Lecture 11 Secondary Storage. Disk trends. Another trip down memory lane

Secondary storage. CS 537 Lecture 11 Secondary Storage. Disk trends. Another trip down memory lane Secondary storage CS 537 Lecture 11 Secondary Storage Michael Swift Secondary storage typically: is anything that is outside of primary memory does not permit direct execution of instructions or data retrieval

More information

FFS: The Fast File System -and- The Magical World of SSDs

FFS: The Fast File System -and- The Magical World of SSDs FFS: The Fast File System -and- The Magical World of SSDs The Original, Not-Fast Unix Filesystem Disk Superblock Inodes Data Directory Name i-number Inode Metadata Direct ptr......... Indirect ptr 2-indirect

More information

Operating Systems. Lecture File system implementation. Master of Computer Science PUF - Hồ Chí Minh 2016/2017

Operating Systems. Lecture File system implementation. Master of Computer Science PUF - Hồ Chí Minh 2016/2017 Operating Systems Lecture 7.2 - File system implementation Adrien Krähenbühl Master of Computer Science PUF - Hồ Chí Minh 2016/2017 Design FAT or indexed allocation? UFS, FFS & Ext2 Journaling with Ext3

More information

EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture)

EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture) EI 338: Computer Systems Engineering (Operating Systems & Computer Architecture) Dept. of Computer Science & Engineering Chentao Wu wuct@cs.sjtu.edu.cn Download lectures ftp://public.sjtu.edu.cn User:

More information

Performance Impact and Interplay of SSD Parallelism through Advanced Commands, Allocation Strategy and Data Granularity

Performance Impact and Interplay of SSD Parallelism through Advanced Commands, Allocation Strategy and Data Granularity Performance Impact and Interplay of SSD Parallelism through Advanced Commands, Allocation Strategy and Data Granularity Yang Hu, Hong Jiang, Dan Feng Lei Tian, Hao Luo, Shuping Zhang Proceedings of the

More information

ONE of the design challenges of mobile computers is that

ONE of the design challenges of mobile computers is that IEEE TRANSACTIONS ON COMPUTERS, VOL. 59, NO. 10, OCTOBER 2010 1337 A Hybrid Approach to NAND-Flash-Based Solid-State Disks Li-Pin Chang Abstract Replacing power-hungry disks with NAND-flash-based solid-state

More information

Journal of Systems Architecture

Journal of Systems Architecture Journal of Systems Architecture 55 (2009) 332 343 Contents lists available at ScienceDirect Journal of Systems Architecture journal homepage: www.elsevier.com/locate/sysarc A survey of Flash Translation

More information

Chapter 14 HARD: Host-Level Address Remapping Driver for Solid-State Disk

Chapter 14 HARD: Host-Level Address Remapping Driver for Solid-State Disk Chapter 14 HARD: Host-Level Address Remapping Driver for Solid-State Disk Young-Joon Jang and Dongkun Shin Abstract Recent SSDs use parallel architectures with multi-channel and multiway, and manages multiple

More information

CS370 Operating Systems

CS370 Operating Systems CS370 Operating Systems Colorado State University Yashwant K Malaiya Fall 2017 Lecture 25 File Systems Slides based on Text by Silberschatz, Galvin, Gagne Various sources 1 1 FAQ Q 2 Data and Metadata

More information

File System Management

File System Management Lecture 8: Storage Management File System Management Contents Non volatile memory Tape, HDD, SSD Files & File System Interface Directories & their Organization File System Implementation Disk Space Allocation

More information

Optimizing Flash-based Key-value Cache Systems

Optimizing Flash-based Key-value Cache Systems Optimizing Flash-based Key-value Cache Systems Zhaoyan Shen, Feng Chen, Yichen Jia, Zili Shao Department of Computing, Hong Kong Polytechnic University Computer Science & Engineering, Louisiana State University

More information

ParaFS: A Log-Structured File System to Exploit the Internal Parallelism of Flash Devices

ParaFS: A Log-Structured File System to Exploit the Internal Parallelism of Flash Devices ParaFS: A Log-Structured File System to Exploit the Internal Parallelism of Devices Jiacheng Zhang, Jiwu Shu, Youyou Lu Tsinghua University 1 Outline Background and Motivation ParaFS Design Evaluation

More information

Tutorial FTL. Sejun Kwon Computer Systems Laboratory Sungkyunkwan University

Tutorial FTL. Sejun Kwon Computer Systems Laboratory Sungkyunkwan University Tutorial FTL Sejun Kwon Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Contents NAND Flash Memory NAND Flash Operation NAND Flash Architecture NAND Controller Tutorial FTL ICE3028:

More information

Over provisioning in solid state hard drives: benefits, design considerations, and trade-offs in its use

Over provisioning in solid state hard drives: benefits, design considerations, and trade-offs in its use Over provisioning in solid state hard drives: benefits, design considerations, and trade-offs in its use Conditions of use: Intended to provide the reader with some background on over provisioning, this

More information

WHITE PAPER. Know Your SSDs. Why SSDs? How do you make SSDs cost-effective? How do you get the most out of SSDs?

WHITE PAPER. Know Your SSDs. Why SSDs? How do you make SSDs cost-effective? How do you get the most out of SSDs? WHITE PAPER Know Your SSDs Why SSDs? How do you make SSDs cost-effective? How do you get the most out of SSDs? Introduction: Solid-State Drives (SSDs) are one of the fastest storage devices in the world

More information

Design and Analysis of Flash Translation Layers for Multi-Channel NAND Flash-based Storage Devices

Design and Analysis of Flash Translation Layers for Multi-Channel NAND Flash-based Storage Devices 392 IEEE Transactions on Consumer Electronics, Vol. 55, No. 3, AUGUST 29 Design and Analysis of Flash Translation Layers for Multi-Channel NAND Flash-based Storage Devices Sang-Hoon Park, Seung-Hwan Ha,

More information