Crc counter normalization
Abstract
The ability to accurately and efficiently calculate and report communication errors is becoming more important than ever in today's communications environment More specifically calculating and reporting CRC anomalies in a consistent manner across a plurality of communications connections in a network is crucial to accurate error reporting. Through a normalization technique applied to a CRC computation period (e.g., the PERp value), accurate error identification and reporting for each individual connection can be achieved.

Term
Term ended
Expired 23 September 2025, 1 year ago.
- Priority
- Filed
- Granted
- Expired
- Today
14 claims: 2 independent, 12 dependent
- 1A transceiver operable to:determine a first value for a CRC computation period (PERp) based on a first communication parameter value;normalize a CRC anomaly counter based on the first value for PERp when the first value of the PERp is less than 15 ms;increment the CRC anomaly counter by 1 when the first value of the PERp is greater than or equal to 15 ms;and declare a Severely Errored Second when there are more than 18 CRC anomalies in a second.
- 8A method in a transceiver apparatus, the method comprising:determining a first value for a CRC computation period (PERp) based on a first communication parameter value;normalizing a CRC anomaly counter based on the first value for PERp when the first value of the PERp is less than 15 ms;incrementing the CRC anomaly counter by 1 when the first value of the PERp is greater than or equal to 15 ms;and declaring a Severely Errored Second when there are more than 18 CRC anomalies in a second.
Independent claims2
139 paragraphs in 4 sections, as filed
CRC COUNTER NORMALIZATION
Background
Field of the Invention [0002] This invention generally relates to communication systems. More particularly, an exemplary embodiment of this invention relates to anomaly detection in communications systems.
Description of Related Art [0003] Cyclic Redundancy Checksum (CRC) error detection is a common method of detecting errors in a data stream transmitted over a communications channel. ITU standard G.992.3, describes CRC operations for ADSL systems in section 7.7.1.2. As discussed in G.992.3, the transmitter computes the transmitter CRC bits based on the transmitted bit stream and sends the CRC bits to the receiver. The receiver also computes the CRC bits based on the received bit stream and compares the locally computed CRC bits to the received CRC bits that were sent from the transmitter. If the receiver and transmitter CRC bits are identical, then the CRC computation indicates that there are no errors in the received bit stream. If however the received and transmitted CRC bits are not identical, then the CRC computation
CA 3023907 2018-11-13 indicates that there are errors in the received bit stream.
(0004) DSL systems, and communications systems in general, use CRC errors, which are also known as anomalies, to diagnose and detect problematic service conditions. These CRC anomalies are typically computed, counted and reported based on some fundamental assumptions on how often the CRCs are computed. For example, in an ADSL systems, such as those specified in G.992.3, Severely Errored Seconds (SESs) are defined as 18 or more CRC anomalies in a 1-second interval. This corresponds to approximately 30 percent of computed CRCs being in error if the CRC is computed every 17 ms. The G.992.3 ADSL standard requires that the CRC is computed every 15 to 20 msecs. In ADSL 2 and VDSL 2 systems, the period of the CRC computation is called the period of the overhead channel (PERp). The G.992.3 standard requires that:
\5msi PERp&2Ωπα.
Summary (0005] Digital subscriber line service providers use CRC anomaly reporting as a way to diagnose and detect problematic service conditions* For example, an ADSL service provider may use SESs as a way to detect an ADSL connection that is experiencing problems. For example, an ADSL service provider may specify that if an ADSL subscriber is experiencing more than 30 SESs in a 1-minine period, the ADSL connection needs to be repaired. For this reason, it is important that an SES is reported in a consistent manner across all connections in the service provider network.
(0006] As discussed above, if an ADSL system is determining CRCs every 17 ms (the PERp as required by the standard). Severely Errored Seconds (SESs) are defined as 18 or
CA 3023907 2018-11-13 more CRC anomalies in a 1-second interval, then an SES will occur whenever approximately 30 percent of the computed CRCs are in error in a 1 second interval. But if, for example. CRCs are computed every 2 ms. and a SES is still defined as 18 or more CRC anomalies in a I-second interval, then 18 CRC anomalies will correspond to only 3.6 percent of a computed CRC being in error. In this case, the service provider may receive a repair alarm and dispatch a network technician to 6x a connection that is only experiencing a small number of errors.
[0007] Most communications systems specify CRC operations in a manner that restricts the CRC computation to be witbin a specified and bounded repetition period or rate in order to provide consistent detection and diagnostic capabilities across al! connections, such as DSL subscriber connections, in a network.
[0008] New designs and innovations in communications systems are making it more difficult to ensure that CRC computations are bounded in such a manner. For example, G.992.3 specifies Seamless Rate Adaptation (SRA) and Dynamic Rale Repartition (DRR) that allow an ADSL system to make seamless changes in data rates on-line. However, SRA and DRR modify the data rate without changing the framing parameters. As a result, the PERp will change in proportion to the data rate change.
[0009] For example, a data rate increase of 10 percent will cause the PERp to decrease by 10 percent. A problem is that since PERp is only allowed to vary between 15 and 20 ms, SR As and DRRs arc limited to small data rate changes, usually within 10 to 15 percent.
CA 3023907 2018-11-13 (0010) It is often desirable to have large data rate changes. Large data rale changes typically result in PERp values that are outside of the range of 10-20 ms. In this case, as discussed above, ADSL service providers will encounter problems with the diagnostic procedures which are based on CRC anomalies to detect problematic connections.
[0011 ] New communications systems, such as VDSL, VDSL2, and other higherspeed wired and wireless communications systems are specifying data rates that occupy a very large range, starting, for example, as low as 500 kbps and going as high as 100 mbps or more. With ranges this large, it is difficult to design a framing method for all possible data rates that includes a CRC procedure that restricts the CRC computation to be within a specified and bounded repetition period.
(0012] Part of this difficulty is attributable to the fact that the accuracy of the error detection of the CRC is correlated to the number of bits in the CRC computation period (the accuracy of the CRC error detection decreases as the number of bits in the CRC computation period increases). For example, if the CRC computation is done every 20 ms, and the data rate is I mbps, there will be 20,000 bits in every CRC computation period.
[00131 However, if the data rate is 100 mbps, and the CRC computation period is 20 ms, then there will be 20 million bits in every CRC computation period. Clearly, the CRC error detection capability will be decreased in the latter case. In genera], under normal operating conditions, the one octet CRC used in DSL systems provides adequate error detection if the CRC computation period contains less than 100,000 bits.
CA 3023907 2018-11-13 [0013a] In accordance'with an aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization method comprising: normalizing a CRC anomaly counter based on a CRC computation period (PERp), wherein the normalizing of the CRC anomaly counter comprises incrementing the CRC anomaly counter by a value of M wherein the value M is equal to PERp/K, where K is a positive integer and corresponds to a value equal to an expected period of CRC computations. (0013b] In accordance with another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization method comprising: computing, in a first transceiver, a CRC octet based on a transmitted bit stream; transmitting the CRC octet from the first transceiver to a second transceiver; computing, in the second transceiver, a local CRC octet based on a received bit stream; comparing the local CRC octet to a received CRC octet; identifying a CRC anomaly when the local CRC octet is not identical to the received CRC octet; and normalizing the CRC anomaly counter based on a value for a CRC computation period (PERp).
(0013c] In another aspect of the present invention, there is provided a transceiver operable to normalize a Cyclic Redundancy Checksum (CRC) anomaly counter based on a CRC computation period (PERp), wherein the normalizing of the CRC anomaly counter comprises incrementing the CRC anomaly counter by a value of M wherein the value M is equal to PERp/K, where K is a positive integer and corresponds to a value equal to an expected period of CRC computations.
(0013d| In another aspect of the present invention, there is provided a Cyclic Redundancy
Checksum (CRC) anomaly counter normalization system comprising:
a CRC bits computation module in a first transceiver capable of computing a CRC octet based on a transmitted bit stream; the first transceiver capable of transmitting the CRC octet to a second transceiver; a CRC bits computation module in the second transceiver capable of computing a local CRC octet based on a received bit stream; a CRC bits comparison module capable of comparing the local CRC octet to a received CRC octet; a CRC enoi module capable of identifying a CRC anomaly when the local CRC octet is not identical to the received CRC octet; and a normalization module capable of normalizing a CRC anomaly counter based on a value for a CRC computation period (PERp).
CA 3023907 2018-11-13 [0013e] In yet another aspect of the present invention, there is provided a Cyclic
Redundancy Checksum (CRC) anomaly counter normalization method comprising: determining a CRC computation period based on at least one communication parameter; and transmitting an indication of a CRC error, the CRC error being counted and normalized by a CRC anomaly counter based on the CRC computation period, wherein the normalizing of the CRC anomaly counter comprises incrementing the CRC anomaly counter by a value of M wherein the value M is equal to PERp/K, where K is a positive integer and corresponds to a value equal to an expected period of CRC computations. [0013f] In yet another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization method comprising: receiving an indication of one or more CRC errors; determining a CRC computation period that is based on at least one communication parameter; and updating a CRC anomaly counter based on the CRC computation period, wherein the normalizing of the CRC anomaly counter comprises incrementing the CRC anomaly counter by a value of M wherein the value M is equal to PERp/K, where K is a positive integer and corresponds to a value equal to an expected period of CRC computations. [0013g] In yet another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization system comprising: means for normalizing the CRC anomaly counter based on a CRC computation period (PERp), wherein the normalizing of the CRC anomaly counter comprises incrementing the CRC anomaly counter by a value of M wherein the value M is equal to PERp/K, where K is a positive integer and corresponds to a value equal to an expected period of CRC computations. [001311] In yet another aspect of the present invention, there is provided a non-transitory computer readable information storage media having stored thereon instructions, that if executed by a processor, cause to be performed a method for Cyclic Redundancy Checksum (CRC) anomaly counter normalization comprising: computing, in a first
CA 3023907 2018-11-13 transceiver, a CRC octet based on a transmitted bit stream; transmitting the CRC octet from the first transceiver to a second transceiver; computing, in the second transceiver, a local CRC octet based on a received bit stream; comparing the local CRC octet to a received CRC octet; identifying a CRC anomaly when the local CRC octet is not identical to the received CRC octet; and normalizing the CRC anomaly counter based on a value for a CRC computation period (PERp).
[0013i| In yet another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization system comprising: means for determining a CRC computation period based on at least one communication parameter; and means for forwarding an indication of a CRC error, the CRC error being counted and normalized by a CRC anomaly counter based on the CRC computation period, wherein the normalizing of the CRC anomaly counter comprises incrementing the CRC anomaly counter by a value of M wherein the value M is equal to PERp/K, where K is a positive integer and corresponds to a value equal to an expected period of CRC computations.
[0013j] In yet another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization system comprising: means for receiving an indication of one or more CRC errors; means for receiving a CRC computation period that is based on at least one communication parameter; and means for updating a CRC anomaly counter based on the CRC computation period, wherein the normalizing of the CRC anomaly counter comprises incrementing the CRC anomaly counter by a value of M wherein the value M is equal to PERp/K, where K is a positive integer and corresponds to a value equal to an expected period of CRC computations.
[0013k] In another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization method comprising: normalizing the CRC anomaly counter based on a CRC computation period (PERp), wherein the CRC computations are combined in groups of ceiling CRC computations where a number of computations included in each group is calculated from dividing a integer K by PERp, a normalized CRC anomaly counter is calculated from a number of the groups which contain at least one CRC anomaly and the integer K corresponds to a value equal to an expected period of CRC computations.
CA 3023907 2018-11-13 [00131] In another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization module designed to normalize a CRC anomaly counter based on a CRC computation period (PERp), wherein the CRC computations are combined in groups of ceiling CRC computations where a number of computations included in each group is calculated from dividing a integer K by PERp, a normalized CRC anomaly counter is calculated from a number of the groups which contain at least one CRC anomaly and the integer K coresponds to a value equal to an expected period of CRC computations.
[0013m] In another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization system comprising: means for normalizing the CRC anomaly counter based on a CRC computation period (PERp), wherein the CRC computations are combined in groups of ceiling CRC computations where a number of computations included in each group is calculated from dividing a integer K by PERp, a normalized CRC anomaly counter is calculated from a number of the groups which contain at least one CRC anomaly and the integer K corresponds to a value equal to an expected period of CRC computations.
[0013n] There is also disclosed a CRC anomaly counter normalization method comprising computing a local CRC octet based on a received bit stream; comparing the local CRC octet to a received CRC octet; identifying a CRC anomaly when the local CRC octet is not identical to the received CRC octet; and normalizing a CRC anomaly counter based on a value for a CRC computation period (PERp).
[0013o] There is also disclosed a CRC anomaly counter normalization system designed to normalize a CRC anomaly counter based on a value for a CRC computation period (PERp). comprising a CRC bit computation module designed to determine a local CRC octet based on a received bit stream; a CRC bit comparison module designed to compare the local CRC octet to a received CRC octet; and a CRC error reporting module designed to identify a CRC anomaly when the local CRC octet is not identical to the received CRC octet.
[0013p] There is also disclosed a CRC anomaly counter normalization method comprising determining a value for a CRC computation period based on at least one communication
CA 3023907 2018-11-13 parameter, and forwarding an indication of a CRC error to a CRC error counter in a transceiver, the CRC error being counted and normalized by the CRC anomaly counter based on the value.
[0013q] There is also disclosed a CRC anomaly counter normalization method comprising receiving an indication of one or more CRC errors; receiving a value for a CRC computation period that is based on at least one communication parameter; and updating a CRC anomaly counter in a transceiver based on the value.
[0013r] There is also disclosed a CRC anomaly counter normalization system comprising means for computing a local CRC octet based on a received bit stream; means for comparing the local CRC octet to a received CRC octet; means for identifying a CRC anomaly when the local CRC octet is not identical to the received CRC octet; and means for normalizing a CRC anomaly counter based on a value for a CRC computation period (PERp).
[0013s] There is also disclosed a CRC anomaly counter normalization system comprising means for determining a value for a CRC computation period based on at least one communication parameter; and means for forwarding an indication of a CRC error to an error counter in a transceiver, the CRC error being counted and normalized by the CRC anomaly counter based on the value.
[0013t] There is also disclosed a CRC anomaly counter normalization system comprising means for receiving an indication of one or more CRC errors; means for receiving a value for a CRC computation period that is based on at least one communication parameter; and means for updating a CRC anomaly counter in a transceiver based on the value.
|0013u] There is also disclosed an information storage media having instructions stored thereon that when executed perform a CRC anomaly counter normalization, comprising instruction that compute a local CRC octet based on a received bit stream; instructions that compare the local CRC octet to a received CRC octet; instructions that identify a CRC anomaly when the local CRC octet is not identical to the received CRC octet; and instructions that normalize a CRC anomaly counter based on a value for a CRC computation period (PERp).
]0013v] There is also disclosed an information storage media having instructions stored thereon that when executed perform a CRC anomaly counter normalization, comprising instructions that 8a
CA 3023907 2018-11-13 determine a value for a CRC computation period based on at least one communication parameter; and instructions that forward an indication of .a CRC error to an error counter in a transceiver, the CRC error being counted and normalized by the CRC anomaly counter based on the value.
(0013w] There is also disclosed an information storage media having instructions stored thereon that when executed perform a CRC anomaly counter normalization, comprising instructions that receive an indication of one or more CRC errors; instructions that receive a value for a CRC computation period that is based on at least one communication parameter; and instructions that update a CRC anomaly counter in a transceiver based on the value.
[0013x] In another aspect of the present invention, there is provided a Cyclic Redundancy Checksum (CRC) anomaly counter normalization method comprising: normalizing the CRC anomaly counter based on a ratio of a value for a CRC computation period (PERp) and an integer K, wherein the integer K corresponds to a value equal to an expected period of CRC computations.
[0013y] In another aspect of the present invention, there is provided an apparatus comprising: a transceiver operable to: normalize a CRC anomaly counter based on a value for a CRC computation period (PERp) when the value of the PERp is less than 15 ms; increment the CRC anomaly counter by 1 when the value of the PERp is greater than or equal to 15 ms; and declare a Severely Errored Second when there are more than 18 CRC anomalies in a second.
(00132] In another aspect of the present invention, there is provided an apparatus comprising: a transceiver operable to: normalize a CRC anomaly counter based on a value for a CRC computation period (PERp) when the value of the PERp is less than 15 ms or greater than 20 ms; increment the CRC anomaly counter by 1 when the value of the PERp is greater than or equal to 15 ms and less than or equal to 20 ms; and declare a Severely Errored Second when there are more than 18 CRC anomalies in a second.
[0013aa] In another aspect of the present invention, there is provided a method in an apparatus comprising a transceiver, the method comprising: normalizing a CRC anomaly counter based on a value for a CRC computation period (PERp) when the value of the PERp is less than 15 ms;
8b
CA 3023907 2018-11-13 incrementing the CRC anomaly counter by 1 when the value of the PERp is greater than or equal to 15 ms; and declaring a Severely Errored Second when there are more than 18 CRC anomalies in a second.
[0013bb] In another aspect of the present invention, there is provided a method in an apparatus comprising a transceiver, the method comprising: normalizing a CRC anomaly counter based on a value for a CRC computation period (PERp) when the value of the PERp is less than 15 ms or greater than 20 ms; incrementing the CRC anomaly counter by 1 when the value of the PERp is greater than or equal to 15 ms and less than or equal to 20 ms; and declaring a Severely Errored Second when there are more than 18 CRC anomalies in a second.
[0014] Embodiments disclosed herein also relate to calculating and reporting communication errors. More particularly, an exemplary embodiment disclosed herein relates to calculating and reporting CRC anomalies in a consistent manner for all communications connections in a network independent of data rate or the CRC computation period (e.g., the PERp value) of each individual connection.
[0015] Additional embodiments disclosed herein relate to handling CRC anomalies (errors) in such a manner that they are reported in a consistent way regardless of the data rate or the CRC computation. An exemplary embodiment disclosed herein defines a procedure for normalizing CRC anomaly counters based on an actual CRC computation period.
CA 3023907 2018-11-13 [0015a] In one aspect, there is provided a transceiver operable to: determine a first value for a CRC computation period (PERp) based on a first communication parameter value; normalize a CRC anomaly counter based on the first value for PERp when the first value of the PERp is less than 15 ms; increment the CRC anomaly counter by 1 when the first value of the PERp is greater than or equal to 15 ms; and declare a Severely Errored Second when there are more than 18 CRC anomalies in a second.
[0015b] The transceiver may be further operable to increment the CRC anomaly counter by PERp/15 when the first value of the PERp is less than 15 ms.
[0015c] The transceiver may be further operable to: determine a second value for the PERp based on a second communication parameter value, different than the first communication parameter value, wherein the first value for the PERp is different that the second value for the PERp; normalize a CRC anomaly counter based on the second value for PERp when the second value of the PERp is less than 15 ms; and declare a Severely Errored Second when there are more than 18 CRC anomalies in a second.
[0015d] The first communication parameter value may be a data rate parameter value, or a framing parameter value.
[0015e] The second communication parameter value may be a data rate parameter value, or a framing parameter value.
[0015f] In another aspect, there is provided a method in a transceiver apparatus, the method comprising: determining a first value for a CRC computation period (PERp) based on a first communication parameter value; normalizing a CRC anomaly counter based on the first value for PERp when the first value of the PERp is less than 15 ms; incrementing the CRC anomaly counter by 1 when the first value of the PERp is greater than or equal to 15 ms; and declaring a Severely Errored Second when there are more than 18 CRC anomalies in a second.
9a
CA 3023907 2018-11-13 [0015g] The CRC anomaly counter may increment by PERp/15 when the first value of the PERp is less than 15 ms.
[0015h] The method may further include determining a second value for the PERp based on a second communication parameter value, different than the first communication parameter value, wherein the first value for the PERp is different than the second value for the PERp; normalizing a CRC anomaly counter based on the second value for PERp when the second value of the PERp is less than 15 ms; and declaring a Severely Errored Second when there are more than 18 CRC anomalies in a second.
[0015·] The first communication parameter value may be a data rate parameter value, or a framing parameter value.
[0015j ] The second communication parameter value may be a data rate parameter value, or a framing parameter value.
9b
CA 3023907 2018-11-13 (0016] According to an additional exemplary embodiment disclosed herein, the CRC anomaly counter normalization procedure may normalize the CRC anomaly counter based on the current, or actual, PERp value.
[0017] According to an additional exemplary embodiment disclosed herein, CRC anomaly counter normalization procedures may be applied to a plurality of communications devices in a network based at least on a data rate.
[0018] According to an additional exemplary embodiment disclosed herein, different CRC anomaly counter normalization procedures may be applied to each of a plurality of communications devices in a network based at least on a data rate.
[0019] These and other features and advantages of this invention are described in, or are apparent from, the following description of the embodiments.
CA 3023907 2018-11-13
Brief Description of the Drawings |0020] The embodiments of the invention will be described in detail, with reference to the following figures, wherein:
(0021] Fig. 1 is a functional block diagram illustrating an exemplary communication system according to this invention;
(0022] Fig. 2 is a flowchart outlining an exemplary method for normalizing a CRC counter according to this invention.
(0023) Fig. 3 is a nowchan outlining in greater detail an exemplary method of CRC normalization according to this invention;
(0024] Fig. 4 is another exemplary embodiment for normalizing CRC normalization according to this invention; and (0025] Fig. 5 is a functional block diagram illustrating a second exemplary communication system according to this invention.
Detailed Description [0026] The exemplary embodiments of this invention will be described in relation to detecting errors in a wired and/or wireless communications environment. However, it should be appreciated, that in general, the systems and methods of this invention will work equally well for any type of communication system in any environment [0027] The exemplary systems and methods of this invention wii) be described in
CA 3023907 2018-11-13 relation to DSL modems and associated communication hardware, software and communication channels. However, to avoid unnecessarily obscuring the present invention, the following description omits well-known structures and devices that may be shown in block diagram form or otherwise summarized.
(0028] For purposes of explanation, numerous details are set forth in order to provide a thorough understanding of the present invention. It should be appreciated however that the present invention may be practiced in a variety of ways beyond the specific details set forth herein.
(0029) Furthermore, while the exemplary embodiments illustrated herein show the various components of the system colocated, it is to be appreciated that the various components of the system can be located at distant portions of a distributed network, such as a telecommunications network and/or the Internet, or within a dedicated secure, unsecured and/or encrypted system. Thus, it should be appreciated that the components of the system can be combined into one or more devices, such as a modem, or colocated on a particular node of a distributed network, such as a telecommunications network. As will be appreciated from the following description, and for reasons of computational efficiency, the components of the system can be arranged at any location within a distributed network without affecting the operation of the system. For example, the various components can be located in a Centra) Office (CO or ATU-C) modem, a Customer Premises Modem (CPE or ATU-R). a DSL management device, or some combination thereof. Similarly, on or more functional portions of the system could be distributed between a modem and an associated computing device.
CA 3023907 2018-11-13 (0030) Furthermore, it should be appreciated tliat the various links, including communications channel 5, connecting the elements can be wired or wireless links, or any combination thereof, or any other known or later developed element(s) that is capable of supplying and/or communicating data to and from the connected elements. The term module as used herein can refer to any known or later developed hardware, software, firmware, or combination thereof that is capable of performing the functionality associated with that clement. Furthermore, in order to simplify notation, throughout this specification the term PERp will be used to denote the CRC computation period. The terms determine, calculate and compote, and variations thereof, as used herein are used interchangeably and include any type of methodology, process, mathematical operation or technique.
[0031] An exemplary embodiment of die present invention relates to CRC normalization in asymmetric DSL (ADSL) service. However, and in general, it is to be appreciated that this methodology can be applied to any one or mote of a communications line or digital communications line.
[0032] Fig. I illustrates an exemplary embodiment of the communication system 10 according to this invention. It should be appreciated that numerous functional components of the transceivers have been omitted for clarity. However, it should be understood that either transceiver can also include the standard components found in typical communications dcvicc(s) in which the technology of the subject convention is implemented into.
[0033] The communications system 10 includes a transceiver 100 and a transceiver
CA 3023907 2018-11-13
200. The transceiver 100, acting as a transmitting transceiver, includes a CRC bits compulation module and a CRC bits transmission module. The two transceivers are interconnected by communications channel 5, which, as discussed above, can be one or more of a wire line and wireless communication channel. The transceiver 200 comprises a CRC bits computation module 210, a CRC bits reception module 220, a CRC bits comparison module 230, a CRC error counter and reporting module 240, a PERp determination module 250. a normalization module 260. a CRC grouping module 270 and a communication parameter module 280.
(0034) In accordance with an exemplary embodiment, a CRC anomaly is counted as: PERp/K normalized anomalies, where K is any positive integer. For example, if K=20 and the PERp=25. then each CRC anomaly is counted as 1.25 normalized CRC anomalies. In general, K will correspond to a value equal to an expected period of CRC computations based on which the system diagnostic information is reported. For example, in ADSL and VDSL systems, K can be equal to 15 ms since this corresponds to approximately 66 CRC computations per second. As discussed above, a Severely Errored Second is reported when there are more than 18 CRC anomalies in a second, which corresponds to approximately 30 percent of the CRC computations being in error.
[0035] Since CRC anomalies are typically reported as integer numbers, the accumulated CRC anomaly count can be rounded up to the next higher integer. For example, if the PERp=28, then each CRC anomaly is counted as 28/20=1.4 normalized CRC anomalies, if there 23 CRC anomalies delected over a period of time, the accumulated CRC anomaly counter could contain ceiling (23* 1.4) = ceiling (32.2) = 33
CA 3023907 2018-11-13 normalized CRC anomalies, where ceiling indicates a rounding in the upward direction.
[0036] In operation, the transceiver 100, which in this exemplary embodiment is operating as a transmitting transceiver or transmitting modem, computes CRC bits based on a transmitted bit stream. More specifically, a bit stream is transmitted from the transceiver 100 with the CRC bits computation module 110 determining CRC bits based on lhe transmitted bit stream. The number of CRC bits is usually 8(1 octed), however the number of bits can be varied based on, for example, the specific implementation of the invention. In conjunction with the CRC bits transmission module 120. the transceiver 100 sends the transmitted bit stream along with the corresponding computed CRC bits to transceiver 200 via communications channel 5.
{0037] The transceiver 200, which can also be referred to as the receiving transcei ver or receiving modem, receives the bit stream transmitted by the transceiver 100 and, with the cooperation of the CRC bits reception module 220, the CRC bits that were determined by the CRC bits computation module 110. Upon receipt of the bit stream, the CRC bits compulation module 210 also computes CRC bits (i.e., the local CRC bits) based on the received bit stream. Knowing the CRC bits deiennined by lhe CRC bit computation module 110. and the CRC bits computed by the CRC bit computation module 210. the CRC bits comparison module 230 performs a comparison between the two and, in conjunction with lhe CRC error counter and repotting module 240, computes and identifies a CRC anomaly when the local CRC bits are not identical to the received CRC bits determined in transceiver 100.
((1038] The PERp determination module 250 then determines a value for the period of
CA 3023907 2018-11-13 a CRC compulation (PERp). This period can be, for example, in seconds or in general any time period as appropriate for the particular communication environment. In conjunction with the normalization module 260, the CRC error counter and reporting module 240 is normalized based on the PERp value, where the normalizing of the CRC error counter 240 comprises incrementing the CRC error counter by a value of M wherein the value of M is:
PERp/K.
where K is a positive integer.
[0039] The communication parameter module 280 monitors communication parameters, such as one or more of data rate. Forward Error Correction, interleaving, framing, or in general any communication parameter, and triggers the determination of an updated value for the period of a CRC computation should one or more of these parameters change. This updated or second value for the period is then used by the CRC anomaly counter for subsequent CRC anomaly counts.
[0040] In a second exemplary embodiment, CRC computations are combined into groups of cei)ing(K/PERp) CRC computations and any number of CRC anomalies in a group is counted as only 1 normalized CRC anomaly, where K is * positive integer. In general, K will correspond to a value equal to an expected period of CRC computations based on which the system diagnostic information is reported in conjunction with the CRC error counter and reporting module 240. The CRC computations arc grouped in this manner in order to avoid over counting the CRC anomalies in that multiple CRC anomalies that occur within a specific lime period (e.g., K mt) may the need to be counted as a single normalized CRC anomaly.
CA 3023907 2018-11-13
Examples;
K=15 ms and PERd=10 ms: CRC compulations are combined in groups of ceiling( 15/10)=2 CRC computations. The first 2 CRC compulations are the first group, the second 2 CRC computations are the second group, and so on. One or more CRC anomalies in a group are counted as 1 normalized CRC anomaly.
K=25 and PERp=4 ms: CRC computations are combined in groups of ceiling( 15/4)=4 CRC computations. The first 4 CRC computations are the first group, the second 4 CRC computations are the second group, and so on. One or more CRC anomalies in a group are counted as 1 normalized CRC anomaly [0041] If correct CRC computations are denoted as *o and errored CRC computations (anomalies) as x, then for the following stream of CRC computations:
oooxxxooxoxoxxxxoooooxxooxoooooo if PERp=10, then 9 normalized CRC anomalies are counted:
OO OX XX oo xo ΧΟ XX XX oo oo ox xo ox 00 oo oo
If PERp=4, then 6 normalized CRC anomalies are counted:
ooox xxoo xoxo xxxx oooo oxxo oxoo oooo [0042] The CRC computations could also be combined in groups based on some metric other than ceiling(KZPERp). For example, f)oor(K/PERp) could be used or 2*ceiling(K/PERp). In general, groups of CRC computations can be based on the metric: N*ceiling(K/PERp)
CA 3023907 2018-11-13 where, N and K are positive integer values and where floor indicates a rounding in the downward direction.
(0043] Alternatively, and in addition, the CRC anomalies in a group could be counted as more than 1 normalized CRC anomaly. For example, 1 CRC anomaly in a group could be counted as I normalized CRC anomaly. 2-3 CRC anomalies in a group could be counted as 2 normalized CRC anomalies. 4-6 CRC anomalies in a group could be counted as 4 normalized CRC anomalies, and so on.
[0044] Alternatively, and in addition, a sliding window could be used when grouping the CRC computations.
* [0045] Alternatively, and in addition, the normalized CRC anomalies may be scaled again based on the time duration of the group of CRC computations. For example, if the PERp is equal to 14 ms, then the CRC computations are combined in groups of ceiling( 14/)5)=2 CRC computations. According to the method described above, 1 normalized CRC anomaly is counted for each group of 2 CRC computations containing at least I CRC anomaly. But combining the CRC computations into groups of 2 results in an effective CRC computation period of 2* 14=28 ms which exceeds the 20 ms requirement of the G.992.3 standard. In this case, as was done above when PERp>20 ms. the CRC anomalies can be scaled again to make the CRC anomaly counts more accurate. For example, the 1 normalized CRC anomaly can be further scaled and counted as (28)/20=1.4 normalized CRC anomalies.
[0046] More generally, if the time duration of the group of CRC computations
CA 3023907 2018-11-13 exceeds the required range (e.g. 20 ms for G.992.3 ADSL systems) then:
I normalized group CRC anomaly = [(time duration of CRC groupJ/K) normalized CRC anomalies where K is a positive integer. For example K could also take on the values of 15.17.5, or
20, which correspond to lower, middle and upper values in Ihe range of the PERp values in the G.992.3 standard.
[0047] Using the G.992.3 ADSL standard as an example the values of PERp for which the normalized CRC anomalies could be determined and further scaled (or normalized) to account for the fact that the time duration of the CRC group is longer than 20 ms:
]Q<PERtxl5 [0048] When the PERp value is greater than 10 and less than 15, each group of CRC computations will contain 2 CRC computations (as based on ceiling(l 5/PERp)). For this range of PERp values, the time duration of each CRC group will be longer than 20 ms.
For example, if PERp=12 ms. then the time duration of the CRC group will be 2*(12 [0049] ms)=24 ms. In this case, the normalized CRC computations can be further normalized or scaled by 2*PERp/K, where K is equal to an integer such as 15.17 or 20.
6.67<PERp<7.S [0050] When the PERp value is greater than 6.67 and less than 7.5, each group of CRC computations will contain 3 CRC computations (as based on ceiling(l 5/PERp)).
For this range of PERp values, the time duration of each CRC group will be longer than
CA 3023907 2018-11-13 ms. For example, if PERp=7 ms then the time duration of the CRC group will be 3*(7 ms)=21 ms. In this case the normalized CRC computations can be further normalized or scaled by 3*PERp/K, where K is equal to an integer such as 15,17 or 20.
[0051] As a result, in one exemplary embodiment of this invention, normalized CRC anomalies in an ADSL or VDSL2 system are further normalized (or scaled) if the PERp value is between 10 and 15 ms or between 6.67 and 73 ms.
(00S2) In another exemplary embodiment the PERp changes are based on a change in an on-liue data rate, for example due to an SRA or a DRR change. In this case, the CRC normalization procedure would be updated based on the new PERp value, where the new PERp value is associated with the updated data rate.
(0053) Fig. 2 outlines a high-level overview of an exemplary embodiment of CRC normalization according to this invention. In particular, control begins in S20Q and continues to step S210. In step S210, a CRC computation period (PERp), or updated CRC computation period (PERp), is received or determined. Then, in step S220, the CRC error counter is normalized based on the CRC computation period (PERp) or the updated CRC computation period (PERp). Control then continues to step S230 where the control sequence ends.
(0054) Fig. 3 outlines an exemplary embodiment of CRC normalization in greater detail. In particular, control begins in step S300 and continues to step S310. In step S310 the transceiver, acting as a transmitter, determines the CRC bits for a transmitted bit stream. The transceiver then sends the determined CRC bits and bit stream to the receiver
CA 3023907 2018-11-13 in step S320.
[0055] In step S33O. another transceiver, acting in its receiving capacity, receives the determined CRC bits and bit stream. Next, in step S340, CRC hits are determined for the received bit stream (local CRC bits). Next, in step S350, the local CRC bits ate compared to the CRC bits determined and forwarded by the transmitter. Control then continues to step S360.
[0056] In step S36O, the CRC computation period is determined. Next, in step S370 the CRC anomaly counter is normalized based on the CRC computation period (PERp). Control then continues to step S38O.
[0057] In step S380, a determination is made whether CRC errors or anomalies arc present. If CRC errors arc present, control continues to step S390 otherwise control jumps to step S395.
[0058] In step S39O, the CRC error count is generated and an indicator of severely errored seconds reported, if appropriate. In addition to the reporting of severely enrorcd seconds, it should be appreciated that alternative action could also be taken upon the determination of CRC errors. For example, Errored Seconds (ES) could be reported, where an errored second is typically defined as a second in which there is one or more CRC error events. Alternatively, CRC errors can be compiled over periods of time other than seconds, such 3S minutes, hours or sub-second intervals.
[0059] In step S395, a determination is made whether there has been a change in
CA 3023907 2018-11-13 communication parameters, if there has been a change in one or more communication parameters, control jumps back to step S300 and lhe process repeated where a second or updated CRC computation period is determined in step S360. If there has not been a change in one or more communications parameters, control continues to step S399 where lhe control sequence ends.
[0060] Fig. 4 outlines another exemplary embodiment of CRC normalization according to this invention. In particular, control begins in step S400 and continues to step S410. In step S410 the transceiver, acting its capacity as a transmitter, determines the CRC bits for a transmitted bit stream. The transceiver then sends the determined CRC bits and bit stream to the receiver in step S42O.
[0061] In step S430, another transceiver, acting in its receiving capacity, receives the determined CRC bits and bit stream. Next, in step S440, CRC bits are determined for the received bit stream (local CRC bits). Next, in step S450, the local CRC bits are compared to the CRC bits determined and forwarded by the transmitter. Control then continues to step S460.
[0062] In step S460, the CRC anomalies are grouped. Next, in group S470 a count is performed with control continuing in step S480. In step S480, a determination is made whether severely errored seconds are present. If severely errored seconds are present, control continues to step S490.
[0063] In step S49O, an indicator of severely errored seconds is generated and, for example, forwarded to an appropriate destination or an action triggered.
CA 3023907 2018-11-13 [0064] In sup S495, a determination is made whether there has been a change in communication parameters. If there has been a change in one or more communication parameters, control jumps back to step S400 and the process repeated where an updated grouping is performed in step S460. If there has not been a change in one or more communications parameters, control continues to step S500 where the control sequence ends.
[0065] It should be appreciated that while certain functionality described herein is illustratively performed in one or more of the transceiver 100 and transceiver 200 that some or aJI of the steps can be performed in any apparatus that may or may not be colocated with one or more of the transceiver 100 and transceiver 200. For example, the functionality performed by tlic PERp determination module and normalization module can be outsourced to another module with the normalization value forwarded back to and applied to the CRC error counter and reporting module 240. Moreover, the sequences of events described herein are for illustrative purposes only and may also be rearranged as appropriate.
(0066] More particularly. Fig. 5 illustrates an exemplary embodiment of a CRC normalization management system. As with the communication system 10, the CRC normalization management system includes one or more transceivers 100 each connected, via a communications channel, to the one or more transceivers 300. Each of the transceivers 300 are in communication with the CRC management module 500. Tire CRC management module 500 includes a PERp determination module 510. a normalization and/or grouping module 520 and a CRC error counter and reporting
CA 3023907 2018-11-13 module 530. The CRC management module 500 at least allows normalization and/or grouping of one or more CRC error counts from a centralized location. For example, the CRC bits comparison modules 550 forward and indicator of a CRC errors) to lhe CRC management module 500. The transceiver 300 can also determine and forward a value for the period of a CRC computation (PERp) with the cooperation of the PERp determination module 540. The management module, if needed, and with the cooperation of the PERp determination module 510, can also determine a value for the period of a CRC computation (PERp) for each of the one or more transceivers 300.
(0067) Having received a report of one or more errors from the one or more CRC bits comparison modules 550. the normalization/grouping module updates the CRC error counter and reporting module 530 based on this value. In that each transceiver could be operating under different communication parameters, the values used to update the CRC error counter 550 could be transceiver specific, applied to a portion of the transceivers or Io all transceivers. The CRC error counter and reporting module 530 could then output, as discussed above, a normalized CRC error count. For example, an indicator of severely errored seconds could be generated and, for example, forwarded to an appropriate destination or an action triggered.
(0068] The above-described system can be implemented on wired and/or wireless telecommunications devices, such a modem, a multicarrier modem, a DSL modem, an ADSL modem, an XDSL modem, a VDSL modem, a linecard, test equipment, a multicarrier transceiver, a wired and/or wireless wide/local area network system, a satellite communication system, a modem equipped with diagnostic capabilities, or the like, or on a separate programmed general purpose computer having a communications
CA 3023907 2018-11-13 device or in conjunction with any of the following communications protocols: CDSL, ADSL2, ADSL2+. VDSL1. VDSL2, HDSL, DSL Ute, IDSL, RADSL SDSL UDSL or the like.
[0069] Additionally, the systems, methods and protocols of this invention can be implemented on a special purpose computer, a programmed microprocessor or microcontroller and peripheral integrated circuit element(s), an ASIC or other integrated circuit, a digital signal processor, a hard-wired electronic or logic circuit such as discrete element circuit, a programmable logic device such as PLD, FLA, FPGA, PAL a modem, a transmrtter/receiver, any comparable means, or the like. In general, any device capable of implementing a state machine that is in turn capable of implementing the methodology illustrated herein can be used to implement the various communication methods, protocols and techniques according to this invention.
(0070) Furthermore, the disclosed methods may be readily implemented in software using object or object-oriented software development environments that provide portable source code that can be used on a variety of computer or workstation platforms. Alternatively, the disclosed system may be implemented partially or folly in hardware using standard logic circuits or VLSI design. Whether software or hardware is used to implement the systems in accordance with this invention is dependent on the speed and/or efficiency requirements of the system, the particular fonction, and the particular software or hardware systems or microprocessor or microcomputer systems being utilized. The communication systems, methods and protocols illustrated herein however can be readily implemented in hardware and/or software using any known or later developed systems or structures, devices and/or software by those of ordinary skill in the applicable art from the
CA 3023907 2018-11-13 functional description provided herein and with a general basic knowledge of the computer and telecommunications arts.
[0071] Moreover, the disclosed methods may be readily implemented in software that can be stored on a storage medium, executed on programmed general-purpose computer with the cooperation of a controller and memory, a special purpose computer, a microprocessor, or the like. In these instances, the systems and methods of this invention can lie implemented as program embedded on personal computer such as JAVA® or CGI script, as a resource residing on a server or computer workstation, as a routine embedded in a dedicated communication system or system component, or the like. The system can also be implemented by physically incorporating the system and/or method into a software and/or hardware system, such as the hardware and software systems of a communications transceiver.
[0072] It is therefore apparent that there has been provided, in accordance with the present invention, systems and methods for CRC normalization. While this invention has been described in conjunction with a number of embodiments, it is evident that many alternatives, modifications and variations would be or are apparent to those of ordinary skill in the applicable arts. Accordingly, it is intended to embrace all such alternatives, modifications, equivalents and variations that are within the scope of this invention as defined by the claims.
Contents4
5 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5
63 members in 10 offices
Priority claims9
| Document | Office | Kind | Date |
|---|---|---|---|
| 60613594 | United States of America | – | |
| 61359404 | United States of America | P | |
| 61359404 | United States of America | P | |
| 2935980 | Canada | A | |
| 2935980 | Canada | A | |
| 2935980 | – | – | – |
| 60613594 | – | – | – |
| CA20052935980 | – | – | – |
| US20040613594P | – | – | – |
Members63
| Document | Office | Kind | |
|---|---|---|---|
| US2006069980A1 | United States of America | A1 | |
| AU2005289753A1 | Australia | A1 | |
| CA2550263A1 | Canada | A1 | |
| CA2711718A1 | Canada | A1 | |
| CA2876137A1 | Canada | A1 | |
| CA2935980A1 | Canada | A1 | |
| CA3023907A1 | Canada | A1 | |
| WO2006036723A1 | World Intellectual Property Organization (WIPO) | A1 | |
| CN1934817A | China | A | |
| EP1792430A1 | European Patent Office (EPO) | A1 | |
| JP2007151145A | Japan | A | |
| KR20070072425A | Republic of Korea | A | |
| JP2007519382A | Japan | A | |
| US7451379B2 | United States of America | B2 | |
| AU2005289753B2 | Australia | B2 | |
| US2009019346A1 | United States of America | A1 | |
| AU2009200784A1 | Australia | A1 | |
| KR20100035665A | Republic of Korea | A | |
| KR100955190B1 | Republic of Korea | B1 | |
| JP2010178353A | Japan | A | |
| CA2550263C | Canada | C | |
| KR20100120722A | Republic of Korea | A | |
| US2010293444A1 | United States of America | A1 | |
| US7925958B2 | United States of America | B2 | |
| US7979778B2 | United States of America | B2 | |
| EP1792430B1 | European Patent Office (EPO) | B1 | |
| AT517477T | Austria | T | |
| ATE517477T1 | Austria | T1 | |
| US2011239087A1 | United States of America | A1 | |
| EP2381610A1 | European Patent Office (EPO) | A1 | |
| DK1792430T3 | Denmark | T3 | |
| EP1792430B9 | European Patent Office (EPO) | B9 | |
| CN1934817B | China | B | |
| CN102624488A | China | A | |
| JP2013009417A | Japan | A | |
| JP5237317B2 | Japan | B2 | |
| US8516337B2 | United States of America | B2 | |
| US2013339828A1 | United States of America | A1 | |
| US8793553B2 | United States of America | B2 | |
| US2014337683A1 | United States of America | A1 | |
| US8984366B2 | United States of America | B2 | |
| CA2711718C | Canada | C | |
| US2015180508A1 | United States of America | A1 | |
| JP2015167401A | Japan | A | |
| CN102624488B | China | B | |
| JP5823936B2 | Japan | B2 | |
| US9300324B2 | United States of America | B2 | |
| US2016188403A1 | United States of America | A1 | |
| CA2876137C | Canada | C | |
| EP2381610B1 | European Patent Office (EPO) | B1 | |
| JP2016220241A | Japan | A | |
| EP2381610B8 | European Patent Office (EPO) | B8 | |
| EP3176973A1 | European Patent Office (EPO) | A1 | |
| JP6215254B2 | Japan | B2 | |
| JP6335230B2 | Japan | B2 | |
| US10049003B2 | United States of America | B2 | |
| US2018341544A1 | United States of America | A1 | |
| CA2935980C | Canada | C | |
| CA3023907CThis record | Canada | C | |
| US10346243B2 | United States of America | B2 | |
| US2019286514A1 | United States of America | A1 | |
| EP3176973B1 | European Patent Office (EPO) | B1 | |
| US2021200628A1 | United States of America | A1 |
3 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| LapsedLapsedMKLA | MKLA | |
| LapsedLapsedMKLA | MKLA | |
| Examination requestEEER | EEER |
Numbers
- Publication
- 3023907
- Publication, DOCDB
- 3023907
- Publication, EPODOC
- CA3023907
- Application
- 3023907
- Application, DOCDB
- 3023907
- Application, EPODOC
- CA20053023907
Titles2
- English
- CRC COUNTER NORMALIZATION
- French
- NORMALISATION DE COMPTEUR CRC
Classification
- CPC, 7
- H03M13/09
- H04L1/16
- G06F11/1004
- H04L1/0045
- H04L1/0061
- H04L1/22
- H03M13/096
- IPC, 1
- H04L1 22