一種存儲(chǔ)設(shè)備、電子設(shè)備及數(shù)據(jù)處理方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù),尤其涉及一種存儲(chǔ)設(shè)備、電子設(shè)備及數(shù)據(jù)處理方法。
【背景技術(shù)】
[0002]目前,存儲(chǔ)設(shè)備,如固態(tài)硬盤(pán)(Solid State Drives,SSD)作為獨(dú)立的產(chǎn)品或電子設(shè)備的重要組成部分已經(jīng)被廣泛的使用;衡量存儲(chǔ)設(shè)備性能的一個(gè)重要參數(shù)就是讀取延遲,因此,如何提升數(shù)據(jù)的讀取延遲也是各存儲(chǔ)設(shè)備廠商努力追求的一個(gè)目標(biāo)。
【發(fā)明內(nèi)容】
[0003]本發(fā)明實(shí)施例提供一種存儲(chǔ)設(shè)備,所述存儲(chǔ)設(shè)備包括:處理器、存儲(chǔ)單元和緩存單元;其中,所述處理器,用于接收第一命令,解析所述第一命令,獲取第一操作地址;檢測(cè)所述第一操作地址的屬性,在所述第一操作地址具有第一屬性,且未收到第二命令時(shí),生成指令;根據(jù)所述指令中的標(biāo)識(shí)對(duì)所述指令進(jìn)行命令隊(duì)列管理;在所述第一時(shí)間響應(yīng)所述指令,在所述存儲(chǔ)單元內(nèi)獲取與所述指令對(duì)應(yīng)的數(shù)據(jù)。
[0004]所述存儲(chǔ)單元,用于存儲(chǔ)數(shù)據(jù);
[0005]所述緩存單元,用于存儲(chǔ)所述獲取的與所述指令對(duì)應(yīng)的數(shù)據(jù);其中,
[0006]所述第二命令與所述第一命令為獲取順序相鄰的兩個(gè)命令,所述第一時(shí)間與所述指令中的標(biāo)識(shí)對(duì)應(yīng),所述第一屬性用于表征所述第一操作地址具有連續(xù)性。
[0007]上述方案中,所述處理器,還用于接收與所述第三命令對(duì)應(yīng)的數(shù)據(jù)的存儲(chǔ)信息,根據(jù)所述存儲(chǔ)信息直接在所述緩存單元內(nèi)獲取與所述第三命令對(duì)應(yīng)的數(shù)據(jù)。
[0008]上述方案中,所述處理器,具體用于設(shè)置執(zhí)行所述指令的優(yōu)先級(jí)。
[0009]上述方案中,所述指令包括預(yù)讀標(biāo)識(shí)和物理地址。
[0010]本發(fā)明實(shí)施例還提供一種電子設(shè)備,所述電子設(shè)備包括:主機(jī)和存儲(chǔ)設(shè)備;其中,
[0011]所述主機(jī),用于向所述存儲(chǔ)設(shè)備發(fā)送第一命令;
[0012]所述存儲(chǔ)設(shè)備,用于接收第一命令,解析所述第一命令,獲取第一操作地址;在所述第一操作地址具有第一屬性,且未接收到第二命令時(shí),生成指令;根據(jù)所述指令中的標(biāo)識(shí)對(duì)所述指令進(jìn)行命令隊(duì)列管理;在所述第一時(shí)間響應(yīng)所述指令,在自身的存儲(chǔ)單元內(nèi)獲取與所述指令對(duì)應(yīng)的數(shù)據(jù);并將所述獲取的與所述指令對(duì)應(yīng)的數(shù)據(jù)存儲(chǔ)至自身的緩存單元;其中,
[0013]所述第二命令與所述第一命令為獲取順序相鄰的兩個(gè)命令,所述第一時(shí)間與所述指令中的標(biāo)識(shí)對(duì)應(yīng),所述第一屬性用于表征所述第一操作地址具有連續(xù)性。
[0014]上述方案中,所述指令包括預(yù)讀標(biāo)識(shí)及物理地址。
[0015]上述方案中,所述主機(jī),還用于接收第三命令,解析所述第三命令,獲取第三操作地址;在所述第三操作地址與所述指令包含的物理地址相同時(shí),所述主機(jī)向所述存儲(chǔ)設(shè)備發(fā)送與所述第三命令對(duì)應(yīng)的數(shù)據(jù)的存儲(chǔ)信息;
[0016]相應(yīng)的,所述存儲(chǔ)設(shè)備根據(jù)所述存儲(chǔ)信息直接在自身獲取與所述第三命令對(duì)應(yīng)的數(shù)據(jù)。
[0017]上述方案中,所述存儲(chǔ)設(shè)備,具體用于設(shè)置執(zhí)行所述指令的優(yōu)先級(jí)。
[0018]本發(fā)明實(shí)施例還提供一種數(shù)據(jù)處理方法,所述方法應(yīng)用于電子設(shè)備,所述電子設(shè)備包括存儲(chǔ)設(shè)備,所述方法包括:
[0019]存儲(chǔ)設(shè)備接收第一命令,解析所述第一命令,獲取第一操作地址;
[0020]根據(jù)預(yù)先存儲(chǔ)的策略判斷所述第一操作地址的屬性;
[0021]在判斷結(jié)果為所述第一操作地址具有第一屬性,且未接收到第二命令時(shí),生成指令;所述第二命令與所述第一命令為獲取順序相鄰的兩個(gè)命令;所述第一屬性用于表征所述第一操作地址具有連續(xù)性;
[0022]根據(jù)所述指令中的標(biāo)識(shí)對(duì)所述指令進(jìn)行命令隊(duì)列管理;
[0023]在所述第一時(shí)間響應(yīng)所述指令,在自身的存儲(chǔ)單元內(nèi)獲取與所述指令對(duì)應(yīng)的數(shù)據(jù),并將所述獲取的與所述指令對(duì)應(yīng)的數(shù)據(jù)存儲(chǔ)至自身的緩存單元;所述第一時(shí)間與所述指令中的標(biāo)識(shí)對(duì)應(yīng)。
[0024]上述方案中,所述指令包括預(yù)讀標(biāo)識(shí)及所述第二命令的物理地址。
[0025]上述方案中,所述電子設(shè)備還包括主機(jī),所述主機(jī)接收第三命令,解析所述第三命令,獲取第三操作地址;在所述第三操作地址與所述指令包含的物理地址相同時(shí),所述主機(jī)向所述存儲(chǔ)設(shè)備發(fā)送與所述第三命令對(duì)應(yīng)的數(shù)據(jù)的存儲(chǔ)信息;所述存儲(chǔ)設(shè)備根據(jù)所述存儲(chǔ)信息直接在自身的緩存單元內(nèi)獲取與所述第三命令對(duì)應(yīng)的數(shù)據(jù)。
[0026]上述方案中,所述對(duì)所述指令進(jìn)行命令隊(duì)列管理,包括:設(shè)置執(zhí)行所述指令的優(yōu)先級(jí)。
[0027]上述方案中,所述指令中的標(biāo)識(shí)用于表示所述指令的執(zhí)行優(yōu)先級(jí)。
[0028]上述方案中,所述指令的執(zhí)行優(yōu)先級(jí)可由低優(yōu)先級(jí)調(diào)整為高優(yōu)先級(jí),或由高優(yōu)先級(jí)調(diào)整為低優(yōu)先級(jí)。
[0029]本發(fā)明實(shí)施例中,所述存儲(chǔ)設(shè)備中的緩存單元能夠存儲(chǔ)與處理器接收到的指令對(duì)應(yīng)的數(shù)據(jù),在主機(jī)接收到與所述指令地址相同的讀命令時(shí),能夠直接從緩存單元讀取數(shù)據(jù),從而降低了數(shù)據(jù)的讀取延遲,提高了存儲(chǔ)設(shè)備的性能。
【附圖說(shuō)明】
[0030]圖1為本發(fā)明實(shí)施例存儲(chǔ)設(shè)備的組成結(jié)構(gòu)示意圖;
[0031]圖2為本發(fā)明實(shí)施例電子設(shè)備的組成結(jié)構(gòu)示意圖;
[0032]圖3為本發(fā)明實(shí)施例數(shù)據(jù)處理方法的基本處理流程示意圖;
[0033]圖4為本發(fā)明實(shí)施例一數(shù)據(jù)處理方法的詳細(xì)處理流程示意圖;
[0034]圖5為本發(fā)明實(shí)施例二數(shù)據(jù)處理方法的詳細(xì)處理流程示意圖;
[0035]圖6為本發(fā)明實(shí)施例三數(shù)據(jù)處理方法的詳細(xì)處理流程示意圖。
【具體實(shí)施方式】
[0036]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明作進(jìn)一步詳細(xì)說(shuō)明。
[0037]存儲(chǔ)設(shè)備實(shí)施例
[0038]本發(fā)明實(shí)施例所提供的存儲(chǔ)設(shè)備I的組成結(jié)構(gòu),如圖1所示,包括:處理器11、存儲(chǔ)單元12和緩存單元13;其中,
[0039]所述處理器11,用于接收第一命令,解析所述第一命令,獲取第一操作地址;根據(jù)預(yù)先存儲(chǔ)的策略判斷所述第一操作地址的屬性,在判斷結(jié)果為所述第一操作地址具有第一屬性,且未收到第二命令時(shí),生成指令;根據(jù)所述指令中的標(biāo)識(shí)對(duì)所述指令進(jìn)行命令隊(duì)列管理;在所述第一時(shí)間響應(yīng)所述指令,在所述存儲(chǔ)單元內(nèi)獲取與所述指令對(duì)應(yīng)的數(shù)據(jù);
[0040]這里,所述第一命令為讀命令;所述第一操作地址為讀操作地址,也是指邏輯地址;所述第一屬性為所述第一操作地址具有連續(xù)性,在判斷所述第一操作地址的屬性為具有連續(xù)性時(shí),即可啟動(dòng)預(yù)讀機(jī)制;所述預(yù)先存儲(chǔ)的策略可根據(jù)實(shí)際應(yīng)用靈活設(shè)置,如:兩次讀操作地址連續(xù)時(shí),判斷所述第一操作地址的屬性為具有連續(xù)性,或三次讀操作地址連續(xù)時(shí),判斷所述第一操作地址的屬性為具有連續(xù)性;所述第二命令為與第一命令獲取順序相鄰的命令;所述指令為預(yù)讀指令,包括:預(yù)讀標(biāo)識(shí)和物理地址;所述第一時(shí)間與所述指令中的標(biāo)識(shí)對(duì)應(yīng),所述第一時(shí)間可以為所述處理器11空閑的時(shí)間,或所述處理器11不響應(yīng)任何指令的時(shí)間。
[0041]所述存儲(chǔ)單元12,用于存儲(chǔ)數(shù)據(jù)。
[0042]所述緩存單元13,用于存儲(chǔ)所述獲取的與所述指令對(duì)應(yīng)的數(shù)據(jù)。
[0043]本發(fā)明實(shí)施例中,所述處理器11,還用于接收與第三命令對(duì)應(yīng)的數(shù)據(jù)的存儲(chǔ)信息,根據(jù)所述存儲(chǔ)信息直接在所述緩存單元13內(nèi)獲取與所述第三命令對(duì)應(yīng)的數(shù)據(jù);
[0044]這里,所述第三命令是指與所述指令包括的物理地址相同的讀命令。
[0045]本發(fā)明實(shí)施例中,所述處理器11,還用于設(shè)置執(zhí)行所述指令的優(yōu)先級(jí);
[0046]這里,所述優(yōu)先級(jí)至少包括低優(yōu)先級(jí)和高優(yōu)先級(jí)兩種,也可根據(jù)實(shí)際應(yīng)用,設(shè)置多個(gè)級(jí)別的優(yōu)先級(jí);所述處理器11根據(jù)所述指令