專利名稱:硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法、裝置及數(shù)據(jù)存儲(chǔ)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法、裝置及數(shù)據(jù)存
儲(chǔ)系統(tǒng)。
背景技術(shù):
固態(tài)硬盤(pán)(Solid State Disk,以下簡(jiǎn)稱為SSD)是由控制單元和固態(tài)存儲(chǔ)單元 (Nand Flash)組成的硬盤(pán)。固態(tài)硬盤(pán)的接口規(guī)范、功能、使用方法、產(chǎn)品外形和尺寸等均與 普通硬盤(pán)相同。由于沒(méi)有普通硬盤(pán)的機(jī)械結(jié)構(gòu),固態(tài)硬盤(pán)具有低功耗、無(wú)噪聲、抗震動(dòng)、低熱 量和傳輸速度快等優(yōu)點(diǎn)。 固態(tài)硬盤(pán)采用多個(gè)固態(tài)存儲(chǔ)單元組成閃存存儲(chǔ)陣列,用于存放數(shù)據(jù)。其中,數(shù)據(jù)在 閃存存儲(chǔ)陣列中依據(jù)固定地址映射關(guān)系(即邏輯地址對(duì)物理地址的映射關(guān)系)進(jìn)行存放, 對(duì)應(yīng)一定邏輯地址范圍的數(shù)據(jù)一般分布在閃存存儲(chǔ)陣列中的一定范圍。主機(jī)對(duì)固態(tài)硬盤(pán)進(jìn) 行訪問(wèn),即主機(jī)通過(guò)固態(tài)硬盤(pán)中的控制器在閃存存儲(chǔ)陣列中讀寫(xiě)數(shù)據(jù)。其中,單個(gè)固態(tài)存儲(chǔ) 單元的讀寫(xiě)效率非常低,整個(gè)固態(tài)硬盤(pán)的高讀寫(xiě)性能(即讀寫(xiě)效率)依賴于使多個(gè)固態(tài)存
儲(chǔ)單元可以并發(fā)操作,也就是主機(jī)在一定時(shí)間內(nèi)通過(guò)控制器對(duì)多個(gè)固態(tài)存儲(chǔ)單元進(jìn)行讀寫(xiě) 操作,其中,在同一時(shí)刻下同時(shí)進(jìn)行的對(duì)固態(tài)硬盤(pán)的讀寫(xiě)操作的次數(shù)稱為并發(fā)數(shù)。除了命令 解析、地址映射、數(shù)據(jù)傳輸?shù)乳_(kāi)銷,可以近似地認(rèn)為固態(tài)硬盤(pán)的讀寫(xiě)性能就是單個(gè)固態(tài)存儲(chǔ) 單元的讀寫(xiě)性能與并發(fā)數(shù)的乘積。由此,固態(tài)存儲(chǔ)單元并發(fā)數(shù)越多,則整個(gè)固態(tài)硬盤(pán)的讀寫(xiě) 性能就越高,并且整個(gè)固態(tài)硬盤(pán)的瞬時(shí)功耗就越高。 固態(tài)存儲(chǔ)單元并發(fā)數(shù)是由主機(jī)對(duì)固態(tài)硬盤(pán)的讀寫(xiě)頻率(訪問(wèn)頻率)和讀寫(xiě)數(shù)據(jù)的 邏輯地址對(duì)應(yīng)的物理地址在固態(tài)存儲(chǔ)單元中的分布決定的。主機(jī)對(duì)固態(tài)硬盤(pán)讀寫(xiě)越頻繁, 且讀寫(xiě)數(shù)據(jù)的邏輯地址對(duì)應(yīng)的物理地址在固態(tài)存儲(chǔ)單元中的分布越分散,則固態(tài)存儲(chǔ)單元
并發(fā)數(shù)就越多;主機(jī)對(duì)固態(tài)硬盤(pán)讀寫(xiě)越少,且讀寫(xiě)數(shù)據(jù)的邏輯地址對(duì)應(yīng)的物理地址在固態(tài) 存儲(chǔ)單元中的分布越集中,則固態(tài)存儲(chǔ)單元并發(fā)數(shù)就越少。 在實(shí)現(xiàn)本發(fā)明過(guò)程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問(wèn)題實(shí)際應(yīng)用中,在 一段固定時(shí)間內(nèi),主機(jī)對(duì)固態(tài)硬盤(pán)的讀寫(xiě)頻率(即訪問(wèn)頻率)是不確定的。由此,常常會(huì)出 現(xiàn)如下情況前一時(shí)間段內(nèi),主機(jī)對(duì)固態(tài)硬盤(pán)的讀寫(xiě)很少,甚至無(wú)任何訪問(wèn),且讀寫(xiě)數(shù)據(jù)的 邏輯地址對(duì)應(yīng)的物理地址分布較集中,則固態(tài)存儲(chǔ)單元并發(fā)數(shù)很少,而在下一時(shí)間段內(nèi),主 機(jī)對(duì)固態(tài)硬盤(pán)的讀寫(xiě)很頻繁,且讀寫(xiě)數(shù)據(jù)的邏輯地址對(duì)應(yīng)的物理地址分布較分散,則固態(tài) 存儲(chǔ)單元并發(fā)數(shù)就很多。由此,在這兩個(gè)時(shí)間段之間,固態(tài)存儲(chǔ)單元的驅(qū)動(dòng)電流會(huì)隨著并發(fā) 數(shù)的增多而增大,從而使得功耗突變產(chǎn)生很大的功耗差,而大的功耗差會(huì)給為固態(tài)硬盤(pán)供 電的電源芯片造成很大壓力,造成瞬時(shí)電壓跌落,使得固態(tài)硬盤(pán)的穩(wěn)定性降低,由此造成讀 寫(xiě)數(shù)據(jù)操作的穩(wěn)定性降低。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法、裝置及數(shù)據(jù)存儲(chǔ)系統(tǒng),用以防止硬盤(pán)數(shù)據(jù)讀寫(xiě)操作中的功耗突變,增強(qiáng)讀寫(xiě)數(shù)據(jù)操作的穩(wěn)定性。
本發(fā)明實(shí)施例提供一種硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,包括 檢測(cè)對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令以及所述目標(biāo)存儲(chǔ)單元的工作狀 態(tài); 在檢測(cè)到所述對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且所述目標(biāo)存儲(chǔ)單元 處于空閑狀態(tài)時(shí),根據(jù)操作數(shù)和預(yù)設(shè)的閾值,按照預(yù)設(shè)規(guī)則對(duì)所述目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě) 操作; 所述操作數(shù)用于標(biāo)識(shí)當(dāng)前時(shí)間片內(nèi)當(dāng)前時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與
在所述當(dāng)前時(shí)間片的起始時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值;所述預(yù)設(shè)的閾
值為在所述時(shí)間片內(nèi)任一時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在所述當(dāng)前時(shí)間片的起
始時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值的最大值。 本發(fā)明實(shí)施例提供一種硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,包括 檢測(cè)模塊,用于檢測(cè)對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令以及所述目標(biāo)存儲(chǔ) 單元的工作狀態(tài); 第一執(zhí)行模塊,用于在檢測(cè)到對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且所 述目標(biāo)存儲(chǔ)單元處于空閑狀態(tài)時(shí),根據(jù)操作數(shù)和預(yù)設(shè)的閾值,按照預(yù)設(shè)規(guī)則對(duì)所述目標(biāo)存 儲(chǔ)單元進(jìn)行讀寫(xiě)操作; 所述操作數(shù)用于標(biāo)識(shí)當(dāng)前時(shí)間片內(nèi)當(dāng)前時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與 在所述當(dāng)前時(shí)間片的起始時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值;所述預(yù)設(shè)的閾 值為在所述時(shí)間片內(nèi)任一時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在所述當(dāng)前時(shí)間片的起 始時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值的最大值。 本發(fā)明實(shí)施例還提供一種數(shù)據(jù)存儲(chǔ)系統(tǒng),包括具有多個(gè)存儲(chǔ)單元的硬盤(pán),以及用 于對(duì)該硬盤(pán)中存儲(chǔ)單元的讀寫(xiě)操作進(jìn)行控制的、本發(fā)明實(shí)施例提供的任一硬盤(pán)數(shù)據(jù)讀寫(xiě)控 制裝置。 本發(fā)明實(shí)施例提供的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法、裝置及數(shù)據(jù)存儲(chǔ)系統(tǒng),根據(jù)操作數(shù) 和閾值,按照預(yù)設(shè)規(guī)則對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作,以使在任一時(shí)間片內(nèi)任一 時(shí)刻與該時(shí)間片的起始時(shí)刻相比、對(duì)硬盤(pán)的讀寫(xiě)操作的次數(shù)的增量帶來(lái)的功耗增量,不大 于為硬盤(pán)供電的電源芯片所能承受的功耗突變量,由此使得在硬盤(pán)中進(jìn)行讀寫(xiě)操作時(shí)功耗 增加不會(huì)過(guò)快,在一定程度上防止了硬盤(pán)數(shù)據(jù)讀寫(xiě)操作中的功耗突變,增強(qiáng)了讀寫(xiě)數(shù)據(jù)操 作的穩(wěn)定性。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例中所需要使用的附
圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域
普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為進(jìn)行固態(tài)硬盤(pán)數(shù)據(jù)讀寫(xiě)操作的示意圖; 圖2為本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法實(shí)施例一的步驟流程圖; 圖3為本發(fā)明實(shí)施例提供的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法與現(xiàn)有的方法的操作數(shù)對(duì)比 示意5
圖4為本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法實(shí)施例二的步驟流程圖;
圖5為本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置實(shí)施例一的示意圖;
圖6為本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置實(shí)施例二的示意圖。
具體實(shí)施例方式
下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于 本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。 圖1為進(jìn)行固態(tài)硬盤(pán)數(shù)據(jù)讀寫(xiě)操作的示意圖。本發(fā)明實(shí)施例提供的技術(shù)方案,以 對(duì)固態(tài)硬盤(pán)進(jìn)行數(shù)據(jù)讀寫(xiě)操作為例進(jìn)行說(shuō)明,然而本發(fā)明實(shí)施例并不局限在應(yīng)用于固態(tài)硬 盤(pán)中,還可以應(yīng)用在其他包括多個(gè)存儲(chǔ)單元,并且多個(gè)存儲(chǔ)單元可以并發(fā)進(jìn)行數(shù)據(jù)讀取的 存儲(chǔ)介質(zhì)中。如圖l所示,固態(tài)硬盤(pán)中包括控制單元和多個(gè)固態(tài)存儲(chǔ)單元(Nand Flash)組 成的閃存存儲(chǔ)陣列,由控制單元控制多個(gè)固態(tài)存儲(chǔ)單元并發(fā)進(jìn)行讀寫(xiě)操作,以實(shí)現(xiàn)固態(tài)硬 盤(pán)的高性能讀寫(xiě)。其中,正在進(jìn)行讀寫(xiě)操作(非空閑狀態(tài))的固態(tài)存儲(chǔ)單元用實(shí)線框標(biāo)注, 處于空閑(Stand By)狀態(tài)的固態(tài)存儲(chǔ)單元用虛線框標(biāo)注。固態(tài)存儲(chǔ)單元處于空閑狀態(tài)時(shí) 的功耗遠(yuǎn)遠(yuǎn)低于其處于非空閑狀態(tài)時(shí)的功耗,由此同一段時(shí)間片內(nèi),增加的同時(shí)進(jìn)行的讀 寫(xiě)操作的次數(shù)越多,功耗就升高的越多。 為了避免功耗升高過(guò)程中的功耗突變,本發(fā)明實(shí)施例在進(jìn)行讀寫(xiě)操作時(shí),控制每 個(gè)時(shí)間片內(nèi)增加的同時(shí)進(jìn)行的讀寫(xiě)操作的次數(shù)不能超過(guò)預(yù)設(shè)的閾值,由此保證了功耗的變 化在預(yù)設(shè)的范圍內(nèi),避免了功耗突變。下面通過(guò)具體實(shí)施例描述本發(fā)明實(shí)施例的技術(shù)方案。
圖2為本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法實(shí)施例一的步驟流程圖。如圖2所示,該方 法包括 步驟201、檢測(cè)對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令以及目標(biāo)存儲(chǔ)單元的工 作狀態(tài)。 主機(jī)對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作時(shí),會(huì)向固態(tài)硬盤(pán)發(fā)送對(duì)固態(tài)硬盤(pán)中的目標(biāo)存儲(chǔ)單 元的讀寫(xiě)操作指令,該讀寫(xiě)操作指令可以存儲(chǔ)在固態(tài)硬盤(pán)的緩存空間中,以便固態(tài)硬盤(pán)中
的控制單元對(duì)該讀寫(xiě)操作指令進(jìn)行查詢。 固態(tài)硬盤(pán)中包括多個(gè)目標(biāo)存儲(chǔ)單元,每個(gè)目標(biāo)存儲(chǔ)單元的工作狀態(tài)是可以檢測(cè) 的,即通過(guò)檢測(cè)可以獲知每個(gè)目標(biāo)存儲(chǔ)單元是否處于空閑狀態(tài)。其中,當(dāng)主機(jī)正在對(duì)某個(gè)目 標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作時(shí),該目標(biāo)存儲(chǔ)單元處于非空閑狀態(tài),否則,該目標(biāo)存儲(chǔ)單元處于 空閑狀態(tài)。 步驟202、在檢測(cè)到對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且目標(biāo)存儲(chǔ)單元
處于空閑狀態(tài)時(shí),根據(jù)操作數(shù)和預(yù)設(shè)的閾值,按照預(yù)設(shè)規(guī)則對(duì)目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作。 操作數(shù)用于標(biāo)識(shí)當(dāng)前時(shí)間片內(nèi)當(dāng)前時(shí)刻正在進(jìn)行的對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的
次數(shù)與在當(dāng)前時(shí)間片的起始時(shí)刻正在進(jìn)行的對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值。
預(yù)設(shè)的閾值為在時(shí)間片內(nèi)任一時(shí)刻對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在當(dāng)前時(shí)間片的起
始時(shí)刻對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值的的最大值。 在不同的應(yīng)用環(huán)境下,為固態(tài)硬盤(pán)供電的電源芯片對(duì)功耗瞬時(shí)突變的承受能力不同,因此,時(shí)間片的長(zhǎng)短和閾值(時(shí)間片內(nèi)允許的最大操作數(shù))的大小都不是固定的??筛?據(jù)具體情況,配置閾值的大小和時(shí)間片的長(zhǎng)短,從而實(shí)現(xiàn)對(duì)固態(tài)硬盤(pán)的有效保護(hù)且不影響 固態(tài)硬盤(pán)的工作性能。例如根據(jù)電源芯片對(duì)功耗突變的承受能力,靈活配置閾值的大?。蝗?電源芯片對(duì)功耗突變的承受能力大,則可以配置較大的閾值,若電源芯片對(duì)功耗突變的承 受能力小,則配置較低的閾值。 本實(shí)施例中將對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的時(shí)間切分為若干個(gè)等長(zhǎng)的時(shí)間片,在每 個(gè)時(shí)間片內(nèi)控制增加的同時(shí)進(jìn)行的讀寫(xiě)操作的次數(shù)。時(shí)間片的長(zhǎng)短是根據(jù)經(jīng)驗(yàn)配置的,若 時(shí)間片太長(zhǎng),則無(wú)法很好的避免該時(shí)間片內(nèi)功耗突變的發(fā)生,但是時(shí)間片也不能太短,要考 慮讀寫(xiě)操作進(jìn)行的時(shí)間長(zhǎng)短,例如若當(dāng)時(shí)間片的長(zhǎng)度小于一次讀寫(xiě)操作的時(shí)間,則無(wú)法很
好的在該時(shí)間片內(nèi)控制操作數(shù)。 在每一個(gè)時(shí)間片內(nèi),只要操作數(shù)(即增加的同時(shí)進(jìn)行的讀寫(xiě)操作的次數(shù))不高于 某個(gè)閾值,則可繼續(xù)執(zhí)行主機(jī)的讀寫(xiě)操作,否則,暫停執(zhí)行,直到下一個(gè)時(shí)間片開(kāi)始時(shí),再繼 續(xù)執(zhí)行主機(jī)的讀寫(xiě)操作。 本發(fā)明實(shí)施例提供的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,根據(jù)操作數(shù)和閾值,按照預(yù)設(shè)規(guī)則 對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作,以使在任一時(shí)間片內(nèi)任一時(shí)刻與該時(shí)間片的起始 時(shí)刻相比,對(duì)硬盤(pán)的讀寫(xiě)操作的次數(shù)的增量帶來(lái)的功耗增量,不大于為硬盤(pán)供電的電源芯 片所能承受的功耗突變量,由此使得在硬盤(pán)中進(jìn)行讀寫(xiě)操作時(shí)功耗增加不會(huì)過(guò)快,防止了 硬盤(pán)數(shù)據(jù)讀寫(xiě)操作中的功耗突變,增強(qiáng)了對(duì)硬盤(pán)讀寫(xiě)數(shù)據(jù)操作的穩(wěn)定性,提高了硬盤(pán)的可 靠性,并且在提高硬盤(pán)可靠性的同時(shí),并不影響硬盤(pán)快速讀寫(xiě)的性能。 本發(fā)明實(shí)施例提供的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,通過(guò)控制任一時(shí)間片內(nèi)最大的操作
數(shù)不超過(guò)閾值,來(lái)避免數(shù)據(jù)讀寫(xiě)操作中的功耗突變,該控制操作只是對(duì)某一時(shí)刻對(duì)硬盤(pán)進(jìn) 行讀寫(xiě)操作的次數(shù)的增量進(jìn)行了控制,也就是當(dāng)讀寫(xiě)操作過(guò)于頻繁時(shí),將過(guò)于頻繁的讀寫(xiě)
操作暫時(shí)緩存不進(jìn)行操作,等待在下一個(gè)或幾個(gè)時(shí)間片內(nèi)再執(zhí)行緩存的這些讀寫(xiě)操作,而 從較長(zhǎng)的一段時(shí)間來(lái)看,并不影響整個(gè)硬盤(pán)的讀寫(xiě)數(shù)據(jù)性能。圖3為本發(fā)明實(shí)施例提供的 硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法與現(xiàn)有的方法的操作數(shù)對(duì)比示意圖,如圖3所示,將時(shí)間分為若干 等長(zhǎng)的時(shí)間片,設(shè)置每個(gè)時(shí)間片中允許的最大操作數(shù)為K,虛線為使用現(xiàn)有的方法對(duì)固態(tài)硬 盤(pán)進(jìn)行數(shù)據(jù)讀寫(xiě)時(shí)操作數(shù)的示意,實(shí)線為使用本發(fā)明實(shí)施例提供的方法對(duì)固態(tài)硬盤(pán)進(jìn)行數(shù) 據(jù)讀寫(xiě)時(shí)操作數(shù)的示意。由圖3可以看出,通過(guò)本發(fā)明實(shí)施例提供的方法對(duì)固態(tài)硬盤(pán)進(jìn)行 數(shù)據(jù)讀寫(xiě)操作時(shí),每個(gè)時(shí)間片內(nèi)的操作數(shù)比較平均,不會(huì)出現(xiàn)操作數(shù)突變的情況,由此不會(huì)
出現(xiàn)功耗突變的情況。 圖4為本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法實(shí)施例二的步驟流程圖,本實(shí)施例在方法實(shí) 施例一的基礎(chǔ)上,進(jìn)一步詳細(xì)說(shuō)明根據(jù)操作數(shù)和閾值、按照預(yù)設(shè)規(guī)則對(duì)硬盤(pán)進(jìn)行數(shù)據(jù)讀寫(xiě) 操作的方法,如圖4所示,該方法包括
步驟401、主機(jī)發(fā)出讀寫(xiě)操作指令。 步驟402、固態(tài)硬盤(pán)接收到主機(jī)發(fā)送的讀寫(xiě)操作指令后,解析該讀寫(xiě)操作指令。
步驟403、固態(tài)硬盤(pán)將解析后的讀寫(xiě)操作指令存入緩存中。 步驟404、固態(tài)硬盤(pán)中的控制單元檢測(cè)緩存中是否有讀寫(xiě)操作指令,是,則執(zhí)行步 驟405,否則重復(fù)進(jìn)行步驟404。 其中,固態(tài)硬盤(pán)需要不斷地檢測(cè)緩存中是否有讀寫(xiě)操作指令,當(dāng)檢測(cè)到緩存中有
7讀寫(xiě)操作指令時(shí)執(zhí)行步驟405,執(zhí)行完畢后,則繼續(xù)檢測(cè)緩存中是否有讀寫(xiě)操作指令,以執(zhí) 行下一個(gè)讀寫(xiě)操作指令。 步驟405、檢測(cè)該讀寫(xiě)操作指令對(duì)應(yīng)的目標(biāo)存儲(chǔ)單元的工作狀態(tài),若該目標(biāo)存儲(chǔ)單 元為空閑狀態(tài),則執(zhí)行步驟406,若該目標(biāo)存儲(chǔ)單元為非空閑狀態(tài),則緩存該讀寫(xiě)操作指令, 并等待,直至該目標(biāo)存儲(chǔ)單元的狀態(tài)改變?yōu)榭臻e時(shí),才執(zhí)行步驟406。 由于在同一個(gè)時(shí)刻,只能對(duì)一個(gè)目標(biāo)存儲(chǔ)單元進(jìn)行一個(gè)讀寫(xiě)操作,因此,如果當(dāng)正 在對(duì)一個(gè)目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作時(shí),又接收到另一個(gè)對(duì)應(yīng)該目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作 指令時(shí),則需要將該讀寫(xiě)操作指令緩存,待對(duì)該目標(biāo)存儲(chǔ)單元進(jìn)行的讀寫(xiě)操作執(zhí)行完畢后, 再按照預(yù)設(shè)規(guī)則根據(jù)操作數(shù)和閾值、對(duì)該目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作。
步驟406、將操作數(shù)的數(shù)值與預(yù)設(shè)的閾值進(jìn)行比較,若操作數(shù)不小于閾值,則緩存 上述讀寫(xiě)操作指令,在后續(xù)獲知該操作數(shù)小于閾值時(shí),執(zhí)行步驟407 ;若操作數(shù)小于閾值, 則執(zhí)行步驟407。其中,通過(guò)不斷地訪問(wèn)操作數(shù)計(jì)數(shù)器,可以獲得當(dāng)前的操作數(shù)的數(shù)值。
將時(shí)間分為若干等長(zhǎng)的時(shí)間片,當(dāng)前的操作數(shù)為當(dāng)前時(shí)間片內(nèi)當(dāng)前時(shí)刻對(duì)固態(tài) 硬盤(pán)進(jìn)行的讀寫(xiě)操作的次數(shù)與當(dāng)前時(shí)間片的起始時(shí)刻對(duì)所述固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次 數(shù)之間的差值;也就是說(shuō)當(dāng)前的操作數(shù)為當(dāng)前時(shí)刻進(jìn)行讀寫(xiě)操作的目標(biāo)存儲(chǔ)單元的個(gè)數(shù)與 當(dāng)前時(shí)間片的起始時(shí)刻進(jìn)行讀寫(xiě)操作的目標(biāo)存儲(chǔ)單元的個(gè)數(shù)之間的差值,即當(dāng)前的操作數(shù) 為當(dāng)前時(shí)刻比當(dāng)前時(shí)間片的起始時(shí)刻增加的并發(fā)數(shù),并發(fā)數(shù)為在同一時(shí)刻下同時(shí)進(jìn)行的對(duì) 固態(tài)硬盤(pán)的讀寫(xiě)操作的次數(shù)。其中,可以使用計(jì)時(shí)器對(duì)時(shí)間片進(jìn)行控制,在每個(gè)時(shí)間片的起 始時(shí)刻啟動(dòng)計(jì)時(shí)器,以控制該時(shí)間片的時(shí)間長(zhǎng)短。 為了避免功耗突變,本發(fā)明實(shí)施例根據(jù)為固態(tài)硬盤(pán)供電的電源芯片對(duì)功耗突變的 承受能力預(yù)先設(shè)置閾值,該閾值為在每個(gè)時(shí)間片內(nèi)任一時(shí)刻對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次 數(shù)與在當(dāng)前時(shí)間片的起始時(shí)刻對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值的最大值,即, 該閾值為在每個(gè)時(shí)間片內(nèi)任一時(shí)刻允許增加的并發(fā)數(shù)的最大值,其中增加的并發(fā)數(shù)即為操 作數(shù)。 其中,對(duì)于步驟404和步驟406,本發(fā)明并不限制其中各個(gè)動(dòng)作的執(zhí)行順序,固態(tài) 硬盤(pán)反復(fù)地檢測(cè)緩存和操作數(shù)的大小,并且當(dāng)檢測(cè)到緩存中有讀寫(xiě)操作指令時(shí),再檢測(cè)該 讀寫(xiě)操作指令對(duì)應(yīng)的目標(biāo)存儲(chǔ)單元的工作狀態(tài),當(dāng)緩存中有讀寫(xiě)操作指令,該讀寫(xiě)操作指
令對(duì)應(yīng)的目標(biāo)存儲(chǔ)單元為空閑,并且操作數(shù)小于閾值時(shí),根據(jù)該讀寫(xiě)操作指令對(duì)該目標(biāo)存 儲(chǔ)單元進(jìn)行讀寫(xiě)操作。 步驟407、根據(jù)讀寫(xiě)操作指令對(duì)目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作。 步驟408、在當(dāng)前時(shí)間片內(nèi),根據(jù)讀寫(xiě)操作指令執(zhí)行對(duì)目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作 時(shí),對(duì)操作數(shù)進(jìn)行加1處理;在當(dāng)前時(shí)間片內(nèi),若執(zhí)行完成對(duì)目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作,則 對(duì)操作數(shù)進(jìn)行減1處理;若當(dāng)前時(shí)間片結(jié)束,則對(duì)操作數(shù)進(jìn)行清零處理。
在主機(jī)對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的過(guò)程中,同時(shí)進(jìn)行數(shù)據(jù)讀寫(xiě)操作的目標(biāo)存儲(chǔ)單 元的個(gè)數(shù)是不斷變化的,當(dāng)新增執(zhí)行一個(gè)讀寫(xiě)操作時(shí),同時(shí)進(jìn)行數(shù)據(jù)讀寫(xiě)操作的目標(biāo)存儲(chǔ) 單元的個(gè)數(shù)就增加一個(gè),當(dāng)執(zhí)行完一個(gè)讀寫(xiě)操作時(shí),同時(shí)進(jìn)行數(shù)據(jù)讀寫(xiě)操作的目標(biāo)存儲(chǔ)單 元的個(gè)數(shù)就減少一個(gè)。也就是說(shuō),在主機(jī)對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的過(guò)程中,操作數(shù)是不斷 變化的。 由于操作數(shù)是當(dāng)前時(shí)刻與當(dāng)前時(shí)間片的起始時(shí)刻的并發(fā)數(shù)之間的差值,所以,為了計(jì)數(shù)方便,可以在每個(gè)時(shí)間片結(jié)束時(shí),對(duì)操作數(shù)進(jìn)行清零處理。 本發(fā)明實(shí)施例提供的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,根據(jù)操作數(shù)和閾值,按照預(yù)設(shè)規(guī)則 對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作,以使在任一時(shí)間片內(nèi)任一時(shí)刻與該時(shí)間片的起始 時(shí)刻相比,對(duì)硬盤(pán)的讀寫(xiě)操作的次數(shù)的增量帶來(lái)的功耗增量,不大于為硬盤(pán)供電的電源芯 片所能承受的功耗突變量,由此使得在硬盤(pán)中進(jìn)行讀寫(xiě)操作時(shí)功耗增加不會(huì)過(guò)快,防止了 硬盤(pán)數(shù)據(jù)讀寫(xiě)操作中的功耗突變,增強(qiáng)了讀寫(xiě)數(shù)據(jù)操作的穩(wěn)定性,提高了硬盤(pán)的可靠性,并 且在提高硬盤(pán)可靠性的同時(shí),并不影響硬盤(pán)快速讀寫(xiě)的性能。 本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò) 程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序 在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括R0M、 RAM、磁碟或者 光盤(pán)等各種可以存儲(chǔ)程序代碼的介質(zhì)。 圖5為本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置實(shí)施例一的示意圖。如圖5所示,該裝置包 括檢測(cè)模塊51和第一執(zhí)行模塊53。 檢測(cè)模塊51用于檢測(cè)對(duì)固態(tài)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令以及目標(biāo)存 儲(chǔ)單元的工作狀態(tài)。第一執(zhí)行模塊53用于在檢測(cè)模塊51檢測(cè)到對(duì)固態(tài)硬盤(pán)中目標(biāo)存儲(chǔ)單 元的讀寫(xiě)操作指令,并且目標(biāo)存儲(chǔ)單元處于空閑狀態(tài)時(shí),根據(jù)操作數(shù)和預(yù)設(shè)的閾值,按照預(yù)
設(shè)規(guī)則對(duì)目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作。操作數(shù)用于標(biāo)識(shí)當(dāng)前時(shí)間片內(nèi)當(dāng)前時(shí)刻對(duì)固態(tài)硬盤(pán) 進(jìn)行讀寫(xiě)操作的次數(shù)與在當(dāng)前時(shí)間片的起始時(shí)刻對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的
差值。閾值為在時(shí)間片內(nèi)任一時(shí)刻對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在當(dāng)前時(shí)間片的起始 時(shí)刻對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值的最大值。 主機(jī)對(duì)固態(tài)硬盤(pán)進(jìn)行讀寫(xiě)操作時(shí),主機(jī)發(fā)送對(duì)固態(tài)硬盤(pán)中目標(biāo)存儲(chǔ)單元的讀寫(xiě)操 作指令。檢測(cè)模塊51檢測(cè)是否存在有對(duì)固態(tài)硬盤(pán)中目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令以及檢 測(cè)目標(biāo)存儲(chǔ)單元的工作狀態(tài)。當(dāng)檢測(cè)模塊51檢測(cè)到對(duì)固態(tài)硬盤(pán)中目標(biāo)存儲(chǔ)單元的讀寫(xiě)操 作指令,并且目標(biāo)存儲(chǔ)單元處于空閑狀態(tài)時(shí),第一執(zhí)行模塊53根據(jù)操作數(shù)和預(yù)設(shè)的閾值, 按照預(yù)設(shè)規(guī)則對(duì)目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作。 本實(shí)施例中各個(gè)模塊的工作原理和工作流程參見(jiàn)本發(fā)明圖2到圖4所示實(shí)施例中 的描述,在此不再贅述。 本發(fā)明實(shí)施例提供的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,根據(jù)操作數(shù)和閾值,按照預(yù)設(shè)規(guī)則 對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作,以使在任一時(shí)間片內(nèi)任一時(shí)刻與該時(shí)間片的起始 時(shí)刻相比,對(duì)硬盤(pán)的讀寫(xiě)操作的次數(shù)的增量帶來(lái)的功耗增量,不大于為硬盤(pán)供電的電源芯 片所能承受的功耗突變量,由此使得在硬盤(pán)中進(jìn)行讀寫(xiě)操作時(shí)功耗增加不會(huì)過(guò)快,防止了 硬盤(pán)數(shù)據(jù)讀寫(xiě)操作中的功耗突變,增強(qiáng)了讀寫(xiě)數(shù)據(jù)操作的穩(wěn)定性,提高了硬盤(pán)的可靠性,并 且在提高硬盤(pán)可靠性的同時(shí),并不影響硬盤(pán)快速讀寫(xiě)的性能。 圖6為本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置實(shí)施例二的示意圖。如圖6所示,本實(shí)施例 在本發(fā)明裝置實(shí)施例一的基礎(chǔ)上,第一執(zhí)行模塊53包括第一執(zhí)行單元531和第二執(zhí)行單元 533。 第一執(zhí)行單元531用于若操作數(shù)不小于閾值,則緩存讀寫(xiě)操作指令,并且在操作 數(shù)小于所述閾值時(shí),根據(jù)緩存的讀寫(xiě)操作指令對(duì)目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作;第二執(zhí)行單 元533用于若操作數(shù)小于所述閾值,則根據(jù)讀寫(xiě)操作指令對(duì)目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作。
本實(shí)施例在裝置實(shí)施例一的基礎(chǔ)上,還包括第二執(zhí)行模塊52、存儲(chǔ)模塊54、配置 模塊56和計(jì)時(shí)器模塊58。 第二執(zhí)行模塊52用于若在檢測(cè)到對(duì)硬盤(pán)中目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且
目標(biāo)存儲(chǔ)單元處于非空閑狀態(tài),則緩存讀寫(xiě)操作指令。 存儲(chǔ)模塊54用于緩存讀寫(xiě)操作指令。 配置模塊56用于在當(dāng)前時(shí)間片內(nèi),根據(jù)讀寫(xiě)操作指令執(zhí)行對(duì)目標(biāo)存儲(chǔ)單元的讀
寫(xiě)操作時(shí),對(duì)操作數(shù)進(jìn)行加1處理;以及,用于若在當(dāng)前時(shí)間片內(nèi),執(zhí)行完成對(duì)目標(biāo)存儲(chǔ)單 元的讀寫(xiě)操作,則對(duì)操作數(shù)進(jìn)行減1處理;以及用于若當(dāng)前時(shí)間片結(jié)束,則對(duì)操作數(shù)進(jìn)行清
零處理。 計(jì)時(shí)器模塊58用于控制時(shí)間片的時(shí)長(zhǎng)。 本實(shí)施例中各個(gè)模塊的工作原理和工作流程參見(jiàn)本發(fā)明圖2到圖4所示實(shí)施例中 的描述,在此不再贅述。 本發(fā)明實(shí)施例提供的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,與本發(fā)明硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置實(shí) 施例一具有同樣的有益效果。 本發(fā)明實(shí)施例還提供了一種數(shù)據(jù)存儲(chǔ)系統(tǒng),該系統(tǒng)包括具有至少兩個(gè)存儲(chǔ)單元的
硬盤(pán),以及用于對(duì)硬盤(pán)中存儲(chǔ)單元的讀寫(xiě)操作進(jìn)行控制的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,其中該
硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置為本發(fā)明實(shí)施例提供的任意一種硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置。 使用本實(shí)施例提供的數(shù)據(jù)存儲(chǔ)系統(tǒng),對(duì)硬盤(pán)進(jìn)行讀寫(xiě)操作的工作原理和工作流程
參見(jiàn)本發(fā)明圖2到圖4所示實(shí)施例中的描述,在此不再贅述。 本發(fā)明實(shí)施例提供的數(shù)據(jù)存儲(chǔ)系統(tǒng),根據(jù)操作數(shù)和閾值,按照預(yù)設(shè)規(guī)則對(duì)硬盤(pán)中 的目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作,以使在任一時(shí)間片內(nèi)任一時(shí)刻與該時(shí)間片的起始時(shí)刻相 比,對(duì)硬盤(pán)的讀寫(xiě)操作的次數(shù)的增量帶來(lái)的功耗增量,不大于為硬盤(pán)供電的電源芯片所能
承受的功耗突變量,由此使得在硬盤(pán)中進(jìn)行讀寫(xiě)操作時(shí)功耗增加不會(huì)過(guò)快,防止了硬盤(pán)數(shù) 據(jù)讀寫(xiě)操作中的功耗突變,增強(qiáng)了讀寫(xiě)數(shù)據(jù)操作的穩(wěn)定性,提高了硬盤(pán)的可靠性,并且在提
高硬盤(pán)可靠性的同時(shí),并不影響硬盤(pán)快速讀寫(xiě)的性能。 最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡 管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然 可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替 換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精 神和范圍。
10
權(quán)利要求
一種硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,其特征在于,包括檢測(cè)對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令以及所述目標(biāo)存儲(chǔ)單元的工作狀態(tài);在檢測(cè)到所述對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且所述目標(biāo)存儲(chǔ)單元處于空閑狀態(tài)時(shí),根據(jù)操作數(shù)和預(yù)設(shè)的閾值,按照預(yù)設(shè)規(guī)則對(duì)所述目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作;所述操作數(shù)用于標(biāo)識(shí)當(dāng)前時(shí)間片內(nèi)當(dāng)前時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在所述當(dāng)前時(shí)間片的起始時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值;所述預(yù)設(shè)的閾值為在所述時(shí)間片內(nèi)任一時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在所述當(dāng)前時(shí)間片的起始時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值的最大值。
2. 根據(jù)權(quán)利要求1所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,其特征在于,所述根據(jù)操作數(shù)和預(yù) 設(shè)的閾值,按照預(yù)設(shè)規(guī)則對(duì)所述目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作包括若所述操作數(shù)不小于所述閾值,則緩存所述讀寫(xiě)操作指令,并且在所述操作數(shù)小于所 述閾值時(shí),根據(jù)緩存的讀寫(xiě)操作指令對(duì)所述目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作;若所述操作數(shù)小于所述閾值,則根據(jù)所述讀寫(xiě)操作指令對(duì)所述目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě) 操作。
3. 根據(jù)權(quán)利要求1或2所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,其特征在于,所述方法還包括 在所述當(dāng)前時(shí)間片內(nèi),根據(jù)所述讀寫(xiě)操作指令執(zhí)行對(duì)所述目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作時(shí),對(duì)所述操作數(shù)進(jìn)行加1處理;在所述當(dāng)前時(shí)間片內(nèi),若執(zhí)行完成對(duì)所述目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作,則對(duì)所述操作數(shù) 進(jìn)行減1處理;若所述當(dāng)前時(shí)間片結(jié)束,則對(duì)所述操作數(shù)進(jìn)行清零處理。
4. 根據(jù)權(quán)利要求1或2所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,其特征在于,所述方法還包括 若在檢測(cè)到對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且所述目標(biāo)存儲(chǔ)單元處于非空閑狀態(tài),則緩存所述讀寫(xiě)操作指令。
5. 根據(jù)權(quán)利要求1或2所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法,其特征在于,所述方法還包括 根據(jù)為硬盤(pán)供電的電源芯片對(duì)功耗突變的承受能力,設(shè)置所述閾值。
6. —種硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,其特征在于,包括檢測(cè)模塊,用于檢測(cè)對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令以及所述目標(biāo)存儲(chǔ)單元 的工作狀態(tài);第一執(zhí)行模塊,用于在檢測(cè)到所述對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且所 述目標(biāo)存儲(chǔ)單元處于空閑狀態(tài)時(shí),根據(jù)操作數(shù)和預(yù)設(shè)的閾值,按照預(yù)設(shè)規(guī)則對(duì)所述目標(biāo)存 儲(chǔ)單元進(jìn)行讀寫(xiě)操作;所述操作數(shù)用于標(biāo)識(shí)當(dāng)前時(shí)間片內(nèi)當(dāng)前時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在所 述當(dāng)前時(shí)間片的起始時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值;所述預(yù)設(shè)的閾值為 在所述時(shí)間片內(nèi)任一時(shí)刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在所述當(dāng)前時(shí)間片的起始時(shí) 刻對(duì)所述硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值的最大值。
7. 根據(jù)權(quán)利要求6所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,其特征在于,所述第一執(zhí)行模塊包括第一執(zhí)行單元,用于若所述操作數(shù)不小于所述閾值,則緩存所述讀寫(xiě)操作指令,并且在所述操作數(shù)小于所述閾值時(shí),根據(jù)緩存的所述讀寫(xiě)操作指令對(duì)所述目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě) 操作;第二執(zhí)行單元,用于若所述操作數(shù)小于所述閾值,則根據(jù)所述讀寫(xiě)操作指令對(duì)所述目 標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作。
8. 根據(jù)權(quán)利要求6所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,其特征在于,還包括 第二執(zhí)行模塊,用于若在檢測(cè)到對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且所述目標(biāo)存儲(chǔ)單元處于非空閑狀態(tài),則緩存所述讀寫(xiě)操作指令。
9. 根據(jù)權(quán)利要求6-8任一所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,其特征在于,還包括 存儲(chǔ)模塊,用于緩存所述讀寫(xiě)操作指令。
10. 根據(jù)權(quán)利要求6-8任一所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置,其特征在于,還包括 配置模塊,用于在所述當(dāng)前時(shí)間片內(nèi),根據(jù)所述讀寫(xiě)操作指令執(zhí)行對(duì)所述目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作時(shí),對(duì)所述操作數(shù)進(jìn)行加1處理;以及,用于在所述當(dāng)前時(shí)間片內(nèi),若執(zhí)行完成對(duì)所述目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作,則對(duì)所述操作數(shù)進(jìn)行減1處理;以及用于若所述當(dāng)前 時(shí)間片結(jié)束,則對(duì)所述操作數(shù)進(jìn)行清零處理。
11. 一種數(shù)據(jù)存儲(chǔ)系統(tǒng),包括具有多個(gè)存儲(chǔ)單元的硬盤(pán),以及用于對(duì)所述硬盤(pán)中存儲(chǔ)單 元的讀寫(xiě)操作進(jìn)行控制的、如權(quán)利要求6-10任一所述的硬盤(pán)數(shù)據(jù)讀寫(xiě)控制裝置。
全文摘要
本發(fā)明實(shí)施例提供一種硬盤(pán)數(shù)據(jù)讀寫(xiě)控制方法、裝置及數(shù)據(jù)存儲(chǔ)系統(tǒng),該方法包括在檢測(cè)到對(duì)硬盤(pán)中的目標(biāo)存儲(chǔ)單元的讀寫(xiě)操作指令,并且目標(biāo)存儲(chǔ)單元處于空閑狀態(tài)時(shí),根據(jù)操作數(shù)和預(yù)設(shè)的閾值,按照預(yù)設(shè)規(guī)則對(duì)目標(biāo)存儲(chǔ)單元進(jìn)行讀寫(xiě)操作;操作數(shù)用于標(biāo)識(shí)當(dāng)前時(shí)間片內(nèi)當(dāng)前時(shí)刻對(duì)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)與在當(dāng)前時(shí)間片的起始時(shí)刻對(duì)硬盤(pán)進(jìn)行讀寫(xiě)操作的次數(shù)之間的差值;閾值為在時(shí)間片內(nèi)任一時(shí)刻允許發(fā)生的操作數(shù)的最大值。本發(fā)明實(shí)施例,根據(jù)操作數(shù)和閾值,按照預(yù)設(shè)規(guī)則進(jìn)行讀寫(xiě)操作,以使由對(duì)硬盤(pán)的讀寫(xiě)操作的次數(shù)的增量帶來(lái)的功耗增量,不大于電源芯片所能承受的功耗突變量,防止了讀寫(xiě)操作中的功耗突變,增強(qiáng)了讀寫(xiě)操作的穩(wěn)定性。
文檔編號(hào)G06F12/16GK101699413SQ20091020779
公開(kāi)日2010年4月28日 申請(qǐng)日期2009年10月30日 優(yōu)先權(quán)日2009年10月30日
發(fā)明者張琴, 李欣, 楊繼濤, 柯喬 申請(qǐng)人:成都市華為賽門(mén)鐵克科技有限公司