WO2025239016A1 - 記憶装置、不揮発性メモリ、および、記憶装置の制御方法 - Google Patents

記憶装置、不揮発性メモリ、および、記憶装置の制御方法

Info

Publication number
WO2025239016A1
WO2025239016A1 PCT/JP2025/010851 JP2025010851W WO2025239016A1 WO 2025239016 A1 WO2025239016 A1 WO 2025239016A1 JP 2025010851 W JP2025010851 W JP 2025010851W WO 2025239016 A1 WO2025239016 A1 WO 2025239016A1
Authority
WO
WIPO (PCT)
Prior art keywords
storage device
refresh
circuit
nonvolatile
nonvolatile memory
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
PCT/JP2025/010851
Other languages
English (en)
French (fr)
Inventor
啓三 平賀
哲広 鈴木
建太朗 東
隆志 池内
宏子 桝田
匡亮 谷本
和宏 別所
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Semiconductor Solutions Corp
Original Assignee
Sony Semiconductor Solutions Corp
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 Sony Semiconductor Solutions Corp filed Critical Sony Semiconductor Solutions Corp
Publication of WO2025239016A1 publication Critical patent/WO2025239016A1/ja
Pending legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/02Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements
    • G11C11/16Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using magnetic elements using elements in which the storage effect is based on magnetic spin effect
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents

Definitions

  • This technology relates to storage devices.
  • it relates to non-volatile storage devices, non-volatile memories, and methods for controlling such storage devices.
  • non-volatile memory circuits are often used as auxiliary storage devices or storage.
  • Examples of non-volatile memory circuits include non-volatile memory (NVM: Non-Volatile Memory) such as MRAM (Magnetoresistive Random Access Memory), NVFF (Non-Volatile Flip-Flop), and NVSRAM (Non-Volatile Static Random Access Memory).
  • NVM Non-Volatile Memory
  • MRAM Magneticoresistive Random Access Memory
  • NVFF Non-Volatile Flip-Flop
  • NVSRAM Non-Volatile Static Random Access Memory
  • the above-mentioned conventional technology attempts to suppress the occurrence of errors through refresh processing.
  • the above-mentioned conventional technology can sometimes result in insufficient data retention characteristics.
  • the error rate is also dependent on temperature, even if intervals are set so that the error rate remains below an acceptable value for 10 years at 85°C and refresh is performed at those intervals, the error rate may exceed the acceptable value when the temperature rises to 105°C.
  • MRAM MRAM
  • sufficient data retention characteristics can be achieved by increasing the resistance value of the low-resistance state, but this results in a larger write current and increased power consumption.
  • power consumption generally increases as data retention characteristics are improved. As such, the above-mentioned conventional technology makes it difficult to reduce power consumption while improving data retention characteristics.
  • This technology was developed in light of these circumstances, and aims to reduce power consumption while improving data retention characteristics in storage devices that use non-volatile memory circuits.
  • This technology has been developed to solve the above-mentioned problems, and its first aspect is a storage device including a first non-volatile memory circuit, a detection unit that detects the timing to refresh the first non-volatile memory circuit, and a refresh processing unit that refreshes the first non-volatile memory at the detected timing, as well as a control method for the storage device.
  • This has the effect of enabling both improved data retention characteristics and reduced power consumption.
  • the detection unit may include a second nonvolatile memory circuit having lower data retention characteristics than the first nonvolatile memory circuit, and a determination unit that determines whether it is time to perform the refresh based on whether the error rate of the second nonvolatile memory circuit is below a first threshold. This provides the effect of detecting the timing based on the error rate of the second nonvolatile memory circuit.
  • the volume of the memory element that constitutes the second nonvolatile memory circuit may be smaller than the memory element that constitutes the first nonvolatile memory circuit. This brings about the effect that timing is detected based on the error rate of the second nonvolatile memory circuit, which has a memory element with a smaller volume.
  • the second nonvolatile memory circuit may be an MRAM. This provides the effect of detecting timing based on the error rate of the MRAM.
  • the second nonvolatile memory circuit may be an NVFF. This provides the effect of detecting timing based on the error rate of the NVFF.
  • the second nonvolatile memory circuit may be an NVSRAM. This provides the effect of detecting timing based on the error rate of the NVSRAM.
  • the detection unit may further include a system control unit that, when a predetermined condition is met, controls the determination unit to determine whether it is time to perform the refresh. This provides the effect of making a determination when the predetermined condition is met.
  • the detection unit may further include an initialization unit that initializes the second nonvolatile memory circuit, and the system control unit may control the initialization unit to initialize the second nonvolatile memory circuit when it is determined that it is time to perform the refresh. This brings about the effect of making it possible to perform the determination multiple times.
  • the determination unit may further determine whether the error rate exceeds a second threshold value that is higher than the first threshold value, and the system control unit may output a predetermined error message if the error rate exceeds the second threshold value. This provides the effect of outputting an error message when data is lost.
  • the first nonvolatile memory circuit may be an MRAM. This brings about the effect of enabling both improved data retention characteristics of the MRAM and reduced power consumption.
  • the first nonvolatile memory circuit may be an NVFF. This brings about the effect of enabling both improved data retention characteristics of the NVFF and reduced power consumption.
  • the first nonvolatile memory circuit may be an NVSRAM. This brings about the effect of enabling both improved data retention characteristics of the NVSRAM and reduced power consumption.
  • a second aspect of the present technology is a nonvolatile memory circuit comprising an array section in which a predetermined number of first nonvolatile memory elements are arranged, a detection section that detects the timing to refresh the array section, and a refresh processing section that refreshes the array section at the detected timing.
  • 1 is a block diagram showing a configuration example of a memory system according to a first embodiment of the present technology
  • 1 is a block diagram showing a configuration example of a storage device according to a first embodiment of the present technology
  • 1 is a block diagram showing a configuration example of an MRAM according to a first embodiment of the present technology
  • 1 is a circuit diagram showing a configuration example of a memory cell array according to a first embodiment of the present technology
  • 1 is a block diagram showing a configuration example of an MRAM that detects timing according to a first embodiment of the present technology
  • a graph showing an example of the relationship between data retention characteristics and the resistance value of an MTJ (Magnetic Tunnel Junction) element in the first embodiment of the present technology.
  • MTJ Magnetic Tunnel Junction
  • 10 is a graph showing an example of fluctuations in data retention characteristics over time in the first embodiment of the present technology; 10 is a flowchart illustrating an example of an operation of the storage device according to the first embodiment of the present technology. 10 is a flowchart illustrating an example of an operation of a storage device according to a modified example of the first embodiment of the present technology. 10 is a graph showing an example of fluctuations in data retention characteristics over time in a modified example of the first embodiment of the present technology.
  • FIG. 10 is a block diagram showing a configuration example of a storage device according to a second embodiment of the present technology.
  • FIG. 11 is a block diagram showing a configuration example of a storage device according to a third embodiment of the present technology.
  • First embodiment (example of detecting timing of refresh of MRAM) 2.
  • Second embodiment (example of detecting NVFF refresh timing) 3.
  • Third embodiment (example of detecting timing of NVSRAM refresh)
  • First embodiment is a block diagram showing an example of the configuration of a memory system according to an embodiment of the present invention.
  • the memory system includes a host computer 100 and a storage device 200.
  • the host computer 100 controls the entire memory system. Specifically, the host computer 100 generates commands and data and supplies them to the storage device 200 via signal line 109. The host computer 100 also receives data read from the storage device 200.
  • commands are used to control the storage device 200, and include, for example, write commands that instruct the writing of data and read commands that instruct the reading of data.
  • the storage device 200 comprises a memory controller 210 and an MRAM 300.
  • This memory controller 210 controls the MRAM 300.
  • the memory controller 210 receives a write command and data from the host computer 100, it generates an error detection and correction code (ECC) from the data.
  • ECC error detection and correction code
  • the memory controller 210 accesses the MRAM 300 via a signal line 219 and writes the encoded data.
  • the memory controller 210 accesses the MRAM 300 via signal line 219 and reads the encoded data.
  • the memory controller 210 then converts (i.e., decodes) the encoded data back to the original data before encoding.
  • the memory controller 210 detects and corrects errors in the data based on the ECC.
  • the memory controller 210 supplies the corrected data to the host computer 100.
  • MRAM 300 stores data under the control of memory controller 210. Note that MRAM 300 is an example of the first non-volatile memory circuit described in the claims.
  • FIG. 2 is a block diagram showing an example of a configuration of a storage device 200 according to the first embodiment of the present technology.
  • a memory controller 210 includes a read/write processing unit 211, a refresh processing unit 212, and a detection unit 220.
  • the read/write processing unit 211 accesses the MRAM 300 in accordance with commands from the host computer 100 and reads or writes data.
  • the aforementioned ECC is generated and the encoded data is written.
  • errors in the data are detected and corrected based on the ECC.
  • the refresh processing unit 212 performs refresh processing in accordance with the control of the detection unit 220. During this refresh processing, the refresh processing unit 212 reads data from the MRAM 300, corrects errors in that data using ECC, and rewrites the corrected data.
  • the detection unit 220 detects the timing to refresh the MRAM 300.
  • This detection unit 220 includes a ⁇ sensor 221, an inversion bit acquisition unit 222, a determination unit 223, an initialization unit 224, and a system control unit 225.
  • the ⁇ sensor 221 is a non-volatile memory with lower data retention characteristics than the MRAM 300.
  • an MRAM is used as this ⁇ sensor 221.
  • the volume of the memory element that constitutes the ⁇ sensor 221 is smaller than that of the memory element that constitutes the MRAM 300.
  • the ⁇ sensor 221 is not limited to MRAM, and may be an NVFF or NVSRAM.
  • the ⁇ sensor 221 is also an example of a second non-volatile memory circuit as defined in the claims.
  • the initialization unit 224 writes and initializes predetermined initial data into the ⁇ sensor 221 in accordance with an initialization command from the system control unit 225.
  • no ECC is generated and the data is not encoded.
  • data in which all bits have a logical value of "0" or data in which all bits have a logical value of "1" is written as the initial data. Note that data in which all bits do not have the same value can also be used as the initial data.
  • the inverted bit acquisition unit 222 reads data from the ⁇ sensor 221 as read data and compares the read data with the initial data on a bit-by-bit basis to acquire the number of inverted bits.
  • This inverted bit acquisition unit 222 calculates the BER (Bit Error Rate) of the ⁇ sensor 221 based on the number of inverted bits and supplies it to the determination unit 223. Note that the BER is an example of the error rate described in the claims.
  • the initialization unit 224 can also generate an ECC when writing the initial data.
  • the inverted bit acquisition unit 222 can use the ECC to detect and correct inverted bits (i.e., errors) in the read data.
  • the determination unit 223 follows a determination command from the system control unit 225 to determine whether it is time to refresh the MRAM 300 based on whether the BER of the ⁇ sensor 221 is greater than or equal to threshold value Th1.
  • the method for setting threshold value Th1 will be described later.
  • the determination unit 223 supplies the determination result to the refresh processing unit 212 and the system control unit 225.
  • the refresh processing unit 212 performs a refresh when the BER of the ⁇ sensor 221 is greater than or equal to threshold value Th1, in other words, when it is determined that it is time to perform a refresh.
  • threshold value Th1 is an example of the first threshold value described in the claims.
  • the system control unit 225 controls the determination unit 223 and initialization unit 224. When a predetermined condition is met, the system control unit 225 supplies a determination command to the determination unit 223 to determine whether it is time to perform a refresh. Possible conditions for this determination include, for example, when power is turned on to the storage device 200, when a predetermined period of time has passed since the previous determination, or when the number of accesses since the previous determination exceeds a predetermined number.
  • the system control unit 225 supplies an initialization command to the initialization unit 224 to initialize the ⁇ sensor 221.
  • [Configuration example of MRAM] 3 is a block diagram showing an example of a configuration of an MRAM 300 according to the first embodiment of the present technology.
  • the MRAM 300 includes a data buffer 310, a memory cell array 320, a driver 330, an address decoder 340, a bus 350, a control interface 360, and a memory control unit 370.
  • the data buffer 310 holds write data and read data in units of access under the control of the memory control unit 370.
  • the memory cell array 320 includes a plurality of memory cells arranged in a matrix. Note that a memory cell is an example of a non-volatile memory element as defined in the claims, and the memory cell array 320 is an example of an array unit as defined in the claims.
  • Driver 330 writes data to or reads data from a memory cell selected by address decoder 340.
  • Address decoder 340 analyzes the address specified by the command and selects the memory cell corresponding to that address.
  • the bus 350 is a common path for the data buffer 310, memory cell array 320, address decoder 340, memory control unit 370, and control interface 360 to exchange data with each other.
  • the control interface 360 is an interface through which the memory controller 210 and the MRAM 300 exchange data and commands with each other.
  • the memory control unit 370 controls the driver 330 and address decoder 340 to write or read data.
  • [Configuration example of memory cell array] 4 is a circuit diagram showing a configuration example of a memory cell array 320 according to the first embodiment of the present technology.
  • the memory cell array 320 includes a plurality of memory cells 321 arranged in a two-dimensional lattice pattern.
  • Each of the memory cells 321 includes an MTJ element 322 and a transistor 323.
  • the memory cell array 320 is provided with a selection line for each column and a pair of write lines for each row.
  • the memory cells 321 are an example of a first nonvolatile memory cell as defined in the claims.
  • One end of the MTJ element 322 is connected to the address decoder 340 via a write line, and the other end is connected to the transistor 323.
  • the gate of the transistor 323 is connected to the address decoder 340 via a select line, and one of the source and drain is connected to the MTJ element 322, and the other is connected to the address decoder 340 via a write line.
  • an N-type MOS (Metal-Oxide-Semiconductor) transistor is used as the transistor 323.
  • the address decoder 340 sets the select line corresponding to the write destination column to a high level and sets all other select lines to a low level.
  • the address decoder 340 also supplies a write current from one of a pair of write lines corresponding to the write destination row to the other via the write lines. The direction of the write current is determined by the value of the write data.
  • the resistance value of the memory cell 321 corresponding to the write address changes to either the low resistance R L or the high resistance R H , whichever corresponds to the write data. In other words, the write data is written.
  • the address decoder 340 sets the select line corresponding to the column to be read to high level, and sets all other select lines to low level.
  • the address decoder 340 also supplies a read current via the write lines from one to the other of a pair of write lines corresponding to the row to be read. Through these controls, a cell voltage corresponding to the resistance value of the memory cell to be read is generated between the pair of write lines corresponding to the row address.
  • the detection unit 220 and refresh processing unit 212 are arranged within the memory controller 210, but this configuration is not limited to this.
  • the detection unit 220 and refresh processing unit 212 can be arranged within the memory control unit 370 of the MRAM 300. In this case, the detection unit 220 and refresh processing unit 212 within the memory controller 210 are eliminated.
  • the detection unit 220 also detects the timing for refreshing the memory cell array 320, and the refresh processing unit 212 refreshes the memory cell array 320 at that timing.
  • circuits other than the detection unit 220 and refresh processing unit 212 within the memory control unit 370 are omitted.
  • FIG. 6 is a graph showing an example of the relationship between data retention characteristics and the resistance value of an MTJ element in the first embodiment of the present technology.
  • the vertical axis in the figure represents the data retention characteristics in terms of the elapsed time until the BER reaches 1 ppm (parts per million), and the horizontal axis represents the lower resistance value of the MTJ element.
  • the vertical axis is in units of, for example, hours, and the horizontal axis is in units of, for example, kilohms (k ⁇ ).
  • 1 ppm is a value equivalent to the error correction capability of the ECC, and it is assumed that data in the MRAM 300 will not be lost if the BER is 1 ppm or less.
  • the plots with open circles represent measurements at a temperature of 105°C, and the curve including them shows the relationship between data retention characteristics and R L under those temperature conditions.
  • the plots with black circles represent measurements at a temperature of 85°C, and the curve including them shows the relationship between data retention characteristics and R L under those temperature conditions.
  • the plots with gray circles represent measurements at a temperature of 65°C, and the curve including them shows the relationship between data retention characteristics and R L under those temperature conditions.
  • the plots with double circles represent measurements at a temperature of 45°C, and the curve including them shows the relationship between data retention characteristics and R L under those temperature conditions.
  • the plots with crosses represent measurements at a temperature of 25°C, and the curve including them shows the relationship between data retention characteristics and R L under those temperature conditions.
  • Area 501 in the upper left shows the characteristics of the MRAM in a comparative storage device that does not use the ⁇ sensor 221.
  • Area 503 in the lower right shows the characteristics of the MRAM 300 in the storage device 200 that uses the ⁇ sensor 221.
  • Area 504 in the lower right shows the characteristics of the ⁇ sensor 221.
  • the temperature at which it takes 10 years for the BER to reach 1 ppm is 85° C.
  • the BER may exceed 1 ppm (i.e., the error correction capability) after a longer than expected time has passed at 105° C., and data may be lost.
  • the BER of the MRAM 300 will not exceed the error correction capability of the ECC (e.g., 1 ppm). It will take several days at 105°C, for example, for the BER of the MRAM 300 to reach 1 ppm.
  • the dashed-dotted line indicates the line at which the BER of the MRAM 300 becomes 1 ppm.
  • the storage device 200 detects when the BER of the ⁇ sensor 221 reaches or exceeds the threshold value Th1, and refreshes the MRAM 300. For example, after one day at 105°C, the BER of the ⁇ sensor 221 reaches Th1. At this point, the dashed-dotted line (several days at 105°C, etc.) has not been reached, and the BER of the MRAM 300 is less than 1 ppm. Therefore, by refreshing, errors can be corrected using ECC, preventing data loss.
  • the appropriate timing for refreshing can also be detected by having the storage device 200 measure the temperature and elapsed time using a thermometer and RTC (Real Time Clock).
  • RTC Real Time Clock
  • this method does not allow the temperature to be measured while the storage device 200 is powered off, and so it is not possible to respond if a temperature rise occurs during that period. It also requires the addition of a thermometer, which increases the number of parts. Furthermore, if the thermometer were to operate even while the power is off, it would be possible to respond if a temperature rise occurs during that period, but this would increase power consumption.
  • Figure 7 is a graph showing an example of the variation in data retention characteristics over time in the first embodiment of the present technology.
  • the vertical axis in the figure represents BER, and the horizontal axis represents the elapsed time under conditions of 105°C.
  • the dotted line represents the characteristics of a comparative MRAM that does not use the ⁇ sensor 221.
  • the thin solid line represents the characteristics of the ⁇ sensor 221, and the thick solid line represents the characteristics of the MRAM 300.
  • the R L of the ⁇ sensor 221 is 6.5 kilohms (k ⁇ ), and the R L of the MRAM 300 is 3.5 kilohms (k ⁇ ).
  • the R L of the comparative example is 2.5 kilohms (k ⁇ ).
  • Plot 511 shows the elapsed time when the BER of the ⁇ sensor 221 is Th1 (e.g., 1 percent). For example, assume that the BER of the ⁇ sensor 221 becomes 1 percent after one day at 105°C.
  • Plot 512 shows the BER of MRAM 300 after the elapsed time of plot 511 at the same temperature (i.e., 105°C).
  • the dashed dotted line indicates a BER of 1 ppm. Because the BER of MRAM 300 at the time of plot 512 is less than 1 ppm, data loss can be suppressed by refreshing at this timing.
  • the BER of the comparative example is lower than that of the MRAM 300 under the same temperature and elapsed time conditions, the power consumption increases due to the high RL .
  • Example of operation of storage device] 8 is a flowchart showing an example of the operation of the storage device 200 according to the first embodiment of the present technology. This operation is started, for example, when the storage device 200 is powered on. As described above, the operation can also be started when a predetermined period has elapsed since the previous determination, or when the number of accesses since the previous determination exceeds a predetermined number.
  • the storage device 200 acquires the BER of the ⁇ sensor 221 (step S901) and determines whether it is time to perform a refresh based on whether the BER is greater than or equal to Th1 (step S902).
  • step S902 If the BER is greater than or equal to Th1, i.e., if it is time to perform a refresh (step S902: Yes), the storage device 200 refreshes the MRAM 300 (step S903) and initializes the ⁇ sensor 221 (step S904).
  • step S902 If the BER is lower than Th1 (step S902: No), or after step S904, the storage device 200 ends the operation for detecting the timing of a refresh.
  • the storage device 200 detects the timing to refresh the MRAM 300, thereby improving the data retention characteristics of the MRAM 300 while reducing power consumption.
  • the storage device 200 determines whether it is time to perform a refresh based on whether the BER of the ⁇ sensor 221 is equal to or greater than Th1. However, if the BER of the ⁇ sensor 221 is very high, the BER of the MRAM 300 may exceed 1 ppm, potentially resulting in data loss.
  • the storage device 200 in this modified version of the first embodiment differs from the first embodiment in that it outputs an error message when data is lost.
  • FIG. 9 is a flowchart showing an example of the operation of the storage device 200 in a modified example of the first embodiment of the present technology.
  • the operation of the storage device 200 in this modified example of the first embodiment differs from the first embodiment in that steps S911 and S912 are further executed.
  • step S902 If the BER is greater than or equal to Th1 (step S902: Yes), the determination unit 223 in the storage device 200 determines whether the BER is higher than Th2 (e.g., 4.5 percent) (step S911).
  • Th2 e.g., 4.5 percent
  • threshold Th2 is a value higher than threshold Th1, and under the temperature and elapsed time conditions where the BER of the ⁇ sensor 221 exceeds threshold Th2, the BER of the MRAM 300 exceeds the error correction capability of the ECC (e.g., 1 ppm).
  • threshold Th2 is an example of the second threshold described in the claims.
  • step S902 If the BER is higher than Th2 (step S902: Yes), as mentioned above, the BER of the MRAM 300 exceeds the error correction capability of the ECC, which may result in data loss. Therefore, the system control unit 225 does not perform a refresh, but instead outputs a predetermined error message to the outside (such as the host computer 100) (step S912), and terminates operation. For example, the error message output may read, "The temperature during storage has reached a specified temperature, and some data may have been lost."
  • step S902 If the BER is less than or equal to Th2 (step S902: No), the storage device 200 executes steps S903 and S904 in sequence.
  • Figure 10 is a graph showing an example of the variation in data retention characteristics over time in a modified example of the first embodiment of the present technology.
  • the vertical axis in the figure represents BER, and the horizontal axis represents the elapsed time under conditions of 105°C.
  • the dotted line represents the characteristics of a comparative MRAM that does not use the ⁇ sensor 221.
  • the thin solid line represents the characteristics of the ⁇ sensor 221, and the thick solid line represents the characteristics of the MRAM 300.
  • Plot 513 shows the elapsed time when the BER of the ⁇ sensor 221 is Th2. For example, assume that the BER of the ⁇ sensor 221 exceeds Th2 after 200 hours at 105°C.
  • Plot 514 shows the BER of MRAM 300 after the elapsed time of plot 513 at the same temperature (i.e., 105°C).
  • the dashed dotted line indicates a BER of 1 ppm.
  • the BER of MRAM 300 exceeds 1 ppm (error correction capability), so even if a refresh were performed at this timing, there is a risk of data loss. For this reason, the storage device 200 does not perform a refresh, but instead notifies the outside world with a specified error message.
  • the storage device 200 outputs an error message when the BER of the ⁇ sensor 221 is higher than Th2, and can therefore notify the outside when there is a risk of data loss.
  • Second embodiment In the first embodiment described above, the timing of refreshing the MRAM 300 is detected, but the memory to be refreshed is not limited to the MRAM 300.
  • the storage device 200 in this second embodiment differs from the first embodiment in that it refreshes the NVFF.
  • FIG. 11 is a block diagram showing an example configuration of a storage device 200 according to a second embodiment of the present technology.
  • the storage device 200 according to this second embodiment differs from the first embodiment in that it includes an NVFF 301 instead of the MRAM 300.
  • a controller 210-1 is used instead of the memory controller 210.
  • the controller 210-1 is similar to the memory controller 210, except that it accesses the NVFF 301 instead of the MRAM 300.
  • the detection unit 220 in the controller 210-1 detects the timing to refresh the NVFF 301, and the refresh processing unit 212 refreshes the NVFF 301 at that timing.
  • the type of the ⁇ sensor 221 is not limited as long as it has lower data retention characteristics than the NVFF 301, and it can be, for example, MRAM, NVFF, or NVSRAM.
  • the detection unit 220 and refresh processing unit 212 can also be placed within the NVFF 301. Also, a modified version of the first embodiment can be applied to the second embodiment.
  • the storage device 200 detects the timing to refresh the NVFF 301, thereby improving the data retention characteristics of the NVFF 301 while reducing power consumption.
  • FIG. 12 is a block diagram showing an example configuration of a storage device 200 according to a third embodiment of the present technology.
  • the storage device 200 according to the third embodiment differs from the first embodiment in that it includes an NVSRAM 302 instead of the MRAM 300.
  • a controller 210-1 is used instead of the memory controller 210.
  • the controller 210-1 is similar to the memory controller 210 except that it accesses the NVSRAM 302 instead of the MRAM 300.
  • the detection unit 220 in the memory controller 210-1 detects the timing to refresh the NVSRAM 302, and the refresh processing unit 212 refreshes the NVSRAM 302 at that timing.
  • the type of the ⁇ sensor 221 is not limited as long as it has lower data retention characteristics than the NVSARM 302, and it can be, for example, MRAM, NVFF, or NVSRAM.
  • the detection unit 220 and refresh processing unit 212 can also be arranged within the NVSRAM 302. Also, a modified version of the first embodiment can be applied to the third embodiment.
  • the storage device 200 detects the timing to refresh the NVSRAM 302, thereby improving the data retention characteristics of the NVSRAM 302 while reducing power consumption.
  • the present technology can also be configured as follows. (1) a first nonvolatile memory circuit; a detection unit that detects a timing to refresh the first nonvolatile memory circuit; a refresh processing unit that refreshes the first nonvolatile memory circuit at the detected timing. (2) The detection unit a second nonvolatile memory circuit having a lower data retention characteristic than the first nonvolatile memory circuit; The storage device according to (1), further comprising: a determination unit that determines whether it is time to perform the refresh based on whether an error rate of the second nonvolatile storage circuit is below a first threshold value. (3) The storage device according to (2), wherein the volume of the memory element constituting the second nonvolatile memory circuit is smaller than the volume of the memory element constituting the first nonvolatile memory circuit.
  • the storage device according to (2) or (3), wherein the second nonvolatile storage circuit is an MRAM.
  • the storage device according to (2) or (3), wherein the second nonvolatile storage circuit is an NVFF.
  • the storage device according to (2) or (3), wherein the second nonvolatile storage circuit is an NVSRAM.
  • a storage device described in any of (2) to (6), wherein the detection unit further includes a system control unit that controls the judgment unit to determine whether it is time to perform the refresh when a predetermined condition is met.
  • the detection unit further includes an initialization unit that initializes the second nonvolatile memory circuit; The storage device according to (7), wherein the system control unit controls the initialization unit to initialize the second nonvolatile storage circuit when it is determined that it is time to perform the refresh. (9) The determination unit further determines whether the error rate exceeds a second threshold value that is higher than the first threshold value; The storage device according to (8), wherein the system control unit outputs a predetermined error message when the error rate exceeds the second threshold value. (10) The storage device according to any one of (1) to (9), wherein the first nonvolatile storage circuit is an MRAM. (11) The storage device according to any one of (1) to (9), wherein the first nonvolatile storage circuit is an NVFF.
  • the storage device according to any one of (1) to (9), wherein the first nonvolatile storage circuit is an NVSRAM.
  • the first nonvolatile storage circuit is an NVSRAM.
  • an array section in which a predetermined number of first nonvolatile memory elements are arranged; a detection unit that detects a timing for refreshing the array unit; a refresh processing unit that refreshes the array unit at the detected timing.
  • Host computer 100 Host computer 200 Storage device 210 Memory controller 210-1 Controller 211 Read/write processing unit 212 Refresh processing unit 220 Detection unit 221 ⁇ sensor 222 Inversion bit acquisition unit 223 Determination unit 224 Initialization unit 225 System control unit 300 MRAM 301 NVFF 302 NVSRAM 310 Data buffer 320 Memory cell array 321 Memory cell 322 MTJ element 323 Transistor 330 Driver 340 Address decoder 350 Bus 360 Control interface 370 Memory control unit

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

