亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種數(shù)據(jù)處理方法、電子設(shè)備的制造方法

文檔序號:9910952閱讀:505來源:國知局
一種數(shù)據(jù)處理方法、電子設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及數(shù)據(jù)處理技術(shù),尤其涉及一種數(shù)據(jù)處理方法、電子設(shè)備。
【背景技術(shù)】
[0002]目前,固態(tài)硬盤(SSD,SolidState Drives)越來越多的出現(xiàn)在消費(fèi)領(lǐng)域,因而SSD控制器也成為當(dāng)前系統(tǒng)級芯片(SoC,System on Chip)的設(shè)計熱點(diǎn),尤其是支持非易失性內(nèi)存(NVMe,Non-VolatiIe Memory Express)協(xié)議的SSD控制器。
[0003]另外,在目前主流的SSD控制器中,4K映射(4Kmapping)技術(shù)正在成為主流。因?yàn)?K映射的特點(diǎn),導(dǎo)致每一個Nand Flash物理頁(page)中,可能存放著對應(yīng)多個邏輯塊地址(LBA,Logical Block Address)的數(shù)據(jù)。
[0004]這時就會出現(xiàn),如果在Nand Flash中寫入數(shù)據(jù)時,地址是分散的,即一個物理頁中的多個LBA是不連續(xù)的,那么SSD控制器在讀出數(shù)據(jù)時,就可能出現(xiàn)多次讀同一個物理頁來回應(yīng)不同的NVMe讀命令,效率較低。

【發(fā)明內(nèi)容】

