TWI875191B - 快閃記憶體控制器和執行快取擦除操作的方法 - Google Patents
快閃記憶體控制器和執行快取擦除操作的方法 Download PDFInfo
- Publication number
- TWI875191B TWI875191B TW112135155A TW112135155A TWI875191B TW I875191 B TWI875191 B TW I875191B TW 112135155 A TW112135155 A TW 112135155A TW 112135155 A TW112135155 A TW 112135155A TW I875191 B TWI875191 B TW I875191B
- Authority
- TW
- Taiwan
- Prior art keywords
- flash memory
- command sequence
- command
- ready
- erase operation
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申請揭示一種快閃記憶體控制器和執行快取擦除操作的方法。該快閃記憶體控制器包括第一介面電路和處理器。該第一介面電路耦合到快閃記憶體以傳輸資料和命令。該處理器耦接該第一介面電路以對該快閃記憶體進行存取。該處理器控制該第一介面電路傳送第一命令序列和第二命令序列至該快閃記憶體。該第一命令序列包括第一命令和第二命令。響應於該第二命令之傳送,該快閃記憶體執行擦除操作,並且在陣列就緒位元處於非就緒狀態時,傳送該第二命令序列至該快閃記憶體。
Description
本申請涉及一種儲存裝置,特別是關於一種快閃記憶體控制器及執行快取擦除操作的方法。
記憶體裝置包括快閃記憶體控制器以及快閃記憶體。快閃記憶體控制器用於控制記憶體裝置的運作以及存取快閃記憶體,以及快閃記憶體用於儲存資料。當執行擦除操作時,快閃記憶體控制器和快閃記憶體之間的匯流排(BUS)為閒置狀態。也就是說,在這段時間內不會進行會使用到BUS的相關操作,如資料傳輸或命令發送。這將導致快閃記憶體控制器在擦除操作完成之前處於等待狀態,無法充分利用其計算能力和資源,導致整體系統的效能降低和資源浪費。
為解決上述習知技術之問題,本申請之目的在於提供一種快閃記憶體控制器及執行快取擦除操作的方法,其能夠在執行擦除操作的同時進行會使用到BUS的相關操作以提高傳輸效率。
第一方面,本申請提供一種快閃記憶體控制器,用於控制一快閃記憶體,該快閃記憶體控制器包括:一第一介面電路和一處理器。該第一介面電路耦合到該快閃記憶體以傳輸資料和命令。該處理器耦接該第一介面電路以透過該第一介面電路對該快閃記憶體進行存取。該處理器控制該第一介面電路傳送一第一命令序列和一第二命令序列至該快閃記憶體。該第一命令序列包括一第一命令和一第二命令,該第一命令係用以指示該快閃記憶體接收一位址訊息,以及響應於該第二命令之傳送,該快閃記憶體執行對應於該位址訊息之一擦除操作,並且在一陣列就緒位元處於一非就緒狀態時,傳送該第二命令序列至該快閃記憶體。
在一些實施例中,當該快閃記憶體之該陣列就緒位元被設置為數值0時代表處於該非就緒狀態,而當被設置為數值1時代表處於就緒狀態。
在一些實施例中,響應於該第二命令之傳送,該快閃記憶體之一就緒位元和該陣列就緒位元設置為0,以及經過一第一忙碌期間後,該就緒位元設置為1以及該陣列就緒位元設置為0。
在一些實施例中,在傳送該第一命令序列之前,該處理器控制該第一介面電路傳送一設置特徵命令序列該至快閃記憶體,該設置特徵命令序列配置為使該快閃記憶體控制器在該陣列就緒位元為該非就緒狀態時,能夠傳送該第二命令序列至該快閃記憶體。
在一些實施例中,該第二命令序列包含與該第一命令序列相同的命令,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
在一些實施例中,該第二命令序列用於指示該快閃記憶體執行一讀取操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
在一些實施例中,該第二命令序列用於指示該快閃記憶體執行一寫入操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
第二方面,本申請還提供一種在快閃記憶體控制器中執行快取擦除操作的方法,其中該快閃記憶體控制器耦合到一快閃記憶體以傳輸資料和命令,該方法包括:傳送一第一命令序列至該快閃記憶體,其中該第一命令序列包括一第一命令和一第二命令,該第一命令係用以指示該快閃記憶體接收一位址訊息;響應於該第二命令之傳送,該快閃記憶體執行對應於該位址訊息之一擦除操作,並且在一陣列就緒位元處於非就緒狀態時,傳送一第二命令序列至該快閃記憶體。
在一些實施例中,當該快閃記憶體之該陣列就緒位元被設置為數值0時代表處於該非就緒狀態,而當被設置為數值1時代表處於就緒狀態。
在一些實施例中,在傳送該第一命令序列之前,該方法還包括:傳送一設置特徵命令序列至該快閃記憶體,響應於該設置特徵命令序列之傳送,使該快閃記憶體控制器在該陣列就緒位元為該非就緒狀態時,能夠傳送該第二命令序列至該快閃記憶體。
在一些實施例中,該第二命令序列包含與該第一命令序列相同的命令,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
在一些實施例中,該第二命令序列用於指示該快閃記憶體執行一讀取操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
在一些實施例中,該第二命令序列用於指示該快閃記憶體執行一寫入操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
第三方面,本申請還提供一種在快閃記憶體中執行快取擦除操作的方法,包括:接收一第一命令序列,並且響應該第一命令序列之一第一命令之接收,接收一相對應之位址訊息;響應於該第一命令序列中之一第二命令之接收,執行對應於該位址訊息之一擦除操作並將一陣列就緒位元設置為一非就緒狀態;以及在該陣列就緒位元處於該非就緒狀態的同時,接收一第二命令序列。
在一些實施例中,該陣列就緒位元被設置為數值0時代表處於該非就緒狀態,而當被設置為數值1時代表處於一就緒狀態。
在一些實施例中,在接收該第一命令序列之前,該方法還包括:接收一設置特徵命令序列,並且響應於該特徵命令序列之接收,使該快閃記憶體在該陣列就緒位元為該非就緒狀態時,能夠接收該第二命令序列。
在一些實施例中,該第二命令序列包含與該第一命令序列相同的命令,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
在一些實施例中,該第二命令序列用於指示該快閃記憶體執行一讀取操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
在一些實施例中,該第二命令序列用於指示該快閃記憶體執行一寫入操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
相較於先前技術,本申請提供了一種快閃記憶體控制器及執行快取擦除操作的方法,其在執行擦除操作的同時接收另一命令序列或資料。因此,避免了必須等待擦除操作結束後才能進行會使用到BUS的相關操作,進而提高了傳輸效率。
10:記憶體裝置
100:快閃記憶體控制器
110:第一介面電路
120:第二介面電路
130:處理器
140:緩衝器
150:唯讀記憶體
151:程式碼
200:快閃記憶體
201:輸入輸出控制電路
202:邏輯控制電路
203:位址暫存器
204:狀態暫存器
205:命令暫存器
206:儲存單元陣列
207:行解碼器
208:列解碼器
209:資料暫存器
210:就緒/忙碌控制電路
301、501、601、701:第一命令序列
302、502、602、702:第二命令序列
400、410、420:設置特徵命令序列
IOx、CE#、CLE、ALE、WE#、RE#、WP#、R/B#:訊號
tW1、tW2、tBERS_1、tBERS_2、tBERS、tPROG、tR:期間
S81~S82、S91~S93:步驟
圖1顯示本發明之一實施例之記憶體裝置之示意圖;圖2顯示本發明之一實施例之快閃記憶體之示意圖;圖3顯示本發明之第一實施例之執行快取擦除操作之時序圖;圖4A顯示本發明之一實施例之基於快取擦除操作的設置特徵命令序列之示意圖;圖4B顯示本發明之一實施例之啟用快取擦除操作的設置特徵命令序列之示意圖;圖4C顯示本發明之一實施例之停用快取擦除操作的設置特徵命令序列之示意圖;圖5顯示本發明之第二實施例之執行快取擦除操作之時序圖;圖6顯示本發明之第三實施例之執行快取擦除操作之時序圖;圖7顯示本發明之第四實施例之執行快取擦除操作之時序圖;圖8顯示本發明之一實施例之在快閃記憶體控制器中執行快取擦除操作的方法之流程圖;
圖9顯示本發明之一實施例之在快閃記憶體中執行快取擦除操作的方法之流程圖。
現在將參考附圖更全面地描述本申請之示例實施方式。然而,示例實施方式能夠以多種形式實施,且不應被理解為限於在此闡述的範例。相反,提供這些實施方式使得本申請將更加全面和完整,並將示例實施方式的構思全面地傳達給所屬技術領域中具有通常知識者。附圖僅為本申請的示意性圖解,並非一定是按比例繪製。附圖中相同的附圖標記表示相同或類似的部分,因而將省略對它們的重複描述。
請參考圖1,其顯示本發明之一實施例之記憶體裝置之示意圖。記憶體裝置10包含快閃記憶體控制器(flash memory controller)100以及快閃記憶體(flash memory)200。快閃記憶體控制器100係用以控制記憶體裝置10的運作以及存取快閃記憶體200,以及快閃記憶體200係用以儲存資料。記憶體裝置10可包含,但不限於,固態硬碟(solid state drive,SSD)以及各種型式的嵌入式(embedded)記憶體裝置,例如符合快捷外設組件互聯(Peripheral Component Interconnect Express,PCIe)標準的嵌入式記憶體裝置等。
如圖1所示,快閃記憶體控制器100可包括第一介面電路110、第二介面電路120、處理器130、緩衝器140和唯讀記憶體150。快閃記憶體控制器100藉由第一介面電路110耦合到快閃記憶體200以傳輸資料和命令。並且,快閃記憶體控制器100可藉由第二介面電路120與一主機裝置(host device)通訊連接。處理器130係電性耦接第一介面電路110、第二介面電路120、緩衝器140和唯讀記憶
體150。緩衝器140可藉由隨機存取記憶體(Random Access Memory,RAM)來實施。例如,緩衝器140可以是靜態隨機存取記憶體(Static RAM,SRAM),但本發明不限於此。唯讀記憶體150係用來儲存一程式碼151。
在一些實施例中,透過處理器130執行程式碼151之快閃記憶體控制器100可利用其本身內部之元件來進行諸多控制運作,例如:利用第一介面電路110來控制快閃記憶體200之存取(Access)、利用第二介面電路120來與主機裝置溝通、利用緩衝器140進行所需之緩衝處理等等。舉例來說,主機裝置可將主機命令(host command)與對應的邏輯位址(logical address)傳送至快閃記憶體控制器100。快閃記憶體控制器100之處理器130透過第二介面電路120接收主機命令及邏輯位址,並將主機命令轉換成記憶體操作命令,並進一步透過第一介面電路110以操作命令控制快閃記憶體200來對快閃記憶體200當中某些實體位址之記憶體單元(例如資料頁面)進行讀取(read)及/或寫入(write)(亦稱編程(program))等操作。實體位址對應於邏輯位址。第一介面電路110可包含編碼器以及解碼器。編碼器用來對寫入到快閃記憶體200中的資料進行編碼以產生對應的校驗碼,而解碼器用來將從快閃記憶體200所接收的資料進行解碼。
在一些實施例中,主機裝置可包括彼此耦接的處理器和電源供應電路。處理器可用以控制主機裝置的運作,而電源供應電路可用來提供電源給處理器與記憶體裝置10,並且輸出一個或多個驅動電壓至記憶體裝置10。記憶體裝置10可用以提供儲存空間給主機裝置,並且從主機裝置取得一個或多個驅動電壓作為記憶體裝置10的電源。在此提到的主機裝置可包含,但不限於,行動裝置、穿戴裝置、平板電腦以及諸如桌上型電腦及筆記型電腦等個人電腦。
在一些實施例中,快閃記憶體控制器100的第二介面電路120可符合一特定通訊標準,例如串行先進技術附件(Serial Advanced Technology Attachment,Serial ATA或SATA)標準、外部組件互連(Peripheral Component Interconnect,PCI)標準、PCIe標準、通用快閃記憶體儲存(Universal Flash Storage,UFS)標準等等,並且可根據該特定通訊標準來進行通訊,舉例來說,進行主機裝置與記憶體裝置10之間的通訊,其中主機裝置可包含有符合特定通訊標準的相對應的傳輸介面電路,以進行主機裝置與記憶體裝置10之間的通訊。
在本實施例中,快閃記憶體200為NAND快閃記憶體(NAND flash)。相應地,快閃記憶體控制器100的第一介面電路110採用兼容一開放NAND快閃介面(Open NAND Flash Interface,ONFI)的通訊協定與快閃記憶體200溝通。例如,快閃記憶體控制器100可根據ONFI協定將來自主機裝置的請求轉譯成用於快閃記憶體200的命令,其中命令係選自於ONFI命令集。
請參照圖2,其顯示本發明之一實施例之快閃記憶體之示意圖。快閃記憶體200包括輸入輸出(I/O)控制電路201、邏輯控制電路202、位址暫存器203、狀態暫存器204、命令暫存器205、儲存單元陣列206、行解碼器207、列解碼器208、資料暫存器209和就緒/忙碌(R/B)控制電路210。
I/O控制電路201與快閃記憶體控制器100之間發送及接收例如8位元寬之輸入輸出訊號I/Ox。例如,I/O控制電路201可從快閃記憶體控制器100接收包含寫入資料之輸入輸出訊號I/Ox,並將其傳輸至資料暫存器209。又,I/O控制電路201將自資料暫存器209傳輸來之讀取資料作為輸入輸出訊號I/Ox發送至快閃記憶體控制器100。
邏輯控制電路202自快閃記憶體控制器100接收各種控制訊號以控制I/O控制電路201。該控制訊號例如包含晶片致能訊號CE#、命令鎖存致能訊號CLE、位址鎖存致能訊號ALE、寫入致能訊號WE#、讀取致能訊號RE#及寫入保護訊號WP#。邏輯控制電路202控制快閃記憶體200整體之動作。具體而言,邏輯控制電路202基於自命令暫存器205傳輸來之命令控制行解碼器207、列解碼器208、資料暫存器209等,進而執行資料之寫入操作、讀取操作等。
位址暫存器203自I/O控制電路201接收位址訊息,並保持該位址訊息。並且,位址暫存器203將位址訊息所包含之列位址訊號及行位址訊號分別傳輸至行解碼器207、列解碼器208和資料暫存器209。狀態暫存器204根據邏輯控制電路202之指示將該狀態訊息傳輸至I/O控制電路201。命令暫存器205自I/O控制電路201接收命令,並保持該命令。並且,命令暫存器205將命令傳輸至邏輯控制電路202。
儲存單元陣列206具有多個區塊。區塊係與位元線及字元線建立關聯之複數個非揮發性記憶胞之集合,其中各記憶胞可藉由應用MLC(Multi-Level Cell,多階記憶胞)方式記憶多位元之資料。每一區塊包含複數個頁面(Pages)。頁面是編程(Program)的最小單元。也就是說,頁面為寫入或讀取資料時的最小單元。區塊是擦除操作的最小單位。在快閃記憶體200執行寫入操作之前必須執行擦除操作,這是因為寫入操作時只能將儲存單元從“1”變為“0”,而擦除操作就是將所有的儲存單元都置1。
邏輯控制電路202可以接收控制訊號以檢驗儲存單元陣列206的狀態,並將狀態檢驗的結果提供至狀態暫存器204。請參照表一,其說明了狀態暫存器204中各種狀態值。
FAIL:如果SR[0]位元為1,則表示上一個命令失敗。如果SR[0]位元為0,表示上一個命令成功。在一實施例中,SR[0]位元只在編程或擦除操作時有效。
FAILC:如果SR[1]位元為1,則表示上一個命令的前一個命令失敗(上上個命令)。如果SR[1]位元為0,表示在上一個命令的前一個命令成功。SR[1]位元僅在編程快取操作中有效。
SR[2]-SR[4]VSP:由產品開發商定義使用。
ARDY:如果SR[5]位元(即陣列就緒位元)為1,則表示沒有正在進行的陣列操作。如果SR[5]位元為0,表示某個命令正在被執行(RDY被清為0),或正在進行一個陣列操作。如果不支持重疊多平面操作(overlapped multi-plane)或快取命令,則SR[5]位元不會被使用。
RDY:如果SR[6]位元(即就緒位元)為1,表示另一個命令的邏輯單元(LUN)或平面位址已經準備好,並且狀態值中所有其他位元都有效。如果SR[6]位元為0,則表示發送的上一個命令還沒有執行完,並且SR[5]位元是無效的且應被主機裝置忽略。SR[6]位元會影響訊號R/B#的值。即,訊號R/B#反映的是儲存單元陣列206上的LUN是否處於忙碌狀態。當快取操作正在進行時,SR[6]位元表示另一個命令是否可被接受,而ARDY表示上一個操作是否完成。
WP_n:如果SR[7]位元為1,則表示裝置不是處於寫入保護的狀態。如果SR[7]位元為0,表示裝置處於寫入保護的狀態。不論SR[6]位元是什麼值,SR[7]位元都始終是有效的。
行解碼器207和列解碼器208選擇所要進行讀取操作及寫入操作之對象記憶胞對應之位元線和字元線。並且,行解碼器207和列解碼器208對選擇/非選擇之位元線和字元線分別施加所需之電壓。
資料暫存器209將自儲存單元陣列206讀取之資料經由I/O控制電路201輸出至快閃記憶體控制器100。又,資料暫存器209將經由I/O控制電路201自快閃記憶體控制器100接收之寫入資料傳輸至儲存單元陣列206。
R/B控制電路210基於邏輯控制電路202之動作狀態產生就緒/忙碌訊號R/B#,並將該訊號發送至快閃記憶體控制器100。就緒/忙碌訊號R/B#係將快閃記憶體200為就緒狀態抑或是忙碌狀態通知給快閃記憶體控制器100之訊號。就緒狀態係能夠受理來自快閃記憶體控制器100之命令之狀態,忙碌狀態係未能夠受理來自快閃記憶體控制器100之命令之狀態。又,就緒/忙碌訊號R/B#係藉由R/B控制電路210控制連接於其輸出之電晶體之接通/斷開而產生。例如,就緒/忙碌訊號R/B#於快閃記憶體200執行如讀取資料等動作中被設為低位準(忙碌狀態),當完成該等動作時被設為高位準(就緒狀態)。
在理想情況下(高傳輸效率),快閃記憶體控制器100和快閃記憶體之間的匯流排(BUS)應當是在傳輸命令或資料。然而,在習知技術中,當執行擦除操作時,BUS為閒置狀態。也就是說,不會進行會使用到BUS的相關操作,如資料傳輸或命令發送。這將導致快閃記憶體控制器在擦除操作完成之前處於等待狀態,無法充分利用其計算能力和資源。在本申請中,藉由執行快取擦除操作實現了執行擦除操作的同時進行會使用到BUS的相關操作,進而提高傳輸效率。本申請的實施方式具體說明如下。
請參照圖3,其顯示本發明之第一實施例之執行快取擦除操作之時序圖,其中顯示了就緒位元SR[6]和陣列就緒位元SR[5]的示例波形。應當理解的是,本實施例之快取擦除操作是由上述的記憶體裝置10執行。具體地,快閃記
憶體控制器100之第一介面電路110耦合到快閃記憶體200以傳輸資料和命令。並且,快閃記憶體控制器100之處理器130耦接第一介面電路110以透過第一介面電路110對快閃記憶體200進行存取。在本實施例中,處理器130控制第一介面電路110傳送第一命令序列301和第二命令序列302至快閃記憶體200。
如圖3所示,本申請的第一命令序列301用於指示擦除操作,包括命令60h和86h。第一命令序列301的傳送具體如下。快閃記憶體控制器100的處理器130會控制第一介面電路110依序發送擦除命令(即第一命令)例如60h、位址訊息ALE(例如一個平面的(例如第m平面)的區塊位址訊息以及一確認命令(即第二命令)例如86h至快閃記憶體200。該區塊位址訊息可以用來指示第m平面的第n區塊的區塊位址(但不限定)。第一命令60h的輸入允許快閃記憶體200識別擦除操作的開始,並且第一命令60h係用以指示快閃記憶體200接收該位址訊息ALE。也就是說,當接收到第一命令60h時,快閃記憶體200就可以知道並確認出第一命令60h之後接著的訊息包括有第m平面中的區塊的區塊位址訊息。此外,響應於第二命令86h之傳送,快閃記憶體200開始對位址訊息ALE所對應的區塊執行該擦除操作。應當注意的是,在本實施例中的第二命令編號是可選的,例如可以是ONFI命令集保留區(reserved)中的任一命令編號,例如:76h、82h、86h等,本實施例選用命令86h為舉例。
如圖3所示,響應於第一命令序列301之第二命令86h之傳送,快閃記憶體200之就緒位元SR[6]和陣列就緒位元SR[5]設置為0。如上所述,當該快閃記憶體之就緒位元SR[6]和陣列就緒位元SR[5]被設置為數值0時代表處於非就緒狀態,而當被設置為數值1時代表處於就緒狀態。接著,經過第一忙碌期間tW1後,就緒位元SR[6]變為1,意旨快閃記憶體200可以開始接收另一個命令。因此,當就緒位元SR[6]為1時,處理器130緊接著傳送第二命令序列302至快閃記憶體200。也就是說,當處理器130控制第一介面電路110傳送第二命令序列302至快閃
記憶體200時,快閃記憶體200之就緒位元SR[6]設置為1以及陣列就緒位元SR[5]設置為0(即處於非就緒狀態)。應當理解的是,由於此時快閃記憶體200還在執行該擦除操作,故第二命令序列302是被傳送至對應的暫存器,如命令暫存器205、位址暫存器203等。
如圖3所示,在本實施例中,第二命令序列302與第一命令序列301所包含的命令相同,但位址訊息ALE不同。例如,第二命令序列302的位址訊息ALE可以用來指示第m平面或另一個平面中的另一區塊的區塊位址。也就是說,在對應於第一命令序列301的擦除操作結束時,該快閃記憶體緊接著執行對應於第二命令序列302之另一擦除操作,以對對應的另一區塊執行該擦除操作。
如圖3所示,響應於第二命令序列302之第二命令86h之傳送,快閃記憶體200之就緒位元SR[6]設置為0。接著,經過第二忙碌期間tW2後,就緒位元SR[6]變為1。也就是說,在一些實施例中,此時快閃記憶體200可以開始接收另一個命令,不侷限於此。
如圖3所示,tBERS表示塊擦除期間。在快閃記憶體200處理對應第一命令序列301及第二命令序列302之操作的時序區間(tBERS_1+tBERS_2)內,陣列就緒位元SR[5]皆維持在非就緒狀態。當快閃記憶體200執行完對應於第一命令序列301和第二命令序列302操作後(經過期間tBERS_1+tBERS_2),快閃記憶體200之陣列就緒位元SR[5]變為1,表示沒有正在進行的陣列操作。
應當理解的是,在一些實施例中,可通過讀取快閃記憶體200的狀態暫存器中的資料來判斷擦除操作是否成功。若擦除成功,則可重新向快閃記憶體200寫入資料。若擦除不成功,可再次發出擦除命令來擦除快閃記憶體200中的錯誤資料,直到擦除成功。舉例來說,在傳送第二命令序列302之後,快閃記憶體控制器100可進一步傳送狀態讀出命令70h至快閃記憶體200。快閃記憶體200響應狀態讀出命令70h而將狀態發送至快閃記憶體控制器100。此時,通過讀取狀
態寄存器的位元SR[0]位元的狀態值來確認擦除操作是否失敗。當SR[0]位元為0時表示擦除操作成功地完成。然而,當SR[0]位元為1時表示擦除操作失敗。
在本實施例中,在第一命令序列301中,藉由將命令86h取代傳統的擦除確認命令D0h,使得快閃記憶體200在執行擦除操作的同時可接收第二命令序列302。因此,避免了必須等待擦除操作結束後才能進行會使用到BUS的相關操作,進而提高了傳輸效率。舉例來說,在執行兩次擦除操作的情況下,本實施例相較於習知技術減少了一次命令序列的傳遞時間(由於第二命令序列302的傳送和擦除操作的執行並行進行)。
在上述說明中,以將命令86h取代傳統的擦除確認命令D0h來實現並行進行第二命令序列302的傳送和擦除操作的執行的情況為例進行了說明,但不限定於此。例如,可以藉由設置特徵(set feature)命令來變更記憶體裝置10之動作模式。具體地,請參照圖4A,其顯示本發明之一實施例之基於快取擦除操作的設置特徵命令序列之示意圖。如圖4A所示,在傳送指示執行擦除操作的命令序列(如第一命令序列)之前,處理器130控制第一介面電路110傳送設置特徵命令序列400至快閃記憶體200。設置特徵命令係用於設定快閃記憶體200之各種參數之命令。若將設置特徵命令設定於命令暫存器,則繼設置特徵命令之後自快閃記憶體控制器100發送之參數資料會被設定於各種暫存器。
如圖4A所示,關於設置特徵命令序列400的傳送具體如下。首先,快閃記憶體控制器100傳送設置特徵命令(例如EFh)至快閃記憶體200。命令EFh係用於指示快閃記憶體200進行參數變更之指令。接著,快閃記憶體控制器100傳送位址資訊EFh至快閃記憶體200。該位址資訊EFh指定與想要變更之參數對應之位址。接著,快閃記憶體控制器100以複數個循環將設定資料P1-P4輸出至快閃記憶體200。此處經輸出之設定資料P1-P4相當於進行變更之參數之資料。當快閃記憶體200接收到特徵命令序列400時,開始進行設置特徵,變更快閃記憶體200之
動作模式。在本實施例中,快閃記憶體控制器100可使用設置特徵命令來設定快閃記憶體200的快取擦除操作。具體地,設置特徵命令序列配置為該快閃記憶體控制器100在陣列就緒位元為非就緒狀態時,能夠傳送第二命令序列至快閃記憶體200。也就是說,設置特徵命令序列配置為使快閃記憶體200在執行擦除操作的同時接收第二命令序列。
應當注意的是,在本實施例中,繼設置特徵命令序列400之後所傳送的第一命令序列為<60h-ALE-D0h>,即第一命令為60h和第二命令為D0h。在部分電子產品中,限定了執行擦除操作的命令必須包含D0h。此時,藉由傳送和啟用上述特徵命令序列400,在不改變傳統的擦除操作的命令序列(如第一命令序列<60h-ALE-D0h>)的命令的情況下,實現了使快閃記憶體200在執行擦除操作的同時可接收第二命令序列。
請參照圖4B和圖4C。圖4B顯示本發明之一實施例之啟用(enable)快取擦除操作的設置特徵命令序列之示意圖。圖4C顯示本發明之一實施例之停用(disable)快取擦除操作的設置特徵命令序列之示意圖。當快閃記憶體控制器100或快閃記憶體200被供電(或被開啟)時,快閃記憶體控制器100的處理器130可以控制第一介面電路110發送設置特徵命令序列410或420至快閃記憶體200以啟用或停用快閃記憶體200上述快取擦除操作(在執行擦除操作的同時接收第二命令序列)。如圖4B所示,在指示啟用快取擦除操作的設置特徵命令序列410中,位址資訊例如為2Fh,並且設定資料P1例如為00h。又,如圖4C所示,在指示停用快取擦除操作的設置特徵命令序列420中。位址資訊例如為2Fh,並且設定資料P1例如為01h。應當理解的是,設定資料P1是用於指示是否啟用或停用上述快取擦除操作。當設定資料P1被設置為例如0的邏輯位元時,上述快取擦除操作可以被啟用。而當設定資料P11被設置為例如1的邏輯位元時,上述快取擦除操作會被
停用。在這種情況下,當以命令序列<60h-ALE-D0h>執行傳統的擦除操作時,必須等待擦除操作結束後才能進行會使用到BUS的相關操作。
請參照圖5,其顯示本發明之第二實施例之執行快取擦除操作之時序圖,其中顯示了就緒位元SR[6]和陣列就緒位元SR[5]的示例波形。在本實施例中,處理器130控制第一介面電路110傳送第一命令序列501和第二命令序列502至快閃記憶體200。
如圖5所示,第一命令序列501用於指示多平面擦除操作,包括多個第一命令60h和一第二命令86h。第一命令序列501的傳送具體如下。快閃記憶體控制器100的處理器130控制第一介面電路110依序傳送該些第一命令60h。並且,在每一第一命令60h傳送一對應的位址訊息ALE。位址訊息ALE用來指示對應平面中的區塊的區塊位址,如第m平面、第n平面、第o平面、第p平面。傳送最後一個平面的位址訊息ALE之後,快閃記憶體控制器100傳送確認命令(即第二命令)例如86h至快閃記憶體200。響應於第二命令86h之傳送,快閃記憶體200開始對位址訊息ALE所對應個平面中的區塊執行多平面擦除操作。應當注意的是,在本實施例中的第二命令編號是可選的,例如可以是ONFI命令集保留區(reserved)中的任一命令編號,例如:76h、82h、86h等,本實施例選用命令86h為舉例。
如圖5所示,響應於第一命令序列501之第二命令86h之傳送,快閃記憶體200之就緒位元SR[6]和陣列就緒位元SR[5]設置為0。接著,經過第一忙碌期間tW1後,就緒位元SR[6]變為1,意旨快閃記憶體200可以開始接收另一個命令。因此,當就緒位元SR[6]為1時,處理器130緊接著傳送第二命令序列502至快閃記憶體200。也就是說,當處理器130控制第一介面電路110傳送第二命令序列502至快閃記憶體200時,快閃記憶體200之就緒位元SR[6]設置為1以及陣列就緒位元SR[5]設置為0。應當理解的是,由於此時快閃記憶體200還在執行該擦除操
作,故第二命令序列502是被傳送至對應的暫存器,如命令暫存器205、位址暫存器203等。
如圖5所示,在本實施例中,第二命令序列502同樣是用於指示執行多平面擦除操作。也就是說,在對應於第一命令序列501的多平面擦除操作結束時,該快閃記憶體緊接著執行對應於第二命令序列502之另一平面擦除操作。
在本實施例中,在第一命令序列501中,藉由將命令86h取代傳統的擦除確認命令D0h,使得快閃記憶體200在執行擦除操作的同時可接收第二命令序列502。因此,避免了必須等待擦除操作結束後才能進行會使用到BUS的相關操作,進而提高了傳輸效率。應當理解的是,基於第二實施例之快取擦除操作,同樣可以藉由設置特徵命令和習知的多平面擦除命令序列的組合來變更記憶體裝置10之動作模式,以實現在執行多平面擦除操作的同時進行會使用到BUS的相關操作。另一方面,第二實施例之其餘特徵與第一實施例相同,在此不加以贅述。
請參照圖6,其顯示本發明之第三實施例之執行快取擦除操作之時序圖,其中顯示了就緒位元SR[6]和陣列就緒位元SR[5]的示例波形。在本實施例中,處理器130控制第一介面電路110傳送第一命令序列601和第二命令序列602至快閃記憶體200。
如圖6所示,第一命令序列601用於指示執行擦除操作,包括第一命令60h和第二命令86h。應當理解的是,第三實施例之第一命令序列601與第一實施例之第一命令序列301相同,在此不加以贅述。
如圖6所示,響應於第一命令序列601之第二命令86h之傳送,快閃記憶體200之就緒位元SR[6]和陣列就緒位元SR[5]設置為0。接著,經過第一忙碌期間tW1後,就緒位元SR[6]變為1,意旨快閃記憶體200可以開始接收另一個命令。因此,當就緒位元SR[6]為1時,處理器130緊接著傳送第二命令序列602至快
閃記憶體200。也就是說,當處理器130控制第一介面電路110傳送第二命令序列602至快閃記憶體200時,快閃記憶體200之就緒位元SR[6]設置為1以及陣列就緒位元SR[5]設置為0。應當理解的是,由於此時快閃記憶體200還在執行該擦除操作,故第二命令序列602是被傳送至對應的暫存器,如命令暫存器205、位址暫存器203等。
如圖6所示,在本實施例中,第二命令序列602是用於指示快閃記憶體200執行寫入操作。第二命令序列602包括命令80h和10h。具體地,快閃記憶體控制器100將命令80h傳送至快閃記憶體200。命令80h為指示快閃記憶體200接收位址訊息ALE的命令,即位址接收命令。接著,快閃記憶體控制器100處理器130還控制第一介面電路110將位址訊息ALE傳送至快閃記憶體200,並且還順序地傳送待寫入的儲存資料W_DATA至快閃記憶體200的資料暫存器209。最後,快閃記憶體控制器100傳送命令10h至快閃記憶體200。命令10h用於指示快閃記憶體200執行寫入操作。在對應於第一命令序列601的擦除操作結束時,快閃記憶體200緊接著執行對應於第二命令序列602之寫入操作。在寫入操作期間,資料暫存器209中的儲存資料W_DATA以頁為單位被寫入到快閃記憶體200中對應於邏輯位址的頁面。圖6中的tPROG表示執行寫入操作的期間。應當注意的是,在快閃記憶體200處理對應第一命令序列601及第二命令序列602之操作的時序區間(tBERS+tPROG)內,陣列就緒位元SR[5]皆維持在非就緒狀態。
在本實施例中,在第一命令序列601中,藉由將命令86h取代傳統的擦除確認命令D0h,使得快閃記憶體200在執行擦除操作的同時可接收第二命令序列602。因此,避免了必須等待擦除操作結束後才能進行會使用到BUS的相關操作,進而提高了傳輸效率。舉例來說,在連續執行一次擦除操作和一次寫入操作的情況下,本實施例相較於習知技術減少了一次命令序列和寫入資料的傳遞時間(由於第二命令序列602和儲存資料W_DATA的傳送與擦除操作的執行並
行進行)。應當理解的是,基於第三實施例之快取擦除操作,同樣可以藉由設置特徵命令和習知的擦除命令序列的組合來變更記憶體裝置10之動作模式,以實現執行擦除操作的同時進行與會使用到BUS的相關操作。另一方面,第三實施例之其餘特徵與第一實施例實質相同,在此不加以贅述。
請參照圖7,其顯示本發明之第四實施例之執行快取擦除操作之時序圖,其中顯示了就緒位元SR[6]和陣列就緒位元SR[5]的示例波形。在本實施例中,處理器130控制第一介面電路110傳送第一命令序列701和第二命令序列702至快閃記憶體200。
如圖7所示,第一命令序列701用於指示執行擦除操作,包括第一命令60h和第二命令86h。應當理解的是,第四實施例之第一命令序列701與第一實施例之第一命令序列301相同,在此不加以贅述。
如圖7所示,響應於第一命令序列701之第二命令86h之傳送,快閃記憶體200之就緒位元SR[6]和陣列就緒位元SR[5]設置為0。接著,經過第一忙碌期間tW1後,就緒位元SR[6]變為1,意旨快閃記憶體200可以開始接收另一個命令。因此,當就緒位元SR[6]為1時,處理器130緊接著傳送第二命令序列702至快閃記憶體200。也就是說,當處理器130控制第一介面電路110傳送第二命令序列702至快閃記憶體200時,快閃記憶體200之就緒位元SR[6]設置為1以及陣列就緒位元SR[5]設置為0。應當理解的是,由於此時快閃記憶體200還在執行該擦除操作,故第二命令序列702是被傳送至對應的暫存器,如命令暫存器205、位址暫存器203等。
如圖7所示,在本實施例中,第二命令序列702是用於指示快閃記憶體200執行讀取操作。第二命令序列702包括命令00h和30h。具體地,快閃記憶體控制器100將命令00h傳送至快閃記憶體200。命令00h為指示快閃記憶體200接收位址訊息ALE的命令,即位址接收命令。快閃記憶體控制器100處理器130還控
制第一介面電路110將位址訊息ALE傳送至快閃記憶體200,並且接著傳送命令30h至快閃記憶體200。命令30h用於指示快閃記憶體200執行讀取操作。在對應於第一命令序列701的擦除操作結束時,快閃記憶體200緊接著執行對應於第二命令序列702之讀取操作。在讀取操作期間,處理器130緊接著控制第一介面電路110從快閃記憶體200接收所讀取之儲存資料R_DATA。具體地,快閃記憶體200中的儲存資料R_DATA經由資料暫存器209傳輸至I/O控制電路201,進而傳送至快閃記憶體控制器100。圖7中的tR表示執行讀取操作的期間。應當注意的是,在快閃記憶體200處理對應第一命令序列701及第二命令序列702之操作的時序區間(tBERS+tR)內,陣列就緒位元SR[5]皆維持在非就緒狀態。
在本實施例中,在第一命令序列701中,藉由將命令86h取代傳統的擦除確認命令D0h,使得快閃記憶體200在執行擦除操作的同時可接收第二命令序列702。因此,避免了必須等待擦除操作結束後才能進行會使用到BUS的相關操作,進而提高了傳輸效率。舉例來說,在連續執行一次擦除操作和一次讀取操作的情況下,本實施例相較於習知技術減少了一次命令序列的傳遞時間(由於第二命令序列702的傳送與擦除操作的執行並行進行)。應當理解的是,基於第四實施例之快取擦除操作,同樣可以藉由設置特徵命令和習知的擦除命令序列的組合來變更記憶體裝置10之動作模式,以實現執行擦除操作的同時進行會使用到BUS的相關操作。另一方面,第四實施例之其餘特徵與第一實施例實質相同,在此不加以贅述。
本申請還提供一種在快閃記憶體控制器中執行快取擦除操作的方法。快閃記憶體控制器耦合到快閃記憶體以傳輸資料和命令。快閃記憶體控制器和快閃記憶體如上所述,在此不加以贅述。具體地,快閃記憶體控制器的微處理器通常配置為控制記憶體裝置的整體操作。微處理器執行程式碼進而執行如上述第一實施例至第四實施例的快取擦除操作中的全部或部分步驟。
請參照圖8,其顯示本發明之一實施例之在快閃記憶體控制器中執行快取擦除操作的方法之流程圖。快取擦除操作至少包括步驟S81至步驟S82。在步驟S81中,傳送第一命令序列至快閃記憶體,其中第一命令序列包括第一命令和第二命令,第一命令係用以指示快閃記憶體接收位址訊息。在步驟S82中,響應於第二命令之傳送,快閃記憶體執行對應於位址訊息之擦除操作,並且在陣列就緒位元處於非就緒狀態時,傳送第二命令序列至快閃記憶體。
在一些實施例中,當快閃記憶體之陣列就緒位元被設置為數值0時代表處於非就緒狀態,而當被設置為數值1時代表處於就緒狀態。
在一些實施例中,在傳送第一命令序列之前,方法還包括:傳送設置特徵命令序列至快閃記憶體。響應於特徵命令序列之傳送,使快閃記憶體控制器在陣列就緒位元為非就緒狀態時,能夠傳送第二命令序列至快閃記憶體。
在一些實施例中,第二命令序列包含與第一命令序列相同的命令,並且在快閃記憶體處理對應第一命令序列及第二命令序列之操作的時序區間內,陣列就緒位元皆維持在非就緒狀態。
在一些實施例中,第二命令序列用於指示快閃記憶體執行讀取操作,並且在快閃記憶體處理對應第一命令序列及第二命令序列之操作的時序區間內,陣列就緒位元皆維持在非就緒狀態。
在一些實施例中,第二命令序列用於指示快閃記憶體執行寫入操作,並且在快閃記憶體處理對應第一命令序列及第二命令序列之操作的時序區間內,陣列就緒位元皆維持在非就緒狀態。
本申請還提供一種在快閃記憶體中執行快取擦除操作的方法。快閃記憶體控制器耦合到快閃記憶體以傳輸資料和命令。快閃記憶體控制器和快閃記憶體如上所述,在此不加以贅述。具體地,快閃記憶體執行如上述第一實施例至第四實施例的快取擦除操作中的全部或部分步驟。
請參照圖9,顯示本發明之一實施例之在快閃記憶體中執行快取擦除操作的方法之流程圖。快取擦除操作至少包括步驟S91至步驟S93。在步驟S91中,接收第一命令序列,並且響應第一命令序列中之第一命令之接收,接收相對應之位址訊息。在步驟S92中,響應於第一命令序列中之第二命令之接收,執行對應於位址訊息之擦除操作並將陣列就緒位元設置為非就緒狀態。在步驟S93中,在陣列就緒位元處於非就緒狀態的同時,接收第二命令序列。
在一些實施例中,陣列就緒位元被設置為數值0時代表處於非就緒狀態,而當被設置為數值1時代表處於就緒狀態。
在一些實施例中,在接收第一命令序列之前,方法還包括:接收設置特徵命令序列。響應於特徵命令序列之接收,使快閃記憶體在陣列就緒位元為非就緒狀態時,能夠接收第二命令序列。
在一些實施例中,第二命令序列包含與第一命令序列相同的命令,並且在快閃記憶體處理對應第一命令序列及第二命令序列之操作的時序區間內,陣列就緒位元皆維持在非就緒狀態。
在一些實施例中,第二命令序列用於指示快閃記憶體執行一讀取操作,並且在快閃記憶體處理對應第一命令序列及第二命令序列之操作的時序區間內,陣列就緒位元皆維持在非就緒狀態。
在一些實施例中,第二命令序列用於指示快閃記憶體執行寫入操作,並且在快閃記憶體處理對應第一命令序列及第二命令序列之操作的時序區間內,陣列就緒位元皆維持在非就緒狀態。
以上僅為本申請的具體實施方式,但本申請的保護範圍並不局限於此,任何所屬技術領域通常知識者在本申請揭露的技術範圍內,可輕易想到變
化或替換,都應涵蓋在本申請的保護範圍之內。因此,本申請的保護範圍應以所述申請專利範圍的保護範圍為准。
10:記憶體裝置
100:快閃記憶體控制器
110:第一介面電路
120:第二介面電路
130:處理器
140:緩衝器
150:唯讀記憶體
151:程式碼
200:快閃記憶體
Claims (19)
- 一種快閃記憶體控制器,用於控制一快閃記憶體,該快閃記憶體控制器包括:一第一介面電路,耦合到該快閃記憶體以傳輸資料和命令;以及一處理器,耦接該第一介面電路以透過該第一介面電路對該快閃記憶體進行存取,其中該處理器控制該第一介面電路傳送一第一命令序列和一第二命令序列至該快閃記憶體;以及其中該第一命令序列包括一第一命令和一第二命令,該第一命令係用以指示該快閃記憶體接收一位址訊息,以及響應於該第二命令之傳送,該快閃記憶體執行對應於該位址訊息之一擦除操作,並且在一陣列就緒位元處於一非就緒狀態時,傳送該第二命令序列至該快閃記憶體。
- 如請求項1的快閃記憶體控制器,當該快閃記憶體之該陣列就緒位元被設置為數值0時代表處於該非就緒狀態,而當被設置為數值1時代表處於就緒狀態。
- 如請求項1的快閃記憶體控制器,其中響應於該第二命令之傳送,該快閃記憶體之一就緒位元和該陣列就緒位元設置為0,以及經過一第一忙碌期間後,該就緒位元設置為1以及該陣列就緒位元設置為0。
- 如請求項1的快閃記憶體控制器,其中在傳送該第一命令序列之前,該處理器控制該第一介面電路傳送一設置特徵命令序列該至快閃記憶體,該設置特徵命令序列配置為使該快閃記憶體控制器在該陣列就緒位元為該非就緒狀態時,能夠傳送該第二命令序列至該快閃記憶體。
- 如請求項1的快閃記憶體控制器,其中該第二命令序列包含與該第一命令序列相同的命令,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
- 如請求項1的快閃記憶體控制器,其中該第二命令序列用於指示該快閃記憶體執行一讀取操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
- 如請求項1的快閃記憶體控制器,其中該第二命令序列用於指示該快閃記憶體執行一寫入操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
- 一種在快閃記憶體控制器中執行快取擦除操作的方法,其中該快閃記憶體控制器耦合到一快閃記憶體以傳輸資料和命令,該方法包括:傳送一第一命令序列至該快閃記憶體,其中該第一命令序列包括一第一命令和一第二命令,該第一命令係用以指示該快閃記憶體接收一位址訊息;以及響應於該第二命令之傳送,該快閃記憶體執行對應於該位址訊息之一擦除操作,並且在一陣列就緒位元處於一非就緒狀態時,傳送一第二命令序列至該快閃記憶體。
- 如請求項8的在快閃記憶體控制器中執行快取擦除操作的方法,其中當該快閃記憶體之該陣列就緒位元被設置為數值0時代表處於該非就緒狀態,而當被設置為數值1時代表處於就緒狀態。
- 如請求項8的在快閃記憶體控制器中執行快取擦除操作的方法,其中在傳送該第一命令序列之前,該方法還包括:傳送一設置特徵命令序列至該快閃記憶體,響應於該設置特徵命令序列之傳送,使該快閃記憶體控制器在該陣列就緒位元為該非就緒狀態時,能夠傳送該第二命令序列至該快閃記憶體。
- 如請求項8的在快閃記憶體控制器中執行快取擦除操作的方法,其中該第二命令序列包含與該第一命令序列相同的命令,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
- 如請求項8的在快閃記憶體控制器中執行快取擦除操作的方法,其中該第二命令序列用於指示該快閃記憶體執行一讀取操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
- 如請求項8的在快閃記憶體控制器中執行快取擦除操作的方法,其中該第二命令序列用於指示該快閃記憶體執行一寫入操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
- 一種在快閃記憶體中執行快取擦除操作的方法,包括:接收一第一命令序列,並且響應該第一命令序列之一第一命令之接收,接收一相對應之位址訊息;響應於該第一命令序列中之一第二命令之接收,執行對應於該位址訊息之一擦除操作並將一陣列就緒位元設置為一非就緒狀態;以及在該陣列就緒位元處於該非就緒狀態的同時,接收一第二命令序列。
- 如請求項14的在快閃記憶體中執行快取擦除操作的方法,其中該陣列就緒位元被設置為數值0時代表處於該非就緒狀態,而當被設置為數值1時代表處於一就緒狀態。
- 如請求項14的在快閃記憶體中執行快取擦除操作的方法,其中在接收該第一命令序列之前,該方法還包括:接收一設置特徵命令序列,並且響應於該特徵命令序列之接收,使該快閃記憶體在該陣列就緒位元為該非就緒狀態時,能夠接收該第二命令序列。
- 如請求項14的在快閃記憶體中執行快取擦除操作的方法,其中該第二命令序列包含與該第一命令序列相同的命令,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
- 如請求項14的在快閃記憶體中執行快取擦除操作的方法,其中該第二命令序列用於指示該快閃記憶體執行一讀取操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
- 如請求項14的在快閃記憶體中執行快取擦除操作的方法,其中該第二命令序列用於指示該快閃記憶體執行一寫入操作,並且在該快閃記憶體處理對應該第一命令序列及該第二命令序列之操作的時序區間內,該陣列就緒位元皆維持在該非就緒狀態。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW112135155A TWI875191B (zh) | 2023-09-14 | 2023-09-14 | 快閃記憶體控制器和執行快取擦除操作的方法 |
| CN202411135200.8A CN119620931A (zh) | 2023-09-14 | 2024-08-19 | 闪存控制器和执行快取擦除操作的方法 |
| US18/815,467 US20250094073A1 (en) | 2023-09-14 | 2024-08-26 | Flash memory controller and methods for executing cache erase operation |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW112135155A TWI875191B (zh) | 2023-09-14 | 2023-09-14 | 快閃記憶體控制器和執行快取擦除操作的方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TWI875191B true TWI875191B (zh) | 2025-03-01 |
| TW202512201A TW202512201A (zh) | 2025-03-16 |
Family
ID=94895322
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW112135155A TWI875191B (zh) | 2023-09-14 | 2023-09-14 | 快閃記憶體控制器和執行快取擦除操作的方法 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20250094073A1 (zh) |
| CN (1) | CN119620931A (zh) |
| TW (1) | TWI875191B (zh) |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070274134A1 (en) * | 2006-05-25 | 2007-11-29 | Frankie Roohparvar | Method and apparatus for improving storage performance using a background erase |
| TW201230039A (en) * | 2010-12-23 | 2012-07-16 | Sandisk Technologies Inc | Manual suspend and resume for non-volatile memory |
| CN104407997B (zh) * | 2014-12-18 | 2017-09-19 | 中国人民解放军国防科学技术大学 | 带有指令动态调度功能的与非型闪存单通道同步控制器 |
| TWI735918B (zh) * | 2019-01-24 | 2021-08-11 | 慧榮科技股份有限公司 | 用來進行記憶裝置的存取管理之方法、記憶裝置及其控制器、主裝置以及電子裝置 |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6748482B1 (en) * | 2000-09-27 | 2004-06-08 | Intel Corporation | Multiple non-contiguous block erase in flash memory |
| US8560764B2 (en) * | 2009-12-21 | 2013-10-15 | Intel Corporation | Repurposing NAND ready/busy pin as completion interrupt |
| CN108932961A (zh) * | 2018-07-20 | 2018-12-04 | 江苏华存电子科技有限公司 | 一种利用闪存引脚提升反应速率方法 |
| US11735268B2 (en) * | 2020-12-30 | 2023-08-22 | Micron Technology, Inc. | Memory devices for suspend and resume operations |
| US11977776B2 (en) * | 2022-02-24 | 2024-05-07 | Silicon Motion, Inc. | Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes |
-
2023
- 2023-09-14 TW TW112135155A patent/TWI875191B/zh active
-
2024
- 2024-08-19 CN CN202411135200.8A patent/CN119620931A/zh active Pending
- 2024-08-26 US US18/815,467 patent/US20250094073A1/en active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070274134A1 (en) * | 2006-05-25 | 2007-11-29 | Frankie Roohparvar | Method and apparatus for improving storage performance using a background erase |
| CN101479806B (zh) * | 2006-05-25 | 2012-10-10 | 美光科技公司 | 用于使用后台擦除改善存储性能的方法及设备 |
| TW201230039A (en) * | 2010-12-23 | 2012-07-16 | Sandisk Technologies Inc | Manual suspend and resume for non-volatile memory |
| CN104407997B (zh) * | 2014-12-18 | 2017-09-19 | 中国人民解放军国防科学技术大学 | 带有指令动态调度功能的与非型闪存单通道同步控制器 |
| TWI735918B (zh) * | 2019-01-24 | 2021-08-11 | 慧榮科技股份有限公司 | 用來進行記憶裝置的存取管理之方法、記憶裝置及其控制器、主裝置以及電子裝置 |
Also Published As
| Publication number | Publication date |
|---|---|
| TW202512201A (zh) | 2025-03-16 |
| CN119620931A (zh) | 2025-03-14 |
| US20250094073A1 (en) | 2025-03-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110109851B (zh) | 具有主机和存储器控制器的电子系统及其操作方法 | |
| US8812784B2 (en) | Command executing method, memory controller and memory storage apparatus | |
| US8386699B2 (en) | Method for giving program commands to flash memory for writing data according to a sequence, and controller and storage system using the same | |
| US8898375B2 (en) | Memory controlling method, memory controller and memory storage apparatus | |
| CN113808649B (zh) | 存储器装置及其操作方法 | |
| US9081662B2 (en) | Memory storage device, memory controller thereof, and method for programming data thereof | |
| CN111045593B (zh) | 用来进行读取加速的方法以及数据存储装置及其控制器 | |
| US11307803B2 (en) | Storage device for suspending program operation and performing read operation and operating method thereof | |
| KR20190010335A (ko) | 레이턴시 정보를 저장하는 저장 장치, 프로세서 및 컴퓨팅 시스템 | |
| US10776042B2 (en) | Methods for garbage collection and apparatuses using the same | |
| CN111722795A (zh) | 存储系统以及用于控制存储系统的方法 | |
| CN103106155B (zh) | 存储器储存装置、存储器控制器与其数据传输方法 | |
| CN112214163A (zh) | 存储器控制器以及包括其的存储器系统 | |
| CN113424165B (zh) | 在存储器子系统处的编程操作的中断 | |
| CN102023811B (zh) | 对闪存下达程序化指令的方法和系统 | |
| US20230384936A1 (en) | Storage device, electronic device including storage device, and operating method thereof | |
| CN106484315A (zh) | 读取及写入命令排程方法以及使用该方法的装置 | |
| TWI875191B (zh) | 快閃記憶體控制器和執行快取擦除操作的方法 | |
| KR20200042358A (ko) | 메모리 장치 및 이의 동작 방법 | |
| US11538518B2 (en) | Memory device to suspend ROM operation and a method of operating the memory device | |
| US9778864B2 (en) | Data storage device using non-sequential segment access and operating method thereof | |
| CN113495695A (zh) | 用于存取命令的高速缓存标识符 | |
| US10394486B2 (en) | Methods for garbage collection in a flash memory and apparatuses using the same | |
| US20250328287A1 (en) | Memory systems, memory controllers, control methods, and storage mediums | |
| US20260016988A1 (en) | Computing system for storing data and method of operating the same |