不揮発性記憶回路を用いる記憶装置において、データ保持特性を向上させつつ、消費電力を低減する。 記憶装置は、第1不揮発性記憶回路と、検出部と、リフレッシュ処理部とを具備する。第1不揮発性記憶回路と検出部とリフレッシュ処理部とを具備する記憶装置において、検出部は、第1不揮発性記憶回路のリフレッシュを行うタイミングを検出する。また、リフレッシュ処理部は、検出部より検出されたタイミングで第1不揮発性記憶回路のリフレッシュを行う。

Description

記憶装置、不揮発性メモリ、および、記憶装置の制御方法
 本技術は、記憶装置に関する。詳しくは、不揮発性の記憶装置、不揮発性メモリ、および、当該記憶装置の制御方法に関する。
 近年の情報処理システムにおいては、補助記憶装置やストレージとして、不揮発性の記憶回路が用いられることがある。不揮発性の記憶回路として、MRAM(Magnetoresistive Random Access Memory)などの不揮発性メモリ(NVM:Non-Volatile Memory)、NVFF(Non-Volatile Flip-Flop)、NVSRAM(Non-Volatile Static Random Access Memory)などが挙げられる。
 これらの不揮発性記憶回路においては、アクセスの繰返しや経年劣化の進行により、メモリセルが劣化して、書き込んだデータに誤りが発生することが知られている。そこで、メモリセルのデータを書き換えるリフレッシュ処理を時々行うメモリコントローラが提案されている(例えば、特許文献1参照。)。
