词条积累

1.NAND flash memory

http://www.searchstorage.com.cn/whatis/word_6052.htm

http://baike.baidu.com/subview/64506/5136742.htm?fromtitle=NAND%E9%97%AA%E5%AD%98&fromid=8051173&type=syn

2.FTL

http://hi.baidu.com/alan_ding/item/7895367e324d5e3ed7a89c70

3.bit flips

http://www.crifan.com/order_nand_flash_bit-reversed_bit_flipped/

4.

Abstract:

1.本文提出了pcm-ftl,以耐用的NAND快闪记忆体管理方案为基础,重新设计以满足减少PCM写活动需要嵌入式系统。

2.基本的思想:要尽量避免储在PCM中的位翻转(即,映射表)

3.pcm-ftl采用二级映射机制,在I/O访问行为的特征上最大以最大限度地减少PCM上的写活动

PCM-FTL employs a two-level mapping mechanism, which focuses on minimizing write activities to PCM by characterizing I/O access behaviors

一、 INTRODUCTION

1.传统:

(1)功能增加,耗电增加

(2)DRAM时,断电后,重新遍历flash建立map-table

(3)DRAM的耗电和可扩展性到了极限

2.PCM

(1)PCM的主要问题,FTL写的频率很高——》减少不必要的写

(2)已经有的硬件优化:写前读

3.PCM-FTL

(1)管理主存的底层架构,写感知

PCM-FTL enhances the lifetime of PCM by making the management of NAND flash memory aware of write activities on underlying memory architecture.

(2)不改变文件系统和硬件

(3)PCM-FTL的基础思想是减少位翻转在PCM上

The basic idea is to try to avoid bit flips in the FTL mapping table, which is stored in PCM. By reducing write activities to PCM cells, the lifetime of PCM is enhanced

(4)页级映射:处理随机请求(此请求不频繁)

PCM-FTL uses page-level mappings to handle infrequent random requests

(5)块映射:处理顺序请求(此请求频繁)

a tiny amount of block-level mappings for most frequently accessed sequential requests

(6)PCM-FTL actively chooses a physical block in NAND flash memory whose physical block number incurs the minimum number of bit flips in the mapping entry when allocating a physical block

(7)With appropriate wear leveling algorithms, PCMFTL evenly distributes write activities across the whole PCM chip.

4.本文贡献

(1)present for the first time a write-activity-aware,two-level flash memory management technique

(2)use an effective wear leveling algorithm

(3)realistic I/O traces 实验

二、BACKGROUND AND MOTIVATION

1.hFTL

(1)a page-level mapping table in PCM keeps track of mappings between logical page number (LPN) and physical page number (PPN)

——》the mapping table is updated frequently and thus imposes the endurance issue for PCM

三、PCM-FTL

1.The basic idea of PCM-FTL is thus to preserve each bit in FTL mapping table,which is stored in PCM

2.A two-level mapping mechanism is proposed to separate the two types of request. For random requests, PCM-FTL uses a page-level mapping table (PMT)
to store their mappings. For large, sequential accesses, we use a small block-level mapping buffer (BMB) to cache the mappings.

3.With the consideration of write activities, once a block is needed for incoming write requests, PCM-FTL selectively allocates a physical block in NAND flash memory whose physical block number incurs minimum number of bit flips in PCM cells.

4.I/O workload=small random+ large sequential requests

5.Requests that intend to write more than t pages are categorized as sequential ones

6.

Random requests: PCM-FTL sequentially allocates physical pages from the first page of a physical block in NAND flash memory, so that all pages in blocks are fully utilized. Accordingly, PCM-FTL adds LPN to PPN mapping for random requests in PMT

Sequential requests: PCM-FTL allocates physical pages based on block offset as most sequential requests usually occupy a whole block, so that all pages in blocks are fully utilized as well. Similarly, PCM-FTL adds an LBN to PBN mapping in the BMB

7.Different from a traditional block-level scheme, the BMB in PCM-FTL is only for sequential requests and has limited capacity:The purpose is
to only buffer the mapping for the most frequently and recently updated blocks

8.handling writerequests

(1)New Requests:

If the request is a sequential one, pages will be written according to their offsets in the block and a block-level mapping is set up in the end. Random requests will be handled by writing to the newly allocated block one by one from the first physical page, regardless of the logical page number offsets. Page-level mappings will be set up.

(2)Update Requests:relies on the request type and the old block type.

连续请求直接分配一个新块,快号要和原来块映射里的保持最小翻转

随意请求,看原来的块有没有位置,一个接一个的写

连续请求,如果原来的块的空闲页足够的话,变成页映射

if the request is a sequential one, a new block will be allocated. In case the old block was mapped at block-level,
the allocation routine will try to find a block that will cause the minimum number of bit flips in the block table entry.

四、Algorithm

Algorithm 3.1 The wear leveling algorithm in PCM-FTL (pcm-ftl磨损均衡算法)

备注:

block-level mapping buffer (BMB)

page-level mapping table (PMT)

BMB records (记录)logical block to physical block mappings, while PMT records page-level mappings (i.e.,logical page to physical page)

