国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種建立邏輯塊與物理塊映射關(guān)系的方法及系統(tǒng)的制作方法

      文檔序號(hào):6499981閱讀:281來(lái)源:國(guó)知局
      一種建立邏輯塊與物理塊映射關(guān)系的方法及系統(tǒng)的制作方法
      【專利摘要】本發(fā)明實(shí)施例提供一種建立邏輯塊與物理塊映射關(guān)系的方法及系統(tǒng),物理塊包括多個(gè)物理頁(yè),所述邏輯塊包括多個(gè)扇區(qū),且一個(gè)物理塊包括的物理頁(yè)的數(shù)量與一個(gè)邏輯塊包括的扇區(qū)的數(shù)量均為正整數(shù)n;所述方法包括以下步驟:查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);將第k扇區(qū)對(duì)應(yīng)物理塊的第0物理頁(yè);根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式;根據(jù)所述映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上;k為小于n的非負(fù)整數(shù)。
      【專利說(shuō)明】一種建立邏輯塊與物理塊映射關(guān)系的方法及系統(tǒng)
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及數(shù)據(jù)存儲(chǔ)【技術(shù)領(lǐng)域】,特別涉及一種建立邏輯塊與物理塊映射關(guān)系的方法及系統(tǒng)。
      【背景技術(shù)】
      [0002]NAND是目前階段性能較出色的一種閃存方案,其特點(diǎn)是功耗低、重量輕、讀寫(xiě)性能好;目前廣泛的應(yīng)用于閃存盤(pán)和存儲(chǔ)卡。NAND芯片作為存儲(chǔ)介質(zhì)包含了多個(gè)物理塊,每個(gè)物理塊又包含多個(gè)物理頁(yè)。因?yàn)镹AND芯片的物理塊與物理頁(yè)的擦寫(xiě)次數(shù)都是有限的,由此而衍生的寫(xiě)平衡算法成為了延長(zhǎng)NAND芯片使用壽命的重要技術(shù)手段。而寫(xiě)平衡算法通常都基于文件系統(tǒng)中虛擬層面的邏輯塊或扇區(qū)與NAND芯片實(shí)際的物理塊或物理頁(yè)的映射關(guān)系來(lái)展開(kāi)。
      [0003]在申請(qǐng)?zhí)枮?01010229936.3的專利中,公開(kāi)了一種NAND寫(xiě)平衡處理方法;大體思路如下:該方法中一個(gè)邏輯塊對(duì)應(yīng)兩個(gè)物理塊;所述的物理塊中,一個(gè)與邏輯塊一一映射,另一個(gè)與邏輯塊隨機(jī)映射。與邏輯塊一一映射的物理塊被稱為數(shù)據(jù)塊,與邏輯塊隨機(jī)映射的物理塊被稱為緩沖塊;數(shù)據(jù)在寫(xiě)入時(shí)首先寫(xiě)入到緩沖塊中,寫(xiě)入完成后通過(guò)一定的機(jī)制將舊數(shù)據(jù)塊中各頁(yè)數(shù)據(jù)及緩沖塊中隨機(jī)映射的各頁(yè)數(shù)據(jù)按照一一映射的規(guī)則整合寫(xiě)入到一個(gè)新的數(shù)據(jù)塊。
      [0004]所述物理塊包括多個(gè)物理頁(yè),所述邏輯塊包括多個(gè)扇區(qū),一般而言一個(gè)物理塊中的物理頁(yè)數(shù)量等于一個(gè)邏輯塊中的扇區(qū)數(shù)量,每個(gè)物理頁(yè)均對(duì)應(yīng)著一個(gè)扇區(qū)。數(shù)據(jù)塊中各個(gè)物理頁(yè)保存的數(shù)據(jù)即是邏輯塊各扇區(qū)呈現(xiàn)的數(shù)據(jù),數(shù)據(jù)塊與邏輯塊之間的一一映射關(guān)系可以描述為:每個(gè)物理頁(yè)按照順序?qū)?yīng)一個(gè)扇區(qū)的映射。一一映射一般意味著某個(gè)寫(xiě)入過(guò)程已經(jīng)完結(jié),也可以認(rèn)為一一映射是邏輯塊穩(wěn)定狀態(tài)下的一種映射關(guān)系。
      [0005]一般而言對(duì)于按照一一映射記錄數(shù)據(jù)的物理塊而言,其首個(gè)物理頁(yè)必然對(duì)應(yīng)邏輯塊的首個(gè)扇區(qū)。但實(shí)際上,在文件系統(tǒng)中邏輯塊未必每個(gè)扇區(qū)均有數(shù)據(jù)呈現(xiàn),可能出現(xiàn)某些扇區(qū)空白的情況。如果一個(gè)扇區(qū)空白,那么其對(duì)應(yīng)的物理頁(yè)也必然是空白的。但是矛盾在于,邏輯塊的首個(gè)扇區(qū)空白將造成物理塊的首個(gè)物理頁(yè)空白,在NAND芯片當(dāng)中,對(duì)于物理塊的管理均以物理塊的首個(gè)物理頁(yè)為準(zhǔn),物理塊的首個(gè)物理頁(yè)空白在NAND中屬于異常狀況。所以在邏輯塊首次通過(guò)與物理塊建立一一映射而呈現(xiàn)數(shù)據(jù)的時(shí)候,如果其首個(gè)扇區(qū)空白,則必將產(chǎn)生一個(gè)無(wú)效的物理塊作為數(shù)據(jù)塊。
      [0006]在現(xiàn)有技術(shù)中,解決這種異常狀況主要有兩種方式:
      [0007]—為,人為的填補(bǔ)物理塊的首個(gè)物理頁(yè),并使其對(duì)應(yīng)邏輯塊的首個(gè)扇區(qū)。另一為,額外選取一個(gè)空白物理塊作為新物理塊,并將新物理塊的首個(gè)物理頁(yè)對(duì)應(yīng)邏輯塊的首個(gè)扇區(qū),再將之前產(chǎn)生的無(wú)效數(shù)據(jù)塊其他物理頁(yè)中的數(shù)據(jù)整理至新物理塊中。
      [0008]但是,上述兩種方法均增加了額外的寫(xiě)入操作,使得邏輯塊與物理塊建立一一映射的過(guò)程相對(duì)繁瑣,而且多余的寫(xiě)入操作縮短了 NAND芯片的使用壽命。
      【發(fā)明內(nèi)容】

      [0009]有鑒于此,本發(fā)明的目的在于提供一種建立邏輯塊與物理塊映射關(guān)系的方法及系統(tǒng),在邏輯塊首扇區(qū)空白的情況下,實(shí)現(xiàn)不進(jìn)行額外寫(xiě)入操作的同時(shí)完成邏輯塊與物理塊有效的一一映射。
      [0010]為實(shí)現(xiàn)上述目的,有如下技術(shù)方案:
      [0011]一種建立邏輯塊與物理塊映射關(guān)系的方法,物理塊包括多個(gè)物理頁(yè),所述邏輯塊包括多個(gè)扇區(qū),且一個(gè)物理塊包括的物理頁(yè)的數(shù)量與一個(gè)邏輯塊包括的扇區(qū)的數(shù)量均為正整數(shù)η ;所述方法包括以下步驟:
      [0012]查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè);
      [0013]根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式;
      [0014]根據(jù)所述映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上;
      [0015]k為小于η的非負(fù)整數(shù)。
      [0016]所述根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式具體為:
      [0017]按照線性映射 的規(guī)則設(shè)定映射公式。
      [0018]所述映射公式具體為:
      [0019]當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k ? O,則對(duì)于第k扇區(qū)以外的第x扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      [0020]當(dāng) k < X < n,則 y=x_k ;
      [0021]當(dāng)O ≤ X < k,則 y=x+n-k ;
      [0022]X、y均為小于η的非負(fù)整數(shù)。
      [0023]所述映射公式具體為:
      [0024]當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k=0,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      [0025]y=x ;
      [0026]X、y均為小于η的非負(fù)整數(shù)。
      [0027]所述根據(jù)所述映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上具體為:
      [0028]將第k扇區(qū)以外任意扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)代入映射公式,計(jì)算出該扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào);
      [0029]通過(guò)第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào),找到相應(yīng)的物理頁(yè);
      [0030]將第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)到相應(yīng)的物理頁(yè)。
      [0031]一種建立邏輯塊與物理塊映射關(guān)系的系統(tǒng),物理塊包括多個(gè)物理頁(yè),所述邏輯塊包括多個(gè)扇區(qū),且一個(gè)物理塊包括的物理頁(yè)的數(shù)量與一個(gè)邏輯塊包括的扇區(qū)的數(shù)量均為正整數(shù)η;所述系統(tǒng)具體包括:
      [0032]映射模塊,用于查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè);并根據(jù)映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上;
      [0033]計(jì)算模塊,用于根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式;
      [0034]k為小于η的非負(fù)整數(shù)。
      [0035]所述根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式具體為:
      [0036]按照線性映射的規(guī)則設(shè)定映射公式。
      [0037]所述映射公式具體為:
      [0038]當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k古0,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      [0039]當(dāng)k < X < n,則 y=x_k ;
      [0040]當(dāng)O ≤ X < k,則 y=x+n_k ;
      [0041]x、y均為小于η的非負(fù)整數(shù)。
      [0042]所述映射公式具體為:
      [0043]當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k=0,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      [0044]y=x ;
      [0045]X、y均為小于η的非負(fù)整數(shù)。
      [0046]所述映射模塊具體包括:
      [0047]查找單元,用于查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);
      [0048]編號(hào)代入單元,用于將第k扇區(qū)以外任意扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)代入映射公式,計(jì)算出該扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào);
      [0049]物理頁(yè)單元,用于通過(guò)第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào),找到相應(yīng)的物理頁(yè);
      [0050]對(duì)應(yīng)建立單元,用于將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè);并將第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)到相應(yīng)的物理頁(yè)。
      [0051]通過(guò)以上技術(shù)方案可知,本發(fā)明存在的有益效果是:通過(guò)以邏輯塊的首個(gè)非空白扇區(qū)對(duì)應(yīng)物理塊的首個(gè)物理頁(yè),并通過(guò)制定映射公式計(jì)算其他扇區(qū)與物理頁(yè)的對(duì)應(yīng)關(guān)系,在不限于首扇區(qū)對(duì)應(yīng)首物理頁(yè)的情況下實(shí)現(xiàn)了邏輯塊與物理塊的一一映射;從而在不增加額外寫(xiě)入操作的前提下避免了物理塊的首個(gè)物理頁(yè)的空白;不僅完善了邏輯塊首次通過(guò)與物理塊建立一一映射而呈現(xiàn)數(shù)據(jù)的過(guò)程,也最大程度的減少了 NAND芯片的寫(xiě)入操作,延長(zhǎng)了 NAND芯片的使用壽命。
      【專利附圖】

      【附圖說(shuō)明】
      [0052]為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見(jiàn)地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
      [0053]圖1為現(xiàn)有技術(shù)中--映射的示意圖;
      [0054]圖2為本發(fā)明實(shí)施例所述方法流程圖;
      [0055]圖3為本發(fā)明實(shí)施例所述線性映射的示意圖;[0056]圖4為本發(fā)明實(shí)施例所述系統(tǒng)結(jié)構(gòu)示意圖。
      【具體實(shí)施方式】
      [0057]為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒(méi)有做出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
      [0058]本發(fā)明提供的邏輯塊與物理塊映射關(guān)系的方法,主要應(yīng)用于NAND芯片當(dāng)中。所述的邏輯塊及扇區(qū)為文件系統(tǒng)在邏輯上虛擬構(gòu)建的存儲(chǔ)單元;而所述物理塊及物理頁(yè)為實(shí)際的存儲(chǔ)介質(zhì),存儲(chǔ)介質(zhì)中保存的數(shù)據(jù)通過(guò)映射關(guān)系反映到虛擬的邏輯塊或扇區(qū)上,而建立邏輯塊與物理塊的映射關(guān)系,也就是將物理塊中的物理頁(yè)對(duì)應(yīng)到邏輯塊中的扇區(qū)。所述的邏輯塊呈現(xiàn)數(shù)據(jù)必須通過(guò)與物理塊建立線性映射的關(guān)系,與邏輯塊線性映射的物理塊被稱為數(shù)據(jù)塊,數(shù)據(jù)塊中各個(gè)物理頁(yè)保存的數(shù)據(jù)即是邏輯塊各扇區(qū)呈現(xiàn)的數(shù)據(jù)。而所述線性映射也就是數(shù)據(jù)塊中各物理頁(yè)按照順序?qū)?yīng)邏輯塊中各個(gè)扇區(qū)。
      [0059]為了便于對(duì)本發(fā)明所述方法進(jìn)行解釋和說(shuō)明,此處首先對(duì)于現(xiàn)有技術(shù)中的線性映射方式進(jìn)行簡(jiǎn)要的解釋和說(shuō)明。現(xiàn)有技術(shù)中,邏輯塊與物理塊之間的映射關(guān)系屬于線性映射的一種特殊的形式,被稱為一一映射。一一映射也就是滿足扇區(qū)在邏輯塊內(nèi)編號(hào)等于該物理頁(yè)在物理塊中編號(hào)的映射關(guān)系。參見(jiàn)圖1所示,為一一映射的示意圖。圖1中假定一個(gè)物理塊包括4個(gè)物理頁(yè),一個(gè)邏輯塊包括4個(gè)扇區(qū)。圖1中四個(gè)方框分別代表物理塊中4個(gè)物理頁(yè),按照從左至右的順序分別是第O頁(yè)、第I頁(yè)、第2頁(yè)和第3頁(yè)。圖中每個(gè)物理頁(yè)上的標(biāo)號(hào)代表該物理頁(yè)對(duì)應(yīng)的扇區(qū),圖1中即第O頁(yè)對(duì)應(yīng)第O扇區(qū),第I頁(yè)對(duì)應(yīng)第I扇區(qū),依此類推。
      [0060]參見(jiàn)圖2所示,為本發(fā)明所述建立邏輯塊與物理塊映射關(guān)系的方法的一個(gè)具體的實(shí)施例。本實(shí)施例中,針對(duì)邏輯塊首次通過(guò)與物理塊建立線性映射而呈現(xiàn)數(shù)據(jù)的時(shí)候,邏輯塊的首個(gè)扇區(qū)空白將造成物理塊的首個(gè)物理頁(yè)空白的異常情況,采取了直接將邏輯塊內(nèi)首個(gè)非空白的扇區(qū)對(duì)應(yīng)物理塊的首個(gè)物理頁(yè)(即第O物理頁(yè))的技術(shù)方案,所述方法具體如下:
      [0061]本實(shí)施例所述方法中,物理塊包括多個(gè)物理頁(yè),所述邏輯塊包括多個(gè)扇區(qū),且一個(gè)物理塊包括的物理頁(yè)的數(shù)量與一個(gè)邏輯塊包括的扇區(qū)的數(shù)量均為正整數(shù)η ;所述方法包括以下步驟;
      [0062]步驟201、查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè);
      [0063]在現(xiàn)有技術(shù)中,如果要在邏輯塊與物理塊之間建立線性映射的關(guān)系,邏輯塊中首個(gè)扇區(qū)必然對(duì)應(yīng)物理塊中首個(gè)物理頁(yè)。以至于對(duì)于任意一對(duì)相對(duì)應(yīng)的扇區(qū)與物理頁(yè)之間,均滿足該扇區(qū)在邏輯塊內(nèi)編號(hào)等于該物理頁(yè)在物理塊中編號(hào)。
      [0064]但為了避免物理塊首個(gè)物理頁(yè)空白的情況出現(xiàn),本實(shí)施例中不再固定的以邏輯塊的首個(gè)扇區(qū)對(duì)應(yīng)物理塊的首個(gè)物理頁(yè),而是以邏輯塊中首個(gè)非空白的扇區(qū)對(duì)應(yīng)物理塊的首個(gè)物理頁(yè),即第O物理頁(yè)。這樣便保證了物理塊的首個(gè)物理頁(yè)必然不是空白,避免了無(wú)效的物理塊作為數(shù)據(jù)塊的情況發(fā)生。邏輯塊中首個(gè)非空白的扇區(qū)可能是邏輯塊的首個(gè)扇區(qū),即第O扇區(qū),也可能是其他扇區(qū)。本實(shí)施例中將其稱為第k扇區(qū),k為小于η的非負(fù)整數(shù)。
      [0065]需要說(shuō)明的是,按照傳統(tǒng)的對(duì)于物理頁(yè)或扇區(qū)編號(hào)的規(guī)則,首個(gè)扇區(qū)或者物理頁(yè)的編號(hào)均為數(shù)字0,那么在扇區(qū)或物理頁(yè)數(shù)量為η的情況下,扇區(qū)或物理頁(yè)的編號(hào)范圍為O至n-Ι區(qū)間的任意整數(shù);也就是說(shuō),最后一個(gè)扇區(qū)或物理頁(yè)的編號(hào)為n-Ι而并非是η。
      [0066]步驟202、根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式;
      [0067]由于本實(shí)施例中改變了邏輯塊首個(gè)扇區(qū)對(duì)應(yīng)物理塊首個(gè)物理頁(yè)的設(shè)置,所以本實(shí)施例中對(duì)應(yīng)的扇區(qū)與物理頁(yè)之間,不一定總是滿足扇區(qū)在邏輯塊內(nèi)編號(hào)等于該物理頁(yè)在物理塊中編號(hào)。為了在這種情況下建立邏輯塊與物理塊之間線性映射的關(guān)系,必須重新制定除了第k扇區(qū)之外其他扇區(qū)與物理頁(yè)的對(duì)應(yīng)規(guī)則,以保證物理塊中各物理頁(yè)始終按照順序?qū)?yīng)邏輯塊中各個(gè)扇區(qū)。
      [0068]本實(shí)施例中,制定除了第k扇區(qū)之外其他扇區(qū)與物理頁(yè)的對(duì)應(yīng)規(guī)則包括k=0和k古O兩種具體情況。
      [0069]首先,針對(duì)k古O的情況進(jìn)行具體的說(shuō)明。按照線性映射的規(guī)則,在邏輯塊內(nèi)的扇區(qū)數(shù)量與物理塊內(nèi)的物理頁(yè)數(shù)量均為η的前提下;當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè),則必然第k+Ι扇區(qū)應(yīng)該對(duì)應(yīng)第I物理頁(yè),第k+2扇區(qū)應(yīng)該對(duì)應(yīng)第2物理頁(yè),依此類推,可得第n-Ι扇區(qū)應(yīng)該對(duì)應(yīng)第η-k-l物理頁(yè)。至此,順序在第k扇區(qū)之后的各個(gè)扇區(qū)均找到了其應(yīng)該對(duì)應(yīng)的物理頁(yè),而順序第k扇區(qū)之前的各個(gè)扇區(qū)以及順序在第η-k-l物理頁(yè)之后的各個(gè)物理頁(yè)還未確定相互之間的對(duì)應(yīng)關(guān)系。
      [0070]常規(guī)情況下,第n-Ι扇區(qū)原本已經(jīng)是邏輯塊的最后一個(gè)扇區(qū),但本實(shí)施例中在此將邏輯塊的首個(gè)扇區(qū)即第O扇區(qū)放置在第n-Ι扇區(qū)之后與與物理頁(yè)進(jìn)行對(duì)應(yīng)。也就是說(shuō),當(dāng)?shù)趎-Ι扇區(qū)對(duì)應(yīng)第η-k-l物理頁(yè),則第O扇區(qū)應(yīng)該對(duì)應(yīng)第n-k物理頁(yè)。若按照順序第O扇區(qū)與第k扇區(qū)之間還存在一系列其他扇區(qū),則仍然依次排列在第O扇區(qū)之后,并且同樣按照順序來(lái)對(duì)應(yīng)后續(xù)的各個(gè)物理頁(yè)。也就是,第I扇區(qū)應(yīng)該對(duì)應(yīng)第η-k+l物理頁(yè),第2扇區(qū)應(yīng)該對(duì)應(yīng)第n-k+2物理頁(yè),依此類推,可得第k-Ι扇區(qū)應(yīng)該對(duì)應(yīng)第n-Ι物理頁(yè)。
      [0071]至此,邏輯塊中每個(gè)扇區(qū)均按照順序找到了其應(yīng)該對(duì)應(yīng)的物理頁(yè),邏輯塊各扇區(qū)與物理塊各物理頁(yè)之間形成了完整的相互對(duì)應(yīng)的規(guī)律。每個(gè)扇區(qū)均存在理論上應(yīng)該與其對(duì)應(yīng)的物理頁(yè),只需將每個(gè)扇區(qū)與所述理論上應(yīng)該與其對(duì)應(yīng)的物理頁(yè)實(shí)際的建立對(duì)應(yīng)關(guān)系,即完成了邏輯塊與物理塊的線性映射。為更加簡(jiǎn)便直觀的表述上述的對(duì)應(yīng)規(guī)律,本實(shí)施例中制定的映射公式。所述映射公式具體為:
      [0072]當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k O,則對(duì)于第k扇區(qū)以外的第x扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      [0073]當(dāng)k < X < n,則 y=x_k ;
      [0074]當(dāng)O ≤ X < k,則 y=x+n-k ;
      [0075]X、y均為小于η的非負(fù)整數(shù)。
      [0076]根據(jù)上述映射公式,只需要已知邏輯塊內(nèi)任意一個(gè)扇區(qū)的扇區(qū)編號(hào),即可推算出該扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào),從而獲悉其理論上應(yīng)該與那個(gè)物理頁(yè)對(duì)應(yīng)。
      [0077]k=0的情況屬于本實(shí)施例中的特殊情況,即表明邏輯塊的首個(gè)扇區(qū)即第O扇區(qū)就是非空白扇區(qū),所以可以直接將邏輯塊內(nèi)首個(gè)扇區(qū)對(duì)應(yīng)物理塊的首個(gè)物理頁(yè)。該情況下,線性映射的具體方式與現(xiàn)有技術(shù)中的一一映射完全一致。也就是任意一對(duì)相對(duì)應(yīng)的扇區(qū)與物理頁(yè)之間,均滿足該扇區(qū)在邏輯塊內(nèi)編號(hào)等于該物理頁(yè)在物理塊中編號(hào)。k=0情況下的映射公式可表示為:
      [0078]當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k=0,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      [0079]y=x ;
      [0080]X、y均為小于η的非負(fù)整數(shù)。
      [0081]步驟203、根據(jù)所述映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè);
      [0082]本步驟即為實(shí)際建立扇區(qū)與物理塊對(duì)應(yīng)關(guān)系,完成邏輯塊與物理塊線性映射的過(guò)程。從步驟202中已經(jīng)可知,通過(guò)映射公式即可獲悉理論上每個(gè)扇區(qū)應(yīng)該對(duì)應(yīng)的物理頁(yè)。所以只需按照映射公式計(jì)算的結(jié)果將各物理頁(yè)對(duì)應(yīng)到相應(yīng)的扇區(qū)上,也就實(shí)現(xiàn)了邏輯塊與物理塊的線性映射。本實(shí)施例中,線性映射不再限于邏輯塊的首個(gè)扇區(qū)必然對(duì)應(yīng)物理塊的首個(gè)物理頁(yè),避免了首個(gè)物理頁(yè)出現(xiàn)空白的情況,而且不增加額外的寫(xiě)入操作。
      [0083]具體的,所述根據(jù)所述映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上的步驟可以詳細(xì)的描述為以下:
      [0084]步驟231、將第k扇區(qū)以外任意扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)代入映射公式,計(jì)算出該扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào);
      [0085]步驟232、通過(guò)第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào),找到相應(yīng)的物理頁(yè);
      [0086]步驟233、將第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)到相應(yīng)的物理頁(yè)。
      [0087]參見(jiàn)圖3所示,為本實(shí)施例中所述線性映射的示意圖。圖3中為n=4且k=2情況下,線性映射的具體情況。圖3中四個(gè)方框分別代表物理塊中4個(gè)物理頁(yè),按照從左至右的順序分別是第O頁(yè)、第I頁(yè)、第2頁(yè)和第3頁(yè)。圖中每個(gè)物理頁(yè)上的標(biāo)號(hào)代表該物理頁(yè)對(duì)應(yīng)的扇區(qū)。本實(shí)施例中k等于2,也就是首個(gè)非空白扇區(qū)為邏輯塊內(nèi)的第2扇區(qū),則將第2扇區(qū)對(duì)應(yīng)到物理塊的第O物理頁(yè)。
      [0088]再將n=4且k=2代入上述的映射公式,計(jì)算得到第O扇區(qū)對(duì)應(yīng)第2物理頁(yè),第I扇區(qū)對(duì)應(yīng)第3物理頁(yè),第3扇區(qū)對(duì)應(yīng)第I物理頁(yè)。按照上述計(jì)算結(jié)果建立邏輯塊與物理塊的線性映射關(guān)系,即如圖3所示。
      [0089]本實(shí)施例存在的有益效果是,通過(guò)以邏輯塊的首個(gè)非空白扇區(qū)對(duì)應(yīng)物理塊的首個(gè)物理頁(yè),并通過(guò)制定映射公式計(jì)算其他扇區(qū)與物理頁(yè)的對(duì)應(yīng)關(guān)系,在不限于首扇區(qū)對(duì)應(yīng)首物理頁(yè)的情況下實(shí)現(xiàn)了邏輯塊與物理塊的一一映射;從而在不增加額外寫(xiě)入操作的前提下避免了物理塊的首個(gè)物理頁(yè)的空白;不僅完善了邏輯塊首次通過(guò)與物理塊建立一一映射而呈現(xiàn)數(shù)據(jù)的過(guò)程,也最大程度的減少了 NAND芯片的寫(xiě)入操作,延長(zhǎng)了 NAND芯片的使用壽命O
      [0090]參見(jiàn)圖4所示,為本發(fā)明所述建立邏輯塊與物理塊映射關(guān)系的系統(tǒng)的一個(gè)具體實(shí)施例。本實(shí)施例中,所述系統(tǒng)為對(duì)應(yīng)圖2所示實(shí)施例中所述方法而存在的虛擬系統(tǒng),二者技術(shù)方案本質(zhì)上完全一致。具體的,本實(shí)施例中物理塊包括多個(gè)物理頁(yè),所述邏輯塊包括多個(gè)扇區(qū),且一個(gè)物理塊包括的物理頁(yè)的數(shù)量與一個(gè)邏輯塊包括的扇區(qū)的數(shù)量均為正整數(shù)η;所述系統(tǒng)具體包括:[0091]映射模塊,用于查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè);并根據(jù)映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上;
      [0092]計(jì)算模塊,用于根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式;
      [0093]k為小于η的非負(fù)整數(shù)。
      [0094]所述根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式具體為:
      [0095]按照線性映射的規(guī)則設(shè)定映射公式。
      [0096]所述映射公式具體為:
      [0097]當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k ? O,則對(duì)于第k扇區(qū)以外的第x扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      [0098]當(dāng) k < X < n,則 y=x_k ;
      [0099]當(dāng)O ≤X < k,則 y=x+n_k ;
      [0100]X、y均為小于η的非負(fù)整數(shù)。
      [0101]當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k=0,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      [0102]y=x ;
      [0103]X、y均為小于η的非負(fù)整數(shù)。
      [0104]所述映射模塊具體包括:
      [0105]查找單元,用于查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);
      [0106]編號(hào)代入單元,用于將第k扇區(qū)以外任意扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)代入映射公式,計(jì)算出該扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào);
      [0107]物理頁(yè)單元,用于通過(guò)第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào),找到相應(yīng)的物理頁(yè);
      [0108]對(duì)應(yīng)建立單元,用于將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè);并將第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)到相應(yīng)的物理頁(yè)。
      [0109]相應(yīng)的,本實(shí)施例所述系統(tǒng)實(shí)現(xiàn)的有益效果是:通過(guò)以邏輯塊的首個(gè)非空白扇區(qū)對(duì)應(yīng)物理塊的首個(gè)物理頁(yè),并通過(guò)制定映射公式計(jì)算其他扇區(qū)與物理頁(yè)的對(duì)應(yīng)關(guān)系,在不限于首扇區(qū)對(duì)應(yīng)首物理頁(yè)的情況下實(shí)現(xiàn)了邏輯塊與物理塊的一一映射;從而在不增加額外寫(xiě)入操作的前提下避免了物理塊的首個(gè)物理頁(yè)的空白;不僅完善了邏輯塊首次通過(guò)與物理塊建立一一映射而呈現(xiàn)數(shù)據(jù)的過(guò)程,也最大程度的減少了 NAND芯片的寫(xiě)入操作,延長(zhǎng)了NAND芯片的使用壽命。
      [0110]以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。
      【權(quán)利要求】
      1.一種建立邏輯塊與物理塊映射關(guān)系的方法,其特征在于,物理塊包括多個(gè)物理頁(yè),所述邏輯塊包括多個(gè)扇區(qū),且一個(gè)物理塊包括的物理頁(yè)的數(shù)量與一個(gè)邏輯塊包括的扇區(qū)的數(shù)量均為正整數(shù)η ;所述方法包括以下步驟: 查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè); 根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式; 根據(jù)所述映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上; k為小于η的非負(fù)整數(shù)。
      2.根據(jù)權(quán)利要求1所述方法,其特征在于,所述根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式具體為: 按照線性映射的規(guī)則設(shè)定映射公式。
      3.根據(jù)權(quán)利要求2所述方法,其特征在于,所述映射公式具體為: 當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k古O,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      當(dāng) k < X < η,貝[I y=x-k ;
      當(dāng) O ≤ X < k,則 y=x+n-k ; X、Y均為小于η的非負(fù)整數(shù)。
      4.根據(jù)權(quán)利要求2所述方法,其特征在于,所述映射公式具體為: 當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k=0,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;y=x ; X、y均為小于η的非負(fù)整數(shù)。
      5.根據(jù)權(quán)利要求1所述方法,其特征在于,所述根據(jù)所述映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上具體為: 將第k扇區(qū)以外任意扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)代入映射公式,計(jì)算出該扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào); 通過(guò)第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào),找到相應(yīng)的物理頁(yè); 將第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)到相應(yīng)的物理頁(yè)。
      6.一種建立邏輯塊與物理塊映射關(guān)系的系統(tǒng),其特征在于,物理塊包括多個(gè)物理頁(yè),所述邏輯塊包括多個(gè)扇區(qū),且一個(gè)物理塊包括的物理頁(yè)的數(shù)量與一個(gè)邏輯塊包括的扇區(qū)的數(shù)量均為正整數(shù)η ;所述系統(tǒng)具體包括: 映射模塊,用于查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū);將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè);并根據(jù)映射公式將邏輯塊中第k扇區(qū)以外的其他各扇區(qū)對(duì)應(yīng)到物理塊中相應(yīng)的物理頁(yè)上; 計(jì)算模塊,用于根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式; k為小于η的非負(fù)整數(shù)。
      7.根據(jù)權(quán)利要求5所述系統(tǒng),其特征在于,所述根據(jù)第k扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)k的數(shù)值得到映射公式具體為: 按照線性映射的規(guī)則設(shè)定映射公式。
      8.根據(jù)權(quán)利要求6所述系統(tǒng),其特征在于,所述映射公式具體為: 當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k古O,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;
      當(dāng) k < X < η,貝[I y=x-k ;
      當(dāng) O ≤ X < k,則 y=x+n-k ; X、Y均為小于η的非負(fù)整數(shù)。
      9.根據(jù)權(quán)利要求5所述系統(tǒng),其特征在于,所述映射公式具體為: 當(dāng)?shù)趉扇區(qū)對(duì)應(yīng)第O物理頁(yè)且k=0,則對(duì)于第k扇區(qū)以外的第X扇區(qū),對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào)y根據(jù)下列公式計(jì)算得到;y=x ; X、y均為小于η的非負(fù)整數(shù)。
      10.根據(jù)權(quán)利要求5所述系統(tǒng),其特征在于,所述映射模塊具體包括: 查找單元,用于查找出邏輯塊中首個(gè)非空白的扇區(qū)為第k扇區(qū); 編號(hào)代入單元,用于將第k扇區(qū)以外任意扇區(qū)的邏輯塊內(nèi)扇區(qū)編號(hào)代入映射公式,計(jì)算出該扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào); 物理頁(yè)單元,用于通過(guò)第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)的物理頁(yè)在物理塊中的編號(hào),找到相應(yīng)的物理頁(yè); 對(duì)應(yīng)建立單元,用于將第k扇區(qū)對(duì)應(yīng)物理塊的第O物理頁(yè);并將第k扇區(qū)以外任意扇區(qū)對(duì)應(yīng)到相應(yīng)的物理頁(yè)。
      【文檔編號(hào)】G06F12/06GK103995783SQ201310054963
      【公開(kāi)日】2014年8月20日 申請(qǐng)日期:2013年2月20日 優(yōu)先權(quán)日:2013年2月20日
      【發(fā)明者】李曉輝, 胡勝發(fā) 申請(qǐng)人:安凱(廣州)微電子技術(shù)有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1