戏说FTL (1) — FTL是个什么鬼?

原创内容,转载请注明:  [http://www.ssdfans.com]  谢谢!

马未都老师教育我,在古玩行一直有这么个鄙视链:

搞玉器的看不上搞杂项的,搞瓷器的看不上搞玉器的,搞字画的看不上搞瓷器的,搞碑帖的看不上搞字画的.

这个好理解:

那些个鼻烟壶,竹子,漆器什么的,确实比不上玉器那么价值连城

瓷器这种烟熏火燎的体力活,哪有字画这样的闲情逸致

字画跟碑帖比起来,又少了一份高古和神秘,弄个碑给你,不仔细研究写的是啥都不知道…

其实在我们SSD这个行业,同样有这么一个鄙视链:

做ASIC的看不上写FW的,写FW的看不上写Driver的,写Driver的看不上写Application的,写Application的只好看不上做测试的。

要不说搞SSD的没有搞古玩挣得多呢,人家不同专业之间互相鄙视也就罢了,阵营内部还是很团结的,时不时的还搞个鉴宝:

请和中堂当主持人,拉上一群专家,旧货给估个价,’新’货给来上一锤子。

在我们大SSD圈,不仅有External鄙视链,还有Internal鄙视链。

以写FW的为例,NVMe看不上AHCI,PCIE看不上SATA,Backend看不上Frontend,FTL看不上Backend

虽然本人不是写FW的,但是不妨碍我追求进步,求知若渴,我就想搞明白为啥FTL这么niubility。

 

FTL是什么?

FTL= Flash Translation Layer (闪存转换层)

昨天(HDD时代):操作系统认为磁盘是一连串 512Byte的Sector (现在也有4K的HDD),同时操作系统对磁盘进行Read/Write的最小单位是Block,512B/1KB/4KB(具体大小在格式化时设定)

今天(SSD时代):闪存的Read/Write是以page(通常为4K)为单位,而Erase是按照Block(128或256个page)来操作,Write不能直接overwrite,必须Erase整个Block。

原有的文件系统操作方式完全不能愉快的玩耍了,秉承一贯的向下兼容的优良传统,就有了FTL,它位于文件系统和物理介质之间,把闪存的操作习惯虚拟成以传统硬盘的 512B 扇区进行操作。这样,操作系统就可以按照传统的扇区方式操作,而不用担心之前说的擦除/读/写问题。一切逻辑到物理的转换,都交给FTL搞定。

借用一下PCEVA上的一张图总结一下FTL对于SSD的重要性。

FTL做什么?

  • Mapping LBA和PBA
  • Garbage Collection
  • Over Provision
  • 坏块管理
  • Wear Leveling
  • 掉电恢复
  • ECC
  • 加密
  • 压缩

 

分类目录 金士顿SSD评测.
扫一扫二维码或者微信搜索公众号ssdfans关注(添加朋友->点最下面的公众号->搜索ssdfans),可以经常看到SSD技术和产业的文章(SSD Fans只推送干货)。
ssdfans微信群介绍
技术讨论群 覆盖2000多位中国和世界华人圈SSD以及存储技术精英
固件、软件、测试群 固件、软件和测试技术讨论
异构计算群 讨论人工智能和GPU、FPGA、CPU异构计算
ASIC-FPGA群 芯片和FPGA硬件技术讨论群
闪存器件群 NAND、3D XPoint等固态存储介质技术讨论
企业级 企业级SSD、企业级存储
销售群 全国SSD供应商都在这里,砍砍价,会比某东便宜20%
工作求职群 存储行业换工作,发招聘,要关注各大公司招聘信息,赶快来
高管群 各大SSD相关存储公司高管和创始人、投资人

想加入这些群,请微信扫描下面二维码,或搜索nanoarchplus,加阿呆为微信好友,介绍你的昵称-单位-职务,注明群名,拉你进群。SSD业界需要什么帮助,也可以找阿呆聊。