特開2013-164849号公報
 上述の従来技術では、リフレッシュ処理により、エラー発生の抑制を図っている。しかしながら、上述の従来技術では、データ保持特性が不足することがある。エラー率は温度にも依存するため、例えば、85℃で10年間に亘ってエラー率が許容値以下となるように間隔を設定して、その間隔でリフレッシュを行っても、105℃に温度が上昇した際には、エラー率が許容値を超えてしまうことがある。MRAMでは、低抵抗状態の抵抗値を高くすることにより十分なデータ保持特性を実現することができるが、その代わりに書込み電流が大きくなり、消費電力が増大してしまう。MRAM以外の不揮発性記憶回路(NVFFなど)でも、一般にデータ保持特性を高くするほど、消費電力が増大する。このように、上述の従来技術では、データ保持特性を向上させつつ、消費電力を低減することが困難である。
 本技術はこのような状況に鑑みて生み出されたものであり、不揮発性記憶回路を用いる記憶装置において、データ保持特性を向上させつつ、消費電力を低減することを目的とする。
 本技術は、上述の問題点を解消するためになされたものであり、その第1の側面は、第1不揮発性記憶回路と、上記第1不揮発性記憶回路のリフレッシュを行うタイミングを検出する検出部と、上記検出されたタイミングで上記第1不揮発性メモリのリフレッシュを行うリフレッシュ処理部とを具備する記憶装置、および、当該記憶装置の制御方法である。これにより、データ保持特性の向上と消費電力の削減との両立が可能になるという作用をもたらす。
 また、この第1の側面において、上記検出部は、上記第1不揮発性記憶回路よりもデータ保持特性の低い第2不揮発性記憶回路と、上記第2不揮発性記憶回路のエラー率が第1閾値を下回らないか否かにより上記リフレッシュを行うタイミングであるか否かを判定する判定部とを備えてもよい。これにより、第2不揮発性記憶回路のエラー率に基づいてタイミングが検出されるという作用をもたらす。
 また、この第1の側面において、上記第2不揮発性記憶回路を構成する記憶素子の体積は、上記第1不揮発性記憶回路を構成する記憶素子よりも小さくてもよい。これにより、記憶素子の体積が小さい第2不揮発性記憶回路のエラー率に基づいてタイミングが検出されるという作用をもたらす。
 また、この第1の側面において、上記第2不揮発性記憶回路は、MRAMであってもよい。これにより、MRAMのエラー率に基づいてタイミングが検出されるという作用をもたらす。
 また、この第1の側面において、上記第2不揮発性記憶回路は、NVFFであってもよい。これにより、NVFFのエラー率に基づいてタイミングが検出されるという作用をもたらす。
 また、この第1の側面において、上記第2不揮発性記憶回路は、NVSRAMであってもよい。これにより、NVSRAMのエラー率に基づいてタイミングが検出されるという作用をもたらす。
 また、この第1の側面において、上記検出部は、所定の条件が満たされた場合には上記判定部を制御して上記リフレッシュを行うタイミングであるか否かを判定させるシステム制御部をさらに備えてもよい。これにより、所定の条件が満たされた際に判定が行われるという作用をもたらす。
 また、この第1の側面において、上記検出部は、上記第2不揮発性記憶回路を初期化する初期化部をさらに備え、上記システム制御部は、上記リフレッシュを行うタイミングであると判定された場合には上記初期化部を制御して上記第2不揮発性記憶回路を初期化させてもよい。これにより、複数回の判定を行うことが可能になるという作用をもたらす。
 また、この第1の側面において、上記判定部は、上記第1閾値よりも高い第2閾値を上記エラー率が超えるか否かをさらに判定し、上記システム制御部は、上記第2閾値を上記エラー率が超える場合には所定のエラーメッセージを出力してもよい。これにより、データが消失する際にエラーメッセージが出力されるという作用をもたらす。
 また、この第1の側面において、上記第1不揮発性記憶回路は、MRAMであってもよい。これにより、MRAMのデータ保持特性の向上と消費電力の削減との両立が可能になるという作用をもたらす。
 また、この第1の側面において、上記第1不揮発性記憶回路は、NVFFであってもよい。これにより、NVFFのデータ保持特性の向上と消費電力の削減との両立が可能になるという作用をもたらす。
 また、この第1の側面において、上記第1不揮発性記憶回路は、NVSRAMであってもよい。これにより、NVSRAMのデータ保持特性の向上と消費電力の削減との両立が可能になるという作用をもたらす。
 また、本技術の第2の側面は、所定数の第1不揮発性記憶素子が配列されたアレイ部と、上記アレイ部のリフレッシュを行うタイミングを検出する検出部と、上記検出されたタイミングで上記アレイ部のリフレッシュを行うリフレッシュ処理部とを具備する不揮発性記憶回路である。これにより、不揮発性記憶回路のデータ保持特性の向上と消費電力の削減との両立が可能になるという作用をもたらす。
