← Back to Patent Explorer
US5689656A Expired / Lapsed US ⏱️ 0.0 years remaining

Dynamic hierarchical arbitration of computer resource access requests

Assignee: Apple Inc
•
Filing: 1997-01-10
•
Granted: 1997-11-18
•
Expires: 2017-01-10
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method of prioritizing computer resource access requests to a shared computer resource, such as a video frame buffer, includes the steps of providing a number, n, of priority schemes in correspondence with a like number of potentially requesting entities, where n is an integer greater than one, and where each priority scheme designates relative priority of the potentially requesting entities with respect to one another. Thus, for each priority scheme there exists one corresponding potentially requesting entity, and a number, n-1, of noncorresponding potentially requesting entities. Next, one of the priority schemes is selected for use as a current priority scheme. A set of currently requesting entities is then determined from the number of potentially requesting entities, and the current priority scheme is used to select a highest priority requesting entity from the set of currently requesting entities. Finally, one of the priority schemes is newly selected as the current priority scheme, wherein the newly selected priority scheme corresponds to the highest priority requesting entity. In one embodiment, at least one of the priority schemes designates a first priority for the corresponding potentially requesting entity, and a second priority for one of the noncorresponding potentially requesting entities, where the first priority is higher than the second priority. In another aspect of the invention, at least one of the potentially requesting entities has a same relative priority designation in at least two of the n priority schemes.

Inventors

  • 👤 Eric A. Baden
  • 👤 Brian A. Childers

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-29 21:46
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/36; G06F13/362

Claims Analysis

