TWI674531B - 資料儲存裝置及操作該資料儲存裝置的方法 - Google Patents

資料儲存裝置及操作該資料儲存裝置的方法 Download PDF

Info

Publication number
TWI674531B
TWI674531B TW103143465A TW103143465A TWI674531B TW I674531 B TWI674531 B TW I674531B TW 103143465 A TW103143465 A TW 103143465A TW 103143465 A TW103143465 A TW 103143465A TW I674531 B TWI674531 B TW I674531B
Authority
TW
Taiwan
Prior art keywords
data
information
stored
data storage
page
Prior art date
Application number
TW103143465A
Other languages
English (en)
Other versions
TW201604772A (zh
Inventor
李鐘旼
Original Assignee
韓商愛思開海力士有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 韓商愛思開海力士有限公司 filed Critical 韓商愛思開海力士有限公司
Publication of TW201604772A publication Critical patent/TW201604772A/zh
Application granted granted Critical
Publication of TWI674531B publication Critical patent/TWI674531B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7202Allocation control and policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7204Capacity control, e.g. partitioning, end-of-life degradation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

一種資料儲存裝置包含一記憶體,該記憶體包含複數記憶體區塊,各該記憶體區塊包含複數分頁,該等分頁適用於儲存自一主機所傳輸的資料;以及一控制器,適用於儲存已儲存於該記憶體中的資料之資料儲存資訊,其中,該資料儲存資訊係基於該資料係儲存於該等分頁當中的有效分頁而被更新。

Description

資料儲存裝置及操作該資料儲存裝置的方法
本發明示例性實施例關於一種資料儲存裝置,尤指一種用於儲存資料的資料儲存資訊之資料儲存裝置;以及一種操作該資料儲存裝置的方法。
本申請案主張在2014年7月31日申請且申請案號為10-2014-0098503的韓國專利申請案作為優先權基礎案,在此併入其全部參考內容。
電腦環境模式已經轉變為普遍存在的電腦系統,讓人們可以在任何時間、任何地點使用電腦。此種現象增加了可攜式電子裝置的使用率,例如手機、數位相機、筆記型電腦及類似者。這些可攜式電子裝置一般採用使用記憶體的資料儲存裝置。該等資料儲存裝置係用於作為該等可攜式電子裝置的主記憶體單元或輔助記憶體單元。
因為使用記憶體的資料儲存裝置不具有移動部件,故其具有相當好的穩定性及耐久性。此外,使用記憶體的資料儲存裝置具有在快速資料存取率及低電力消耗操作的優點。具有上述優點的資料儲存裝置不限於通用序列匯流排(USB,universal serial bus)記憶體裝置、具有不同介面的記憶卡及固態硬碟(SSD,solid-state driver)等。
本發明的一實施例係指一種資料儲存裝置以及一種操作該資料儲存裝置的方法,該資料儲存裝置可有效率地儲存一記憶體的資料儲存資訊。
根據本發明一實施例中,一資料儲存裝置包含一記憶體,該記憶體包含複數記憶體區塊,各該記憶體區塊包含複數分頁,該等分頁適用於儲存自一主機所傳輸的資料;以及一控制器,適用於儲存已儲存於該記憶體中的資料之資料儲存資訊,其中,該資料儲存資訊係基於該資料係儲存於該等分頁當中的有效分頁而被更新。
當一第一資料可儲存於該等分頁當中的一第一分頁時,該控制器儲存一第一資料儲存資訊,其中該第一資訊儲存資訊代表該第一資料係儲存於該第一分頁中,以及當該第一資料可儲存於該等分頁當中的一第二分頁時,該控制器將該第一分頁處理為一無效分頁、將對應該無效分頁的第一資料儲存資訊處理為無效資訊,以及將該第一資料儲存資訊更新為一第二資料儲存資訊,且該第二資訊儲存資料代表該第一資料係儲存於該第二分頁。
當一第一群組的資料可儲存於該等分頁當中的一第一群組的分頁時,該控制器儲存一第一資料儲存資訊,其中該第一資料儲存資訊代表該第一群組的資料係儲存於該第一群組的分頁中,以及當一第二群組的資料可儲存於該等分頁當中的一第二群組的分頁時,該控制器基於該第一群組的分頁當中的第一有效分頁之數量而更新該第一資料儲存資訊。
當該等第一有效分頁之數量可等於或小於一預定第一閾值,或該等第一有效分頁之數量的一改變等於或大於一預定第二閾值時,該控制器更新該第一資料儲存資訊及一第二資料儲存資訊,其中該第二資料儲存資訊代表 該第二群組的資料係儲存於該第二群組的分頁中;以及該控制器儲存一已更新第一資料儲存資訊及該第二資料儲存資訊。
該控制器可進一步更新該第一資料儲存資訊及一第三資料儲存資訊,其中該第三資料儲存資訊對應一第三群組的分頁當中的第二有效分頁,且該第三群組自當儲存該第一群組的資料時之一第一時刻至當儲存該第二群組的資料時之一第二時刻儲存該等分頁當中的資料。
該控制器可將該等第一有效分頁之數量及在該第二時刻改變的第一有效分頁之數量來與該第一閾值及該第二閾值進行比較以產生一比較結果,並基於該比較結果來將該第一資料儲存資訊更新至該已更新第一資料儲存資訊。
該控制器可將該第一群組的分頁當中儲存資料的分頁處理為該等第一有效分頁,其中資料為自該第二群組的資料之相異邏輯分頁資訊;該控制器將對應該等無效分頁的一第四資料儲存資訊處理為無效資訊。
該控制器可將對應該等第一有效分頁的一第五資料儲存資續更新為該已更新第一資料儲存資訊。
該資料儲存資訊可包含該資料的邏輯分頁資訊以及在一記憶體區塊與分頁的資訊,其中該資料係儲存於該等分頁與該等記憶體區塊當中的分頁與區塊。
該資料儲存資訊可為儲存於該等分頁與該等記憶體區塊中的資料之實體至邏輯資訊,以及實體至邏輯資訊可儲存於該等記憶體區塊當中的一預定記憶體區塊之分頁中,以及在一更新可被處理為一無效分頁前,一分頁儲存該實體至邏輯資訊。
根據本發明另一實施例,一種操作一資料儲存裝置的方法包含儲存自一主機所傳輸的資料於一記憶體中;以及儲存資料儲存資訊於儲存於該記憶體中的資料上,其中該資料係儲存於包含於該記憶體的複數記憶體區塊之複數分頁中,以及該資料儲存資訊係基於該資料被儲存於該等分頁當中的分頁而被更新。
該資料儲存資訊的儲存包含:當一第一資料係儲存於該等分頁當中的一第一分頁中時,儲存一第一資料儲存資訊,其中該第一資料儲存資訊代表該第一資料係儲存於該第一分頁中;以及當該第一資料係儲存於該等分頁當中的一第二分頁中時,將該第一分頁處理為一無效分頁、將對應該無效分頁的第一資料儲存資訊處理為一無效資訊,以及將該第一資料儲存資訊更新為一第二資料儲存資訊,其中該第二資料儲存資訊代表該第一資料係儲存於該第二分頁中。
該資料儲存資訊的儲存可包含:當一第一群組的資料係儲存於該等分頁當中的一第一群組之分頁時,儲存一第一資料儲存資訊,該第一資料儲存資訊代表該第一群組的資料係儲存於該第一群組的分頁中;以及當一第二群組的資料係儲存於該等分頁當中的一第二群組之分頁時,基於該第一群組的分頁當中的第一有效分頁之數量而更新該第一資料儲存資訊。
基於該第一群組的分頁當中的第一有效分頁之數量,該第一資料儲存資訊的更新可包含:當該等第一有效分頁之數量等於或小於一預定第一閾值,或該等第一有效分頁之數量的一改變等於或大於一預定第二閾值時,更新該第一資料儲存資訊及一第二資料儲存資訊,其中該第二資料儲存資訊代表該第二群組的資料係儲存於該第二群組的分頁中;以及儲存一已更新第一資料 儲存資訊及該第二資料儲存資訊。
該第一資料儲存資訊及該第二資料儲存資訊的更可包含:更新該第一資料儲存資訊及一第三資料儲存資訊,該第三資料儲存資訊對應一第三群組的分頁當中的第二有效分頁,該第三群組自當儲存該第一群組的資料時之一第一時刻至當儲存該第二群組的資料時之一第二時刻儲存該等分頁當中的資料。
基於該第一群組的分頁當中的第一有效分頁之數量,該第一資料儲存資訊的更新可包含:將該等第一有效分頁之數量及在該第二時刻改變的第一有效分頁之數量來與該第一閾值及該第二閾值進行比較以產生一比較結果,以及基於該比較結果來將該第一資料儲存資訊更新至該已更新第一資料儲存資訊。
在該第一群組的分頁當中,儲存自該第二群組的資料之相異邏輯分頁資訊的資料之分頁可被處理為該第一有效分頁,而其他分頁被處理為無效分頁,且對應該等無效分頁的一第四資料儲存資訊被處理為無效資訊。
該第一資料儲存資訊及該第二資料儲存資訊的更新可包含:將對應該等第一有效分頁的一第四資料儲存資訊更新為該已更新第一資料儲存資訊。
該資料儲存資訊可包含該資料的邏輯分頁資訊以及在一記憶體區塊與分頁的資訊,其中該資料係儲存於該等分頁與該等記憶體區塊當中的分頁與區塊。
該資料儲存資訊可為儲存於該等分頁與該等記憶體區塊中的資料之實體至邏輯資訊,以及實體至邏輯資訊可儲存於該等記憶體區塊當中的一 預定記憶體區塊之分頁中,以及在一更新可被處理為一無效分頁前,一分頁儲存該實體至邏輯資訊。
100‧‧‧資料處理系統
110‧‧‧主機
120‧‧‧資料儲存裝置
130‧‧‧控制器
132‧‧‧處理單元
134‧‧‧第一儲存單元
136‧‧‧第二儲存單元
138‧‧‧緩衝單元
150‧‧‧記憶體
210‧‧‧第一記憶體區塊
220‧‧‧第二記憶體區塊
230‧‧‧第三記憶體區塊
240‧‧‧第N記憶體區塊
300‧‧‧控制器
310‧‧‧資料
320‧‧‧實體資訊
321‧‧‧資訊
322‧‧‧資訊
323‧‧‧資訊
324‧‧‧資訊
330‧‧‧邏輯資訊
331‧‧‧資訊
332‧‧‧資訊
333‧‧‧資訊
334‧‧‧資訊
350‧‧‧記憶體
352‧‧‧分頁
362‧‧‧第一分頁
364‧‧‧第二分頁
366‧‧‧第三分頁
368‧‧‧第四分頁
400‧‧‧控制器
410‧‧‧資料
420‧‧‧實體資訊
421‧‧‧資訊
422‧‧‧資訊
423‧‧‧資訊
424‧‧‧資訊
425‧‧‧實體資訊
428‧‧‧資訊
430‧‧‧邏輯資訊
431‧‧‧資訊
432‧‧‧資訊
433‧‧‧資訊
434‧‧‧資訊
435‧‧‧資訊
450‧‧‧記憶體
452‧‧‧分頁
453‧‧‧分頁
454‧‧‧分頁
456‧‧‧分頁
462‧‧‧分頁
463‧‧‧分頁
464‧‧‧分頁
465‧‧‧分頁
466‧‧‧第一分頁
467‧‧‧第二分頁
468‧‧‧第三分頁
469‧‧‧第四分頁
500‧‧‧資料
502‧‧‧分頁
504‧‧‧分頁
506‧‧‧分頁
508‧‧‧分頁
510‧‧‧分頁
512‧‧‧分頁
514‧‧‧分頁
516‧‧‧分頁
518‧‧‧分頁
520‧‧‧分頁
522‧‧‧分頁
524‧‧‧分頁
530‧‧‧邏輯資訊
531‧‧‧資訊
532‧‧‧資訊
533‧‧‧資訊
534‧‧‧資訊
540‧‧‧實體資訊
541‧‧‧資訊
542‧‧‧資訊
543‧‧‧資訊
544‧‧‧資訊
550‧‧‧邏輯資訊
551‧‧‧資訊
552‧‧‧資訊
553‧‧‧資訊
554‧‧‧資訊
560‧‧‧實體資訊
561‧‧‧資訊
562‧‧‧資訊
563‧‧‧資訊
564‧‧‧資訊
565‧‧‧資訊
566‧‧‧資訊
570‧‧‧邏輯資訊
571‧‧‧資訊
572‧‧‧資訊
573‧‧‧資訊
574‧‧‧資訊
580‧‧‧實體資訊
581‧‧‧資訊
582‧‧‧資訊
583‧‧‧資訊
584‧‧‧資訊
586‧‧‧資訊
587‧‧‧資訊
588‧‧‧資訊
600‧‧‧資料
602‧‧‧分頁
604‧‧‧分頁
606‧‧‧分頁
608‧‧‧分頁
610‧‧‧分頁
612‧‧‧分頁
614‧‧‧分頁
616‧‧‧分頁
618‧‧‧分頁
620‧‧‧分頁
622‧‧‧分頁
624‧‧‧分頁
630‧‧‧邏輯資訊
631‧‧‧資訊
632‧‧‧資訊
633‧‧‧資訊
634‧‧‧資訊
640‧‧‧實體資訊
641‧‧‧資訊
642‧‧‧資訊
643‧‧‧資訊
644‧‧‧資訊
650‧‧‧邏輯資訊
651‧‧‧資訊
652‧‧‧資訊
653‧‧‧資訊
654‧‧‧資訊
670‧‧‧邏輯資訊
671‧‧‧資訊
672‧‧‧資訊
673‧‧‧資訊
674‧‧‧資訊
680‧‧‧實體資訊
681‧‧‧資訊
682‧‧‧資訊
683‧‧‧資訊
684‧‧‧資訊
685‧‧‧資訊
686‧‧‧資訊
687‧‧‧資訊
688‧‧‧資訊
689‧‧‧資訊
710~750‧‧‧步驟
BLOCK0‧‧‧第一記憶體區塊
BLOCK1‧‧‧第二記憶體區塊
BLOCK2‧‧‧第三記憶體區塊
BLOCKN-1‧‧‧第N記憶體區塊
B2‧‧‧實體資訊
B3‧‧‧實體資訊
t0‧‧‧時刻
t1‧‧‧時刻
t2‧‧‧時刻
t4‧‧‧時刻
第1圖為示出根據本發明一實施例中包含一資料儲存裝置的一資料處理系統之方塊圖。
第2圖示出根據本發明一實施例中一資料儲存裝置內的一記憶體之一例子的示意圖。
第3圖至第6圖說明根據本發明一實施例中在一資料儲料儲存裝置的一資料寫入作業之例子的示意圖。
第7圖為說明根據本發明一實施例中在一資料儲存裝置內的一資料儲存程序的流程圖。
以下將參考所附圖式來詳細說明本發明的示例性實施例。然而,本發明係以不同形式被體現,而不應被解釋為限制於文中所提及之實施例。而是,提供這些實施例使得本說明書的揭露更加完全及完整,且本發明的範圍完整地傳達至所屬技術領域中具有通常知識者。整份說明書的揭露中,本發明的各圖式及實施例中所標示之相同的元件符號代表相同的元件。
該等圖式並非一定依比例繪製,在一些例子中,為了使該等實施例的特徵能夠清楚地示出,該等圖示的比例可以誇張的方式呈現。亦可以注意到,在本說明書中,「連接/耦合」指的是一個構件不僅直接耦合至其他構件,亦可透過中間構件而間接耦合至其他構件。此外,在句子中只要未特別提及, 則單數形態可包含複數形態。
以下,將參考所附圖式詳細說明本發明之一實施例。
第1圖為示出根據本發明一實施例中包含一資料儲存裝置的一資料處理系統之方塊圖。
請參考第1圖,該資料處理系統100包含一主機110及一資料儲存裝置120。
該主機110的例子並不限於可攜式電子裝置(例如手機、MP3播放器、筆記型電腦等)以及電子裝置(例如桌上型電腦、遊戲機、電視、投影機及類似者)。
該資料儲存裝置120回應該主機110的一請求而運作。該資料儲存裝置120儲存藉由該主機110進行存取的資料。換言之,該資料儲存裝置120可用於作為該主機110的一主記憶體單元或一輔助記憶體單元。根據與該主機110通訊的主機介面(或通訊)協定,該資料儲存裝置120可以各種方式實現。舉例來說,該資料儲存裝置120可為一固態硬碟(SSD)、一多媒體卡(MMC,multi-media card)、一內嵌式MMC(eMMC,embedded MMC)、一降低尺寸MMC(RS-MMC,reduced-size MMC)、一微型MMC(micro-MMC)、一安全數位(SD,secure digital)卡、一小型-SD(mini-SD)卡、一微型-SD(micro-SD)卡、一通用序列匯流排(USB)儲存裝置、一通用快閃儲存(UFS,universal flash storage)裝置、一緊湊型快閃卡(CF,compact flash)卡、一智慧型媒體(SM,smart media)卡及一記憶棒(MS,memory stick)等當中的一種。
此外,該資料儲存裝置120包含一記憶體150及一控制器130,該記憶體150用於儲存藉由該主機110進行存取的資料,該控制器130用於控 制將資料儲存至該記憶體150中。
該記憶體150即使在沒有電力提供時,其仍可保留已儲存的資料。具體而言,該記憶體150透過一寫入作業而儲存由該主機110所提供的資料,並透過一讀取作業而傳輸已儲存的資料至該主機110。
該控制器130控制該記憶體150,以回應該主機110的一請求。舉例來說,該控制器130提供自該記憶體150所讀取的資料給該主機110,並將自該主機110所輸入的資料儲存於該記憶體150中。為此,該控制器130控制該記憶體150的作業,例如一讀取作業、一程式作業及一抹除作業。
該控制器130包含一處理單元132、複數儲存單元(包含一第一儲存單元134及一第二儲存單元136)以及一緩衝單元138。
該處理單元132控制該資料儲存裝置120的一般作業,並控制在該記憶體150上執行的寫入或讀取作業,以回應自該主機110所傳輸的一寫入或讀取請求。該處理單元132驅動稱為一快閃記憶體轉換層(FTL,flash transition layer)的韌體,以控制該資料儲存裝置120的作業。
該第一儲存單元134及該第二儲存單元136儲存藉由該處理單元132驅動的FTL,並儲存用於控制該資料儲存裝置120的各種資料。具體而言,該第一儲存單元134及該第二儲存單元136儲存已儲存於該記憶體150中的資料之資料儲存資訊。舉例來說,當在接受自該主機110所傳輸的一寫入請求下而使得資料寫入至該記憶體150時,該第一儲存單元134可儲存邏輯到實體(L2P,logical to physical)資訊(以下稱為邏輯資訊),且該第二儲存單元136可儲存實體對邏輯(P2L,physical to logical)資訊(以下稱為實體資訊),以作為該資料儲存資訊。
在此,當具有邏輯分頁資訊的資料係寫入並儲存於該記憶體150中時,該邏輯資訊可包含該記憶體150中的資料的位置之位置資訊,且該實體資訊可包含該資料的邏輯分頁資訊(例如邏輯分頁數或邏輯分頁索引)。舉例來說,該位置資訊可包含具有該資料的一區塊之區塊資訊,或該區塊的一分頁之分頁資訊(例如區塊/分頁數或區塊/分頁索引)。
此外,當該控制器130執行傳輸資料(該資料係自該記憶體150讀取出並傳輸至該主機110)及儲存資料(該資料係自該主機110傳輸並儲存於該記憶體150中)的一作業時,該緩衝單元138暫時儲存資料,尤其是藉由該處理單元132所驅動的FTL。此外,該緩衝單元138暫時儲存用於控制該資料儲存裝置120的各種資料。舉例來說,該緩衝單元138基於該主機110的一寫入請求而暫時儲存已儲存於該記憶體150中的資料、該邏輯資訊或該實體資訊。
接著,將參考第2圖至第6圖來詳細說明根據本發明實施例中在該資料儲存裝置中所執行之一資料寫入作業。
第2圖示出根據本發明一實施例中一資料儲存裝置內的一記憶體150之一例子的示意圖。第3圖至第6圖說明根據本發明實施例中在資料儲料儲存裝置的一資料寫入作業之例子的示意圖。
請參考第2圖,該記憶體150包含複數記憶體區塊,各該記憶體區塊包含一第一記憶體區塊(BLOCK0)210、一第二記憶體區塊(BLOCK1)220、一第三記憶體區塊(BLOCK2)230、一第N記憶體區塊(BLOCKN-1)240。各該記憶體區塊210、220、230及240包含複數分頁,例如2M個分頁。
各該記憶體區塊210、220、230及240透過一資料寫入作業而 儲存自該主機110所傳輸的資料,並透過一資料讀取作業而提供已儲存於該記憶體區塊中的資料至該主機110。透過該資料寫入作業而進行的資料儲存,以及透過該資料讀取作業而進行的資料傳輸,尤其是透過該資料寫入作業而將自該主機110傳輸的資料儲存於該等記憶體區塊210、220、230及240中的作業,該作業係在包含於在一分頁基礎上的各該記憶體區塊210、220、230及240之複數分頁上執行。
將參考第3圖至第6圖來詳細說明根據本發明實施例中該資料儲存裝置中之資料寫入作業。舉一個簡單的例子,該資料儲存裝置包含四個記憶體區塊BLOCK0至BLOCK3,且各該記憶體區塊BLOCK0至BLOCK3包含4個分頁。一控制器300及一記憶體350可對應第1圖所示之控制器130及記憶體150。
請參考第3圖,當透過一寫入作業而儲存於該記憶體350中的一資料310係自一主機傳輸時,該控制器300將該資料310寫入該記憶體350的對應記憶體區塊BLOCK2之分頁中。此時,該控制器300可該資料310的資料儲存資訊之邏輯資訊330儲存於一第一儲存單元中,並將該資料儲存資訊之實體資訊320儲存於一第二儲存單元中。
具體而言,當具有邏輯分頁資訊3的資料(以下稱為「一資料3」)、具有邏輯分頁資訊2的資料(以下稱為「一資料2」)、具有邏輯分頁資訊0的資料(以下稱為「一資料0」)及具有邏輯分頁資訊1的資料(以下稱為「一資料1」)在一第一時刻自該主機依序傳輸時,依序包含該資料3、該資料2、該資料0與該資料1係儲存於一緩衝單元中。換言之,該控制器300的緩衝單元依序儲存該資料310,該資料310依序包含該資料3、該資料2、該資料0與該資 料1。儲存於該緩衝單元中的第一時刻之資料3、資料2、資料0與資料1係依序寫入並儲存於該記憶體350的對應記憶體區塊。舉例來說,該第一時刻的資料3係儲存於該記憶體區塊BLOCK2的一第一分頁362中,且該第一時刻的資料2係儲存於該記憶體區塊BLOCK2的一第二分頁364中。該第一時刻的資料0係儲存於該記憶體區塊BLOCK2的一第三分頁366中,且該第一時刻的資料1係儲存於該記憶體區塊BLOCK2的一第四分頁368中。由於該記憶體區塊BLOCK2的所有分頁為有效分頁,故該記憶體區塊BLOCK2的有效分頁之數量為「4」個。
當該第一時刻的資料3、資料2、資料0與資料1係依序寫入並儲存於對應記憶體區塊的對應分頁中時,該邏輯資訊330係儲存於一第一儲存單元中。該第一時刻的邏輯資訊330包含資訊331、資訊332、資訊333及資訊334,該資訊331代表該資料0係儲存於該記憶體區塊BLOCK2的分頁366中,該資訊332代表該資料1係儲存於該記憶體區塊BLOCK2的分頁368中,該資訊333代表該資料2係儲存於該記憶體區塊BLOCK2的分頁364中,該資訊334代表該資料3係儲存於該記憶體區塊BLOCK2的分頁362中。舉例來說,在該邏輯資訊330中,第一列的「0、1、2及3」代表已儲存資料的資訊,其為該已儲存資料的邏輯分頁資訊。第二列的序對(2,2)、(2,3)、(2,1)及(2,0)代表該已儲存資料的實體位置資訊,其代表儲存有該資料的區塊及該分頁之資訊。舉例來說,在該資訊331中,第一列的「0」代表該資料0,且第二列的序對(2,2)代表該記憶體區塊BLOCK2的第三分頁366。
此外,當該第一時刻的資料3、資料2、資料0與資料1係依序寫入並儲存於對應記憶體區塊的對應分頁(即該記憶體區塊BLOCK2的分頁 362、364、366及368)中時,該實體資訊320係儲存於該控制器300的第二儲存單元中。該第一時刻的實體資訊320包含資訊321、322、323及324,該等資訊321、322、323及324代表該資料3、該資料2、該資料0與該資料1係依序寫入並儲存於該記憶體區塊BLOCK2的分頁362、364、366及368中。
儲存於該第二儲存單元中的第一時刻之實體資訊320係寫入並儲存於該記憶體350的複數記憶體區塊當中的一預定記憶體區塊之對應分頁(例如該記憶體區塊BLOCK0的分頁352)中。換言之,該記憶體區塊BLOCK0的分頁352儲存該記憶體區塊BLOCK2的實體資訊B2,且該記憶體區塊BLOCK2的實體資訊B2包含該等資訊321、322、323及324,該等資訊321、322、323及324代表該資料3、該資料2、該資料0與該資料1係依序儲存於該記憶體區塊BLOCK2的分頁362至368中。總結來說,如上所述,該資料3、該資料2、該資料0與該資料1係依序寫入並儲存於該記憶體350中的記憶體區塊BLOCK2的分頁362至368中,且代表該記憶體區塊BLOCK2的資料儲存之記憶體區塊BLOCK2的實體資訊B2係寫入並儲存於該記憶體區塊BLOCK0的分頁352中。
如第3圖所示,在該資料310儲存於該記憶體350中之後,資料可進一步自一主機傳輸而儲存於該記憶體350中。請參考第4圖,一控制器400及一記憶體450可對應如第3圖所示之控制器300及記憶體350。
當資料410係自一主機傳輸以儲存於該記憶體450(其儲存如第3圖所示之其他資料)中時,該控制器400將該資料410寫入並儲存於該記憶體450的對應記憶體區塊BLOCK3之對應分頁中。此時,該控制器400可將該資料410的資料儲存資訊之邏輯資訊430儲存於一第一儲存單元中,並將該資料儲存資訊之實體資訊420儲存於一第二儲存單元中。該實體資訊420係寫入並儲存於 該記憶體450的複數記憶體區塊當中的一預定記憶體區塊之對應分頁中。
具體而言,如前關於第3圖所述,在一第一時刻的資料3、資料2、資料0及資料1係儲存於該記憶體450中之後,該資料2、具有邏輯分頁資訊4的資料(以下稱為「一資料4」)、該資料1與該資料3在一第二時刻自該主機依序傳輸。依序包含該資料2、該資料4、該資料1與該資料3的資料410係儲存於一緩衝單元中。換言之,該控制器400的緩衝單元依序儲存該資料2、該資料4、該資料1與該資料3。
儲存於該緩衝單元中的第二時刻之資料2、資料4、資料1與資料3係依序寫入並儲存於該記憶體450的一對應記憶體區塊中。舉例來說,該第二時刻的資料2係儲存於該記憶體區塊BLOCK3的一第一分頁466中,且該第二時刻的資料4係儲存於該記憶體區塊BLOCK3的一第二分頁467中。該第二時刻的資料1係儲存於該記憶體區塊BLOCK3的一第三分頁468中,且該第二時刻的資料3係儲存於該記憶體區塊BLOCK3的一第四分頁469中。在此,該記憶體區塊BLOCK3的所有分頁為有效分頁,且該記憶體區塊BLOCK3的有效分頁之數量為「4」個。
此外,由於該第二時刻的資料2、4、1及3係依序寫入並儲存於該記憶體450中,則在該第一時刻儲存於該記憶體450中的對應資料(該對應資料為一記憶體區塊BLOCK2的分頁462、463及465中的資料3、2及1)變成無效。因此,該記憶體區塊BLOCK2的分頁462、463及465變成無效分頁。在此,該記憶體區塊BLOCK2的一分頁464為獨自的一有效分頁。因此,該記憶體區塊BLOCK2的有效分頁之數量為「1」個。
當該第二時刻的資料2、資料4、資料1與資料3係依序寫入並 儲存於對應記憶體區塊的對應分頁中時,該邏輯資訊430係儲存於該第一儲存單元中。在此,該第二時刻的邏輯資訊430包含第3圖所示之第一時刻的邏輯資訊330,其與資訊432、資訊433、資訊434及資訊435一起被更新,該資訊432代表該資料1係儲存於該記憶體區塊BLOCK3的分頁468中,該資訊433代表該資料2係儲存於該記憶體區塊BLOCK3的分頁466中,該資訊434代表該資料3係儲存於該記憶體區塊BLOCK3的分頁469中,該資訊435代表該資料4係儲存於該記憶體區塊BLOCK3的分頁467中。簡言之,由於儲存於該記憶體區塊BLOCK2的分頁462之資料3、儲存於該記憶體區塊BLOCK2的分頁463之資料2,以及儲存於該記憶體區塊BLOCK2的分頁465之資料1變成無效,故該第二時刻的邏輯資訊430包含資訊431、該資訊432、該資訊433、該資訊434及該資訊435,該資訊431代表該資料0儲存於該記憶體區塊BLOCK2的分頁464中,該資訊432代表該資料1儲存於該記憶體區塊BLOCK3的分頁468中,該資訊433代表該資料2儲存於該記憶體區塊BLOCK3的分頁466中,該資訊434代表該資料3儲存於該記憶體區塊BLOCK3的分頁469中,該資訊435代表該資料4儲存於該記憶體區塊BLOCK3的分頁467中。舉例來說,在該邏輯資訊430中的第一列之「0、1、2、3及4」為已儲存資料的資訊,換言之,為該已儲存資料的邏輯分頁資訊。第二列的序對為該已儲存資料的實體位置資訊,換言之,該等序對為儲存有該資料的對應記憶體區塊及分頁之資訊。
此外,由於該第二時刻的資料2、資料4、資料1與資料3係依序寫入並儲存於對應記憶體區塊的對應分頁中,換言之,其為該記憶體區塊BLOCK3的分頁466、467、468及469,因此實體資訊420係儲存於該控制器400的第二儲存單元中。該第二時刻的實體資訊420包含該等資訊421、422、 423及424,該等資訊421、422、423及424代表該資料2、該資料4、該資料1與該資料3,其係依序寫入並儲存於該記憶體區塊BLOCK3的分頁466、467、468及469中。
儲存於該第二儲存單元中的第二時刻之實體資訊420係寫入並儲存,以作為該記憶體450的複數記憶體區塊當中的一預定記憶體區塊之對應分頁(例如該記憶體區塊BLOCK0的一分頁453)中的記憶體區塊BLOCK3之實體資訊B3。換言之,該記憶體區塊BLOCK0的分頁453儲存該記憶體區塊BLOCK3的實體資訊B3,且該記憶體區塊BLOCK3的實體資訊B3包含該等資訊421、422、423及424,其代表該資料2、該資料4、該資料1與該資料3係依序儲存於該記憶體區塊BLOCK3的分頁466至469中。
此外,如上所述,由於該第二時刻的資料2、資料4、資料1與資料3被儲存,故儲存於該記憶體區塊BLOCK2的分頁462中之資料3、儲存於該記憶體區塊BLOCK2的分頁463中之資料2,以及儲存於該記憶體區塊BLOCK2的分頁465中之資料1為無效,且該記憶體區塊BLOCK2的分頁462、該記憶體區塊BLOCK2的分頁463及該記憶體區塊BLOCK2的分頁465變成無效分頁。因此,在代表該資料3、該資料2、該資料0與該資料1係依序寫入該記憶體區塊BLOCK2的分頁462至465中之記憶體區塊BLOCK2的實體資訊425中,代表該記憶體區塊BLOCK2的無效分頁之資訊變成無效資訊。換言之,對應該記憶體區塊BLOCK2的分頁462之資訊426、對應該記憶體區塊BLOCK2的分頁463之資訊427及對應該記憶體區塊BLOCK2的分頁465之資訊429變成無效資訊。
該第二時刻的實體資訊425係儲存於該記憶體450的複數記憶 體區塊當中的一預定記憶體區塊之對應分頁中,以作為該記憶體區塊BLOCK2之實體資訊B2。儲存於該記憶體450而作為該第一時刻的記憶體區塊BLOCK2之實體資訊B2的資訊變成無效資訊。因此,儲存有該第一時刻的記憶體區塊BLOCK2之實體資訊B2的記憶體區塊BLOCK0之一分頁452變成該記憶體450中的一無效分頁。
由於該第二時刻發生於該第一時刻後,故該第二時刻的實體資訊425係寫入並儲存於該記憶體450的複數記憶體區塊當中的記憶體區塊BLOCK0之一分頁454中,以作為該記憶體區塊BLOCK2之實體資訊B2。因此,該記憶體區塊BLOCK0的分頁453儲存該記憶體區塊BLOCK3的實體資訊B3,且該記憶體區塊BLOCK3的實體資訊B3包含該等資訊421、422、423及424,其代表該資料2、該資料4、該資料1與該資料3係依序儲存於該記憶體區塊BLOCK3的分頁466至469中。該記憶體區塊BLOCK0的分頁454儲存該記憶體區塊BLOCK2的實體資訊B2,且該記憶體區塊BLOCK2的實體資訊B2包含資訊428,該資訊428代表該資料0係儲存於該記憶體區塊BLOCK2的分頁464中。
當該記憶體區塊BLOCK0的有效分頁之數量或該等分頁之數量(或發生無效分頁之數量)的一改變被檢查出時,有效分頁之數量可等於或小於一預定第一閾值,或該等有效分頁之數量的改變可等於或大於一預定第二閾值。舉例來說,如第4圖的底部右側所示,當該記憶體區塊BLOCK0的分頁454及455為無效分頁時,儲存有該第一時刻的記憶體區塊BLOCK2之實體資訊B2的記體區塊BLOCK0之一分頁452亦可透過在該第二時刻執行一資料更新而被視為一無效分頁。在此例中,該第二時刻的實體資訊425係寫入並儲存於一記 憶體450的複數記憶體區塊當中的一記憶體區塊BLOCK1之一分頁456中,以作為該記憶體區塊BLOCK2之實體資訊B2。因此,該記憶體區塊BLOCK2的實體資訊B2係寫入並儲存於該記憶體450的複數記憶體區塊當中的記憶體區塊BLOCK1之分頁456中。總結來說,該記憶體區塊BLOCK0的一分頁453儲存該記憶體區塊BLOCK3的實體資訊B3,且該記憶體區塊BLOCK3的實體資訊B3包含該等資訊421、422、423及424,其代表該資料2、該資料4、該資料1與該資料3係依序儲存於該記憶體區塊BLOCK3的分頁466至469中。該記憶體區塊BLOCK1的分頁456儲存該記憶體區塊BLOCK2的實體資訊B2。該記憶體區塊BLOCK2的實體資訊B2包含該資訊428,該資訊428代表該資料0係儲存於該記憶體區塊BLOCK2的分頁464中。
接著,請參考第5圖,當透過一資料寫入作業而被寫入並儲存於一記憶體中的資料500自一主機傳輸時,一控制器將該資料500寫入並儲存於該記憶體的對應記憶體區塊BLOCK2、BLOCK3及BLOCK4之對應分頁中。此時,該控制器可將在該資料500的資料儲存資訊之邏輯資訊530、550及570儲存於一第一儲存單元中,且將該資料儲存資訊的實體資訊540、560及580儲存於一第二儲存單元中。
具體而言,當資料0、資料1、資料2及資料3在一特定時刻(例如一時刻t0)自該主機傳輸時,該資料0、該資料1、該資料2與該資料3係儲存於一緩衝單元中。換言之,該緩衝單元儲存該時刻t0的資料0、資料1、資料2與資料3(請參考第5圖所示之資料500中的時刻t0之「0、1、2及3」)。
儲存於該緩衝單元中的時刻t0之資料0、資料1、資料2與資料3係依序寫入並儲存於一對應記憶體區塊的對應分頁中。舉例來說,該時刻t0 的資料0係儲存於該記憶體區塊BLOCK2的一分頁502中,且該時刻t0的資料1係儲存於該記憶體區塊BLOCK2的一分頁504中。該時刻t0的資料2係儲存於該記憶體區塊BLOCK2的一分頁506中,且該時刻t0的資料3係儲存於該記憶體區塊BLOCK2的一分頁508中。由於該記憶體區塊BLOCK2的所有分頁為有效分頁,故該記憶體區塊BLOCK2的有效分頁之數量為「4」個。
當該時刻t0的資料0、資料1、資料2與資料3係寫入並儲存於對應記憶體區塊的對應分頁中時,該邏輯資訊530係儲存於該第一儲存單元中。該時刻t0的邏輯資訊530包含資訊531、資訊532、資訊533及資訊534,該資訊531代表該資料0係儲存於該記憶體區塊BLOCK2的分頁502中,該資訊532代表該資料1係儲存於該記憶體區塊BLOCK2的分頁504中,該資訊533代表該資料2係儲存於該記憶體區塊BLOCK2的分頁506中,該資訊534代表該資料3係儲存於該記憶體區塊BLOCK2的分頁508。舉例來說,在該邏輯資訊530中的第一行之「0、1、2、3及4」為已儲存資料的資訊,換言之,其為該已儲存資料的邏輯分頁資訊。第二行的序對(2,0)、(2,1)、(2,2)及(2,3)為該已儲存資料的實體位置資訊,換言之,該等序對為儲存有該資料的對應記憶體區塊及分頁之資訊。舉例來說,在該邏輯資訊530中,第一列的第一行之「0」為該資料0,且其代表一邏輯分頁0;以及第一列的第二行之(2,0)代表該記憶體區塊BLOCK2的分頁502。
此外,由於該時刻t0的資料0、資料1、資料2與資料3係寫入並儲存於對應記憶體區塊的對應分頁中,故實體資訊540係儲存於該第二儲存單元中。該時刻t0的實體資訊540包含資訊541、資訊542、資訊543及資訊544,該資訊541代表該資料0係儲存於該記憶體區塊BLOCK2的分頁502中, 該資訊542代表該資料1係儲存於該記憶體區塊BLOCK2的分頁504中,該資訊543代表該資料2係儲存於該記憶體區塊BLOCK2的分頁506中,該資訊544代表該資料3係儲存於該記憶體區塊BLOCK2的分頁508中。舉例來說,該實體資訊540第一行的序對(2,0)、(2,1)、(2,2)及(2,3)代表該已儲存資料的實體位置資訊。換言之,該實體資訊540第一行的序對(2,0)、(2,1)、(2,2)及(2,3)代表儲存有該資料的對應記憶體區塊及分頁之資訊。第二行的「0、1、2、3及4」代表在該已儲存資料的資訊,亦即該已儲存資料的邏輯分頁資訊。舉例來說,在該實體資訊540中第一列的第一行之序對(2,0)代表該記憶體區塊BLOCK2的分頁502;以及第一列的第二行之「0」係指資料0,並代表一邏輯分頁0。
此外,如前關於第3圖及第4圖所述,儲存於該第二儲存單元中的時刻t0之實體資訊540係儲存於該記憶體的複數記憶體區塊當中的一預定記憶體區塊之對應分頁(未示於第5圖)中。
當資料0、資料1、資料4及包含邏輯分頁資訊5(以下稱為「資料5」)的資料在一特定時刻(例如接著發生於該時刻t0後的一時刻t1)自該主機傳輸時,該資料0、該資料1、該資料4與該資料5係儲存於該緩衝單元中。換言之,該緩衝單元儲存該時刻t1的資料0、資料1、資料4與資料5(其為在第5圖的資料500中的時刻t1之「0、1、4及5」)。
由於該時刻t0的資料0、資料1、資料2與資料3,以及該時刻t1的資料0、資料1、資料4與資料5係儲存於該緩衝單元中,故該時刻t0的資料0與資料1係更新至該時刻t1的資料0與資料1。
此外,該時刻t1的資料0、資料1、資料4與資料5係寫入並儲存於對應記憶體區塊的對應分頁中。舉例來說,該時刻t1的資料0係儲存於該 記憶體區塊BLOCK3的一分頁510中,且該時刻t1的資料1係儲存於該記憶體區塊BLOCK3的一分頁512中。該時刻t1的資料4係儲存於該記憶體區塊BLOCK3的一分頁514中,且該時刻t1的資料5係儲存於該記憶體區塊BLOCK3的一分頁516中。
如上所述,由於該時刻t1的資料0係儲存於該記憶體區塊BLOCK3的分頁510中,且該時刻t1的資料1係儲存於該記憶體區塊BLOCK3的分頁512中,故該時刻t0的資料0與該資料1係更新至該記憶體t1的資料0與資料1。因此,儲存有該時刻t0的資料0之記憶體區塊BLOCK2的分頁502,以及儲存有該時刻t0的資料1之記憶體區塊BLOCK2的分頁504變成無效分頁。換言之,該等有效分頁為儲存有該資料2的記憶體區塊BLOCK2之分頁506,以及儲存有該資料3的記憶體區塊BLOCK2之分頁508。在此,該記憶體區塊BLOCK2的有效分頁之數量為「2」個,且由於該記憶體區塊BLOCK3為有效分頁,故該記憶體區塊BLOCK3的有效分頁之數量為「4」個。
由於該時刻t1的資料0、資料1、資料4與資料5係寫入並儲存於對應記憶體區塊的對應分頁中,故邏輯資訊550係儲存於一第一儲存單元中。該時刻t1的邏輯資訊550包含資訊551、資訊552、資訊553及資訊554,該資訊551代表該資料0係儲存於該記憶體區塊BLOCK3的分頁510中,該資訊552代表該資料1係儲存於該記憶體區塊BLOCK3的分頁512中,該資訊553代表該資料4係儲存於該記憶體區塊BLOCK3的分頁514中,該資訊554代表該資料5係儲存於該記憶體區塊BLOCK3的分頁516中。舉例來說,該邏輯資訊550的第一行代表已儲存資料的資訊,其為該已儲存資料的邏輯分頁資訊;以及第二行的序對代表該已儲存資料的實體位置資訊,其為儲存有該資料的記憶體區 塊及分頁之資訊。
此外,當該時刻t1的資料0、資料1、資料4與資料5係寫入並儲存於對應記憶體區塊的對應分頁中時,實體資訊560係儲存於該第二儲存單元中。具體而言,如上所述,由於該時刻t1的資料0係儲存於該記憶體區塊BLOCK3的分頁510中,且該時刻t1的資料1係儲存於該記憶體區塊BLOCK3的分頁512中,以使儲存有該時刻t0的資料0之記憶體區塊BLOCK2的分頁502,以及儲存有該時刻t0的資料1之記憶體區塊BLOCK2的分頁504為無效分頁,故代表該資料0係儲存於該記憶體區塊BLOCK2的分頁502中之資訊541,以及代表該資料1係儲存於該記憶體區塊BLOCK2的分頁504中之資訊542變成無效資訊。換言之,在該時刻t0的實體資訊540中之資訊541及542係更新至在該時刻t1的實體資訊560中之資訊563及資訊564,該資訊563代表該資料0係儲存於該記憶體區塊BLOCK3的分頁510中,該資訊564代表該資料1係儲存於該記憶體區塊BLOCK3的分頁512中。
簡言之,該時刻t1的實體資訊560包含資訊561、資訊562、資訊563、資訊564、資訊565及資訊566,該資訊561代表該資料2係儲存於該記憶體區塊BLOCK2的分頁506中,該資訊562代表該資料3係儲存於該記憶體區塊BLOCK2的分頁508中,該資訊563代表該資料0係儲存於該記憶體區塊BLOCK3的分頁510中,該資訊564代表該資料1係儲存於該記憶體區塊BLOCK3的分頁512中,該資訊565代表該資料4係儲存於該記憶體區塊BLOCK3的分頁514中,該資訊566代表該資料5係儲存於該記憶體區塊BLOCK3的分頁516中。舉例來說,該實體資訊560的第一行之序對代表該已儲存資料的實體位置資訊,其為儲存有該資料的對應記憶體區塊及分頁之資 訊;以及第二行代表該已儲存資料之資訊,其為該已儲存資料的邏輯分頁資訊。
如前所述之第3圖及第4圖,儲存於該第二儲存單元中的時刻t1之實體資訊560係儲存於該記憶體的複數記憶體區塊當中的一預定記憶體區塊之對應分頁(未示於第5圖中)中。
此外,當資料1、資料3、資料4及包含有邏輯分頁資訊6(以下稱為「一資料6」)的資料係在下個時刻(例如接著發生於該時刻t1後的一時刻t2)自該主機傳輸時,該資料1、該資料3、該資料4與該資料6係儲存於該緩衝單元中。換言之,該緩衝單元儲存該時刻t2的資料1、資料3、資料4與資料6(其為在第5圖的資料500中的時刻t2之「1、3、4及6」)。
在此,由於該時刻t0的資料0、資料1、資料2與資料3,以及該時刻t1的資料0、資料1、資料4與資料5,以及該時刻t2的資料1、資料3、資料4與資料6係儲存於該緩衝單元中,故該時刻t0的資料3及該時刻t1的資料1與資料4係更新至該時刻t2的資料1、資料3與資料4。
此外,該時刻t2的資料1、資料3、資料4與資料6係寫入並儲存於對應記憶體區塊的對應分頁中。舉例來說,該時刻t2的資料1係儲存於該記憶體區塊BLOCK4的一分頁518中,且該時刻t2的資料3係儲存於該記憶體區塊BLOCK4的一分頁520中。該時刻t2的資料4係儲存於該記憶體區塊BLOCK4的一分頁522中,且該時刻t2的資料6係儲存於該記憶體區塊BLOCK4的一分頁524中。
如前所述,由於該時刻t2的資料1係儲存於該記憶體區塊BLOCK4的分頁518中、該時刻t2的資料3係儲存於該記憶體區塊BLOCK4的分頁520中,以及該時刻t2的資料4係儲存於該記憶體區塊BLOCK4的分頁 522中,故該時刻t0的資料3及該時刻t1的資料1與資料4係更新至該時刻t2的資料1、資料3與資料4。因此,儲存有該時刻t0的資料3之記憶體區塊BLOCK3的分頁508、儲存有該時刻t1的資料1之記憶體區塊BLOCK3的分頁512,以及儲存有該時刻t1的資料4之記憶體區塊BLOCK3的分頁514變成無效分頁。換言之,該等有效分頁為儲存有該資料2的記憶體區塊BLOCK2之分頁506、儲存有該資料0的記憶體區塊BLOCK3之分頁510,以及儲存有該資料5的記憶體區塊BLOCK3之分頁516。在此,該記憶體區塊BLOCK2的有效分頁之數量為「1」個,且該記憶體區塊BLOCK3的有效分頁之數量為「2」個。由於該記憶體區塊BLOCK4的所有分頁為有效分頁,故該記憶體區塊BLOCK4的有效分頁之數量為「4」個。
由於該時刻t2的資料1、資料3、資料4與資料6係寫入並儲存於對應記憶體區塊的對應分頁中,故邏輯資訊570係儲存於一第一儲存單元中。該時刻t2的邏輯資訊570包含資訊571、資訊572、資訊573及資訊574,該資訊571代表該資料1係儲存於該記憶體區塊BLOCK4的分頁518中,該資訊572代表該資料3係儲存於該記憶體區塊BLOCK4的分頁520中,該資訊573代表該資料4係儲存於該記憶體區塊BLOCK4的分頁522中,該資訊574代表該資料6係儲存於該記憶體區塊BLOCK4的分頁524中。舉例來說,該邏輯資訊570的第一行代表已儲存資料的資訊,其為該已儲存資料的邏輯分頁資訊;以及第二行的序對代表該已儲存資料的實體位置資訊,其為儲存有該資料的記憶體區塊及分頁之資訊。
此外,當該第二時刻t2的資料1、資料3、資料4與資料6係寫入並儲存於對應記憶體區塊的對應分頁中時,實體資訊580係儲存於該第二儲 存單元中。具體而言,如上所述,由於該時刻t2的資料1係儲存於該記憶體區塊BLOCK4的分頁518中、該時刻t2的資料3係儲存於該記憶體區塊BLOCK4的分頁520中,以及該時刻t2的資料4係儲存於該記憶體區塊BLOCK4的分頁522中,以使儲存有該時刻t0的資料3之記憶體區塊BLOCK2的分頁508,儲存有該時刻t1的資料1之記憶體區塊BLOCK3的分頁512,以及儲存有該時刻t1的資料4之記憶體區塊BLOCK3的分頁514為無效分頁,故在該時刻t1的實體資訊560中,代表該資料3係儲存於該記憶體區塊BLOCK2的分頁508中之資訊562、代表該資料1係儲存於該記憶體區塊BLOCK3的分頁512中之資訊564,以及代表該資料4係儲存於該記憶體區塊BLOCK3的分頁514中之資訊565變成無效資訊。換言之,在該時刻t1的實體資訊560之資訊562、564及565係更新至在該時刻t2的實體資訊580之資訊586、資訊584及資訊587,該資訊586代表該資料3係儲存於該記憶體區塊BLOCK4的分頁520中,該資訊584代表該資料1係儲存於該記憶體區塊BLOCK4的分頁518中,該資訊587代表該資料4係儲存於該記憶體區塊BLOCK4的分頁522中。
簡言之,該時刻t2的實體資訊580包含資訊581、資訊582、資訊583、資訊584、資訊586、資訊587及資訊588,該資訊581代表該資料2係儲存於該記憶體區塊BLOCK2的分頁506中,該資訊582代表該資料0係儲存於該記憶體區塊BLOCK3的分頁510中,該資訊583代表該資料5係儲存於該記憶體區塊BLOCK3的分頁516中,該資訊584代表該資料1係儲存於該記憶體區塊BLOCK4的分頁518中,該資訊586代表該資料3係儲存於該記憶體區塊BLOCK4的分頁520中,該資訊587代表該資料4係儲存於該記憶體區塊BLOCK4的分頁522中,該資訊588代表該資料6係儲存於該記憶體區塊 BLOCK4的分頁524中。舉例來說,該實體資訊580的第一行之序對代表該已儲存資料的實體位置資訊,其為儲存有該資料的對應記憶體區塊及分頁的資訊;以及第二行代表該已儲存資料的資訊,其為該已儲存資料的邏輯分頁資訊。
如關於第3圖及第4圖所述,儲存於該第二儲存單元中的時刻t2之實體資訊580係儲存於該記憶體的複數記憶體區塊當中的一預定記憶體區塊之對應分頁(未示於第5圖)中。
如上關於第5圖所述,當具有與一已儲存資料相同邏輯分頁的資料係儲存於該記憶體中時,根據本發明實施例的資料儲存裝置更新儲存於該記憶體中的資料之資料儲存資訊,尤指更新一無效分頁的實體資訊,以有效率地儲存該實體資訊。因此,根據本發明實施例的資料儲存裝置可藉由簡易地檢查該實體資訊及該邏輯資訊而有效率地檢查出無效分頁。
接著,請參考第6圖,當資料600係自一主機傳輸且透過一資料寫入作業而被寫入並儲存於一記憶體中時,一控制器將該資料600寫入並儲存於該記憶體的對應記憶體區塊BLOCK2、BLOCK3及BLOCK6的對應分頁中。此時,該控制器可將該資料600的資料儲存資訊之邏輯資訊630、650及670儲存於一第一儲存單元中,且將該資料儲存資訊的實體資訊640及680儲存於一第二儲存單元中。
具體而言,當資料0、資料1、資料2及資料3在一時刻t0自該主機傳輸時,該資料0、該資料1、該資料2與該資料3係儲存於一緩衝單元中。換言之,該緩衝單元儲存該時刻t0的資料0、資料1、資料2與資料3(請參考第6圖所示之在該資料600中的時刻t0之「0、1、2及3」)。
儲存於該緩衝單元中的時刻t0之資料0、資料1、資料2與資料 3係依序寫入並儲存於對應記憶體區塊的對應分頁中。舉例來說,該時刻t0的資料0係儲存於該記憶體區塊BLOCK2的一分頁602中,且該時刻t0的資料1係儲存於該記憶體區塊BLOCK2的一分頁604中。該時刻t0的資料2係儲存於該記憶體區塊BLOCK2的一分頁606中,且該時刻t0的資料3係儲存於該記憶體區塊BLOCK2的一分頁608中。由於該記憶體區塊BLOCK2的所有分頁為有效分頁,故該記憶體區塊BLOCK2的有效分頁之數量為「4」個。
當該時刻t0的資料0、資料1、資料2與資料3係寫入並儲存於對應記憶體區塊的對應分頁中時,該邏輯資訊630係儲存於該第一儲存單元中。該時刻t0的邏輯資訊630包含資訊631、資訊632、資訊633、資訊634,該資訊631代表該資料0係儲存於該記憶體區塊BLOCK2的分頁602中,該資訊632代表該資料1係儲存於該記憶體區塊BLOCK2的分頁604中,該資訊633代表該資料2係儲存於該記憶體區塊BLOCK2的分頁606中,該資訊634代表該資料3係儲存於該記憶體區塊BLOCK2的分頁608中。舉例來說,在該邏輯資訊630中,第一行代表該已儲存資料的一邏輯分頁資訊;以及第二行代表該已儲存資料的實體位置資訊,其為儲存有該資料的對應記憶體區塊及分頁的資訊。
此外,由於該時刻t0的資料0、資料1、資料2與資料3係寫入並儲存於對應記憶體區塊的對應分頁中,故實體資訊640係儲存於該第二儲存單元中。該時刻t0的實體資訊640包含資訊641、資訊642、資訊643及資訊644,該資訊641代表該資料0係儲存於該記憶體區塊BLOCK2的分頁602中,該資訊642代表該資料1係儲存於該記憶體區塊BLOCK2的分頁604中,該資訊643代表該資料2係儲存於該記憶體區塊BLOCK2的分頁606中,該資訊644代表該資料3係儲存於該記憶體區塊BLOCK2的分頁608中。舉例來說,在該 實體資訊640中,第一行代表該已儲存資料的實體位置資訊,其為儲存有該資料的對應記憶體區塊及分頁之資訊;以及第二行代表該已儲存資料的邏輯分頁資訊。
此外,如前關於第3圖及第4圖所述,儲存在該第二儲存單元的時刻t0之實體資訊640係儲存於該記憶體的複數記憶體區塊當中的一預定記憶體區塊之對應分頁(未示於第6圖)中。
當資料0、資料4、資料5及資料6在一特定時刻(例如接著發生於在該時刻t0後的一時刻t1)自該主機傳輸時,該資料0、該資料4、該資料5與該資料6係儲存於該緩衝單元中。換言之,該緩衝單元儲存該時刻t1的資料0、該資料4、該資料5與該資料6(其為在第6圖的資料600中的時刻t1之「0、4、5及6」)。
由於該時刻t0的資料0、資料1、資料2與資料3,以及該時刻t1的資料0、資料4、資料5與資料6係儲存於該緩衝單元中,故該時刻t0的資料0係更新至該時刻t1的資料0。
此外,該時刻t1的資料0、資料4、資料5與資料6係寫入並儲存於對應記憶體區塊的對應分頁中。舉例來說,該時刻t1的資料0係儲存於該記憶體區塊BLOCK3的一分頁610中,且該時刻t1的資料4係儲存於該記憶體區塊BLOCK3的一分頁612中。該時刻t1的資料5係儲存於該記憶體區塊BLOCK3的一分頁614中,且該時刻t1的資料6係儲存於該記憶體區塊BLOCK3的一分頁616中。
如上所述,由於該時刻t1的資料0係儲存於該記憶體區塊BLOCK3的分頁610中,故該時刻t0的資料0係更新至該時刻t1的資料0。因 此,儲存有該時刻t0的資料0之記憶體區塊BLOCK2的分頁602變成一無效分頁。換言之,該記憶體區塊BLOCK2的有效分頁為儲存有該資料1的分頁604、儲存有該資料2的分頁606以及儲存有該資料3的分頁608。在此,該記憶體區塊BLOCK2的有效分頁之數量為「3」個;以及由於該記憶體區塊BLOCK3的所有分頁為有效分頁,故該記憶體區塊BLOCK3的有效分頁之數量為「4」個。
由於該時刻t1的資料0、資料4、資料5與資料6係寫入並儲存於對應記憶體區塊的對應分頁中,故邏輯資訊650係儲存於一第一儲存單元中。該時刻t1的邏輯資訊650包含資訊651、資訊652、資訊653及資訊654,該資訊651代表該資料0係儲存於該記憶體區塊BLOCK3的分頁610中,該資訊652代表該資料4係儲存於該記憶體區塊BLOCK3的分頁612中,該資訊653代表該資料5係儲存於該記憶體區塊BLOCK3的分頁614中,該資訊654代表該資料6係儲存於該記憶體區塊BLOCK3的分頁616中。舉例來說,該邏輯資訊650的第一行代表已儲存資料的資訊,其為該已儲存資料的邏輯分頁資訊;以及第二行的序對代表該已儲存資料的實體位置資訊,其為儲存有該資料的記憶體區塊及分頁之資訊。
根據本發明一實施例的一資料儲存裝置檢查出有效分頁之數量,或有效分頁之數量(或發生無效分頁之數量)的改變。當該等有效分頁之數量等於或小於一預定第一閾值,或該等有效分頁之數量的改變等於或大於一預定第二閾值時,由於該資料在一特定時刻係寫入並儲存於對應記憶體區塊的對應分頁中,而使該實體資訊被更新及儲存。
換言之,當一第一群組的資料在一第一時刻係寫入對應記憶體區塊的對應分頁中,且接著該第一群組的資料在一第二時刻被更新時,儲存有 一第一群組的資料之第一群組的分頁當中的有效分頁之數量或該等有效分頁之數量(或發生無效分頁之數量)的改變被檢查出。當該第一群組的分頁當中的有效分頁之數量等於或小於該預定第一閾值,或該等有效分頁之數量的改變等於或大於該預定第二閾值時,由於該資料在該第二時刻係寫入並儲存於對應記憶體區塊的對應分頁中,而使該實體資訊被更新及儲存。
以下,為了簡易說明,該預定第一閾值稱為「1」,且該預定第二閾值稱為「2」。該等預定閾值可依據本發明實施例的資料儲存裝置之使用環境而可變地設定。
具體而言,當資料1、資料2、具有一邏輯分頁資訊7的資料(以下稱為「一資料7」)及具有一邏輯分頁資訊8的資料(以下稱為「一資料8」)在一第二時刻(例如時刻t4,其可為發生於一第一時刻(例如時刻t0)後的任何時刻)自該主機傳輸時,該資料1、該資料2、該資料7與該資料8係儲存於一緩衝單元中。換言之,該緩衝單元儲存該時刻t4的資料1、資料2、資料7與資料8(請參考第6圖所示之資料600中的時刻t4之「1、2、7及8」)。
該時刻t0的資料0、資料1、資料2與資料3,該時刻t1的資料0、資料4、資料5與資料6,以及該時刻t4的資料1、資料2、資料7與資料8係儲存於該緩衝單元中,且該時刻t0的資料1與資料2係更新至該時刻t4的資料1與資料2。
儲存於該緩衝單元中的時刻t4之資料1、資料2、資料7與資料8係寫入並儲存於對應記憶體區塊的對應分頁中。舉例來說,該時刻t4的資料1係儲存於一記憶體區塊BLOCK6的一分頁618中,且該時刻t4的資料2係儲存於該記憶體區塊BLOCK6的一分頁620中。該時刻t4的資料7係儲存於該記憶 體區塊BLOCK6的一分頁622中,且該時刻t4的資料8係儲存於該記憶體區塊BLOCK6的一分頁624中。
如前所述,儲存於該緩衝單元中的時刻t0之資料0、資料1、資料2與資料3變成該第一時刻的第一群組之資料。該第一時刻的第一群組之資料係寫入並儲存於一對應記憶體區塊的對應分頁中。換言之,該時刻t0的資料0係儲存於該記憶體區塊BLOCK2的分頁602中,該時刻t0的資料1係儲存於該記憶體區塊BLOCK2的分頁604中,該時刻t0的資料2係儲存於該記憶體區塊BLOCK2的分頁606中,該時刻t0的資料3係儲存於該記憶體區塊BLOCK2的分頁608中。因此,該記憶體區塊BLOCK2的分頁602至608變成該第一群組的分頁。該第一群組的分頁中之有效分頁的數量為「4」個。
此外,如上所述,儲存於該緩衝單元中的時刻t0之資料0、資料1、資料2與資料3變成該第二時刻的第二群組之資料。該第二時刻的第二群組之資料係寫入並儲存於一對應記憶體區塊的對應分頁中。換言之,該時刻t4的資料1係儲存於該記憶體區塊BLOCK6的分頁618中,該時刻t4的資料2係儲存於該記憶體區塊BLOCK6的分頁620中,該時刻t4的資料7係儲存於該記憶體區塊BLOCK6的分頁622中,該時刻t4的資料8係儲存於該記憶體區塊BLOCK6的分頁624中。因此,該記憶體區塊BLOCK3的分頁618至624變成該第二群組的分頁。該第二群組的分頁中之有效分頁的數量為「4」個。
由於該時刻t4(其為該第二時刻)的資料1係儲存於該記憶體區塊BLOCK6的分頁618中,且該時刻t4的資料2係儲存於該記憶體區塊BLOCK6的分頁620中,故該時刻t0的資料1與資料2係更新至該時刻t4的資料1與資料2。因此,儲存有該時刻t0的資料1之記憶體區塊BLOCK2的分頁604,以 及儲存有該時刻t0的資料2之記憶體區塊BLOCK2的分頁606變成無效分頁。換言之,儲存有該資料3的記憶體區塊BLOCK2之分頁608變成唯一的有效分頁。簡言之,該第一群組的分頁當中的有效分頁之數量為「1」個。由於該第一群組的分頁當中的有效分頁之數量在該時刻t0為「4」個、在該時刻t1為「3」個,以及在該時刻t4為「1」個,故在該時刻t4時該等有效分頁之數量等於或小於該預定第一閾值,或該等有效分頁之數量的改變等於或大於該預定第二閾值。該實體資訊在該時刻t4被更新及儲存。
根據本發明實施例的資料儲存裝置更新作為該第一時刻的時刻t0之實體資訊640,並更新作為該第二時刻的時刻t4之實體資訊680。因此,更更新作業係藉由將該資料自該第一時刻(該時刻t0)反映至該第二時刻(該時刻t4)而被執行,其係寫入並儲存於對應記憶體區塊的對應分頁中。
換言之,該實體資訊680係藉由反映一事實而儲存於該第二儲存單元中,其中該事實為在該時刻t1的資料0、資料4、資料5與資料6係寫入並儲存於對應記憶體區塊的對應分頁中之後,該時刻t4的資料1、資料2、資料7與資料8係寫入並儲存於對應記憶體區塊的對應分頁中。具體而言,如上所述,由於該資料0係儲存於該記憶體區塊BLOCK2的分頁602中,該資料1係儲存於該記憶體區塊BLOCK2的分頁604中,該資料2係儲存於該記憶體區塊BLOCK2的分頁606中,該資料3在為該第一時刻的時刻0儲存於該記憶體區塊BLOCK2的分頁608中,且接著該資料0在該時刻t2儲存於該記憶體區塊BLOCK的分頁610中,且接著該資料1在該時刻t4儲存於該記憶體區塊BLOCK6的分頁618中,且該時刻t4的資料2係儲存於該記憶體區塊BLOCK6的分頁620中,故儲存有該時刻t0的資料0之記憶體區塊BLOCK2的分頁604, 以及儲存有該時刻t0的資料2之記憶體區塊BLOCK2的分頁606變成無效分頁。因此,在該時刻t0的實體資訊640中,代表該資料0係儲存於該記憶體區塊BLOCK2的分頁602中之資訊641、代表該資料1係儲存於該記憶體區塊BLOCK2的分頁604之資訊642,以及代表該資料2係儲存該記憶體區塊BLOCK2的分頁606之資訊643變成無效資訊。簡言之,該時刻t0的實體資訊640中之資訊641、642及643係更新至該時刻t4的實體資訊680中之資訊682、資訊686及資訊687,該資訊682代表該資料0係儲存於該記憶體區塊BLOCK3的分頁610中,該資訊686代表該資料1係儲存於該記憶體區塊BLOCK6的分頁618,該資訊687代表該資料2係儲存於該記憶體區塊BLOCK6的分頁620中。
簡言之,該時刻t4的實體資訊680包含該資訊681、該資訊682、該資訊683、資訊684、資訊685、資訊686、資訊687、資訊688及資訊689,該資訊681代表該資料3係儲存於該記憶體區塊BLOCK2的分頁608中,該資訊682代表該資料0係儲存於該記憶體區塊BLOCK3的分頁610中,該資訊683代表該資料4係儲存於該記憶體區塊BLOCK3的分頁612中,該資訊684代表該資料5係儲存於該記憶體區塊BLOCK3的分頁614中,該資訊685代表該資料6係儲存於該記憶體區塊BLOCK3的分頁616中,該資訊686代表該資料1係儲存於該記憶體區塊BLOCK6的分頁618,該資訊687代表該資料2係儲存於該記憶體區塊BLOCK6的分頁620,該資訊688代表該資料7係儲存於該記憶體區塊BLOCK6的分頁622,該資訊689代表該資料8係儲存於該記憶體區塊BLOCK6的分頁624。舉例來說,該實體資訊680的第一行之序對代表該已儲存資料的實體位置資訊,其為儲存有該資料的對應記憶體區塊及分頁之資訊; 以及第二行代表該已儲存資料的資訊,其為該已儲存資料的邏輯分頁資訊。
如前關於第3圖及第4圖所述,儲存於該第二儲存單元的時刻t4之實體資訊680係儲存於該記憶體的複數記憶體區塊當中的一預定記憶體區塊之對應分頁(未示於第6圖)中。
此外,由於該時刻t4的資料1、資料2、資料7與資料8係寫入並儲存於對應記憶體區塊的對應分頁中,故邏輯資訊670係儲存於一第一儲存單元中。該時刻t4的邏輯資訊670包含資訊671、資訊672、資訊673及資訊674,該資訊671代表該資料1係儲存於該記憶體區塊BLOCK6的分頁618中,該資訊672代表該資料2係儲存於該記憶體區塊BLOCK6的分頁620中,該資訊673代表該資料7係儲存於該記憶體區塊BLOCK6的分頁622中,該資訊674代表該資料8係儲存於該記憶體區塊BLOCK6的分頁624中。舉例來說,該邏輯資訊670的第一行代表該已儲存資料的資訊,其為該已儲存資料的邏輯分頁資訊;以及第二行的序對代表該已儲存資料的實體位置資訊,其為儲存有該資料的記憶體區塊及分頁之資訊。
如上關於第6圖所述,當具有相同邏輯分頁以作為已儲存資料的資料係儲存於該記憶體中時,根據本發明實施例的資料儲存裝置更新儲存於該記憶體中的資料之資料儲存資訊,特別是更新一無效分頁的實體資訊,以有效率地儲存該實體資訊。因此,根據本發明實施例的資料儲存裝置可藉由簡易地檢查該實體資訊及該邏輯資訊而有效率地檢查出無效分頁。
以下,將參考第7圖來詳細說明根據本發明一實施例中之一種操作該資料儲存裝置的方法。
第7圖為說明根據本發明實施例中在該資料儲存裝置內的一資 料儲存程序的流程圖。
請參考第7圖,在步驟S710中,當透過一資料寫入作業而被儲存於一記憶體中的資料在一第一時刻自一主機傳輸時,該資料儲存裝置將該資料寫入並儲存於該記憶體中。該第一時刻的資料係寫入並儲存於對應記憶體區塊的對應分頁中。
在步驟S720中,儲存於該記憶體的對應記憶體區塊中之資料的資料儲存資訊係儲存於該記憶體的複數區塊當中的一預定記憶體區塊之一對應分頁中,以及儲存於一控制器的儲存單元中。
在步驟S730,當透過一資料寫作業而儲存於該記憶體中的資料在一第二時刻自該主機傳輸時,該資料儲存裝置將該資料寫入並儲存於該記憶體中。該第二時刻的資料係寫入並儲存於一對應記憶體區塊的對應分頁中。
在步驟S740中,當在該第一時刻及該第二時刻具有相同邏輯分頁資訊的資料被儲存時,會檢查具有已更新資料的分頁。此外,在該第一時刻及該第二時刻儲存有該資料的對應記憶體區塊中的有效分頁及有效分頁之數量會被檢查出來。
在步驟S750中,儲存於該記憶體的資料之資料儲存資訊(例如實體資訊)被更新。具體而言,該等分頁的資料儲存資訊被更新,其中該等分頁藉由具有相同邏輯分頁資訊的資料而被更新。由於根據本發明實施例的資料儲存裝置知該資料儲存作業已參考第2圖至第6圖來詳細說明,故以下將不進一步說明。
根據本發明一實施例,該資料儲存裝置及其操作方法可有效率地儲存一記憶體的資料儲存資訊。
當本發明已說明特定實施例,對於本發明技術領域中具有通常知識者而言,在不背離下述申請專利範圍所定義的發明之精神及範圍下,很明顯的各種改變及修改可被實現。

Claims (10)

  1. 一種資料儲存裝置,包括:一記憶體,其包含複數記憶體區塊,各該記憶體區塊包含複數分頁,該等分頁適用於儲存自一主機所傳輸的資料;以及一控制器,適用於儲存已儲存於該記憶體中的資料之資料儲存資訊,其中,該資料儲存資訊係為儲存於該等分頁與該等記憶體區塊之資料的實體至邏輯資訊,其係基於該等分頁當中儲存有該資料的有效分頁來被更新及儲存於該等記憶體區塊當中的一預定記憶體區塊之分頁中,其中在一第一時刻當一第一群組的資料儲存於該等分頁當中的一第一群組的分頁時,該控制器儲存一第一資料儲存資訊,其代表該第一群組的資料係儲存於該第一群組的分頁中,在該預定記憶體區塊之分頁中,其中在一第二時刻當一第二群組的資料儲存於該等分頁當中的一第二群組的分頁時,如果該第一群組的資料與該第二群組的資料具有一個或多個相同的數值,該控制器基於該第一群組的分頁中第一有效分頁的數量來更新該第一資料儲存資訊,以及其中該控制器在該第二時刻將該等第一有效分頁的數量與一第一閾值以及該第一有效分頁數量的改變量來與一第二閾值進行比較以產生一比較結果,並基於該比較結果來將該第二資料儲存資訊更新至該經過更新的第一資料儲存資訊。
  2. 如申請專利範圍第1項所述之資料儲存裝置,其中當該等第一有效分頁之數量等於或小於該第一閾值,或該等第一有效分頁之數量的一改變等於或大於該第二閾值時,該控制器更新該第一資料儲存資訊及一第二資料儲存資訊, 其中該第二資料儲存資訊代表該第二群組的資料係儲存於該第二群組的分頁中;以及該控制器儲存一已更新第一資料儲存資訊及該第二資料儲存資訊。
  3. 如申請專利範圍第2項所述之資料儲存裝置,其中該控制器進一步更新該第一資料儲存資訊及一第三資料儲存資訊,其中該第三資料儲存資訊對應一第三群組的分頁當中的第二有效分頁,且該第三群組自當儲存該第一群組的資料時之一第一時刻至當儲存該第二群組的資料時之一第二時刻儲存該等分頁當中的資料。
  4. 如申請專利範圍第2項所述之資料儲存裝置,其中該控制器將該第一群組的分頁當中,儲存自該第二群組的資料之相異邏輯分頁資訊的資料之分頁處理為該第一有效分頁,而其他分頁被處理為無效分頁;該控制器將對應該等無效分頁的一第四資料儲存資訊處理為無效資訊。
  5. 如申請專利範圍第4項所述之資料儲存裝置,其中該控制器將對應該等第一有效分頁的一第五資料儲存資訊更新為該已更新第一資料儲存資訊。
  6. 一種操作一資料儲存裝置的方法,包括:儲存自一主機所傳輸的資料於一記憶體中;以及儲存資料儲存資訊於儲存在該記憶體中的資料上,其中該資料係儲存於包含於該記憶體的複數記憶體區塊之複數分頁中,且該資料儲存資訊係基於該等分頁當中儲存有該資料的有效分頁來被更新,該資料儲存資訊係為儲存於該等分頁與該等記憶體區塊之資料的實體至邏輯資訊,其係被更新及儲存於該等記憶體區塊當中的一預定記憶體區塊之分頁中,以及其中儲存該資料儲存資訊之步驟包含: 在一第一時刻當一第一群組的資料儲存於該等分頁當中的一第一群組的分頁時,儲存一第一資料儲存資訊,其代表該第一群組的資料係儲存於該第一群組的分頁中,在該預定記憶體區塊之分頁中;以及在一第二時刻當一第二群組的資料儲存於該等分頁當中的一第二群組的分頁時,如果該第一群組的資料與該第二群組的資料具有一個或多個相同的數值,基於該第一群組的分頁中第一有效分頁的數量來更新該第一資料儲存資訊,其中基於該第一群組的分頁中第一有效分頁的數量來更新該第二資料儲存資訊之步驟包含:在該第二時刻將該等第一有效分頁的數量與一第一閾值以及該第一有效分頁數量的改變量來與一第二閾值進行比較以產生一比較結果;以及基於該比較結果來將該第二資料儲存資訊更新至該經過更新的第一資料儲存資訊。
  7. 如申請專利範圍第6項所述之方法,其中基於該第一群組的分頁當中的第一有效分頁之數量,該第一資料儲存資訊的更新包含:當該等第一有效分頁之數量等於或小於該第一閾值,或該等第一有效分頁之數量的一改變等於或大於該第二閾值時,更新該第一資料儲存資訊及一第二資料儲存資訊,其中該第二資料儲存資訊代表該第二群組的資料係儲存於該第二群組的分頁中;以及儲存一已更新第一資料儲存資訊及該第二資料儲存資訊。
  8. 如申請專利範圍第7項所述之方法,其中該第一資料儲存資訊及該第二資料儲存資訊的更新包含:更新該第一資料儲存資訊及一第三資料儲存資訊,該第三資料儲存資訊對應一第三群組的分頁當中的第二有效分頁,該第三群組自當儲存該第一群組的資料時之一第一時刻至當儲存該第二群組的資料時之一第二時刻儲存該等分頁當中的資料。
  9. 如申請專利範圍第7項所述之方法,其中在該第一群組的分頁當中,儲存自該第二群組的資料之相異邏輯分頁資訊的資料之分頁被處理為該第一有效分頁,而其他分頁被處理為無效分頁,且對應該等無效分頁的一第四資料儲存資訊被處理為無效資訊。
  10. 如申請專利範圍第9項所述之方法,其中該第一資料儲存資訊及該第二資料儲存資訊的更新包含:將對應該等第一有效分頁的一第四資料儲存資訊更新為該已更新第一資料儲存資訊。
TW103143465A 2014-07-31 2014-12-12 資料儲存裝置及操作該資料儲存裝置的方法 TWI674531B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
??10-2014-0098503 2014-07-31
KR1020140098503A KR20160015793A (ko) 2014-07-31 2014-07-31 데이터 저장 장치 및 그것의 동작 방법

Publications (2)

Publication Number Publication Date
TW201604772A TW201604772A (zh) 2016-02-01
TWI674531B true TWI674531B (zh) 2019-10-11

Family

ID=55180171

Family Applications (1)

Application Number Title Priority Date Filing Date
TW103143465A TWI674531B (zh) 2014-07-31 2014-12-12 資料儲存裝置及操作該資料儲存裝置的方法

Country Status (4)

Country Link
US (1) US10042753B2 (zh)
KR (1) KR20160015793A (zh)
CN (1) CN105320610B (zh)
TW (1) TWI674531B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102593362B1 (ko) * 2016-04-27 2023-10-25 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120173796A1 (en) * 2010-12-31 2012-07-05 Yang-Chih Shen Method for performing block management, and associated memory device and controller thereof
US20130275650A1 (en) * 2010-12-16 2013-10-17 Kabushiki Kaisha Toshiba Semiconductor storage device
US20140006685A1 (en) * 2012-06-29 2014-01-02 Fusion-Io, Inc. Systems, methods, and interfaces for managing persistent data of atomic storage operations
US20140160038A1 (en) * 2012-12-12 2014-06-12 Samsung Electro-Mechanics Co., Ltd. Touch sensing method and touch sensing apparatus

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200608201A (en) * 2004-04-28 2006-03-01 Matsushita Electric Ind Co Ltd Nonvolatile storage device and data write method
US8151060B2 (en) 2006-11-28 2012-04-03 Hitachi, Ltd. Semiconductor memory system having a snapshot function
US20080282024A1 (en) * 2007-05-09 2008-11-13 Sudeep Biswas Management of erase operations in storage devices based on flash memories
US8195912B2 (en) * 2007-12-06 2012-06-05 Fusion-io, Inc Apparatus, system, and method for efficient mapping of virtual and physical addresses
CN101676882B (zh) 2008-09-16 2013-01-16 美光科技公司 存储器装置的内嵌映射信息
WO2011125132A1 (en) * 2010-04-09 2011-10-13 Hitachi, Ltd. Information processing device and data shredding method for avoiding multiple shredding of a same data block
KR101153688B1 (ko) 2010-10-15 2012-06-18 성균관대학교산학협력단 데이터 페이지들에 대해 무효화 기회를 부여하는 방법 및 이를 위한 낸드 플래시 메모리 시스템
TWI438630B (zh) 2011-03-22 2014-05-21 Phison Electronics Corp 用於非揮發性記憶體的資料合併方法、控制器與儲存裝置
US9244833B2 (en) 2012-05-30 2016-01-26 Silicon Motion, Inc. Data-storage device and flash memory control method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130275650A1 (en) * 2010-12-16 2013-10-17 Kabushiki Kaisha Toshiba Semiconductor storage device
US20120173796A1 (en) * 2010-12-31 2012-07-05 Yang-Chih Shen Method for performing block management, and associated memory device and controller thereof
US20140006685A1 (en) * 2012-06-29 2014-01-02 Fusion-Io, Inc. Systems, methods, and interfaces for managing persistent data of atomic storage operations
US20140160038A1 (en) * 2012-12-12 2014-06-12 Samsung Electro-Mechanics Co., Ltd. Touch sensing method and touch sensing apparatus

Also Published As

Publication number Publication date
US20160034389A1 (en) 2016-02-04
US10042753B2 (en) 2018-08-07
CN105320610A (zh) 2016-02-10
CN105320610B (zh) 2019-11-01
KR20160015793A (ko) 2016-02-15
TW201604772A (zh) 2016-02-01

Similar Documents

Publication Publication Date Title
CN108804023B (zh) 数据存储装置及其操作方法
US9257157B2 (en) Memory storage device, memory controller, and temperature management method
US11630767B2 (en) Garbage collection—automatic data placement
US10860231B2 (en) Memory system for adjusting map segment based on pattern and operating method thereof
US11995003B2 (en) Method of data caching and device caching data
TWI446349B (zh) 非揮發性記憶體存取方法、系統,與非揮發性記憶體控制器
US20210247922A1 (en) Storage device and operating method thereof
US20140281158A1 (en) File differentiation based on data block identification
WO2015077186A1 (en) Method and system for forward reference logging in a persistent datastore
WO2017155638A1 (en) Technologies for increasing associativity of a direct-mapped cache using compression
KR102595233B1 (ko) 데이터 처리 시스템 및 그것의 동작 방법
CN110109851B (zh) 具有主机和存储器控制器的电子系统及其操作方法
US20170185354A1 (en) Techniques for a Write Transaction at a Storage Device
TWI659304B (zh) 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置
KR20210039163A (ko) 메모리 시스템 및 그것의 동작방법
US9904622B2 (en) Control method for non-volatile memory and associated computer system
KR102330394B1 (ko) 컨트롤러의 작동 방법과 상기 컨트롤러를 포함하는 장치의 작동 방법
US9971549B2 (en) Method of operating a memory device
US11144380B2 (en) Memory controller and storage device including the same
CN110309075B (zh) 存储器控制器以及具有存储器控制器的存储器系统
TWI674531B (zh) 資料儲存裝置及操作該資料儲存裝置的方法
US10331385B2 (en) Cooperative write-back cache flushing for storage devices
US20170115886A1 (en) Storage device and method of performing a write operation by the same
US20160034192A1 (en) Data storage device and operation method thereof
CN107422981B (zh) 硬碟存取方法