国产精品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ǔ)存裝置與其操作方法

      文檔序號(hào):6373423閱讀:184來(lái)源:國(guó)知局
      專利名稱:數(shù)據(jù)儲(chǔ)存裝置與其操作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及快閃存儲(chǔ)器的數(shù)據(jù)儲(chǔ)存裝置與操作方法。
      背景技術(shù)
      現(xiàn)今數(shù)據(jù)儲(chǔ)存裝置常以快閃存 儲(chǔ)器(例如,與非門快閃存儲(chǔ)器/NAND flash)為儲(chǔ)存媒體。圖IA圖解一快閃存儲(chǔ)器所提供的儲(chǔ)存空間??扉W存儲(chǔ)器100可劃分為多個(gè)物理區(qū)塊(physical blocks) BLKl、BLK2…;且各區(qū)塊包括多個(gè)物理頁(yè)(physical pages)—例如,物理區(qū)塊BLKl包括物理頁(yè)P(yáng)agel、Page2…??扉W存儲(chǔ)器具有一種使用特性使用過(guò)的空間需以區(qū)塊為單位擦除(erase)后方可再使用。圖IB圖解說(shuō)明一邏輯地址的數(shù)據(jù)更新,其中在物理區(qū)塊BLK中,更新的數(shù)據(jù)需以閑置的空間Data_New儲(chǔ)存,而先前的儲(chǔ)存空間Data_01d則隨著數(shù)據(jù)更新轉(zhuǎn)為無(wú)效(invalid)。由于快閃存儲(chǔ)器的需以區(qū)塊為單位擦除后方可再使用的特性,若要再度利用無(wú)效物理頁(yè)Data_01d的空間,須要對(duì)物理區(qū)塊BLK先作一「有效數(shù)據(jù)收集」(Garbage_Collection)操作,待物理區(qū)塊BLK上的有效數(shù)據(jù)收集到其他物理區(qū)塊后方可將物理區(qū)塊BLK擦除,釋出為閑置區(qū)塊??扉W存儲(chǔ)器100有多種儲(chǔ)存空間應(yīng)用,區(qū)塊映射(block mapping)和頁(yè)面映射(page mapping)為常見的兩種映射模式。圖IC圖解區(qū)塊映射模式下,快閃存儲(chǔ)器上的一個(gè)物理區(qū)塊(即圖IA所定義的「物理區(qū)塊/physical block」)是配置來(lái)儲(chǔ)存主機(jī)端一段連續(xù)的邏輯地址(logical address)的數(shù)據(jù)。此段連續(xù)邏輯地址可視為一邏輯區(qū)塊(logicalblock),授與一邏輯區(qū)塊數(shù)(LBN)作為編號(hào),在區(qū)塊映射模式下,一個(gè)物理區(qū)塊內(nèi)部的各物理頁(yè)是按照邏輯地址的順序連續(xù)(sequential)寫入的,因此只要根據(jù)邏輯區(qū)塊數(shù)查找一區(qū)塊映射表就可以定位對(duì)應(yīng)的物理區(qū)塊,再根據(jù)續(xù)邏輯地址的偏移量(offset)就可以定位該邏輯地址對(duì)應(yīng)的物理頁(yè)。但是區(qū)塊映射要求在同一個(gè)物理區(qū)塊必須順序?qū)懭?,因此需要頻繁地進(jìn)行上述「有效數(shù)據(jù)收集」操作從而降低使用效率。而在頁(yè)面映射模式下,邏輯地址的數(shù)據(jù)在整個(gè)快閃存儲(chǔ)器的范圍內(nèi)非連續(xù)(non-sequential)寫入,即一個(gè)物理區(qū)塊并不對(duì)應(yīng)一段連續(xù)的邏輯地址,因此須通過(guò)該邏輯地址查找一數(shù)據(jù)量巨大的頁(yè)面映射表定位出對(duì)應(yīng)的物理頁(yè)。頁(yè)面映射要求為所有的邏輯地址都存儲(chǔ)對(duì)應(yīng)的物理頁(yè)地址,因此需要巨大的存儲(chǔ)空間來(lái)存儲(chǔ)該頁(yè)面映射表,且大范圍地查找也會(huì)降低快閃存儲(chǔ)器的使用效率。因此基于區(qū)塊映射和頁(yè)面映射模式上述缺陷,如何使快閃存儲(chǔ)器的使用效率提升,為本技術(shù)領(lǐng)域一項(xiàng)重要課題。

      發(fā)明內(nèi)容
      一種快閃存儲(chǔ)器的數(shù)據(jù)儲(chǔ)存裝置與其操作方法。根據(jù)一種實(shí)施方式,所揭示的數(shù)據(jù)儲(chǔ)存裝置包括一快閃存儲(chǔ)器以及一控制器。該快閃存儲(chǔ)器包括多組數(shù)據(jù)儲(chǔ)存區(qū)塊、多個(gè)共享緩存區(qū)塊以及多個(gè)專用緩存區(qū)塊。上述各個(gè)共享緩存區(qū)塊是由一組上述數(shù)據(jù)儲(chǔ)存區(qū)塊所共享。上述專用緩存區(qū)塊各自對(duì)應(yīng)一個(gè)熱區(qū)邏輯區(qū)塊。該控制器耦接至該快閃存儲(chǔ)器。當(dāng)一寫入數(shù)據(jù)的邏輯區(qū)塊被判斷為一熱區(qū)邏輯區(qū)塊時(shí),該控制器將該寫入數(shù)據(jù)緩存至該熱區(qū)邏輯區(qū)塊對(duì)應(yīng)的專用緩存區(qū)塊。當(dāng)上述多組數(shù)據(jù)儲(chǔ)存區(qū)塊的一組數(shù)據(jù)儲(chǔ)存區(qū)塊中任一數(shù)據(jù)儲(chǔ)存區(qū)塊的空間用盡時(shí),該控制器將邏輯地址對(duì)應(yīng)該任一數(shù)據(jù)儲(chǔ)存區(qū)塊的寫入數(shù)據(jù)緩存至該組數(shù)據(jù)儲(chǔ)存區(qū)塊對(duì)應(yīng)的共享緩存區(qū)塊。根據(jù)一種實(shí)施方式,所揭示的數(shù)據(jù)儲(chǔ)存裝置操作方法包括于一數(shù)據(jù)儲(chǔ)存裝置的一快閃存儲(chǔ)器配置多組數(shù)據(jù)儲(chǔ)存區(qū)塊、多個(gè)共享緩存區(qū)塊、以及多個(gè)專用緩存區(qū)塊,其中,上述各個(gè)共享緩存區(qū)塊是由一組上述數(shù)據(jù)儲(chǔ)存區(qū)塊所共享,且上述各個(gè)專用緩存區(qū)塊對(duì)應(yīng)一個(gè)熱區(qū)邏輯區(qū)塊;當(dāng)一主機(jī)所發(fā)出的一寫入指令的一寫入數(shù)據(jù)對(duì)應(yīng)的一邏輯地址屬于一熱區(qū)邏輯區(qū)塊時(shí),將該寫入數(shù)據(jù)緩存至該熱區(qū)邏輯區(qū)塊對(duì)應(yīng)的專用緩存區(qū)塊;以及當(dāng)該邏輯地址并不屬于熱區(qū)邏輯區(qū)塊,并且當(dāng)該邏輯地址所對(duì)應(yīng)的一數(shù)據(jù)儲(chǔ)存區(qū)塊不存在空余空間時(shí),將該寫入數(shù)據(jù)緩存至該數(shù)據(jù)儲(chǔ)存區(qū)塊所在的一組數(shù)據(jù)儲(chǔ)存區(qū)塊對(duì)應(yīng)的共享緩存區(qū)塊。
      ·
      通過(guò)使用根據(jù)本發(fā)明所揭示的快閃存儲(chǔ)器的數(shù)據(jù)儲(chǔ)存裝置及其操作方法,對(duì)主機(jī)寫入的數(shù)據(jù)在快閃存儲(chǔ)器內(nèi)部進(jìn)行緩存,即快閃存儲(chǔ)器內(nèi)部同時(shí)存儲(chǔ)舊的數(shù)據(jù)和新寫入的數(shù)據(jù),優(yōu)選地采取兩種不同的緩存策略為經(jīng)常寫入的熱區(qū)數(shù)據(jù)動(dòng)態(tài)地分配專用緩存區(qū)塊,而使得熱區(qū)數(shù)據(jù)能夠相對(duì)集中,從而提高該主機(jī)讀取熱區(qū)數(shù)據(jù)時(shí)的命中率,并提高該數(shù)據(jù)儲(chǔ)存裝置每秒進(jìn)行讀寫操作的次數(shù)(Input/Output Operations Per Second, I0PS)以及連續(xù)寫入時(shí)的有效吞吐量等性能;此外,采取多個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊共享一共享緩存區(qū)塊,在任一數(shù)據(jù)區(qū)塊寫滿后即寫入對(duì)應(yīng)的共享緩存區(qū)塊,可以利于后續(xù)的「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」操作,并兼顧整個(gè)快閃存儲(chǔ)器的性能。為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉實(shí)施例,并結(jié)合附圖詳細(xì)說(shuō)明如下。


      圖IA圖解一快閃存儲(chǔ)器所提供的儲(chǔ)存空間;圖IB圖解說(shuō)明一邏輯地址的數(shù)據(jù)更新;圖IC圖解區(qū)塊映射模式下,快閃存儲(chǔ)器上的一個(gè)物理區(qū)塊是配置來(lái)儲(chǔ)存主機(jī)端一段連續(xù)邏輯地址的數(shù)據(jù);圖2圖解根據(jù)一種實(shí)施方式所實(shí)現(xiàn)的一數(shù)據(jù)儲(chǔ)存裝置200 ;圖3A圖解所揭示的數(shù)據(jù)儲(chǔ)存區(qū)塊映射表DMT ;圖3B圖解所揭示的映射表SCB_MT ;圖3C圖解所揭示的映射表DCB_MT ;圖4以流程解所揭示技術(shù)對(duì)寫入指令的操作;圖5以流程解所揭示技術(shù)對(duì)讀取指令的操作;圖6A圖解本發(fā)明一種實(shí)施方式,其中根據(jù)一共享緩存區(qū)塊SCB最末頁(yè)的一寫入操作(寫入數(shù)據(jù)602)作「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」;以及圖6B圖解一種實(shí)施方式,其中根據(jù)一專用緩存區(qū)塊DCB最末頁(yè)的一寫入操作(寫入數(shù)據(jù)612)作「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」。
      附圖符號(hào)說(shuō)明10(T快閃存儲(chǔ)器;200 數(shù)據(jù)儲(chǔ)存裝置;202 快閃存儲(chǔ)器;204 控制器;206 隨機(jī)存取存儲(chǔ)器;208 主機(jī);602 屬于邏輯區(qū)塊數(shù)LBN2的有效數(shù)據(jù);

      604-61(T屬于邏輯區(qū)塊數(shù)LBNl的有效數(shù)據(jù);612-620^屬于邏輯區(qū)塊數(shù)LBN的有效數(shù)據(jù);622-628 屬于邏輯區(qū)塊數(shù)LBN2的有效數(shù)據(jù);BLK、BLKl、BLK2 區(qū)塊;BMT 區(qū)塊映射子表;DataBlocksl、DataBlocks2…DataBlocksN 第一、第二…第 N 組數(shù)據(jù)儲(chǔ)存區(qū)塊;Data_01d、Data_New 儲(chǔ)存空間;DB、DB1、DB2、DBl_New、DB2_New 數(shù)據(jù)儲(chǔ)存區(qū)塊 / 物理區(qū)塊;DCB、DCBl、DCB2...DCBM、DCB_New 專用緩存區(qū)塊;DCB_MT 映射表;DMT 數(shù)據(jù)儲(chǔ)存區(qū)塊映射表;LBN、LBNl、LBN2 邏輯區(qū)塊數(shù);Pagel、Page2 頁(yè);PMT_for_PBNl、PMT_for_PBN2、PMT 頁(yè)映射子表;S402-S410"步驟!S5O2-S5KT 步驟;SCB、SCB1、SCB2... SCBN 共享緩存區(qū)塊;SCB_MT 映射表。
      具體實(shí)施例方式圖2圖解根據(jù)一種實(shí)施方式所實(shí)現(xiàn)的一數(shù)據(jù)儲(chǔ)存裝置200,包括一快閃存儲(chǔ)器202、一控制器204,并且,還可包括耦接該控制器204的一隨機(jī)存取存儲(chǔ)器206。數(shù)據(jù)儲(chǔ)存裝置200可耦接一主機(jī)208,根據(jù)該主機(jī)208所下達(dá)的指令操作。該快閃存儲(chǔ)器202提供多組數(shù)據(jù)儲(chǔ)存區(qū)塊(例如,第一組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksl、第二組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocks2…第N組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksN)、多個(gè)共享緩存區(qū)塊SCBI、SCB2…SCBN、以及多個(gè)專用緩存區(qū)塊DCBI、DCB2…DCBM。上述多組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksl DataBlocksN分組配置給特定邏輯地址。在一種實(shí)施方式中,每組數(shù)據(jù)儲(chǔ)存區(qū)塊有其對(duì)應(yīng)的多個(gè)邏輯區(qū)塊(邏輯區(qū)塊可以是于主機(jī)208端一段連續(xù)的邏輯地址組成)。關(guān)于一組的數(shù)據(jù)儲(chǔ)存區(qū)塊,其中數(shù)據(jù)儲(chǔ)存區(qū)塊可能一對(duì)一與邏輯區(qū)塊對(duì)應(yīng),但并不限定于此,還有實(shí)施方式是令多個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊對(duì)應(yīng)一個(gè)邏輯區(qū)塊。一種實(shí)施方式根據(jù)邏輯區(qū)塊數(shù)(LBN)的模數(shù)運(yùn)算(%)結(jié)果作區(qū)塊分組配置。以四組的數(shù)據(jù)儲(chǔ)存區(qū)塊分群為例,邏輯區(qū)塊數(shù)的模數(shù)為O (LBN%4=0)的邏輯區(qū)塊所配置的數(shù)據(jù)儲(chǔ)存區(qū)塊可屬于第一組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksl,即第一組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksl對(duì)應(yīng)的邏輯區(qū)塊數(shù)LBN為0,4,8,12……;邏輯區(qū)塊數(shù)的模數(shù)為I (LBN%4=1)的邏輯區(qū)塊所配置的數(shù)據(jù)儲(chǔ)存區(qū)塊可屬于第二組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocks2,即第二組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocks2對(duì)應(yīng)的邏輯區(qū)塊數(shù)LBN為1,5,9,13……;邏輯區(qū)塊數(shù)的模數(shù)為2 (LBN%4=2)的邏輯區(qū)塊所配置的數(shù)據(jù)儲(chǔ)存區(qū)塊可屬于第三組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocks3,即第三組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocks3對(duì)應(yīng)的邏輯區(qū)塊數(shù)LBN為2,6,10,14……;且邏輯區(qū)塊數(shù)的模數(shù)為3(LBN%4=3)的邏輯區(qū)塊所配置的數(shù)據(jù)儲(chǔ)存區(qū)塊可屬于第四組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocks4,即第四組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocks4對(duì)應(yīng)的邏輯區(qū)塊數(shù)LBN為3,7,11,15……。以上邏輯區(qū)塊數(shù)模數(shù)分組規(guī)則可避免熱數(shù)據(jù)集中儲(chǔ)存于同一組數(shù)據(jù)儲(chǔ)存區(qū)塊而造成該組數(shù)據(jù)儲(chǔ)存區(qū)塊的過(guò)度使用,但并不意圖限定所揭示的數(shù)據(jù)儲(chǔ)存區(qū)塊分群配置規(guī)則。凡是數(shù)據(jù)儲(chǔ)存區(qū)塊是根據(jù)「邏輯地址」分組者即屬于本發(fā)明所揭示的技術(shù)。例如,在一種實(shí)施方式中,同一組的數(shù)據(jù)儲(chǔ)存區(qū)塊對(duì)應(yīng)的邏輯區(qū)塊數(shù)(LBN)為連續(xù)的,例如第一組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksl對(duì)應(yīng)的邏輯區(qū)塊數(shù)LBN為0,I, 2,3…K,以此類推。
      ·
      上述各個(gè)共享緩存區(qū)塊是由一組上述數(shù)據(jù)儲(chǔ)存區(qū)塊所共享,以于該組數(shù)據(jù)儲(chǔ)存區(qū)塊任一者的空間用盡時(shí)緩存寫入數(shù)據(jù)。參閱圖2所示實(shí)施例,第一組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksl共享一共享緩存區(qū)塊SCBl ;第二組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocks2共享一共享緩存區(qū)塊SCB2 ;…;且第N組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksN共享一共享緩存區(qū)塊SCBN。以第一組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksl內(nèi)的區(qū)塊DB (對(duì)應(yīng)邏輯區(qū)塊LBNX)為例,若其空間用盡,則邏輯區(qū)塊LBNX后續(xù)的寫入數(shù)據(jù)將交由共享緩存區(qū)塊SCBl儲(chǔ)存。特別聲明的是,在其他實(shí)施方式中,同一組數(shù)據(jù)儲(chǔ)存區(qū)塊可配置多于一個(gè)的共享緩存區(qū)塊。也可以多組數(shù)據(jù)存儲(chǔ)區(qū)塊配置一個(gè)共享緩存區(qū)塊。上述專用緩存區(qū)塊DCBfDCBM是配置來(lái)儲(chǔ)存熱區(qū)數(shù)據(jù),且各個(gè)專用緩存區(qū)塊對(duì)應(yīng)一個(gè)熱區(qū)邏輯區(qū)塊。參閱圖2所示的實(shí)施例,其中配置的M個(gè)專用緩存區(qū)塊DCBUDCB2-DCBM可儲(chǔ)存上達(dá)M個(gè)熱區(qū)邏輯區(qū)塊的數(shù)據(jù)。該控制器204耦接至該快閃存儲(chǔ)器202,控制對(duì)該快閃存儲(chǔ)器202的讀寫操作當(dāng)一寫入數(shù)據(jù)對(duì)應(yīng)的邏輯區(qū)塊被判斷為一熱區(qū)邏輯區(qū)塊時(shí),該控制器204將該寫入數(shù)據(jù)緩存至該熱區(qū)邏輯區(qū)塊對(duì)應(yīng)的專用緩存區(qū)塊(DCBfDCBM之一);當(dāng)多組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksl DataBlocksN的一組數(shù)據(jù)儲(chǔ)存區(qū)塊(例如DataBlocksl)中任一數(shù)據(jù)儲(chǔ)存區(qū)塊的空間用盡時(shí),該控制器204將邏輯地址對(duì)應(yīng)該空間用盡的數(shù)據(jù)儲(chǔ)存區(qū)塊的寫入數(shù)據(jù)緩存至該組數(shù)據(jù)儲(chǔ)存區(qū)塊(例如DataBlocksl)對(duì)應(yīng)的共享緩存區(qū)塊(例如SCB1)?,F(xiàn)在說(shuō)明熱區(qū)邏輯區(qū)塊的判別。根據(jù)一種實(shí)施方式,控制器204還記錄各邏輯區(qū)塊的寫入次數(shù),令寫入次數(shù)超過(guò)一臨界次數(shù)的邏輯區(qū)塊屬上述熱區(qū)邏輯區(qū)塊,需交由專用緩存區(qū)塊(DCBfDCBM其一)儲(chǔ)存。所述記錄可以隨機(jī)存取存儲(chǔ)器206暫存。根據(jù)另一種實(shí)施方式,控制器204統(tǒng)計(jì)共享緩存區(qū)塊SCBl-SCBN其中數(shù)據(jù)所屬的邏輯區(qū)塊,令出現(xiàn)次數(shù)超過(guò)一臨界次數(shù)的邏輯區(qū)塊屬上述熱區(qū)邏輯區(qū)塊,需交由專用緩存區(qū)塊(DCBfDCBM其一)儲(chǔ)存。此外,控制器204還可于該快閃存儲(chǔ)器202針對(duì)上述多組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksrDataBlocksN,上述共享緩存區(qū)塊SCBl SCBN、以及上述專用緩存區(qū)塊DCBfDCBM分別提供一數(shù)據(jù)儲(chǔ)存區(qū)塊映射表DMT (BMT與PMT的組合)、多個(gè)共享緩存區(qū)塊映射表SCB_MT以及多個(gè)專用緩存區(qū)塊映射表DCB_MT,分別記錄各區(qū)塊的物理地址與邏輯地址的映射關(guān)系??刂破?04可將所述映射表載入隨機(jī)存取存儲(chǔ)器206,以隨著寫入操作即時(shí)修正。圖2所示實(shí)施方式以一區(qū)塊映射子表BMT以及多個(gè)頁(yè)映射子表PMT (如圖2所示,各PMT可儲(chǔ)存于各數(shù)據(jù)儲(chǔ)存區(qū)塊的空余空間)組成一數(shù)據(jù)儲(chǔ)存區(qū)塊映射表DMT,記錄上述多組數(shù)據(jù)儲(chǔ)存區(qū)塊DataBlocksfDataBlocksN的物理地 址與邏輯地址映射;圖3A詳細(xì)解說(shuō)一數(shù)據(jù)儲(chǔ)存區(qū)塊映射表DMT的一種實(shí)施方式。區(qū)塊映射子表BMT記錄不同邏輯區(qū)塊數(shù)LBNl、LBN2對(duì)應(yīng)的物理區(qū)塊數(shù)PBNl、PBN2…,標(biāo)示不同邏輯區(qū)塊所對(duì)應(yīng)的數(shù)據(jù)儲(chǔ)存區(qū)塊。至于各數(shù)據(jù)儲(chǔ)存區(qū)塊內(nèi)的物理頁(yè)儲(chǔ)存狀況,則可記錄于頁(yè)映射子表PMT_for_PBNl、PMT_for_PBN2…(即圖2所不PMT)中。所述頁(yè)映射子表可記錄不同邏輯頁(yè)偏移量(offset,用以與邏輯區(qū)塊數(shù)LBN組成邏輯頁(yè)數(shù)(LPN),而邏輯頁(yè)數(shù)(LPN)是由邏輯地址(LBA)計(jì)算而得)所對(duì)應(yīng)的物理頁(yè)數(shù)(PPN)。舉例來(lái)說(shuō),主機(jī)所指示的一邏輯地址LBA包括邏輯區(qū)塊數(shù)LBN與邏輯頁(yè)偏移量offset等信息。根據(jù)邏輯區(qū)塊數(shù)LBN查詢?cè)搮^(qū)塊映射子表BMT,可得知所對(duì)應(yīng)的物理區(qū)塊數(shù)PBN。尋得物理區(qū)塊數(shù)PBN所對(duì)應(yīng)的頁(yè)映射子表(PMT_for_PBNl、PMT_for_PBN2…中對(duì)應(yīng)者)后,可根據(jù)邏輯頁(yè)偏移量offset查得對(duì)應(yīng)的物理頁(yè)數(shù)PPN。如此一來(lái),SP可得知該邏輯地址LBA是位于某一數(shù)據(jù)儲(chǔ)存區(qū)塊的某一頁(yè)。在另一實(shí)施例中,各物理區(qū)塊數(shù)PBN所對(duì)應(yīng)的頁(yè)映射子表(PMT_for_PBNl、PMT_for_PBN2…中對(duì)應(yīng)者)也可以在定位物理區(qū)塊數(shù)PBN對(duì)應(yīng)的數(shù)據(jù)儲(chǔ)存區(qū)塊后,由控制器204對(duì)對(duì)應(yīng)的數(shù)據(jù)儲(chǔ)存區(qū)塊各物理頁(yè)進(jìn)行掃描以重建之。圖2實(shí)施例還于這些共享緩存區(qū)塊SCBfSCBN的空余空間提供對(duì)應(yīng)的共享緩存區(qū)塊映射表SCB_MT。這些共享緩存區(qū)塊映射表SCB_MT各自記錄對(duì)應(yīng)的共享緩存區(qū)塊SCBfSCBN各物理頁(yè)所對(duì)應(yīng)的邏輯頁(yè)數(shù)。圖3B圖解一共享緩存區(qū)塊映射表SCB_MT的結(jié)構(gòu),其中記錄一個(gè)共享緩存區(qū)塊各物理頁(yè)所對(duì)應(yīng)的邏輯頁(yè)數(shù)LPN。在一種實(shí)施方式中,共享緩存區(qū)塊映射表SCB_MT還可記錄其中數(shù)據(jù)所屬的邏輯區(qū)塊的出現(xiàn)次數(shù),實(shí)現(xiàn)上述熱區(qū)邏輯區(qū)塊判別。圖2實(shí)施例還于這些專用緩存區(qū)塊DCBfDCBM的空余空間提供對(duì)應(yīng)的專用緩存區(qū)塊映射表DCB_MT。這些專用緩存區(qū)塊映射表DCB_MT各自記錄對(duì)應(yīng)的專用緩存區(qū)塊DCBfDCBM各物理頁(yè)所對(duì)應(yīng)的邏輯頁(yè)數(shù)。圖3C圖解一專用緩存區(qū)塊映射表DCB_MT的結(jié)構(gòu),其中記錄一個(gè)專用緩存區(qū)塊各物理頁(yè)所對(duì)應(yīng)的邏輯頁(yè)數(shù)LPN。關(guān)于圖3B與圖3C所示的共享緩存區(qū)塊映射表SBC_MT與專用緩存區(qū)塊映射表DCB_MT,由于同一邏輯地址對(duì)應(yīng)的數(shù)據(jù)可能被多次寫入,因此須注意同一邏輯頁(yè)數(shù)LPN可能對(duì)應(yīng)多個(gè)物理頁(yè),須以最末更新者為有效映射。此外,在另一實(shí)施例中,各共享緩存區(qū)塊映射表SBC_MT或各專用緩存區(qū)塊映射表DCB_MT也可以于使用時(shí)由控制器204對(duì)對(duì)應(yīng)的共享緩存區(qū)塊或?qū)S镁彺鎱^(qū)塊內(nèi)各物理頁(yè)進(jìn)行掃描以重建之??刂破?04對(duì)主機(jī)208所發(fā)出的寫入/讀取指令可有以下處理。當(dāng)主機(jī)208發(fā)出一寫入指令,控制器204的操作可如圖4流程。步驟S402判斷寫入數(shù)據(jù)的邏輯地址是否屬于一熱區(qū)邏輯區(qū)塊。若屬于熱區(qū)邏輯區(qū)塊,則流程進(jìn)行步驟S404,此寫入數(shù)據(jù)被寫入專用緩存區(qū)塊(DCBfDCBM之一),當(dāng)然,若此前該邏輯地址所在的邏輯區(qū)塊已分配對(duì)應(yīng)的專用緩存區(qū)塊,就直接將寫入數(shù)據(jù)寫入對(duì)應(yīng)的專用緩存區(qū)塊,若此前該邏輯地址所在的邏輯區(qū)塊并未分配任何對(duì)應(yīng)的專用緩存區(qū)塊,就為該邏輯地址所在的邏輯區(qū)塊分配對(duì)應(yīng)的專用緩存區(qū)塊后,再將寫入數(shù)據(jù)寫入該新分配的專用緩存區(qū)塊。若步驟S402判別出并非屬于熱區(qū)邏輯區(qū)塊,則流程進(jìn)行步驟S406,判斷該寫入指令的邏輯地址所對(duì)應(yīng)的數(shù)據(jù)儲(chǔ)存區(qū)塊是否尚存空間。若相關(guān)數(shù)據(jù)儲(chǔ)存區(qū)塊尚余有儲(chǔ)存空間,則流程進(jìn)行步驟S408,寫入指令操作于該數(shù)據(jù)儲(chǔ)存區(qū)塊。若步驟S406判定相關(guān)數(shù)據(jù)儲(chǔ)存區(qū)塊的空間已經(jīng)用盡,則流程進(jìn)行步驟S410,以共享緩存區(qū)塊儲(chǔ)存寫入數(shù)據(jù)。當(dāng)主機(jī)208發(fā)出一讀取指令,控制器204的操作可如同圖5流程。步驟S502是根據(jù)該讀取指令的邏輯地址(例如,利用其中邏輯頁(yè)數(shù)LPN信息)判斷所欲讀取的數(shù)據(jù)是否由專用緩存區(qū)塊DCBfDCBM之一儲(chǔ)存。在一實(shí)施例中,可以于步驟S502先判斷該邏輯地址是否位于一熱區(qū)邏輯區(qū)塊,若是,根據(jù)該邏輯地址搜尋該熱區(qū)邏輯區(qū)塊的專用緩存區(qū)塊映射表(如圖3C的一 DCB_MT),由于該專用緩存區(qū)塊映射表DCB_MT是以物理頁(yè)數(shù)PPN為索引(index),邏輯頁(yè)數(shù)LPN為表項(xiàng),因此根據(jù)該邏輯地址搜尋該表時(shí),需要逆向查找,例如利用該邏輯地址其中的邏輯頁(yè)數(shù)LPN通過(guò)逆向遍歷(或其它搜索算法)搜索該專用緩存區(qū)塊映射·表DCB_MT,找到對(duì)應(yīng)的物理頁(yè)數(shù)PPN。由于一個(gè)邏輯頁(yè)數(shù)LPN可能對(duì)應(yīng)多個(gè)物理頁(yè)數(shù)PPN,有效(valid)的物理頁(yè)數(shù)PPN為其中物理頁(yè)數(shù)PPN最大的那個(gè)物理頁(yè)數(shù)。再于步驟S504根據(jù)搜尋到的物理頁(yè)數(shù)PPN自對(duì)應(yīng)的專用緩存區(qū)塊DCB讀取數(shù)據(jù)。在另一實(shí)施例中,可以于步驟S502根據(jù)該讀取指令的邏輯地址中的邏輯頁(yè)數(shù)LPN搜尋所有專用緩存區(qū)塊映射表(圖2這些DCB_MT),以判斷所欲讀取的數(shù)據(jù)是否由專用緩存區(qū)塊DCBfDCBM之一的某一物理頁(yè)儲(chǔ)存。若在這些專用緩存區(qū)塊映射表(圖2這些DCB_MT)尋得該邏輯頁(yè)數(shù)LPN,則于步驟S504根據(jù)對(duì)應(yīng)的專用緩存區(qū)塊索引號(hào)與物理頁(yè)索引號(hào)自對(duì)應(yīng)的專用緩存區(qū)塊讀取數(shù)據(jù)。若步驟S502判定該讀取指令的邏輯地址對(duì)應(yīng)的數(shù)據(jù)并不存在于任何專用緩存區(qū)塊,流程進(jìn)行步驟S506,判斷所欲讀取的數(shù)據(jù)是否由共享緩存區(qū)塊SCBfSCBN之一儲(chǔ)存。在一實(shí)施例中,可以于步驟S506先根據(jù)該邏輯地址中的邏輯區(qū)塊數(shù)LBN作運(yùn)算來(lái)判斷,例如由邏輯區(qū)塊數(shù)LBN做哈希(Hash)運(yùn)算判斷該邏輯地址對(duì)應(yīng)哪個(gè)共享緩存區(qū)塊SCBf SCBN。做哈希(Hash)運(yùn)算的原因是如前所述,為了避免多個(gè)熱區(qū)數(shù)據(jù)共用一個(gè)共享緩存區(qū)塊而造成該共享緩存區(qū)塊很快就寫滿,優(yōu)選實(shí)施例是采用例如邏輯區(qū)塊數(shù)LBN0,4,8,12…共享緩存區(qū)塊SCB0,邏輯區(qū)塊數(shù)LBN1,5,9,13…共享緩存區(qū)塊SCB1,邏輯區(qū)塊數(shù)LBN2,6,10,14…共享緩存區(qū)塊SCB2,邏輯區(qū)塊數(shù)LBN3,7,11,15…共享緩存區(qū)塊SCB3,因此對(duì)邏輯區(qū)塊數(shù)LBN運(yùn)算可判斷其對(duì)應(yīng)哪一個(gè)共享緩存區(qū)塊,由于共享緩存區(qū)塊對(duì)應(yīng)的共享緩存區(qū)塊映射表(如圖3B的一 SCB_MT)同專用緩存區(qū)塊映射表DCB_MT—樣,是以物理頁(yè)數(shù)PPN為索引(index),邏輯頁(yè)數(shù)LPN為表項(xiàng),因此根據(jù)該邏輯地址搜尋對(duì)應(yīng)的物理頁(yè)數(shù)PPN時(shí),同樣需要逆向查找(查找方法類似專用緩存區(qū)塊映射表的查找方法,這里不再贅述),再于步驟S508根據(jù)搜尋到的物理頁(yè)數(shù)PPN自對(duì)應(yīng)的共享緩存區(qū)塊SCB讀取數(shù)據(jù)。在另一實(shí)施例中,可以于步驟S506根據(jù)該讀取指令的邏輯地址中的邏輯頁(yè)數(shù)LPN搜尋所有共享緩存區(qū)塊映射表(圖2這些SCB_MT),以判斷所欲讀取的數(shù)據(jù)是否由共享緩存區(qū)塊SCBfSCBN之一的某一物理頁(yè)儲(chǔ)存。若在某一共享緩存區(qū)塊映射表中尋得該邏輯頁(yè)數(shù)LPN,則于步驟S508根據(jù)對(duì)應(yīng)的共享緩存區(qū)塊索引號(hào)與物理頁(yè)索引號(hào)自對(duì)應(yīng)的共享緩存區(qū)塊讀取數(shù)據(jù)。若步驟S506判定該讀取指令的邏輯地址對(duì)應(yīng)的數(shù)據(jù)并不存在于任何共享緩存區(qū)塊,則流程進(jìn)行步驟S510,查詢一數(shù)據(jù)儲(chǔ)存區(qū)塊映射表(圖2的BMT與PMT),以自數(shù)據(jù)儲(chǔ)存區(qū)塊讀取數(shù)據(jù)。通過(guò)使用根據(jù)本發(fā)明所揭示的快閃存儲(chǔ)器的數(shù)據(jù)儲(chǔ)存裝置及其操作方法,對(duì)主機(jī)寫入的數(shù)據(jù)在快閃存儲(chǔ)器內(nèi)部進(jìn)行緩存,即快閃存儲(chǔ)器內(nèi)部同時(shí)存儲(chǔ)舊的數(shù)據(jù)和新寫入的數(shù)據(jù),優(yōu)選地采取兩種不同的緩存策略為經(jīng)常寫入的熱區(qū)數(shù)據(jù)動(dòng)態(tài)地分配專用緩存區(qū)塊,而使得熱區(qū)數(shù)據(jù)能夠相對(duì)集中,從而提高該主機(jī)讀取熱區(qū)數(shù)據(jù)時(shí)的命中率,并提高該數(shù)據(jù)儲(chǔ)存裝置每秒進(jìn)行讀寫操作的次數(shù)(Input/Output Operations Per Second, I0PS)以及連續(xù)寫入時(shí)的有效吞吐量等性能;此外,采取多個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊共享一共享緩存區(qū)塊,在任一數(shù)據(jù)區(qū)塊寫滿后即寫入對(duì)應(yīng)的共享緩存區(qū)塊,可以利于后續(xù)的「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」操作,并兼顧整個(gè)快閃存儲(chǔ)器的性能。本發(fā)明較優(yōu)地適用在控制器內(nèi)部不配置隨機(jī)存取存儲(chǔ)器(Random Access Memory,RAM)作為緩存或隨機(jī)存取存儲(chǔ)器容量較小的快閃存儲(chǔ)器中,當(dāng)然,本發(fā)明不限于此,也可適用在配置有較大容量的隨機(jī)存取存儲(chǔ)器的快閃存儲(chǔ)器中。至于本發(fā)明的「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」,本發(fā)明有特殊設(shè)計(jì)如下。
      ·
      圖6A圖解一種實(shí)施方式,于一共享緩存區(qū)塊空間用盡時(shí)作「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」,即控制器204可根據(jù)一共享緩存區(qū)塊SCB最末頁(yè)的一寫入操作(寫入數(shù)據(jù)602)作「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」??刂破?04將尋得該共享緩存區(qū)塊SCB其中數(shù)據(jù)所涉及的所有邏輯區(qū)塊,例如LBNl和LBN2,并對(duì)該共享緩存區(qū)塊SCB、以及這些邏輯區(qū)塊LBNl和LBN2所對(duì)應(yīng)的數(shù)據(jù)儲(chǔ)存區(qū)塊DBl和DB2以及專用緩存區(qū)塊DCBl和DCB2作有效數(shù)據(jù)收集。具體而言,如圖6A所示,該共享緩存區(qū)塊SCB其中數(shù)據(jù)所涉及的所有邏輯區(qū)塊為L(zhǎng)BNl和LBN2,控制器204可尋得對(duì)應(yīng)該邏輯區(qū)塊數(shù)LBNl的數(shù)據(jù)儲(chǔ)存區(qū)塊DBl內(nèi)的有效數(shù)據(jù)604與606,且可自該共享緩存區(qū)塊SCB中尋得同屬該邏輯區(qū)塊數(shù)LBNl的有效數(shù)據(jù)608,并自該邏輯區(qū)塊LBNl對(duì)應(yīng)的專用緩存區(qū)塊DCBl中尋得同屬該邏輯區(qū)塊數(shù)LBNl的有效數(shù)據(jù)610,控制器204可新配置一個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊DBl_New收集數(shù)據(jù)604飛08 ;此外,控制器204可尋得對(duì)應(yīng)該邏輯區(qū)塊數(shù)LBN2的數(shù)據(jù)儲(chǔ)存區(qū)塊DB2內(nèi)的有效數(shù)據(jù)622與624,且可自該共享緩存區(qū)塊SCB中尋得同屬該邏輯區(qū)塊數(shù)LBN2的有效數(shù)據(jù)626和602 (假設(shè)最末頁(yè)的寫入數(shù)據(jù)602屬于邏輯區(qū)塊數(shù)LBN2),并自該邏輯區(qū)塊LBN2對(duì)應(yīng)的專用緩存區(qū)塊DCB2中尋得同屬該邏輯區(qū)塊數(shù)LBN2的有效數(shù)據(jù)628,控制器204可再新配置一個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊DB2_New收集數(shù)據(jù)622飛28。如此一來(lái),僅存無(wú)效數(shù)據(jù)的該共享緩存區(qū)塊SCB可被擦除釋放為閑置空間,再作共享緩存區(qū)塊使用,也可用作其他存儲(chǔ)區(qū)塊,如數(shù)據(jù)儲(chǔ)存區(qū)塊或?qū)S镁彺鎱^(qū)塊使用。圖6B圖解一種實(shí)施方式,于一專用緩存區(qū)塊空間用盡時(shí)作「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」,即控制器204可根據(jù)一專用緩存區(qū)塊DCB最末頁(yè)的一寫入操作(寫入數(shù)據(jù)612)作「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」。控制器204根據(jù)該專用緩存區(qū)塊DCB所對(duì)應(yīng)的邏輯區(qū)塊數(shù)LBN尋得對(duì)應(yīng)的數(shù)據(jù)儲(chǔ)存區(qū)塊DB與共享緩存區(qū)塊SCB??刂破?04可將該數(shù)據(jù)儲(chǔ)存區(qū)塊內(nèi)的有效數(shù)據(jù)614、616與該共享緩存區(qū)塊SCB內(nèi)同屬該邏輯區(qū)塊數(shù)LBN的有效數(shù)據(jù)618與該專用緩存區(qū)塊內(nèi)的有效數(shù)據(jù)620與612收集至閑置的另一專用緩存區(qū)塊DCB_New0專用儲(chǔ)存區(qū)塊DCB因而僅存無(wú)效數(shù)據(jù),可被擦除釋放為閑置空間,待日后再作數(shù)據(jù)儲(chǔ)存用。專用緩存區(qū)塊DCB_New則取代DCB對(duì)應(yīng)該邏輯區(qū)塊數(shù)LBN。另有一種實(shí)施方式是新配置一數(shù)據(jù)儲(chǔ)存區(qū)塊DB_New (圖未繪示)而非配置該專用緩存區(qū)塊DCB_New收集有效數(shù)據(jù)612 620,新配置的該數(shù)據(jù)儲(chǔ)存區(qū)塊DB_New可取代DB。此外,上述「有效數(shù)據(jù)收集」與「區(qū)塊空間釋放」還可設(shè)計(jì)在上述多個(gè)專用緩存區(qū)塊DCBfDCBM僅余特定數(shù)量的閑置者時(shí)。控制器204可針對(duì)非閑置的專用緩存區(qū)塊其一作有效數(shù)據(jù)收集。這些有效數(shù)據(jù)不限定以閑置的專用緩存區(qū)塊收集,也可以新配置的數(shù)據(jù)儲(chǔ)存區(qū)塊收集。數(shù)據(jù)收集后,僅存無(wú)效數(shù)據(jù)的專用緩存區(qū)塊可擦除釋放為閑置空間,可再作專用緩存區(qū)塊使用,也可用作其他存儲(chǔ)區(qū)塊,如數(shù)據(jù)儲(chǔ)存區(qū)塊或共享緩存區(qū)塊使用。以上控制器204有多種實(shí)施方式。例如,控制器204可以一微處理器執(zhí)行固件實(shí)現(xiàn),其對(duì)該快閃存儲(chǔ)器202的操作方法亦屬于本發(fā)明所欲保護(hù)范圍。雖然本發(fā)明已以較佳實(shí)施例揭示如上,然其并非用以限定本發(fā)明,本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明的精神和范圍的前提下,可做若干更動(dòng)與潤(rùn)飾,因此本發(fā)明的保護(hù)范圍是以本發(fā)明的權(quán)利要求為準(zhǔn)?!?br> 權(quán)利要求
      1.一種數(shù)據(jù)儲(chǔ)存裝置,包括 一快閃存儲(chǔ)器,包括多組數(shù)據(jù)儲(chǔ)存區(qū)塊、多個(gè)共享緩存區(qū)塊以及多個(gè)專用緩存區(qū)塊,其中 上述各個(gè)共享緩存區(qū)塊是由一組上述數(shù)據(jù)儲(chǔ)存區(qū)塊所共享;且 上述各個(gè)專用緩存區(qū)塊對(duì)應(yīng)一個(gè)熱區(qū)邏輯區(qū)塊;以及 一控制器,耦接至該快閃存儲(chǔ)器,當(dāng)一寫入數(shù)據(jù)的邏輯區(qū)塊被判斷為一熱區(qū)邏輯區(qū)塊時(shí),該控制器將該寫入數(shù)據(jù)緩存至該熱區(qū)邏輯區(qū)塊對(duì)應(yīng)的專用緩存區(qū)塊,當(dāng)上述多組數(shù)據(jù)儲(chǔ)存區(qū)塊的一組數(shù)據(jù)儲(chǔ)存區(qū)塊中任一數(shù)據(jù)儲(chǔ)存區(qū)塊的空間用盡時(shí),該控制器將邏輯地址對(duì)應(yīng)該任一數(shù)據(jù)儲(chǔ)存區(qū)塊的寫入數(shù)據(jù)緩存至該組數(shù)據(jù)儲(chǔ)存區(qū)塊對(duì)應(yīng)的共享緩存區(qū)塊。
      2.如權(quán)利要求I所述的數(shù)據(jù)儲(chǔ)存裝置,其中,上述多組數(shù)據(jù)儲(chǔ)存區(qū)塊的每一組皆包括多個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊,且各個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊分別對(duì)應(yīng)一個(gè)邏輯區(qū)塊。
      3.如權(quán)利要求I所述的數(shù)據(jù)儲(chǔ)存裝置,其中,該控制器還記錄各邏輯區(qū)塊的寫入次數(shù),令寫入次數(shù)超過(guò)一臨界次數(shù)的邏輯區(qū)塊屬上述熱區(qū)邏輯區(qū)塊。
      4.如權(quán)利要求I所述的數(shù)據(jù)儲(chǔ)存裝置,其中,該控制器還統(tǒng)計(jì)上述共享緩存區(qū)塊其中數(shù)據(jù)所屬的邏輯區(qū)塊,令出現(xiàn)次數(shù)超過(guò)一臨界次數(shù)的邏輯區(qū)塊屬上述熱區(qū)邏輯區(qū)塊。
      5.如權(quán)利要求I所述的數(shù)據(jù)儲(chǔ)存裝置,其中,該控制器還于該快閃存儲(chǔ)器提供一數(shù)據(jù)儲(chǔ)存區(qū)塊映射表、多個(gè)共享緩存區(qū)塊映射表以及多個(gè)專用緩存區(qū)塊映射表,分別記錄上述多組數(shù)據(jù)儲(chǔ)存區(qū)塊、這些共享緩存區(qū)塊、以及這些專用緩存區(qū)塊的物理地址與邏輯地址的映射關(guān)系。
      6.如權(quán)利要求5所述的數(shù)據(jù)儲(chǔ)存裝置,其中,該數(shù)據(jù)儲(chǔ)存區(qū)塊映射表包括 一區(qū)塊映射子表,記錄不同邏輯區(qū)塊所對(duì)應(yīng)的數(shù)據(jù)儲(chǔ)存區(qū)塊;以及 對(duì)應(yīng)上述數(shù)據(jù)儲(chǔ)存區(qū)塊的多個(gè)頁(yè)映射子表,記錄不同邏輯頁(yè)偏移量所對(duì)應(yīng)的物理頁(yè)數(shù),存儲(chǔ)于所對(duì)應(yīng)的上述數(shù)據(jù)儲(chǔ)存區(qū)塊的空余空間中。
      7.如權(quán)利要求5所述的數(shù)據(jù)儲(chǔ)存裝置,其中,各個(gè)共享緩存區(qū)塊映射表記錄對(duì)應(yīng)的共享緩存區(qū)塊各物理頁(yè)所對(duì)應(yīng)的邏輯頁(yè)數(shù),各個(gè)專用緩存區(qū)塊映射表記錄對(duì)應(yīng)的專用緩存區(qū)塊各物理頁(yè)所對(duì)應(yīng)的邏輯頁(yè)數(shù)。
      8.一種數(shù)據(jù)儲(chǔ)存裝置操作方法,包括 于一數(shù)據(jù)儲(chǔ)存裝置的一快閃存儲(chǔ)器配置多組數(shù)據(jù)儲(chǔ)存區(qū)塊、多個(gè)共享緩存區(qū)塊、以及多個(gè)專用緩存區(qū)塊,其中,上述各個(gè)共享緩存區(qū)塊是由一組上述數(shù)據(jù)儲(chǔ)存區(qū)塊所共享,且上述各個(gè)專用緩存區(qū)塊對(duì)應(yīng)一個(gè)熱區(qū)邏輯區(qū)塊; 當(dāng)一主機(jī)所發(fā)出的一寫入指令的一寫入數(shù)據(jù)對(duì)應(yīng)的一邏輯地址屬于一熱區(qū)邏輯區(qū)塊時(shí),將該寫入數(shù)據(jù)緩存至該熱區(qū)邏輯區(qū)塊對(duì)應(yīng)的專用緩存區(qū)塊;以及 當(dāng)該邏輯地址并不屬于熱區(qū)邏輯區(qū)塊,并且當(dāng)該邏輯地址所對(duì)應(yīng)的一數(shù)據(jù)儲(chǔ)存區(qū)塊不存在空余空間時(shí),將該寫入數(shù)據(jù)緩存至該數(shù)據(jù)儲(chǔ)存區(qū)塊所在的一組數(shù)據(jù)儲(chǔ)存區(qū)塊對(duì)應(yīng)的共享緩存區(qū)塊。
      9.如權(quán)利要求8所述的數(shù)據(jù)儲(chǔ)存裝置操作方法,其中上述多組數(shù)據(jù)儲(chǔ)存區(qū)塊的每一組皆包括多個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊,且各個(gè)數(shù)據(jù)儲(chǔ)存區(qū)塊分別對(duì)應(yīng)一個(gè)邏輯區(qū)塊。
      10.如權(quán)利要求8所述的數(shù)據(jù)儲(chǔ)存裝置操作方法,還包括 記錄各邏輯區(qū)塊的寫入次數(shù),令寫入次數(shù)超過(guò)一臨界次數(shù)的邏輯區(qū)塊屬上述熱區(qū)邏輯區(qū)塊。
      11.如權(quán)利要求8所述的數(shù)據(jù)儲(chǔ)存裝置操作方法,還包括 統(tǒng)計(jì)上述共享緩存區(qū)塊其中數(shù)據(jù)所屬的邏輯區(qū)塊,令出現(xiàn)次數(shù)超過(guò)ー臨界次數(shù)的邏輯區(qū)塊屬上述熱區(qū)邏輯區(qū)塊。
      12.如權(quán)利要求8所述的數(shù)據(jù)儲(chǔ)存裝置操作方法,還包括 根據(jù)該主機(jī)所發(fā)出的ー讀取指令的邏輯地址判斷該讀取指令所欲讀取的數(shù)據(jù)是否由上述多個(gè)專用緩存區(qū)塊之ー儲(chǔ)存,以讀取該數(shù)據(jù); 當(dāng)判定該讀取指令所欲讀取的數(shù)據(jù)并不存在于上述多個(gè)專用緩存區(qū)塊的任何一個(gè)時(shí),還判斷該讀取指令所欲讀取的數(shù)據(jù)是否由上述多個(gè)共享緩存區(qū)塊之ー儲(chǔ)存,以讀取該數(shù)據(jù);且 當(dāng)還判定該讀取指令所欲讀取的數(shù)據(jù)并不存在于上述多個(gè)共享緩存區(qū)塊的任何ー個(gè)吋,自上述數(shù)據(jù)儲(chǔ)存區(qū)塊取得該讀取指令所欲讀取的數(shù)據(jù)。
      13.如權(quán)利要求8所述的數(shù)據(jù)儲(chǔ)存裝置操作方法,其中,關(guān)于上述多個(gè)共享緩存區(qū)塊之一,該方法還包括 于該共享緩存區(qū)塊用盡時(shí)尋得該共享緩存區(qū)塊其中數(shù)據(jù)所涉及的邏輯區(qū)塊;以及對(duì)該共享緩存區(qū)塊、以及這些邏輯區(qū)塊所對(duì)應(yīng)的數(shù)據(jù)儲(chǔ)存區(qū)塊以及專用緩存區(qū)塊作有效數(shù)據(jù)收集。
      14.如權(quán)利要求8所述的數(shù)據(jù)儲(chǔ)存裝置操作方法,其中,關(guān)于上述專用緩存區(qū)塊之一,該方法還包括 根據(jù)該專用緩存區(qū)塊所對(duì)應(yīng)的邏輯區(qū)塊尋得對(duì)應(yīng)的共享緩存區(qū)塊與數(shù)據(jù)儲(chǔ)存區(qū)塊;并且 對(duì)該共享緩存區(qū)塊內(nèi)屬于該邏輯區(qū)塊部分、以及該專用緩存區(qū)塊與該數(shù)據(jù)儲(chǔ)存區(qū)塊作有效數(shù)據(jù)收集,更新至閑置的另ー專用緩存區(qū)塊或另一數(shù)據(jù)儲(chǔ)存區(qū)塊, 其中于上述多個(gè)專用緩存區(qū)塊僅于特定數(shù)量的閑置者吋,自非閑置的專用緩存區(qū)塊中擇ー實(shí)行上述有效數(shù)據(jù)收集或于上述專用緩存區(qū)塊最末頁(yè)的寫入操作時(shí)實(shí)行上述有效數(shù)據(jù)收集。
      全文摘要
      一種快閃存儲(chǔ)器的數(shù)據(jù)儲(chǔ)存裝置與其操作方法。根據(jù)所揭示技術(shù),快閃存儲(chǔ)器的空間配置成包括多組數(shù)據(jù)儲(chǔ)存區(qū)塊、多個(gè)共享緩存區(qū)塊以及多個(gè)專用緩存區(qū)塊。上述各個(gè)共享緩存區(qū)塊由一組上述數(shù)據(jù)儲(chǔ)存區(qū)塊所共享,以于該組數(shù)據(jù)儲(chǔ)存區(qū)塊中任一空間用盡時(shí)緩存寫入數(shù)據(jù)。上述專用緩存區(qū)塊配置來(lái)儲(chǔ)存熱區(qū)數(shù)據(jù),且各個(gè)專用緩存區(qū)塊對(duì)應(yīng)一個(gè)邏輯區(qū)塊。
      文檔編號(hào)G06F12/06GK102789427SQ20121024790
      公開日2012年11月21日 申請(qǐng)日期2012年7月17日 優(yōu)先權(quán)日2012年7月17日
      發(fā)明者修宸, 張博 申請(qǐng)人:威盛電子股份有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1