[0005]為解決上述技術(shù)問題,本發(fā)明實(shí)施例提供了一種數(shù)據(jù)處理方法、電子設(shè)備。
[0006]本發(fā)明實(shí)施例提供的數(shù)據(jù)處理方法,包括:
[0007]接收用于讀取數(shù)據(jù)的第一命令,所述第一命令包括一組以上第一信息和第二信息;
[0008]對所述第一命令進(jìn)行解析,得到所述一組以上第一信息和第二信息,其中,所述第一信息用于表明第二命令的標(biāo)識,所述第二信息用于表明LBA的偏移量;
[0009]根據(jù)所述一組以上第一信息和第二信息,從物理頁中讀取至少一個LBA對應(yīng)的數(shù)據(jù);
[0010]發(fā)送所述LBA對應(yīng)的數(shù)據(jù)以及所述第一信息和第二信息。
[0011 ]本發(fā)明實(shí)施例中,所述方法還包括:
[0012]接收主機(jī)發(fā)送的一條以上第二命令;
[0013]對各個第二命令進(jìn)行解析,得到所述各個第二命令分別對應(yīng)的標(biāo)識以及LBA的偏移量;
[0014]將所述第二命令對應(yīng)的標(biāo)識作為第一信息,以及將所述第二命令對應(yīng)的LBA的偏移量作為第二信息,寫入至所述第一命令中,形成所述第一命令。
[0015]本發(fā)明實(shí)施例中,所述方法還包括:
[0016]接收主機(jī)發(fā)送的一條以上第三命令并存儲,所述第三命令用于寫入數(shù)據(jù);
[0017]從所述一條以上第三命令中,選擇出符合預(yù)訂條件的第三命令;
[0018]將所述符合預(yù)定條件的第三命令所對應(yīng)的數(shù)據(jù)寫入至同一物理頁中。
[0019]本發(fā)明實(shí)施例中,所述從所述一條以上第三命令中,選擇出符合預(yù)訂條件的第三命令,包括:
[0020]對所述一條以上第三命令分別進(jìn)行解析,確定出各條第三命令的LBA;
[0021]根據(jù)所述各條第三命令的LBA,選擇出LBA之間的距離小于等于預(yù)設(shè)閾值的一個以上 LBA;
[0022]所選擇出的一個以上LBA所對應(yīng)的第三命令符合所述預(yù)訂條件。
[0023]本發(fā)明實(shí)施例中,所述方法還包括:
[0024]當(dāng)存儲的所述一條以上第三命令中不存在符合預(yù)訂條件的第三命令時,判斷所存儲的第三命令的數(shù)目是否達(dá)到門限值;
[0025]當(dāng)所存儲的第三命令的數(shù)目未達(dá)到所述門限值時,繼續(xù)接收主機(jī)發(fā)送的所述第三命令并存儲;
[0026]當(dāng)所存儲的第三命令的數(shù)目達(dá)到所述門限值時,從所述一條以上第三命令中,選擇出LBA之間的距離最小的第三命令;
[0027]將所選擇出的第三命令所對應(yīng)的數(shù)據(jù)寫入至同一物理頁中。
[0028]本發(fā)明實(shí)施例提供的電子設(shè)備,包括:存儲器,所述存儲器按照物理頁存儲數(shù)據(jù);所述電子設(shè)備還包括:
[0029]控制器,用于接收用于讀取數(shù)據(jù)的第一命令,所述第一命令包括一組以上第一信息和第二信息;對所述第一命令進(jìn)行解析,得到所述一組以上第一信息和第二信息,其中,所述第一信息用于表明第二命令的標(biāo)識,所述第二信息用于表明LBA的偏移量;根據(jù)所述一組以上第一信息和第二信息,從物理頁中讀取至少一個LBA對應(yīng)的數(shù)據(jù);發(fā)送所述LBA對應(yīng)的數(shù)據(jù)以及所述第一信息和第二信息。
[0030]本發(fā)明實(shí)施例中,所述電子設(shè)備還包括:
[0031]處理器,用于接收主機(jī)發(fā)送的一條以上第二命令;對各個第二命令進(jìn)行解析,得到所述各個第二命令分別對應(yīng)的標(biāo)識以及LBA的偏移量;將所述第二命令對應(yīng)的標(biāo)識作為第一信息,以及將所述第二命令對應(yīng)的LBA的偏移量作為第二信息,寫入至所述第一命令中,形成所述第一命令。
[0032]本發(fā)明實(shí)施例中,所述處理器,還用于接收主機(jī)發(fā)送的一條以上第三命令并存儲,所述第三命令用于寫入數(shù)據(jù);從所述一條以上第三命令中,選擇出符合預(yù)訂條件的第三命令;
[0033]所述控制器,還用于將所述符合預(yù)定條件的第三命令所對應(yīng)的數(shù)據(jù)寫入至同一物理頁中。
[0034]本發(fā)明實(shí)施例中,所述處理器,還用于對所述一條以上第三命令分別進(jìn)行解析,確定出各條第三命令的LBA;根據(jù)所述各條第三命令的LBA,選擇出LBA之間的距離小于等于預(yù)設(shè)閾值的一個以上LBA;所選擇出的一個以上LBA所對應(yīng)的第三命令符合所述預(yù)訂條件。
[0035]本發(fā)明實(shí)施例中,所述處理器,還用于當(dāng)存儲的所述一條以上第三命令中不存在符合預(yù)訂條件的第三命令時,判斷所存儲的第三命令的數(shù)目是否達(dá)到門限值;當(dāng)所存儲的第三命令的數(shù)目未達(dá)到所述門限值時,繼續(xù)接收主機(jī)發(fā)送的所述第三命令并存儲;當(dāng)所存儲的第三命令的數(shù)目達(dá)到所述門限值時,從所述一條以上第三命令中,選擇出LBA之間的距離最小的第三命令;
[0036]所述控制器,還用于將所選擇出的第三命令所對應(yīng)的數(shù)據(jù)寫入至同一物理頁中。
[0037]本發(fā)明實(shí)施例的技術(shù)方案中,處理器,例如中央處理器(CPU,Central ProcessingUnit)接收來自主機(jī)(Host)發(fā)送的用于讀取數(shù)據(jù)的第二命令,第二命令為NVMe讀命令;處理器對多條第二命令所請求的LBA進(jìn)行統(tǒng)一調(diào)度,根據(jù)Nand Flash中物理頁中存放的LBA具體數(shù)值,確定出各個第二命令所請求的LBA的偏移量。然后,將各個第二命令分別對應(yīng)的標(biāo)識作為第一信息,以及將所述第二命令對應(yīng)的LBA的偏移量作為第二信息,寫入至第一命令中,形成所述第一命令,第一命令為Nand Flash讀命令。這樣,第一命令包括了一組以上第一信息和第二信息。處理器將第一命令發(fā)送至控制器,例如Flash控制器,控制器接收到第一命令后,執(zhí)行第一命令,具體地,對所述第一命令進(jìn)行解析,得到所述一組以上第一信息和第二信息;根據(jù)所述一組以上第一信息和第二信息,從物理頁中讀取至少一個LBA對應(yīng)的數(shù)據(jù);然后將至少一個LBA對應(yīng)的數(shù)據(jù)以及對應(yīng)的第一信息和第二信息一起發(fā)送給處理器,進(jìn)而再發(fā)送給主機(jī)??梢?,本發(fā)明實(shí)施例的技術(shù)方案實(shí)現(xiàn)了通過一條Nand Flash讀命令應(yīng)答多條NVMe讀命令,避免了反復(fù)讀取一個物理頁造成的效率低下的問題,明顯提高了 NandFlash的訪問效率。
[0038]此外,本發(fā)明實(shí)施例的技術(shù)方案中,處理器接收到主機(jī)發(fā)送的用于寫入數(shù)據(jù)的一條以上第三命令時,存儲所述第三命令;從所述一條以上第三命令中,選擇出符合預(yù)訂條件的第三命令,具體地,選擇出LBA之間的距離小于等于預(yù)設(shè)閾值的第三命令,然后,將所選擇出的一條以上第三命令所對應(yīng)的數(shù)據(jù)寫入至同一物理頁中。這樣,在不明顯犧牲隨機(jī)寫入性能的情況下,限制了寫入同一物理頁的LBA之間的距離,從而當(dāng)后續(xù)讀取數(shù)據(jù)時,如果當(dāng)前緩存的第二命令包含有同一物理頁的LBA,就可以用一條第一命令來完成數(shù)據(jù)的讀取,進(jìn)一步提高了Nand Flash的訪問效率。
【附圖說明】
[0039]圖1為本發(fā)明實(shí)施例一的數(shù)據(jù)處理方法的流程示意圖;
[0040]圖2為本發(fā)明實(shí)施例二的數(shù)據(jù)處理方法的流程示意圖;
[0041 ]圖3為本發(fā)明實(shí)施例的四組NVMe讀命令的信息對應(yīng)圖;
[0042]圖4為本發(fā)明實(shí)施例三的數(shù)據(jù)處理方法的流程示意圖;
[0043]圖5為本發(fā)明實(shí)施例四的數(shù)據(jù)處理方法的流程示意圖;
[0044]圖6為本發(fā)明實(shí)施例五的數(shù)據(jù)處理方法的流程示意圖;
[0045]圖7為本發(fā)明實(shí)施例一的電子設(shè)備的結(jié)構(gòu)組成示意圖;
[0046]圖8為本發(fā)明實(shí)施例二至實(shí)施例五的電子設(shè)備的結(jié)構(gòu)組成示意圖。
【具體實(shí)施方式】
[0047]為了能夠更加詳盡地了解本發(fā)明實(shí)施例的特點(diǎn)與技術(shù)內(nèi)容,下面結(jié)合附圖對本發(fā)明實(shí)施例的實(shí)現(xiàn)進(jìn)行詳細(xì)闡述,所附附圖僅供參考說明之用,并非用來限定本發(fā)明實(shí)施例。
[0048]圖1為本發(fā)明實(shí)施例一的數(shù)據(jù)處理方法的流程示意圖,本示例中的數(shù)據(jù)處理方法應(yīng)用于電子設(shè)備,如圖1所示,所述數(shù)據(jù)處理方法包括以下步驟:
[0049]步驟101:接收用于讀取數(shù)據(jù)的第一命令,所述第一命令包括一組以上第一信息和第二信息。
[0050]本發(fā)明實(shí)施例中,電子設(shè)備可以是筆記本、主機(jī)、一體機(jī)等。電子設(shè)備具有處理器,例如CPU。電子設(shè)備還具有固態(tài)硬盤,固態(tài)硬盤包括:存儲器和控制器。其中,存儲器用于存儲數(shù)據(jù),例如Nand Flash。一般,Nand Flash按照物理頁存儲數(shù)據(jù)??刂破饔糜诳刂茢?shù)據(jù)的讀入和寫出,例如Flash控制器。
[0051 ]在Flash控制器中,由于4K映射的特點(diǎn),Nand Flash的物理頁大于映射的大小,基于此,每一個物理頁中可能存放著對應(yīng)多個LBA的數(shù)據(jù)。由于寫入數(shù)據(jù)的隨機(jī)性,寫入一個物理頁中的多個LBA是不連續(xù)的。在讀數(shù)據(jù)時,目前的解決方法是:使用多個Nand Flash命令,多次從同一個物理頁中讀出數(shù)據(jù),每次回數(shù)據(jù)給一個NVMe命令。例如,一個16K的物理頁中,存放的4個LBA是不連續(xù)的,需要4條Nand Flash命令,4次從同一個物理頁中讀出數(shù)據(jù),效率低。
[0052]本發(fā)明實(shí)施例中,處理器,例如CTU接收來自主機(jī)發(fā)送的
當(dāng)前第1頁1 2 3 4 5 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1