WO2016174744A1 - 不揮発性メモリの制御方法、制御装置、および半導体記憶装置 - Google Patents
不揮発性メモリの制御方法、制御装置、および半導体記憶装置 Download PDFInfo
- Publication number
- WO2016174744A1 WO2016174744A1 PCT/JP2015/062853 JP2015062853W WO2016174744A1 WO 2016174744 A1 WO2016174744 A1 WO 2016174744A1 JP 2015062853 W JP2015062853 W JP 2015062853W WO 2016174744 A1 WO2016174744 A1 WO 2016174744A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- address
- memory
- logical address
- control circuit
- write
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 334
- 238000000034 method Methods 0.000 title claims abstract description 31
- 239000004065 semiconductor Substances 0.000 title claims description 33
- 238000006243 chemical reaction Methods 0.000 claims description 34
- 238000013507 mapping Methods 0.000 abstract 1
- 102100022878 Deoxyribonuclease-2-beta Human genes 0.000 description 76
- 108010002712 deoxyribonuclease II Proteins 0.000 description 76
- 239000000872 buffer Substances 0.000 description 38
- 230000010365 information processing Effects 0.000 description 38
- 230000008859 change Effects 0.000 description 36
- 238000003491 array Methods 0.000 description 18
- 238000010586 diagram Methods 0.000 description 16
- 238000007726 management method Methods 0.000 description 8
- 239000000463 material Substances 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 150000004770 chalcogenides Chemical class 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 239000012782 phase change material Substances 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 239000013078 crystal Substances 0.000 description 3
- 238000013524 data verification Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 239000000758 substrate Substances 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- LMYSNFBROWBKMB-UHFFFAOYSA-N 4-[2-(dipropylamino)ethyl]benzene-1,2-diol Chemical compound CCCN(CCC)CCC1=CC=C(O)C(O)=C1 LMYSNFBROWBKMB-UHFFFAOYSA-N 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000002844 melting Methods 0.000 description 2
- 230000008018 melting Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 101001073212 Arabidopsis thaliana Peroxidase 33 Proteins 0.000 description 1
- 102100038742 Cytochrome P450 2A13 Human genes 0.000 description 1
- LFERELMXERXKKQ-KMXXXSRASA-N Fenugreekine Chemical compound NC(=O)C1=CC=CC([C@H]2[C@@H]([C@H](O)[C@@H](COP(O)(=O)OP(O)(=O)OC[C@@H]3[C@H]([C@@H](O)[C@@H](O3)N3C4=NC=NC(N)=C4N=C3)O)O2)O)=N1 LFERELMXERXKKQ-KMXXXSRASA-N 0.000 description 1
- 101150104728 GPR88 gene Proteins 0.000 description 1
- 101000957389 Homo sapiens Cytochrome P450 2A13 Proteins 0.000 description 1
- 101001123325 Homo sapiens Peroxisome proliferator-activated receptor gamma coactivator 1-beta Proteins 0.000 description 1
- 102100028961 Peroxisome proliferator-activated receptor gamma coactivator 1-beta Human genes 0.000 description 1
- 102100038404 Probable G-protein coupled receptor 88 Human genes 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000001816 cooling Methods 0.000 description 1
- 238000002425 crystallisation Methods 0.000 description 1
- 230000008025 crystallization Effects 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000009477 glass transition Effects 0.000 description 1
- 229910021421 monocrystalline silicon Inorganic materials 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0004—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising amorphous/crystalline phase transition cells
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0023—Address circuits or decoders
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0097—Erasing, e.g. resetting, circuits or methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
- G11C2013/0078—Write using current through the cell
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2213/00—Indexing scheme relating to G11C13/00 for features not covered by this group
- G11C2213/70—Resistive array aspects
- G11C2213/75—Array having a NAND structure comprising, for example, memory cells in series or memory elements in series, a memory element being a memory cell in parallel with an access transistor
Definitions
- the present invention relates to a semiconductor device, and more particularly to a semiconductor device provided with a nonvolatile memory device.
- phase change memory using a chalcogenite material as a recording material has been actively studied as a nonvolatile memory device.
- a phase change memory is a type of resistance change memory that stores information by utilizing the fact that recording materials between electrodes have different resistance states.
- phase change memory information is stored by utilizing the fact that the resistance value of a phase change material such as Ge 2 Sb 2 Te 5 is different between an amorphous state and a crystalline state. In the amorphous state, the resistance is high (high resistance state), and in the crystal state, the resistance is low (low resistance state). Therefore, reading of information from the phase change memory is realized by applying a potential difference to both ends of the element, measuring the current flowing through the element, and determining the high resistance state / low resistance state of the element.
- a phase change material such as Ge 2 Sb 2 Te 5
- the data is rewritten by changing the electric resistance of the phase change film formed of the phase change material to a different state by Joule heat generated by current.
- FIG. 19 is a diagram showing the relationship between the pulse width and temperature required for the phase change of the resistive memory element using the phase change material.
- the vertical axis represents temperature and the horizontal axis represents time.
- the memory information “1” when the memory information “1” is written, it is sufficient to keep the memory element in a temperature region lower than the melting point Ta but higher than the crystallization temperature Tx (same or higher than the glass transition temperature).
- a set pulse is applied for a long time so that a proper current flows.
- the chalcogenide material is in a low-resistance polycrystalline state.
- Patent Document 1 discloses a nonvolatile memory having a three-dimensional structure.
- Patent Documents 1 and 3 show a configuration in which memory cells each including a variable resistance element and a transistor connected in parallel thereto are connected in series in the stacking direction.
- Patent Document 2 shows a configuration in which memory cells each including a variable resistance element and a diode connected in series to the variable resistance element are connected in series with a conductive wire interposed in the stacking direction.
- the two memory cells can be collectively processed. Thus, the write operation is performed.
- Patent Document 3 discloses a method of erasing data in N ⁇ M three-dimensional memory cell arrays at once. Further, it is shown that a thermal buffer region is provided so that Joule heat during the erase operation does not greatly affect the crystal state of peripheral memory cells adjacent to the memory cell array to be erased.
- Patent Document 4 discloses a non-volatile memory in which a controller selects one of memory units according to a workload index.
- the present inventors examined a method for controlling a NAND flash memory used for storage such as an SSD (Solid State Drive) or a memory card. In addition, a control method using resistance change memory was examined.
- a NAND flash memory used for storage such as an SSD (Solid State Drive) or a memory card.
- a control method using resistance change memory was examined.
- garbage collection operation starts when the free area (the number of erased blocks) becomes a predetermined value or less. In order to increase the number of erased blocks by one by this garbage collection operation, it is necessary to select at least two blocks (the following memory areas A and B).
- the SSD reads currently valid data (pages) from the already written 1 Mbyte nonvolatile memory areas A and B, collects these data, and writes them to the RAM. Next, the nonvolatile memory areas A and B are erased.
- the data written in the RAM is collectively written in the nonvolatile memory area A.
- the 1-Mbyte nonvolatile memory area B becomes an erased memory area, and new data can be written to the nonvolatile memory area B.
- garbage collection is conventionally performed in a memory in which the erase unit and the write unit are different in size and cannot be overwritten.
- this garbage collection operation causes data movement from one nonvolatile memory area to another nonvolatile memory area within the SSD.
- the write and data requested from the host controller to the SSD The read request cannot be executed, and the performance of the SSD deteriorates.
- An object of the present invention is to provide a semiconductor device that achieves high performance and high reliability.
- One aspect of the present invention is a method for controlling a nonvolatile memory in which an erase unit and a write unit are different.
- the physical address of the non-volatile memory is assigned to a predetermined unit of logical address, and the size of the erase unit including the physical address assigned to the logical address according to the write access status for the predetermined unit of logical address. To control.
- the specific definition of the erasure unit is “one area for managing the number of erasures”, “area erased with one erase command” or “erase with one erase command” It becomes an area that is an integral multiple of "area”. In this specification, this may be called a block.
- the erase count for each block is managed by an erase count table or the like.
- the write access status can be normalized using at least one of the average write data amount of all logical addresses and the number of write accesses of all logical addresses.
- the size of the erase unit can be controlled in consideration of the status of read access to a predetermined unit of logical address.
- the amount of the provisional area included in the allocated physical address can be controlled according to the status of write access to a predetermined unit of logical address.
- Another aspect of the present invention is a non-volatile memory control device that controls various non-volatile memories by the above method.
- An example of a non-volatile memory control device is a control circuit that allocates a physical address of a non-volatile memory to a logical address and accesses the physical address, and the control circuit is based on an access status to the logical address.
- the size of the erase unit block including the physical address corresponding to the logical address is dynamically changed.
- Another aspect of the present invention is a semiconductor memory device including a nonvolatile memory and a control circuit that assigns a physical address to an input logical address and accesses the physical address of the nonvolatile memory.
- the control circuit is characterized in that writing is performed by dynamically changing the block size of the block including the physical address of the nonvolatile memory.
- the control circuit calculates a first feature quantity of a write request input to the control circuit for each logical address, and the block of the block including the physical address of the nonvolatile memory based on the first feature quantity Determine the size.
- the first feature amount is a feature amount indicating a logical address with high access frequency, for example, and a block size factor described later is a typical example.
- Another aspect of the present invention is a semiconductor memory device including a nonvolatile memory and a control circuit that assigns a physical address to an input logical address and accesses the physical address of the nonvolatile memory.
- the control circuit performs writing by dynamically changing the capacity of the physical address with respect to the capacity of the logical address of the nonvolatile memory.
- the control circuit calculates a second feature quantity of a write request input to the control circuit for each logical address, and based on the second feature quantity, the control circuit calculates the capacity of a logical address area including a plurality of logical addresses.
- the capacity of a physical address area including a plurality of physical addresses is determined.
- the second feature amount is, for example, a feature amount indicating how much data of the logical address is written, and a provisional capacity factor described later is a typical example.
- a specific method for determining the capacity of the physical address area there is an example of changing the provisional capacity described later.
- a semiconductor device in another aspect of the present invention, includes a nonvolatile memory and a control circuit that accesses the nonvolatile memory.
- the control circuit calculates the frequency of access to the logical address of the write request input from the outside within a certain period, changes the block size of the nonvolatile memory based on this access frequency, and performs writing.
- the block size of the block including the physical address corresponding to the logical address with high access frequency is reduced, and the effective data amount in the block is reduced.
- the control circuit shortens the time for waiting for externally input write and read requests, and the data transfer speed of the semiconductor device is improved.
- the block can be grasped as an erasing unit when garbage collection is performed.
- FIG. 1 is a block diagram illustrating a schematic configuration example of an information processing system to which a semiconductor device according to an embodiment of the present invention is applied. It is a block diagram which shows the structural example of the control circuit in FIG.
- FIG. 2 is a block diagram showing a configuration of a control circuit in the memory module in FIG. 1.
- FIG. 3 is a block diagram showing a configuration example of nonvolatile memory devices NMV0 to 31 in FIG.
- FIG. 5 is a circuit diagram illustrating a configuration example of the chain memory array in FIG. 4.
- FIG. 6 is a circuit diagram showing an operation example of the chain memory array of FIG. 5.
- FIG. 6 is a circuit diagram showing another operation example of the chain memory array of FIG. 5.
- FIG. 6 is a circuit diagram showing another operation example of the chain memory array of FIG. 5.
- the constituent elements are not necessarily indispensable unless otherwise specified or apparently indispensable in principle.
- the shapes when referring to the shapes, positional relationships, etc. of the components, etc., the shapes are substantially the same unless otherwise specified, or otherwise apparent in principle. And the like are included. The same applies to the above numbers and the like (including the number, numerical value, quantity, range, etc.).
- the circuit elements constituting each block are not particularly limited, but are formed on a single semiconductor substrate such as single crystal silicon by a known integrated circuit technology such as a CMOS (complementary MOS transistor).
- CMOS complementary MOS transistor
- a resistive memory element such as a phase change memory or a ReRAM (Resistive Random Access Memory) is used.
- FIG. 1 is a block diagram showing a schematic configuration example of an information processing system to which a semiconductor device according to an embodiment of the present invention is applied.
- the information processing system shown in FIG. 1 includes an information processing device CPUG, a router device ROUTER, control devices DYBS-CTL0 to m, and storage devices STRG0 to STRG0.
- the information processing device CPUG includes, but is not limited to, information processing circuits CPU0 to CPUn and CPU memory modules MD0 to MDn.
- Each of the CPU memory modules MD0 to MDn includes memory devices M0 to nn.
- Each of the storage devices STRG0 to m is provided with nonvolatile memory modules NVMD0 to kMD.
- Each of the non-volatile memory modules NVMD0 to kMD includes a non-volatile memory device NVM0 to NVM, a random access memory RAM, and a control circuit NVM-CTL that controls the non-volatile memory device and the random access memory.
- the nonvolatile memory devices NVM0 to NVMp have, for example, the same configuration and performance.
- Each of the nonvolatile memory devices NVM0 to NVMp of the nonvolatile memory modules NVMD0 to kMD stores an operating system, application programs, and data that operate on the information processing circuits CPU0 to CPUn.
- the non-volatile memory devices NVM0 to nVMp also include a secondary block size table BLKTBL2 indicating the correspondence of the management block size to the physical address area DPAD of the memory modules NVMD0 to kk managed by the control devices DYBS-CTL0 to m,
- the secondary address conversion table DLPTBL2 of the physical address DPAD of the memory modules NVMD0 to 31 corresponding to the logical address DLAD is stored.
- the block size table and the address conversion table are also copied by the control device DYBS-CTL.
- the table possessed by the control device DYBS-CTL is referred to as a primary table
- the tables possessed by the nonvolatile memory modules NVMD0 to NVMD are referred to as secondary tables.
- the logical address LAD from the information processing device CPUG managed by the control circuit NVM-CTL and the physical addresses of the nonvolatile memory devices NVM0 to NVM in the memory modules NVMD0 to k A secondary address conversion table DLPTBL2 that performs correspondence with PAD, an erase count table ERSTBL for each block, and an address map ADMAP are stored.
- the secondary block size table, the address conversion table, the erase count table, the address map, and the like may be stored in a dedicated memory separately provided in the control circuit or the control device.
- n, nn, m, p, and k represent natural numbers, respectively.
- the nonvolatile memory modules NVMD0 to NVMD are not particularly limited, but correspond to, for example, SSD (Solid State Drive).
- any of the information processing circuits CPU0 to n of the information processing device CPUG is stored in the non-volatile memory devices NVM0 to p of the storage devices STRG0 to m through the router device ROUTER and the control devices DYBS-CTL0 to m
- the program and data are read out and transferred to the CTL memory modules MD0 to MDn. Thereafter, the information processing circuits CPU0 to CPUn use the data stored in the memory modules MD0 to MDn to execute the operating system and application programs.
- the nonvolatile memory devices NVM0 to NVM0 in the storage devices STRG0 to m are passed through the router device ROUTER and the control devices DYBS-CTL0 to m. Store to NVMp.
- the information processing device CPUG manages data stored in the storage devices STRG0 to STRG0 using a logical address (LAD) in units of a minimum of 512 bytes.
- LAD logical address
- the router device ROUTER transfers read commands, write commands and data from the information processing device CPUG to the control devices DYBS-CTL0 to m, and transfers data from the control devices DYBS-CTL0 to m to the information processing device CPUG. Device.
- FIG. 2 shows the configuration of the control device DYBS-CTL.
- the control devices DYBS-CTL0 to m read the secondary block size table BLKTBL2 stored in the nonvolatile memory devices NVM0 to NVMp of the storage devices STRG0 to m and transfer them to the memory devices MMD in the control devices DYBS-CTL0 to m To do.
- the memory device MMD has a primary block size table BLKTBL1 that is a copy of the secondary block size table.
- control devices DYBS-CTL 0 to m are controllers that manage data stored in the storage devices STRG 0 to m with a logical address (LAD) in a minimum 512-byte unit (sector unit).
- LAD logical address
- control devices DYBS-CTL0 to m read and write data to and from the memory modules NVMD0 to k through the interface signal HDH_IF in accordance with read and write commands from the information processing device CPUG through the router device ROUTER.
- control devices DYBS-CTL0 to m determine the physical addresses DPAD of the memory modules NVMD0 to k for the input logical address LAD from the information processing device CPUG through the router device ROUTER, and to the memory modules NVMD0 to k Read and write data.
- control devices DYBS-CTL0 to m analyze the characteristics of read and write access from the information processing device CPUG, dynamically and optimally change the management block size for the physical address area DPAD of the memory modules NVMD0 to k,
- the primary block size table BLKTBL1 in the memory device MMD is updated. This improves the performance and reliability of the information processing system.
- the control circuit NVM-CTL in the memory modules NVMD0 to kMD reads the secondary address conversion table DLPTBL2 stored in the non-volatile memory devices NVM0 to NVM, the erase count table ERSTBL for each block, and the address map ADDMAP.
- the address conversion table DLPTBL2 and the erase count table ERSTBL for each block are transferred to the memory device RAM in the memory modules NVMD0 to NVk, the address map ADDMAP is read, and transferred to the map register MAPREG.
- the physical page address PAD of the non-volatile memory devices NVM0 to NVM is written for each block managing the non-volatile memory devices NVM0 to NVM.
- the physical page address PAD is determined so that the number of times is equalized, and the secondary address conversion table DLPTBL2 is updated.
- the memory control circuit NVM-CTL When the memory control circuit NVM-CTL reads data from the nonvolatile memory devices NVM0 to NVMp, the memory control circuit NVM-CTL refers to the secondary address conversion table DLPTBL2 and determines the physical address PAD for the logical address LAD. The data stored in the physical address PAD is read out.
- the memory control circuit NVM-CTL is instructed based on the information of the secondary block size table BLKTBL2 according to an instruction from the control device DYBS-CTL0 to m. Reconstructs the secondary address conversion table DLPTBL2, the erase count table ERSTBL for each block, and the address map ADDMAP. This improves the performance and reliability of the memory modules NVMD0 to kMD.
- FIG. 2 is a block diagram showing a configuration example of the control devices DYBS-CTL 0 to m in FIG.
- the control device DYBS-CTL shown in FIG. 2 includes a control block DYBSC and a memory module MMD.
- the control block DYBSC is composed of an interface circuit HOSTIF, an information processing circuit MNGER, an arbitration circuit ARBC, and interface circuits NVIF0 to k to memory modules NVMD0 to k.
- the memory module MMD includes memory devices MEM0 to MEMk.
- a primary block size table BLKTBL1 indicating a block size for each logical address DLAD and a primary address conversion table DLPTBL1 of the physical addresses DPAD of the memory modules NVMD0 to NVK corresponding to the logical address DLAD are stored.
- the divided logical address DLAD indicates a logical address area including a plurality of logical addresses LAD
- the physical address DPAD indicates a physical address area including a plurality of physical addresses PAD.
- a read request (RQ) from the information processing device CPUG is input through the router device ROUTER.
- the read request (RQ) includes a logical address (LAD), a data read command (RD), a sector count (SEC), and the like.
- the control device DYBS-CTL refers to the primary address conversion table DLPTBL1 stored in the memory device MMD, reads the physical address DPAD0 corresponding to the divided logical address DLAD including the logical address LAD, and uses this physical address DPAD0 to read the logical address LAD.
- the memory module NVMD0 storing the data is selected and the read request (RQ) is transferred.
- the memory module NVMD0 refers to the secondary address conversion table DLPTBL2, and reads data DTAT0 corresponding to the sector count from the data stored in the physical page address PAD corresponding to the logical address LAD.
- the read data DATA0 is transferred to the control device DYBS-CTL, and further transferred to the information processing device CPUG through the router device ROUTER.
- a write request (WQ) is input from the information processing device CPUG through the router device ROUTER.
- the write request (WQ) includes a logical address (LAD), a data write command (WT), a sector count (SEC), and the like.
- the control device DYBS-CTL refers to the primary address conversion table DLPTBL1 stored in the memory device MMD, reads the physical address DPAD1 corresponding to the logical address DLAD including the logical address LAD, and uses this physical address DPAD1 to read the logical address LAD.
- the memory module NVMD1 storing the data is selected and the write request (WQ) is transferred.
- the physical address PAD is determined so as to equalize the number of block writes, and data DTAT1 corresponding to the sector count is written to the physical address PAD. Thereafter, the secondary address conversion table DLPTBL2 is updated to associate the logical address LAD with the latest physical address PAD.
- FIG. 3 is a block diagram of the memory control circuit NVM-CTL of the memory modules NVMD0 to kMD in FIG.
- the memory control circuit NVM-CTL includes an interface circuit NVM_IF, an address / command buffer ADCBUF, a data buffer DBUF, a map register MAPREG, an arbitration circuit ARB, an information processing circuit CONTL, a RAM memory control circuit RAMC, and a nonvolatile memory And memory control circuits NVCT0p of the memory devices NVM0 to NVM.
- the memory control circuit RAMC directly controls the random access memory RAM of FIG. 1, and NVCT0 to p control the nonvolatile memory devices NVM0 to p of FIG. 1 respectively.
- the data buffer DBUF temporarily stores write data and read data of the nonvolatile memory devices NVM0 to NVM.
- the address / command buffer ADCBUF temporarily stores a logical address LAD, a data read command (RD), and a data write command (WT) input from the control device DYBS-CTL to the memory control circuit NVM-CTL.
- the memory device RAM stores a secondary address conversion table DLPTBL2 and an erase count table ERSTBL for each block.
- map register MAPREG an address map ADDMAP is stored, and correspondence between the X address, Y address, and Z address in the nonvolatile memory devices NVM0 to NVM for each block size is shown.
- the memory control circuit NVM-CTL Based on the information in the secondary block size table BLKTBL2, the memory control circuit NVM-CTL performs a secondary address conversion table DLPTBL2, an erase count table ERSRSTBL for each block, and an address map ADDMAP according to instructions from the control device DYBS-CTL0 to m. To rebuild. This improves the performance and reliability of the memory modules NVMD0 to kMD.
- FIG. 4 is a block diagram showing a configuration example of the nonvolatile memory devices NVM0 to NVMp in FIG. 1
- FIG. 5 is a circuit diagram showing a configuration example of the chain memory array in FIG.
- the nonvolatile memory device shown in FIG. 4 corresponds to each of the nonvolatile memory devices NVM0 to NVMp of FIG. 1, and here, as an example, a phase change type nonvolatile memory (phase change memory) is used. However, it may be a flash memory or other resistance change type memory.
- the nonvolatile memory device includes a clock generation circuit SYMD, a status register STREG, an erase size designation register NVREG, an address / command interface circuit ADCMDIF, an IO buffer IOBUF, a control circuit CTLOG, a temperature sensor THMO, a data control circuit DATCTL, and memory banks BK0 to BK3. Is provided.
- the various peripheral circuits include a row address latch RADLT, a column address latch CADLT, a row decoder ROWDEC, a column decoder COLDEC, a chain selection address latch CHLT, a chain decoder CHDEC, a data selection circuit DSW1, and data buffers DBUF0 and DBUF1.
- the interface for operating the nonvolatile memory device shown in FIG. 4 employs a memory interface such as a NAND flash memory interface or a DRAM interface, the compatibility of the interface with the conventional system can be maintained, which is convenient.
- a good nonvolatile memory device can be provided.
- the block size that can be erased by one command is not physically fixed, and can be easily changed as a control management unit by the memory control circuit NVM-CTL. It is. Therefore, by analyzing the characteristics of access to the memory module NVMD of the information processing device CPUG and dynamically optimizing the block size of the nonvolatile memory device, the performance and reliability of the information processing system can be improved.
- each chain memory array CY has a configuration in which a plurality of phase change memory cells CL0 to CLn are connected in series, one end of which is connected to a word line WL via a chain selection transistor Tch2. The other end is connected to the bit line BL via chain selection transistors Tch0 and Tch1.
- the plurality of phase change memory cells CL0 to CLn are sequentially stacked in the height direction with respect to the semiconductor substrate and are connected in series.
- Each phase change memory cell CL includes a variable resistance type storage element R and a memory cell selection transistor Tcl connected in parallel thereto.
- the memory element R is made of, for example, a chalcogenide material.
- two chain memory arrays CY share the chain selection transistor Tch2, and the chain memory transistors Tch0, 1, 2 in each chain memory array are connected by the chain memory array selection lines SL0, SL1, SL2. Each is controlled, and one of the chain memory arrays is thereby selected.
- the memory cell selection lines LY (LY0 to LYn) are connected to the gate electrodes of the corresponding phase change memory cells, and the memory cell selection lines LY cause the memory cell selection transistors Tcl in the phase change memory cells CL0 to CLn, respectively. And each phase change memory cell is appropriately selected.
- the chain memory array selection lines SL0, SL1, and SL2 and the memory cell selection lines LY0 to LYn are appropriately driven as the chain control line CH via the chain selection address latch CHLT and the chain decoder CHDEC in FIG.
- the control circuit CTLOG receives the control signal CTL via the address / command interface circuit ADCMDIF.
- the control signal CTL is not particularly limited.
- the command latch enable signal (CLE), the chip enable signal (CEB), the address latch signal (ALE), the write enable signal (WEB), the read enable signal (REB), A write instruction or a read instruction is issued by a combination of these including a ready busy signal (RBB).
- the control circuit CTLOG receives the input / output signal IO through the IO buffer IOBUF together with the control signal CTL.
- the input / output signal IO includes an address signal
- the control circuit CTLOG extracts a row address and a column address from the address signal.
- the control circuit CTLOG appropriately generates an internal address based on the row address, the column address, and a predetermined write / read unit, and transmits the internal address to the row address latch RADLT, the column address latch CADLT, and the chain selection address latch CHLT, respectively. To do.
- the row decoder ROWDEC receives the output of the row address latch RADLT and selects the word lines WL0 to WLk
- the chain decoder CHDEC receives the output of the chain selection address latch CHLT and selects the chain control line CH. When a read command is input by the control signal CTL, data is read from the chain memory array CY selected by the combination of the word line, bit line, and chain control line described above via the bit line selection circuits BSW0 to BSWm.
- the read data is amplified by the sense amplifiers SA0 to SAm and transmitted to the data buffer DBUF0 (or DBUF1) via the data selection circuit DSW1.
- the data on the data buffer DBUF0 (or DBUF1) is sequentially transmitted to the input / output signal IO via the data control circuit DATCTL and the IO buffer IOBUF.
- a write command is input by the control signal CTL
- a data signal is transmitted to the input / output signal IO following the address signal described above, and the data signal is sent to the data buffer DBUF0 (or via the data control circuit DATCTL).
- DBUF1 A data signal on the data buffer DBUF0 (or DBUF1) is selected by a combination of the above-described word line, bit line, and chain control line via the data selection circuit DSW1, write drivers WDR0 to WDRm, and bit line selection circuits BSW0 to BSWm. Is written to the chain memory array CY.
- the write data verification circuits WV0 to WVm verify whether the write level has reached a sufficient level while appropriately reading the written data through the sense amplifiers SA0 to SAm.
- the write operation is performed again using the write drivers WDR0 to WDRm until it reaches.
- the current I0 is changed from the word line WL0 to the chain selection transistor Tch2, the variable resistance memory element R0, the memory cell selection transistors Tcl1 to Tcln, and the chain selection. It flows to the bit line BL0 via the transistor Tch1.
- the variable resistance memory element R0 has a high resistance.
- the current I0 is controlled in the form of the Set current pulse shown in FIG. 14, so that the variable resistance memory element R0 has a low resistance.
- Data “1” and “0” are distinguished by the difference in resistance value of the variable resistance memory elements R0 to Rn.
- the writing speed can be improved by flowing the current I0 to the plurality of bit lines BL0_0, BL0_1 to BL0_m.
- data “1” is recorded when the variable resistance memory element becomes low resistance, and data “0” is recorded when it becomes high resistance.
- a current is applied through the same path as the data writing so that the resistance value of the variable resistance memory element R0 does not change.
- a voltage value corresponding to the resistance value of the variable resistance memory element R0 is detected by a sense amplifier (SA0 in FIG. 4 in this example), and data “0” and “1” are determined.
- a plurality of sense lines can be obtained by applying a current through the same path as the data writing to the extent that the resistance value of the variable resistance memory element R0 does not change through the plurality of bit lines BL0_0 and BL0_1 to BL0_m.
- Data “0” and “1” are determined by the amplifier (SA0 to SAm in FIG. 4 in this example), and the reading speed can be improved.
- 7 and 8 are explanatory diagrams showing another example of the operation of the chain memory array of FIG.
- the current I2 is changed from the word line WL0 to the bit via the chain selection transistor Tch2, the memory cell selection transistors Tcl0 to Tcln, and the chain selection transistor Tch1. Flow to line BL0.
- the Joule heat due to the current I2 is conducted to the variable resistance memory elements R0 to Rn, and the variable resistance memory elements R0 to Rn collectively have a low resistance.
- This current I2 is controlled to such a value that the variable resistance memory elements R0 to Rn can collectively reduce the resistance.
- the word line WL0 becomes High and then the bit line BL0 becomes Low
- the current I3 changes from the word line WL0 to the chain selection transistor Tch2
- the memory cell selection transistors Tcl0 to Tcln of both the chain memory arrays CY0 and CY1 It flows to the bit line BL0 via the selection transistors Tch0 and Tch1.
- the Joule heat due to the current I3 is conducted to the variable resistance memory elements R0 to Rn of both the chain memory arrays CY0 and CY1, and the variable resistance memory elements R0 to Rn collectively have a low resistance.
- the value of the current I3 is controlled to such a value that the variable resistance storage elements R0 to Rn of both the chain memory arrays CY0 and CY1 are collectively reduced in resistance.
- the memory cells in the plurality of chain memory arrays can be made low resistance at the same time, and the erase data rate can be improved.
- control device DYBS-CTL and the memory control circuit NVM-CTL will be described with reference to FIGS.
- FIG. 9 shows the overall flow of dynamic block size change operation.
- FIG. 11 and FIG. 12 show detailed operations of Step 1, Step 3 and Step 4 of FIG. 13 and 14 show a primary block size table BLKTBL and a primary address conversion table DLPTBL.
- the effective period is a sampling period for analyzing access characteristics.
- Step 1 when a read request (RQ) or a write request (WQ) is input from the information processing device CPUG to the control device DYBS-CTL through the router device ROUTER, Step 1 is executed. In Step 1, Steps 100 to 103 are performed.
- Step 100 it is determined whether or not the access from the host is a write access. If it is a write access, Step 101 is performed. If it is not a write access, Step 102 is performed. In Step 101, the following is calculated. -Number of write accesses WC for each logical address DLAD -Number of write accesses in all logical address areas WCT -Total write data amount WD for each logical address DLAD -Total write data amount WDT in all logical address areas When Step 101 ends, Step 102 is performed.
- Step 102 it is determined whether or not the access from the host is a read access. If it is a read access, Step 103 is performed. If it is not a read access, Step 100 is performed. In Step 103, the following is calculated. -Number of read accesses RC for each logical address DLAD -Number of read accesses RCT in all logical address areas -Total read data amount RD for each logical address DLAD ⁇ Total read data amount RDT in all logical address areas When Step 103 ends, Step 2 is performed.
- Step 2 it is checked whether or not the effective period TC of various calculations executed in Step 101 and Step 103 for the access feature analysis performed in Step 3 has passed the period T1.
- Step 3 When the effective period T1 has elapsed, Step 3 is performed, and when the effective period T1 has not elapsed, Step 1 is performed.
- Step 3 the measurement of the valid period TC is stopped, and the characteristics of access are analyzed using the various calculation results in Step 1.
- Steps 300 to 305 are performed.
- Step 300 the measurement of the effective period TC is temporarily stopped.
- Step 301 the following is calculated.
- AWD total write data amount WD of logical address DLAD / total write access number WC of logical address DLAD
- Average read data amount per read access of each logical address DLAD ARD: ARD total read data amount RD of logical address DLAD / total read access number RC of logical address DLAD
- Step 302 the following is calculated.
- Step 4 is performed after Step 3 ends.
- the block size for each logical address DLAD is determined using the analysis result in Step 3.
- Steps 400 to 402 are performed.
- Step 400 in FIG. Calculate a block size factor BLKFCT and a provisional capacity factor PVFCT for each logical address DLAD.
- WRT1AVG is the ratio of the capacity of each logical address DLAD to the capacity of the entire logical address area. That is, this is the ratio of the number of times of write access of each logical address DLAD when the write access from the information processing device CPUG occurs to each logical address DLAD on average. Since WCRATE1 is the ratio of the number of write accesses for each logical address DLAD, a large (WCRATE1 / WRT1AVG) means that the number of accesses is concentrated on the logical address above the average, that is, a hot area. Indicates.
- AWDT is the average write data amount per write access in all logical address areas
- AWD is the average write data amount per write access of each logical address DLAD.
- a large (AWDT / AWD) indicates that the data per time written to the logical address is smaller than the average.
- the block size factor BLKFCT is an index that takes a large value when write access with a small write data size per write access occurs frequently and occurs in the logical address DLAD. is there.
- BLKFCT when BLKFCT is large, control is performed to reduce the size of the physical address (erase block) corresponding to the logical address.
- the physical address capacity is slightly larger than the logical address capacity. This margin (for example, about 20%) is called a provisional area.
- a provisional area By securing the provisional area, it is possible to make it difficult to deplete the usable area even when data is rewritten.
- the proportion of invalid data in the physical address (erase block) can be adjusted. This is because the physical address valid data does not exceed the logical address capacity, and the physical address can usually have invalid data for the provisional area at the maximum.
- WDRATE is the ratio of the total write data amount WD of each logical address DLAD to the capacity LCP of each logical address DLAD, and SUM (WDRATE) is the sum of them. Therefore, the provisional capacity factor PVFCT indicates how much data of the logical address is written. As will be described in detail later, in this embodiment, when the PVFCT is large, control is performed to increase the provisional area of the physical address (erase block) corresponding to the logical address.
- the block size factor BLKFCT of each logical address DLAD is used to determine the block size BLKSIZE of each logical address DLAD.
- a logical address DLAD having a larger block size factor BLKFCT indicates that a large number of write accesses with a small write data size per write access are frequently generated in the logical address DLAD. . Therefore, by assigning a smaller block size to a logical address DLAD having a larger block size factor BLKFCT, the number of valid physical pages in the block decreases, and data associated with the garbage collection operation performed in the memory module NVMD. The copy amount is reduced. For this reason, since the data copy time is shortened, the waiting time for the read request RQ and the write request WQ from the control device DYBS-CTL is shortened, and the performance is improved.
- the write access is very frequently performed and concentrated in a specific area in large quantities, in an extreme example, there may be no effective physical page in that area. In such a case, the data copy itself is unnecessary and only the area is erased. If the block size is selected appropriately, the case where the data copy itself becomes unnecessary increases in this way, and it can be expected that the performance is improved.
- a logical address area with a high access frequency is called a HOT area, and data written here is also called HOT data.
- a logical address area with low access frequency is called a COLD area, and data written therein is also called COLD data.
- the determination numerical value of the block size factor BLKFCT value is an example and is not particularly limited, but the block size BLKSIZE is determined by the determination shown below.
- the provisional capacity factor PVSIZE of each logical address DLAD is determined using the provisional capacity factor PVFCT of each logical address DLAD.
- the logical address DLAD having a larger value of the provisional capacity factor PVFCT indicates that the amount of write data is larger. Therefore, when the physical address DPAD of the nonvolatile memory having the upper limit of the number of rewrites is assigned to the logical address DLAD, the life of the memory module NVMD determines the life of the information processing system.
- the logical address DLAD having a larger provisional capacity factor PVFCT needs to have a larger capacity allocated to the logical address DLAD in the provisional area total capacity PVAREA.
- provisional capacity PVSIZE PVFCT ⁇ provisional area total capacity PVAREA.
- control device DYBS-CTL creates a primary block size table BLKTBL1 and a primary address conversion table DLPTBL1 indicating the block size using the block size BLKSIZE and the provisional capacity PVSIZE obtained in Step 4. .
- control devices DYBS-CTL0 to m create the primary block size table BLKTBL1 and the primary address conversion table DLPTBL1
- the control device DYBS-CTL transfers the primary block size table BLKTBL1 and the primary address conversion table DLPTBL1 to the memory control circuit NVM-CTL, the secondary address conversion table DLPTBL2, and the erase count table ERSTBL for each block. Instructs to create a new address map ADMAP.
- the memory control circuit NVM-CTL follows the instruction of the control device DYBS-CTL. Based on the information in the primary block size table BLKTBL1 and the primary address translation table DLPTBL1, a secondary address translation table DLPTBL2, an erase count table ERSTBL for each block, and an address map ADMAP are created.
- control device DYBS-CTL checks whether the memory module NVMD has reached the product life.
- Step 7 is performed.
- the memory control circuit NVM-CTL ends the dynamic block size changing operation.
- Step 7 the measurement of the effective period TC is resumed.
- control device DYBS-CTL first creates 64 pieces (that is, after the measurement and analysis of the first effective period TC (T1) in FIG. 9 is completed).
- a primary block size table BLKTBL1 and a primary address conversion table DLPTBL1 corresponding to each logical address DLAD are shown.
- control device DYBS-CTL is created the second time (that is, after the second effective period TC (T2) is measured and analyzed in FIG. 9).
- a primary block size table BLKTBL1 and a primary address conversion table DLPTBL1 corresponding to each logical address DLAD are shown.
- the block size table represents access characteristics for each logical address and physical block specifications based on the access characteristics.
- DLAD is a logical address
- WCRATE1 is the ratio of the number of write accesses
- AWD is the average write data amount per write access of the logical address
- WDRATE is the total of each logical address DLAD. This is the ratio of the write data amount WD and the capacity LCP of each logical address DLAD.
- BLKFCT is a block size factor
- a logical address DLAD having a larger value indicates that a write access with a smaller write data size per write access is frequently generated in the logical address DLAD.
- BLKSIZE is a block size of the logical address DLAD
- PVFCT is a provisional capacity factor.
- the logical address DLAD having a larger value indicates a larger amount of write data.
- PVSIZE is the provisional capacity.
- WRT1AVG is the ratio of the capacity of each logical address DLAD to the capacity of the entire logical address area
- AWDT is the average write data amount per write access in the entire logical address area
- PVAREA is the total capacity of the provisional area.
- the address conversion table represents allocation of physical addresses to logical addresses based on the block size table.
- DPAD is the physical address of the memory module corresponding to the logical address DLAD
- DPADSIZE is the capacity of the physical address
- PRAREA is the physical address assigned to the provisional area.
- the block size table BLKTBL in FIG. Since the logical addresses DLAD0 to 63 have a large number of write accesses with a small write data size per write access, the value of the block size factor BLKFCT is as high as 8.28. It is a value. Therefore, the block size BLKSIZE of the logical addresses DLAD0 to 63 is relatively small 64KB.
- the logical address DLAD 448 to 511 has a low write frequency with a large write data size per write access, and a small amount of write access occurs, so the value of the block size factor BLKFCT is as low as 0.03. It has become. Therefore, the block size BLKSIZE of the logical addresses DLAD 448 to 511 is relatively large 1024 KB.
- the value of the provisional capacity factor PVFCT is the highest value of 0.25. Therefore, the provisional capacity PVSIZE of the logical addresses DLAD0 to 63 is the highest value of 32.
- the value of the provisional capacity factor PVFCT is the lowest value of 0.055. Therefore, the provisional capacity PVSIZE of the logical addresses DLAD 448 to 511 is the lowest value of 7.
- the physical addresses DPAD assigned to the logical addresses DLAD0 to 63 are DPDA0 to 63 and DPAD512 to 543.
- the capacity DPADSIZE of the physical address DPAD allocated to the logical addresses DLAD0 to 63 is the largest value 96. This is because the provisional capacity PVSIZE value 32 of the logical addresses DLAD0 to 63 is added to the capacity value 64 of the logical addresses DLAD0 to 64.
- the physical addresses DPAD assigned to the logical addresses DLAD 448 to 511 are DPDA 448 to 511 and DPAD 631 to 639. That is, the capacity DPADSIZE of the physical address DPAD assigned to the logical addresses DLAD 448 to 511 has the smallest value 71. This is because the value 7 of the provisional capacity PVSIZE of the logical addresses DLAD 448 to 511 is added to the capacity value 64 of the logical addresses DLAD 448 to 511.
- the block size BLKSIZE of the logical addresses DLAD0 to 63 is 32KB.
- the value of the block size factor BLKFCT is higher than the block size factor BLKFCT of the logical addresses DLAD0 to 63 in the block size table BLKTBL created by the controller DYBS-CTL for the first time. This indicates that write accesses having a small write data size per write access to the logical addresses DLAD0 to 63 are generated more frequently and in large quantities.
- the control device DYBS-CTL extracts the write access characteristics for each logical address DLAD, and changes the block size BLKSIZE of the logical addresses DLAD0 to 63 from 64 KB to 32 KB.
- the value of the block size factor BLKFCT of the logical addresses DLAD 192 to 255 is as low as 0.58. Therefore, the block size BLKSIZE of the logical addresses DLAD 192 to 255 is 512 KB. That is, the value of the block size factor BLKFCT is lower than the block size factor BLKFCT of the logical addresses DLAD 192 to 255 in the block size table BLKTBL created by the controller DYBS-CTL for the first time. This indicates that a write access having a large write data size per write access to the logical addresses DLAD 192 to 255 occurs at a lower frequency.
- the control device DYBS-CTL extracts the write access characteristics for each logical address DLAD, and changes the block size BLKSIZE of the logical addresses DLAD 192 to 255 from 256 KB to 512 KB.
- the physical addresses DPAD assigned to the logical addresses DLAD0 to 63 are DPDA0 to 63 and DPAD512 to 564.
- the capacity DPADSIZE of the physical address DPAD assigned to the logical addresses DLAD0 to 63 is 117.
- control device DYBS-CTL calculates the write data amount for each logical address DLAD, and increases the capacity DPADSIZE of the physical address DPAD allocated to the logical addresses DLAD0 to 63 from 96 to 117.
- the physical addresses DPAD assigned to the logical addresses DLAD 192 to 255 are DPDA 192 to 255 and DPAD 611 to 621, respectively. That is, the capacity DPADSIZE of the physical address DPAD assigned to the logical addresses DLAD 192 to 255 is 75.
- control device DYBS-CTL has a value 11 that is lower than the provisional capacity PVSIZE of the logical addresses DLAD 192 to 255 in the address conversion table DLPTBL created first time.
- control device DYBS-CTL calculates the write data amount for each logical address DLAD and decreases the capacity DPADSIZE of the physical address DPAD allocated to the logical addresses DLAD 192 to 255 from 18 to 11.
- the control device DYBS-CTL performs control based on the block size table and the address conversion table, and sets the erase block size and the provisional area of the memory array.
- N and M can be determined depending on which memory cell array is selected.
- a thermal buffer region is provided so that Joule heat during the erase operation does not greatly affect the crystal state of the peripheral memory cells adjacent to the memory cell array to be erased.
- the smaller the erase data unit the greater the ratio of the thermal buffer area and the lower the effective memory capacity.
- FIG. 15 shows a nonvolatile memory constructed by using the address map ADMAP information created by the memory control circuit NVM-CTL based on the block size table BLKTBL information transferred by the control device DYBS-CTL to the memory control circuit NVM-CTL. It is an example of a block configuration of the memory array of the device NMV, and is an example of a block configuration when the block size is 1024 KB.
- the non-volatile memory device includes blocks BLK0 to BLKkn + n-1, and an example of the arrangement of the chain memory array CYL and the chain memory array CYH of the memory array ARY in each block is shown.
- the chain memory array CYL is indicated by a white circle
- the chain memory array CYH constituting the thermal buffer region is indicated by a black circle.
- the chain memory array CYL and the chain memory array CYH use the same display method.
- a large number of these blocks are arranged to constitute a memory array of the nonvolatile memory shown in FIG.
- the write area WT-AREA in one block is the same as the erase area and is an area in which a plurality of chain memory arrays CYL are physically gathered.
- the data size of one logical address LAD is 8192 bytes, and the information processing circuit CONTL generates an ECC code for the data DATA and transfers the data DATA to the write area WT-AREA in the block of the memory array of the nonvolatile memory. Write ECC code.
- One physical address is assigned an 8192-byte data area DATA-AREA for writing data DATA of one logical address LAD and a 1024-byte management area MG-AREA for writing an ECC code for the data DATA. Because In the 1048576-byte write area WT-AREA, physical address data for 128 logical addresses LAD is stored.
- thermal buffer area WALL is an area where a plurality of chain memory arrays CYH arranged outside the write area WT-AREA are physically gathered.
- the data of all the memory cells included in all the chain memory arrays CYL in the write area WT-AREA is “1” (Set state: low resistance state). That is, the data is erased all at once, and then only “0” data (reset state: high resistance state) is written for each physical address PAD. For example, when the write area WT-AREA size is 11179648 bytes and the batch erase data size by one erase operation is 576 bytes, 2048 erase operations are sequentially performed in the direction parallel to the Y direction. The data of all the memory cells of WT-AREA is “1” (Set state: low resistance state).
- the memory array CYH serving as a heat buffer region is structurally a normal memory cell, but is controlled by a control device so that writing and erasing are not performed.
- the heat buffering area WALL is not formed in the X direction.
- the device structure since the device structure has a physical space in the Y direction between the blocks BLK, it is not formed because the thermal buffer region WALL is not required in the X direction.
- a heat buffer region may be provided also in the X direction.
- FIG. 16 shows a nonvolatile memory constructed by using the address map ADMAP information created by the memory control circuit NVM-CTL based on the block size table BLKTBL information transferred by the control device DYBS-CTL to the memory control circuit NVM-CTL. It is an example of a block configuration of the memory array of the device NMV, and is an example of a block configuration when the block size is 128 KB.
- the erase data unit and the thermal buffer area WALL are the same as those in FIG.
- the display method of the chain memory array CYL and the chain memory array CYH is the same as that in FIG.
- a large number of these blocks are arranged to constitute a memory array of the nonvolatile memory shown in FIG.
- the write area WT-AREA in one block is the same as the erase area and is an area in which a plurality of chain memory arrays CYL are physically gathered.
- the writing method and erasing method of the nonvolatile memory by the information processing circuit CONTL are the same as those in FIG.
- FIG. 17 shows a nonvolatile memory constructed by using the address map ADMAP information created by the memory control circuit NVM-CTL based on the block size table BLKTBL information transferred to the memory control circuit NVM-CTL by the control device DYBS-CTL. It is an example of a block configuration of the memory array of the device NMV, and is an example of a block configuration when the block size is 64 KB.
- the erase data unit and the thermal buffer area WALL are the same as those in FIG.
- the display method of the chain memory array CYL and the chain memory array CYH is the same as that in FIG.
- 9 (X direction) ⁇ 9216 (Y direction) ⁇ 8 ( Z direction) A large number of these blocks are arranged to constitute a memory array of the nonvolatile memory shown in FIG.
- the write area WT-AREA in one block is the same as the erase area and is an area in which a plurality of chain memory arrays CYL are physically gathered.
- the writing method and erasing method of the nonvolatile memory by the information processing circuit CONTL are the same as those in FIG.
- FIG. 18 shows a nonvolatile memory constructed by using the address map ADMAP information created by the memory control circuit NVM-CTL based on the block size table BLKTBL information transferred to the memory control circuit NVM-CTL by the control device DYBS-CTL. It is an example of a block configuration of the memory array of the device NMV, and is an example of a block configuration when the block size is 32 KB.
- the erase data unit and the thermal buffer area WALL are the same as those in FIG.
- the display method of the chain memory array CYL and the chain memory array CYH is the same as that in FIG.
- a large number of these blocks are arranged to constitute a memory array of the nonvolatile memory shown in FIG.
- the write area WT-AREA in one block is the same as the erase area and is an area in which a plurality of chain memory arrays CYL are physically gathered.
- the writing method and erasing method of the nonvolatile memory by the information processing circuit CONTL are the same as those in FIG.
- the memory control circuit NVM-CTL can optimally configure the block size of the memory array of the nonvolatile memory shown in FIG. 4 based on the block size table BLKTBL information.
- the ratio of the thermal buffer area to the capacity can be suppressed, and the cost and performance of the memory module MD can be reduced.
- the width in the X direction is changed without changing the width in the Y direction.
- the method of changing the size is not limited to this, and the width in the Y direction is not limited. May be changed.
- the control is simple because it is only necessary to change the position of the memory array CYH aligned in the Y direction in order to change the boundary of the blocks aligned in the X direction.
- the boundary between the blocks arranged in the Y direction uses a physical interval according to the device structure, there is an advantage that it is not necessary to set a heat buffer region. Note that the thermal buffer region may not be provided as long as the device structure can ignore the influence of the thermal buffer.
- the block size of the logical address can be changed optimally, and the data transfer performance of the semiconductor device can be improved.
- the capacity of the physical address area for each logical address area can be optimized, and the reliability of the semiconductor device can be improved.
- the block size of the logical address can be changed optimally, the ratio of the thermal buffer area to the nonvolatile memory capacity can be suppressed, and the cost of the semiconductor device can be reduced. Can be realized.
- the present invention made by the present inventor has been specifically described based on the embodiment.
- the present invention is not limited to the embodiment, and various modifications can be made without departing from the scope of the invention. Needless to say.
- the above-described embodiment has been described in detail for easy understanding of the present invention, and is not necessarily limited to one having all the configurations described.
- a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. .
- the phase change memory has been mainly described as a representative, but a resistance change type memory including a ReRAM or the like can be similarly applied to obtain the same effect.
- the description has been given by taking as an example a memory having a three-dimensional structure in which a plurality of memory cells are sequentially stacked in the height direction with respect to the semiconductor substrate.
- the same effect can be obtained by applying the same to a two-dimensional memory in which one memory cell is arranged.
- nonvolatile memory device NVMMD ... memory module, PAD ... physical address, PADTBL ... physical address table, PERC ... erase count, PPAD ... physical Fset address, PRNG ... physical address area, PVLD ... valid flag, R ... memory element, RADLT ... row address latch, RAM ... random access memory, RAMC ... memory control circuit, REF_CLK ... reference clock signal, REG ... register, ROWDEC ... Row decoder, RSTSIG ... reset signal, SA ... sense amplifier, SGAD ... physical segment address, SL ... chain memory array selection line, STREG ... status register, SWB ... read / write control block, SYMD ... clock generation circuit, Tch ...
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Chemical & Material Sciences (AREA)
- Crystallography & Structural Chemistry (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
Description
NAND型フラッシュメモリに代表される不揮発性メモリは、あるメモリ領域へデータを書き込むためには、予め、そのメモリ領域のデータを消去する必要がある。この消去時の最小データ単位は例えば1Mバイト等(例えば1ブロックという)であり、書き込み時の最小データ単位は例えば8Kバイト等(例えば1ページという)である。不揮発性メモリでは、1ブロックのメモリ領域に、論理アドレスに対応した物理アドレスを持つページに書き込みを行う。このとき、同じ論理アドレスで新しいデータを書き込む場合には、古いページを無効化し、新しいページにデータを書き込む。1ブロックが有効なページと無効なページで満たされると、それ以上は書き込みができなくなる。つまり、8Kバイトのデータを書くために、1Mバイトの消去済メモリ領域を確保する必要がある。この1Mバイトの消去済メモリ領域を確保するために、SSD内部ではガーベージコレクションと呼ばれる動作が必要となる。 このガーベージコレクション動作は、空き領域(消去済ブロック数)が所定以下になった場合に、開始する。このガーベージコレクション動作によって、消去済ブロック数を1つ増やしたい場合は、最低、2個のブロック(以下のメモリ領域A,B)を選択する必要がある。SSDは、先ず、既に書き込み済の1Mバイトの不揮発性メモリ領域AおよびBから、現時点で有効なデータ(ページ)を読み出し、これらのデータを集めて、RAMへ書き込む。次に、不揮発性メモリ領域AおよびBを消去する。最後に、RAMへ書き込まれたデータをまとめて不揮発性メモリ領域Aへ書き込む。このガーベージコレクション動作によって、1Mバイトの不揮発性メモリ領域Bが消去済メモリ領域となり、この不揮発性メモリ領域Bへ新たなにデータを書き込むことができる。このようなガーベージコレクションは、消去単位と書き込み単位の大きさが異なり、上書きができないメモリにおいては、従来から行われている。
図1は、本発明の一実施の形態による半導体装置において、それを適用した情報処理システムの概略構成例を示すブロック図である。図1に示す情報処理システムは、情報処理装置CPUGと、ルーター装置ROUTERと、制御装置DYBS-CTL0~mと、ストレージ装置STRG0~mとを備える。
その後、情報処理回路CPU0~nが、メモリモジュールMD0~nへ保存したデータを利用し、オペレーティングシステムやアプリケーションプログラムを実行する。
これによって、メモリモジュールNVMD0~kの性能および信頼性が向上する。
・各論理アドレスDLADのライトアクセス回数WC
・全論理アドレス領域でのライトアクセス回数WCT
・各論理アドレスDLADの総ライトデータ量WD
・全論理アドレス領域での総ライトデータ量WDT
Step101が終了するとStep102を行う。
・各論理アドレスDLADのリードアクセス回数RC
・全論理アドレス領域でのリードアクセス回数RCT
・各論理アドレスDLADの総リードデータ量RD
・全論理アドレス領域での総リードデータ量RDT
Step103が終了するとStep2を行う。
・各論理アドレスDLADの1回のライトアクセス当たりの平均ライトデータ量AWD:AWD=論理アドレスDLADの総ライトデータ量WD/論理アドレスDLADの総ライトアクセス数WC
・各論理アドレスDLADの1回のリードアクセス当たりの平均リードデータ量ARD:ARD=論理アドレスDLADの総リードデータ量RD/論理アドレスDLADの総リードアクセス数RC
次のStep302では以下を計算する。
・全論理アドレス領域での1回のライトアクセス当たりの平均ライトデータ量AWDT:AWDT=全論理アドレス領域での総ライトデータ量WDT/全論理アドレス領域での総ライトアクセス数WCT
全論理アドレス領域での1回のリードアクセス当たりの平均リードデータ量ARDT:ARDT=全論理アドレス領域での総リードデータ量RDT/全論理アドレス領域での総リードアクセス数RCT
次のStep303では以下を計算する。
・各論理アドレスDLADのライトアクセス回数の割合WCRATE:WCRATE=WC/(WC+RC)
・各論理アドレスDLADのリードアクセス回数の割合RCRATE:RCRATE=RC/(WC+RC)=1-WRATE
次のStep304では以下を計算する。
・全論理アドレス領域での総ライトアクセス回数WCTに対する論理アドレスDLADの総ライトアクセス回数WCの割合WRATE1:WRATE1=WC/WCT
・全論理アドレス領域での総リードアクセス回数RCTに対する論理アドレスDLADの総リードアクセス回数RCの割合RRATE1:RRATE1=RC/RCT
次のStep305では以下を計算する。
・各論理アドレスDLADの総ライトデータ量WDと各論理アドレスDLADの容量LCPの比率WDRATE=WD/LCP
図11のフローではライトとリードの両方の特性を検討している。ライトの特性は、上述のように小さなブロックに集中してアクセスさせたほうが、ガーベージコレクションのコピー量が減る。一方、リードのアクセスは不揮発性メモリに分散してデータが配置されたほうが、リード性能は向上する。よって性能バランスを取るためには、両者を考慮することがより望ましい。
・各論理アドレスDLADのブロックサイズファクタ(Block Size Factor)BLKFCTと、プロビジョナル容量ファクタ(Provisional Area Factor)PVFCTを計算する。
BLKFCT=(WCRATE1/WRT1AVG)×(AWDT/AWD)で表す。
10>ブロックサイズファクタBLKFCT≧5の場合、ブロックサイズBLKSIZE=64KB、
5>ブロックサイズファクタBLKFCT≧2の場合、ブロックサイズBLKSIZE=128KB、
2>ブロックサイズファクタBLKFCT≧1の場合、ブロックサイズBLKSIZE=256KB、
1>ブロックサイズファクタBLKFCT≧0.2の場合、ブロックサイズBLKSIZE=512KB、
0.2>ブロックサイズファクタBLKFCTの場合、ブロックサイズBLKSIZE=1024KB
次のStep402では各論理アドレスDLADのプロビジョナル容量ファクタPVFCTを利用し、各論理アドレスDLADのプロビジョナル容量PVSIZEを決定する。
Step4で求めたブロックサイズBLKSIZEとプロビジョナル容量PVSIZEを利用し、ブロックサイズを示す1次ブロックサイズテーブルBLKTBL1と1次アドレス変換テーブルDLPTBL1を作成する。
制御装置DYBS-CTLは、メモリ制御回路NVM-CTLへ、1次ブロックサイズテーブルBLKTBL1と、1次アドレス変換テーブルDLPTBL1を転送し、2次アドレス変換テーブルDLPTBL2と、ブロック毎の消去回数テーブルERSTBLと、アドレスマップADMAPを新規に作成するよう指示する。
メモリ制御回路NVM-CTLは制御装置DYBS-CTLの指示に従って、
1次ブロックサイズテーブルBLKTBL1および1次アドレス変換テーブルDLPTBL1の情報を基に、2次アドレス変換テーブルDLPTBL2と、ブロック毎の消去回数テーブルERSTBLと、アドレスマップADMAPを作成する。
Step7では、有効期間TCの測定を再開する。
論理アドレスDLAD0~63へは、1回のライトアクセス当たりのライトデータサイズが小さなライトアクセスが、高頻度で、大量に、発生しているため、ブロックサイズファクタBLKFCTの値が、8.28と高い値になっている。
そのため、論理アドレスDLAD0~63のブロックサイズBLKSIZEは比較的小さな64KBとなる。
つまり、論理アドレスDLAD448~511へ割り当てられている物理アドレスDPADの容量DPADSIZEは最も小さな値71となっている。これは、論理アドレスDLAD448~511のプロビジョナル容量PVSIZEの値7が論理アドレスDLAD448~511までの容量値64へ加算されているためである。
つまり、このブロックサイズファクタBLKFCTの値は、制御装置DYBS-CTLが1回目に作成したブロックサイズテーブルBLKTBLでの論理アドレスDLAD192~255のブロックサイズファクタBLKFCTよりも低い値となっている。これは論理アドレスDLAD192~255へ1回のライトアクセス当たりのライトデータサイズが大きなライトアクセスが、さらに、低頻度で、発生していることを示す。
つまり、論理アドレスDLAD192~255へ割り当てられている物理アドレスDPADの容量DPADSIZEは75となっている。
1048576バイトの書込み領域WT-AREAには、128つの論理アドレスLADに対する物理アドレスのデータが格納される。
以上に説明した各実施の形態によって得られる主な効果は以下の通りである。
NVMD0~31…メモリモジュール、NVM0~NVM31…不揮発性メモリ装置、RAM0…ランダムアクセスメモリNVM-CTL…メモリ制御回路、BLKTBL…ブロックサイズテーブル、DLPTBL…アドレス変換テーブル、DLAD…論理アドレス、DPAD…物理アドレス、ERSTBL…消去回数テーブル、ADMAP…アドレスマップ
Claims (15)
- 消去単位と書き込み単位が異なる不揮発性メモリの制御方法であって、
所定単位の論理アドレスに対して前記不揮発性メモリの物理アドレスを割り当て、
前記所定単位の論理アドレスに対するライトアクセスの状況に応じて、当該論理アドレスに割り当てられる物理アドレスが含まれる前記消去単位の大きさを制御することを特徴とする、不揮発性メモリの制御方法。 - 前記ライトアクセスの状況は、前記所定単位の論理アドレスの平均ライトデータ量および前記所定単位の論理アドレスのライトアクセス回数の少なくとも一つを含むことを特徴とする、請求項1記載の不揮発性メモリの制御方法。
- 前記ライトアクセスの状況は、全ての論理アドレスの平均ライトデータ量および全ての論理アドレスのライトアクセス回数の少なくとも一つを含むことを特徴とする、請求項2記載の不揮発性メモリの制御方法。
- さらに、前記所定単位の論理アドレスに対するリードアクセスの状況に応じて、前記消去単位の大きさを制御することを特徴とする、請求項1記載の不揮発性メモリの制御方法。
- 前記所定単位の論理アドレスに対するライトアクセスの状況に応じて、前記割り当てられる物理アドレスに含まれるプロビジョナル領域の量を制御することを特徴とする請求項1記載の不揮発性メモリの制御方法。
- 不揮発性メモリの制御装置であって、
論理アドレスに対して前記不揮発性メモリの物理アドレスを割り当て、前記物理アドレスにアクセスを行う制御回路を有し、
前記制御回路は、前記論理アドレスに対するアクセス状況に基づいて、当該論理アドレスに対応する前記物理アドレスを含む消去単位ブロックの大きさを動的に変化させることを特徴とする不揮発性メモリの制御装置。 - 不揮発性メモリと、
入力される論理アドレスに対して物理アドレスを割り当て、前記不揮発性メモリの前記物理アドレスにアクセスを行う制御回路と、を有し、
前記制御回路は、前記不揮発性メモリの前記物理アドレスを含むブロックのブロックサイズを動的に変化させ、書込みを行うことを特徴とする半導体記憶装置。 - 請求項7に記載の半導体記憶装置において、
前記制御回路は、前記論理アドレス毎に、前記制御回路へ入力するライトリクエストの第1特徴量を計算し、前記第1特徴量に基づいて、前記不揮発性メモリの前記物理アドレスを含む前記ブロックのブロックサイズを決定することを特徴とする半導体記憶装置。 - 請求項7に記載の半導体記憶装置において、
前記制御回路は、前記論理アドレス毎に、前記制御回路へ入力するライトリクエストの第2特徴量を計算し、前記第2特徴量に基づいて、前記論理アドレスを複数個分含む論理アドレス領域の容量に対する、前記物理アドレスを複数個分含む物理アドレス領域の容量を決定することを特徴とする半導体記憶装置。 - 請求項8に記載の半導体記憶装置において、
前記制御回路は、前記論理アドレスに対する前記ブロックサイズを示すブロックサイズテーブルを作成することを特徴とする半導体記憶装置。 - 請求項9に記載の半導体記憶装置において、
前記制御回路は、前記論理アドレスに領域対する前記物理アドレス領域を示すアドレス変換テーブルを作成することを特徴とする半導体記憶装置。 - 請求項8に記載の半導体記憶装置において、
前記制御回路は、前記第1特徴量が大きいほど、より小さな前記ブロックサイズを前記論理アドレスへ割り当てることを特徴とする半導体記憶装置。 - 請求項9に記載の半導体記憶装置において、
前記制御回路は、前記第2特徴量が大きいほど、より大きな前記物理アドレス領域の容量を、前記論理アドレス領域へ割り当てることを特徴とする半導体記憶装置。 - 請求項8に記載の半導体記憶装置において、
前記制御回路は、期間T内で、前記制御回路へ入力したライトリクエストに対して、前記第1特徴量を計算し、前記第1特徴量に基づいて、前記不揮発性メモリの前記物理アドレスを含む前記ブロックのブロックサイズを決定することを特徴とする半導体記憶装置。 - 請求項9に記載の半導体記憶装置において、
前記制御回路は、期間T内で、前記論理アドレス毎に、前記制御回路へ入力するライトリクエストの第2特徴量を計算し、前記第2特徴量に基づいて、前記論理アドレスを複数個分含む論理アドレス領域の容量に対する、前記物理アドレスを複数個分含む物理アドレス領域の容量を決定することを特徴とする半導体記憶装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2015/062853 WO2016174744A1 (ja) | 2015-04-28 | 2015-04-28 | 不揮発性メモリの制御方法、制御装置、および半導体記憶装置 |
JP2017515329A JP6360627B2 (ja) | 2015-04-28 | 2015-04-28 | 不揮発性メモリの制御方法、制御装置、および半導体記憶装置 |
US15/566,854 US10388369B2 (en) | 2015-04-28 | 2015-04-28 | Nonvolatile memory control method, control device, and semiconductor storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2015/062853 WO2016174744A1 (ja) | 2015-04-28 | 2015-04-28 | 不揮発性メモリの制御方法、制御装置、および半導体記憶装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016174744A1 true WO2016174744A1 (ja) | 2016-11-03 |
Family
ID=57198255
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/062853 WO2016174744A1 (ja) | 2015-04-28 | 2015-04-28 | 不揮発性メモリの制御方法、制御装置、および半導体記憶装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10388369B2 (ja) |
JP (1) | JP6360627B2 (ja) |
WO (1) | WO2016174744A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6524039B2 (ja) * | 2016-09-23 | 2019-06-05 | 東芝メモリ株式会社 | メモリシステム及び制御方法 |
US10733107B2 (en) * | 2016-10-07 | 2020-08-04 | Via Technologies, Inc. | Non-volatile memory apparatus and address classification method thereof |
JP6779821B2 (ja) * | 2017-03-24 | 2020-11-04 | キオクシア株式会社 | メモリシステム及びデータの読み出し方法 |
JP6517385B1 (ja) * | 2018-02-07 | 2019-05-22 | ウィンボンド エレクトロニクス コーポレーション | 半導体記憶装置 |
DE102019128331B4 (de) * | 2019-08-29 | 2024-10-02 | Taiwan Semiconductor Manufacturing Co., Ltd. | Gemeinsam genutzter decodiererschaltkreis und verfahren |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002133877A (ja) * | 2001-09-03 | 2002-05-10 | Toshiba Corp | 不揮発性半導体記憶装置 |
JP2013250982A (ja) * | 2012-06-01 | 2013-12-12 | Samsung Electronics Co Ltd | 記憶装置のデータ書き込み方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100826065B1 (ko) * | 2004-03-31 | 2008-04-29 | 마츠시타 덴끼 산교 가부시키가이샤 | 메모리카드 및 메모리카드 시스템 |
KR100739256B1 (ko) * | 2006-05-12 | 2007-07-12 | 주식회사 하이닉스반도체 | 소거 동작시 메모리 셀 블록의 크기를 선택적으로 변경하는기능을 가지는 플래시 메모리 장치 및 그 소거 동작 방법 |
TWI492432B (zh) | 2009-12-17 | 2015-07-11 | Hitachi Ltd | Semiconductor memory device and manufacturing method thereof |
JP2011142186A (ja) | 2010-01-06 | 2011-07-21 | Toshiba Corp | 抵抗変化メモリ |
JP2012058770A (ja) * | 2010-09-03 | 2012-03-22 | Tdk Corp | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 |
KR101289931B1 (ko) | 2011-09-23 | 2013-07-25 | 한양대학교 산학협력단 | 다양한 블록 크기를 지원하는 주소 사상을 사용하여 플래시 메모리 내에 데이터를 저장하는 방법 및 장치 |
US9645917B2 (en) * | 2012-05-22 | 2017-05-09 | Netapp, Inc. | Specializing I/O access patterns for flash storage |
US9489148B2 (en) | 2013-03-13 | 2016-11-08 | Seagate Technology Llc | Selecting between non-volatile memory units having different minimum addressable data unit sizes |
WO2014188484A1 (ja) | 2013-05-20 | 2014-11-27 | 株式会社日立製作所 | 半導体記憶装置 |
JP6139711B2 (ja) * | 2014-02-03 | 2017-05-31 | 株式会社日立製作所 | 情報処理装置 |
WO2015118623A1 (ja) * | 2014-02-05 | 2015-08-13 | 株式会社日立製作所 | 情報処理装置 |
TWI595492B (zh) * | 2016-03-02 | 2017-08-11 | 群聯電子股份有限公司 | 資料傳輸方法、記憶體控制電路單元與記憶體儲存裝置 |
-
2015
- 2015-04-28 WO PCT/JP2015/062853 patent/WO2016174744A1/ja active Application Filing
- 2015-04-28 JP JP2017515329A patent/JP6360627B2/ja not_active Expired - Fee Related
- 2015-04-28 US US15/566,854 patent/US10388369B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002133877A (ja) * | 2001-09-03 | 2002-05-10 | Toshiba Corp | 不揮発性半導体記憶装置 |
JP2013250982A (ja) * | 2012-06-01 | 2013-12-12 | Samsung Electronics Co Ltd | 記憶装置のデータ書き込み方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2016174744A1 (ja) | 2017-12-28 |
US20180108404A1 (en) | 2018-04-19 |
JP6360627B2 (ja) | 2018-07-18 |
US10388369B2 (en) | 2019-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9898207B2 (en) | Storage device | |
JP6360627B2 (ja) | 不揮発性メモリの制御方法、制御装置、および半導体記憶装置 | |
JP5756622B2 (ja) | 半導体装置 | |
JP5847940B2 (ja) | 半導体装置 | |
KR102635689B1 (ko) | 메모리 시스템, 메모리 컨트롤러 및 동작 방법 | |
US11163494B2 (en) | Memory system, memory controller and operating method | |
CN112346652A (zh) | 存储器控制器及其操作方法 | |
JP6073495B2 (ja) | 半導体装置 | |
KR102701111B1 (ko) | 메모리 컨트롤러 및 그 동작 방법 | |
US11301174B2 (en) | Memory system, memory controller and method for operating memory system | |
US11550375B2 (en) | Storage system and operating method thereof | |
US11474726B2 (en) | Memory system, memory controller, and operation method thereof | |
JP6145227B2 (ja) | 半導体装置 | |
KR20210028517A (ko) | 메모리 컨트롤러 및 그 동작 방법 | |
KR20210000010A (ko) | 메모리 시스템, 메모리 컨트롤러 및 동작 방법 | |
KR102692526B1 (ko) | 메모리 시스템, 메모리 컨트롤러 및 동작 방법 | |
US12131042B2 (en) | Memory system for managing namespace using write pointer and write count, memory controller, and method for operating memory system | |
WO2017017842A1 (ja) | メモリの制御装置、記憶装置、および、メモリの書込み方法 | |
US11675712B2 (en) | Memory system, memory controller, and operation method of memory system | |
US11507509B2 (en) | Memory system, memory controller and method for operating memory system for determining whether to perform direct write based on reference write size | |
US20230195342A1 (en) | Memory system for managing data corresponding to a plurality of zones and operating method thereof | |
US20240211153A1 (en) | Memory system for executing a target operation based on a program state of a super memory block and operating method thereof | |
KR20160144563A (ko) | 불휘발성 메모리 모듈 및 그것의 동작 방법 | |
JP5620557B2 (ja) | 情報処理システム | |
JP5807103B2 (ja) | 半導体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15890728 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2017515329 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15566854 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 15890728 Country of ref document: EP Kind code of ref document: A1 |