IP Library Granted Patent US 10,019,187
Granted Patent B2
US 10,019,187 · App. 15/244,890 · Granted Jul 10, 2018

Nonvolatile memory module and operating method for the same

Inventor: HyunJu Yoon (Gyeonggi-do, KR)
Assignee: SK Hynix Inc.
G06F3/0626G06F3/065G06F3/0659G06F3/0673
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,019,187
App. No.
15/244,890
Granted
Jul 10, 2018
Kind
B2
Abstract

A nonvolatile memory module includes volatile memory devices sharing a data bus and a control bus; at least one nonvolatile memory device; and a controller for backing up data stored in the volatile memory devices into the nonvolatile memory device at a power failure of a host, and restoring data backed up in the nonvolatile memory device to the volatile memory devices at recovery of the power failure, the controller including: a command/address snooping logic for snooping on a command and an address inputted from a memory controller of the host, and analyzing amounts of stored data in the respective volatile memory devices; and a command/address control logic for selecting one of the volatile memory devices in order of the amounts of stored data based on analysis results of the command/address snooping logic, and backing up data of the selected volatile memory device in the nonvolatile memory device.

Claims (71)

1. A nonvolatile memory module comprising:

a plurality of volatile memory devices sharing a data bus through which data is transmitted and a control bus through which a command and an address are transmitted;

at least one nonvolatile memory device; and

a controller suitable for backing up data stored in the plurality of volatile memory devices into the nonvolatile memory device at a power failure of a host, and restoring data backed up in the nonvolatile memory device to the plurality of volatile memory devices at recovery of the power failure,

the controller comprising:

a command/address snooping logic suitable for receiving and recognizing a command and an address inputted from a memory controller of the host, analyzing amounts of stored data in the respective volatile memory devices, and accumulating analysis results while control over the volatile memory devices is performed by the memory controller of the host; and

a command/address control logic suitable for setting priorities to the volatile memory devices in order of amounts of stored data based on the accumulated analysis results when a trigger condition is satisfied for backing up data, and backing up data of the volatile memory device having higher priority in the nonvolatile memory device according to the priorities.

2. The nonvolatile memory module according to claim 1 , wherein the command/address control logic sets a command address latency (CAL) of the volatile memory device having higher priority to a first value, and sets a command address latency of remaining volatile memory devices to a second value different from the first value.

3. The nonvolatile memory module according to claim 2 , wherein the second value is greater than the first value, and a difference between the second value and the first value is equal to or greater than a row address to column address delay time (tRCD: RAS to CAS delay).

4. The nonvolatile memory module according to claim 3 , wherein the difference between the second value and the first value is less than a row precharge time (tRP).

5. The nonvolatile memory module according to claim 1 , wherein the command/address control logic comprises:

a logic suitable for performing a distributed refresh operation for uniformly distributing a refresh cycle over the plurality of volatile memory devices while programming a memory page of the nonvolatile memory device;

a logic suitable for operating the plurality of volatile memory devices under a low power mode, in which the plurality of volatile memory devices use a lower power than in a normal power mode, while a new memory page of the nonvolatile memory device is prepared and written; and

a logic suitable for recovering the plurality of volatile memory devices to the normal power mode after the new memory page of the nonvolatile memory device is written.

6. The nonvolatile memory module according to claim 2 , wherein the command/address control logic comprises:

a logic suitable for performing a distributed refresh operation for uniformly distributing a refresh cycle over the plurality of volatile memory devices while programming a memory page of the nonvolatile memory device;

a logic suitable for operating the plurality of volatile memory devices under a low power mode, in which the plurality of volatile memory devices use lower power than in a normal power mode, while a new memory page of the nonvolatile memory device is prepared and written; and

a logic suitable for recovering the plurality of volatile memory devices to the normal power mode after the new memory page of the nonvolatile memory device is written.

7. The nonvolatile memory module according to claim 3 , wherein the command/address control logic comprises:

a logic suitable for performing a distributed refresh operation for uniformly distributing a refresh cycle over the plurality of volatile memory devices while programming a memory page of the nonvolatile memory device;

a logic suitable for operating the plurality of volatile memory devices under a low power mode, in which the plurality of volatile memory devices use a lower power than in a normal power mode, while a new memory page of the nonvolatile memory device is prepared and written; and

a logic suitable for recovering the plurality of volatile memory devices to the normal power mode after the new memory page of the nonvolatile memory device is written.

8. The nonvolatile memory module according to claim 4 , wherein the command/address control logic comprises:

a logic suitable for performing a distributed refresh operation for uniformly distributing a refresh cycle over the plurality of volatile memory devices while programming a memory page of the nonvolatile memory device;

a logic suitable for operating the plurality of volatile memory devices under a low power mode, in which the plurality of volatile memory devices use a lower power than in a normal power mode, while a new memory page of the nonvolatile memory device is prepared and written; and

a logic suitable for recovering the plurality of volatile memory devices to the normal power mode after the new memory page of the nonvolatile memory device is written.

9. A method for operating a nonvolatile memory module including a plurality of volatile memory devices which share a data bus through which data is transmitted and a control bus through which a command and an address are transmitted, a nonvolatile memory device, and a controller which backs up data stored in the plurality of volatile memory devices in the nonvolatile memory device or restores data backed up in the nonvolatile memory device to the plurality of volatile memory devices, according to a fail/recovery of power of a host, the method comprising:

