CN106293503B9 - 磁盘装置及控制方法 - Google Patents

磁盘装置及控制方法 Download PDF

Info

Publication number
CN106293503B9
CN106293503B9 CN201510548694.7A CN201510548694A CN106293503B9 CN 106293503 B9 CN106293503 B9 CN 106293503B9 CN 201510548694 A CN201510548694 A CN 201510548694A CN 106293503 B9 CN106293503 B9 CN 106293503B9
Authority
CN
China
Prior art keywords
mentioned
write
data
capacity
written
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510548694.7A
Other languages
English (en)
Other versions
CN106293503A (zh
CN106293503B (zh
Inventor
川上和泉
井上裕章
水野晶夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Publication of CN106293503A publication Critical patent/CN106293503A/zh
Application granted granted Critical
Publication of CN106293503B publication Critical patent/CN106293503B/zh
Publication of CN106293503B9 publication Critical patent/CN106293503B9/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/068Hybrid storage device

Abstract

本发明提供磁盘装置以及控制方法,具备:具有第1区域及第2区域的盘;对上述盘写入写入数据的头;将从外部输入的上述写入数据存储到第1容量为止的缓冲器;控制器,其取得基于由上述头向上述第1区域转移保存上述写入数据的时间的第1处理量和通过从上述缓冲器向上述第1区域转移保存上述写入数据而改善的第2处理量,比较上述第1处理量和上述第2处理量,基于上述第1处理量和上述第2处理量的比较结果,判断是否将上述写入数据向上述第1区域转移保存。

Description

磁盘装置及控制方法
本申请以美国临时专利申请62/183,290号(申请日:2015年6月23日) 作为基础申请,享受优先权。本申请通过参照该基础申请,包括基础申请的 全部内容。
技术领域
本发明的实施方式涉及磁盘装置及控制方法。
背景技术
近年,磁盘装置具备:在未预料地主电源产生异常的情况下,通过将 写入数据转移保存(或高速缓存)到非易失性存储器等,保证未写入盘的写 入数据(未写入数据)的断电保护(PLP)功能。PLP功能包括:在主电源产生了 异常的情况下,将高速缓存于易失性存储器等的未写入数据和该未写入数 据的管理信息向非易失性存储器等转移保存的功能。这样的动作有时也称 为PLP转移保存动作。磁盘装置在主电源恢复的情况下,基于管理信息,可 以将通过PLP转移保存动作而转移保存到非易失性存储器等的未写入数据 恢复到易失性存储器。
另外,磁盘装置通过由PLP功能将写入数据转移保存到非易失性存储器 等,在通常的写入动作时,可以将来自主机系统的写入指令排队。即,磁盘 装置通过PLP功能,即使在写入高速缓存无效的状态下,在主电源产生异常 的情况下也可以保证未写入数据,且像写入高速缓存有效的情况那样地, 可以高效向盘写入写入数据。磁盘装置能够相应于能由PLP功能保证的数据 容量(PLP容量),增加能对写入指令进行排队的容量(排队量)。该PLP容量与 非易失性存储器等的容量相关。而且,通过在盘设置高速缓存区域、向该高 速缓存区域转移保存写入数据,可以虚拟地增加PLP容量。
发明内容
本发明的实施方式提供:可防止高速缓存写入数据的情况等的写入性 能降低的磁盘装置及其控制方法。
本实施方式的磁盘装置具备:具有第1区域及第2区域的盘;对上述盘 写入写入数据的头;将从外部输入的上述写入数据存储到第1容量为止的缓 冲器;以及控制器,其取得基于由上述头向上述第1区域转移保存上述写入 数据的时间的第1处理量和通过从上述缓冲器向上述第1区域转移保存上述 写入数据而改善的第2处理量,比较上述第1处理量和上述第2处理量,基于 上述第1处理量与上述第2处理量的比较结果,判断是否将上述写入数据向 上述第1区域转移保存。
附图说明
图1是表示第1实施方式所涉及的磁盘装置的构成的方框图。
图2是表示磁盘装置中写入数据的转移保存动作的一例的示意图。
图3是表示写入数据的转移保存动作的处理时间与IOPS损失量的关系 的图表的一例的示图。
图4是表示排队量和IOPS的关系的图表的一例的示图。
图5A是表示向介质高速缓存区域的写入数据的转移保存动作的判断的 一例的示图。
图5B是表示向介质高速缓存区域的写入数据的转移保存动作的判断的 一例的示图。
图6是表示第1实施方式的磁盘装置的写入动作的处理的一例的流程图 。
图7是表示变形例的磁盘装置的写入动作的处理的一例的流程图。
具体实施方式
以下,参照图面说明实施方式。
(第1实施方式)
图1是表示第1实施方式相关的磁盘装置1的构成的方框图。
磁盘装置1具备后述的头盘组件(head-disk assembly:HDA)、驱动器 IC20、头放大器集成电路(以下称为头放大器IC)30、易失性存储器70、非 易失性存储器80、缓冲存储器(缓冲器)90、包括单芯片的集成电路的系统 控制器130。另外,磁盘装置1与主机系统(主机)100连接。
HDA具备磁盘(以下称为盘)10、主轴马达(SPM)12、搭载头15的臂13、 音圈马达(VCM)14。盘10包括在外侧设置的介质高速缓存区域112(第1区域) 和与介质高速缓存区域112相比靠内侧设置的用户区域114(第2区域)。盘10 通过主轴马达12旋转。臂13及VCM14构成致动器。致动器通过VCM14的驱动, 将在臂13搭载的头15移动控制到盘10上的指定的位置为止。盘10及头15也 可以设置2个以上的数目。
头15以滑块为本体,具备在该滑块安装的写入头15W及读取头15R。读取 头15R读取在盘10上的数据磁道记录的数据。写入头15W在盘10上写入数据。
驱动器IC20按照系统控制器130(详细地说是后述的MPU60)的控制,控 制SPM12及VCM14的驱动。驱动器IC20包括例如备用电源21。另外,备用电源 21的一部分例如整流电路也可以设置在驱动器IC20的外部。
备用电源21在从磁盘装置1的电源(以下称为主电源)供给的电力断开 或降低的情况(主电源产生异常的情况)下,供给维持磁盘装置1的必要最小 限度的动作所需的电力。此时,备用电源21至少向系统控制器130供给电力。 备用电源21为了生成供给电力,利用SPM12的反电动势。另外,备用电源21 为了生成供给电力,也可以采用由主电源充电的电容器。
头放大器IC30具有读取放大器及写入驱动器。读取放大器放大由读取 头15R读取的读取信号,向读取/写入(R/W)信道40传送。另一方面,写入驱 动器将与从R/W信道40输出的写入数据相应的写入电流向写入头15W传送。
易失性存储器70是电力供给断开时保存数据损失的半导体存储器。易 失性存储器70存储磁盘装置1的各部分的处理所需的数据等。易失性存储器 70是例如SDRAM(Synchronous Dynamic Random Access Memory:同步动态 随机存取存储器)。
非易失性存储器80是即使电力供给断开也保持保存数据的半导体存储 器。非易失性存储器80例如是闪速ROM(Flash Read Only Memory:FROM)。
缓冲存储器90是暂时地保持在盘10与主机系统100之间收发的数据等 的半导体存储器。另外,缓冲存储器90也可以与易失性存储器70一体配置。 缓冲存储器90是例如DRAM(Dynamic Random Access Memory:动态随机存取 存储器)、SDRAM、FeRAM(Ferroelectric Random Access memory:铁电随 机存取存储器)及MRAM(Magnetores istive Random Access Memory:磁阻随 机存取存储器)等。
系统控制器130例如用多个元件集成在单一芯片的称为芯片上系统 (SoC)的大规模集成电路(LSI)实现。系统控制器130包括R/W信道40、硬盘控 制器(HDC)(控制器)50、微处理器(MPU)60。
R/W信道40执行读取数据及写入数据的信号处理。
HDC50相应于来自MPU60的指示,控制主机系统100和R/W信道40之间的 数据传送。
MPU60是控制磁盘装置1的各部分的主控制器。MPU60经由驱动器IC20, 控制VCM14,执行进行头15的定位的伺服控制。另外,MPU60控制对盘10的写 入数据的写入动作,并执行选择从主机系统100传送的写入数据的保存目的 地的控制。而且,MPU60在主电源产生异常的情况下,接受由备用电源21暂 时地供给的电力,执行必要的最小限度的动作。这里,必要的最小限度的动 作例如包括:使头15退避到离开盘10的位置的动作和/或基于PLP功能的数 据的暂时写入(转移保存或高速缓存)动作。MPU60在主电源恢复的情况下, 执行数据的恢复动作。
MPU60包括缓冲控制部61、指令控制部62、存储器63。另外,MPU60在固 件上执行这些各部分的处理。
缓冲控制部61执行与缓冲存储器90之间的数据的收发相关的控制。缓 冲控制部61将例如从盘10读取的读取数据和/或向盘10写入的写入数据等 暂时地存储在缓冲存储器90。
指令控制部62执行与从主机系统100接收的写入指令或读取指令相关 的控制。
存储器63是易失性存储器,例如静态RAM(SRAM)或动态RAM(DRAM)等。 控制程序的至少一部分在例如磁盘装置1的主电源接通的情况下,从盘10 加载到存储器63的存储区域的一部分。
上述那样构成的磁盘装置1具备下述功能:在接受从主机系统100传送 的写入数据的时刻,即使实际上写入处理未结束,也向主机系统100通知写 入指令对应的写入处理结束,管理实际上写入处理未结束的写入数据(以下 称为未写入数据)。这样的管理未写入数据的功能例如有时也称为持续写入 高速缓存(PWC:Persistent Write Cache)功能。磁盘装置1通过管理未写 入数据的功能,在从主电源供给的电力(以下称为供给电力)未预料地断开 或降低的情况(以下,称为主电源产生异常的情况)下,可以将缓冲器例如 缓冲存储器90中存储的未写入数据转移保存到非易失性的记录介质例如非 易失性存储器80。例如,在写入数据传送中主电源产生异常的情况下,磁盘 装置1使用由断电保护(Power Loss Protection:PLP)功能供给的电力,将 处于缓冲存储器90的未写入数据向非易失性存储器80转移保存。磁盘装置1 在主电源恢复时,可以将转移保存到非易失性存储器80的未写入数据恢复 到缓冲存储器90。这样,磁盘装置1在未预料地主电源产生异常的情况下, 通过PLP功能,可以保证未写入数据。以下,将磁盘装置1中可通过PLP功能 保证的未写入数据的容量称为PLP容量。
而且,磁盘装置1在写入动作时,使用管理该未写入数据的功能(例如, PWC功能),通过向介质高速缓存区域112转移保存写入数据,可以执行高速 缓存处理。此时,磁盘装置1在写入动作时,可以向介质高速缓存区域112 转移保存未写入数据,因此可以虚拟地增加PLP容量。PLP容量,按可向介质 高速缓存区域112转移保存的写入数据的大小的量,虚拟地增加。
(磁盘的转移保存动作)
以下,说明磁盘装置1中写入动作时的写入数据的转移保存动作。
图2是表示磁盘装置1中写入数据的转移保存动作的一例的示意图。图2 中,写入指令WC1~WCn+1表示来自主机100的写入指令。用户数据UD1~ UDn+1分别表示写入指令WC1~WCn+1对应的写入数据。用户数据管理信息 MI1~MIn+1分别表示与写入指令WC1~WCn+1分别对应的用户数据UD1~ UDn+1的管理信息。例如,用户数据管理信息MI1~MIn+1包括与用户数据 UD1~UDn+1分别对应的逻辑块地址(LBA)及数据块数等。另外,用户数据管 理信息MI1~MIn+1也在将转移保存到非易失性存储器80的写入指令WC1~ WCn+1及用户数据UD1~UDn+1恢复到缓冲存储器90时使用。应答信号RES表 示对来自主机100的请求的应答信号。指示信号S1表示从MPU60对缓冲存储 器90的指示信号。
这里,写入指令WC1~WCn+1、用户数据UD1~UDn+1及用户数据管理信 息MI1~MIn+1分别是从主机100传送的顺序从1到n+1为止而连续的值。以 下,也有时将向介质高速缓存区域112转移保存的数据例如写入指令WC1~ WCn+1、用户数据UD1~UDn+1及用户数据管理信息MI1~MIn+1等总称为写入 数据。
图2表示写入指令WC1~WCn及用户数据管理信息MI1~MIn分别在CPU60 的存储器63存储、用户数据UD1~UDn在缓冲存储器90存储。而且,图2中, 写入数据(写入指令Wn、用户数据管理信息MIn及用户数据UDn)的接下来的 写入数据(写入指令WCn+1、用户数据管理信息MIn+1及用户数据UDn+1)从主 机100传送。
另外,图2用虚线表示可向非易失性存储器80转移保存的写入数据(写 入指令WC1~WCn、用户数据管理信息MI1~Mn及用户数据UD1~UDn)。即,非 易失性存储器80的写入数据的大小表示可向非易失性存储器80转移保存的 写入数据的大小。例如,MPU60为了在主电源产生异常的情况下可保证写入 数据,保持可向非易失存储器80转移保存的大小的写入指令WC1~WCn和用 户数据管理信息MI1~MIn。另外,缓冲存储器90保持与可向非易失性存储器 80转移保存的大小同等的用户数据(UD1~UDn)。
MPU60从主机100接受了写入指令WC1~WCn的情况下,将写入指令WC1~ WCn按从主机100传送的顺序登记到等待行列(队列)。
另外,MPU60也将用户数据管理信息MI1~MIn按从主机100传送的顺序 存储到存储器63。
而且,MPU60将接受的写入指令WC1~WCn对应的用户数据UD1~UDn按从 主机100传送的顺序暂时地保持在缓冲存储器90。
MPU60在写入指令(写入数据)排队(写入)的个数(队列数)达到写入指 令可排队的容量(排队量)的情况下,按可高效地写入写入数据的顺序处理 写入指令。这里,排队量例如根据缓冲存储器90的空闲容量和/或可向非易 失性存储器80转移保存的写入数据的大小等而变化。
MPU60通过处理从主机100接受的写入指令WC1~WCn并向介质高速缓存 区域112转移保存写入数据,增大缓冲存储器90的空闲容量。此时,排队量 虚拟地增加,因此,MPU60可以进一步从主机100接受接下来的写入指令 WCn+1(用户数据UDn+1)。
MPU60在向介质高速缓存区域112转移保存写入数据的情况下,无法向 用户区域114写入写入数据。从而,MPU60在处理写入指令时,判断是向介 质高速缓存区域112转移保存写入数据还是向用户区域114写入写入数据。 该情况下,MPU60基于写入动作的处理性能例如称为Input Output Per Second(IOPS,每秒输入输出)的值,判断是否向介质高速缓存区域112转移 保存写入数据。这里,IOPS是1秒间可读取/写入处理的次数(指令数)。另外, IOPS的值根据读取动作、写入动作、顺序存取及随机存取等的处理动作的 条件和/或HDD产品而变化。
MPU60判断是否向介质高速缓存区域112转移保存写入数据时,参照几 个图表,取得因对介质高速缓存区域112的写入数据的转移保存动作而损失 的写入动作的IOPS的量(IOPS损失量或第1处理量)和因排队量即缓冲存储 器90的空闲容量增加而改善的写入动作的IOPS的量(IOPS改善量或第2处理 量)。MPU60比较取得的IOPS损失量和IOPS改善量。MPU60根据该比较结果,在 IOPS改善量比IOPS损失量大的情况下,向介质高速缓存区域112转移保存写 入数据,将转移保存到该介质高速缓存区域112的写入数据以预定的定时写 入用户区域114。根据比较结果,在IOPS改善量比IOPS损失量小的情况下, MPU60作为通常的写入动作,向用户区域114写入写入数据。另外,图表也可 以在存储介质例如盘10的系统区域、易失性存储器70或非易失性存储器80 等记录。
参照图3及图4,说明图表的一例。
图3是表示写入数据的转移保存动作的处理时间和IOPS损失量的关系 的图表的一例示图。图3中,纵轴表示因数据(写入数据)的转移保存动作而 损失的写入动作的IOPS的量(IOPS损失量),横轴表示对介质高速缓存区域 112的写入数据的转移保存动作的处理时间。实线L31表示IOPS为300(次数 /s)的磁盘装置1的写入数据的转移保存动作的处理时间和IOPS损失量的关 系。点P31及点P32分别表示实线L31上的一点。虚线L32表示IOPS为250(次数 /s)的磁盘装置1的写入数据的转移保存动作的处理时间和IOPS损失量的关 系。单点划线L33表示IOPS为200(次数/s)的磁盘装置的数据的转移保存动 作的处理时间和IOPS损失量的关系。如图3所示,磁盘装置1中,与IOPS相 关地,写入数据的转移保存动作的处理时间和IOPS损失量的关系变化。
图4是表示排队量和IOPS的关系的图表的一例示图。图4中,纵轴表示 IOPS,横轴表示排队量。实线L41表示排队量和IOPS的关系。点P41、点P42、 点P43及点P44分别表示实线L41上的一点。
MPU60例如将图3所示图表(第1图表)及图4所示图表(第2图表)保持在 存储介质例如盘10的系统区域、易失性存储器70或非易失性存储器80等。
MPU60例如参照图3及图4分别所示的第1图表及第2图表,取得IOPS损失 量和IOPS改善量,比较这些值,根据比较结果,判断是否向介质高速缓存 区域112转移保存写入数据。
(写入数据的转移保存动作的判断的一例)
参照图5A及图5B,说明对介质高速缓存区域112的写入数据的转移保存 动作的一例。图5A及图5B分别表示对介质高速缓存区域112的写入数据的转 移保存动作的判断的一例。图5A及图5B中,磁盘装置1的IOPS设为300(次数 /s)。从而,图5A及图5B中,转移保存动作的处理时间和IOPS损失量的关系 遵循图3的实线L31。
参照图5A,说明不执行写入数据的转移保存动作时的一例。图5A中,磁 盘装置1中的写入数据的转移保存动作的处理时间为50(ms),基于此时的写 入数据的转移保存动作的排队量的理论增量为100(个),当前的排队量为 450(个)。另外,图5A中,MPU60可从主机100接受的写入指令的排队量设为 最大500(个)。
在判断是否向介质高速缓存区域112转移保存写入数据的情况下, MPU60参照图3所示图表和写入数据的转移保存动作的处理时间,取得IOPS 损失量。在图5A所示情况下,如图3的点P31所示,写入数据的转移保存动作 的处理时间为50(ms),IOPS损失量为15(次数/s)。
接着,MPU60参照图4所示图表和当前的排队量和向介质高速缓存区域 112转移保存了写入数据时的排队量,取得IOPS改善量。参照图5A,由于当 前的排队量为450(个),因此如图4的点P41所示,当前的IOPS为290(次数/s) 。这里,图5A中排队量为最大500(个),因此向介质高速缓存区域112转移保 存写入数据时的排队量假想地成为500(个)。从而,如图4的点P42所示,向 介质高速缓存区域112转移保存了写入数据时的IOPS为300(次数/s)。根据 这些图4的点P41(当前的IOPS)和点P42(向介质高速缓存区域112转移保存 了写入数据时的IOPS)的差,IOPS改善量为10(次数/s)。MPU60比较IOPS损失 量15(次数/s)和IOPS改善量10(次数/s)。MPU60根据比较结果,由于IOPS改 善量比IOPS损失量小,因此不执行对介质高速缓存区域112的写入数据的转 移保存动作,作为通常的写入动作,向用户区域114写入写入数据。
参照图5B,说明执行写入数据的转移保存动作时的一例。图5B中,磁盘 装置1中的写入数据的转移保存动作的处理时间为70(ms),基于此时的写入 数据的转移保存动作的排队量的理论增量为100(个),当前的排队量为 200(个)。另外,图5B中,与图5A同样,MPU60可以从主机100接受的写入指 令的排队量设为最大500(个)。
在判断是否向介质高速缓存区域112转移保存写入数据的情况下, MPU60参照图3所示图表和写入数据的转移保存动作的处理时间,取得IOPS 损失量。在图5B所示情况下,如图3的点P32所示,写入数据的转移保存动作 的处理时间为70(ms),IOPS损失量为18(次数/s)。
接着,MPU60参照图4所示图表和当前的排队量和向介质高速缓存112 使写入数据转移保存了的情况下的排队量,取得IOPS改善量。参照图5B,当 前的排队量为200(个),因此如图4的点P43所示,当前的IOPS为200(次数/s) 。向介质高速缓存区域112转移保存了写入数据时的排队量假想地成为 300(个)。从而,如图4的点P44所示,向介质高速缓存区域112转移保存了写 入数据时的IOPS为250(次数/s)。根据这些图4的点P43(当前的IOPS)和点 P44(向介质高速缓存区域112转移保存了写入数据时的IOPS)的差,IOPS改 善量为50(次数/s)。MPU60比较IOPS损失量18(次数/s)和IOPS改善量50(次 数/s)。MPU60根据比较结果,由于IOPS改善量比IOPS损失量大,因此向介质 高速缓存区域112转移保存了写入数据后,在预定的定时向用户区域114写 入转移保存到介质高速缓存区域112的写入数据。
(磁盘装置的写入动作的处理)
接着,说明磁盘装置1的写入动作的处理。
图6是表示本实施方式的磁盘装置1的写入动作的处理的一例的流程 图。
首先,MPU60执行写入指令的排队(B601)。
MPU60判断队列数是否达到排队量(B602)。
判断为队列数未达到排队量时(B602的“否”),MPU60返回B601的处理 。判断为队列数达到排队数时(B602的“是”),MPU60判断在介质高速缓存 区域112是否有预定的大小以上的空闲区域(B603)。这里,预定的大小例如 是基于PLP容量的数据的大小。
判断为介质高速缓存区域112不存在预定的大小的空闲区域时(B603的 “否”),MPU60作为通常的写入动作,向用户区域114写入写入数据(B604) 。判断为介质高速缓存区域112存在预定的大小的空闲区域时(B603的 “是”),MPU60参照图3所示图表和对介质高速缓存区域112的写入数据的 转移保存动作的处理时间,取得IOPS损失量(B605)。
MPU60参照图4所示图表和当前的排队量和对介质高速缓存区域112进 行了转移保存动作时的排队量,取得IOPS改善量(B606)。
MPU60比较所取得的IOPS损失量和IOPS改善量(B607)。
MPU60参照B607的比较结果,判断是否对介质高速缓存区域112执行写 入数据的转移保存动作(B608)。
在对介质高速缓存区域112不执行写入数据的转移保存动作时(B608的 “否”),MPU60作为通常的写入动作,向用户区域114写入写入数据(B610), 处理结束。
对介质高速缓存区域112执行写入数据的转移保存动作时(608的 “是”),MPU60向介质高速缓存区域112转移保存写入数据(B609)。
MPU60在预定的定时向盘10的用户区域114写入在B609转移保存了的写 入数据(B610),处理结束。
根据本实施方式,磁盘装置1比较向介质高速缓存区域112转移保存了 写入数据时的IOPS损失量和通过向介质高速缓存区域112转移保存写入数 据而增加的IOPS改善量,可以判断是否向介质高速缓存区域112转移保存数 据。即,磁盘装置1能仅仅在写入性能提高时执行对介质高速缓存区域112 的转移保存动作。结果,磁盘装置1使用管理未写入数据的功能,可以防止 向介质高速缓存区域112高速缓存写入数据时的写入性能的降低。
接着说明第1实施方式所涉及的磁盘装置的变形例。变形例中,对与前 述第1实施方式同一部分附上同一参照符号,将其详细说明省略。
(变形例)
变形例所涉及的磁盘装置1具有与第1实施方式大致同等的构成,但是 相应于介质高速缓存区域112的可写入空闲区域的状况而选择写入动作。
有时在介质高速缓存区域112部分地存在可写入区域。例如,有时向介 质高速缓存区域112转移保存后,由写入指令指定的对LBA的写入未结束, 写入数据部分地残留在介质高速缓存区域112。
向可部分地写入的介质高速缓存区域112转移保存写入数据的情况下, MPU60相应于介质高速缓存区域112的空闲区域的状况,可以选择写入性能 佳的写入动作来执行。
图7是表示变形例的磁盘装置1的写入动作的处理的一例的流程图。图7 的流程图中,关于与图6的流程图同等的处理附上同一参照符号,将其详细 说明省略。
在判断为处理预定的处理块、在介质高速缓存区域112存在预定的大小 的空闲区域时(B603的“是”),MPU60检测介质高速缓存区域112的空闲区 域的状况(B701)。
MPU60判断介质高速缓存区域112是否存在可顺序写入(连续地写入)写 入数据的大的大小的空闲区域(B702)。
判断为存在可顺序写入的空闲区域时(B702的“是”),MPU60算出基于 对介质高速缓存区域112的顺序写入的写入数据的转移保存动作的最短处 理时间(B703)。判断为没有可顺序写入的空闲区域时(B702的“否”),MPU60 判断是否执行基于重排序的写入数据的转移保存动作(B704)。MPU60,在介 质高速缓存区域112中空闲区域比可顺序写入的容量小且由隔着重排序后 可写入的充分间隔而设置的多个区域形成的情况下,判断为执行基于重排 序的写入数据的转移保存动作。这里,重排序是为了可以高效地写入而相应 于盘的物理位置将写入写入数据的(处理写入指令的)顺序重新排列的功 能。
判断为不执行基于重排序的写入动作时(B704的“否”),MPU60算出基 于对介质高速缓存区域112的跳空写入(skip write)的写入数据的转移保 存动作的最短处理时间(B705)。执行基于重排序的写入数据的转移保存动 作时(B704的“是”),MPU60算出基于对介质高速缓存区域112的重排序的 写入数据的转移保存动作的最短处理时间(B706)。这里,跳空写入是指通过 系统控制器130的功能在盘10上按预定的间隔连续地写入写入数据。跳空写 入在间隔比可进行基于重排序的写入动作的空闲区域彼此的间隔短的情况 下,可以高效地写入写入数据。
在B706的处理后,处理预定的处理块(B605~B610),MPU60结束写入动 作。
根据变形例,磁盘装置1通过检测介质高速缓存区域112的空闲区域的 状况,可以选择写入动作。结果,磁盘装置1可以防止与写入动作相关的写 入性能的降低。
虽然说明了本发明的几个实施方式,但是这些实施方式只是例示,而 不用于限定发明的范围。这些新实施方式能以其他各种方式实施,在不脱 离发明的要旨的范围,可以进行各种省略、置换、变更。这些实施方式和/ 或其变形包括于发明的范围和/或要旨中,也包括于技术方案记载的发明及 其均等的范围中。

Claims (18)

1.一种磁盘装置,其具备:
具有第1区域及第2区域的盘;
对上述盘写入写入数据的头;
将从外部输入的上述写入数据存储到第1容量为止的缓冲器;以及
控制器,
该控制器,
取得基于由上述头向上述第1区域转移保存上述写入数据的时间的第1 处理量和通过从上述缓冲器向上述第1区域转移保存上述写入数据而改善 的第2处理量,
比较上述第1处理量和上述第2处理量,
基于上述第1处理量与上述第2处理量的比较结果,判断是否将上述写 入数据向上述第1区域转移保存,
上述控制器,在不将上述写入数据向上述第1区域转移保存的情况下, 向上述第2区域写入上述写入数据。
2.权利要求1的磁盘装置,其中,
上述控制器,参照表示上述第1处理量与向上述第1区域转移保存上述 写入数据的时间的关系的第1图表,取得上述第1处理量,
参照表示上述缓冲器的容量与每单位时间的写入处理的次数的关系的 第2图表,取得上述第2处理量。
3.权利要求2的磁盘装置,其中,
上述控制器参照上述第2图表,取得基于上述第1容量的第3处理量和基 于比该第1容量小的第2容量的第4处理量,
由上述第4处理量与上述第3处理量的差取得上述第2处理量。
4.权利要求1的磁盘装置,其中,
上述控制器在上述第1处理数比上述第2处理数小的情况下,向上述第1 区域转移保存上述写入数据。
5.权利要求1的磁盘装置,其中,
上述控制器在上述第1处理数比上述第2处理数大的情况下,向上述第2 区域写入上述写入数据。
6.权利要求1的磁盘装置,其中,
上述控制器相应于上述第1区域的空闲区域的状况,选择要执行的写入 动作。
7.权利要求6的磁盘装置,其中,
上述控制器在上述空闲区域具备能连续地写入上述写入数据的容量的 情况下,执行顺序写入动作。
8.权利要求6的磁盘装置,其中,
上述控制器,在上述空闲区域比能连续地写入上述写入数据的容量小 且由多个区域形成的情况下,按特定的间隔向上述第1区域连续地写入该写 入数据,该多个区域是以比重新排列相应于上述盘的物理位置写入上述写 入数据的顺序后能写入的间隔窄的间隔设置的区域,该特定的间隔是比重 新排列相应于上述盘的物理位置写入上述写入数据的顺序后能写入的间隔 窄的间隔。
9.权利要求6的磁盘装置,其中,
上述控制器,在比能连续地写入上述写入数据的容量小且由多个区域 形成的情况下,执行基于重排序的写入动作,该多个区域是以重新排列相 应于上述盘的物理位置写入上述写入数据的顺序后能写入的间隔以上的间 隔设置的区域。
10.权利要求1的磁盘装置,其中,
还具备非易失性存储器,
上述第1容量是基于上述非易失性存储器的容量及上述第1区域的容量 的容量。
11.一种用于磁盘装置的写入动作的控制方法,上述磁盘装置具备:具 有第1区域及第2区域的盘和将从外部输入的写入数据存储到第1容量为止 的缓冲器,该控制方法中,
取得基于向上述第1区域转移保存上述写入数据的时间的第1处理量和 通过从上述缓冲器向上述第1区域转移保存上述写入数据而改善的第2处理 量,
比较上述第1处理量和上述第2处理量,
基于上述第1处理量与上述第2处理量的比较结果,判断是否将上述写 入数据向上述第1区域转移保存,
在不将上述写入数据向上述第1区域转移保存的情况下,向上述第2区 域写入上述写入数据。
12.权利要求11的控制方法,其中,
参照表示上述第1处理量与向上述第1区域转移保存上述写入数据的时 间的关系的第1图表,取得上述第1处理量,
参照表示上述缓冲器的容量与每单位时间的写入处理的次数的关系的 第2图表,取得上述第2处理量。
13.权利要求12的控制方法,其中,
参照上述第2图表,取得基于上述第1容量的第3处理量和基于比该第1 容量小的第2容量的第4处理量,
由上述第4处理量与上述第3处理量的差取得上述第2处理量。
14.权利要求11的控制方法,其中,
在上述第1处理数比上述第2处理数小的情况下,向上述第1区域转移保 存上述写入数据。
15.权利要求11的控制方法,其中,
在上述第1处理数比上述第2处理数大的情况下,向上述第2区域写入上 述写入数据。
16.权利要求11的控制方法,其特征在于,
相应于上述第1区域的空闲区域的状况,选择要执行的写入动作。
17.权利要求16的控制方法,其中,
在上述空闲区域具备能连续地写入上述写入数据的容量的情况下,执 行顺序写入动作。
18.权利要求16的控制方法,其中,
在比能连续地写入上述写入数据的容量小且由多个区域形成的情况 下,执行基于重排序的写入动作,该多个区域是以重新排列相应于上述盘 的物理位置写入上述写入数据的顺序后能写入的间隔以上的间隔设置的区 域。
CN201510548694.7A 2015-06-23 2015-08-31 磁盘装置及控制方法 Active CN106293503B9 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562183290P 2015-06-23 2015-06-23
US62/183,290 2015-06-23

Publications (3)

Publication Number Publication Date
CN106293503A CN106293503A (zh) 2017-01-04
CN106293503B CN106293503B (zh) 2019-05-07
CN106293503B9 true CN106293503B9 (zh) 2019-06-28

Family

ID=57602322

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510548694.7A Active CN106293503B9 (zh) 2015-06-23 2015-08-31 磁盘装置及控制方法

Country Status (2)

Country Link
US (1) US9727265B2 (zh)
CN (1) CN106293503B9 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI594245B (zh) * 2016-02-02 2017-08-01 慧榮科技股份有限公司 資料寫入工作排程方法以及使用該方法的裝置
US10120582B1 (en) 2016-03-30 2018-11-06 Amazon Technologies, Inc. Dynamic cache management in storage devices
JP2019153363A (ja) * 2018-03-05 2019-09-12 株式会社東芝 磁気ディスク装置及びライト方法
JP2020155173A (ja) * 2019-03-19 2020-09-24 株式会社東芝 磁気ディスク装置
JP7234098B2 (ja) * 2019-11-12 2023-03-07 株式会社東芝 磁気ディスク装置及びリオーダリング処理の方法
JP7179794B2 (ja) * 2020-03-03 2022-11-29 株式会社東芝 磁気ディスク装置、および磁気ディスク装置のメモリ管理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101866320A (zh) * 2009-04-14 2010-10-20 群联电子股份有限公司 数据管理方法及使用此方法的闪存储存系统与控制器
CN104115131A (zh) * 2012-02-15 2014-10-22 国立大学法人东京大学 存储控制器、数据存储装置以及存储器的控制方法
CN105304095A (zh) * 2014-07-14 2016-02-03 株式会社东芝 磁盘装置和执行写入指令的方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5696775A (en) 1994-09-23 1997-12-09 Cirrus Logic, Inc. Method and apparatus for detecting the transfer of a wrong sector
JP4557341B2 (ja) 2000-01-07 2010-10-06 キヤノン株式会社 バックアップ記憶制御装置
US6418510B1 (en) 2000-09-14 2002-07-09 International Business Machines Corporation Cooperative cache and rotational positioning optimization (RPO) scheme for a direct access storage device (DASD)
US7395452B2 (en) 2004-09-24 2008-07-01 Microsoft Corporation Method and system for improved reliability in storage devices
JP2008046964A (ja) * 2006-08-18 2008-02-28 Toshiba Corp 情報記録装置及びその制御方法
JP2008204574A (ja) * 2007-02-22 2008-09-04 Fujitsu Ltd 記憶装置とその制御方法
JP4536785B2 (ja) 2008-02-01 2010-09-01 富士通株式会社 情報処理装置、該情報処理装置で行われるデータ記憶を制御する制御部およびデータ記憶の制御方法
TWI474165B (zh) 2009-03-13 2015-02-21 Prolific Technology Inc 資料儲存系統及其備份方法
US8478945B2 (en) * 2010-02-01 2013-07-02 International Business Machines Corporation Dynamic management of destage tasks in a storage controller
US9262321B2 (en) * 2011-11-17 2016-02-16 International Business Machines Corporation Adjustment of destage rate based on read and write response time requirements
US8498966B1 (en) 2012-05-30 2013-07-30 Symantec Corporation Systems and methods for adaptively performing backup operations
JP2014086116A (ja) * 2012-10-25 2014-05-12 Toshiba Corp 磁気ディスク装置およびデータライト方法
US20160306697A1 (en) 2015-02-13 2016-10-20 Kabushiki Kaisha Toshiba Magnetic disk device and method for saving management information

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101866320A (zh) * 2009-04-14 2010-10-20 群联电子股份有限公司 数据管理方法及使用此方法的闪存储存系统与控制器
CN104115131A (zh) * 2012-02-15 2014-10-22 国立大学法人东京大学 存储控制器、数据存储装置以及存储器的控制方法
CN105304095A (zh) * 2014-07-14 2016-02-03 株式会社东芝 磁盘装置和执行写入指令的方法

Also Published As

Publication number Publication date
US9727265B2 (en) 2017-08-08
CN106293503A (zh) 2017-01-04
US20160378385A1 (en) 2016-12-29
CN106293503B (zh) 2019-05-07

Similar Documents

Publication Publication Date Title
CN106293503B9 (zh) 磁盘装置及控制方法
EP2377028B1 (en) Modifying commands
KR101056560B1 (ko) 고체 상태 디스크 시스템에서 버퍼 캐시의 프로그래밍 방법및 장치
US8751728B1 (en) Storage system bus transfer optimization
US8819375B1 (en) Method for selective defragmentation in a data storage device
US8896953B2 (en) Disk storage apparatus and method for shingled magnetic recording
US20100185806A1 (en) Caching systems and methods using a solid state disk
CN110010172A (zh) 半导体存储装置
CN109427347A (zh) 磁盘装置及记录区域的设定方法
CN106373596A (zh) 存储装置和数据转移保存方法
CN101226505A (zh) 磁盘装置以及控制该装置的方法
JP2006114206A5 (zh)
CN101458932A (zh) 用于以顺序访问的方式将数据写入盘驱动器的方法和设备
US20170228191A1 (en) Systems and methods for suppressing latency in non-volatile solid state devices
US20210089464A1 (en) Techniques for storing data and tags in different memory arrays
CN101127229A (zh) 信息记录设备及其控制方法
CN107783730A (zh) 存储装置、存储器ic及向存储器ic写入的写入处理方法
KR20200003055A (ko) Nand 버퍼를 갖는 nand 플래시 저장 디바이스
JP2010211618A (ja) 半導体記憶装置
TW201005530A (en) High-speed solid state storage system
US8947818B2 (en) Disk storage apparatus and data protection method
US20130111108A1 (en) Solid state drive and method for controlling cache memory thereof
TW201237631A (en) Memory controller and a controlling method adaptable to DRAM
US9665285B2 (en) Disk device and method for storing data and associated headers
CN110232033A (zh) 磁盘装置及写入方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CI03 Correction of invention patent
CI03 Correction of invention patent

Correction item: Claim 16

Correct: Xiang Yingyu

False: Xiang Yingyu

Number: 19-01

Page: Quan Wen

Volume: 35