IP Library Granted Patent US 6,976,110
Granted Patent B2
US 6,976,110 · App. 10/740,157 · Granted Dec 13, 2005

Method and apparatus for reducing interrupt latency by dynamic buffer sizing

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 6,976,110
App. No.
10/740,157
Granted
Dec 13, 2005
Kind
B2
Abstract

A method for reducing interrupt latency in a data processing system wherein a storage device is provided having a predetermined maximum number of storage locations. Data execution circuitry is coupled to the storage device for providing data to the storage device and storing the data in the storage device. Interrupt control circuitry is coupled to the data execution circuitry, wherein the interrupt control circuitry interrupts the data execution circuitry. The data stored in the storage device is completely outputted, thereby having an associated interrupt latency resulting from the output of the stored data. The storage capacity of the storage device is changed dynamically to minimize the interrupt latency. The storage device has a utilization value that varies between a predetermined minimum number of storage locations and the predetermined maximum number of storage locations based upon an operating mode of the data processing system.

Claims (47)

1. A method for reducing interrupt latency in a data processing system comprising:

providing a storage device having a predetermined maximum number of storage locations;

coupling data execution circuitry to the storage device for providing data to the storage device and storing the data in the storage device;

coupling interrupt control circuitry to the data execution circuitry, the interrupt control circuitry interrupting the data execution circuitry;

completing outputting stored data in the storage device, thereby having an associated interrupt latency resulting from outputting of the stored data; and

dynamically changing storage utilization of the storage device to minimize the interrupt latency, the storage device having a utilization value that varies between a predetermined minimum number of storage locations and the predetermined maximum number of storage locations based upon an operating mode of the data processing system.

2. The method of claim 1 further comprising:

enabling the interrupt control circuitry to receive interrupt requests having a plurality of differing priorities; and

implementing the operating mode of the system to be associated with priority of enabled interrupt requests.

3. The method of claim 2 further comprising:

providing a size limit register, the size limit register having one or more fields associated with at least one or more priorities for the enabled interrupt requests having the plurality of differing priorities, each of the one or more fields storing a limit value that defines the utilization value for each corresponding one or more fields.

4. The method of claim 3 further comprising providing the size limit register within the storage device.

5. The method of claim 1 further comprising:

providing a size limit register, the size limit register storing a limit value that defines the utilization value of the storage device, the limit value being dynamically modifiable during operation of the data processing system.

6. The method of claim 5 further comprising providing the size limit register within the storage device.

7. The method of claim 1 further comprising:

providing a size limit register, the size limit register having one or more fields that store a predetermined limit value associated with a predetermined process of the data processing system, the limit value being dynamically modifiable during operation of the data processing system.

8. The method of claim 7 further comprising providing the size limit register within the storage device.

9. A data processing system comprising:

a storage device having a predetermined maximum number of storage locations;

data execution circuitry coupled to the storage device for providing data to the storage device and storing the data in the storage device; and

interrupt control circuitry coupled to the data execution circuitry, the interrupt control circuitry interrupting the data execution circuitry, the interrupt control circuitry permitting stored data in the storage device to be fully emptied thereby resulting in an interrupt latency, the interrupt control circuitry dynamically changing storage utilization of the storage device to minimize the interrupt latency, the storage device having a variable number of storage locations that varies between a predetermined minimum number of storage locations and the predetermined maximum number of storage locations based upon an operating mode of the data processing system.

10. The data processing system of claim 9 wherein the interrupt control circuitry receives interrupt requests that have a plurality of differing priorities and wherein the operating mode of the data processing system is dependent upon a current priority of interrupt request.

11. The data processing system of claim 9 wherein the interrupt control circuitry has a plurality of inputs, each of the plurality of inputs receiving a predetermined one of interrupt requests that have a plurality of differing priorities.

12. The data processing system of claim 11 further comprising:

a size limit storage means that has one or more fields associated with at least one or more priorities of the interrupt requests that have the plurality of differing priorities, the one or more fields storing a limit value that defines the variable number of storage locations for a corresponding one or more fields.

13. The data processing system of claim 12 wherein the size limit storage means further comprises a register within the storage device.

14. The data processing system of claim 11 further comprising:

a size limit storage means for storing a limit value that defines utilization of the storage device, the limit value being dynamically modifiable during operation of the data processing system.

15. The data processing system of claim 14 wherein the size limit storage means further comprises a register within the storage device.

16. The data processing system of claim 11 further comprising:

size limit storage means, the size limit storage means having one or more fields that store a predetermined limit value associated with a predetermined process of the data processing system, the predetermined limit value being dynamically modifiable during operation of the data processing system.

17. The data processing system of claim 16 wherein the size limit storage means further comprise a register within the storage device.

18. A method for reducing interrupt latency in a data processing system comprising:

providing storage means having a predetermined maximum number of storage locations;

coupling data execution means to the storage means for providing data to the storage means and storing the data in the storage means;

coupling interrupt control means to the data execution means, the interrupt control means interrupting the data execution means;

completing outputting stored data in the storage means, thereby having an associated interrupt latency resulting from outputting of the stored data; and

dynamically changing storage utilization of the storage means to minimize the interrupt latency, the storage means having a utilization value that varies between a predetermined minimum number of storage locations and the predetermined maximum number of storage locations based upon an operating mode of the data processing system.

19. The method of claim 18 further comprising:

enabling the interrupt control means to receive interrupt requests having a plurality of differing priorities;

implementing the operating mode of the system to be associated with priority of enabled interrupt requests; and

providing a size limiter means, the size limiter means having one or more fields associated with at least one or more priorities for the enabled interrupt requests having the plurality of differing priorities, each of the one or more fields storing a limit value that defines the utilization value for each corresponding one or more fields.

20. The method of claim 18 further comprising:

providing a size limiter means, the size limiter means defining the utilization value of the storage means, the utilization value being dynamically modifiable during operation of the data processing system.

21. The method of claim 18 further comprising:

providing a size limiter means, the size limiter means having one or more fields that store a predetermined limit value associated with a predetermined process of the data processing system, the predetermined limit value being dynamically modifiable during operation of the data processing system.

Assignments (19)
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 OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: FREESCALE SEMICONDUCTOR, INC.
To: NORTH STAR INNOVATIONS INC.
Reel/Frame 037694/0264 →
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 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 037356/0553 →
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 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 May 7, 2004
From: MOTOROLA, INC
To: FREESCALE SEMICONDUCTOR, INC.
Reel/Frame 015360/0718 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 18, 2003
From: MOYER, WILLIAM C.; ARENDS, JOHN H.
To: MOTOROLA, INC.
Reel/Frame 014827/0689 →