專利名稱:對于緩存器使用無效指示符的裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計算系統(tǒng)和方法,具體地說,涉及一種包括具有緩存器的存儲系統(tǒng)的計算系統(tǒng)。
背景技術(shù):
圖1的框圖示出了通常的計算系統(tǒng)。該計算系統(tǒng)包括例如主計算機系統(tǒng)的主機10和存儲器20。主機10包括中央處理單元(未示出)和主存儲器(未示出)。存儲器20使用諸如小計算機系統(tǒng)互連(SCSI)接口、增強的小設(shè)備接口(ESDI)或者智能驅(qū)動電子(IDE)接口的標準化接口連接到主機10。存儲器20包括諸如硬盤或軟盤的存儲介質(zhì)22、緩存器24和控制器26。控制器26使用傳統(tǒng)的接口連接到存儲介質(zhì)22和緩存器。緩存器24包括諸如靜態(tài)隨機存取存儲器SRAM或動態(tài)隨機存取存儲器DRAM的存儲器。緩存器24被用于改進存儲器20的寫性能。
圖2示出了用于圖1所示計算系統(tǒng)的示例性文件處理的圖。當在諸如主機10的高層處執(zhí)行應(yīng)用程序時,該應(yīng)用程序產(chǎn)生多個文件并且所產(chǎn)生的文件由諸如文件分配表(FAT)文件系統(tǒng)的文件系統(tǒng)進行管理。如果應(yīng)用程序在所產(chǎn)生的文件中寫數(shù)據(jù),那么,在中央處理單元的控制下,寫入的數(shù)據(jù)被發(fā)送給諸如存儲器20的較低層。所發(fā)送的數(shù)據(jù)被暫時存儲在存儲器20的緩存器中。當主機10請求文件時,被請求文件的數(shù)據(jù)直接從存儲器20傳送給主機10的主存儲器或被請求文件的數(shù)據(jù)經(jīng)過緩存器24傳送給主機10的主存儲器。經(jīng)過緩存器24傳送的數(shù)據(jù)可以被暫時存儲在緩存器24中。
由于與存儲介質(zhì)22的容量相比,緩存器24的容量通常是小的,所以,通常不可能將從主存儲器傳送給存儲介質(zhì)22的所有數(shù)據(jù)都存儲在緩存器24中。因此,存儲在緩存器24中的數(shù)據(jù)在控制器26的控制下被間歇地傳送給存儲介質(zhì)22。從緩存器24到存儲介質(zhì)22的數(shù)據(jù)傳送通常被自動執(zhí)行而沒有主機10的干預(yù)。例如,如果當主機10請求執(zhí)行寫操作時緩存器24缺少存儲新數(shù)據(jù)的空間,或者如果存儲器20處于其中在預(yù)定的時間周期內(nèi)沒有從主機10接收到請求的空閑狀態(tài),暫時存儲在緩存器24中的數(shù)據(jù)可以被自動地傳送給存儲介質(zhì)22。
上述計算系統(tǒng)可能存在缺點。當刪除經(jīng)過主機10的應(yīng)用程序處理過的文件數(shù)據(jù)時,由在主機10處的文件系統(tǒng)將所述數(shù)據(jù)處理成被刪除的文件。即使是認為數(shù)據(jù)已經(jīng)在主機10的這一層被刪除了,但是該數(shù)據(jù)實際上仍然可能被存儲在緩存器24中。這樣,當緩存器24缺少存儲新數(shù)據(jù)的空間時,存儲在緩存器24中的數(shù)據(jù)可能在沒有主機10的干預(yù)下被自動傳送給存儲介質(zhì)22。雖然存儲在緩存器中的數(shù)據(jù)由于在高層處被刪除而變得無效,但是,由于控制器26通常不能確定存儲在緩存器24中的數(shù)據(jù)的有效性,所以,該無效數(shù)據(jù)可能被不必要地寫入存儲介質(zhì)22中。因此,存儲器20的寫性能可能被降低,并且存儲器20的壽命會由于不必要的寫操作而縮短。另外,不必要的寫操作浪費了功率。
發(fā)明內(nèi)容
在本發(fā)明的某些實施例中,存儲系統(tǒng)包括被配置來存儲數(shù)據(jù)的存儲介質(zhì)和被配置來緩存要被寫入該存儲介質(zhì)中的數(shù)據(jù)的緩存器。該存儲系統(tǒng)還包括被配置成響應(yīng)從外部源接收的無效指示符而將緩存數(shù)據(jù)有選擇地傳送給所述存儲介質(zhì)的控制器。例如,無效指示符可以包括從外部源接收的不寫信息,例如,表示所選擇的緩存數(shù)據(jù)對應(yīng)于被刪除文件數(shù)據(jù)的信息。
在另一個實施例中,控制器被配置成響應(yīng)所述無效指示符無效所選擇的緩存數(shù)據(jù)。具體地說,控制器可以被配置成響應(yīng)無效指示符而存儲表示無效緩存數(shù)據(jù)的無效的寫狀態(tài)信息,并響應(yīng)所存儲的寫狀態(tài)信息而防止無效緩存數(shù)據(jù)從緩存器到存儲介質(zhì)的傳送。
在本發(fā)明的又一個實施例中,所述控制器被配置成響應(yīng)緩存器中的存儲限制和/或存儲介質(zhì)的空閑狀態(tài)而觸發(fā)轉(zhuǎn)錄操作。所述轉(zhuǎn)錄操作包括在前述從緩存器向存儲介質(zhì)傳送無效緩存數(shù)據(jù)的同時,將有效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)控制器。根據(jù)另一個實施例,控制器還可以被配置成響應(yīng)無效緩存數(shù)據(jù)的無效而使能由無效緩存數(shù)據(jù)占據(jù)的緩存器中存儲空間再使用。
在本發(fā)明的某些實施例中,計算系統(tǒng)包括存儲系統(tǒng),該存儲系統(tǒng)包括被配置成用于存儲數(shù)據(jù)的存儲介質(zhì)、被配置成用于緩存要被寫入所述存儲介質(zhì)中的緩存數(shù)據(jù)的緩存器和被配置成用于響應(yīng)無效指示符而將緩存數(shù)據(jù)有選擇地傳送給所述存儲介質(zhì)的控制器。所述計算系統(tǒng)還包括被配置成向緩存器傳送數(shù)據(jù)并響應(yīng)在該主機處的數(shù)據(jù)修改操作而向存儲系統(tǒng)提供無效指示符的主機。例如,無效指示符可以包括響應(yīng)主機處文件數(shù)據(jù)的刪除而產(chǎn)生的不寫命令。
在本發(fā)明的另外的實施例中,提供用于操作包括存儲介質(zhì)和緩存器的存儲系統(tǒng),該緩存器被配置成存儲將被寫入所述存儲介質(zhì)中的數(shù)據(jù)。從諸如計算機主機的外部源接收與存儲在緩存器中的數(shù)據(jù)相關(guān)的無效指示符。響應(yīng)所接收的無效指示符,存儲在緩存器中的數(shù)據(jù)被有選擇地傳送給所述存儲介質(zhì)。
根據(jù)本發(fā)明的某些實施例,用于控制在存儲介質(zhì)中存儲的數(shù)據(jù)的系統(tǒng)包括被配置成緩存將被寫入所述存儲介質(zhì)中的數(shù)據(jù)的緩存器,和被配置成響應(yīng)從外部源接收的無效指示符將緩存數(shù)據(jù)有選擇地傳送給所述存儲介質(zhì)的控制器。
用于提供對本發(fā)明的進一步理解并構(gòu)成本申請一部分的附圖與說明書一起示出了本發(fā)明的實施例,以解釋本發(fā)明的原理。其中圖1的框圖示出了傳統(tǒng)的計算機系統(tǒng);圖2示出了圖1所示計算系統(tǒng)的傳統(tǒng)文件處理操作;圖3的框圖示出了根據(jù)本發(fā)明某些實施例的包括存儲系統(tǒng)的計算系統(tǒng);圖4A和4B示出了根據(jù)本發(fā)明另外一些實施例的存儲系統(tǒng)的映射表的圖;圖5的流程示出了根據(jù)本發(fā)明附加實施例的用于管理存儲在計算系統(tǒng)的存儲系統(tǒng)中的數(shù)據(jù)的示例性操作;和圖6A-6C示出了根據(jù)本發(fā)明的再一些實施例的基于對存儲在計算系統(tǒng)的存儲介質(zhì)中的緩存器中的數(shù)據(jù)的無效信息的示例性寫操作。
具體實施例方式
下面將結(jié)合附圖描述本發(fā)明的特定示例性實施例。但是,本發(fā)明可以多種不同的形式實施和不局限于這里所描述的實施例。提供這些實施例是使本披露更加徹底和完整,且對于本領(lǐng)域的普通技術(shù)人員來講能夠全部覆蓋本發(fā)明的范圍。在附圖中,相同數(shù)字表示相同的元件。應(yīng)當理解,當一個元件被稱做“被連接”或“被耦合”到另外一個元件時,它可以是被直接連接或耦合到其它元件,或者是存在介入元件。此外,這里所使用的“被連接”或“被耦合”可以包括被無線連接或耦合/這里所使用的術(shù)語僅被用于描述特定實施例的目的且不試圖限制本發(fā)明。如在這里使用的,單數(shù)形式“一個”和“所述”試圖包括多種形式,除非有其他特殊的描述。還應(yīng)當理解,當使用于本說明書中時,術(shù)語“包括(動詞)”、“包括(動詞)”、“包括(分詞)”和/或“包括(分詞)”規(guī)定存在所述特性、整數(shù)、步驟、操作、元件和/或部件,但不排除存在或附加一個或多個其它特性、整數(shù)、步驟、操作、元件、部件和/或它們的組合。
除非另有規(guī)定,這里所使用的所有術(shù)語(包括技術(shù)和科學術(shù)語)都具有本發(fā)明所屬技術(shù)領(lǐng)域普通技術(shù)人員所理解的共同含義。還應(yīng)當理解,諸如在公用字典中所定義的術(shù)語應(yīng)當被解釋為具有在相關(guān)技術(shù)的上下文和本發(fā)明說明書中所堅持的它們含義的意義,除非另有定義,并不以過分理想化和過度社交意義對其進行解釋。
應(yīng)當理解,雖然這里所使用的術(shù)語“第一”和“第二”被用于描述各種元件,但這些元件并不受這些術(shù)語的限制。這些術(shù)語僅僅被用于從一個元件識別另一個元件。因此,術(shù)語“第一”可以被稱做術(shù)語“第二”。類似的術(shù)語“第二”也可以被稱做術(shù)語“第一”而不脫離本發(fā)明的教導(dǎo)。如這里所使用的,術(shù)語“和/或”包括相關(guān)列表術(shù)語的一個或多個的任一和所有組合。符號“/”可以被用做與“和/或”相關(guān)的簡化符號。
在本發(fā)明中,“不寫”、“擦除”或“刪除”命令、請求或信息表示輸入給存儲系統(tǒng)以無效存儲在緩存器中的數(shù)據(jù)和避免其從緩存器傳送給存儲介質(zhì)的命令或其它信息。數(shù)據(jù)從緩存器向存儲介質(zhì)的傳送稱做“清洗”或“轉(zhuǎn)錄”操作。
圖3的框圖示出了根據(jù)本發(fā)明某些實施例的計算系統(tǒng)1000。計算系統(tǒng)1000包括主機系統(tǒng)100和存儲系統(tǒng)200。存儲系統(tǒng)200可以包括例如使用諸如SCSI、ESDI或IDE接口的標準化接口耦合到主機系統(tǒng)100的存儲器件。將意識到可以使用包括非標準化接口的其它類型的接口來耦合主機系統(tǒng)100和存儲系統(tǒng)200。存儲系統(tǒng)200可以包括與主機系統(tǒng)100集成在一起的存儲器。
主機系統(tǒng)100包括中央處理單元(CPU)110和存儲器120。存儲器120可以包括主機系統(tǒng)100的主存儲器。應(yīng)用程序121和文件系統(tǒng)122被包含在存儲器120中。文件系統(tǒng)122可以包括一個或多個具有文件分配表(FAT)的文件系統(tǒng)或其它文件系統(tǒng)。
當要刪除全部或某些被應(yīng)用程序121處理的文件數(shù)據(jù)時,主機系統(tǒng)100向存儲系統(tǒng)200輸出不寫命令。主機系統(tǒng)100例如可以將該不寫命令伴隨與要被刪除的數(shù)據(jù)的地址和/或尺寸相關(guān)的信息一起發(fā)送給存儲系統(tǒng)200。
諸如圖2所示的FAT文件系統(tǒng)可以包括主引導(dǎo)記錄(MBR)、分區(qū)引導(dǎo)記錄(PBR)、第一和第二文件分配表(主FAT、復(fù)制FAT)和引導(dǎo)目錄。例如可以使用諸如包括數(shù)據(jù)的文件名和用于達到文件被存儲地方的目錄樹的路徑的兩項信息識別存儲在或?qū)⒁鎯υ诖鎯ο到y(tǒng)200中的數(shù)據(jù)。目錄的每個條目存儲諸如文件長度(例如,32字節(jié)長)、文件名、擴展名、文件屬性字節(jié)、最后修改日期和時間、文件大小和啟動群集的連接的信息。
預(yù)定的字符可以被用做表示被刪除文件的文件名的第一字符。例如,十六近制數(shù)字節(jié)碼E5h可以被指定給被刪除文件的文件名的第一字符,以用做表示該文件已經(jīng)被刪除的標記。當文件被刪除時,CPU 110可以指定預(yù)定的字符作為被刪除文件的文件名的第一字符和輸出與被刪除文件對應(yīng)的不寫命令和/或其它無效信息給存儲系統(tǒng)200。
繼續(xù)參看圖3,存儲系統(tǒng)200包括存儲介質(zhì)220、緩存器240和控制器260。當在存儲系統(tǒng)200的較高層處認為文件的數(shù)據(jù)已經(jīng)被刪除時和無效指示符已經(jīng)被輸入給存儲系統(tǒng)200時,存儲系統(tǒng)220防止將存儲在緩存器220中的數(shù)據(jù)寫入存儲介質(zhì)260中。所述無效指示符可以包括與刪除數(shù)據(jù)的地址和大小相關(guān)的信息一起的不寫命令。
存儲介質(zhì)220可以存儲諸如文本、圖像、音樂和節(jié)目的所有類型數(shù)據(jù)。字節(jié)存儲介質(zhì)220可以是諸如磁盤或閃存的非易失存儲器。但是,應(yīng)當理解,存儲介質(zhì)220并不局限于非易失存儲器。
緩存器240被用于緩存在主機系統(tǒng)100和存儲介質(zhì)220之間傳送的數(shù)據(jù)。緩存器240可以包括諸如動態(tài)隨機存取存儲器(DRAM)或靜態(tài)隨機存取存儲器(SRAM)的高速易失性存儲器和/或諸如磁阻隨機存取存儲器(MRAM)、參量隨機存取存儲器(PRAM)、鐵電隨機存取存儲器(FRAM)、NAND閃存或NOR閃存的非易失性存儲器。
緩存器240用做寫緩沖器。例如,緩存器240可以響應(yīng)主機系統(tǒng)100的請求暫時存儲將要寫到存儲介質(zhì)220中的數(shù)據(jù)。可以有選擇地使用緩存器240的寫緩沖器功能。有時,在“寫旁路(write bypass)”操作中,從主機系統(tǒng)傳送的數(shù)據(jù)可以被直接傳送給存儲介質(zhì)220而不被存儲到緩存器240中。緩存器240也可以用作讀緩沖器。例如,緩存器240可以暫時存儲從存儲介質(zhì)220中讀出的數(shù)據(jù)。雖然圖3僅示出了一個緩存器,但可以提供兩個或多個緩存器。在這種實施例中,每個緩存器可以被專門用做寫緩沖器或讀緩沖器,或者可以被用做寫和讀緩沖器。
控制器260控制存儲介質(zhì)220和緩存器240。當從主機系統(tǒng)100輸入讀命令時,控制器260控制存儲介質(zhì)220以使得存儲在存儲介質(zhì)220中的數(shù)據(jù)被直接傳送給主機系統(tǒng)100或者使得存儲在存儲介質(zhì)220中的數(shù)據(jù)經(jīng)過緩存器240被傳送給主機系統(tǒng)100。當從主機系統(tǒng)100輸入寫命令時,控制器260將與寫命令相關(guān)的數(shù)據(jù)暫時存儲到緩存器240中。當緩存器240缺少存儲附加數(shù)據(jù)的空間或當存儲介質(zhì)200空閑時,存儲在緩存器240中的全部或部分數(shù)據(jù)被傳送給存儲介質(zhì)220。當在預(yù)定的時間內(nèi)沒有從主機系統(tǒng)100接收到請求時,存儲系統(tǒng)200可以被認為是空閑的。
控制器260保持與存儲介質(zhì)220和緩存器240的地址映射信息和用于存儲表示所存儲數(shù)據(jù)有效/無效的寫狀態(tài)信息的映射表261。利用從外部設(shè)備提供的無效信息(例如,指示符)更新所述寫狀態(tài)信息??刂破?60基于在映射表261中的寫狀態(tài)信息控制存儲介質(zhì)220和緩存器240以將存儲在緩存器240中的全部或部分數(shù)據(jù)寫入存儲介質(zhì)220中。在本發(fā)明的某些實施例中,存儲介質(zhì)220和緩存器240可以使用閃存來實施。
如上所述,本發(fā)明所示實施例的存儲系統(tǒng)200確定是否通過參考寫狀態(tài)信息將存儲在緩存器240中的全部或部分數(shù)據(jù)傳送給存儲介質(zhì)220。即,本發(fā)明的存儲系統(tǒng)200從諸如主機系統(tǒng)100的外部源設(shè)備接收不寫或其它表示存儲在緩存器中的數(shù)據(jù)是無效數(shù)據(jù)的信息。響應(yīng)該不寫或其它無效指示符,存儲系統(tǒng)200防止將無效數(shù)據(jù)從緩存器240寫入存儲介質(zhì)220中。換言之,存儲系統(tǒng)200指定表示存儲在緩存器240中的數(shù)據(jù)無效的標記并基于所指定的標記將存儲在緩存器240中的數(shù)據(jù)有選擇地傳送給存儲介質(zhì)220。因此,存儲系統(tǒng)200的寫性能可以得到改善,從而減少了由不必要寫操作所引起的存儲系統(tǒng)200壽命的縮短。此外,可以減少由不必要寫操作引起的功耗。
圖4A和4B示出了根據(jù)本發(fā)明實施例的可以由圖3的控制器260使用的示例性映射表圖。在圖4A和4B中,“BBN”表示緩存器240的塊數(shù)?!癉CN”表示存儲介質(zhì)220的群集數(shù),和“WS1”表示指出存儲在緩存器240中的數(shù)據(jù)有效或無效的寫狀態(tài)信息。在所示的實施例中,假設(shè)緩存器240的塊大小與具有多個扇區(qū)的群集的大小相同。但是,存儲介質(zhì)220不必被限制于該假設(shè)。例如,存儲介質(zhì)220的分配單元可以對應(yīng)于磁盤的扇區(qū),或者閃存的頁、扇區(qū)或塊。在圖4A和4B中,用“X”表示無效數(shù)據(jù),用“V”表示有效數(shù)據(jù)。
在圖4A中,假設(shè)與三個文件對應(yīng)的數(shù)據(jù)集文件1、文件2和文件3被作為有效數(shù)據(jù)存儲在緩存器240中。數(shù)據(jù)集文件1、文件2和文件3可能還沒有存儲到存儲介質(zhì)220中。如上所述,當緩存器240缺少存儲新數(shù)據(jù)的空間時或存儲介質(zhì)220變成空閑時,所存儲的文件數(shù)據(jù)集文件1、文件2和文件3被傳送給存儲介質(zhì)220??刂破?60根據(jù)從主機系統(tǒng)100傳送的無效信息更新存儲在緩存器240中的文件數(shù)據(jù)集文件1、文件2和文件3的寫狀態(tài)信息。例如,在主機系統(tǒng)100中刪除文件數(shù)據(jù)集文件2并且主機系統(tǒng)100將文件數(shù)據(jù)集文件2的無效信息發(fā)送給控制器260,該無效信息表示文件數(shù)據(jù)集文件2已經(jīng)在主機系統(tǒng)100處被刪除。當控制器260接收文件數(shù)據(jù)集文件2的無效信息時,控制器260將文件數(shù)據(jù)集文件2的寫狀態(tài)信息WS1改變?yōu)椤癤”以指出文件數(shù)據(jù)集文件2是無效的。
圖5的流程示出了根據(jù)本發(fā)明某些實施例的用于管理存儲在計算機系統(tǒng)的存儲系統(tǒng)中的數(shù)據(jù)的示例性操作。如上所述,圖2所示的存儲系統(tǒng)200包括用于存儲數(shù)據(jù)的存儲介質(zhì)220和用于暫存要被寫入存儲介質(zhì)220中的數(shù)據(jù)的緩存器240。如圖5所示,在步驟S110,確定不寫或其它無效信息是否被提供給存儲系統(tǒng)200。在步驟S200,響應(yīng)不寫或其它無效信息,暫時存儲在緩存器240中的全部或部分對應(yīng)數(shù)據(jù)被標記為無效。在無效之后,無效的數(shù)據(jù)不能被寫入存儲介質(zhì)220中。
圖6A-6C示出了根據(jù)本發(fā)明的另外一些實施例的示例性數(shù)據(jù)管理操作的圖。如上結(jié)合圖2所述,存儲系統(tǒng)200的控制器260通過參照映射表261將存儲在緩存器240中的數(shù)據(jù)傳送給存儲介質(zhì)220。參見圖6A,假設(shè)作為有效數(shù)據(jù)在緩存器240中存儲有三個文件數(shù)據(jù)集文件1、文件2和文件3。存儲系統(tǒng)200的控制器260基于與所存儲文件數(shù)據(jù)集文件1、文件2和文件3對應(yīng)的映射表261中的寫狀態(tài)信息來確定存儲在緩存器240中的哪個數(shù)據(jù)是無效數(shù)據(jù)。如圖6A所示,當全部的文件數(shù)據(jù)集文件1到文件3都被映射表261標記為有效時,控制器260控制緩存器240和存儲介質(zhì)220將文件數(shù)據(jù)集文件1、文件2和文件3從緩存器240傳送到存儲介質(zhì)220中的相應(yīng)位置。
如果無效信息包括例如不寫命令,那么,該無效數(shù)據(jù)文件的地址信息和該無效數(shù)據(jù)文件的大小信息在傳送相應(yīng)數(shù)據(jù)給存儲介質(zhì)220之前被輸入給控制器260,控制器260使與該無效信息相關(guān)的數(shù)據(jù)無效。例如,如圖6B所示,如果無效數(shù)據(jù)對應(yīng)于文件數(shù)據(jù)集文件2,那么,控制器260更新與文件數(shù)據(jù)集文件2相關(guān)的映射表261的寫狀態(tài)信息WS1以指示文件數(shù)據(jù)集文件2是無效的??刂破?60然后可以基于映射表261中的寫狀態(tài)信息SW1確定存儲在緩存器240中的哪個數(shù)據(jù)是無效的。如圖6B所示,在映射表261中,文件數(shù)據(jù)文件1和文件3被標記為有效數(shù)據(jù)而文件數(shù)據(jù)文件2被標記為無效數(shù)據(jù)。因此,在前述將文件數(shù)據(jù)文件2傳送給存儲介質(zhì)220的相應(yīng)位置處的同時,控制器260控制緩存器240和存儲介質(zhì)220將文件數(shù)據(jù)集文件1和文件3傳送到存儲介質(zhì)220的相應(yīng)位置處。被無效文件數(shù)據(jù)集文件2占據(jù)的緩存器240中的空間可以在后續(xù)新的寫/讀操作中用于存儲新的數(shù)據(jù)。
在圖6C所示的另一個例子中,假設(shè)只有一個數(shù)據(jù)文件集文件1被存儲在緩存器240中。如果在將數(shù)據(jù)文件集文件1傳送給存儲介質(zhì)220之前無效信息被輸入給控制器260,那么,控制器260無效數(shù)據(jù)文件集文件1。具體地說,控制器260更新與文件數(shù)據(jù)集文件1相關(guān)的映射表261的寫狀態(tài)信息WS1以示出文件數(shù)據(jù)集文件1是無效的。在更新之后,控制器260然后可以通過參考與文件數(shù)據(jù)集文件1相關(guān)的映射表261的寫狀態(tài)信息WS1確定存儲在緩存器240中的數(shù)據(jù)是否是無效的。如圖6C所示,由于寫狀態(tài)信息WS1的“X”狀態(tài),所以,文件數(shù)據(jù)集文件1不被傳送給存儲介質(zhì)220。因此,當存儲介質(zhì)220空閑時,可以防止無效數(shù)據(jù)的傳送。被無效數(shù)據(jù)占據(jù)的緩存器240的空間可以在后續(xù)的寫操作中用于存儲新的數(shù)據(jù)。
盡管無效數(shù)據(jù)已經(jīng)被寫入存儲介質(zhì)220中,與存儲在存儲介質(zhì)220中的無效數(shù)據(jù)相關(guān)的文件不受所存儲無效數(shù)據(jù)的影響。此外,控制器260可以將無效數(shù)據(jù)有選擇地傳送給存儲介質(zhì)220。即,雖然存儲在緩存器240中的數(shù)據(jù)被不寫命令無效,但控制器260可以將所述無效數(shù)據(jù)有選擇地傳送給存儲介質(zhì)220。
上述存儲系統(tǒng)200通過參照包括表示存儲在緩存器240中的數(shù)據(jù)是無效還是有效的寫狀態(tài)信息的所述映射表控制緩存器240和存儲介質(zhì)220之間的數(shù)據(jù)傳送操作。如上所述,數(shù)據(jù)的寫狀態(tài)信息可以從外部源提供給存儲系統(tǒng)200。另外,所述數(shù)據(jù)可以是由外部源讀出和修改的新數(shù)據(jù)。將理解根據(jù)本發(fā)明各實施例的存儲系統(tǒng)不僅可以被用在計算系統(tǒng)中,也可以被用在硬盤上或在諸如MP3播放器或便攜電子設(shè)備的閃存中存儲數(shù)據(jù)的設(shè)備。通過減少從緩存器到存儲介質(zhì)的無效數(shù)據(jù)的傳送,能夠改善存儲系統(tǒng)的寫性能和/或壽命。另外,可以減少與不必要寫操作相關(guān)的功耗。
對于本領(lǐng)域普通技術(shù)人員很明顯,可以對本發(fā)明做出各種修改和變化。即,如果所述修改和變化落入所附權(quán)利要求及其等效物的范圍之內(nèi),本發(fā)明將試圖覆蓋所有這些修改和變化。
權(quán)利要求
1.一種存儲系統(tǒng),包括被配置成存儲數(shù)據(jù)的存儲介質(zhì);被配置成緩存要被寫入所述存儲介質(zhì)的數(shù)據(jù)的緩存器;和被配置成響應(yīng)從外部源接收的無效指示符而將緩存數(shù)據(jù)有選擇地傳送給所述存儲介質(zhì)的控制器。
2.如權(quán)利要求1所述的存儲系統(tǒng),其中,所述無效指示符包括不寫信息。
3.如權(quán)利要求2所述的存儲系統(tǒng),其中,所述不寫信息表示所選擇的緩存數(shù)據(jù)對應(yīng)于被刪除的文件數(shù)據(jù)。
4.如權(quán)利要求1所述的存儲系統(tǒng),其中,所述控制器被配置成響應(yīng)所述無效指示符無效所選擇的緩存數(shù)據(jù)。
5.如權(quán)利要求4所述的存儲系統(tǒng),其中,所述控制器被配置成響應(yīng)所述無效指示符而存儲表示被無效緩存數(shù)據(jù)的無效的寫狀態(tài)信息并響應(yīng)所存儲的寫狀態(tài)信息防止被無效的緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)。
6.如權(quán)利要求5所述的存儲系統(tǒng),所述控制器被配置成響應(yīng)緩存器中的存儲限制和/或存儲介質(zhì)的空閑狀態(tài)而觸發(fā)轉(zhuǎn)錄操作,其中,在前述將無效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)的同時,所述轉(zhuǎn)錄操作包括將有效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)控制器。
7.如權(quán)利要求4所述的存儲系統(tǒng),其中,所述控制器還被配置成響應(yīng)無效緩存數(shù)據(jù)的無效而使能由無效緩存數(shù)據(jù)占據(jù)的緩存器中的存儲空間再使用。
8.如權(quán)利要求1所述的存儲系統(tǒng),其中,所述緩存器包括非易失和/或易失半導(dǎo)體存儲器,和其中,存儲介質(zhì)包括非易失半導(dǎo)體存儲器和/或磁存儲介質(zhì)。
9.一種計算系統(tǒng),包括存儲系統(tǒng),其包括被配置成存儲數(shù)據(jù)的存儲介質(zhì)、被配置成緩存要被寫入存儲介質(zhì)中的數(shù)據(jù)的緩存器和被配置成響應(yīng)無效指示符將緩存數(shù)據(jù)有選擇地傳送給存儲介質(zhì)的控制器;和主機,被配置成響應(yīng)在該主機處的數(shù)據(jù)修改操作而向緩存器傳送數(shù)據(jù)并將無效指示符提供給存儲系統(tǒng)。
10.如權(quán)利要求9所述的計算系統(tǒng),其中,所述無效指示符包括不寫命令。
11.如權(quán)利要求10所述的計算系統(tǒng),其中,主機被配置成響應(yīng)文件數(shù)據(jù)的刪除而產(chǎn)生不寫命令。
12.如權(quán)利要求9所述的計算系統(tǒng),其中,所述控制器被配置成響應(yīng)無效指示符而無效所選擇的緩存數(shù)據(jù)。
13.如權(quán)利要求12所述的計算系統(tǒng),其中,所述控制器被配置成響應(yīng)無效指示符而存儲表示無效緩存數(shù)據(jù)的無效的寫狀態(tài)信息并響應(yīng)所存儲的寫狀態(tài)信息而防止將無效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)。
14.如權(quán)利要求13所述的計算系統(tǒng),其中,所述控制器被配置成響應(yīng)緩存器中的存儲限制和/或存儲介質(zhì)的空閑狀態(tài)而觸發(fā)轉(zhuǎn)錄操作,其中,在前述將無效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)的同時,轉(zhuǎn)錄操作包括將有效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)控制器。
15.如權(quán)利要求12所述的計算系統(tǒng),其中,所述控制器還被配置成響應(yīng)無效緩存數(shù)據(jù)的無效而使能由無效緩存數(shù)據(jù)占據(jù)的緩存器中的存儲空間再使用。
16.如權(quán)利要求9所述的計算系統(tǒng),其中,所述緩存器包括非易失和/或易失半導(dǎo)體存儲器,和其中,所述存儲介質(zhì)包括非易失半導(dǎo)體存儲器和磁存儲介質(zhì)。
17.一種操作包括存儲介質(zhì)和緩存器的存儲系統(tǒng)的方法,該緩存器被配置成存儲要被寫入所述存儲介質(zhì)中的數(shù)據(jù),該方法包括“從外部源接收與存儲在緩存器中的數(shù)據(jù)相關(guān)的無效指示符;和響應(yīng)所接收的無效指示符,將存儲在緩存器中的數(shù)據(jù)有選擇地傳送給存儲介質(zhì)。
18.如權(quán)利要求17所述的方法,其中,所述無效指示符包括不寫命令。
19.如權(quán)利要求18所述的方法,其中,所述不寫命令表示所選擇的存儲在緩存器中的數(shù)據(jù)對應(yīng)于被刪除的文件數(shù)據(jù)。
20.如權(quán)利要求17所述的方法,其中,響應(yīng)所接收的無效指示符將存儲在緩存器中的數(shù)據(jù)有選擇地傳送給存儲介質(zhì)包括響應(yīng)無效指示符而無效所選擇的存儲在緩存器中的數(shù)據(jù);防止將無效數(shù)據(jù)從緩存器傳送給存儲介質(zhì)。
21.如權(quán)利要求20所述的方法,其中,響應(yīng)無效指示符而無效所選擇的存儲在緩存器中的數(shù)據(jù)包括響應(yīng)無效指示符而存儲表示無效數(shù)據(jù)的無效的寫狀態(tài)信息;和其中,防止無效數(shù)據(jù)從緩存器傳送給存儲介質(zhì)包括響應(yīng)所存儲的寫狀態(tài)信息防止將數(shù)據(jù)從緩存器傳送給存儲介質(zhì)。
22.如權(quán)利要求20所述的方法,還包括響應(yīng)緩存器中的存儲限制和/或存儲介質(zhì)的空閑狀態(tài)執(zhí)行轉(zhuǎn)錄操作,其中,在前述將無效數(shù)據(jù)從緩存器傳送給存儲介質(zhì)的同時,所述轉(zhuǎn)錄操作包括將有效數(shù)據(jù)從緩存器傳送給存儲介質(zhì)控制器。
23.如權(quán)利要求20所述的方法,還包括響應(yīng)無效數(shù)據(jù)的無效而使能由無效數(shù)據(jù)占據(jù)的緩存器中的存儲空間再使用。
24.如權(quán)利要求17所述的方法,其中,所述緩存器包括非易失和/或易失半導(dǎo)體存儲器,和其中,所述存儲介質(zhì)包括非易失半導(dǎo)體存儲器和/或磁存儲介質(zhì)。
25.一種用于控制存儲在存儲介質(zhì)中的數(shù)據(jù)的系統(tǒng),所述系統(tǒng)包括緩存器,被配置成緩存要被寫入存儲介質(zhì)中的數(shù)據(jù);和控制器,被配置成響應(yīng)從外部源接收的無效指示符將緩存數(shù)據(jù)有選擇地傳送給存儲介質(zhì)。
26.如權(quán)利要求25所述的系統(tǒng),其中,所述無效指示符包括不寫信息。
27.如權(quán)利要求26所述的系統(tǒng),其中,所述不寫信息表示所選擇的緩存數(shù)據(jù)對應(yīng)于被刪除的文件。
28.如權(quán)利要求25所述的系統(tǒng),其中,所述控制器被配置成響應(yīng)無效指示符而無效所選擇的緩存數(shù)據(jù)。
29.如權(quán)利要求28所述的系統(tǒng),其中,所述控制器被配置成響應(yīng)無效指示符而存儲表示無效緩存數(shù)據(jù)的無效的寫狀態(tài)信息并響應(yīng)所存儲的無效狀態(tài)信息而防止將無效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)。
30.如權(quán)利要求29所述的系統(tǒng),其中,所述控制器被配置成響應(yīng)緩存器中的存儲限制和/或存儲介質(zhì)的空閑狀態(tài)觸發(fā)轉(zhuǎn)錄操作,其中,在前述將無效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)的同時,所述轉(zhuǎn)錄操作包括將有效緩存數(shù)據(jù)從緩存器傳送給存儲介質(zhì)控制器。
31.如權(quán)利要求28所述的系統(tǒng),其中,所述控制器還被配置成響應(yīng)無效緩存數(shù)據(jù)的無效而使能由無效緩存數(shù)據(jù)占據(jù)的緩存器中的存儲空間再使用。
32.如權(quán)利要求25所述的系統(tǒng),其中,所述緩存器包括非易失和/或易失半導(dǎo)體存儲器。
33.如權(quán)利要求25所述的系統(tǒng),其中,所述緩存器包括至少兩個具有不同讀/寫功能的易失存儲器。
全文摘要
一種存儲系統(tǒng)包括被配置成存儲數(shù)據(jù)的存儲介質(zhì)和被配置成緩存要被寫入存儲介質(zhì)中的數(shù)據(jù)的緩存器。存儲系統(tǒng)還包括被配置成響應(yīng)從外部源接收的無效指示符而將緩存數(shù)據(jù)有選擇地傳送給存儲介質(zhì)的控制器。例如,無效指示符可以包括從外部源接收的不寫信息,例如表示所選擇的緩存數(shù)據(jù)對應(yīng)于被刪除的文件數(shù)據(jù)的信息。
文檔編號G11C7/00GK1821977SQ20051013161
公開日2006年8月23日 申請日期2005年12月15日 優(yōu)先權(quán)日2004年12月21日
發(fā)明者樸贊益, 閔相烈, 鄭泰圣, 鞠鉉鎬 申請人:三星電子株式會社