Apparatus and method for providing optimal adaptive forward error correction in data communications
First Claim
1. A method for adaptive forward error correction in a communication channel conveying code words including an information portion and an error correcting portion, said method comprising:
- (a) monitoring a channel parameter to form a monitored parameter;
(b) determining a threshold value of the monitored parameter;
(c) comparing the monitored parameter with the threshold value;
(d) when the monitored parameter has at least a first variance to the threshold value, increasing the forward error correcting power; and
(e) when the monitored parameter has at least a second variance to the threshold value, reducing the forward error correcting power.
15 Assignments
0 Petitions
Accused Products
Abstract
An adaptive and dynamic forward error correction scheme for a communication channel is disclosed. The method and apparatus calculates the actual bit error rate for comparison with a target bit error rate. When a channel is performing better than required by the performance specifications, the forward error correction power can be reduced to provide greater throughput. If the calculated actual bit error rate is greater than the target bit error rate, then the forward error correction power is increased in an attempt to lower the calculated bit error rate. A feedback loop is employed to continually calculate revised bit error rates as the forward error correction power is increased or decreased.
-
Citations
28 Claims
-
1. A method for adaptive forward error correction in a communication channel conveying code words including an information portion and an error correcting portion, said method comprising:
-
(a) monitoring a channel parameter to form a monitored parameter;
(b) determining a threshold value of the monitored parameter;
(c) comparing the monitored parameter with the threshold value;
(d) when the monitored parameter has at least a first variance to the threshold value, increasing the forward error correcting power; and
(e) when the monitored parameter has at least a second variance to the threshold value, reducing the forward error correcting power. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for adaptive forward error correction in a communications channel conveying code words including an information portion and an error correcting portion, wherein a maximum latency value and a maximum overhead value are established for the communications channel, said method comprising:
-
(a) monitoring a channel parameter to form a monitored parameter;
(b) determining a threshold value of the monitored parameter;
(c) comparing the monitored parameter with the threshold value;
(d) when the monitored parameter has a second predetermined relation to the threshold value, determining whether increasing the code word length by a first predetermined value will cause the latency time to exceed the maximum latency value;
(e) if increasing the code word length by the first predetermined value will not cause the latency time to exceed the maximum latency value, increasing the code word length by the first predetermined value;
(f) if increasing the code word length by the first predetermined value will cause the latency time to exceed the maximum latency value, determining whether the error correcting portion length is zero;
(g) if the error correcting portion length is not equal to zero, decreasing the error correcting portion length by a second predetermined value;
(h) when the monitored parameter has a first predetermined relation to the threshold value, determining whether increasing the error correcting portion length by a third predetermined value will cause the latency time to exceed the maximum latency value or will cause the overhead value to exceed the maximum overhead value;
(i) if increasing the error correcting portion length by the third predetermined value will not cause the latency time to exceed the maximum latency value and will not cause the overhead value to exceed the maximum overhead value, increasing the error correcting portion length by the third predetermined value;
(j) if increasing the error correcting portion length will cause the latency time to exceed the maximum latency value or will cause the overhead value to exceed the maximum overhead value, determining if a reduction in the code word length by a fourth predetermined value will cause the overhead value to exceed the maximum overhead value;
(k) if the reduction in the code word length by the fourth predetermined value will not cause the overhead value to exceed the maximum overhead value, decreasing the code word length by the fourth predetermined value; and
(l) if the reduction in the code word length by the fourth predetermined value will cause the overhead value to exceed the maximum overhead value, determining that the method cannot achieve the threshold value. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A method for adaptive forward error correction in a communications channel conveying code words including an information portion and an error correcting portion representing a forward error correcting power, wherein a maximum data processing constraint value is established for the communications channel, said method comprising:
-
(a) monitoring a channel parameter to form a monitored parameter;
(b) determining a threshold value of the monitored parameter;
(c) comparing the monitored parameter with the threshold value; and
(d) increasing the information portion length and/or decreasing the error correcting portion length when the monitored parameter has a second predetermined relation to the threshold value, and when increasing the information portion length and/or decreasing the error correcting portion length will not cause the data processing constraint value to be exceeded. - View Dependent Claims (20)
-
-
21. A method for adaptive forward error correction in a communications channel conveying code words including an information portion and an error correcting portion representing a forward error correcting power, wherein a maximum data processing constraint value is established for the communications channel, said method comprising:
-
(a) monitoring a channel parameter to form a monitored parameter;
(b) determining a threshold value of the monitored parameter;
(c) comparing the monitored parameter with the threshold value; and
(d) decreasing the information portion length and/or increasing the error correcting portion length when the monitored parameter has a first predetermined relation to the threshold value, and when decreasing the information portion length and/or increasing the error correcting portion length will not cause the data processing constraint value to be exceeded. - View Dependent Claims (22)
-
-
23. A method for adaptive forward error correction in a communications channel conveying code words including an information portion and an error correcting portion, wherein a maximum data processing constraint value is established for the communications channel, said method comprising:
-
(a) monitoring a channel parameter to form a monitored parameter;
(b) determining a threshold value of the monitored parameter;
(c) comparing the monitored parameter with the threshold value; and
(d) increasing the information portion length and/or decreasing the error correcting portion length when the monitored parameter has a second predetermined relation to the threshold value, and when increasing the information portion length and/or decreasing the error correcting portion length will not cause the data processing constraint value to be exceeded. - View Dependent Claims (24)
-
-
25. A method for adaptive forward error correction in a communications channel conveying code words including an information portion and an error correcting portion, wherein a maximum data processing constraint value is established for the communications channel, said method comprising:
-
(a) monitoring a channel parameter to form a monitored parameter;
(b) determining a threshold value of the monitored parameter;
(c) comparing the monitored parameter with the threshold value; and
(d) decreasing the information portion length and/or increasing the error correcting portion length when the monitored parameter has a first predetermined relation to the threshold value, and when decreasing the information portion length and/or increasing the error correcting portion length will not cause the data processing constraint value to be exceeded. - View Dependent Claims (26)
-
-
27. An apparatus for providing adaptive forward error correction in a communication channel conveying code words including an information portion and an error correcting portion, said apparatus comprising:
-
a first module for monitoring a channel parameter to form a monitored parameter;
a second module for determining a threshold value of the monitored parameter;
a comparator for comparing the monitored parameter with the threshold value;
when the monitored parameter has at least a first variance to the threshold value, a third module for increasing the forward error correcting power; and
when the monitored parameter has at least a second variance to the threshold value, a fourth module for reducing the forward error correcting power.
-
-
28. A computer program product comprising a computer-usable medium having a computer-readable code therein for providing adaptive forward error correction wherein a maximum latency value and a maximum overhead value are established for the communications channel, the computer-readable code in the article of manufacture comprising:
-
(a) a computer-readable program code module for monitoring a channel parameter to form a monitored parameter;
(b) a computer-readable program code module for determining a threshold value of the monitored parameter;
(c) a computer-readable program code module for comparing the monitored parameter with the threshold value;
(d) when the monitored parameter has a second predetermined relation to the threshold value, a computer-readable program code module for determining whether increasing the code word length will cause the maximum latency value to be exceeded;
(e) a computer-readable program code module for increasing the code word length if the increased code word length does not create a latency time in excess of the maximum latency value;
(f) if the increase in the code word length results in a latency time in excess of the maximum latency value, a computer-readable program code module for determining whether the error correcting portion length is zero;
(g) if the error correcting code length is not zero, a computer-readable program code module for decreasing the error correcting portion length;
(h) when the monitored parameter has a first predetermined relation to the threshold value, a computer-readable program code module for determining whether an increase in the error correcting portion length results in a latency time in excess of the maximum latency value or results in an overhead value in excess of the maximum overhead value;
(i) if an increase in the error correcting portion length does not result in a latency time in excess of the maximum latency value and does not result in an overhead value in excess of the maximum overhead value, a computer-readable program code module for increasing the error correcting portion length;
(j) if an increase in the error correcting portion of the code word results in a latency time in excess of the maximum latency value or results in an overhead value in excess of the overhead value, a computer-readable program code module for determining if a reduction in the total code word length results in an overhead value in excess of the maximum overhead value;
(k) if the reduction in the code word length does not result in an overhead value in excess of the maximum overhead value, a computer-readable program code module for decreasing the code word length; and
(l) if the reduction in the code word length would result in an overhead value in excess of the maximum overhead value, a computer-readable program code module for determining that the method cannot achieve the threshold value.
-
Specification