国产精品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ù)儲存設(shè)備及其操作方法與流程

      文檔序號:11154892閱讀:438來源:國知局
      數(shù)據(jù)儲存設(shè)備及其操作方法與制造工藝

      本申請要求2015年10月29日在韓國知識產(chǎn)權(quán)局提交的第10-2015-0150659號韓國申請的優(yōu)先權(quán),該韓國申請通過引用整體地并入本文。

      技術(shù)領(lǐng)域

      本發(fā)明的各個(gè)實(shí)施例總體上涉及一種數(shù)據(jù)儲存設(shè)備,更具體地說,涉及一種能夠緩存讀取請求數(shù)據(jù)的數(shù)據(jù)儲存設(shè)備及其操作方法。



      背景技術(shù):

      近來,用于計(jì)算機(jī)環(huán)境的范例已經(jīng)改變成普適計(jì)算,以便可以隨時(shí)隨地使用計(jì)算機(jī)系統(tǒng)。因此,諸如移動(dòng)電話、數(shù)碼相機(jī)以及筆記本計(jì)算機(jī)的便攜式電子設(shè)備的使用正快速地增加。通常,便攜式電子設(shè)備使用數(shù)據(jù)儲存設(shè)備,數(shù)據(jù)儲存設(shè)備采用用于儲存數(shù)據(jù)的半導(dǎo)體存儲器件。數(shù)據(jù)儲存設(shè)備可以用作用于便攜式電子設(shè)備的主存儲器件或輔助存儲器件。

      使用半導(dǎo)體存儲器件的數(shù)據(jù)儲存設(shè)備沒有機(jī)械驅(qū)動(dòng)部件,并且通常表現(xiàn)出優(yōu)異的穩(wěn)定性、耐久性、高信息存取速度以及低電耗。具有這樣優(yōu)點(diǎn)的數(shù)據(jù)儲存設(shè)備的示例包括通用串行總線(USB)存儲器件、具有各種接口的存儲卡以及固態(tài)驅(qū)動(dòng)器(SSD)。

      因?yàn)楸銛y式電子設(shè)備常常處理諸如音樂或視頻文件的大文件,所以在便攜式電子設(shè)備中使用的數(shù)據(jù)儲存設(shè)備需要具有大的儲存容量。因此,數(shù)據(jù)儲存設(shè)備通常用作對存儲單元來講具有高的集成度以提供大的儲存容量的儲存介質(zhì)、半導(dǎo)體存儲器件。例如,作為非易失性存儲器件的閃速存儲器件具有高的集成度并且廣泛用在便攜式電子設(shè)備中。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明的各種實(shí)施例涉及一種能夠有效地緩存讀取請求數(shù)據(jù)的數(shù)據(jù)儲存設(shè)備及其操作方法。

      根據(jù)實(shí)施例,用于操作數(shù)據(jù)儲存設(shè)備的方法可以包括:將緩存器劃分為多個(gè)緩存區(qū)域;將多個(gè)邏輯地址分組為多個(gè)邏輯地址組;將索引分配至相應(yīng)的邏輯地址組;以及將讀取請求的第一邏輯地址集、與第一邏輯地址集對應(yīng)的數(shù)據(jù)被緩存處的第一緩存區(qū)域以及第一緩存區(qū)域的空尺寸匹配至與第一邏輯地址集屬于的邏輯地址組對應(yīng)的索引。

      根據(jù)實(shí)施例,數(shù)據(jù)儲存設(shè)備可以包括:非易失性存儲器件;控制單元,被配置為根據(jù)從主機(jī)設(shè)備接收到的請求來控制非易失性存儲器件;以及緩存器,被配置為緩存從非易失性存儲器件讀出的數(shù)據(jù),其中,控制單元將緩存器劃分為多個(gè)緩存區(qū)域,將預(yù)定單位的多個(gè)邏輯地址分組為多個(gè)邏輯地址組,將索引分配至相應(yīng)的邏輯地址組,以及當(dāng)與讀取請求的第一邏輯地址集對應(yīng)的數(shù)據(jù)被緩存在緩存區(qū)域中的任何一個(gè)中時(shí),將第一邏輯地址集的開始邏輯地址、與第一邏輯地址集對應(yīng)的數(shù)據(jù)被緩存處的第一緩存區(qū)域以及第一緩存區(qū)域的空尺寸匹配至與第一邏輯地址集屬于的邏輯地址組對應(yīng)的索引。

      根據(jù)實(shí)施例,由于能夠有效地緩存讀取請求的數(shù)據(jù),因此可以提高緩存數(shù)據(jù)的命中率,以及可以提高數(shù)據(jù)儲存設(shè)備的操作速度。

      附圖說明

      圖1是示出根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)儲存設(shè)備的框圖。

      圖2示出根據(jù)本發(fā)明的實(shí)施例的讀取緩存器的結(jié)構(gòu)。

      圖3是示出根據(jù)本發(fā)明的實(shí)施例的讀取緩存表的示例的示圖。

      圖4是示出根據(jù)本發(fā)明的實(shí)施例的用于處理讀取緩存器的操作的流程圖。

      圖5是示出根據(jù)本發(fā)明的實(shí)施例的緩存讀取數(shù)據(jù)以及更新讀取緩存表的操作的流程圖。

      圖6是示出根據(jù)本發(fā)明的另一實(shí)施例的讀取緩存表的示例的示圖。

      圖7至圖11示出了根據(jù)本發(fā)明的實(shí)施例的用于操作讀取緩存器的示例。

      圖12是示出根據(jù)本發(fā)明的實(shí)施例的包括數(shù)據(jù)儲存設(shè)備的數(shù)據(jù)處理系統(tǒng)的框圖。

      圖13是示出根據(jù)本發(fā)明的實(shí)施例的包括固態(tài)驅(qū)動(dòng)器(SSD)的數(shù)據(jù)處理系統(tǒng)的框圖。

      圖14是示出根據(jù)本發(fā)明的實(shí)施例的固態(tài)驅(qū)動(dòng)器(SSD)控制器的框圖。

      圖15是示出根據(jù)本發(fā)明的實(shí)施例的包括數(shù)據(jù)儲存設(shè)備的計(jì)算機(jī)系統(tǒng)的框圖。

      圖16是示出根據(jù)本發(fā)明的實(shí)施例的包括在數(shù)據(jù)儲存設(shè)備內(nèi)的非易失性存儲器件的框圖。

      具體實(shí)施方式

      在本發(fā)明中,在閱讀結(jié)合附圖所描述的以下實(shí)施例后,優(yōu)點(diǎn)、特征以及用于實(shí)現(xiàn)它們的方法可以變得更加明顯。然而,本發(fā)明可以以不同的形式來實(shí)施,且不應(yīng)被解釋為限于本文所闡述的實(shí)施例。更確切地說,提供這些實(shí)施例以將本發(fā)明詳細(xì)地描述至本發(fā)明所屬領(lǐng)域的技術(shù)人員可以容易地實(shí)踐本發(fā)明的程度。

      要理解的是,在本文中,本發(fā)明的實(shí)施例不限于在附圖中示出的細(xì)節(jié)并且附圖未必是按比例的,并且在有些情況下,比例可能已經(jīng)被夸大以便更加清楚地描述本發(fā)明的某些特征。雖然在本文中使用特定術(shù)語,但要理解的是,在本文中所使用的術(shù)語僅出于描述特定實(shí)施例的目的,而并不意圖限制本發(fā)明的范圍。

      如本文中所使用的,術(shù)語“和/或”包括一個(gè)或更多個(gè)相關(guān)所列項(xiàng)目的任意組合和所有組合。可以理解的是,當(dāng)元件被稱為“在”另一元件“上”、“連接到”或“耦接到”另一元件時(shí),它可以直接在所述另一元件上、直接連接到或耦接到所述另一元件,或者可以存在中間元件。如本文中所使用的,除非上下文另外清楚地指出,否則單數(shù)形式也意圖包括復(fù)數(shù)形式。還可以理解的是,當(dāng)在本說明書中使用時(shí),術(shù)語“包括”及其變型和/或“包含”及其變型具體說明存在至少一個(gè)所述特征、步驟、操作和/或元件,但是不排除存在或添加一個(gè)或更多個(gè)其他特征、步驟、操作和/或元件。

      在下文中,參考附圖通過實(shí)施例的各種示例來描述數(shù)據(jù)儲存設(shè)備及其操作方法。

      圖1是示出根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)儲存設(shè)備100的框圖。

      參考圖1,數(shù)據(jù)儲存設(shè)備100可以儲存要被諸如移動(dòng)電話、MP3播放器、膝上型計(jì)算機(jī)、臺式計(jì)算機(jī)、游戲播放器、TV、車載信息娛樂系統(tǒng)等的主機(jī)設(shè)備(未示出)訪問的數(shù)據(jù)。數(shù)據(jù)儲存設(shè)備100也可以稱為存儲系統(tǒng)。

      根據(jù)可以與主機(jī)設(shè)備電耦接的接口的協(xié)議,數(shù)據(jù)儲存設(shè)備100可以被制造為各種儲存設(shè)備中的任何一種。例如,數(shù)據(jù)儲存設(shè)備100可以配置為諸如固態(tài)驅(qū)動(dòng)器(SSD)、成MMC、eMMC、RS-MMC和微型MMC形式的多媒體卡、成SD、迷你SD和微型SD形式的安全數(shù)字卡、通用串行總線(USB)儲存設(shè)備、通用閃速儲存(UFS)設(shè)備、個(gè)人計(jì)算機(jī)存儲卡國際協(xié)會(huì)(PCMCIA)卡類型儲存設(shè)備、外圍部件互聯(lián)(PCI)卡類型儲存設(shè)備、PCI高速(PCI-E)卡類型儲存設(shè)備、緊湊型閃存(CF)卡、智能媒體卡、記憶棒等的各種儲存設(shè)備中的任何一種。

      數(shù)據(jù)儲存設(shè)備100可以被制造為各種封裝類型中的任何一種。例如,數(shù)據(jù)儲存設(shè)備100可以被制造為諸如層疊封裝(POP)、系統(tǒng)級封裝(SIP)、芯片上系統(tǒng)(SOC)、多 芯片封裝(MCP)、板上芯片(COB)、晶片級制造封裝(WFP)、晶片級層疊封裝(WSP)等的各種封裝類型中的任何一種。

      數(shù)據(jù)儲存設(shè)備100可以包括非易失性存儲器件300。非易失性存儲器件300可以作為數(shù)據(jù)儲存設(shè)備100的儲存介質(zhì)來操作。非易失性存儲器件300可以由諸如NAND閃速存儲器件、NOR閃速存儲器件、使用鐵電電容器的鐵電隨機(jī)存取存儲器(FRAM)、使用隧穿磁電阻(TMR)層的磁性隨機(jī)存取存儲器(MRAM)、使用硫族化物合金的相變隨機(jī)存取存儲器(PRAM)、電阻式隨機(jī)存取存儲器(ReRAM)等的各種類型的非易失性存儲器件中的任何一種來配置。

      數(shù)據(jù)儲存設(shè)備100可以包括控制器200??刂破?00可以包括控制單元210、主機(jī)接口(I/F)單元220以及隨機(jī)存取存儲器230。

      控制單元210可以控制控制器200的總體操作??刂茊卧?10可以分析并處理從主機(jī)設(shè)備輸入的信號、命令或請求。例如,當(dāng)從主機(jī)設(shè)備接收到讀取請求時(shí),控制單元210可以基于讀取請求的邏輯地址從非易失性存儲器件300讀取數(shù)據(jù)。對于另一示例,當(dāng)從主機(jī)設(shè)備接收到寫入請求時(shí),控制單元210可以基于寫入請求的邏輯地址將寫入數(shù)據(jù)儲存在非易失性存儲器件300中。為此,控制單元210可以解碼并驅(qū)動(dòng)加載在隨機(jī)存取存儲器230上的固件(FW)(或軟件)??刂茊卧?10可以以硬件和/或軟件的形式實(shí)施。在實(shí)施例中,控制單元210可以以硬件和軟件的組合形式實(shí)施。

      主機(jī)接口單元220可以根據(jù)主機(jī)設(shè)備的協(xié)議使主機(jī)設(shè)備和數(shù)據(jù)儲存設(shè)備100接口。例如,主機(jī)接口單元220可以通過包括例如通用串行總線(USB)、通用閃速儲存器(UFS)、多媒體卡(MMC)、并行高級技術(shù)附件(PATA)、串行高級技術(shù)附件(SATA)、小型計(jì)算機(jī)系統(tǒng)接口(SCSI)、串行連接SCSI(SAS)、外圍部件互聯(lián)(PCI)、PCI高速(PCI-E)協(xié)議等的任何合適的通信協(xié)議與主機(jī)設(shè)備通信。

      主機(jī)接口單元220可以包括命令隊(duì)列CMDQ。具有m的隊(duì)列深度的命令隊(duì)列CMDQ可以包括m數(shù)目的隊(duì)列Q1至Qm。從主機(jī)設(shè)備接收到的請求(或命令)可以分別儲存在m數(shù)目的隊(duì)列Q1至Qm中。排列在命令隊(duì)列CMDQ中的請求可以由控制單元210順序地或者隨機(jī)地處理。

      隨機(jī)存取存儲器230可以儲存要由控制單元210驅(qū)動(dòng)的固件(FW)。此外,隨機(jī)存取存儲器230可以儲存驅(qū)動(dòng)固件(FW)所需的管理數(shù)據(jù)。隨機(jī)存取存儲器230可以作為控制單元210的工作存儲器來操作。例如,儲存在其中的管理數(shù)據(jù)可以包括用于將來自主機(jī)設(shè)備的存取請求的邏輯塊地址(LBA)轉(zhuǎn)換或映射為非易失性存儲器件300的物理塊地址(PBA)的地址映射信息。

      隨機(jī)存取存儲器230可以暫時(shí)儲存要從主機(jī)設(shè)備發(fā)送至非易失性存儲器件300或者要從非易失性存儲器件300發(fā)送至主機(jī)設(shè)備的數(shù)據(jù)。換句話說,隨機(jī)存取存儲器230可以作為數(shù)據(jù)緩沖器(DB)來操作。

      隨機(jī)存取存儲器230可以緩存在發(fā)送到主機(jī)設(shè)備的數(shù)據(jù)之中的最近發(fā)送或頻繁發(fā)送的數(shù)據(jù)。即,隨機(jī)存取存儲器230可以作為讀取緩存器RC來工作,讀取緩存器RC將從非易失性存儲器件300讀取的數(shù)據(jù)緩存以快速響應(yīng)來自主機(jī)設(shè)備的讀取請求。

      為了提高讀取緩存器RC的命中率,控制單元210可以將讀取緩存器RC劃分為若干讀取緩存區(qū)域??刂茊卧?10可以通過將每個(gè)讀取緩存區(qū)域匹配至預(yù)定單位的邏輯地址來管理讀取緩存表??刂茊卧?10可以通過參考這種讀取緩存表來管理讀取緩存器RC。

      例如,控制單元210可以將讀取緩存器RC劃分為多個(gè)讀取緩存區(qū)域。控制單元210還可以將邏輯地址一起布置(例如分組)為邏輯地址組。例如,控制單元210可以將邏輯地址分組為從開始邏輯地址開始直至每個(gè)讀取緩存區(qū)域的尺寸的邏輯地址組,其中,開始邏輯地址通過預(yù)定單位增大。

      控制單元210還可以將索引分配至相應(yīng)的邏輯地址組,以及通過將讀取請求的邏輯地址、與邏輯地址對應(yīng)的數(shù)據(jù)被緩存處的讀取緩存區(qū)域以及讀取緩存區(qū)域的空尺寸匹配至與邏輯地址所屬的邏輯地址組對應(yīng)的索引來管理讀取緩存表。

      圖2示出了根據(jù)本發(fā)明的實(shí)施例的讀取緩存器(RC)的結(jié)構(gòu)的示例。例如,圖2的讀取緩存器可以是圖1中的隨機(jī)存取存儲器230的讀取緩存器(RC)。

      參考圖2,讀取緩存器RC可以被劃分成諸如A1至Az的各個(gè)讀取緩存區(qū)域RCA。

      在實(shí)施例中,每個(gè)讀取緩存區(qū)域RCA的尺寸n可以對應(yīng)于映射至每個(gè)邏輯地址的物理地址的尺寸,即,與每個(gè)物理地址對應(yīng)的存儲區(qū)域的尺寸。

      在另一實(shí)施例中,每個(gè)讀取緩存區(qū)域RCA的尺寸n可以對應(yīng)于通過每個(gè)讀取操作從非易失性存儲器件300讀出的數(shù)據(jù)量。因此,讀取緩存區(qū)域RCA可以設(shè)定為通過每個(gè)讀取操作從非易失性存儲器件300讀出的數(shù)據(jù)的尺寸。

      在又一個(gè)實(shí)施例中,每個(gè)讀取緩存區(qū)域RCA的尺寸n可以通過扇區(qū)(sector)的數(shù)目來確定。例如,每個(gè)讀取緩存區(qū)域RCA的尺寸n可以通過扇區(qū)的數(shù)目表示,而不是通過由二進(jìn)制表示的存儲容量(即,位或字節(jié))來表示。扇區(qū)可以具有512字節(jié)的尺寸作為與每個(gè)邏輯地址對應(yīng)的數(shù)據(jù)單位。例如,當(dāng)n是“2”時(shí),每個(gè)讀取緩存區(qū)域RCA 的尺寸可以表示與2個(gè)扇區(qū)對應(yīng)的1KB(512字節(jié)*2)。

      圖3是示出根據(jù)本發(fā)明的實(shí)施例的讀取緩存表RCT的示圖。例如,圖3的讀取緩存表可以包括在圖1的數(shù)據(jù)儲存設(shè)備的隨機(jī)存取存儲器230內(nèi)。在數(shù)據(jù)儲存設(shè)備100啟動(dòng)后剛開始與在從主機(jī)設(shè)備接收到讀取請求時(shí)結(jié)束的時(shí)間段期間,沒有數(shù)據(jù)(也稱為信息)可以包括在讀取緩存表RCT中。讀取緩存表RCT可以根據(jù)來自主機(jī)設(shè)備的讀取請求實(shí)時(shí)更新,從而至少圖3中示出的信息可以包括在其中。

      讀取緩存表RCT可以包括諸如索引、讀取緩存區(qū)域(RCA)、空白空間(ES)以及邏輯塊地址(LBA)的各種信息。索引可以分配給相應(yīng)的邏輯塊地址組。讀取緩存區(qū)域RCA可以被匹配至所匹配的讀取緩存區(qū)域RCA的空尺寸(或空白空間)ES和索引。因?yàn)閿?shù)據(jù)可以通過參考分配給相應(yīng)的邏輯地址組的讀取緩存區(qū)域RCA的空尺寸而被緩存,從而在讀取緩存區(qū)域RCA中不出現(xiàn)空白空間,所以在讀取緩存器RC中可以緩存最大的數(shù)據(jù)量。

      讀取緩存表RCT可以分類為諸如從1至m的各種索引。索引的數(shù)目可以對應(yīng)于圖1中示出的命令隊(duì)列CMDQ的隊(duì)列深度m。索引可以由包括在命令隊(duì)列CMDQ中的隊(duì)列的數(shù)目m生成。

      包括開始邏輯地址和從每個(gè)開始邏輯地址開始直至讀取緩存區(qū)域RCA的尺寸(即,扇區(qū)的數(shù)目)n的通過預(yù)定單位(或預(yù)定間隔)增大的后續(xù)地址的邏輯地址可以分組為邏輯地址組LG。在一些實(shí)施例中,預(yù)定單位可以被確定為值m*n,其中,m表示隊(duì)列深度,n表示每個(gè)讀取緩存區(qū)域RCA的尺寸。邏輯地址組LG1至LGm可以分別對應(yīng)于索引1至m。

      例如,自開始邏輯地址0的n個(gè)邏輯地址、自開始邏輯地址mn的n個(gè)邏輯地址、自開始邏輯地址2mn的n個(gè)邏輯地址、自開始邏輯地址3mn的n個(gè)邏輯地址以及以這種方式計(jì)算的其余邏輯地址可以分組為與索引1對應(yīng)的邏輯地址組LG1。

      在屬于邏輯地址組的邏輯地址之中,僅僅讀取請求的邏輯地址可以匹配至對應(yīng)索引。也就是說,如果與讀取請求的邏輯地址對應(yīng)的數(shù)據(jù)緩存在讀取緩存器RC中,則讀取請求的邏輯地址可以匹配至對應(yīng)索引。

      如果與讀取請求的邏輯地址對應(yīng)的數(shù)據(jù)緩存在讀取緩存器RC中,則數(shù)據(jù)被緩存在其處的讀取緩存區(qū)域RCA的信息可以匹配至索引。此外,關(guān)于通過從每個(gè)讀取緩存區(qū)域RCA的尺寸n減去緩存數(shù)據(jù)的尺寸cs所獲得的尺寸的信息,即,匹配讀取緩存區(qū)域RCA的空尺寸ES可以匹配至索引。由于每個(gè)讀取緩存區(qū)域RCA的尺寸n可以以扇區(qū) 的數(shù)目表示,因此匹配讀取緩存區(qū)域RCA的空尺寸ES也可以以扇區(qū)的數(shù)目表示。

      在假設(shè)來自主機(jī)設(shè)備的例如讀取請求或?qū)懭胝埱蟮恼埱笠蚤_始邏輯地址以及扇區(qū)或邏輯地址的數(shù)目的形式提供的情況下,可以進(jìn)行以下描述。開始邏輯地址以及扇區(qū)或邏輯地址的數(shù)目可以定義為邏輯地址集。換句話說,邏輯地址集定義為從開始邏輯地址到扇區(qū)或邏輯地址的數(shù)目的邏輯地址。

      圖4是示出根據(jù)本發(fā)明的實(shí)施例的用于處理讀取緩存器RC的操作的流程圖。在描述圖4時(shí),假設(shè)數(shù)據(jù)緩存在讀取緩存器RC中以及讀取緩存表RCT根據(jù)先前讀取請求更新。例如,圖4的操作可以通過圖1的控制器210執(zhí)行。

      在步驟S100處,可以對當(dāng)前從圖1的主機(jī)設(shè)備(未示出)接收到的請求是讀取請求RR還是寫入請求WR進(jìn)行判斷。

      在當(dāng)前從主機(jī)設(shè)備接收到的請求是寫入請求WR(S100,WR)的情況下,因?yàn)橥ㄟ^寫入請求WR提供的新數(shù)據(jù)應(yīng)該作為有效數(shù)據(jù)處理,而緩存在讀取緩存器RC中舊數(shù)據(jù)應(yīng)該作為無效數(shù)據(jù)處理,所以處理可以進(jìn)行到步驟S110和步驟S120。

      在步驟S110處,確定寫入請求的邏輯地址集是否存在于讀取緩存表RCT中。

      在寫入請求的邏輯地址集未存在于讀取緩存表RCT(S110,否)中的情況下,由于這表示沒有數(shù)據(jù)被緩存,因此處理可以在沒有對讀取緩存表RCT進(jìn)行更新的情況下結(jié)束。

      在寫入請求的邏輯地址集存在于讀取緩存表RCT(S110,是)中的情況下,由于這表示數(shù)據(jù)被緩存,因此可以執(zhí)行步驟S120以處理作為無效數(shù)據(jù)的緩存在讀取緩存器RC中的數(shù)據(jù)。在步驟S120處,可以從讀取緩存表RCT移除寫入請求的邏輯地址集??梢砸瞥ヅ渲了饕倪壿嫷刂罚瑥亩c當(dāng)前寫入請求的邏輯地址集對應(yīng)的數(shù)據(jù)在隨后的讀取請求時(shí)不從讀取緩存器RC提供(service)。

      在當(dāng)前從主機(jī)設(shè)備接收到的請求是讀取請求RR(S100,RR)的情況下,可以對與讀取請求的邏輯地址集對應(yīng)的數(shù)據(jù)(也稱為讀取請求數(shù)據(jù))是否緩存在讀取緩存器RC中進(jìn)行判定。用于維護(hù)讀取請求數(shù)據(jù)的方法可以基于判定結(jié)果而改變。

      在步驟S130處,為了判定讀取請求數(shù)據(jù)是否是順序數(shù)據(jù),判定讀取請求數(shù)據(jù)的尺寸是否小于或等于順序數(shù)據(jù)參考值。讀取請求數(shù)據(jù)的尺寸可以基于讀取請求的邏輯地址集,即,開始邏輯地址和讀取請求的扇區(qū)的數(shù)目來計(jì)算。順序數(shù)據(jù)參考值可以是用于確定作為順序數(shù)據(jù)的超過參考值的數(shù)據(jù)尺寸和作為隨機(jī)數(shù)據(jù)的小于或等于參考值的數(shù)據(jù)尺 寸的參考值。參考值可以變化。

      在讀取請求數(shù)據(jù)的尺寸大于順序數(shù)據(jù)參考值(S130,否)的情況下,因?yàn)樽x取緩存器RC的容量的限制,讀取請求數(shù)據(jù)可以確定為是未由先前讀取請求緩存的數(shù)據(jù)和未要由當(dāng)前讀取請求緩存的數(shù)據(jù)。因此,處理可以進(jìn)行到步驟S140。在步驟S140處,讀取請求數(shù)據(jù)可以從圖1的非易失性存儲器件300提供。即,當(dāng)前讀取請求的數(shù)據(jù)未被緩存。

      在讀取請求數(shù)據(jù)的尺寸小于或等于順序數(shù)據(jù)參考值(S130,是)的情況下,讀取請求數(shù)據(jù)可以確定為通過先前讀取請求緩存的數(shù)據(jù)和待被緩存在讀取緩存器RC中以快速響應(yīng)隨后的讀取請求的數(shù)據(jù)。因此,處理可以進(jìn)行到步驟S150。在步驟S150處,確定讀取請求邏輯地址集是否存在于讀取緩存表RCT中。

      在讀取請求邏輯地址集存在于讀取緩存表RCT(S150,是)的情況下,由于這表示數(shù)據(jù)被緩存,因此處理可以進(jìn)行到步驟S160。在步驟S160處,讀取請求數(shù)據(jù)可以從讀取緩存器RC提供。也就是說,未執(zhí)行讀取圖1的非易失性存儲器件300以提供讀取請求數(shù)據(jù)的操作。

      在讀取請求邏輯地址集不存在于讀取緩存表RCT(S150,否)中的情況下,由于這表示沒有數(shù)據(jù)被緩存,因此在步驟S170、S180以及S190處,讀取請求數(shù)據(jù)可以通過從非易失性存儲器件300讀出而提供,以及可以被緩存以為隨后的讀取請求作準(zhǔn)備。

      在步驟S170處,可以從非易失性存儲器件300讀出讀取請求數(shù)據(jù)。在步驟S180處,可以通過參考讀取緩存表RCT將讀出數(shù)據(jù)緩存在讀取緩存器RC中,以及可以更新讀取緩存表RCT。在步驟S190處,可以從讀取緩存器RC提供讀取請求數(shù)據(jù)。

      圖5是示出根據(jù)本發(fā)明的實(shí)施例的緩存讀取數(shù)據(jù)以及更新讀取緩存表的操作的流程圖。例如,圖5的流程圖可以是圖4的步驟S180的詳細(xì)示例。圖5的操作可以通過圖1的控制器210執(zhí)行。為了簡化起見,示出了流程圖,其中首先執(zhí)行讀取緩存表RCT的更新操作(或管理操作),接下來執(zhí)行緩存讀取請求數(shù)據(jù)的操作。讀取請求數(shù)據(jù)可以是根據(jù)讀取緩存表RCT從非易失性存儲器件300讀取的數(shù)據(jù)。要注意的是,讀取緩存表RCT的更新操作和數(shù)據(jù)緩存操作的順序可以改變。

      在步驟S181處,確定讀取緩存區(qū)域RCA是否已經(jīng)匹配至與讀取請求的邏輯地址集所屬的邏輯地址組對應(yīng)的索引。

      在讀取緩存區(qū)域RCA沒有匹配至索引(S181,否)的情況下,可以根據(jù)讀出數(shù)據(jù)的尺寸將空(未匹配的)讀取緩存區(qū)域RCA重新匹配至索引。

      在步驟S182處,確定從非易失性存儲器件300讀出的數(shù)據(jù)的尺寸是否小于或等于每個(gè)讀取緩存區(qū)域RCA的尺寸。

      在讀出數(shù)據(jù)的尺寸小于或等于每個(gè)讀取緩存區(qū)域RCA的尺寸(S182,是)的情況下,可以將讀出數(shù)據(jù)緩存在一個(gè)讀取緩存區(qū)域RCA中。在步驟S183處,可以將讀取緩存區(qū)域RCA、讀取請求的邏輯地址集的開始邏輯地址LBA以及基于緩存(或要緩存)的數(shù)據(jù)計(jì)算出的讀取緩存區(qū)域RCA的空尺寸ES匹配至索引。

      在讀出數(shù)據(jù)的尺寸大于每個(gè)讀取緩存區(qū)域RCA的尺寸(S182,否)的情況下,讀出數(shù)據(jù)可以不緩存在一個(gè)讀取緩存區(qū)域RCA中。因此,可以將讀出數(shù)據(jù)緩存在若干讀取緩存區(qū)域RCA中。在步驟S184處,可以將讀取緩存區(qū)域RCA、讀取請求的邏輯地址集的開始邏輯地址LBA以及基于緩存(或要緩存)的數(shù)據(jù)計(jì)算出的讀取緩存區(qū)域RCA的空尺寸ES匹配至多個(gè)索引中的每個(gè)。在這種情況下,可以移除因先前緩存的數(shù)據(jù)而匹配至每個(gè)索引的信息,例如,讀取緩存區(qū)域RCA、讀取請求的開始邏輯地址LBA以及匹配的讀取緩存區(qū)域RCA的空尺寸ES。

      在讀取緩存區(qū)域RCA已經(jīng)匹配至索引(S181,是)的情況下,可以根據(jù)讀取緩存區(qū)域RCA的空尺寸ES,將讀取請求數(shù)據(jù)緩存在已經(jīng)匹配的讀取緩存區(qū)域RCA的空白空間中或者在新匹配的讀取緩存區(qū)域RCA中。

      在步驟S185處,確定從非易失性存儲器件300讀出的數(shù)據(jù)的尺寸是否小于或等于匹配的讀取緩存區(qū)域RCA的空尺寸ES。

      在讀出數(shù)據(jù)的尺寸小于或等于匹配的讀取緩存區(qū)域RCA的空尺寸ES(S185,是)的情況下,可以將讀出數(shù)據(jù)緩存在匹配的讀取緩存區(qū)域RCA的空白空間中。在步驟S186處,可以將讀取請求的邏輯地址集的開始邏輯地址LBA另外匹配至索引。換句話說,可以將當(dāng)前讀取請求的邏輯地址集的開始邏輯地址LBA同與已經(jīng)緩存在讀取緩存區(qū)域RCA中的數(shù)據(jù)對應(yīng)的開始邏輯地址LBA一起匹配至索引。

      在讀出數(shù)據(jù)的尺寸大于匹配的讀取緩存區(qū)域RCA的空尺寸ES(S185,否)的情況下,讀出數(shù)據(jù)可以不緩存在匹配的讀取緩存區(qū)域RCA的空白空間中。因此,可以將讀出數(shù)據(jù)緩存在空的讀取緩存區(qū)域RCA中。在步驟S187處,可以移除已經(jīng)匹配至索引的讀取緩存區(qū)域RCA、開始邏輯地址LBA以及讀取緩存區(qū)域RCA的空尺寸ES。在步驟S188處,可以將讀取緩存區(qū)域RCA、讀取請求的邏輯地址集的開始邏輯地址LBA以及基于緩存(或要緩存)的數(shù)據(jù)計(jì)算出的讀取緩存區(qū)域RCA的空尺寸ES重新匹配至索引。

      在讀取緩存區(qū)域RCA、讀取請求的邏輯地址集的開始邏輯地址LBA以及基于緩存 (或要緩存)的數(shù)據(jù)計(jì)算出的讀取緩存區(qū)域RCA的空尺寸ES匹配至索引后,可以如在步驟S189中,根據(jù)讀取緩存表RCT緩存讀出數(shù)據(jù)。

      圖6是示出根據(jù)本發(fā)明的實(shí)施例的讀取緩存表的示例的示圖。可以通過圖1的控制器210執(zhí)行圖6的示例。圖6中的讀取緩存表RCT可以示出可包括在讀取緩存表RCT中的信息。在這種情況下,假設(shè)命令隊(duì)列CMDQ的隊(duì)列深度m是32并且每個(gè)讀取緩存區(qū)域RCA的尺寸n是8。

      參考圖6,索引可以利用為32的命令隊(duì)列CMDQ的隊(duì)列深度m來生成。此外,從開始邏輯地址開始直至8(作為每個(gè)讀取緩存區(qū)域RCA的尺寸)個(gè)邏輯地址的邏輯地址可以分組為每個(gè)邏輯地址組LG,開始邏輯地址以256(=32(m)*8(n))為單位增大。此外,可以將讀取緩存區(qū)域RCA的空尺寸ES計(jì)算為通過從作為每個(gè)讀取緩存區(qū)域RCA的尺寸的8減去緩存數(shù)據(jù)尺寸cs所獲得的尺寸。

      例如,自第一開始邏輯地址0的8個(gè)邏輯地址0至7、自第二開始邏輯地址256的8個(gè)邏輯地址256至263、自第三開始邏輯地址512的8個(gè)邏輯地址512至519以及以這種方式計(jì)算的其余邏輯地址可以分組為與索引1對應(yīng)的邏輯地址組LG1。第二開始邏輯地址256可以自第一開始邏輯地址0增加256,第三開始邏輯地址512可以自第二開始邏輯地址256增加256,以及第四開始邏輯地址768可以自第三開始邏輯地址512增加256。

      自第一開始邏輯地址8的8個(gè)邏輯地址8至15、自第二開始邏輯地址264的8個(gè)邏輯地址264至271、自第三開始邏輯地址520的8個(gè)邏輯地址520至527以及以這種方式計(jì)算的其余邏輯地址可以分組為與索引2對應(yīng)的邏輯地址組LG2。第二開始邏輯地址264可以自第一開始邏輯地址8增加256,第三開始邏輯地址520可以自第二開始邏輯地址264增加256,以及第四開始邏輯地址776可以自第三開始邏輯地址520增加256。

      自第一開始邏輯地址16的8個(gè)邏輯地址16至23、自第二開始邏輯地址272的8個(gè)邏輯地址272至279、自第三開始邏輯地址528的8個(gè)邏輯地址528至535以及以這種方式計(jì)算的其余邏輯地址可以分組為與索引3對應(yīng)的邏輯地址組LG3。第二開始邏輯地址272可以自第一開始邏輯地址16增加256,第三開始邏輯地址528可以自第二開始邏輯地址272增加256,以及第四開始邏輯地址784可以自第三開始邏輯地址528增加256。

      自第一開始邏輯地址248的8個(gè)邏輯地址248至255、自第二開始邏輯地址504的8個(gè)邏輯地址504至511、自第三開始邏輯地址760的8個(gè)邏輯地址760至767以及以這種方式計(jì)算的其余邏輯地址可以分組為與索引m對應(yīng)的邏輯地址組LGm。第二開始邏輯地址504可以自第一開始邏輯地址248增加256,第三開始邏輯地址760可以自第二 開始邏輯地址504增加256,以及第四開始邏輯地址1016可以自第三開始邏輯地址760增加256。

      圖7至圖11示出了根據(jù)本發(fā)明的實(shí)施例的用于操作讀取緩存器的示例??梢酝ㄟ^圖1的控制器210執(zhí)行圖7至圖11的操作。例如,在描述圖7至圖11中,可以參考圖6中所示的讀取緩存表RCT。

      參考圖7,可以描述在讀出數(shù)據(jù)的尺寸大于每個(gè)讀取緩存區(qū)域RCA的尺寸的情況下的讀取緩存表RCT的更新處理和數(shù)據(jù)緩存處理。

      在接收讀取請求前,讀取緩存表RCT和讀取緩存器RC的狀態(tài)可以是如下狀態(tài)。

      索引1可以處于沒有數(shù)據(jù)與其匹配的狀態(tài)。

      索引2可以處于讀取緩存區(qū)域(RCA)A1、開始邏輯地址(S_LBA)776以及讀取緩存區(qū)域A1的空尺寸(ES)3與其匹配的狀態(tài)。索引2可以表示與從開始邏輯地址776到邏輯地址780的5(=8-3)個(gè)邏輯地址對應(yīng)的讀取數(shù)據(jù)(2.5KB=528字節(jié)*5扇區(qū))被緩存在讀取緩存區(qū)域A1中的狀態(tài)。

      索引3可以處于讀取緩存區(qū)域A8、開始邏輯地址528以及讀取緩存區(qū)域A8的空尺寸1與其匹配的狀態(tài)。索引3可以表示與從開始邏輯地址528到邏輯地址534的7(=8-1)個(gè)邏輯地址對應(yīng)的讀取數(shù)據(jù)(3.5KB=528字節(jié)*7扇區(qū))被緩存在讀取緩存區(qū)域A8中的狀態(tài)。

      如果接收到用于自開始邏輯地址0的20個(gè)邏輯地址的集的讀取請求R(0,20),則由于讀出數(shù)據(jù)的尺寸(10KB=528字節(jié)*20)大于每個(gè)讀取緩存區(qū)域RCA的尺寸(4KB),因此可以更新讀取緩存表RCT以及可以來緩存讀出數(shù)據(jù),如下。

      由于開始邏輯地址0是屬于與如圖6所示的索引1對應(yīng)的邏輯地址組LG1的邏輯地址,因此可以匹配至索引1。在空讀取緩存區(qū)域A2、A3以及A7之中,可以將讀取緩存區(qū)域A2匹配至索引1。由于數(shù)據(jù)被緩存為使得匹配的讀取緩存區(qū)域A2完全被緩存,因此可以將讀取緩存區(qū)域A2的空尺寸0匹配至索引1。

      以與索引1同樣的方式,可以將空讀取緩存區(qū)域A3、開始邏輯地址8以及讀取緩存區(qū)域A3的空尺寸0重新匹配至如圖6所示的索引2。在這種情況下,可以移除已經(jīng)匹配至索引2的讀取緩存區(qū)域A1、開始邏輯地址776以及讀取緩存區(qū)域A1的空尺寸3。匹配被移除的讀取緩存區(qū)域A1可以轉(zhuǎn)變成空(或未匹配)讀取緩存區(qū)域。

      以與索引1同樣的方式,可以將空讀取緩存區(qū)域A7、開始邏輯地址16以及讀取緩存區(qū)域A7的空尺寸4重新匹配至如圖6所示的索引3。在這種情況下,可以移除已經(jīng)匹配至索引3的讀取緩存區(qū)域A8、開始邏輯地址528以及讀取緩存區(qū)域A8的空尺寸1。讀取緩存區(qū)域A8可以轉(zhuǎn)變成空(或未匹配)讀取緩存區(qū)域。

      根據(jù)讀取請求R(0,20)將新的信息匹配至索引2和索引3可以表示近來提供的數(shù)據(jù)被緩存以及通過先前讀取請求緩存的數(shù)據(jù)不再被緩存。

      參考圖8,可以描述在讀出數(shù)據(jù)的尺寸小于或等于每個(gè)讀取緩存區(qū)域RCA的尺寸的情況下的讀取緩存表RCT的更新處理和數(shù)據(jù)緩存處理。

      在接收到讀取請求前,讀取緩存表RCT和讀取緩存器RC的狀態(tài)可以是如下狀態(tài)。

      索引2可以處于沒有數(shù)據(jù)與其匹配的狀態(tài)。

      如果接收到用于自開始邏輯地址8的8個(gè)邏輯地址的集的讀取請求R(8,8),則由于讀出數(shù)據(jù)的尺寸(4KB=528字節(jié)*8)等于每個(gè)讀取緩存區(qū)域RCA的尺寸(4KB),因此可以更新讀取緩存表RCT以及可以讀出數(shù)據(jù),如下。

      由于開始邏輯地址8是屬于與如圖6所示的索引2對應(yīng)的邏輯地址組LG2的邏輯地址,因此可以匹配至索引2。在空讀取緩存區(qū)域A2、A3以及A7之中,可以將讀取緩存區(qū)域A7匹配至索引2。由于數(shù)據(jù)被緩存為使得匹配的讀取緩存區(qū)域A7完全被緩存,因此可以將讀取緩存區(qū)域A7的空尺寸0匹配至索引2。

      參考圖9,描述了在讀取緩存區(qū)域RCA已經(jīng)匹配至與讀取請求開始邏輯地址S_LBA屬于的邏輯地址組對應(yīng)的索引的情況下和在讀出數(shù)據(jù)的尺寸大于讀取緩存區(qū)域RCA的空尺寸的情況下的讀取緩存表RCT的更新處理和數(shù)據(jù)緩存處理。

      在接收到讀取請求前,讀取緩存表RCT和讀取緩存器RC的狀態(tài)可以是如下狀態(tài)。

      索引2可以處于讀取緩存區(qū)域A7、開始邏輯地址8以及讀取緩存區(qū)域A7的空尺寸0與其匹配的狀態(tài)。

      如果接收到用于自開始邏輯地址264的4個(gè)邏輯地址的集的讀取請求R(264,4),則可以更新讀取緩存表RCT以及可以緩存讀出數(shù)據(jù),如下。

      由于開始邏輯地址264是屬于與如圖6所示的索引2對應(yīng)的邏輯地址組LG2的邏輯地址,因此可以匹配至索引2。由于讀出數(shù)據(jù)的尺寸4大于已經(jīng)匹配至索引2的讀取緩存區(qū)域A7的空尺寸0,因此讀出數(shù)據(jù)可以不緩存在讀取緩存區(qū)域A7中。因此,在空 讀取緩存區(qū)域A2和A3之間,可以將讀取緩存區(qū)域A2重新匹配至索引2。由于2KB的讀出數(shù)據(jù)緩存在匹配的讀取緩存區(qū)域A2中,因此可以將讀取緩存區(qū)域A2的空尺寸4匹配至索引2。

      即,在匹配的讀取緩存區(qū)域的空白空間不足,并且因此即使讀取緩存區(qū)域已經(jīng)匹配至與讀取請求的開始邏輯地址屬于的邏輯地址組對應(yīng)的索引,讀出數(shù)據(jù)也可以不被緩存的情況下,可以重新匹配空讀取緩存區(qū)域。

      參考圖10,可以描述在讀取緩存區(qū)域RCA已經(jīng)匹配至與讀取請求的開始邏輯地址S_LBA屬于的邏輯地址組對應(yīng)的索引的情況下和在讀出數(shù)據(jù)的尺寸小于或等于讀取緩存區(qū)域RCA的空尺寸的情況下的讀取緩存表RCT的更新處理和數(shù)據(jù)緩存處理。

      在接收到讀取請求前,讀取緩存表RCT和讀取緩存器RC的狀態(tài)可以是如下狀態(tài)。

      索引2可以處于讀取緩存區(qū)域A2、開始邏輯地址264以及讀取緩存區(qū)域A2的空尺寸4與其匹配的狀態(tài)。

      如果接收到用于自開始邏輯地址8的3個(gè)邏輯地址的集的讀取請求R(8,3),則可以更新讀取緩存表RCT以及可以緩存讀出數(shù)據(jù),如下。

      由于讀出數(shù)據(jù)的尺寸3小于已經(jīng)匹配至如圖6所示的索引2的讀取緩存區(qū)域A2的空尺寸4,因此可以不需要匹配用于緩存讀出數(shù)據(jù)的新的讀取緩存區(qū)域,以及可以將讀出數(shù)據(jù)緩存在讀取緩存區(qū)域A2中??梢詫㈤_始邏輯地址8另外匹配至已經(jīng)匹配的開始邏輯地址264。由于總共3.5KB的讀出數(shù)據(jù)被緩存在匹配的讀取緩存區(qū)域A2中,因此可以將讀取緩存區(qū)域A2的空尺寸1匹配至索引2。

      即,在讀取緩存區(qū)域已經(jīng)匹配至與讀取請求的開始邏輯地址屬于的邏輯地址組對應(yīng)的索引并且匹配的讀取緩存區(qū)域的空白空間足夠緩存讀出數(shù)據(jù)的情況下,事實(shí)上可以使用已經(jīng)匹配的讀取緩存區(qū)域,以緩存讀出數(shù)據(jù)。

      參考圖11,可以描述在讀取緩存區(qū)域RCA已經(jīng)匹配至與讀取請求的開始邏輯地址S_LBA屬于的邏輯地址組對應(yīng)的索引的情況下和在讀出數(shù)據(jù)的尺寸大于讀取緩存區(qū)域RCA的空尺寸的情況下的讀取緩存表RCT的更新處理和數(shù)據(jù)緩存處理。

      在接收到讀取請求前,讀取緩存表RCT和讀取緩存器RC的狀態(tài)可以是如下狀態(tài)。

      索引2可以處于讀取緩存區(qū)域A2、開始邏輯地址264和8以及讀取緩存區(qū)域A2的空尺寸1與其匹配的狀態(tài)。

      如果接收到用于自開始邏輯地址520的2個(gè)邏輯地址的集的讀取請求R(520,2),則可以更新讀取緩存表RCT以及可以緩存讀出數(shù)據(jù),如下。

      由于開始邏輯地址520是屬于與如圖6所示的索引2對應(yīng)的邏輯地址組LG2的邏輯地址,因此可以匹配至索引2。由于讀出數(shù)據(jù)的尺寸2大于已經(jīng)匹配至索引2的讀取緩存區(qū)域A2的空尺寸1,讀出數(shù)據(jù)可以不緩存在讀取緩存區(qū)域A中。因此,在空讀取緩存區(qū)域A3和A7之間,可以將讀取緩存區(qū)域A3重新匹配至索引2。由于1KB的讀出數(shù)據(jù)被緩存在匹配的讀取緩存區(qū)域A3中,因此可以將讀取緩存區(qū)域A3的空尺寸6匹配至索引2。

      在這種情況下,可以移除已經(jīng)匹配至索引2的讀取緩存區(qū)域A2、開始邏輯地址264和8以及讀取緩存區(qū)域A2的空尺寸1。匹配被移除的讀取緩存區(qū)域A2可以轉(zhuǎn)變成空(或未匹配)讀取緩存區(qū)域。根據(jù)讀取請求R(520,2)將新的信息數(shù)據(jù)匹配至索引2可以表示近來提供的數(shù)據(jù)被緩存并且通過先前讀取請求緩存的數(shù)據(jù)不再被緩存。

      圖12是示出根據(jù)本發(fā)明的實(shí)施例的包括數(shù)據(jù)儲存設(shè)備的數(shù)據(jù)處理系統(tǒng)的框圖。

      參考圖12,數(shù)據(jù)處理系統(tǒng)1000可以包括主機(jī)設(shè)備1100和數(shù)據(jù)儲存設(shè)備1200。

      數(shù)據(jù)儲存設(shè)備1200可以包括控制器1210和非易失性存儲器件1220。數(shù)據(jù)儲存設(shè)備1200可以通過耦接到諸如移動(dòng)電話、MP3播放器、膝上型計(jì)算機(jī)、臺式計(jì)算機(jī)、游戲播放器、TV、車載信息娛樂系統(tǒng)等的主機(jī)設(shè)備1100來使用。數(shù)據(jù)儲存設(shè)備1200也可以稱為存儲系統(tǒng)。

      控制器1210可以包括主機(jī)接口單元1211、控制單元1212、存儲器接口單元1213、隨機(jī)存取存儲器1214以及錯(cuò)誤校正碼(ECC)單元1215。

      控制單元1212可以響應(yīng)于來自主機(jī)設(shè)備1100的請求控制控制器1210的總體操作。控制單元1212可以驅(qū)動(dòng)用于控制非易失性存儲器件1220的固件或軟件。如上面參照圖2至圖11所描述的,控制單元1212可以通過參考讀取緩存表來執(zhí)行讀取緩存操作。

      隨機(jī)存取存儲器1214可以用作控制單元1212的工作存儲器。隨機(jī)存取存儲器1214可以用作暫時(shí)儲存從非易失性存儲器件1220讀取的數(shù)據(jù)或者從主機(jī)設(shè)備1100提供的數(shù)據(jù)的緩沖存儲器。隨機(jī)存取存儲器1214可以用作緩存在發(fā)送到主機(jī)設(shè)備1100的數(shù)據(jù)之中的最近發(fā)送或者頻繁發(fā)送的數(shù)據(jù)的讀取緩存器。

      主機(jī)接口單元1211可以使主機(jī)設(shè)備1100與控制器1210接口。例如,主機(jī)接口單元1211可以通過諸如通用串行總線(USB)協(xié)議、通用閃速儲存(UFS)協(xié)議、多媒體 卡(MMC)協(xié)議、外圍部件互聯(lián)(PCI)協(xié)議、PCI高速(PCI-E)協(xié)議、并行高級技術(shù)附件(PATA)協(xié)議、串行高級技術(shù)附件(SATA)協(xié)議、小型計(jì)算機(jī)系統(tǒng)接口(SCSI)協(xié)議以及串行連接SCSI(SAS)協(xié)議的各種接口協(xié)議中的一種與主機(jī)設(shè)備1100通信。

      存儲器接口單元1213可以使控制器1210與非易失性存儲器件1220接口。存儲器接口單元1213可以向非易失性存儲器件1220提供命令和地址。此外,存儲器接口單元1213可以與非易失性存儲器件1220交換數(shù)據(jù)。

      ECC單元1215可以通過使用錯(cuò)誤校正碼對要儲存在非易失性存儲器件1220中的數(shù)據(jù)進(jìn)行編碼。此外,ECC單元1215可以通過使用錯(cuò)誤校正碼對從非易失性存儲器件1220讀出的數(shù)據(jù)進(jìn)行解碼。ECC單元1215可以包括在存儲器接口單元1213中。

      非易失性存儲器件1220可以用作數(shù)據(jù)儲存設(shè)備1200的儲存介質(zhì)。非易失性存儲器件1220可以包括多個(gè)非易失性存儲芯片(或裸片)NVM_1至NVM_k。

      控制器1210和非易失性存儲器件1220可以制造為各種數(shù)據(jù)儲存設(shè)備中的任何一種。例如,控制器1210和非易失性存儲器件1220可以集成到一個(gè)半導(dǎo)體器件中,以及可以制造為成MMC、eMMC、RS-MMC和微型MMC形式的多媒體卡、成SD、迷你SD和微型SD形式的安全數(shù)字卡、通用串行總線(USB)儲存設(shè)備、通用閃速儲存(UFS)設(shè)備、個(gè)人計(jì)算機(jī)存儲卡國際協(xié)會(huì)(PCMCIA)卡、緊湊型閃存(CF)卡、智能多媒體卡、記憶棒等中的任何一種。

      圖13是示出根據(jù)本發(fā)明的實(shí)施例的包括固態(tài)驅(qū)動(dòng)器(SSD)的數(shù)據(jù)處理系統(tǒng)的框圖。

      參考圖13,數(shù)據(jù)處理系統(tǒng)2000可以包括主機(jī)設(shè)備2100和固態(tài)驅(qū)動(dòng)器(SSD)2200。

      SSD 2200可以包括SSD控制器2210、緩沖存儲器件2220、非易失性存儲器件2231至223n、電源2240、信號連接器2250和電力連接器2260。

      SSD控制器2210可以響應(yīng)于來自主機(jī)設(shè)備2100的請求訪問非易失性存儲器件2231至223n。

      緩沖存儲器件2220可以暫時(shí)儲存要被儲存在非易失性存儲器件2231至223n中的數(shù)據(jù)。此外,緩沖存儲器件2220可以暫時(shí)儲存從非易失性存儲器件2231至223n讀取的數(shù)據(jù)。暫時(shí)儲存在緩沖存儲器件2220中的數(shù)據(jù)可以在SSD控制器2210的控制下被發(fā)送到主機(jī)設(shè)備2100或非易失性存儲器件2231至223n。

      非易失性存儲器件2231至223n可以用作SSD 2200的儲存介質(zhì)。非易失性存儲器 件2231至223n可以分別通過多個(gè)通道CH1至CHn與SSD控制器2210耦接。一個(gè)或更多個(gè)非易失性存儲器件可以耦接到一個(gè)通道。耦接到一個(gè)通道的非易失性存儲器件可以耦接到同一信號總線和數(shù)據(jù)總線。

      電源2240可以向SSD 2200的內(nèi)部提供通過電力連接器2260輸入的電力PWR。電源2240可以包括輔助電源2241。輔助電源2241可以供給電力以使得SSD 2200在發(fā)生突然斷電時(shí)正常地終止。輔助電源2241可以包括能夠利用電力PWR充電的大電容的電容器。

      SSD控制器2210可以通過信號連接器2250與主機(jī)設(shè)備2100交換信號SGL。信號SGL可以包括命令、地址、數(shù)據(jù)等。信號連接器2250可以根據(jù)在主機(jī)設(shè)備2100和SSD2200之間的接口方案由諸如并行高級技術(shù)附件(PATA)、串行高級技術(shù)附件(SATA)、小型計(jì)算機(jī)系統(tǒng)接口(SCSI)、串列SCSI(SAS)、外圍部件互聯(lián)(PCI)和PCI高速(PCI-E)協(xié)議的連接器來配置。

      圖14是示出根據(jù)本發(fā)明的實(shí)施例的固態(tài)驅(qū)動(dòng)器(SSD)控制器的框圖。例如,圖14的SSD控制器可以是圖13中示出的SSD控制器2210。

      參考圖14,SSD控制器2210可以包括存儲器接口單元2211、主機(jī)接口單元2212、錯(cuò)誤校正碼(ECC)單元2213、控制單元2214以及隨機(jī)存取存儲器2215。

      存儲器接口單元2211可以向圖13的非易失性存儲器件2231至223n提供諸如命令和地址的控制信號。此外,存儲器接口單元2211可以與非易失性存儲器件2231至223n交換數(shù)據(jù)。存儲器接口單元2211可以在控制單元2214的控制下將從緩沖存儲器件2220發(fā)送的數(shù)據(jù)分散至相應(yīng)的通道CH1至CHn。此外,存儲器接口單元2211可以在控制單元2214的控制下將從非易失性存儲器件2231至223n讀取的數(shù)據(jù)發(fā)送到緩沖存儲器件2220。

      主機(jī)接口單元2212可以與圖13的主機(jī)設(shè)備2100的協(xié)議對應(yīng)地提供與SSD 2200的接口。例如,主機(jī)接口單元2212可以通過并行高級技術(shù)附件(PATA)、串行高級技術(shù)附件(SATA)、小型計(jì)算機(jī)系統(tǒng)接口(SCSI)、串行連接SCSI(SAS)、外圍部件互聯(lián)(PCI)和PCI高速(PCI-E)協(xié)議中的一種與主機(jī)設(shè)備2100通信。此外,主機(jī)接口單元2212可以執(zhí)行支持主機(jī)設(shè)備2100的磁盤模擬功能,以識別出作為硬盤驅(qū)動(dòng)器(HDD)的SSD2200。

      控制單元2214可以分析和處理從圖13的主機(jī)設(shè)備2100輸入的信號SGL??刂茊卧?214可以根據(jù)用于驅(qū)動(dòng)SSD 2200的固件或軟件來控制圖13的緩沖存儲器件2220和 非易失性存儲器件2231至223n的操作。如上面參照圖2至圖11所描述的,控制單元2214可以通過參考讀取緩存表執(zhí)行讀取緩存操作。

      隨機(jī)存取存儲器2215可以用作控制單元2214的工作存儲器。隨機(jī)存取存儲器2215可以用作緩存在發(fā)送到主機(jī)設(shè)備2100的數(shù)據(jù)之中的最近發(fā)送或者頻繁發(fā)送的數(shù)據(jù)的讀取緩存器。

      ECC單元2213可以在儲存在緩沖存儲器件2220中的數(shù)據(jù)之中生成要被發(fā)送到非易失性存儲器件2231至223n的奇偶校驗(yàn)數(shù)據(jù)。所生成的奇偶校驗(yàn)位可以與非易失性存儲器件2231至223n中的數(shù)據(jù)一起儲存。ECC單元2213可以檢測從非易失性存儲器件2231至223n讀出的數(shù)據(jù)的錯(cuò)誤。當(dāng)檢測到的錯(cuò)誤在可校正范圍內(nèi)時(shí),ECC單元2213可以校正檢測到的錯(cuò)誤。

      圖15是示出安裝有根據(jù)本發(fā)明的實(shí)施例的數(shù)據(jù)儲存設(shè)備的計(jì)算機(jī)系統(tǒng)的框圖。

      參考圖15,計(jì)算機(jī)系統(tǒng)3000包括電耦接到系統(tǒng)總線3700的網(wǎng)絡(luò)適配器3100、中央處理器3200、數(shù)據(jù)儲存設(shè)備3300、隨機(jī)存取存儲器(RAM)3400、只讀存儲器(ROM)3500以及用戶接口3600。數(shù)據(jù)儲存設(shè)備3300可以由圖1中示出的數(shù)據(jù)儲存設(shè)備100、圖12中示出的數(shù)據(jù)儲存設(shè)備1200或者圖13中示出的SSD 2200來構(gòu)建。

      網(wǎng)絡(luò)適配器3100可以在計(jì)算機(jī)系統(tǒng)3000和外部網(wǎng)絡(luò)之間提供接口。中央處理單元3200執(zhí)行用于驅(qū)動(dòng)存在于RAM 3400的操作系統(tǒng)或者應(yīng)用程序的總體操作。

      數(shù)據(jù)儲存設(shè)備3300可以儲存計(jì)算機(jī)系統(tǒng)3000中所需的通用數(shù)據(jù)。例如,用于驅(qū)動(dòng)計(jì)算機(jī)系統(tǒng)3000的操作系統(tǒng)、應(yīng)用程序、各種程序模塊、程序數(shù)據(jù)以及用戶數(shù)據(jù)可以儲存在數(shù)據(jù)儲存設(shè)備3300中。

      RAM 3400可以用作計(jì)算機(jī)系統(tǒng)3000的工作存儲器。在啟動(dòng)時(shí),操作系統(tǒng)、應(yīng)用程序、各種程序模塊以及從數(shù)據(jù)儲存設(shè)備3300讀取的為驅(qū)動(dòng)程序所需的程序數(shù)據(jù)可以加載在RAM 3400上。在操作系統(tǒng)被驅(qū)動(dòng)前激活的BIOS(基本輸入/輸出系統(tǒng))可以儲存在ROM 3500中。在計(jì)算機(jī)系統(tǒng)3000和用戶之間的信息交換可以通過用戶接口3600實(shí)施。

      圖16是示出根據(jù)本發(fā)明的實(shí)施例的包括在數(shù)據(jù)儲存設(shè)備中的非易失性存儲器件的框圖。例如,圖16的數(shù)據(jù)儲存設(shè)備可以是圖1中示出的數(shù)據(jù)儲存設(shè)備300。

      參考圖16,非易失性存儲器件300可以包括存儲單元陣列310、行解碼器320、列解碼器330、數(shù)據(jù)讀取/寫入塊340、電壓發(fā)生器350以及控制邏輯360。

      存儲單元陣列310可以包括布置在字線WL1至WLm和位線BL1至BLn彼此交叉的區(qū)域處的存儲單元。存儲單元可以通過存取單元(諸如作為擦除單元的存儲塊以及作為編程和讀取單元的頁)來分組。

      行解碼器320可以通過字線WL1至WLm與存儲單元陣列310耦接。行解碼器320可以根據(jù)控制邏輯360的控制來操作。行解碼器320可以對從外部設(shè)備(未示出)提供的地址進(jìn)行解碼。行解碼器320可以基于解碼結(jié)果選擇并驅(qū)動(dòng)字線WL1至WLm。例如,行解碼器320可以向字線WL1至WLm提供從電壓發(fā)生器350提供的字線電壓。

      列解碼器330可以通過位線BL1至BLn與存儲單元陣列310耦接。列解碼器330可以根據(jù)控制邏輯360的控制來操作。列解碼器330可以對從外部設(shè)備提供的地址進(jìn)行解碼。列解碼器330可以基于解碼結(jié)果將位線BL1至BLn與分別對應(yīng)于位線BL1至BLn的數(shù)據(jù)讀取/寫入塊340的讀取/寫入電路耦接。此外,列解碼器330可以基于解碼結(jié)果驅(qū)動(dòng)位線BL1至BLn。

      數(shù)據(jù)讀取/寫入塊340可以根據(jù)控制邏輯360的控制來操作。數(shù)據(jù)讀取/寫入塊340可以根據(jù)操作模式作為寫入驅(qū)動(dòng)器或者感測放大器來操作。例如,數(shù)據(jù)讀取/寫入塊340可以作為在寫入操作中將從外部設(shè)備提供的數(shù)據(jù)儲存在存儲單元陣列310中的寫入驅(qū)動(dòng)器來操作。對于另一示例,數(shù)據(jù)讀取/寫入塊340可以作為在讀取操作中從存儲單元陣列310讀出數(shù)據(jù)的感測放大器來操作。

      電壓發(fā)生器350可以產(chǎn)生要用于非易失性存儲器件300的內(nèi)部操作的電壓。通過電壓發(fā)生器350產(chǎn)生的電壓可以被施加到存儲單元陣列310的存儲單元。例如,在編程操作中產(chǎn)生的編程電壓可以被施加到要對其執(zhí)行編程操作的存儲單元的字線。對于另一示例,在擦除操作中產(chǎn)生的擦除電壓可以被施加到要對其執(zhí)行擦除操作的存儲單元的阱區(qū)。對于又一示例,在讀取操作中產(chǎn)生的讀取電壓可以被施加到要對其執(zhí)行讀取操作的存儲單元的字線。

      控制邏輯360可以基于從外部設(shè)備提供的控制信號來控制非易失性存儲器件300的總體操作。例如,控制邏輯360可以控制諸如非易失性存儲器件300的讀取、寫入以及擦除操作的非易失性存儲器件300的操作。

      雖然上面已經(jīng)描述了各個(gè)實(shí)施例,但對于本領(lǐng)域技術(shù)人員來講可以理解的是,所描述的實(shí)施例僅僅是示例。因此,在本文中所描述的數(shù)據(jù)儲存設(shè)備及其操作方法不應(yīng)該基于所描述的實(shí)施例而受到限制。

      對于本領(lǐng)域技術(shù)人員來講將明顯的是,在不脫離如所附權(quán)利要求所限定的本發(fā)明的 精神和范圍的情況下,可以做出各種改變和變型。

      當(dāng)前第1頁1 2 3 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
      1