IP Library Granted Patent US 7,386,701
Granted Patent B2
US 7,386,701 · App. 11/365,280 · Granted Jun 10, 2008

Prefetching hints

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 7,386,701
App. No.
11/365,280
Granted
Jun 10, 2008
Kind
B2
Abstract

A processor capable of executing prefetching instructions containing hint fields is provided. The hint fields contain a first portion which enables the selection of a destination indicator for refill operations, and a second portion which identifies a destination.

Claims (23)

1. A method comprising:

issuing an instruction, wherein the instruction includes a hint field, wherein the hint field specifies a prefetch behavior including a destination cache way, and a prefetch target field, wherein the prefetch target field specifies a composition of a prefetch target address;

forming the prefetch target address in accordance with the prefetch target field; and

performing a prefetch operation on at least one cache memory, wherein the prefetch operation prepares at least one cache memory location for use with a subsequent instruction.

2. The method of claim 1 , wherein performing the prefetch operation includes determining whether data stored at the prefetch target address is available in at least one cache memory location.

3. The method of claim 2 , further comprising:

retrieving the data from the prefetch target address and storing the data in the cache memory location in the destination cache way in response to the determination that the data stored at the prefetch target address is not available in the cache memory location.

4. The method of claim 3 , wherein retrieving the data from the prefetch target address includes a shared memory read.

5. The method of claim 3 , wherein retrieving the data from the prefetch target address includes an exclusive memory read.

6. The method of claim 1 , wherein the prefetch behavior indicates that the subsequent instruction is a load operation.

7. The method of claim 1 , wherein the prefetch behavior indicates that the subsequent instruction requires shared access to data stored at the prefetch target address.

8. The method of claim 1 , wherein the prefetch behavior indicates that the subsequent instruction is a store operation.

9. The method of claim 1 , wherein the prefetch behavior indicates that the subsequent instruction requires exclusive access to data stored at the prefetch target address.

10. The method of claim 1 , wherein the prefetch target field includes at least one reference to data outside of the instruction to be used to compose the prefetch target address.

11. The method of claim 10 , wherein the reference identifies a register storing a base memory address.

12. The method of claim 11 , wherein the prefetch target field includes an offset value to be added to the base memory address to form the prefetch target address.

13. The method of claim 11 , wherein the prefetch target field includes a second reference identifying a second register storing an offset value, wherein the offset value is to be added to the base memory address to form the prefetch target address.

14. The method of claim 3 , wherein the destination cache way corresponds with an expected use of the data to be stored in the cache memory location.

15. The method of claim 14 , wherein the hint field indicates the data is expected to be streamed and specifies a destination cache way for streamed data.

16. The method of claim 14 , wherein the hint field indicates the data is expected to be retained and specifies a destination cache way for retained data.

17. The method of claim 1 , wherein the prefetch target address is a virtual address.

18. The method of claim 1 , wherein the cache memory is a primary cache of a microprocessor.

19. The method of claim 1 , wherein the cache memory is a secondary cache of a microprocessor.

Assignments (6)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2014
From: BRIDGE CROSSING, LLC
To: ARM FINANCE OVERSEAS LIMITED
Reel/Frame 033074/0058 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2013
From: MIPS TECHNOLOGIES, INC.
To: BRIDGE CROSSING, LLC
Reel/Frame 030202/0440 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2008
From: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
To: MIPS TECHNOLOGIES, INC.
Reel/Frame 021985/0015 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2007
From: GENERAL ELECTRIC CAPITAL CORPORATION
To: MORGAN STANLEY & CO., INCORPORATED
Reel/Frame 019995/0895 →
SECURITY AGREEMENT Recorded Aug 24, 2007
From: MIPS TECHNOLOGIES, INC.
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 019744/0001 →
SECURITY INTEREST Recorded Oct 24, 2006
From: SILICON GRAPHICS, INC.
To: GENERAL ELECTRIC CAPITAL CORPORATION
Reel/Frame 018545/0777 →