深圳市硅格半导体有限公司 深圳 518000
摘要:固态硬盘功耗会引起设备加热导致耗电上升,持续的高温会造成介质颗粒的可靠性受到影响。对固态硬盘进行低功耗设计,让硬盘可以支撑更长的待机时间,同时降低成本,提高可靠性与使用寿命。本文通过对固态硬盘和主控低功耗进行设计研究后,得出采用有效的低功耗方法可以有效降低固态硬盘的消耗。
关键词:固态硬盘;结构;低功耗;变频
随着新型存储介质技术的开发,闪存的工艺得到了不断的提升。固态硬盘的成本降低,在数据中心、存储系统的开发以及日常的电子产品消耗中得到了广泛应用。固态硬盘分为消费级应用和企业级应用两种应用方式,在消费级领域,固态硬盘主要以便携式移动硬盘、电脑、手机等移动存储的方式出现;在企业级应用领域中,固态硬盘主要以PCIe接口、SAS存储盘的方式出现。固态硬盘的功耗关系到产品的竞争力,在便携式移动设备中,固态硬盘自身的高功耗会缩短待机时间,在企业级应用中,固态硬盘大多应用于数据中心,在数据中心有上百块固态硬盘,过高的功耗会让数据中心的整体发热量加剧,增加企业运营成本。过高的环境会影响闪存介质的使用寿命,继而影响整个数据中心的安全运行。因此,对固态硬盘进行主控低功耗设计,对于企业的稳定运行具有十分重要的意义。
图1为一种典型的固态硬盘架构,从逻辑层面分析,一个完整的固态硬盘包括主机接口、缓存、固态盘处理以及闪存四大模块。
图1 固体硬盘架构
主机接口主要负责固态硬盘与主机系统之间的数据通信,以SATA通信接口为主流,以AHCI协议为常见的接口协议,通过特定的接头协议,可以实现对固态硬盘的高效访问。
缓存模块主要用于管理固态硬盘的空间,通过缓存空间实现主机与固态闪存之间的数据通信,提高固态硬盘读写功能的同时还可以减少对闪存芯片的频繁读写,有助于提高硬盘的使用寿命。
固态盘处理模块作为重要的固态盘软件层,可以实现地址映射、垃圾回收等功能。
闪存模块主要负责对数据进行物理存储,通过多个通道与控制器建立缓存通道,严格按照通道、芯片、晶片、平面的顺序进行划分。
对于NVMe 固态硬盘的控制器芯片的功耗设计,主机接口连接需要在PCIe控制器的基础上,因为设备的功耗在整个主控中所占比例增加,为了降低PCIe控制器的功耗,根据标准协议设定了如表1所示的低功耗模式,方便用户可以根据自己的实际情况进行负载,在几种模式下自由切换,从而对功耗进行控制。
表1 PCIe低功耗模式
低功耗模式 | 定义 |
L0 | 全速工作模式 |
L0s | 待机模式快 |
L1 | 待机模式慢 |
L1.1 | PCIe 不掉电 |
L1.2 | PCIe掉电 |
L2 | 睡眠模式 |
在PCIe协议中,PCIe的接口工作模式在不断变化,从最初的全速工作模式转变为深度节能模式,随着模式的不断转变,功耗也得到了有效控制。根据NVMe芯片的工作模式,得到了如表2所示的低功耗模式。
表2 主控芯片的低功耗模式
PCIe IO | CPU | Int MEM | Ext MEM | Flash IO | |
PS0 | Full On | Full On | Full On | Full On | Full On |
PS1 | Full On | 节能 | 节能 | 节能 | 节能 |
PS2 | Full On | 等待 | 保留 | 保留 | Off |
PS3 | L1 | Off | 保留 | Off | Off |
PS4 | L1.2 | Off | 保留 | Off | Off |
PS5 | L2 | Off | 部分保留 | Off | Off |
主控芯片的功耗模式在性能方面都是逐步降低,工程师需要根据系统的应用场景进行模式应用,实现在不同的应用场景下让整个系统的功耗得到最小化利用。
2.2固态硬盘控制器芯片的低功耗设计方法
固态硬盘的控制器芯片功耗分为静态和动态两种功耗模式,随着半导体工艺的成熟,电压在不断降低的情况下所带来的是动态功耗下降明显,静态功耗占比越来越大,减少静态功耗的方法可以使用标准单元库或者电源门控的方式;减少动态功耗的方法可以采用时钟门控、降频调压等方式。针对固态硬盘的控制器芯片,设计了如下方案:
为了降低静态功耗带来的影响,在逻辑单元较多的部分,采用LDPC算法,在网表中采用低Track或者高门限电压的方式进行实现;在不同的操作模式下,进行逻辑综合设定时,针对数据路径模块,采用自动门控插入技术降低动态功耗带来的影响;对于Flash通道,当该通道的模块处于IDLE状态下,尽可能采用电控;采用异步时钟设计的高密度单元,针对CPU模块减少大量的动态功耗;在不需要的时候要将整个控制器的芯片关闭,同时最小化Memory和CPU的指令消耗。
2.3功耗控制技术
针对闪存介质以及Flash IO通道的功耗控制,采用功耗压制技术和通道压制技术实现功耗的控制。
功耗压制技术在固态硬盘的固件程序中,通过设定一个温度门限值,当主控温度传感器检测到温度高于设定的温度时,固件会主动对主控CPU进行降频操作,如果温度过高将会停止对Flash总线的数据访问。该技术可以有效降低闪存介质中存在的动态功耗,从而提升固态硬盘的使用寿命。
对于通道压制技术而言,固态硬盘控制器为了提高并发写入的速度,会利用Flash后端进行多通道并发读写,对于企业级的固态硬盘控制器而言,采用8通道或者16通道进行操作,是为了提高并发读写的可能性,但是容易增加功耗。为了降低Flash功耗带来的影响,同时也为了延续闪存介质的寿命,采用通道压制技术,在固件中设置负载门限,通过读写带宽值、读写Flash Die的数量完成功耗设定。在操作的过程中,对固件实行监控,并对正在工作的Flash Die的数量进行收集并上传,当系统检测到所设定数值高于门限时,固态硬盘控制器会自动取消对闪存介质的命令,停止进行数据传输,通过此种方式,降低低功耗所带来的影响。随着闪存介质寿命的不断缩短,门限值也会随时进行调整。通道压制技术还可以降低Flash的介质功耗,损害自身的瞬时性能,因此在实际的使用时,门限的数值设定要非常谨慎。
综合以上功耗设计方法,在EDA中对固态硬盘进行仿真,得到实验数据和指标如表3所示。
表3 实验数据和指标
主要参数 | 规格 |
主机接口 | PCIe |
Flash通道 | 8+1 |
ECC | LDPC |
读 | 500K |
写 | 500K |
Active Power | <2.5W |
结果显示,采用多种低功耗设计方法的固态硬盘主控功耗设计,通过与Flash介质的配合,可以更好的控制住动态功耗与峰值功耗带来的影响。
结束语:
针对固态硬盘和主控低功耗进行设计和研究后,提出了关于固态硬盘的低功耗设计方法。通过实验得到,在以上的低功耗设计方法中,可以实现固态硬盘的功耗降低,在进行固态硬盘的设计时可以显著降低盘片的动态损耗,具有良好的实用价值。
参考文献:
[1]李炜. 固态硬盘及其主控的低功耗设计方法研究[J]. 智能物联技术,2019,51(1):18-21,33.
[2]高聪明,石亮,刘凯,等. 闪存固态硬盘系统结构与技术[J]. 计算机研究与发展,2021,58(7):1518-1532.
[3] 陈玉标,李建中,李英姝. SBS:基于固态盘内部并行性的R-树高效查询算法[J]. 计算机研究与发展,2020,57(11):2404-2418.
[4] 王丽娜,王强. 闪存数据管理中闪存转换层映射策略研究[J]. 中国新通信,2018,20(13):129-130.
[5]低功耗SSD控制器:X1支持可靠的3D闪存[J].世界电子元器件,2019(02):8-9.