Patent US5862353A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5862353A Expired / Lapsed US ⏱️ 0.0 years remaining

Systems and methods for dynamically controlling a bus

Assignee: International Business Machines Corp
•
Filing: 1997-03-25
•
Granted: 1999-01-19
•
Expires: 2017-03-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Bus performance in a computer system having multiple devices accessing a common shared bus may be improved by increasing throughput and decreasing latency while accounting for dynamic changes in bus usage. Devices submit a priority level along with a bus request to a bus controller. Upon receiving multiple requests, an arbiter of the bus controller compares the priority levels associated with the different bus requests and grants control of the bus to the device having the highest priority level. During each cycle that a device has control of the bus, a feedback logic circuit of the bus controller determines whether other bus requests are pending, and if so, determines the highest pending request priority level. Signals corresponding to the results of these determinations are fed back to each device. The device having control of the bus uses the combination of the currently pending request priority level and the device's own latency timer to determine whether it should maintain control of the bus or relinquish control of the bus.

Inventors

  • 👤 Juan Guillermo Revilla
  • 👤 Thomas Andrew Sartorius
  • 👤 Mark Michael Schaffer

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-31 09:42
CPC Classifications
G; G06; G06F; G06F13/00; G06F13/14; G06F13/36; G06F13/362; G06F13/364

Claims Analysis

