IP Library Granted Patent US 8,656,107
Granted Patent B2
US 8,656,107 · App. 13/437,537 · Granted Feb 18, 2014

On-demand allocation of cache memory for use as a preset buffer

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 8,656,107
App. No.
13/437,537
Granted
Feb 18, 2014
Kind
B2
Abstract

A data processing system comprises data processing circuitry, a cache memory, and memory access circuitry. The memory access circuitry is operative to assign a memory address region to be allocated in the cache memory with a predefined initialization value. Subsequently, a portion of the cache memory is allocated to the assigned memory address region only after the data processing circuitry first attempts to perform a memory access on a memory address within the assigned memory address region. The allocated portion of the cache memory is then initialized with the predefined initialization value.

Claims (33)

1. A data processing system, comprising:

data processing circuitry;

a cache memory; and

memory access circuitry, the memory access circuitry operative to perform the steps of: assigning a memory address region to be allocated in the cache memory with a predefined initialization value; allocating a portion of the cache memory to the assigned memory address region only after the data processing circuitry first attempts to perform a memory access on a memory address within the assigned memory address region; and initializing the allocated portion of the cache memory with the predefined initialization value.

2. The data processing system of claim 1 , wherein the memory access circuitry, after performing the assigning step, is adapted to perform the initializing step only once until the assigning step is repeated.

3. The data processing system of claim 1 , wherein the assigning step further causes the assigned memory address region to be associated with a status indicator.

4. The data processing system of claim 3 , wherein the memory access circuitry is further operative to cause a state of the status indicator to be changed upon performing the initializing step.

5. The data processing system of claim 3 , wherein the status indicator is implemented at least in part utilizing a data flag.

6. The data processing system of claim 1 , wherein the cache memory comprises a random access memory.

7. The data processing system of claim 6 , wherein the random access memory is of a static type.

8. The data processing system of claim 1 , wherein the portion of the cache memory consists of a cache line.

9. The data processing system of claim 1 , wherein the memory address region has a storage capacity equal to that of a cache line in the cache memory.

10. The data processing system of claim 1 , wherein at least some of the results of the assigning step are stored in a memory array in the data processing system.

11. The data processing circuitry of claim 1 , further comprising a main memory.

12. The data processing system of claim 11 , wherein the data processing circuitry is operative to access the cache memory faster than it can access the main memory.

13. The data processing system of claim 11 , wherein the main memory comprises a random access memory.

14. The data processing system of claim 13 , wherein the random access memory is of a static or dynamic type.

15. The data processing system of claim 1 , wherein the assigning step is performed at least in part in response to the execution of computer-readable program code by the data processing system.

16. The data processing system of claim 15 , wherein the computer-readable program code comprises a buffer allocation request at least specifying the memory address region and the predefined initialization value.

17. The data processing system of claim 15 , wherein the computer readable program code is stored in the data processing system on a computer readable storage medium.

18. The data processing system of claim 1 , wherein the memory access circuitry is further operative to perform the step of causing the data processing circuitry to perform a memory access on the allocated portion of the cache memory subsequent to the initializing step.

19. A method for initializing a buffer in a cache memory of a data processing system, the method comprising the steps of:

assigning a memory address region to be allocated in the cache memory with a predefined initialization value;

allocating a portion of the cache memory to the assigned memory address region only after the data processing circuitry first attempts to perform a memory access on a memory address within the assigned memory address region; and

initializing the allocated portion of the cache memory with the predefined initialization value.

20. An integrated circuit comprising:

data processing circuitry;

a cache memory; and

memory access circuitry, the memory access circuitry operative to perform the steps of: assigning a memory address region to be allocated in the cache memory with a predefined initialization value; allocating a portion of the cache memory to the assigned memory address region only after the data processing circuitry first attempts to perform a memory access on a memory address within the assigned memory address region; and initializing the allocated portion of the cache memory with the predefined initialization value.

21. Memory access circuitry for a data processing system comprising data processing circuitry and a cache memory, the memory access circuitry comprising:

means for assigning a memory address region to be allocated in the cache memory with a predefined initialization value;

means for allocating a portion of the cache memory to the assigned memory address region only after the data processing circuitry first attempts to perform a memory access on a memory address within the assigned memory address region; and

means for initializing the allocated portion of the cache memory with the predefined initialization value.

Assignments (5)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2016
From: INTEL CORPORATION
To: BEIJING XIAOMI MOBILE SOFTWARE CO., LTD.
Reel/Frame 037733/0440 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS (RELEASES RF 032856-0031) Recorded Feb 2, 2016
From: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
To: LSI CORPORATION; AGERE SYSTEMS LLC
Reel/Frame 037684/0039 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS AT REEL/FRAME NO. 32856/0031 Recorded May 29, 2015
From: DEUTSCHE BANK AG NEW YORK BRANCH
To: LSI CORPORATION
Reel/Frame 035797/0943 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 24, 2015
From: LSI CORPORATION
To: INTEL CORPORATION
Reel/Frame 035090/0477 →
PATENT SECURITY AGREEMENT Recorded May 8, 2014
From: LSI CORPORATION; AGERE SYSTEMS LLC
To: DEUTSCHE BANK AG NEW YORK BRANCH, AS COLLATERAL AGENT
Reel/Frame 032856/0031 →