TWI497515B - 快閃記憶體控制器、快閃記憶體偵錯方法 - Google Patents

快閃記憶體控制器、快閃記憶體偵錯方法 Download PDF

Info

Publication number
TWI497515B
TWI497515B TW101124724A TW101124724A TWI497515B TW I497515 B TWI497515 B TW I497515B TW 101124724 A TW101124724 A TW 101124724A TW 101124724 A TW101124724 A TW 101124724A TW I497515 B TWI497515 B TW I497515B
Authority
TW
Taiwan
Prior art keywords
flash memory
unit
data line
memory controller
read
Prior art date
Application number
TW101124724A
Other languages
English (en)
Other versions
TW201403614A (zh
Inventor
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 TW101124724A priority Critical patent/TWI497515B/zh
Priority to CN201210308712.0A priority patent/CN103544994B/zh
Priority to US13/750,459 priority patent/US9026895B2/en
Publication of TW201403614A publication Critical patent/TW201403614A/zh
Application granted granted Critical
Publication of TWI497515B publication Critical patent/TWI497515B/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0401Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals in embedded memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction

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)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)
  • Debugging And Monitoring (AREA)

Description

快閃記憶體控制器、快閃記憶體偵錯方法
本揭露係有關於快閃記憶體裝置,特別係有關於一種嵌入式快閃記憶體裝置。
非揮發快閃記憶體(non-volatile memory)被廣泛使用在很多應用中,例如固態硬碟(solid-state disk,SSD)、記憶卡、數位相機、數位攝影機、多媒體播放器、行動電話、電腦和許多其他電子裝置。
然而,當儲存在快閃記憶體中的處理資料(例如韌體firmware)遺失或受損時(亦或者設計錯誤),會導致快閃記憶體控制器的處理單元無法正常操作,使得使用者無法讀取快閃記憶體中的內容。因此,亟需要一種快閃記憶體控制器,使得當儲存在快閃記憶體中的處理資料有錯誤(bug)時,可分析快閃記憶體的資料並確認錯誤所在。
有鑑於此,本揭露一種快閃記憶體控制器,包括:一讀寫單元,連接一快閃記憶體,並用以執行一寫入指令或一讀取指令;一狀態單元,用以判斷快閃記憶體控制器的狀態;一處理單元,連接讀寫單元與狀態單元,用以控制讀寫單元;以及一輔助單元,連接一第一資料線、一第二資料線與處理單元,用以接收並儲存來自處理單元的一字串,其中當快閃記憶體控制器完成寫入資料傳輸後,輔助 單元透過第一資料線與第二資料線輸出字串。
本揭露亦提供一種快閃記憶體偵錯方法,適用於具有一讀寫單元、一狀態單元和一處理單元之一快閃記憶體控制器與一快閃記憶體,包括:藉由快閃記憶體控制器之一輔助單元接收並儲存來自處理單元的一字串;藉由狀態單元判斷快閃記憶體控制器的狀態;以及當快閃記憶體控制器完成寫入資料傳輸後,藉由輔助單元透過一第一資料線與一第二資料線輸出字串。
本揭露亦提供一種快閃記憶體控制器,包括:一讀寫單元,連接一快閃記憶體,並用以執行一寫入指令或一讀取指令;一狀態單元,係用以判斷快閃記憶體控制器的狀態;一處理單元,連接讀寫單元與狀態單元,並且用以控制讀寫單元;以及一輔助單元,連接一第一資料線、一第二資料線、與處理單元,輔助單元係用以接收並儲存來自處理單元的一字串,其中當快閃記憶體控制器啟動讀取資料傳輸前,輔助單元透過第一資料線與第二資料線輸出字串。
本揭露亦提供一種快閃記憶體偵錯方法,適用於具有一讀寫單元、一狀態單元和一處理單元之一快閃記憶體控制器與一快閃記憶體,包括:藉由快閃記憶體控制器之一輔助單元接收並儲存來自處理單元的一字串;藉由狀態單元判斷快閃記憶體控制器的狀態;以及當快閃記憶體控制器啟動讀取資料傳輸前,藉由輔助單元透過一第一資料線與一第二資料線輸出字串。
為了讓本發明之上述和其他目的、特徵、和優點能更 明顯易懂,下文特舉一較佳實施例,並配合所附圖示,作詳細說明如下:
前文已對本發明做各特徵的摘要,請參考本文及附圖,於此將做更詳細的描述。本發明配合附圖做詳細的描述,然而非用以限制本發明。相反的,在不脫離後附之申請專利範圍中所界定的範圍及精神,本發明當可做所有型式的更動及潤飾。
第1圖係本揭露之快閃記憶體控制器190之一示意圖。如第1圖所示,快閃記憶體控制器190包括一讀寫單元(read/write unit)110、一狀態單元(state machine)120、一處理單元130和一輔助單元(auxiliary unit)140。讀寫單元110連接一快閃記憶體150,並用以執行一寫入指令或一讀取指令。處理單元130控制讀寫單元110的操作包含處理單元130指示讀寫單元110執行寫入指令和讀取指令。
詳細而言,讀寫單元110包括一快閃記憶體存取狀態機(flash access state machine)111和一靜態隨機存取記憶體(static random access memory,SRAM)112。快閃記憶體存取狀態機111耦接於處理單元130和快閃記憶體150之間,用以執行一寫入指令或一讀取指令。快閃記憶體150可以是反及閘型(NAND)快閃記憶體(flash memory)或反或閘型(NOR)快閃記憶體。
另外,快閃記憶體存取狀態機111輸出存取信號至快閃記憶體150,存取信號可包括晶片致能信號(CE#)、命令 鎖存(latch)致能信號(CLE)、位址鎖存致能信號(ALE)、寫入致能信號(WE#)、讀取致能信號(RE#)及待命/忙碌信號(R/B#)。靜態隨機存取記憶體112耦接至快閃記憶體存取狀態機111、狀態單元120和處理單元130,用以儲存任何來自於狀態單元120或處理單元130的資料。
狀態單元120耦接於處理單元130與主控裝置(host)(如第2圖之主控裝置270)之間,並且狀態單元120藉由符合嵌入式快閃記憶體規範之一傳輸通道160與主控裝置170進行通訊。換言之,主控裝置170為嵌入式快閃記憶體主控裝置。狀態單元120為一嵌入式快閃記憶體狀態機(embeded multi media card state machine,EMMC state machine)及/或一安全數位記憶卡狀態機(secure digital memory card state machine,SD state machine)
狀態單元120用以判斷快閃記憶體控制器190的狀態。處理單元130連接讀寫單元110與狀態單元120,用以控制讀寫單元110。輔助單元140連接資料線DAT1、DAT2與處理單元130,用以接收並儲存來自處理單元130的偵錯訊息DM1,其中偵錯訊息DM1包含字串(string)ST。當輔助單元140收到一休眠訊號時,輔助單元140暫停運作。需說明的是,當狀態單元120為安全數位記憶卡狀態機時,傳輸通道160包括一時脈信號線CLK、一命令信號線CMD和複數資料線DAT0~DAT3。當狀態單元120為嵌入式快閃記憶體狀態機時,傳輸通道160包括時脈信號線CLK、命令信號線CMD和複數資料線DAT0~DAT7。
當快閃記憶體控制器190完成寫入資料傳輸後(例如忙 碌狀態(busy status)週期或循環冗餘核對狀態(Cyclical Redundancy Check status,CRC status)),狀態單元120輸出一啟動訊號ES給輔助單元140,輔助單元140透過資料線DAT1與DAT2輸出偵錯訊息DM2(含有字串ST)至一偵錯裝置(如第2圖之偵錯裝置280)。更進一步來說,完成寫入資料傳輸係指完成在資料線DAT1與DAT2的寫入資料傳輸。在某些實施例中,輔助單元140亦可連接資料線DAT0,並且根據資料線DAT0的信號來判斷在資料線DAT1與DAT2的寫入資料傳輸是否完成。
在某些實施例中,在快閃記憶體控制器190啟動讀取資料傳輸前(例如在存取延遲時間(access time delay)),狀態單元120輸出啟動訊號ES給輔助單元140,輔助單元140透過資料線DAT1與DAT2輸出字串ST。進一步來說,啟動讀取資料傳輸係指啟動在資料線DAT1與DAT2的讀取資料傳輸。在某些實施例中,輔助單元140亦可連接資料線DAT0,並且根據資料線DAT0的信號來判斷在資料線DAT1與DAT2的讀取資料傳輸是否被啟動。
第2圖係本揭露之快閃記憶體系統200之一示意圖。如第2圖所示,快閃記憶體系統200包括快閃記憶體250、快閃記憶體控制器290和偵錯裝置280。快閃記憶體250與快閃記憶體150相同,快閃記憶體控制器290(即讀寫單元210、狀態單元220、處理單元230和輔助單元240)與快閃記憶體控制器190(即讀寫單元110、狀態單元120、處理單元130和輔助單元140)相同,因此就不再贅述。快閃記憶體250和快閃記憶體控制器290之組合為嵌入式快閃記 憶體裝置(embedded multi media card,EMMC),耦接至主控裝置270,換言之,快閃記憶體250、快閃記憶體控制器290與主控裝置270皆設置在同一電路板上。
需說明的是,偵錯裝置280包括偵測單元281和接收單元282。詳細而言,偵測單元281以反相信號核對方法(differential signal check method)、同位核對方法(parity check method)和波特速率核對方法(baud rate check method)來判斷資料線DAT1和DAT2所輸出的信號是否為偵錯訊息DM2,以避免將主控裝置270與狀態單元220之間的寫入信號(write signal)或讀取信號(real signal)誤認為偵錯訊息DM2。
詳細而言,在反相信號核對方法中,當資料線DAT1和DAT2所輸出的信號分別為信號TX+和信號TX-(或信號TX-和信號TX+)時,偵測單元281才會認為資料線DAT1和DAT2所輸出的信號為偵錯訊息DM2,並且偵測單元281將偵錯信號DM2輸出至接收單元282。另外,偵測單元281可同時使用同位核對方法判斷資料線DAT1和DAT2所輸出的信號是否為偵錯訊息DM2。當資料線DAT1和DAT2所輸出之信號符合同位核對時,則偵測單元281判定反相信號為偵錯信號DM2,並且將偵錯信號DM2輸出至接收單元282。
在波特速率核對方法中,偵錯裝置280和輔助單元240會設定一預設波特速率,並且輔助單元240以相異於嵌入式快閃記憶體傳輸速度(例如9600bps)之一預設波特速率(例如19200 bps或38400 bps)輸出偵錯訊息DM2至偵錯裝 置280。換言之,偵測單元281僅會將在預設波特速率範圍內所接收的訊息傳遞給接收單元282,以避免接收單元282誤動作。偵錯裝置280和輔助單元240同時使用反相信號核對方法、同位核對方法和波特速率核對方法可以避免將主控裝置270與狀態單元220之間的寫入信號(write signal)或讀取信號(real signal)誤認為偵錯訊息DM2,增加偵錯裝置280的正確率。
由此可知,當處理資料PD為函數f(g(h(x))))時,處理單元230可將字串ST(例如字串ST1、ST2和ST3)寫入每個函數(例如f(x)、g(x)和h(x))中,使得當處理單元230執行函數f(x)時,處理單元230將字串ST1(例如偵錯訊息DM1)傳送至輔助單元240,並且輔助單元240在適當的時機(例如在快閃記憶體控制器為讀取資料傳輸前,或在快閃記憶體控制器為完成寫入資料傳輸後)傳送包含字串ST1的偵錯訊息DM2至偵錯裝置280。當函數h(x)有誤時,偵錯裝置280只會接收到字串ST1和ST2,而不會接收到字串ST3的偵錯訊息DM2,因此偵錯裝置280可根據偵錯訊息DM2確認函數h(x)有錯誤。在某些實施例中,偵錯裝置280可透過某些裝置(例如螢幕)顯示對應於偵錯訊息DM2的符號,使得程式設計者可根據符號修改函數h(x),因此讓快閃記憶體控制器290得以正常工作。
第3圖係本揭露之嵌入式快閃記憶體狀態機之一讀取時序圖。如第3圖所示,當狀態單元120為嵌入式快閃記憶體狀態機時,在快閃記憶體控制器190啟動讀取資料傳輸前(例如存取延遲時間(access time delay)或週期P1),輔 助單元140可透過資料線DAT1與DAT2輸出字串ST至偵錯裝置280。此外,當狀態單元120為安全數位記憶卡狀態機時,輔助單元140可在快閃記憶體控制器190啟動讀取資料傳輸前(類似週期P1),透過資料線DAT1與DAT2將字串ST輸出至偵錯裝置280。
第4圖係本揭露之嵌入式快閃記憶體狀態機之一寫入時序圖。如第4圖所示,當狀態單元220為嵌入式快閃記憶體狀態機時,輔助單元240可在快閃記憶體控制器290完成寫入資料傳輸後(例如週期P2),透過資料線DAT1與DAT2輸出字串ST。其中週期P2由忙碌狀態(busy status)週期和循環冗餘核對狀態(Cyclical Redundancy Check status,CRC status)週期所構成。
第5圖係本揭露之安全數位記憶卡狀態機之一寫入時序圖。如第5圖所示,當狀態單元220為安全數位記憶卡狀態機時,輔助單元240可在快閃記憶體控制器290完成寫入資料傳輸後(例如週期P3),透過資料線DAT1與DAT2輸出字串ST。其中週期P3由忙碌狀態(busy status)週期和循環冗餘核對狀態(Cyclical Redundancy Check status,CRC status)週期所構成。
第6圖係本揭露之快閃記憶體偵錯方法之一流程圖,如第6圖所示,快閃記憶體偵錯方法包括下列步驟。
於步驟S61,藉由快閃記憶體控制器290之輔助單元240接收並儲存來自處理單元230的一字串ST。於步驟S62,藉由狀態單元220判斷快閃記憶體控制器290的狀態。於步驟S63,當快閃記憶體控制器290完成寫入資料 傳輸後,藉由輔助單元240透過資料線DAT1與DAT2輸出字串ST。
第7圖係本揭露之快閃記憶體偵錯方法之另一流程圖,步驟S71與S72與步驟S61與S62相同,差別在於步驟S73,當快閃記憶體控制器290啟動讀取資料傳輸前,藉由輔助單元240透過資料線DAT1與DAT2輸出字串ST。
綜上所述,由於本揭露之快閃記憶體系統200可將處理資料PD中的偵錯字串(debug string)輸出至至偵錯裝置280,因此偵錯裝置280可確認處理單元230已執行處理資料PD的哪些部分,使得處理資料PD的錯誤內容可以迅速地被找出。再加上本揭露之快閃記憶體偵錯方法使用反相信號核對方法、同位核對方法和波特速率核對方法,因此偵錯裝置280更能夠精確地接收到偵錯訊息DM2,而不會將狀態單元220與主控裝置270之間的信號誤判斷為第二偵錯訊息DM2。
以上敘述許多實施例的特徵,使所屬技術領域中具有通常知識者能夠清楚理解本說明書的形態。所屬技術領域中具有通常知識者能夠理解其可利用本發明揭示內容為基礎以設計或更動其他製程及結構而完成相同於上述實施例的目的及/或達到相同於上述實施例的優點。所屬技術領域中具有通常知識者亦能夠理解不脫離本發明之精神和範圍的等效構造可在不脫離本發明之精神和範圍內作任意之更動、替代與潤飾。
190、290‧‧‧快閃記憶體控制器
110、210‧‧‧讀寫單元
120、220‧‧‧狀態單元
130、230‧‧‧處理單元
140、240‧‧‧輔助單元
150、250‧‧‧快閃記憶體
160、260‧‧‧傳輸通道
270‧‧‧主控裝置
280‧‧‧偵錯裝置
281‧‧‧偵測單元
282‧‧‧接收單元
190、290‧‧‧快閃記憶體控制器
111、211‧‧‧快閃記憶體存取狀態機
112、212‧‧‧靜態隨機存取記憶體
CLK‧‧‧時脈信號線
CMD‧‧‧命令信號線
DM1、DM2‧‧‧偵錯訊息
ES‧‧‧致能信號
PD‧‧‧處理資料
DAT0~DAT3‧‧‧資料線
200‧‧‧快閃記憶體系統
P1~P3‧‧‧週期
第1圖係本揭露之快閃記憶體控制器190之一示意圖;第2圖係本揭露之快閃記憶體系統200之一示意圖;第3圖係本揭露之嵌入式快閃記憶體狀態機之一讀取時序圖;第4圖係本揭露之嵌入式快閃記憶體狀態機之一寫入時序圖;第5圖係本揭露之安全數位記憶卡狀態機之一寫入時序圖;第6圖係本揭露之快閃記憶體偵錯方法之一流程圖;以及第7圖係本揭露之快閃記憶體偵錯方法之另一流程圖。
190‧‧‧快閃記憶體控制器
110‧‧‧讀寫單元
111‧‧‧快閃記憶體存取狀態機
112‧‧‧靜態隨機存取記憶體
120‧‧‧狀態單元
130‧‧‧處理單元
140‧‧‧輔助單元
150‧‧‧快閃記憶體
160‧‧‧傳輸通道
CLK‧‧‧時脈信號線
CMD‧‧‧命令信號線
DAT0~DAT3‧‧‧資料線
DM1、DM2‧‧‧偵錯訊息
ES‧‧‧致能信號

