US2024028261A1PendingUtilityA1
Stack management in memory systems
Est. expiryMar 15, 2038(~11.6 yrs left)· nominal 20-yr term from priority
Inventors:Alex Frolikov
G06F 3/0659G06F 3/0688G06F 3/0644G06F 3/0604G06F 3/061G06F 3/0625G06F 3/0679G06F 12/0246G06F 2212/7203G06F 2212/7201G06F 2212/7209G06F 2212/1032G06F 2212/1028Y02D10/00
80
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
A memory system having a stack memory, a set of media, and a controller. The controller divides the stack memory into a plurality of stacks, measures usages of the stacks in a period of time of operating on the set of media, and adjusts partitioning of the stack memory into the plurality of stacks according to the measured usages.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A system, comprising:
a memory configurable as a plurality of stacks; and a controller operable to:
measure usages of the stacks; and
adjust, based on the usages, how the memory is partitioned for allocation to the plurality of stacks.
2 . The system of claim 1 , further comprising:
a set of media, wherein the controller is further operable to control operations to access the set of media using the plurality of stacks.
3 . The system of claim 2 , wherein the set of media includes a flash memory.
4 . The system of claim 3 , wherein the system is configured as a solid state drive.
5 . The system of claim 4 wherein the controller is operable to operate the stacks in executing commands received in the solid state drive to:
store data in the flash memory; and
retrieve data from the flash memory.
6 . The system of claim 5 , wherein the controller is further operable to:
fill unused portions of the memory with a predetermined value pattern; and search for boundaries of the stacks based on the predetermined value pattern, wherein the usages of the stacks are measured based on the boundaries.
7 . The system of claim 6 , wherein the predetermined value pattern is a predetermined value.
8 . The system of claim 6 , wherein the predetermined value pattern includes a predetermined relation a location in the memory and a value stored at the location in the memory.
9 . The system of claim 6 , wherein the controller is operable to search the boundaries by:
identifying, in the memory, a region containing a boundary between a portion having the predetermined value pattern and a portion not having the predetermined value pattern; retrieving a value from a location within the region, wherein the location divides the region into a first region and a second region; determining whether the value agrees with the predetermined value pattern; and identifying, based on whether the value agrees with the predetermined value pattern, either the first region or the second region as a region containing the boundary.
10 . A method, comprising:
partitioning a memory into a plurality of segments; operating a plurality of stacks in the plurality of segments respectively; measuring usages of the stacks during a period of time; and adjusting, based on the measured usages, partition of the plurality of segments in the memory for the plurality of stacks.
11 . The method of claim 10 , further comprising:
executing commands to access a set of media based on operating the stacks.
12 . The method of claim 11 , wherein the commands are configured to store data into the set of media and to retrieve data from the set of media.
13 . The method of claim 10 , further comprising:
filling unused portions of the memory with a predetermined value pattern; and searching for a boundary of a stack and an unused portion of the memory based on the predetermined value pattern.
14 . The method of claim 13 , wherein the predetermined value pattern is represented by a predetermined value.
15 . The method of claim 13 , wherein the predetermined value pattern includes a predetermined relation between a location in the memory and a value stored at the location.
16 . The method of claim 13 , wherein the searching includes:
identifying, in the memory, a region containing the boundary between the unused portion having the predetermined value pattern and a portion not having the predetermined value pattern; retrieving a value from a location within the region, wherein the location divides the region into a first region and a second region; determining whether the value agrees with the predetermined value pattern; and identifying, based on whether the value agrees with the predetermined value pattern, either the first region or the second region as a region containing the boundary.
17 . A non-transitory computer storage medium storing instructions which when executed by a controller cause the controller to perform a method, the method comprising:
partitioning a memory into a plurality of segments; operating a plurality of stacks in the plurality of segments respectively; measuring usages of the stacks during a period of time; and adjusting, based on the measured usages, partition of the plurality of segments in the memory for the plurality of stacks.
18 . The non-transitory computer storage medium of claim 17 , wherein the measuring of the usages comprises:
filling unused portions of the memory with a predetermined value pattern; and searching for a boundary of a stack and an unused portion of the memory based on the predetermined value pattern.
19 . The non-transitory computer storage medium of claim 18 , wherein the searching for the boundary comprises:
identifying, in the memory, a region containing the boundary between the unused portion having the predetermined value pattern and a portion not having the predetermined value pattern; retrieving a value from a location within the region, wherein the location divides the region into a first region and a second region; determining whether the value agrees with the predetermined value pattern; and identifying, based on whether the value agrees with the predetermined value pattern, either the first region or the second region as a region containing the boundary.
20 . The non-transitory computer storage medium of claim 18 , wherein the predetermined value pattern includes a predetermined relation between a location in the memory and a value stored at the location.Join the waitlist — get patent alerts
Track US2024028261A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.