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

      用于閃存的數(shù)據(jù)讀取方法、其控制器與儲(chǔ)存系統(tǒng)的制作方法

      文檔序號(hào):6461981閱讀:192來(lái)源:國(guó)知局

      專(zhuān)利名稱(chēng)::用于閃存的數(shù)據(jù)讀取方法、其控制器與儲(chǔ)存系統(tǒng)的制作方法
      技術(shù)領(lǐng)域
      :本發(fā)明涉及一種數(shù)據(jù)讀取方法,且特別是涉及一種用于閃存的數(shù)據(jù)讀取方法及使用此數(shù)據(jù)讀取方法的控制器。
      背景技術(shù)
      :近年來(lái),由于數(shù)字相機(jī)、具有照相功能的手機(jī)、MP3,以及MP4的發(fā)展十分迅速,所以使得消費(fèi)者對(duì)儲(chǔ)存媒體的需求也急劇增加。綜觀現(xiàn)今所有的儲(chǔ)存媒體,由于閃存(FlashMemory)具有數(shù)據(jù)非易失性、省電、體積小,以及無(wú)機(jī)械結(jié)構(gòu)等特性,所以最適合內(nèi)建于上述所舉例的多種便攜式多媒體裝置中。再者,由于小型存儲(chǔ)卡與隨身盤(pán)等外接式產(chǎn)品對(duì)于現(xiàn)代人而言的需求也很大,所以各家閃存的制造廠商無(wú)不朝向讓閃存的容量變得更大及使用穩(wěn)定度提升的研發(fā)方向而努力研發(fā)著。一般而言,閃存的種類(lèi)大致可以按照工藝的精密程度而分成兩種。而眾所皆知的是,由較低精密程度的工藝所制作出來(lái)的是單層存儲(chǔ)單元(SingleLevelCell,SLC)NAND閃存,而由較高精密程度的工藝所制作出來(lái)的是多層存儲(chǔ)單元(MultiLevelCell,MLC)NAND閃存。其中,多層存儲(chǔ)單元NAND閃存的記憶容量會(huì)高于單層存儲(chǔ)單元MND閃存的記憶容量,但是多層存儲(chǔ)得低。然而,無(wú)論是對(duì)多層存儲(chǔ)單元NAND閃存或是單層存儲(chǔ)單元NAND閃存內(nèi)的同一個(gè)區(qū)塊所儲(chǔ)存的數(shù)據(jù)進(jìn)行多次讀取時(shí),例如十萬(wàn)至百萬(wàn)次間的讀取次數(shù),很有可能會(huì)發(fā)生所讀取的數(shù)據(jù)是錯(cuò)誤的,甚至此被多次讀取區(qū)塊內(nèi)所儲(chǔ)存的數(shù)據(jù)會(huì)發(fā)生異?;蜻z失。而此類(lèi)現(xiàn)象被本發(fā)明領(lǐng)域技術(shù)人員慣稱(chēng)為『讀取干擾』(read-disturb)。特別是,閃存中會(huì)儲(chǔ)存閃存閃存儲(chǔ)存系統(tǒng)的系統(tǒng)數(shù)據(jù)(例如固件碼(FirmwareCode)、文件配置表(FileAllocationTable,FAT)),且此系統(tǒng)數(shù)據(jù)會(huì)在閃存閃存儲(chǔ)存系統(tǒng)運(yùn)作期間高頻率地的讀取。也亦因有著這樣的現(xiàn)象存在著,無(wú)不驅(qū)使著各家廠商必須發(fā)展出能防止讀取干擾的技術(shù),藉以來(lái)有效地抑制因讀取干擾所造成的數(shù)據(jù)遺失。
      發(fā)明內(nèi)容有鑒于此,本發(fā)明提供一種數(shù)據(jù)讀取方法,其能夠有效地避免因讀取干擾所造成的數(shù)據(jù)遺失。本發(fā)明提供一種閃存控制器,其所執(zhí)行的數(shù)據(jù)讀取方法能夠有效地避免因讀取干擾所造成的數(shù)據(jù)遺失?;谏鲜觯景l(fā)明提出一種數(shù)據(jù)讀取方法,其適用于具有閃存的閃存儲(chǔ)存系統(tǒng),其中閃存實(shí)質(zhì)上會(huì)分割為多個(gè)區(qū)塊且此些區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū)。此數(shù)據(jù)讀取方法包括分別地決定數(shù)據(jù)區(qū)中的區(qū)塊是否為頻繁讀取區(qū)塊。此數(shù)據(jù)讀^F又方法也包括配置對(duì)應(yīng)頻繁讀:f又區(qū)塊的緩沖儲(chǔ)存區(qū)并且將儲(chǔ)存于頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中。此數(shù)據(jù)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)。在本發(fā)明的一實(shí)施例中,上述的分別地決定數(shù)據(jù)區(qū)的區(qū)塊是否為頻繁讀取區(qū)塊的步驟包括計(jì)數(shù)數(shù)據(jù)區(qū)中每一區(qū)塊的讀取次數(shù),以及分別地判斷數(shù)據(jù)區(qū)的區(qū)塊的讀取次數(shù)是否大于頻繁讀取閾值,若是,則此數(shù)據(jù)區(qū)的區(qū)塊會(huì)判斷為頻繁存取區(qū)塊。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)讀取方法還包括從閃存的備用區(qū)中選擇區(qū)塊作為對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)讀取方法還包括計(jì)數(shù)對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),以及判斷對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中的數(shù)據(jù)復(fù)制至閃存的備用區(qū)中的另一區(qū)塊并且將此另一區(qū)塊作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)讀取方法,還包括計(jì)數(shù)對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),以及判斷對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于此頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至閃存的備用區(qū)中的另一區(qū)塊并且將此另一區(qū)塊作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)讀取方法,還包括當(dāng)從對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),則將儲(chǔ)存于此頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至閃存的備用區(qū)中的另一區(qū)塊并且將此另一區(qū)塊作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)讀取方法還包括執(zhí)行錯(cuò)誤校正(errorcorrecting)以判斷從對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)時(shí)是否發(fā)生錯(cuò)誤。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)讀取方法還包括從另一閃存中選擇區(qū)塊或以一靜態(tài)隨機(jī)存取存儲(chǔ)器作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)區(qū)的頻繁讀取區(qū)塊中儲(chǔ)存用于閃存儲(chǔ)存系統(tǒng)的固件碼(Fi備arecode)或文件配置表(FUeAllocationTable,FAT)。本發(fā)明提出一種閃存控制器,其適用于具有閃存的閃存儲(chǔ)存系統(tǒng),其中閃存實(shí)質(zhì)上會(huì)分割為多個(gè)區(qū)塊且此些區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū)。此閃存控制器包括微處理器與存儲(chǔ)器接口。存儲(chǔ)器接口是耦接至微處理器并且用以存取閃存。微處理器會(huì)分別地決定數(shù)據(jù)區(qū)的區(qū)塊是否為頻繁讀取區(qū)塊,并配置對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū),且將儲(chǔ)存于此頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中,當(dāng)^:處理器之后欲從頻繁讀取區(qū)塊中讀取數(shù)據(jù)時(shí),則從對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)。在本發(fā)明的一實(shí)施例中,上述的微處理器分別計(jì)數(shù)數(shù)據(jù)區(qū)中每一區(qū)塊的讀取次數(shù),以及當(dāng)判斷數(shù)據(jù)區(qū)的區(qū)塊的讀取次數(shù)大于頻繁讀取閾值時(shí),判斷數(shù)據(jù)區(qū)的此區(qū)塊為頻繁存取區(qū)塊。在本發(fā)明的一實(shí)施例中,上述的微處理器從閃存的備用區(qū)中選擇區(qū)塊作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的微處理器計(jì)數(shù)對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),并且判斷對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中的數(shù)據(jù)復(fù)制至閃存的備用區(qū)中的另一區(qū)塊并且將此另一區(qū)塊作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的微處理器計(jì)數(shù)對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),并且判斷對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于此頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至閃存的備用區(qū)中的另一區(qū)塊并且將此另一區(qū)塊作為對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的微處理器當(dāng)從對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),將儲(chǔ)存于此頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至閃存的備用區(qū)中的另一區(qū)塊并且將此另一區(qū)塊作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的閃存控制器還包括錯(cuò)誤校正單元,其用以判斷從對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)時(shí)是否發(fā)生錯(cuò)誤。在本發(fā)明的一實(shí)施例中,上述的微處理器從另一閃存中選擇區(qū)塊或以靜態(tài)隨機(jī)存取存儲(chǔ)器作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的數(shù)據(jù)區(qū)的頻繁讀取區(qū)塊中包括固件碼或文件配置表。在本發(fā)明的一實(shí)施例中,上述的閃存為單層存儲(chǔ)單元(SingleLevelCell,SLC)NAND閃存或多層存儲(chǔ)單元(MultiLevelCell,MIX)副D閃存。在本發(fā)明的一實(shí)施例中,上述的閃存儲(chǔ)存系統(tǒng)為USB隨身盤(pán)、存儲(chǔ)卡或固態(tài)硬盤(pán)。本發(fā)明提出一種閃存儲(chǔ)存系統(tǒng),其包括總線連接接口、閃存與閃存控制器。總線連接接口用以連接主機(jī)。閃存會(huì)分割為多個(gè)區(qū)塊且此些區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū)。閃存控制器是耦接至該總線連接接口與閃存,其會(huì)分別地決定數(shù)據(jù)區(qū)的區(qū)塊是否為頻繁讀取區(qū)塊,并配置對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū),且將儲(chǔ)存于此頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中,當(dāng)閃存控制器之后欲從頻繁讀取區(qū)塊中讀取數(shù)據(jù)時(shí),則從對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)。在本發(fā)明的一實(shí)施例中,上述的閃存控制器分別計(jì)數(shù)數(shù)據(jù)區(qū)中每一區(qū)塊的讀取次數(shù),以及當(dāng)判斷數(shù)據(jù)區(qū)的區(qū)塊的讀取次數(shù)大于頻繁讀取閾值時(shí),判斷數(shù)據(jù)區(qū)的此區(qū)塊為頻繁存取區(qū)塊。在本發(fā)明的一實(shí)施例中,上述的閃存控制器從閃存的備用區(qū)中選擇區(qū)塊作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的閃存控制器計(jì)數(shù)對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),并且判斷對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中的數(shù)據(jù)復(fù)制至閃存的備用區(qū)中的另一區(qū)塊并且將此另一區(qū)塊作為對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。在本發(fā)明的一實(shí)施例中,上述的閃存控制器計(jì)數(shù)對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),并且判斷對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于此頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至閃存的備用區(qū)中的另一區(qū)塊并且將此另一區(qū)塊作為對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。本發(fā)明因采用緩沖儲(chǔ)存區(qū)來(lái)儲(chǔ)存閃存中頻繁讀取區(qū)塊內(nèi)的數(shù)據(jù),并且以此緩沖儲(chǔ)存區(qū)作為后續(xù)讀取之用。因此,可有效地避免因頻繁讀取而發(fā)生讀取干擾時(shí)所造成的數(shù)據(jù)遺失。為使本發(fā)明的上述特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉較佳實(shí)施例,并結(jié)合附圖詳細(xì)說(shuō)明如下。圖1是根據(jù)本發(fā)明第一實(shí)施例繪示閃存儲(chǔ)存系統(tǒng)的概要方塊圖。圖2A-2C是根據(jù)本發(fā)明第一實(shí)施例繪示閃存及其運(yùn)作的詳細(xì)方塊圖。圖3(a)-(b)是根據(jù)本發(fā)明第一實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。圖4(a)-(b)是根據(jù)本發(fā)明另一實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。圖5是根據(jù)本發(fā)明第二實(shí)施例繪示閃存儲(chǔ)存系統(tǒng)的概要方塊圖。圖6(a)-(b)是根據(jù)本發(fā)明第二實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。圖7是根據(jù)本發(fā)明第三實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。圖8是根據(jù)本發(fā)明另一實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。圖9是根據(jù)本發(fā)明第四實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。附圖符號(hào)說(shuō)明100、100,:閃存儲(chǔ)存系統(tǒng)110、110,閃存控制器110a:微處理器110b:閃存^妄口110c:錯(cuò)誤校正單元120:總線連接接口130:閃存130-0、130-1、130-N:物理區(qū)塊200:主機(jī)204:數(shù)據(jù)區(qū)206:備用區(qū)208:替換區(qū)塊S301、S303、S305、S307、S309、S311、S313、S315、S317、S317,:數(shù)據(jù)讀取方法的步驟S601、S603、S605、S607、S609、S611、S613、S615、S617:數(shù)據(jù)讀取方法的步驟S701、S703、S705、S707、S709、S711、S713、S715、S717、S719、S719,:數(shù)據(jù)讀取方法的步驟S901、S903、S905、S907、S909、S911、S913、S915、S917、S919:凄t據(jù)讀取方法的步驟S、M、C:區(qū)塊具體實(shí)施例方式為避免閃存中區(qū)塊內(nèi)的數(shù)據(jù)因多次讀取后發(fā)生讀取干擾而造成遺失,本發(fā)明提出一種數(shù)據(jù)讀取方法,其通過(guò)在儲(chǔ)存數(shù)據(jù)的區(qū)塊中頻繁讀取數(shù)據(jù)之前將數(shù)據(jù)復(fù)制于緩沖儲(chǔ)存區(qū)中,并且之后由此緩沖儲(chǔ)存區(qū)作為后續(xù)讀取數(shù)據(jù)之用。由此,避免原儲(chǔ)存數(shù)據(jù)的區(qū)塊因多次讀取而遺失其所儲(chǔ)存的數(shù)據(jù)。以下將以幾個(gè)范例實(shí)施例并結(jié)合附圖詳細(xì)說(shuō)明本發(fā)明。圖1是根據(jù)本發(fā)明第一實(shí)施例繪示閃存儲(chǔ)存系統(tǒng)的概要方塊圖。請(qǐng)參考圖1,閃存儲(chǔ)存系統(tǒng)100包括閃存控制器110、總線連接接口120以及閃存130。通常閃存儲(chǔ)存系統(tǒng)100會(huì)與主機(jī)200—起使用,以使主機(jī)200可將數(shù)據(jù)寫(xiě)入至閃存儲(chǔ)存系統(tǒng)IOO或從閃存儲(chǔ)存系統(tǒng)100中讀取數(shù)據(jù)。在本實(shí)施例中,閃存儲(chǔ)存系統(tǒng)100為隨身盤(pán)。但必須了解的是,在本發(fā)明另一實(shí)施例中閃存儲(chǔ)存系統(tǒng)IOO也可以是存儲(chǔ)卡或固態(tài)硬盤(pán)(SolidStateDrive,SSD)。閃存控制器IIO會(huì)協(xié)調(diào)總線連接接口120以及閃存130的整體運(yùn)作,例如數(shù)據(jù)的儲(chǔ)存、讀取與擦除等。閃存控制器110包括微處理器110a與閃存接口110b。微處理器110a會(huì)管理與操作閃存130,例如執(zhí)行平均磨損(wearleveling)功能、壞區(qū)塊管理功能、維護(hù)對(duì)映表(mappingtable)等。特別是,在本發(fā)明實(shí)施例中,微處理器110a會(huì)執(zhí)行根據(jù)本實(shí)施例的數(shù)據(jù)讀取方法的步驟(如圖3所示)。閃存接口110b耦接至微處理器110a并且用以存取閃存130。也就是,主機(jī)200欲寫(xiě)入至閃存130的數(shù)據(jù)會(huì)經(jīng)由閃存接口110b轉(zhuǎn)換為閃存130所能接受的格式。此外,雖未繪示于本實(shí)施例,但閃存控制器110可還包括存儲(chǔ)器管理模塊、緩沖存儲(chǔ)器與電源管理模塊等一般閃存常見(jiàn)的功能模塊??偩€連接接口120用以連接主機(jī)200。在本實(shí)施例中,總線連接接口120為USB接口。然而,必須了解的是本發(fā)明不限于此,總線連接接口120也可以是PCIExpress接口、IEEE1394接口、SATA接口、MS接口、MMC接口、SD接口、CF接口、IDE接口或其它適合的數(shù)據(jù)傳輸接口。閃存130耦接閃存控制器IIO并且用以?xún)?chǔ)存數(shù)據(jù)。閃存130通常實(shí)質(zhì)上分割為多個(gè)物理區(qū)塊(physicalblock)130-0至130-N,為方便說(shuō)明以下將物理區(qū)塊簡(jiǎn)稱(chēng)為區(qū)塊。一般而言,在閃存中區(qū)塊為擦除的最小單位。亦即,每一區(qū)塊含有最小數(shù)目的一并被擦除的存儲(chǔ)單元。每一區(qū)塊通常會(huì)分割為數(shù)個(gè)頁(yè)(page)。頁(yè)通常為編程(program)的最小單元,但要特別說(shuō)明的是在有些不同的閃存設(shè)計(jì),最小的編程單位也可為一個(gè)扇區(qū)(sector)大小,即一頁(yè)中有多個(gè)扇區(qū)并以一扇區(qū)為編程的最小單元。換言之,頁(yè)為寫(xiě)入數(shù)據(jù)或讀取數(shù)據(jù)的最小單元。每一頁(yè)通常包括使用者數(shù)據(jù)區(qū)D與冗余區(qū)R。使用者數(shù)據(jù)區(qū)用以?xún)?chǔ)存使用者的數(shù)據(jù),而宂余區(qū)用以?xún)?chǔ)存系統(tǒng)的數(shù)據(jù)(例如,錯(cuò)誤校正石馬(errorcorrectingcode,ECC))。為對(duì)應(yīng)于磁盤(pán)驅(qū)動(dòng)器的扇區(qū)(sector)大小,一般而言,使用者數(shù)據(jù)區(qū)D通常為512字節(jié),而冗余區(qū)R通常為16字節(jié)。也就是,一頁(yè)為一個(gè)扇區(qū)。然而,也可以多個(gè)扇區(qū)形成一頁(yè),例如一頁(yè)包括4個(gè)扇區(qū)。一般而言,區(qū)塊可由任意數(shù)目的頁(yè)所組成,例如64頁(yè)、128頁(yè)、256頁(yè)等。區(qū)塊130-0至130-N通常也可^皮分組為數(shù)個(gè)區(qū)域(zone),以區(qū)域來(lái)管理存儲(chǔ)器某種程度上是彼此獨(dú)立地操作以增加操作執(zhí)行的平行程度且簡(jiǎn)化管理的復(fù)雜度。以下將根據(jù)本發(fā)明并結(jié)合附圖詳細(xì)說(shuō)明閃存的運(yùn)作。必須了解的是,在以下描述中使用"提取"、"搬移"、"交換"等詞來(lái)操作閃存區(qū)塊是邏輯上的概念。也就是說(shuō),閃存區(qū)塊的實(shí)際位置并未更動(dòng),而是邏輯上對(duì)閃存區(qū)塊進(jìn)行操作。圖2A-2C是根據(jù)本發(fā)明第一實(shí)施例繪示閃存130及其運(yùn)作的詳細(xì)方塊圖。請(qǐng)參考圖2A,在本發(fā)明實(shí)施例中,為了有效率地編程(即寫(xiě)入與擦除)閃存130,閃存130的區(qū)塊130-1至130-N會(huì)在邏輯上分組為一數(shù)據(jù)區(qū)204與一備用區(qū)206。一般來(lái)說(shuō),閃存130中屬于數(shù)據(jù)區(qū)204的區(qū)塊會(huì)占90%以上。數(shù)據(jù)區(qū)204中的區(qū)塊用以?xún)?chǔ)存數(shù)據(jù),一般來(lái)說(shuō)就是主機(jī)200所操作的邏輯區(qū)塊地址所對(duì)應(yīng)的區(qū)塊。備用區(qū)206中的區(qū)塊是用以替換數(shù)據(jù)區(qū)204中的區(qū)塊,因此在備用區(qū).206中的區(qū)塊為空或可使用的區(qū)塊,即無(wú)記錄數(shù)據(jù)或標(biāo)記為已沒(méi)用的無(wú)效數(shù)據(jù)。具體來(lái)說(shuō),由于若要對(duì)已寫(xiě)過(guò)數(shù)據(jù)位置再次寫(xiě)入數(shù)據(jù)時(shí),必須先執(zhí)行擦除的動(dòng)作。然而,如前所述閃存寫(xiě)入單位為頁(yè),而擦除單位為區(qū)塊。一個(gè)擦除的單位大于寫(xiě)入的單位,這表示若要執(zhí)行區(qū)塊擦除動(dòng)作,必須先將欲擦除區(qū)塊中的有效頁(yè)復(fù)制至其它區(qū)塊后才可進(jìn)行。因此,當(dāng)欲在數(shù)據(jù)區(qū)204中已寫(xiě)過(guò)數(shù)據(jù)位置的區(qū)塊M中寫(xiě)入新數(shù)據(jù)時(shí),一般會(huì)在備用區(qū)206中提取一區(qū)塊S,然后將區(qū)塊M中的有效數(shù)據(jù)復(fù)制至區(qū)塊S且將新數(shù)據(jù)寫(xiě)入?yún)^(qū)塊S后,將區(qū)塊M擦除后搬移至備用區(qū)206同時(shí)將區(qū)塊S搬移至數(shù)據(jù)區(qū)204。必須了解的是,將區(qū)塊M擦除后搬移至備用區(qū)206同時(shí)將區(qū)塊S搬移至數(shù)據(jù)區(qū)204是邏輯上將區(qū)塊M關(guān)聯(lián)于備用區(qū)206而將區(qū)塊S關(guān)聯(lián)于數(shù)據(jù)區(qū)204。其中本領(lǐng)域技術(shù)人員都能了解數(shù)據(jù)區(qū)204中區(qū)塊的邏輯關(guān)系可由邏輯物理對(duì)映表來(lái)維護(hù)。一般來(lái)說(shuō),為了更有效率地使用閃存130,區(qū)塊在邏輯上會(huì)更分為替換區(qū)塊208。圖2B是繪示閃存的另一種運(yùn)作方式,而圖2C是繪示圖2B的詳細(xì)運(yùn)作示意圖。請(qǐng)參考圖2B與2C,替換區(qū)塊208是用來(lái)取代數(shù)據(jù)區(qū)204的區(qū)塊。更詳細(xì)而言,當(dāng)從上述備用區(qū)206中提取區(qū)塊C來(lái)取代數(shù)據(jù)區(qū)204的區(qū)塊M時(shí),C^擦除區(qū)塊M。具體來(lái)說(shuō),會(huì)將區(qū)塊M中欲寫(xiě)入地址之前的有效數(shù)據(jù)(即頁(yè)P(yáng)0與Pl)復(fù)制至區(qū)塊C(如圖2C的(a)),并且將新數(shù)據(jù)(即區(qū)塊C的頁(yè)P(yáng)2與P3)寫(xiě)入至C區(qū)塊(如圖2C的(b))。此時(shí),將含有部分的有效舊數(shù)據(jù)與所寫(xiě)入新數(shù)據(jù)的區(qū)塊C暫時(shí)地關(guān)聯(lián)為替換區(qū)塊208。此是因?yàn)?,區(qū)塊M中的有效數(shù)據(jù)有可能在下個(gè)操作中變成無(wú)效,因此立刻將區(qū)塊M中的所有有效數(shù)據(jù)搬移至物理區(qū)塊C可能會(huì)造成無(wú)謂的搬移。在此案例中,在邏輯區(qū)塊地址與物理區(qū)塊地址的對(duì)映上會(huì)記錄多個(gè)物理區(qū)塊地址對(duì)應(yīng)到一個(gè)邏輯區(qū)塊地址的情況,也就是區(qū)塊M與區(qū)塊C的內(nèi)容整合起來(lái)才是所對(duì)映邏輯區(qū)塊的內(nèi)容。所述母子區(qū)塊(區(qū)塊M與區(qū)塊C)的瞬時(shí)關(guān)系可依據(jù)閃存控制器110中緩沖存儲(chǔ)器110d的大小而定,在本發(fā)明實(shí)施例中是以五組來(lái)實(shí)作。之后,當(dāng)需要將區(qū)塊M與區(qū)塊C的內(nèi)容真正合并時(shí),才將區(qū)塊M與區(qū)塊C整并為一區(qū)塊,由此提升區(qū)塊的使用效率。例如,如圖2C的(c)所示,當(dāng)進(jìn)行整并時(shí),區(qū)塊M中剩余的有效數(shù)據(jù)(即頁(yè)P(yáng)4-PN)會(huì)復(fù)制至區(qū)塊C,然后將區(qū)塊M擦除并關(guān)聯(lián)為備用區(qū)206,同時(shí),將區(qū)塊C關(guān)聯(lián)為數(shù)據(jù)區(qū)204,由此完成合并。在本實(shí)施中閃存130為多層存儲(chǔ)單元(MultiLevelCell,MLC)NAND(NAND)閃存。然而,必須了解的是,本發(fā)明不限于此。在本發(fā)明另一實(shí)施例中,單層存儲(chǔ)單元(SingleLevelCell,SLC)NAND閃存也可應(yīng)用于本發(fā)明。如上所述,由于閃存130會(huì)因?qū)ν坏刂返亩啻巫x取后造成此地址上所儲(chǔ)存的數(shù)據(jù)遺失。因此,在本發(fā)明實(shí)施例中微處理器110a會(huì)執(zhí)行能夠有效避免讀取干擾的數(shù)據(jù)讀取程序。圖3是根據(jù)本發(fā)明第一實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。請(qǐng)參考圖3的(a),當(dāng)閃存儲(chǔ)存系統(tǒng)IOO被啟動(dòng)時(shí),首先會(huì)決定數(shù)據(jù)區(qū)204中屬于頻繁讀取的區(qū)塊(步驟S301)。也就是說(shuō),根據(jù)本發(fā)明實(shí)施例的讀取方法會(huì)先判斷數(shù)據(jù)區(qū)204中哪些區(qū)塊是儲(chǔ)存被經(jīng)常讀取的數(shù)據(jù)。一般來(lái)說(shuō),經(jīng)常被讀取的數(shù)據(jù)為系統(tǒng)性數(shù)據(jù)。在本實(shí)施例中,此系統(tǒng)數(shù)據(jù)為閃存儲(chǔ)存系統(tǒng)100的固件碼、文件配置表(FileAllocationTable,FAT)等。接著,在步驟S303中會(huì)配置對(duì)應(yīng)頻繁讀取的區(qū)塊的緩沖儲(chǔ)存區(qū)。也就14儲(chǔ)存區(qū)。在本實(shí)施例中,是從閃存130的備用區(qū)206中提取區(qū)塊作為緩沖儲(chǔ)存區(qū)。然而,必須了解的是在本發(fā)明另一實(shí)施例中也可從另一閃存中選擇區(qū)塊或以一靜態(tài)隨機(jī)存取存儲(chǔ)器作為對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)。值得一提的是,如上所述在閃存130中備用區(qū)206的區(qū)塊是用于與數(shù)據(jù)區(qū)204的區(qū)塊輪替以寫(xiě)入數(shù)據(jù)。當(dāng)使用備用區(qū)206的區(qū)塊作為緩沖儲(chǔ)存區(qū)時(shí)會(huì)減少可輪替的區(qū)塊,因此在本實(shí)施例中是以5個(gè)區(qū)塊作為緩沖儲(chǔ)存區(qū)來(lái)實(shí)作。當(dāng)頻繁讀取區(qū)塊超過(guò)5個(gè)時(shí),則僅會(huì)對(duì)相對(duì)較頻繁讀取的5個(gè)區(qū)塊設(shè)置緩沖儲(chǔ)存區(qū)。然而,必須了解的是本發(fā)明不限于此,系統(tǒng)設(shè)計(jì)者可依據(jù)閃存的備用區(qū)內(nèi)可使用的區(qū)塊來(lái)決定作為緩沖儲(chǔ)存區(qū)的區(qū)塊數(shù)。在步驟S305中會(huì)將儲(chǔ)存于頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)中。之后,請(qǐng)參考圖3的(b),當(dāng)欲從閃存130的區(qū)塊中讀取數(shù)據(jù)時(shí),在步驟S307中會(huì)判斷欲讀取的區(qū)塊是否為在步驟S301中所判斷的頻繁讀取區(qū)塊。倘若在步驟S307中判斷欲讀取的區(qū)塊為頻繁讀取區(qū)塊時(shí),則從對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)(步驟S309)。倘若在步驟S307中判斷欲讀取的區(qū)塊不是頻繁讀取區(qū)塊時(shí),則直接從此區(qū)塊中讀取數(shù)據(jù)(步驟S311)。也就是,在本實(shí)施例中是將頻繁讀取的區(qū)塊中的數(shù)據(jù)于對(duì)應(yīng)緩沖儲(chǔ)存區(qū)中制作一副本,并且之后對(duì)于此頻繁讀取區(qū)塊的讀取會(huì)改由讀取其對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)。由此避免對(duì)原頻繁讀取區(qū)塊的多次讀取而造成讀取干擾的問(wèn)題。此夕卜,由于本實(shí)施例是以閃存130的備用區(qū)206的區(qū)塊作為緩沖儲(chǔ)存區(qū),因此備用區(qū)206的區(qū)塊也可能發(fā)生讀取干擾的問(wèn)題。因此,本實(shí)施例的讀取方法還包括計(jì)數(shù)對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)的讀取次數(shù)(步驟S313),例如在讀取次數(shù)的計(jì)數(shù)值上加1。并且之后判斷對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值(步驟S315),其中緩沖區(qū)讀取閾值是使用者可自行設(shè)定的值,此當(dāng)讀取次數(shù)超過(guò)此值時(shí)來(lái)表示緩沖儲(chǔ)存區(qū)可能快要發(fā)生讀取干擾。因此,倘若在步驟S315中判斷對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)的讀取次數(shù)大于緩沖區(qū)讀取閾值時(shí),則將儲(chǔ)存于對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)中的數(shù)據(jù)復(fù)制至閃存130的備用區(qū)206中的另一區(qū)塊并且以此另一區(qū)塊取代原先作為緩沖儲(chǔ)存區(qū)的區(qū)塊作為新對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)(步驟S317)。另外,除了上述從對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)中復(fù)制數(shù)據(jù)至此另一區(qū)塊外,在本發(fā)明另一實(shí)施例中亦可從原頻繁讀取區(qū)塊中復(fù)制數(shù)據(jù)至此另一區(qū)塊(如圖4所示的步驟S317,)。[第二實(shí)施例]如上所述,第一實(shí)施例是以緩沖區(qū)讀取閾值來(lái)衡量以閃存130的另一區(qū)塊所實(shí)作的緩沖儲(chǔ)存區(qū)是否達(dá)到可能即將發(fā)生讀取干擾而重新配置新的緩沖儲(chǔ)存區(qū)。然而,本發(fā)明也可通過(guò)檢查從緩沖儲(chǔ)存區(qū)中讀取的數(shù)據(jù)是否為錯(cuò)誤來(lái)判定發(fā)生讀取千擾而重新配置新的緩沖儲(chǔ)存區(qū)。本發(fā)明第二實(shí)施例的硬件結(jié)構(gòu)與閃存的操作類(lèi)似于第一實(shí)施例(如圖1與圖2A-2C),因此相同部分在此不再重復(fù)說(shuō)明。第二實(shí)施例與第一實(shí)施例所不同的之處在于第二實(shí)施例在數(shù)據(jù)讀取的步驟中是以檢查從緩沖儲(chǔ)存區(qū)中所讀取的數(shù)據(jù)是否為錯(cuò)誤來(lái)判斷是否重新配置新的緩沖儲(chǔ)存區(qū)。圖5是根據(jù)本發(fā)明第二實(shí)施例繪示閃存儲(chǔ)存系統(tǒng)的概要方塊圖。圖5的閃存儲(chǔ)存系統(tǒng)100,與圖1的閃存儲(chǔ)存系統(tǒng)100的不同之處在于閃存儲(chǔ)存系統(tǒng)IOO,的閃存控制器110,還包括錯(cuò)誤校正(errorcorrecting)單元llOc,其用以對(duì)寫(xiě)入至閃存130的數(shù)據(jù)進(jìn)行錯(cuò)誤校正編碼并且對(duì)從閃存130中讀取的數(shù)據(jù)進(jìn)行錯(cuò)誤校正程序,錯(cuò)誤校正程序?yàn)楸绢I(lǐng)域技術(shù)人員所能輕易了解,在此不贅述。圖6是根據(jù)本發(fā)明第二實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。請(qǐng)參考圖6,步驟S601、S603、S605、S607、S609與S611是相同于圖3的步驟S301、S303、S305、S307、S309與S311,在此不再重復(fù)說(shuō)明。在步驟S613中會(huì)判斷從緩沖儲(chǔ)存區(qū)中讀取的數(shù)據(jù)是否發(fā)生錯(cuò)誤,在本實(shí)施例中是以錯(cuò)誤校正單元110c所產(chǎn)生的錯(cuò)誤校正碼來(lái)檢查數(shù)據(jù)是否發(fā)生錯(cuò)誤。倘若在步驟S613中判斷從緩沖儲(chǔ)存區(qū)中讀取的數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),則在步驟S615中會(huì)從原頻繁讀取區(qū)塊中讀取數(shù)據(jù),并且在步驟S6n中會(huì)將從原頻繁讀取區(qū)塊中讀取的數(shù)據(jù)復(fù)制至閃存130的備用區(qū)206中的另一區(qū)塊并且以此另一區(qū)塊取代原先作為緩沖儲(chǔ)存區(qū)的區(qū)塊,由此作為對(duì)應(yīng)此頻繁讀取區(qū)塊的新緩沖儲(chǔ)存區(qū)。其中,值得說(shuō)明的是,其也可在步驟S613中判斷從緩沖儲(chǔ)存區(qū)中讀取的數(shù)據(jù)發(fā)生錯(cuò)誤超過(guò)一定次數(shù)時(shí),方執(zhí)行步驟S615。[第三實(shí)施例]第一實(shí)施例與第二實(shí)施例是在閃存儲(chǔ)存系統(tǒng)啟動(dòng)時(shí),先決定數(shù)據(jù)區(qū)中頻繁讀取的區(qū)塊以配置緩沖儲(chǔ)存區(qū)避免此些頻繁讀取區(qū)塊的過(guò)渡讀取。然而,本發(fā)明也可以動(dòng)態(tài)的方式來(lái)決定閃存的數(shù)據(jù)區(qū)中此次運(yùn)作時(shí)頻繁讀取的區(qū)塊而為此些頻繁讀取區(qū)塊配置緩沖儲(chǔ)存區(qū)。本發(fā)明第三實(shí)施例的硬件結(jié)構(gòu)與閃存的搡作是相同于第一實(shí)施例(如圖1與圖2A-2C),因此在此不再重復(fù)說(shuō)明。圖7是根據(jù)本發(fā)明第三實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。請(qǐng)參考圖7,當(dāng)欲讀取閃存儲(chǔ)存系統(tǒng)100的閃存130時(shí),在步驟S701中會(huì)判斷欲讀取的區(qū)塊是否已配置對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)。倘若在步驟S701中判斷欲讀取的區(qū)塊未配置對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)時(shí),則直接從此欲讀取的區(qū)塊中讀取數(shù)據(jù)(步驟S703)。接著,在步驟S705中會(huì)計(jì)數(shù)所讀取區(qū)塊的讀取次數(shù),例如將讀取次數(shù)加1。之后,在步驟S707中會(huì)判斷所讀取區(qū)塊的讀取次數(shù)是否大于頻繁讀取閾值,其中頻繁讀取閾值是由使用者自行決設(shè)定以判斷是否區(qū)塊為頻繁讀取區(qū)塊。倘若在步驟S707中判斷所讀取區(qū)塊的讀取次數(shù)大于頻繁讀取閾值時(shí),沖儲(chǔ)存區(qū)。在本實(shí)施例中,是從閃存130的備用區(qū)206中提取區(qū)塊作為緩沖儲(chǔ)存區(qū)。然而,必須了解的是在本發(fā)明另一實(shí)施例中也可從另一閃存中選擇區(qū)塊或以一靜態(tài)隨機(jī)存取存儲(chǔ)器作為對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)。類(lèi)似地在本實(shí)施例中是以5個(gè)區(qū)塊作為緩沖儲(chǔ)存區(qū)來(lái)實(shí)作。當(dāng)頻繁讀取區(qū)塊超過(guò)5個(gè)時(shí),則僅會(huì)對(duì)相對(duì)較頻繁讀取的5個(gè)區(qū)塊設(shè)置緩沖儲(chǔ)存區(qū)。然而,必須了解的是本發(fā)明不限于此,系統(tǒng)設(shè)計(jì)者可依據(jù)閃存的備用區(qū)內(nèi)可使用的區(qū)塊來(lái)決定作為緩沖儲(chǔ)存區(qū)的區(qū)塊數(shù)。在步驟S711中會(huì)將儲(chǔ)存于頻繁讀取的區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)中。倘若在步驟S701中判斷欲讀取的區(qū)塊已配置對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)時(shí),則從對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)(步驟S713)。類(lèi)似于第一實(shí)施例,由于本實(shí)施例是以閃存130的備用區(qū)206的區(qū)塊作為緩沖儲(chǔ)存區(qū),因此其也可能發(fā)生讀取干擾的問(wèn)題。因此,本實(shí)施例的讀取方法還包括計(jì)數(shù)對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)的讀取次數(shù)(步驟S715),并且判斷對(duì)應(yīng)頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值(步驟17S717),其中緩沖區(qū)讀取閾值是使用者可自行設(shè)定的值,此值是用來(lái)判斷緩沖儲(chǔ)存區(qū)可能即將發(fā)生讀取干擾。因此,倘若在步驟S717中判斷對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)的讀取次數(shù)大于緩沖區(qū)讀取閾值時(shí),則將儲(chǔ)存于對(duì)應(yīng)緩沖儲(chǔ)存區(qū)中的數(shù)據(jù)復(fù)制至閃存130的備用區(qū)206中的另一區(qū)塊并且以此另一區(qū)塊取代原先作為緩沖儲(chǔ)存區(qū)的區(qū)塊作為新對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)(步驟S719)。另外,除了上述從對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)中復(fù)制數(shù)據(jù)至此另一區(qū)塊外,在本發(fā)明另一實(shí)施例中也可從原頻繁讀取的區(qū)塊中復(fù)制數(shù)據(jù)至此另一區(qū)塊(如圖8所示的步驟S719')。在本實(shí)施例中是動(dòng)態(tài)的方式在每次對(duì)區(qū)塊讀取時(shí)計(jì)數(shù)此區(qū)塊的讀取次數(shù)并判斷是否達(dá)到屬于頻繁讀取區(qū)塊的閾值以配置對(duì)應(yīng)緩沖儲(chǔ)存區(qū)來(lái)儲(chǔ)存所讀取區(qū)塊內(nèi)的數(shù)據(jù)的副本,并且之后若再對(duì)此頻繁讀取區(qū)塊的讀取時(shí)會(huì)改由讀取其對(duì)應(yīng)的緩沖儲(chǔ)存區(qū)。由此避免對(duì)原頻繁讀取區(qū)塊的多次讀取而造成讀取干擾的問(wèn)題。在以上述動(dòng)態(tài)的方式來(lái)決定閃存的數(shù)據(jù)區(qū)中此次運(yùn)作時(shí)頻繁讀取的區(qū)塊來(lái)配置緩沖儲(chǔ)存區(qū)的結(jié)構(gòu)下,也可應(yīng)用本發(fā)明第二實(shí)施例所述通過(guò)檢查從緩沖儲(chǔ)存區(qū)中讀取的數(shù)據(jù)為錯(cuò)誤而判定發(fā)生讀取干擾而重新配置新的緩沖儲(chǔ)存區(qū)。本發(fā)明第四實(shí)施例的硬件結(jié)構(gòu)與閃存的操作是相同于第二實(shí)施例,在此不再重復(fù)說(shuō)明。圖9是根據(jù)本發(fā)明第四實(shí)施例繪示數(shù)據(jù)讀取方法的流程圖。請(qǐng)參考圖9,步驟S901、S903、S905、S907、S909、S911與S913是相同于圖7的步驟S701、S703、S705、S707、S709、S711與S713,在此不再重復(fù)說(shuō)明。在步驟S915中會(huì)判斷從緩沖儲(chǔ)存區(qū)中讀取的數(shù)據(jù)是否發(fā)生錯(cuò)誤,在本實(shí)施例中是以錯(cuò)誤校正單元110c所產(chǎn)生的錯(cuò)誤校正碼來(lái)檢查數(shù)據(jù)是否發(fā)生錯(cuò)誤。倘若在步驟S915中判斷從緩沖儲(chǔ)存區(qū)中讀取的數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),則在步驟S917中會(huì)從原頻繁讀取區(qū)塊中讀取數(shù)據(jù),并且在步驟S919中會(huì)將從原頻繁讀取區(qū)塊中讀取的數(shù)據(jù)復(fù)制至閃存130的備用區(qū)206中的另一區(qū)塊并且以此另一區(qū)塊取代原先作為緩沖儲(chǔ)存區(qū)的區(qū)塊,由此作為對(duì)應(yīng)此頻繁讀取區(qū)塊的新緩沖儲(chǔ)存區(qū)。明。本領(lǐng)域技術(shù)人員可在不違背本發(fā)明精神下以不同的順序執(zhí)行。綜上所述,本發(fā)明使用緩沖儲(chǔ)存區(qū)來(lái)儲(chǔ)存閃存中頻繁讀取區(qū)塊的數(shù)據(jù),并且以此緩沖儲(chǔ)存區(qū)提供控制器來(lái)讀取數(shù)據(jù)?;?可以有效地避免閃存因發(fā)生讀取干擾而造成數(shù)據(jù)遺失問(wèn)題。雖然本發(fā)明已以較佳實(shí)施例披露如上,但其并非用以限定本發(fā)明,本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍的前提下,當(dāng)可作若干的更改與修飾,因此本發(fā)明的保護(hù)范圍應(yīng)以本發(fā)明的權(quán)利要求為準(zhǔn)。權(quán)利要求1.一種數(shù)據(jù)讀取方法,適用于具有閃存的閃存儲(chǔ)存系統(tǒng),其中該閃存實(shí)質(zhì)上分割為多個(gè)區(qū)塊且所述區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū),該讀取方法包括分別地決定該數(shù)據(jù)區(qū)的所述區(qū)塊是否為頻繁讀取區(qū)塊;配置對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)并且將儲(chǔ)存于該頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中;以及當(dāng)欲從該頻繁讀取區(qū)塊中讀取該數(shù)據(jù)時(shí),則從對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取該數(shù)據(jù)。2.如權(quán)利要求1所述的數(shù)據(jù)讀取方法,其中分別地決定該數(shù)據(jù)區(qū)的所述區(qū)塊是否為該頻繁讀取區(qū)塊的步驟包括計(jì)數(shù)該數(shù)據(jù)區(qū)的每一區(qū)塊的讀取次數(shù);以及分別地判斷該數(shù)據(jù)區(qū)的所述區(qū)塊的讀取次數(shù)是否大于頻繁讀取閾值,若是,則判斷該數(shù)據(jù)區(qū)的所述區(qū)塊為該頻繁存取區(qū)塊。3.如權(quán)利要求1所述的數(shù)據(jù)讀取方法,還包括從該閃存的備用區(qū)中選擇區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。4.如權(quán)利要求3所述的數(shù)據(jù)讀取方法,還包括計(jì)數(shù)對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù);以及判斷對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中的該數(shù)據(jù)復(fù)制至該閃存的備用區(qū)中的另一區(qū)塊并且將該另一區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。5.如權(quán)利要求3所述的數(shù)據(jù)讀取方法,還包括計(jì)數(shù)對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù);以及判斷對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于該頻繁讀取區(qū)塊中的該數(shù)據(jù)復(fù)制至該閃存的備用區(qū)中的另一區(qū)塊并且將該另一區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。6.如權(quán)利要求3所述的數(shù)據(jù)讀取方法,還包括.當(dāng)從對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取該數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),則將儲(chǔ)存于該頻繁讀取區(qū)塊中的該數(shù)據(jù)復(fù)制至該閃存的備用區(qū)中的另一區(qū)塊并且將該另一區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。7.如權(quán)利要求6所述的數(shù)據(jù)讀取方法,還包括執(zhí)行錯(cuò)誤校正以判斷從對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取該數(shù)據(jù)時(shí)是否發(fā)生錯(cuò)誤。8.如權(quán)利要求1所述的數(shù)據(jù)讀取方法,還包括從另一閃存中選擇區(qū)塊或以一靜態(tài)隨機(jī)存取存儲(chǔ)器作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。9.如權(quán)利要求1所述的數(shù)據(jù)讀取方法,其中該數(shù)據(jù)區(qū)的該頻繁讀取區(qū)塊中儲(chǔ)存用于該閃存儲(chǔ)存系統(tǒng)的一固件碼或一文件配置表。10.—種閃存控制器,其適用于具有閃存的閃存儲(chǔ)存系統(tǒng),其中該閃存實(shí)質(zhì)上分割為多個(gè)區(qū)塊且所述區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū),該閃存控制器包括微處理器;以及存儲(chǔ)器接口,耦接至該微處理器并且用以存取該閃存,其中該微處理器會(huì)分別地決定該數(shù)據(jù)區(qū)的所述區(qū)塊是否為頻繁讀取區(qū)塊,并配置對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū),且將儲(chǔ)存于該頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中,當(dāng)該微處理器之后欲從該頻繁讀取區(qū)塊中讀取該數(shù)據(jù)時(shí),則從對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取該數(shù)據(jù)。11.如權(quán)利要求10所述的閃存控制器,其中該微處理器分別計(jì)數(shù)該數(shù)據(jù)區(qū)的每一區(qū)塊的讀取次數(shù);以及當(dāng)判斷該數(shù)據(jù)區(qū)的所述區(qū)塊的讀取次數(shù)大于該頻繁讀取閾值時(shí),判斷該數(shù)據(jù)區(qū)的所述區(qū)塊為該頻繁存取區(qū)塊。12.如權(quán)利要求10所述的閃存控制器,其中該微處理器從該閃存的備用區(qū)中選擇區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。13.如權(quán)利要求12所述的閃存控制器,其中該微處理器計(jì)數(shù)對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),并且判斷對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中的該數(shù)據(jù)復(fù)制至該閃存的備用區(qū)中的另一區(qū)塊并且將該另一區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。14.如權(quán)利要求12所述的閃存控制器,其中該微處理器計(jì)數(shù)對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),并且判斷對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于該頻繁讀取區(qū)塊中的該數(shù)據(jù)復(fù)制至該閃存的備用區(qū)中的另一區(qū)塊并且將該另一區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。15.如權(quán)利要求12所述的閃存控制器,其中該微處理器當(dāng)從對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取該數(shù)據(jù)發(fā)生錯(cuò)誤時(shí),將儲(chǔ)存于該頻繁讀取區(qū)塊中的該數(shù)據(jù)復(fù)制至該閃存的備用區(qū)中的另一區(qū)塊并且將該另一區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。16.如權(quán)利要求15所述的閃存控制器,還包括一錯(cuò)誤校正單元,其用以判斷從對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取該數(shù)據(jù)時(shí)是否發(fā)生錯(cuò)誤。17.如權(quán)利要求IO所述的閃存控制器,其中該微處理器從另一閃存中選擇區(qū)塊或以一靜態(tài)隨機(jī)存取存儲(chǔ)器作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。18.如權(quán)利要求10所述的閃存控制器,其中該數(shù)據(jù)區(qū)的該頻繁讀取區(qū)塊中包括一固件碼或一文件配置表。19.如權(quán)利要求10所述的閃存控制器,其中該閃存為單層存儲(chǔ)單元NAND閃存或多層存儲(chǔ)單元NAND閃存。20.如權(quán)利要求10所述的閃存控制器,其中該閃存儲(chǔ)存系統(tǒng)為一USB隨身盤(pán)、一存儲(chǔ)卡或一固態(tài)硬盤(pán)。21.—種閃存儲(chǔ)存系統(tǒng),包括總線連接接口,用以連接主機(jī);閃存,閃存實(shí)質(zhì)上分割為多個(gè)區(qū)塊且所述區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū);閃存控制器,耦接至該總線連接接口與該閃存,其中該閃存控制器會(huì)分別地決定該數(shù)據(jù)區(qū)的所述區(qū)塊是否為頻繁讀取區(qū)塊,并配置對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū),且將儲(chǔ)存于該頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中,當(dāng)閃存控制器之后欲從該頻繁讀取區(qū)塊中讀取該數(shù)據(jù)時(shí),則從對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取該數(shù)據(jù)。22.如權(quán)利要求21所述的閃存儲(chǔ)存系統(tǒng),其中該閃存控制器分別計(jì)數(shù)該數(shù)據(jù)區(qū)的每一區(qū)塊的讀取次數(shù),并且當(dāng)判斷該數(shù)據(jù)區(qū)的所述區(qū)塊的讀取次數(shù)大于該頻繁讀取閾值時(shí),判斷該數(shù)據(jù)區(qū)的所述區(qū)塊為該頻繁存取區(qū)塊。23.如權(quán)利要求21所述的閃存儲(chǔ)存系統(tǒng),其中該閃存控制器還包括從該閃存的備用區(qū)中選擇區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。24.如權(quán)利要求23所述的閃存儲(chǔ)存系統(tǒng),其中該閃存控制器還包括計(jì)數(shù)對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),并且判斷對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取閾值,若是,則將儲(chǔ)存于對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中的該數(shù)據(jù)復(fù)制至該閃存的備用區(qū)中的另一區(qū)塊并且將該另一區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。25.如權(quán)利要求23所述的閃存儲(chǔ)存系統(tǒng),其中該閃存控制器還包括計(jì)數(shù)對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù),并且判斷對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)的讀取次數(shù)是否大于緩沖區(qū)讀取闊值,若是,則將儲(chǔ)存于該頻繁讀取區(qū)塊中的該數(shù)據(jù)復(fù)制至該閃存的備用區(qū)中的另一區(qū)塊并且將該另一區(qū)塊作為對(duì)應(yīng)該頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)。全文摘要本發(fā)明關(guān)于用于閃存的數(shù)據(jù)讀取方法、其控制器與儲(chǔ)存系統(tǒng),其中該數(shù)據(jù)讀取方法適用于具有閃存的閃存儲(chǔ)存系統(tǒng),其中閃存(flashmemory)實(shí)質(zhì)上分割為多個(gè)區(qū)塊且這些區(qū)塊至少分組為數(shù)據(jù)區(qū)與備用區(qū)。此讀取方法包括分別地決定數(shù)據(jù)區(qū)的區(qū)塊是否為頻繁讀取區(qū)塊。此數(shù)據(jù)讀取方法也包括配置對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)并且將儲(chǔ)存于此頻繁讀取區(qū)塊中的數(shù)據(jù)復(fù)制至對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中。此數(shù)據(jù)讀取方法還包括當(dāng)欲從此頻繁讀取區(qū)塊中讀取數(shù)據(jù)時(shí),則從對(duì)應(yīng)此頻繁讀取區(qū)塊的緩沖儲(chǔ)存區(qū)中讀取數(shù)據(jù)。基此,能夠有效地避免因讀取干擾所造成的數(shù)據(jù)遺失。文檔編號(hào)G06F3/06GK101546298SQ20081008856公開(kāi)日2009年9月30日申請(qǐng)日期2008年3月28日優(yōu)先權(quán)日2008年3月28日發(fā)明者朱健華,趙偉程申請(qǐng)人:群聯(lián)電子股份有限公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1