Claims (60)

  1. 一種快閃記憶體控制器,包括:一讀寫單元,連接一快閃記憶體,並用以執行一寫入指令或一讀取指令;一狀態單元,用以判斷該快閃記憶體控制器的狀態;一處理單元,連接該讀寫單元與該狀態單元,用以控制該讀寫單元;以及一輔助單元,連接一第一資料線、一第二資料線與該處理單元,用以接收並儲存來自該處理單元的一字串,其中當該快閃記憶體控制器完成寫入資料傳輸後,該輔助單元透過該第一資料線與該第二資料線輸出該字串。
  2. 如申請專利範圍第1項所述之快閃記憶體控制器,其中當該快閃記憶體控制器處於忙碌狀態時,該狀態單元輸出一啟動訊號給該輔助單元。
  3. 如申請專利範圍第1項所述之快閃記憶體控制器,其中當該輔助單元收到一休眠訊號時,該輔助單元暫停運作。
  4. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該處理單元控制該讀寫單元的操作包含該處理單元指示該讀寫單元執行該寫入指令。
  5. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該處理單元控制該讀寫單元的操作包含該處理單元指示該讀寫單元執行該讀取指令。
  6. 如申請專利範圍第1項所述之快閃記憶體控制器,其中一偵錯單元接收器連接至該第一資料線與該第二資料 線。
  7. 如申請專利範圍第6項所述之快閃記憶體控制器,其中該偵錯單元接收器係用以接收該字串。
  8. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該輔助單元透過該第一資料線與該第二資料線以符合通用非同步接收發送器規範之方式輸出該字串。
  9. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該輔助單元係以反相信號透過該第一資料線與該第二資料線輸出該字串。
  10. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該輔助單元在該字串中加入同位核對碼。
  11. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該輔助單元以一預設波特速率輸出該字串至一偵錯裝置,並且該預設波特速率相異於該狀態單元與一主控裝置之間的傳輸速度。
  12. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該讀寫單元包括:一快閃記憶體存取狀態機,用以從該快閃記憶體讀取一處理資料;以及一靜態隨機存取記憶體,用以儲存該處理資料。
  13. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該完成寫入資料傳輸係指完成在該第一資料線與該第二資料線的寫入資料傳輸。
  14. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該第一資料線為DAT1,且該第二資料線為DAT2。
  15. 如申請專利範圍第1項所述之快閃記憶體控制器,其中該輔助單元更連接一第三資料線,且該輔助單元根據該第三資料線判斷在該第一資料線與該第二資料線的寫入資料傳輸是否完成。
  16. 如申請專利範圍第15項所述之快閃記憶體控制器,其中該第三資料線為DAT0。
  17. 一種快閃記憶體偵錯方法,適用於具有一讀寫單元、一狀態單元和一處理單元之一快閃記憶體控制器與一快閃記憶體,包括:藉由該快閃記憶體控制器之一輔助單元接收並儲存來自該處理單元的一字串;藉由該狀態單元判斷該快閃記憶體控制器的狀態;以及當該快閃記憶體控制器完成寫入資料傳輸後,藉由該輔助單元透過一第一資料線與一第二資料線輸出該字串。
  18. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,更包括:當該快閃記憶體控制器處於忙碌狀態時,從該狀態單元輸出一啟動訊號給該輔助單元。
  19. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,更包括:當該輔助單元收到一休眠訊號時,暫停該輔助單元的運作。
  20. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該處理單元指示該讀寫單元執行一寫入指令。
  21. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該處理單元指示該讀寫單元執行一讀取指令。
  22. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該字串由該處理單元輸出至該輔助單元。
  23. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該輔助單元透過該第一資料線與該第二資料線以符合通用非同步接收發送器規範之方式輸出該字串。
  24. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該輔助單元係以反相信號透過該第一資料線與該第二資料線輸出該字串。
  25. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該輔助單元在該字串中加入同位核對碼。
  26. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該輔助單元以一預設波特速率輸出該字串至一偵錯裝置,並且該預設波特速率相異於該狀態單元與一主控裝置之間的傳輸速度。
  27. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該完成寫入資料傳輸係指完成在該第一資料線與該第二資料線的寫入資料傳輸。
  28. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該第一資料線為DAT1,且該第二資料線為DAT2。
  29. 如申請專利範圍第17項所述之快閃記憶體偵錯方法,其中該輔助單元更連接一第三資料線,且該輔助單元根據該第三資料線判斷在該第一資料線與該第二資料線的寫入資料傳輸是否完成。
  30. 如申請專利範圍第29項所述之快閃記憶體偵錯方法,其中該第三資料線為DAT0。
  31. 一種快閃記憶體控制器,包括:一讀寫單元,連接一快閃記憶體,並用以執行一寫入指令或一讀取指令;一狀態單元,係用以判斷該快閃記憶體控制器的狀態;一處理單元,連接該讀寫單元與該狀態單元,並且用以控制該讀寫單元;以及一輔助單元,連接一第一資料線、一第二資料線、與該處理單元,該輔助單元係用以接收並儲存來自該處理單元的一字串,其中當該快閃記憶體控制器啟動讀取資料傳輸前,該輔助單元透過該第一資料線與該第二資料線輸出該字串。
  32. 如申請專利範圍第31項所述之快閃記憶體控制器,其中當該快閃記憶體控制器處於存取延遲時間時,該狀態單元輸出一啟動訊號給該輔助單元。
  33. 如申請專利範圍第31項所述之快閃記憶體控制器,其中當該輔助單元收到一休眠訊號時,該輔助單元暫停運作。
  34. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該處理單元控制該讀寫單元的操作包含該處理單元指示該讀寫單元執行該寫入指令。
  35. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該處理單元控制該讀寫單元的操作包含該處理單元指示該讀寫單元執行該讀取指令。
  36. 如申請專利範圍第31項所述之快閃記憶體控制器,其中一偵錯單元接收器係連接該第一資料線與該第二資料線。
  37. 如申請專利範圍第36項所述之快閃記憶體控制器,其中該偵錯單元接收器係用以接收該字串。
  38. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該輔助單元透過該第一資料線與該第二資料線以符合通用非同步接收發送器規範之方式輸出該字串。
  39. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該輔助單元係以反相信號透過該第一資料線與該第二資料線輸出該字串。
  40. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該輔助單元在該字串中加入同位核對碼。
  41. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該輔助單元以一預設波特速率輸出該字串至一偵錯裝置,並且該預設波特速率相異於該狀態單元與一主控裝置之間的傳輸速度。
  42. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該讀寫單元包括:一快閃記憶體存取狀態機,用以從該快閃記憶體讀取一處理資料;以及一靜態隨機存取記憶體,用以儲存該處理資料。
  43. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該啟動讀取資料傳輸係指啟動在該第一資料線與該第二資料線的讀取資料傳輸。
  44. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該第一資料線為DAT1,且該第二資料線為DAT2。
  45. 如申請專利範圍第31項所述之快閃記憶體控制器,其中該輔助單元更連接一第三資料線,且該輔助單元根據該第三資料線判斷在該第一資料線與該第二資料線的讀取資料傳輸是否被啟動。
  46. 如申請專利範圍第45項所述之快閃記憶體控制器,其中該第三資料線為DAT0。
  47. 一種快閃記憶體偵錯方法,適用於具有一讀寫單元、一狀態單元和一處理單元之一快閃記憶體控制器與一快閃記憶體,包括:藉由該快閃記憶體控制器之一輔助單元接收並儲存來自該處理單元的一字串;藉由該狀態單元判斷該快閃記憶體控制器的狀態;以及當該快閃記憶體控制器啟動讀取資料傳輸前,藉由該輔助單元透過一第一資料線與一第二資料線輸出該字串。
  48. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,更包括:當該快閃記憶體控制器處於存取延遲時間時,從該狀態單元輸出一啟動訊號給該輔助單元。
  49. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,更包括:當該輔助單元收到一休眠訊號時,暫停該輔助單元的運作。
  50. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該處理單元指示該讀寫單元執行一寫入指令。
  51. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該處理單元指示該讀寫單元執行一讀取指令。
  52. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該字串由該處理單元輸出至該輔助單元。
  53. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該輔助單元透過該第一資料線與該第二資料線以符合通用非同步接收發送器規範之方式輸出該字串。
  54. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中,該輔助單元係以反相信號透過該第一資料線與該第二資料線輸出該字串。
  55. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該輔助單元在該字串中加入同位核對碼。
  56. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該輔助單元以一預設波特速率輸出該字串至一偵錯裝置,並且該預設波特速率相異於該狀態單元與一主控裝置之間的傳輸速度。
  57. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該啟動讀取資料傳輸係指啟動在該第一資料線與該第二資料線的讀取資料傳輸。
  58. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該第一資料線為DAT1,且該第二資料線為DAT2。
  59. 如申請專利範圍第47項所述之快閃記憶體偵錯方法,其中該輔助單元更連接一第三資料線,且該輔助單元 根據該第三資料線判斷在該第一資料線與該第二資料線的讀取資料傳輸是否被啟動。
  60. 如申請專利範圍第59項所述之快閃記憶體偵錯方法,其中該第三資料線為DAT0。
