IP Library Granted Patent US 7,249,223
Granted Patent B2
US 7,249,223 · App. 10/916,298 · Granted Jul 24, 2007

Prefetching in a data processing system

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,249,223
App. No.
10/916,298
Granted
Jul 24, 2007
Kind
B2
Abstract

A method and apparatus is provided for prefetching in a data processing system ( 10 ). The data processing system ( 10 ) has a bus master ( 14 ) and a memory controller ( 16 ) coupled to a bus ( 12 ). A memory ( 18 ) is coupled to the memory controller ( 16 ). In the data processing system ( 14 ) an address is driven onto the bus ( 12 ). Before the address is qualified, data corresponding to the address is prefetched. Prefetching the data before the address is qualified allows prefetches to be accomplished sooner.

Claims (20)

1. A method for prefetching in a data processing system having a bus master, a memory system, and a bus, the bus master and the memory system coupled to the bus, the method comprising:

initiating an access to the memory system, wherein the access requires more than one clock cycle to complete;

determining whether an unqualified address is driven on the bus, wherein the unqualified address is unqualified until accepted by the memory system as taken; and

determining that the unqualified address is driven on the bus but not taken, and in response, prefetching data corresponding to the unqualified address, wherein the prefetching of the data corresponding to the unqualified address is initiated while the access to the memory system is in progress and the prefetching of the data is not related to the access to the memory system.

2. The method of claim 1 , wherein the data processing system includes a memory controller coupled to the bus, and wherein prefetching the data corresponding to the unqualified address comprises:

prefetching the data corresponding to the unqualified address if the data corresponding to the unqualified address is not present in a data buffer of the memory controller.

3. The method of claim 1 , wherein in response to determining that the unqualified address is driven on the bus, the method further comprises:

determining whether the data corresponding to the unqualified address is present within data being fetched in response to the bus access, wherein the prefetching the data corresponding to the unqualified address is performed if the data corresponding to the unqualified address is not present.

4. The method of claim 3 , wherein the data processing system includes a memory controller coupled to the bus, and wherein prefetching the data corresponding to the unqualified address comprises:

prefetching the data corresponding to the unqualified address if the data corresponding to the unqualified address is not present in a data buffer of the memory controller.

5. The method of claim 1 , further comprising:

in response to determining that the unqualified address is not driven on the bus, prefetching data corresponding to an address sequential to an address of the access to the memory system.

6. The method of claim 5 , wherein the data processing system includes a memory controller coupled to the bus, and wherein prefetching data sequential to the access address comprises:

prefetching the data corresponding to the address sequential to the access address if the data corresponding to the address sequential to the access address is not present in a data buffer of the memory controller.

7. The method of claim 5 , wherein the address sequential to the access address is generated based on a width of a data buffer of the memory controller.

8. The method of claim 1 , further comprising:

qualifying an address, wherein the qualifying is performed after initiating the prefetching of the data corresponding to the unqualified address.

9. The method of claim 8 further comprising:

if the qualified address and the unqualified address are a same address, completing the prefetch of the data corresponding to the unqualified address; and

if the qualified address and the unqualified address are not the same address, canceling the prefetch of the data corresponding to the unqualified address.

Assignments (21)
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040925 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Feb 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V. F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 052917/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 040928 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded Jan 17, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 052915/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE APPLICATION 11759915 AND REPLACE IT WITH APPLICATION 11759935 PREVIOUSLY RECORDED ON REEL 037486 FRAME 0517. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Dec 10, 2019
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 053547/0421 →
CORRECTIVE ASSIGNMENT TO CORRECT THE TO CORRECT THE APPLICATION NO. FROM 13,883,290 TO 13,833,290 PREVIOUSLY RECORDED ON REEL 041703 FRAME 0536. ASSIGNOR(S) HEREBY CONFIRMS THE THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS.. Recorded Feb 20, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SHENZHEN XINGUODU TECHNOLOGY CO., LTD.
Reel/Frame 048734/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENTS 8108266 AND 8062324 AND REPLACE THEM WITH 6108266 AND 8060324 PREVIOUSLY RECORDED ON REEL 037518 FRAME 0292. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS. Recorded Feb 1, 2017
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 041703/0536 →
RELEASE OF SECURITY INTEREST Recorded Nov 7, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP B.V.
Reel/Frame 040928/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 21, 2016
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: NXP, B.V., F/K/A FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 040925/0001 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 13, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037518/0292 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN PATENTS Recorded Jan 12, 2016
From: CITIBANK, N.A.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 037486/0517 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0553 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0225 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037356/0143 →
PATENT RELEASE Recorded Dec 21, 2015
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 037354/0704 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2015
From: ZENITH INVESTMENTS, LLC
To: APPLE INC.
Reel/Frame 034749/0791 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 21, 2014
From: FREESCALE SEMICONDUCTOR, INC.
To: ZENITH INVESTMENTS, LLC
Reel/Frame 033994/0655 →
SECURITY AGREEMENT Recorded Nov 6, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 031591/0266 →
SECURITY AGREEMENT Recorded Jun 18, 2013
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 030633/0424 →
SECURITY AGREEMENT Recorded May 13, 2010
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 024397/0001 →
SECURITY AGREEMENT Recorded Feb 16, 2008
From: FREESCALE SEMICONDUCTOR, INC.
To: CITIBANK, N.A.
Reel/Frame 020518/0215 →
SECURITY AGREEMENT Recorded Feb 2, 2007
From: FREESCALE SEMICONDUCTOR, INC.; FREESCALE ACQUISITION CORPORATION; FREESCALE ACQUISITION HOLDINGS CORP.; FREESCALE HOLDINGS (BERMUDA) III, LTD.
To: CITIBANK, N.A. AS COLLATERAL AGENT
Reel/Frame 018855/0129 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 1, 2005
From: MOYER, WILLIAM C.; SHAW, CRAIG D.
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 015809/0221 →