IP Library › Granted Patent US 12,001,696
Granted Patent B2
US 12,001,696 · App. 17/869,941 · Granted Jun 4, 2024

Channel architecture for memory devices

Inventor: Reshmi Basu (Boise, ID)
Assignee: Micron Technology, Inc.
G06F3/0632G06F3/0604G06F3/0659G06F3/0673G06N20/00
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 12,001,696
App. No.
17/869,941
Granted
Jun 4, 2024
Kind
B2
Abstract

Systems, apparatuses, and methods related to channel architecture for memory devices are described. Various applications can access data from a memory device via a plurality of channels. The channels can be selectively enabled or disabled based on the behavior of the applications. For instance, an apparatus in the form of a memory system can include an interface coupled to a controller and a plurality of channels. The controller can be configured to determine an aggregate amount of bandwidth used by a plurality of applications accessing data from a memory device coupled to the controller via the plurality of channels and disable one or more channels of the plurality of channels based, at least in part, on the aggregate amount of bandwidth used by the plurality of applications.

Claims (45)

1. An apparatus, comprising:

an interface coupled to a plurality of channels; and

a controller coupled to the interface, wherein the controller is configured to:

determine an aggregate amount of front end bandwidth used by a plurality of applications accessing data from a memory device coupled to the controller via the plurality of channels;

determine, based on the aggregate amount of front end bandwidth used by the plurality of applications, a front end bandwidth demand for the plurality of applications;

disable one or more channels of the plurality of channels based, at least in part, on the aggregate amount of front end bandwidth used by the plurality of applications in accessing the data from the memory device; and

re-enable a sub-set of channels among the one or more disabled channels to fulfil the front end bandwidth demand.

2. The apparatus of claim 1 , wherein the plurality of channels comprise a plurality of back end channels of the controller.

3. The apparatus of claim 1 , wherein the controller is configured to cause the plurality of applications to access the data from channels among the plurality of channels that remain enabled subsequent to disabling the one or more channels of the plurality of channels.

4. The apparatus of claim 1 , wherein the plurality of channels comprise a plurality of front end channels of the controller.

5. The apparatus of claim 1 , wherein the controller is configured to:

determine that a portion of the plurality of applications are inactive; and

disable a sub-set of channels used by the portion of the plurality of inactive applications.

6. The apparatus of claim 1 , wherein the controller is configured to determine the amount of front end bandwidth used by each application based, at least in part, on the aggregate amount of front end bandwidth used by the plurality of applications.

7. The apparatus of claim 1 , wherein the one or more channels of the plurality of channels are disabled responsive to an indication from a computing component coupled to the controller.

8. The apparatus of claim 1 , wherein the one or more channels of the plurality of channels are disabled responsive to an indication indicative of an application of the plurality of applications being removed from communication with the interface.

9. The apparatus of claim 1 , wherein the one or more channels of the plurality of channels are disabled responsive to an indication indicative of a reduction in an amount of front end bandwidth used by at least one application among the plurality of applications.

10. An apparatus, comprising:

a plurality of pins coupled to respective channels; and

a controller coupled to the plurality of channels, wherein the controller is configured to:

determine an aggregate front end bandwidth usage of a plurality of applications that access data from a memory device coupled to the controller via the plurality of channels;

determine, based on the determined aggregate front end bandwidth usage of the plurality of applications, a front end bandwidth demand for the plurality of applications;

identify one or more channels of the plurality of channels used to access the data;

assert signals on the respective pins to disable a subset of the one or more channels of the plurality of channels based, at least in part, on the determined aggregate front end bandwidth usage of the plurality of applications and an output of an operation resulting from assertion of the signals on the respective pins; and

re-enable at least one channel of the subset of the one or more channels to fulfil the front end bandwidth demand.

11. The apparatus of claim 10 , wherein the controller is configured to receive a signal that indicates that at least one application has ceased to receive data from the memory device.

12. The apparatus of claim 10 , wherein the controller includes a computing component configured to anticipate the amount of front end bandwidth usage in execution of at least one of the plurality of applications.

13. The apparatus if claim 10 , wherein the controller includes a computing component configured to identify the one or more channels of the plurality of channels used to access the data based, at least in part, on an anticipated amount of front end bandwidth usage involving at least one of the plurality of applications.

14. The apparatus of claim 10 , wherein the controller includes a computing component configured to cause the at least one channel of the sub-set of the one or more channels to be re-enabled based, at least in part, on an anticipated amount of front end bandwidth usage involving at least one of the plurality of applications.

15. A method, comprising:

determining an aggregate amount of front end bandwidth used in execution of a plurality of applications;

determining, based on the aggregate amount of front end bandwidth used in execution of the plurality of applications, a front end bandwidth demand for the plurality of applications;

determining channels between a controller and one or more memory devices used to access data as part of execution of the plurality of applications;

asserting respective signals on respective pins coupled to the channels to disable one or more of the channels based, at least in part, on the aggregate amount of front end bandwidth used in execution of the plurality of applications and an output of a Boolean operation resulting from assertion of the respective signals on the respective pins; and

re-enabling a sub-set of disabled channels to fulfil the front end bandwidth demand.

16. The method of claim 15 , comprising:

determining that an additional application is executed;

determining a new aggregate amount of front end bandwidth used in execution of the plurality of applications, wherein the new aggregate amount of front end bandwidth used in execution of the plurality of applications includes an amount of front end bandwidth required to execute the additional application; and

controlling the channels between the controller and the one or more memory devices based at least in part on the new aggregate amount of front end bandwidth used in execution of the plurality of applications.

17. The method of claim 16 , comprising re-enabling at least one of the disabled channels to accommodate the new aggregated amount of front end bandwidth.

18. The method of claim 15 , comprising:

receiving signalling that indicates a temperature increase in one or more of the memory devices to the execution of the additional application; and

determining a new aggregate amount of front end bandwidth used in execution of the plurality of applications based, at least in part, on the signalling.

19. The method of claim 18 , comprising disabling at least one channel responsive to the signalling that indicates the temperature increase.

20. The method of claim 15 , wherein the plurality of applications are executed by a host computing system coupled to the controller and the one or more memory devices.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 21, 2022
From: BASU, RESHMI
To: MICRON TECHNOLOGY, INC.
Reel/Frame 060581/0975 →
Continuity (2)
Continuation 16442902 · Jun 17, 2019
Related Publication 20220357862A1 · Nov 10, 2022