TW101124724A 2012-07-10 2012-07-10 快閃記憶體控制器、快閃記憶體偵錯方法 TWI497515B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW101124724A TWI497515B (zh) 2012-07-10 2012-07-10 快閃記憶體控制器、快閃記憶體偵錯方法
CN201210308712.0A CN103544994B (zh) 2012-07-10 2012-08-27 快闪存储器控制器、快闪存储器侦错方法
US13/750,459 US9026895B2 (en) 2012-07-10 2013-01-25 Flash memory controllers and error detection methods

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW101124724A TWI497515B (zh) 2012-07-10 2012-07-10 快閃記憶體控制器、快閃記憶體偵錯方法

Publications (2)

Publication Number Publication Date
TW201403614A TW201403614A (zh) 2014-01-16
TWI497515B true TWI497515B (zh) 2015-08-21

Family

ID=49914993

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101124724A TWI497515B (zh) 2012-07-10 2012-07-10 快閃記憶體控制器、快閃記憶體偵錯方法

Country Status (3)

Country Link
US (1) US9026895B2 (zh)
CN (1) CN103544994B (zh)
TW (1) TWI497515B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103824550B (zh) * 2014-02-24 2016-04-13 华南理工大学 一种基于分时复用技术的液晶屏显示系统及方法
TWI569279B (zh) 2015-10-15 2017-02-01 財團法人工業技術研究院 記憶體保護裝置與方法
US10474366B2 (en) * 2016-12-28 2019-11-12 Sandisk Technologies Llc Non-volatile storage system with in-drive data analytics
TWI646546B (zh) * 2017-08-11 2019-01-01 慧榮科技股份有限公司 資料儲存裝置以及記憶體讀取方法
US10948970B2 (en) * 2018-03-30 2021-03-16 Dialog Semiconductor B.V. Low power microcontroller
CN111679792B (zh) * 2020-06-04 2023-04-07 四川九州电子科技股份有限公司 一种嵌入式设备NandFlash I/O数据监测系统及方法
US11714576B2 (en) * 2020-10-29 2023-08-01 Micron Technology, Inc. Memory bus drive defect detection
TWI822145B (zh) * 2022-06-28 2023-11-11 英屬開曼群島商臉萌有限公司 儲存電路、晶片、資料處理方法和電子設備

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5430859A (en) * 1991-07-26 1995-07-04 Sundisk Corporation Solid state memory system including plural memory chips and a serialized bus
US5581503A (en) * 1992-03-17 1996-12-03 Hitachi, Ltd. Data line disturbance free memory block divided flash memory and microcomputer having flash memory therein
US6078520A (en) * 1993-04-08 2000-06-20 Hitachi, Ltd. Flash memory control method and information processing system therewith
US7302517B2 (en) * 2003-01-09 2007-11-27 Samsung Electronics Co., Ltd. Apparatus and method for controlling execute-in-place (XIP) in serial flash memory, and flash memory chip using the same
US20080320342A1 (en) * 2007-06-21 2008-12-25 Megachips Corporation Memory controller
US7660938B1 (en) * 2004-10-01 2010-02-09 Super Talent Electronics, Inc. Flash card reader and data exchanger utilizing low power extended USB protocol without polling
US20100281342A1 (en) * 2009-04-30 2010-11-04 Samsung Electronics Co., Ltd. Memory controller and memory system
US20110041039A1 (en) * 2009-08-11 2011-02-17 Eliyahou Harari Controller and Method for Interfacing Between a Host Controller in a Host and a Flash Memory Device
US20110041005A1 (en) * 2009-08-11 2011-02-17 Selinger Robert D Controller and Method for Providing Read Status and Spare Block Management Information in a Flash Memory System
US20120131382A1 (en) * 2010-11-24 2012-05-24 Fujitsu Limited Memory controller and information processing system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101030449A (zh) * 2006-03-03 2007-09-05 华邦电子股份有限公司 闪存数据存取控制器与方法
US8443263B2 (en) * 2009-12-30 2013-05-14 Sandisk Technologies Inc. Method and controller for performing a copy-back operation
TWI502336B (zh) * 2010-12-17 2015-10-01 Via Tech Inc 電腦系統之偵錯裝置及其方法
KR20120090194A (ko) * 2011-02-07 2012-08-17 삼성전자주식회사 데이터 처리 장치 및 이를 포함하는 데이터 처리 시스템

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5430859A (en) * 1991-07-26 1995-07-04 Sundisk Corporation Solid state memory system including plural memory chips and a serialized bus
US5581503A (en) * 1992-03-17 1996-12-03 Hitachi, Ltd. Data line disturbance free memory block divided flash memory and microcomputer having flash memory therein
US6078520A (en) * 1993-04-08 2000-06-20 Hitachi, Ltd. Flash memory control method and information processing system therewith
US7302517B2 (en) * 2003-01-09 2007-11-27 Samsung Electronics Co., Ltd. Apparatus and method for controlling execute-in-place (XIP) in serial flash memory, and flash memory chip using the same
US7660938B1 (en) * 2004-10-01 2010-02-09 Super Talent Electronics, Inc. Flash card reader and data exchanger utilizing low power extended USB protocol without polling
US20080320342A1 (en) * 2007-06-21 2008-12-25 Megachips Corporation Memory controller
US20100281342A1 (en) * 2009-04-30 2010-11-04 Samsung Electronics Co., Ltd. Memory controller and memory system
US20110041039A1 (en) * 2009-08-11 2011-02-17 Eliyahou Harari Controller and Method for Interfacing Between a Host Controller in a Host and a Flash Memory Device
US20110041005A1 (en) * 2009-08-11 2011-02-17 Selinger Robert D Controller and Method for Providing Read Status and Spare Block Management Information in a Flash Memory System
US20120131382A1 (en) * 2010-11-24 2012-05-24 Fujitsu Limited Memory controller and information processing system

