固态硬盘和主控低功耗设计研究

(整期优先)网络出版时间:2022-09-21
/ 2

固态硬盘和主控低功耗设计研究

许智鑫

深圳市硅格半导体有限公司  深圳   518000

摘要:固态硬盘功耗会引起设备加热导致耗电上升,持续的高温会造成介质颗粒的可靠性受到影响。对固态硬盘进行低功耗设计,让硬盘可以支撑更长的待机时间,同时降低成本,提高可靠性与使用寿命。本文通过对固态硬盘和主控低功耗进行设计研究后,得出采用有效的低功耗方法可以有效降低固态硬盘的消耗。

关键词:固态硬盘;结构;低功耗;变频

    随着新型存储介质技术的开发,闪存的工艺得到了不断的提升。固态硬盘的成本降低,在数据中心、存储系统的开发以及日常的电子产品消耗中得到了广泛应用。固态硬盘分为消费级应用和企业级应用两种应用方式,在消费级领域,固态硬盘主要以便携式移动硬盘、电脑、手机等移动存储的方式出现;在企业级应用领域中,固态硬盘主要以PCIe接口、SAS存储盘的方式出现。固态硬盘的功耗关系到产品的竞争力,在便携式移动设备中,固态硬盘自身的高功耗会缩短待机时间,在企业级应用中,固态硬盘大多应用于数据中心,在数据中心有上百块固态硬盘,过高的功耗会让数据中心的整体发热量加剧,增加企业运营成本。过高的环境会影响闪存介质的使用寿命,继而影响整个数据中心的安全运行。因此,对固态硬盘进行主控低功耗设计,对于企业的稳定运行具有十分重要的意义。

  1. 固态硬盘基本架构

    图1为一种典型的固态硬盘架构,从逻辑层面分析,一个完整的固态硬盘包括主机接口、缓存、固态盘处理以及闪存四大模块。

图1 固体硬盘架构

主机接口主要负责固态硬盘与主机系统之间的数据通信,以SATA通信接口为主流,以AHCI协议为常见的接口协议,通过特定的接头协议,可以实现对固态硬盘的高效访问。

缓存模块主要用于管理固态硬盘的空间,通过缓存空间实现主机与固态闪存之间的数据通信,提高固态硬盘读写功能的同时还可以减少对闪存芯片的频繁读写,有助于提高硬盘的使用寿命。

固态盘处理模块作为重要的固态盘软件层,可以实现地址映射、垃圾回收等功能。

闪存模块主要负责对数据进行物理存储,通过多个通道与控制器建立缓存通道,严格按照通道、芯片、晶片、平面的顺序进行划分。

  1. 固态硬盘主控的低功耗设计
    1. 低功耗模式

对于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.