本技術の第1の実施の形態におけるメモリシステムの一構成例を示すブロック図である。 本技術の第1の実施の形態における記憶装置の一構成例を示すブロック図である。 本技術の第1の実施の形態におけるMRAMの一構成例を示すブロック図である。 本技術の第1の実施の形態におけるメモリセルアレイの一構成例を示す回路図である。 本技術の第1の実施の形態におけるタイミングの検出を行うMRAMの一構成例を示すブロック図である。 本技術の第1の実施の形態におけるデータ保持特性とMTJ(Magnetic Tunnel Junction)素子の抵抗値との関係の一例を示すグラフである。 本技術の第1の実施の形態における時間の経過に伴うデータ保持特性の変動の一例を示すグラフである。 本技術の第1の実施の形態における記憶装置の動作の一例を示すフローチャートである。 本技術の第1の実施の形態の変形例における記憶装置の動作の一例を示すフローチャートである。 本技術の第1の実施の形態の変形例における時間の経過に伴うデータ保持特性の変動の一例を示すグラフである。 本技術の第2の実施の形態における記憶装置の一構成例を示すブロック図である。 本技術の第3の実施の形態における記憶装置の一構成例を示すブロック図である。
 以下、本技術を実施するための形態(以下、実施の形態と称する)について説明する。説明は以下の順序により行う。
 1.第1の実施の形態(MRAMのリフレッシュのタイミングを検出する例)
 2.第2の実施の形態(NVFFのリフレッシュのタイミングを検出する例)
 3.第3の実施の形態(NVSRAMのリフレッシュのタイミングを検出する例)
 <1.第1の実施の形態>
 [メモリシステムの構成例]
 図1は、実施の形態におけるメモリシステムの一構成例を示すブロック図である。このメモリシステムは、ホストコンピュータ100および記憶装置200を備える。
 ホストコンピュータ100は、メモリシステム全体を制御するものである。具体的には、ホストコンピュータ100は、コマンドおよびデータを生成して記憶装置200に信号線109を介して供給する。また、ホストコンピュータ100は、記憶装置200から、読み出されたデータを受け取る。ここで、コマンドは、記憶装置200を制御するためのものであり、例えば、データの書込みを指示するライトコマンドや、データの読出しを指示するリードコマンドを含む。
 記憶装置200は、メモリコントローラ210およびMRAM300を備える。このメモリコントローラ210は、MRAM300を制御するものである。メモリコントローラ210は、ホストコンピュータ100からライトコマンドおよびデータを受け取った場合に、そのデータから誤り検出訂正符号(ECC:Error detection and Correction Code)を生成する。メモリコントローラ210は、MRAM300に信号線219を介してアクセスして符号化したデータを書き込む。
 また、ホストコンピュータ100からリードコマンドを受け取った場合、メモリコントローラ210は、MRAM300に信号線219を介してアクセスして符号化されたデータを読み出す。そして、メモリコントローラ210は、符号化されたデータを、符号化前の元のデータに変換(すなわち、復号)する。復号の際に、メモリコントローラ210は、ECCに基づいてデータにおける誤りの検知および訂正を行う。メモリコントローラ210は、訂正したデータをホストコンピュータ100に供給する。
 MRAM300は、メモリコントローラ210の制御に従って、データを記憶するものである。なお、MRAM300は、特許請求の範囲に記載の第1不揮発性記憶回路の一例である。
 [記憶装置の構成例]
 図2は、本技術の第1の実施の形態における記憶装置200の一構成例を示すブロック図である。この記憶装置200においてメモリコントローラ210は、リード/ライト処理部211、リフレッシュ処理部212および検出部220を備える。
 リード/ライト処理部211は、ホストコンピュータ100からのコマンドに従ってMRAM300にアクセスし、データの読出し、または、データの書込みを行うものである。データの書込みの際には前述のECCが生成され、符号化したデータが書き込まれる。また、データの読出しの際には、ECCに基づいてデータにおける誤りの検知および訂正が行われる。
 リフレッシュ処理部212は、検出部220の制御に従って、リフレッシュ処理を行うものである。このリフレッシュ処理において、リフレッシュ処理部212は、MRAM300からデータを読み出し、ECCを用いて、そのデータの誤りを訂正し、訂正したデータの再度の書込みを行う。
 検出部220は、MRAM300のリフレッシュを行うタイミングを検出するものである。この検出部220は、Δセンサー221、反転ビット取得部222、判定部223、初期化部224およびシステム制御部225を備える。
 Δセンサー221は、MRAM300よりもデータ保持特性が低い不揮発性メモリである。このΔセンサー221として、例えば、MRAMが用いられる。また、Δセンサー221を構成する記憶素子の体積は、MRAM300を構成する記憶素子よりも小さい。例えば、Δセンサー221内の記憶素子の径および膜厚の少なくとも一方をMRAM300よりも小さくすることにより、MRAM300に対してΔセンサー221の体積が削減される。なお、Δセンサー221は、MRAMに限定されず、NVFFやNVSRAMであってもよい。また、Δセンサー221は、特許請求の範囲に記載の第2不揮発性記憶回路の一例である。
 初期化部224は、システム制御部225の初期化命令に従って、Δセンサー221に所定の初期データを書き込んで初期化するものである。書込みの際には、MRAM300と異なり、ECCは生成されず、データも符号化されないものとする。例えば、全ビットが論理値「0」のデータや、全ビットが論理値「1」のデータが初期データとして書き込まれる。なお、全ビットが同一値のデータに該当しないデータを初期データとして用いることもできる。
 反転ビット取得部222は、Δセンサー221からデータをリードデータとして読み出し、そのリードデータを初期データとビット単位で比較することにより、反転ビットの個数を取得するものである。この反転ビット取得部222は、反転ビット数に基づいてΔセンサー221のBER(Bit Error Rate)を求め、判定部223に供給する。なお、BERは、特許請求の範囲に記載のエラー率の一例である。
 なお、初期化部224は、初期データの書込みの際にECCを生成することもできる。この場合、反転ビット取得部222は、そのECCを用いてリードデータの反転ビット(すなわち、誤り)を検知し、訂正することができる。
 判定部223は、システム制御部225の判定命令に従って、Δセンサー221のBERが閾値Th1以上であるか否かにより、MRAM300のリフレッシュを行うタイミングであるか否かを検出するものである。閾値Th1の設定方法については後述する。判定部223は、判定結果をリフレッシュ処理部212およびシステム制御部225に供給する。リフレッシュ処理部212は、Δセンサー221のBERが閾値Th1以上である場合、言い換えれば、リフレッシュを行うタイミングであると判定された場合に、リフレッシュを行う。なお、閾値Th1は、特許請求の範囲に記載の第1閾値の一例である。
 システム制御部225は、判定部223や初期化部224を制御するものである。このシステム制御部225は、所定の条件が満たされた場合に、判定命令を判定部223に供給してリフレッシュを行うタイミングであるか否かを判定させる。判定させる条件としては、例えば、記憶装置200に電源が投入された場合、前回の判定時から所定期間が経過した場合や、前回の判定時からのアクセス回数が所定回数を超えた場合などが想定される。
 また、システム制御部225は、リフレッシュを行うタイミングであると判定された場合に、初期化命令を初期化部224に供給してΔセンサー221を初期化させる。
 [MRAMの構成例]
 図3は、本技術の第1の実施の形態におけるMRAM300の一構成例を示すブロック図である。このMRAM300は、データバッファ310、メモリセルアレイ320、ドライバ330、アドレスデコーダ340、バス350、制御インターフェース360、および、メモリ制御部370を備える。
 データバッファ310は、メモリ制御部370の制御に従って、ライトデータやリードデータをアクセス単位で保持するものである。メモリセルアレイ320は、マトリックス
