华为存储的中国芯

芯片是IT产业核心,根据摩尔定律,芯片的规模每两年就会提升一倍。

存储系统起源于大型机,按功能划分可分为3大模块:介质管理,存储CPU以及网络接口。纵观整个IT领域,在过去20年里,CPU技术发展很快,性能提高了500倍;网络接口技术的发展更是惊人,短短十几年,网络带宽提高了1000倍。然而,在存储介质领域始终未实现较大的突破,机械硬盘依然是当前存储介质的主流。从硬盘技术的发展上看,通过减少磁头尺寸,增加碟片等技术,硬盘容量虽然有较大提升,但在性能方面,因受到机械转动和介质材料的限制,仅仅从3600转提升到了15000转,从而导致存储的访问性能成为计算机系统中的性能瓶颈。因此迫切需要有新的技术来对存储系统进行一场技术革命。
近几年,基于非易失性半导体(Nand Flash)存储技术逐步兴起,先应用于U盘,MP3,手机、数码相机等电子产品领域,Nand Flash由于其方便性,以及价格的不断下降(平均每年降50%),和容量的不断上升(平均每年翻一倍),使其在短短的几年时间内迅速发展起来。

SSD(Solid State Drive)也正是基于Nand Flash发展起来的新一代的硬盘技术,SSD内部也可以看做一个小型的存储系统,由接口单元,控制单元和存储单元(FLASH芯片)组成,即用固态电子存储芯片阵列而制成的硬盘。由于固态硬盘没有普通硬盘的机械部件和磁介质,因而抗震性极佳,工作温度范围宽,功耗低,无噪音,具有极高的读写带宽与IO处理能力。广泛应用于军事、车载、工控、视频监控、网络监控、网络终端、电力、医疗、航空等、导航设备等高可靠性应用领域。

但是NAND FLASH也并非完美的存储介质,随着对大容量,高性能,低功耗,低成本的极致追求,NAND FLASH的半导体工艺制程不断推向极限,从45nm,32nm,24nm,以至1xnm(x=6-9)甚至1ynm(y=1-5)。随着制程的不断趋向极限,NAND FLASH的可靠性问题也不断显现,为充分发挥NAND FLASH半导体存储介质的性能优势,同时规避其可靠性问题,SSD控制芯片成为SSD设计的关键。

从整个SSD业界看,致力于自主研发SSD控制芯片领域主要有如下4类厂商:

一、新兴技术型厂商

这类厂商基本上都有一些半导体技术的积累,定位高端企业级市场,推出SSD的特点主要是高性能。这类厂商的代表有:Fusion, STEC, Micron等

二、Flash颗粒厂商

具备Flash颗粒的生产能力,成本控制力较强,在市场上也有一定的品牌影响力。主要定位在中高端消费类市场,这类厂商代表有:Samsung, Intel, Toshiba等

三、消费电子厂商

以台湾做内存、闪存卡的厂商为主,其特点是具备强大的生产制造能力,推出产品迅速,且有广泛的销售渠道,这类厂商主要定位在中低端消费类市场,其代表有:创见、威刚、台电等

四、传统硬盘厂商

SSD的出现让传统硬盘厂商感到了强大的威胁,传统硬盘厂商一方面加速传统机械硬盘的研究来打压其他SSD厂商,另一方面自己也开始布局SSD的研发,这类厂商代表主要有:希捷、西部数据、日立。

SSD控制芯片在国内处于起步阶段。虽然有湖南源科、忆正存储、固捷数据、朗科、爱国者等推出了SSD盘片,但是它们都使用了海外厂商的SSD控制芯片方案。

长期以来,海外厂商把持着IT领域芯片的核心专利,并对此构筑起技术壁垒,以阻碍中国公司进入这个产业。华为公司凭借多年在存储领域的技术积累,打造自主、可控的存储芯片,构建存储领域的中国芯。

发展历程

华为公司从2001年启动存储技术预研工作,并于2002年成立存储产品研发部,2004年开始硬盘技术研究,并于2005年启动SSD算法与关键技术点的预研工作。

2006年,基于PATA的SSD原型完成,2007年研发第一代基于SATA的SSD原型。

2008年,华为启动存储介质控制器战略,第一代自研SSD控制芯片,提供3G SATA接口,凭借高可靠,长寿命的特点,成功击败国外厂商,助力我国南极科考队,圆满完成南极科考任务。

2010年,华为第二代SSD控制芯片成功面世,其提供高性能的3G SAS接口,在继承高可靠的同时,凭借独特的硬件引擎,获得性能业界第一的成绩。

2012年,华为发布了第三代SSD控制芯片,可同时支持最新的6G SAS、6G SATA接口,满足2xnm制程的SLC,MLC,eMLC颗粒的企业级高可靠应用。以此实现的企业级SSD盘片,性能达到30K IOPS,功耗11.5W,能效比较同等价格的 SAS 15K盘片提升95%。