Also Published As

Publication number Publication date
TW201403614A (zh) 2014-01-16
CN103544994B (zh) 2017-05-03
CN103544994A (zh) 2014-01-29
US9026895B2 (en) 2015-05-05
US20140019671A1 (en) 2014-01-16

Similar Documents

Publication Publication Date Title
TWI497515B (zh) 快閃記憶體控制器、快閃記憶體偵錯方法
US9378076B2 (en) Serial communication test device, system including the same and method thereof
US8938581B2 (en) Nonvolatile storage device and operating system (OS) image program method thereof
JP5547741B2 (ja) データをメモリ装置に再入力することなくページをプログラムするためのページバッファプログラムコマンド及び方法
US9389804B2 (en) Host, system, and methods for transmitting commands to non-volatile memory card
US8392794B2 (en) Non-volatile memory device and data processing method thereof
US9741442B2 (en) System and method of reading data from memory concurrently with sending write data to the memory
KR102669909B1 (ko) 메모리 시스템 및 그것의 동작 방법
TWI443513B (zh) 記憶體儲存裝置、記憶體控制器與資料寫入方法
CN110059032B (zh) 存储器接口及具有存储器接口的存储器控制器
TWI516936B (zh) 運作模式切換方法、記憶體控制器與記憶體儲存裝置
US8891301B1 (en) Power drop protection for a data storage device
TWI517174B (zh) 錯誤檢測方法及包含一或更多個記憶體裝置之系統
TWI420313B (zh) 資料管理方法、記憶體控制器與嵌入式記憶體儲存裝置
US8219883B2 (en) Data accessing method, controller and storage system using the same
CN108305654A (zh) 半导体器件
CN109840161B (zh) 刷洗错误的方法和使用该方法的半导体模块
TWI668569B (zh) 主機記憶體緩衝區配置方法、記憶體儲存裝置與記憶體控制電路單元
US10191533B2 (en) Method of enabling sleep mode, memory control circuit unit and storage apparatus
US20140136929A1 (en) Storage medium, system and method utilizing the same
TWI514389B (zh) 快閃記憶體控制器和快閃記憶體控制方法
TWI512623B (zh) 休眠模式啓動方法、記憶體控制電路單元及儲存裝置
CN110297595B (zh) 主机存储器缓冲区配置方法、储存装置与控制电路单元
US20240176542A1 (en) Interworking method external device and storage device
CN103914408A (zh) 数据传输方法、存储器控制器、数据传输系统