Total Claims: 24
Claim 1
Independent Claim 212 words
A method of prioritizing computer resource access requests, comprising the steps of: providing a number, n, of priority schemes in correspondence with a like number, n, of potentially requesting entities, wherein n is an integer greater than one, wherein each priority scheme designates relative priority of the potentially requesting entities with respect to one another, and whereby for each priority scheme there exists one corresponding potentially requesting entity, and a number, n-1, of noncorresponding potentially requesting entities; selecting one of the priority schemes as a current priority scheme; determining a set of currently requesting entities from the number of potentially requesting entities; using the current priority scheme to select a highest priority requesting entity from the set of currently requesting entities and designating the selected highest priority requesting entity as the next requesting entity to be serviced; and newly selecting one of the priority schemes as the current priority scheme for use in selecting a subsequent highest priority requesting entity, wherein the newly selected priority scheme corresponds to the highest priority requesting entity, wherein at least one of the priority schemes designates a first priority for the corresponding potentially requesting entity, and a second priority for one of the noncorresponding potentially requesting entities, the first priority being higher than the second priority.
Claim 2
Independent Claim 212 words
A method of prioritizing computer resource access requests, comprising the steps of: providing a number, n, of priority schemes in correspondence with a like number, n, of potentially requesting entities, wherein n is an integer greater than one, wherein each priority scheme designates relative priority of the potentially requesting entities with respect to one another, and whereby for each priority scheme there exists one corresponding potentially requesting entity, and a number, n-1, of noncorresponding potentially requesting entities; selecting one of the priority schemes as a current priority scheme; determining a set of currently requesting entities from the number of potentially requesting entities; using the current priority scheme to select a highest priority requesting entity from the set of currently requesting entities and designating the selected highest priority requesting entity as the next requesting entity to be serviced; and newly selecting one of the priority schemes as the current priority scheme for use in selecting a subsequent highest priority requesting entity, wherein the newly selected priority scheme corresponds to the highest priority requesting entity, wherein at least one of the priority schemes designates a first priority for the corresponding potentially requesting entity, and a second priority for one of the noncorresponding potentially requesting entities, the first priority being higher than the second priority.
Claim 3
Dependent Claim 69 words
The method of claim 1, further comprising the step of providing a default priority scheme that designates relative priority of the potentially requesting entities with respect to one another, and wherein the step of newly selecting one of the priority schemes as the current priority scheme further comprises selecting the default priority scheme as the current priority scheme whenever none of the potentially requesting entities are currently making requests.
Claim 4
Dependent Claim 50 words
The method of claim 1, wherein: the computer resource is a video frame buffer having a serial access mode (SAM) port; and the potentially requesting entities include a system bus requestor, an expansion bus requestor, a video frame buffer refresh requestor, a primary SAM requestor and a secondary SAM requestor.
Claim 5
Dependent Claim 251 words
The method of claim 3, wherein: the step of providing the priority schemes includes providing first, second, third, fourth and fifth priority schemes in correspondence with, respectively, the system bus requestor, the expansion bus requestor, the primary SAM requestor, the secondary SAM requestor and the video frame buffer refresh requestor; the first priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor, the video frame buffer refresh requestor and the system bus requestor; the second priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the secondary SAM requestor, the primary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor and the system bus requestor; the third priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the secondary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor, the system bus requestor and the primary SAM requestor; the fourth priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the primary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor, the system bus requestor and the secondary SAM requestor; and the fifth priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor, the system bus requestor and the video frame buffer refresh requestor.
Claim 6
Dependent Claim 110 words
The method of claim 4, further comprising the step of providing a default priority scheme that designates relative priority of the potentially requesting entities with respect to one another, and wherein: the step of newly selecting one of the priority schemes as the current priority scheme further comprises selecting the default priority scheme as the current priority scheme whenever none of the potentially requesting entities are currently making requests; and the default priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the system bus requestor, the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor and the video frame buffer refresh requestor.
Claim 7
Independent Claim 219 words
An apparatus for prioritizing computer resource access requests, comprising: means for providing a number, n, of priority schemes in correspondence with a like number, n, of potentially requesting entities, wherein n is an integer greater than one, wherein each priority scheme designates relative priority of the potentially requesting entities with respect to one another, and whereby for each priority scheme there exists one corresponding potentially requesting entity, and a number, n-1, of noncorresponding potentially requesting entities; means for selecting one of the priority schemes as a current priority scheme; means for determining a set of currently requesting entities from the number of potentially requesting entities; means for using the current priority scheme to select a highest priority requesting entity from the set of currently requesting entities and designating the selected highest priority requesting entity as the next requesting entity to be serviced; and means for newly selecting one of the priority schemes as the current priority scheme for use in selecting a subsequent highest priority requesting entity, wherein the newly selected priority scheme corresponds to the highest priority requesting entity, wherein at least one of the priority schemes designates a first priority for the corresponding potentially requesting entity, and a second priority for one of the noncorresponding potentially requesting entities, the first priority being higher than the second priority.
Claim 8
Independent Claim 219 words
An apparatus for prioritizing computer resource access requests, comprising: means for providing a number, n, of priority schemes in correspondence with a like number, n, of potentially requesting entities, wherein n is an integer greater than one, wherein each priority scheme designates relative priority of the potentially requesting entities with respect to one another, and whereby for each priority scheme there exists one corresponding potentially requesting entity, and a number, n-1, of noncorresponding potentially requesting entities; means for selecting one of the priority schemes as a current priority scheme; means for determining a set of currently requesting entities from the number of potentially requesting entities; means for using the current priority scheme to select a highest priority requesting entity from the set of currently requesting entities and designating the selected highest priority requesting entity as the next requesting entity to be serviced; and means for newly selecting one of the priority schemes as the current priority scheme for use in selecting a subsequent highest priority requesting entity, wherein the newly selected priority scheme corresponds to the highest priority requesting entity, wherein at least one of the priority schemes designates a first priority for the corresponding potentially requesting entity, and a second priority for one of the noncorresponding potentially requesting entities, the first priority being higher than the second priority.
Claim 9
Dependent Claim 70 words
The apparatus of claim 6, further comprising means for providing a default priority scheme that designates relative priority of the potentially requesting entities with respect to one another, and wherein the means for newly selecting one of the priority schemes as the current priority scheme further comprises means for selecting the default priority scheme as the current priority scheme whenever none of the potentially requesting entities are currently making requests.
Claim 10
Dependent Claim 50 words
The apparatus of claim 6, wherein: the computer resource is a video frame buffer having a serial access mode (SAM) port; and the potentially requesting entities include a system bus requestor, an expansion bus requestor, a video frame buffer refresh requestor, a primary SAM requestor and a secondary SAM requestor.
Claim 11
Dependent Claim 253 words
The apparatus of claim 8, wherein: the means for providing the priority schemes includes means for providing first, second, third, fourth and fifth priority schemes in correspondence with, respectively, the system bus requestor, the expansion bus requestor, the primary SAM requestor, the secondary SAM requestor and the video frame buffer refresh requestor; the first priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor, the video frame buffer refresh requestor and the system bus requestor; the second priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the secondary SAM requestor, the primary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor and the system bus requestor; the third priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the secondary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor, the system bus requestor and the primary SAM requestor; the fourth priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the primary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor, the system bus requestor and the secondary SAM requestor; and the fifth priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor, the system bus requestor and the video frame buffer refresh requestor.
Claim 12
Dependent Claim 111 words
The apparatus of claim 9, further comprising means for providing a default priority scheme that designates relative priority of the potentially requesting entities with respect to one another, and wherein: the means for newly selecting one of the priority schemes as the current priority scheme further comprises means for selecting the default priority scheme as the current priority scheme whenever none of the potentially requesting entities are currently making requests; and the default priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the system bus requestor, the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor and the video frame buffer refresh requestor.
Claim 13
Independent Claim 176 words
A method of prioritizing computer resource access requests, comprising the steps of: providing a number, n, of priority schemes in correspondence with a like number, n, of potentially requesting entities, wherein n is an integer greater than one, wherein each priority scheme designates relative priority of the potentially requesting entities with respect to one another, and wherein at least one of the potentially requesting entities has a same relative priority designation in at least two of the n priority schemes; selecting one of the priority schemes as a current priority scheme; determining a set of currently requesting entities from the number of potentially requesting entities; using the current priority scheme to select a highest priority requesting entity from the set of currently requesting entities and designating the selected highest priority requesting entity as the next requesting entity to be serviced; and newly selecting one of the priority schemes as the current priority scheme for use in selecting a subsequent highest priority requesting entity, wherein the newly selected priority scheme corresponds to the highest priority requesting entity.
Claim 14
Independent Claim 176 words
A method of prioritizing computer resource access requests, comprising the steps of: providing a number, n, of priority schemes in correspondence with a like number, n, of potentially requesting entities, wherein n is an integer greater than one, wherein each priority scheme designates relative priority of the potentially requesting entities with respect to one another, and wherein at least one of the potentially requesting entities has a same relative priority designation in at least two of the n priority schemes; selecting one of the priority schemes as a current priority scheme; determining a set of currently requesting entities from the number of potentially requesting entities; using the current priority scheme to select a highest priority requesting entity from the set of currently requesting entities and designating the selected highest priority requesting entity as the next requesting entity to be serviced; and newly selecting one of the priority schemes as the current priority scheme for use in selecting a subsequent highest priority requesting entity, wherein the newly selected priority scheme corresponds to the highest priority requesting entity.
Claim 15
Dependent Claim 69 words
The method of claim 11, further comprising the step of providing a default priority scheme that designates relative priority of the potentially requesting entities with respect to one another, and wherein the step of newly selecting one of the priority schemes as the current priority scheme further comprises selecting the default priority scheme as the current priority scheme whenever none of the potentially requesting entities are currently making requests.
Claim 16
Dependent Claim 50 words
The method of claim 11, wherein: the computer resource is a video frame buffer having a serial access mode (SAM) port; and the potentially requesting entities include a system bus requestor, an expansion bus requestor, a video frame buffer refresh requestor, a primary SAM requestor and a secondary SAM requestor.
Claim 17
Dependent Claim 250 words
The method of claim 13, wherein: the step of providing priority schemes includes providing first, second, third, fourth and fifth priority schemes in correspondence with, respectively, the system bus requestor, the expansion bus requestor, the primary SAM requestor, the secondary SAM requestor and the video frame buffer refresh requestor; the first priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor, the video frame buffer refresh requestor and the system bus requestor; the second priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the secondary SAM requestor, the primary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor and the system bus requestor; the third priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the secondary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor, the system bus requestor and the primary SAM requestor; the fourth priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the primary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor, the system bus requestor and the secondary SAM requestor; and the fifth priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor, the system bus requestor and the video frame buffer refresh requestor.
Claim 18
Dependent Claim 110 words
The method of claim 14, further comprising the step of providing a default priority scheme that designates relative priority of the potentially requesting entities with respect to one another, and wherein: the step of newly selecting one of the priority schemes as the current priority scheme further comprises selecting the default priority scheme as the current priority scheme whenever none of the potentially requesting entities are currently making requests; and the default priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the system bus requestor, the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor and the video frame buffer refresh requestor.
Claim 19
Independent Claim 183 words
An apparatus for prioritizing computer resource access requests, comprising: means for providing a number, n, of priority schemes in correspondence with a like number, n, of potentially requesting entities, wherein n is an integer greater than one, wherein each priority scheme designates relative priority of the potentially requesting entities with respect to one another, and wherein at least one of the potentially requesting entities has a same relative priority designation in at least two of the n priority schemes; means for selecting one of the priority schemes as a current priority scheme; means for determining a set of currently requesting entities from the number of potentially requesting entities; means for using the current priority scheme to select a highest priority requesting entity from the set of currently requesting entities and designating the selected highest priority requesting entity as the next requesting entity to be serviced; and means for newly selecting one of the priority schemes as the current priority scheme for use in selecting a subsequent highest priority requesting entity, wherein the newly selected priority scheme corresponds to the highest priority requesting entity.
Claim 20
Independent Claim 183 words
An apparatus for prioritizing computer resource access requests, comprising: means for providing a number, n, of priority schemes in correspondence with a like number, n, of potentially requesting entities, wherein n is an integer greater than one, wherein each priority scheme designates relative priority of the potentially requesting entities with respect to one another, and wherein at least one of the potentially requesting entities has a same relative priority designation in at least two of the n priority schemes; means for selecting one of the priority schemes as a current priority scheme; means for determining a set of currently requesting entities from the number of potentially requesting entities; means for using the current priority scheme to select a highest priority requesting entity from the set of currently requesting entities and designating the selected highest priority requesting entity as the next requesting entity to be serviced; and means for newly selecting one of the priority schemes as the current priority scheme for use in selecting a subsequent highest priority requesting entity, wherein the newly selected priority scheme corresponds to the highest priority requesting entity.
Claim 21
Dependent Claim 70 words
The apparatus of claim 16, further comprising means for providing a default priority scheme that designates relative priority of the potentially requesting entities with respect to one another, and wherein the means for newly selecting one of the priority schemes as the current priority scheme further comprises means for selecting the default priority scheme as the current priority scheme whenever none of the potentially requesting entities are currently making requests.
Claim 22
Dependent Claim 50 words
The apparatus of claim 17, wherein: the computer resource is a video frame buffer having a serial access mode (SAM) port; and the potentially requesting entities include a system bus requestor, an expansion bus requestor, a video frame buffer refresh requestor, a primary SAM requestor and a secondary SAM requestor.
Claim 23
Dependent Claim 253 words
The apparatus of claim 16, wherein: the means for providing the priority schemes includes means for providing first, second, third, fourth and fifth priority schemes in correspondence with, respectively, the system bus requestor, the expansion bus requestor, the primary SAM requestor, the secondary SAM requestor and the video frame buffer refresh requestor; the first priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor, the video frame buffer refresh requestor and the system bus requestor; the second priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the secondary SAM requestor, the primary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor and the system bus requestor; the third priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the secondary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor, the system bus requestor and the primary SAM requestor; the fourth priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the primary SAM requestor, the expansion bus requestor, the video frame buffer refresh requestor, the system bus requestor and the secondary SAM requestor; and the fifth priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor, the system bus requestor and the video frame buffer refresh requestor.
Claim 24
Dependent Claim 111 words
The apparatus of claim 19, further comprising means for providing a default priority scheme that designates relative priority of the potentially requesting entities with respect to one another, and wherein: the means for newly selecting one of the priority schemes as the current priority scheme further comprises means for selecting the default priority scheme as the current priority scheme whenever none of the potentially requesting entities are currently making requests; and the default priority scheme designates, in the order of highest to lowest priority, the following relative priorities: the system bus requestor, the expansion bus requestor, the secondary SAM requestor, the primary SAM requestor and the video frame buffer refresh requestor.

References Cited (Backward Citations)

US5388228A Cited
US5257348A Cited
US5274753A Cited
US5263138A Cited
WO1994000834A1 Cited
US5301272A Cited
GB2285726A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-11-17 2001-05-19 2001-11-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-11-17 2005-05-19 2005-11-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-11-17 2009-05-19 2009-11-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag