US6016510A
Expired / Lapsed
US
⏱️ 0.0 years remaining
TORUS routing element error handling and self-clearing with programmable watermarking
Assignee: Fujitsu Siemens Computers Inc
•
Filing: 1998-06-24
•
Granted: 2000-01-18
•
Expires: 2018-06-24
Abstract
Abstract In a massively parallel processing (MPP) system, data transmission between a first routing element to a buffer in a second routing element can be controlled more efficiently by generating a high and low watermark for the buffer, wherein the watermark values are based on a period of time required to transmit data between the routing elements. The amount of data stored in the buffer is then continuously compared to the high watermark value, and if the amount of data in the buffer is greater than or equal to the high watermark value, the first routing element becomes blocked from transmitting additional data to the buffer in the second routing element.
Inventors
- 👤 Marc Alan Quattromani
- 👤 Mark S. Myers
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-11-09 20:18
CPC Classifications
H; H04; H04L; H04L47/00; H04L47/10; H04L47/29; G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/52; G06F9/524; H04L47/28; H04L47/283; H04L47/30
Claims Analysis
Total Claims: 35
Claim 1
Independent Claim
121 words
A method for controlling the transmission of message packet data along a connection between a first routing element and a second routing element comprising the steps of: transmitting data along the connection from the first routing element to a buffer in the second routing element; determining a first pre-programmed quantity based on a period of time required to transmit data along the connection between the first and the second routing elements; comparing the quantity of data in the buffer to the first pre-programmed quantity; and blocking the first routing element from transmitting additional data to the buffer in the second routing element as a function of the comparison between the quantity of data in the buffer and the first pre-programmed quantity.
Claim 2
Independent Claim
121 words
A method for controlling the transmission of message packet data along a connection between a first routing element and a second routing element comprising the steps of: transmitting data along the connection from the first routing element to a buffer in the second routing element; determining a first pre-programmed quantity based on a period of time required to transmit data along the connection between the first and the second routing elements; comparing the quantity of data in the buffer to the first pre-programmed quantity; and blocking the first routing element from transmitting additional data to the buffer in the second routing element as a function of the comparison between the quantity of data in the buffer and the first pre-programmed quantity.
Claim 3
Dependent Claim
72 words
The method of claim 1 further comprising the steps of: after blocking the first routing element from transmitting data to the second routing element, comparing the quantity of data in the buffer to a second pre-programmed quantity; unblocking the first routing element if the quantity of data in the buffer is less than or equal to the second pre-programmed quantity, wherein the second pre-programmed quantity is less than the first pre-programmed quantity.
Claim 4
Dependent Claim
36 words
The method of claim 2 further comprising the step of: determining the second pre-programmed quantity based on a period of time required to transmit data along the connection between the first and the second routing elements.
Claim 5
Dependent Claim
11 words
The method of claim 2, wherein the buffer is a FIFO.
Claim 6
Dependent Claim
20 words
The method of claim 4, wherein the quantity of data reflects a number of FIFO storage locations that contain data.
Claim 7
Dependent Claim
133 words
In a massively parallel processing system, a method for controlling data transmission from a first routing element to a buffer in a second routing element comprising the steps of: generating a high and a low watermark value for the buffer in the second routing element based on a period of time required to transmit data between the first routing element and the second routing element, wherein the high and low watermark values each represent a number of storage locations in the buffer that contain data; comparing a current number of data words stored in the buffer with the high watermark value; and if the current number of data words stored in the buffer is greater than or equal to the high watermark value, blocking the first routing element from transmitting additional data words.
Claim 8
Dependent Claim
133 words
In a massively parallel processing system, a method for controlling data transmission from a first routing element to a buffer in a second routing element comprising the steps of: generating a high and a low watermark value for the buffer in the second routing element based on a period of time required to transmit data between the first routing element and the second routing element, wherein the high and low watermark values each represent a number of storage locations in the buffer that contain data; comparing a current number of data words stored in the buffer with the high watermark value; and if the current number of data words stored in the buffer is greater than or equal to the high watermark value, blocking the first routing element from transmitting additional data words.
Claim 9
Dependent Claim
105 words
The method of claim 6, wherein said step of generating a high watermark value based on the time period required to transmit data between the first and the second routing elements comprises the steps of: transmitting a first control code from the second routing element to the first routing element; transmitting a second control code from the first routing element to the second routing element; measuring the time period required to transmit the control code to the first routing element and to retransmit the control code to the second routing element; and determining the high and low watermark values based on the measured time period.
Claim 10
Dependent Claim
57 words
The method of claim 7, wherein said step of determining the high and low watermark values based on the measured time period comprises the step of: establishing the high and low watermark values by using the measured time period as a mapping value to point to the high and low watermark values stored in a look-up table.
Claim 11
Dependent Claim
52 words
The method of claim 7, wherein said step of determining the high and low watermark values based on the measured time period comprises the step of: establishing the high and low watermark values by utilizing the measured time period to solve an arithmetic expression which yields the high and low watermark values.
Claim 12
Dependent Claim
85 words
The method of claim 6 further comprising the steps of: after blocking the first routing element from transmitting data to the second routing element, comparing the number of data words stored in the buffer to the low watermark value; and if the number of data words stored in the buffer is equal to or less than the low watermark value, unblocking the first routing element from transmitting data to the second routing element, wherein the low watermark value is less than the high watermark value.
Claim 13
Dependent Claim
58 words
The method of claim 10, wherein the high watermark value represents a first number of storage locations in the buffer which is less than a maximum number of storage locations in the buffer, and the low watermark value represents a second number of storage locations in the buffer which is less than the first number of storage locations.
Claim 14
Dependent Claim
48 words
The method of claim 11, wherein said step of unblocking the first routing element from transmitting data to the second routing element comprises the step of: dispatching a code from the second routing element to the first routing element that indicates the buffer is available to receive data.
Claim 15
Dependent Claim
47 words
The method of claim 6, wherein the step of blocking the first routing element from transmitting additional data words comprises the step of: transmitting a code from the second routing element to the first routing element indicating that the buffer is not available to receive additional data.
Claim 16
Dependent Claim
11 words
The method of claim 6, wherein the buffer is a FIFO.
Claim 17
Independent Claim
154 words
An apparatus for controlling the transmission of message packet data along a connection between a first routing element and a second routing element comprising: output means for transmitting data along the connection from the first routing element to a buffer in the second routing element; means for determining a first pre-programmed quantity based on a period of time required to transmit data along the connection between the first and the second routing elements; control logic means in the second routing element for comparing a quantity of data in the buffer to the first pre-programmed quantity; and code generator means in the second routing element for generating a code to block the first routing element from transmitting additional data to the buffer in the second routing element, wherein said code generator means is responsive to said control logic means and the comparison between the quantity of data in the buffer and the first pre-programmed quantity.
Claim 18
Independent Claim
154 words
An apparatus for controlling the transmission of message packet data along a connection between a first routing element and a second routing element comprising: output means for transmitting data along the connection from the first routing element to a buffer in the second routing element; means for determining a first pre-programmed quantity based on a period of time required to transmit data along the connection between the first and the second routing elements; control logic means in the second routing element for comparing a quantity of data in the buffer to the first pre-programmed quantity; and code generator means in the second routing element for generating a code to block the first routing element from transmitting additional data to the buffer in the second routing element, wherein said code generator means is responsive to said control logic means and the comparison between the quantity of data in the buffer and the first pre-programmed quantity.
Claim 19
Dependent Claim
84 words
The apparatus of claim 15 further comprising: after blocking the first routing element from transmitting data to the second routing element, second control logic means for comparing the quantity of data in the buffer to a second pre-programmed quantity, wherein the code generator means generates a code for unblocking the first routing element if the quantity of data in the buffer is less than or equal to the second pre-programmed quantity, and wherein the second pre-programmed quantity is less than the first pre-programmed quantity.
Claim 20
Dependent Claim
35 words
The apparatus of claim 16 further comprising: means for determining the second pre-programmed quantity based on a period of time required to transmit data along the connection between the first and the second routing elements.
Claim 21
Dependent Claim
11 words
The apparatus of claim 16, wherein the buffer is a FIFO.
Claim 22
Dependent Claim
20 words
The apparatus of claim 18, wherein the quantity of data reflects a number of FIFO storage locations that contain data.
Claim 23
Dependent Claim
160 words
In a massively parallel processing system, an apparatus for controlling data transmission from a first routing element to a buffer in a second routing element comprising: selection means for determining a high and a low watermark value for the buffer in the second routing element based on a period of time required to transmit data between the first routing element and the second routing element, wherein the high and low watermark values each represent a number of storage locations in the buffer that contain data; logic means for comparing a current number of data words stored in the buffer with the high watermark value; and if the current number of data words stored in the buffer is greater than or equal to the high watermark value, code generation means for generating a code to block the first routing element from transmitting additional data words to the second routing element, wherein said code generation means is responsive to said logic means.
Claim 24
Dependent Claim
160 words
In a massively parallel processing system, an apparatus for controlling data transmission from a first routing element to a buffer in a second routing element comprising: selection means for determining a high and a low watermark value for the buffer in the second routing element based on a period of time required to transmit data between the first routing element and the second routing element, wherein the high and low watermark values each represent a number of storage locations in the buffer that contain data; logic means for comparing a current number of data words stored in the buffer with the high watermark value; and if the current number of data words stored in the buffer is greater than or equal to the high watermark value, code generation means for generating a code to block the first routing element from transmitting additional data words to the second routing element, wherein said code generation means is responsive to said logic means.
Claim 25
Dependent Claim
114 words
The apparatus of claim 20, wherein said selection means for determining the high and the low watermark values based on a the time period required to transmit data between the first and the second routing elements comprises: means for transmitting a control code from the second routing element to the first routing element; means for retransmitting the control code from the first routing element to the second routing element; counter for measuring the time period required to transmit the control code to the first routing element and to retransmit the control code to the second routing element; and means for determining the high and low watermark values based on the measured amount of time.
Claim 26
Dependent Claim
70 words
The apparatus of claim 21, wherein said selection means for determining the high and low watermark values based on the measured time period required to transmit data between the first and the second routing elements further comprises: means for establishing the high and low watermark values by using the measured time period as a mapping value to point to the high and low watermark values stored in a look-up table.
Claim 27
Dependent Claim
65 words
The apparatus of claim 21, wherein said selection means for determining the high and low watermark values based on the measured time period required to transmit data between the first and the second routing elements further comprises: means for establishing the high and low watermark values by utilizing the measured time period to solve an arithmetic expression which yields the high and low watermark values.
Claim 28
Dependent Claim
90 words
The apparatus of claim 20 further comprising: after blocking the first routing element from transmitting data to the second routing element, second logic means for comparing the number of data words stored in the buffer to the low watermark value, wherein said code generation means includes means for generating a code to unblock the first routing element if the number of data words stored in the buffer is equal to or less than the low watermark value, and wherein the low watermark value is less than the high watermark value.
Claim 29
Dependent Claim
58 words
The apparatus of claim 24, wherein the high watermark value represents a first number of storage locations in the buffer which is less than a maximum number of storage locations in the buffer, and the low watermark value represents a second number of storage locations in the buffer which is less than the first number of storage locations.
Claim 30
Dependent Claim
36 words
The apparatus of claim 25, wherein said code generation means further comprises: means for dispatching a code from the second routing element to the first routing element that indicates the buffer is available to receive data.
Claim 31
Dependent Claim
38 words
The apparatus of claim 20, wherein said code generation means further comprises: means for transmitting a code from the second routing element to the first routing element indicating that the buffer is not available to receive additional data.
Claim 32
Dependent Claim
11 words
The apparatus of claim 20, wherein the buffer is a FIFO.
Claim 33
Independent Claim
91 words
A method for controlling the transmission of message packet data along a connection between a first routing element and a second routing element comprising the steps of: transmitting data along the connection between the first routing element and the second routing element; determining a value of length for the connection between the first routing element and the second routing element; and selecting one of a number of preprogrammed high-low watermark value pairs as a function of the length of the connection between the first routing element and the second routing element.
Claim 34
Independent Claim
91 words
A method for controlling the transmission of message packet data along a connection between a first routing element and a second routing element comprising the steps of: transmitting data along the connection between the first routing element and the second routing element; determining a value of length for the connection between the first routing element and the second routing element; and selecting one of a number of preprogrammed high-low watermark value pairs as a function of the length of the connection between the first routing element and the second routing element.
Claim 35
Dependent Claim
170 words
The method of claim 29, where said step of determining the length of the connection between the first routing element and the second routing element comprises the steps of: transmitting a code word from the second routing element to the first routing element, and simultaneously, initiating a counter in the second routing element; retransmitting the code word from the first routing element to the second routing element; upon receiving the code word at the second routing element, stopping the counter; and determining an amount of time required for the code word to travel from the second routing element to the first routing element and from the first routing element to the second routing element based on the value of the counter, wherein the amount of time required for the code word to travel from the second routing element to the first routing element and then back to the second routing element is proportional to the length of the connection between the first routing element and the second routing element. --
References Cited (Backward Citations)
USPTO Annuity & Maintenance Windows
| Annuity Stage | Window Opens | Payment Deadline | Surcharge Period Until | Estimated Fee | Status |
|---|---|---|---|---|---|
| 3.5 Years (Year 4) | 2003-01-17 | 2003-07-19 | 2004-01-18 | $2000.00 | Window Closed / Lapsed |
| 7.5 Years (Year 8) | 2007-01-17 | 2007-07-19 | 2008-01-18 | $3760.00 | Window Closed / Lapsed |
| 11.5 Years (Year 12) | 2011-01-17 | 2011-07-19 | 2012-01-18 | $7700.00 | Window Closed / Lapsed |