一種映射表的形成及加載方法、電子設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及電子技術(shù),尤其涉及一種映射表的形成及加載方法、電子設(shè)備。
【背景技術(shù)】
[0002]固態(tài)存儲(chǔ)器(SSD,Solid-State Memory)的性能明顯高于傳統(tǒng)的磁盤存儲(chǔ)器,近幾年來(lái),由于固態(tài)存儲(chǔ)器成本的下降,越來(lái)越多的使用在個(gè)人計(jì)算機(jī)(PC)和筆記本中。
[0003]固態(tài)存儲(chǔ)器本身的存儲(chǔ)介質(zhì)一般是NAND閃存(flash),而元數(shù)據(jù)主要包括硬盤記錄的基本信息,例如邏輯-物理映射表、其他硬盤管理信息等;固態(tài)存儲(chǔ)器上電后,首先從NAND閃存中加載元數(shù)據(jù)到RAM ;在工作過(guò)程中,對(duì)硬盤的數(shù)據(jù)讀寫操作會(huì)同時(shí)涉及到元數(shù)據(jù)(特別是映射表)的改變,鑒于速度要求,這些改變直接在RAM上操作的,因此需要適時(shí)的將這些元數(shù)據(jù)更新到NAND flash,否則,一旦出現(xiàn)異常斷電,元數(shù)據(jù)與數(shù)據(jù)不一致,可能導(dǎo)致SSD重新上電后無(wú)法正常工作。
[0004]現(xiàn)有技術(shù)中,固態(tài)硬盤上電時(shí)需要加載元數(shù)據(jù)(metadata)信息。如果采用頁(yè)映射的方式,元數(shù)據(jù)中的映射表信息會(huì)非常龐大;如果全部加載的話,開(kāi)機(jī)硬盤響應(yīng)的時(shí)間會(huì)比較長(zhǎng)。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明實(shí)施例為解決現(xiàn)有技術(shù)中存在的至少一個(gè)問(wèn)題而提供一種映射表的形成及加載方法、電子設(shè)備,能夠縮短加載元數(shù)據(jù)的時(shí)間,從而提升用戶體驗(yàn)。
[0006]本發(fā)明實(shí)施例的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0007]第一方面,本發(fā)明實(shí)施例提供一種映射表的形成方法,所述映射表包括一級(jí)映射表和二級(jí)映射表,所述方法包括:
[0008]采用頁(yè)級(jí)映射將來(lái)自主機(jī)上的邏輯頁(yè)映射為固態(tài)存儲(chǔ)器上NAND的物理頁(yè),形成二級(jí)映射表;
[0009]獲取第一物理地址,所述第一物理地址為所述二級(jí)映射表中第一區(qū)塊的物理存儲(chǔ)地址;
[0010]將所述第一物理地址和對(duì)應(yīng)的第一標(biāo)識(shí)信息在一級(jí)映射表中的映射單元中形成映射關(guān)系,其中所述第一標(biāo)識(shí)信息為第一區(qū)塊的標(biāo)識(shí)信息;
[0011]其中,所述一級(jí)映射表中的每一個(gè)映射單元包含Q位的標(biāo)志位,所述標(biāo)志位用于表明區(qū)塊的歷史訪問(wèn)信息。
[0012]在本發(fā)明的一種實(shí)施例中,所述Q = 1。
[0013]在本發(fā)明的一種實(shí)施例中,所述方法還包括:
[0014]當(dāng)存儲(chǔ)有元數(shù)據(jù)的第一區(qū)塊被讀寫過(guò),獲取第一標(biāo)識(shí)信息,所述第一標(biāo)識(shí)信息為所述第一區(qū)塊的標(biāo)識(shí)信息;
[0015]根據(jù)所述第一標(biāo)識(shí)信息查詢所述一級(jí)映射表,得到第一映射單元;
[0016]更新所述第一映射單元上的標(biāo)志位。
[0017]第二方面,本發(fā)明實(shí)施例提供一種映射表的加載方法,所述方法包括:
[0018]讀取所述一級(jí)映射表中第一映射單元上的標(biāo)志位,所述標(biāo)志位用于表明第一區(qū)塊是否上一次被訪問(wèn)過(guò),所述第一區(qū)塊為所述第一映射單元對(duì)應(yīng)的區(qū)塊;
[0019]根據(jù)所述標(biāo)志位的信息判斷該第一區(qū)塊上一次是否被訪問(wèn)過(guò);
[0020]當(dāng)所述標(biāo)志位信息表明所述第一區(qū)塊上一次被訪問(wèn)過(guò),根據(jù)所述第一映射單元的第一標(biāo)識(shí)信息獲取對(duì)應(yīng)的二級(jí)映射表中第一區(qū)塊上的元數(shù)據(jù)信息;
[0021]將所述第一區(qū)塊上的元數(shù)據(jù)信息從固態(tài)存儲(chǔ)器的NAND上讀到所述固態(tài)存儲(chǔ)器的隨機(jī)存儲(chǔ)器上。
[0022]在本發(fā)明的一種實(shí)施例中,所述方法還包括:
[0023]在所述固態(tài)存儲(chǔ)器上電后,將所述一級(jí)映射表從所述固態(tài)存儲(chǔ)器的NAND上讀到所述固態(tài)存儲(chǔ)器的隨機(jī)存儲(chǔ)器上。
[0024]在本發(fā)明的一種實(shí)施例中,所述方法還包括:
[0025]當(dāng)所述標(biāo)志位信息表明第一區(qū)塊上一次未被訪問(wèn)過(guò),不將所述第一區(qū)塊上的元數(shù)據(jù)信息從固態(tài)存儲(chǔ)器的NAND上讀到所述固態(tài)存儲(chǔ)器的隨機(jī)存儲(chǔ)器上。
[0026]第三方面,本發(fā)明實(shí)施例提供一種電子設(shè)備,所述映射表包括一級(jí)映射表和二級(jí)映射表,所述電子設(shè)備包括第一形成單元、第一獲取單元和第二形成單元,其中:
[0027]所述第一形成單元,用于采用頁(yè)級(jí)映射將來(lái)自主機(jī)上的邏輯頁(yè)映射為固態(tài)存儲(chǔ)器上NAND的物理頁(yè),形成二級(jí)映射表;
[0028]所述第一獲取單元,用于獲取第一物理地址,所述第一物理地址為所述二級(jí)映射表中第一區(qū)塊的物理存儲(chǔ)地址;
[0029]所述第二形成單元,用于將所述第一物理地址和對(duì)應(yīng)的第一標(biāo)識(shí)信息在一級(jí)映射表中的映射單元中形成映射關(guān)系,其中所述第一標(biāo)識(shí)信息為第一區(qū)塊的標(biāo)識(shí)信息;
[0030]其中,所述一級(jí)映射表中的每一個(gè)映射單元包含Q位的標(biāo)志位,所述標(biāo)志位用于表明區(qū)塊的歷史訪問(wèn)信息。
[0031 ] 在本發(fā)明的一種實(shí)施例中,所述電子設(shè)備還包括第二獲取單元、查詢單元和更新單元,其中:
[0032]所述第二獲取單元,用于當(dāng)存儲(chǔ)有元數(shù)據(jù)的第一區(qū)塊被讀寫過(guò),獲取第一標(biāo)識(shí)信息,所述第一標(biāo)識(shí)信息為所述第一區(qū)塊的標(biāo)識(shí)信息;
[0033]所述查詢單元,用于根據(jù)所述第一標(biāo)識(shí)信息查詢所述一級(jí)映射表,得到第一映射單元;
[0034]所述更新單元,用于更新所述第一映射單元上的標(biāo)志位。
[0035]第四方面,本發(fā)明實(shí)施例提供一種電子設(shè)備,所述電子設(shè)備包括第一讀取單元、判斷單元、第三獲取單元和第二讀取單元,其中:
[0036]所述第一讀取單元,用于讀取所述一級(jí)映射表中第一映射單元上的標(biāo)志位,所述標(biāo)志位用于表明第一區(qū)塊是否上一次被訪問(wèn)過(guò),所述第一區(qū)塊為所述第一映射單元對(duì)應(yīng)的區(qū)塊;
[0037]所述判斷單元,用于根據(jù)所述標(biāo)志位的信息判斷該第一區(qū)塊上一次是否被訪問(wèn)過(guò);
[0038]所述第三獲取單元,用于當(dāng)所述標(biāo)志位信息表明所述第一區(qū)塊上一次被訪問(wèn)過(guò),根據(jù)所述第一映射單元的第一標(biāo)識(shí)信息獲取對(duì)應(yīng)的二級(jí)映射表中第一區(qū)塊上的元數(shù)據(jù)信息;
[0039]所述第二讀取單元,用于將所述第一區(qū)塊上的元數(shù)據(jù)信息從固態(tài)存儲(chǔ)器的NAND上讀到所述固態(tài)存儲(chǔ)器的隨機(jī)存儲(chǔ)器上。
[0040]在本發(fā)明的一種實(shí)施例中,所述電子設(shè)備還包括第三讀取單元,用于在所述固態(tài)存儲(chǔ)器上電后,將所述一級(jí)映射表從所述固態(tài)存儲(chǔ)器的NAND上讀到所述固態(tài)存儲(chǔ)器的隨機(jī)存儲(chǔ)器上。
[0041]在本發(fā)明的一種實(shí)施例中,所述電子設(shè)備還包括處理單元,用于當(dāng)所述標(biāo)志位信息表明第一區(qū)塊上一次未被訪問(wèn)過(guò),不將所述第一區(qū)塊上的元數(shù)據(jù)信息從固態(tài)存儲(chǔ)器的NAND上讀到所述固態(tài)存儲(chǔ)器的隨機(jī)存儲(chǔ)器上。
[0042]第五方面,本發(fā)明實(shí)施例提供一種電子設(shè)備,所述電子設(shè)備包括固態(tài)存儲(chǔ)器SSD,所述固態(tài)存儲(chǔ)器包括NAND和SSD控制器,其中
[0043]所述SSD控制器,用于采用頁(yè)級(jí)映射將來(lái)自主機(jī)上的邏輯頁(yè)映射為固態(tài)存儲(chǔ)器上NAND的物理頁(yè),形成二級(jí)映射表;獲取第一物理地址,所述第一物理地址為所述二級(jí)映射表中第一區(qū)塊的物理存儲(chǔ)地址;將所述第一物理地址和對(duì)應(yīng)的第一標(biāo)識(shí)信息在一級(jí)映射表中的映射單元中形成映射關(guān)系,其中所述第一標(biāo)識(shí)信息為第一區(qū)塊的標(biāo)識(shí)信息;
[0044]其中,所述一級(jí)映射表中的每一個(gè)映射單元包含Q位的標(biāo)志位,所述標(biāo)志位用于表明區(qū)塊的歷史訪問(wèn)信息。
[0045]第六方面,本發(fā)明實(shí)施例提供一種電子設(shè)備,所述電子設(shè)備包括固態(tài)存儲(chǔ)器SSD,所述固態(tài)存儲(chǔ)器包括NAND和SSD控制器,其中
[0046]所述SSD控制器,用于讀取所述一級(jí)映射表中第一映射單元上的標(biāo)志位,所述標(biāo)志位用于表明第一區(qū)塊是否上一次被訪問(wèn)過(guò),所述第一區(qū)塊為所述第一映射單元對(duì)應(yīng)的區(qū)塊;根據(jù)所述標(biāo)志位的信息判斷該第一區(qū)塊上一次是否被訪問(wèn)過(guò);當(dāng)所述標(biāo)志位信息表明所述第一區(qū)塊上一次被訪問(wèn)過(guò),根據(jù)所述第一映射單元的第一標(biāo)識(shí)信息獲取對(duì)應(yīng)的二級(jí)映射表中第一區(qū)塊上的元數(shù)據(jù)信息;將所述第一區(qū)塊上的元數(shù)據(jù)信息從固態(tài)存儲(chǔ)器的NAND上讀到所述固態(tài)存儲(chǔ)器的隨機(jī)存儲(chǔ)器上。
[0047]本發(fā)明實(shí)施例提供的映射表的形成及加載方法、電子設(shè)備,其中:采用頁(yè)級(jí)映射將來(lái)自主機(jī)上的邏輯頁(yè)映射為固態(tài)存儲(chǔ)器上NAND的物理頁(yè),形成二級(jí)映射表;獲取第一物理地址,所述第一物理地址為所述二級(jí)映射表中第一區(qū)塊的物理存儲(chǔ)地址;將所述第一物理地址和對(duì)應(yīng)的第一標(biāo)識(shí)信息在一級(jí)映射表中的映射單元中形成映射關(guān)系,其中所述第一標(biāo)識(shí)信息為第一區(qū)塊的標(biāo)識(shí)信息;其中,所述一級(jí)映射表中的每一個(gè)映射單元包含Q位的標(biāo)志位,所述標(biāo)志位用于表明區(qū)塊的歷史訪問(wèn)信息,如此,能夠縮短加載元數(shù)據(jù)的時(shí)間,從而提升用戶體驗(yàn)。
【附圖說(shuō)明】
[0048]圖1-1為本發(fā)明實(shí)施例一映射表的形成方法的實(shí)現(xiàn)