2012年Q2,华为发布基于第三代SSD控制芯片构建全固态存储系统 Dorado 5100系列,并在SPC-1测试中获得600K IOPS的骄人成绩。

技术优势

经过多年的技术积累,华为已明确在SSD控制芯片上的发展思路,即:聚集企业级存储应用,将SSD与存储系统结合,为客户提供高性能,低功耗,低成本的企业级新介质存储系统解决方案。对于SSD控制芯片技术,重点在以下技术上突破:

高性能IO处理

具备高性能的系统架构,可灵活扩展,适应多种接口应用,能够通过后端并发的方式实现和接口速率的匹配,整体达到顺序读写带宽和随机IOPS性能最优,其中决定SSD性能最重要的因素是IO调度管理算法,即通过数据在Cache内的整合、调度、重组等方式来聚合更多有效的IO,同时结合介质颗粒物理特性,最大限度的提升性能。

高可靠性与寿命

磨损均衡算法:Nand Flash对擦写次数存在限制。MLC每个存储单元的擦写次数为1万次,SLC每个存储单元的擦写次数为10万次。擦写次数的限制影响SSD的寿命。若Flash内某物理区域不停被擦写,则造成这些区域很快达到寿命极限而不能继续使用。损耗均衡技术是为了将数据的擦写平均分配至各个物理单元,达到每个单元磨损程度相同,从而延长其使用寿命。

ECC(Error Correction Coding)校验算法:Nand Flash制造工艺决定了在对其进行数据读、写及存储都可能发生随机位(bit)翻转,即产生错误数据。对此,必须在Flash芯片外部设计合适的纠错码ECC对数据进行有效的保护。Nand Flash分为单层(SLC)和多层(MLC),两者由于工艺不同,出错模式和出错概率不同,对ECC纠错能力的要求也不同(SLC可靠性更高,不容易出错)。

坏块管理技术:Nand Flash除了在写数据时可能出现位翻转之外,还可以出现坏块,在写入数据时如果遇到坏块就会导致无法写入,直接影响数据可靠性。坏块分为两种,第一种是出厂坏块,通过坏块表可以直接屏蔽;第二种为使用中产生坏块,需要有及时侦测,进行替换,并保证不影响数据一致性。

异常掉电保护与数据重构技术:由于SSD采用缓存技术来提高性能与减少磨损,增加可靠性。所以在异常掉电情况下,可能造成缓存内数据丢失,破坏用户数据完整性。目前华为掌握掉电保护技术,采用主流的超级电容作为掉电支撑能源。当电容失效情况发生时,会自动启动数据重构,在数秒内恢复用户盘片上数据映射关系,重组数据,从而提升可靠性。

故障自诊断方法:针对数据通路,采用纠错与冗余的方式,进行全路径保护;接口部分,使用CRC进行校验;Cache路径采用ECC算法纠错;数据流向Flash路径也提供ECC算法纠错。任何链路上的错误都会以log方式记录下来。上电后盘片的关键部件进行自检,如有错误会立即报警。

动态电源管理:固态硬盘的能源消耗仅为传统机械硬盘的20%,性能方面高出传统硬盘数倍,尤其在随机操作的状态下面行性能更是高出传统机械硬盘一个数量级。综合看来,在提供相同性能的服务下,固态硬盘的能耗更低。在华为自研的固态硬盘中更加创新的使用了动态电源管理技术进一步实现节能目的。

技术专利

华为公司在信息存储领域已拥有自主知识产权专利近200项,其中直接与本项目相关的专利多项。除此外拥有100多项SSD相关专利已或授权或正在受理。

表. 华为公司SSD已授权的部分专利
专利名称                      国内申请号
一种基于保留块的SSD寿命提示方法 200810172315.9
一种自适应SSD性能优化算法 200810171723.2
一种分组线性动态均衡方法 200810180172.6
一种基于Row休眠机制的SSD节能方法200810180163.7
一种自适应提高SSD读写性能的方法 200810173692.4
一种针对存储设备的固件加载装置 200810180443.8
一种cache掉电数据保护方法 200810172111.5
一种基于多密钥的加密存储装置写方法200810188866.4
使用单一存储控制器的固态硬盘存储系统200920002714
SSD盘内RAID实现高可靠性的方法 200910118167.7
一种确保SSD数据安全的自适应方法 200910000351.1
一种基于页级和块级混合的FLASH管理方式200910005543.1

未来展望

华为致力于满足客户存储业务发展需求,向客户提供业界领先的专业存储设备,将继续加大研发投入,特别在下一代固态存储介质的SSD控制芯片技术研究上的重点投入。在传统硬盘存储系统逐渐缩小与主流存储厂商的差距的同时,通过自主可控的华为存储中国芯,在下一代固态存储系统中建立技术领先优势,为中国存储行业注入强劲动力。