状に配列された複数のメモリセルを備える。なお、メモリセルは、特許請求の範囲に記載の不揮発性記憶素子の一例であり、メモリセルアレイ320は、特許請求の範囲に記載のアレイ部の一例である。
 ドライバ330は、アドレスデコーダ340により選択されたメモリセルに対してデータの書込み、または、データの読出しを行うものである。アドレスデコーダ340は、コマンドにより指定されたアドレスを解析して、そのアドレスに対応するメモリセルを選択するものである。
 バス350は、データバッファ310、メモリセルアレイ320、アドレスデコーダ340、メモリ制御部370および制御インターフェース360が相互にデータを交換するための共通の経路である。
 制御インターフェース360は、メモリコントローラ210とMRAM300とがデータやコマンドを相互に交換するためのインターフェースである。
 メモリ制御部370は、ドライバ330およびアドレスデコーダ340を制御して、データの書込み、または、読出しを行わせるものである。
 [メモリセルアレイの構成例]
 図4は、本技術の第1の実施の形態におけるメモリセルアレイ320の一構成例を示す回路図である。このメモリセルアレイ320は、二次元格子状に配列された複数のメモリセル321を備える。メモリセル321のそれぞれは、MTJ素子322とトランジスタ323とを備える。また、メモリセルアレイ320には、カラムごとに選択線が配線され、ロウごとに一対の書込み線が配線される。なお、メモリセル321は、特許請求の範囲に記載の第1不揮発性メモリセルの一例である。
 MTJ素子322の一端は、書込み線を介してアドレスデコーダ340に接続され、他端は、トランジスタ323に接続される。また、トランジスタ323のゲートは選択線を介してアドレスデコーダ340に接続され、ソースおよびドレインの一方は、MTJ素子322に接続され、他方は書込み線を介してアドレスデコーダ340に接続される。このトランジスタ323として、例えば、N型のMOS(Metal-Oxide-Semiconductor)トランジスタが用いられる。
 書込みの際にアドレスデコーダ340は、書込み先のカラムに対応する選択線をハイレベルにし、それ以外の全ての選択線をローレベルにする。また、アドレスデコーダ340は、書込み先のロウに対応する一対の書込み線の一方から他方に書込み線を介して書込み電流を供給する。書込み電流の方向は、ライトデータの値により決定される。これらの制御により、ライトアドレスに対応するメモリセル321の抵抗値は、低抵抗Rおよび高抵抗Rのうちライトデータに対応する方に変化する。すなわち、ライトデータが書き込まれる。
 一方、読出しの際にアドレスデコーダ340は、読出し先のカラムに対応する選択線をハイレベルにし、それ以外の全ての選択線をローレベルにする。また、アドレスデコーダ340は、読出し先のロウに対応する一対の書込み線の一方から他方に書込み線を介して読出し電流を供給する。これらの制御により、ロウアドレスに対応する一対の書込み線の間に、読出し先のメモリセルの抵抗値に応じたセル電圧が生じる。
 なお、上述した記憶装置200では、メモリコントローラ210内に検出部220およびリフレッシュ処理部212を配置していたが、この構成に限定されない。
 例えば、図5に例示するように、MRAM300のメモリ制御部370内に検出部220およびリフレッシュ処理部212を配置することもできる。この場合、メモリコントローラ210内の検出部220およびリフレッシュ処理部212は削減される。また、検出部220は、メモリセルアレイ320のリフレッシュを行うタイミングを検出し、リフレッシュ処理部212は、そのタイミングでメモリセルアレイ320のリフレッシュを行う。
 なお、同図において、メモリ制御部370内の検出部220およびリフレッシュ処理部212以外の回路(リードやライトを行う回路など)は省略されている。
 図6は、本技術の第1の実施の形態におけるデータ保持特性とMTJ素子の抵抗値との関係の一例を示すグラフである。同図における縦軸は、BERが1ppm(parts per million)となるまでの経過時間によりデータ保持特性を示し、横軸は、MTJ素子の低い方の抵抗値を示す。縦軸の単位は、例えば、hоurであり、横軸の単位は、例えば、キロオーム(kΩ)である。1ppmは、ECCの誤り訂正能力に相当する値であり、BERが1ppm以下の場合、MRAM300のデータが消失しないものとする。
 また、白丸のプロットは、温度が105℃の測定値を示し、それらを含む曲線は、その温度条件下でのデータ保持特性とRとの関係を示す。黒丸のプロットは、温度が85℃の測定値を示し、それらを含む曲線は、その温度条件下でのデータ保持特性とRとの関係を示す。灰色のプロットは、温度が65℃の測定値を示し、それらを含む曲線は、その温度条件下でのデータ保持特性とRとの関係を示す。二重丸のプロットは、温度が45℃の測定値を示し、それらを含む曲線は、その温度条件下でのデータ保持特性とRとの関係を示す。×印のプロットは、温度が25℃の測定値を示し、それらを含む曲線は、その温度条件下でのデータ保持特性とRとの関係を示す。
 同図に例示するように、Rを一定にすると、温度上昇に伴ってデータ保持特性が低下する。また、一定の温度条件下においては、Rが高いほど、BERが1ppmとなるまでの経過時間が短く(言い換えれば、データ保持特性が低く)なる。
 左上のエリア501は、Δセンサー221を用いない比較例の記憶装置内のMRAMの特性を示す。その右下のエリア503は、Δセンサー221を用いる記憶装置200内のMRAM300の特性を示す。右下のエリア504は、Δセンサー221の特性を示す。
 比較例のエリア501では、105℃の条件下で、BERが1ppmとなるまでの経過時間が10年以上であり、十分なデータ保持特性を実現している。しかしながら、その代わりに、エリア502や503と比較してRが低くなり、その分だけ書込み電流が増大する。このため、消費電力が大きくなってしまう。
 エリア502に示すように、Rをエリア501よりも高くすれば、消費電力を削減することができる。その代わりに、BERが1ppmとなるまでの経過時間が10年となる温度は85℃となってしまう。この場合、リフレッシュを適切なタイミングで行わないと、105℃で想定以上の時間が経過した際に、BERが1ppm(すなわち、誤り訂正能力)を超え、データが消失するおそれがある。
 上述したように、Δセンサー221を用いない比較例では、データ保持特性の向上と、消費電力の削減とを両立することが困難である。
 これに対して、エリア504の特性のΔセンサー221を用いる場合を考える。エリア504は、Rがエリア502や503よりも高いため、その分だけデータ保持特性が低下し、105℃の温度では、数十秒でBERが1ppmに達してしまう。このデータ保持特性の低いΔセンサー221をリフレッシュのタイミングの検出に利用することができる。
 ここで、Δセンサー221のBERが閾値Th1(例えば、1パーセント)となる温度および経過時間(105℃で1日など)の条件下では、MRAM300のBERがECCの誤り訂正能力(1ppmなど)を超えないものとする。MRAM300のBERが1ppmに達するのは、例えば、105℃で数日かかるものとする。一点鎖線は、MRAM300のBERが1ppmとなるラインを示す。
 この場合、記憶装置200は、Δセンサー221のBERが閾値Th1以上となったタイミングを検出し、MRAM300のリフレッシュを行う。例えば、105℃で1日経過した時点でΔセンサー221のBERがTh1となる。この時点では、一点鎖線(105℃で数日など)に達しておらず、MRAM300のBERは1ppm未満である。このため、リフレッシュにより、ECCで誤りを訂正することができ、データの消失を抑制することができる。
 このように、適切なタイミングでリフレッシュを行うことにより、エリア503までRを高くしても、データの消失を抑制することができる。これにより、消費電力を削減しつつ、データ保持特性を向上させることができる。
 なお、記憶装置200が温度および経過時間を温度計およびRTC(Real Time Clock)で測定することによっても、リフレッシュの適切なタイミング(105℃で1日など)を検出することができる。ただし、この方法では、記憶装置200の電源がオフの期間内に温度を測定することができず、その期間に温度上昇が生じた場合に対応することができない。また、温度計を追加する必要があり、部品点数が増大してしまう。また、電源がオフの期間も温度計を動作させれば、その期間に温度上昇が生じた場合に対応することができるが、代わりに消費電力が増大してしまう。
 図7は、本技術の第1の実施の形態における時間の経過に伴うデータ保持特性の変動の一例を示すグラフである。同図における縦軸は、BERを示し、横軸は、105℃の条件下の経過時間を示す。また、点線は、Δセンサー221を用いない比較例のMRAMの特性を示す。細い実線は、Δセンサー221の特性を示し、太い実線は、MRAM300の特性を示す。
 Δセンサー221のRは、6.5キロオーム(kΩ)であり、MRAM300のRは、3.5キロオーム(kΩ)である。比較例のRは、2.5キロオーム(kΩ)である。
 プロット511は、Δセンサー221のBERがTh1(1パーセントなど)のときの経過時間を示す。例えば、105℃で1日が経過した際に、Δセンサー221のBERが1パーセントになるものとする。
 プロット512は、同一の温度(すなわち、105℃)でプロット511の経過時間が経過したときのMRAM300のBERを示す。一点鎖線は、BERが1ppmのラインである。プロット512の時点でMRAM300のBERは、1ppm未満であるため、このタイミングでリフレッシュすることにより、データの消失を抑制することができる。
 なお、同一の温度および経過時間の条件下において比較例のBERは、MRAM300よりも低いものの、Rが高いため、消費電力が増大してしまう。
 [記憶装置の動作例]
 図8は、本技術の第1の実施の形態における記憶装置200の動作の一例を示すフローチャートである。この動作は、例えば、記憶装置200に電源が投入されたときに開始される。なお、前述したように、前回の判定時から所定期間が経過したときや、前回の判定時からアクセス回数が所定回数を超えたときに開始させることもできる。
 記憶装置200は、Δセンサー221のBERを取得し(ステップS901)、そのBERがTh1以上であるか否かによりリフレッシュを行うタイミングであるか否かを判定する(ステップS902)。
 BERがTh1以上の場合、すなわち、リフレッシュを行うタイミングである場合(ステップS902:Yes)、記憶装置200は、MRAM300のリフレッシュを行い(ステップS903)、Δセンサー221を初期化する(ステップS904)。
 BERがTh1より低い場合(ステップS902:No)、または、ステップS904の後に、記憶装置200は、リフレッシュのタイミングを検出するための動作を終了する。
 このように、本技術の第1の実施の形態によれば、記憶装置200がMRAM300のリフレッシュを行うタイミングを検出するため、MRAM300のデータ保持特性を向上させつつ、消費電力を低減することができる。
 [変形例]
 上述の第1の実施の形態では、記憶装置200は、Δセンサー221のBERがTh1以上であるか否かによりリフレッシュを行うタイミングであるか否かを判定していた。しかし、Δセンサー221のBERが非常に高い場合、MRAM300のBERが1ppmを超えてしまい、データが消失するおそれがある。この第1の実施の形態の変形例における記憶装置200は、データが消失した際にエラーメッセージを出力する点において第1の実施の形態と異なる。
 図9は、本技術の第1の実施の形態の変形例における記憶装置200の動作の一例を示すフローチャートである。この第1の実施の形態の変形例における記憶装置200の動作は、ステップS911およびS912をさらに実行する点において第1の実施の形態と異なる。
 BERがTh1以上の場合(ステップS902:Yes)、記憶装置200内の判定部223は、BERがTh2(例えば、4.5パーセント)より高いか否かを判定する(ステップS911)。
 ここで、閾値Th2は、閾値Th1より高い値であり、Δセンサー221のBERが閾値Th2を超える温度および経過時間の条件下では、MRAM300のBERがECCの誤り訂正能力(1ppmなど)を超えるものとする。なお、閾値Th2は、特許請求の範囲に記載の第2閾値の一例である。
 BERがTh2より高い場合(ステップS902:Yes)、前述のようにMRAM300のBERがECCの誤り訂正能力を超えるため、データが消失するおそれがある。そこで、システム制御部225は、リフレッシュはせずに所定のエラーメッセージを外部(ホストコンピュータ100など)に出力し(ステップS912)、動作を終了する。エラーメッセージとして、例えば、「保管中の温度が規定温度に達し、データの一部が失われた可能性があります」というメッセージが出力される。
 BERがTh2以下の場合(ステップS902:No)、記憶装置200は、ステップS903およびS904を順に実行する。
 図10は、本技術の第1の実施の形態の変形例における時間の経過に伴うデータ保持特性の変動の一例を示すグラフである。同図における縦軸は、BERを示し、横軸は、105℃の条件下の経過時間を示す。また、点線は、Δセンサー221を用いない比較例のMRAMの特性を示す。細い実線は、Δセンサー221の特性を示し、太い実線は、MRAM300の特性を示す。
 プロット513は、Δセンサー221のBERがTh2のときの経過時間を示す。例えば、105℃で200時間が経過した際に、Δセンサー221のBERがTh2を超えるものとする。
 プロット514は、同一の温度(すなわち、105℃)でプロット513の経過時間が経過したときのMRAM300のBERを示す。一点鎖線は、BERが1ppmのラインである。プロット514の時点でMRAM300のBERは、1ppm(誤り訂正能力)を超えるため、このタイミングで仮にリフレッシュを行っても、データが消失するおそれがある。このため、記憶装置200は、リフレッシュを行わずに、所定のエラーメッセージにより外部に通知する。
 このように、本技術の第2の実施の形態によれば、記憶装置200は、Δセンサー221のBERがTh2より高い場合にエラーメッセージを出力するため、データが消失するおそれのあるときに、その旨を外部に通知することができる。
 <2.第2の実施の形態>
 上述の第1の実施の形態では、MRAM300のリフレッシュのタイミングを検出していたが、リフレッシュ対象のメモリは、MRAM300に限定されない。この第2の実施の形態における記憶装置200は、NVFFのリフレッシュを行う点において第1の実施の形態と異なる。
 図11は、本技術の第2の実施の形態における記憶装置200の一構成例を示すブロック図である。この第2の実施の形態における記憶装置200は、MRAM300の代わりにNVFF301を備える点において第1の実施の形態と異なる。また、メモリコントローラ210の代わりに、コントローラ210-1が用いられる。コントローラ210-1は、MRAM300の代わりにNVFF301にアクセスする点以外は、メモリコントローラ210と同様である。
 第2の実施の形態においてコントローラ210-1内の検出部220は、NVFF301のリフレッシュを行うタイミングを検出し、リフレッシュ処理部212は、そのタイミングでNVFF301のリフレッシュを行う。
 また、Δセンサー221は、NVFF301よりデータ保持特性が低いものであれば、種類は限定されず、例えば、MRAM、NVFF、NVSRAMのいずれであってもよい。
 なお、図5に例示したように、NVFF301内に、検出部220およびリフレッシュ処理部212を配置することもできる。また、第2の実施の形態に、第1の実施の形態の変形例を適用することもできる。
 このように、本技術の第2の実施の形態によれば、記憶装置200がNVFF301のリフレッシュを行うタイミングを検出するため、NVFF301のデータ保持特性を向上させつつ、消費電力を低減することができる。
 <3.第3の実施の形態>
 上述の第1の実施の形態では、MRAM300のリフレッシュのタイミングを検出していたが、リフレッシュ対象のメモリは、MRAM300に限定されない。この第3の実施の形態における記憶装置200は、NVSRAMのリフレッシュを行う点において第1の実施の形態と異なる。
 図12は、本技術の第3の実施の形態における記憶装置200の一構成例を示すブロック図である。この第3の実施の形態における記憶装置200は、MRAM300の代わりにNVSRAM302を備える点において第1の実施の形態と異なる。また、メモリコントローラ210の代わりに、コントローラ210-1が用いられる。コントローラ210-1は、MRAM300の代わりにNVSRAM302にアクセスする点以外は、メモリコントローラ210と同様である。
 第3の実施の形態においてメモリコントローラ210-1内の検出部220は、NVSRAM302のリフレッシュを行うタイミングを検出し、リフレッシュ処理部212は、そのタイミングでNVSRAM302のリフレッシュを行う。
 また、Δセンサー221は、NVSARM302よりデータ保持特性が低いものであれば、種類は限定されず、例えば、MRAM、NVFF、NVSRAMのいずれであってもよい。
 なお、図5に例示したように、NVSRAM302内に、検出部220およびリフレッシュ処理部212を配置することもできる。また、第3の実施の形態に、第1の実施の形態の変形例を適用することもできる。
 このように、本技術の第3の実施の形態によれば、記憶装置200がNVSRAM302のリフレッシュを行うタイミングを検出するため、NVSRAM302のデータ保持特性を向上させつつ、消費電力を低減することができる。
 なお、上述の実施の形態は本技術を具現化するための一例を示したものであり、実施の形態における事項と、特許請求の範囲における発明特定事項とはそれぞれ対応関係を有する。同様に、特許請求の範囲における発明特定事項と、これと同一名称を付した本技術の実施の形態における事項とはそれぞれ対応関係を有する。ただし、本技術は実施の形態に限定されるものではなく、その要旨を逸脱しない範囲において実施の形態に種々の変形を施すことにより具現化することができる。
 なお、本明細書に記載された効果はあくまで例示であって、限定されるものではなく、また、他の効果があってもよい。
 なお、本技術は以下のような構成もとることができる。
