TWI737703B - Nonvolatile memory module and method for operating a storage device - Google Patents

Nonvolatile memory module and method for operating a storage device Download PDF

Info

Publication number
TWI737703B
TWI737703B TW106110214A TW106110214A TWI737703B TW I737703 B TWI737703 B TW I737703B TW 106110214 A TW106110214 A TW 106110214A TW 106110214 A TW106110214 A TW 106110214A TW I737703 B TWI737703 B TW I737703B
Authority
TW
Taiwan
Prior art keywords
internal operation
internal
command
volatile memory
memory module
Prior art date
Application number
TW106110214A
Other languages
Chinese (zh)
Other versions
TW201738764A (en
Inventor
林璇渶
吳起碩
徐聖鎔
趙永進
崔仁壽
Original Assignee
南韓商三星電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 南韓商三星電子股份有限公司 filed Critical 南韓商三星電子股份有限公司
Publication of TW201738764A publication Critical patent/TW201738764A/en
Application granted granted Critical
Publication of TWI737703B publication Critical patent/TWI737703B/en

Links

Images

Classifications

    • 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
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/32Timing circuits
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory

Abstract

A method for operating a storage device includes sending a request for a internal operation time for an internal operation to an external device, receiving an internal operation command corresponding to the request from the external device, and performing the internal operation during the internal operation time based on the internal operation command.

Description

非揮發性記憶體模組以及操作儲存裝置的方法 Non-volatile memory module and method for operating storage device [相關申請案的交叉參考] [Cross reference of related applications]

本申請案基於35 USC § 119主張於2016年4月20日提出申請的美國臨時專利申請案第62/325,051號的權利。於2016年5月18日提出申請且名稱為「計算系統、非揮發性記憶體模組以及儲存裝置的方法(Computing System,Nonvolatile Memory Module and Method of Storage Device)」的韓國專利申請案第10-2016-0061012號。該兩個申請案全文併入本案供參考。 This application claims the rights of U.S. Provisional Patent Application No. 62/325,051 filed on April 20, 2016 based on 35 USC § 119. Korean Patent Application No. 10- No. 2016-0061012. The full texts of the two applications are incorporated into this case for reference.

本文所述一或多個實施例是有關於計算系統、非揮發性記憶體模組、以及儲存裝置的方法。 One or more embodiments described herein are related to computing systems, non-volatile memory modules, and storage device methods.

已嘗試開發能夠與現有計算系統的各種介面相容的非揮發性記憶體。舉例而言,已嘗試藉由將快閃記憶體(或工作記憶體)安裝於與電腦系統的主記憶體或工作記憶體相同的插槽或通道上來使用快閃記憶體作為資料儲存裝置或工作記憶體。然而,已證明該些嘗試具有缺陷。 Attempts have been made to develop non-volatile memory compatible with various interfaces of existing computing systems. For example, try to use flash memory as a data storage device or work by installing flash memory (or working memory) in the same slot or channel as the main memory or working memory of the computer system Memory. However, these attempts have proven to be flawed.

根據一或多個實施例,一種操作儲存裝置的方法包括:向外部裝置發送對於內部操作的內部操作時間的請求;自所述外部裝置接收與所述請求對應的內部操作命令;以及基於所述內部操作命令在所述內部操作時間期間實行所述內部操作。請求所述內部操作時間可包括使用異步事件請求命令的因應訊息而將所述請求傳遞至所述外部裝置。所述對於內部操作時間的請求可包括將包括實行所述內部操作所需要的內部操作時間的訊息傳遞至所述外部裝置。 According to one or more embodiments, a method of operating a storage device includes: sending a request for an internal operation time of an internal operation to an external device; receiving an internal operation command corresponding to the request from the external device; and based on the The internal operation command executes the internal operation during the internal operation time. Requesting the internal operation time may include transmitting the request to the external device using a response message of an asynchronous event request command. The request for the internal operation time may include transmitting a message including the internal operation time required to perform the internal operation to the external device.

根據一或多個其他實施例,一種非揮發性記憶體模組包括:至少一個揮發性記憶體;至少一個非揮發性記憶體;以及記憶體控制電路,用以控制所述至少一個揮發性記憶體及所述至少一個非揮發性記憶體,其中所述記憶體控制電路用以在欲實行內部操作時將內部操作請求訊息傳遞至外部裝置、自所述外部裝置接收與所述內部操作請求訊息對應的內部操作命令、並基於所述內部操作命令在內部操作時間期間來實行內部操作,且其中所述內部操作請求訊息包括所述內部操作時間。 According to one or more other embodiments, a non-volatile memory module includes: at least one volatile memory; at least one non-volatile memory; and a memory control circuit for controlling the at least one volatile memory And the at least one non-volatile memory, wherein the memory control circuit is used to transmit an internal operation request message to an external device, and receive and receive the internal operation request message from the external device when an internal operation is to be performed Corresponding internal operation command and implement internal operation during internal operation time based on said internal operation command, and wherein said internal operation request message includes said internal operation time.

根據一或多個其他實施例,一種記憶體模組包括:多個動態隨機存取記憶體(dynamic random access memory,DRAM);以及記憶體控制電路,用以基於命令及位址來控制所述動態隨機存取記憶體,其中所述記憶體控制電路用以:將對於內部操作的內部操作時間的請求傳遞至主機;自所述主機接收與所述請求對應的內部操作時間同意/拒絕資訊;以及基於所述內部操作時間同 意/拒絕資訊實行所述內部操作的全部或一部分。 According to one or more other embodiments, a memory module includes: a plurality of dynamic random access memories (DRAM); and a memory control circuit for controlling the A dynamic random access memory, wherein the memory control circuit is used to: transmit a request for the internal operation time of the internal operation to the host; receive the internal operation time approval/rejection information corresponding to the request from the host; And based on the internal operating time The consent/rejection information implements all or part of the internal operation described.

根據一或多個其他實施例,一種動態隨機存取記憶體包括:記憶體胞元陣列;以及再新控制器,用以將關於內部操作的請求的訊息傳遞至外部裝置、接收與所述訊息對應的內部操作命令、且在內部操作時間期間執行所述內部操作,其中所述內部操作是所述記憶體胞元陣列的再新操作且其中所述訊息包括關於所述內部操作時間的資訊。 According to one or more other embodiments, a dynamic random access memory includes: a memory cell array; and a renewed controller for transmitting a message about an internal operation request to an external device, receiving and receiving the message Corresponding internal operation command and execute the internal operation during internal operation time, wherein the internal operation is a renew operation of the memory cell array and wherein the message includes information about the internal operation time.

根據一或多個其他實施例,一種設備包括:訊號線;以及控制器,用以基於所述訊號線上的訊號來控制至少一個揮發性記憶體或至少一個非揮發性記憶體,其中所述控制器用以在欲實行內部操作時將內部操作請求訊息傳遞至外部裝置、自所述外部裝置接收與所述內部操作請求訊息對應的內部操作命令、並基於所述內部操作命令在內部操作時間期間來實行內部操作,且其中所述內部操作請求訊息包括所述內部操作時間。 According to one or more other embodiments, an apparatus includes: a signal line; and a controller for controlling at least one volatile memory or at least one non-volatile memory based on a signal on the signal line, wherein the control The device is used to transmit an internal operation request message to an external device when an internal operation is to be performed, receive an internal operation command corresponding to the internal operation request message from the external device, and receive an internal operation command based on the internal operation command during the internal operation time. Perform internal operation, and wherein the internal operation request message includes the internal operation time.

10、20、40:計算系統 10, 20, 40: computing system

41:處理器 41: processor

42:記憶體模組 42: Memory module

43:非揮發性記憶體 43: Non-volatile memory

50:資料伺服器系統 50: Data Server System

51:資料庫管理系統/相關資料庫管理系統 51: Database Management System/Related Database Management System

52:快取伺服器 52: Cache server

53:應用伺服器 53: application server

100:主機/主機裝置 100: host/host device

100a:主機 100a: host

200:儲存裝置 200: storage device

211、212、213、214、215、400:動態隨機存取記憶體 211, 212, 213, 214, 215, 400: dynamic random access memory

220:記憶體模組控制器 220: Memory Module Controller

300:非揮發性記憶體模組 300: Non-volatile memory module

310L:第一非揮發性記憶體 310L: the first non-volatile memory

310R:第二非揮發性記憶體 310R: second non-volatile memory

320L:第一揮發性記憶體 320L: the first volatile memory

320R:第二揮發性記憶體 320R: second volatile memory

330L:第一資料緩衝器 330L: the first data buffer

330R:第二資料緩衝器 330R: second data buffer

340:記憶體控制電路 340: Memory control circuit

410:記憶體胞元陣列 410: Memory cell array

420:再新控制器 420: New controller

ACT:現用命令 ACT: Active command

ADDR:位址引腳 ADDR: address pin

CAD:第二命令/位址 CAD: second command/address

CAN:第一命令/位址 CAN: First command/address

CH:記憶體通道 CH: memory channel

CH1:第一通道 CH1: The first channel

CH2:第二通道 CH2: second channel

CMD:命令引腳 CMD: Command pin

D0、D1、D2、D3、D4、D5、D6、D7:資料 D0, D1, D2, D3, D4, D5, D6, D7: data

DB:資料緩衝器 DB: data buffer

DIMM:記憶體模組 DIMM: memory module

DIMM1:第一記憶體模組/記憶體模組 DIMM1: the first memory module/memory module

DIMM2:第二記憶體模組/記憶體模組 DIMM2: second memory module/memory module

DQ:資料/資料引腳 DQ: data/data pin

IOP、IOPA:內部操作命令 IOP, Iopa: internal operation commands

IOPB:內部操作命令/第二內部操作命令 IOPB: internal operation command/second internal operation command

MSG:訊息引腳/訊息通道 MSG: message pin/message channel

NVDIMM:非揮發性記憶體模組 NVDIMM: Non-volatile memory module

PRE:預充電命令 PRE: Precharge command

RD:讀取命令/位址 RD: Read command/address

RT1:內部操作時間/第一內部操作時間 RT1: internal operation time/first internal operation time

RT2:第二內部操作時間 RT2: Second internal operation time

RT3、RTk:內部操作時間 RT3, RTk: internal operation time

S110、S120、S210、S220、S230:操作 S110, S120, S210, S220, S230: Operation

藉由參照附圖詳細闡述示例性實施例,各種特徵對熟習此項技術者而言將變得顯而易見,在附圖中:圖1說明計算系統的實施例。 By describing the exemplary embodiments in detail with reference to the accompanying drawings, various features will become apparent to those skilled in the art. In the accompanying drawings: FIG. 1 illustrates an embodiment of a computing system.

圖2說明儲存裝置的實施例。 Figure 2 illustrates an embodiment of a storage device.

圖3說明內部操作時間請求及計算系統的因應的實施例。 FIG. 3 illustrates an embodiment of the internal operation time request and the response of the computing system.

圖4說明計算系統的另一實施例。 Figure 4 illustrates another embodiment of a computing system.

圖5說明非揮發性記憶體模組的實施例。 FIG. 5 illustrates an embodiment of a non-volatile memory module.

圖6說明主機介面時序的實施例。 Figure 6 illustrates an embodiment of the host interface timing.

圖7說明主機介面時序的另一實施例。 Figure 7 illustrates another embodiment of the host interface timing.

圖8說明計算系統的另一實施例。 Figure 8 illustrates another embodiment of a computing system.

圖9說明多重記憶體模組的時序的實施例。 FIG. 9 illustrates an embodiment of the timing of multiple memory modules.

圖10說明計算系統的另一實施例。 Figure 10 illustrates another embodiment of a computing system.

圖11說明計算系統的另一實施例。 Figure 11 illustrates another embodiment of a computing system.

圖12說明動態隨機存取記憶體的實施例。 Figure 12 illustrates an embodiment of a dynamic random access memory.

圖13說明計算系統的另一實施例。 Figure 13 illustrates another embodiment of a computing system.

圖14說明主機的操作方法的實施例。 Fig. 14 illustrates an embodiment of the operation method of the host.

圖15說明儲存裝置的內部操作方法的實施例。 FIG. 15 illustrates an embodiment of the internal operation method of the storage device.

圖16說明資料伺服器系統的實施例。 Figure 16 illustrates an embodiment of a data server system.

圖1說明可包括主機100及儲存裝置200的計算系統10的實施例。計算系統10可為例如電腦、可攜式電腦、超行動個人電腦(ultra-mobile personal computer,UMPC)、工作站、資料伺服器、隨身型易網機(net-book)、個人數位助理(personal digital assistant,PDA)、網路平板(web tablet)、無線電話、行動電話、智慧型電話、電子書、可攜式多媒體播放器(portable multimedia player,PMP)、數位照相機、數位音訊記錄器/播放器、數位圖片/視訊記錄器/播放器、可攜式遊戲機、導航系統、黑盒子(block box)、3D電視、能夠在無線環境下傳輸及接收資訊的裝置、構成 家庭網路的各種電子裝置中的一者、構成電腦網路的各種電子裝置中的一者、構成電傳網路(telematics network)的各種電子裝置中的一者、無線射頻識別(radio-frequency identification,RFID)、或構成計算系統的各種電子裝置中的一者。 FIG. 1 illustrates an embodiment of a computing system 10 that may include a host 100 and a storage device 200. The computing system 10 can be, for example, a computer, a portable computer, an ultra-mobile personal computer (UMPC), a workstation, a data server, a net-book, or a personal digital assistant (personal digital assistant). assistant, PDA), web tablet, wireless phone, mobile phone, smart phone, e-book, portable multimedia player (PMP), digital camera, digital audio recorder/player , Digital picture/video recorder/player, portable game console, navigation system, block box, 3D TV, device and structure capable of transmitting and receiving information in a wireless environment One of the various electronic devices of the home network, one of the various electronic devices that constitute a computer network, one of the various electronic devices that constitute a telematics network, radio-frequency identification (radio-frequency identification) identification, RFID), or one of various electronic devices that constitute a computing system.

