本技術(shù)涉及存儲,尤其涉及一種存儲訪問方法、裝置及系統(tǒng)。
背景技術(shù):
1、通用閃存存儲(univeral?flash?storage,ufs)系統(tǒng)是一種針對高數(shù)據(jù)傳輸速度而定義的閃存存儲系統(tǒng)。ufs系統(tǒng)包括ufs主機(jī)和ufs裝置,ufs主機(jī)可以向ufs裝置下發(fā)請求消息,該請求消息可以用于請求讀取閃存存儲器中存儲的數(shù)據(jù),或者請求消息可以用于請求向閃存存儲器中寫入數(shù)據(jù)。ufs裝置可以對請求消息進(jìn)行解析,并根據(jù)解析后的請求消息對閃存存儲器執(zhí)行讀取操作或?qū)懭氩僮鳌?/p>
2、當(dāng)存在多個并行發(fā)送的請求消息時,ufs主機(jī)采用串行發(fā)送請求消息的方式,依次向ufs裝置派發(fā)請求消息,且ufs主機(jī)在向ufs裝置派發(fā)一個請求消息時,會對ufs裝置進(jìn)行加鎖處理以完成臨界區(qū)保護(hù),則ufs主機(jī)在向ufs裝置發(fā)送多個請求消息時,多個請求消息需要排隊等待ufs主機(jī)串行處理。但是ufs裝置的響應(yīng)能力較強(qiáng),ufs裝置處理請求消息的速度要快于ufs主機(jī)下發(fā)請求消息的速度,進(jìn)而導(dǎo)致ufs裝置存在較大的算力冗余,長時間處于沒有請求消息可以處理的空閑狀態(tài)。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)提供一種存儲訪問方法、裝置及系統(tǒng),用于提升ufs系統(tǒng)的存儲訪問效率。
2、第一方面,本技術(shù)提供一種存儲訪問方法,該方法可以應(yīng)用于ufs主機(jī),該方法包括:接收應(yīng)用并行發(fā)送的多個命令;所述多個命令用于請求訪問閃存存儲器;向ufs裝置發(fā)送第一請求消息,所述第一請求消息用于請求所述ufs裝置執(zhí)行所述多個命令中的第一命令;所述第一請求消息包括第二請求消息對應(yīng)的存儲空間地址,所述第二請求消息用于請求所述ufs裝置執(zhí)行第二命令,所述第二命令為所述多個命令中除所述第一命令之外的命令。
3、在該方法中,ufs主機(jī)向ufs裝置發(fā)送的第一請求消息可以用于請求ufs裝置執(zhí)行第一命令,同時第一請求消息還可以攜帶第二請求消息對應(yīng)的存儲空間地址,從而ufs主機(jī)可以通過第一請求消息指示ufs裝置執(zhí)行第一命令,同時ufs裝置還可以從第一請求消息中獲取第二請求消息對應(yīng)的存儲空間地址,以在ufs裝置空閑時對第二請求消息進(jìn)行預(yù)處理,充分利用ufs裝置的算力,提升ufs系統(tǒng)的存儲訪問速度。
4、一種可能的設(shè)計中,在所述向ufs裝置發(fā)送第一請求消息之前,所述方法還包括:獲取所述第二請求消息對應(yīng)的存儲空間地址;根據(jù)所述第一命令和所述第二請求消息對應(yīng)的存儲空間地址生成所述第一請求消息。
5、通過該設(shè)計,ufs主機(jī)可以在第一請求消息中攜帶第二請求消息對應(yīng)的存儲空間地址,以使ufs裝置可以根據(jù)第二請求消息對應(yīng)的存儲空間地址提前對第二請求消息進(jìn)行預(yù)處理,以提升ufs系統(tǒng)的存儲訪問速度。
6、一種可能的設(shè)計中,所述第一請求消息還包括所述第二請求消息對應(yīng)的存儲空間大小。
7、通過該設(shè)計,第一請求消息中還可以攜帶第二請求消息對應(yīng)的存儲空間大小,進(jìn)一步提升ufs主機(jī)在一次消息傳輸中可以攜帶的信息量,以便ufs裝置更加準(zhǔn)確地對第二請求消息進(jìn)行預(yù)處理。
8、一種可能的設(shè)計中,所述第一命令為所述多個命令中執(zhí)行順序?yàn)槭孜坏拿睢?/p>
9、通過該設(shè)計,ufs主機(jī)在接收到并行發(fā)送的多個命令時,可以在執(zhí)行順序?yàn)槭孜坏牡谝幻顚?yīng)的第一請求消息中攜帶其它請求消息對應(yīng)的存儲空間地址,ufs裝置在接收到第一請求消息后,空閑時即可以對第二請求消息進(jìn)行預(yù)處理,進(jìn)而提升ufs系統(tǒng)的存儲訪問效率。
10、一種可能的設(shè)計中,所述第一命令為直接訪問型io命令。
11、一種可能的設(shè)計中,所述多個命令可以來自應(yīng)用發(fā)起的多個進(jìn)程,所述多個命令與所述多個進(jìn)程一一對應(yīng);或者所述多個命令可以來自應(yīng)用發(fā)送的多個進(jìn)程,每個進(jìn)程包括所述多個命令中的至少一個命令。
12、通過該設(shè)計,本技術(shù)提供的存儲訪問方法可以適用于單并發(fā)場景以及多并發(fā)場景,靈活提高各種并發(fā)場景下的存儲訪問效率。
13、第二方面,本技術(shù)提供一種存儲訪問方法,該方法可以應(yīng)用于通用閃存存儲ufs裝置,所述方法包括:接收ufs主機(jī)發(fā)送的第一請求消息,所述第一請求消息用于請求所述ufs裝置執(zhí)行第一命令;所述第一請求消息包括第二請求消息對應(yīng)的存儲空間地址,所述第二請求消息用于請求所述ufs裝置執(zhí)行第二命令;執(zhí)行所述第一命令;當(dāng)所述ufs裝置空閑時,根據(jù)所述第二請求消息對應(yīng)的存儲空間地址對所述第二請求消息進(jìn)行預(yù)處理。
14、在該方法中,ufs裝置可以提前獲取第二請求消息對應(yīng)的存儲空間地址,從而在ufs裝置在執(zhí)行完第一命令之后,在后續(xù)空閑時可以提前對第二請求消息進(jìn)行預(yù)處理,充分利用ufs裝置的算力,提升ufs系統(tǒng)的存儲訪問速度。
15、一種可能的設(shè)計中,所述預(yù)處理可以包括但不限于為表項加載和/或io預(yù)讀處理。通過該設(shè)計,ufs裝置可以根據(jù)第二請求消息的存儲地址對第二請求消息進(jìn)行多種預(yù)處理,從而節(jié)省ufs裝置在接收到第二請求消息后的處理時間,提升存儲訪問效率。
16、第三方面,本技術(shù)還提供一種存儲訪問裝置,該裝置包括處理單元和通信單元;所述通信單元,用于收發(fā)數(shù)據(jù);所述處理單元,用于通過所述通信單元接收應(yīng)用多個進(jìn)程并行發(fā)送的多個命令,所述多個命令用于請求訪問閃存存儲器;通過所述通信單元向ufs裝置發(fā)送第一請求消息,所述第一請求消息用于請求所述ufs裝置執(zhí)行所述多個命令中的第一命令;所述第一請求消息包括第二請求消息對應(yīng)的存儲空間地址,所述第二請求消息用于請求所述ufs裝置執(zhí)行第二命令,所述第二命令為所述多個命令中除第一命令之外的命令。
17、一種可能的設(shè)計中,所述處理單元還用于:在通過所述通信單元所述向ufs裝置發(fā)送第一請求消息之前,獲取所述第二請求消息對應(yīng)的存儲空間地址;根據(jù)所述第一命令和所述第二請求消息對應(yīng)的存儲空間地址生成所述第一請求消息。
18、第四方面,本技術(shù)還提供一種存儲訪問裝置,該裝置包括處理單元和通信單元;所述通信單元,用于收發(fā)數(shù)據(jù);所述處理單元,用于通過所述通信單元接收ufs主機(jī)發(fā)送的第一請求消息,所述第一請求消息用于請求所述ufs裝置執(zhí)行第一命令;所述第一請求消息包括第二請求消息對應(yīng)的存儲空間地址,所述第二請求消息用于請求所述ufs裝置執(zhí)行第二命令;當(dāng)所述ufs裝置空閑時,根據(jù)所述第二請求消息對應(yīng)的存儲空間地址對所述第二請求消息進(jìn)行預(yù)處理。
19、第五方面,本技術(shù)還提供一種存儲訪問系統(tǒng),所述系統(tǒng)包括ufs主機(jī)、ufs裝置以及通信接口,所述ufs主機(jī)通過所述通信接口與ufs裝置連接;
20、所述ufs主機(jī),用于接收應(yīng)用并行發(fā)送的多個命令;所述多個命令用于請求訪問閃存存儲器;向ufs裝置發(fā)送第一請求消息,所述第一請求消息用于請求所述ufs裝置執(zhí)行所述多個命令中的第一命令;所述第一請求消息包括第二請求消息對應(yīng)的存儲空間地址,所述第二請求消息用于請求所述ufs裝置執(zhí)行第二命令,所述第二命令為所述多個命令中除第一命令之外的命令。
21、所述ufs裝置,用于接收所述ufs主機(jī)發(fā)送的所述第一請求消息;當(dāng)所述ufs裝置空閑時,根據(jù)所述第二請求消息對應(yīng)的存儲空間地址對所述第二請求消息進(jìn)行預(yù)處理。
22、一種可能的設(shè)計中,所述ufs主機(jī)還用于:在向所述ufs裝置發(fā)送第一請求消息之前,獲取所述第二請求消息對應(yīng)的存儲空間地址;根據(jù)所述第一命令和所述第二請求消息對應(yīng)的存儲空間地址生成所述第一請求消息。
23、第六方面,本技術(shù)提供一種芯片,包括處理器;所述處理器用于與存儲計算機(jī)程序的存儲器耦合,用于執(zhí)行所述存儲器中存儲的程序,實(shí)現(xiàn)上述第一方面及其任一可能的設(shè)計所描述的方法、或?qū)崿F(xiàn)上述第二方面及其任一可能的設(shè)計所描述的方法。
24、第七方面,本技術(shù)提供一種電子設(shè)備,所述電子設(shè)備包含上述第六方面所述的芯片。
25、第八方面,本技術(shù)提供一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)存儲有計算機(jī)程序,當(dāng)所述計算機(jī)程序在計算機(jī)上運(yùn)行時,使得所述計算機(jī)執(zhí)行上述第一方面及其任一可能的設(shè)計所描述的方法、或執(zhí)行上述第二方面及其任一可能的設(shè)計所描述的方法。
26、第九方面,本技術(shù)提供一種計算機(jī)程序產(chǎn)品,所述計算機(jī)程序產(chǎn)品包括計算機(jī)程序或指令,當(dāng)所述計算機(jī)程序或指令在計算機(jī)上運(yùn)行時,使得所述計算機(jī)執(zhí)行上述第一方面及其任一可能的設(shè)計所描述的方法、或執(zhí)行上述第二方面及其任一可能的設(shè)計所描述的方法。
27、上述第三方面到第九方面的有益效果,請參見上述第一方面或第二方面的有益效果的描述,這里不再重復(fù)贅述。