TWI710905B - 資料儲存裝置及邏輯至物理位址映射表之載入方法 - Google Patents

資料儲存裝置及邏輯至物理位址映射表之載入方法 Download PDF

Info

Publication number
TWI710905B
TWI710905B TW108115525A TW108115525A TWI710905B TW I710905 B TWI710905 B TW I710905B TW 108115525 A TW108115525 A TW 108115525A TW 108115525 A TW108115525 A TW 108115525A TW I710905 B TWI710905 B TW I710905B
Authority
TW
Taiwan
Prior art keywords
mapping table
processing core
group mapping
specific group
logical
Prior art date
Application number
TW108115525A
Other languages
English (en)
Other versions
TW202042065A (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 慧榮科技股份有限公司
Priority to TW108115525A priority Critical patent/TWI710905B/zh
Priority to CN201910444860.7A priority patent/CN111897743A/zh
Priority to US16/851,572 priority patent/US11210226B2/en
Publication of TW202042065A publication Critical patent/TW202042065A/zh
Application granted granted Critical
Publication of TWI710905B publication Critical patent/TWI710905B/zh

Links

Images

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
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0873Mapping of cache memory to specific storage devices or parts thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/50Control mechanisms for virtual memory, cache or TLB
    • 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/7201Logical to physical mapping or translation of blocks or pages

Abstract

一種資料儲存裝置,包括:一快閃記憶體、一動態隨機存取記憶體、及一記憶體控制器。快閃記憶體係用以儲存一邏輯至物理位址映射表,其係劃分為複數個群組映射表。動態隨機存取記憶體係用以儲存一部分的該等群組映射表。記憶體控制器包括一第一處理核心及一第二處理核心,其中第一處理核心係用以接收來自一主機之一主機指令。當主機指令中之特定邏輯位址的特定群組映射表未儲存於動態隨機存取記憶體,第一處理核心係依據第一位元表及第二位元表中以決定第二處理核心是否已將特定群組映射表從快閃記憶體讀取至動態隨機存取記憶體。

Description

資料儲存裝置及邏輯至物理位址映射表之載入方法
本發明係有關於一種資料儲存裝置,特別是有關於一種資料儲存裝置及邏輯至物理位址映射表之載入方法。
快閃記憶體裝置通常分為NOR快閃裝置與NAND快閃裝置。NOR快閃裝置為隨機存取裝置,而可於位址腳位上提供任何的物理位址,記憶體控制器可由NOR快閃裝置的資料腳位上獲得儲存於物理位址上的資料。相反地,NAND快閃裝置並非隨機存取,而是序列存取。NAND快閃裝置無法像NOR快閃裝置一樣,可以存取任何隨機位址,記憶體控制器反而需要寫入序列的位元組(bytes)的值到NAND快閃裝置中,用以輸入操作命令(command)的類型(如,讀取、寫入、抹除等命令)以及物理位址。物理位址可指向一個頁面(在快閃記憶體中的一個寫入作業的最小資料塊)或一個區塊(在快閃記憶體中的一個抹除作業的最小資料塊)。實際上,NAND快閃裝置通常從記憶體單元(memory cells)上讀取或寫入完整的數頁資料。當一整頁的資料從陣列讀取到裝置中的緩存器(buffer)後,藉由使用提取訊號(strobe signal)順序地敲出(clock out)內容,讓記憶體控制 器可逐位元組或字元組(words)存取資料。
然而,隨著NAND快閃記憶體之容量增加,資料儲存裝置所配置的動態隨機存取記憶體的容量也需增加,才能完整地暫存操作NAND快閃記憶體所需的邏輯至物理位址映射表。動態隨機存取記憶體之容量增加,配置的動態隨機存取記憶體的成本也會增加。若配置容量較小的動態隨機存取記憶體,控制器在執行寫入指令時,需要經常置換並更新在動態隨機存取記憶體中的群組映射表。然而,對於具有兩個處理核心的記憶體控制器來說,兩個處理核心之間缺乏有效的溝通機制,使得主要處理核心往往需浪費時間或系統資源才能判斷另一處理核心是否已將群組映射表讀取至動態隨機存取記憶體,進而造成資料儲存裝置的處理效能下降。
因此,需要一種資料儲存裝置及邏輯至物理位址映射表之載入方法以解決上述問題。
本發明係提供一種資料儲存裝置。資料儲存裝置包括:一快閃記憶體、一動態隨機存取記憶體、及一記憶體控制器。快閃記憶體係用以儲存一邏輯至物理位址映射表,其中該邏輯至物理位址映射表係劃分為複數個群組映射表。動態隨機存取記憶體係用以儲存一部分的該等群組映射表、一第一位元表及一第二位元表,其中該第一位元表包括複數個第一欄位且該第二位元表包括複數個第二欄位,全部的該等群組映射表之各群組映射表係相應於各第一欄位及各第二欄位。記憶體控制器係包括一第一處理核心及一第二處理核心,該第一處理核心係用以接收來自一主機之一主機指令,其中該主機指令包括一或多個邏輯位址。因應於該第一處理核心判 斷在該主機指令中之該一或多個邏輯位址之一特定邏輯位址在該等群組映射表中所相應的一特定群組映射表尚未儲存於該動態隨機存取記憶體,該第一處理核心係將該特定群組映射表相應的該第一位元表的該第一欄位之數值進行切換,並將該特定群組映射表之一讀取指令寫入至一先進先出緩衝器。該第二處理核心係執行來自該先進先出緩衝器之該讀取指令,並且當成功地將該特定群組映射表從該快閃記憶體讀取至該動態隨機存取記憶體後,該第二處理核心係將該特定群組映射表在該第二位元表相應的該第二欄位之數值進行切換。該第一處理核心係依據儲存於該動態隨機存取記憶體中之該特定群組映射表以執行該主機指令。
在一些實施例中,當該資料儲存裝置開機時,該第一處理核心係將該第一位元表及該第二位元表中之各第一欄位及各第二欄位重置為0。因應於該第一處理核心判斷相應於該特定群組映射表在該第一位元表之該第一欄位之數值與該第二位元表之該第二欄位之數值相等時,該第一處理核心係判斷該特定群組映射表已儲存至該動態隨機存取記憶體。
在一些實施例中,因應於該第一處理核心將該特定群組映射表之該讀取指令寫入至該先進先出緩衝器,該第一處理核心係繼續執行該主機指令中之該特定邏輯位址之後續邏輯位址的操作而不等待該第二處理核心完成該讀取指令。
在一些實施例中,該預定條件為在該第一處理核心將該特定群組映射表之該讀取指令寫入至該先進先出緩衝器後已經過一預定時間,或是該第一處理核心已寫入一預定數量的該讀取指令至該先進先出緩衝器。
在另一些實施例中,該預定條件為該第一處理核心判斷需要使用該特定群組映射表以進行相關操作。因應於該第一處理核心已執行完畢該主機指令中之該特定邏輯位址之後續邏輯位址的操作及/或該第一處理核心已將該主機指令中之各邏輯位址相應的該群組映射表的讀取指令均寫入至該先進先出緩衝器。
本發明更提供一種邏輯至物理位址映射表之載入方法,用於一資料儲存裝置,其中該資料儲存裝置包括一快閃記憶體、一動態隨機存取記憶體、一第一處理核心、及一第二處理核心,該快閃記憶體用以儲存一邏輯至物理位址映射表,其中該邏輯至物理位址映射表係劃分為複數個群組映射表,且該動態隨機存取記憶體係儲存一部分的該等群組映射表、一第一位元表、及一第二位元表,其中該第一位元表包括複數個第一欄位且該第二位元表包括複數個第二欄位,全部的該等群組映射表中之各群組映射表係相應於各第一欄位及各第二欄位,該方法包括:利用該第一處理核心接收來自一主機之一主機指令,其中該主機指令包括一或多個邏輯位址;因應於在該主機指令中之該一或多個邏輯位址之一特定邏輯位址在該等群組映射表中所相應的一特定群組映射表尚未儲存於該動態隨機存取記憶體,利用該第一處理核心將該特定群組映射表相應的該第一位元表的該第一欄位之數值進行切換,並將該特定群組映射表之一讀取指令寫入至一先進先出緩衝器;利用該第二處理核心執行來自該先進先出緩衝器之該讀取指令;當成功地執行該讀取指令將該特定群組映射表從該快閃記憶體讀取至該動態隨機存取記憶體後,利用該第二處理核心將該特定群組映射表在該第二位元表相應的該第二欄位之數值進行切換;以及利用該第一處理核心依據儲存於該 動態隨機存取記憶體中之該特定群組映射表以執行該主機指令。
100:電子系統
120:主機
140:資料儲存裝置
150:存取介面
160:記憶體控制器
162:處理單元
163:儲存單元
164:啟動程式
166:靜態隨機存取記憶體
1621:第一處理核心
1622:第二處理核心
1623:先進先出緩衝器
1624:內部匯流排
170:存取介面
180:快閃記憶體
181:快閃轉譯層
190:動態隨機存取記憶體
170_0-170_j:存取子介面
180_0_0-180_j_i:快閃記憶體晶粒
310_0:資料線
320_0_0-320_0_i:晶片致能控制訊號
400:邏輯至物理位址映射表
401:群組映射表
410:請求位元表
412:回應位元表
4101、4121:欄位
420:第一預定空間
430:第二預定空間
S510-S550:步驟
第1圖為依據本發明一實施例中之電子系統的方塊圖。
第2圖為依據本發明一實施例之存取介面與儲存單元的方塊圖。
第3圖為依據本發明一實施例之一個存取子介面與多個快閃記憶體晶粒的連接示意圖。
第4圖為依據本發明一實施例中之邏輯至物理位址映射表、請求位元表及回應位元表的示意圖。
第5圖係顯示依據本發明一實施例中之邏輯至物理位址映射表之載入方法的流程圖。
為使本發明之上述目的、特徵和優點能更明顯易懂,下文特舉一較佳實施例,並配合所附圖式,作詳細說明如下。
第1圖為依據本發明一實施例中之電子系統的方塊圖。電子系統100例如可為個人電腦(personal computer,PC)、一資料伺服器(data server)、網路附加儲存裝置(network-attached storage,NAS),可攜式電子裝置(portable electronic device)等等,但本發明並不限於此。可攜式電子裝置例如可為一筆記型電腦、手持行動電話、智慧型手機、平板電腦、個人數位助理(personal digital assistant,PDA)、數位相機(digital camera)、數位攝影機(digital video camera)、可攜式多媒體播放器(portable multimedia player)、個人導航裝置(personal navigation device)、手持遊戲主機(handheld game console)、電子書(e-book)等等,但本發明並不限於此。
電子裝置100包括主機(host)120以及資料儲存裝置140。資料儲存裝置140包括記憶體控制器160、快閃記憶體180以及動態隨機存取記憶體190。記憶體控制器160包括處理單元162、儲存單元163、靜態隨機存取記憶體(Static Random Access Memory,SRAM)166。處理單元162可由專用硬體電路或通用硬體所實現,具有多個處理核心的處理器或是具平行處理能力的多處理器,且上述實現方式例如可為通用處理器(General-Purpose Processor)、或微控制器(Microcontroller),但本發明並不限於此。為了便於說明,在後述實施例中,處理單元162係包括第一處理核心1621及第二處理核心1622,且第一處理核心1621及第二處理核心1622係透過一內部匯流排1624進行溝通。
動態隨機存取記憶體190為非必要元件,並且可被主機記憶體緩存(Host Memory Buffer,HMB)所替代。動態隨機存取記憶體190的資料儲存空間大於靜態隨機存取記憶體166。
記憶體控制器160中的處理單元162可根據主機120所下達的主機指令而對快閃記憶體180進行操作,例如透過存取介面170寫入資料到快閃記憶體180中之指定位址、或是由快閃記憶體180中的指定位址讀取頁面資料。
處理單元162與快閃記憶體180間的資料與操作 命令傳遞係透過數個電子信號進行協調,上述電子信號包括資料線(data line)、時脈訊號(clock signal)與控制訊號(control signal)。資料線可用以傳遞命令、位址、讀出及寫入的資料;控制訊號線可用以傳遞晶片致能(chip enable,CE)、位址提取致能(address latch enable,ALE)、命令提取致能(command latch enable,CLE)、寫入致能(write enable,WE)等控制訊號。
存取介面170可採用雙倍資料率(double data rate,DDR)通訊協定與快閃記憶體180溝通,例如,開放NAND快閃(open NAND flash interface,ONFI)、雙倍資料率開關(DDR Toggle)或其他介面。處理單元162另可使用存取介面150透過指定通訊協定與主機120進行溝通,例如,通用序列匯流排(universal serial bus,USB)、先進技術附著(advanced technology attachment,ATA)、序列先進技術附著(serial advanced technology attachment,SATA)、快速周邊元件互聯(peripheral component interconnect express,PCI-E)、非揮發性記憶體的傳輸規範(Non-Volatile Memory Express,NVMe)或其他介面。
儲存單元163可為非揮發性記憶體,例如為唯讀記憶體(read-only memory,ROM)、可擦除式可程式化唯讀記憶體(erasable programmable read-only memory,EPROM)、電子可擦除式可程式化唯讀記憶體(electrically erasable programmable read-only memory,EEPROM)或電子熔絲(E-Fuse)。儲存單元163係儲存啟動程式164,其包括啟動碼 (Boot Code)或啟動程式(Bootloader),且可由處理單元162執行,記憶體控制器160基於啟動程式164而完成開機,並開始控制該快閃記憶體180的運作,例如,讀取線上燒錄(In System Programming,ISP)碼。
快閃記憶體180例如為NAND快閃記憶體,且快閃記憶體180可包含多個快閃記憶體晶粒(Die)/邏輯單元編號(Logical Unit Number,LUN),各自使用關聯的存取子介面與處理單元162進行溝通。
第2圖為依據本發明實施例之存取介面與儲存單元的方塊圖。資料儲存裝置140可包含j+1個存取子介面170_0至170_j,存取子介面又可稱為通道(Channel),每一個存取子介面連接i+1個快閃記憶體晶粒。換句話說,i+1個快閃記憶體晶粒共享一個存取子介面。例如,當資料儲存裝置140包含4個通道(j=3)且每一個通道連接4個儲存單元(i=3)時,快閃記憶體180一共擁有16個快閃記憶體晶粒180_0_0至180_j_i。處理單元162可驅動存取子介面170_0至170_j中之一者,從指定的快閃記憶體晶粒讀取資料。每個快閃記憶體晶粒擁有獨立的晶片致能(CE)控制訊號。
換句話說,當欲對指定的快閃記憶體晶粒進行資料讀取時,需要驅動關聯的存取子介面致能此快閃記憶體晶粒的晶片致能控制訊號。第3圖為依據本發明實施例之一個存取子介面與多個快閃記憶體晶粒的連接示意圖。處理單元162可透過存取子介面170_0使用獨立的晶片致能控制訊號320_0_0至320_0_i來從連接的快閃記憶體晶粒180_0_0至180_0_i中選擇出其中一 者,接著,透過共享的資料線310_0從選擇出的快閃記憶體晶粒的指定位置讀取資料。
在一實施例中,資料儲存裝置140運作時,記憶體控制器160建立並更新邏輯至物理位址映射表(L2P映射表),L2P映射表係標示邏輯位址至物理空間的映射資訊,且儲存於資料儲存裝置140中之快閃記憶體180。此外,僅配置小容量的動態隨機存取記憶體190(又稱作部份動態隨機存取記憶體,Partial DRAM),或是資料儲存裝置140並未配置有動態隨機存取記憶體190而使用主機記憶體緩存(Host Memory Buffer,HMB),因此,無法將整個L2P映射表載入動態隨機存取記憶體190或主機記憶體緩存。在此條件下,記憶體控制器160僅將部分L2P映射表載入動態隨機存取記憶體190或主機記憶體緩存。
邏輯位址較佳為邏輯區塊位址(Logical Block Address,LBA),可對應到512B的使用者資料(簡稱資料)。在另一些實施例中,邏輯位址可為全域主機頁編號(Global Host Page,GHP),可對應到4KB或16KB的資料。為了簡化說明,在下述中將以LBA為例,但不以此為限。
第4圖為依據本發明一實施例中之L2P映射表、請求位元表及回應位元表的示意圖。
在一實施例中,L2P映射表400例如可劃分為複數個群組(Group)映射表401,例如:1024個群組映射表401。群組映射表401之大小例如為4KB,假設群組映射表401的每一欄位(Entry)大小為4B,則群組映射表401可記錄1024筆映射資訊。各群組映射表401之大小亦可視實際設計之需求所決定, 本發明並不限於此。記憶體控制器160例如可將L2P映射表400中之部分的群組映射表401儲存至動態隨機存取記憶體190中之第一預定空間420,例如,16個群組映射表401,如第4圖所示。
舉例來說,記憶體控制器160係由主機120接收一或多個主機指令,主機指令例如可為寫入指令或讀取指令。舉例來說,上述主機指令可帶有一或多個LBA,視寫入或讀取資料的型態而定(例如為隨機寫入/讀取、連續寫入/讀取)。
在一實施例中,假定記憶體控制器160所接收來自主機120的主機指令為寫入指令,記憶體控制器160的處理單元162會先判斷主機指令之各LBA相應的群組映射表401是否已儲存於動態隨機存取記憶體190中。若主機指令之各LBA相應的群組映射表401已儲存於動態隨機存取記憶體190中,則記憶體控制器160則不需從快閃記憶體180讀取任何群組映射表401。若主機指令之一部分或全部的LBA相應的群組映射表401尚未儲存於動態隨機存取記憶體190中,則記憶體控制器160會從快閃記憶體180讀取相應的群組映射表401至動態隨機存取記憶體190中,例如採用一預定置換機制以將所讀取的一或多個群組映射表401置換原本儲存於動態隨機存取記憶體190中之一或多個群組映射表401。其中,上述預定置換機制例如可為最近最少使用(least recently used,LRU)演算法、最近最不常用(least frequently used,LFU)演算法、先進先出(first-in-first-out,FIFO)演算法、二次機會演算法等等,但本發明並不限於此。
舉例來說,處理單元162中的第一處理核心1621會將主機指令所需要的一或多個群組映射表401相應的一或多個 操作指令(讀取指令)依序寫入至先進先出緩衝器1623中,且第二處理核心1622則由先進先出緩衝器1623依序取得來自第一處理核心1621的讀取指令,並執行讀取指令以從快閃記憶體180讀取相應的群組映射表401,並將讀取的群組映射表401寫入至動態隨機存取記憶體190。之後,第二處理核心1622再回報第一處理核心1621有關於讀取指令的執行結果,例如:完成、失敗等等。
詳細而言,上述預定置換機制係由第一處理核心1621所決定。舉例來說,第一處理核心1621依據群組-位址映射表(Group-Flash Mapping Table,G2F Table)以取得欲讀取的群組映射表401之物理位址,接著,寫入包括欲讀取的群組映射表401之物理位址(包括快閃記憶體晶粒之位址)以及將欲讀取的群組映射表401寫入至動態隨機存取記憶體190的物理位址的操作指令(讀取指令)至先進先出緩衝器1623。第二處理核心1622再由先進先出緩衝器1623取得並執行讀取指令。當讀取指令執行完成,這表示相應於讀取指令的群組映射表401已被取得並寫入至動態隨機存取記憶體190。第一處理核心1621及第二處理核心1622之間需有同步機制,讓第二處理核心1622可以得知先進先出緩衝器1623有新的讀取指令,另外,讓第二處理核心1622可以回報第一處理核心1621有關於讀取指令的執行進度,或是,讓第一處理核心1621可以得知第二處理核心1622有關於讀取指令的執行結果。在讀取指令執行完成後,第一處理核心1621可以依據主機指令來查找或更新在動態隨機存取記憶體190的群組映射表401的內容。
在第一實施例中,第一處理核心1621會將主機指 令所需要的一或多個群組映射表401相應的一或多個操作指令(讀取指令)依序寫入至先進先出緩衝器1623,此時先進先出緩衝器1623的功能如同指令佇列(Command Queue)。第一處理核心1621等待第二處理核心1622將指令佇列中的所有讀取指令執行完畢,意即先進先出緩衝器1623為空乏(Empty)狀態時,第一處理核心1621才得知主機指令所需的一或多個群組映射表401已讀取完成,第一處理核心1621方能繼續執行主機指令。
第二實施例與第一實施例類似,第一處理核心1621可主動檢查先進先出緩衝器1623中之指令佇列的處理進度,如此一來,可以及早得知哪些群組映射表401已讀取完成,可及早查找或更新那些群組映射表401的內容。
然而,在第一實施例的同步機制中,第一處理核心1621因為需要等待第二處理核心1622將指令佇列中的所有讀取指令均執行完畢後才會繼續執行後續的操作,會造成第一處理核心1621處於閒置狀態,而無法達到應有的效能。在第二實施例的同步機制中,第一處理核心1621需另外讀取指令佇列的內容(例如頭指標、尾指標、以及指令佇列相關的資料結構)以進行判斷或是記錄指令佇列中之讀取指令的索引的對應關係,這亦會造成第一處理核心1621之效能浪費。
在第三實施例中,在動態隨機存取記憶體190中之第二預定空間430係配置了請求位元表410及回應位元表412,如第4圖所示。其中,第一處理核心1621及第二處理核心1622係分別管理請求位元表410及回應位元表412。舉例來說,請求位元表410中具有複數個欄位4101,且各欄位4101係相應於一 群組映射表401,藉以表示相應的群組映射表401的請求狀態(Request Status)。請求位元表412中具有複數個欄位4121,且各欄位4121亦相應於一群組映射表401,藉以表示相應的群組映射表401的回應狀態(Acknowledge Status)。在一些實施例中,請求位元表410及回應位元表412係配置於靜態隨機存取記憶體166。
當電子系統100開機時,第一處理核心1621(及/或第二處理核心)係重置請求位元表410及回應位元表412中的所有欄位4101及4121,例如重置為0。當處理單元162接收到主機指令且第一處理核心1621係判斷在主機指令中的特定邏輯位址的操作需要讀取相應的群組映射表401(例如為特定群組映射表),第一處理核心1621係將欲讀取的特定群組映射表在請求位元表410中之相應的欄位之數值進行切換(toggle)。若特定群組映射表在請求位元表410中之相應的欄位之數值為0,則第一處理核心1621係將特定群組映射表在請求位元表410中之相應的欄位的數值切換為1。若特定群組映射表在請求位元表410中之相應的欄位之數值為1,則第一處理核心1621係將特定群組映射表在請求位元表410中之相應的欄位的數值切換為0。
當第一處理核心1621將欲讀取的特定群組映射表在請求位元表410中之相應的欄位4101之數值進行切換後,第一處理核心1621會將欲讀取的特定群組映射表相應的操作指令(例如第一讀取指令)寫入至先進先出緩衝器1623。其中,第一讀取指令指令係帶有特定群組映射表的物理位址以及將由快閃記憶體180讀取出的特定群組映射表要寫入至動態隨機存取記憶體190 之第一預定空間420的物理位址(或邏輯位址)。
需注意的是,當第一處理核心1621將欲讀取的特定群組映射表相應的操作指令寫入至先進先出緩衝器1623後,第一處理核心1621並不需等待第二處理核心1622將特定群組映射表成功讀取至動態隨機存取記憶體190,即可繼續處理其他主機指令(之前或之後的主機指令),例如,依據已儲存於動態隨機存取記憶體190的群組映射表401,繼續之前主機指令的執行;或是,執行之後主機指令,判斷所需的群組映射表是否皆已在動態隨機存取記憶體190,判斷是否應自快閃記憶體180讀取的特定群組映射表,如果判斷結果是,則切換請求位元表410並寫入操作指令至先進先出緩衝器1623。
當第二處理核心1622從先進先出緩衝器1623取得操作指令,並執行上述操作指令,將從快閃記憶體180所讀取特定群組映射表寫入動態隨機存取記憶體190後(意即完成上述操作指令),第二處理核心1622係將所讀取的特定群組映射表在回應位元表412中之相應的欄位4121之數值進行切換。若特定群組映射表在回應位元表412中之相應的欄位4121之數值為0,則第二處理核心1622係將上述欄位4121的數值切換為1。若特定群組映射表在回應位元表412中之相應的欄位4121之數值為1,則第二處理核心1622係將上述欄位4121的數值切換為0。第二處理核心1622亦可依據類似方式從先進先出緩衝器1623取得後續的操作指令,再從快閃記憶體180讀取相應的群組映射表401,並將所讀取的群組映射表401在回應位元表412中之相應的欄位4121之數值進行切換。
需注意的是,請求位元表410及回應位元表412中的所有欄位4101及4121係在開機時重置為0,且資料儲存裝置140會持續地從主機120接收存取指令。當第一處理核心1621第一次發出相應於上述特定群組映射表的操作指令後,第一處理核心1621會將上述特定群組映射表在請求位元表410中的相應欄位4101的數值切換為1。當第二處理核心1622成功地將上述特定群組映射表從快閃記憶體180讀取至動態隨機存取記憶體190後,第二處理核心1622會將上述特定群組映射表在回應位元表412中的相應欄位4121的數值切換為1。
然而,第一處理核心1621所執行的預定置換機制可能會將已儲存至動態隨機存取記憶體190中的上述特定群組映射表置換為其他的群組映射表401。因此,當第一處理核心1621執行後續主機指令並再度發出相應於上述特定群組映射表的讀取指令後,第一處理核心1621會將上述特定群組映射表在請求位元表410中的相應欄位4101的數值由1切換為0。類似地,當第二處理核心1622再度成功地將上述特定群組映射表從快閃記憶體180讀取至動態隨機存取記憶體190後,第二處理核心1622會將上述特定群組映射表在回應位元表412中的相應欄位4121的數值由1切換為0。
詳細而言,在第一處理核心1621寫入上述特定群組映射表401的操作指令至先進先出緩衝器1623後,在預定條件成立時,第一處理核心1621係比對請求位元表410及回應位元表412以判斷上述特定群組映射表是否已成功地被第二處理核心1622從快閃記憶體180讀取至動態隨機存取記憶體190。舉例來 說,在第一處理核心1621寫入上述特定群組映射表401的操作指令至先進先出緩衝器1623後,若上述特定群組映射表在請求位元表410及回應位元表412中之相應欄位的數值一致(例如均為0或均為1),則表示上述特定群組映射表已成功地寫入動態隨機存取記憶體190。此外,第一處理核心1621比對請求位元表410及回應位元表412時,可比對請求位元表410及回應位元表412中的全部欄位4101及4121,或是僅針對上述特定群組映射表在請求位元表410及回應位元表412之相應欄位4101及4121進行比對。
在一實施例中,上述預定條件例如為:在第一處理核心1621寫入上述特定群組映射表401的讀取指令至先進先出緩衝器1623後,第一處理核心1621可在經過預定時間或是週期性地比對請求位元表410及回應位元表412,或是在寫入預定數量的操作指令至先進先出緩衝器1623後再比對請求位元表410及回應位元表412。
選擇性地或額外地,上述預定條件例如為:第一處理核心1621判斷需要使用上述特定群組映射表以進行相關操作,例如第一處理核心1621已執行完畢目前主機指令中之特定邏輯位址之後續邏輯位址的操作(例如目前主機指令中之後續邏輯位址相應的群組映射表已儲存於動態隨機存取記憶體190)及/或第一處理核心1621已將目前的主機指令中之後續邏輯位址相應的群組映射表的操作指令均寫入至先進先出緩衝器1623。
舉例來說,第一處理核心1621可依序判斷在目前主機指令中之各邏輯位址相應的群組映射表401是否已儲存於動 態隨機存取記憶體190。若判斷目前主機指令之特定邏輯位址相應的特定群組映射表已儲存於動態隨機存取記憶體190,則第一處理核心1621可執行此特定邏輯位址的操作,例如,依據群組映射表401所記錄的物理位置(快閃記憶體180的物理位置)中讀取頁面資料,或是在寫入超級頁面至快閃記憶體180之後,依據超級頁面的物理位置來更新群組映射表401的內容等等。若判斷目前主機指令之特定邏輯位址相應的特定群組映射表尚未儲存於動態隨機存取記憶體190,則第一處理核心1621可逕行執行目前主機指令中之後續邏輯位址的操作而不需等待第二處理核心1622將特定邏輯位址相應的特定群組映射表暫存至動態隨機存取記憶體190(意即完成特定群組映射表之操作指令)。
若目前主機指令中之各邏輯位址相應的群組映射表401是否儲存於動態隨機存取記憶體190之狀態均已判斷完畢,則第一處理核心1621可依序判斷目前主機指令中群組映射表401尚未儲存於動態隨機存取記憶體190的各邏輯位址之讀取指令是否已執行完畢。第一處理核心1621例如可在預定條件成立時,從動態隨機存取記憶體190(或靜態隨機存取記憶體166)讀取請求位元表410及回應位元表412,並比對請求位元表410及回應位元表412中之所有欄位4101及4121。
第5圖為依據本發明一實施例中的邏輯至物理位址映射表之載入方法的流程圖。請同時參考第1、4、5圖。
在步驟S510,第一處理核心1621接收來自主機120的主機指令,其中主機指令包括一或多個邏輯位址,主機指令例如可為寫入指令或讀取指令。舉例來說,主機指令為讀取指令, 讀取的標的為LBA#100~#107的資料。
在步驟S520,第一處理核心1621判斷主機指令的一或多個邏輯位址所相應的一特定群組映射表是否儲存於動態隨機存取記憶體190中,如果是則執行步驟S550,如果否則執行步驟S530。LBA#100~#107的映射關係乃記錄於群組映射表#0,因此,第一處理核心1621判斷群組映射表#0是否儲存於動態隨機存取記憶體190中,如果否,則執行步驟S530。
在步驟S530,第一處理核心1621將特定群組映射表在第一位元表相應的第一欄位之數值進行切換,並將讀取特定群組映射表之操作指令寫入至先進先出緩衝器1623。群組映射表#0乃對應至請求位元表410的欄位#0,因此,第一處理核心1621切換請求位元表410的欄位#0的數值,例如,由”0”切換成”1”,或由”1”切換成”0”,並寫入讀取群組映射表#0之操作指令至先進先出緩衝器1623。其中,操作指令包括群組映射表#0的物理位址(例如包括快閃記憶體晶粒的編號及頁面資料的物理位址)、以及群組映射表#0寫入至動態隨機存取記憶體190之第一預定空間420的物理位址。
在步驟S540,第二處理核心1622執行先進先出緩衝器1623的操作指令,並於執行成功後將特定群組映射表在第二位元表相應的第二欄位之數值進行切換。第二處理核心1622執行先進先出緩衝器1623的操作指令,從快閃記憶體180讀取群組映射表#0,並將群組映射表#0載入至動態隨機存取記憶體190。群組映射表#0乃對應至回應位元表412的欄位#0,第二處理核心1622切換回應位元表412的欄位#0的數值,例如,由”1”切換 成”0”,或由”0”切換成”1”。
在步驟S550,第一處理核心1621依據儲存於動態隨機存取記憶體190中之特定群組映射表以執行主機指令。群組映射表#0記錄LBA#100~#107所對應的物理位址,第一處理核心1621再讀取LBA#100~#107所對應的物理位址中所儲存的資料,並輸出資料至主機120。
綜上所述,本發明係提供一種資料儲存裝置及邏輯至物理位址映射表之載入方法,其可在資料儲存裝置中具有第一處理核心及第二處理核心的記憶體控制器的動態隨機存取記憶體之空間不足以存放整張邏輯至物理位址映射表的情況下,分別利用第一處理核心及第二處理核心分別管理請求位元表及回應位元表。
當主機指令中之特定邏輯位址相應的特定群組映射表未儲存於動態隨機存取記憶體時,第一處理核心可將特定群組映射表之讀取指令寫入至先進先出緩衝器並將特定群組映射表在請求位元表中的相應欄位的數值進行切換。第二處理核心則可由先進先出緩衝器取得特定群組映射表的讀取指令並執行,當第二處理核心成功地將特定群組映射表從快閃記憶體讀取至動態隨機存取記憶體時,第二處理核心則會將特定群組映射表在回應位元表中的相應欄位的數值進行切換。
第一處理核心在寫入讀取指令至先進先出緩衝器後,可繼續處理主機指令中後續邏輯位址的其他操作,並不需持續等待第二處理核心完成讀取指令。第一處理核心並可在預定條件滿足時才比對特定群組映射表在請求位元表及回應位元表中的相應欄位以判斷特定群組映射表是否已儲存於動態隨機存取記憶體。因此,本 發明可增進具有兩個處理核心之資料儲存裝置的處理效能。
本發明雖以較佳實施例揭露如上,然其並非用以限定本發明的範圍,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可做些許的更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100:電子系統
120:主機
140:資料儲存裝置
150:存取介面
160:記憶體控制器
162:處理單元
163:儲存單元
164:啟動程式
166:靜態隨機存取記憶體
1621:第一處理核心
1622:第二處理核心
1623:先進先出緩衝器
1624:內部匯流排
170:存取介面
180:快閃記憶體
181:快閃轉譯層
190:動態隨機存取記憶體

Claims (18)

  1. 一種資料儲存裝置,包括:一快閃記憶體,用以儲存一邏輯至物理位址映射表,其中該邏輯至物理位址映射表係劃分為複數個群組映射表;一動態隨機存取記憶體,用以儲存一部分的該等群組映射表、一第一位元表及一第二位元表,其中該第一位元表包括複數個第一欄位且該第二位元表包括複數個第二欄位,全部的該等群組映射表中之各群組映射表係相應於各第一欄位及各第二欄位;以及一記憶體控制器,包括一第一處理核心及一第二處理核心,其中該第一處理核心係用以接收來自一主機之一主機指令,其中該主機指令包括一或多個邏輯位址;其中,因應於該第一處理核心判斷在該主機指令中之該一或多個邏輯位址之一特定邏輯位址在該等群組映射表中所相應的一特定群組映射表尚未儲存於該動態隨機存取記憶體,該第一處理核心係將該特定群組映射表相應的該第一位元表的該第一欄位之數值進行切換,並將該特定群組映射表之一讀取指令寫入至一先進先出緩衝器,其中,該第二處理核心係執行來自該先進先出緩衝器之該讀取指令,並且當成功地執行該讀取指令將該特定群組映射表從該快閃記憶體讀取至該動態隨機存取記憶體後,該第二處理核心係將該特定群組映射表在該第二位元表相應的該第二欄位之數值進行切換,其中,該第一處理核心係依據儲存於該動態隨機存取記憶體中 之該特定群組映射表以執行該主機指令。
  2. 如申請專利範圍第1項所述之資料儲存裝置,其中該第一處理核心寫入至該先進先出緩衝器的該讀取指令包括該特定群組映射表在該快閃記憶體中之一物理位址以及欲儲存該特定群組映射表至該動態隨機存取記憶體中之物理位址。
  3. 如申請專利範圍第2項所述之資料儲存裝置,其中當該資料儲存裝置開機時,該第一處理核心係將該第一位元表及該第二位元表中之各第一欄位及各第二欄位重置為0。
  4. 如申請專利範圍第3項所述之資料儲存裝置,其中當該第一處理核心係比較相應於該特定群組映射表在該第一位元表之該第一欄位及在該第二位元表之該第二欄位以判斷該特定群組映射表是否已儲存至該動態隨機存取記憶體時,因應於該第一處理核心判斷相應於該特定群組映射表在該第一位元表之該第一欄位之數值與該第二位元表之該第二欄位之數值相等時,該第一處理核心係判斷該特定群組映射表已儲存至該動態隨機存取記憶體。
  5. 如申請專利範圍第1項所述之資料儲存裝置,其中因應於該第一處理核心將該特定群組映射表之該讀取指令寫入至該先進先出緩衝器,該第一處理核心係繼續執行該主機指令中之該特定邏輯位址之後續邏輯位址的操作而不等待該第二處理核心完成該讀取指令。
  6. 如申請專利範圍第1項所述之資料儲存裝置,其中,因應於一預定條件已滿足時,該第一處理核心係比較相應於該特定群組映射表在該第一位元表之該第一欄位及在該第二位元 表之該第二欄位以判斷該特定群組映射表是否已儲存至該動態隨機存取記憶體。
  7. 如申請專利範圍第6項所述之資料儲存裝置,其中該預定條件為在該第一處理核心將該特定群組映射表之該讀取指令寫入至該先進先出緩衝器後已經過一預定時間,或是該第一處理核心已寫入一預定數量的該讀取指令至該先進先出緩衝器。
  8. 如申請專利範圍第6項所述之資料儲存裝置,其中該預定條件為該第一處理核心判斷需要使用該特定群組映射表以進行相關操作。
  9. 如申請專利範圍第5項所述之資料儲存裝置,其中因應於該第一處理核心已執行完畢該主機指令中之該特定邏輯位址之後續邏輯位址的操作及/或該第一處理核心已將該主機指令中之各邏輯位址相應的該群組映射表的讀取指令均寫入至該先進先出緩衝器時,該第一處理核心判斷需要使用該特定群組映射表以進行相關操作。
  10. 一種邏輯至物理位址映射表之載入方法,用於一資料儲存裝置,其中該資料儲存裝置包括一快閃記憶體、一動態隨機存取記憶體、一第一處理核心、及一第二處理核心,該快閃記憶體用以儲存一邏輯至物理位址映射表,其中該邏輯至物理位址映射表係劃分為複數個群組映射表,且該動態隨機存取記憶體係儲存一部分的該等群組映射表、一第一位元表、及一第二位元表,其中該第一位元表包括複數個第一欄位且該第二位元表包括複數個第二欄位,全部的該等群組映射表中之各群 組映射表係相應於各第一欄位及各第二欄位,該方法包括:利用該第一處理核心接收來自一主機之一主機指令,其中該主機指令包括一或多個邏輯位址;因應於在該主機指令中之該一或多個邏輯位址之一特定邏輯位址在該等群組映射表中所相應的一特定群組映射表尚未儲存於該動態隨機存取記憶體,利用該第一處理核心將該特定群組映射表相應的該第一位元表的該第一欄位之數值進行切換,並將該特定群組映射表之一讀取指令寫入至一先進先出緩衝器;利用該第二處理核心執行來自該先進先出緩衝器之該讀取指令;當成功地執行該讀取指令將該特定群組映射表從該快閃記憶體讀取至該動態隨機存取記憶體後,利用該第二處理核心將該特定群組映射表在該第二位元表相應的該第二欄位之數值進行切換;以及利用該第一處理核心依據儲存於該動態隨機存取記憶體中之該特定群組映射表以執行該主機指令。
  11. 如申請專利範圍第10項所述之邏輯至物理位址映射表之載入方法,其中該第一處理核心寫入至該先進先出緩衝器的該讀取指令包括該特定群組映射表在該快閃記憶體中之一物理位址以及欲儲存該特定群組映射表至該動態隨機存取記憶體中之物理位址。
  12. 如申請專利範圍第11項所述之邏輯至物理位址映射表之載入方法,更包括:當該資料儲存裝置開機時,利用該第一處理核心將該第一位元表及該第二位元表中之各第一欄位及各第二欄位重置為0。
  13. 如申請專利範圍第12項所述之邏輯至物理位址映射表之載入方法,其中利用該第一處理核心比較相應於該特定群組映射表在該第一位元表之該第一欄位及在該第二位元表之該第二欄位以判斷該特定群組映射表是否已儲存至該動態隨機存取記憶體之步驟包括:當該第一處理核心判斷相應於該特定群組映射表在該第一位元表之該第一欄位之數值與該第二位元表之該第二欄位之數值相等時,該第一處理核心係判斷該特定群組映射表已儲存至該動態隨機存取記憶體。
  14. 如申請專利範圍第10項所述之邏輯至物理位址映射表之載入方法,更包括:因應於該第一處理核心將該特定群組映射表之該讀取指令寫入至該先進先出緩衝器,利用該第一處理核心繼續執行該主機指令中之該特定邏輯位址之後續邏輯位址的操作而不等待該第二處理核心完成該讀取指令。
  15. 如申請專利範圍第10項所述之邏輯至物理位址映射表之載入方法,更包括:因應於一預定條件已滿足時,利用該第一處理核心比較相應於該特定群組映射表在該第一位元表之該第一欄位及在該第二位元表之該第二欄位以判斷該特定群組映射表是否已儲存至該動態隨機存取記憶體。
  16. 如申請專利範圍第15項所述之邏輯至物理位址映射表之載入方法,其中該預定條件為在該第一處理核心將該特定群組映射表之該讀取指令寫入至該先進先出緩衝器後已經過 一預定時間,或是該第一處理核心已寫入一預定數量的該讀取指令至該先進先出緩衝器。
  17. 如申請專利範圍第15項所述之邏輯至物理位址映射表之載入方法,其中該預定條件為該第一處理核心判斷需要使用該特定群組映射表以進行相關操作。
  18. 如申請專利範圍第14項所述之邏輯至物理位址映射表之載入方法,該第一處理核心判斷需要使用該特定群組映射表以進行相關操作之步驟包括:因應於該第一處理核心已執行完畢該主機指令中之該特定邏輯位址之後續邏輯位址的操作及/或該第一處理核心已將該主機指令中之各邏輯位址相應的該群組映射表的讀取指令均寫入至該先進先出緩衝器。
TW108115525A 2019-05-06 2019-05-06 資料儲存裝置及邏輯至物理位址映射表之載入方法 TWI710905B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW108115525A TWI710905B (zh) 2019-05-06 2019-05-06 資料儲存裝置及邏輯至物理位址映射表之載入方法
CN201910444860.7A CN111897743A (zh) 2019-05-06 2019-05-27 数据储存装置及逻辑至物理地址映射表的载入方法
US16/851,572 US11210226B2 (en) 2019-05-06 2020-04-17 Data storage device and method for first processing core to determine that second processing core has completed loading portion of logical-to-physical mapping table thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108115525A TWI710905B (zh) 2019-05-06 2019-05-06 資料儲存裝置及邏輯至物理位址映射表之載入方法

Publications (2)

Publication Number Publication Date
TW202042065A TW202042065A (zh) 2020-11-16
TWI710905B true TWI710905B (zh) 2020-11-21

Family

ID=73045793

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108115525A TWI710905B (zh) 2019-05-06 2019-05-06 資料儲存裝置及邏輯至物理位址映射表之載入方法

Country Status (3)

Country Link
US (1) US11210226B2 (zh)
CN (1) CN111897743A (zh)
TW (1) TWI710905B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210132806A (ko) * 2020-04-28 2021-11-05 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법
US11481116B2 (en) * 2020-09-09 2022-10-25 Microsoft Technology Licensing, Llc Computing device with independently coherent nodes
CN116710902A (zh) * 2020-12-28 2023-09-05 华为技术有限公司 快闪存储装置、存储控制方法和电子设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI490785B (zh) * 2012-09-07 2015-07-01 Toshiba Kk 資訊處理裝置及記憶體系統
US20170068615A1 (en) * 2015-09-09 2017-03-09 Kabushiki Kaisha Toshiba Memory system and method of controlling nonvolatile memory
US20180052768A1 (en) * 2016-08-16 2018-02-22 Samsung Electronics., Ltd. Memory controller, nonvolatile memory system, and operating method thereof
CN108376120A (zh) * 2017-01-31 2018-08-07 桑迪士克科技有限责任公司 用于管理在非易失性存储器系统中写入块的系统和方法
TW201911057A (zh) * 2017-08-11 2019-03-16 韓商愛思開海力士有限公司 記憶體系統及其操作方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1308836C (zh) * 2003-05-27 2007-04-04 智邦科技股份有限公司 数据储存的方法及系统
US7793036B2 (en) * 2007-05-30 2010-09-07 Intel Corporation Method and arrangements for utilizing NAND memory
TWI454906B (zh) * 2009-09-24 2014-10-01 Phison Electronics Corp 資料讀取方法、快閃記憶體控制器與儲存系統
US8266369B2 (en) * 2009-12-18 2012-09-11 Nxp B.V. Flash memory interface
US9645896B2 (en) * 2013-12-26 2017-05-09 Silicon Motion, Inc. Data storage device and flash memory control method
US10489204B2 (en) 2017-01-31 2019-11-26 Samsung Electronics Co., Ltd. Flexible in-order and out-of-order resource allocation
KR20200085966A (ko) * 2019-01-07 2020-07-16 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
US10908821B2 (en) * 2019-02-28 2021-02-02 Micron Technology, Inc. Use of outstanding command queues for separate read-only cache and write-read cache in a memory sub-system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI490785B (zh) * 2012-09-07 2015-07-01 Toshiba Kk 資訊處理裝置及記憶體系統
US20170068615A1 (en) * 2015-09-09 2017-03-09 Kabushiki Kaisha Toshiba Memory system and method of controlling nonvolatile memory
US20180052768A1 (en) * 2016-08-16 2018-02-22 Samsung Electronics., Ltd. Memory controller, nonvolatile memory system, and operating method thereof
CN108376120A (zh) * 2017-01-31 2018-08-07 桑迪士克科技有限责任公司 用于管理在非易失性存储器系统中写入块的系统和方法
TW201911057A (zh) * 2017-08-11 2019-03-16 韓商愛思開海力士有限公司 記憶體系統及其操作方法

Also Published As

Publication number Publication date
US11210226B2 (en) 2021-12-28
TW202042065A (zh) 2020-11-16
CN111897743A (zh) 2020-11-06
US20200356491A1 (en) 2020-11-12

Similar Documents

Publication Publication Date Title
US10782910B2 (en) Methods for internal data movements of a flash memory device and apparatuses using the same
TWI709854B (zh) 資料儲存裝置及用於存取邏輯至物理位址映射表之方法
CN110908926B (zh) 数据储存装置及逻辑至物理地址映射表的写入方法
US9122611B2 (en) Method for giving read commands and reading data, and controller and storage system using the same
TWI678618B (zh) 快閃記憶裝置的命名空間操作方法及裝置
US9396141B2 (en) Memory system and information processing device by which data is written and read in response to commands from a host
US20140095555A1 (en) File management device and method for storage system
KR102381343B1 (ko) 스토리지 장치 및 상기 스토리지 장치의 동작 방법
TWI710905B (zh) 資料儲存裝置及邏輯至物理位址映射表之載入方法
CN110908927A (zh) 数据储存装置及其删除命名空间的方法
CN111796759B (zh) 多平面上的片段数据读取的计算机可读取存储介质及方法
TWI698749B (zh) 資料儲存裝置與資料處理方法
TW202006553A (zh) 快閃記憶體的資料內部搬移方法以及使用該方法的裝置
TW202101227A (zh) 閃存實體資源集合管理裝置及方法以及電腦程式產品
US10776280B1 (en) Data storage device and method for updating logical-to-physical mapping table
US20130173855A1 (en) Method of operating storage device including volatile memory and nonvolatile memory
CN107943710B (zh) 存储器管理方法及使用所述方法的存储控制器
JP2020191055A (ja) 瞬断からの回復処理方法及び装置、並びにコンピュータ読み取り可能な記憶媒体
EP3869343B1 (en) Storage device and operating method thereof
US9934100B2 (en) Method of controlling memory swap operation and data processing system using same
US20130297859A1 (en) Control device, storage device, and storage control method
KR102554418B1 (ko) 메모리 컨트롤러 및 이를 포함하는 스토리지 장치
TWI715116B (zh) 資料儲存裝置及其刪除命名空間之方法
US20170115886A1 (en) Storage device and method of performing a write operation by the same
CN109542336B (zh) 存储设备及其操作方法