(1)第1不揮発性記憶回路と、
 前記第1不揮発性記憶回路のリフレッシュを行うタイミングを検出する検出部と、
 前記検出されたタイミングで前記第1不揮発性記憶回路のリフレッシュを行うリフレッシュ処理部と
を具備する記憶装置。
(2)前記検出部は、
 前記第1不揮発性記憶回路よりもデータ保持特性の低い第2不揮発性記憶回路と、
 前記第2不揮発性記憶回路のエラー率が第1閾値を下回らないか否かにより前記リフレッシュを行うタイミングであるか否かを判定する判定部と
を備える前記(1)記載の記憶装置。
(3)前記第2不揮発性記憶回路を構成する記憶素子の体積は、前記第1不揮発性記憶回路を構成する記憶素子よりも小さい
前記(2)記載の記憶装置。
(4)前記第2不揮発性記憶回路は、MRAMである
前記(2)または(3)に記載の記憶装置。
(5)前記第2不揮発性記憶回路は、NVFFである
前記(2)または(3)に記載の記憶装置。
(6)前記第2不揮発性記憶回路は、NVSRAMである
前記(2)または(3)に記載の記憶装置。
(7)前記検出部は、所定の条件が満たされた場合には前記判定部を制御して前記リフレッシュを行うタイミングであるか否かを判定させるシステム制御部をさらに備える前記(2)から(6)のいずれかに記載の記憶装置。
(8)前記検出部は、前記第2不揮発性記憶回路を初期化する初期化部をさらに備え、
 前記システム制御部は、前記リフレッシュを行うタイミングであると判定された場合には前記初期化部を制御して前記第2不揮発性記憶回路を初期化させる
