zoukankan      html  css  js  c++  java
  • FTL简介

    SSD-FTL简介

    参考资料《深入浅出SSD》

    FTL

    1.全称

    Flash Translation Layer,闪存转换层

    2.作用

    完成Host逻辑地址空间到闪存(Flash)物理地址空间的映射;

    FTL算法的优劣,决定了SSD的性能,可靠性,耐用性等,它是SSD固件的核心。

    说明:

    1)SSD会把每一笔用户逻辑数据写入闪存地址空间,便记录下该逻辑地址到物理地址的映射关系

    2)当host读取数据时,SSD会根据这个映射,从闪存读取这笔数据,然后返回给用户

    3.FTL的种类

    1)基于主机(Host Based)

    FTL在主机端实现,用自己计算机的CPU和内存资源,如图

    2)基于设备(Device Based,主流)

    FTL在设备端实现,用的是SSD上的控制器和RAM资源,如图

     

    闪存的重要特性

    1.闪存块需要先擦除才能写入,不能覆盖写

    2.闪存都是有一定寿命的,每擦除一次闪存块,都会对其造成磨损,一般用PE(Program/EraseCount)数来衡量

    3.每个闪存块的读是有限的,读的太多,上面的数据就会出错,造成读干扰问题

    4.闪存的数据保持问题,由于电荷的流失,存储在闪存上的数据是会丢失的

    5.闪存天生就有坏块

    6.对MLC和TLC来说,存在Lower Page corruption的问题

     说明:在对Upper Page/Extra Page写入时,如果发生异常掉电,可能会把Lower Page上成功写入的数据破坏掉,

     好的FTL应该尽量避免这种情况

    7.MLC和TLC的读写速度不如SLC,但它们都可以配成SLC模式来使用,好的FTL应该会利用这个特性来改善SSD的性能和可靠性

  • 相关阅读:
    Linux的文件权限与目录配置
    'scanf': This function or variable may be unsafe
    无法解析的外部符号 _main
    无法解析的外部符号 _WinMain@16
    Linux 基础命令和帮助命令
    Linux是什么与如何学习
    主机规划与磁盘分区
    三、git学习之——管理修改、撤销修改、删除文件
    git学习——git命令之创建版本库和版本退回
    git学习——git下载安装
  • 原文地址:https://www.cnblogs.com/marton/p/12562975.html
Copyright © 2011-2022 走看看