NVMdurance利用机器学习延长Flash寿命
作者: SSD攻城狮 ? 想要和本文作者还有《大话存储》作者冬瓜哥、《PCI Express体系结构导读》作者王齐、《蛋蛋读NVMe》作者蛋蛋等全世界的大牛讨论SSD及存储相关技术?加nanoarch为微信好友,拉你进ssdfans微信群?。? 欢迎给ssdfans投稿,投稿就能加入ssdfans作者群,和冬瓜哥,蛋蛋等大咖切磋武艺,还有稿酬拿. ? Tune Flash各个参数是个技术活,既要有普适性,有时又需要满足一些特定甚至极端的需求,而各种参数之间还会互相影响:比如满足了BER的需求,可能会导致tProg和tErase过长。 Flash出厂时,因为要卖给多个客户(多种应用场景),Flash厂商不会针对某个应用场景特意做优化(做到100分),反过来他们的做法是提供一组参数,能够较好的适应大多数场景(比如80分)。 成立于2013年的NVMdurance的卖点就是,你不知道买来的Flash怎么调才能最好的适用你的场景,我用我的软件帮你找到最优的参数组合。据说可以把Endurance提高3~10倍。 NVMdurance有两把刷子: 左侧的NVMdurance Pathfinder:
右侧的NVMdurance Navigator:
按照官方说法,两者配合服用效果最佳,但也可以单独使用。(感觉有点像地图软件的路线查询离线导航和导航过程中根据实时路况动态调整路线有木有。) ? 根据NVMdurance的描述,我理解下来他是下面这样玩的: 不断的测试各种参数组合并记录结果到数据库;(Navigator) 通过机器学习分析各种参数设置组合对结果的影响;(Pathfinder) 根据场景要求,计算并推荐出几套较优的组合;(Pathfinder) 在真实环境(SSD)验证这些组合(Navigator) 以上四个步骤循环往复。 ? Pathfinder的数据流模型如下: ? ?可以看到右下角高亮的数量级,200个8bit的Flash相关的寄存器,会带来巨量的参数组合。但可是: 反正是用软件模拟硬件,可以用大量廉价的硬件环境并行计算; 巨量的模拟结果是喂饱AI的最好食物,数据量越大,计算出来的参数组合就越接近真实的最佳组合; 反正后面还可以用真实的硬件进行验证; ? Flash磨损原理 让电子进出浮栅(Floating Gate)需要提供一个高电压 随着写入、擦除的次数增多,用来困住电子防止跑进、跑出的氧化层(Tunnel Oxide)中陷落的电子数量也会增加,为了拔掉这些电子所需要的擦除周期也就越久 氧化层积累的电子越来越多,最终会导致擦除动作难以将浮栅(Floating Gate)恢复为没有电子的状态,这个存储单元也就寿终正寝了。 ? 针对这个问题,NVMdurance可以将Flash的生命周期划分为5个阶段,每个阶段施加不同的,刚刚够用的电压,随着PE cycle的增加,逐渐提高施加的电压而不是像Flash厂商那样永远施加一样的电压。从而延缓氧化层磨损,达到延长寿命的效果。见下图: ? ? 想想IBM的沃森是怎么在医疗,法律行业为人民服务的,NVMdurance在2016年上半年拿到2500万美刀(美帝的VC好小气)的融资,不奇怪。
喜欢就请分享转发! 不想错过后续精彩文章?长按或扫描下面二维码关注ssdfans就可以了!
ssdfans微信群介绍。 免费技术讨论群:覆盖了1600多位中国和世界华人圈SSD以及相关存储行业的技术精英,行业大牛,还有各路攻城狮 ssdfans-Firmware-QA群:从事SSD Firmware和QA的攻城狮们在此讨论技术 ssdfans人工智能群:讨论人工智能和异构计算架构等技术问题 ssdfans-ASIC-FPGA群:芯片和FPGA相关的硬件开发人员技术讨论群 ssdfans企业级:讨论企业级存储 ssdfans销售群:买卖消费级,企业级SSD,NAND Flash都可以在这里找到人 ssdfans工作求职群:SSD行业换工作,发招聘,要关注各大公司招聘信息,赶快来~ 想加入这些群,请加nanoarch为微信好友,介绍你的昵称-行业-职业,注明群名,拉你进群。 舍不得发赞赏就赏个举手之劳,点击下面的广告吧! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |