专利名称:固态硬盘响应主机读写操作请求的方法、设备及系统的制作方法
技术领域:
本发明涉及存储技术领域,特别涉及一种固态硬盘响应主机读写操作请求的方 法、设备及系统。
背景技术:
固态硬盘(SSD,Solid State Disk),是由控制单元和固态存储单元(DRAM或 Flash芯片)组成的硬盘,其接口规范、功能、使用方法、产品外形和尺寸等均与普通硬盘相 同。固态硬盘没有普通硬盘的机械结构,因此具有低功耗、无噪声、抗震动、低热量和传输速 度快等优点。SSD采用固态存储单元芯片组成存储阵列。单片固态存储单元的读写效率非常低, 整个SSD的高性能依赖于多片固态存储单元可以并发操作。固态存储单元并发数越多,SSD 读写性能就越高。除去命令解析、地址映射和数据传输等开销,可以近似认为整个SSD的性 能就是单片固态存储单元的性能与并发数的乘积。通常,数据在固态存储单元存储阵列中的存放依据固定地址映射关系,该地址映 射是指逻辑地址对物理地址的映射。数据在SSD中是以物理地址进行存放。而主机对SSD 进行读写操作时,主机发送读写操作请求至SSD,读写操作请求中携带数据的逻辑地址。SSD 收到主机发送的读写操作请求后,将数据的逻辑地址根据固定地址映射关系解析为物理地 址,进而查找数据的位置。因此,任一时间段,固态存储单元并发数并不是由SSD控制单元简单决定的,而是 由主机对SSD访问的逻辑地址的分布决定的。主机读写操作请求中的逻辑地址对应的物理地址越分散,固态存储单元并发数就 越多,整个SSD体现出的瞬时性能就越高,相应的,SSD的瞬时功耗(最大功耗)也会更高。 类似地,主机读写操作请求中的逻辑地址对应的物理地址相对集中,或主机读写操作请求 越少,固态存储单元并发数也会越少,整个SSD体现出的瞬时性能也很差,SSD的瞬时功耗 也会较低。SSD运行过程中,固态存储单元并发数总是随主机的访问量和逻辑地址的分布而 改变。固态存储单元并发数有时多有时少,随之,SSD的瞬时功耗也会有较大的波动,瞬时 功耗太大,将导致SSD可靠性方面的问题。目前,现有技术中还没有限制SSD最大功耗的方法。
发明内容
本发明实施例提供一种SSD响应主机读写操作请求的方法、设备及系统,能够限 制SSD的最大功耗,从而保证SSD的可靠性。本发明实施例提供一种SSD响应主机读写操作请求的方法,包括判断固态存储 单元的并发数是否不小于预先设定值;当不小于预先设定值时,则暂停响应主机的读写操 作请求,保存所述主机的读写操作请求;直到所述并发数小于所述预先设定值时,再响应保 存的所述主机的读写操作请求。
本发明实施例还提供一种SSD,包括判断单元和执行单元;所述判断单元,用于 判断固态存储单元的并发数是否不小于预先设定值;所述执行单元,当所述判断单元的判 断结果为固态存储单元的并发数不小于预先设定值时,用于暂停响应主机的读写操作请 求,保存所述主机的读写操作请求;当所述判断单元的判断结果为固态存储单元的并发数 小于所述预先设定值时,用于响应所述主机的读写操作请求。本发明实施例还提供一种SSD响应主机读写操作请求的系统,包括以上所述的 固态硬盘和主机;所述主机,用于向所述固态硬盘发送读写操作请求。以上技术方案,本发明实施例提供的SSD响应主机读写操作请求的方法通过监测 固态存储单元的并发数进而控制对主机的读写操作请求的响应,实现对SSD最大功耗的限 制。当固态存储单元的并发数不小于预先设定值时,暂停对主机读写操作请求的响应,从而 限制SSD的最大功耗。这样可以保证SSD的可靠性。
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的 附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领 域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附 图。图1是本发明方法实施例流程图;图2是本发明SSD内部示意图;图3是固态存储单元并发数相对于时间的示意图;图4是本发明设备实施例流程图;图5是本发明设备另一实施例流程图;图6是本发明系统实施例示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。首先对本发明实施例实现一种SSD响应主机读写操作请求的方法进行说明,包 括判断固态存储单元的并发数是否不小于预先设定值;当不小于预先设定值时,则暂停 响应主机的读写操作请求,保存所述主机的读写操作请求;直到所述并发数小于所述预先 设定值时,再响应保存的所述主机的读写操作请求;当小于预先设定值时,则继续响应主机 的读写操作请求。方法实施例参见图1,该图为本发明方法实施例流程图。SlOl 判断SSD中固态存储单元的并发数是否不小于预先设定值;当不小于预先 设定值时,执行S102。S102 暂停响应主机的读写操作请求,保存所述主机的读写操作请求。上述响应是指在执行完读写请求以后,向主机反馈执行结束的结果。当固态存储单元的并发数小于预先设定值时还可以执行S103。S103 响应上述主机的读写操作请求。为了本领域技术人员能够更好地理解和实施本发明实施例,下面结合图2对本发 明实施例做详细介绍。参见图2,该图为SSD内部示意图。SSD包括控制单元201和多片固态存储单元202组成的存储阵列。控制单元202 控制固态存储单元202并发操作,从而实现SSD的高性能读写。如图2所示,正在操作的固态存储单元芯片用实现标注,处于空闲状态的固态存 储单元芯片用虚线标注。固态存储单元空闲时的功耗远远低于工作时(操作)的功耗。同一时刻操作的固 态存储单元的片数越多,功耗则越大。图3为固态存储单元并发数相对于时间的示意图,纵轴代表固态存储单元的并发 数,横纵代表时间。曲线301是现有技术中固态存储单元并发数相对于时间的轨迹。曲线302是本发明实施例中固态存储单元并发数相对于时间的轨迹。虚线303是并发数的预定设定值。从曲线301可以看出,固态存储单元并发数会出现一个一个的尖峰,如图3中的虚 线圆圈所示,这些尖峰超过了虚线303。这样会使整个SSD的功耗很大,将破坏SSD的工作 稳定性及可靠性。本发明实施例是将SSD在固态存储单元并发数的尖峰时刻对主机的读写操作请 求顺延到下个固态存储单元并发数少的时刻去执行。需要说明的是,所述预先设定值可以根据主机的读写操作请求的频率和数据分布 进行调整。不同应用环境,对SSD性能和功耗的要求不同。因此,最大并发数的预先设定值 并不一定是一个绝对的值,是可以根据主机的读写情况进行修正的。主机的读写操作请求有时多有时少。数据分布是指主机的读写操作请求要访问的数据位于SSD的固态存储单元的哪 些物理位置,物理地址分布越分散,对应的固态存储单元的并发数就越高。这是由主机读写 操作请求的逻辑地址与实际物理地址之间的映射关系决定,不同的SSD,映射关系不同。SSD响应主机的读写操作请求时具体可以为1、如果主机读写操作请求的频率低,不会让固态存储单元并发数很高,因此SSD 峰值功耗也不高,这种情况下就不会出现SSD暂缓响应主机读写操作请求的情形。2、如果主机读写操作请求的频率时高时低,且数据分布分散,固态存储单元并发 数改变就会比较大,此时SSD的功耗波动也很大,这种情况下限制峰值功耗是最有意义的。3、如果主机读写操作请求的数据分布比较集中,无论访问频度如何,受限于固态 存储单元物理特性,固态存储单元并发数必然不高,峰值功耗也不高,这种情况下就不会出 现SSD暂缓响应主机读写操作请求的情形。4、如果主机读写操作请求的频率一直很高,且数据分布分散,那么因限制峰值功 耗而带来的并发数降低,就是SSD的峰值性能了。
以上几种情况的主机读写操作请求引起的SSD的功耗,只要限制固态存储单元的 并发数即可实现。下面详细介绍如何判断SSD中固态存储单元的并发数是否不小于预先设定值。判断SSD中固态存储单元的并发数是否不小于预先设定值具体为监测并发计数器的数值是否不小于预先设定值,所述并发计数器记录SSD中固态 存储单元的并发数,当增加一片固态存储单元操作时,所述并发计数器加1 ;当有一片固态 存储单元操作完成时,所述并发计数器减1。本发明实施例提供的SSD响应主机读写操作请求的方法通过监测固态存储单元 的并发数进而控制对主机的读写操作请求的响应,实现对SSD最大功耗的限制。当固态存 储单元的并发数不小于预先设定值时,暂停对主机读写操作请求的响应,从而限制SSD的 最大功耗。这样可以保证SSD的可靠性。本发明实施例还提供一种SSD。SSD 实施例参见图4,该图为本发明SSD实施例结构图。本实施例提供的SSD包括判断单元401和执行单元402。所述判断单元401,用于判断SSD中固态存储单元的并发数是否不小于预先设定值。所述执行单元402,当所述判断单元401的判断结果为固态存储单元的并发数不 小于预先设定值时,用于暂停响应主机的读写操作请求,保存所述主机的读写操作请求;当 所述判断单元401的判断结果为固态存储单元的并发数小于所述预先设定值时,用于响应 主机的读写操作请求。本发明实施例提供的SSD通过监测固态存储单元的并发数进而控制对主机的读 写操作请求的响应,实现对SSD最大功耗的限制。当判断单元401判断固态存储单元的并 发数不小于预先设定值时,执行单元402暂停对主机读写操作请求的响应,从而限制SSD的 最大功耗。这样可以保证SSD的可靠性。本实施例中的SSD还可以包括预先设定值调整单元403,用于根据主机的读写操 作请求的频率和数据分布调整所述预先设定值。不同应用环境,对SSD性能和功耗的要求不同。因此,最大并发数的预先设定值并 不是一个绝对的值,可以根据主机的读写情况进行调整,以使SSD适应地响应主机的读写 请求。SSD另一实施例参见图5,该图为本发明SSD另一实施例结构图。该实施例包括并发计数单元501,用于记录当前固态存储单元的并发数,当增加一片固态存储单 元操作时,所述并发数加1 ;当有一片固态存储单元操作完成时,所述并发数减1。判断单元502,用于判断SSD中固态存储单元的并发数是否不小于预先设定值。执行单元503,当所述判断单元502的判断结果为固态存储单元的并发数不小于 预先设定值时,用于暂停响应主机的读写操作请求,保存所述主机的读写操作请求;当所述 判断单元502的判断结果为固态存储单元的并发数小于所述预先设定值时,用于响应主机的读写操作请求。本发明实施例还提供一种固态硬盘响应主机读写操作请求的系统。系统实施例一参见图6,该图为本发明系统第一实施例结构图。本实施例提供的固态硬盘响应主机读写操作请求的系统主机601和SSD602。所述主机601,用于向所述SSD602发送读写操作请求。所述SSD602,用于判断SSD中固态存储单元的并发数是否不小于预先设定值;当 不小于预先设定值时,则暂停响应主机601的读写操作请求,保存所述主机601的读写操作 请求;当小于预先设定值时,则继续响应主机601的读写操作请求。本发明实施例提供的固态硬盘响应主机读写操作请求的系统通过监测固态存储 单元的并发数进而控制对主机的读写操作请求的响应,实现对SSD最大功耗的限制。当固 态存储单元的并发数不小于预先设定值时,暂停对主机读写操作请求的响应,从而限制SSD 的最大功耗。这样可以保证SSD的可靠性。所述SSD602还用于根据主机601的读写操作操作请求和数据分布调整所述预先 设定值。不同应用环境,对SSD性能和功耗的要求不同。因此,最大并发数的预先设定值并 不是一个绝对的值。需要说明的是,本发明实施例提供的固态硬盘响应主机读写操作请求的方法、设 备及系统,SSD执行主机的读写操作请求的具体步骤与方式与现有技术相同,包括命令解 析、地址映射和数据传输等。在此不再赘述。本领域普通技术人员可以理解实现上述方法实施方式中的全部或部分步骤是可 以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中, 该程序在执行时,可以包括前述的通信方法各个实施方式的内容。这里所称得的存储介质, 如ROM/RAM、磁碟、光盘等。综上所述,本发明实施例所提供的一种固态硬盘响应主机读写操作请求的方法, 本发明实施例提供的SSD响应主机读写操作请求的方法通过监测固态存储单元的并发数 进而控制对主机的读写操作请求的响应,实现对SSD最大功耗的限制。当固态存储单元的 并发数不小于预先设定值时,暂停对主机读写操作请求的响应,从而限制SSD的最大功耗。 这样可以保证SSD的可靠性。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以 通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中, 该程序在执行时,包括如下步骤判断固态存储单元的并发数是否不小于预先设定值;当 不小于预先设定值时,则暂停响应主机的读写操作请求,保存所述主机的读写操作请求;直 到所述并发数小于所述预先设定值时,再响应保存的所述主机的读写操作请求;当小于预 先设定值时,则继续响应主机的读写操作请求。
权利要求
1.一种固态硬盘响应主机读写操作请求的方法,其特征在于,包括 判断固态存储单元的并发数是否不小于预先设定值;当不小于所述预先设定值时,则暂停响应主机的读写操作请求,保存所述主机的读写 操作请求;当小于所述预先设定值时,响应所述主机的读写操作请求。
2.根据权利要求1所述的固态硬盘响应主机读写操作请求的方法,其特征在于,还包括记录当前固态存储单元的并发数,当增加一片固态存储单元操作时,所述 并发数加1 ;当有一片固态存储单元操作完成时,所述并发数减1。
3.根据权利要求1所述的固态硬盘响应主机读写操作请求的方法,其特征在于,所述 方法还包括根据主机的读写操作请求的频率和数据分布调整所述预先设定值。
4.一种固态硬盘,其特征在于,包括判断单元和执行单元;所述判断单元,用于判断固态存储单元的并发数是否不小于预先设定值; 所述执行单元,当所述判断单元的判断结果为固态存储单元的并发数不小于预先设定 值时,用于暂停响应主机的读写操作请求,保存所述主机的读写操作请求;当所述判断单元 的判断结果为固态存储单元的并发数小于所述预先设定值时,用于响应所述主机的读写操 作请求。
5.根据权利要求4所述的固态硬盘,其特征在于,还包括;并发计数单元,用于记录当前固态存储单元的并发数,当增加一片固态存储单元操作 时,所述并发数加1 ;当有一片固态存储单元操作完成时,所述并发数减1。
6.根据权利要求4所述的固态硬盘,其特征在于,所述SSD还包括预先设定值调整单 元,用于根据主机的读写操作请求的频率和数据分布调整所述预先设定值。
7.一种固态硬盘响应主机读写操作请求的系统,其特征在于,包括主机和权利要求 4-6任一所述的固态硬盘;所述主机,用于向所述固态硬盘发送读写操作请求。
全文摘要
本发明实施例提供一种固态硬盘响应主机读写操作请求的方法、设备及系统,所述方法包括判断固态存储单元的并发数是否不小于预先设定值;当不小于预先设定值时,则暂停响应主机的读写操作请求,保存所述主机的读写操作请求;当小于预先设定值时,则响应上述主机的读写操作请求。本发明提供的方案当固态存储单元的并发数不小于预先设定值时,暂停对主机读写操作请求的响应,从而限制SSD的最大功耗。这样可以保证SSD的可靠性。
文档编号G06F3/06GK102063263SQ200910223380
公开日2011年5月18日 申请日期2009年11月18日 优先权日2009年11月18日
发明者张琴, 李欣, 杨继涛, 柯乔 申请人:成都市华为赛门铁克科技有限公司