对应论文3.4

(1) 在PMT中定期移动 BMB

疑问:

(1)PTE 、BTE

(2)Total PCM length

3.2 Handling new requests in PCM-FTL

Logical Page Number (LPN)

sequential 连续的

LBN/PBN: Logical/Physical Block Number

LPN/PPN: Logical/Physical Page Number

3.3 Handling update requests in PCM-FTL

Durable NAND flash memory management的更多相关文章

  1. NAND Flash memory in embedded systems

    参考:http://www.design-reuse.com/articles/24503/nand-flash-memory-embedded-systems.html Abstract : Thi ...

  2. A New 3-bit Programming Algorithm using SLC-to-TLC Migration for 8MBs High Performance TLC NAND Flash Memory

    背景 1.2012年左右的数据SLC.MLC.TLC闪存芯片的区别:SLC = Single-Level Cell ,即1bit/cell,速度快寿命长,价格超贵(约MLC 3倍以上的价格),约10万 ...

  3. eMMC基础技术11:flash memory

    [转]http://www.wowotech.net/basic_tech/367.html 0.前言 eMMC 是 Flash Memory 的一类,在详细介绍 eMMC 之前,先简单介绍一下 Fl ...

  4. Flash Memory 简介【转】

    本文转载自:https://linux.codingbelief.com/zh/storage/emmc/ Flash Memory 是一种非易失性的存储器.在嵌入式系统中通常用于存放系统.应用和数据 ...

  5. PatentTips - Reducing Write Amplification in a Flash Memory

    BACKGROUND OF THE INVENTION Conventional NAND Flash memories move data in the background to write ov ...

  6. NAND Flash vs NOR Flash

    Avinash Aravindan reference:https://www.embedded.com/design/prototyping-and-development/4460910/2/Fl ...

  7. 编程器NAND Flash 技术入门

    NAND Flash分类 SLC(Single-Level Cell)架构:单一储存单元(Cell)可储存1bit data MLC(Multi-Level Cell)架构:单一储存单元(Cell)可 ...

  8. Nand Flash基础知识与坏块管理机制的研究

    概述 Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次 ...

  9. 说说NAND FLASH以及相关ECC校验方法

    Flash名称的由来,Flash的擦除操作是以block块为单位的,与此相对应的是其他很多存储设备,是以bit位为最小读取/写入的单位,Flash是一次性地擦除整个块:在发送一个擦除命令后,一次性地将 ...

随机推荐

  1. Mysql入门-对表数据的增删改查

    这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mysql的时候, ...

  2. cookbook 6.1 温标的转换

    任务: 在开氏温度(Kelvin).摄氏度(Celsius).华氏温度(Fahrenheit).兰金温度(Rankine)之间做转换 解决方案: #coding=utf-8 class Tempera ...

  3. 2019南昌网络赛 J Distance on the tree 主席树+lca

    题意 给一颗树,每条边有边权,每次询问\(u\)到\(v\)的路径中有多少边的边权小于等于\(k​\) 分析 在树的每个点上建\(1​\)到\(i​\)的权值线段树,查询的时候同时跑\(u,v,lca ...

  4. 2019.12.12网页设计大赛&2019.12.13程序设计大赛观后感

    有幸参加了一次网页设计大赛和程序设计大赛,其实在大一的时候就参加过一次程序设计大赛,那时候也没怎么听,现在又有了一次机会来听,这次就认真的听了这两次的比赛,也有很多的感悟. 1.要学习完成一个任务的多 ...

  5. AcWing:148. 合并果子(哈夫曼树)

    在一个果园里,达达已经将所有的果子打了下来,而且按果子的不同种类分成了不同的堆. 达达决定把所有的果子合成一堆. 每一次合并,达达可以把两堆果子合并到一起,消耗的体力等于两堆果子的重量之和. 可以看出 ...

  6. SNOI2017炸弹

    这个东西其实我是不太会的……但是勉强卡过去了. 首先肯定是建有向图,然后求每个节点能访问的节点个数,最裸的打法就是按照题意枚举建边然后tarjan缩点,用bitset记录一下访问节点,但是bitset ...

  7. SRS之分发HLS

    来自: Delivery HLS 1. 综述 SRS支持HLS/RTMP两种成熟而且广泛应用的流媒体分发方式. RTMP指Adobe的RTMP(Realtime Message Protocol),广 ...

  8. rocketmq的linux搭建环境

    3.3. 上传解压[两台机器] # 上传 apache-rocketmq.tar.gz 文件至/usr/local # tar -zxvf apache-rocketmq.tar.gz -C /usr ...

  9. 2017年内容营销如何提高ROI转化率

    根据2017 CMI报告显示,有近41%的营销人员今年会实施一系列内容营销战略.作为与用户间长期关系的桥梁, 从品牌化输出到信任感的培育,内容营销的影响力迅猛发展. 本次Focussend从互动集成内 ...

  10. Volley源码分析

    取消请求的源码分析: public void cancelAll(RequestFilter filter) { synchronized (mCurrentRequests) { for (Requ ...