snooping, by the controller, on a command and an address inputted to the plurality of volatile memory devices from a memory controller of the host;

recognizing the command and the address;

analyzing amounts of stored data in the respective volatile memory devices;

accumulating analysis results while control over the volatile memory devices is performed by the memory controller of the host;

setting priorities to the volatile memory devices in order of amounts of stored data based on the accumulated analysis results when a trigger condition is satisfied for backing up data; and

backing up data of the volatile memory device having higher priority in the nonvolatile memory device according to the priorities.

10. The method according to claim 9 , wherein the backing up of the data includes:

setting a command address latency (CAL) of the volatile memory device having higher priority to a first value; and

setting a command address latency of remaining volatile memory devices to a second value different from the first value.

11. The method according to claim 10 , wherein the second value is greater than the first value, and a difference between the second value and the first value is equal to or greater than a row address to column address delay time (tRCD: RAS to CAS delay).

12. The method according to claim 11 , wherein the difference between the second value and the first value is less than a row precharge time (tRP).

13. The method according to claim 9 , wherein the backing up of the data comprises:

performing a distributed refresh operation for uniformly distributing a refresh cycle over the plurality of volatile memory devices while programming a memory page of the nonvolatile memory device;

operating the plurality of volatile memory devices under a low power mode, in which the plurality of volatile memory devices use a lower power than in a normal power mode, while a new memory page of the nonvolatile memory device is prepared and written; and

recovering the plurality of volatile memory devices to the normal power mode after the new memory page of the nonvolatile memory device is written.

14. The method according to claim 10 , wherein the backing up of the data comprises:

performing a distributed refresh operation for uniformly distributing a refresh cycle over the plurality of volatile memory devices while programming a memory page of the nonvolatile memory device;

operating the plurality of volatile memory devices under a low power mode, in which the plurality of volatile memory devices use a lower power than in a normal power mode, while a new memory page of the nonvolatile memory device is prepared and written; and

recovering the plurality of volatile memory devices to the normal power mode after the new memory page of the nonvolatile memory device is written.

15. The method according to claim 11 , wherein the backing up of the data comprises:

performing a distributed refresh operation for uniformly distributing a refresh cycle over the plurality of volatile memory devices while programming a memory page of the nonvolatile memory device;

operating the plurality of volatile memory devices under a low power mode, in which the plurality of volatile memory devices use a lower power than in a normal power mode, while a new memory page of the nonvolatile memory device is prepared and written; and

recovering the plurality of volatile memory devices to the normal power mode after the new memory page of the nonvolatile memory device is written.

16. The method according to claim 12 , wherein the backing up of the data comprises:

performing a distributed refresh operation for uniformly distributing a refresh cycle over the plurality of volatile memory devices while programming a memory page of the nonvolatile memory device;

operating the plurality of volatile memory devices under a low power mode, in which the plurality of volatile memory devices use a lower power than in a normal power mode, while a new memory page of the nonvolatile memory device is prepared and written; and

recovering the plurality of volatile memory devices to the normal power mode after the new memory page of the nonvolatile memory device is written.

17. A nonvolatile memory module comprising:

volatile memory devices suitable for storing data provided from a host through a common data bus;

a nonvolatile memory device suitable for backup of data stored in the volatile memory devices; and

a controller suitable for:

snooping on a command and an address inputted to the plurality of volatile memory devices from a memory controller of the host;

recognizing the command and the address;

analyzing amounts of stored data in the respective volatile memory devices;

accumulating analysis results while control over the volatile memory devices is performed by the memory controller of the host;

setting priorities to the volatile memory devices in order of the amounts of stored data based on the accumulated analysis results when a trigger condition is satisfied for backing up data; and

backing up data of the volatile memory device having higher priority in the nonvolatile memory device according to the priorities.

18. The nonvolatile memory module according to claim 17 , wherein the controller sets a command address latency (CAL) of the volatile memory device having higher priority to a first value, and sets a command address latency of remaining ones of the volatile memory devices to a second value, in the backing up the data.

19. The nonvolatile memory module according to claim 18 ,

wherein the controller controls the respective volatile memory devices to read data stored therein according to the set CALs of the first and second values, in the backing up the data, and

wherein the controller controls the nonvolatile memory device to store the read data from the respective volatile memory devices, in the backing up the data.

20. The nonvolatile memory module according to claim 19 ,

wherein the controller further sets the command address latency (CAL) for one of the volatile memory devices to a third value, and sets a command address latency of remaining ones of the volatile memory devices to a fourth value, and

wherein the controller further controls the respective volatile memory devices to restore the data backed up in the nonvolatile memory device according to the set CALs of the third and fourth values.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 7, 2024
From: SK HYNIX INC.
To: MIMIRIP LLC
Reel/Frame 067335/0246 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2016
From: YOON, HYUNJU
To: SK HYNIX INC.
Reel/Frame 039787/0462 →
Priority Claims (1)
KR 10-2016-0036647 · Mar 28, 2016 · national
Continuity (1)
Related Publication 20170277464A1 · Sep 28, 2017