主機100可控制計算系統10的總體運作。在實施例中,主機100可包括至少一個處理器、中央處理單元(central processing unit,CPU)、圖形處理單元(graphic processing unit,GPU)、記憶體控制器等。在實施例中,處理器可包括通用微處理器、多核處理器、數位訊號處理器(digital signal processor,DSP)、應用專用積體電路(application specific integrated circuit,ASIC)或其組合。在實施例中,記憶體控制器可被實作成控制儲存裝置200。 The host 100 can control the overall operation of the computing system 10. In an embodiment, the host 100 may include at least one processor, a central processing unit (CPU), a graphics processing unit (GPU), a memory controller, and the like. In an embodiment, the processor may include a general-purpose microprocessor, a multi-core processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), or a combination thereof. In an embodiment, the memory controller can be implemented to control the storage device 200.

在實施例中,主機100可基於儲存裝置200的請求向儲存裝置200提供指示同意或拒絕內部操作時間的資訊。所述內部操作時間可為實行儲存裝置200的內部操作的時間。 In an embodiment, the host 100 may provide the storage device 200 with information indicating approval or rejection of the internal operation time based on the request of the storage device 200. The internal operation time may be the time for performing the internal operation of the storage device 200.

在實施例中,可基於命令或資料的類型來傳遞或確定內部操作時間同意/拒絕資訊。在另一實施例中,可經由主機100與儲存裝置200之間的單獨的線來傳輸內部操作時間同意/拒絕資訊。 In an embodiment, the internal operation time approval/rejection information can be transmitted or determined based on the type of command or data. In another embodiment, the internal operation time approval/rejection information can be transmitted via a separate line between the host 100 and the storage device 200.

在圖1中,說明其中主機100基於儲存裝置200的請求而將內部操作時間傳遞至儲存裝置200的實施例。在另一實施例中,主機裝置100可基於內部策略而非儲存裝置200的請求來將內部操作時間同意/拒絕資訊傳遞至儲存裝置200。 In FIG. 1, an embodiment in which the host 100 transmits the internal operation time to the storage device 200 based on the request of the storage device 200 is illustrated. In another embodiment, the host device 100 may transmit the internal operation time approval/rejection information to the storage device 200 based on an internal policy instead of a request of the storage device 200.

儲存裝置200可連接至主機100以儲存關於主機100的操作的資料。儲存裝置200可為揮發性記憶體、非揮發性記憶體或其組合中的至少一者。舉例而言,儲存裝置200可為:雙列直插記憶體模組(dual in-line memory module,DIMM)、非揮發性雙列直插記憶體模組(nonvolatile dual in-line memory module,NVDIMM)、固態驅動機(solid state drive,SSD)、通用快閃儲存器(universal flash storage,UFS)、嵌式多媒體卡(embedded multimedia card,eMMC)、安全數位(secure digital,SD)卡、動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(static RAM,SRAM)、反及式快閃記憶體、垂直反及式快閃記憶體、相變隨機存取記憶體(phase change RAM,PRAM)、或電阻式隨機存取記憶體(resistive RAM,RRAM)。 The storage device 200 can be connected to the host 100 to store data about the operation of the host 100. The storage device 200 may be at least one of a volatile memory, a non-volatile memory, or a combination thereof. For example, the storage device 200 may be: dual in-line memory module (dual in-line memory module, DIMM), nonvolatile dual in-line memory module (nonvolatile dual in-line memory module, NVDIMM) ), solid state drive (SSD), universal flash storage (UFS), embedded multimedia card (eMMC), secure digital (SD) card, dynamic random Access memory (DRAM), static random access memory (static RAM, SRAM), reverse flash memory, vertical reverse flash memory, phase change random access memory (phase change RAM, PRAM), or resistive random access memory (resistive RAM, RRAM).

在實施例中,儲存裝置200可基於雙倍資料速率(double data rate,DDR)介面標準而連接至主機100。舉例而言,儲存裝置200可由DDRx系列(x為整數)中的任一者實作。儲存裝置200可經由除雙倍資料速率介面之外的各種類型的通訊介面連接至主機100。舉例而言,通訊介面可符合以下通訊標準:非揮發性記憶體高速規格(non-volatile memory express,NVMe)、周邊組件互連高速規格(peripheral component interconnect express,PCIe)、串列先進技術附接(serial AT attachment,SATA)、小型電腦系統介面(small computer system interface,SCSI)、串列附接小型電腦系統介面(serial attached SCSI,SAS)、通用儲存匯流排 (universal storage bus,USB)附接小型電腦系統介面(USB attached SCSI,UAS)、網際網絡小型電腦系統介面(internet small computer system interface,iSCSI)、光纖通道、或光纖網際網路通道(fiber channel over Ethernet,FCoE)。 In an embodiment, the storage device 200 may be connected to the host 100 based on a double data rate (DDR) interface standard. For example, the storage device 200 can be implemented by any one of the DDRx series (x is an integer). The storage device 200 can be connected to the host 100 via various types of communication interfaces other than the double data rate interface. For example, the communication interface can meet the following communication standards: non-volatile memory express (NVMe), peripheral component interconnect express (PCIe), serial advanced technology attachment (serial AT attachment, SATA), small computer system interface (SCSI), serial attached SCSI (SAS), universal storage bus (universal storage bus, USB) attached to small computer system interface (USB attached SCSI, UAS), Internet small computer system interface (internet small computer system interface, iSCSI), fiber channel, or fiber channel over Ethernet, FCoE).

在實施例中,當根據內部策略確定欲實行內部操作時,儲存裝置200可自主機100請求內部操作的內部操作時間。在實施例中,可以訊息型式將內部操作時間請求傳遞至主機100。 In an embodiment, when it is determined that the internal operation is to be performed according to the internal policy, the storage device 200 may request the internal operation time of the internal operation from the host 100. In an embodiment, the internal operation time request can be transmitted to the host 100 in a message format.

在實施例中,具有內部操作時間請求的訊息傳輸至主機100可經由主機100與儲存裝置200之間的至少一個資料通道、至少一個時鐘通道、至少一個控制通道、至少一個專用訊息通道、或其組合。舉例而言,當經由資料通道傳輸內部操作時間請求時,所述內部操作時間請求可包含於與異步命令對應的因應訊息中。異步命令可包括異步事件請求命令。異步事件可用於將儲存裝置200的狀況、錯誤及健康資訊告知主機100的軟體或控制器。 In an embodiment, the message with the internal operation time request can be transmitted to the host 100 via at least one data channel, at least one clock channel, at least one control channel, at least one dedicated message channel, or the like between the host 100 and the storage device 200. combination. For example, when an internal operation time request is transmitted via a data channel, the internal operation time request may be included in a response message corresponding to an asynchronous command. The asynchronous command may include an asynchronous event request command. Asynchronous events can be used to inform the software or controller of the host 100 of the status, error and health information of the storage device 200.

上述內部操作時間請求可以訊息型式傳遞。在另一實施例中,可以訊號型式向主機100提供內部操作時間請求以請求選擇與內部操作的內部操作時間對應的暫存器。 The above internal operation time request can be transmitted in the form of a message. In another embodiment, the internal operation time request may be provided to the host 100 in the form of a signal to request the selection of the register corresponding to the internal operation time of the internal operation.

在實施例中,儲存裝置200可被實作成在接收主機100的內部操作時間同意/拒絕資訊之後實行內部操作。內部操作可包括與例如再新、時序校準、製程-電壓-溫度(process-voltage-temperature,PVT)補償、內部資料傳輸、或另一操作相關聯的各種操作。在實施例中,可根據內部操作時間同 意/拒絕資訊來實行內部操作的全部或一部分。為此,內部操作時間同意/拒絕資訊可更包括關於執行內部操作的全部或一部分的資訊。 In an embodiment, the storage device 200 can be implemented to perform internal operations after receiving the internal operation time approval/rejection information of the host 100. The internal operations may include various operations associated with, for example, refresh, timing calibration, process-voltage-temperature (PVT) compensation, internal data transmission, or another operation. In the embodiment, the internal operation time can be the same Consent/reject information to implement all or part of internal operations. To this end, the internal operation time approval/rejection information may further include information about the execution of all or part of the internal operation.

