存储 频道

软件定义闪存需要灵活的处理器架构

  【IT168 评论】随着大数据应用的兴起,在诸如内存中分析及数据库信息处理等应用中,性能都是一项关键的考量。因此,企业级固态盘(SSD)正迅速崛起。IDC预测,至2015年,企业级SSD的细分市场将会价值55亿美元。许多情形下,SSD都在多层存储系统中作为较高级别使用。然而,随着全闪存阵列的性价比不断改善(包括每次IOP的费用($/IOP)及每个工作负荷的开销($/workload)),也存在着转向全SSD存储阵列的趋势。

  基于闪存的SSD不仅在企业存储中所占比例有所提升,它还成为了几乎无所不在的核心存储部件,通过运用高速缓存或存储分层来确保优异的最终客户体验。然而价格仍是阻碍其通用的瓶颈,因此对于SSD产业而言,最合理的趋势就是力图通过”技术复用”来满足客户所需求的高性价比并增加技术的采纳度。

  若是以串列SCSi(SAS)市场为例,有三种截然不同的SSD使用模式,通常用五年间的每日随机填充(RFPD)或五年间每天填满整个硬盘xx次的指标来进行衡量。有的读密集型负荷会达到1-3 RFPD,混合型负荷则是5-10 RFPD,而写密集型负荷则需要20+ RFPD。此外,不同的客户群(企业以及数据中心)对于在其基础架构中采用何种SSD以进行应用优化和扩展都有不同的需求。这些需求上的不同通常体现在产品验证中对服务年限、性能、功耗及对边缘条件的敏感度等方面的要求。SSD厂家的挑战在于如何满足这种种纷繁多样的需求,与此同时,提供性价比优良的解决方案。

  企业级应用中的软件定义存储有种种不同的定义及解释,从虚拟化的存储池到存储即服务等不一而足。本文中所谈论的软件定义存储则是指使用基于闪存的SSD来运行软件及固件,以实现从冷存储到高性能SSD及高性价比高速缓存等不同需求。这种趋势源于以下几种原因:

  1. 随着控制器开发成本与风险的提升,运用软件来进行优化的理念不仅变得日益风行,而且成为了生存的必需。控制器开发通常光是芯片就需要高达数千万美金,并且还时常需要多个版本,愈加增大了成本及出错风险率。

  2. 进行高速设计及特定原型优化(SAS或NVMe)所需的开发人员并非唾手可得。因此,软件定义闪存,即利用处理器上的固件来进行硬件优化,就日益成为业界用针对不同应用模式来优化闪存的有效途径。例如,下文将描述的针对PMC的SAS闪存控制器进行的固件及配置优化只花费了芯片开发费用的1/10,直接的好处就是降低了最终产品的成本。

  3. 产品验证的费用可能非常庞大,企业级SSD的验证周期也可能非常漫长,因此,上市时间要求紧迫的解决方案也可以在实际条件许可的前提下,尽可能广泛地充分利用芯片及固件的复用。

  要支持从高性价比的冷存储到用于数据库应用的高性能SSD等如此多样的需求,就需要一种精心设计的、灵活的芯片架构来提供软件定义的解决方案。这些解决方案需要支持基于如下种种需求的软件优化(仅举几例说明):

  · 不同密度及超容量NAND级别

  · 不同节点上不同种类的NAND(SLC/MLC/TLC)

  · 不同的功率包(SAS常用9W和11W, PCIe常用25W)

  · 不同的DRAM数目

  · 常需要支持Toggle及ONFI, 以便维持NAND使用的灵活度

  下表中列出了PMC的12G SAS闪存控制器支持的多种不同配置:

  采用灵活架构的控制器,即可通过改变若干特性,如功率、闪存密度、DRAM密度、闪存种类及主机接口带宽等,来实现采用统一芯片完成各种定制化方案。。因此,通过对固件及存储作出不同的选择,即可提供从冷存储(性价比高但性能较差)到高速缓存的转接卡(优质存储、性能较高)等全方位的解决方案。其要点就在于固件及硬件的架构都是灵活配置的。下面是三种常见的设计难点,均可通过软件定义闪存及灵活的闪存控制器得到解决 :

  o 闪存设备之间的原型通信:不仅仅是不同厂商的NAND之间存在差异(ONFI及toggle原型),每个厂商提供的产品中也存在有原型变更。比如,从五位地址改为六位,或在普通命令前添加前缀命令等。利用固件来实现原型即可灵活地适应这些改变。此外,固件定义的原型也让闪存厂家具备在产品中设计特殊访问的能力。

  o 闪存对编程及读规模的规则参差不齐:基于固件的解决方案可以适应多变的要求,采用闪存的各种不同变种,甚至可以借此开发硬件还根本不存在的新闪存。在固件中既有底层的原型处理,也有编程及读控制,实现的解决方案因此足够灵活,可以运用多种多样的闪存。

  o 微调算法/产品差异化:向上到更高层的算法,如垃圾处理及损耗均衡,闪存中还有许多复杂的细节处理。在固件中控制自底层向上到这些算法的一切环节,可以微调这些高层算法,使之在不同种类的闪存上发挥最优。故此,可以充分利用闪存厂家在产品设计上的差异性,从而针对不同的应用提供最优化的方案。

  能支持软件定义闪存来实行优化的灵活架构是支撑不同使用模式、NAND种类及配置的核心所在。此设计还可以降低成本,从而加速基于NAND的SSD的部署,并最终改善用户体验。

0
相关文章