前記(7)記載の記憶装置。
(9)前記判定部は、前記第1閾値よりも高い第2閾値を前記エラー率が超えるか否かをさらに判定し、
 前記システム制御部は、前記第2閾値を前記エラー率が超える場合には所定のエラーメッセージを出力する
前記(8)記載の記憶装置。
(10)前記第1不揮発性記憶回路は、MRAMである
前記(1)から(9)のいずれかに記載の記憶装置。
(11)前記第1不揮発性記憶回路は、NVFFである
前記(1)から(9)のいずれかに記載の記憶装置。
(12)前記第1不揮発性記憶回路は、NVSRAMである
前記(1)から(9)のいずれかに記載の記憶装置。
(13)所定数の第1不揮発性記憶素子が配列されたアレイ部と、
 前記アレイ部のリフレッシュを行うタイミングを検出する検出部と、
 前記検出されたタイミングで前記アレイ部のリフレッシュを行うリフレッシュ処理部と
を具備する不揮発性記憶回路。
(14)第1不揮発性記憶回路のリフレッシュを行うタイミングを検出する検出手順と、
 前記検出されたタイミングで前記第1不揮発性記憶回路のリフレッシュを行うリフレッシュ処理手順と
を具備する記憶装置の制御方法。
 100 ホストコンピュータ
 200 記憶装置
 210 メモリコントローラ
 210-1 コントローラ
 211 リード/ライト処理部
 212 リフレッシュ処理部
 220 検出部
 221 Δセンサー
 222 反転ビット取得部
 223 判定部
 224 初期化部
 225 システム制御部
 300 MRAM
 301 NVFF
 302 NVSRAM
 310 データバッファ
 320 メモリセルアレイ
 321 メモリセル
 322 MTJ素子
 323 トランジスタ
 330 ドライバ
 340 アドレスデコーダ
 350 バス
 360 制御インターフェース
 370 メモリ制御部

Claims (14)

  1.  第1不揮発性記憶回路と、
     前記第1不揮発性記憶回路のリフレッシュを行うタイミングを検出する検出部と、
     前記検出されたタイミングで前記第1不揮発性記憶回路のリフレッシュを行うリフレッシュ処理部と
    を具備する記憶装置。
  2.  前記検出部は、
     前記第1不揮発性記憶回路よりもデータ保持特性の低い第2不揮発性記憶回路と、
     前記第2不揮発性記憶回路のエラー率が第1閾値を下回らないか否かにより前記リフレッシュを行うタイミングであるか否かを判定する判定部と
    を備える請求項1記載の記憶装置。
  3.  前記第2不揮発性記憶回路を構成する記憶素子の体積は、前記第1不揮発性記憶回路を構成する記憶素子よりも小さい
    請求項2記載の記憶装置。
  4.  前記第2不揮発性記憶回路は、MRAM(Magnetoresistive Random Access Memory)である
    請求項2記載の記憶装置。
  5.  前記第2不揮発性記憶回路は、NVFF(Non-Volatile Flip-Flop)である
    請求項2記載の記憶装置。
  6.  前記第2不揮発性記憶回路は、NVSRAM(Non-Volatile Static Random Access Memory)である
    請求項2記載の記憶装置。
  7.  前記検出部は、所定の条件が満たされた場合には前記判定部を制御して前記リフレッシュを行うタイミングであるか否かを判定させるシステム制御部をさらに備える請求項2記載の記憶装置。
  8.  前記検出部は、前記第2不揮発性記憶回路を初期化する初期化部をさらに備え、
     前記システム制御部は、前記リフレッシュを行うタイミングであると判定された場合には前記初期化部を制御して前記第2不揮発性記憶回路を初期化させる
    請求項7記載の記憶装置。
  9.  前記判定部は、前記第1閾値よりも高い第2閾値を前記エラー率が超えるか否かをさらに判定し、
     前記システム制御部は、前記第2閾値を前記エラー率が超える場合には所定のエラーメッセージを出力する
    請求項8記載の記憶装置。
  10.  前記第1不揮発性記憶回路は、MRAMである
    請求項1記載の記憶装置。
  11.  前記第1不揮発性記憶回路は、NVFFである
    請求項1記載の記憶装置。
  12.  前記第1不揮発性記憶回路は、NVSRAMである
    請求項1記載の記憶装置。
  13.  所定数の第1不揮発性記憶素子が配列されたアレイ部と、
     前記アレイ部のリフレッシュを行うタイミングを検出する検出部と、
     前記検出されたタイミングで前記アレイ部のリフレッシュを行うリフレッシュ処理部と
    を具備する不揮発性回路。
  14.  第1不揮発性記憶回路のリフレッシュを行うタイミングを検出する検出手順と、
     前記検出されたタイミングで前記第1不揮発性記憶回路のリフレッシュを行うリフレッシュ処理手順と
    を具備する記憶装置の制御方法。
PCT/JP2025/010851 2024-05-15 2025-03-19 記憶装置、不揮発性メモリ、および、記憶装置の制御方法 Pending WO2025239016A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2024079381 2024-05-15
JP2024-079381 2024-05-15

Publications (1)

Publication Number Publication Date
WO2025239016A1 true WO2025239016A1 (ja) 2025-11-20

Family

ID=97719670

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2025/010851 Pending WO2025239016A1 (ja) 2024-05-15 2025-03-19 記憶装置、不揮発性メモリ、および、記憶装置の制御方法

Country Status (1)

Country Link
WO (1) WO2025239016A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100202231A1 (en) * 2004-04-01 2010-08-12 Nxp B.V. Thermally stable reference voltage generator for mram
WO2017010147A1 (ja) * 2015-07-13 2017-01-19 ソニー株式会社 不揮発メモリ、メモリコントローラ、記憶装置、情報処理システムおよび不揮発メモリの制御方法
JP2023098819A (ja) * 2021-12-29 2023-07-11 台湾積體電路製造股▲ふん▼有限公司 磁気抵抗ランダムアクセスメモリ装置の外部磁場検出

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100202231A1 (en) * 2004-04-01 2010-08-12 Nxp B.V. Thermally stable reference voltage generator for mram
WO2017010147A1 (ja) * 2015-07-13 2017-01-19 ソニー株式会社 不揮発メモリ、メモリコントローラ、記憶装置、情報処理システムおよび不揮発メモリの制御方法
JP2023098819A (ja) * 2021-12-29 2023-07-11 台湾積體電路製造股▲ふん▼有限公司 磁気抵抗ランダムアクセスメモリ装置の外部磁場検出

Similar Documents

Publication Publication Date Title
JP7224689B2 (ja) 誤り訂正及びデータスクラビング回路を備えたメモリシステム
US8355291B2 (en) Resistive memory device and method of controlling refresh operation of resistive memory device
KR102002925B1 (ko) 메모리 모듈, 그것을 포함하는 메모리 시스템, 그것의 구동 방법
KR101649395B1 (ko) 비휘발성 메모리에 대한 리프레시 아키텍처 및 알고리즘
US8560931B2 (en) Low power retention random access memory with error correction on wake-up
JP5269151B2 (ja) 半導体記憶装置
US9558063B2 (en) Semiconductor device and error correction method
TW202412010A (zh) 記憶體系統、記憶體裝置以及操作記憶體裝置的方法
JP2009515281A (ja) フラッシュメモリ内のエラーから復旧するための方法
US10204700B1 (en) Memory systems and methods of operating semiconductor memory devices
KR100714487B1 (ko) 동적 메모리 장치 및 그 리프레쉬 주기 결정 방법
US11081178B2 (en) Memory, information processing system, and method of controlling memory
CN104969202B (zh) 半导体存储装置及其控制方法
US10031865B2 (en) Memory system, storage device, and method for controlling memory system
US20250118366A1 (en) Drift Aware Read Operations
US20250285698A1 (en) Data integrity checks based on voltage distribution metrics
US6799291B1 (en) Method and system for detecting a hard failure in a memory array
US9349490B2 (en) Error correction in differential memory devices with reading in single-ended mode in addition to reading in differential mode
JP2011238346A (ja) フラッシュメモリ内のエラーから復旧するための方法
JP2012507803A (ja) メモリ・デバイスにおけるデータ転送およびプログラミング
KR20100065446A (ko) 동적 메모리 장치의 리프레쉬 주기 결정 방법 및 그 동작 메모리 장치
US11704047B2 (en) Temperature readings for memory devices to reduce temperature compensation errors
US20250272003A1 (en) Reducing bit error rate in memory devices
WO2025239016A1 (ja) 記憶装置、不揮発性メモリ、および、記憶装置の制御方法
CN116343880A (zh) 用以评估读取裕度的在相反极性下进行的预读取

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: 25803268

Country of ref document: EP

Kind code of ref document: A1