TWI468946B - 用來進行主裝置指揮運作之方法以及記憶裝置及控制器 - Google Patents

用來進行主裝置指揮運作之方法以及記憶裝置及控制器 Download PDF

Info

Publication number
TWI468946B
TWI468946B TW100114615A TW100114615A TWI468946B TW I468946 B TWI468946 B TW I468946B TW 100114615 A TW100114615 A TW 100114615A TW 100114615 A TW100114615 A TW 100114615A TW I468946 B TWI468946 B TW I468946B
Authority
TW
Taiwan
Prior art keywords
controller
master device
command
associated information
memory
Prior art date
Application number
TW100114615A
Other languages
English (en)
Other versions
TW201243614A (en
Inventor
Ming Yen Lin
Hsu Ping Ou
Original Assignee
Silicon Motion Inc
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 Silicon Motion Inc filed Critical Silicon Motion Inc
Priority to TW100114615A priority Critical patent/TWI468946B/zh
Priority to US13/425,444 priority patent/US8924634B2/en
Publication of TW201243614A publication Critical patent/TW201243614A/zh
Application granted granted Critical
Publication of TWI468946B publication Critical patent/TWI468946B/zh

Links

Classifications

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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Description

用來進行主裝置指揮運作之方法以及記憶裝置及控制器
本發明係有關於快閃記憶體(Flash Memory)之存取(Access),尤指一種用來進行主裝置指揮運作(Host-Directed Operation)之方法以及相關之記憶裝置及其控制器。
近年來由於快閃記憶體的技術不斷地發展,各種可攜式記憶裝置(例如:符合SD/MMC、CF、MS、XD標準之記憶卡)或具備快閃記憶體之固態硬碟(Solid State Drive,SSD)被廣泛地實施於諸多應用中。因此,這些記憶裝置中之快閃記憶體的存取控制遂成為相當熱門的議題。
以常用的NAND型快閃記憶體而言,其主要可區分為單階細胞(Single Level Cell,SLC)與多階細胞(Multiple Level Cell,MLC)兩大類之快閃記憶體。單階細胞快閃記憶體中之每個被當作記憶單元的電晶體只有兩種電荷值,分別用來表示邏輯值0與邏輯值1。另外,多階細胞快閃記憶體中之每個被當作記憶單元的電晶體的儲存能力則被充分利用,係採用較高的電壓來驅動,以透過不同級別的電壓在一個電晶體中記錄兩組(或以上)位元資訊(00、01、11、10);理論上,多階細胞快閃記憶體的記錄密度可以達到單階細胞快閃記憶體的記錄密度之兩倍,這對於曾經在發展過程中遇到瓶頸的NAND型快閃記憶體之相關產業而言,是非常好的消息。
相較於單階細胞快閃記憶體,由於多階細胞快閃記憶體之價格較便宜,並且在有限的空間裡可提供較大的容量,故多階細胞快閃記憶體很快地成為市面上之可攜式記憶裝置競相採用的主流。然而,多階細胞快閃記憶體的不穩定性所導致的問題也一一浮現。為了確保記憶裝置對快閃記憶體之存取控制能符合相關規範,快閃記憶體的控制器通常備有某些管理機制以妥善地管理資料之存取。
依據相關技術,有了這些管理機制的記憶裝置還是有不足之處。為了檢測出各種可能發生之問題,快閃記憶體賣主(Vendor)通常會設計一組或多組特殊指令以供內建於記憶裝置中之程式碼當中,以便在有需要時對快閃記憶體進行測試。在某些狀況下,快閃記憶體賣主可能不便將該些特殊指令直接給予記憶體控制器賣主。另外,在某些狀況下,該些特殊指令可能相當複雜且整體指令數量可能相當龐大,故快閃記憶體賣主通常需要針對每一個特殊指令和記憶體控制器賣主進行多次溝通;而這些額外的溝通工作往往會耗費許多工時和人力而降低雙方的工作效率。因此,需要一種新穎的方法來進行主裝置指揮運作(Host-Directed Operation),以在不更改記憶裝置中之程式碼的狀況下,於進行快閃記憶體測試時能提供主裝置直接進行指揮之功能。
因此本發明之目的之一在於提供一種用來進行主裝置指揮運作(Host-Directed Operation)之方法以及相關之記憶裝置及其控制器,以解決上述問題。
本發明之另一目的在於提供一種用來進行主裝置指揮運作之方法以及相關之記憶裝置及其控制器,以在不更改記憶裝置中之程式碼的狀況下,於進行快閃記憶體(Flash Memory)測試時能提供主裝置(Host Device)直接進行指揮之功能。
本發明之另一目的在於提供一種用來進行主裝置指揮運作之方法以及相關之記憶裝置及其控制器,以在不更改記憶裝置中之程式碼的狀況下,提供具備彈性之測試平台予快閃記憶體賣主(Vendor)。
本發明之較佳實施例中提供一種用來進行主裝置指揮運作之方法,該方法係應用於一快閃記憶體之控制器,該快閃記憶體包含複數個區塊,該方法包含有:於該控制器之一測試模式中,當自一主裝置接收到一主裝置指令時,擷取該主裝置指令之關聯資訊之至少一部分,其中該關聯資訊之該至少一部分係為藉由對一主裝置指揮運作指令進行編碼所產生之編碼結果;以及依據至少一預定規則分析該關聯資訊之該至少一部分,以進行對應於該主裝置指揮運作指令之一主裝置指揮運作。
本發明於提供上述方法之同時,亦對應地提供一種記憶裝置,其包含有:一快閃記憶體,該快閃記憶體包含複數個區塊;以及一控制器,用來存取(Access)該快閃記憶體以及管理該複數個區塊。另外,於該控制器之一測試模式中,當自一主裝置接收到一主裝置指令時,該控制器擷取該主裝置指令之關聯資訊之至少一部分,其中該關聯資訊之該至少一部分係為藉由對一主裝置指揮運作指令進行編碼所產生之編碼結果。此外,該控制器依據至少一預定規則分析該關聯資訊之該至少一部分,以進行對應於該主裝置指揮運作指令之一主裝置指揮運作。
本發明於提供上述方法之同時,亦對應地提供一種記憶裝置之控制器,該控制器係用來存取一快閃記憶體,該快閃記憶體包含複數個區塊,該控制器包含有:一唯讀記憶體(Read Only Memory,ROM),用來儲存至少一程式碼之至少一部分;以及一微處理器,用來執行該程式碼以控制對該快閃記憶體之存取以及管理該複數個區塊。另外,於該控制器之一測試模式中,當自一主裝置接收到一主裝置指令時,該控制器擷取該主裝置指令之關聯資訊之至少一部分,其中該關聯資訊之該至少一部分係為藉由對一主裝置指揮運作指令進行編碼所產生之編碼結果。此外,該控制器依據至少一預定規則分析該關聯資訊之該至少一部分,以進行對應於該主裝置指揮運作指令之一主裝置指揮運作。
請參考第1A圖,第1A圖為依據本發明一第一實施例之一種記憶裝置100的示意圖,其中本實施例之記憶裝置100尤其係為可攜式記憶裝置(例如:符合SD/MMC、CF、MS、XD標準之記憶卡)或固態硬碟(SSD,Solid State Drive)等。記憶裝置100包含有:一快閃記憶體(Flash Memory)120,其包含複數個區塊(Block),而該複數個區塊包含至少一系統內碼(In-System Program Code,ISP Code)區塊120B;以及一控制器,用來存取(Access)快閃記憶體120,其中該控制器例如一記憶體控制器110。依據本實施例,記憶體控制器110包含一微處理器112、一唯讀記憶體(Read Only Memory,ROM)112M、一控制邏輯114、至少一緩衝記憶體116、與一介面邏輯118。另外,本實施例之唯讀記憶體112M係用來儲存一程式碼112C,而微處理器112則用來執行程式碼112C以控制對快閃記憶體120之存取。請注意到,程式碼112C亦得儲存在緩衝記憶體116或任何形式之記憶體內。
如第1A圖所示,上述之至少一系統內碼區塊120B係用來儲存系統內碼120C,而微處理器112亦可執行系統內碼120C以控制對快閃記憶體120之存取,其中系統內碼120C可視為程式碼112C之擴展。藉由利用第1A圖所示之架構,本實施例中可以節省唯讀記憶體112M之容量及相關成本。這只是為了說明的目的而已,並非對本發明之限制。依據本實施例之不同的變化例,諸如第1B圖所示之實施例,在唯讀記憶體112M之容量及相關成本並非主要考量議題的狀況下,系統內碼120C可以整合至第1A圖所示之程式碼112C以產生第1B圖所示之程式碼112C’。
實作上,透過微處理器112執行至少一程式碼(諸如程式碼112C、系統內碼120C、及/或程式碼112C’)之記憶體控制器110可利用其本身內部之元件來進行諸多控制運作,例如:利用控制邏輯114來控制快閃記憶體120之存取運作(尤其是對至少一區塊或至少一頁之存取運作)、利用緩衝記憶體116進行所需之緩衝處理、以及利用介面邏輯118來與一主裝置(Host Device)溝通。
依據本實施例,除了能存取快閃記憶體120,該控制器還能妥善地管理上述之複數個區塊。該控制器可運作於一正常模式,其中該正常模式可用來為終端使用者存取資料。另外,該控制器亦可運作於一測試模式,其中該測試模式可用來進行各種組合之主裝置指揮運作(Host-Directed Operation),以達到進行上述快閃記憶體測試之目標。請參考第2圖,相關細節進一步說明如下。
第2圖為依據本發明一實施例之一種進行主裝置指揮運作之方法910的流程圖。該方法可應用於在第1A圖或第1B圖所示實施例中之任一者之記憶裝置100,尤其是上述之控制器(例如:透過微處理器112執行上述至少一程式碼之記憶體控制器110)。該方法說明如下:
於步驟912中,於該控制器之該測試模式中,當自該主裝置接收到一主裝置指令時,該控制器擷取該主裝置指令之關聯資訊之至少一部分,其中該關聯資訊之該至少一部分係為藉由對一主裝置指揮運作指令進行編碼所產生之編碼結果。尤其是,該關聯資訊可代表關聯於該主裝置指令之引數、參數、及/或位址。為了簡明起見,以下可採用位址作為該關聯資訊之一例。然而,本發明並不以此為限。
於步驟914中,該控制器依據至少一預定規則分析該關聯資訊之該至少一部分,以進行對應於該主裝置指揮運作指令之一主裝置指揮運作。尤其是,上述之至少一預定規則包含對應於至少一預定編碼規則之至少一預定解碼規則,而步驟912所述之關聯資訊係藉由依據該至少一預定編碼規則來進行編碼所產生。依據本實施例,該控制器可依據一映射表分析該關聯資訊之該至少一部分,以決定該主裝置指揮運作指令,其中該映射表代表上述之至少一預定規則。
依據本實施例,該主裝置指令可視為虛擬主裝置指令,這是因為在該控制器於該測試模式中自該主裝置接收到該主裝置指令的狀況下,該控制器所進行的運作通常異於該控制器於該正常模式中所進行的運作。例如:該主裝置指令係為針對一特定位址之一讀取指令,而該控制器於該正常模式中接收到該讀取指令時,會針對該特定位址進行讀取運作。然而,該控制器於該測試模式中接收到該讀取指令時,會進行該主裝置指揮運作。藉由利用虛擬主裝置指令,本實施例之控制器可以在不大幅地增加晶片面積以及相關成本的狀況下很容易地實施。
另外,在上述之快閃記憶體賣主(Vendor)的需求不斷地改變的狀況下,上述之至少一程式碼(諸如程式碼112C、系統內碼120C、及/或程式碼112C’)可維持不變,而不必一再地修改。基於以上揭露之架構,上述之快閃記憶體賣主可分別依據各種不同的預定編碼規則組合複數個主裝置指揮運作指令來產生各種相對應的指令組,以取代上述之一組或多組特殊指令,其中該控制器可依據對應於一特定預定編碼規則之一特定預定解碼規則進行分析,以執行對應於一特定指令組之運作。因此,本發明可在不更改記憶裝置100中之程式碼的狀況下,於進行快閃記憶體測試時能提供該主裝置直接進行指揮之功能。
第3A圖繪示第2圖所示之方法910於一實施例中之實施細節。此工作流程說明如下:
於步驟932中,該控制器監控自該主裝置接收到之指令。例如:該控制器可每次只監控一個指令,以供進一步判斷。又例如:該控制器可監控自該主裝置接收到之多個正常主裝置指令。又例如:在該控制器在其它步驟(例如步驟933)進行判斷運作之後,重新進入步驟932,而該控制器可繼續監控指令運作。
於步驟933中,該控制器判斷是否進入該測試模式。依據本實施例,於該控制器之該正常模式中,該控制器可偵測自該主裝置接收到之複數個正常主裝置指令所構成之序列,以判斷是否進入該測試模式。尤其是,於該正常模式中,該控制器偵測該序列是否與一預定序列吻合,以判斷是否進入該測試模式。當該序列與該預定序列吻合,進入步驟934;否則,重新進入步驟932。
於步驟934中,該控制器進行主裝置指揮運作。尤其是,該控制器可進行多次步驟912與步驟914所揭露之運作,諸如對應於一組虛擬主裝置指令之底層運作。其後,重新進入步驟934,其中該控制器可進行對應於另一組虛擬主裝置指令之底層運作。
實作上,上述之預定序列可設計成極度不可能發生之序列,甚至是根本不可能發生之序列,以避免於步驟933中造成錯誤的判斷而影響第3A圖所示工作流程之正確性。另外,本實施例之該控制器偵測自該主裝置接收到之複數個正常主裝置指令所構成之序列,以判斷是否進入該測試模式。這只是為了說明的目的而已,並非對本發明之限制。依據本實施例之某些變化例,於該正常模式中,該控制器偵測是否自該主裝置接收到一模式切換指令,以判斷是否進入該測試模式。
第3B圖繪示第2圖所示之方法910於另一實施例中之實施細節。本實施例係為第3A圖所示實施例之變化例,其中於執行步驟934之後,進入步驟935。
於步驟935中,該控制器判斷是否離開該測試模式。依據本實施例,於該控制器之該測試模式中,該控制器可藉由進行步驟914所揭露之分析運作判斷目前所考慮之主裝置指揮運作指令是否指出該控制器應離開該測試模式。當偵測到該主裝置指揮運作指令指出該控制器應離開該測試模式,結束第3B圖所示之工作流程;否則,重新進入步驟934。本實施例與前述各個實施例/變化例相仿之處不再重複贅述。
依據本實施例之變化例,步驟935可整合至步驟934內,成為步驟934的多個子步驟當中之最後一個子步驟。本變化例與前述各個實施例/變化例相仿之處不再重複贅述。
第3C圖繪示第2圖所示之方法910於另一實施例中之實施細節。本實施例係為第3B圖所示實施例之變化例,其中針對步驟935,當偵測到該主裝置指揮運作指令指出該控制器應離開該測試模式,重新進入步驟932;否則,重新進入步驟934。本實施例與前述各個實施例/變化例相仿之處不再重複贅述。
第4圖繪示第2圖所示之方法910於一實施例中所涉及之訊號,尤其是快閃記憶體120之相關訊號諸如晶片致能訊號CE0、快閃記憶體輸入輸出訊號FLASH_IO、讀取致能訊號RE、寫入致能訊號WE、指令致能(Command Line Enable)訊號CLE、位址致能(Address Line Enable)訊號ALE、與讀取忙碌(Read Busy)訊號RB0。
為了便於理解,第4圖當中標示了分別對應於複數個主裝置指令諸如讀取指令Read_Address(010000000000)、Read_Address(026000000000)、Read_Address(03CC00000000)、Read_Address(03BB00000000)、Read_Address(03DD00000000)、與Read_Address(02D000000000)之時間點T1、T2、T3、T4、T5、與T6,其中這些讀取指令之關聯資訊分別為位址010000000000、026000000000、03CC00000000、03BB00000000、03DD00000000、與02D000000000。步驟912所述之該關聯資訊之該至少一部分可代表位址010000000000、026000000000、03CC00000000、03BB00000000、03DD00000000、與02D000000000中之任一者之左四位數(以十六進位而言),諸如數值0100、0260、03CC、03BB、03DD、或02D0。依據本實施例,步驟914所述之至少一預定規則(尤其是該映射表)指出上述之四位數中之左兩位數(例如:數值01、02、03、03、03、或02)代表某些主裝置指揮運作指令,其中數值01、02、與03分別代表控制晶片致能訊號CE0之晶片致能指令、控制指令致能訊號CLE之指令致能指令、與控制位址致能訊號ALE之位址致能指令。另外,步驟914所述之至少一預定規則(尤其是該映射表)指出上述之四位數中之右兩位數(例如:數值00、60、CC、BB、DD、或D0)代表該些主裝置指揮運作指令之補充資訊,其意義依照所考慮之主裝置指揮運作指令而定。
舉例而言,當步驟912所述之主裝置指令為讀取指令Read_Address(010000000000)時,該控制器控制對應於晶片0(其係快閃記憶體120中之快閃記憶體晶片)之晶片致能訊號CE0至其致能狀態(於本實施例係為低位準)以致能晶片0,其中上述之右兩位數諸如數值00代表晶片0。當步驟912所述之主裝置指令為讀取指令Read_Address(026000000000)時,該控制器暫時地控制指令致能訊號CLE至其致能狀態(於本實施例係為高位準)並傳送抹除指令,其中上述之右兩位數諸如數值60代表抹除指令,其於第4圖中係標示為「0X60」。當步驟912所述之主裝置指令為讀取指令Read_Address(03CC00000000)時,該控制器暫時地控制位址致能訊號ALE至其致能狀態(於本實施例係為高位準)並傳送位址CC,其中上述之右兩位數諸如數值CC代表位址,其於第4圖中係標示為「0XCC」。當步驟912所述之主裝置指令為讀取指令Read_Address(03BB00000000)時,該控制器暫時地控制位址致能訊號ALE至其致能狀態(於本實施例係為高位準)並傳送位址BB,其中上述之右兩位數諸如數值BB代表位址,其於第4圖中係標示為「0XBB」。當步驟912所述之主裝置指令為讀取指令Read_Address(03DD00000000)時,該控制器暫時地控制位址致能訊號ALE至其致能狀態(於本實施例係為高位準)並傳送位址DD,其中上述之右兩位數諸如數值DD代表位址,其於第4圖中係標示為「0XDD」。當步驟912所述之主裝置指令為讀取指令Read_Address(02D000000000)時,該控制器暫時地控制指令致能訊號CLE至其致能狀態(於本實施例係為高位準)並傳送結束指令以使快閃記憶體120開始作動,其中上述之右兩位數諸如數值D0代表結束指令,其於第4圖中係標示為「0XD0」,用來控制快閃記憶體120開始作動。於是,在快閃記憶體120作動時(時間點T6起的一段時間),對應於晶片0之讀取忙碌訊號RB0暫時地處於一忙碌狀態(於本實施例係為低位準)。
依據本實施例,在該控制器處於該測試模式之狀況下,當該主裝置將一組虛擬主裝置指令(例如:讀取指令Read_Address(010000000000)、Read_Address(026000000000)、Read_Address(03CC00000000)、Read_Address(03BB00000000)、Read_Address(03DD00000000)、Read_Address(02D000000000)...等)傳送予記憶裝置100,即可指揮記憶裝置100之某些相對應的底層運作。請注意,在該控制器處於該正常模式之狀況下,該主裝置無法隨意控制這些底層運作。於本實施例中,這些底層運作可達到直接抹除某些區塊的目標。
依據本實施例之一變化例,在該控制器處於該測試模式之狀況下,當該主裝置將另一組虛擬主裝置指令諸如讀取指令Read_Address(010000000000)、Read_Address(028000000000)、Read_Address(03AA00000000)、Read_Address(03BB00000000)、Read_Address(041100000000)、Read_Address(042200000000)、Read_Address(021000000000)...等傳送予記憶裝置100,即可指揮記憶裝置100之某些相對應的底層運作。於本變化例中,這些底層運作可達到直接寫入資料11、22到位址AA、BB的區塊之目標。
更明確而言,當步驟912所述之主裝置指令為讀取指令Read_Address(010000000000)時,該控制器控制對應於晶片0之晶片致能訊號CE0至其致能狀態以致能晶片0,其中上述之右兩位數諸如數值00代表晶片0。當步驟912所述之主裝置指令為讀取指令Read_Address(028000000000)時,該控制器暫時地控制指令致能訊號CLE至其致能狀態並傳送寫入指令,其中上述之右兩位數諸如數值80代表寫入指令。當步驟912所述之主裝置指令為讀取指令Read_Address(03AA00000000)時,該控制器暫時地控制位址致能訊號ALE至其致能狀態並傳送位址AA,其中上述之右兩位數諸如數值AA代表位址。當步驟912所述之主裝置指令為讀取指令Read_Address(03BB00000000)時,該控制器暫時地控制位址致能訊號ALE至其致能狀態並傳送位址BB,其中上述之右兩位數諸如數值BB代表位址。當步驟912所述之主裝置指令為讀取指令Read_Address(041100000000)時,該控制器傳送資料11,其中上述之左兩位數諸如數值04代表「僅僅寫入資料」(Write Data Only),而上述之右兩位數諸如數值11代表資料。當步驟912所述之主裝置指令為讀取指令Read_Address(042200000000)時,該控制器傳送資料22,其中上述之右兩位數諸如數值22代表資料。當步驟912所述之主裝置指令為讀取指令Read_Address(02D000000000)時,該控制器暫時地控制指令致能訊號CLE至其致能狀態並傳送結束指令以使快閃記憶體120開始作動,其中上述之右兩位數諸如數值D0代表結束指令,用來控制快閃記憶體120開始作動。
本發明的好處之一是,本發明可在不更改記憶裝置中之程式碼的狀況下,於進行快閃記憶體測試時能提供該主裝置直接進行指揮之功能。相較於相關技術,本發明之方法以及相關之記憶裝置及其控制器可大幅地提昇快閃記憶體賣主與記憶體控制器賣主雙方的工作效率。
以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。
100...記憶裝置
110...記憶體控制器
112‧‧‧微處理器
112C,112C’‧‧‧程式碼
112M‧‧‧唯讀記憶體
114‧‧‧控制邏輯
116‧‧‧緩衝記憶體
118‧‧‧介面邏輯
120‧‧‧快閃記憶體
120B‧‧‧系統內碼區塊
120C‧‧‧系統內碼
910‧‧‧用來進行主裝置指揮運作之方法
912,914,932,933,934,935‧‧‧步驟
ALE,CE0,CLE,FLASH_IO,RB0,RE,WE‧‧‧訊號
T1,T2,T3,T4,T5,T6‧‧‧時間點
0XAA,0X60,0XCC,0XBB,0XDD,0XD0‧‧‧訊號所載之資訊
第1A圖為依據本發明一第一實施例之一種記憶裝置的示意圖。
第1B圖為依據本發明一第二實施例之一種記憶裝置的示意圖。
第2圖為依據本發明一實施例之一種用來進行主裝置指揮運作(Host-Directed Operation)之方法的流程圖。
第3A圖至第3C圖繪示第2圖所示之方法於不同的實施例中之實施細節。
第4圖繪示第2圖所示之方法於一實施例中所涉及之訊號。
910...用來進行主裝置指揮運作之方法
912,914...步驟

Claims (21)

  1. 一種用來進行主裝置指揮運作(Host-Directed Operation)之方法,該方法係應用於一快閃記憶體(Flash Memory)之控制器,該快閃記憶體包含複數個區塊,該方法包含有:於該控制器之一測試模式中,當自一主裝置(Host Device)接收到一主裝置指令時,擷取該主裝置指令之關聯資訊之至少一部分,其中該關聯資訊之該至少一部分係為藉由對一主裝置指揮運作指令進行編碼所產生之編碼結果;以及依據至少一預定規則分析該關聯資訊之該至少一部分,以進行對應於該主裝置指揮運作指令之一主裝置指揮運作;其中該主裝置指令係為虛擬主裝置指令,其中在該控制器於該測試模式中自該主裝置接收到該主裝置指令的狀況下,該控制器所進行的運作異於該控制器於一正常模式中所進行的運作。
  2. 如申請專利範圍第1項所述之方法,其另包含有:於該控制器之該正常模式中,偵測自該主裝置接收到之複數個正常主裝置指令所構成之序列,以判斷是否進入該測試模式。
  3. 如申請專利範圍第2項所述之方法,其中偵測自該主裝置接收到之該複數個正常主裝置指令所構成之該序列以判斷是否進入該測試模式之步驟另包含:於該正常模式中,偵測該序列是否與一預定序列吻合,以判斷 是否進入該測試模式。
  4. 如申請專利範圍第1項所述之方法,其另包含有:於該控制器之該正常模式中,偵測是否自該主裝置接收到一模式切換指令,以判斷是否進入該測試模式。
  5. 如申請專利範圍第1項所述之方法,其中該至少一預定規則包含對應於至少一預定編碼規則之至少一預定解碼規則;以及該關聯資訊係藉由依據該至少一預定編碼規則來進行編碼所產生。
  6. 如申請專利範圍第1項所述之方法,其中依據該至少一預定規則分析該關聯資訊之該至少一部分以進行對應於該主裝置指揮運作指令之該主裝置指揮運作之步驟另包含:依據一映射表分析該關聯資訊之該至少一部分,以決定該主裝置指揮運作指令,其中該映射表代表該至少一預定規則。
  7. 如申請專利範圍第1項所述之方法,其中該關聯資訊代表關聯於該主裝置指令之引數、參數、及/或位址。
  8. 一種記憶裝置,其包含有:一快閃記憶體(Flash Memory),該快閃記憶體包含複數個區塊;以及一控制器,用來存取(Access)該快閃記憶體以及管理該複數 個區塊,其中於該控制器之一測試模式中,當自一主裝置(Host Device)接收到一主裝置指令時,該控制器擷取該主裝置指令之關聯資訊之至少一部分,其中該關聯資訊之該至少一部分係為藉由對一主裝置指揮運作指令進行編碼所產生之編碼結果;其中該控制器依據至少一預定規則分析該關聯資訊之該至少一部分,以進行對應於該主裝置指揮運作指令之一主裝置指揮運作;以及該主裝置指令係為虛擬主裝置指令,其中在該控制器於該測試模式中自該主裝置接收到該主裝置指令的狀況下,該控制器所進行的運作異於該控制器於一正常模式中所進行的運作。
  9. 如申請專利範圍第8項所述之記憶裝置,其中於該控制器之該正常模式中,該控制器偵測自該主裝置接收到之複數個正常主裝置指令所構成之序列,以判斷是否進入該測試模式。
  10. 如申請專利範圍第9項所述之記憶裝置,其中於該正常模式中,該控制器偵測該序列是否與一預定序列吻合,以判斷是否進入該測試模式。
  11. 如申請專利範圍第8項所述之記憶裝置,其中於該控制器之該正常模式中,該控制器偵測是否自該主裝置接收到一模式切換指令,以判斷是否進入該測試模式。
  12. 如申請專利範圍第8項所述之記憶裝置,其中該至少一預定規則包含對應於至少一預定編碼規則之至少一預定解碼規則;以及該關聯資訊係藉由依據該至少一預定編碼規則來進行編碼所產生。
  13. 如申請專利範圍第8項所述之記憶裝置,其中該控制器依據一映射表分析該關聯資訊之該至少一部分,以決定該主裝置指揮運作指令,而該映射表代表該至少一預定規則。
  14. 如申請專利範圍第8項所述之記憶裝置,其中該關聯資訊代表關聯於該主裝置指令之引數、參數、及/或位址。
  15. 一種記憶裝置之控制器,該控制器係用來存取(Access)一快閃記憶體(Flash Memory),該快閃記憶體包含複數個區塊,該控制器包含有:一唯讀記憶體(Read Only Memory,ROM),用來儲存至少一程式碼之至少一部分;以及一微處理器,用來執行該程式碼以控制對該快閃記憶體之存取以及管理該複數個區塊,其中於該控制器之一測試模式中,當自一主裝置(Host Device)接收到一主裝置指令時,該控制器擷取該主裝置指令之關聯資訊之至少一部分,其中該關聯資訊之該至少一部分係為藉由對一主裝置指揮 運作指令進行編碼所產生之編碼結果;其中該控制器依據至少一預定規則分析該關聯資訊之該至少一部分,以進行對應於該主裝置指揮運作指令之一主裝置指揮運作;以及該主裝置指令係為虛擬主裝置指令,其中在該控制器於該測試模式中自該主裝置接收到該主裝置指令的狀況下,該控制器所進行的運作異於該控制器於一正常模式中所進行的運作。
  16. 如申請專利範圍第15項所述之控制器,其中於該控制器之該正常模式中,該控制器偵測自該主裝置接收到之複數個正常主裝置指令所構成之序列,以判斷是否進入該測試模式。
  17. 如申請專利範圍第16項所述之控制器,其中於該正常模式中,該控制器偵測該序列是否與一預定序列吻合,以判斷是否進入該測試模式。
  18. 如申請專利範圍第15項所述之控制器,其中於該控制器之該正常模式中,該控制器偵測是否自該主裝置接收到一模式切換指令,以判斷是否進入該測試模式。
  19. 如申請專利範圍第15項所述之控制器,其中該至少一預定規則包含對應於至少一預定編碼規則之至少一預定解碼規則;以及該關聯資訊係藉由依據該至少一預定編碼規則來進行編碼 所產生。
  20. 如申請專利範圍第15項所述之控制器,其中該控制器依據一映射表分析該關聯資訊之該至少一部分,以決定該主裝置指揮運作指令,而該映射表代表該至少一預定規則。
  21. 如申請專利範圍第15項所述之控制器,其中該關聯資訊代表關聯於該主裝置指令之引數、參數、及/或位址。
TW100114615A 2011-04-27 2011-04-27 用來進行主裝置指揮運作之方法以及記憶裝置及控制器 TWI468946B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW100114615A TWI468946B (zh) 2011-04-27 2011-04-27 用來進行主裝置指揮運作之方法以及記憶裝置及控制器
US13/425,444 US8924634B2 (en) 2011-04-27 2012-03-21 Method for performing host-directed operations, and associated memory device and controller thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW100114615A TWI468946B (zh) 2011-04-27 2011-04-27 用來進行主裝置指揮運作之方法以及記憶裝置及控制器

Publications (2)

Publication Number Publication Date
TW201243614A TW201243614A (en) 2012-11-01
TWI468946B true TWI468946B (zh) 2015-01-11

Family

ID=47068865

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100114615A TWI468946B (zh) 2011-04-27 2011-04-27 用來進行主裝置指揮運作之方法以及記憶裝置及控制器

Country Status (2)

Country Link
US (1) US8924634B2 (zh)
TW (1) TWI468946B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2677692B1 (en) * 2012-06-18 2019-07-24 Renesas Electronics Europe Limited Communication controller
TWI514389B (zh) * 2012-09-03 2015-12-21 Silicon Motion Inc 快閃記憶體控制器和快閃記憶體控制方法
US20140359196A1 (en) * 2013-05-31 2014-12-04 Daniel J. Ragland On-the-fly performance adjustment for solid state storage devices
CN113918082B (zh) * 2020-07-08 2024-03-08 慧荣科技股份有限公司 计算机可读取存储介质、配置可靠命令的方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671836B1 (en) * 1999-09-23 2003-12-30 Rambus Inc. Method and apparatus for testing memory
US20090063913A1 (en) * 2003-08-28 2009-03-05 Renesas Technology Corp. Semiconductor integrated circuit
US20090063916A1 (en) * 2007-08-28 2009-03-05 Thomas Vogelsang Method for self-test and self-repair in a multi-chip package environment
TW201106366A (en) * 2009-08-10 2011-02-16 Silicon Motion Inc Data storage device and method for writing test data pattern to a memory
TW201108237A (en) * 2009-04-28 2011-03-01 Synopsys Inc A runtime programmable BIST for testing a multi-port memory device

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671836B1 (en) * 1999-09-23 2003-12-30 Rambus Inc. Method and apparatus for testing memory
US20090063913A1 (en) * 2003-08-28 2009-03-05 Renesas Technology Corp. Semiconductor integrated circuit
US20090063916A1 (en) * 2007-08-28 2009-03-05 Thomas Vogelsang Method for self-test and self-repair in a multi-chip package environment
TW201108237A (en) * 2009-04-28 2011-03-01 Synopsys Inc A runtime programmable BIST for testing a multi-port memory device
TW201106366A (en) * 2009-08-10 2011-02-16 Silicon Motion Inc Data storage device and method for writing test data pattern to a memory

Also Published As

Publication number Publication date
US8924634B2 (en) 2014-12-30
US20120278540A1 (en) 2012-11-01
TW201243614A (en) 2012-11-01

Similar Documents

Publication Publication Date Title
US9043536B2 (en) Method of recording mapping information, and memory controller and memory storage apparatus using the same
US8898375B2 (en) Memory controlling method, memory controller and memory storage apparatus
US9176865B2 (en) Data writing method, memory controller, and memory storage device
TWI592865B (zh) 資料讀取方法、資料寫入方法及使用所述方法的儲存控制器
US9304900B2 (en) Data reading method, memory controller, and memory storage device
JP2015156251A (ja) ダイナミックマルチモード動作を有する不揮発性メモリ
US11126369B1 (en) Data storage with improved suspend resume performance
US9213631B2 (en) Data processing method, and memory controller and memory storage device using the same
TWI698749B (zh) 資料儲存裝置與資料處理方法
CN111400201B (zh) 快闪存储器的数据整理方法、存储装置及控制电路单元
TW201711049A (zh) 用來管理一記憶裝置之方法以及記憶裝置與控制器
CN104765569A (zh) 数据写入方法、存储器控制电路单元与存储器储存装置
TWI802068B (zh) 記憶體效能優化方法、記憶體控制電路單元以及記憶體儲存裝置
TWI468946B (zh) 用來進行主裝置指揮運作之方法以及記憶裝置及控制器
CN107239225B (zh) 存储器管理方法、存储器储存装置及存储器控制电路单元
US9733832B2 (en) Buffer memory accessing method, memory controller and memory storage device
US9146861B2 (en) Memory address management method, memory controller and memory storage device
CN102890653A (zh) 指令执行方法、存储器控制器与存储器储存装置
US9710374B2 (en) Data writing method, memory controller and memory storage device
US20230021668A1 (en) Temperature control method, memory storage apparatus, and memory control circuit unit
US9229798B2 (en) Error handling method, memory storage device and memory controlling circuit unit
US9268554B2 (en) Controlling method, memory controller, and data transmission system
CN107102814B (zh) 存储器管理方法、存储器控制电路单元与存储器存储装置
TWI523016B (zh) 用來管理一記憶裝置之方法以及記憶裝置與控制器
US11144244B2 (en) Command transmitting method with temporary storing commands by memory interfaces for rewritable non-volatile memory modules, memory control circuit unit and memory storage device