Total Claims: 59
Claim 1
Independent Claim 81 words
A method for dynamically controlling a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said method comprising the step of: controlling the duration of control of the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 2
Independent Claim 81 words
A method for dynamically controlling a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said method comprising the step of: controlling the duration of control of the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 3
Dependent Claim 132 words
The method according to claim 1 wherein said controlling step comprises the steps of: granting a request from a first of said devices to control the bus; receiving a request to control the bus and a priority level associated with the request from a second of said devices; transmitting the priority level associated with the request received from the second device and an associated pending request signal to the first device in response to the receipt of the request from the second device; controlling the duration of the control of the bus by the first device based on a combination of a latency timer associated with the first device and a comparison of the priority level of the first device with the priority level associated with the request from the second device.
Claim 4
Dependent Claim 129 words
The method according to claim 1 wherein said controlling step comprises the steps of: continuing control of the bus by the first device in response to the latency timer associated with the first device having not expired; extending the duration of control of the bus by the first device in response to the priority level associated with the first device being at least as great as the priority level associated with the second device and the latency timer associated with the first device having expired; and terminating the control of the bus by the first device in response to the priority level associated with the first device being less than the priority level associated with the second device and the latency timer associated with the first device having expired.
Claim 5
Dependent Claim 97 words
The method according to claim 1 wherein said controlling step is preceded by the steps of: receiving at least one request to control the bus and a priority level associated with the request from the plurality of devices; arbitrating the priority levels associated with the requests received from the devices to identify a first priority level having the greatest value among the received priority levels and for identifying the device associated with the identified first priority level as a first device; and granting control of the bus to the first device in response to the arbitrating step.
Claim 6
Dependent Claim 26 words
The method according to claim 1 further comprising the step of: transferring data between the first device and said bus in response to said controlling step.
Claim 7
Dependent Claim 22 words
The method according to claim 5 wherein said data comprises at least one of applications data, computer program instructions, and address data.
Claim 8
Independent Claim 177 words
A method for dynamically controlling access to a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said method comprising the steps of: receiving at least one request to control the bus and a priority level associated with the request from the plurality of devices; arbitrating the priority levels associated with the requests received from the devices to identify a first priority level having the greatest value among the received priority levels and for identifying the device associated with the identified first priority level as a first device; granting control of the bus to the first device in response to the arbitrating step; receiving a request to control the bus and a priority level associated with the request from a second of said devices; and transmitting the priority level associated with the request received from the second device and an associated pending request signal to the first device having control of access to the bus in response to the receipt of the request from the second device.
Claim 9
Independent Claim 177 words
A method for dynamically controlling access to a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said method comprising the steps of: receiving at least one request to control the bus and a priority level associated with the request from the plurality of devices; arbitrating the priority levels associated with the requests received from the devices to identify a first priority level having the greatest value among the received priority levels and for identifying the device associated with the identified first priority level as a first device; granting control of the bus to the first device in response to the arbitrating step; receiving a request to control the bus and a priority level associated with the request from a second of said devices; and transmitting the priority level associated with the request received from the second device and an associated pending request signal to the first device having control of access to the bus in response to the receipt of the request from the second device.
Claim 10
Dependent Claim 58 words
The method according to claim 7 wherein the transmitting step is preceded by the step of: comparing the priority level associated with the second device with the priority levels associated with each device other than the first device to identify the priority level having the highest level; and substituting the identified priority level for the second priority level.
Claim 11
Dependent Claim 20 words
The method according to claim 7 further comprising the step of: transferring data between the bus and the first device.
Claim 12
Dependent Claim 22 words
The method according to claim 9 wherein said data comprises at least one of applications data, computer program instructions, and address data.
Claim 13
Independent Claim 81 words
A method for dynamically accessing a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said method comprising the step of: controlling the duration of access to the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 14
Independent Claim 81 words
A method for dynamically accessing a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said method comprising the step of: controlling the duration of access to the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 15
Dependent Claim 71 words
The method according to claim 11 wherein said controlling step comprises the steps of: receiving control of the bus by a first device from a bus controller in response to a request by the first device and a priority level associated therewith; and receiving a second priority level from the bus controller, said second priority level associated with a pending control request received by the bus controller from a second device.
Claim 16
Dependent Claim 65 words
The method according to claim 12 wherein said controlling step further comprises the step of: controlling the duration of the control of the bus by the first device based on a combination of a latency timer associated with the first device and a comparison of the priority level of the first device with the second priority level associated with the request from the second device.
Claim 17
Dependent Claim 55 words
The method according to claim 12 wherein said receiving control of the bus by a first device step is preceded by the steps of: requesting control of the bus by the first device of the plurality of devices from the bus controller wherein the request by the first device has a priority level associated therewith.
Claim 18
Dependent Claim 129 words
The method according to claim 11 wherein said controlling step comprises the steps of: continuing control of the bus by the first device in response to the latency timer associated with the first device having not expired; extending the duration of control of the bus by the first device in response to the priority level associated with the first device being at least as great as the priority level associated with the second device and the latency timer associated with the first device having expired; and terminating the control of the bus by the first device in response to the priority level associated with the first device being less than the priority level associated with the second device and the latency timer associated with the first device having expired.
Claim 19
Dependent Claim 26 words
The method according to claim 11 further comprising the step of: transferring data between the first device and said bus in response to said controlling step.
Claim 20
Dependent Claim 22 words
The method according to claim 16 wherein said data comprises at least one of applications data, computer program instructions, and address data.
Claim 21
Independent Claim 90 words
A system for dynamically controlling a bus, said system comprising: a plurality of devices, each of said devices having a priority level and a latency timer associated therewith; and a bus controller, operationally connectable to each of said devices, for controlling the duration of control of a bus by a first of said devices based on the combination of the latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 22
Independent Claim 90 words
A system for dynamically controlling a bus, said system comprising: a plurality of devices, each of said devices having a priority level and a latency timer associated therewith; and a bus controller, operationally connectable to each of said devices, for controlling the duration of control of a bus by a first of said devices based on the combination of the latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 23
Dependent Claim 133 words
The system according to claim 18 wherein said bus controller comprises: means for granting a request from a first of said devices to control the bus; means for receiving a request to control the bus and a priority level associated with the request from a second of said devices; feedback means for transmitting the priority level associated with the request received from the second device and the first device in response to the receipt of the request from the second device; and means for controlling the duration of the control of the bus by the first device based on a combination of the latency timer associated with the first device and a comparison of the priority level of the first device with the priority level associated with the request from the second device.
Claim 24
Dependent Claim 135 words
The system according to claim 19 wherein said bus controller comprises: continuing controlling means for continuing control of the bus by the first device in response to the latency timer associated with the first device having not expired; extension means for extending the duration of control of the bus by the first device in response to the priority level associated with the first device being at least as great as the priority level associated with the second device and the latency timer associated with the first device having expired; and terminating means for terminating control of the bus by the first device in response to the priority level associated with the first device being less than the priority level associated with the second device and the latency timer associated with the first device having expired.
Claim 25
Dependent Claim 99 words
The system according to claim 18 further comprising: second receiving means for receiving at least one request to control the bus and a priority level associated with the request from the plurality of devices; arbitrating means for comparing the priority levels associated with the requests received from the devices to identify a first priority level having the greatest value among the received priority levels and for identifying the device associated with the identified first priority level as a first device; and granting means for granting control of the bus to the first device in response to the arbitrating means.
Claim 26
Dependent Claim 25 words
The system according to claim 18 further comprising: means for transferring data between the first device and said bus in response to said bus controller.
Claim 27
Dependent Claim 22 words
The system according to claim 22 wherein said data comprises at least one of applications data, computer program instructions, and address data.
Claim 28
Independent Claim 95 words
A system for dynamically controlling access to a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said system comprising: means for receiving a request to control the bus and a priority level associated with the request from a second of said devices; and feedback means for transmitting the priority level associated with the request received from the second device to a first of said devices having control of access to the bus in response to the receipt of the request from the second device.
Claim 29
Independent Claim 95 words
A system for dynamically controlling access to a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said system comprising: means for receiving a request to control the bus and a priority level associated with the request from a second of said devices; and feedback means for transmitting the priority level associated with the request received from the second device to a first of said devices having control of access to the bus in response to the receipt of the request from the second device.
Claim 30
Dependent Claim 61 words
The system according to claim 24 wherein said feedback means comprises: determining means for comparing the priority level associated with each device other than the first device from which a control request is received to identify the priority level having the greatest value; and transmitting means for transmitting the identified priority level and a pending request signal to the first device.
Claim 31
Dependent Claim 19 words
The system according to claim 24 further comprising: means for transferring data between the bus and the first device.
Claim 32
Dependent Claim 22 words
The system according to claim 26 wherein said data comprises at least one of applications data, computer program instructions, and address data.
Claim 33
Independent Claim 85 words
A system for dynamically accessing a bus, said system comprising: a plurality of devices, each of said devices being operationally connectable to the bus and having a priority level associated therewith; and duration means for controlling the duration of access to the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 34
Independent Claim 85 words
A system for dynamically accessing a bus, said system comprising: a plurality of devices, each of said devices being operationally connectable to the bus and having a priority level associated therewith; and duration means for controlling the duration of access to the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 35
Dependent Claim 72 words
The system according to claim 28 wherein said duration means comprises: means for receiving control of the bus by a first device from a bus controller in response to a request by the first device and a priority level associated therewith; and means for receiving a second priority level from the bus controller, said second priority level associated with a pending control request received by the bus controller from a second device.
Claim 36
Dependent Claim 64 words
The system according to claim 29 wherein said duration means further comprises: means for controlling the duration of the control of the bus by the first device based on a combination of a latency timer associated with the first device and a comparison of the priority level of the first device with the second priority level associated with the request from the second device.
Claim 37
Dependent Claim 44 words
The system according to claim 30 wherein said system further comprises: means for requesting control of the bus by the first device of the plurality of devices from the bus controller wherein the request by the first device has a priority level associated therewith.
Claim 38
Dependent Claim 136 words
The system according to claim 28 wherein said duration means comprises: continuing controlling means for continuing control of the bus by the first device in response to the latency timer associated with the first device having not expired; extension means for extending the duration of control of the bus by the first device in response to the priority level associated with the first device being at least as great as the priority level associated with the second device and the latency timer associated with the first device having expired; and terminating means for terminating the control of the bus by the first device in response to the priority level associated with the first device being less than the priority level associated with the second device and the latency timer associated with the first device having expired.
Claim 39
Dependent Claim 25 words
The system according to claim 28 further comprising: means for transferring data between the first device and said bus in response to said duration means.
Claim 40
Dependent Claim 22 words
The system according to claim 33 wherein said data comprises at least one of applications data, computer program instructions, and address data.
Claim 41
Dependent Claim 106 words
A computer program product for dynamically controlling a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said computer program product comprising: a computer readable storage medium having computer readable code means embodied in said medium, said computer readable code means comprising: computer instruction means for controlling the duration of control of the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 42
Dependent Claim 106 words
A computer program product for dynamically controlling a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said computer program product comprising: a computer readable storage medium having computer readable code means embodied in said medium, said computer readable code means comprising: computer instruction means for controlling the duration of control of the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 43
Dependent Claim 145 words
A computer program product according to claim 35 wherein said computer instruction means for controlling comprises: computer instruction means for granting a request from a first of said devices to control the bus; computer instruction means for receiving a request to control the bus and a priority level associated with the request from a second of said devices; computer instruction means for transmitting the priority level associated with the request received from the second device to each of said devices in response to the receipt of the request from the second device; computer instruction means for controlling the duration of the control of the bus by the first device based on a combination of a latency timer associated with the first device and a comparison of the priority level of the first device with the priority level associated with the request from the second device.
Claim 44
Dependent Claim 143 words
A computer program product according to claim 35 wherein said computer instruction means for controlling comprises: computer instruction means for continuing control of the bus by the first device in response to the latency timer associated with the first device having not expired; computer instruction means for extending the duration of control of the bus by the first device in response to the priority level associated with the first device being at least as great as the priority level associated with the second device and the latency timer associated with the first device having expired; and computer instruction means for terminating the control of the bus by the first device in response to the priority level associated with the first device being less than the priority level associated with the second device and the latency timer associated with the first device having expired.
Claim 45
Dependent Claim 115 words
A computer program product according to claim 35 wherein said computer readable code means further comprises: computer instruction means for receiving at least one request to control the bus and a priority level associated with the request from the plurality of devices; computer instruction means for arbitrating the priority levels associated with the requests received from the devices to identify a first priority level having the greatest value among the received priority levels and for identifying the device associated with the identified first priority level as a first device; and computer instruction means for granting control of the bus to the first device in response to the computer instruction means for arbitrating the priority levels.
Claim 46
Dependent Claim 40 words
A computer program product according to claim 35 wherein said computer readable code means further comprises: computer instruction means for transferring data between the first device and said bus in response to said computer instruction means for controlling the duration.
Claim 47
Dependent Claim 24 words
A computer program product according to claim 39 wherein said data comprises at least one of applications data, computer program instructions, and address data.
Claim 48
Dependent Claim 218 words
A computer program product for dynamically controlling access to a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said computer program product comprising: a computer readable storage medium having computer readable code means embodied in said medium, said computer readable code means comprising: computer instruction means for receiving at least one request to control the bus and a priority level associated with the request from the plurality of devices; computer instruction means for arbitrating the priority levels associated with the requests received from the devices to identify a first priority level having the greatest value among the received priority levels and for identifying the device associated with the identified first priority level as a first device; computer instruction means for granting control of the bus to the first device in response to the arbitrating step; computer instruction means for receiving a request to control the bus and a priority level associated with the request from a second of said devices; and computer instruction means for transmitting the priority level associated with the request received from the second device and an associated pending request signal to the first device having control of access to the bus in response to the receipt of the request from the second device.
Claim 49
Dependent Claim 218 words
A computer program product for dynamically controlling access to a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said computer program product comprising: a computer readable storage medium having computer readable code means embodied in said medium, said computer readable code means comprising: computer instruction means for receiving at least one request to control the bus and a priority level associated with the request from the plurality of devices; computer instruction means for arbitrating the priority levels associated with the requests received from the devices to identify a first priority level having the greatest value among the received priority levels and for identifying the device associated with the identified first priority level as a first device; computer instruction means for granting control of the bus to the first device in response to the arbitrating step; computer instruction means for receiving a request to control the bus and a priority level associated with the request from a second of said devices; and computer instruction means for transmitting the priority level associated with the request received from the second device and an associated pending request signal to the first device having control of access to the bus in response to the receipt of the request from the second device.
Claim 50
Dependent Claim 29 words
A computer program product according to claim 41 wherein said computer readable code means further comprises: computer instruction means for transferring data between the bus and the first device.
Claim 51
Dependent Claim 24 words
A computer program product according to claim 42 wherein said data comprises at least one of applications data, computer program instructions, and address data.
Claim 52
Dependent Claim 106 words
A computer program product for dynamically accessing a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said computer program product comprising: a computer readable storage medium having computer readable code means embodied in said medium, said computer readable code means comprising: computer instruction means for controlling the duration of access to the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 53
Dependent Claim 106 words
A computer program product for dynamically accessing a bus having a plurality of devices operationally connectable thereto, each of said devices having a priority level associated therewith, said computer program product comprising: a computer readable storage medium having computer readable code means embodied in said medium, said computer readable code means comprising: computer instruction means for controlling the duration of access to the bus by a first of said devices based on the combination of a latency timer and the priority level associated with the first device, and a priority level associated with a pending request by a second of said devices to control the bus.
Claim 54
Dependent Claim 81 words
A computer program product according to claim 44 wherein said computer instruction means for controlling comprises: computer instruction means for receiving control of the bus by a first device from a bus controller in response to a request by the first device and a priority level associated therewith; and computer instruction means for receiving a second priority level from the bus controller, said second priority level associated with a pending control request received by the bus controller from a second device.
Claim 55
Dependent Claim 71 words
A computer program product according to claim 45 wherein said computer instruction means for controlling further comprises: computer instruction means for controlling the duration of the control of the bus by the first device based on a combination of a latency timer associated with the first device and a comparison of the priority level of the first device with the second priority level associated with the request from the second device.
Claim 56
Dependent Claim 51 words
A computer program product according to claim 45 wherein said computer readable code means further comprises: computer instruction means for requesting control of the bus by the first device of the plurality of devices from the bus controller wherein the request by the first device has a priority level associated therewith.
Claim 57
Dependent Claim 143 words
A computer program product according to claim 44 wherein said computer instruction means for controlling comprises: computer instruction means for continuing control of the bus by the first device in response to the latency timer associated with the first device having not expired; computer instruction means for extending the duration of control of the bus by the first device in response to the priority level associated with the first device being at least as great as the priority level associated with the second device and the latency timer associated with the first device having expired; and computer instruction means for terminating the control of the bus by the first device in response to the priority level associated with the first device being less than the priority level associated with the second device and the latency timer associated with the first device having expired.
Claim 58
Dependent Claim 40 words
A computer program product according to claim 44 wherein said computer readable code means further comprises: computer instruction means for transferring data between the first device and said bus in response to said computer instruction means for controlling the duration.
Claim 59
Dependent Claim 24 words
A computer program product according to claim 49 wherein said data comprises at least one of applications data, computer program instructions, and address data.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-01-18 2002-07-20 2003-01-19 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-01-18 2006-07-20 2007-01-19 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-01-18 2010-07-20 2011-01-19 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag