TWI467382B - 用於非揮發性記憶體的資料寫入方法及其控制器與儲存系統 - Google Patents
用於非揮發性記憶體的資料寫入方法及其控制器與儲存系統 Download PDFInfo
- Publication number
- TWI467382B TWI467382B TW99141041A TW99141041A TWI467382B TW I467382 B TWI467382 B TW I467382B TW 99141041 A TW99141041 A TW 99141041A TW 99141041 A TW99141041 A TW 99141041A TW I467382 B TWI467382 B TW I467382B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- data
- interface
- state
- memory dies
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明是有關於一種用於非揮發性記憶體的資料寫入方法及使用此方法的可複寫式非揮發性記憶體控制器與可複寫式非揮發性記憶體儲存系統。
數位相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體(rewritable non-volatile memory)具有資料非揮發性、省電、體積小與無機械結構等的特性,適合可攜式應用,最適合使用於這類可攜式由電池供電的產品上。隨身碟就是一種以可複寫式非揮發性記憶體作為儲存媒體的儲存裝置。由於可複寫式非揮發性記憶體體積小容量大,所以已廣泛用於個人重要資料的儲存。因此,近年可複寫式非揮發性記憶體產業成為電子產業中相當熱門的一環。
可複寫式非揮發性記憶體儲存裝置中的記憶體晶粒具有多個實體區塊(physical block),且每一實體區塊具有多個實體頁面(physical page),其中在實體區塊中寫入資料時必須依據實體頁面的順序依序地寫入資料。一般來說,寫入資料至實體頁面的程序可區分為資料傳輸(transfer)以及資料程式化(program)兩個部分。具體來說,當欲在記憶體晶粒的實體頁面中儲存資料時,可複寫式非揮發性記憶體儲存裝置的控制電路首先會將資料傳輸至記憶體晶粒內的緩衝區中。之後,記憶體晶粒會將緩衝區內的資料程式化至頁面中。在可複寫式非揮發性記憶體儲存裝置的控制電路傳輸資料至記憶體晶粒的期間,記憶體晶粒是處於一傳輸狀態。並且,當資料被程式化至實體頁面的期間,記憶體晶粒是處於一忙碌(busy)狀態。
為了提升可複寫式非揮發性記憶體儲存裝置的寫入速度,可複寫式非揮發性記憶體儲存裝置會配置多個記憶體晶粒並且以交錯方式或平行方式來寫入資料。例如,以配置有經由一條資料輸入/輸出匯流排與控制電路耦接之第一與第二記憶體晶粒的可複寫式非揮發性記憶體儲存裝置為例,當主機系統欲在可複寫式非揮發性記憶體儲存裝置中儲存多筆頁資料(即,資料長度為大於1個頁面的資料)時,控制電路可將其中一個頁資料傳輸至第一記憶體晶粒。之後,在第一記憶體晶粒處於忙碌狀態期間,控制電路可將另一個頁資料傳輸至第二記憶體晶粒。接著,在第二記憶體晶粒處於忙碌狀態時,控制電路可將另一個頁資料傳輸至第一記憶體晶粒,由此交錯地將欲寫入的頁資料傳輸至第一記憶體晶粒與第二記憶體晶粒,以縮短寫入資料的時間。
特別是,當記憶體晶粒處於傳輸狀態或忙碌狀態時,在記憶體晶粒會需要電源以執行資料傳輸或資料程式化。然而,對於使用資料傳輸介面所提供之電力作為主要電源的隨身碟來說,當多顆記憶體晶粒一起作動(即,處於忙碌狀態或傳輸狀態)時,資料傳輸介面所提供之電力可能會不足而造成可複寫式非揮發性記憶體儲存裝置的不穩定。
本發明提供一種用於快閃記憶體的資料寫入方法,其能夠避免可複寫式非揮發性記憶體儲存裝置因資料傳輸介面所提供之電力不足而造成之不穩定。
本發明提供一種可複寫式非揮發性記憶體控制器,其所執行的資料寫入方法能夠避免可複寫式非揮發性記憶體儲存裝置因資料傳輸介面所提供之電力不足而造成之不穩定。
本發明提供一種可複寫式非揮發性記憶體儲存系統,其能夠避免因資料傳輸介面所提供之電力不足而造成之不穩定。
本發明範例實施例提出一種資料寫入方法,用於將來自於主機系統的資料寫入至可複寫式非揮發性記憶體儲存裝置的多個記憶體晶粒中,其中可複寫式非揮發性記憶體儲存裝置的主機介面耦接至主機系統的資料傳輸介面。本資料寫入方法包括依據一資訊判斷主機系統的資料傳輸介面是相容於第一介面規格或第二介面規格。當主機系統的資料傳輸介面相容於第一介面規格時使用一般模式將資料寫入至記憶體晶粒中,並且當主機系統的資料傳輸介面相容於第二介面規格時使用第一省電模式或第二省電模式將資料寫入至記憶體晶粒中。在此,在一般模式中同時被作動的記憶體晶粒的數目不大於第一數量並且該些記憶體晶粒是作動在一第一運作頻率中。在第一省電模式中同時被作動的記憶體晶粒的數目不大於第二數量,其中第二數量小於第一數量。在第二省電模式中該些記憶體晶粒是作動在第二運作頻率中,其中第二運作頻率小於第一運作頻率。
在本發明之一實施例中,上述之資料寫入方法更包括:從主機介面中接收一偵測訊號以獲得上述資訊或者測量資料傳輸介面的傳輸速度以獲得上述該資訊。
在本發明之一實施例中,上述之使用一般模式將資料寫入至記憶體晶粒中的步驟包括:使用交錯寫入模式將資料寫入至上述記憶體晶粒中。在本發明之一實施例中,上述之使用第一省電模式將資料寫入至記憶體晶粒中的步驟包括:不使用交錯寫入模式將資料寫入至上述記憶體晶粒中。
在本發明之一實施例中,上述之第一介面規格為一通用序列匯流排版本3.0規格(Universal Serial Bus Revision 3.0 Specification),並且第二介面規格為一通用序列匯流排版本2.0規格(Universal Serial Bus Revision 2.0 Specification)。
在本發明之一實施例中,上述之使用第一省電模式將資料寫入至此些記憶體晶粒中的步驟包括:記錄上述記憶體晶粒之中處於忙碌狀態的記憶體晶粒的數目;記錄上述記憶體晶粒之中處於傳輸狀態的記憶體晶粒的數目;判斷處於忙碌狀態的記憶體晶粒的數目和處於傳輸狀態的記憶體晶粒的數目的總和是否小於預設門檻值;以及當處於忙碌狀態的記憶體晶粒的數目和處於傳輸狀態的記憶體晶粒的數目的總和小於此預設門檻值時,將資料寫入至記憶體晶粒的其中之一,其中寫入此資料的記憶體晶粒非處於忙碌狀態或傳輸狀態。
在本發明之一實施例中,上述之記錄記憶體晶粒之中處於忙碌狀態的記憶體晶粒的數目的步驟包括:監控對應每一記憶體晶粒的閒置-忙碌訊號;當對應其中一個記憶體晶粒的閒置-忙碌訊號從閒置狀態變為忙碌狀態時,在忙碌狀態清單中加入此記憶體晶粒;當對應此記憶體晶粒的閒置-忙碌訊號從忙碌狀態變為閒置狀態時,在忙碌狀態清單中移除此記憶體晶粒;以及依據忙碌狀態清單計算記憶體晶粒之中處於忙碌狀態的記憶體晶粒的數目。在本發明之一實施例中,上述之記錄記憶體晶粒之中處於傳輸狀態的記憶體晶粒的數目的步驟包括:監控對應每一記憶體晶粒的待命-傳輸訊號;當對應其中一個記憶體晶粒的待命-傳輸訊號從一待命狀態變為傳輸狀態時,在傳輸狀態清單中加入此記憶體晶粒;當對應此記憶體晶粒的待命-傳輸訊號從傳輸狀態變為待命狀態時,在傳輸狀態清單中移除此記憶體晶粒;以及依據傳輸狀態清單計算記憶體晶粒之中處於傳輸狀態的記憶體晶粒的數目。
本發明範例實施例提出一種可複寫式非揮發性記憶體控制器,其包括主機介面、可複寫式非揮發性記憶體介面與記憶體管理單元。主機介面用以耦接至主機系統的資料傳輸介面。可複寫式非揮發性記憶體介面用以耦接至上述記憶體晶粒。記憶體管理單元耦接主機介面與可複寫式非揮發性記憶體介面,其中此記憶體管理電路用以依據一資訊判斷資料傳輸介面是相容於第一介面規格或第二介面規格。當資料傳輸介面相容於第一介面規格時,記憶體管理電路用以使用一般模式將資料寫入至記憶體晶粒中,其中在一般模式中同時被作動的記憶體晶粒的數目不大於第一數量。當資料傳輸介面相容於第二介面規格時,記憶體管理電路用以使用第一省電模式將資料寫入至記憶體晶粒中,其中在第一省電模式中同時被作動的記憶體晶粒的數目不大於第二數量,其中第二數量小於第一數量。
在本發明之一實施例中,上述之記憶體管理電路從主機介面中接收一偵測訊號以獲得上述資訊或者測量資料傳輸介面的傳輸速度以獲得上述資訊。
在本發明之一實施例中,在上述一般模式中,記憶體管理電路使用交錯寫入模式將資料寫入至記憶體晶粒中,而在第一省電模式中,記憶體管理電路不使用交錯寫入模式將資料寫入至記憶體晶粒中。
在本發明之一實施例中,在上述之第一省電模式中,記憶體管理電路用以記錄記憶體晶粒之中處於忙碌狀態的記憶體晶粒的數目,記錄記憶體晶粒之中處於一傳輸狀態的記憶體晶粒的數目,判斷處於忙碌狀態的記憶體晶粒的數目和處於傳輸狀態的記憶體晶粒的數目的一總和是否小於一預設門檻值,以及當處於忙碌狀態的記憶體晶粒的數目和處於傳輸狀態的記憶體晶粒的數目的總和小於預設門檻值時,將資料寫入至記憶體晶粒的其中之一,其中寫入此資料的記憶體晶粒非處於忙碌狀態或傳輸狀態。
在本發明之一實施例中,上述之記憶體管理電路更用以監控對應每一記憶體晶粒的閒置-忙碌訊號。當對應此些記憶體晶粒之中的其中一個記憶體晶粒的閒置-忙碌訊號從閒置狀態變為忙碌狀態時,記憶體管理電路更用以在忙碌狀態清單中加入此記憶體晶粒。當對應此記憶體晶粒的閒置-忙碌訊號從忙碌狀態變為閒置狀態時,記憶體管理電路更用以在忙碌狀態清單中移除此個記憶體晶粒。此外,記憶體管理電路更用以依據忙碌狀態清單計算記憶體晶粒之中處於忙碌狀態的記憶體晶粒的數目,監控對應每一記憶體晶粒的待命-傳輸訊號。再者,當對應其中一個記憶體晶粒的待命-傳輸訊號從待命狀態變為傳輸狀態時,記憶體管理電路更用以在傳輸狀態清單中加入此記憶體晶粒。並且,當對應此記憶體晶粒的待命-傳輸訊號從傳輸狀態變為待命狀態時,記憶體管理電路更用以在傳輸狀態清單中移除此記憶體晶粒。另外,記憶體管理電路更用以依據傳輸狀態清單計算此些記憶體晶粒之中處於傳輸狀態的記憶體晶粒的數目。
本發明範例實施例提出一種可複寫式非揮發性記憶體儲存系統,其包括連接器、具有多個記憶體晶粒的記憶體模組與耦接至此記憶體模組的可複寫式非揮發性記憶體控制器。在此,此可複寫式非揮發性記憶體控制器用以依據資訊判斷資料傳輸介面是相容於第一介面規格或第二介面規格。當資料傳輸介面相容於第一介面規格時,可複寫式非揮發性記憶體控制器更用以使用一般模式將資料寫入至記憶體晶粒中,其中在一般模式中同時被作動的記憶體晶粒的數目不大於第一數量。當資料傳輸介面相容於該第二介面規格時,可複寫式非揮發性記憶體控制器更用以使用第一省電模式將資料寫入至記憶體晶粒中,其中在第一省電模式中同時被作動的記憶體晶粒的數目不大於第二數量,其中第二數量小於第一數量。
在本發明之一實施例中,在上述之可複寫式非揮發性記憶體控制器從主機介面中接收偵測訊號以獲得上述資訊或者測量資料傳輸介面的傳輸速度以獲得上述資訊。
在本發明之一實施例中,在上述一般模式中可複寫式非揮發性記憶體控制器使用交錯寫入模式將資料寫入至記憶體晶粒中。此外,在上述第一省電模式中可複寫式非揮發性記憶體控制器不使用交錯寫入模式將資料寫入至記憶體晶粒中。
本發明範例實施例提出一種可複寫式非揮發性記憶體控制器,用於將來自於一主機系統的資料寫入至多個記憶體晶粒中。本可複寫式非揮發性記憶體控制器包括主機介面、可複寫式非揮發性記憶體介面、電源管理電路與記憶體管理電路。主機介面用以耦接至主機系統的資料傳輸介面,並且可複寫式非揮發性記憶體介面用以耦接至此些記憶體晶粒。電源管理電路具有一鎖相迴路。記憶體管理電路是耦接至主機介面、可複寫式非揮發性記憶體介面與電源管理電路。電源管理電路用以依據一資訊判斷資料傳輸介面是相容於第一介面規格或第二介面規格。當資料傳輸介面相容於第一介面規格時,鎖相迴路用以產生第一運作頻率以提供給記憶體管理電路與此些記憶體晶粒,並且記憶體管理電路在第一運作頻率下將資料寫入至此些記憶體晶粒中。此外,當資料傳輸介面相容於第二介面規格時,鎖相迴路用以產生第二運作頻率以提供給記憶體管理電路與此些記憶體晶粒,並且記憶體管理電路在第二運作頻率下將資料寫入至此些記憶體晶粒中。
在本發明之一實施例中,上述之電源管理電路從主機介面中接收一偵測訊號以獲得上述資訊。
本發明範例實施例提出一種可複寫式非揮發性記憶體儲存系統,其包括連接器、記憶體模組與可複寫式非揮發性記憶體控制器。連接器耦接至主機系統,記憶體模組具有多個記憶體晶粒,並且可複寫式非揮發性記憶體控制器耦接至記憶體模組。可複寫式非揮發性記憶體控制器用以依據一資訊判斷資料傳輸介面是相容於第一介面規格或第二介面規格。當資料傳輸介面相容於第一介面規格時,可複寫式非揮發性記憶體控制器用以產生第一運作頻率以提供該些記憶體模組,並且在第一運作頻率下將資料寫入至該些記憶體晶粒中。此外,當資料傳輸介面相容於第二介面規格時,可複寫式非揮發性記憶體控制器用以產生第二運作頻率以提供給記憶體模組,並且在第二運作頻率下將資料寫入至此些記憶體晶粒中。
在本發明之一實施例中,上述之可複寫式非揮發性記憶體控制器從資料傳輸介面中獲取一偵測訊號以獲得上述資訊。
基於上述,本發明範例實施例的資料寫入方法能夠在以同時使用多個記憶體晶粒來寫入資料時,避免因電源不足所造成之不穩定。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
為了能夠避免上述因資料傳輸介面之供電不足而造成的系統的不穩定,本發明能夠根據不同的資料傳輸介面使用不同之資料寫入模式的方法。如圖1所示,在此方法中,首先,會判斷主機系統的資料傳輸介面是相容於第一介面規格或第二介面規格(S101)。倘若資料傳輸介面相容於第一介面規格時,資料會藉由使用一般模式來寫入至記憶體晶粒中(S103),其中在一般模式中記憶體晶粒之中同時被作動的記憶體晶粒的數目不大於第一數量並且此些記憶體晶粒是作動在第一運作頻率中。倘若資料傳輸介面相容於第二介面規格時,資料會藉由使用第一省電模式或第二省電模式來寫入至記憶體晶粒中(S105),其中在第一省電模式中此些記憶體晶粒之中同時被作動的記憶體晶粒的數目不大於第二數量,其中,第二數量小於第一數量。若是操作在第二省電模式中,此些記憶體晶粒是作動在第二運作頻率中,其中,第二頻率小於第一頻率。為了能夠更清楚地瞭解本發明,以下以數個範例實施例來進行說明。
一般而言,可複寫式非揮發性記憶體儲存裝置(亦稱,可複寫式非揮發性記憶體儲存系統)包括記憶體模組與控制器(亦稱,控制電路)。通常可複寫式非揮發性記憶體儲存裝置會與主機系統一起使用,以使主機系統可將資料寫入至可複寫式非揮發性記憶體儲存裝置或從可複寫式非揮發性記憶體儲存裝置中讀取資料。另外,亦有可複寫式非揮發性記憶體儲存裝置是包括嵌入式可複寫式非揮發性記憶體與可執行於主機系統上以實質地作為此嵌入式可複寫式非揮發性記憶體之控制器的軟體。
圖2A是根據本發明第一範例實施例所繪示之使用可複寫式非揮發性記憶體儲存裝置的主機系統。
請參照圖2A,主機系統1000一般包括電腦1100與輸入/輸出(input/output,I/O)裝置1106。電腦1100包括微處理器1102、隨機存取記憶體(random access memory,RAM)1104、系統匯流排1108以及資料傳輸介面1110。輸入/輸出裝置1106包括如圖2B的滑鼠1202、鍵盤1204、顯示器1206與印表機1208。必須瞭解的是,圖2B所示的裝置非限制輸入/輸出裝置1106,輸入/輸出裝置1106可更包括其他裝置。
在本發明實施例中,可複寫式非揮發性記憶體儲存裝置100是透過資料傳輸介面1110與主機系統1000的其他元件耦接。藉由微處理器1102、隨機存取記憶體1104與輸入/輸出裝置1106的處理可將資料寫入至可複寫式非揮發性記憶體儲存裝置100或從可複寫式非揮發性記憶體儲存裝置100中讀取資料。例如,可複寫式非揮發性記憶體儲存裝置100可以是如圖2B所示的隨身碟1212、記憶卡1214或固態硬碟(Solid State Drive,SSD)1216。
一般而言,主機系統1000可實質地為可儲存資料的任意系統。雖然在本範例實施例中,主機系統1000是以電腦系統來作說明,然而,在本發明另一範例實施例中主機系統1000可以是數位相機、攝影機、通信裝置、音訊播放器或視訊播放器等系統。例如,在主機系統為數位相機(攝影機)1310時,可複寫式非揮發性記憶體儲存裝置則為其所使用的SD卡1312、MMC卡1314、記憶棒(memory stick)1316、CF卡1318或嵌入式儲存裝置1320(如圖2C所示)。嵌入式儲存裝置1320包括嵌入式多媒體卡(Embedded MMC,eMMC)。值得一提的是,嵌入式多媒體卡是直接耦接於主機系統的基板上。
圖3是繪示圖2A所示的可複寫式非揮發性記憶體儲存裝置的概要方塊圖。
請參照圖3,可複寫式非揮發性記憶體儲存裝置100包括連接器102、可複寫式非揮發性記憶體控制器104與記憶體模組106。
連接器102是耦接至可複寫式非揮發性記憶體控制器104並且用以耦接至主機系統1000。在本範例實施例中,連接器102為通用序列匯流排(Universal Serial Bus,USB)連接器並且符合USB 3.0規格。然而,必須瞭解的是本發明不限於此,連接器102亦可以其他適合的連接器。
可複寫式非揮發性記憶體控制器104會執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統1000的指令在記憶體模組106中進行資料的寫入、讀取與抹除等運作。
圖4是根據本發明第一範例實施例所繪示的可複寫式非揮發性記憶體控制器的概要方塊圖。
請參照圖4,可複寫式非揮發性記憶體控制器104包括記憶體管理電路204、主機介面206、可複寫式非揮發性記憶體介面208。
記憶體管理電路204用以控制可複寫式非揮發性記憶體控制器104的整體運作。具體來說,記憶體管理電路204具有多個控制指令,並且在可複寫式非揮發性記憶體儲存裝置100運作時,此些控制指令會被執行以根據本範例實施例的資料寫入機制與記憶體管理機制來管理記憶體模組106。此些資料寫入機制與記憶體管理機制將於以下配合圖式作詳細說明。
在本範例實施例中,記憶體管理電路204的控制指令是以一韌體型式來實作。例如,記憶體管理電路204具有一微處理器單元(未繪示)與一唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當可複寫式非揮發性記憶體儲存裝置100運作時,此些控制指令會由微處理器單元來執行以完成根據本發明實施例的資料寫入機制與記憶體管理機制。
在本發明另一範例實施例中,記憶體管理電路204的控制指令亦可以程式碼型式儲存於記憶體模組106的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路204具有一微處理器單元(未繪示)、一唯讀記憶體(未繪示)及一隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有一驅動碼段,並且當可複寫式非揮發性記憶體控制器104被致能時,微處理器單元會先執行此驅動碼段來將儲存於記憶體模組106中之控制指令載入至記憶體管理電路204的隨機存取記憶體中,之後再運轉此些控制指令以執行本發明範例實施例的資料存取機制與記憶體管理機制。此外,在本發明另一範例實施例中,記憶體管理電路204的控制指令亦可以一硬體型式來實作。
主機介面206是耦接至記憶體管理電路204並且用以接收與識別主機系統1000所傳送的指令與資料。也就是說,主機系統1000所傳送的指令與資料會透過主機介面206來傳送至記憶體管理電路204。在本範例實施例中,主機介面206是對應連接器102為USB介面且符合USB 3.0規格。然而,必須瞭解的是本發明不限於此,主機介面206亦可以是其他適合的資料傳輸介面。
可複寫式非揮發性記憶體介面208是耦接至記憶體管理電路204並且用以存取記憶體模組106。也就是說,欲寫入至記憶體模組106的資料會經由可複寫式非揮發性記憶體介面208轉換為記憶體模組106所能接受的格式。
在本發明一範例實施例中,可複寫式非揮發性記憶體控制器104還包括緩衝記憶體252。緩衝記憶體252是耦接至記憶體管理電路204並且用以暫存來自於主機系統1000的資料與指令或來自於記憶體模組106的資料。
在本發明一範例實施例中,可複寫式非揮發性記憶體控制器104還包括電源管理電路254。電源管理電路254是耦接至記憶體管理電路204並且用以控制可複寫式非揮發性記憶體儲存裝置100的電源。
在本發明一範例實施例中,可複寫式非揮發性記憶體控制器104還包括錯誤校正電路256。錯誤校正電路256是耦接至記憶體管理電路204並且用以執行一錯誤校正程序以確保資料的正確性。具體來說,當記憶體管理電路204從主機系統1000中接收到主機寫入指令時,錯誤校正電路256會為對應此主機寫入指令的寫入資料產生對應的錯誤檢查與校正碼(Error Checking and Correcting Code,ECC Code),並且記憶體管理電路204會將此寫入資料與對應的錯誤校正碼寫入至記憶體模組106中。之後,當記憶體管理電路204從記憶體模組106中讀取資料時會同時讀取此資料對應的錯誤校正碼,並且錯誤校正電路256會依據此錯誤校正碼對所讀取的資料執行錯誤校正程序。
請再參照圖3,記憶體模組106是耦接至可複寫式非揮發性記憶體控制器104。在此,記憶體模組106為多層記憶胞(Multi Level Cell,MLC)反及(NAND)快閃記憶體模組。然而,本發明不限於此,記憶體模組106亦可是單層記憶胞(Single Level Cell,SLC)NAND快閃記憶體模組或其他可複寫式非揮發性記憶體模組。
在本範例實施例中,記憶體模組106可具有記憶體單元200-0~200-7。在本範例實施例中,記憶體單元200-0具有記憶體晶粒210-0與記憶體晶粒210-1,記憶體單元200-1具有記憶體晶粒210-2與記憶體晶粒210-3,記憶體單元200-2具有記憶體晶粒210-4與記憶體210-5,記憶體單元200-3具有記憶體晶粒210-6與記憶體晶粒210-7,記憶體單元200-4具有記憶體晶粒210-8與記憶體晶粒210-9,記憶體單元200-5具有記憶體晶粒210-10與記憶體晶粒210-11,記憶體單元200-6具有記憶體晶粒210-12與記憶體晶粒210-13並且記憶體單元200-7具有記憶體晶粒210-14與記憶體晶粒210-15。
記憶體晶粒210-0~210-15分別地具有多個實體區塊(未繪示)用以儲存資料。在記憶體模組106的設計中,實體區塊為抹除之最小單位。亦即,每一實體區塊含有最小數目之一併被抹除之記憶胞。每一實體區塊具有數個實體頁面,並且實體頁面為程式化的最小單元。換言之,實體頁面為寫入資料或讀取資料的最小單元。每一實體頁面通常包括使用者資料位元區與冗餘位元區。使用者資料位元區用以儲存使用者的資料,而冗餘位元區用以儲存系統的資料(例如,錯誤檢查與校正碼)。
在本範例實施例中,可複寫式非揮發性記憶體控制器104的可複寫式非揮發性記憶體介面208分別地透過資料輸入/輸出匯流排(Data input/output bus)220-0~220-7傳送資料給記憶體單元200-0~200-7或從記憶體單元200-0~200-7中接收資料。具體來說,可複寫式非揮發性記憶體控制器104經由資料輸入/輸出匯流排220-0將資料傳輸至記憶體晶粒210-0與記憶體晶粒210-1。可複寫式非揮發性記憶體控制器104是經由資料輸入/輸出匯流排220-1將資料傳輸至記憶體晶粒210-2與記憶體晶粒210-3。可複寫式非揮發性記憶體控制器104是經由資料輸入/輸出匯流排220-2將資料傳輸至記憶體晶粒210-4與記憶體晶粒210-5。可複寫式非揮發性記憶體控制器104是經由資料輸入/輸出匯流排220-3將資料傳輸至記憶體晶粒210-6與記憶體晶粒210-7。可複寫式非揮發性記憶體控制器104是經由資料輸入/輸出匯流排220-4將資料傳輸至記憶體晶粒210-8與記憶體晶粒210-9。可複寫式非揮發性記憶體控制器104是經由資料輸入/輸出匯流排220-5將資料傳輸至記憶體晶粒210-10與記憶體晶粒210-11。可複寫式非揮發性記憶體控制器104是經由資料輸入/輸出匯流排220-6將資料傳輸至記憶體晶粒210-12與記憶體晶粒210-13。並且,可複寫式非揮發性記憶體控制器104是經由資料輸入/輸出匯流排220-7將資料傳輸至記憶體晶粒210-14與記憶體晶粒210-15。
在本範例實施例中,記憶體晶粒210-0~210-15中的實體區塊會被記憶體管理電路204群組為多個實體單元並且以實體單元為單位來進行管理。特別是每一實體單元可是由每一記憶體晶粒中的至少其中一個實體區塊所組成,因此記憶體管理電路204可使用平行模式(parallel mode)與交錯模式(interleave mode)來提升存取的速度。
具體來說,由於在記憶體模組106中每一記憶體單元可是透過獨立的資料輸入/輸出匯流排與可複寫式非揮發性記憶體控制器104耦接,因此在平行模式中記憶體管理電路204同時經由多條資料輸入/輸出匯流排來傳送寫入資料至對應的記憶體模組,以提升存取速度。也就是說,當欲對一個實體單元進行寫入時,由於實體單元是由屬於不同記憶體單元的實體區塊所組成,因此在平行模式中記憶體管理電路204會將對應不同實體區塊之實體頁面的資料分別地透過多條資料輸入/輸出匯流排來同時傳送與寫入。
再者,由於每一記憶體模組可包括兩個記憶體晶粒,因此在交錯模式中記憶體管理電路204會將資料交錯地傳送至同一記憶體模組內的兩個記憶體晶粒,以更增加存取效能。更詳細來說,如上所述,在記憶體晶粒中寫入資料的過程包括資料傳輸(transfer)以及資料程式化(program)兩個部分。交錯模式(interleave mode)就是在使用同一條資料輸入/輸出匯流排傳輸資料的兩個記憶體晶粒中,利用其中一個記憶體晶粒正執行資料程式化的期間傳送資料給另一個記憶體晶粒。
值得一提的是,在本範例實施例中,當記憶體管理電路204使用平行模式與交錯模式寫入資料時,記憶體管理電路204會依據資料傳輸介面1110所提供的電源來決定是否限制同時作動之記憶體晶粒的數目必須在預設門檻值內。具體來說,可複寫式非揮發性記憶體儲存裝置100是由主機系統1000透過資料傳輸介面1110提供電源來運轉。因此,在可複寫式非揮發性記憶體儲存裝置100中可同時作動的記憶體晶粒的數目會受限於資料傳輸介面1110種類的不同而隨之不同。
例如,在資料傳輸介面1110為符合USB 3.0規格的例子中,資料傳輸介面1110可提供900毫安培的電源。因此,在本範例實施例中,記憶體管理電路204會以不限制同時作動之記憶體晶粒的數目的模式來寫入資料。在此,不限制同時作動之記憶體晶粒的數目的模式亦稱為一般模式。
例如,在資料傳輸介面1110為符合USB 2.0規格的例子中,資料傳輸介面1110僅可提供500毫安培(mA)的電源。因此,記憶體管理電路204會將預設門檻值設定為12以限制同時作動的記憶體晶粒的數目不大於12。也就是說,預設門檻值是根據資料傳輸介面1110的類型來設定。
例如,在本發明一範例實施例中,記憶體管理電路204是從主機介面206中接收一偵測訊號以識別資料傳輸介面1110的類型,並且依此設定此預設門檻值。具體來說,當連接器102連接至資料傳輸介面1110時,主機介面206會偵測資料傳輸介面1110的類型並且記憶體管理電路204可從主機介面206中讀取此偵測訊號。或者,在本發明另一範例實施例中,記憶體管理電路204會偵測資料傳輸介面1110與主機介面206之間的傳輸速度來識別資料傳輸介面1110是屬於那個類型的介面,並且依此設定此預設門檻值。例如,記憶體管理電路204包括一計時器(Timer)(未繪示),並且藉由計時器的計時來測量一段時間內主機系統1000從緩衝記憶體252中讀取之資料量是否大於記憶體管理電路204從記憶體模組106中所讀取之資料量,由此計算主機系統1000接收資料的速度與記憶體模組106送出資料的速度。並且依據主機系統1000接收資料的速度是否接近或大於記憶體模組106送出資料的速度來識別資料傳輸介面的種類。例如,在本範例實施例中,記憶體模組106的記憶體模組是分別經由8條資料輸入/輸出匯流排來傳輸資料。每一資料輸入/輸出匯流排的記憶體模組的讀取速度是每秒320百萬位元(MegaBit),故記憶體模組106的讀取速度為每秒2560百萬位元。在USB 2.0的速度為每秒480百萬位元且USB 3.0的速度每秒5000百萬位元下,倘若主機系統1000讀取資料的速度接近或大於每秒2560百萬位元時,則主機系統1000的資料傳輸介面1110應為USB 3.0。其中,在本範例實施例中,當主機系統1000讀取資料的速度介於2060百萬位元至3060百萬位元之間時可被判定為接近,但亦可由設計者以當時之需求而定,不應以此為限。
在此,限制同時作動之記憶體晶粒的數目的模式亦稱為第一省電模式。
在本範例實施例中,記憶體管理電路204可記錄哪些記憶體晶粒正處於忙碌狀態並且記錄哪些記憶體晶粒正處於傳輸狀態。例如,記憶體管理電路204會藉由一閒置-忙碌訊號來得知此記憶體晶粒是處於正在程式化資料的忙碌狀態或未程式化資料的閒置狀態。此外,記憶體管理電路204會藉由一待命-傳輸訊號來得知此記憶體晶粒是處於正在傳輸資料的傳輸狀態或未傳輸資料的待命狀態。
此外,在本發明範例實施例中,記憶體管理電路204可建立與維護一忙碌狀態清單與一傳輸狀態清單來記錄從閒置-忙碌訊號與待命-傳輸訊號所獲得之資訊。也就是說,當任一記憶體晶粒開始處於忙碌狀態時,記憶體管理電路204會將此記憶體晶粒的編號記錄在忙碌狀態清單中,並且當此記憶體晶粒完成資料程式化(即,處於閒置狀態)時,記憶體管理電路204會將此記憶體晶粒的編號從忙碌狀態清單中移除。類似地,當任一記憶體晶粒開始處於傳輸狀態時,記憶體管理電路204會將此記憶體晶粒的編號記錄在傳輸狀態清單中,並且當此記憶體晶粒完成資料傳輸(即,處於待命狀態)時,記憶體管理電路204會將此記憶體晶粒的編號從傳輸狀態清單中移除。
圖5是根據本發明第一範例實施例所繪示的記錄處於傳輸狀態之記憶體晶粒的流程圖。
請參照圖5,程序400包括由步驟S401、S403與S405所組成的傳輸狀態清單新增任務(Task)與由步驟S407、S409、S411與S413所組成的傳輸狀態清單移除任務。傳輸狀態清單新增任務與傳輸狀態清單移除任務會由記憶體管理電路204於適當時機來啟動並執行,例如進入第一省電模式時執行。
在傳輸狀態清單新增任務中,首先,在步驟S401中記憶體管理電路204會監控對應每一記憶體晶粒的待命-傳輸訊號,並且在步驟S403中記憶體管理電路204會判斷是否有任何記憶體晶粒處於傳輸資料的傳輸狀態。當有記憶體晶粒處於傳輸狀態時,在步驟S405中記憶體管理電路204會將此記憶體晶粒的編號記錄在傳輸狀態清單450中。
在傳輸狀態清單移除任務中,首先,在步驟S407中記憶體管理電路204會依據傳輸狀態清單判斷是否有記憶體晶粒處於傳輸狀態。倘若有記憶體晶粒處於傳輸狀態時,在步驟S409中記憶體管理電路204監控對應記錄於傳輸狀態清單中的記憶體晶粒的待命-傳輸訊號,並且在步驟S411中判斷記錄於傳輸狀態清單中的記憶體晶粒中是否有任何記憶體晶粒處於已完成傳輸資料的待命狀態。例如,記憶體管理電路204會透過中斷或輪詢方式來獲取對應每一記憶體晶粒的待命-傳輸訊號。當有記憶體晶粒處於待命狀態時,在步驟S413中記憶體管理電路204會將此記憶體晶粒的編號從傳輸狀態清單450中移除。
圖6是根據本發明第一範例實施例所繪示的記錄處於忙碌狀態之記憶體晶粒的流程圖。
請參照圖6,程序500包括由步驟S501、S503與S505所組成的忙碌狀態清單新增任務與由步驟S507、S509、S511與S513所組成的忙碌狀態清單移除任務。忙碌狀態清單新增任務與忙碌狀態清單移除任務會由記憶體管理電路204於適當時機來啟動並執行。
在忙碌狀態清單新增任務中,首先,在步驟S501中記憶體管理電路204會監控對應每一記憶體晶粒的閒置-忙碌訊號,並且在步驟S503中記憶體管理電路204會判斷是否有任何記憶體晶粒處於程式化資料的忙碌狀態。當有記憶體晶粒處於忙碌狀態時,在步驟S505中記憶體管理電路204會將此記憶體晶粒的編號記錄在忙碌狀態清單460中。
在忙碌狀態清單移除任務中,首先,在步驟S507中記憶體管理電路204會依據忙碌狀態清單判斷是否有記憶體晶粒處於忙碌狀態。倘若有記憶體晶粒處於忙碌狀態時,在步驟S509中記憶體管理電路204監控對應記錄於忙碌狀態清單中的記憶體晶粒的閒置-忙碌訊號,並且在步驟S511中判斷記錄於忙碌狀態清單中的記憶體晶粒中是否有任何記憶體晶粒處於已完成程式化資料的閒置狀態。例如,記憶體管理電路204會透過中斷或輪詢方式來獲取對應每一記憶體晶粒的閒置-忙碌訊號。當有記憶體晶粒處於閒置狀態時,在步驟S513中記憶體管理電路204會將此記憶體晶粒的編號從忙碌狀態清單460中移除。
在第一省電模式中,每當可複寫式非揮發性記憶體控制器104欲將主機系統1000所寫入之資料寫入至記憶體模組106的記憶體晶粒時,記憶體管理電路204會依據忙碌狀態清單460與傳輸狀態清單450計算在記憶體模組106中目前正處於作動(即,處於忙碌狀態或傳輸狀態)的記憶體晶粒的數目。特別是,僅當在記憶體模組106中目前正處於作動的記憶體晶粒的數目小於預設門檻值時,記憶體管理電路204才會將資料寫入至對應的記憶體晶粒。反之,當在記憶體模組106中目前正處於作動的記憶體晶粒的數目非小於預設門檻值時,記憶體管理電路204會等待並持續監控對應記憶體晶粒的閒置-忙碌訊號與待命-傳輸訊號(如圖5與圖6所示的程序)。
圖7是根據本發明第一範例實施例所繪示在第一省電模式中之資料寫入的流程圖。
請參照圖7,當可複寫式非揮發性記憶體控制器104欲將主機系統1000所寫入之資料寫入至記憶體模組106的記憶體晶粒時,在步驟S601中記憶體管理電路204會依據傳輸狀態清單450來計算處於傳輸狀態的記憶體晶粒的數目,並且在步驟S603中記憶體管理電路204會依據忙碌狀態清單460來計算處於忙碌狀態的記憶體晶粒的數目。
之後,在步驟S605中記憶體管理電路204會加總處於傳輸狀態的記憶體晶粒的數目與處於忙碌狀態的記憶體晶粒的數目以獲得在記憶體模組106中目前正處於作動的記憶體晶粒的數目。
然後,在步驟S607中記憶體管理電路204會判斷在記憶體模組106中目前正處於作動的記憶體晶粒的數目是否小於預設門檻值。倘若目前正處於作動的記憶體晶粒的數目小於預設門檻值時,則在步驟S609中記憶體管理電路204將資料寫入至對應的記憶體晶粒中。反之,步驟S607會被執行。
值得一提的是,在本範例實施例的第一省電模式中,記憶體管理電路204是根據在記憶體模組106中目前正處於作動的記憶體晶粒的數目來決定是否將資料寫入至對應的記憶體晶粒中。然而,在本發明另一範例實施例中,記憶體管理電路204亦可將記憶體單元200-0~200-7分組為數個記憶體單元群,並且同一時間僅允許寫入資料至其中一個記憶體單元群的記憶體晶粒中。在此,分組為同一記憶體單元群之記憶體單元的數目是根據硬體線路的設計及資料傳輸介面能提供之最低電源來設定。
例如,記憶體管理電路204亦可將記憶體單元200-0~200-1分組第1記憶體單元群,將記憶體單元200-2~200-3分組第2記憶體單元群,將記憶體單元200-4~200-5分組第3記憶體單元群,並且將記憶體單元200-6~200-7分組第4記憶體單元群。當需將多筆資料寫入至記憶體單元200-0~200-7時,記憶體管理電路204會先將對應的資料傳輸至記憶體單元200-0~200-1。然後,待記憶體單元200-0~200-1完成寫入時,再將對應的資料傳輸至記憶體單元200-2~200-3。在記憶體單元200-2~200-3完成寫入之後,再將對應的資料傳輸至記憶體單元200-4~200-5。最後,在記憶體單元200-4~200-4完成寫入之後,再將對應的資料傳輸至記憶體單元200-6~200-7。基此,可避免記憶體單元200-0~200-7同時運作。
本發明第二範例實施例的可複寫式非揮發性記憶體儲存裝置與主機系統的硬體結構本質上是相同於第一範例實施例的可複寫式非揮發性記憶體儲存裝置與主機系統的硬體結構。以下將配合圖2A、圖3與圖4並且僅針對差異部分來描述第二範例實施例。
類似第一範例實施例,在本範例實施例中,記憶體管理電路204的程式碼會由微處理器單元來執行以完成資料寫入機制與記憶體管理機制。第一範例實施例與第二範例實施例的不同之處在於,在第一範例實施例的第一省電模式中,記憶體管理電路204會判斷目前同時作動之記憶體晶粒的數目來決定是否立即開始寫入資料。而在第二範例實施例的第一省電模式中,記憶體管理電路204會關閉交錯模式來限制同時作動之記憶體晶粒的數目。
具體來說,記憶體管理電路204會從主機介面206中接收一偵測訊號以識別資料傳輸介面1110的類型。特別是,當資料傳輸介面1110是屬於僅能提供較低電源的傳輸介面(例如USB 2.0)時,記憶體管理電路204不會使用交錯模式來寫入資料以避免可複寫式非揮發性記憶體儲存裝置100的耗電超過資料傳輸介面1110所能提供的電源。例如,在本範例實施例中,在不使用交錯模式下,記憶體管理電路204使用平行模式寫入資料時,同時作動之記憶體晶粒的數目最多為8。
圖8是根據本發明第二範例實施例所繪示的資料寫入的流程圖。
請參照圖8,當可複寫式非揮發性記憶體控制器104欲將主機系統1000所寫入之資料寫入至記憶體模組106的記憶體晶粒時,在步驟S701中記憶體管理電路204會從主機介面206中接收偵測訊號以識別資料傳輸介面1110的類型。
然後,在步驟S703記憶體管理電路204會判斷資料傳輸介面1110是否為相容於能夠提供足夠電源的第一介面(例如,USB 3.0)。
倘若資料傳輸介面1110為相容於能夠提供足夠電源的第一介面時,則在步驟S705中記憶體管理電路204會以交錯模式來寫入資料。
倘若資料傳輸介面1110為不相容於能夠提供足夠電源的第一介面(即,資料傳輸介面1110為相容於不能夠提供足夠電源的第二介面(例如,USB 2.0))時,則在步驟S707中記憶體管理電路204會關閉交錯模式而不使用交錯模式來寫入資料。
圖9是根據本發明第三範例實施例所繪示的可複寫式非揮發性記憶體儲存裝置的概要方塊圖。
請參照圖9,可複寫式非揮發性記憶體儲存裝置800包括連接器102、可複寫式非揮發性記憶體控制器804與記憶體模組106。
可複寫式非揮發性記憶體控制器804會執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統1000的指令在記憶體模組106中進行資料的寫入、讀取與抹除等運作。
可複寫式非揮發性記憶體控制器804包括記憶體管理電路814、主機介面206、可複寫式非揮發性記憶體介面208、緩衝記憶體252、錯誤校正電路256與電源管理電路854。
記憶體管理電路814用以控制可複寫式非揮發性記憶體控制器804的整體運作。具體來說,記憶體管理電路814具有多個控制指令,並且在可複寫式非揮發性記憶體儲存裝置800運作時,此些控制指令會被執行以在記憶體模組106中進行資料的寫入、讀取與抹除等運作。
在第三範例實施例中,類似於第一範例實施例的記憶體管理電路204,記憶體管理電路814可以一韌體型式、程式碼型式或一硬體型式來實作。
電源管理電路854是耦接至記憶體管理電路204並且用以控制可複寫式非揮發性記憶體儲存裝置100的電源。電源管理電路854包括鎖相迴路862,用以產生用於可複寫式非揮發性記憶體控制器804與記憶體模組106的運作頻率。也就是說,可複寫式非揮發性記憶體控制器804與記憶體模組106會依據鎖相迴路862所產生的運作頻率來作動。
在第三範例實施例中,電源管理電路854會識別主機系統1000的資料傳輸介面1110的規格,並且鎖相迴路862會根據資料傳輸介面1110的規格產生不同的運作頻率。例如,電源管理電路854是從主機介面206中接收到偵測訊號以識別資料傳輸介面1110的類型。
具體來說,由於記憶體管理電路814會使用上述平行模式(parallel mode)與交錯模式(interleave mode)來存取記憶體模組106,以提升存取的速度。然而,資料傳輸介面1110所能提供的電源可能會不足,而造成寫入失敗。例如,在同時使用平行模式(parallel mode)與交錯模式(interleave mode)時,記憶體模組106的所有記憶體晶粒可能會同時地運作。然而,倘若資料傳輸介面1110所能提供的電源不足以讓記憶體模組106的所有記憶體晶粒同時地運作時,記憶體管理電路814寫入至記憶體模組106的資料就可能會發生錯誤。
在第三範例實施例中,當資料傳輸介面1110無法提供足夠之電流時,鎖相迴路862會產生較低的運作頻率,以使可複寫式非揮發性記憶體控制器804與記憶體模組106能夠穩定地運作。具體來說,由於電流為某一單位時間所通過的電荷量(即,I=Q/T),因此,電流與頻率成正比。而電流是與功率成正比,因此可推知頻率與功率成正比。基此,使用較低頻率運作下,是較為省電。
例如,如上所述,在資料傳輸介面1110為符合USB 3.0規格的例子中,資料傳輸介面1110可提供900毫安培的電源。因此,在第三範例實施例中,電源管理電路854的鎖相迴路862會產生第一運作頻率(例如,125 MHz),以供可複寫式非揮發性記憶體控制器804與記憶體模組106來使用。
例如,在資料傳輸介面1110為符合USB 2.0規格的例子中,資料傳輸介面1110僅可提供500毫安培的電源。因此,在第三範例實施例中,電源管理電路854的鎖相迴路862會產生第二運作頻率(例如,60 MHz),以供可複寫式非揮發性記憶體控制器804與記憶體模組106來使用。在此,使可複寫式非揮發性記憶體控制器804與記憶體模組106在第二運作頻率下運轉的模式稱為第二省電模式。
基此,無論資料傳輸介面1110為符合USB 2.0規格或USB 3.0規格,可複寫式非揮發性記憶體控制器804與記憶體模組106皆能夠穩定地運作。
圖10是根據本發明第三範例實施例所繪示的資料寫入的流程圖。
請參照圖10,當可複寫式非揮發性記憶體儲存裝置800耦接至主機系統1000時,在步驟S901中,可複寫式非揮發性記憶體控制器104的電源管理電路854會從主機介面206中接收到偵測訊號以識別資料傳輸介面1110的類型。
然後,在步驟S903中,電源管理電路854會判斷資料傳輸介面1110是否為相容於能夠提供足夠電源的第一介面(例如,USB 3.0)。
倘若資料傳輸介面1110為相容於能夠提供足夠電源的第一介面(例如,USB 3.0)時,則在步驟S905中,鎖相迴路862會產生第一運作頻率給記憶體管理電路814與記憶體模組106。然後,在步驟S907中,記憶體管理電路814會在第一運作頻率下將主機系統欲寫入的資料寫入至記憶體模組106。
倘若資料傳輸介面1110為不相容於能夠提供足夠電源的第一介面(即,資料傳輸介面1110為相容於不能夠提供足夠電源的第二介面(例如,USB 2.0))時,則在步驟S909中,鎖相迴路862會產生第二運作頻率給記憶體管理電路814與記憶體模組106。然後,在步驟S911中,記憶體管理電路814會在第二運作頻率下將主機系統欲寫入的資料寫入至記憶體模組106。
綜上所述,本發明範例實施例的資料寫入方法是根據主機系統的資料傳輸介面的類型來使用一般模式或省電模式來寫入資料。基此,可在資料傳輸介面無法提供足夠電源時限制同時作動之記憶體晶粒的數目,由此避免在使用平行模式與交錯模式提升資料寫入速度的狀態下可能造成之系統不穩定。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
1000...主機系統
1100...電腦
1102...微處理器
1104...隨機存取記憶體
1106...輸入/輸出裝置
1108...系統匯流排
1110...資料傳輸介面
1202...滑鼠
1204...鍵盤
1206...顯示器
1208...印表機
1212...隨身碟
1214...記憶卡
1216...固態硬碟
1310...數位相機
1312...SD卡
1314...MMC卡
1316...記憶棒
1318...CF卡
1320...嵌入式儲存裝置
100...可複寫式非揮發性記憶體儲存裝置
102...連接器
104...可複寫式非揮發性記憶體控制器
106...記憶體模組
200-0~200-7...記憶體單元
210-0~210-15...記憶體晶粒
220-1~220-7...資料輸入/輸出匯流排
204...記憶體管理電路
206...主機介面
208...可複寫式非揮發性記憶體介面
252...緩衝記憶體
254...電源管理電路
256...錯誤校正電路
400、500...程序
S401、S403、S405...傳輸狀態清單新增任務的步驟
S407、S409、S411、S413...傳輸狀態清單移除任務的步驟
S501、S503、S505...忙碌狀態清單新增任務的步驟
S507、S509、S511、S513...忙碌狀態清單移除任務的步驟
S601、S603、S605、S607、S609...資料寫入的步驟
S701、S703、S705、S707‧‧‧資料寫入的步驟
800‧‧‧可複寫式非揮發性記憶體儲存裝置
804‧‧‧可複寫式非揮發性記憶體控制器
814‧‧‧記憶體管理電路
854‧‧‧電源管理電路
862‧‧‧鎖相迴路
S901、S903、S905、S907、S909‧‧‧資料寫入的步驟
圖1是根據本發明範例實施例所繪示的資料寫入的概要流程圖。
圖2A是根據本發明第一範例實施例繪示使用可複寫式非揮發性記憶體儲存裝置的主機系統。
圖2B是根據本發明範例實施例所繪示的電腦、輸入/輸出裝置與可複寫式非揮發性記憶體儲存裝置的示意圖。
圖2C是根據本發明另一範例實施例所繪示的主機系統與可複寫式非揮發性記憶體儲存裝置的示意圖。
圖3是繪示圖2A所示的可複寫式非揮發性記憶體儲存裝置的概要方塊圖。
圖4是根據本發明第一範例實施例所繪示的可複寫式非揮發性記憶體控制器的概要方塊圖。
圖5是根據本發明第一範例實施例所繪示的記錄處於傳輸狀態之記憶體晶粒的流程圖。
圖6是根據本發明第一範例實施例所繪示的記錄處於忙碌狀態之記憶體晶粒的流程圖。
圖7是根據本發明第一範例實施例所繪示在省電模式中的資料寫入的流程圖。
圖8是根據本發明第二範例實施例所繪示的資料寫入的流程圖。
圖9是根據本發明第三範例實施例所繪示的可複寫式非揮發性記憶體儲存裝置的概要方塊圖。
圖10是根據本發明第三範例實施例所繪示的資料寫入的流程圖。
S601、S603、S605、S607、S609...資料寫入的步驟
Claims (20)
- 一種資料寫入方法,用於將來自於一主機系統的資料寫入至一可複寫式非揮發性記憶體儲存裝置的多個記憶體晶粒中,其中該可複寫式非揮發性記憶體儲存裝置的一主機介面耦接至該主機系統的一資料傳輸介面,該資料寫入方法包括:依據一資訊判斷該資料傳輸介面是相容於一第一介面規格或一第二介面規格;當該資料傳輸介面相容於該第一介面規格時使用一一般模式將該資料寫入至該些記憶體晶粒中,其中在該一般模式中該些記憶體晶粒之中同時處於一忙碌狀態或一傳輸狀態的記憶體晶粒的數目不大於一第一數量並且該些記憶體晶粒是作動在一第一運作頻率中;以及當該資料傳輸介面相容於該第二介面規格時使用一第一省電模式或一第二省電模式來將該資料寫入至該些記憶體晶粒中,其中在該第一省電模式中該些記憶體晶粒之中同時處於該忙碌狀態或該傳輸狀態的記憶體晶粒的數目不大於一第二數量,其中該第二數量小於該第一數量,其中在該第二省電模式中該些記憶體晶粒是作動在一第二運作頻率中,其中該第二運作頻率小於該第一運作頻率。
- 如申請專利範圍第1項所述之資料寫入方法,更包括: 從該主機介面中接收一偵測訊號以獲得該資訊或者測量該資料傳輸介面的一傳輸速度以獲得該資訊。
- 如申請專利範圍第1項所述之資料寫入方法,其中使用該一般模式將該資料寫入至該些記憶體晶粒中的步驟包括:使用一交錯寫入模式將該資料寫入至該些記憶體晶粒中,其中使用該第一省電模式將該資料寫入至該些記憶體晶粒中的步驟包括:不使用該交錯寫入模式將該資料寫入至該些記憶體晶粒中。
- 如申請專利範圍第1項所述之資料寫入方法,其中該第一介面規格為一通用序列匯流排版本3.0規格(Universal Serial Bus Revision 3.0 Specification),並且該第二介面規格為一通用序列匯流排版本2.0規格(Universal Serial Bus Revision 2.0 Specification)。
- 如申請專利範圍第1項所述之資料寫入方法,其中使用該第一省電模式將該資料寫入至該些記憶體晶粒中的步驟包括:記錄該些記憶體晶粒之中處於該忙碌狀態的記憶體晶粒的數目;記錄該些記憶體晶粒之中處於該傳輸狀態的記憶體晶粒的數目;判斷處於該忙碌狀態的該些記憶體晶粒的數目和處於該傳輸狀態的該些記憶體晶粒的數目的一總和是否小於一預設門檻值;以及 當處於該忙碌狀態的該些記憶體晶粒的數目和處於該傳輸狀態的該些記憶體晶粒的數目的該總和小於該預設門檻值時將該資料寫入至該些記憶體晶粒的其中之一,其中寫入該資料的記憶體晶粒非處於該忙碌狀態或該傳輸狀態。
- 如申請專利範圍第5項所述之資料寫入方法,其中記錄該些記憶體晶粒之中處於該忙碌狀態的記憶體晶粒的數目的步驟包括:監控對應每一該些記憶體晶粒的一閒置-忙碌訊號;當對應該些記憶體晶粒之中的其中一個記憶體晶粒的閒置-忙碌訊號從一閒置狀態變為該忙碌狀態時,在一忙碌狀態清單中加入該其中一個記憶體晶粒;當對應該其中一個記憶體晶粒的閒置-忙碌訊號從該忙碌狀態變為該閒置狀態時,在該忙碌狀態清單中移除該其中一個記憶體晶粒;以及依據該忙碌狀態清單計算該些記憶體晶粒之中處於該忙碌狀態的記憶體晶粒的數目,其中記錄該些記憶體晶粒之中處於該傳輸狀態的記憶體晶粒的數目的步驟包括:監控對應每一該些記憶體晶粒的一待命-傳輸訊號;當對應該些記憶體晶粒之中的其中一個記憶體 晶粒的待命-傳輸訊號從一待命狀態變為該傳輸狀態時,在一傳輸狀態清單中加入該其中一個記憶體晶粒;當對應該其中一個記憶體晶粒的待命-傳輸訊號從該傳輸狀態變為該待命狀態時,在該傳輸狀態清單中移除該其中一個記憶體晶粒;以及依據該傳輸狀態清單計算該些記憶體晶粒之中處於該傳輸狀態的記憶體晶粒的數目。
- 一種可複寫式非揮發性記憶體控制器,用於將來自於一主機系統的資料寫入至多個記憶體晶粒中,該可複寫式非揮發性記憶體控制器包括:一主機介面,用以耦接至該主機系統的一資料傳輸介面;一可複寫式非揮發性記憶體介面,用以耦接至該些記憶體晶粒;以及一記憶體管理電路,耦接至該主機介面與該可複寫式非揮發性記憶體介面,其中該記憶體管理電路用以依據一資訊判斷該資料傳輸介面是相容於一第一介面規格或一第二介面規格,其中當該資料傳輸介面相容於該第一介面規格時,該記憶體管理電路用以使用一一般模式將該資料寫入至該些記憶體晶粒中,其中在該一般模式中該些記憶體晶粒之中同時處於一忙碌狀態或一傳輸狀態的記憶體晶粒的數目不大於一第一數量, 其中當該資料傳輸介面相容於該第二介面規格時,該記憶體管理電路用以使用一第一省電模式將該資料寫入至該些記憶體晶粒中,其中在該第一省電模式中該些記憶體晶粒之中同時處於該忙碌狀態或該傳輸狀態的記憶體晶粒的數目不大於一第二數量,其中該第二數量小於該第一數量。
- 如申請專利範圍第7項所述之可複寫式非揮發性記憶體控制器,其中該記憶體管理電路從該主機介面中接收一偵測訊號以獲得該資訊或者測量該資料傳輸介面的一傳輸速度以獲得該資訊。
- 如申請專利範圍第7項所述之可複寫式非揮發性記憶體控制器,其中在該一般模式中,該記憶體管理電路使用一交錯寫入模式將該資料寫入至該些記憶體晶粒中,其中在該第一省電模式中,該記憶體管理電路不使用該交錯寫入模式將該資料寫入至該些記憶體晶粒中。
- 如申請專利範圍第7項所述之可複寫式非揮發性記憶體控制器,其中在該第一省電模式中,該記憶體管理電路用以記錄該些記憶體晶粒之中處於一忙碌狀態的記憶體晶粒的數目,記錄該些記憶體晶粒之中處於一傳輸狀態的記憶體晶粒的數目,判斷處於該忙碌狀態的該些記憶體晶粒的數目和處於該傳輸狀態的該些記憶體晶粒的數目的一總和是否小於一預設門檻值,以及當處於該忙碌狀態的該些記憶體晶粒的數目和處於該傳輸狀態的該些記憶體晶 粒的數目的該總和小於該預設門檻值時,將該資料寫入至該些記憶體晶粒的其中之一,其中寫入該資料的記憶體晶粒非處於該忙碌狀態或該傳輸狀態。
- 如申請專利範圍第10項所述之可複寫式非揮發性記憶體控制器,其中該記憶體管理電路更用以監控對應每一該些記憶體晶粒的一閒置-忙碌訊號,其中當對應該些記憶體晶粒之中的其中一個記憶體晶粒的閒置-忙碌訊號從一閒置狀態變為該忙碌狀態時,該記憶體管理電路更用以在一忙碌狀態清單中加入該其中一個記憶體晶粒,其中當對應該其中一個記憶體晶粒的閒置-忙碌訊號從該忙碌狀態變為該閒置狀態時,該記憶體管理電路更用以在該忙碌狀態清單中移除該其中一個記憶體晶粒,其中該記憶體管理電路更用以依據該忙碌狀態清單計算該些記憶體晶粒之中處於該忙碌狀態的記憶體晶粒的數目,監控對應每一該些記憶體晶粒的一待命-傳輸訊號,其中當對應該些記憶體晶粒之中的其中一個記憶體晶粒的待命-傳輸訊號從一待命狀態變為該傳輸狀態時,該記憶體管理電路更用以在一傳輸狀態清單中加入該其中一個記憶體晶粒,其中當對應該其中一個記憶體晶粒的待命-傳輸訊號從該傳輸狀態變為該待命狀態時,該記憶體管理電路更用以在該傳輸狀態清單中移除該其中一個記憶體晶粒;以及其中該記憶體管理電路更用以依據該傳輸狀態清單 計算該些記憶體晶粒之中處於該傳輸狀態的記憶體晶粒的數目。
- 一種可複寫式非揮發性記憶體儲存系統,包括:一連接器,耦接至一主機系統的一資料傳輸介面;一記憶體模組,具有多個記憶體晶粒;以及一可複寫式非揮發性記憶體控制器,耦接至該記憶體模組與該連接器,用以依據一資訊判斷該資料傳輸介面是相容於一第一介面規格或一第二介面規格,其中當該資料傳輸介面相容於該第一介面規格時,該可複寫式非揮發性記憶體控制器更用以使用一一般模式將該資料寫入至該些記憶體晶粒中,其中在該一般模式中該些記憶體晶粒之中同時處於一忙碌狀態或一傳輸狀態的記憶體晶粒的數目不大於一第一數量,其中當該資料傳輸介面相容於該第二介面規格時,該可複寫式非揮發性記憶體控制器更用以使用一第一省電模式將該資料寫入至該些記憶體晶粒中,其中在該第一省電模式中該些記憶體晶粒之中同時處於該忙碌狀態或該傳輸狀態的記憶體晶粒的數目不大於一第二數量,其中該第二數量小於該第一數量。
- 如申請專利範圍第12項所述之可複寫式非揮發性記憶體儲存系統,其中該可複寫式非揮發性記憶體控制器從該主機介面中接收一偵測訊號以獲得該資訊或者測量該資料傳輸介面的一傳輸速度以獲得該資訊。
- 如申請專利範圍第12項所述之可複寫式非揮發 性記憶體儲存系統,其中在該一般模式中該可複寫式非揮發性記憶體控制器使用一交錯寫入模式將該資料寫入至該些記憶體晶粒中,其中在該第一省電模式中該可複寫式非揮發性記憶體控制器不使用該交錯寫入模式將該資料寫入至該些記憶體晶粒中。
- 一種可複寫式非揮發性記憶體控制器,用於將來自於一主機系統的資料寫入至多個記憶體晶粒中,該可複寫式非揮發性記憶體控制器包括:一主機介面,用以耦接至該主機系統的一資料傳輸介面;一可複寫式非揮發性記憶體介面,用以耦接至該些記憶體晶粒;一電源管理電路,具有一鎖相迴路;以及一記憶體管理電路,耦接至該主機介面、該可複寫式非揮發性記憶體介面與該電源管理電路,其中該電源管理電路用以依據一資訊來識別該資料傳輸介面的類型,並且根據識別該資料傳輸介面的類型的結果來判斷該資料傳輸介面是相容於一第一介面規格或一第二介面規格,其中當該資料傳輸介面相容於該第一介面規格時,該鎖相迴路用以產生一第一運作頻率以提供給該記憶體管理電路與該些記憶體晶粒,並且該記憶體管理電路在該第一 運作頻率下將該資料寫入至該些記憶體晶粒中,其中當該資料傳輸介面相容於該第二介面規格時,該鎖相迴路用以產生一第二運作頻率以提供給該記憶體管理電路與該些記憶體晶粒,並且該記憶體管理電路在該第二運作頻率下將該資料寫入至該些記憶體晶粒中。
- 如申請專利範圍第15項所述之可複寫式非揮發性記憶體控制器,其中該電源管理電路從該主機介面中接收一偵測訊號以獲得該資訊。
- 如申請專利範圍第15項所述之可複寫式非揮發性記憶體控制器,其中該第一介面規格為一通用序列匯流排版本3.0規格(Universal Serial Bus Revision 3.0 Specification),並且該第二介面規格為一通用序列匯流排版本2.0規格(Universal Serial Bus Revision 2.0 Specification)。
- 一種可複寫式非揮發性記憶體儲存系統,包括:一連接器,耦接至一主機系統;一記憶體模組,具有多個記憶體晶粒;以及一可複寫式非揮發性記憶體控制器,耦接至該記憶體模組,其中該可複寫式非揮發性記憶體控制器用以依據一資訊來識別該資料傳輸介面的類型,並且根據識別該資料傳輸介面的類型的結果來判斷該資料傳輸介面是相容於一第一介面規格或一第二介面規格,其中當該資料傳輸介面相容於該第一介面規格時,該可複寫式非揮發性記憶體控制器用以產生一第一運作頻率 以提供該些記憶體模組,並且在該第一運作頻率下將該資料寫入至該些記憶體晶粒中,其中當該資料傳輸介面相容於該第二介面規格時,該可複寫式非揮發性記憶體控制器用以產生一第二運作頻率以提供給該記憶體模組,並且在該第二運作頻率下將該資料寫入至該些記憶體晶粒中,其中該第二運作頻率小於該第一運作頻率。
- 如申請專利範圍第18項所述之可複寫式非揮發性記憶體儲存系統,其中該可複寫式非揮發性記憶體控制器從該資料傳輸介面中獲取一偵測訊號以獲得該資訊。
- 如申請專利範圍第18項所述之可複寫式非揮發性記憶體儲存系統,其中該第一介面規格為一通用序列匯流排版本3.0規格(Universal Serial Bus Revision 3.0 Specification),並且該第二介面規格為一通用序列匯流排版本2.0規格(Universal Serial Bus Revision 2.0 Specification)。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW99141041A TWI467382B (zh) | 2010-02-12 | 2010-11-26 | 用於非揮發性記憶體的資料寫入方法及其控制器與儲存系統 |
US13/034,686 US8595523B2 (en) | 2010-02-12 | 2011-02-24 | Data writing method for non-volatile memory, and controller and storage system using the same |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW99104816 | 2010-02-12 | ||
TW99141041A TWI467382B (zh) | 2010-02-12 | 2010-11-26 | 用於非揮發性記憶體的資料寫入方法及其控制器與儲存系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201128397A TW201128397A (en) | 2011-08-16 |
TWI467382B true TWI467382B (zh) | 2015-01-01 |
Family
ID=44370420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW99141041A TWI467382B (zh) | 2010-02-12 | 2010-11-26 | 用於非揮發性記憶體的資料寫入方法及其控制器與儲存系統 |
Country Status (2)
Country | Link |
---|---|
US (3) | US8266334B2 (zh) |
TW (1) | TWI467382B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008131058A2 (en) * | 2007-04-17 | 2008-10-30 | Rambus Inc. | Hybrid volatile and non-volatile memory device |
US8595523B2 (en) * | 2010-02-12 | 2013-11-26 | Phison Electronics Corp. | Data writing method for non-volatile memory, and controller and storage system using the same |
US8266334B2 (en) | 2010-02-12 | 2012-09-11 | Phison Electronics Corp. | Data writing method for non-volatile memory, and controller and storage system using the same |
JP5547154B2 (ja) * | 2011-09-21 | 2014-07-09 | 株式会社東芝 | メモリ・デバイス |
CN103853666B (zh) * | 2012-12-04 | 2016-12-21 | 群联电子股份有限公司 | 存储器、其存储控制器与数据写入方法 |
US9026720B2 (en) | 2013-02-07 | 2015-05-05 | Apple Inc. | Non-volatile memory monitoring |
CN104423888B (zh) * | 2013-08-23 | 2017-10-03 | 群联电子股份有限公司 | 数据写入方法、存储器控制电路单元与存储器存储装置 |
US20150089245A1 (en) * | 2013-09-26 | 2015-03-26 | Asher M. Altman | Data storage in persistent memory |
US9218283B2 (en) * | 2013-12-02 | 2015-12-22 | Sandisk Technologies Inc. | Multi-die write management |
TWI498732B (zh) * | 2014-02-20 | 2015-09-01 | Phison Electronics Corp | 資料傳輸方法、記憶體控制電路單元與記憶體儲存裝置 |
US9507704B2 (en) * | 2014-06-13 | 2016-11-29 | Sandisk Technologies Llc | Storage module and method for determining ready/busy status of a plurality of memory dies |
US9870153B2 (en) * | 2014-12-29 | 2018-01-16 | Sandisk Technologies Llc | Non-volatile memory systems utilizing storage address tables |
US11593262B1 (en) * | 2018-04-25 | 2023-02-28 | Seagate Technology Llc | Garbage collection command scheduling |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5619471A (en) * | 1995-06-06 | 1997-04-08 | Apple Computer, Inc. | Memory controller for both interleaved and non-interleaved memory |
US7000134B2 (en) * | 2001-05-18 | 2006-02-14 | Sanyo Electric Co., Ltd. | Controlling the maximum rotation speed of a disk drive device based on the presence of an external power source and the possibility of a buffer underrun |
TW200842873A (en) * | 2006-12-25 | 2008-11-01 | Elpida Memory Inc | Semiconductor memory device and write control method therefor |
US20080320214A1 (en) * | 2003-12-02 | 2008-12-25 | Super Talent Electronics Inc. | Multi-Level Controller with Smart Storage Transfer Manager for Interleaving Multiple Single-Chip Flash Memory Devices |
US20090241122A1 (en) * | 2008-03-18 | 2009-09-24 | International Business Machines Corporation | Selecting a number of processing resources to run an application effectively while saving power |
TW200949534A (en) * | 2008-04-15 | 2009-12-01 | Samsung Electronics Co Ltd | Systems, methods and computer program products for encoding data to be written to a nonvolatile memory based on wear-leveling information |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6622252B1 (en) | 2000-04-12 | 2003-09-16 | International Business Machines Corporation | Data storage device having selectable performance modes for use in dual powered portable devices |
US6944717B2 (en) * | 2001-07-27 | 2005-09-13 | Fujitsu Limited | Cache buffer control apparatus and method using counters to determine status of cache buffer memory cells for writing and reading data therefrom |
JP2005316593A (ja) | 2004-04-27 | 2005-11-10 | Sony Corp | 電力制御装置及び電力制御方法 |
US7606947B2 (en) * | 2004-09-07 | 2009-10-20 | Industrial Technology Research Institute | Removable electronic device and method thereof |
US8266456B2 (en) * | 2007-10-15 | 2012-09-11 | Apple Inc. | Supplying remaining available current to port in excess of bus standard limit |
US8266334B2 (en) | 2010-02-12 | 2012-09-11 | Phison Electronics Corp. | Data writing method for non-volatile memory, and controller and storage system using the same |
-
2010
- 2010-04-21 US US12/764,583 patent/US8266334B2/en active Active
- 2010-11-26 TW TW99141041A patent/TWI467382B/zh active
-
2012
- 2012-05-22 US US13/477,813 patent/US8706948B2/en active Active
- 2012-06-27 US US13/534,557 patent/US8606970B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5619471A (en) * | 1995-06-06 | 1997-04-08 | Apple Computer, Inc. | Memory controller for both interleaved and non-interleaved memory |
US7000134B2 (en) * | 2001-05-18 | 2006-02-14 | Sanyo Electric Co., Ltd. | Controlling the maximum rotation speed of a disk drive device based on the presence of an external power source and the possibility of a buffer underrun |
US20080320214A1 (en) * | 2003-12-02 | 2008-12-25 | Super Talent Electronics Inc. | Multi-Level Controller with Smart Storage Transfer Manager for Interleaving Multiple Single-Chip Flash Memory Devices |
TW200842873A (en) * | 2006-12-25 | 2008-11-01 | Elpida Memory Inc | Semiconductor memory device and write control method therefor |
US20090241122A1 (en) * | 2008-03-18 | 2009-09-24 | International Business Machines Corporation | Selecting a number of processing resources to run an application effectively while saving power |
TW200949534A (en) * | 2008-04-15 | 2009-12-01 | Samsung Electronics Co Ltd | Systems, methods and computer program products for encoding data to be written to a nonvolatile memory based on wear-leveling information |
Also Published As
Publication number | Publication date |
---|---|
US8266334B2 (en) | 2012-09-11 |
TW201128397A (en) | 2011-08-16 |
US8706948B2 (en) | 2014-04-22 |
US20110202690A1 (en) | 2011-08-18 |
US20120233388A1 (en) | 2012-09-13 |
US8606970B2 (en) | 2013-12-10 |
US20120265905A1 (en) | 2012-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI467382B (zh) | 用於非揮發性記憶體的資料寫入方法及其控制器與儲存系統 | |
CN102193747B (zh) | 数据写入方法、可复写式非易失性存储器控制器及系统 | |
TWI479491B (zh) | 記憶體控制方法、記憶體控制器與記憶體儲存裝置 | |
US8595523B2 (en) | Data writing method for non-volatile memory, and controller and storage system using the same | |
US8769192B2 (en) | Data read method for a plurality of host read commands, and flash memory controller and storage system using the same | |
US8392797B2 (en) | Error correcting controller, flash memory chip system, and error correcting method thereof | |
US8074148B2 (en) | Memory management method and controller for non-volatile memory storage device | |
KR102114109B1 (ko) | 데이터 저장 장치 | |
EP2310936A1 (en) | Storage system and method for managing a plurality of storage devices | |
US8423838B2 (en) | Block management method, memory controller, and memory storage apparatus | |
TWI508099B (zh) | 工作時脈切換方法、記憶體控制器與記憶體儲存裝置 | |
US9460004B2 (en) | Memory erasing method, memory controller, and memory storage apparatus | |
US8364856B2 (en) | Memory module with configurable input/output ports | |
US20150081953A1 (en) | Ssd (solid state drive) device | |
US20150052397A1 (en) | Memory system and controlling method of memory system | |
US9965400B2 (en) | Memory management method, memory control circuit unit and memory storage device | |
CN104571933A (zh) | 具固态储存元件的电子装置及其相关控制方法 | |
US11150821B2 (en) | Memory devices with multiple sets of latencies and methods for operating the same | |
US10191659B2 (en) | Buffer memory management method, memory control circuit unit and memory storage device | |
TWI521354B (zh) | 連接器的控制方法、連接器與記憶體儲存裝置 | |
CN102855192A (zh) | 存储器抹除方法、存储器控制器与存储器储存装置 | |
JP2011138289A (ja) | メモリカードドライブ |