存儲器系統及控制方法與流程

            文檔序號:12719463閱讀:410來源:國知局
            存儲器系統及控制方法與流程

            本申請享有以日本專利申請2015-242997號(申請日:2015年12月14日)為基礎申請的優先權。本申請通過參照該基礎申請而包含基礎申請的全部內容。

            技術領域

            本發明的實施方式涉及一種控制非易失性存儲器的技術。



            背景技術:

            近年來,具備非易失性存儲器的存儲器系統廣泛地普及。

            作為此類存儲器系統之一,眾所周知有基于NAND(Not AND,與非)閃存技術的固態驅動器(SSD,Solid State Drives)。

            SSD因其低耗電、高性能等特征,而被用作各種計算機的主存儲器。

            但,由主機寫入SSD的數據有時存在數據局部性,即,其部分數據被頻繁重寫,而剩余部分不會被頻繁重寫。

            這種數據局部性會增加SSD的寫入放大倍數,有時會影響SSD的性能及壽命。



            技術實現要素:

            本發明的實施方式提供一種能夠抑制因數據局部性引起的寫入放大倍數增加的存儲器系統及控制方法。

            實施方式的存儲器系統具備非易失性存儲器和控制器,所述控制器構成為,電連接于所述非易失性存儲器,執行所述非易失性存儲器的無用存儲單元收集動作。所述控制器管理無用存儲單元收集次數,所述無用存儲單元收集次數表示針對所述多個塊內包含主機寫入的數據的每個塊,通過所述無用存儲單元收集動作而復制該塊內的數據的次數。所述控制器選擇與相同無用存儲單元收集次數關聯的多個第1塊,作為所述無用存儲單元收集動作的對象塊。所述控制器將所述多個第1塊內的有效數據復制到復制目標空閑塊。所述控制器將在所述多個第1塊的無用存儲單元收集次數加上1后的值,設定 為所述復制目標空閑塊的無用存儲單元收集次數。

            附圖說明

            圖1是說明實施方式的存儲器系統的構成例的框圖。

            圖2是所述實施方式的存儲器系統執行的無用存儲單元收集次數管理動作和無用存儲單元收集動作的說明圖。

            圖3是所述實施方式的存儲器系統中使用的無用存儲單元收集(GC)次數管理列表的例的說明圖。

            圖4是所述實施方式的存儲器系統基于無用存儲單元收集次數管理列表而執行的無用存儲單元收集對象塊選擇動作的說明圖。

            圖5是所述實施方式的存儲器系統執行的無用存儲單元收集動作的說明圖。

            圖6是寫入所述實施方式的存儲器系統的多種數據的例的說明圖。

            圖7是無用存儲單元收集次數和多種數據間的數據量比例的關系的例的說明圖。

            圖8是說明所述實施方式的存儲器系統執行的無用存儲單元收集動作的次序的流程圖。

            圖9是所述實施方式的存儲器系統執行的包含將具有不同無用存儲單元收集次數的2個塊組的有效數據合并的處理的無用存儲單元收集動作的說明圖。

            圖10是說明所述實施方式的存儲器系統執行的包含將具有不同無用存儲單元收集次數的2個塊組的有效數據合并的處理的無用存儲單元收集動作的次序的流程圖。

            圖11是只對特定的無用存儲單元收集次數以上的塊組允許合并處理的動作的說明圖。

            圖12是說明包含只對特定的無用存儲單元收集次數以上的塊組允許合并處理的動作的無用存儲單元收集動作的次序的流程圖。

            圖13是所述實施方式的存儲器系統執行的對主機的數據寫入用依次分配空閑塊的動作的說明圖。

            圖14是所述實施方式的存儲器系統使用的塊使用順序管理列表的例的說明圖。

            圖15是請求向相同LBA(Logic Block Address,邏輯塊地址)寫入時所述實施方式的存儲器系統執行的累計數據寫入量算出動作的說明圖。

            圖16是所述實施方式的存儲器系統執行的累計數據寫入量響應處理的處理序列的說明圖。

            圖17是說明所述實施方式的存儲器系統執行的累計數據寫入量響應處理的次序的 流程圖。

            圖18是所述實施方式的存儲器系統執行的累計數據寫入量響應處理的其他處理序列的說明圖。

            圖19是說明所述實施方式的存儲器系統執行的累計數據寫入量響應處理的其他次序的流程圖。

            圖20是所述實施方式的存儲器系統使用的查找表的例的說明圖。

            圖21是說明請求向相同LBA寫入時所述實施方式的存儲器系統執行的時間經過響應處理的次序的流程圖。

            圖22是說明基于從所述實施方式的存儲器系統接收的累計數據寫入量/時間經過信息而由主機執行的處理的次序的例的流程圖。

            圖23是說明主機的構成例的框圖。

            圖24是表示包含所述實施方式的存儲器系統和主機的計算機的構成例的圖。

            具體實施方式

            以下,參照附圖來說明實施方式。

            首先,參照圖1來說明包含一實施方式的存儲器系統的信息處理系統1的構成。

            該存儲器系統是半導體存儲裝置,構成為向非易失性存儲器寫入數據,并從非易失性存儲器讀取數據。該存儲器系統例如作為基于NAND閃存技術的固態驅動器(SSD)3而實現。

            信息處理系統1包含主機(主機裝置)2和SSD3。主機2是比如服務器、個人計算機這樣的信息處理裝置。

            SSD3能夠被用作作為主機2發揮功能的信息處理裝置的主存儲器。SSD3可以內置于信息處理裝置,也可以通過纜線或者網絡連接于信息處理裝置。

            作為用來將主機2和SSD3相互連接的接口,可使用SCSI(Small Computer System Interface,小型計算機系統接口)、Serial Attached SCSI(SAS,串行連接SCSI)、ATA(Advanced Technology Attachment,高級技術附件)、Serial ATA(SATA)、PCI Express(PCIe)、Ethernet(注冊商標)、Fibre channel(光纖信道)等。

            SSD3具備控制器4、非易失性存儲器(NAND存儲器)5、及DRAM(Dynamic Random Access Memory,動態隨機存取存儲器)6。NAND存儲器5并無限定,可以包含多個NAND閃存存儲芯片。

            NAND存儲器5包含多個NAND塊(塊)B0~Bm-1。塊B0~Bm-1作為擦除單位發 揮功能。塊也被稱為“物理塊”或者“擦除塊”。

            塊B0~Bm-1包含多個頁(物理頁)。即,塊B0~Bm-1的每一個包含頁P0~Pn-1。NAND存儲器5中,數據的讀取及數據的寫入是以頁單位執行。數據的擦除是以塊單位執行。

            控制器4經由如Toggle、ONFI之類的NAND接口13,電連接于作為非易失性存儲器的NAND存儲器5。控制器4能作為構成為執行NAND存儲器5的數據管理和NAND存儲器5的塊管理的閃存轉換層(FTL)發揮功能。

            數據管理包含(1)表示邏輯塊地址(LBA)和物理地址之間的對應關系的映射信息的管理、(2)用來隱藏頁單位的讀取/寫入和塊單位的擦除動作的處理等。LBA和物理地址之間的映射的管理是使用作為邏輯物理地址轉換表發揮功能的查找表(LUT)33而執行。查找表(LUT)33以規定的管理大小單位管理LBA和物理地址之間的映射。來自主機2的寫入命令大多數是請求4K字節的數據寫入。因此,查找表(LUT)33也可以用例如4K字節單位管理LBA和物理地址之間的映射。對應于某個LBA的物理地址表示寫入該LBA的數據的NAND存儲器5內的物理存儲位置。物理地址包含物理塊地址和物理頁地址。物理頁地址對所有頁分配,且物理塊地址對所有塊分配。

            向頁的數據寫入在1個擦除循環中只能進行一次。

            因此,控制器4將向相同LBA的寫入(覆寫)映射到NAND存儲器5上的其他頁。即,控制器4向所述其他頁寫入數據。然后,控制器4更新查找表(LUT)33,將該LBA關聯于所述其他頁,并將原來的頁(即曾關聯該LBA的舊數據)無效化。

            塊管理包含不良塊的管理、損耗平均、和無用存儲單元收集動作等。損耗平均是用來使各物理塊的編程/擦除次數平準化的動作。

            無用存儲單元收集動作是用來作出NAND存儲器5內的空閑空間的動作。該無用存儲單元收集動作為了增加NAND存儲器5的空閑塊的個數,將混雜有效數據和無效數據的若干塊內的所有有效數據復制到其他塊(復制目標空閑塊)。然后,無用存儲單元收集動作更新查找表(LUT)33,將復制的有效數據的LBA分別映射到正確的物理地址。通過將有效數據復制到其他塊,只剩下無效數據的塊作為空閑塊而開放。由此,該塊在擦除后能夠再次利用。

            主機2向SSD3送出寫入命令。該寫入命令包含寫入數據(即須寫入的數據)的邏輯地址(起始邏輯地址)和傳輸長度。本實施方式中,是使用LBA作為邏輯地址,在其他實施方式中也可以使用目標ID(identification,標識)作為邏輯地址。LBA是通過向邏輯扇區(邏輯塊)賦予的序列號來表現。序列號從零開始。邏輯扇區的大小為例如512字節。

            SSD3的控制器4將由寫入命令內的起始邏輯地址和傳輸長度指定的寫入數據,寫入至NAND存儲器5內的塊的頁。而且,控制器4通過更新查找表(LUT)33,將與寫入數據對應的LBA映射到表示該數據寫入的物理存儲位置的物理地址。

            更詳細來說,控制器4將NAND存儲器5內的一個空閑塊分配給主機2的數據寫入用。該分配塊是須寫入主機2的數據的寫入對象塊,也被稱為“寫入目標塊”或者“輸入塊”等。控制器4一邊更新查找表(LUT)33,一邊將從主機2接收的寫入數據依次寫入至寫入對象塊(寫入目標塊)的可用頁。當寫入目標塊無可用頁時,控制器4分配新的空閑塊作為寫入目標塊。

            接著,說明控制器4的構成。

            控制器4包含主機接口11、CPU(Central Processing Unit,中央處理器)12、NAND接口13、DRAM接口14、SRAM(Static Random Access Memory,靜態隨機存取存儲器)15等。所述CPU12、NAND接口13、DRAM接口14、SRAM15是經由總線10而相互連接。

            主機接口11從主機2接收各種命令(寫入命令、讀取命令、取消映射(UNMAP)命令等)。

            寫入命令是請求向SSD3寫入由該寫入命令指定的數據。寫入命令包含須寫入的最初的邏輯塊的LBA(起始LBA)、和傳輸長度(邏輯塊數量)。讀取命令是請求從SSD3讀取由該讀取命令指定的數據。讀取命令包含須讀取的最初的邏輯塊的LBA(起始LBA)、和傳輸長度(邏輯塊數量)。

            CPU12是以控制主機接口11、NAND接口13、DRAM接口14、SRAM15的方式構成的處理器。CPU12除了執行所述的FTL(Flash Translation Layer,閃存轉換層)的處理外,還執行用來處理主機2的各種命令的命令處理等。

            例如,當控制器4從主機2接收到寫入命令時,在CPU12的控制下,控制器4執行以下寫入動作,將由寫入命令指定的寫入數據寫入至NAND存儲器5。

            即,控制器4將寫入數據寫入至當前寫入目標塊的物理存儲位置(可用頁),然后更新查找表(LUT)33,對寫入命令所含的LBA(起始LBA)映射該物理存儲位置的物理地址。

            所述FTL處理及命令處理可以通過CPU12執行的固件來控制。該固件使CPU12作為無用存儲單元收集(GC)次數管理部21、無用存儲單元收集(GC)動作控制部22、及更新頻率信息響應部23發揮功能。

            由主機2寫入SSD3的數據中,有時存在數據局部性,即,其部分數據頻繁被重寫,而剩余部分不會頻繁被重寫。這種情況下,例如通過選擇無效數據量多的上位若干塊作 為GC對象塊的通常的GC算法而執行GC動作時,隨著GC動作多次反復執行,而同一塊內容以混雜更新頻率高的數據和更新頻率低的數據。更新頻率高的數據和更新頻率低的數據混雜成為SSD3的寫入放大倍數增加的主要原因。

            原因是,在更新頻率高的數據(Hot(熱)數據)和更新頻率低的數據(Cold(冷)數據)混雜的塊內,因Hot數據的更新而塊內的部分區域快速地無效化,另一方面,該塊內的剩余區域(Cold數據)則長期維持有效狀態。

            若塊內寫滿Hot數據,則該塊內的所有數據有很大可能性因為這些數據的更新(重寫)而相對快速地無效化。因此,該塊不用執行無用存儲單元收集動作,只能通過擦除該塊才能再次利用。

            另一方面,若塊內寫滿CoId數據,則該塊內的所有數據長期維持有效狀態。因此,該塊由很大可能在很長期間內不會成為無用存儲單元收集動作的對象。

            寫入放大倍數(WA)是以如下方式定義。

            WA=“寫入SSD的數據的總量”/“從主機寫入SSD的數據的總量”

            “寫入SSD的數據的總量”相當于從主機寫入SSD的數據的總量和通過無用存儲單元收集動作等而內部寫入SSD的數據的總量的和。

            寫入放大倍數(WA)的增加會引起SSD3內的各個塊的重寫次數(編程/擦除次數)的增加。即,寫入放大倍數(WA)越大,塊的編程/擦除次數便越快地達到其編程/擦除次數的上限值。結果,引起SSD3的耐久性及壽命的劣化。

            本實施方式中,為了能夠分離更新頻率高的數據和更新頻率低的數據,而具有“考慮塊內的數據的GC次數的GC功能”、和“基于LBA的更新頻率通知功能”。

            無用存儲單元收集(GC)次數管理部21及無用存儲單元收集(GC)動作控制部22執行“考慮塊內的數據的GC次數的GC功能”。“考慮塊內的數據的GC次數的GC功能”執行能夠抑制因數據局部性引起的SSD3的寫入放大倍數增加的改善后的無用存儲單元收集(GC)動作。

            無用存儲單元收集(GC)次數管理部21對包含由主機2寫入的數據的每個塊,管理無用存儲單元收集(GC)次數。某個塊的GC次數表示該塊內的數據通過無用存儲單元收集(GC)動作而被復制的次數。即,某個塊的GC次數表示該塊內的數據過去作為有效數據被復制了多少次。

            對于剛由主機2寫入數據后的塊、即此數據一次也沒有因GC而收集(復制)的塊,將該塊的GC次數設定為零。

            若選擇GC次數為零的若干塊作為GC的對象塊(復制源塊),將這些塊的有效數據 復制到復制目標空閑塊,則GC次數管理部21將該復制目標空閑塊的GC次數設定為1。原因是復制目標空閑塊內的數據是作為有效數據而從GC對象塊(復制源塊)經過1次復制的數據。

            通過將有效數據復制到復制目標空閑塊而只剩無效數據的各塊(復制源塊)變成空閑塊。空閑塊不包含數據,因此無須管理該空閑塊的GC次數。

            若選擇GC次數為1的若干塊(復制源塊)作為無用存儲單元收集(GC)的對象塊,將這些塊的有效數據復制到復制目標空閑塊,則GC次數管理部21將該復制目標的空閑塊的GC次數設定為2。原因是該復制目標空閑塊內的數據是過去作為有效數據而被復制了2次的數據。

            這樣,與某個塊關聯的GC次數的值表示該塊內的數據通過過去的GC動作而被復制了多少次、即過去對該塊內的數據執行了多少次GC動作。

            GC動作控制部22執行改良后的GC動作,即,選擇與相同GC次數關聯的若干塊作為無用存儲單元收集(GC)動作的對象塊,只將這些與相同GC次數關聯的塊的有效數據復制到相同復制目標塊。

            例如,GC動作控制部22從與相同GC次數關聯的塊組(即具有相同GC次數的塊的集合)中選擇若干塊作為GC用對象塊。GC動作控制部22將被選擇為該GC對象塊的這些塊內的有效數據復制到復制目標空閑塊。然后,由GC次數管理部21,將在被選擇為GC對象塊的這些塊的GC次數加上1后的值,設定為該復制目標空閑塊的GC次數。

            “基于LBA的更新頻率通知功能”是如下功能:向主機2通知各個寫入命令所含的向各個LBA的寫入頻率,由此效率良好地輔助主機2分離Hot數據/Cold數據。

            “基于LBA的更新頻率通知功能”由更新頻率信息響應部23執行。

            更新頻率信息響應部23在從主機2接收到包含LBA的寫入命令時,將與向該LBA的前次寫入至向該LBA的本次寫入為止的時間經過相關的值、或者向該LBA的前次寫入至向該LBA的本次寫入為止的累計數據寫入量,作為對該寫入命令的響應而通知給主機2。由此,能夠向主機2通知用戶數據的實際更新頻率(重寫頻率),因此,主機2能夠將用戶數據分類成更新頻率互不相同的多種數據、例如頻繁更新類型的數據(Hot數據)、低更新頻率類型的數據(Cold數據)、具有Hot數據和CoId數據的中間的更新頻率的類型的數據(Warm(溫)數據)。結果,例如主機2能夠視需要執行用來將這些不同類型的數據分散給不同的SSD的處理等。

            接著,說明控制器4內的其他組件。

            NAND接口13是構成為在CPU12的控制下控制NAND存儲器5的NAND控制器。

            DRAM接口14是構成為在CPU12的控制下控制DRAM6的DRAM控制器。

            DRAM6的部分存儲區域可以被用作寫入緩沖器(WB)31,用于臨時存儲須寫入NAND存儲器5的數據。此外,DRAM6的存儲區域也可以被用作GC緩沖器32,用于臨時存儲無用存儲單元收集(GC)動作中被移動的數據。此外,DRAM6的存儲區域也可以用于存儲所述查找表33。

            而且,DRAM6的存儲區域還可以被用作GC次數管理列表34、及塊使用順序管理列表35。

            GC次數管理列表34是用于針對包含由主機2寫入的數據的每個塊保持GC次數的列表。GC次數管理列表34還可以是表示各塊的塊ID(例如物理塊地址)和這些塊內的數據的GC次數之間的對應關系的表。

            或者,GC次數管理列表34還可以由用于按GC次數(例如GC次數=0~GC次數=n)管理各個塊的多個GC次數列表構成。于此,n是須管理的GC次數的上限值。例如,GC次數=0的GC次數列表保持與0次的GC次數關聯的各個塊的塊ID(例如物理塊地址)的列表。GC次數=1的GC次數列表保持與1次的GC次數關聯的各個塊的塊ID(例如物理塊地址)的列表。

            塊使用順序管理列表35保持對分配給寫入目標塊用的各個塊賦予的分配編號(序列號)。即,控制器4對分配為寫入對象塊的各個塊賦予表示其分配順序的編號(分配編號)。編號可以是從1開始的序列號。例如,對最先分配給寫入目標塊用的塊賦予分配編號=1,對第二個分配給寫入目標塊用的塊賦予分配編號=2,對第三個分配給寫入目標塊用的塊賦予分配編號=3。由此,能夠管理表示哪個塊以何種順序分配為寫入目標塊的塊使用履歷。作為分配編號,能夠使用每當分配新的空閑塊給寫入目標塊用時遞增的計數器的值。

            SSD3還可以保持其他各種管理信息。此類管理信息的例子可以包含保持與各個物理地址對應的有效/無效旗標的頁管理表。各有效/無效旗標表示對應的物理地址(物理頁)有效還是無效。所謂物理頁有效是指此物理頁內的數據為有效數據。所謂物理頁無效是指此物理頁內的數據是因更新(重寫)而無效化的數據。

            接著,說明主機2的構成。

            主機2是執行各種程序的信息處理裝置。信息處理裝置執行的程序包含應用軟件層41、操作系統(OS)42、文件系統43。

            眾所周知,操作系統(OS)42一般來說是軟件,構成為執行以下控制:管理主機2全體,控制主機2內的硬件,讓應用程序能夠使用硬件及SSD3。

            文件系統43的作用是執行文件操作(創建、保存、更新、刪除等)用的控制。例如,文件系統43可以使用ZFS(Zettabyte File System,zetta字節文件系統)、Btrfs、XFS、ext4、NTFS(New Technology File System,新技術文件系統)等。或者,文件系統43還可以使用文件目標系統(例如Ceph Object Storage Daemon)、Key Value Store system(例如Rocks DB)。

            各種應用軟件線程在應用軟件層41上運行。作為應用軟件線程的例子,由用戶端軟件、數據庫軟件、虛擬機等。

            當應用軟件層41需要向SSD3送出比如讀取命令或者寫入命令這樣的請求時,應用軟件層41會向OS42送出其請求。OS42將此請求送出至文件系統43。文件系統43將此請求轉碼成命令(讀取命令、寫入命令等)。文件系統43將命令送出至SSD3。當收到來自SSD3的回應時,文件系統43將此回應送出至OS42。OS42將此回應送出至應用軟件層41。

            接著,參照圖2~圖12,詳細說明“考慮塊內的數據的GC次數的GC功能”。

            圖2表示SSD3執行的GC次數管理動作和GC動作。

            SSD3的控制器4將某個空閑塊分配為主機2的數據(寫入數據)寫入用的塊(寫入目標塊),將從主機2接收的寫入數據依次寫入至該寫入目標塊內的可用頁。當前寫入目標塊的所有頁寫滿數據時,控制器4將當前寫入目標塊管理為活動塊(包含數據的塊)。然后,控制器4分配另一空閑塊作為新的寫入目標塊。這樣,SSD3中,從主機2接收的數據(寫入數據)按照接收順序而依次從當前寫入目標塊的最初頁寫入至最后頁。

            圖2的塊B11~B17是主機2剛寫入數據后的塊、即此塊內的數據一次也沒有因無用存儲單元收集(GC)動作而被復制的塊。這些塊B11~B17對應的GC次數為0。

            隨著時間經過,塊B11~B17的各個內的數據的一部分因重寫而可能變得無效化。由此,塊B11~B17的各個內有時混雜有效數據和無效數據。

            當空閑塊數量低至閾值個數以下時,控制器4開始GC動作,從混雜有效數據和無效數據的若干塊中作出空閑塊。

            控制器4首先選擇混雜有效數據和無效數據的若干塊作為GC對象塊。選擇該GC對象塊時,控制器4像所述那樣選擇與相同GC次數關聯的塊組作為GC對象塊。該塊組可以是例如無效數據量最多的塊所屬的塊組、即具有與無效數據量最多的塊的GC次數相同的GC次數的塊的集合。這種情況下,控制器4可以最先從包含主機2寫入的數據的塊選擇無效數據量最多的塊。接著,控制器4可以選擇無效數據量最多的塊、以及與和該無效數據量最多的塊的GC次數相同的GC次數關聯的一個以上的塊,作為無用 存儲單元收集(GC)動作的對象塊。

            控制器4將選擇的若干GC對象塊(與相同GC次數關聯的若干塊)內的有效數據復制到復制目標空閑塊,將在這些GC對象塊的GC次數加上1后的值設定為復制目標空閑塊的GC次數。由此,將在GC對象塊的GC次數加上1后的值繼承給復制目標空閑塊,從而能夠用復制目標空閑塊的GC次數準確地表現此復制目標空閑塊內的數據過去因GC動作而被復制了多少次。

            例如,若選擇與相同GC次數關聯的2個塊B11、B12作為GC對象塊,并將這些塊B11、B12的有效數據復制到復制目標空閑塊B21,則該復制目標空閑塊B21的GC次數設定為在塊B11、B12的GC次數(這里為0)加上1后的值(這里為1)。

            同樣地,若選擇與相同GC次數關聯的3個塊B13、B14、B15作為GC對象塊,并將這些塊B13、B14、B15的有效數據復制到復制目標空閑塊B22,則該復制目標空閑塊B22的GC次數設定為在塊B13、B14、B15的GC次數(這里為0)加上1后的值(這里為1)。

            同樣地,若選擇與相同GC次數關聯的2個塊B16、B17作為GC對象塊,并將這些塊B16、B17的有效數據復制到復制目標空閑塊B23,則該復制目標空閑塊B23的GC次數設定為在塊B16、B17的GC次數(這里為0)加上1后的值(這里為1)。

            隨著時間經過,塊B21、B22、B23的各個內的數據的一部分有可能因重寫而無效化。由此,塊B21、B22、B23的各個內有時會混雜有效數據和無效數據。

            若選擇與相同GC次數關聯的2個塊B21、B22作為GC對象塊,并將這些塊B21、B22的有效數據復制到復制目標空閑塊B31,則該復制目標空閑塊B31的GC次數設定為在塊B21、B22的GC次數(這里為1)加上1后的值(這里為2)。

            這樣,在本實施方式中,對每個塊管理的GC次數表示此塊內的數據因過去的GC動作而被復制的次數。為了準確地管理該GC次數,將在GC對象塊的GC次數加上1后的值繼承給復制目標空閑塊內的數據。

            圖3表示GC次數管理列表34的例。

            當須管理的GC次數的上限值n為例如10時,GC次數管理列表34可以由分別與GC次數=0~GC次數=10對應的11個GC次數列表構成。

            GC次數=0的GC次數列表表示與GC次數=0關聯的各個塊的塊ID(例如物理塊地址)的列表。GC次數=1的GC次數列表表示與GC次數=1關聯的各個塊的塊ID(例如物理塊地址)的列表。同樣地,GC次數=10的GC次數列表表示與GC次數=10關聯的各個塊的塊ID(例如物理塊地址)的列表。各GC次數列表并無限定,也可以只包含混 雜有效數據和無效數據的塊。

            圖4表示由控制器4執行的GC對象塊選擇動作。

            在選擇GC對象塊的處理中,控制器4的無用存儲單元收集動作控制部22首先可以從與不同GC次數分別關聯的多個塊組(多個GC次數列表)中選擇GC對象的塊組。圖4中,例示的情況為,選擇GC次數=5的塊組(塊B2、塊B5、塊B11、塊B21)作為GC對象的塊組,并從該GC次數=5的塊組中選擇若干GC對象塊。

            在選擇GC對象塊的處理中,例如可以首先選擇符合規定條件的塊作為最初的GC候補。符合規定條件的塊可以是活動塊(包含主機2寫入的數據的塊)中無效數據量最多的塊。在其他實施方式中,符合規定條件的塊可以是活動塊中最舊的塊。以下,假設情況為選擇無效數據量最多的塊作為最初的GC候補。

            若無效數據量最多的塊為塊B5,則控制器4特定出包含塊B5的GC次數列表(這里為GC次數=5的GC次數列表),選擇由該GC次數=5的GC次數列表表示的塊組(塊B2、塊B5、塊B11、塊B21)作為GC對象的塊組,并從該GC對象的塊組中選擇若干GC對象塊。例如,可以從這些塊B2、塊B5、塊B11、塊B21中選擇無效數據量從多到少的上位若干塊作為GC對象塊。這種情況下,例如可以從塊B5、塊B2、塊B11、塊B21中選擇無效數據量最多的上位一個以上的塊作為GC對象塊。

            圖5表示控制器4執行的GC動作。

            控制器4管理包含所有空閑塊的空閑塊池(空閑塊列表)60。控制器4從這些空閑塊中選擇一個空閑塊。控制器4將選擇的空閑塊分配為復制目標空閑塊B1000。控制器4將所有有效數據從具有相同GC次數的GC對象塊(這里為塊B2、B5、B11)復制到復制目標空閑塊B1000。然后,控制器4更新查找表33,將有效數據的各LBA分別映射至復制目標空閑塊B1000的物理地址。

            復制目標空閑塊B1000的GC次數設定為塊B2、B5、B11的GC次數(=5)+1。將塊B1000追加至GC次數=6的GC次數列表。塊B2、B5、B11變成不含有效數據的空閑塊。從GC次數=5的GC次數列表中丟棄變成空閑塊的塊B2、B5、B11。

            圖6表示寫入SSD3的多種數據的例。

            圖6中,假設情況為向SSD3寫入更新頻率互不相同的3種數據(數據A、數據B、數據C)。SSD3的數據存儲區域(LBA空間)包含與LBA組A、B、C對應的3個空間。

            寫入LBA組A的數據A為更新頻率低的數據,且數據A的量在數據A、B、C中最多。即,LBA組A具有最大的LBA范圍。

            寫入LBA組C的數據C是更新頻率高的數據,且數據C的量在數據A、B、C中 最少。即,LBA組C具有最小的LBA范圍。

            寫入LBA組B的數據B是具有數據A與數據C的中間的更新頻率的數據,且數據B的量處于數據A的量與數據C的量的中間。

            數據A的量相對于SSD3的總用戶容量的比例可為例如50%。數據B的量相對于SSD3的總用戶容量的比例可為例如30%。數據C的量相對于SSD3的總用戶容量的比例可為例如20%。

            數據A的更新頻率即向LBA組A的寫入的頻率可為例如20%。數據B的更新頻率即向LBA組B的寫入的頻率可為例如30%。數據C的更新頻率即向LBA組C的寫入的頻率可為例如50%。

            這種情況下,例如當SSD3寫滿數據A、數據B、數據C后,以2次寫入命令中1次的比例,從主機2向SSD3發布請求向數據C(LBA組C)寫入的寫入命令,且以5次寫入命令中1次的比例,從主機2向SSD3發布請求向數據A(LBA組A)寫入的寫入命令。例如,數據C以2次寫入命令中1次的比例(50%)這樣的高頻率進行更新。

            當寫入SSD3的數據具有如圖6那樣的數據局部性時,如圖6下部所示,各寫入目標塊內混雜數據A、數據B、數據C。

            一個寫入目標塊內,數據C的量相對于塊容量的比例為50%,數據B的量對于塊容量的比例為30%,數據A的量對于塊容量的比例為20%。

            如上所述,數據C的量比數據A、數據B少,且數據C的更新頻率高于數據A、數據B,因此各塊內的數據C大部分有很大概率快速無效化。另一方面,數據A及數據B,尤其是數據A有很大概率長期維持有效狀態。

            因數據C的更新(重寫)而無效數據量增加的各個塊均成為GC對象塊,將有效數據從這些塊中復制到復制目標空閑塊。各GC對象塊中,有很大概率是大部分數據C無效化且大部分數據A、數據B維持為有效數據。因此,復制目標塊中,數據A的量和數據B的量相比GC對象塊而增加,相應地數據C的量相比GC對象塊而減少。

            本實施方式中,是將相同GC次數的若干塊內的有效數據復制到復制目標空閑塊,因此GC次數少的塊內的有效數據和GC次數多的塊內的有效數據,不會因GC動作而被復制到相同復制目標空閑塊。因此,塊的GC次數越多,越能增加數據A的量相對于此塊的容量的比例,由此能夠將數據A(Cold數據)和數據C(熱數據)分離。

            圖7表示GC次數和各塊內的數據A、B、C間的數據量的比例的關系的例。

            GC次數=0的各塊中,數據C的量相對于塊的容量的比例為50%,數據B的量相對于塊的容量的比例為30%,數據A的量相對于塊的容量的比例為20%。

            數據C的量相對于相對于塊的容量的比例在1~2次的GC動作后迅速降低。隨著GC次數增加,數據B的量相對于塊的容量的比例也逐漸降低。

            如上所述,本實施方式中,GC次數少的塊內的有效數據和GC次數多的塊內的有效數據不會被復制到相同復制目標空閑塊,因此包含數據的各個塊能夠分類為:(1)基本上只包含數據A的組(例如GC次數7~10左右);(2)包含數據A和數據B且基本上不含數據C的組(例如GC次數3~6左右);(3)包含數據A、數據B和數據C的組(例如GC次數0~2左右)。

            換句話說,本實施方式中,對于相同GC次數的塊,能夠使這些塊所含的數據A、B、C的量的比例相同。

            由此,將相同GC次數的若干塊內的有效數據復制到相同復制目標空閑塊的本實施方式的改良后的GC動作,即便在寫入SSD3的數據具有高數據局部性的情況下,也能夠形成基本上只包含數據A的塊的組、包含數據A和數據B且基本上不含數據C的塊的組、包含數據A、數據B和數據C的塊的組,由此能夠逐漸將Hot數據和Cold數據分離。結果,能夠抑制SSD3的寫入放大倍數增加。

            圖8的流程圖表示由控制器4執行的GC動作的次序。

            控制器4檢查剩余空閑塊數量(步驟S11),并判定剩余空閑塊數量是否為閾值th1以下(步驟S12)。該檢查也可以定期執行。例如,可以在須將新空閑塊分配為寫入目標塊時檢查剩余空閑塊數量。

            若剩余空閑塊數量為閾值th1以下(步驟S12的是),控制器4首先從所有活動塊選擇最初的GC候補。最初的GC候補可以是最大無效數據量的塊。這種情況下,從所有活動塊選擇最大無效數據量的塊作為最初的GC候補(步驟S13)。控制器4參照GC次數管理列表34,選擇與和最初的GC候補(這里例如為最大無效數據量的塊)的GC次數相同的GC次數關聯的塊組(第1塊組),然后從該第1塊組中選擇若干GC對象塊(步驟S14)。在步驟S14中,選擇由包含最初的GC候補(例如最大無效數據量的塊)的GC次數列表所示的塊組(第1塊組),然后從第1塊組中選擇若干GC對象塊。這種情況下,也可以選擇最初的GC候補(例如最大無效數據量的塊)、和該GC次數列表所含的其他1個以上的塊作為GC對象塊。

            控制器4將這些被選擇的GC對象塊內的所有有效數據復制到復制目標空閑塊(步驟S15)。在步驟S15中,從這些被選擇的GC對象塊內的各個有效頁中讀取有效數據,并將讀取的有效數據分別寫入復制目標空閑塊的各個可用頁。在步驟S15中,控制器4進一步更新查找表(LUT)33,將復制的有效數據的LBA關聯于復制目標空閑塊的物理地址, 并更新頁管理表,使各GC對象塊內的原來的頁(即該LBA關聯的舊數據)無效化。這種情況下,控制器4可以先通過參照查找表(LUT)33,取得存儲復制的有效數據的原來的頁的物理地址,然后更新頁管理表,將與該物理地址對應的有效/無效旗標設定為表示無效的值。

            之后,控制器4將這些被選擇的GC對象塊的GC次數+1、即在第1塊組的GC次數加上1后的值,設定為復制目標空閑塊的GC次數(步驟S16)。

            圖9表示包含將具有不同GC次數的2個塊組的有效數據合并的處理的GC動作。

            例如,當與和最大無效數據量的塊的GC次數相同的GC次數關聯的塊組(GC對象塊組)所含的有效數據的量少于閾值時,控制器4執行將具有不同GC次數的2個塊組的有效數據合并的處理。這種情況下,控制器4也可以選擇具有與GC對象塊組的GC次數盡可能接近的GC次數的另一個塊組。

            例如,假設當前最大無效數據量的塊為塊B300,塊B300的GC次數為10的情況。這種情況下,控制器4檢查GC次數=10的GC次數管理列表所含的塊組的總有效數據量。例如,當GC次數=10的GC次數管理列表所含的塊只有塊B300時,或者GC次數=10的GC次數管理列表包含2~3個塊但這些塊內的有效數據量非常少時,控制器4選擇須與GC次數=10的塊組一起執行GC動作的塊組。

            這種情況下,控制器4也可以從GC次數比最大無效數據量的塊B300的GC次數少1次以上的所有塊組(這里為GC次數9的塊組、GC次數8的塊組、GC次數7的塊組、…GC次數0的塊組)中,選擇具有最大無用存儲單元收集次數的塊組。

            控制器4首先參照GC次數=9的GC次數管理列表,判定是否存在GC次數=9的塊。若不存在GC次數=9的塊,控制器4便參照GC次數=8的GC次數管理列表,判定是否存在GC次數=8的塊。

            若不存在GC次數=9的塊,但存在GC次數=8的塊,控制器4便選擇GC次數=8的塊組(例如塊B41、B42、B43)。然后,控制器4將塊B300的有效數據和GC次數=8的塊組的有效數據復制到復制目標空閑塊。這種情況下,并非必須利用塊B41、B42、B43的所有有效數據,只要利用塊B41、B42、B43內的至少一個塊內的有效數據便可。

            圖10的流程圖表示包含將具有不同GC次數的2個塊組的有效數據合并的處理的GC動作的次序。

            控制器4檢查剩余空閑塊數量(步驟S21),并判定剩余空閑塊數量是否為閾值th1以下(步驟S22)。如上所述,該檢查可以定期執行。

            若剩余空閑塊數量為閾值th1以下(步驟S22的是),控制器4先從所有活動塊中選 擇最初的GC候補。最初的GC候補也可以是最大無效數據量的塊。這種情況下,從所有活動塊中選擇最大無效數據量的塊作為最初的GC候補(步驟S23)。控制器4參照GC次數管理列表34,選擇與和最初的GC候補(這里例如為最大無效數據量的塊)的GC次數相同的GC次數關聯的塊組(第1塊組),并判定該塊組(第1塊組)的有效數據的總量是否為閾值th2以下(步驟S24)。

            閾值th2的值可以是固定值,也可以是能夠視需要變更的值。閾值th2的值越大則越容易允許所述合并處理的執行。

            例如,閾值th2可以預先設定為表示SSD3內的一個塊的容量的值。由此,只有在只對與和最初的GC候補的GC次數相同的GC次數關聯的塊組執行GC動作時,才允許執行合并處理。或者,閾值th2也可以設定成SSD3內的1個塊的容量的整數倍、例如2倍的值。

            若該第1塊組的有效數據的總量并非閾值th2以下(步驟S24的否),控制器4便從該第1塊組選擇若干GC對象塊(步驟S25)。在步驟S25中,從由包含最初的GC候補(例如最大無效數據量的塊)的GC次數列表所示的第1塊組中,選擇這些GC對象塊。這種情況下,也可以選擇最初的GC候補(例如最大無效數據量的塊)、和該GC次數列表所含的其他塊作為GC對象塊。

            在步驟S25中,控制器4將這些被選擇的GC對象塊內的所有有效數據復制到復制目標空閑塊。在步驟S25中,控制器4進一步更新查找表(LUT)33,將復制的有效數據的LBA關聯于復制目標空閑塊的物理地址,并使各GC對象塊內的原來的頁無效化。

            之后,控制器4將這些被選擇的GC對象塊的GC=次數+1、即在第1塊組的GC次數加上1后的值,設定為復制目標空閑塊的GC次數(步驟S26)。

            另一方面,若第1塊組的有效數據的總量為閾值th2以下(步驟S24的是),控制器4便從與比該第1塊組的GC次數少1次以上的GC次數關聯的所有塊組中,選擇與最大GC次數關聯的塊組(第2塊組)(步驟S27)。

            控制器4將第1塊組的有效數據和第2塊組的有效數據復制到復制目標空閑塊(步驟S28)。在步驟S28中,控制器4進一步更新查找表(LUT)33,將復制的有效數據的LBA關聯于復制目標空閑塊的物理地址,并使各GC對象塊內的原來的頁無效化。

            控制器4將第2塊組的GC次數+1設定為復制目標空閑塊的GC次數,或者將第1塊組的GC次數+1設定為復制目標空閑塊的GC次數(步驟S29)。或者,也可以在第2塊組內的GC對象塊數量比第1塊組內的GC對象塊數量多時,將第2塊組的GC次數+1設定為復制目標空閑塊的GC次數,在第1塊組內的GC對象塊數量比第2塊組內 的GC對象塊數量多時,將第1塊組的GC次數+1設定為復制目標空閑塊的GC次數。

            圖11表示只對特定的GC次數以上的塊組允許合并處理的動作。

            GC次數多的塊內所含的有效數據有很大可能是更新頻率低的數據(數據A)。但,數據A也會以20%的比例被重寫,所以對于GC次數多的塊、例如GC次數=10的塊,有其無效數據量變多的情況。GC次數多的塊內的有效數據是至今為止一次也未被更新(重寫)的數據、即長期維持有效狀態的數據。因此,該有效數據今后也不會被更新的概率高。

            另一方面,GC次數少的塊中,有很大可能包含數據B或者數據C。此類塊中,即便不立即執行此塊的GC動作,隨著時管理經過,塊內的所有數據也有可能無效化。

            因此,允許合并處理的塊組只有具有合并允許閾值th3以上的GC次數的塊組,由此能夠防止產生無用復制,從而能夠提高GC的效率。

            圖11中例示了將合并允許閾值th3設定為GC次數=8的情況。

            這種情況下,若與和最初的GC候補的GC次數相同的GC次數關聯的塊組(第1塊組)的GC次數為8以上,則允許第1塊組和其他塊組的合并處理。

            例如,允許GC次數=10的塊組和其他塊組的合并處理、及GC次數=9的塊組和其他塊組的合并處理。另一方面,例如禁止GC次數=7的塊組和其他塊組的合并處理。

            圖12的流程圖表示包含只對特定的GC次數以上的塊組允許合并處理的動作的GC動作的次序。

            該圖12的流程圖所示的GC動作中,除了圖10說明的處理以外,還追加了步驟S30~S33的處理。以下,主要說明步驟S30~S33的處理。

            若第1塊組的有效數據的總量為閾值th2以下(步驟S24的是),控制器4的處理進入步驟S30。在步驟S30中,控制器4判定第1塊組的GC次數是否為合并允許閾值th3以上。

            若第1塊組的GC次數為合并允許閾值th3以上(步驟S30的是),控制器4執行圖10說明的步驟S27~S29的合并處理。

            另一方面,若第1塊組的GC次數(最初的GC候補的塊的GC次數)少于合并允許閾值th3(步驟S30的否),控制器4禁止步驟S27~S29的合并處理的執行,取而代之的執行步驟S31~S33的處理。

            在步驟S31中,控制器4選擇與第1塊組不同的其他塊組作為GC對象塊組。例如,控制器4可以選擇最初的GC候補的塊的無效數據量第二多的塊作為新GC候補,并選擇包含該新GC候補的GC次數列表所示的塊組作為GC對象塊組。

            接著,控制器4將選擇的GC對象塊組的有效數據復制到復制目標空閑塊(步驟S32), 并將復制目標空閑塊的GC次數設定為在GC對象塊組的GC次數加上1后的值(步驟S33)。

            當最初的GC候補的塊關聯于比合并允許閾值th3少的GC次數時,該最初的GC候補的塊很有可能包含頻繁被更新的數據。因此,控制器4可以不對最初的GC候補的塊執行GC,而是等到該塊的有效數據全部無效化為止。

            接著,參照圖13~圖22,詳細說明“基于LBA的更新頻率通知功能”。

            圖13表示將空閑塊依次分配給主機2的數據寫入用的動作。

            控制器4將空閑塊列表60所示的空閑塊之一分配為寫入目標塊62。這種情況下,控制器4更新塊使用順序管理列表35,并將作為寫入目標塊62最先分配的塊的分配編號(序列號)設定為1。如圖14所示,塊使用順序管理列表35保持與各塊地址對應的分配編號(序列號)。這些分配編號表示分配為寫入目標塊62的塊的順序關系。即,控制器4對作為寫入對象塊分配而各個塊賦予表示其分配順序的分配編號,并使用塊使用順序管理列表35管理這些分配編號。

            控制器4將從主機2接收的寫入數據寫入到寫入緩沖器31。之后,控制器4一邊更新查找表(LUT)33,一邊將寫入緩沖器31內的寫入數據從寫入目標塊62的起始頁依次寫入到最終頁。

            若寫入目標塊62無可用頁,則控制器4將寫入目標塊62移動到活動塊列表61,分配空閑塊列表60的空閑塊作為新的寫入目標塊62。這種情況下,控制器4更新塊使用順序管理列表35,并將作為該新的寫入目標塊62分配的該塊的分配編號(序列號)設定為2。

            若活動塊列表61內的所有塊的所有數據均因更新而無效化,將該塊移動到空閑塊列表60。

            若空閑塊列表60內的空閑塊數量降低至閾值th1以下,便執行作出空閑塊的所述GC動作。

            圖15表示請求向相同LBA寫入時執行的累計數據寫入量算出動作。

            控制器4從主機2接收到包含某個LBA的寫入命令時,將向該LBA的前次寫入起的累計數據寫入量,作為對該寫入命令的響應而通知給主機2。累計數據寫入量表示從與接收到的寫入命令的LBA相同的LBA的前次寫入起,到寫入命令的向LBA的本次寫入為止的期間,主機2向NAND存儲器5寫入的數據的總量。

            累計數據寫入量例如能夠利用以下值而算出。

            (1)各塊的容量

            (2)塊內所含的頁數

            (3)通過向相同LBA的前次寫入而被寫入數據的NAND存儲器5內的第1物理存儲位置(舊物理地址)

            (4)通過本次寫入而須被寫入數據的NAND存儲器5內的第2物理存儲位置(新物理地址)

            (5)從包含第1物理存儲位置(舊物理地址)的塊的分配起,到包含第2物理存儲位置(新物理地址)的塊的分配為止的期間,用于主機2的數據寫入而分配的塊數量

            (1)~(4)的值是SSD3內的通常的管理信息,并非為了算出累計數據寫入量而專門準備。例如,控制器4通過參照查找表(LUT)33,能夠容易地取得對接收到的寫入命令內的LBA映射的物理地址作為第1物理存儲位置。

            (5)的“塊數量”能夠根據例如對包含第1物理存儲位置的塊賦予的分配編號、和對包含第2物理存儲位置的塊賦予的分配編號而容易地算出。

            分配編號(序列號)是由圖14的塊使用順序管理列表35管理。這些分配編號(序列號)的管理單位為塊單位,因此用來保持這些分配編號的必要容量可為少量。因此,累計數據寫入量基本上無須使用專門的算出用管理信息,能夠低成本地取得。

            圖15中,表示接收到包含LBA10的寫入命令時執行的累計數據寫入量算出動作。

            這里,假設情況為通過向LBA10的前次寫入而數據已被寫入到塊B51的頁Px,且通過向LBA10的本次寫入而數據須被寫入到當前寫入目標塊B62的頁Py。可知若塊B51的分配編號為10,塊B51的分配編號為13,在塊51與塊B62之間分配了2個寫入目標塊(例如塊B52、B61)。

            累計數據寫入量是通過d1+d2+d2+d3而賦予。

            這里,d1表示頁Px后續的塊B51內的頁數、或者與這些頁數對應的容量。d2表示一個塊內的頁數、或者一個塊的容量。d3表示頁Py前的塊B62內的頁數、或者與該頁數對應的容量。

            從包含LBA10的前次寫入命令的接收到包含LBA10的本次寫入命令的接收為止的期間,從主機2接收的寫入命令數量越多,則累計數據寫入量越增加。因此,所述累計數據寫入量能夠表現出由LBA10指定的數據的更新頻率、即向LBA10的寫入頻率。

            當接收寫入命令時,控制器4也可以按以下次序取得(算出)累計數據寫入量。

            首先,控制器4參照查找表(LUT)33,取得對寫入命令所含的LBA(這里為LBA10)映射的舊物理地址(這里為PA1)。然后,控制器4參照塊使用順序管理列表35,取得由舊物理地址指定的塊的分配編號(這里為10)、由新物理地址(這里為PA2)指定的塊的分 配編號(這里為13)。控制器4根據塊內所含的頁數和舊物理地址(PA1)求出d1,并根據塊內所含的頁數和新物理地址(PA2)求出d3。并且,控制器4根據分配編號(13)和分配編號(10)之間的差量,求出由舊物理地址指定的塊的分配起到由新物理地址指定的塊的分配為止的期間,作為寫入目標塊而分配的塊的總數(這里為2)。由此,能夠取得(算出)累計數據寫入量(=d1+d2+d2+d3)。

            圖16表示累計數據寫入量響應處理的處理序列。

            這里,假設情況為將該處理序列應用于分割寫入命令和寫入數據的NCQ(Native Command Queing,全速命令隊列)系統。

            主機2將包含表示某個LBA(=LBAx)的起始LBA的寫入命令送出至SSD3。響應該寫入命令的接收,SSD3的控制器4算出從向LBAx的前次寫入到向LBAx的本次寫入為止的累計數據寫入量(步驟S41),并將包含算出的累計數據寫入量的命令允許響應發送給主機2。命令允許響應是表示對接收的寫入命令的響應(寫入命令的執行允許)的允許響應。通過從SSD3向主機2發送允許響應,而開始由該寫入命令指定的寫入數據的傳送。允許響應可以包含對須允許執行的寫入命令進行識別的值。累計數據寫入量例如可用字節表示,也可以用邏輯塊(邏輯扇區)的數量來表示。

            響應命令允許響應的接收,主機2將寫入數據送出至SSD3。SSD3的控制器4將寫入數據寫入到寫入緩沖器31,將寫入緩沖器31的寫入數據寫入到寫入目標塊(步驟S42),并將命令結束的響應(回應)發送給主機2。另外,也可以在將寫入數據寫入到寫入緩沖器31的時點將命令結束的回應發送給主機2。

            主機2能夠基于從SSD3接收的命令允許響應所含的累計數據寫入量,把握LBAx的數據的實際更新頻率(向LBAx的寫入頻率)。

            若LBAx的數據的實際更新頻率與主機2預期的LBAx的數據的更新頻率不同,例如若LBAx的數據的實際更新頻率高于主機2預期的LBAx的數據的更新頻率,主機2可以視需要向SSD3送出用來終止送出的寫入命令的終止命令。這種情況下,不執行由寫入命令指定的數據的寫入。

            圖17的流程圖表示控制器4執行的累計數據寫入量響應處理的次序。

            控制器4從主機2接收包含LBAx作為起始LBA的寫入命令(步驟S51)。控制器4基于對LBAx映射的舊物理地址、須對LBAx映射的新物理地址、對包含由舊物理地址指定的物理存儲位置的塊賦予的分配編號、對包含由新物理地址指定的物理存儲位置的塊(當前寫入目標塊)賦予的分配編號等,算出向LBAx的前次寫入到向LBAx的本次寫入為止的累計數據寫入量(步驟S52)。控制器4將包含累計數據寫入量的允許響應返回 給主機2(步驟S53)。

            控制器4判定與該寫入命令對應的寫入數據或者用來終止該寫入命令的終止命令的哪一個是從主機2接收的(步驟S54)。

            若接收的是寫入數據,控制器4進入步驟S55。在步驟S55中,控制器4將該寫入數據寫入到寫入緩沖器31,將寫入緩沖器31內的寫入數據寫入到當前寫入目標塊,并更新查找表(LUT)33對LBAx映射新物理地址,然后更新頁管理表使舊物理地址(舊數據)無效化。

            之后,控制器4將命令結束的回應返回給主機2(步驟S56)。

            另外,如上所述,也可以在將寫入數據寫入到寫入緩沖器31的時點將命令結束的回應發送給主機2。

            另一方面,若接收的是終止命令,控制器4丟棄該寫入命令(步驟S57)。

            圖18表示累計數據寫入量響應處理的其他處理序列。

            主機2將包含某個LBA(=LBAx)作為起始LBA的寫入命令送出至SSD3。響應該寫入命令的接收,SSD3的控制器4將命令允許響應發送給主機2。響應命令允許響應的接收,主機2將寫入數據送出至SSD3。寫入數據被寫入到寫入緩沖器31。SSD3的控制器4算出累計數據寫入量(步驟S58)。算出累計數據寫入量的處理也可以響應寫入命令的接收而開始。

            之后,控制器4執行向寫入目標塊的寫入數據的寫入(步驟S59),并將包含算出的累計數據寫入量的命令結束的回應發送給主機2。

            另外,如上所述,也可以在將寫入數據寫入到寫入緩沖器31的時點,將包含累計數據寫入量的命令結束的回應發送給主機2。

            圖19的流程圖表示累計數據寫入量響應處理的其他次序。

            控制器4從主機2接收包含LBAx作為起始LBA的寫入命令(步驟S61)。控制器4將允許響應返回給主機2(步驟S62)。控制器4從主機2接收寫入數據(步驟S63)。寫入數據被寫入到寫入緩沖器31。

            控制器4基于對LBAx映射的舊物理地址、須對LBAx映射的新物理地址、對包含由舊物理地址指定的物理存儲位置的塊賦予的分配編號、對包含由新物理地址指定的物理存儲位置的塊(當前寫入目標塊)賦予的分配編號等,算出向LBAx的前次寫入到向LBAx的本次寫入為止的累計數據寫入量(步驟S64)。控制器4進入步驟S65。

            在步驟S65中,控制器4將寫入緩沖器31內的寫入數據寫入到當前寫入目標塊,更新查找表(LUT)33并對LBAx映射新物理地址,然后更新頁管理表使舊物理地址(舊數 據)無效化。

            之后,控制器4將包含累計數據寫入量的命令結束的回應返回給主機2(步驟S66)。

            另外,如上所述,也可以在將寫入數據寫入到寫入緩沖器31的時點,將命令結束的回應發送給主機2。

            接著,參照圖20~圖23,說明代替通知累計數據寫入量,而將向相同LBA的前次寫入起的時間經過值通知給主機2的處理。

            該時間經過值是與向相同LBA的前次寫入起的時間經過相關的信息,時間經過值的例子可以是向相同LBA的前次寫入的時刻,也可以是向相同LBA的前次寫入的時刻和向該相同LBA的本次寫入的時刻之間的時間間隔。

            圖20表示以例如4K字節這樣的規定管理單位,管理LBA、物理地址、和前回寫入時刻的對應關系而構成的查找表(LUT)33的例子。

            查找表(LUT)33中對應每個LBA而包含物理地址存儲區域33A和時刻存儲區域33B。各時刻存儲區域33B用于保持表示向對應的LBA的寫入發生時刻的值、即表示寫入對應的LBA的數據的時刻的值。各時刻存儲區域33B內保持的時刻例如可以是時分秒。

            接收到包含某個LBA的寫入命令時,控制器4將在與該LBA對應的物理地址區域33A登記物理地址,并在與該LBA對應的時刻區域33B登記由寫入命令指定的數據(寫入數據)的寫入時刻。物理地址表示由寫入命令指定的數據被寫入的物理存儲位置的物理地址。寫入時刻可以是接收到寫入命令的時刻,也可以是將由寫入命令指定的數據寫入到寫入緩沖器31的時刻,還可以是將由寫入命令指定的數據寫入到NAND存儲器5的寫入目標塊的時刻。

            圖21的流程圖表示控制器4執行的時間經過響應處理的次序。

            這里,假設情況為將包含時間經過值的命令允許響應發送給主機2。

            控制器4從主機2接收包含LBAx作為起始LBA的寫入命令(步驟S71)。控制器4參照查找表(LUT)33,取得向LBAx的前次寫入的時刻、即通過包含LBAx的前次寫入命令而數據被寫入的時刻(步驟S72)。控制器4將包含表示向LBAx的前次寫入的時刻的時間經過值的允許響應返回給主機2(步驟S73)。如上所述,時間經過值可以是向LBAx的前次寫入的時刻和LBAx的本次寫入的時刻之間的時間間隔、即從當前時刻(向LBAx的本次寫入的時刻)減去向LBAx的前次寫入的時刻后的值。

            控制器4判定與該寫入命令對應的寫入數據或者用于終止該寫入命令的終止命令的哪一個是從主機2接收的(步驟S74)。

            若接收的是寫入數據,控制器4進入步驟S75。在步驟S75中,控制器4將該寫入數據寫入到寫入緩沖器31,將寫入緩沖器31內的寫入數據寫入到當前寫入目標塊,并更新查找表(LUT)33對LBAx映射新物理地址和新寫入時刻,然后更新頁管理表使舊物理地址(舊數據)無效化。

            之后,控制器4將命令結束的回應返回給主機2(步驟S76)。

            另外,如上所述,也可以在將寫入數據寫入到寫入緩沖器31的時點,將命令結束的回應發送給主機2。

            另一方面,若接收的是終止命令,控制器4丟棄該寫入命令(步驟S77)。

            在圖21的流程圖中,說明了將包含時間經過值的命令允許響應發送給主機2的情況,但也可以將包含時間經過值的命令結束的回應發送給主機2。包含時間經過值的命令結束的回應的發送能夠按與圖18、圖19相同的次序執行。

            圖22的流程圖表示主機2基于從SSD3通知的累計數據寫入量/時間經過值而執行的處理的次序。

            主機2也可以基于從SSD3通知的累計數據寫入量/時間經過值,將數據分類成更新頻率不同的多種數據組。例如,主機2的文件系統43包含數據管理部,該數據管理部將數據分類成多種數據組,將數據分類成頻繁更新的數據組(Hot數據)和不會頻繁更新的數據組(Cold數據)。若寫入SSD3的數據的更新頻率為某個閾值以上,則數據管理部能夠將該數據識別為Hot數據。

            數據管理部為了使同一SSD內的各個LBA范圍的更新頻率盡可能一致為相同范圍的頻率,也可以將識別為Hot數據的數據從SSD3移動到其他存儲裝置。

            或者,若SSD3以具有高耐久性的昂貴SSD形式實現,也可以將Hot數據保留在SSD3內,將Cold數據從SSD3移動到其他存儲裝置。具有高耐久性的昂貴SSD的例子包含對每個存儲單元存儲1比特信息的SLC(Single-Level Cell,單階存儲單元)-SSD。

            表示SSD的耐久性的指標之一為DWPD(Drive Write Per Day,驅動器每日寫入量)。例如,DWPD=10對于具有1T字節的總容量的SSD意味著:能夠連續5年每天執行10T字節(=10×1T字節)的數據寫入。

            以下,說明用于前者的處理的次序的例子。

            主機2將包含LBAx的寫入命令發送給SSD3(步驟S81),并從SSD3接收包含累計數據寫入量或者時間經過值的響應(允許響應、命令結束回應)(步驟S82)。

            主機2基于累計數據寫入量或者時間經過值,判定LBAx的數據的更新頻率(向LBAx的寫入的頻率)是否為規定的上限頻率(閾值th4)以上(步驟S83)。例如,可以在從 SSD3通知累計數據寫入量時,主機2判定累計數據寫入量是否為閾值th4所示的閾值數據量以上。也可以在從SSD3通知時間經過值(向相同LBA的前次寫入的時刻)時,主機2通過從當前時刻減去前次寫入的時刻而算出時間間隔,并判定該時間間隔是否為閾值th4所示的閾值時間間隔以上。或者,主機2還可以將累計數據寫入量或者時間經過值換算成表示多少次寫入訪問中產生1次向LBAx的寫入的比例的比例[百分比],并判定該時間間隔是否為閾值th4所示的閾值時間間隔以上。

            若LBAx的數據的更新頻率(向LBAx的寫入的頻率)為閾值th4以上(步驟S83的是),主機2將LBAx的數據分類成高更新頻率數據組(Hot數據)(步驟S84),并將LBAx的數據從SSD3移動到其他存儲裝置(步驟S85)。

            在步驟S84中,若包含累計數據寫入量或者時間經過值的回應是對寫入命令的允許響應,則主機2也可以執行終止寫入命令的處理。

            圖23表示作為主機2發揮功能的信息處理裝置的硬件構成例。

            該信息處理裝置是作為服務器計算機或者個人計算機而實現。該信息處理裝置包含處理器(CPU)101、主存儲器102、BIOS-ROM(Basic Input Output System-Read Only Memory,基本輸入輸出系統-只讀存儲器)103、網絡控制器105、周邊接口控制器106、控制器107、及嵌入式控制器(EC,Embedded Controller)108等。

            處理器101是以控制該信息處理裝置的各組件的動作的方式構成的CPU。該處理器101執行從多個SSD3的任一個加載到主存儲器102的各種程序。主存儲器102包括像DRAM這樣的隨機存取存儲器。處理器101執行的程序包含所述應用軟件層41、OS42及文件系統43。

            此外,處理器101還執行存儲在作為非易失性存儲器的BIOS-ROM103的基本輸入輸出系統(BIOS)。BIOS是用于控制硬件的系統程序。

            網絡控制器105是有線LAN(Local Area Network,局域網絡)控制器、無線LAN控制器之類的通信裝置。周邊接口控制器106以執行與USB(Universal Serial Bus,通用串行總線)裝置這樣的周邊裝置的通信的方式構成。

            控制器107以執行與分別連接于多個連接器107A的裝置的通信的方式構成。本實施方式中,多個SSD3分別連接于多個連接器107A。控制器107是SAS expander、PCIe Switch、PCIe expander、閃存陣列控制器、或者RAID(Redundant Arrays of Independent Disks,獨立冗余磁盤陣列)控制器等。

            EC108作為構成為執行信息處理裝置的電力管理的系統控制器發揮功能。EC108根據用戶對電源開關的操作而接通或斷開信息處理裝置。EC108是作為單芯片微控制器這 樣的處理電路而實現。EC108也可以內置對鍵盤(KB)等輸入裝置進行控制的鍵盤控制器。

            圖22說明的處理是在文件系統43的控制下由處理器101執行。

            圖24表示包含多個SSD3和主機2的信息處理裝置的構成例。

            該信息處理裝置具備能夠收納在支架上的薄箱形的殼體201。多個SSD3可以配置在殼體201內。這種情況下,各SSD3可拆卸地插入殼體201的前表面201A所設的插槽內。

            系統板(主板)202配置在殼體201內。在系統板(主板)202上,安裝著包含CPU101、存儲器102、網絡控制器105、控制器107在內的各種電子零件。這些電子零件作為主機2發揮功能。

            如以上說明所示,根據本實施方式的“考慮塊內的數據的GC次數的GC功能”,對包含主機2寫入的數據的每個塊,管理表示該塊內的數據因無用存儲單元收集(GC)動作而被復制的次數的GC次數,且選擇與相同GC次數關聯的多個塊(第1塊)作為無用存儲單元收集(GC)動作的對象塊。然后,將這些第1塊內的有效數據復制到復制目標空閑塊,將在這些第1塊的GC次數加上1后的值設定為復制目標空閑塊的GC次數。因此,能夠防止更新頻率高的數據和更新頻率低的數據因GC動作而一起被復制到同一塊。由此,因塊的GC次數越多則更新頻率低的數據的量相對于塊的容量的比例越增加,因此能夠將更新頻率低的數據與更新頻率高的數據分離。這意味著能夠抑制混雜更新頻率不同的多種數據的塊數量的增加。由此,即便當寫入SSD3的數據具有高數據局部性時,也能夠抑制更新頻率高的數據和更新頻率低的數據混雜的塊數量的增加,從而能夠抑制SSD3的寫入放大倍數的增加。

            另外,本實施方式中,作為非易失性存儲器例示了NAND存儲器。但,本實施方式的功能也能夠適用于例如MRAM(Magnetoresistive Random Access Memory,磁阻式隨機存取存儲器)、PRAM(Phase change Random Access Memory,相位變換隨機存取存儲器)、ReRAM(Resistive Random Access Memory,電阻式隨機存取存儲器)、或FeRAM(Ferroelectric Random Access Memory,鐵電隨機存取存儲器)等其他各種非易失性存儲器。

            雖對本發明的若干實施方式進行了說明,但這些實施方式是作為例子提示的,并不意圖限定發明的范圍。這些新穎的實施方式能夠以其他各種形態實施,且在不脫離發明主旨的范圍內,能夠進行各種省略、置換、變更。這些實施方式或其變化包含于發明的 范圍及主旨,且包含于申請專利范圍所記載的發明及其均等范圍內。

            當前第1頁1 2 3 
            網友詢問留言 已有0條留言
            • 還沒有人留言評論。精彩留言會獲得點贊!
            1
            婷婷六月激情在线综合激情,亚洲国产大片,久久中文字幕综合婷婷,精品久久久久久中文字幕,亚洲一区二区三区高清不卡,99国产精品热久久久久久夜夜嗨 ,欧美日韩亚洲综合在线一区二区,99国产精品电影,伊人精品线视天天综合,精品伊人久久久大香线蕉欧美
            亚洲精品1区 国产成人一级 91精品国产欧美一区二区 亚洲精品乱码久久久久久下载 国产精品久久久久久久伊一 九色国产 国产精品九九视频 伊人久久成人爱综合网 欧美日韩亚洲区久久综合 欧美日本一道免费一区三区 夜夜爽一区二区三区精品 欧美日韩高清一区二区三区 国产成人av在线 国产精品对白交换绿帽视频 国产视频亚洲 国产在线欧美精品 国产精品综合网 国产日韩精品欧美一区色 国产日韩精品欧美一区喷 欧美日韩在线观看区一二 国产区精品 欧美视频日韩视频 中文字幕天天躁日日躁狠狠躁97 视频一二三区 欧美高清在线精品一区二区不卡 国产精品揄拍一区二区久久 99久久综合狠狠综合久久aⅴ 亚洲乱码视频在线观看 日韩在线第二页 亚洲精品无码专区在线播放 成人亚洲网站www在线观看 欧美三级一区二区 99久久精品免费看国产高清 91麻豆国产在线观看 最新日韩欧美不卡一二三区 成人在线观看不卡 日韩国产在线 在线亚洲精品 亚洲午夜久久久久中文字幕 国产精品成人久久久久久久 精品国产一区二区在线观看 欧美精品国产一区二区三区 中文在线播放 亚洲第一页在线视频 国产午夜精品福利久久 九色国产 精品国产九九 国产永久视频 久久精品人人做人人综合试看 国产一区二区三区免费观看 亚洲精品国产电影 9999热视频 国产精品资源在线 麻豆久久婷婷国产综合五月 国产精品免费一级在线观看 亚洲国产一区二区三区青草影视 中文在线播放 国产成人综合在线 国产在线观看色 国产亚洲三级 国产片一区二区三区 久久99精品久久久久久牛牛影视 亚洲欧美日韩国产 四虎永久免费网站 国产一毛片 国产精品视频在 九九热在线精品 99精品福利视频 色婷婷色99国产综合精品 97成人精品视频在线播放 精品久久久久久中文字幕 亚洲欧美一区二区三区孕妇 亚洲欧美成人网 日韩高清在线二区 国产尤物在线观看 在线不卡一区二区 91网站在线看 韩国精品福利一区二区 欧美日韩国产成人精品 99热精品久久 国产精品免费视频一区 高清视频一区 精品九九久久 欧美日韩在线观看免费 91欧美激情一区二区三区成人 99福利视频 亚洲国产精品91 久热国产在线 精品久久久久久中文字幕女 国产精品久久久久久久久99热 成人自拍视频网 国产精品视频久久久久久 久久影院国产 国产玖玖在线观看 99精品在线免费 亚洲欧美一区二区三区导航 久久久久久久综合 国产欧美日韩精品高清二区综合区 国产精品视频自拍 亚洲一级片免费 久久久久久九九 国产欧美自拍视频 视频一区二区在线观看 欧美日韩一区二区三区久久 中文在线亚洲 伊人热人久久中文字幕 日韩欧美亚洲国产一区二区三区 欧美亚洲国产成人高清在线 欧美日韩国产码高清综合人成 国产性大片免费播放网站 亚洲午夜综合网 91精品久久一区二区三区 国产无套在线播放 国产精品视频网站 国产成人亚洲精品老王 91在线网站 国产视频97 欧美黑人欧美精品刺激 国产一区二区三区免费在线视频 久久久国产精品免费看 99re6久精品国产首页 久久精品91 国产成人一级 国产成人精品曰本亚洲 日本福利在线观看 伊人成综合网 久久综合一本 国产综合久久久久久 久久精品成人免费看 久久福利 91精品国产91久久久久久麻豆 亚洲精品成人在线 亚洲伊人久久精品 欧美日本二区 国产永久视频 国产一区二 一区二区福利 国产一毛片 亚洲精品1区 毛片一区二区三区 伊人久久大香线蕉综合影 国产欧美在线观看一区 亚洲国产欧洲综合997久久 国产一区二区免费视频 国产91精品对白露脸全集观看 久久亚洲国产伦理 欧美成人伊人久久综合网 亚洲性久久久影院 久久99国产精一区二区三区! 91精品国产欧美一区二区 欧美日韩亚洲区久久综合 日韩精品一二三区 久久久夜色精品国产噜噜 国产在线精品福利91香蕉 久久久久久久亚洲精品 97se色综合一区二区二区 91国语精品自产拍在线观看性色 91久久国产综合精品女同我 日韩中文字幕a 国产成人亚洲日本精品 久久国产精品-国产精品 久久国产经典视频 久久国产精品伦理 亚洲第一页在线视频 国产精品久久久久三级 日韩毛片网 久久免费高清视频 麻豆国产在线观看一区二区 91麻豆国产福利在线观看 国产成人精品男人的天堂538 一区二区三区中文字幕 免费在线视频一区 欧美日韩国产成人精品 国产综合网站 国产资源免费观看 亚洲精品亚洲人成在线播放 精品久久久久久中文字幕专区 亚洲人成人毛片无遮挡 国产一起色一起爱 国产香蕉精品视频在 九九热免费观看 日韩亚洲欧美一区 九九热精品在线观看 精品久久久久久中文字幕专区 亚洲欧美自拍偷拍 国产精品每日更新 久久久久国产一级毛片高清板 久久天天躁狠狠躁夜夜中文字幕 久久精品片 日韩在线毛片 国产成人精品本亚洲 国产成人精品一区二区三区 九九热在线观看 国产r级在线观看 国产欧美日韩精品高清二区综合区 韩国电影一区二区 国产精品毛片va一区二区三区 五月婷婷伊人网 久久一区二区三区免费 一本色道久久综合狠狠躁篇 亚洲综合色站 国产尤物在线观看 亚洲一区亚洲二区 免费在线视频一区 欧洲精品视频在线观看 日韩中文字幕a 中文字幕日本在线mv视频精品 91精品在线免费视频 精品国产免费人成在线观看 精品a级片 中文字幕日本在线mv视频精品 日韩在线精品视频 婷婷丁香色 91精品国产高清久久久久 国产成人精品日本亚洲直接 五月综合视频 欧美日韩在线亚洲国产人 精液呈暗黄色 亚洲乱码一区 久久精品中文字幕不卡一二区 亚洲天堂精品在线 激情婷婷综合 国产免费久久精品久久久 国产精品亚洲二区在线 久久免费播放视频 五月婷婷丁香综合 在线亚洲欧美日韩 久久免费精品高清麻豆 精品久久久久久中文字幕 亚洲一区网站 国产精品福利社 日韩中文字幕免费 亚洲综合丝袜 91精品在线播放 国产精品18 亚洲日日夜夜 伊人久久大香线蕉综合影 亚洲精品中文字幕乱码影院 亚洲一区二区黄色 亚洲第一页在线视频 一区二区在线观看视频 国产成人福利精品视频 亚洲高清二区 国内成人免费视频 精品亚洲性xxx久久久 国产精品合集一区二区三区 97av免费视频 国产一起色一起爱 国产区久久 国产资源免费观看 99精品视频免费 国产成人一级 国产精品九九免费视频 欧美91精品久久久久网免费 99热国产免费 久久精品色 98精品国产综合久久 久久精品播放 中文字幕视频免费 国产欧美日韩一区二区三区在线 精品久久蜜桃 国产小视频精品 一本色道久久综合狠狠躁篇 91在线免费观看 亚洲精品区 伊人成综合网 伊人热人久久中文字幕 伊人黄色片 99国产精品热久久久久久夜夜嗨 久久免费精品视频 亚洲一区二区三区高清不卡 久久久久国产一级毛片高清板 国产片一区二区三区 久久狠狠干 99久久婷婷国产综合精品电影 国产99区 国产精品成人久久久久 久久狠狠干 青青国产在线观看 亚洲高清国产拍精品影院 国产精品一区二区av 九九热在线免费视频 伊人久久国产 国产精品久久久久久久久久一区 在线观看免费视频一区 国产精品自在在线午夜区app 国产精品综合色区在线观看 国产毛片久久久久久国产毛片 97国产免费全部免费观看 国产精品每日更新 国产尤物视频在线 九九视频这里只有精品99 一本一道久久a久久精品综合 久久综合给会久久狠狠狠 国产成人精品男人的天堂538 欧美一区二区高清 毛片一区二区三区 国产欧美日韩在线观看一区二区三区 在线国产二区 欧美不卡网 91在线精品中文字幕 在线国产福利 国内精品91久久久久 91亚洲福利 日韩欧美国产中文字幕 91久久精品国产性色也91久久 亚洲性久久久影院 欧美精品1区 国产热re99久久6国产精品 九九热免费观看 国产精品欧美日韩 久久久久国产一级毛片高清板 久久国产经典视频 日韩欧美亚洲国产一区二区三区 欧美亚洲综合另类在线观看 国产精品自在在线午夜区app 97中文字幕在线观看 视频一二三区 精品国产一区在线观看 国产欧美日韩在线一区二区不卡 欧美一区二三区 伊人成人在线观看 国内精品91久久久久 97在线亚洲 国产在线不卡一区 久久久全免费全集一级全黄片 国产精品v欧美精品∨日韩 亚洲毛片网站 在线不卡一区二区 99re热在线视频 久久激情网 国产毛片一区二区三区精品 久久亚洲综合色 中文字幕视频免费 国产视频亚洲 婷婷伊人久久 国产一区二区免费播放 久久99国产精品成人欧美 99国产在线视频 国产成人免费视频精品一区二区 国产不卡一区二区三区免费视 国产码欧美日韩高清综合一区 久久精品国产主播一区二区 国产一区电影 久久精品国产夜色 国产精品国产三级国产 日韩一区二区三区在线 久久97久久97精品免视看 久久国产免费一区二区三区 伊人久久大香线蕉综合电影网 99re6久精品国产首页 久久激情网 亚洲成人高清在线 国产精品网址 国产成人精品男人的天堂538 香蕉国产综合久久猫咪 国产专区中文字幕 91麻豆精品国产高清在线 久久国产经典视频 国产精品成人va在线观看 国产精品爱啪在线线免费观看 日本精品久久久久久久久免费 亚洲综合一区二区三区 久久五月网 精品国产网红福利在线观看 久久综合亚洲伊人色 亚洲国产精品久久久久久网站 在线日韩国产 99国产精品热久久久久久夜夜嗨 国产综合精品在线 国产区福利 精品亚洲综合久久中文字幕 国产制服丝袜在线 毛片在线播放网站 在线观看免费视频一区 国产精品久久久精品三级 亚洲国产电影在线观看 最新日韩欧美不卡一二三区 狠狠综合久久综合鬼色 日本精品1在线区 国产日韩一区二区三区在线播放 欧美日韩精品在线播放 亚洲欧美日韩国产一区二区三区精品 久久综合久久网 婷婷六月激情在线综合激情 亚洲乱码一区 国产专区91 97av视频在线观看 精品久久久久久中文字幕 久久五月视频 国产成人福利精品视频 国产精品网址 中文字幕视频在线 精品一区二区三区免费视频 伊人手机在线视频 亚洲精品中文字幕乱码 国产在线视频www色 色噜噜国产精品视频一区二区 精品亚洲成a人在线观看 国产香蕉尹人综合在线 成人免费一区二区三区在线观看 国产不卡一区二区三区免费视 欧美精品久久天天躁 国产专区中文字幕 久久精品国产免费中文 久久精品国产免费一区 久久无码精品一区二区三区 国产欧美另类久久久精品免费 欧美精品久久天天躁 亚洲精品在线视频 国产视频91在线 91精品福利一区二区三区野战 日韩中文字幕免费 国产精品99一区二区三区 欧美成人高清性色生活 国产精品系列在线观看 亚洲国产福利精品一区二区 国产成人在线小视频 国产精品久久久久免费 99re热在线视频 久久久久久久综合 一区二区国产在线播放 成人国产在线视频 亚洲精品乱码久久久久 欧美日韩一区二区综合 精品久久久久免费极品大片 中文字幕视频二区 激情粉嫩精品国产尤物 国产成人精品一区二区视频 久久精品中文字幕首页 亚洲高清在线 国产精品亚洲一区二区三区 伊人久久艹 中文在线亚洲 国产精品一区二区在线播放 国产精品九九免费视频 亚洲二区在线播放 亚洲狠狠婷婷综合久久久久网站 亚洲欧美日韩网站 日韩成人精品 亚洲国产一区二区三区青草影视 91精品国产福利在线观看 国产精品久久久久久久久99热 国产一区二区精品尤物 久碰香蕉精品视频在线观看 亚洲日日夜夜 在线不卡一区二区 国产午夜亚洲精品 九九热在线视频观看这里只有精品 伊人手机在线视频 91免费国产精品 日韩欧美中字 91精品国产91久久久久 国产全黄三级播放 视频一区二区三区免费观看 国产开裆丝袜高跟在线观看 国产成人欧美 激情综合丝袜美女一区二区 国产成人亚洲综合无 欧美精品一区二区三区免费观看 欧美亚洲国产日韩 日韩亚州 国产欧美日韩精品高清二区综合区 亚洲午夜国产片在线观看 精品久久久久久中文字幕 欧美精品1区 久久伊人久久亚洲综合 亚洲欧美日韩精品 国产成人精品久久亚洲高清不卡 久久福利影视 国产精品99精品久久免费 久久久久免费精品视频 国产日产亚洲精品 亚洲国产午夜电影在线入口 精品无码一区在线观看 午夜国产精品视频 亚洲一级片免费 伊人久久大香线蕉综合影 国产精品久久影院 久碰香蕉精品视频在线观看 www.欧美精品 在线小视频国产 亚洲国产天堂久久综合图区 欧美一区二区三区不卡 日韩美女福利视频 九九精品免视频国产成人 不卡国产00高中生在线视频 亚洲第一页在线视频 欧美日韩在线播放成人 99re视频这里只有精品 国产精品91在线 精品乱码一区二区三区在线 国产区久久 91麻豆精品国产自产在线观看一区 日韩精品成人在线 九九热在线观看 国产精品久久不卡日韩美女 欧美一区二区三区综合色视频 欧美精品免费一区欧美久久优播 国产精品网址 国产专区中文字幕 国产精品欧美亚洲韩国日本久久 日韩美香港a一级毛片 久久精品123 欧美一区二区三区免费看 99r在线视频 亚洲精品国产字幕久久vr 国产综合激情在线亚洲第一页 91免费国产精品 日韩免费小视频 亚洲国产精品综合一区在线 国产亚洲第一伦理第一区 在线亚洲精品 国产精品一区二区制服丝袜 国产在线成人精品 九九精品免视频国产成人 亚洲国产网 欧美日韩亚洲一区二区三区在线观看 在线亚洲精品 欧美一区二区三区高清视频 国产成人精品男人的天堂538 欧美日韩在线观看区一二 亚洲欧美一区二区久久 久久精品中文字幕首页 日本高清www午夜视频 久久精品国产免费 久久999精品 亚洲国产精品欧美综合 88国产精品视频一区二区三区 91久久偷偷做嫩草影院免费看 国产精品夜色视频一区二区 欧美日韩导航 国产成人啪精品午夜在线播放 一区二区视频在线免费观看 99久久精品国产自免费 精液呈暗黄色 久久99国产精品 日本精品久久久久久久久免费 精品国产97在线观看 99re视频这里只有精品 国产视频91在线 999av视频 亚洲美女视频一区二区三区 久久97久久97精品免视看 亚洲国产成人久久三区 99久久亚洲国产高清观看 日韩毛片在线视频 综合激情在线 91福利一区二区在线观看 一区二区视频在线免费观看 激情粉嫩精品国产尤物 国产成人精品曰本亚洲78 国产成人精品本亚洲 国产精品成人免费视频 国产成人啪精品视频免费软件 久久精品国产亚洲妲己影院 国产精品成人久久久久久久 久久大香线蕉综合爱 欧美一区二区三区高清视频 99热国产免费 在线观看欧美国产 91精品视频在线播放 国产精品福利社 欧美精品一区二区三区免费观看 国产一区二区免费视频 国产午夜精品一区二区 精品视频在线观看97 91精品福利久久久 国产一区福利 国产综合激情在线亚洲第一页 国产精品久久久久久久久久久不卡 九色国产 在线日韩国产 黄网在线观看 亚洲一区小说区中文字幕 中文字幕丝袜 日本二区在线观看 日本国产一区在线观看 欧美日韩一区二区三区久久 欧美精品亚洲精品日韩专 国产日产亚洲精品 久久综合九色综合欧美播 亚洲国产欧美无圣光一区 欧美视频区 亚洲乱码视频在线观看 久久无码精品一区二区三区 九九热精品免费视频 久久99精品久久久久久牛牛影视 国产精品成久久久久三级 国产一区福利 午夜国产精品视频 日本二区在线观看 99久久网站 国产亚洲天堂 精品国产一区二区三区不卡 亚洲国产日韩在线一区 国产成人综合在线观看网站 久久免费高清视频 欧美在线导航 午夜精品久久久久久99热7777 欧美久久综合网 国产小视频精品 国产尤物在线观看 亚洲国产精品综合一区在线 欧美一区二区三区不卡视频 欧美黑人欧美精品刺激 日本福利在线观看 久久国产偷 国产手机精品一区二区 国产热re99久久6国产精品 国产高清啪啪 欧美亚洲国产成人高清在线 国产在线第三页 亚洲综合一区二区三区 99r在线视频 99精品久久久久久久婷婷 国产精品乱码免费一区二区 国产在线精品福利91香蕉 国产尤物视频在线 五月婷婷亚洲 中文字幕久久综合伊人 亚洲精品一级毛片 99国产精品电影 在线视频第一页 久久99国产精品成人欧美 国产白白视频在线观看2 成人精品一区二区www 亚洲成人网在线观看 麻豆91在线视频 色综合合久久天天综合绕视看 久久精品国产免费高清 国产不卡一区二区三区免费视 欧美国产中文 99精品欧美 九九在线精品 国产中文字幕在线免费观看 国产一区中文字幕在线观看 国产成人一级 国产精品一区二区制服丝袜 国产一起色一起爱 亚洲精品成人在线 亚洲欧美精品在线 国产欧美自拍视频 99精品久久久久久久婷婷 久99视频 国产热re99久久6国产精品 视频一区亚洲 国产精品视频分类 国产精品成在线观看 99re6久精品国产首页 亚洲在成人网在线看 亚洲国产日韩在线一区 久久国产三级 日韩国产欧美 欧美在线一区二区三区 国产精品美女一级在线观看 成人午夜免费福利视频 亚洲天堂精品在线 91精品国产手机 欧美日韩视频在线播放 狠狠综合久久综合鬼色 九一色视频 青青视频国产 亚洲欧美自拍一区 中文字幕天天躁日日躁狠狠躁97 日韩免费大片 996热视频 伊人成综合网 亚洲天堂欧美 日韩精品亚洲人成在线观看 久久综合给会久久狠狠狠 日韩精品亚洲人成在线观看 日韩国产欧美 亚洲成aⅴ人片在线影院八 亚洲精品1区 99久久精品免费 国产精品高清在线观看 国产精品久久久免费视频 在线亚洲欧美日韩 91在线看视频 国产精品96久久久久久久 欧美日韩国产成人精品 91在线亚洲 热久久亚洲 国产精品美女免费视频观看 日韩在线毛片 亚洲永久免费视频 九九免费在线视频 亚洲一区网站 日本高清二区视频久二区 精品国产美女福利在线 伊人久久艹 国产精品久久久久三级 欧美成人精品第一区二区三区 99久久精品国产自免费 在线观看日韩一区 国产中文字幕一区 成人免费午夜视频 欧美日韩另类在线 久久99国产精品成人欧美 色婷婷中文网 久久天天躁夜夜躁狠狠躁2020 欧美成人伊人久久综合网 国产精品福利资源在线 国产伦精品一区二区三区高清 国产精品亚洲综合色区韩国 亚洲一区欧美日韩 色综合视频 国语自产精品视频在线区 国产高清a 成人国内精品久久久久影 国产在线精品香蕉综合网一区 国产不卡在线看 国产成人精品精品欧美 国产欧美日韩综合精品一区二区三区 韩国电影一区二区 国产在线视频www色 91中文字幕在线一区 国产人成午夜免视频网站 亚洲综合一区二区三区 色综合视频一区二区观看 久久五月网 九九热精品在线观看 国产一区二区三区国产精品 99久热re在线精品996热视频 亚洲国产网 在线视频亚洲一区 日韩字幕一中文在线综合 国产高清一级毛片在线不卡 精品国产色在线 国产高清视频一区二区 精品日本久久久久久久久久 亚洲国产午夜精品乱码 成人免费国产gav视频在线 日韩欧美一区二区在线观看 欧美曰批人成在线观看 韩国电影一区二区 99re这里只有精品6 日韩精品一区二区三区视频 99re6久精品国产首页 亚洲欧美一区二区三区导航 欧美色图一区二区三区 午夜精品视频在线观看 欧美激情在线观看一区二区三区 亚洲热在线 成人国产精品一区二区网站 亚洲一级毛片在线播放 亚洲一区小说区中文字幕 亚洲午夜久久久久影院 国产自产v一区二区三区c 国产精品视频免费 久久调教视频 国产成人91激情在线播放 国产精品欧美亚洲韩国日本久久 久久亚洲日本不卡一区二区 91中文字幕网 成人国产在线视频 国产视频91在线 欧美成人精品第一区二区三区 国产精品福利在线 久久综合九色综合精品 欧美一区二区三区精品 久久国产综合尤物免费观看 久久99青青久久99久久 日韩精品免费 久久国产精品999 91亚洲视频在线观看 国产精品igao视频 色综合区 在线亚洲欧国产精品专区 国产一区二区三区在线观看视频 亚洲精品成人在线 一区二区国产在线播放 中文在线亚洲 亚洲精品第一国产综合野 国产一区二区精品久久 一区二区三区四区精品视频 99热精品久久 中文字幕视频二区 国产成人精品男人的天堂538 99精品影视 美女福利视频一区二区 久久午夜夜伦伦鲁鲁片 综合久久久久久久综合网 国产精品国产欧美综合一区 国产99视频在线观看 国产亚洲女在线精品 婷婷影院在线综合免费视频 国产亚洲3p一区二区三区 91成人爽a毛片一区二区 亚洲一区二区高清 国产欧美亚洲精品第二区首页 欧美日韩导航 亚洲高清二区 欧美激情观看一区二区久久 日韩毛片在线播放 亚洲欧美日韩高清中文在线 亚洲日本在线播放 国产精品一区二区制服丝袜 精品国产一区二区三区不卡 国产不卡在线看 国产欧美网站 四虎永久在线观看视频精品 国产黄色片在线观看 夜夜综合 一本色道久久综合狠狠躁篇 欧美亚洲综合另类在线观看 国产91在线看 伊人久久国产 欧美一区二区在线观看免费网站 国产精品久久久久三级 久久福利 日韩中文字幕a 亚洲午夜久久久久影院 91在线高清视频 国产亚洲一区二区三区啪 久久人精品 国产精品亚洲午夜一区二区三区 综合久久久久久 久久伊人一区二区三区四区 国产综合久久久久久 日韩一区精品视频在线看 国产精品日韩欧美制服 日本精品1在线区 99re视频 无码av免费一区二区三区试看 国产视频1区 日韩欧美中文字幕一区 日本高清中文字幕一区二区三区a 亚洲国产欧美无圣光一区 国产在线视频一区二区三区 欧美国产第一页 在线亚洲欧美日韩 日韩中文字幕第一页 在线不卡一区二区 伊人久久青青 国产精品一区二区在线播放 www.五月婷婷 麻豆久久婷婷国产综合五月 亚洲精品区 久久国产欧美另类久久久 99在线视频免费 伊人久久中文字幕久久cm 久久精品成人免费看 久久这里只有精品首页 88国产精品视频一区二区三区 中文字幕日本在线mv视频精品 国产在线精品成人一区二区三区 伊人精品线视天天综合 亚洲一区二区黄色 国产尤物视频在线 亚洲精品99久久久久中文字幕 国产一区二区三区免费观看 伊人久久大香线蕉综合电影网 国产成人精品区在线观看 日本精品一区二区三区视频 日韩高清在线二区 久久免费播放视频 一区二区成人国产精品 国产精品免费精品自在线观看 亚洲精品视频二区 麻豆国产精品有码在线观看 精品日本一区二区 亚洲欧洲久久 久久中文字幕综合婷婷 中文字幕视频在线 国产成人精品综合在线观看 91精品国产91久久久久福利 精液呈暗黄色 香蕉国产综合久久猫咪 国产专区精品 亚洲精品无码不卡 国产永久视频 亚洲成a人片在线播放观看国产 一区二区国产在线播放 亚洲一区二区黄色 欧美日韩在线观看视频 亚洲精品另类 久久国产综合尤物免费观看 国产一区二区三区国产精品 高清视频一区 国产精品igao视频 国产精品资源在线 久久综合精品国产一区二区三区 www.五月婷婷 精品色综合 99热国产免费 麻豆福利影院 亚洲伊人久久大香线蕉苏妲己 久久电影院久久国产 久久精品伊人 在线日韩理论午夜中文电影 亚洲国产欧洲综合997久久 伊人国产精品 久草国产精品 欧美一区精品二区三区 亚洲成人高清在线 91免费国产精品 日韩精品福利在线 国产一线在线观看 国产不卡在线看 久久99青青久久99久久 亚洲精品亚洲人成在线播放 99久久免费看国产精品 国产日本在线观看 青草国产在线视频 麻豆久久婷婷国产综合五月 国产中文字幕一区 91久久精品国产性色也91久久 国产一区a 国产欧美日韩成人 国产亚洲女在线精品 一区二区美女 中文字幕在线2021一区 在线小视频国产 久久这里只有精品首页 国产在线第三页 欧美日韩中文字幕 在线亚洲+欧美+日本专区 精品国产一区二区三区不卡 久久这里精品 欧美在线va在线播放 精液呈暗黄色 91精品国产手机 91在线免费播放 欧美视频亚洲色图 欧美国产日韩精品 日韩高清不卡在线 精品视频免费观看 欧美日韩一区二区三区四区 国产欧美亚洲精品第二区首页 亚洲韩精品欧美一区二区三区 国产精品视频免费 在线精品小视频 久久午夜夜伦伦鲁鲁片 国产无套在线播放 久热这里只精品99re8久 欧美久久久久 久久香蕉国产线看观看精品蕉 国产成人精品男人的天堂538 亚洲人成网站色7799在线观看 日韩在线第二页 一本色道久久综合狠狠躁篇 国产一区二区三区不卡在线观看 亚洲乱码在线 在线观看欧美国产 久久福利青草精品资源站免费 国产玖玖在线观看 在线亚洲精品 亚洲成aⅴ人在线观看 精品91在线 欧美一区二三区 日韩中文字幕视频在线 日本成人一区二区 日韩免费专区 国内精品在线观看视频 久久国产综合尤物免费观看 国产精品系列在线观看 一本一道久久a久久精品综合 亚洲免费播放 久久精品国产免费 久久人精品 亚洲毛片网站 亚洲成a人一区二区三区 韩国福利一区二区三区高清视频 亚洲精品天堂在线 一区二区三区中文字幕 亚洲国产色婷婷精品综合在线观看 亚洲国产成人久久笫一页 999国产视频 国产精品香港三级在线电影 欧美日韩一区二区三区四区 日韩国产欧美 国产精品99一区二区三区 午夜国产精品理论片久久影院 亚洲精品中文字幕麻豆 亚洲国产高清视频 久久免费手机视频 日韩a在线观看 五月婷婷亚洲 亚洲精品中文字幕麻豆 中文字幕丝袜 www国产精品 亚洲天堂精品在线 亚洲乱码一区 国产日韩欧美三级 久久999精品 伊人热人久久中文字幕 久热国产在线视频 国产欧美日韩在线观看一区二区三区 国产一二三区在线 日韩国产欧美 91精品国产91久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品