IP Library Granted Patent US 9,135,156
Granted Patent B2
US 9,135,156 · App. 13/681,991 · Granted Sep 15, 2015

Dynamically configurable memory

Inventor: David Matthew Lewsey (Cambridge, GB)
Assignee: Broadcom Corporation
G06F12/02G06F3/0625G06F11/1441G06F12/00G06F12/0223G06F12/0238G06F12/06G06F13/00G06F1/266G06F1/3203G06F1/3243G06F2201/86G06F2212/7202
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 9,135,156
App. No.
13/681,991
Granted
Sep 15, 2015
Kind
B2
Abstract

A device includes a memory including ways and a processor in communication with the memory. The processor is configured to execute logic. The logic can monitor a parameter of the processor or a device connected with the processor. The logic can allocate, based on the parameter, a number a ways and a size of ways of the memory for use by the processor. The logic can power down an unallocated number of ways and unused portions of the ways of the memory.

Claims (36)

1. A device, comprising:

a memory including ways;

a processor in communication with the memory, the processor configured to execute logic operable to:

monitor a parameter of the processor or a device connected with the processor;

allocate, based on the parameter, a number of ways and a size of ways of the memory for use by the processor; and

power down an unallocated number of ways and unused portions of the ways of the memory.

2. The device of claim 1 , where the memory comprises a multi-way cache memory.

3. The device of claim 1 , where the logic is further operable to map the ways onto the memory according to the size and the number of ways to avoid holes in the memory.

4. The device of claim 1 , where the memory comprises a plurality of volatile memory blocks.

5. The device of claim 4 , where a portion of the memory comprises one of the volatile memory blocks.

6. The device of claim 1 , where the parameter comprises a number of processes being executed by the processor, a memory requirement of the processes being executed by the processor, the type of the processes being executed by the processor, a performance of the processes being executed by the processor.

7. The device of claim 1 , where the logic is operable to manipulate an index bit of a cache memory address corresponding to a portion of the memory to power down the portion of the memory.

8. A method, comprising:

within a device:

utilizing, with a processor, a first amount of a memory allocated to the processor while a second amount of the memory that is not allocated is powered down;

monitoring a memory requirement for a processor;

identifying a change in the memory requirement; and

modifying the first amount of the memory allocated to the processor or the second amount of the memory that is not allocated based on the change in the memory requirement.

9. The method of claim 8 , where the modifying comprises powering off a portion of a size of ways of memory, a number of ways, or both the portion of the size of the way and the number of ways.

10. The method of claim 8 , further comprising powering on and allocating a portion of a size of ways of memory, a number of ways, or both the portion of the size of the way and the number of ways when the memory requirement increases.

11. The method of claim 8 , where the change in the memory requirement comprises an initialization of a process to be executed by the processor.

12. The method of claim 8 , where the change in the memory requirement comprises a termination of a process being executed by the processor.

13. The method of claim 8 , where modifying comprises mapping ways onto the memory according to a size and a number of ways to avoid holes in the memory.

14. The method of claim 13 , where the processor comprises a plurality of processing cores and the memory requirement corresponds to a number of the processing cores that are powered on.

15. A device, comprising:

a main memory;

a cache memory in communication with the main memory;

a processor in communication with the main memory and the cache memory, the processor configured to execute a process; and

logic executable by the processor and operable to:

determine how much of the cache memory is necessary to be used by the processor in executing the process; and

turn off an unnecessary portion of a size of ways of the cache memory, a number of ways of the cache memory, or both the portion of the size of the way of the cache memory and the number of ways of the cache memory.

16. The device of claim 15 , where the cache memory comprises a single-way cache memory block and a multi-way cache memory block.

17. The device of claim 16 , where the logic is operable to manipulate an index bit of a cache memory address for the single-way cache memory block to turn off a second portion of the cache memory.

18. The device of claim 16 , where the logic is operable to turn off a way of the multi-way cache memory block and to turn off a portion of the way.

19. The device of claim 16 , where the single-way cache memory block is a local first level cache memory block and the multi-way cache memory block is a second level cache memory block.

20. The device of claim 15 , where the ways are mapped onto the cache memory and the mapping is modified according to the size and the number of ways to avoid holes in the cache memory.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 20, 2012
From: LEWSEY, DAVID MATTHEW
To: BROADCOM CORPORATION
Reel/Frame 029333/0180 →
Continuity (2)
Provisional Application 61719583 · Oct 29, 2012
Related Publication 20140122824A1 · May 1, 2014