System and method for clock correlated data flow in a multi-processor communication system
First Claim
1. A communication system, comprising:
- at least one remote unit;
a satellite in operable communication with the at least one remote unit;
a hub station in operable communication with the satellite, the hub station comprising;
a plurality of channel buffers for storing databits received from the satellite at the hub station, each of the channel buffers having an associated last-processed time; and
a plurality of processors, wherein each of the processors respectively analyzes each of the plurality of channel buffers, and wherein each of the plurality of processors determines with respect to a currently selected channel buffer whether the currently selected channel buffer has sufficient amount of databits to process, the determining comprising;
determining a current time, and determining whether the difference in time between the current time and the last-processed time associated with the currently selected channel buffer is greater than a threshold, and wherein each of the processors processes the databits upon the determination that the currently selected channel buffer for the processor has a sufficient amount of databits to process, and wherein the each of the processors determines whether the databits have been processed by another one of the processors by performing a compare/exchange command with respect to the last-processed time that is associated with the selected channel buffer.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for processing multiple channel buffers in a communication system using multiple processors in a hub station. One embodiment of the invention includes one or more remote units, a satellite in operable communication with the remote units, and a hub station in operable communication with the satellite. The hub station includes a plurality of channel buffers for storing data that is transmitted from the satellite and a plurality of processors. Each of the processors respectively processes in sequence each of the plurality of channel buffers, and each of the plurality of processors determines with respect to a currently selected channel whether the channel has a sufficient amount of databits to process. The determining step includes determining a current time, determining a previous point in time in which the databits have been processed, and determining whether the difference in time between the current time and the previous point in time is above a predefined threshold. Each of the processors process the databits upon the determination that their respective channel has a sufficient amount of databits to process. After determining that a sufficient amount of databits are present, each of the processors atomically updates a last processed time entry that is maintained in a table by the hub station with respect to each of the channel buffers, thereby indicating to the other processors that the databits of that particular channel have been processed.
102 Citations
11 Claims
-
1. A communication system, comprising:
-
at least one remote unit;
a satellite in operable communication with the at least one remote unit;
a hub station in operable communication with the satellite, the hub station comprising;
a plurality of channel buffers for storing databits received from the satellite at the hub station, each of the channel buffers having an associated last-processed time; and
a plurality of processors, wherein each of the processors respectively analyzes each of the plurality of channel buffers, and wherein each of the plurality of processors determines with respect to a currently selected channel buffer whether the currently selected channel buffer has sufficient amount of databits to process, the determining comprising;
determining a current time, and determining whether the difference in time between the current time and the last-processed time associated with the currently selected channel buffer is greater than a threshold, and wherein each of the processors processes the databits upon the determination that the currently selected channel buffer for the processor has a sufficient amount of databits to process, and wherein the each of the processors determines whether the databits have been processed by another one of the processors by performing a compare/exchange command with respect to the last-processed time that is associated with the selected channel buffer. - View Dependent Claims (2)
-
-
3. A method of identifying one or more databits for processing in a communication system, the method comprising:
-
successively storing one or more databits in a channel buffer, wherein the databits collectively comprise a data stream;
determining a data rate for the data stream;
determining a start location in the channel buffer, wherein the determining is based at least in part upon the data rate, a last-processed time that is associated with the channel buffer, and the size of the channel buffer; and
determining an end location in the channel buffer. - View Dependent Claims (4, 5)
-
-
6. A method of determining the availability of one or more databits for processing, the method comprising:
-
successively receiving one or more databits; and
periodically analyzing the databits, the act of periodically analyzing comprising;
determining a current time, determining a previous point in time at which the databits were processed, and determining whether the difference in time between the current time and the previous point in time is above a predefined threshold. - View Dependent Claims (7)
-
-
8. A system for identifying one or more databits for processing in a communication system, the system comprising:
-
means for successively storing one or more databits in a channel buffer, wherein the databits collectively comprise a data stream;
means for determining a data rate for the data stream;
means for determining a start location in the channel buffer, wherein to determine the start location the determining means uses at least in part upon the data rate, a last-processed time that is associated with the channel buffer, and the size of the channel buffer; and
means for determining an end location in the channel buffer. - View Dependent Claims (9)
-
-
10. A system for determining the availability of one or more databits for processing, the system comprising:
-
means for successively receiving one or more databits; and
means for periodically analyzing the databits, the periodically analyzing means comprising;
means for determining a current time, means for determining a previous point in time in which the databits have been processed, and means for determining whether the difference in time between the current time and the previous point in time is above a predefined threshold.
-
-
11. A communication system, comprising:
-
a plurality of channel buffers for storing data bits; and
a plurality of processors which each respectively analyzes in sequence each of the plurality of channel buffers, each of the plurality of processors determining with respect to a selected one of the channel buffers whether the channel buffer has a sufficient amount of databits to process, the determining comprising;
determining a current time;
determining a previous point in time in which the databits have been processed; and
determining whether the difference in time between the current time and the previous point in time is above a predefined threshold.
-
Specification