国产精品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>

      閃存管理方法和系統(tǒng)的制作方法

      文檔序號(hào):6764945閱讀:123來(lái)源:國(guó)知局
      閃存管理方法和系統(tǒng)的制作方法
      【專利摘要】本發(fā)明提供了一種閃存管理方法,所述方法包括:獲取樣本塊;判斷所述樣本塊的無(wú)效頁(yè)操作方式;如果所述樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)所述樣本塊進(jìn)行一次性全部編程完,檢測(cè)出所述樣本塊中的無(wú)效頁(yè);如果所述樣本塊的無(wú)效頁(yè)操作方式為跳過(guò),則對(duì)所述樣本塊按順序編程,每次只編程一個(gè)頁(yè),并檢測(cè)出所述樣本塊中的無(wú)效頁(yè)。采用該閃存管理方法,能夠最大程度利用閃存存儲(chǔ)空間,回收閃存不良品。此外,還提供了一種閃存管理系統(tǒng)。
      【專利說(shuō)明】閃存管理方法和系統(tǒng)

      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及閃存技術(shù),特別是涉及一種閃存管理方法和系統(tǒng)。

      【背景技術(shù)】
      [0002]現(xiàn)有技術(shù)中,通常將含有一個(gè)或多個(gè)無(wú)效位/頁(yè)/塊的閃存芯片作為閃存不良品來(lái)舍棄,不利用,這樣因?yàn)殚W存芯片局部空間的無(wú)效而使得整個(gè)閃存芯片無(wú)效而不被利用的現(xiàn)象,無(wú)疑造成了閃存存儲(chǔ)空間和閃存資源的浪費(fèi)。


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

      [0003]基于此,有必要針對(duì)傳統(tǒng)技術(shù)中閃存存儲(chǔ)空間浪費(fèi)的問(wèn)題,提供一種能夠能夠最大程度利用閃存存儲(chǔ)空間,回收閃存不良品的閃存管理方法和系統(tǒng)。
      [0004]一種閃存管理方法,所述方法包括:
      [0005]獲取樣本塊;
      [0006]判斷所述樣本塊的無(wú)效頁(yè)操作方式;
      [0007]如果所述樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)所述樣本塊進(jìn)行一次性全部編程完,檢測(cè)出所述樣本塊中的無(wú)效頁(yè);
      [0008]如果所述樣本塊的無(wú)效頁(yè)操作方式為跳過(guò),則對(duì)所述樣本塊按順序編程,每次只編程一個(gè)頁(yè),并檢測(cè)出所述樣本塊中的無(wú)效頁(yè)。
      [0009]一種閃存管理系統(tǒng),所述系統(tǒng)包括:
      [0010]樣本塊獲取模塊,用于獲取樣本塊;
      [0011]無(wú)效頁(yè)操作方式判斷模塊,用于判斷所述樣本塊的無(wú)效頁(yè)操作方式;
      [0012]第一無(wú)效頁(yè)檢測(cè)模塊,用于如果所述樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)所述樣本塊進(jìn)行一次性全部編程完,并檢測(cè)出所述樣本塊中的無(wú)效頁(yè);
      [0013]第二無(wú)效頁(yè)檢測(cè)模塊,用于如果所述樣本塊的無(wú)效頁(yè)操作方式為跳過(guò),則對(duì)所述樣本塊按順序編程,每次只編程一個(gè)頁(yè),檢測(cè)出所述樣本塊中的無(wú)效頁(yè)。
      [0014]上述閃存管理方法和系統(tǒng),考慮到了閃存不良品芯片中可能包含的無(wú)效頁(yè)的兩種情況,對(duì)于樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)樣本塊進(jìn)行一次性全部編程完,再檢測(cè)出其中的無(wú)效頁(yè),對(duì)于樣本塊的無(wú)效頁(yè)操方式為跳過(guò),則對(duì)樣本塊按順序編程,每次只編程一個(gè)頁(yè),再檢測(cè)出其中的無(wú)效頁(yè)。由于無(wú)效操作方式為填充的樣本塊包含能對(duì)其他頁(yè)產(chǎn)生良性干擾的的頁(yè),對(duì)樣本塊進(jìn)行一次性全部編程完能夠使閃存利用更多的空間資源,而無(wú)效操作方式為跳過(guò)的樣本塊包含自身無(wú)效或?qū)ζ渌?yè)產(chǎn)生惡性干擾的頁(yè),對(duì)樣本塊通過(guò)一邊編程一邊判斷無(wú)效頁(yè)的檢測(cè)方式能夠更加準(zhǔn)確的檢測(cè)出無(wú)效頁(yè)。因此,上述閃存管理方法和系統(tǒng)能夠盡可能最大限度的利用閃存存儲(chǔ)空間,回收閃存不良品芯片。

      【專利附圖】

      【附圖說(shuō)明】
      [0015]圖1為一個(gè)實(shí)施例中閃存管理方法的流程示意圖;
      [0016]圖2為一個(gè)實(shí)施例中閃存管理系統(tǒng)的結(jié)構(gòu)框圖;
      [0017]圖3為圖2中樣本獲取模塊的結(jié)構(gòu)框圖;
      [0018]圖4為圖2中無(wú)效頁(yè)操作方式判斷模塊的結(jié)構(gòu)框圖。

      【具體實(shí)施方式】
      [0019]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
      [0020]本發(fā)明提供了一種閃存管理方法和系統(tǒng),其中閃存芯片的存儲(chǔ)空間是以層、塊、頁(yè)、字節(jié)以及位來(lái)組織的,其中,閃存芯片包含多個(gè)層,每個(gè)層包含多個(gè)塊,每個(gè)塊包含多個(gè)頁(yè),每個(gè)頁(yè)包含多個(gè)字節(jié),每個(gè)字節(jié)包含多個(gè)位。例如,對(duì)閃存芯片中的塊進(jìn)行編號(hào)為BO, Bl, B2…,對(duì)塊中頁(yè)的編號(hào)為 BO {P0, PI, P2…},B1 {P0, PI, P2...},B2 {P0, PI, P2...},其中,80{?0汁1,?2夂}表示塊B0中包含有編號(hào)為P0,P1,P2等更多的頁(yè)。
      [0021]由于閃存芯片中無(wú)效頁(yè)有兩種情況:一是自身無(wú)效,即由于閃存芯片在生產(chǎn)制造的過(guò)程中導(dǎo)致的無(wú)效,對(duì)這類無(wú)效頁(yè)在編程使用閃存芯片的過(guò)程中直接跳過(guò)不使用。二是對(duì)其他頁(yè)產(chǎn)生干擾,即通過(guò)對(duì)比該頁(yè)編程前后,除該頁(yè)之外的其他已編程的頁(yè)的無(wú)效頁(yè)數(shù)量有變化,并且,如果其他已經(jīng)編程的頁(yè)的無(wú)效頁(yè)數(shù)據(jù)量增大,則表明該頁(yè)對(duì)其他頁(yè)產(chǎn)生惡性干擾,對(duì)于這樣會(huì)造成惡性干擾的頁(yè),在編程閃存芯片時(shí)直接跳過(guò)不使用。如果其他已經(jīng)編程的頁(yè)的無(wú)效頁(yè)數(shù)據(jù)量減小,則表明該頁(yè)對(duì)其他頁(yè)產(chǎn)生良性干擾,對(duì)于這樣能產(chǎn)生良性干擾的頁(yè),在編程閃存芯片時(shí)需要進(jìn)行填充,即對(duì)該頁(yè)編程,使其能產(chǎn)生良性干擾,能更多的利用閃存空間資源。因此,閃存芯片中的無(wú)效頁(yè)操作方式包括兩種:跳過(guò)和填充。
      [0022]針對(duì)閃存芯片中的這兩種無(wú)效頁(yè)操作方式,本發(fā)明提供了一種盡可能最大限度的利用閃存空間,能節(jié)省閃存存儲(chǔ)空間的閃存管理方法和系統(tǒng)。
      [0023]如圖1所示,在一個(gè)實(shí)施例中,提供了一種閃存管理方法,包括:
      [0024]步驟102,獲取樣本塊。
      [0025]具體的,可在閃存芯片的各層中檢測(cè)并抽取出符合預(yù)設(shè)條件的若干個(gè)塊作為樣本塊。
      [0026]在一個(gè)實(shí)施例中,步驟102具體包括:在閃存芯片的同一層中隨機(jī)抽取第一數(shù)量的塊;對(duì)抽取的第一數(shù)量的塊進(jìn)行一次性編程,對(duì)塊中的頁(yè)進(jìn)行頁(yè)的有效無(wú)效判斷;當(dāng)塊中的頁(yè)滿足以下條件:當(dāng)所述塊包含的全部頁(yè)有效時(shí),所述塊不用做樣本塊;當(dāng)塊包含的全部頁(yè)無(wú)效時(shí),擦除該塊,再隨機(jī)抽取塊中的第二數(shù)量的頁(yè)進(jìn)行編程,并且讀取第二數(shù)量的頁(yè)的數(shù)據(jù),若第二數(shù)量的頁(yè)至少有一個(gè)頁(yè)是有效的;則將該快作為樣本塊。
      [0027]本實(shí)施例中,可在閃存芯片的同一層中隨機(jī)抽取N個(gè)塊進(jìn)行一次性編程,即同時(shí)向這N個(gè)塊寫入數(shù)據(jù),再讀取塊中的數(shù)據(jù),對(duì)塊中所有頁(yè)進(jìn)行頁(yè)的有效無(wú)效判斷。當(dāng)塊中所有頁(yè)有效時(shí),則該塊不能作為樣本塊。當(dāng)塊中包含的全部頁(yè)無(wú)效時(shí),擦除該塊,再隨機(jī)抽取塊中的Μ個(gè)頁(yè)進(jìn)行編程,并且讀取這Μ個(gè)頁(yè)的數(shù)據(jù),若這Μ個(gè)頁(yè)至少有一個(gè)頁(yè)是有效的,則該塊屬于受到某些頁(yè)的干擾而置壞了所有頁(yè)的情況,這樣的塊可以作為樣本塊使用。如果這Μ個(gè)頁(yè)都無(wú)效,則認(rèn)為該塊中的頁(yè)屬于未受到干擾而自身無(wú)效的情況,故也不能作為樣本塊。其中,在判斷塊中包含的全部頁(yè)是否無(wú)效時(shí),需要考慮到是否存在某些自身有效的頁(yè)因受到其他頁(yè)的干擾而無(wú)效的情況,也就是說(shuō),自身有效的頁(yè)因受到其他頁(yè)的干擾而無(wú)效,則認(rèn)為該頁(yè)也是無(wú)效的。
      [0028]在一個(gè)實(shí)施例中,對(duì)塊中所有頁(yè)進(jìn)行頁(yè)的有效無(wú)效判斷,其中,頁(yè)的有效無(wú)效判斷包括:當(dāng)對(duì)頁(yè)進(jìn)行編程時(shí),對(duì)寫入的數(shù)據(jù)內(nèi)容進(jìn)行ECC編碼(Error Correcting Code,錯(cuò)誤檢查和糾正碼),再在讀取頁(yè)的數(shù)據(jù)內(nèi)容時(shí)進(jìn)行ECC解碼,在解碼過(guò)程中對(duì)頁(yè)中錯(cuò)誤字節(jié)數(shù)進(jìn)行統(tǒng)計(jì),當(dāng)對(duì)頁(yè)完成ECC解碼時(shí),獲取頁(yè)的最大錯(cuò)誤字節(jié)數(shù),當(dāng)最大錯(cuò)誤字節(jié)數(shù)大于第一閾值時(shí),將頁(yè)標(biāo)記為無(wú)效頁(yè)。
      [0029]具體的,通過(guò)閃存芯片主控的寄存計(jì)數(shù)器對(duì)頁(yè)中的錯(cuò)誤字節(jié)數(shù)進(jìn)行計(jì)數(shù)統(tǒng)計(jì),當(dāng)對(duì)頁(yè)完成ECC解碼時(shí),可以從寄存計(jì)數(shù)器獲取到該頁(yè)的最大錯(cuò)誤字節(jié)數(shù),當(dāng)最大錯(cuò)誤字節(jié)數(shù)大于第一閾值時(shí),將字節(jié)所在的頁(yè)標(biāo)記為無(wú)效頁(yè)。
      [0030]在一個(gè)優(yōu)選的實(shí)施例中,第一閾值為量產(chǎn)閾值;其中,量產(chǎn)閾值為ECC閾值的一半大小。本實(shí)施例中,可預(yù)先將量產(chǎn)閾值設(shè)定為ECC閾值的一半大小,ECC閾值標(biāo)識(shí)ECC碼能檢測(cè)并糾正的最大字節(jié)(bit)數(shù)。
      [0031]步驟104,判斷樣本塊的無(wú)效頁(yè)操作方式。
      [0032]具體的,需判斷樣本塊的無(wú)效頁(yè)操作方式是為填充還是跳過(guò),根據(jù)不同的無(wú)效頁(yè)操作方式來(lái)確定不同的無(wú)效頁(yè)檢測(cè)方式。如,當(dāng)判斷樣本塊的無(wú)效頁(yè)操作方式為跳過(guò),則可猜測(cè)樣本塊中存在自身無(wú)效的頁(yè)或者對(duì)其他頁(yè)產(chǎn)生惡性干擾的頁(yè),此時(shí)需通過(guò)一邊編程一邊檢測(cè)的無(wú)效頁(yè)檢測(cè)方式才能更加準(zhǔn)確的找到無(wú)效頁(yè);當(dāng)判斷樣本塊的無(wú)效頁(yè)操作方式為填充,則可猜測(cè)樣本塊中存在對(duì)其他頁(yè)產(chǎn)生良性干擾的頁(yè),即能使其他本身無(wú)效的頁(yè)變?yōu)橛行У捻?yè),此時(shí)將樣本塊中的頁(yè)一次性全部編程完,才能使閃存利用更多的空間資源。
      [0033]在一個(gè)實(shí)施例中,步驟104包括:對(duì)樣本塊按順序編程,每次只編程一個(gè)頁(yè),對(duì)比編程前后已編程頁(yè)中無(wú)效頁(yè)的數(shù)量;如果無(wú)效頁(yè)的數(shù)量無(wú)變化且當(dāng)前塊編程完,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò);如果無(wú)效頁(yè)的數(shù)量增大,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò);如果無(wú)效頁(yè)的數(shù)量減小,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為填充;對(duì)各個(gè)樣本塊的無(wú)效頁(yè)操作方式進(jìn)行統(tǒng)計(jì),取較大比例的無(wú)效頁(yè)操作方式作為所有樣本塊的無(wú)效頁(yè)操作方式。
      [0034]本實(shí)施例中,對(duì)樣本塊按照頁(yè)的編號(hào)進(jìn)行順序編程,每次只編程一個(gè)頁(yè),對(duì)比編程前后已編程頁(yè)中無(wú)效頁(yè)的數(shù)量,其中已編程頁(yè)不包括當(dāng)前編程頁(yè)。例如,對(duì)一個(gè)樣本塊,按照P0,PI, P2…的順序編程,當(dāng)編程P6時(shí),編程前,讀取P0-P5的無(wú)效頁(yè)數(shù)量,編程后,再讀取P0-P5的無(wú)效頁(yè)數(shù)量,通過(guò)對(duì)比編程前后的該無(wú)效頁(yè)數(shù)量,若沒(méi)有變化且當(dāng)前塊未編程完,則繼續(xù)編程下一個(gè)頁(yè),在編程下一個(gè)頁(yè)的過(guò)程中,繼續(xù)對(duì)比編程該頁(yè)前后已編程頁(yè)中無(wú)效頁(yè)的數(shù)量,直到已編程頁(yè)中無(wú)效頁(yè)的數(shù)量有變化或者無(wú)效頁(yè)無(wú)變化且當(dāng)前塊編程完。
      [0035]進(jìn)一步的,如果已編程頁(yè)中無(wú)效頁(yè)的數(shù)量無(wú)變化且當(dāng)前塊編程完,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò);如果該無(wú)效頁(yè)的數(shù)量有變化且無(wú)效頁(yè)數(shù)量增大時(shí),則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò),反之,如果無(wú)效頁(yè)的數(shù)量有變化且無(wú)效頁(yè)數(shù)量減小時(shí),將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為填充。對(duì)各樣本塊的無(wú)效頁(yè)標(biāo)記完成后,對(duì)各個(gè)樣本塊的無(wú)效頁(yè)操作方式進(jìn)行統(tǒng)計(jì),取較大比例的無(wú)效頁(yè)操作方式作為所有樣本塊的最終無(wú)效頁(yè)操作方式。例如,一共有10個(gè)樣本塊,如果有6個(gè)樣本塊的無(wú)效頁(yè)操作方式被標(biāo)記為跳過(guò),另外4個(gè)樣本塊的無(wú)效頁(yè)操作方式被標(biāo)記為填充,則該10個(gè)樣本塊的最終無(wú)效頁(yè)操作方式為跳過(guò)。若3個(gè)樣本塊的無(wú)效頁(yè)操作方式被標(biāo)記為跳過(guò),另外7個(gè)樣本塊的無(wú)效頁(yè)操作方式被標(biāo)記為填充,則該10個(gè)樣本塊的最終無(wú)效頁(yè)操作方式為填充。
      [0036]步驟106,如果樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)樣本塊進(jìn)行一次性全部編程完,檢測(cè)出樣本塊中的無(wú)效頁(yè)。
      [0037]在一個(gè)實(shí)施例中,步驟106具體包括:對(duì)樣本塊進(jìn)行一次性全部編程完;建立用于記錄頁(yè)在所有塊中出錯(cuò)的累計(jì)數(shù)值的動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表;當(dāng)動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表中記錄的頁(yè)對(duì)應(yīng)的累計(jì)數(shù)值大于等于第二閾值,則將該頁(yè)標(biāo)記為無(wú)效頁(yè)。
      [0038]本實(shí)施例中,對(duì)樣本塊進(jìn)行一次性全部編程完,即向樣本塊中所有的頁(yè)一次性寫入數(shù)據(jù)。建立動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表,用一個(gè)數(shù)組表示,例如用姒?0汁1,?2吣}表示編號(hào)分別為P0、P2、P3或更多的頁(yè)在所有塊中出錯(cuò)的累計(jì)數(shù)值,該數(shù)組的數(shù)值初始化為0。當(dāng)樣本塊中對(duì)應(yīng)編號(hào)的頁(yè)的數(shù)據(jù)讀取錯(cuò)誤時(shí),則對(duì)應(yīng)該編號(hào)的數(shù)組中的數(shù)值加1,如當(dāng)塊B0{P0,P1,P2...}的頁(yè)P(yáng)0的數(shù)據(jù)讀取錯(cuò)誤時(shí),則對(duì)應(yīng)的Μ{Ρ0}加1,表示編號(hào)為P0的頁(yè)當(dāng)前累計(jì)出錯(cuò)1次,同時(shí),其他樣本塊的P0頁(yè)出錯(cuò),則Μ{Ρ0}繼續(xù)加1,以此類推。這樣讀完所有樣本塊的數(shù)據(jù)內(nèi)容后,將得到一個(gè)關(guān)于出錯(cuò)頁(yè)累計(jì)數(shù)值的數(shù)值,如Μ{Ρ0,P1,?2吣} = {1,2,3…},表示按順序讀取N個(gè)塊的數(shù)據(jù)內(nèi)容之后,編號(hào)為P0的頁(yè)總共累計(jì)出錯(cuò)1次,編號(hào)為P1的頁(yè)總共累計(jì)出錯(cuò)2次,編號(hào)為P3的頁(yè)總共累計(jì)出錯(cuò)3次,….。
      [0039]進(jìn)一步的,當(dāng)動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表中記錄的頁(yè)對(duì)應(yīng)的累計(jì)數(shù)值大于等于第二閾值,則將所有樣本塊中的該頁(yè)都標(biāo)記為無(wú)效頁(yè)。例如,設(shè)定第二閾值為P,將上述得到的值M{P0,P1,P2,...}與P比較,如果頁(yè)對(duì)應(yīng)的累計(jì)數(shù)值大于等于P,則認(rèn)為所有樣本塊中的頁(yè)P(yáng)0都是無(wú)效的,將樣本塊中的該頁(yè)標(biāo)記為無(wú)效頁(yè),即在以后的編程中會(huì)跳過(guò)該頁(yè),如果頁(yè)對(duì)應(yīng)的累計(jì)數(shù)值小于P,則認(rèn)為所有樣本塊中的該頁(yè)都是有效的,將樣本塊中的該頁(yè)標(biāo)記為有效頁(yè),在以后的編程中正常使用該頁(yè)。
      [0040]在一個(gè)優(yōu)選的實(shí)施例中,第二閾值為樣本塊的塊數(shù)的三分之一。
      [0041]步驟108,如果樣本塊的無(wú)效頁(yè)操作方式為跳過(guò),則對(duì)樣本塊按順序編程,每次只編程一個(gè)頁(yè),并檢測(cè)出樣本塊中的無(wú)效頁(yè)。
      [0042]在一個(gè)實(shí)施例中,步驟108具體包括:對(duì)各個(gè)樣本塊同時(shí)按順序編程,每次只編程一個(gè)頁(yè);在編程當(dāng)前頁(yè)前,統(tǒng)計(jì)已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,在編程完當(dāng)前頁(yè)后,再統(tǒng)計(jì)不包含當(dāng)前頁(yè)的已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,對(duì)比編程前后已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,如果無(wú)效的數(shù)量增大,則當(dāng)前頁(yè)標(biāo)記為無(wú)效頁(yè),直至所有樣本塊中的頁(yè)都編程完。
      [0043]本實(shí)施例中,對(duì)各個(gè)樣本塊按照頁(yè)的編號(hào)同時(shí)進(jìn)行順序編程,也就是對(duì)各個(gè)樣本塊同時(shí)編程同一個(gè)頁(yè),每次只編程一個(gè)頁(yè),對(duì)每個(gè)頁(yè)編程前,統(tǒng)計(jì)已編程頁(yè)在所有樣本塊中的無(wú)效頁(yè)的總數(shù),編程該當(dāng)前頁(yè)之后,再統(tǒng)計(jì)不包含當(dāng)前頁(yè)的已編程頁(yè)在所有樣本塊中無(wú)效頁(yè)的總數(shù)。比如,對(duì)于各個(gè)樣本塊中編號(hào)為P6的頁(yè)進(jìn)行編程之前,先統(tǒng)計(jì)已編程的編號(hào)為P0?P5的頁(yè)在所有樣本塊中的無(wú)效頁(yè)的總數(shù)(記為H),編程P6后,再統(tǒng)計(jì)編號(hào)為P0?P5的頁(yè)在所有樣本塊中的無(wú)效頁(yè)的總數(shù)(記為K),通過(guò)對(duì)比編程前后的該無(wú)效頁(yè)的總數(shù),可以獲知當(dāng)前編程頁(yè)對(duì)其他頁(yè)是否產(chǎn)生干擾。
      [0044]如果已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量增大,則反映了當(dāng)前頁(yè)的編程干擾到了其他已編程頁(yè),對(duì)當(dāng)前頁(yè)標(biāo)記為無(wú)效頁(yè),即在今后的編程中直接跳過(guò)該頁(yè)。如上例中,判斷Η值是否大于K值,如果是,則反映了對(duì)當(dāng)前頁(yè)的編程可以使得之前已編程頁(yè)出錯(cuò)的數(shù)量減小,為了盡可能最大限度的利用閃存空間,就對(duì)當(dāng)前頁(yè)采取填充的方式;如果否,則反映了對(duì)當(dāng)前頁(yè)的編程干擾到了其他已編程頁(yè),使得其他已編程頁(yè)出錯(cuò)的數(shù)量增大,進(jìn)而將當(dāng)前頁(yè)標(biāo)記為無(wú)效頁(yè),在今后的編程中直接跳過(guò)該頁(yè)。
      [0045]在一個(gè)實(shí)施例中,步驟108還包括:跳過(guò)標(biāo)記為無(wú)效頁(yè)的頁(yè),對(duì)樣本塊再次編程一遍;編程完后,讀取編程的頁(yè),獲取自身無(wú)效的疑問(wèn),將自身無(wú)效的頁(yè)標(biāo)記為無(wú)效頁(yè)。
      [0046]本實(shí)施例中,再將會(huì)使其他頁(yè)出錯(cuò)的頁(yè)找出后(這些頁(yè)標(biāo)記為了無(wú)效頁(yè)),則跳過(guò)這些頁(yè),再將樣本塊編程一遍。例如,Ρ4、Ρ10為無(wú)效頁(yè),則不編程Ρ4和Ρ10。編程完后,讀取編程的頁(yè),獲取自身無(wú)效的頁(yè)(也就是自身壞的頁(yè)),將自身無(wú)效的頁(yè)也標(biāo)記為無(wú)效頁(yè)。本實(shí)施例中,自身無(wú)效的頁(yè)和對(duì)其他頁(yè)產(chǎn)生干擾的頁(yè),作為最終的無(wú)效頁(yè),將在以后的編程中跳過(guò)這些頁(yè)。
      [0047]如圖2所示,在一個(gè)實(shí)施例中,還提供了一種閃存管理系統(tǒng),包括:
      [0048]樣本塊獲取模塊220,用于獲取樣本塊。
      [0049]無(wú)效頁(yè)操作方式判斷模塊240,用于判斷樣本塊的無(wú)效頁(yè)操作方式。
      [0050]第一無(wú)效頁(yè)檢測(cè)模塊260,用于如果樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)樣本塊進(jìn)行一次性全部編程完,檢測(cè)出樣本塊中的無(wú)效頁(yè)。
      [0051]第二無(wú)效頁(yè)檢測(cè)模塊280,用于如果樣本塊的無(wú)效頁(yè)操作方式為跳過(guò),則對(duì)樣本塊按順序編程,每次只編程一個(gè)頁(yè),檢測(cè)出樣本塊中的無(wú)效頁(yè)。
      [0052]在一個(gè)實(shí)施例中,如圖3所示,樣本塊獲取模塊220包括:
      [0053]抽取模塊220a,用于在閃存芯片的同一層中隨機(jī)抽取第一數(shù)量的塊。
      [0054]有效無(wú)效判斷模塊220b,用于對(duì)抽取的第一數(shù)量的塊進(jìn)行一次性編程,對(duì)該塊中的頁(yè)進(jìn)行頁(yè)的有效無(wú)效判斷。
      [0055]樣本塊確定模塊220c,用于當(dāng)塊中的頁(yè)滿足以下條件:當(dāng)塊包含的全部頁(yè)有效時(shí),該塊不用做樣本塊;當(dāng)該塊包含的全部頁(yè)無(wú)效時(shí),擦除該塊,再隨機(jī)抽取塊中的第二數(shù)量的頁(yè)進(jìn)行編程,并且讀取第二數(shù)量的頁(yè)的數(shù)據(jù),若第二數(shù)量的頁(yè)至少有一個(gè)頁(yè)是有效的;則將該塊作為樣本塊。
      [0056]在一個(gè)實(shí)施例中,有效無(wú)效判斷模塊220b用于當(dāng)對(duì)頁(yè)進(jìn)行編程時(shí),對(duì)寫入的數(shù)據(jù)內(nèi)容進(jìn)行ECC編碼,再在讀取頁(yè)的數(shù)據(jù)內(nèi)容時(shí)進(jìn)行ECC解碼,在解碼過(guò)程中對(duì)該頁(yè)中錯(cuò)誤字節(jié)數(shù)進(jìn)行統(tǒng)計(jì),當(dāng)對(duì)頁(yè)完成ECC解碼時(shí),獲取該頁(yè)的最大錯(cuò)誤字節(jié)數(shù),當(dāng)最大錯(cuò)誤字節(jié)數(shù)大于第一閾值時(shí),將該頁(yè)標(biāo)記為無(wú)效頁(yè)。
      [0057]進(jìn)一步的,在一個(gè)實(shí)施例中,第一閾值為量產(chǎn)閾值;其中,所述量產(chǎn)閾值為ECC閾值的一半大小。
      [0058]在一個(gè)實(shí)施例中,如圖4所示,無(wú)效頁(yè)操作方式判斷模塊240包括:
      [0059]無(wú)效頁(yè)數(shù)量對(duì)比模塊240a,用于對(duì)樣本塊按順序編程,每次只編程一個(gè)頁(yè),對(duì)比編程前后已編程頁(yè)中無(wú)效頁(yè)的數(shù)量。
      [0060]無(wú)效頁(yè)操作方式標(biāo)記模塊240b,用于如果無(wú)效頁(yè)的數(shù)量無(wú)變化且當(dāng)前塊編程完,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò),如果無(wú)效頁(yè)的數(shù)量增大,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò),如果無(wú)效頁(yè)的數(shù)量減小,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為填充。
      [0061]無(wú)效頁(yè)操作方式確定模塊240c,用于對(duì)各個(gè)樣本塊的無(wú)效頁(yè)操作方式進(jìn)行統(tǒng)計(jì),取較大比例的無(wú)效頁(yè)操作方式作為所有樣本塊的無(wú)效頁(yè)操作方式。
      [0062]在一個(gè)實(shí)施例中,第一無(wú)效頁(yè)檢測(cè)模塊260用于對(duì)樣本塊進(jìn)行一次性全部編程完;建立用于記錄頁(yè)在所有塊中出錯(cuò)的累計(jì)數(shù)值的動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表;當(dāng)動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表中記錄的頁(yè)對(duì)應(yīng)的累計(jì)數(shù)值大于等于第二閾值,則將該頁(yè)標(biāo)記為無(wú)效頁(yè)。
      [0063]進(jìn)一步的,在一個(gè)實(shí)施例中,第二閾值為樣本塊的塊數(shù)的三分之一。
      [0064]在一個(gè)實(shí)施例中,第二無(wú)效頁(yè)檢測(cè)模塊280用于對(duì)各個(gè)樣本塊同時(shí)按順序編程,每次只編程一個(gè)頁(yè);在編程當(dāng)前頁(yè)前,統(tǒng)計(jì)已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,在編程完當(dāng)前頁(yè)后,再統(tǒng)計(jì)不包含當(dāng)前頁(yè)的已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,對(duì)比編程前后所述已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,如果所述無(wú)效的數(shù)量增大,則將當(dāng)前頁(yè)標(biāo)記為無(wú)效頁(yè),直至所有樣本塊中的頁(yè)都編程完。
      [0065]進(jìn)一步的,在一個(gè)實(shí)施例中,第二無(wú)效頁(yè)檢測(cè)模塊280還用于跳過(guò)標(biāo)記為無(wú)效頁(yè)的頁(yè),對(duì)樣本塊再次編程一遍;編程完后,讀取編程的頁(yè),獲取自身無(wú)效的頁(yè),將自身無(wú)效的頁(yè)標(biāo)記為無(wú)效頁(yè)。
      [0066]上述閃存管理方法和系統(tǒng),考慮到了閃存不良品芯片中可能包含的無(wú)效頁(yè)的兩種情況,對(duì)于樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)樣本塊進(jìn)行一次性全部編程完,再檢測(cè)出其中的無(wú)效頁(yè),對(duì)于樣本塊的無(wú)效頁(yè)操方式為跳過(guò),則對(duì)樣本塊按順序編程,每次只編程一個(gè)頁(yè),再檢測(cè)出其中的無(wú)效頁(yè)。由于無(wú)效操作方式為填充的樣本塊包含能對(duì)其他頁(yè)產(chǎn)生良性干擾的的頁(yè),對(duì)樣本塊進(jìn)行一次性全部編程完能夠使閃存利用更多的空間資源,而無(wú)效操作方式為跳過(guò)的樣本塊包含自身無(wú)效或?qū)ζ渌?yè)產(chǎn)生惡性干擾的頁(yè),對(duì)樣本塊通過(guò)一邊編程一邊判斷無(wú)效頁(yè)的檢測(cè)方式能夠更加準(zhǔn)確的檢測(cè)出無(wú)效頁(yè)。因此,上述閃存管理方法和系統(tǒng)能夠盡可能最大限度的利用閃存存儲(chǔ)空間,回收利用閃存不良品,使得閃存不良品資源可以高效回收利用,提高了閃存量產(chǎn)良率,節(jié)約了生產(chǎn)成本。
      [0067]以上所述實(shí)施例僅表達(dá)了本發(fā)明的幾種實(shí)施方式,其描述較為具體和詳細(xì),但并不能因此而理解為對(duì)本發(fā)明專利范圍的限制。應(yīng)當(dāng)指出的是,對(duì)于本領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明構(gòu)思的前提下,還可以做出若干變形和改進(jìn),這些都屬于本發(fā)明的保護(hù)范圍。因此,本發(fā)明專利的保護(hù)范圍應(yīng)以所附權(quán)利要求為準(zhǔn)。
      【權(quán)利要求】
      1.一種閃存管理方法,所述方法包括: 獲取樣本塊; 判斷所述樣本塊的無(wú)效頁(yè)操作方式; 如果所述樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)所述樣本塊進(jìn)行一次性全部編程完,檢測(cè)出所述樣本塊中的無(wú)效頁(yè); 如果所述樣本塊的無(wú)效頁(yè)操作方式為跳過(guò),則對(duì)所述樣本塊按順序編程,每次只編程一個(gè)頁(yè),并檢測(cè)出所述樣本塊中的無(wú)效頁(yè)。
      2.根據(jù)權(quán)利要求1所述的閃存管理方法,其特征在于,所述獲取樣本塊,包括: 在閃存芯片的同一層中隨機(jī)抽取第一數(shù)量的塊; 對(duì)所述抽取的第一數(shù)量的塊進(jìn)行一次性編程,對(duì)所述塊中的頁(yè)進(jìn)行頁(yè)的有效無(wú)效判斷; 當(dāng)塊中的頁(yè)滿足以下條件:當(dāng)所述塊包含的全部頁(yè)有效時(shí),所述塊不用做樣本塊;當(dāng)所述塊包含的全部頁(yè)無(wú)效時(shí),擦除所述塊,再隨機(jī)抽取塊中的第二數(shù)量的頁(yè)進(jìn)行編程,并且讀取所述第二數(shù)量的頁(yè)的數(shù)據(jù),若所述第二數(shù)量的頁(yè)至少有一個(gè)頁(yè)是有效的;則將所述塊作為樣本塊。
      3.根據(jù)權(quán)利要求2所述的閃存管理方法,其特征在于,所述頁(yè)的有效無(wú)效判斷,包括: 當(dāng)對(duì)所述頁(yè)進(jìn)行編程時(shí),對(duì)寫入的數(shù)據(jù)內(nèi)容進(jìn)行ECC編碼,再在讀取頁(yè)的數(shù)據(jù)內(nèi)容時(shí)進(jìn)行ECC解碼,在解碼過(guò)程中對(duì)所述頁(yè)中錯(cuò)誤字節(jié)數(shù)進(jìn)行統(tǒng)計(jì),當(dāng)對(duì)頁(yè)完成ECC解碼時(shí),獲取所述頁(yè)的最大錯(cuò)誤字節(jié)數(shù),當(dāng)所述最大錯(cuò)誤字節(jié)數(shù)大于第一閾值時(shí),將所述頁(yè)標(biāo)記為無(wú)效頁(yè)。
      4.根據(jù)權(quán)利要求3所述的閃存管理方法,其特征在于,所述第一閾值為量產(chǎn)閾值;其中,所述量產(chǎn)閾值為ECC閾值的一半大小。
      5.根據(jù)權(quán)利要求1所述的閃存管理方法,其特征在于,所述判斷樣本塊中無(wú)效頁(yè)的操作方式,包括: 對(duì)所述樣本塊按順序編程,每次只編程一個(gè)頁(yè),對(duì)比編程前后已編程頁(yè)中無(wú)效頁(yè)的數(shù)量; 如果所述無(wú)效頁(yè)的數(shù)量無(wú)變化且當(dāng)前塊編程完,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò),如果所述無(wú)效頁(yè)的數(shù)量增大,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò),如果所述無(wú)效頁(yè)的數(shù)量減小,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為填充; 對(duì)各個(gè)樣本塊的無(wú)效頁(yè)操作方式進(jìn)行統(tǒng)計(jì),取較大比例的無(wú)效頁(yè)操作方式作為所有樣本塊的無(wú)效頁(yè)操作方式。
      6.根據(jù)權(quán)利要求1或5所述的閃存管理方法,其特征在于,所述對(duì)樣本塊進(jìn)行一次性全部編程完,檢測(cè)出所述樣本塊中的無(wú)效頁(yè),包括: 對(duì)所述樣本塊進(jìn)行一次性全部編程完; 建立用于記錄頁(yè)在所有塊中出錯(cuò)的累計(jì)數(shù)值的動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表; 當(dāng)所述動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表中記錄的頁(yè)對(duì)應(yīng)的所述累計(jì)數(shù)值大于等于第二閾值,則將所述頁(yè)標(biāo)記為無(wú)效頁(yè)。
      7.根據(jù)權(quán)利要求6所述的閃存管理方法,其特征在于,所述第二閾值為所述樣本塊的塊數(shù)的三分之一。
      8.根據(jù)權(quán)利要求1或5所述的閃存管理方法,其特征在于,所述對(duì)樣本塊按順序編程,每次只編程一個(gè)頁(yè),檢測(cè)出所述樣本塊中的無(wú)效頁(yè),包括: 對(duì)各個(gè)樣本塊同時(shí)按順序編程,每次只編程一個(gè)頁(yè); 在編程當(dāng)前頁(yè)前,統(tǒng)計(jì)已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,在編程完當(dāng)前頁(yè)后,再統(tǒng)計(jì)不包含當(dāng)前頁(yè)的已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,對(duì)比編程前后所述已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,如果所述無(wú)效的數(shù)量增大,則將當(dāng)前頁(yè)標(biāo)記為無(wú)效頁(yè),直至所有樣本塊中的頁(yè)都編程完。
      9.根據(jù)權(quán)利要求8所述的閃存管理方法,其特征在于,所述對(duì)樣本塊按順序編程,每次只編程一個(gè)頁(yè),檢測(cè)出所述樣本塊中的無(wú)效頁(yè),還包括: 跳過(guò)所述標(biāo)記為無(wú)效頁(yè)的頁(yè),對(duì)所述樣本塊再次編程一遍; 編程完后,讀取編程的頁(yè),獲取自身無(wú)效的頁(yè),將所述自身無(wú)效的頁(yè)標(biāo)記為無(wú)效頁(yè)。
      10.一種閃存管理系統(tǒng),其特征在于,所述系統(tǒng)包括: 樣本塊獲取模塊,用于獲取樣本塊; 無(wú)效頁(yè)操作方式判斷模塊,用于判斷所述樣本塊的無(wú)效頁(yè)操作方式; 第一無(wú)效頁(yè)檢測(cè)模塊,用于如果所述樣本塊的無(wú)效頁(yè)操作方式為填充,則對(duì)所述樣本塊進(jìn)行一次性全部編程完,檢測(cè)出所述樣本塊中的無(wú)效頁(yè); 第二無(wú)效頁(yè)檢測(cè)模塊,用于如果所述樣本塊的無(wú)效頁(yè)操作方式為跳過(guò),則對(duì)所述樣本塊按順序編程,每次只編程一個(gè)頁(yè),并檢測(cè)出所述樣本塊中的無(wú)效頁(yè)。
      11.根據(jù)權(quán)利要求10所述的閃存管理系統(tǒng),其特征在于,所述樣本塊獲取模塊包括: 抽取模塊,用于在閃存芯片的同一層中隨機(jī)抽取第一數(shù)量的塊; 有效無(wú)效判斷模塊,用于對(duì)所述抽取的第一數(shù)量的塊進(jìn)行一次性編程,對(duì)所述塊中的頁(yè)進(jìn)行頁(yè)的有效無(wú)效判斷; 樣本塊確定模塊,用于當(dāng)塊中的頁(yè)滿足以下條件:當(dāng)所述塊包含的全部頁(yè)有效時(shí),所述塊不用做樣本塊;當(dāng)所述塊包含的全部頁(yè)無(wú)效時(shí),擦除所述塊,再隨機(jī)抽取塊中的第二數(shù)量的頁(yè)進(jìn)行編程,并且讀取所述第二數(shù)量的頁(yè)的數(shù)據(jù),若所述第二數(shù)量的頁(yè)至少有一個(gè)頁(yè)是有效的;則將所述塊作為樣本塊。
      12.根據(jù)權(quán)利要求11所述的閃存管理系統(tǒng),其特征在于,所述有效無(wú)效判斷模塊用于當(dāng)對(duì)所述頁(yè)進(jìn)行編程時(shí),對(duì)寫入的數(shù)據(jù)內(nèi)容進(jìn)行ECC編碼,再在讀取頁(yè)的數(shù)據(jù)內(nèi)容時(shí)進(jìn)行ECC解碼,在解碼過(guò)程中對(duì)所述頁(yè)中錯(cuò)誤字節(jié)數(shù)進(jìn)行統(tǒng)計(jì),當(dāng)對(duì)頁(yè)完成ECC解碼時(shí),獲取所述頁(yè)的最大錯(cuò)誤字節(jié)數(shù),當(dāng)所述最大錯(cuò)誤字節(jié)數(shù)大于第一閾值時(shí),將所述頁(yè)標(biāo)記為無(wú)效頁(yè)。
      13.根據(jù)權(quán)利要求12所述的閃存管理系統(tǒng),其特征在于,所述第一閾值為量產(chǎn)閾值;其中,所述量產(chǎn)閾值為ECC閾值的一半大小。
      14.根據(jù)權(quán)利要求10所述的閃存管理方法,其特征在于,所述無(wú)效頁(yè)操作方式判斷模塊包括: 無(wú)效頁(yè)數(shù)量對(duì)比模塊,用于對(duì)所述樣本塊按順序編程,每次只編程一個(gè)頁(yè),對(duì)比編程前后已編程頁(yè)中無(wú)效頁(yè)的數(shù)量; 無(wú)效頁(yè)操作方式標(biāo)記模塊,用于如果所述無(wú)效頁(yè)的數(shù)量無(wú)變化且當(dāng)前塊編程完,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò),如果所述無(wú)效頁(yè)的數(shù)量增大,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為跳過(guò),如果所述無(wú)效頁(yè)的數(shù)量減小,則將當(dāng)前塊的無(wú)效頁(yè)操作方式標(biāo)記為填充; 無(wú)效頁(yè)操作方式確定模塊,用于對(duì)各個(gè)樣本塊的無(wú)效頁(yè)操作方式進(jìn)行統(tǒng)計(jì),取較大比例的無(wú)效頁(yè)操作方式作為所有樣本塊的無(wú)效頁(yè)操作方式。
      15.根據(jù)權(quán)利要求10或14所述的閃存管理系統(tǒng),其特征在于,所述第一無(wú)效頁(yè)檢測(cè)模塊用于對(duì)所述樣本塊進(jìn)行一次性全部編程完;建立用于記錄頁(yè)在所有塊中出錯(cuò)的累計(jì)數(shù)值的動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表;當(dāng)所述動(dòng)態(tài)累計(jì)出錯(cuò)頁(yè)表中記錄的頁(yè)對(duì)應(yīng)的所述累計(jì)數(shù)值大于等于第二閾值,則將所述頁(yè)標(biāo)記為無(wú)效頁(yè)。
      16.根據(jù)權(quán)利要求15所述的閃存管理系統(tǒng),其特征在于,所述第二閾值為所述樣本塊的塊數(shù)的三分之一。
      17.根據(jù)權(quán)利要求10或14所述的閃存管理系統(tǒng),其特征在于,所述第二無(wú)效頁(yè)檢測(cè)模塊用于對(duì)各個(gè)樣本塊同時(shí)按順序編程,每次只編程一個(gè)頁(yè);在編程當(dāng)前頁(yè)前,統(tǒng)計(jì)已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,在編程完當(dāng)前頁(yè)后,再統(tǒng)計(jì)不包含當(dāng)前頁(yè)的已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,對(duì)比編程前后所述已編程頁(yè)在所有樣本塊中無(wú)效的數(shù)量,如果所述無(wú)效的數(shù)量增大,則將當(dāng)前頁(yè)標(biāo)記為無(wú)效頁(yè),直至所有樣本塊中的頁(yè)都編程完。
      18.根據(jù)權(quán)利要求17所述的閃存管理系統(tǒng),其特征在于,所述第二無(wú)效頁(yè)檢測(cè)模塊還用于跳過(guò)所述標(biāo)記為無(wú)效頁(yè)的頁(yè),對(duì)所述樣本塊再次編程一遍;編程完后,讀取編程的頁(yè),獲取自身無(wú)效的頁(yè),將所述自身無(wú)效的頁(yè)標(biāo)記為無(wú)效頁(yè)。
      【文檔編號(hào)】G11C29/42GK104252883SQ201310261138
      【公開(kāi)日】2014年12月31日 申請(qǐng)日期:2013年6月26日 優(yōu)先權(quán)日:2013年6月26日
      【發(fā)明者】洪荷婷, 豆威, 梁小慶, 郭丹 申請(qǐng)人:深圳市江波龍電子有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1