專(zhuān)利名稱(chēng):數(shù)據(jù)相關(guān)性辨識(shí)方法及其存儲(chǔ)器數(shù)據(jù)處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)據(jù)相關(guān)性辨識(shí)方法及其存儲(chǔ)器數(shù)據(jù)處理方法,尤其涉及一種連 續(xù)存取的數(shù)據(jù)的相關(guān)性辨識(shí)方法及其存儲(chǔ)器數(shù)據(jù)處理方法。
背景技術(shù):
快閃存儲(chǔ)器的特性無(wú)法直接覆寫(xiě),且擦除次數(shù)有限。無(wú)法直接覆寫(xiě),是指新數(shù)據(jù)在 進(jìn)行存儲(chǔ)之前,其對(duì)應(yīng)的快閃存儲(chǔ)器存儲(chǔ)區(qū)塊若已存有數(shù)據(jù),則需先擦除這些數(shù)據(jù)后才能 存儲(chǔ)新數(shù)據(jù)。此外,在存儲(chǔ)器中進(jìn)行數(shù)據(jù)擦除的處理時(shí)間比數(shù)據(jù)讀取或?qū)懭氲臅r(shí)間更長(zhǎng),因 此,如果能減少數(shù)據(jù)擦除的次數(shù)則能提升存儲(chǔ)器的存取效能??扉W存儲(chǔ)器亦有其擦除次數(shù)的限制,因此若為了存取數(shù)據(jù)而經(jīng)常對(duì)存儲(chǔ)器進(jìn)行擦 除處理,則會(huì)縮減存儲(chǔ)器的使用壽命。在已知技術(shù)中為了能夠減少數(shù)據(jù)的搬移、擦除次數(shù), 因此,利用動(dòng)態(tài)分析數(shù)據(jù)屬性將其分類(lèi)為冷數(shù)據(jù)(cold data)以及熱數(shù)據(jù)(hot data)。所 謂冷、熱數(shù)據(jù),分別是指在一單位時(shí)間內(nèi)較少存取的數(shù)據(jù)以及較常存取的數(shù)據(jù)。已知技術(shù)通 過(guò)將冷數(shù)據(jù)存儲(chǔ)于同一存儲(chǔ)區(qū)塊,熱數(shù)據(jù)存儲(chǔ)于另一存儲(chǔ)區(qū)塊的方式,使得冷、熱數(shù)據(jù)可以 分別進(jìn)行處理以提升存取效率,并減少所需的擦除次數(shù)。然而,根據(jù)數(shù)據(jù)被存取的頻繁程度 來(lái)歸類(lèi)為冷、熱數(shù)據(jù)仍有其缺點(diǎn),因此,提出一種新的存儲(chǔ)器數(shù)據(jù)處理方法以及辨識(shí)方法實(shí) 有其必要性。
發(fā)明內(nèi)容
本發(fā)明的一目的在于提出一種存儲(chǔ)器數(shù)據(jù)處理方法。本方法將具有相關(guān)性的數(shù)據(jù) 存儲(chǔ)于相同存儲(chǔ)區(qū)塊中,因此若需存取這些數(shù)據(jù)時(shí)則不必在多個(gè)存儲(chǔ)區(qū)塊中進(jìn)行存取。其 中,具有相關(guān)性的數(shù)據(jù)是指根據(jù)特定規(guī)則而依序進(jìn)行存取的多筆數(shù)據(jù),或是使用者為執(zhí)行 特定功能而連續(xù)存取的多筆數(shù)據(jù)。本發(fā)明的另一目的在于提出一種判別數(shù)據(jù)間相關(guān)性的方法。其中,具有相關(guān)性的 數(shù)據(jù)是指使用者為執(zhí)行特定功能而連續(xù)存取的多筆數(shù)據(jù),因此,該多筆數(shù)據(jù)被應(yīng)用于執(zhí)行 該特定功能。在本發(fā)明一實(shí)施例中提出一種存儲(chǔ)器數(shù)據(jù)處理方法,其中該存儲(chǔ)器包含多個(gè)存儲(chǔ) 區(qū)塊,每一個(gè)存儲(chǔ)區(qū)塊具有多個(gè)存儲(chǔ)頁(yè),該數(shù)據(jù)處理方法包含(a)從多個(gè)存儲(chǔ)區(qū)塊中找出已寫(xiě)入數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)區(qū)塊;(b)對(duì)至少一數(shù)據(jù)存儲(chǔ)區(qū)塊的多個(gè)存儲(chǔ)頁(yè),將其中連續(xù)存取的多個(gè)存儲(chǔ)頁(yè)歸類(lèi)為 至少一存儲(chǔ)頁(yè)群組;以及(c)將至少一存儲(chǔ)頁(yè)群組的多個(gè)存儲(chǔ)頁(yè)復(fù)制至多個(gè)存儲(chǔ)區(qū)塊中未寫(xiě)入數(shù)據(jù)的空白 存儲(chǔ)區(qū)塊。在本發(fā)明一實(shí)施例中提出一種數(shù)據(jù)相關(guān)性辨識(shí)方法,用以辨識(shí)具有連續(xù)存取的數(shù) 據(jù)相關(guān)性的多個(gè)筆數(shù)據(jù),該多個(gè)筆數(shù)據(jù)中的每一數(shù)據(jù)分別對(duì)應(yīng)于一存儲(chǔ)器中的一邏輯區(qū)塊 地址,該方法包含
(a)將多個(gè)筆數(shù)據(jù)中至少一數(shù)據(jù)對(duì)應(yīng)的邏輯區(qū)塊地址經(jīng)由一函數(shù)進(jìn)行運(yùn)算,輸出一第一數(shù)值;(b)多個(gè)筆數(shù)據(jù)中于該至少一數(shù)據(jù)之后存取的至少另一數(shù)據(jù),將其對(duì)應(yīng)的邏輯區(qū) 塊地址經(jīng)由該函數(shù)進(jìn)行運(yùn)算,輸出一第二數(shù)值;(c)將第一、第二數(shù)值對(duì)應(yīng)的一相關(guān)性系數(shù)與一第三數(shù)值進(jìn)行累加;以及(d)當(dāng)該相關(guān)性系數(shù)大于一臨界值,判斷第一、第二數(shù)值分別對(duì)應(yīng)的至少一數(shù)據(jù)與 至少另一數(shù)據(jù)具有連續(xù)存取的數(shù)據(jù)相關(guān)性。
圖1顯示已知存儲(chǔ)器的實(shí)體區(qū)塊地址與邏輯區(qū)塊地址的示意圖, 圖2顯示本發(fā)明的存儲(chǔ)器數(shù)據(jù)處理方法的實(shí)施例流程圖。 圖3顯示存儲(chǔ)器應(yīng)用本數(shù)據(jù)處理方法的示意圖。 圖4顯示本發(fā)明的數(shù)據(jù)相關(guān)性辨識(shí)方法流程圖。 圖fe與圖恥顯示應(yīng)用本發(fā)明的數(shù)據(jù)相關(guān)性辨識(shí)方法的示意圖<主要元件符號(hào)說(shuō)明
快閃存儲(chǔ)器 存儲(chǔ)頁(yè)群組 存儲(chǔ)區(qū)塊 存儲(chǔ)頁(yè) 數(shù)據(jù)相關(guān)性系數(shù)相關(guān)性系數(shù)表 函數(shù)310 320block 0、block 1> block 2> block η page 0> page 1> page 2> page 3> page 4 datal> data2> data3> data4> data5> data7> data8> datall> data26Locality (K1, H1)、Locality (K2, H1)、Locality (K3,H1)、Locality (H1, H2)、Locality (K2, H2)、Locality (K3, H2)LocalityHash
具體實(shí)施例方式由于已知技術(shù)是將數(shù)據(jù)分類(lèi)為冷、熱數(shù)據(jù),使得具有數(shù)據(jù)相關(guān)性的多筆數(shù)據(jù)可能 分別存儲(chǔ)于不同的存儲(chǔ)區(qū)塊而降低存儲(chǔ)器的數(shù)據(jù)存取效率。本發(fā)明提出了一種數(shù)據(jù)相關(guān) 性辨識(shí)方法,以及存儲(chǔ)器數(shù)據(jù)處理方法。本發(fā)明實(shí)施例可以判斷具有連續(xù)存取的相關(guān)性的 數(shù)據(jù),并可將具有相關(guān)性的數(shù)據(jù)存儲(chǔ)于存儲(chǔ)器中相同或相近的存儲(chǔ)區(qū)塊以提升數(shù)據(jù)存取效率。圖1顯示一已知存儲(chǔ)器的實(shí)體區(qū)塊地址與邏輯區(qū)塊地址的示意圖。如圖1所顯示, 存儲(chǔ)器110中包含有多個(gè)存儲(chǔ)區(qū)塊(Block),每一存儲(chǔ)區(qū)塊中包含用于存儲(chǔ)數(shù)據(jù)的多個(gè)存 儲(chǔ)頁(yè)(page)。每一存儲(chǔ)頁(yè)皆具有一對(duì)應(yīng)的實(shí)體區(qū)塊地址(Physical BlockAddress, PBA), 而各個(gè)實(shí)體區(qū)塊地址也對(duì)應(yīng)于一邏輯區(qū)塊地址(Logical Block Address,LBA)。連續(xù)的實(shí) 體區(qū)塊地址PBA未必對(duì)應(yīng)于連續(xù)的邏輯區(qū)塊地址。外部系統(tǒng)(圖未示出)對(duì)存儲(chǔ)器110存 取數(shù)據(jù)的過(guò)程,是先發(fā)送一邏輯區(qū)塊地址給存儲(chǔ)器110的控制單元(圖未示出),然后由控 制單元查詢?cè)撨壿媴^(qū)塊地址于存儲(chǔ)器110中相對(duì)應(yīng)的實(shí)體區(qū)塊地址。最后,控制單元存取該實(shí)體區(qū)塊地址上的數(shù)據(jù)并傳送給外部系統(tǒng)。如先前所述,已知技術(shù)中為了提高存儲(chǔ)器的存取效率,于是將數(shù)據(jù)依據(jù)單位時(shí)間 內(nèi)的存取次數(shù)區(qū)分為冷、熱數(shù)據(jù),并將熱數(shù)據(jù)存儲(chǔ)于同一個(gè)存儲(chǔ)區(qū)塊,而冷數(shù)據(jù)存儲(chǔ)于另一 存儲(chǔ)區(qū)塊。其中,熱數(shù)據(jù)是較為頻繁存取的數(shù)據(jù),而冷數(shù)據(jù)則是較少存取的數(shù)據(jù)。然而,同 一存儲(chǔ)區(qū)塊中的多筆熱數(shù)據(jù)彼此之間未必具有本發(fā)明所指稱(chēng)的相關(guān)性。因此當(dāng)使用者為執(zhí) 行特定功能而需存取多筆已知技術(shù)下所區(qū)分出的熱數(shù)據(jù)時(shí),可能需于不同的存儲(chǔ)區(qū)塊之中 存取這些熱數(shù)據(jù)而降低了存取效率。有鑒于此,本發(fā)明中提出了一種存儲(chǔ)器數(shù)據(jù)處理方法。本方法將具有連續(xù)存取的 相關(guān)性的數(shù)據(jù)存儲(chǔ)于相同存儲(chǔ)區(qū)塊中,因此不必在多個(gè)存儲(chǔ)區(qū)塊中分別存取這些數(shù)據(jù)。在 本發(fā)明實(shí)施例中,具有連續(xù)存取的相關(guān)性的數(shù)據(jù)表示使用者為執(zhí)行特定功能而存取的多筆 數(shù)據(jù)。換句話說(shuō),該多筆數(shù)據(jù)被應(yīng)用于執(zhí)行該特定功能。例如使用者為執(zhí)行計(jì)算機(jī)開(kāi)機(jī),則 具有連續(xù)存取的相關(guān)性的數(shù)據(jù)包含BIOS程序代碼、磁盤(pán)開(kāi)機(jī)程序代碼、操作系統(tǒng)啟動(dòng)程序 代碼等等。因此,BIOS程序代碼、磁盤(pán)開(kāi)機(jī)程序代碼、操作系統(tǒng)啟動(dòng)程序代碼即具有連續(xù)存 取的相關(guān)性的數(shù)據(jù)。又例如當(dāng)使用者欲查詢存儲(chǔ)裝置的數(shù)據(jù)夾與文件,則具有連續(xù)存取的 相關(guān)性的數(shù)據(jù)包含數(shù)據(jù)夾名稱(chēng)數(shù)據(jù)、子數(shù)據(jù)夾名稱(chēng)數(shù)據(jù),以及文件名稱(chēng)數(shù)據(jù)等等。此外,連 續(xù)存取是表示這些數(shù)據(jù)依執(zhí)行特定功能的步驟次序連續(xù)存取,而非限定于表示時(shí)間上的連 續(xù)存取。本發(fā)明實(shí)施例中提出了二種辨識(shí)方法應(yīng)用于判別具有連續(xù)存取的相關(guān)性的數(shù)據(jù)。 其中一方法利用存儲(chǔ)器經(jīng)常依邏輯區(qū)塊地址順序而連續(xù)寫(xiě)入數(shù)據(jù)的特性進(jìn)行辨識(shí)。而另一 方法則利用統(tǒng)計(jì)方式來(lái)辨識(shí)數(shù)據(jù)之間是否具有連續(xù)存取的相關(guān)性。圖2顯示本發(fā)明中存儲(chǔ)器數(shù)據(jù)處理方法的一實(shí)施例流程圖。該方法是應(yīng)用于一存 儲(chǔ)器的數(shù)據(jù)處理方法,本實(shí)施例中該存儲(chǔ)器為快閃存儲(chǔ)器。該快閃存儲(chǔ)器包含多個(gè)存儲(chǔ)區(qū) 塊,每一存儲(chǔ)區(qū)塊皆具有多個(gè)存儲(chǔ)頁(yè),且每一存儲(chǔ)頁(yè)亦具有相對(duì)應(yīng)的邏輯區(qū)塊地址以及實(shí) 體區(qū)塊地址。首先,從快閃存儲(chǔ)器的多個(gè)存儲(chǔ)區(qū)塊里,先找出已寫(xiě)入數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)區(qū)塊 (SllO)。為了避免找出所有已寫(xiě)入數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)區(qū)塊耗費(fèi)過(guò)長(zhǎng)時(shí)間,實(shí)施例可設(shè)定找到 一特定數(shù)目(例如至少一個(gè))的數(shù)據(jù)存儲(chǔ)區(qū)塊即執(zhí)行下一步驟。接著對(duì)至少一數(shù)據(jù)存儲(chǔ)區(qū)塊中的多個(gè)存儲(chǔ)頁(yè),將其中辨識(shí)為能連續(xù)存取的多個(gè)存 儲(chǔ)頁(yè)歸類(lèi)為至少一存儲(chǔ)頁(yè)群組(S120)。在本實(shí)施例中辨識(shí)能連續(xù)存取的多個(gè)存儲(chǔ)頁(yè)的方 法,是利用存儲(chǔ)器經(jīng)常將具有相關(guān)性的數(shù)據(jù)依邏輯區(qū)塊地址順序?qū)懭氪鎯?chǔ)頁(yè)的特性,于是 將存儲(chǔ)于連續(xù)邏輯區(qū)塊地址內(nèi)的數(shù)據(jù)辨識(shí)為具有連續(xù)存取的相關(guān)性。因此,該方法首先記 錄該至少一數(shù)據(jù)存儲(chǔ)區(qū)塊的多個(gè)存儲(chǔ)頁(yè)的邏輯區(qū)塊地址;然后將該多個(gè)存儲(chǔ)頁(yè)中邏輯區(qū)塊 地址相近的多個(gè)存儲(chǔ)頁(yè)歸類(lèi)到至少一存儲(chǔ)頁(yè)群組。其中,邏輯區(qū)塊地址相近表示邏輯區(qū)塊 地址的數(shù)值差異在一特定范圍內(nèi),例如數(shù)值差異不超過(guò)3。另一實(shí)施例中,邏輯區(qū)塊地址相 近表示邏輯區(qū)塊地址的數(shù)值是連續(xù)的,例如多個(gè)存儲(chǔ)頁(yè)的邏輯區(qū)塊地址分別為1、2、3。在辨識(shí)為能連續(xù)存取的多個(gè)存儲(chǔ)頁(yè)被歸類(lèi)為至少一存儲(chǔ)頁(yè)群組后,接著便將存儲(chǔ) 頁(yè)群組的多個(gè)存儲(chǔ)頁(yè)復(fù)制至前述多個(gè)存儲(chǔ)區(qū)塊中未寫(xiě)入數(shù)據(jù)的空白存儲(chǔ)區(qū)塊(S130)。而為 了使同一個(gè)存儲(chǔ)頁(yè)群組的多個(gè)存儲(chǔ)頁(yè)可以快速地被存取,這些存儲(chǔ)頁(yè)被寫(xiě)入至同一個(gè)空白 存儲(chǔ)區(qū)塊中。且為了符合快閃存儲(chǔ)器依邏輯區(qū)塊地址順序?qū)懭霐?shù)據(jù)的特性,被歸類(lèi)至同一 存儲(chǔ)頁(yè)群組中的多個(gè)存儲(chǔ)頁(yè),依據(jù)邏輯區(qū)塊地址順序?qū)懭氲酵粋€(gè)空白存儲(chǔ)區(qū)塊中。
此外,在本實(shí)施例中可選擇性地包含擦除前述數(shù)據(jù)存儲(chǔ)區(qū)塊中的數(shù)據(jù)(S140),以 令該數(shù)據(jù)存儲(chǔ)區(qū)塊成為空白存儲(chǔ)區(qū)塊提供后續(xù)的數(shù)據(jù)存儲(chǔ)。以上所述的存儲(chǔ)器數(shù)據(jù)處理方 法可以由一使用者手動(dòng)致能,或是該快閃存儲(chǔ)器每隔一特定時(shí)間即執(zhí)行本方法。圖3顯示一存儲(chǔ)器應(yīng)用本數(shù)據(jù)處理方法的示意圖。如圖所示,一快閃存儲(chǔ)器310 中包含許多存儲(chǔ)區(qū)塊block 0,block Ublock 2,block η以及其它的存儲(chǔ)區(qū)塊等等,而每 一個(gè)存儲(chǔ)區(qū)塊又包含多個(gè)存儲(chǔ)頁(yè)page 0、page Upage 2, page 3, page 4。如圖3上半部 所示,快閃存儲(chǔ)器310中的存儲(chǔ)區(qū)塊block O.block 1已寫(xiě)入數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)區(qū)塊,存儲(chǔ)區(qū) 塊block 2、block η則是未寫(xiě)入數(shù)據(jù)的空白存儲(chǔ)區(qū)塊。當(dāng)快閃存儲(chǔ)器310應(yīng)用本數(shù)據(jù)處理 方法,則根據(jù)步驟(SllO)首先會(huì)找出特定數(shù)目個(gè)已寫(xiě)入數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)區(qū)塊,在本例中設(shè) 定找到一個(gè)已寫(xiě)入數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)區(qū)塊(例如數(shù)據(jù)存儲(chǔ)區(qū)塊block 0)后即執(zhí)行下一步驟。然后依據(jù)步驟(S120),將數(shù)據(jù)存儲(chǔ)區(qū)塊block 0中辨識(shí)為能連續(xù)存取的多個(gè)存儲(chǔ) 頁(yè)歸類(lèi)為至少一存儲(chǔ)頁(yè)群組320。能連續(xù)存取的存儲(chǔ)頁(yè)的特征之一,是這些存儲(chǔ)頁(yè)具有連續(xù) 的邏輯區(qū)塊地址順序。形成該特征的原因由于存儲(chǔ)器通常依邏輯區(qū)塊地址順序連續(xù)性地寫(xiě) 入數(shù)據(jù)。因此,在步驟(S120)中先記錄數(shù)據(jù)存儲(chǔ)區(qū)塊block 0的所有存儲(chǔ)頁(yè)page O.page Upage 2、page3、page 4的邏輯區(qū)塊地址7、2、3、26、1 ;然后將這些存儲(chǔ)頁(yè)page 0、pagel、 page 2、page 3、page 4中邏輯區(qū)塊地址相近的多個(gè)存儲(chǔ)頁(yè)歸類(lèi)到存儲(chǔ)頁(yè)群組320。尤其, 是將具有連續(xù)邏輯區(qū)塊地址1、2、3的多個(gè)存儲(chǔ)頁(yè)page4、page 1、page 2的信息(包含邏 輯區(qū)塊地址、實(shí)體區(qū)塊地址)依邏輯區(qū)塊地址次序記錄于存儲(chǔ)頁(yè)群組320中,再將剩余的 存儲(chǔ)頁(yè)page 0, page 3的信息排列于其后。步驟(S120)主要是為了將具有連續(xù)邏輯區(qū)塊 地址的多個(gè)存儲(chǔ)頁(yè)的信息依邏輯區(qū)塊地址次序記錄于同一存儲(chǔ)頁(yè)群組,因此在另一實(shí)施例 中,可以將非連續(xù)邏輯區(qū)塊地址的存儲(chǔ)頁(yè)(例如存儲(chǔ)頁(yè)page 3、page 4)的信息,存儲(chǔ)于另 一個(gè)存儲(chǔ)頁(yè)群組中。最后,步驟(S130)根據(jù)存儲(chǔ)頁(yè)群組320中記錄的多個(gè)存儲(chǔ)頁(yè)信息,依邏輯區(qū)塊地 址次序?qū)⒏鞔鎯?chǔ)頁(yè)的數(shù)據(jù)復(fù)制至一空白存儲(chǔ)區(qū)塊的存儲(chǔ)頁(yè),該空白存儲(chǔ)區(qū)塊是未寫(xiě)入數(shù)據(jù) 的存儲(chǔ)區(qū)塊。在本例中是挑選出空白存儲(chǔ)區(qū)塊block η作為存儲(chǔ)數(shù)據(jù)的新數(shù)據(jù)存儲(chǔ)區(qū)塊, 因此如圖3下半部所示,步驟(S130)依存儲(chǔ)頁(yè)群組320中存儲(chǔ)的各存儲(chǔ)頁(yè)邏輯區(qū)塊地址1、 2,3,7,26次序,復(fù)制其對(duì)應(yīng)的數(shù)據(jù)datal、data2、data3、data7、data26至新數(shù)據(jù)存儲(chǔ)區(qū)塊 block η 的存儲(chǔ)頁(yè) page 0、page Upage 2,page 3,page 4 中。步驟(S130)主要是為了將 具有連續(xù)邏輯區(qū)塊地址的多個(gè)存儲(chǔ)頁(yè)的數(shù)據(jù)存儲(chǔ)于同一個(gè)存儲(chǔ)區(qū)塊。因此另一實(shí)施例中, 可以將非連續(xù)邏輯區(qū)塊地址的存儲(chǔ)頁(yè)(例如存儲(chǔ)頁(yè)page 3、page 4)的數(shù)據(jù),存儲(chǔ)于另一個(gè) 存儲(chǔ)區(qū)塊。此外,由于數(shù)據(jù)存儲(chǔ)區(qū)塊block 0中的數(shù)據(jù)已依本方法實(shí)施例另存于數(shù)據(jù)存儲(chǔ) 區(qū)塊block n,因此可依據(jù)步驟(S140)擦除數(shù)據(jù)存儲(chǔ)區(qū)塊block 0中的數(shù)據(jù),以令其成為一 新的空白存儲(chǔ)區(qū)塊。以上公開(kāi)了本發(fā)明所提出的一種存儲(chǔ)器數(shù)據(jù)處理方法,該方法將具有連續(xù)存取的 相關(guān)性的數(shù)據(jù)存儲(chǔ)于存儲(chǔ)器中相同或相近的存儲(chǔ)區(qū)塊。上述實(shí)施例僅記載一個(gè)數(shù)據(jù)存儲(chǔ)區(qū) 塊的處理過(guò)程,已知本領(lǐng)域技術(shù)人員當(dāng)可了解若同時(shí)處理多個(gè)數(shù)據(jù)存儲(chǔ)區(qū)塊,則更能將其 中具有相關(guān)性的數(shù)據(jù)存儲(chǔ)于相同或相近的存儲(chǔ)區(qū)塊以提升存取效率。此外,上文也描述了 一種辨識(shí)具有連續(xù)存取的相關(guān)性數(shù)據(jù)的方法。該辨識(shí)方法利用存儲(chǔ)器經(jīng)常依邏輯區(qū)塊地址 順序而連續(xù)寫(xiě)入數(shù)據(jù)的特性,于是將存儲(chǔ)于連續(xù)邏輯區(qū)塊地址內(nèi)的數(shù)據(jù)辨識(shí)為具有連續(xù)存取的相關(guān)性。此外,本發(fā)明實(shí)施例也提出了另一種辨識(shí)方法,其利用統(tǒng)計(jì)方式來(lái)辨識(shí)數(shù)據(jù)之 間是否具有連續(xù)存取的相關(guān)性。圖4顯示本發(fā)明實(shí)施例所提出的數(shù)據(jù)相關(guān)性辨識(shí)方法流程圖,其利用統(tǒng)計(jì)方式來(lái) 辨識(shí)具有連續(xù)存取的相關(guān)性的數(shù)據(jù)。多個(gè)筆數(shù)據(jù)中的每一數(shù)據(jù)分別對(duì)應(yīng)于一存儲(chǔ)器中的一 邏輯區(qū)塊地址。首先,當(dāng)該多個(gè)筆數(shù)據(jù)中的至少一數(shù)據(jù)欲開(kāi)始進(jìn)行存取,則將其對(duì)應(yīng)的邏輯 區(qū)塊地址經(jīng)由一函數(shù)進(jìn)行運(yùn)算后輸出一第一數(shù)值(S410),其中,每一邏輯區(qū)塊地址皆是一 數(shù)值。在一實(shí)施例中,可以依數(shù)據(jù)存取的次序,將最先存取的數(shù)筆數(shù)據(jù)的邏輯區(qū)塊地址經(jīng)由 該函數(shù)進(jìn)行運(yùn)算,然后輸出個(gè)別對(duì)應(yīng)的第一數(shù)值。此外,該函數(shù)可以是一雜湊函數(shù)、一余數(shù) 函數(shù),或其它函數(shù)。然后,對(duì)該多個(gè)筆數(shù)據(jù)中于該至少一數(shù)據(jù)之后存取的至少另一數(shù)據(jù),將其對(duì)應(yīng)的 邏輯區(qū)塊地址經(jīng)由同一個(gè)函數(shù)進(jìn)行運(yùn)算輸出一第二數(shù)值(S420)。在步驟(S420)中,該至少 另一數(shù)據(jù)是接續(xù)在該至少一數(shù)據(jù)之后被存取的數(shù)據(jù),因此兩者之間可能是使用者為執(zhí)行特 定功能而連續(xù)存取的數(shù)據(jù),但仍需再作進(jìn)一步的判斷。接下來(lái),將該第一、第二數(shù)值對(duì)應(yīng)的 一相關(guān)性系數(shù)與一第三數(shù)值進(jìn)行累加(S430)。其中,對(duì)應(yīng)于第一、第二數(shù)值的相關(guān)性系數(shù)用 于評(píng)量該至少一數(shù)據(jù)與該至少另一數(shù)據(jù)是否經(jīng)常被連續(xù)存取,因此每當(dāng)發(fā)生連序存取的情 況時(shí)該相關(guān)性系數(shù)便會(huì)與第三數(shù)值(例如數(shù)值為1)作累加。最后,將該相關(guān)性系數(shù)與一臨界值相比較,當(dāng)相關(guān)性系數(shù)大于臨界值時(shí)便可判斷 該第一、第二數(shù)值分別對(duì)應(yīng)的該至少一數(shù)據(jù)與該至少另一數(shù)據(jù)之間具有連續(xù)存取的數(shù)據(jù)相 關(guān)性(S440)。除此之外,本辨識(shí)方法可以選擇性地包含步驟(S450),用以減少相關(guān)性系數(shù) 的數(shù)值,其目的是為了降低使用者先前存取數(shù)據(jù)的習(xí)慣對(duì)當(dāng)前所作判斷的影響。而減少相 關(guān)性系數(shù)數(shù)值的方法,可以例如以第四數(shù)值減去該相關(guān)性系數(shù)的數(shù)值,或是將該相關(guān)性系 數(shù)除以第五數(shù)值。而以上所述的步驟(S450)可以由一使用者手動(dòng)致能,或每隔一特定時(shí)間 即執(zhí)行該步驟。圖fe與圖恥顯示應(yīng)用本發(fā)明的數(shù)據(jù)相關(guān)性辨識(shí)方法的示意圖。如圖如所示,在 步驟(S410)當(dāng)有多筆數(shù)據(jù)進(jìn)行連續(xù)存取時(shí),為了辨識(shí)這些數(shù)據(jù)是否具有連續(xù)存取的數(shù)據(jù) 相關(guān)性,則首先將最早存取的至少一數(shù)據(jù),例如以最先存取的三筆數(shù)據(jù)datal、data2、data3 的邏輯區(qū)塊地址的數(shù)值21、25、4,依其存取次序經(jīng)由一函數(shù)Hash進(jìn)行運(yùn)算后輸出對(duì)應(yīng)的三 筆第一數(shù)值 Kl = 1、K2 = 2、K3 = 4。接著,依據(jù)步驟(S420)對(duì)該三筆數(shù)據(jù)datal、data2、data3之后存取的至少另一數(shù) 據(jù)的邏輯區(qū)塊地址,例如數(shù)據(jù)data4的邏輯區(qū)塊地址的數(shù)值7,經(jīng)由同一函數(shù)Hash進(jìn)行運(yùn) 算后輸出對(duì)應(yīng)的第二數(shù)值Hl = 3。接下來(lái),步驟(S430)中將這些第一數(shù)值與該第二數(shù)值 對(duì)應(yīng)的相關(guān)性系數(shù) Locality (Kl,HI)、Locality (K2,HI)、Locality (K3,HI)分別與一第三 數(shù)值進(jìn)行累加,本實(shí)施例中該第三數(shù)值為1。為了便于記錄多個(gè)相關(guān)性系數(shù),本實(shí)施例中可 以采用一相關(guān)性系數(shù)表Locality來(lái)記錄各個(gè)相關(guān)性系數(shù)的數(shù)值。例如Kl = UHl = 3,因 此Locality (Kl,Hl)的數(shù)值即記錄于相關(guān)性系數(shù)表Locality中X座標(biāo)值為1,Y座標(biāo)值為 3的欄位中。之后,步驟(S440)將各相關(guān)性系數(shù)Locality (Kl,HI)、Locality (K2,HI)、 Locality (Κ3, HI)與一臨界值相比較。例如該臨界值設(shè)為100,當(dāng)相關(guān)性系數(shù)的數(shù)值大于 100時(shí)便可判斷該相關(guān)性系數(shù)所對(duì)應(yīng)的二筆數(shù)據(jù)具有連續(xù)存取的數(shù)據(jù)相關(guān)性。舉例來(lái)說(shuō),如果相關(guān)性系數(shù)LocalityOQ,HI)的數(shù)值大于100時(shí),則表示Kl對(duì)應(yīng)的邏輯區(qū)塊地址21 的數(shù)據(jù)datal,與Hl對(duì)應(yīng)的邏輯區(qū)塊地址7的數(shù)據(jù)data4具有連續(xù)存取的數(shù)據(jù)相關(guān)性。此 外,在步驟(S440)是將Kl = 1以及Hl = 3的數(shù)值經(jīng)由一反函數(shù)進(jìn)行運(yùn)算以求得其對(duì)應(yīng)的 邏輯區(qū)塊地址21、7,而該反函數(shù)相對(duì)應(yīng)于前述的函數(shù)。已知本領(lǐng)域技術(shù)人員當(dāng)可了解于多筆數(shù)據(jù)進(jìn)行存取時(shí),前述步驟(S410)至步驟 (S440)可以重復(fù)執(zhí)行藉以評(píng)估下一筆存取的數(shù)據(jù)與先前數(shù)據(jù)之間的連續(xù)存取相關(guān)性。如圖 恥所示,當(dāng)下一筆數(shù)據(jù)data5欲進(jìn)行存取時(shí),則首先根據(jù)步驟(S410)計(jì)算其前三筆數(shù)據(jù)的 第一數(shù)值。其中數(shù)據(jù)data2、data3、data4的邏輯區(qū)塊地址的數(shù)值25、4、7依存取次序經(jīng)由 該函數(shù)Hash進(jìn)行運(yùn)算后輸出對(duì)應(yīng)的三筆第一數(shù)值K2 = 2、K3 = 4、H1 = 3。亦或是將數(shù)據(jù) data4的邏輯區(qū)塊地址7經(jīng)函數(shù)Hash運(yùn)算后輸出的第一數(shù)值Hl,取代數(shù)據(jù)datal的邏輯區(qū) 塊地址21經(jīng)函數(shù)進(jìn)行運(yùn)算后輸出的第一數(shù)值Kl即可。然后依步驟(S420)對(duì)該三筆數(shù)據(jù) data2、data3、data4之后存取的數(shù)據(jù)data5的邏輯區(qū)塊地址33經(jīng)由同一函數(shù)進(jìn)行運(yùn)算后 輸出對(duì)應(yīng)的第二數(shù)值H2= 1。步驟(S430)中將這些第一數(shù)值與該第二數(shù)值對(duì)應(yīng)的相關(guān)性系數(shù)Locality (H1, H2) ,Locality (K2,H2) ,Locality (K3,H2)分別與一第三數(shù)值1進(jìn)行累加。最后,步驟(S440) 將各相關(guān)性系數(shù) Locality(Hl,H2)、Locality(K2,H2)、Locality(K3,H2)與臨界值相比較。 而當(dāng)相關(guān)性系數(shù)的數(shù)值大于臨界值時(shí)便可判斷該相關(guān)性系數(shù)所對(duì)應(yīng)的二筆數(shù)據(jù)之間具有 連續(xù)存取的數(shù)據(jù)相關(guān)性。以上說(shuō)明僅是本發(fā)明的優(yōu)選實(shí)施例,并非用以限定本發(fā)明的實(shí)施 方式。例如,可選用其它特定數(shù)目的數(shù)據(jù)來(lái)求取第一數(shù)值,或是其它特定數(shù)目的數(shù)據(jù)來(lái)求取 第二數(shù)值。此外,也可利用其它方式來(lái)統(tǒng)計(jì)數(shù)據(jù)之間是否具有連續(xù)存取的相關(guān)性,并不限定 僅可使用相關(guān)性系數(shù)以及建立相關(guān)性系數(shù)表來(lái)統(tǒng)計(jì)數(shù)據(jù)間的相關(guān)性。本發(fā)明以上所述的優(yōu) 選實(shí)施例公開(kāi)了其中兩種辨識(shí)方法,用以辨識(shí)具有連續(xù)存取的相關(guān)性的數(shù)據(jù),但其它辨識(shí) 方法亦屬于本發(fā)明的申請(qǐng)專(zhuān)利范圍。其中,具有連續(xù)存取的相關(guān)性的數(shù)據(jù)表示使用者為執(zhí) 行特定功能而存取的多筆數(shù)據(jù)。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并非用以限定本發(fā)明的申請(qǐng)專(zhuān)利范圍; 凡其它未脫離本發(fā)明所揭示的精神下所完成的等效改變或修飾,均應(yīng)包含在本發(fā)明要求保 護(hù)的范圍內(nèi)。8
權(quán)利要求
1.一種存儲(chǔ)器數(shù)據(jù)處理方法,其中該存儲(chǔ)器包含多個(gè)存儲(chǔ)區(qū)塊,每一該多個(gè)存儲(chǔ)區(qū)塊 具有多個(gè)存儲(chǔ)頁(yè),該數(shù)據(jù)處理方法包含(a)從該多個(gè)存儲(chǔ)區(qū)塊中找出已寫(xiě)入數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)區(qū)塊;(b)對(duì)至少一數(shù)據(jù)存儲(chǔ)區(qū)塊的該多個(gè)存儲(chǔ)頁(yè),將其中連續(xù)存取的多個(gè)存儲(chǔ)頁(yè)歸類(lèi)為至 少一存儲(chǔ)頁(yè)群組;以及(c)將該至少一存儲(chǔ)頁(yè)群組的該多個(gè)存儲(chǔ)頁(yè)復(fù)制至該多個(gè)存儲(chǔ)區(qū)塊中未寫(xiě)入數(shù)據(jù)的空 白存儲(chǔ)區(qū)塊。
2.如權(quán)利要求1的存儲(chǔ)器數(shù)據(jù)處理方法,其中該步驟(b)中包含(bl)記錄該至少一數(shù)據(jù)存儲(chǔ)區(qū)塊的該多個(gè)存儲(chǔ)頁(yè)的邏輯區(qū)塊地址LBA ;以及(b2)將該多個(gè)存儲(chǔ)頁(yè)中邏輯區(qū)塊地址相近的多個(gè)存儲(chǔ)頁(yè)歸類(lèi)為該至少一存儲(chǔ)頁(yè)群組。
3.如權(quán)利要求2的存儲(chǔ)器數(shù)據(jù)處理方法,該步驟( )中的該多個(gè)存儲(chǔ)頁(yè)具有連續(xù)的邏 輯區(qū)塊地址。
4.如權(quán)利要求1的存儲(chǔ)器數(shù)據(jù)處理方法,其中該步驟(c)還包含將該至少一存儲(chǔ)頁(yè)群 組中的該多個(gè)存儲(chǔ)頁(yè),寫(xiě)入同一個(gè)空白存儲(chǔ)區(qū)塊。
5.如權(quán)利要求1的存儲(chǔ)器數(shù)據(jù)處理方法,其中該步驟(c)還包含依據(jù)該至少一存儲(chǔ)頁(yè) 群組中該多個(gè)存儲(chǔ)頁(yè)的邏輯區(qū)塊地址順序,寫(xiě)入同一個(gè)該空白存儲(chǔ)區(qū)塊。
6.如權(quán)利要求1的存儲(chǔ)器數(shù)據(jù)處理方法,其中該存儲(chǔ)器數(shù)據(jù)處理方法由一使用者手動(dòng) 致能。
7.如權(quán)利要求1的存儲(chǔ)器數(shù)據(jù)處理方法,其中該存儲(chǔ)器每隔一特定時(shí)間即執(zhí)行該存儲(chǔ) 器數(shù)據(jù)處理方法。
8.如權(quán)利要求1的存儲(chǔ)器數(shù)據(jù)處理方法,還包含(d)擦除該至少一數(shù)據(jù)存儲(chǔ)區(qū)塊中的數(shù)據(jù)。
9.一種存儲(chǔ)器數(shù)據(jù)處理方法,其中該存儲(chǔ)器包含多個(gè)存儲(chǔ)區(qū)塊,每一該多個(gè)存儲(chǔ)區(qū)塊 具有多個(gè)存儲(chǔ)頁(yè),該數(shù)據(jù)處理方法包含(a)從該多個(gè)存儲(chǔ)區(qū)塊中找出已寫(xiě)入數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)區(qū)塊;(b)記錄至少一數(shù)據(jù)存儲(chǔ)區(qū)塊的該多個(gè)存儲(chǔ)頁(yè)的邏輯區(qū)塊地址;(c)將該多個(gè)存儲(chǔ)頁(yè)中邏輯區(qū)塊地址相近的多個(gè)存儲(chǔ)頁(yè)歸類(lèi)為至少一存儲(chǔ)頁(yè)群組;(d)將該至少一存儲(chǔ)頁(yè)群組中的該多個(gè)存儲(chǔ)頁(yè),復(fù)制至該多個(gè)存儲(chǔ)區(qū)塊中未寫(xiě)入數(shù)據(jù) 的空白存儲(chǔ)區(qū)塊;以及(e)擦除該至少一數(shù)據(jù)存儲(chǔ)區(qū)塊中的數(shù)據(jù)。
10.如權(quán)利要求9的存儲(chǔ)器數(shù)據(jù)處理方法,其中該步驟(c)的該至少一存儲(chǔ)頁(yè)群組中, 包含具有連續(xù)邏輯區(qū)塊地址的該多個(gè)存儲(chǔ)頁(yè)。
11.如權(quán)利要求9的存儲(chǔ)器數(shù)據(jù)處理方法,其中該步驟(d)還包含依據(jù)該至少一存儲(chǔ)頁(yè) 群組中該多個(gè)存儲(chǔ)頁(yè)的邏輯區(qū)塊地址順序,寫(xiě)入同一個(gè)該空白存儲(chǔ)區(qū)塊。
12.如權(quán)利要求9的存儲(chǔ)器數(shù)據(jù)處理方法,其中該存儲(chǔ)器處理方法由一使用者手動(dòng)致能。
13.如權(quán)利要求9的存儲(chǔ)器數(shù)據(jù)處理方法,其中該存儲(chǔ)器每隔一特定時(shí)間即執(zhí)行該存 儲(chǔ)器數(shù)據(jù)處理方法。
全文摘要
本發(fā)明公開(kāi)一種數(shù)據(jù)相關(guān)性辨識(shí)方法及其存儲(chǔ)器數(shù)據(jù)處理方法。其中,具有相關(guān)性的數(shù)據(jù)是存儲(chǔ)于相同存儲(chǔ)區(qū)塊中。此外,辨識(shí)具有相關(guān)性的數(shù)據(jù)根據(jù)使用者為執(zhí)行特定功能而存取的多筆數(shù)據(jù)。換句話說(shuō),該多筆數(shù)據(jù)被應(yīng)用于執(zhí)行該特定功能。
文檔編號(hào)G06F12/06GK102053919SQ200910207668
公開(kāi)日2011年5月11日 申請(qǐng)日期2009年10月29日 優(yōu)先權(quán)日2009年10月29日
發(fā)明者郭大維 申請(qǐng)人:宏碁股份有限公司