在根據實施例的計算系統10中,儲存裝置200可直接自主機100請求儲存裝置200的內部操作的內部操作時間。主機100可基於所述請求在內部操作時間期間將關於時間的授權傳遞至儲存裝置200。因此,儲存裝置200可充分地實行內部操作。舉例而言,主機100可同意對儲存裝置200進行內部操作的內部操作時間。 In the computing system 10 according to the embodiment, the storage device 200 may directly request the internal operation time of the internal operation of the storage device 200 from the host 100. The host 100 may transfer the authorization regarding time to the storage device 200 during the internal operation time based on the request. Therefore, the storage device 200 can sufficiently perform internal operations. For example, the host 100 may agree to the internal operation time of the internal operation of the storage device 200.

圖2說明由記憶體模組實作的儲存裝置200的實施例。參照圖2,儲存裝置200可包括多個動態隨機存取記憶體211至214以及記憶體模組控制器(RCD)220。動態隨機存取記憶體211至動態隨機存取記憶體214中的每一者可在記憶體模組控制器220的控制下輸入及輸出資料DQ。圖2中的動態隨機存取記憶體211至動態隨機存取記憶體214的數目是4,但在另一實施例中可為不同的數目。 FIG. 2 illustrates an embodiment of a storage device 200 implemented by a memory module. 2, the storage device 200 may include a plurality of dynamic random access memories 211 to 214 and a memory module controller (RCD) 220. Each of the dynamic random access memory 211 to the dynamic random access memory 214 can input and output data DQ under the control of the memory module controller 220. The number of the dynamic random access memory 211 to the dynamic random access memory 214 in FIG. 2 is 4, but it can be a different number in another embodiment.

記憶體模組控制器220可自主機100接收命令及/或位址並控制動態隨機存取記憶體211至動態隨機存取記憶體214的輸入操作/輸出操作。在實施例中,記憶體模組控制器220可基於內部策略向主機100發送對於內部操作的內部操作時間請求。在實施例中,記憶體模組控制器220可基於自主機100傳輸的內部操作時間同意/拒絕資訊來實行內部操作。 The memory module controller 220 can receive commands and/or addresses from the host 100 and control the input/output operations from the dynamic random access memory 211 to the dynamic random access memory 214. In an embodiment, the memory module controller 220 may send an internal operation time request for internal operations to the host 100 based on an internal strategy. In an embodiment, the memory module controller 220 may perform internal operations based on the internal operation time approval/rejection information transmitted from the host 100.

在實施例中,儲存裝置200可更包括用於奇偶校驗(parity)的動態隨機存取記憶體215。在實施例中,儲存裝置200可更包括在主機100與動態隨機存取記憶體211至動態隨機存取記憶體214之間對資料DQ進行緩衝的資料緩衝器DB。在實施例中,儲存裝置200可被實作成滿足DDRx同步動態隨機存取記憶體(synchronous dynamic random access memory,SDRAM)規格。舉例而言,儲存裝置200可被實作成滿足下一代DDR4 SDRAM規格。內部操作時間可例如以暫存器設定方式來實作。 In an embodiment, the storage device 200 may further include a dynamic random access memory 215 for parity. In an embodiment, the storage device 200 may further include a data buffer DB for buffering the data DQ between the host 100 and the dynamic random access memory 211 to the dynamic random access memory 214. In an embodiment, the storage device 200 can be implemented to meet the DDRx synchronous dynamic random access memory (SDRAM) specification. For example, the storage device 200 can be implemented to meet the specifications of the next generation DDR4 SDRAM. The internal operation time can be implemented in a register setting method, for example.

圖3說明計算系統10中基於暫存器組(register set)方式的內部操作時間請求及因應的實施例。參照圖3,儲存裝置200可包括儲存多個內部操作時間RT1至RTk(k是為2或大於2的自然數)的暫存器組。舉例而言,第一內部操作時間RT1可為與16個時鐘對應的時間且第二內部操作時間RT2可為與8個時鐘對應的時間。 FIG. 3 illustrates an embodiment of the internal operation time request and response based on the register set method in the computing system 10. 3, the storage device 200 may include a register set for storing a plurality of internal operation times RT1 to RTk (k is a natural number of 2 or greater). For example, the first internal operating time RT1 may be a time corresponding to 16 clocks and the second internal operating time RT2 may be a time corresponding to 8 clocks.

主機100的記憶體控制器可基於儲存裝置200的內部操作時間請求而向儲存裝置200發送暫存器選擇訊號。所述暫存器選擇訊號可為用於自暫存器組的暫存器中選擇與內部操作時間請求對應的暫存器的訊號。舉例而言,暫存器選擇訊號可包括內部操作時間同意/拒絕資訊。在實施例中,所述暫存器組可位於圖2中的記憶體模組控制器220中或位於不同的位置中。 The memory controller of the host 100 can send a register selection signal to the storage device 200 based on the internal operation time request of the storage device 200. The register selection signal may be a signal for selecting a register corresponding to the internal operation time request from the register of the register group. For example, the register selection signal may include internal operation time approval/rejection information. In an embodiment, the register set may be located in the memory module controller 220 in FIG. 2 or in a different location.

圖1至圖3中的計算系統10是針對內部操作時間來闡述實施例。在另一實施例中,可在發出內部操作請求及因應於所述 內部操作請求的內部操作命令的上下文中闡述計算系統10。 The computing system 10 in FIG. 1 to FIG. 3 illustrates the embodiment in terms of internal operation time. In another embodiment, an internal operation request can be issued and in response to the The computing system 10 is explained in the context of the internal operation command of the internal operation request.

圖4說明可包括主機100a及非揮發性記憶體模組(NVDIMM)300的計算系統20的另一實施例。主機100a可自非揮發性記憶體模組300接收內部操作請求、基於內部操作請求發出內部操作命令IOP、以及將所發出內部操作命令IOP發送至非揮發性記憶體模組300。內部操作命令IOP可包括內部操作的內部操作時間。在實施例中,內部操作命令IOP可更包括與同意或拒絕內部操作請求對應的資訊。 FIG. 4 illustrates another embodiment of a computing system 20 that may include a host 100a and a non-volatile memory module (NVDIMM) 300. The host 100a can receive an internal operation request from the non-volatile memory module 300, issue an internal operation command IOP based on the internal operation request, and send the issued internal operation command IOP to the non-volatile memory module 300. The internal operation command IOP may include the internal operation time of the internal operation. In an embodiment, the internal operation command IOP may further include information corresponding to the approval or rejection of the internal operation request.

在實施例中,可例如經由資料引腳、資料選通引腳、位址/命令引腳、控制訊號引腳、訊息專用引腳或其組合將內部操作請求傳輸至主機100a。在實施例中,內部操作命令IOP可藉由命令/位址引腳、預留供未來使用(reserved future use,RFU)的引腳、或其組合而產生。 In an embodiment, the internal operation request can be transmitted to the host 100a via, for example, a data pin, a data strobe pin, an address/command pin, a control signal pin, a message dedicated pin, or a combination thereof. In an embodiment, the internal operation command IOP can be generated by a command/address pin, a pin reserved for future use (RFU), or a combination thereof.

當根據內部策略欲實行內部操作時,非揮發性記憶體模組300可向主機100a發送內部操作請求。內部操作請求可被實作為例如訊息/訊號型式。舉例而言,以訊息/訊號型式傳遞的內部操作請求可包括內部操作的內部操作時間。 When an internal operation is to be performed according to the internal strategy, the non-volatile memory module 300 can send an internal operation request to the host 100a. The internal operation request can be implemented as a message/signal type, for example. For example, the internal operation request transmitted in the form of a message/signal may include the internal operation time of the internal operation.

在實施例中,非揮發性記憶體模組300可經由DDRx介面(x為自然數)連接至主機100a。舉例而言,非揮發性記憶體模組300可被實作成滿足下一代DDR4 SDRAM規格。 In an embodiment, the non-volatile memory module 300 can be connected to the host 100a via a DDRx interface (x is a natural number). For example, the non-volatile memory module 300 can be implemented to meet the next-generation DDR4 SDRAM specifications.

在實施例中,可由例如符合電子裝置工程聯合委員會(joint electronic device engineering council,JEDEC)標準的非揮 發性雙列直插記憶體模組(NVDIMM)來實作非揮發性記憶體模組300。非揮發性雙列直插記憶體模組可為即使在意外斷電或系統故障、或者即使在系統正常結束的同時發生電力中斷時仍保持資料的記憶體模組。非揮發性雙列直插記憶體模組可用於改良應用效能、從資料安全系統的故障進行恢復的時間、以及固態驅動機的耐用性及可靠性。 In an embodiment, for example, a non-volatile electronic device conforming to the joint electronic device engineering council (JEDEC) standard can be used. Develop a dual in-line memory module (NVDIMM) to implement the non-volatile memory module 300. The non-volatile dual-in-line memory module can be a memory module that retains data even in the event of an unexpected power failure or system failure, or even when a power interruption occurs while the system ends normally. Non-volatile dual in-line memory modules can be used to improve application performance, recovery time from data security system failures, and the durability and reliability of solid-state drives.

非揮發性雙列直插記憶體模組可具有各種形式。非揮發性雙列直插記憶體模組的一個實施例是以記憶體速度或近似記憶體速度進行存取的可按位元組定址的記憶體映射裝置。支援DDR4 SDRAM的非揮發性雙列直插記憶體模組可供許多硬體供應商中的任一者商用。非揮發性雙列直插記憶體模組的另一實施例是位於互連通道上的快閃裝置模組。此種非揮發性雙列直插記憶體模組可例如藉由主機的驅動器區塊進行存取。當出現前端快取未中(front-end cache miss)時,可對快閃裝置進行存取。非揮發性雙列直插記憶體模組的另一實施例是具有可快速存取的動態隨機存取記憶體及高容量非揮發性記憶體的所有優點的模組。 Non-volatile dual in-line memory modules can have various forms. One embodiment of the non-volatile dual in-line memory module is a memory mapping device that can be accessed at or near memory speed and can be addressed by byte. Non-volatile dual in-line memory modules that support DDR4 SDRAM are commercially available from any of many hardware vendors. Another embodiment of the non-volatile dual in-line memory module is a flash device module located on the interconnection channel. Such non-volatile dual in-line memory modules can be accessed, for example, through the drive block of the host. When a front-end cache miss occurs, the flash device can be accessed. Another embodiment of the non-volatile dual in-line memory module is a module with all the advantages of fast-access dynamic random access memory and high-capacity non-volatile memory.

非揮發性記憶體模組300可包括訊息通道,內部操作請求訊息經由所述訊息通道被傳輸至主機100a。在實施例中,可使用DQ通道、DQS通道、時鐘通道、控制訊號通道、或其組合來作為訊息通道。在另一實施例中,訊息通道可具有用於傳遞內部操作請求訊息的專用通道。 The non-volatile memory module 300 may include a message channel through which internal operation request messages are transmitted to the host 100a. In an embodiment, a DQ channel, a DQS channel, a clock channel, a control signal channel, or a combination thereof can be used as the message channel. In another embodiment, the message channel may have a dedicated channel for transmitting internal operation request messages.

在實施例中,內部操作請求訊息可包括自將實行內部操 作的非揮發性記憶體模組300請求內部操作時間,以使得主機100a不會向非揮發性記憶體模組300發送新命令達預定時間。在另一實施例中,即便主機100a發出新命令達預定時間,接收到內部操作命令的非揮發性記憶體模組300仍可忽略所述新命令。 In an embodiment, the internal operation request message may include the self-initiated internal operation The configured non-volatile memory module 300 requests the internal operation time so that the host 100a will not send a new command to the non-volatile memory module 300 for a predetermined time. In another embodiment, even if the host 100a issues a new command for a predetermined time, the non-volatile memory module 300 that has received the internal operation command can still ignore the new command.

在實施例中,內部操作時間可例如基於非揮發性記憶體模組300所實行的內部操作的種類而變化。舉例而言,再新操作的內部操作時間可為約幾微秒。內部資料傳輸操作的內部操作時間可為例如約幾百微秒。 In an embodiment, the internal operation time may vary based on the type of internal operation performed by the non-volatile memory module 300, for example. For example, the internal operation time for a new operation may be about several microseconds. The internal operation time of the internal data transmission operation may be, for example, about several hundred microseconds.

在實施例中,當接收到內部操作請求時,主機100a可同意或拒絕內部操作請求。舉例而言,若主機100a同意內部操作請求,則主機100a可發出與內部操作請求對應的內部操作命令IOP並將內部操作命令IOP發送至非揮發性記憶體模組300。舉例而言,若主機100a拒絕內部操作請求,則非揮發性記憶體模組300可推遲內部操作。在實施例中,非揮發性記憶體模組300可在沒有來自主機100a的中斷指令的情況下在內部操作時間期間實行內部操作。 In an embodiment, when an internal operation request is received, the host 100a may approve or reject the internal operation request. For example, if the host 100a agrees to the internal operation request, the host 100a may issue an internal operation command IOP corresponding to the internal operation request and send the internal operation command IOP to the non-volatile memory module 300. For example, if the host 100a rejects the internal operation request, the non-volatile memory module 300 can postpone the internal operation. In an embodiment, the non-volatile memory module 300 can perform internal operations during the internal operation time without an interrupt command from the host 100a.

圖5說明非揮發性記憶體模組300可包括第一非揮發性記憶體310L及第二非揮發性記憶體310R、第一揮發性記憶體320L及第二揮發性記憶體320R、第一資料緩衝器330L及第二資料緩衝器330R、以及記憶體控制電路(memory control circuit,MMCD)340的另一實施例。 5 illustrates that the non-volatile memory module 300 may include a first non-volatile memory 310L and a second non-volatile memory 310R, a first volatile memory 320L and a second volatile memory 320R, and first data Another embodiment of the buffer 330L, the second data buffer 330R, and a memory control circuit (MMCD) 340.

第一非揮發性記憶體310L及第二非揮發性記憶體310R 中的每一者可包括至少一個非揮發性記憶體。在實施例中,所述至少一個非揮發性記憶體可為反及式快閃記憶體、垂直反及式快閃記憶體(vertical NAND flash memory,VNAND)、反或快閃記憶體、電阻式隨機存取記憶體(RRAM)、相變隨機存取記憶體(PRAM)、磁阻式隨機存取記憶體(magneto-resistive random access memory,MRAM)、鐵電式隨機存取記憶體(ferroelectric random access memory,FRAM)、自旋轉移矩磁性隨機存取記憶體(spin transfer torque random access memory,STT-RAM)、或閘流體隨機存取記憶體(thyristor RAM,TRAM)。 First non-volatile memory 310L and second non-volatile memory 310R Each of them may include at least one non-volatile memory. In an embodiment, the at least one non-volatile memory may be a NAND flash memory, a vertical NAND flash memory (VNAND), a NAND flash memory, or a resistive flash memory. Random access memory (RRAM), phase change random access memory (PRAM), magneto-resistive random access memory (MRAM), ferroelectric random access memory (ferroelectric random access memory) access memory, FRAM), spin transfer torque random access memory (STT-RAM), or thyristor RAM (TRAM).

另外,非揮發性記憶體可被實作成具有三維陣列結構。在實施例中,提供一種三維(three-dimensional,3D)記憶體陣列。所述3D記憶體陣列可以單片形式形成於記憶體胞元陣列的一或多個物理層階(physical level),所述記憶體胞元陣列具有位於矽基板上方的主動區域以及與該些記憶體胞元的操作相關聯的電路系統,無論相關聯的電路系統是位於基板上方還是基板內。相關聯的電路系統位於此基板上方或此基板內。用語「以單片形式」可對應於將陣列的每一層階的各層直接沈積於所述陣列的每一下伏層階(underlying level)的層上。 In addition, non-volatile memory can be implemented with a three-dimensional array structure. In an embodiment, a three-dimensional (3D) memory array is provided. The 3D memory array may be monolithically formed at one or more physical levels of the memory cell array. The memory cell array has an active area on a silicon substrate and is connected to the memory cell array. The circuit system associated with the operation of the soma, regardless of whether the associated circuit system is located above or inside the substrate. The associated circuit system is located above or inside the substrate. The term "in a monolithic form" may correspond to directly depositing each layer of each level of the array on the layer of each underlying level of the array.

在實施例中,3D記憶體陣列包括被垂直地定向成使得至少一個記憶體胞元位於另一記憶體胞元之上的垂直反及串(vertical NAND string)。所述至少一個記憶體胞元可包括電荷陷獲層。每一垂直反及串可包括位於記憶體胞元之上的至少一個選 擇電晶體。至少一個選擇電晶體可具有與記憶體胞元相同的結構且可與記憶體胞元以單片形式一起形成。 In an embodiment, the 3D memory array includes a vertical NAND string oriented vertically such that at least one memory cell is located above another memory cell. The at least one memory cell may include a charge trapping layer. Each vertical reverse and string may include at least one option located on the memory cell Selective transistor. The at least one selective transistor may have the same structure as the memory cell and may be formed together with the memory cell in a monolithic form.

三維記憶體陣列包括多個層階且具有在各層階之間共享的字元線或位元線。以下關於由三星電子公司採用的包括多個層階的三維記憶體陣列的示例性配置(其中字元線及/或位元線在各層級之間共享)的檔案併入本案供參考:美國專利第7,679,133號、第8,553,466號、第8,654,587號及第8,559,235號以及美國專利公開案第2011/0233648號。非揮發性記憶體可應用於其中使用絕緣層作為電荷儲存層的電荷陷獲快閃記憶體(charge trap flash,CTF)以及其中使用導電性浮閘作為電荷儲存層的快閃記憶體裝置。 The three-dimensional memory array includes multiple levels and has word lines or bit lines shared between the levels. The following files about an exemplary configuration of a three-dimensional memory array including multiple levels (where character lines and/or bit lines are shared among the levels) adopted by Samsung Electronics are incorporated in this case for reference: US Patent No. 7,679,133, No. 8,553,466, No. 8,654,587 and No. 8,559,235 and US Patent Publication No. 2011/0233648. Non-volatile memory can be applied to charge trap flash (CTF) in which an insulating layer is used as a charge storage layer and flash memory devices in which a conductive floating gate is used as a charge storage layer.

第一揮發性記憶體320L及第二揮發性記憶體320R中的每一者可包括至少一個動態隨機存取記憶體。在實施例中,所述至少一個動態隨機存取記憶體可由雙埠動態隨機存取記憶體來實作。舉例而言,所述至少一個動態隨機存取記憶體的第一埠可連接至第一非揮發性記憶體310L及第二非揮發性記憶體310R中的至少一者,且所述至少一個動態隨機存取記憶體的第二埠可連接至第一資料緩衝器330L及第二資料緩衝器330R中的對應一者。 Each of the first volatile memory 320L and the second volatile memory 320R may include at least one dynamic random access memory. In an embodiment, the at least one dynamic random access memory may be implemented by a dual-port dynamic random access memory. For example, the first port of the at least one dynamic random access memory can be connected to at least one of the first non-volatile memory 310L and the second non-volatile memory 310R, and the at least one dynamic The second port of the random access memory can be connected to a corresponding one of the first data buffer 330L and the second data buffer 330R.

記憶體控制電路340可被實作成自主機100a接收命令或位址並產生用於控制第一非揮發性記憶體310L及第二非揮發性記憶體310R的第一命令/位址CAN或用於控制第一揮發性記憶體320L及第二揮發性記憶體320R的第二命令/位址CAD。 The memory control circuit 340 can be implemented to receive a command or address from the host 100a and generate a first command/address CAN for controlling the first non-volatile memory 310L and the second non-volatile memory 310R or for A second command/address CAD for controlling the first volatile memory 320L and the second volatile memory 320R.

在實施例中,記憶體控制電路340可發出對於內部操作 的內部操作請求並將所述內部操作請求發送至主機100a。在實施例中,記憶體控制電路340可自主機100a接收內部操作命令IOP並基於所接收內部操作命令IOP實行內部操作。內部操作命令IOP可包括內部操作的內部操作時間。 In an embodiment, the memory control circuit 340 can issue And send the internal operation request to the host 100a. In an embodiment, the memory control circuit 340 may receive the internal operation command IOP from the host 100a and perform internal operations based on the received internal operation command IOP. The internal operation command IOP may include the internal operation time of the internal operation.

圖5中的非揮發性記憶體模組300可包括相對於記憶體控制電路340而排列於左側上的至少一第一非揮發性記憶體310L、至少一第一揮發性記憶體320L、及第一資料緩衝器330L、以及相對於記憶體控制電路340而排列於右側上的至少一第二非揮發性記憶體310R、至少一第二揮發性記憶體320R、及第二資料緩衝器330R。在另一實施例中,非揮發性記憶體模組300可具有記憶體、記憶體控制電路、緩衝器等的不同的排列。 The non-volatile memory module 300 in FIG. 5 may include at least one first non-volatile memory 310L, at least one first volatile memory 320L, and a first non-volatile memory 310L arranged on the left side relative to the memory control circuit 340. A data buffer 330L, and at least one second non-volatile memory 310R, at least one second volatile memory 320R, and a second data buffer 330R arranged on the right side relative to the memory control circuit 340. In another embodiment, the non-volatile memory module 300 may have different arrangements of memory, memory control circuits, buffers, etc.

圖6說明與非揮發性記憶體模組300的內部操作請求對應的主機介面的時序的實施例。在此實施例中,可經由主機100a與非揮發性記憶體模組300之間的主機介面而將內部操作請求傳遞至主機100a。主機介面可為例如記憶體內部通道。在實施例中,內部操作請求可包括用以完成內部操作的內部操作時間或關於內部操作時間的資訊。 FIG. 6 illustrates an embodiment of the timing of the host interface corresponding to the internal operation request of the non-volatile memory module 300. In this embodiment, the internal operation request can be transmitted to the host 100a through the host interface between the host 100a and the non-volatile memory module 300. The host interface can be, for example, a memory internal channel. In an embodiment, the internal operation request may include internal operation time for completing the internal operation or information about the internal operation time.

當經由訊息引腳MSG將包括內部操作請求的訊息傳遞至主機100a時,亦可將與內部操作時間對應的資訊發送至主機100a。與內部操作時間對應的資訊可經由資料引腳DQ0至資料引腳DQ7傳遞。在一個實施例中,與內部操作時間對應的資訊可經由例如CKE引腳、CS引腳、CK引腳、或ODT引腳等命令/位址 引腳CA傳輸。 When the message including the internal operation request is transmitted to the host 100a via the message pin MSG, the information corresponding to the internal operation time can also be sent to the host 100a. The information corresponding to the internal operation time can be transmitted through the data pin DQ0 to the data pin DQ7. In one embodiment, the information corresponding to the internal operation time can be obtained via commands/addresses such as CKE pin, CS pin, CK pin, or ODT pin. Pin CA transmission.

與內部操作時間相關的資訊可藉由訊息引腳MSG的雙態觸變而選擇性地傳輸至主機100a。在實施例中,訊息引腳MSG的連續雙態觸變頻率可表示內部操作時間。舉例而言,訊息引腳MSG的連續雙態觸變頻率可為內部操作的時間。 The information related to the internal operation time can be selectively transmitted to the host 100a through the toggle of the message pin MSG. In an embodiment, the continuous two-state toggle frequency of the message pin MSG can represent the internal operation time. For example, the continuous two-state toggle frequency of the message pin MSG can be the time of internal operation.

在一個實施例中,訊息中的內部操作請求可為對於所有庫或部分庫的內部操作請求。若主機100a同意對所有庫的內部操作請求,則非揮發性記憶體模組300可對所有庫實行內部操作,同時主機100a不能對非揮發性記憶體模組300進行存取。若主機100a同意對部分庫的內部操作請求,則可僅對藉由內部操作請求而自部分庫中選擇的庫實行內部操作。在此種情形中,可所選擇庫之外的其他庫進行存取以進行讀取/寫入操作。 In one embodiment, the internal operation request in the message may be an internal operation request for all libraries or some libraries. If the host 100a agrees to the internal operation request for all the libraries, the non-volatile memory module 300 can perform internal operations on all the libraries, and the host 100a cannot access the non-volatile memory module 300 at the same time. If the host 100a agrees to the internal operation request for the partial library, the internal operation can be performed only on the library selected from the partial library by the internal operation request. In this case, a library other than the selected library can be accessed for read/write operations.

在實施例中,若接收到內部操作請求及與內部操作時間對應的資訊,則主機100a可確定是否同意或拒絕所述內部操作請求。 In an embodiment, if an internal operation request and information corresponding to the internal operation time are received, the host 100a can determine whether to approve or reject the internal operation request.

若同意內部操作請求,則主機100a可發出內部操作命令IOP,以使得非揮發性記憶體模組300開始內部操作。然後,主機100a在內部操作時間期間可不發出對非揮發性記憶體模組300進行存取的新命令。 If the internal operation request is approved, the host 100a can issue an internal operation command IOP, so that the non-volatile memory module 300 starts the internal operation. Then, the host 100a may not issue a new command to access the non-volatile memory module 300 during the internal operation time.

若拒絕內部操作請求,則主機100a可藉由不實行一個內部操作命令來忽略內部操作請求並發出用於通知拒絕內部操作請求的命令。非揮發性記憶體模組300可辨識主機100a的拒絕通知 並延遲或放棄執行內部操作。在一個實施例中,內部操作時間同意/拒絕資訊可不處於非揮發性記憶體模組300的內部操作請求中。 If the internal operation request is rejected, the host 100a can ignore the internal operation request by not executing an internal operation command and issue a command for notifying the rejection of the internal operation request. The non-volatile memory module 300 can identify the rejection notice of the host 100a And delay or abandon the execution of internal operations. In one embodiment, the internal operation time approval/rejection information may not be in the internal operation request of the non-volatile memory module 300.

圖7說明用於非揮發性記憶體模組300的內部操作請求的主機介面的時序的另一實施例。在此實施例中,可在兩操作步驟式程序(two-operation procedure)中提供內部操作請求。 FIG. 7 illustrates another embodiment of the timing of the host interface for the internal operation request of the non-volatile memory module 300. In this embodiment, the internal operation request can be provided in a two-operation procedure.

在第一個操作中,非揮發性記憶體模組300可經由訊息通道MSG僅將請求進行內部操作的訊號發送至主機100a,並將內部操作時間相關資訊(時間資訊)儲存於非揮發性記憶體模組300的緩衝區域中。 In the first operation, the non-volatile memory module 300 can only send the signal requesting internal operation to the host 100a through the message channel MSG, and store the internal operation time-related information (time information) in the non-volatile memory In the buffer area of the body module 300.

在第二個操作中,主機100a可對緩衝區域進行讀取以發出用於提取內部操作的內部操作時間的讀取命令。在一個實施例中,主機100a可基於所讀取時間資訊發出內部操作命令IOP。然後,非揮發性記憶體模組300可基於內部操作命令IOP而在內部操作時間期間實行內部操作。 In the second operation, the host 100a can read the buffer area to issue a read command for extracting the internal operation time of the internal operation. In one embodiment, the host 100a can issue an internal operation command IOP based on the read time information. Then, the non-volatile memory module 300 can perform internal operations during the internal operation time based on the internal operation command IOP.

另外,在第二個操作中,主機100a發出用於提取緩衝區域的內部操作時間的讀取命令。在另一實施例中,非揮發性記憶體模組300可基於主機100a的內部操作命令IOP而讀取儲存於緩衝區域中的內部操作時間同意/拒絕資訊並實行內部操作達所讀取內部操作時間。 In addition, in the second operation, the host 100a issues a read command for extracting the internal operation time of the buffer area. In another embodiment, the non-volatile memory module 300 can read the internal operation time approval/rejection information stored in the buffer area based on the internal operation command IOP of the host 100a and execute the internal operation to achieve the read internal operation time.

圖8說明包括連接至一個記憶體通道的兩個記憶體模組的計算系統的另一實施例。參照圖8,主機可經由一個記憶體通道 CH連接至第一記憶體模組DIMM1及第二記憶體模組DIMM2。第一記憶體模組DIMM1及第二記憶體模組DIMM2中的每一者可實行內部操作。為便於說明,以下假設第二記憶體模組DIMM2實行內部操作。 FIG. 8 illustrates another embodiment of a computing system including two memory modules connected to one memory channel. Referring to Figure 8, the host can pass through a memory channel CH is connected to the first memory module DIMM1 and the second memory module DIMM2. Each of the first memory module DIMM1 and the second memory module DIMM2 can perform internal operations. For ease of description, the following assumes that the second memory module DIMM2 performs internal operations.

圖9說明在圖8所示計算系統的第二記憶體模組DIMM2實行內部操作時,第一記憶體模組DIMM1及第二記憶體模組DIMM2的時序的實施例。 FIG. 9 illustrates an embodiment of the timing of the first memory module DIMM1 and the second memory module DIMM2 when the second memory module DIMM2 of the computing system shown in FIG. 8 performs internal operations.

參照圖8及圖9,第二記憶體模組DIMM2可基於內部操作命令IOP在內部操作時間期間實行內部操作。內部操作可為在第二記憶體模組DIMM2中實行的資料傳輸操作。主機可在實行內部操作的同時,禁止對第二記憶體模組DIMM2進行的存取。即使主機不對第二記憶體模組DIMM2進行存取,主機仍可對處於空閒狀態的第一記憶體模組DIMM1進行存取。舉例而言,在圖9中,第一記憶體模組DIMM1可依序地接收預充電命令PRE、現用命令ACT、及讀取命令/位址RD以及輸出與讀取命令/位址RD對應的資料D0至資料D7。然後,第一記憶體模組DIMM1可繼續實行下一讀取操作。 8 and 9, the second memory module DIMM2 can perform internal operations during the internal operation time based on the internal operation command IOP. The internal operation can be a data transfer operation performed in the second memory module DIMM2. The host can prohibit access to the second memory module DIMM2 while performing internal operations. Even if the host does not access the second memory module DIMM2, the host can still access the first memory module DIMM1 in an idle state. For example, in FIG. 9, the first memory module DIMM1 can sequentially receive the precharge command PRE, the active command ACT, and the read command/address RD, and output the corresponding command/address RD. Data D0 to Data D7. Then, the first memory module DIMM1 can continue to perform the next read operation.

計算系統可在主機與第一記憶體模組DIMM1之間的資料通訊之後隱藏第二記憶體模組DIMM2的內部操作。由於第二記憶體模組DIMM2的內部操作被隱藏,因此系統的效能可得到提高。 The computing system can hide the internal operation of the second memory module DIMM2 after the data communication between the host and the first memory module DIMM1. Since the internal operation of the second memory module DIMM2 is hidden, the performance of the system can be improved.

Figure 106110214-A0305-02-0021-20
Figure 106110214-A0305-02-0021-20

表一說明由計算系統的主機發出的內部操作命令的實施例。參照表一,主機可基於記憶體模組DIMM/非揮發性記憶體模組NVDIMM的內部操作請求而在同意所述內部操作時發出內部操作命令IOPA及內部操作命令IOPB。內部操作命令IOPA可指示對記憶體模組DIMM/非揮發性記憶體模組NVDIMM的所有庫進行內部操作。第二內部操作命令IOPB可指示對記憶體模組DIMM/非揮發性記憶體模組NVDIMM的單個庫進行內部操作。 Table 1 illustrates an example of internal operation commands issued by the host computer of the computing system. Referring to Table 1, the host can issue the internal operation command IOPA and the internal operation command IOPB when agreeing to the internal operation based on the internal operation request of the memory module DIMM/non-volatile memory module NVDIMM. The internal operation command IOPA can instruct to perform internal operations on all banks of the memory module DIMM/non-volatile memory module NVDIMM. The second internal operation command IOPB can instruct to perform internal operations on a single bank of the memory module DIMM/non-volatile memory module NVDIMM.

在實施例中,如同表一中一樣,可利用位址引腳來區分所有庫的內部操作及單個庫的內部操作。在實施例中,內部操作命令IOPA及內部操作命令IOPB可由命令/位址引腳的特定組合產生。此種組合可被預留以供典型DDR4 SDRAM未來使用(reserved future use,RFU)。在實施例中,與內部操作命令IOPA及內部操作命令IOPB相關聯的命令/位址引腳可包括CKE、CS、CAS、RAS、ACT、庫位址及位址引腳。 In an embodiment, as in Table 1, the address pins can be used to distinguish the internal operations of all libraries and the internal operations of a single library. In an embodiment, the internal operation command IOPA and the internal operation command IOPB can be generated by a specific combination of command/address pins. This combination can be reserved for typical DDR4 SDRAM (reserved future use, RFU). In an embodiment, the command/address pins associated with the internal operation command IOPA and the internal operation command IOPB may include CKE, CS, CAS, RAS, ACT, bank address and address pins.

在實施例中,內部操作命令IOPA及內部操作命令IOPB可包括根據應用於位址引腳的程式化值而變化的內部操作時間。舉例而言,程式化值可被程式化成與位址引腳A0至位址引腳A9對應。 In an embodiment, the internal operation command IOPA and the internal operation command IOPB may include an internal operation time that varies according to the programmed value applied to the address pin. For example, the programmed value can be programmed to correspond to the address pin A0 to the address pin A9.

在圖8及圖9中,一個計算系統將兩個可彼此相同的記憶體模組DIMM1及記憶體模組DIMM2連接至一個記憶體通道。在另一實施例中,計算系統可將記憶體模組DIMM及非揮發性記憶體模組NVDIMM連接至一個記憶體通道。 In FIG. 8 and FIG. 9, a computing system connects two memory modules DIMM1 and a memory module DIMM2 that can be identical to each other to a memory channel. In another embodiment, the computing system can connect the memory module DIMM and the non-volatile memory module NVDIMM to one memory channel.

圖10說明伺服器系統的實施例。參照圖10,計算系統可將記憶體模組DIMM及非揮發性記憶體模組NVDIMM連接至一個記憶體通道。主機可在對非揮發性記憶體模組NVDIMM實行上述內部操作的同時對記憶體模組DIMM進行存取,反之亦然。舉例而言,主機可在對記憶體模組DIMM實行上述內部操作的同時對非揮發性記憶體模組NVDIMM進行存取。 Figure 10 illustrates an embodiment of a server system. 10, the computing system can connect the memory module DIMM and the non-volatile memory module NVDIMM to one memory channel. The host can access the memory module DIMM while performing the above-mentioned internal operations on the non-volatile memory module NVDIMM, and vice versa. For example, the host can access the non-volatile memory module NVDIMM while performing the above-mentioned internal operations on the memory module DIMM.

在圖10中的計算系統中,記憶體模組DIMM及非揮發性記憶體模組NVDIMM連接至一個記憶體通道。在一個實施例中,計算系統包括分別連接至的兩個記憶體通道的記憶體模組DIMM及非揮發性記憶體模組NVDIMM。 In the computing system in FIG. 10, the memory module DIMM and the non-volatile memory module NVDIMM are connected to a memory channel. In one embodiment, the computing system includes a memory module DIMM and a non-volatile memory module NVDIMM connected to two memory channels respectively.

圖11說明計算系統的另一實施例。參照圖11,主機可經由第一通道CH1而與記憶體模組DIMM進行連接且經由第二通道CH2而與非揮發性記憶體模組NVDIMM進行連接。主機可在對非揮發性記憶體模組NVDIMM實行上述內部操作的同時對記憶體模組DIMM進行存取。此實施例可適用於例如以晶片形式而非記憶體模組形式實作的動態隨機存取記憶體。 Figure 11 illustrates another embodiment of a computing system. 11, the host can connect to the memory module DIMM through the first channel CH1 and connect to the non-volatile memory module NVDIMM through the second channel CH2. The host can access the memory module DIMM while performing the above-mentioned internal operations on the non-volatile memory module NVDIMM. This embodiment can be applied to, for example, a dynamic random access memory implemented in the form of a chip instead of a memory module.

圖12說明可包括記憶體胞元陣列410及再新控制器420的動態隨機存取記憶體400的實施例。記憶體胞元陣列410可包 括分別排列於字元線與位元線的交叉點處的多個動態隨機存取記憶體胞元。再新控制器420可實行動態隨機存取記憶體胞元的再新操作。在實施例中,再新控制器420可基於主機或外部裝置的再新命令實行再新操作。 FIG. 12 illustrates an embodiment of a dynamic random access memory 400 that may include a memory cell array 410 and a refresh controller 420. As shown in FIG. Memory cell array 410 can be packaged It includes a plurality of dynamic random access memory cells respectively arranged at the intersection of the word line and the bit line. The refresh controller 420 can perform the refresh operation of the dynamic random access memory cell. In an embodiment, the refresh controller 420 may perform a refresh operation based on a refresh command from the host or an external device.

在實施例中,再新控制器420可在欲實行內部操作時自主機/外部裝置請求內部操作時間。主機/外部裝置可基於內部操作時間請求向再新控制器420發送內部操作時間同意/拒絕資訊。再新控制器420可接收內部操作時間同意/拒絕資訊以在內部操作時間期間實行再新操作。在實施例中,再新控制器420可對所有庫或部分庫實行再新操作。此一實施例可適用於例如其中使用電阻作為位元的3DX點(Xpoint)記憶體。 In an embodiment, the refresh controller 420 may request the internal operation time from the host/external device when the internal operation is to be performed. The host/external device may send internal operation time approval/rejection information to the renew controller 420 based on the internal operation time request. The refresh controller 420 may receive the internal operation time approval/rejection information to perform the refresh operation during the internal operation time. In an embodiment, the renew controller 420 may perform a renew operation on all or some of the libraries. This embodiment can be applied to, for example, 3DX point (Xpoint) memory in which resistors are used as bits.

圖13說明可包括處理器41、記憶體模組(雙列直插記憶體模組)42、以及非揮發性記憶體(nonvolatile memory,NVM)43的計算系統40的實施例。處理器41可控制記憶體模組42及非揮發性記憶體43。在實施例中,處理器41可基於記憶體模組42的內部操作請求發出內部操作命令。 FIG. 13 illustrates an embodiment of a computing system 40 that may include a processor 41, a memory module (dual in-line memory module) 42, and a nonvolatile memory (NVM) 43. The processor 41 can control the memory module 42 and the non-volatile memory 43. In an embodiment, the processor 41 may issue an internal operation command based on an internal operation request of the memory module 42.

記憶體模組42可經由雙倍資料速率介面連接至處理器41。記憶體模組42可在欲實行內部操作時向處理器41發送內部操作請求。另外,記憶體模組42可被實作成基於來自處理器41的內部操作命令實行內部操作。 The memory module 42 can be connected to the processor 41 via a double data rate interface. The memory module 42 can send an internal operation request to the processor 41 when an internal operation is to be performed. In addition, the memory module 42 can be implemented to perform internal operations based on internal operation commands from the processor 41.

非揮發性記憶體43可經由DDR-T(交易)介面連接至處理器41。在此種情形中,記憶體模組42可實行非揮發性記憶體 43的快取功能。在實施例中,非揮發性記憶體43可為3D-X點記憶體。此一實施例可適用於例如非揮發性記憶體43的內部操作。 The non-volatile memory 43 can be connected to the processor 41 via a DDR-T (transaction) interface. In this case, the memory module 42 can implement non-volatile memory 43's cache function. In an embodiment, the non-volatile memory 43 may be a 3D-X point memory. This embodiment can be applied to the internal operation of the non-volatile memory 43, for example.

圖14說明一種操作主機的方法的實施例。在此種方法中,主機可自連接至記憶體通道的各種類型的儲存裝置(雙列直插記憶體模組、非揮發性雙列直插記憶體模組、動態隨機存取記憶體、非揮發性記憶體、固態驅動機、嵌式多媒體卡、安全數位卡、Unix檔案系統(Unix file system,UFS)等)接收用於實行內部操作的內部操作時間請求(S110)。主機可基於內部操作時間請求來同意或拒絕內部操作(例如,儲存操作)。主機可發出與內部操作時間請求對應的內部操作命令。所發出的內部操作命令可包括內部操作時間(S120)。可將所發出的內部操作命令傳遞至儲存裝置,且儲存裝置可基於內部操作命令在內部操作時間期間實行內部操作。 Figure 14 illustrates an embodiment of a method of operating a host. In this method, the host can connect to the memory channel of various types of storage devices (dual in-line memory module, non-volatile dual in-line memory module, dynamic random access memory, non-volatile memory). The volatile memory, solid-state drive, embedded multimedia card, secure digital card, Unix file system (Unix file system, UFS), etc.) receive an internal operation time request for implementing internal operations (S110). The host may approve or reject internal operations (for example, storage operations) based on the internal operation time request. The host can issue an internal operation command corresponding to the internal operation time request. The issued internal operation command may include the internal operation time (S120). The issued internal operation command can be transferred to the storage device, and the storage device can perform the internal operation during the internal operation time based on the internal operation command.

圖15說明一種操作儲存裝置的方法的實施例。參照圖14至圖15,在此種方法中,儲存裝置可根據內部策略確定是否將實行內部操作且可將對於內部操作的內部操作時間請求發送至主機(S210)。可以各種形式(例如,訊息形式或訊號形式)將內部操作時間請求傳遞至主機。舉例而言,儲存裝置可被實作成向主機發送包括內部操作時間請求的訊息。 Figure 15 illustrates an embodiment of a method of operating a storage device. Referring to FIGS. 14 to 15, in this method, the storage device can determine whether internal operations will be performed according to internal policies and can send internal operation time requests for internal operations to the host (S210). The internal operation time request can be transmitted to the host in various forms (for example, a message form or a signal form). For example, the storage device can be implemented to send a message including an internal operation time request to the host.

然後,儲存裝置可自主機接收包括指示同意或拒絕內部操作時間的資訊的內部操作命令(S220)。儲存裝置可基於內部操作命令實行內部操作的全部或一部分(S230)。 Then, the storage device may receive an internal operation command including information indicating approval or rejection of the internal operation time from the host (S220). The storage device may perform all or part of the internal operation based on the internal operation command (S230).

在實施例中,當內部操作命令包括指示同意內部操作時間的資訊時,儲存裝置可在實行內部操作時忽略由主機發出的新命令。在實施例中,當內部操作命令包括指示拒絕內部操作時間的資訊時,儲存裝置可接收或處理由主機發出的新命令。儲存裝置可在實行內部操作的同時接收並緩衝由主機發出的新命令。儲存裝置可基於新命令而在保持內部操作之後,首先處理來自主機的新命令。此實施例可適用於例如資料伺服器。 In an embodiment, when the internal operation command includes information indicating that the internal operation time is approved, the storage device can ignore the new command issued by the host when performing the internal operation. In an embodiment, when the internal operation command includes information indicating the rejection of the internal operation time, the storage device may receive or process a new command issued by the host. The storage device can receive and buffer new commands issued by the host while performing internal operations. The storage device may first process the new command from the host after maintaining the internal operation based on the new command. This embodiment can be applied to, for example, a data server.

圖16說明可包括相關資料庫管理系統(related database management system,RDBMS)51、快取伺服器52、及應用伺服器53的資料伺服器系統50的實施例。快取伺服器52可基於來自資料庫管理系統51的去能通知(disable notification)而維持及刪除彼此不同的鍵-值對(key and value pairs)。相關資料庫管理系統51、快取伺服器52、或應用伺服器53中的至少一者可由參照圖1至圖15闡述的主機、記憶體模組DIMM、非揮發性記憶體模組NVDIMM、動態隨機存取記憶體或非揮發性記憶體實作。 16 illustrates an embodiment of a data server system 50 that may include a related database management system (RDBMS) 51, a cache server 52, and an application server 53. The cache server 52 can maintain and delete different key and value pairs based on a disable notification from the database management system 51. At least one of the related database management system 51, the cache server 52, or the application server 53 can be the host, memory module DIMM, non-volatile memory module NVDIMM, dynamic Random access memory or non-volatile memory is implemented.

可藉由將由電腦、處理器、控制器或其他訊號處理裝置執行的碼或指令來實行本文所述的方法、製程及/或操作。所述電腦、處理器、控制器或其他訊號處理裝置可為本文所述者或除了本文所述元件之外的元件。由於詳細闡述了作為形成方法(或電腦、處理器、控制器或其他訊號處理裝置的操作)的基礎的演算法,因此用於實作所述方法實施例的操作的碼或指令可將電腦、處理器、控制器或其他訊號處理裝置轉變成用於實行本文所述方 法的專用處理器。 The methods, processes, and/or operations described herein can be implemented by codes or instructions to be executed by a computer, processor, controller, or other signal processing device. The computer, processor, controller, or other signal processing device may be those described herein or components other than those described herein. Since the algorithm that forms the basis of the method (or the operation of a computer, processor, controller, or other signal processing device) is described in detail, the code or instruction used to implement the operation of the method embodiment can be used for the computer, The processor, controller, or other signal processing device is transformed into the method used to implement the methods described herein. Dedicated processor for law.

本文中所揭露的實施例的控制器、處理器及其他處理特徵可實作於邏輯中,所述邏輯例如可包括硬體、軟體或同時包括兩者。當至少部分地實作於硬體中時,控制器、處理器、及其他處理特徵可為例如包括但不限於以下積體電路的各種積體電路中的任一者:應用專用積體電路、現場可程式化閘陣列、邏輯閘的組合、系統晶片、微處理器、或另一種類型的處理或控制電路。 The controllers, processors, and other processing features of the embodiments disclosed herein may be implemented in logic, which may include hardware, software, or both. When implemented at least partially in hardware, the controller, processor, and other processing features can be, for example, any of various integrated circuits including but not limited to the following integrated circuits: application-specific integrated circuits, Field programmable gate array, combination of logic gates, system chip, microprocessor, or another type of processing or control circuit.

當至少部分地實作於軟體中時,控制器、處理器及其他處理特徵可包括例如用於儲存將例如由電腦、處理器、微處理器、控制器或其他訊號處理裝置執行的碼或指令的記憶體或其他儲存裝置。所述電腦、處理器、微處理器、控制器或其他訊號處理裝置可為本文所述者或除本文所述元件之外的元件。由於詳細闡述了作為形成方法(或電腦、處理器、微處理器、控制器或其他訊號處理裝置的操作)的基礎的演算法,因此用於實作所述方法實施例的操作的碼或指令可將電腦、處理器、控制器或其他訊號處理裝置轉變成用於實行本文所述方法的專用處理器。 When implemented at least partially in software, the controller, processor, and other processing features may include, for example, codes or instructions for storing, for example, a computer, processor, microprocessor, controller, or other signal processing device. Memory or other storage device. The computer, processor, microprocessor, controller, or other signal processing device may be those described herein or components other than those described herein. Since the algorithm that is the basis of the formation method (or the operation of a computer, processor, microprocessor, controller or other signal processing device) is described in detail, the code or instruction used to implement the operation of the method embodiment A computer, processor, controller, or other signal processing device can be transformed into a dedicated processor for implementing the methods described herein.

根據上述實施例中的一或多者,儲存裝置可直接自主機請求進行儲存裝置的內部操作的內部操作時間,且主機可基於所述請求而在內部操作時間期間將關於時間的授權傳遞至儲存裝置。因此,儲存裝置可充分地實行內部操作。 According to one or more of the above embodiments, the storage device can directly request the internal operation time of the internal operation of the storage device from the host, and the host can transfer the authorization regarding time to the storage during the internal operation time based on the request. Device. Therefore, the storage device can fully perform internal operations.

本文中已揭露了各種示例性實施例,且儘管使用具體用語,但該些用語僅用於且應被解釋為通常意義及闡述性意義,而 並非用於限制目的。在某些情形中,除非另外指明,否則結合特定實施例所闡述的特徵、特性、及/或元件可單獨使用或與結合其他實施例所闡述的特徵、特性、及/或元件組合使用。因此,應理解,在不背離在申請專利範圍中所述的實施例的精神及範圍的條件下,可作出形式及細節上的各種改變。 Various exemplary embodiments have been disclosed herein, and although specific terms are used, these terms are only used and should be interpreted as general and explanatory meanings, and Not for restrictive purposes. In some cases, unless otherwise specified, the features, characteristics, and/or elements described in conjunction with specific embodiments may be used alone or in combination with features, characteristics, and/or elements described in conjunction with other embodiments. Therefore, it should be understood that various changes in form and details can be made without departing from the spirit and scope of the embodiments described in the scope of the patent application.

100a:主機 100a: host

300:非揮發性記憶體模組 300: Non-volatile memory module

310L:第一非揮發性記憶體 310L: the first non-volatile memory

310R:第二非揮發性記憶體 310R: second non-volatile memory

320L:第一揮發性記憶體 320L: the first volatile memory

320R:第二揮發性記憶體 320R: second volatile memory

330L:第一資料緩衝器 330L: the first data buffer

330R:第二資料緩衝器 330R: second data buffer

340:記憶體控制電路 340: Memory control circuit

CAD:第二命令/位址 CAD: second command/address

CAN:第一命令/位址 CAN: First command/address

DB:資料緩衝器 DB: data buffer

DQ:資料 DQ: Information

Claims (20)

一種操作儲存裝置的方法,所述方法包括:響應於檢測到需要內部操作而無需外部裝置的任何請求,向所述外部裝置發送對於獲得所述儲存裝置的所述內部操作的同意的內部操作請求,所述內部操作請求包括指示內部操作時間的訊息且經由所述儲存裝置所產生;自所述外部裝置接收因應於所述內部操作請求的內部操作命令,所述內部操作命令指示同意或拒絕所述內部操作請求;以及當所請求的所述內部操作經由所述外部裝置同意時,在藉由所述內部操作命令而同意的所述內部操作時間期間經由所述儲存裝置實行所述內部操作。 A method of operating a storage device, the method comprising: in response to detecting that an internal operation is required without any request from an external device, sending an internal operation request to the external device for obtaining consent for the internal operation of the storage device , The internal operation request includes a message indicating the internal operation time and is generated by the storage device; an internal operation command corresponding to the internal operation request is received from the external device, and the internal operation command indicates approval or rejection of the The internal operation request; and when the requested internal operation is approved by the external device, the internal operation is performed via the storage device during the internal operation time agreed by the internal operation command. 如申請專利範圍第1項所述的方法,其中所述方法更包括在向所述外部裝置發送訊息就緒訊號,並發送所述內部操作請求之前接收對於所述儲存裝置的訊息讀取命令。 The method according to claim 1, wherein the method further includes receiving a message read command for the storage device before sending a message ready signal to the external device and sending the internal operation request. 如申請專利範圍第1項所述的方法,其中所述內部操作時間指示實行所述內部操作所需要的時間量。 The method according to claim 1, wherein the internal operation time indicates the amount of time required to perform the internal operation. 如申請專利範圍第1項所述的方法,其中請求所述內部操作時間包括:將所述內部操作時間儲存於所述儲存裝置的緩衝區域中;以及使用訊息通道將所述內部操作請求傳遞至所述外部裝置, 其中所述方法包括當接收到所述內部操作命令時讀取儲存於所述緩衝區域中的所述內部操作時間並實行所述內部操作達所讀取的所述內部操作時間。 The method according to claim 1, wherein requesting the internal operation time includes: storing the internal operation time in a buffer area of the storage device; and using a message channel to transmit the internal operation request to The external device, The method includes reading the internal operation time stored in the buffer area when the internal operation command is received and executing the internal operation for the read internal operation time. 如申請專利範圍第1項所述的方法,其中接收所述內部操作命令包括經由至少一個命令引腳、至少一個位址引腳、或至少一個預留供未來使用(RFU)的引腳接收所述內部操作命令。 The method according to claim 1, wherein receiving the internal operation command includes receiving the internal operation command via at least one command pin, at least one address pin, or at least one pin reserved for future use (RFU). Describe the internal operation commands. 如申請專利範圍第1項所述的方法,其中實行所述內部操作包括基於所述內部操作命令對所有庫或部分庫實行所述內部操作。 The method according to the first item of the scope of patent application, wherein executing the internal operation includes executing the internal operation on all libraries or some libraries based on the internal operation command. 如申請專利範圍第1項所述的方法,其中:所述內部操作命令包括指示同意或拒絕所述內部操作請求的資訊,且所述方法包括當所述內部操作命令包括指示同意所述內部操作請求的所述資訊時,忽略自所述外部裝置發出的新命令。 The method according to item 1 of the scope of patent application, wherein: the internal operation command includes information indicating approval or rejection of the internal operation request, and the method includes when the internal operation command includes an indication of consent to the internal operation When requesting the information, ignore the new command issued from the external device. 如申請專利範圍第1項所述的方法,其中:所述內部操作命令包括指示同意或拒絕所述內部操作請求的資訊,且所述方法包括當所述內部操作命令包括指示拒絕所述內部操作請求的所述資訊時,處理自所述外部裝置發出的新命令。 The method according to claim 1, wherein: the internal operation command includes information indicating approval or rejection of the internal operation request, and the method includes when the internal operation command includes an instruction to deny the internal operation When the information is requested, a new command issued from the external device is processed. 如申請專利範圍第1項所述的方法,其中所述內部操作包括再新操作、時序校準操作、或內部資料傳輸操作中的至少一者。 The method according to claim 1, wherein the internal operation includes at least one of a renew operation, a timing calibration operation, or an internal data transmission operation. 如申請專利範圍第1項所述的方法,其中所述儲存裝置包括雙列直插記憶體模組(DIMM)、非揮發性雙列直插記憶體模組(NVDIMM)、固態驅動機(SSD)、通用快閃儲存器(UFS)、嵌式多媒體卡(eMMC)、安全數位(SD)卡、動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(SRAM)、反及式快閃記憶體、垂直反及式快閃記憶體、相變隨機存取記憶體(PRAM)、或電阻式隨機存取記憶體(RRAM)。 According to the method described in item 1 of the scope of patent application, the storage device includes dual in-line memory module (DIMM), non-volatile dual in-line memory module (NVDIMM), solid state drive (SSD) ), universal flash memory (UFS), embedded multimedia card (eMMC), secure digital (SD) card, dynamic random access memory (DRAM), static random access memory (SRAM), reverse and fast Flash memory, vertical reverse flash memory, phase change random access memory (PRAM), or resistive random access memory (RRAM). 一種非揮發性記憶體模組,包括:至少一個揮發性記憶體;至少一個非揮發性記憶體;以及記憶體控制電路,控制所述至少一個揮發性記憶體及所述至少一個非揮發性記憶體,且響應於檢測到需要內部操作而無需外部裝置的任何請求,產生用於獲得所述至少一個揮發性記憶體或所述至少一個非揮發性記憶體的內部操作的同意的內部操作請求訊息,其中所述記憶體控制電路用以將所述內部操作請求訊息傳遞至所述外部裝置,自所述外部裝置接收所因應於述內部操作請求訊息的內部操作命令,所述內部操作命令指示同意或拒絕所述內部操作請求訊息,並當所述內部操作經由所述外部裝置同意時,經由所述記憶體控制電路在內部操作時間期間來實行所述內部操作,且其中所述內部操作請求訊息包括所述內部操作時間。 A non-volatile memory module includes: at least one volatile memory; at least one non-volatile memory; and a memory control circuit that controls the at least one volatile memory and the at least one non-volatile memory In response to detecting any request for internal operations without external devices, an internal operation request message for obtaining consent for the internal operation of the at least one volatile memory or the at least one non-volatile memory is generated , Wherein the memory control circuit is used to transmit the internal operation request message to the external device, receive an internal operation command corresponding to the internal operation request message from the external device, and the internal operation command indicates consent Or reject the internal operation request message, and when the internal operation is approved by the external device, execute the internal operation during the internal operation time through the memory control circuit, and wherein the internal operation request message Including the internal operation time. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中在內部操作被實行的同時,所述記憶體控制電路忽略由所述 外部裝置發出的新命令。 The non-volatile memory module as described in the 11th item of the scope of patent application, wherein while the internal operation is being performed, the memory control circuit ignores the A new command issued by an external device. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中當接收到包括與拒絕所述內部操作請求對應的資訊的所述內部操作命令時,所述記憶體控制電路處理由所述外部裝置發出的新命令。 The non-volatile memory module described in claim 11, wherein when the internal operation command including information corresponding to the rejection of the internal operation request is received, the memory control circuit is processed by all State the new command issued by the external device. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中所述內部操作命令包括所述內部操作時間或與所述內部操作時間對應的資訊。 According to the non-volatile memory module described in claim 11, the internal operation command includes the internal operation time or information corresponding to the internal operation time. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中所述記憶體控制電路經由至少一個命令引腳、至少一個位址引腳、或至少一個預留供未來使用的引腳接收所述內部操作命令。 The non-volatile memory module described in item 11 of the scope of patent application, wherein the memory control circuit passes through at least one command pin, at least one address pin, or at least one pin reserved for future use Receiving the internal operation command. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中所述記憶體控制電路使用至少一個資料引腳或至少一個資料選通引腳將所述內部操作請求訊息傳遞至所述外部裝置。 According to the non-volatile memory module described in claim 11, wherein the memory control circuit uses at least one data pin or at least one data strobe pin to transmit the internal operation request message to the External device. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中所述記憶體控制電路利用經由至少一個訊息引腳的訊號雙態觸變將所述內部操作請求訊息傳遞至所述外部裝置。 The non-volatile memory module according to claim 11, wherein the memory control circuit transfers the internal operation request message to the external by using a signal toggle through at least one message pin Device. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中所述記憶體控制電路將所述內部操作的所述內部操作時間儲存於緩衝區域中,經由訊息引腳將與所述內部操作請求訊息對應的訊號傳遞至所述外部裝置,自所述外部裝置接收與所述訊號對 應的讀取命令,基於所接收的所述讀取命令來讀取儲存於所述緩衝區域中的所述內部操作時間,並自所述外部裝置接收與所讀取的所述內部操作時間對應的所述內部操作命令。 The non-volatile memory module described in claim 11, wherein the memory control circuit stores the internal operation time of the internal operation in a buffer area, and communicates with the The signal corresponding to the internal operation request message is transmitted to the external device, and the signal received from the external device is paired with the signal Corresponding read command, read the internal operating time stored in the buffer area based on the received read command, and receive from the external device corresponding to the read internal operating time The internal operation command. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中所述內部操作包括在所述至少一個揮發性記憶體之間或所述至少一個非揮發性記憶體之間進行的資料傳輸操作。 The non-volatile memory module according to claim 11, wherein the internal operation includes data performed between the at least one volatile memory or between the at least one non-volatile memory Transmission operation. 如申請專利範圍第11項所述的非揮發性記憶體模組,其中所述內部操作命令包括指示對所有庫進行內部操作的第一內部操作命令或指示對單個庫進行內部操作的第二內部操作命令。 As for the non-volatile memory module described in item 11 of the scope of patent application, the internal operation command includes a first internal operation command that instructs internal operations on all libraries or a second internal operation command that instructs internal operations on a single library. Operation command.
TW106110214A 2016-04-20 2017-03-28 Nonvolatile memory module and method for operating a storage device TWI737703B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662325051P 2016-04-20 2016-04-20
US62/325,051 2016-04-20
KR1020160061012A KR102646721B1 (en) 2016-04-20 2016-05-18 Computing system, nonvolatile memory module and operating method of storage device
KR10-2016-0061012 2016-05-18

Publications (2)

Publication Number Publication Date
TW201738764A TW201738764A (en) 2017-11-01
TWI737703B true TWI737703B (en) 2021-09-01

Family

ID=60301524

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106110214A TWI737703B (en) 2016-04-20 2017-03-28 Nonvolatile memory module and method for operating a storage device

Country Status (3)

Country Link
KR (1) KR102646721B1 (en)
CN (1) CN107452423B (en)
TW (1) TWI737703B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7048289B2 (en) * 2017-12-08 2022-04-05 キオクシア株式会社 Information processing equipment and methods
TWI708150B (en) * 2018-05-08 2020-10-21 華碩電腦股份有限公司 Motherboard and memory module
KR20220135504A (en) * 2021-03-30 2022-10-07 삼성전자주식회사 Data Storage device and operating method of data Storage device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200633427A (en) * 2004-12-16 2006-09-16 Ibm Usage consciousness in HTTP/HTML for reducing unused data flow across a network
TW200905473A (en) * 2007-05-28 2009-02-01 Sandisk Il Ltd Management of internal operations by a storage device
US20140064009A1 (en) * 2012-08-30 2014-03-06 SK Hynix Inc. Memory device
US20140071778A1 (en) * 2012-09-11 2014-03-13 International Business Machines Corporation Memory device refresh

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005208746A (en) * 2004-01-20 2005-08-04 Victor Co Of Japan Ltd Storage device control method and storage operation instruction device control method
JP4615896B2 (en) * 2004-05-25 2011-01-19 富士通セミコンダクター株式会社 Semiconductor memory device and control method of semiconductor memory device
KR100918299B1 (en) * 2007-04-25 2009-09-18 삼성전자주식회사 Flash memory device including a row decoder having no bad bolck data storage means and control method thereof
KR101962874B1 (en) * 2012-04-24 2019-03-27 삼성전자주식회사 Memory device, memory controller, memory system and method of operating the same
KR102088403B1 (en) * 2013-08-08 2020-03-13 삼성전자 주식회사 Storage device, computer system comprising the same, and operating method thereof
US9459810B2 (en) * 2013-12-30 2016-10-04 Sandisk Technologies Llc Storage module and method for configuring command attributes
KR102159119B1 (en) * 2014-05-21 2020-09-23 에스케이하이닉스 주식회사 Semiconductor Memory Apparatus
CN104505117B (en) * 2014-12-30 2017-10-03 华中科技大学 A kind of dynamic memory refresh method and refresh controller

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200633427A (en) * 2004-12-16 2006-09-16 Ibm Usage consciousness in HTTP/HTML for reducing unused data flow across a network
TW200905473A (en) * 2007-05-28 2009-02-01 Sandisk Il Ltd Management of internal operations by a storage device
US20140064009A1 (en) * 2012-08-30 2014-03-06 SK Hynix Inc. Memory device
US20140071778A1 (en) * 2012-09-11 2014-03-13 International Business Machines Corporation Memory device refresh

Also Published As

Publication number Publication date
TW201738764A (en) 2017-11-01
KR20170120470A (en) 2017-10-31
CN107452423B (en) 2022-11-04
KR102646721B1 (en) 2024-03-14
CN107452423A (en) 2017-12-08

Similar Documents

Publication Publication Date Title
US9971697B2 (en) Nonvolatile memory module having DRAM used as cache, computing system having the same, and operating method thereof
US11438016B2 (en) Error detection code generation circuits of semiconductor devices, memory controllers including the same and semiconductor memory devices including the same
TWI724254B (en) Semiconductor apparatus, memory module and operation method thereof
US11481149B2 (en) Memory module and memory system relating thereto
US11023396B2 (en) Memory system including DRAM cache and cache management method thereof
US11869571B2 (en) Memory device, a controller for controlling the same, a memory system including the same, and a method of operating the same
US10019367B2 (en) Memory module, computing system having the same, and method for testing tag error thereof
TWI557562B (en) Integrated circuit memory device
US11789808B2 (en) Memory devices for performing repair operation, memory systems including the same, and operating methods thereof
US10599363B2 (en) Nonvolatile memory capable of outputting data using wraparound scheme, computing system having the same, and read method thereof
US20180285252A1 (en) Optimized memory access bandwidth devices, systems, and methods for processing low spatial locality data
US10929064B2 (en) Methods of operating mixed device type memory modules, and processors and systems configured for operating the same
TWI737703B (en) Nonvolatile memory module and method for operating a storage device
US11593031B2 (en) Operating method of host device and storage device using credit
US10976368B2 (en) Memory apparatus relating to determination of a failed region and test method thereof, memory module and system using the same
US20180095692A1 (en) Selective memory mode authorization enforcement
US20240134568A1 (en) Computational storage device, method for operating the computational storage device and method for operating host device
US20230112776A1 (en) Operation method of memory module, operation method of memory controller, and operation method of memory system