技術(shù)領(lǐng)域
本發(fā)明構(gòu)思總體上涉及一種數(shù)據(jù)存儲(chǔ)裝置,更具體地,涉及一種包括根據(jù)從主機(jī)接收的數(shù)據(jù)的特性將數(shù)據(jù)傳輸?shù)酵鈹U(kuò)存儲(chǔ)裝置(scale-out storage device)中的一個(gè)以及從外擴(kuò)存儲(chǔ)裝置中的一個(gè)接收數(shù)據(jù)的控制器的數(shù)據(jù)存儲(chǔ)裝置,以及一種包括該數(shù)據(jù)存儲(chǔ)裝置的數(shù)據(jù)處理系統(tǒng)。
背景技術(shù):
存儲(chǔ)裝置用于存儲(chǔ)數(shù)據(jù)。存儲(chǔ)裝置可分成易失性存儲(chǔ)裝置和非易失性存儲(chǔ)裝置。閃存裝置是使用單個(gè)操作對(duì)存儲(chǔ)單元進(jìn)行編程或擦除的EEPROM的示例。例如,程序或讀取操作可通過(guò)頁(yè)的單元來(lái)執(zhí)行,擦除操作可通過(guò)塊的單元來(lái)執(zhí)行。塊可包括多個(gè)頁(yè)。
閃存裝置可包括多個(gè)閃存芯片。閃存裝置的性能的壽命可根據(jù)所述多個(gè)閃存芯片中的一個(gè)來(lái)確定。例如,如果所述多個(gè)閃存芯片中的一個(gè)是不能再用的,或者閃存芯片的性能降低,則閃存裝置的整體壽命或性能會(huì)劣化。
技術(shù)實(shí)現(xiàn)要素:
發(fā)明構(gòu)思的實(shí)施例提供了數(shù)據(jù)存儲(chǔ)裝置。數(shù)據(jù)存儲(chǔ)裝置包括多個(gè)外擴(kuò)存儲(chǔ)裝置以及被構(gòu)造成確定數(shù)據(jù)的特性的控制器??刂破鞅粯?gòu)造成基于確定的特性將數(shù)據(jù)傳輸?shù)剿龆鄠€(gè)外擴(kuò)存儲(chǔ)裝置中的第一外擴(kuò)存儲(chǔ)裝置以及從所述多個(gè)外擴(kuò)存儲(chǔ)裝置中的第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。所述多個(gè)外擴(kuò)存儲(chǔ)裝置中的每個(gè)包括易失性存儲(chǔ)器、非易失性存儲(chǔ)器以及被構(gòu)造成控制易失性存儲(chǔ)器和非易失性存儲(chǔ)器的外擴(kuò)控制器。
控制器確定每個(gè)外擴(kuò)存儲(chǔ)裝置的類型,控制器基于由控制器確定的每個(gè)外擴(kuò)存儲(chǔ)裝置的類型和確定的特性而將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。控制器包括接收用于確定每個(gè)外擴(kuò)存儲(chǔ)裝置的類型的用戶輸入的用戶接口。控制器包括基于用戶輸入來(lái)確定每個(gè)外擴(kuò)存儲(chǔ)裝置的類型的類型格式化器,控制器基于確定的特性和由類型格式化器確定的每個(gè)外擴(kuò)存儲(chǔ)裝置的類型將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。數(shù)據(jù)存儲(chǔ)裝置還包括被構(gòu)造成存儲(chǔ)類型格式化器和分類器的存儲(chǔ)器以及被構(gòu)造成執(zhí)行類型格式化器和分類器的CPU。類型格式化器基于用戶輸入來(lái)確定每個(gè)外擴(kuò)存儲(chǔ)裝置的類型,分類器確定數(shù)據(jù)的特性。分類器基于由類型格式化器確定的每個(gè)外擴(kuò)存儲(chǔ)裝置的類型和確定的特性將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。
數(shù)據(jù)的特性通過(guò)數(shù)據(jù)的邏輯地址來(lái)確定??刂破骰诖_定的特性和控制器的操作頻率來(lái)將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。數(shù)據(jù)存儲(chǔ)裝置包括連接到控制器的外部易失性存儲(chǔ)器??刂破骰诖_定的特性和外部易失性存儲(chǔ)器的帶寬來(lái)將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。控制器基于確定的特性和與包括在非易失性存儲(chǔ)器中的存儲(chǔ)單元有關(guān)的編程方法將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)??刂破骰诖_定的特性和管理非易失性存儲(chǔ)器中的存儲(chǔ)數(shù)據(jù)的閃存轉(zhuǎn)換層(FTL)的映射尺寸將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)??刂破骰诖_定的特性和非易失性存儲(chǔ)器的用戶數(shù)據(jù)區(qū)和預(yù)留空間區(qū)的比例將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。控制器基于確定的特性和非易失性存儲(chǔ)器的容量來(lái)將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。
控制器確定易失性存儲(chǔ)器的特性和非易失性存儲(chǔ)器的特性,控制器確定控制器的操作頻率??刂破骰诖_定出的數(shù)據(jù)的特性、確定出的易失性存儲(chǔ)器的特性、確定出的非易失性存儲(chǔ)器的特性和確定出的操作頻率中的至少一個(gè)來(lái)將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。易失性存儲(chǔ)器的特性通過(guò)帶寬來(lái)確定。非易失性存儲(chǔ)器的特性包括與包括在非易失性存儲(chǔ)器中的存儲(chǔ)單元有關(guān)的編程方法、管理在非易失性存儲(chǔ)器中的存儲(chǔ)數(shù)據(jù)的FTL的映射尺寸、非易失性存儲(chǔ)器的用戶數(shù)據(jù)區(qū)和預(yù)留空間區(qū)的比例和非易失性存儲(chǔ)器的容量中的至少一個(gè)。數(shù)據(jù)可以是熱數(shù)據(jù)或冷數(shù)據(jù)。數(shù)據(jù)是程序數(shù)據(jù)或讀取數(shù)據(jù)。數(shù)據(jù)可以是隨機(jī)數(shù)據(jù)或順序數(shù)據(jù)。數(shù)據(jù)可以是用戶數(shù)據(jù)或元數(shù)據(jù)。易失性存儲(chǔ)器和外擴(kuò)控制器封裝在多芯片封裝件中。易失性存儲(chǔ)器可以是DRAM、非易失性存儲(chǔ)器可以是閃存。數(shù)據(jù)存儲(chǔ)裝置可以是固態(tài)驅(qū)動(dòng)器。
發(fā)明構(gòu)思的實(shí)施例提供了包括主機(jī)和經(jīng)由接口連接到主機(jī)的數(shù)據(jù)存儲(chǔ)裝置的數(shù)據(jù)處理系統(tǒng)。數(shù)據(jù)存儲(chǔ)裝置包括多個(gè)外擴(kuò)存儲(chǔ)裝置和構(gòu)造成確定經(jīng)由接口傳輸?shù)街鳈C(jī)和從主機(jī)接收的數(shù)據(jù)的特性的控制器??刂破鞅粯?gòu)造成基于確定的特性將數(shù)據(jù)傳輸?shù)蕉鄠€(gè)外擴(kuò)存儲(chǔ)裝置中的第一外擴(kuò)存儲(chǔ)裝置以及從多個(gè)外擴(kuò)存儲(chǔ)裝置中的第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。多個(gè)外擴(kuò)存儲(chǔ)裝置中的每個(gè)包括易失性存儲(chǔ)器、非易失性存儲(chǔ)器以及被構(gòu)造成控制易失性存儲(chǔ)器和非易失性存儲(chǔ)器的外擴(kuò)控制器。
數(shù)據(jù)存儲(chǔ)裝置包括被構(gòu)造成接收用戶輸入以確定多個(gè)外擴(kuò)裝置中每個(gè)的類型的用戶接口和被構(gòu)造成確定多個(gè)外擴(kuò)裝置中每個(gè)的類型的控制器??刂破骰诖_定的類型和確定的特性來(lái)將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。數(shù)據(jù)存儲(chǔ)裝置還包括連接到控制器的DRAM??刂破骰诖_定的特性、控制器的操作頻率、DRAM的帶寬、與包括在多個(gè)外擴(kuò)存儲(chǔ)裝置中每個(gè)的非易失性存儲(chǔ)器中的存儲(chǔ)單元有關(guān)的編程方法、管理在非易失性存儲(chǔ)器中的存儲(chǔ)數(shù)據(jù)的FTL的映射尺寸、非易失性存儲(chǔ)器的用戶數(shù)據(jù)區(qū)和預(yù)留空間區(qū)的比例和非易失性存儲(chǔ)器的容量中的至少一個(gè)來(lái)將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。
控制器確定易失性存儲(chǔ)器的特性和包括在多個(gè)外擴(kuò)存儲(chǔ)裝置中的每個(gè)中的非易失性存儲(chǔ)器的特性??刂破鞔_定控制器的操作頻率??刂破骰诖_定出的數(shù)據(jù)的特性、確定出的易失性存儲(chǔ)器的特性、確定出的非易失性存儲(chǔ)器的特性和確定出的操作頻率中的至少一個(gè)來(lái)將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。易失性存儲(chǔ)器的特性通過(guò)帶寬來(lái)確定。非易失性存儲(chǔ)器的特性包括與包括在非易失性存儲(chǔ)器中的存儲(chǔ)單元有關(guān)的編程方法、管理非易失性存儲(chǔ)器中的存儲(chǔ)數(shù)據(jù)的FTL的映射尺寸、非易失性存儲(chǔ)器的用戶數(shù)據(jù)區(qū)和預(yù)留空間區(qū)的比例和非易失性存儲(chǔ)器的容量中的至少一個(gè)。數(shù)據(jù)的特性通過(guò)數(shù)據(jù)的邏輯地址來(lái)確定。數(shù)據(jù)可以是熱數(shù)據(jù)、冷數(shù)據(jù)、程序數(shù)據(jù)、讀取數(shù)據(jù)、隨機(jī)數(shù)據(jù)、順序數(shù)據(jù)、用戶數(shù)據(jù)和元數(shù)據(jù)中的一種。
發(fā)明構(gòu)思的實(shí)施例提供了一種操作包括經(jīng)由接口將數(shù)據(jù)傳輸?shù)街鳈C(jī)以及從主機(jī)接收數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)裝置的數(shù)據(jù)處理系統(tǒng)的方法。所述方法包括確定數(shù)據(jù)的特性以及基于確定的特性將數(shù)據(jù)傳輸?shù)蕉鄠€(gè)外擴(kuò)存儲(chǔ)裝置中的第一外擴(kuò)存儲(chǔ)裝置以及從多個(gè)外擴(kuò)存儲(chǔ)裝置中的第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。數(shù)據(jù)存儲(chǔ)裝置包括多個(gè)外擴(kuò)存儲(chǔ)裝置,多個(gè)外擴(kuò)存儲(chǔ)裝置中的每個(gè)包括易失性存儲(chǔ)器、非易失性存儲(chǔ)器以及控制易失性存儲(chǔ)器和非易失性存儲(chǔ)器的外擴(kuò)控制器。
所述方法還包括接收用戶輸入以確定多個(gè)外擴(kuò)存儲(chǔ)裝置中每個(gè)的類型、基于用戶輸入來(lái)確定多個(gè)外擴(kuò)存儲(chǔ)裝置中每個(gè)的類型、基于確定的特性和確定的類型來(lái)選擇多個(gè)外擴(kuò)存儲(chǔ)裝置中的第一外擴(kuò)存儲(chǔ)裝置以及將數(shù)據(jù)傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置以及從第一外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。數(shù)據(jù)存儲(chǔ)裝置包括在數(shù)據(jù)庫(kù)中,主機(jī)可以是控制數(shù)據(jù)庫(kù)的數(shù)據(jù)庫(kù)服務(wù)器。易失性存儲(chǔ)器可以是DRAM,非易失性存儲(chǔ)器可以是閃存。數(shù)據(jù)存儲(chǔ)裝置可以固態(tài)驅(qū)動(dòng)器。
附圖說(shuō)明
基于考慮在附圖中示出的特定實(shí)施例,發(fā)明構(gòu)思的上述和其他特征和優(yōu)點(diǎn)將變得更明顯。
圖1是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。
圖2A是進(jìn)一步示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖1的數(shù)據(jù)存儲(chǔ)裝置的框圖。
圖2B是進(jìn)一步示出根據(jù)發(fā)明構(gòu)思的另一實(shí)施例的圖1的數(shù)據(jù)存儲(chǔ)裝置的框圖。
圖3是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖2A和圖2B的第一集群的框圖。
圖4是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖3的第一外擴(kuò)裝置的框圖。
圖5是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖4的第一外擴(kuò)裝置的半導(dǎo)體封裝件的圖。
圖6是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的包括圖1的存儲(chǔ)控制器和第一外擴(kuò)存儲(chǔ)裝置的半導(dǎo)體封裝件的圖。
圖7是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖4的第一外擴(kuò)控制器的框圖。
圖8是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。
圖9是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的使用類型格式化器將邏輯地址分配到外擴(kuò)存儲(chǔ)裝置的方法的概念圖。
圖10是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的使用數(shù)據(jù)分類器將邏輯地址傳輸?shù)酵鈹U(kuò)存儲(chǔ)裝置的方法的概念圖。
圖11是列出根據(jù)發(fā)明構(gòu)思的實(shí)施例的分配到外擴(kuò)存儲(chǔ)裝置的示例性邏輯地址的表。
圖12是列出根據(jù)發(fā)明構(gòu)思的實(shí)施例的從邏輯地址到分配到外擴(kuò)存儲(chǔ)裝置的物理地址的示例性轉(zhuǎn)換的表。
圖13是大體上總結(jié)了根據(jù)發(fā)明構(gòu)思的實(shí)施例的根據(jù)數(shù)據(jù)特性來(lái)產(chǎn)生關(guān)于外擴(kuò)存儲(chǔ)裝置的表的方法的流程圖。
圖14是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)分類器分析數(shù)據(jù)特性并根據(jù)分析結(jié)果將數(shù)據(jù)傳輸?shù)较鄳?yīng)的外擴(kuò)存儲(chǔ)裝置的過(guò)程的概念圖。
圖15是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的將外擴(kuò)存儲(chǔ)裝置分類成數(shù)據(jù)特性的相應(yīng)類型的方法的表。
圖16是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的隨機(jī)存取和順序存取的概念圖。
圖17是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。
圖18是示出根據(jù)發(fā)明構(gòu)思的另一實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。
圖19是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。
具體實(shí)施方式
現(xiàn)在將參照附圖來(lái)描述發(fā)明構(gòu)思的特定實(shí)施例。然而,發(fā)明構(gòu)思可以被不同地實(shí)施并且不應(yīng)被解釋為僅限于舉例說(shuō)明的實(shí)施例。在整個(gè)書面描述和附圖中,同樣的附圖標(biāo)記指示同樣或相似的元件。
應(yīng)該理解的是,雖然這里可使用術(shù)語(yǔ)第一、第二等來(lái)描述不同的元件,但是這些元件不應(yīng)受這些術(shù)語(yǔ)限制。這些術(shù)語(yǔ)僅用于將一個(gè)元件與另一元件區(qū)分開。例如,在不脫離發(fā)明構(gòu)思的示例實(shí)施例的范圍的情況下,第一元件可被稱為第二元件,相似地,第二元件可被稱為第一元件。如這里所使用的,術(shù)語(yǔ)“和/或”包括一個(gè)或更多個(gè)相關(guān)所列項(xiàng)的任何組合和所有組合。
應(yīng)該理解的是,當(dāng)元件被稱為“連接”或“結(jié)合”到另一元件時(shí),它可直接連接或結(jié)合到所述另一元件或者可存在中間元件。相反,當(dāng)元件被稱為“直接連接”或“直接結(jié)合”到另一元件時(shí),不存在中間元件。用于描述元件之間的關(guān)系的其他詞語(yǔ)應(yīng)該以同樣的方式來(lái)解釋,例如,“在……之間”與“直接在……之間”、“相鄰”與“直接相鄰”等。
這里使用的術(shù)語(yǔ)僅出于描述具體實(shí)施例的目的,而不意圖限制發(fā)明構(gòu)思的示例實(shí)施例。除非上下文另外清楚地表示,否則如這里所使用的單數(shù)形式“一個(gè)”、“一種”和“該(所述)”也意圖包括復(fù)數(shù)形式。還應(yīng)該理解的是,當(dāng)這里使用術(shù)語(yǔ)“包含”和/或“包括”時(shí),說(shuō)明存在所述特征、整體、步驟、操作、元件和/或組件,但不排除存在或添加一個(gè)或更多個(gè)其他特征、整體、步驟、操作、元件、組件和/或它們的組。
還應(yīng)該注意的是,關(guān)于特定示出的實(shí)施例,可以按照與關(guān)于舉例說(shuō)明的實(shí)施例描述的特定順序不同的順序來(lái)執(zhí)行某些功能、動(dòng)作和/或步驟。此外,示出為連續(xù)發(fā)生的兩個(gè)或更多個(gè)功能、動(dòng)作和/或步驟根據(jù)涉及的功能性、動(dòng)作和/或步驟實(shí)際上可以基本上同時(shí)執(zhí)行或者有時(shí)可以以相反的順序執(zhí)行。
除非另有定義,否則這里使用的所有術(shù)語(yǔ)(包括技術(shù)術(shù)語(yǔ)和科學(xué)術(shù)語(yǔ))具有與發(fā)明構(gòu)思的示例實(shí)施例所屬領(lǐng)域的普通技術(shù)人員所通常理解的意思相同的意思。還應(yīng)該理解的是,除非這里明確這樣定義,否則術(shù)語(yǔ)(諸如在通用詞典中定義的術(shù)語(yǔ))應(yīng)被解釋為具有與相關(guān)領(lǐng)域的背景中的它們的意思一致的意思,并且將不以理想或過(guò)于形式化的意義來(lái)解釋。
這里關(guān)于增大數(shù)據(jù)存儲(chǔ)裝置或包括數(shù)據(jù)存儲(chǔ)裝置的數(shù)據(jù)服務(wù)器的數(shù)據(jù)處理性能的方式描述了擴(kuò)充(scale-up)和外擴(kuò)(scale-out)。擴(kuò)充增大了數(shù)據(jù)服務(wù)器的容量。因此,提高了數(shù)據(jù)服務(wù)器的數(shù)據(jù)處理容量。它被稱為“垂直擴(kuò)展(vertical scaling)”。外擴(kuò)增大了連接數(shù)據(jù)服務(wù)器的數(shù)量。因此,提高了包括數(shù)據(jù)服務(wù)器的系統(tǒng)的數(shù)據(jù)處理容量。它被稱為“水平擴(kuò)展(horizontal scaling)”。
在包括擴(kuò)充結(jié)構(gòu)的數(shù)據(jù)存儲(chǔ)裝置中,如果非易失性存儲(chǔ)裝置的數(shù)量增加,則它會(huì)增大實(shí)施在非易失性存儲(chǔ)裝置與非易失性存儲(chǔ)裝置的控制器之間的接口的負(fù)載電容。因此,數(shù)據(jù)存儲(chǔ)裝置的數(shù)據(jù)處理容量會(huì)減小。數(shù)據(jù)存儲(chǔ)裝置可包括外擴(kuò)結(jié)構(gòu)。
如這里所使用的,外擴(kuò)存儲(chǔ)裝置可包括易失性存儲(chǔ)器、至少一個(gè)非易失性存儲(chǔ)器和用于控制易失性存儲(chǔ)器和至少一個(gè)非易失性存儲(chǔ)器的外擴(kuò)控制器。如果易失性存儲(chǔ)器、至少一個(gè)非易失性存儲(chǔ)器和外擴(kuò)控制器由半導(dǎo)體芯片或半導(dǎo)體封裝件來(lái)單獨(dú)實(shí)施,則外擴(kuò)存儲(chǔ)裝置可被稱為多芯片組。外擴(kuò)控制器可意指核。
圖1是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。參照?qǐng)D1,數(shù)據(jù)處理系統(tǒng)100包括主機(jī)200、連接到主機(jī)200的顯示器240、接口110和用于經(jīng)由接口110將數(shù)據(jù)和/或指令傳輸?shù)街鳈C(jī)以及從主機(jī)接收數(shù)據(jù)和/或指令的數(shù)據(jù)存儲(chǔ)裝置300。
當(dāng)包括在數(shù)據(jù)存儲(chǔ)裝置300中的存儲(chǔ)集群400的結(jié)構(gòu)為在圖2A或圖2B中示出的結(jié)構(gòu)時(shí),數(shù)據(jù)存儲(chǔ)裝置300可實(shí)施為外擴(kuò)結(jié)構(gòu)。例如,數(shù)據(jù)處理系統(tǒng)100可意指存儲(chǔ)系統(tǒng)。
例如,數(shù)據(jù)處理系統(tǒng)可以是個(gè)人計(jì)算機(jī)(PC)、工作站、數(shù)據(jù)中心、互聯(lián)網(wǎng)數(shù)據(jù)中心(IDC)、存儲(chǔ)區(qū)域網(wǎng)(SAN)、網(wǎng)絡(luò)附加存儲(chǔ)(NAS)或移動(dòng)計(jì)算裝置。然而,它不限于此。
包括存儲(chǔ)集群400的移動(dòng)計(jì)算裝置可以是膝上型計(jì)算機(jī)、蜂窩電話、智能電話、平板PC、個(gè)人數(shù)字助理(PDA)、企業(yè)數(shù)字助理(EDA)、數(shù)字靜態(tài)相機(jī)、數(shù)字視頻相機(jī)、便攜式導(dǎo)航裝置、掌上型游戲控制器、移動(dòng)互聯(lián)網(wǎng)裝置(MID)、可穿戴計(jì)算機(jī)、物聯(lián)網(wǎng)(IoT)裝置、萬(wàn)物互聯(lián)(IoE)裝置、無(wú)人機(jī)和電子書等。然而,它不限于此。
接口可以是例如串行高級(jí)技術(shù)附件(SATA)接口、SATA快速(SATAe)接口、串行連接小型計(jì)算機(jī)系統(tǒng)接口(SCSI)、外圍組件互連快速(PCIe)接口、非易失性存儲(chǔ)快速(NVMe)接口、高級(jí)主機(jī)控制器接口(AHCI)和/或多媒體卡(MMC)接口等。然而,它不限于此。根據(jù)發(fā)明構(gòu)思的實(shí)施例,接口110可傳輸電信號(hào)或光信號(hào)。接口110可以是例如有線接口或無(wú)線接口。
主機(jī)200可經(jīng)由接口110來(lái)控制數(shù)據(jù)處理操作(例如,寫入操作或讀取操作)。主機(jī)200可意指主機(jī)控制器。
主機(jī)200可向用戶提供用戶接口。用戶可經(jīng)由在顯示器240上顯示的用戶接口來(lái)設(shè)定每個(gè)外擴(kuò)存儲(chǔ)裝置的邏輯地址的范圍。用戶可經(jīng)由在顯示器240上顯示的用戶接口來(lái)設(shè)定每個(gè)外擴(kuò)存儲(chǔ)裝置的數(shù)據(jù)的特性。例如,用戶接口可以是圖形用戶接口(GUI)。
CPU 220可經(jīng)由總線210將指令和/或數(shù)據(jù)傳輸?shù)降谝唤涌?30以及從第一接口230接收指令和/或數(shù)據(jù)。在圖1中,所示的主機(jī)200包括總線210、CPU 220和第一接口230。然而,發(fā)明構(gòu)思不限于此。
主機(jī)200可以是例如集成電路(IC)、主板、片上系統(tǒng)(SoC)、應(yīng)用處理器(AP)、移動(dòng)AP、網(wǎng)絡(luò)服務(wù)器、數(shù)據(jù)服務(wù)器和數(shù)據(jù)庫(kù)服務(wù)器。
例如,總線210可以是高級(jí)微控制器總線架構(gòu)(AMBA)、高級(jí)高性能總線(AHB)、高級(jí)外圍總線(APB)、高級(jí)可擴(kuò)展接口(AXI)、高級(jí)系統(tǒng)總線(ASB)、AXI一致性擴(kuò)展(ACE)。然而,總線210不限于此。
CPU 200可產(chǎn)生寫入請(qǐng)求以控制數(shù)據(jù)存儲(chǔ)裝置300的寫入操作。CPU 200可產(chǎn)生讀取請(qǐng)求以控制讀取操作。寫入請(qǐng)求可包括寫入地址(例如,邏輯地址)。讀取請(qǐng)求可包括讀取地址(例如,邏輯地址)。例如,CPU 220可包括至少一個(gè)核。寫入請(qǐng)求和讀取請(qǐng)求可意指指令。
第一接口230可改變用于傳輸?shù)綌?shù)據(jù)存儲(chǔ)裝置300的數(shù)據(jù)格式和/或指令格式。第一接口可經(jīng)由接口110將具有改變的格式的數(shù)據(jù)和/或指令傳輸?shù)綌?shù)據(jù)存儲(chǔ)裝置300。第一接口可改變從數(shù)據(jù)存儲(chǔ)裝置300接收的響應(yīng)和/或數(shù)據(jù)的格式。第一接口230可經(jīng)由總線210將具有改變的格式的響應(yīng)和/或數(shù)據(jù)傳輸?shù)紺PU 220。例如,第一接口230可包括能夠傳輸和接收數(shù)據(jù)和/或指令的收發(fā)兩用機(jī)。第一接口230的結(jié)構(gòu)和操作可實(shí)施為與接口110的結(jié)構(gòu)和操作匹配。
第一接口230可控制顯示器240的操作。第一接口230可將經(jīng)由包括在顯示器240中的觸摸板或觸摸屏接收的用戶數(shù)據(jù)傳輸?shù)紺PU 220。
數(shù)據(jù)存儲(chǔ)裝置300包括控制器310、緩沖器360、電源管理IC 370和存儲(chǔ)集群400。這里,存儲(chǔ)集群400可以是一組存儲(chǔ)裝置。另外,存儲(chǔ)集群400可包括在圖2A至圖7中示出的外擴(kuò)裝置和存儲(chǔ)裝置。
數(shù)據(jù)存儲(chǔ)裝置300可實(shí)施為閃存類存儲(chǔ)裝置。例如,數(shù)據(jù)存儲(chǔ)裝置300可以是固態(tài)驅(qū)動(dòng)器或固態(tài)磁盤(SSD)、嵌入式SSD、通用閃存(UFS)、多媒體卡(MMC)、嵌入式MMC和管理型NAND。然而,這不限于此。例如,閃存類存儲(chǔ)裝置可實(shí)施為NAND型閃存裝置或NOR型閃存裝置。
閃存類存儲(chǔ)裝置可包括存儲(chǔ)單元陣列。存儲(chǔ)單元陣列可包括多個(gè)存儲(chǔ)單元。例如,存儲(chǔ)單元陣列可包括2維存儲(chǔ)單元陣列或3維存儲(chǔ)單元陣列。
3維存儲(chǔ)單元陣列可以以設(shè)置在硅基板上或上方的具有有源區(qū)的存儲(chǔ)單元陣列的至少一個(gè)物理級(jí)單片地(或單塊地)形成。3維存儲(chǔ)單元陣列可包括關(guān)于存儲(chǔ)單元的操作的電路。電路可形成在基板上或上方。術(shù)語(yǔ)“單片(monolithic)”可以指,陣列的每級(jí)的層直接沉積在陣列的每個(gè)下面級(jí)的層上。3維存儲(chǔ)單元陣列可包括至少一個(gè)存儲(chǔ)單元垂直地定向在另一存儲(chǔ)單元上的垂直NAND串。至少一個(gè)存儲(chǔ)單元可包括電荷捕獲層。
例如,數(shù)據(jù)存儲(chǔ)裝置300可以是硬盤驅(qū)動(dòng)器(HDD)、相變RAM(PRAM)裝置、磁阻RAM(MRAM)裝置、自旋轉(zhuǎn)換扭矩MRAM(STT-MRAM)裝置、鐵電RAM(FRAM)裝置或電阻式RAM(RRAM)裝置。
控制器310可控制主機(jī)200、緩沖器360和存儲(chǔ)集群400之間的數(shù)據(jù)和/或指令傳輸??刂破?10可控制數(shù)據(jù)處理。例如,控制器310可實(shí)施為IC或SoC。
控制器310可包括總線結(jié)構(gòu)311、內(nèi)部存儲(chǔ)器315、數(shù)據(jù)分類電路317、第二接口320、至少一個(gè)CPU 330和/或331、緩沖控制器340和第三接口350??偩€結(jié)構(gòu)311可實(shí)施為AMBA、AHB、APB、AXI、ASB、ACE或它們的任何組合。
內(nèi)部存儲(chǔ)器315可存儲(chǔ)控制器310的操作所需的數(shù)據(jù)。內(nèi)部存儲(chǔ)器315可存儲(chǔ)通過(guò)由控制器310執(zhí)行的數(shù)據(jù)處理操作(例如,寫入操作或讀取操作)產(chǎn)生的數(shù)據(jù)。
例如,內(nèi)部存儲(chǔ)器315可存儲(chǔ)由CPU 330和/或331操作的第一閃存轉(zhuǎn)換層(FTL)FTL1。例如,如果數(shù)據(jù)存儲(chǔ)裝置300被啟動(dòng)(啟動(dòng)),則第一FTL FTL1可從存儲(chǔ)集群400加載到內(nèi)部存儲(chǔ)器315。加載的第一FTL可通過(guò)CPU 330和/或331來(lái)執(zhí)行。
例如,內(nèi)部存儲(chǔ)器315可以是隨機(jī)存取存儲(chǔ)器(RAM)、動(dòng)態(tài)RAM(DRAM)、靜態(tài)RAM(SRAM)、緩沖器、緩沖存儲(chǔ)器、高速緩存存儲(chǔ)器和緊密耦合存儲(chǔ)器(TCM)。
數(shù)據(jù)分類電路317可確定從主機(jī)200接收的數(shù)據(jù)的特性。數(shù)據(jù)分類電路317可根據(jù)確定的結(jié)果來(lái)對(duì)應(yīng)于外擴(kuò)存儲(chǔ)裝置將數(shù)據(jù)分類。數(shù)據(jù)分類電路317可將分類的數(shù)據(jù)傳輸?shù)较鄳?yīng)的外擴(kuò)存儲(chǔ)裝置。每個(gè)外擴(kuò)存儲(chǔ)裝置可被分類成用于處理分配的數(shù)據(jù)的不同類型。因此,控制器310可使用數(shù)據(jù)分類電路317將數(shù)據(jù)傳輸?shù)酵鈹U(kuò)存儲(chǔ)裝置以及從外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。在圖1中,數(shù)據(jù)分類電路317實(shí)施為單獨(dú)的電路。然而,數(shù)據(jù)分類電路可實(shí)施在控制器310內(nèi)部的任何區(qū)域中。
數(shù)據(jù)分類電路317可將邏輯地址傳輸?shù)较鄳?yīng)的外擴(kuò)存儲(chǔ)裝置。邏輯地址可通過(guò)用戶分配到相應(yīng)的外擴(kuò)存儲(chǔ)裝置。因此,控制器310可使用數(shù)據(jù)分類電路317來(lái)將數(shù)據(jù)傳輸?shù)较鄳?yīng)的外擴(kuò)存儲(chǔ)裝置以及從相應(yīng)的外擴(kuò)存儲(chǔ)裝置接收數(shù)據(jù)。
數(shù)據(jù)分類電路317包括類型格式化器317-1和數(shù)據(jù)分類器317-2。類型格式化器317-1可根據(jù)由用戶或制造商存儲(chǔ)的默認(rèn)類型(例如,數(shù)據(jù)特性和/或邏輯地址)來(lái)處理用于每個(gè)外擴(kuò)存儲(chǔ)裝置的格式。數(shù)據(jù)分類器317-2可根據(jù)數(shù)據(jù)特性和/或邏輯地址將數(shù)據(jù)傳輸?shù)较鄳?yīng)的外擴(kuò)存儲(chǔ)裝置。將參照?qǐng)D9至圖16來(lái)更充分地描述類型格式化器317-1和數(shù)據(jù)分類器317-2的操作。
第二接口320可改變用于傳輸?shù)街鳈C(jī)200的響應(yīng)格式和/或數(shù)據(jù)格式。第二接口320可經(jīng)由接口110將具有改變的格式的響應(yīng)和/或數(shù)據(jù)傳輸?shù)街鳈C(jī)200。另外,第二接口320可從主機(jī)200接收指令和/或數(shù)據(jù)。第二接口320可改變接收的指令和/或數(shù)據(jù)的格式。第二接口320可將具有改變的格式的指令和/或數(shù)據(jù)傳輸?shù)街辽僖粋€(gè)CPU 330和/或331和/或緩沖控制器340。例如,第二接口320可包括收發(fā)兩用機(jī)。
第二接口320可以是例如SATA接口、SATAe接口、SAS接口、PCIe接口、NVMe接口、AHCI接口、MMC接口、NAND型閃存接口或NOR型閃存接口。然而,發(fā)明構(gòu)思不限于此。
CPU(330和/或331)可經(jīng)由總線結(jié)構(gòu)311來(lái)控制內(nèi)部存儲(chǔ)器315、數(shù)據(jù)分類電路317、第二接口320、緩沖控制器340和第三接口350。CPU 330和/或331可包括至少一個(gè)核。例如,CPU 330和/或331可控制電源管理集成電路(PMIC)370。
例如,第一CPU 330可經(jīng)由第二接口320將數(shù)據(jù)傳輸?shù)街鳈C(jī)200以及從主機(jī)200接收數(shù)據(jù)。第二CPU 331可經(jīng)由第三接口350將數(shù)據(jù)傳輸?shù)酱鎯?chǔ)集群400以及從存儲(chǔ)集群400接收數(shù)據(jù)。例如,第一CPU 330和第二CPU 331可包括在多CPU中。例如,第一CPU 330可控制第二CPU 331。
緩沖控制器340可根據(jù)第一CPU 330或第二CPU 331的控制將數(shù)據(jù)寫入到緩沖器360。緩沖控制器340可根據(jù)第一CPU 330或第二CPU 331的控制從緩沖器360讀取數(shù)據(jù)。緩沖控制器340可被稱為緩沖管理器并且可控制寫入操作和讀取操作。
根據(jù)第一CPU 330或第二CPU 331的控制,第三接口350可經(jīng)由多個(gè)主通道(CHA、CHB、…、CHC)中的主通道來(lái)控制關(guān)于存儲(chǔ)集群400的數(shù)據(jù)處理操作(例如,寫入操作、讀取操作、特定類型的設(shè)定操作等)。
例如,第三接口350可以是SATA接口、SATAe接口、SAS接口、PCIe接口、NVMe接口、AHCI接口、MMC接口、NAND型閃存接口和/或NOR型閃存接口。
例如,第三接口350可包括糾錯(cuò)碼(ECC)引擎350-1。ECC引擎350-1可糾正將存儲(chǔ)在存儲(chǔ)集群400中的數(shù)據(jù)的差錯(cuò)。ECC引擎350-1可糾正從存儲(chǔ)集群400接收的數(shù)據(jù)的差錯(cuò)。在圖1中,ECC引擎350-1示出為被包括在第三接口350中。根據(jù)發(fā)明構(gòu)思,ECC引擎350-1可實(shí)施在控制器310內(nèi)部的任何區(qū)域中。
緩沖控制器340可從緩沖器360讀取數(shù)據(jù)。緩沖控制器340可將數(shù)據(jù)寫入到緩沖器360。例如,緩沖器360可以是非易失性存儲(chǔ)裝置、RAM、SRAM和/或DRAM。
緩沖器360可包括第一區(qū)和第二區(qū)。第一區(qū)可存儲(chǔ)映射表。映射表可包括用于將邏輯地址轉(zhuǎn)變成物理地址的信息。第二區(qū)可以是高速緩存存儲(chǔ)器。例如,第一區(qū)可存儲(chǔ)第一表TABLE1。第一表TABLE1可以是存儲(chǔ)在第一區(qū)中的映射表的全部或部分。將參照?qǐng)D11或圖15來(lái)更充分地描述第一表TABLE1。
例如,CPU 330和/或331可執(zhí)行第一FTL FTL1。第一FTL可使用用于將邏輯地址轉(zhuǎn)換成物理地址的存儲(chǔ)在緩沖器360的第一區(qū)中的映射表。第一FTL可使用用于選擇與邏輯地址對(duì)應(yīng)的外擴(kuò)存儲(chǔ)裝置的第一表TABLE1。例如,邏輯地址可以是邏輯塊地址LBA或邏輯頁(yè)地址LPN。邏輯頁(yè)地址可以是分配到每個(gè)外擴(kuò)存儲(chǔ)裝置的局部邏輯頁(yè)地址。邏輯頁(yè)地址可以是分配到每個(gè)外擴(kuò)存儲(chǔ)裝置的全局邏輯頁(yè)地址。
根據(jù)發(fā)明構(gòu)思的實(shí)施例,當(dāng)控制器310和緩沖器360中的每個(gè)實(shí)施為半導(dǎo)體芯片時(shí),控制器310和緩沖器360可以是諸如層疊封裝件(PoP)、多芯片封裝件(MCP)或系統(tǒng)級(jí)封裝件(SiP)的單個(gè)封裝件。例如,包括緩沖器360的第一芯片可通過(guò)堆疊球堆疊在包括控制器310的第二芯片上方。
PMIC 370可控制提供到控制器310、緩沖器360和/或存儲(chǔ)集群400的操作電壓。例如,第一操作電壓可提供到控制器310。第二操作電壓可提供到緩沖器360。第三操作電壓可提供到存儲(chǔ)集群400。在發(fā)明構(gòu)思的實(shí)施例中,第一操作電壓、第二操作電壓和第三操作電壓可彼此不同。在發(fā)明構(gòu)思的另一實(shí)施例中,第一操作電壓、第二操作電壓和第三操作電壓可彼此相同。
存儲(chǔ)集群400可包括多個(gè)集群410、430、…、450。第一集群410可連接到第一主通道CHA。第二集群430可連接到第二主通道CHB。第三集群450可連接到第三主通道。每個(gè)集群可包括至少一個(gè)外擴(kuò)存儲(chǔ)裝置。將參照?qǐng)D2A至圖7來(lái)更充分地描述每個(gè)集群的結(jié)構(gòu)。
根據(jù)發(fā)明構(gòu)思的實(shí)施例,主通道可以是設(shè)置在第三接口350與相應(yīng)的集群之間的獨(dú)立的數(shù)據(jù)路徑。數(shù)據(jù)路徑可包括用于傳輸數(shù)據(jù)和/或控制信號(hào)的傳輸線。
術(shù)語(yǔ)“路”被用于指共用單個(gè)主通道的一組非易失性存儲(chǔ)裝置。組可包括至少一個(gè)非易失性存儲(chǔ)裝置。因此,多個(gè)路可連接到單個(gè)主通道。非易失性存儲(chǔ)裝置可以是晶圓、存儲(chǔ)裝置和/或半導(dǎo)體封裝件。控制器310可控制A通道×B路。這里,A、B中的每個(gè)是等于或大于1的自然數(shù)。
圖2A是進(jìn)一步示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖1的數(shù)據(jù)存儲(chǔ)裝置的框圖。圖2B是進(jìn)一步示出根據(jù)發(fā)明構(gòu)思的另一實(shí)施例的圖1的數(shù)據(jù)存儲(chǔ)裝置的框圖。圖3是進(jìn)一步示出圖2A和圖2B的第一集群的一個(gè)示例的框圖。圖2A和圖2B的數(shù)據(jù)存儲(chǔ)裝置300可實(shí)施為具有外擴(kuò)結(jié)構(gòu)的數(shù)據(jù)存儲(chǔ)裝置。
每個(gè)集群410、430、…、450可包括至少一個(gè)外擴(kuò)存儲(chǔ)裝置(或多個(gè)芯片組)。第一集群410可包括多個(gè)外擴(kuò)存儲(chǔ)裝置410-1~410-4。第二集群430也可包括多個(gè)外擴(kuò)存儲(chǔ)裝置430-1~430-4。相似地,第三集群450可包括多個(gè)外擴(kuò)存儲(chǔ)裝置450-1~450-4。每個(gè)集群410、430、…、450可包括相同數(shù)量的外擴(kuò)存儲(chǔ)裝置?;蛘?,每個(gè)集群410、430、…、450可包括不同數(shù)量的外擴(kuò)存儲(chǔ)裝置。
外擴(kuò)裝置可包括外擴(kuò)控制器、易失性存儲(chǔ)器和至少一個(gè)非易失性存儲(chǔ)裝置(例如,NAND型閃存裝置)。
參照?qǐng)D1至圖3,假設(shè)每個(gè)集群410~450的結(jié)構(gòu)和操作可以是相同的。因此,可代表性地描述第一集群410的結(jié)構(gòu)和操作。參照?qǐng)D3,第一集群410可包括多個(gè)外擴(kuò)存儲(chǔ)裝置410-1~410-4。在圖3中,示出了4個(gè)外擴(kuò)存儲(chǔ)裝置410-1~410-4。根據(jù)發(fā)明構(gòu)思的實(shí)施例,包括在第一集群410中的外擴(kuò)存儲(chǔ)裝置的數(shù)量不限于此。
第一集群410可包括外擴(kuò)裝置(410-1A、410-2A、410-4A)和NAND型閃存裝置。NAND型裝置可連接到相應(yīng)的外擴(kuò)裝置。
第一外擴(kuò)存儲(chǔ)裝置410-1可包括第一外擴(kuò)裝置410-1A和連接到第一外擴(kuò)裝置410-1A的非易失性存儲(chǔ)裝置NAND。第二外擴(kuò)存儲(chǔ)裝置410-2可包括第二外擴(kuò)裝置410-2A和連接到第二外擴(kuò)裝置410-2A的非易失性存儲(chǔ)裝置。第四外擴(kuò)存儲(chǔ)裝置410-4可包括第四外擴(kuò)裝置410-4A和連接到第四外擴(kuò)裝置410-4A的非易失性存儲(chǔ)裝置。
每個(gè)外擴(kuò)裝置410-1A、410-2A、…、410-4A可分別包括外擴(kuò)控制器411-1、411-2、…、411-4以及非易失性存儲(chǔ)裝置413-1、413-2、…、413-4。外擴(kuò)控制器411-1、411-2、…、411-4的結(jié)構(gòu)可相同。
第一外擴(kuò)控制器411-1可連接到第一主通道CHA、通道CH11至CH1m(m是等于或大于2的自然數(shù))以及第一易失性存儲(chǔ)裝置413-1。每個(gè)通道CH11~CH1m可連接到相應(yīng)的非易失性存儲(chǔ)裝置。例如,每個(gè)非易失性存儲(chǔ)裝置可以是NAND型閃存裝置或管理型NAND閃存裝置。這里,每個(gè)通道可以是位于第一外擴(kuò)控制器411-1與相應(yīng)的非易失性存儲(chǔ)裝置之間的獨(dú)立的數(shù)據(jù)路徑。
第一外擴(kuò)控制器411-1可經(jīng)由通道CH11~CH1m來(lái)控制非易失性存儲(chǔ)裝置的操作。例如,控制器310可經(jīng)由第一主通道CHA來(lái)控制第一外擴(kuò)控制器411-1的操作。
第一易失性存儲(chǔ)裝置413-1可包括第一區(qū)。第一區(qū)可存儲(chǔ)映射表。映射表可包括與連接到通道CH11~CH1m中的每個(gè)通道的非易失性存儲(chǔ)裝置的邏輯地址和物理地址有關(guān)的映射信息。第一易失性存儲(chǔ)裝置413-1可包括第二區(qū)(或高速緩存區(qū))。第二區(qū)可暫時(shí)存儲(chǔ)用于寫入到連接到通道CH11~CH1m的非易失性存儲(chǔ)裝置中的一個(gè)非易失性存儲(chǔ)裝置的數(shù)據(jù)。第二區(qū)可暫時(shí)存儲(chǔ)從非易失性存儲(chǔ)裝置中的一個(gè)接收的數(shù)據(jù)。
例如,如圖7中所示,第二FTL FTL2可使用存儲(chǔ)在第一易失性存儲(chǔ)裝置413-1的第一區(qū)中的映射表將邏輯地址轉(zhuǎn)換成物理地址。第二FTL FTL2可通過(guò)包括在第一外擴(kuò)控制器411-1中的CPU 423-1或423-2來(lái)執(zhí)行。第二FTL FTL2可從包括在第一集群410中的非易失性存儲(chǔ)裝置加載到內(nèi)部存儲(chǔ)器425。加載的第二FTL可通過(guò)CPU 423-1或423-2來(lái)執(zhí)行。
第二外擴(kuò)控制器411-2可連接到第一主通道CHA、通道CH21~CH2m以及第二存儲(chǔ)裝置413-2。通道可分別連接到相應(yīng)的非易失性存儲(chǔ)裝置(例如,NAND閃存)。
第二外擴(kuò)控制器411-2可經(jīng)由通道CH21~CH2m來(lái)控制非易失性存儲(chǔ)裝置的操作。例如,控制器310可經(jīng)由主通道CHA來(lái)控制第二外擴(kuò)控制器415-2的操作。
第二易失性存儲(chǔ)裝置413-2可包括第一區(qū)。第一區(qū)可存儲(chǔ)與連接到每個(gè)通道CH21~CH2m的非易失性存儲(chǔ)裝置的邏輯地址和物理地址有關(guān)的映射信息(或映射表)。第二易失性存儲(chǔ)裝置413-2可包括第二區(qū)(或高速緩存區(qū))。第二區(qū)可暫時(shí)存儲(chǔ)用于寫入到連接到通道CH21~CH2m的非易失性存儲(chǔ)裝置中的一個(gè)的數(shù)據(jù)。第二區(qū)可暫時(shí)存儲(chǔ)從連接到通道CH21~CH2m的非易失性存儲(chǔ)裝置中的一個(gè)讀取的數(shù)據(jù)。
如圖7中所示,當(dāng)?shù)谝煌鈹U(kuò)控制器411-1的結(jié)構(gòu)與第二外擴(kuò)控制器411-2的結(jié)構(gòu)相同時(shí),第二外擴(kuò)控制器411-2的CPU 423-1或423-2可執(zhí)行第三FTL。第三FTL可使用存儲(chǔ)在第二易失性存儲(chǔ)裝置413-2的第一區(qū)中的映射表將邏輯地址轉(zhuǎn)換成物理地址。第三FTL可從第一集群410的非易失性存儲(chǔ)裝置加載到內(nèi)部存儲(chǔ)器425。加載的第三FTL可通過(guò)CPU 423-1或423-2來(lái)執(zhí)行。
第四外擴(kuò)控制器411-4可連接到第一主通道CHA、通道CH41~CH4m、和第四易失性存儲(chǔ)裝置413-4。通道CH41~CH4m可分別連接到相應(yīng)的非易失性存儲(chǔ)裝置。
第四外擴(kuò)控制器411-4可經(jīng)由通道CH41~CH4m中的每個(gè)來(lái)控制每個(gè)非易失性存儲(chǔ)裝置。例如,控制器310可經(jīng)由主通道CHA來(lái)控制第四外擴(kuò)控制器411-4的操作。
第四易失性存儲(chǔ)裝置413-4可包括第一區(qū)。第一區(qū)可存儲(chǔ)與連接到通道CH41~CH4m的相應(yīng)的非易失性存儲(chǔ)裝置的邏輯地址和物理地址有關(guān)的映射信息(或映射表)。第四易失性存儲(chǔ)裝置413-3可包括第二區(qū)(或高速緩存區(qū)),以存儲(chǔ)用于寫入到連接到通道CH41~CH4m中的每個(gè)通道的非易失性存儲(chǔ)裝置中的至少一個(gè)的數(shù)據(jù)。第二區(qū)可存儲(chǔ)從連接到通道CH41~CH4m中的每個(gè)通道的非易失性存儲(chǔ)裝置中的至少一個(gè)讀取的數(shù)據(jù)。
如圖7中所描述的,當(dāng)?shù)谝煌鈹U(kuò)控制器411-1的結(jié)構(gòu)與第四外擴(kuò)控制器411-4的結(jié)構(gòu)相同時(shí),第五FTL可使用存儲(chǔ)在第四易失性存儲(chǔ)裝置413-4的第一區(qū)中的映射表將邏輯地址轉(zhuǎn)換成物理地址。第五FTL可通過(guò)包括在第四外擴(kuò)控制器411-4中的CPU 423-1或423-2來(lái)執(zhí)行。第五FTL可從第一集群410的非易失性存儲(chǔ)裝置加載到內(nèi)部存儲(chǔ)器425。加載的第五FTL可通過(guò)CPU 423-1或423-2來(lái)執(zhí)行。
易失性存儲(chǔ)裝置413-1~413-4可以是緩沖器或緩沖存儲(chǔ)器、RAM、SRAM和/或DRAM。
在圖3中,外擴(kuò)存儲(chǔ)裝置410-1~410-4分別包括相同數(shù)量的通道。然而,包括在每個(gè)外擴(kuò)存儲(chǔ)裝置中的通道的數(shù)量可彼此不同。
圖4是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖3的第一外擴(kuò)裝置的框圖。圖7是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖4的第一外擴(kuò)控制器的框圖。參照?qǐng)D1至圖5以及圖7,外擴(kuò)控制器411-1~411-4中每個(gè)的結(jié)構(gòu)和操作可彼此基本上相同。因此,將代表性地描述第一外擴(kuò)控制器411-1的結(jié)構(gòu)和操作。
第一外擴(kuò)控制器411-1可控制在非易失性存儲(chǔ)裝置之間接收和傳輸指令和/或數(shù)據(jù)。非易失性存儲(chǔ)裝置可包括在控制器310、第一易失性存儲(chǔ)裝置413-1或第一外擴(kuò)存儲(chǔ)裝置410-1中。例如,第一外擴(kuò)控制器411-1可以是IC或SoC。
第一外擴(kuò)控制器411-1包括總線結(jié)構(gòu)420、第四接口421、至少一個(gè)CPU 423-1和/或423-2、內(nèi)部存儲(chǔ)器425、緩沖控制器427和第五接口429??偩€結(jié)構(gòu)可以是例如AMBA、AHB、APB、AXI、ASB和ACE。
第四接口421可改變用于傳輸?shù)娇刂破?10的響應(yīng)的格式。第四接口421可改變用于傳輸?shù)娇刂破?10的數(shù)據(jù)的格式。第四接口421可經(jīng)由第一主通道CHA將具有改變的格式的響應(yīng)和/或數(shù)據(jù)傳輸?shù)娇刂破?10。第四接口421可從控制器310接收指令和/或數(shù)據(jù)。第四接口421可改變接收的指令和/或數(shù)據(jù)的格式。第四接口421可將具有改變的格式的指令傳輸?shù)街辽僖粋€(gè)CPU 423-1和/或423-2和/或緩沖控制器427。第四接口421可將具有改變的格式的數(shù)據(jù)傳輸?shù)街辽僖粋€(gè)CPU 423-1和/或423-2和/或緩沖控制器427。例如,第四接口421可包括收發(fā)兩用機(jī)。
第四接口421的結(jié)構(gòu)和操作可實(shí)施為適用于第三接口350的結(jié)構(gòu)和操作。例如,第四接口421可以是SATA接口、SATAe接口、SAS接口、PCIe接口、NVMe接口、AHCI接口、MMC接口、NAND型閃存接口和NOR型閃存接口。
參照?qǐng)D4和圖7,第四接口421可連接到通道(或主通道)或路。第一端子PT1可用于將第一主通道CHA與第四接口421連接。第三端子PT3可用于將第一易失性存儲(chǔ)裝置413-1與緩沖控制器427連接。第二端子PT2可用于將第五接口429與通道CH11~CH1m中的一個(gè)連接。端子可以是引腳或焊盤。
一個(gè)或更多個(gè)CPU 423-1和/或423-2可經(jīng)由總線結(jié)構(gòu)420來(lái)控制第四接口421、內(nèi)部存儲(chǔ)器425、緩沖控制器427和第五接口429。每個(gè)CPU 423-1或423-2可包括至少一個(gè)核。
例如,第一CPU 423-1可經(jīng)由第一主通道CHA和第四接口421來(lái)將數(shù)據(jù)傳輸?shù)降谌涌?50以及從第三接口350接收數(shù)據(jù)。第二CPU 423-2可經(jīng)由第五接口429將數(shù)據(jù)傳輸?shù)竭B接到通道CH11~CH1m中每個(gè)的至少一個(gè)非易失性存儲(chǔ)裝置以及從連接到通道CH11~CH1m中每個(gè)的至少一個(gè)非易失性存儲(chǔ)裝置接收數(shù)據(jù)。例如,第一CPU 423-1和第二CPU 423-2可包括在多CPU中。例如,第一CPU 423-1可控制第二CPU 423-2。
內(nèi)部存儲(chǔ)器425可存儲(chǔ)操作第一外擴(kuò)控制器411-1所需的數(shù)據(jù)。內(nèi)部存儲(chǔ)器425還可存儲(chǔ)由數(shù)據(jù)處理操作(例如,寫入操作或讀取操作)產(chǎn)生的數(shù)據(jù)。數(shù)據(jù)處理操作可通過(guò)第一外擴(kuò)控制器411-1來(lái)執(zhí)行。例如,內(nèi)部存儲(chǔ)器425可存儲(chǔ)第二FTL。第二FTL可通過(guò)CPU 423-1或423-2來(lái)執(zhí)行。例如,當(dāng)數(shù)據(jù)存儲(chǔ)裝置300被啟動(dòng)時(shí),第二FTL可從存儲(chǔ)集群400的非易失性存儲(chǔ)器加載到內(nèi)部存儲(chǔ)器425。例如,內(nèi)部存儲(chǔ)器可以是RAM、DRAM、SRAM、緩沖器、緩沖存儲(chǔ)器、高速緩存存儲(chǔ)器和TCM。
緩沖控制器427可根據(jù)第一CPU 423-1或第二CPU 423-2的控制將數(shù)據(jù)寫入到第一易失性存儲(chǔ)裝置413-1。緩沖控制器427可從第一易失性存儲(chǔ)裝置413-1讀取數(shù)據(jù)。緩沖控制器427可稱為控制與第一易失性存儲(chǔ)裝置413-1有關(guān)的寫入操作和讀取操作的控制器或緩沖管理器。
第五接口429可根據(jù)第一CPU 423-1或第二CPU 423-2的控制而經(jīng)由多個(gè)通道CH11~CH1m中的相應(yīng)的通道來(lái)控制與非易失性存儲(chǔ)裝置有關(guān)的數(shù)據(jù)處理操作。
參照?qǐng)D4和圖7,多個(gè)通道和/或多個(gè)路可連接到第五接口429。例如,第五接口429可以是SATA接口、SATAe接口、SAS接口、PCIe接口、NVMe接口、AHCI接口、MMC接口、NAND型閃存接口和/或NOR型閃存接口。例如,第五接口429可包括分別與通道CH11~CH1m對(duì)應(yīng)的存儲(chǔ)控制器429-1~429-m。例如,當(dāng)非易失性存儲(chǔ)裝置是NAND型閃存時(shí),存儲(chǔ)控制器429-1~429-m可以是NAND閃存控制器。
第一易失性存儲(chǔ)裝置413-1可包括第一區(qū)和第二區(qū)。第一區(qū)可存儲(chǔ)與包括在第一外擴(kuò)存儲(chǔ)裝置410-1中的非易失性存儲(chǔ)裝置有關(guān)的用于將邏輯地址轉(zhuǎn)換成物理地址的映射表。第二區(qū)可以是高速緩存存儲(chǔ)器或緩存器。例如,第二FTL可通過(guò)CPU 423-1或423-2來(lái)執(zhí)行。第二FTL FTL2可使用存儲(chǔ)在第一區(qū)中的映射表來(lái)將邏輯地址轉(zhuǎn)換成物理地址。
如果圖3的非易失性存儲(chǔ)裝置中的一個(gè)被外擴(kuò)存儲(chǔ)裝置(例如,410-1)代替,則關(guān)于存儲(chǔ)集群400的存儲(chǔ)容量的可擴(kuò)展性可提高。
圖5是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的圖4的第一外擴(kuò)裝置的半導(dǎo)體封裝件的圖。參照?qǐng)D3、圖4和圖5,第一外擴(kuò)裝置410-1A可以是半導(dǎo)體封裝件。即,第一外擴(kuò)裝置410-1A包括附著或安裝在基板415上的第一外擴(kuò)控制器411-1和第一易失性存儲(chǔ)裝置413-1。
例如,第一外擴(kuò)控制器411-1可作為倒裝芯片結(jié)構(gòu)附著在基板415上。另外,當(dāng)?shù)谝煌鈹U(kuò)控制器411-1通過(guò)粘合材料附著在基板415上時(shí),第一外擴(kuò)控制器411-1可經(jīng)由鍵合線將電信號(hào)傳輸?shù)交?15以及從基板415接收電信號(hào)。
例如,第一易失性存儲(chǔ)裝置413-1可作為倒裝芯片結(jié)構(gòu)附著在基板415上。另外,當(dāng)?shù)谝灰资源鎯?chǔ)裝置413-1通過(guò)粘合材料附著在基板415上時(shí),第一易失性存儲(chǔ)裝置413-1可經(jīng)由鍵合線將電信號(hào)傳輸?shù)交?15以及從基板415接收電信號(hào)。即,第一外擴(kuò)控制器411-1可經(jīng)由基板415將指令和數(shù)據(jù)傳輸?shù)降谝灰资源鎯?chǔ)裝置413-1以及從第一易失性存儲(chǔ)裝置413-1接收指令和數(shù)據(jù)。與外擴(kuò)裝置410-1A~410-4A中的每個(gè)有關(guān)的半導(dǎo)體封裝件可相同。
圖6是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的包括圖1的存儲(chǔ)控制器和第一外擴(kuò)存儲(chǔ)裝置的半導(dǎo)體封裝件的圖。圖6的半導(dǎo)體封裝件300-1A可以是嵌入式層疊封裝件(ePOP)。
例如,半導(dǎo)體封裝件300-1A包括基板415-1、第一封裝件PKG1和第二封裝件PKG2。第一封裝件PKG1可設(shè)置在基板415-1之上。第二封裝件PKG2可設(shè)置在第一封裝件PKG1之上。第一封裝件PKG1可經(jīng)由第一凸塊415-2附著在基板415-1上。第一封裝件PKG1可經(jīng)由第一凸塊415-2將電信號(hào)傳輸?shù)交?15-1以及從基板415-1接收電信號(hào)。第二封裝件PKG2可經(jīng)由第二凸塊415-3附著到第一封裝件PKG1。第二封裝件PKG2可經(jīng)由第二凸塊415-3將電信號(hào)傳輸?shù)交?15-1以及從基板415-1接收電信號(hào)。第一封裝件PKG1包括控制器310。第二封裝件PKG2包括第一外擴(kuò)控制器411-1、第一易失性存儲(chǔ)裝置413-1和至少一個(gè)NAND型閃存470。例如,外擴(kuò)存儲(chǔ)裝置410-2、…、410-4中的每個(gè)可實(shí)施為封裝件。當(dāng)外擴(kuò)存儲(chǔ)裝置附著在基板415-1上時(shí),控制器310可經(jīng)由基板415-1來(lái)控制外擴(kuò)存儲(chǔ)裝置410-2、…、410-4中的每個(gè)。
圖8是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。參照?qǐng)D1和圖8,除了數(shù)據(jù)分類電路317和數(shù)據(jù)分類模塊330A之外,圖1的數(shù)據(jù)處理系統(tǒng)100的結(jié)構(gòu)和操作可與圖8的數(shù)據(jù)處理系統(tǒng)100-1的結(jié)構(gòu)和操作相同。
在圖1中,數(shù)據(jù)分類電路317實(shí)施為硬件,圖8的數(shù)據(jù)分類模塊可實(shí)施為通過(guò)CPU 330或331來(lái)執(zhí)行的軟件。硬件格式化器317-1的功能和軟件格式化器330-1的功能可相同。硬件數(shù)據(jù)分類器317-2的功能和軟件數(shù)據(jù)分類器330-2的功能可相同。因此,將省略關(guān)于軟件數(shù)據(jù)格式化器330-1和軟件數(shù)據(jù)分類器330-2的描述。
圖9是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的使用類型格式化器將邏輯地址分配到外擴(kuò)存儲(chǔ)裝置的方法的概念圖。圖10是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的使用數(shù)據(jù)分類器將邏輯地址傳輸?shù)酵鈹U(kuò)存儲(chǔ)裝置的方法的概念圖。圖11是根據(jù)發(fā)明構(gòu)思的實(shí)施例的列出分配到外擴(kuò)存儲(chǔ)裝置的示例性邏輯地址的表。圖12是根據(jù)發(fā)明構(gòu)思的實(shí)施例的列出從邏輯地址到分配到外擴(kuò)存儲(chǔ)裝置的物理地址的示例性轉(zhuǎn)換的表。
參照?qǐng)D1至圖12,根據(jù)主機(jī)的CPU 220的控制,CPU 330或331可執(zhí)行用于將邏輯地址分配到每個(gè)外擴(kuò)存儲(chǔ)裝置的類型格式化器330-1。因此,顯示器240可根據(jù)CPU 220或類型格式化器330-1的控制向用戶提供可設(shè)定用于每個(gè)外擴(kuò)存儲(chǔ)裝置的邏輯地址的范圍的用戶接口。用戶可通過(guò)顯示在顯示器240上的用戶接口來(lái)設(shè)定每個(gè)外擴(kuò)存儲(chǔ)裝置的邏輯地址范圍(S101)。
CPU 220可將分配到每個(gè)外擴(kuò)存儲(chǔ)裝置的邏輯地址范圍傳輸?shù)紺PU 330或類型格式化器330-1(S103)。圖11的第一表TB1可示出分配到每個(gè)外擴(kuò)存儲(chǔ)裝置的邏輯地址范圍LAR。
例如,參照?qǐng)D2B、圖9、圖10和圖11,假定的是,邏輯地址LA0~LA0999可分配到第一集群410或第一外擴(kuò)存儲(chǔ)裝置410-1。邏輯地址LA1000~LA1999可分配到第二集群430或第二外擴(kuò)存儲(chǔ)裝置430-1。邏輯地址LA3000~LA3999可分配到第三集群450或第三外擴(kuò)存儲(chǔ)裝置450-1。另外,為了簡(jiǎn)明描述,集群410、430、…、450中的每個(gè)可包括至少一個(gè)外擴(kuò)存儲(chǔ)裝置410-1、430-1、…、450-1。
CPU 330或類型格式化器330-1可通過(guò)緩沖控制器340將第一表TB1存儲(chǔ)到緩沖器360(S105)。第一表TB1可包括邏輯地址范圍LAR。類型格式化器330-1可使用第一表TB1將分配到每個(gè)外擴(kuò)存儲(chǔ)裝置的邏輯地址范圍LAR傳輸?shù)较鄳?yīng)的外擴(kuò)存儲(chǔ)裝置(S107)。
第一外擴(kuò)存儲(chǔ)裝置410-1可分類成第一類型(TYPE1)。第一外擴(kuò)存儲(chǔ)裝置410-1的CPU可使用邏輯地址LA0~LA0999來(lái)生成圖12的第二表TABLE2。第二FTL FTL2可通過(guò)第一外擴(kuò)存儲(chǔ)裝置410-1的CPU來(lái)執(zhí)行。第二FTL FTL2也可生成圖12的第二表TABLE2。第一外擴(kuò)存儲(chǔ)裝置410-1的CPU或第二FTL FTL2可將第二表TABLE2存儲(chǔ)到第一易失性存儲(chǔ)器413-1。例如,第二表TABLE2可以是用于將邏輯地址LA0~LA0999轉(zhuǎn)換成物理地址PA0~PA0999的地址映射表。例如,物理地址PA0~PA0999可以是與包括在第一外擴(kuò)存儲(chǔ)裝置410-1中包括的NAND型閃存裝置的存儲(chǔ)區(qū)MR2中的頁(yè)有關(guān)的邏輯地址。存儲(chǔ)區(qū)MR2、MR3、…、MR5中的每個(gè)可包括x個(gè)塊。這里,x是等于或大于2的自然數(shù)。假定的是,每個(gè)塊可包括128個(gè)頁(yè)。
第二外擴(kuò)存儲(chǔ)裝置430-1可分類成第二類型(TYPE2)。第三FTL FTL3可通過(guò)第二外擴(kuò)存儲(chǔ)裝置430-1的CPU來(lái)執(zhí)行。第三FTL可使用邏輯地址LA1000~LA1999來(lái)生成圖12的第三表TABLE3。第三FTL可將第三表TABLE3存儲(chǔ)到第二易失性存儲(chǔ)器433-1。例如,第三表可以是用于將邏輯地址LA1000~LA1999轉(zhuǎn)換成物理地址PA1000~PA1999的地址映射表。例如,物理地址PA1000~PA1999可以是與包括在第二外擴(kuò)存儲(chǔ)裝置430-1的NAND型閃存裝置的存儲(chǔ)區(qū)MR3中的頁(yè)有關(guān)的物理地址。
第三外擴(kuò)存儲(chǔ)裝置450-1可分類為第四類型。第五FTL可通過(guò)第三外擴(kuò)存儲(chǔ)裝置450-1的CPU來(lái)執(zhí)行。第三外擴(kuò)存儲(chǔ)裝置的CPU和第五FTL可使用邏輯地址LA3000~LA3999來(lái)生成圖12的第五表TABLE5。第三外擴(kuò)存儲(chǔ)裝置的CPU或第五FTL可將第五表TABLE5存儲(chǔ)到第三易失性存儲(chǔ)器453-1。例如,第五表TABLE5可以是用于將邏輯地址LA3000~LA3999轉(zhuǎn)換成物理地址PA3000~PA3999的地址映射表。例如,物理地址PA3000~PA3999可以是與包括在第三外擴(kuò)存儲(chǔ)裝置450-1的NAND型閃存裝置的存儲(chǔ)區(qū)MR5中的頁(yè)有關(guān)的物理地址。
主機(jī)200可將邏輯地址LAi(例如,LA0999)傳輸?shù)綌?shù)據(jù)存儲(chǔ)裝置300。CPU 330或數(shù)據(jù)分類器317-2或330-2可基于第一表TB1來(lái)將邏輯地址LAi(例如,LA0999)傳輸?shù)椒诸惓傻谝活愋蚑YPE1的第一集群410或第一外擴(kuò)存儲(chǔ)裝置410-1(S115)。
當(dāng)邏輯地址LAi可以是與寫入操作有關(guān)的邏輯地址時(shí),主機(jī)200可將寫入數(shù)據(jù)WDATA傳輸?shù)綌?shù)據(jù)存儲(chǔ)裝置300(S117)。CPU 330或數(shù)據(jù)分類器317-2或330-2可基于圖11的第一表TB1來(lái)將寫入數(shù)據(jù)WDATA傳輸?shù)降谝煌鈹U(kuò)存儲(chǔ)裝置410-1(S119)。第二FTL FTL2可在第一外擴(kuò)存儲(chǔ)裝置410-1處被執(zhí)行。第二FTL可基于圖12的第二表TABLE2將邏輯地址LAi(例如,LA0999)轉(zhuǎn)換成物理地址(例如,PA0999)。因此,寫入數(shù)據(jù)WDATA可編程為物理地址的相應(yīng)的頁(yè)。
第二FTL FTL2可在第一外擴(kuò)存儲(chǔ)裝置410-1中被執(zhí)行。當(dāng)邏輯地址LAi(例如,LA0999)是與讀取操作有關(guān)的邏輯地址時(shí),第二FTL FTL2可基于圖12的第二表TABLE2將邏輯地址轉(zhuǎn)換成物理地址(例如,PA0999)。因此,第一外擴(kuò)存儲(chǔ)裝置410-1可從與物理地址(例如,PA0999)對(duì)應(yīng)的頁(yè)讀取讀取數(shù)據(jù)RDATA(S121)。第一外擴(kuò)存儲(chǔ)裝置410-1可將讀取數(shù)據(jù)RDATA傳輸?shù)街鳈C(jī)200(S123)。
從主機(jī)200接收的邏輯地址LAi(0≤i≤3999)可被包括在寫入指令或讀取指令中。
因此,當(dāng)從主機(jī)200接收的邏輯地址LAi是邏輯地址LA1000~LA1999中的一個(gè)時(shí),控制器310可使用第三表TABLE3將與邏輯地址LA1000~LA1999對(duì)應(yīng)的數(shù)據(jù)傳輸?shù)椒诸惓傻诙愋蚑YPE2的第二外擴(kuò)存儲(chǔ)裝置430-1以及從分類成第二類型TYPE2的第二外擴(kuò)存儲(chǔ)裝置430-1接收與邏輯地址LA1000~LA1999對(duì)應(yīng)的數(shù)據(jù)。另外,當(dāng)從主機(jī)200接收的邏輯地址LAi是邏輯地址LA3000~LA3999中的一個(gè)時(shí),控制器310可使用第五表TABLE5將與LA3000~LA3999的邏輯地址對(duì)應(yīng)的數(shù)據(jù)傳輸?shù)椒诸惓傻谒念愋蚑YPE4的第三外擴(kuò)存儲(chǔ)裝置450-1以及從分類成第四類型TYPE4的第三外擴(kuò)存儲(chǔ)裝置450-1接收與LA3000~LA3999的邏輯地址對(duì)應(yīng)的數(shù)據(jù)。
圖13是根據(jù)發(fā)明構(gòu)思的實(shí)施例的總體上總結(jié)用于對(duì)應(yīng)數(shù)據(jù)特性來(lái)生成關(guān)于外擴(kuò)存儲(chǔ)裝置的表的方法的流程圖。圖14是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)分類器分析數(shù)據(jù)特性并根據(jù)分析結(jié)果將數(shù)據(jù)傳輸?shù)较鄳?yīng)的外擴(kuò)存儲(chǔ)裝置的過(guò)程的概念圖。圖15是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的將外擴(kuò)存儲(chǔ)裝置分類成數(shù)據(jù)特性的相應(yīng)類型的方法的表。
在本說(shuō)明書中,“確定傳輸?shù)街鳈C(jī)200和從主機(jī)200接收的數(shù)據(jù)的特性”可意味著下述中之一:
(1)確定是用于順序存取的數(shù)據(jù)還是用于隨機(jī)存取的數(shù)據(jù);
(2)確定是寫入數(shù)據(jù)(或程序數(shù)據(jù))還是讀取數(shù)據(jù);
(3)確定是熱數(shù)據(jù)還是冷數(shù)據(jù);和/或
(4)確定是大尺寸數(shù)據(jù)還是小尺寸數(shù)據(jù)。然而,發(fā)明構(gòu)思可不限于此。
圖16是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的隨機(jī)存取和順序存取的概念圖。如圖16中所示,順序存取可意指邏輯地址LA0~LA5是順序的。順序存取也可意指與存儲(chǔ)區(qū)的對(duì)應(yīng)于邏輯地址LA0~LA5的存儲(chǔ)數(shù)據(jù)DATA0~DATA5有關(guān)的存取(寫入或讀取)是順序的。隨機(jī)存取可意指邏輯地址LA0~LA5是隨機(jī)的。隨機(jī)存取也可意指與存儲(chǔ)區(qū)的對(duì)應(yīng)于邏輯地址LA0~LA5的存儲(chǔ)數(shù)據(jù)DATA0~DATA5有關(guān)的存取是隨機(jī)的。
熱數(shù)據(jù)可以是經(jīng)常地通過(guò)主機(jī)200或控制器310存取的數(shù)據(jù)。冷數(shù)據(jù)可以是不經(jīng)常地通過(guò)主機(jī)200或控制器310存取的數(shù)據(jù)。
參照?qǐng)D15,CPU 330或類型格式化器317-1或330-1可將每個(gè)外擴(kuò)存儲(chǔ)數(shù)據(jù)分類成一種類型。CPU 330或類型格式化器317-1或330-1可使每個(gè)外擴(kuò)存儲(chǔ)數(shù)據(jù)格式化。根據(jù)發(fā)明構(gòu)思的實(shí)施例,可通過(guò)每個(gè)集群來(lái)確定每種類型。另外,根據(jù)發(fā)明構(gòu)思的實(shí)施例,可不管集群而通過(guò)每個(gè)外擴(kuò)存儲(chǔ)裝置來(lái)確定每種類型。
參照?qǐng)D15,假定的是,CPU 330或類型格式化器317-1或330-1可根據(jù)下列項(xiàng)和/或數(shù)據(jù)特性中的至少一個(gè)來(lái)確定每個(gè)集群的類型。還假定的是,每個(gè)集群包括至少一個(gè)外擴(kuò)存儲(chǔ)裝置。
(1)控制器310和/或每個(gè)外擴(kuò)存儲(chǔ)裝置的外擴(kuò)控制器的工作時(shí)鐘頻率(在下文中,稱為“時(shí)鐘頻率”);
(2)連接到外擴(kuò)控制器的易失性存儲(chǔ)器413-1、433-1、…、453-1和/或連接到控制器310的易失性存儲(chǔ)器360的容量和/或帶寬;
(3)與包括在每個(gè)外擴(kuò)存儲(chǔ)裝置中的NAND型閃存裝置有關(guān)的編程方法;
(4)用于管理包括在每個(gè)外擴(kuò)存儲(chǔ)裝置中的NAND型閃存裝置的寫入數(shù)據(jù)和讀取數(shù)據(jù)的FTL映射尺寸;
(5)包括在每個(gè)外擴(kuò)存儲(chǔ)裝置中的NAND型閃存裝置的用戶數(shù)據(jù)區(qū)和預(yù)留空間區(qū)(over-provisioning region)的比例(OVP RATIO);
(6)包括在每個(gè)外擴(kuò)存儲(chǔ)裝置中的NAND型閃存裝置的容量。然而,發(fā)明構(gòu)思不限于此。
編程方法可包括單層單元(SLC)編程方法、多層單元(MLC)編程方法和三層單元(TLC)編程方法。SLC編程方法可將1位數(shù)據(jù)編程成單層單元。MLC編程方法可將2位數(shù)據(jù)編程成單層單元。TLC編程方法可將3位數(shù)據(jù)編程成單層單元。
例如,如果每單元的位數(shù)(bpc)增加,則程序擦除循環(huán)可減小,并且讀取時(shí)間、寫入時(shí)間和擦除時(shí)間可增加。如果每單元的位數(shù)(bpc)減少,數(shù)據(jù)的可靠性可增大。
FTL映射尺寸可意指用于管理NAND型閃存裝置的寫入數(shù)據(jù)和讀取數(shù)據(jù)的尺寸。FTL映射尺寸可以是4KB、8KB或16KB。例如,如果FTL映射尺寸增大,則用于邏輯地址和物理地址的映射表的尺寸可減小。
如果用戶數(shù)據(jù)區(qū)和預(yù)留空間區(qū)的比例OVP RATIO增大,則NAND型閃存裝置的性能和壽命可提高。
CPU 330或類型格式化器317-1或330-1可根據(jù)至少一個(gè)數(shù)據(jù)特性來(lái)確定每個(gè)集群的類型。CPU 330或類型格式化器317-1或330-1可將包括每個(gè)集群的確定的類型的第六表TB6存儲(chǔ)到緩沖器360。
主機(jī)200的CPU 220可執(zhí)行用于基于至少一個(gè)數(shù)據(jù)特性來(lái)確定每個(gè)外擴(kuò)存儲(chǔ)裝置的類型的類型格式化器317-1或330-1和控制器310-1的CPU 300。因此,顯示器240可根據(jù)CPU 220的控制或類型格式化器317-1或330-1的控制向用戶提供用戶接口。用戶可通過(guò)顯示在顯示器240上的用戶接口來(lái)分別設(shè)定外擴(kuò)存儲(chǔ)裝置的類型。例如,外擴(kuò)存儲(chǔ)裝置的類型可通過(guò)數(shù)據(jù)存儲(chǔ)裝置300的制造商設(shè)定為默認(rèn)值。
制造商或用戶可根據(jù)圖15的項(xiàng)中的至少一項(xiàng)來(lái)設(shè)定每個(gè)外擴(kuò)存儲(chǔ)裝置的類型。CPU 300或類型格式化器317-1或330-1對(duì)每個(gè)外擴(kuò)存儲(chǔ)裝置的類型進(jìn)行分類(S201)。CPU 300或類型格式化器317-1或330-2可根據(jù)分類結(jié)果生成第六表TB6(S203)。CPU 300或類型格式化器317-1或330-1可將第六表TB6存儲(chǔ)到緩沖器360(S205)。CPU 300或者類型格式化器317-1或330-1可將與每個(gè)外擴(kuò)存儲(chǔ)裝置類型有關(guān)的信息傳輸?shù)矫總€(gè)外擴(kuò)存儲(chǔ)裝置。因此,每個(gè)外擴(kuò)存儲(chǔ)裝置可將與其自身類型有關(guān)的信息存儲(chǔ)到易失性存儲(chǔ)器。
如圖14中所示,第一集群410或第一外擴(kuò)存儲(chǔ)裝置410-1可通過(guò)CPU 300或類型格式化器317-1或330-1分類成第一類型TYPE1。第二集群430或第二外擴(kuò)存儲(chǔ)裝置430-1可分類成第二類型TYPE2。第三集群450或第三外擴(kuò)存儲(chǔ)裝置450-1可分類成第四類型TYPE4。
當(dāng)主機(jī)傳輸數(shù)據(jù)時(shí),數(shù)據(jù)分類器317-2或330-2可確定數(shù)據(jù)的特性。數(shù)據(jù)分類器317-2或330-2可使用確定的特性或圖15的第六表TB6來(lái)確定外擴(kuò)裝置以傳輸外擴(kuò)裝置410-1、430-1、…、450-1中的數(shù)據(jù)。
數(shù)據(jù)分類器317-2或330-2可確定數(shù)據(jù)的類型或數(shù)據(jù)的特性。數(shù)據(jù)分類器317-2或330-2可根據(jù)確定的特性將數(shù)據(jù)傳輸?shù)较鄳?yīng)的外擴(kuò)存儲(chǔ)裝置。從主機(jī)200傳輸?shù)臄?shù)據(jù)可以是熱數(shù)據(jù)、冷數(shù)據(jù)、程序數(shù)據(jù)、讀取數(shù)據(jù)、隨機(jī)數(shù)據(jù)、順序數(shù)據(jù)、用戶數(shù)據(jù)和/或元數(shù)據(jù)。
例如,當(dāng)從主機(jī)200接收的數(shù)據(jù)是熱數(shù)據(jù)或隨機(jī)數(shù)據(jù)時(shí),數(shù)據(jù)分類器317-2或330-2可使用第六表TB6和/或確定的特性來(lái)將數(shù)據(jù)存儲(chǔ)在分類成第四類型TYPE4的第三外擴(kuò)存儲(chǔ)裝置450-1中。如圖15中所示,第三外擴(kuò)存儲(chǔ)裝置450-1可具有小的FTL映射尺寸(例如,4KB)和高的比例(OVP RATIO),并且可使用SLC(或MLC)編程方法。
當(dāng)從主機(jī)200接收的數(shù)據(jù)是冷數(shù)據(jù)或順序數(shù)據(jù)時(shí),數(shù)據(jù)分類器317-2或330-2可使用第六表TB6和/或確定的特性來(lái)將數(shù)據(jù)存儲(chǔ)在分類成第三類型TYPE3的外擴(kuò)存儲(chǔ)裝置中。如圖15中所示,外擴(kuò)存儲(chǔ)裝置可具有大的FTL尺寸(例如,8KB)和低的比例(OVP RATIO),并且可使用TLC編程方法。
當(dāng)從主機(jī)200接收的數(shù)據(jù)需要被快速地處理時(shí),數(shù)據(jù)分類器317-2或330-2可使用圖15的第六表TB6和/或確定的特性將數(shù)據(jù)存儲(chǔ)在分類成第二類型TYPE2的第二外擴(kuò)存儲(chǔ)裝置430-1中。如圖15中所示,第二外擴(kuò)存儲(chǔ)裝置430-1可使用高的時(shí)鐘頻率和高的帶寬,并且可使用SLC或MLC編程方法。
當(dāng)從主機(jī)200接收的數(shù)據(jù)需要高的可靠性(例如,元數(shù)據(jù))時(shí),數(shù)據(jù)分類器317-2或330-2可使用圖15的第六表TB6和/或確定的特性將數(shù)據(jù)存儲(chǔ)在分類成第一類型TYPE1的第一外擴(kuò)存儲(chǔ)裝置410-1中。如圖15中所示,第一外擴(kuò)存儲(chǔ)裝置410-1可使用低的時(shí)鐘頻率、低的帶寬和大的FTL映射尺寸(例如,8KB),并且可使用SLC編程方法。
當(dāng)從主機(jī)200接收的數(shù)據(jù)不需要被快速地處理,或者數(shù)據(jù)需要在低功耗的情況下處理時(shí),數(shù)據(jù)分類器317-2或330-2可根據(jù)圖15的第六表TB6和/或確定的特性將數(shù)據(jù)存儲(chǔ)在諸如第一外擴(kuò)存儲(chǔ)裝置410-1的具有低的時(shí)鐘頻率、低的帶寬的外擴(kuò)存儲(chǔ)裝置中。
圖17是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。參照?qǐng)D1至圖17,數(shù)據(jù)處理系統(tǒng)100B可包括主機(jī)200和無(wú)DRAM的數(shù)據(jù)存儲(chǔ)裝置300B。數(shù)據(jù)處理系統(tǒng)100B還可包括圖1的顯示器240。
例如,數(shù)據(jù)處理系統(tǒng)100B可以是移動(dòng)計(jì)算裝置。無(wú)DRAM的數(shù)據(jù)存儲(chǔ)裝置300B可包括控制器310-1和存儲(chǔ)集群400。無(wú)DRAM的數(shù)據(jù)存儲(chǔ)裝置300B可以是eMMC。
緩沖控制器340-1可不執(zhí)行關(guān)于外部緩沖器的數(shù)據(jù)處理。當(dāng)執(zhí)行寫入操作或讀取操作時(shí),緩沖控制器340-1可使用內(nèi)部緩沖器341將數(shù)據(jù)傳輸?shù)降诙涌?20或第三接口350。除了緩沖控制器340-1的操作以外,圖17的控制器310-1的結(jié)構(gòu)和操作可與圖1的控制器310的結(jié)構(gòu)和操作相同。因此,將省略關(guān)于控制器310-1的描述。例如,可存儲(chǔ)在圖1的緩沖器360中的第一表TB1和第六表TB6可存儲(chǔ)在內(nèi)部緩沖器341中。
圖18是示出根據(jù)發(fā)明構(gòu)思的另一實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。參照?qǐng)D17和圖18,除了數(shù)據(jù)分類電路317和數(shù)據(jù)分類模塊330A以外,圖17的數(shù)據(jù)處理系統(tǒng)100B的結(jié)構(gòu)和操作可與圖18的數(shù)據(jù)處理系統(tǒng)100B的結(jié)構(gòu)和操作相同。
圖17的數(shù)據(jù)分類電路317實(shí)施為硬件。圖18的數(shù)據(jù)分類模塊330A可實(shí)施為在CPU 330和/或331中執(zhí)行的軟件。硬件型格式化器317-1的功能可與軟件型格式化器330-1的功能相同。硬件數(shù)據(jù)分類器317-2的功能可與軟件數(shù)據(jù)分類器330-2的功能相同。因此,將省略與軟件型格式化器330-1的功能和軟件數(shù)據(jù)分類器330-2的功能有關(guān)的描述。
圖19是示出根據(jù)發(fā)明構(gòu)思的實(shí)施例的數(shù)據(jù)處理系統(tǒng)的框圖。參照?qǐng)D1至圖19,數(shù)據(jù)處理系統(tǒng)500包括數(shù)據(jù)庫(kù)520、數(shù)據(jù)庫(kù)服務(wù)器530、第二網(wǎng)絡(luò)540和多個(gè)客戶端計(jì)算機(jī)550和551。數(shù)據(jù)中心510可以是因特網(wǎng)數(shù)據(jù)中心或云數(shù)據(jù)中心。數(shù)據(jù)中心510可包括數(shù)據(jù)庫(kù)520和數(shù)據(jù)庫(kù)服務(wù)器530。
數(shù)據(jù)庫(kù)520可包括多個(gè)數(shù)據(jù)存儲(chǔ)裝置300或300B(稱為“300”)。多個(gè)數(shù)據(jù)存儲(chǔ)裝置300可安裝在機(jī)架(rack)中。每個(gè)數(shù)據(jù)存儲(chǔ)裝置300的結(jié)構(gòu)和操作可與圖1至圖18的數(shù)據(jù)存儲(chǔ)裝置的結(jié)構(gòu)和操作相同。
數(shù)據(jù)庫(kù)服務(wù)器530可控制每個(gè)數(shù)據(jù)存儲(chǔ)裝置300。例如,數(shù)據(jù)庫(kù)服務(wù)器530可執(zhí)行圖1的主機(jī)200的功能。數(shù)據(jù)庫(kù)服務(wù)器530可通過(guò)第一網(wǎng)絡(luò)535連接到第二無(wú)線網(wǎng)絡(luò)540。第一網(wǎng)絡(luò)可以是局域網(wǎng)LAN。第二無(wú)線網(wǎng)絡(luò)540可以是因特網(wǎng)或wi-fi。多個(gè)客戶端計(jì)算機(jī)550和551可分別通過(guò)第二無(wú)線網(wǎng)絡(luò)540連接到數(shù)據(jù)庫(kù)服務(wù)器530。
如在發(fā)明構(gòu)思的方面的慣例,實(shí)施例可以依據(jù)實(shí)現(xiàn)描述的(多個(gè))功能的塊來(lái)描述和示出。這里可稱為單元或模塊等的這些塊通過(guò)諸如邏輯門、集成電路、微處理器、微控制器、存儲(chǔ)電路、無(wú)源電子組件、有源電子組件、光學(xué)組件、硬連線電路等的模擬和/或數(shù)字電路來(lái)物理地實(shí)施,并且可以可選擇地通過(guò)固件和/或軟件來(lái)驅(qū)動(dòng)。例如,電路可以實(shí)現(xiàn)在一個(gè)或更多個(gè)半導(dǎo)體芯片中,或者可以實(shí)現(xiàn)在諸如印刷電路板等的基板支撐件上。構(gòu)成塊的電路可通過(guò)專用硬件,或者通過(guò)處理器(例如,一個(gè)或更多個(gè)程序化的微處理器和關(guān)聯(lián)的電路),或者通過(guò)用于執(zhí)行塊的一些功能的專用硬件和用于執(zhí)行塊的其他功能的處理器的組合來(lái)執(zhí)行。在不脫離發(fā)明構(gòu)思的范圍的情況下,實(shí)施例的每個(gè)塊可物理地分離成兩個(gè)或更多個(gè)相互作用且分立的塊。同樣地,在不脫離發(fā)明構(gòu)思的范圍的情況下,實(shí)施例的塊可物理地結(jié)合成更復(fù)雜的塊。
上面公開的主題被認(rèn)為實(shí)際上是說(shuō)明性的,權(quán)利要求的范圍擴(kuò)展到考慮到上文后對(duì)于本領(lǐng)域普通技術(shù)人員將變得明顯的許多修改和改進(jìn)。因此,在法律允許的最大范圍內(nèi),權(quán)利要求的范圍應(yīng)該通過(guò)最廣泛的可允許的解釋來(lái)確定,并且不應(yīng)該僅受限或局限于上面舉例說(shuō)明的實(shí)施例。