在混合驅(qū)動器中的虛擬nand容量擴展的制作方法
【專利說明】
【背景技術(shù)】
[0001]數(shù)據(jù)儲存設(shè)備通常用于在其上記錄或存儲數(shù)據(jù)或用于從記錄介質(zhì)中復(fù)制數(shù)據(jù)。數(shù)據(jù)儲存設(shè)備能夠包括用于提供這些用途的不同類型的非易失性存儲器。一種類型的非易失性存儲器包括旋轉(zhuǎn)磁盤。除了磁盤之外,數(shù)據(jù)儲存設(shè)備還能夠包括第二類型的非易失性存儲器,諸如固態(tài)存儲器。利用磁盤和固態(tài)非易失性存儲器兩者的數(shù)據(jù)儲存設(shè)備常常稱為混合驅(qū)動器。
[0002]當(dāng)與僅包括一種類型的非易失性存儲器的傳統(tǒng)儲存驅(qū)動器相比較時,混合驅(qū)動器能夠提供改善的性能特性。例如,由于包括磁盤,當(dāng)在仍維持可負擔(dān)性和其它益處的情況下,訪問存儲在固態(tài)存儲器上的某些數(shù)據(jù)時,混合驅(qū)動器能夠改善響應(yīng)時間。不幸地,固態(tài)存儲器通常比其它形式的非易失性存儲器成本更多。因此,具有完全由固態(tài)存儲器組成的儲存驅(qū)動器的費用對于一些消費者或應(yīng)用來說可能是過高的。混合驅(qū)動器利用傳統(tǒng)非易失性存儲器和固態(tài)存儲器兩者的混合,以維持更負擔(dān)得起的產(chǎn)品,從而利用傳統(tǒng)非易失性存儲器的其它益處,諸如改善的耐久性。
[0003]由混合驅(qū)動提供的益處的具體示例能夠在計算機系統(tǒng)的休眠過程期間示出。在關(guān)閉或降低功率之前,計算機系統(tǒng)可執(zhí)行休眠過程,以在非易失性存儲器中保存計算機系統(tǒng)的狀態(tài)。當(dāng)功率稍后復(fù)原到計算機系統(tǒng)時,計算機系統(tǒng)的操作系統(tǒng)執(zhí)行恢復(fù)過程,以將計算機系統(tǒng)復(fù)原到與休眠之前相同的狀態(tài)。固態(tài)存儲器,諸如閃存存儲器,由于其高讀取傳輸速率,所以一般應(yīng)該能夠在休眠后相對迅速的恢復(fù)。
【附圖說明】
[0004]實施本發(fā)明的各種特征的系統(tǒng)和方法現(xiàn)在將參考以下附圖進行描述,其中:
[0005]圖1示出根據(jù)本發(fā)明的一個實施例的主機系統(tǒng)和實現(xiàn)虛擬高速緩存容量擴展的數(shù)據(jù)儲存設(shè)備的組合的框圖;
[0006]圖2示出根據(jù)本發(fā)明的一個實施例的虛擬擴展高速緩存和映射表的框圖;
[0007]圖3A示出根據(jù)本發(fā)明的一個實施例的在由連接的主機系統(tǒng)進入休眠模式期間虛擬擴展高速緩存和映射表的框圖;
[0008]圖3B示出根據(jù)本發(fā)明的一個實施例的在由連接的主機系統(tǒng)從休眠模式退出期間圖3A的虛擬擴展高速緩存和映射表的框圖;
[0009]圖4示出根據(jù)本發(fā)明的一個實施例的使用優(yōu)先級信息的虛擬擴展高速緩存的數(shù)據(jù)儲存操作的流程圖;以及
[0010]圖5示出根據(jù)本發(fā)明的一個實施例的被配置成與能夠進入和離開休眠模式的主機系統(tǒng)連接的虛擬擴展高速緩存的操作的流程圖。
【具體實施方式】
[0011]雖然描述了某些實施例,但這些實施例僅以示例的方式提出,而并非旨在限制保護的范圍。當(dāng)然,本文所述的新型方法和系統(tǒng)可以以各種其它形式來實施。此外,可以對本文所述的方法和系統(tǒng)的形式進行各種省略、替換和改變,而不脫離保護的范圍。
[0012]綜述
[0013]利用多于一種類型的存儲器用于電子數(shù)據(jù)的儲存和訪問的儲存系統(tǒng),諸如混合儲存設(shè)備,不僅應(yīng)該為電子數(shù)據(jù)的儲存確定可用存儲器的塊,還應(yīng)該確定哪種類型的存儲器用于儲存或訪問操作。在一些情況下,連接的主機系統(tǒng)可經(jīng)由信號將該確定提供給儲存系統(tǒng)。在其它情況下,所述確定可以經(jīng)由邏輯評估由儲存系統(tǒng)本身與來自連接的主機系統(tǒng)的信號相結(jié)合或者完全通過內(nèi)部確定來進行。
[0014]儲存目的地的確定可以基于與數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級。具有較高優(yōu)先等級的數(shù)據(jù)可以在存儲器類型或在儲存系統(tǒng)內(nèi)的儲存位置方面給予優(yōu)先權(quán)。利用提供改善的操作性能的更昂貴的存儲器類型(例如,固態(tài)存儲器,諸如NAND閃存存儲器)與成本較低的存儲器類型(例如,磁儲存器)的組合的混合儲存設(shè)備,可設(shè)法將優(yōu)先數(shù)據(jù)置于更昂貴的存儲器中。然而,因為在儲存系統(tǒng)中的數(shù)據(jù)可隨著用戶執(zhí)行不同任務(wù)在優(yōu)先級上頻繁改變,所以數(shù)據(jù)管理系統(tǒng)應(yīng)起作用以適當(dāng)傳輸儲存系統(tǒng)內(nèi)的數(shù)據(jù),從而增加或優(yōu)化性能。
[0015]在一個實施例中,混合驅(qū)動器可包括高速存儲器,其中的一些或全部能夠充當(dāng)主要的較慢的存儲器的高速緩存。對充當(dāng)高速緩存可用的高速存儲器的容量成為高速緩存的物理容量?;旌向?qū)動器可以被配置成通過跟蹤存儲在主存儲器中的一些數(shù)據(jù)虛擬地擴展高速緩存的物理容量。在一個示例中,在混合驅(qū)動器中的高速的固態(tài)存儲器(高速緩存存儲器)可具有8GB的物理容量。數(shù)據(jù)結(jié)構(gòu),諸如高速緩存映射表可以用于跟蹤存儲在低速的磁存儲器(主存儲器)中的另外的8GB數(shù)據(jù),使得跟蹤的數(shù)據(jù)可以被認為是高速緩存的物理容量的虛擬擴展。由于較高優(yōu)先級的數(shù)據(jù)具有優(yōu)先權(quán),或由于在系統(tǒng)狀態(tài)上的改變(例如,容納來自主機的恢復(fù)數(shù)據(jù))造成對固態(tài)存儲器容量的改變,所以跟蹤的數(shù)據(jù)可包括先前從高速存儲器(例如,固態(tài)存儲器)中逐出的數(shù)據(jù)。
[0016]對于數(shù)據(jù)的該優(yōu)先級信息可以以許多不同的方式,諸如下列項中的一個或更多個的組合來確定:由主機系統(tǒng)提供的優(yōu)先級(例如,作為寫入數(shù)據(jù)命令的一部分)、數(shù)據(jù)的訪問頻率、從數(shù)據(jù)的上次訪問以來的持續(xù)時間、讀取與寫入數(shù)據(jù)的頻率(例如,讀寫比)、在優(yōu)先等級內(nèi)數(shù)據(jù)的相對重要性、數(shù)據(jù)是否已與其它儲存同步等。例如,頻繁訪問的數(shù)據(jù)可以被分配較高優(yōu)先級,因為在高速緩存中保持頻繁訪問的數(shù)據(jù)可以改善數(shù)據(jù)儲存設(shè)備的性能。又如,已經(jīng)比其它數(shù)據(jù)被更近訪問的數(shù)據(jù)可以被分配較高優(yōu)先級,因為更近訪問的數(shù)據(jù)可能有可能在未來被再次訪問。又如,比寫入更頻繁地讀取的數(shù)據(jù)可以被分配較高優(yōu)先級,因為在高速緩存中保持此類頻繁讀取的數(shù)據(jù)可改善性能,同時降低非易失性固態(tài)存儲器的磨損。在一些實施例中,優(yōu)先級可以基于以上因素中的一個或更多個的加權(quán)組合來分配。
[0017]為了簡化和說明起見,下面的描述集中于示例實施例,其中固態(tài)非易失性存儲器充當(dāng)主存儲器(諸如,磁儲存存儲器)的高速緩存存儲器。然而,本公開的范圍并不限于此類實施例。例如,在其它實施例中,代替磁儲存存儲器的,數(shù)據(jù)儲存設(shè)備可包括另一種類型的數(shù)據(jù)儲存。代替或除了固態(tài)非易失性存儲器之外,可以使用不同類型的存儲器,例如,在儲存系統(tǒng)或設(shè)備中使用的比不同類型的存儲器提供了更快的讀取或?qū)懭胄阅艿娜魏未鎯ζ鳌T谄渌鼘嵤├?,充?dāng)主存儲器的高速緩存的非易失性存儲器可以位于距主存儲器的遠程位置中,并且數(shù)據(jù)的同步可以發(fā)生在一個或更多個網(wǎng)絡(luò)連接上。
[0018]系統(tǒng)綜沐
[0019]首先轉(zhuǎn)到圖1,其示出了主機系統(tǒng)110和實現(xiàn)虛擬擴展高速緩存的數(shù)據(jù)儲存設(shè)備120的組合100的框圖。如圖所示,數(shù)據(jù)儲存設(shè)備120 (例如,混合磁盤驅(qū)動器)包括控制器130、固態(tài)儲存器150,以及磁儲存器160。在一個實施例中,固態(tài)儲存器150可包括閃存儲存器,和/或磁儲存器可以包括磁介質(zhì)。除了或替代固態(tài)儲存器150和/或磁儲存器160,數(shù)據(jù)儲存設(shè)備120可包括各種非易失性存儲器,諸如閃存集成電路、硫?qū)倩衔颮AM(C-RAM)、相變存儲器(PC-RAM或PRAM)、可編程金屬化單元的RAM(PMC_RAM或PMCm)、雙向通用存儲器(0UM)、電阻式RAM(RRAM)、NAND存儲器(例如,單級單元(SLC)存儲器、多級單元(MLC)存儲器,或它們的任何組合)、N0R存儲器、EEPR0M、鐵電存儲器(FeRAM)、磁阻RAM(MRAM)、其它離散型NVM(非易失性存儲器)芯片,或它們的任何組合。固態(tài)儲存器150能夠包括一個或更多個存儲器區(qū)域、諸如塊、頁等。在一個實施例中,固態(tài)儲存器150能夠作為用于磁儲存器160的高速緩存。數(shù)據(jù)儲存設(shè)備120還能夠包括其它類型的儲存器。
[0020]數(shù)據(jù)儲存設(shè)備120的控制器130能夠被配置成從主機系統(tǒng)110的儲存接口模塊112接收數(shù)據(jù)和/或與數(shù)據(jù)相關(guān)聯(lián)的優(yōu)先級信息。數(shù)據(jù)和/或優(yōu)先級信息可以在儲存接口模塊112和控制器130之間以命令140的形式(例如,儲存或訪問命令)傳送,所述命令將優(yōu)先級信息與在數(shù)據(jù)儲存設(shè)備120中被儲存或訪問的適當(dāng)數(shù)據(jù)相關(guān)聯(lián)??刂破?30也能夠被配置成將命令140傳送到儲存接口模塊112。通過儲存接口模塊112通信的命令140能夠包括由主機系統(tǒng)110發(fā)出的寫入數(shù)據(jù)和讀取數(shù)據(jù)命令連同相關(guān)聯(lián)的優(yōu)先級信息,例如作為寫入數(shù)據(jù)和/或讀取數(shù)據(jù)命令的元數(shù)據(jù)。讀取和寫入命令能夠指定用于訪問數(shù)據(jù)儲存設(shè)備120上的信息的邏輯地址(例如,邏輯塊地址或“LBA”)??刂破?30能夠執(zhí)行在固態(tài)儲存器150和/或磁儲存器160中的接收命令140。
[0021]數(shù)據(jù)儲存設(shè)備120能夠存儲通過主機系統(tǒng)110通信的數(shù)據(jù)。換句話說,數(shù)據(jù)儲存設(shè)備120能夠作為用于主機系統(tǒng)110的存儲裝置。為了便于該功能,控制器130能夠?qū)崿F(xiàn)邏輯接口。邏輯接口能夠向主機系統(tǒng)110呈現(xiàn)數(shù)據(jù)儲存設(shè)備120的固態(tài)儲存器150和/或磁儲存器160作為其中能夠儲存主機系統(tǒng)110的數(shù)據(jù)的一組邏輯地址(例如,連續(xù)的地址)。在內(nèi)部,控制器130能夠?qū)⑦壿嫷刂酚成涞皆诠虘B(tài)儲存器150、磁儲存器160和/或其它儲存模塊中的各種物理位置或地址。物理位置能夠被配置成存儲數(shù)據(jù)。