本申請(qǐng)涉及存儲(chǔ),特別是涉及一種存儲(chǔ)裝置及其存儲(chǔ)方法。
背景技術(shù):
1、服務(wù)器的擴(kuò)展內(nèi)存主要受限于服務(wù)器主板的內(nèi)存條插槽的數(shù)量和服務(wù)器的單個(gè)ddr(double?datarate?sdram,雙倍速率sdram)的容量,在服務(wù)器主板的內(nèi)存條插槽被使用完時(shí)服務(wù)器無(wú)法實(shí)現(xiàn)擴(kuò)展內(nèi)存。
2、現(xiàn)有技術(shù)的服務(wù)器沒(méi)有實(shí)現(xiàn)內(nèi)存壓縮的功能,服務(wù)器可以訪問(wèn)的內(nèi)存容量等于服務(wù)器的內(nèi)存實(shí)際容量,在服務(wù)器上運(yùn)行的程序請(qǐng)求的內(nèi)存空間超出服務(wù)器最大的可用內(nèi)存空間時(shí),無(wú)法滿足程序的要求,只能分配部分內(nèi)存供程序使用,降低程序的運(yùn)行速度。
技術(shù)實(shí)現(xiàn)思路
1、本申請(qǐng)?zhí)峁┮环N存儲(chǔ)裝置及其存儲(chǔ)方法,能夠?qū)崿F(xiàn)內(nèi)存壓縮的功能。
2、本申請(qǐng)?zhí)峁┮环N存儲(chǔ)裝置,所述存儲(chǔ)裝置與服務(wù)器連接,所述存儲(chǔ)裝置包括cxl接口、內(nèi)存控制單元、第一存儲(chǔ)單元以及第二存儲(chǔ)單元,所述內(nèi)存控制單元通過(guò)所述cxl接口與所述服務(wù)器連接,所述內(nèi)存控制單元分別與所述第一存儲(chǔ)單元和所述第二存儲(chǔ)單元連接,所述第一存儲(chǔ)單元用于存儲(chǔ)第一內(nèi)存數(shù)據(jù),所述第二存儲(chǔ)單元用于存儲(chǔ)第二內(nèi)存數(shù)據(jù),所述內(nèi)存控制單元用于對(duì)所述第一存儲(chǔ)單元中的部分第一內(nèi)存數(shù)據(jù)進(jìn)行壓縮處理,并將壓縮后的第一內(nèi)存數(shù)據(jù)存儲(chǔ)至所述第二存儲(chǔ)單元。
3、其中,所述內(nèi)存控制單元用于對(duì)所述第一內(nèi)存數(shù)據(jù)和所述第二內(nèi)存數(shù)據(jù)進(jìn)行預(yù)測(cè)得到所述服務(wù)器所需的內(nèi)存數(shù)據(jù),并且預(yù)測(cè)到所述部分第一內(nèi)存數(shù)據(jù)不是所述服務(wù)器所需的內(nèi)存數(shù)據(jù)。
4、其中,所述內(nèi)存控制單元用于預(yù)測(cè)到所述服務(wù)器所需的內(nèi)存數(shù)據(jù)存儲(chǔ)在所述第二存儲(chǔ)單元,從所述第二存儲(chǔ)單元獲取對(duì)應(yīng)的第二內(nèi)存數(shù)據(jù),并將所述第二內(nèi)存數(shù)據(jù)進(jìn)行解壓處理,以將解壓后的第二內(nèi)存數(shù)據(jù)存儲(chǔ)至所述第一存儲(chǔ)單元。
5、其中,所述內(nèi)存控制單元用于預(yù)測(cè)到所述服務(wù)器所需的內(nèi)存數(shù)據(jù)存儲(chǔ)在所述第一存儲(chǔ)單元,從所述第一存儲(chǔ)單元獲取對(duì)應(yīng)的第一內(nèi)存數(shù)據(jù)。
6、其中,所述內(nèi)存控制單元通過(guò)預(yù)設(shè)的編碼表對(duì)所述部分第一內(nèi)存數(shù)據(jù)進(jìn)行編碼,以得到所述壓縮后的第一內(nèi)存數(shù)據(jù)。
7、其中,所述預(yù)設(shè)的編碼表包括第一編碼和第二編碼,所述第一編碼的字符串比所述第二編碼的字符串長(zhǎng),所述部分第一內(nèi)存數(shù)據(jù)包括第一源符號(hào)和第二源符號(hào),所述第一源符號(hào)的出現(xiàn)機(jī)率比所述第二源符號(hào)的出現(xiàn)機(jī)率高,所述內(nèi)存控制單元采用所述第二編碼對(duì)所述第一源符號(hào)進(jìn)行編碼,并采用所述第一編碼對(duì)所述第二源符號(hào)進(jìn)行編碼。
8、其中,所述內(nèi)存控制單元包括內(nèi)存控制器和仲裁器/復(fù)用器電路,所述內(nèi)存控制器通過(guò)所述cxl接口與所述服務(wù)器連接,所述內(nèi)存控制器通過(guò)所述仲裁器/復(fù)用器電路分別與所述第一存儲(chǔ)單元和所述第二存儲(chǔ)單元連接。
9、其中,所述存儲(chǔ)裝置還包括處理器,所述處理器分別與所述cxl接口和所述內(nèi)存控制器連接,用于配置所述存儲(chǔ)裝置。
10、其中,所述存儲(chǔ)裝置還包括多個(gè)矩陣計(jì)算單元,所述多個(gè)矩陣計(jì)算單元分別與所述處理器和所述內(nèi)存控制器連接。
11、本申請(qǐng)還提供一種存儲(chǔ)方法,所述存儲(chǔ)方法應(yīng)用于上述的存儲(chǔ)裝置,所述存儲(chǔ)方法包括:
12、對(duì)所述第一存儲(chǔ)單元的第一內(nèi)存數(shù)據(jù)和所述第二存儲(chǔ)單元的第二內(nèi)存數(shù)據(jù)進(jìn)行預(yù)測(cè)得到所述服務(wù)器所需的內(nèi)存數(shù)據(jù);
13、響應(yīng)于預(yù)測(cè)到所述第一存儲(chǔ)單元的部分第一內(nèi)存數(shù)據(jù)不是所述服務(wù)器所需的內(nèi)存數(shù)據(jù);則對(duì)所述部分第一內(nèi)存數(shù)據(jù)進(jìn)行壓縮處理,并將壓縮后的第一內(nèi)存數(shù)據(jù)存儲(chǔ)至所述第二存儲(chǔ)單元;
14、響應(yīng)于預(yù)測(cè)到所述服務(wù)器所需的內(nèi)存數(shù)據(jù)存儲(chǔ)在所述第二存儲(chǔ)單元,則從所述第二存儲(chǔ)單元獲取對(duì)應(yīng)的第二內(nèi)存數(shù)據(jù),并將所述第二內(nèi)存數(shù)據(jù)進(jìn)行解壓處理,以將解壓后的第二內(nèi)存數(shù)據(jù)存儲(chǔ)至所述第一存儲(chǔ)單元;
15、響應(yīng)于預(yù)測(cè)到所述服務(wù)器所需的內(nèi)存數(shù)據(jù)存儲(chǔ)在所述第一存儲(chǔ)單元,則從所述第一存儲(chǔ)單元獲取對(duì)應(yīng)的第一內(nèi)存數(shù)據(jù)。
16、本申請(qǐng)的有益效果是:本申請(qǐng)的存儲(chǔ)裝置包括cxl接口、內(nèi)存控制單元、第一存儲(chǔ)單元以及第二存儲(chǔ)單元,所述內(nèi)存控制單元通過(guò)所述cxl接口與所述服務(wù)器連接,所述內(nèi)存控制單元分別與所述第一存儲(chǔ)單元和所述第二存儲(chǔ)單元連接,所述第一存儲(chǔ)單元用于存儲(chǔ)第一內(nèi)存數(shù)據(jù),所述第二存儲(chǔ)單元用于存儲(chǔ)第二內(nèi)存數(shù)據(jù),所述內(nèi)存控制單元用于對(duì)所述第一存儲(chǔ)單元中的部分第一內(nèi)存數(shù)據(jù)進(jìn)行壓縮處理,并將壓縮后的第一內(nèi)存數(shù)據(jù)存儲(chǔ)至所述第二存儲(chǔ)單元。服務(wù)器通過(guò)cxl接口與內(nèi)存控制單元連接,以使服務(wù)器能夠可以訪問(wèn)存儲(chǔ)裝置的第一存儲(chǔ)單元和第二存儲(chǔ)單元,進(jìn)而增加服務(wù)器的內(nèi)存空間,提高服務(wù)器的程序的運(yùn)行速度;另外,通過(guò)內(nèi)存控制單元對(duì)部分第一內(nèi)存數(shù)據(jù)進(jìn)行壓縮處理,并將壓縮后的第一內(nèi)存數(shù)據(jù)存儲(chǔ)至第二存儲(chǔ)單元,存儲(chǔ)裝置能夠?qū)崿F(xiàn)壓縮功能,能夠節(jié)省存儲(chǔ)裝置的內(nèi)存空間,由于存儲(chǔ)裝置的內(nèi)存空間等同于服務(wù)器的內(nèi)存空間,因此進(jìn)一步增加服務(wù)器的內(nèi)存空間,提高服務(wù)器的性能。
1.一種存儲(chǔ)裝置,其特征在于,所述存儲(chǔ)裝置與服務(wù)器連接,所述存儲(chǔ)裝置包括cxl接口、內(nèi)存控制單元、第一存儲(chǔ)單元以及第二存儲(chǔ)單元,所述內(nèi)存控制單元通過(guò)所述cxl接口與所述服務(wù)器連接,所述內(nèi)存控制單元分別與所述第一存儲(chǔ)單元和所述第二存儲(chǔ)單元連接,所述第一存儲(chǔ)單元用于存儲(chǔ)第一內(nèi)存數(shù)據(jù),所述第二存儲(chǔ)單元用于存儲(chǔ)第二內(nèi)存數(shù)據(jù),所述內(nèi)存控制單元用于對(duì)所述第一存儲(chǔ)單元中的部分第一內(nèi)存數(shù)據(jù)進(jìn)行壓縮處理,并將壓縮后的第一內(nèi)存數(shù)據(jù)存儲(chǔ)至所述第二存儲(chǔ)單元。
2.根據(jù)權(quán)利要求1所述的存儲(chǔ)裝置,其特征在于,所述內(nèi)存控制單元用于對(duì)所述第一內(nèi)存數(shù)據(jù)和所述第二內(nèi)存數(shù)據(jù)進(jìn)行預(yù)測(cè)得到所述服務(wù)器所需的內(nèi)存數(shù)據(jù),并且預(yù)測(cè)到所述部分第一內(nèi)存數(shù)據(jù)不是所述服務(wù)器所需的內(nèi)存數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的存儲(chǔ)裝置,其特征在于,所述內(nèi)存控制單元用于預(yù)測(cè)到所述服務(wù)器所需的內(nèi)存數(shù)據(jù)存儲(chǔ)在所述第二存儲(chǔ)單元,從所述第二存儲(chǔ)單元獲取對(duì)應(yīng)的第二內(nèi)存數(shù)據(jù),并將所述第二內(nèi)存數(shù)據(jù)進(jìn)行解壓處理,以將解壓后的第二內(nèi)存數(shù)據(jù)存儲(chǔ)至所述第一存儲(chǔ)單元。
4.根據(jù)權(quán)利要求2所述的存儲(chǔ)裝置,其特征在于,所述內(nèi)存控制單元用于預(yù)測(cè)到所述服務(wù)器所需的內(nèi)存數(shù)據(jù)存儲(chǔ)在所述第一存儲(chǔ)單元,從所述第一存儲(chǔ)單元獲取對(duì)應(yīng)的第一內(nèi)存數(shù)據(jù)。
5.根據(jù)權(quán)利要求1所述的存儲(chǔ)裝置,其特征在于,所述內(nèi)存控制單元通過(guò)預(yù)設(shè)的編碼表對(duì)所述部分第一內(nèi)存數(shù)據(jù)進(jìn)行編碼,以得到所述壓縮后的第一內(nèi)存數(shù)據(jù)。
6.根據(jù)權(quán)利要求5所述的存儲(chǔ)裝置,其特征在于,所述預(yù)設(shè)的編碼表包括第一編碼和第二編碼,所述第一編碼的字符串比所述第二編碼的字符串長(zhǎng),所述部分第一內(nèi)存數(shù)據(jù)包括第一源符號(hào)和第二源符號(hào),所述第一源符號(hào)的出現(xiàn)機(jī)率比所述第二源符號(hào)的出現(xiàn)機(jī)率高,所述內(nèi)存控制單元采用所述第二編碼對(duì)所述第一源符號(hào)進(jìn)行編碼,并采用所述第一編碼對(duì)所述第二源符號(hào)進(jìn)行編碼。
7.根據(jù)權(quán)利要求1-6任一項(xiàng)所述的存儲(chǔ)裝置,其特征在于,所述內(nèi)存控制單元包括內(nèi)存控制器和仲裁器/復(fù)用器電路,所述內(nèi)存控制器通過(guò)所述cxl接口與所述服務(wù)器連接,所述內(nèi)存控制器通過(guò)所述仲裁器/復(fù)用器電路分別與所述第一存儲(chǔ)單元和所述第二存儲(chǔ)單元連接。
8.根據(jù)權(quán)利要求7所述的存儲(chǔ)裝置,其特征在于,所述存儲(chǔ)裝置還包括處理器,所述處理器分別與所述cxl接口和所述內(nèi)存控制器連接,用于配置所述存儲(chǔ)裝置。
9.根據(jù)權(quán)利要求8所述的存儲(chǔ)裝置,其特征在于,所述存儲(chǔ)裝置還包括多個(gè)矩陣計(jì)算單元,所述多個(gè)矩陣計(jì)算單元分別與所述處理器和所述內(nèi)存控制器連接。
10.一種存儲(chǔ)方法,其特征在于,所述存儲(chǔ)方法應(yīng)用于如權(quán)利要求1-9任一項(xiàng)所述的存儲(chǔ)裝置,所述存儲(chǔ)方法包括: