The invention is herein described, by way of example only, with reference to the accompanying drawings, wherein:
The present invention provides a novel mechanism for identifying and characterizing noise sources affecting a communications link, e.g., Gigabit Ethernet, using time and frequency domain analysis techniques. Detected noise sources are characterized and compared to an acceptable envelope mask. If the noise source is out of the permitted envelope mask as defined by the relevant standard, it is reported. The mechanism utilizes both time and frequency domain analysis to detect and characterize noise sources.
To aid in understanding the principles of the present invention, the description of the Ethernet noise characterization mechanism is provided in the context of an Ethernet transceiver circuit that can be realized in an integrated circuit (IC). The noise source characterization mechanism of the present invention has been incorporated in an Ethernet IC adapted to provide 10Base-T, 100Base-T and 1000Base-T communications over a metallic twisted pair channel. Although the invention is described in the context of a gigabit Ethernet PHY communications link, it is appreciated that one skilled in the art can apply the principles of the invention to other communication systems without departing from the scope of the invention. In addition, the noise characterization can be performed utilizing a conventional communications receiver without the need for special measurement equipment. This is achieved by reusing a portion of the functionality present on a typical receiver.
It is appreciated by one skilled in the art that the noise source characterization mechanism of the present invention can be adapted for use with numerous other types of wired communications networks such as coaxial channels, etc. without departing from the scope of the invention.
Note that throughout this document, the term communications device is defined as any apparatus or mechanism adapted to transmit, receive or transmit and receive data through a medium. The term communications transceiver is defined as any apparatus or mechanism adapted to transmit and receive data through a medium. The communications device or communications transceiver may be adapted to communicate over any suitable medium, including wired media such as twisted pair cable or coaxial cable. The term Ethernet network is defined as a network compatible with any of the IEEE 802.3 Ethernet standards, including but not limited to 10Base-T, 100Base-T or 1000Base-T over shielded or unshielded twisted pair wiring. The terms communications channel, link and cable are used interchangeably.
The Ethernet PHY operating environment is typically exposed to diverse interference sources. A block diagram illustrating the typical 1000Base-T noise environment is shown in
In operation, each transceiver receives an input data stream from an external data source such as a host or other entity (not shown). The transceiver generates an output symbol stream from the input data stream and transmits the output symbol stream over the communications channel to the transceiver on the other side. The transceivers on either end of a channel are considered link partners. One is designated a master, the other a slave. A link partner can be either active or inactive. An inactive link partner is a transceiver that is not transmitting at the moment. An active link partner is a transceiver that is currently transmitting.
In the receive direction, each transceiver receives a receive signal from the communications channel. The receive signal may comprise an input symbol stream transmitted from the link partner. The transceiver generates an output from this input symbol stream. The receive signal may also comprise a signal representing energy from any number of interference sources, e.g., an echo signal representing the original transmitted signal that has been reflected back towards the transceiver. The transmitted signal may be reflected back due to a channel fault such as an open cable, shorted cable, unmatched load or any irregularities in impedance along the length of the cable. Such irregularities may be caused by broken, bad or loose connectors, damaged cables or other faults.
The Ethernet PHY environment is typically exposed to diverse interference sources.
Several of these interference sources are illustrated in
Insertion loss/Attenuation: Insertion loss (denoted by line 24 in
Insertion_Loss(f)<2.1 0.529+0.4/f dB (1)
where f denotes frequency. Insertion loss and ISI interference are usually mitigated using an adaptive equalizer. The equalizer may comprise a feed forward equalizer (FFE) or feedback equalizer (FBE).
Return loss (echo)/near-end echo rejection: The echo signal (denoted by line 26 in
where f denotes frequency and where the requirements for CAT5E is modified from 15 dB to 17 dB (i.e. an increase of 2 dB). Note that a high level of near-end echo signal may indicate a printed circuit board fault. Note also that the near-end echo reflection level is implementation specific and may be compensated for by the hybrid analog block 16 (
Near-end crosstalk (NEXT) and far-end crosstalk (FEXT): NEXT crosstalk (denoted by lines 28 in
The worst case NEXT coupling is defined by the IEEE 802.3 standard as:
NEXT(f)>27.1−16.8 log10(f/100) dB (3)
where f denotes frequency. Note that the standard also defines the following properties:
ELFEXT=FEXT−Insertion_loss (4)
PSELFEXT(f)>14.4−20 log10(f/100) dB (6)
Alien NEXT (ANEXT): A diagram illustrating the alien NEXT (ANEXT) noise environment is shown in
Note that this model for the ANEXT may not be accurate since the ANEXT cannot be separated from the external coupled noise definition. It is assumed, however, that the external noise is composed of AWGN and the colored Alien NEXT. The standard does specify the PSNEXT loss as follows:
PSNEXT_loss(f)<35−15 log10(f/100) dB (7)
where f denotes frequency.
External noise: External noise is defined by the IEEE 802.3 standard as noise coupled from external sources and is bounded at 40 mV peak-to-peak (with 3 dB LPF at 100 MHz).
The echo, NEXT and sometimes the FEXT impairments are mitigated using dedicated cancellers. These cancellers typically consume significant hardware resources and a substantial amount of digital transceiver die area. In a typical gigabit Ethernet transceiver, for example, the integrated circuit (IC) area dedicated to the canceller may consume over 50% of the total digital portion of the IC. Thus, it is advantageous to reduce the power consumption of one or more cancellers used in the receiver.
Cabling used for Ethernet applications is specified in two different standards. One of the standards is the Telecommunications Industry Association (TIA)/Electrical Industry Association (EIA)-568-B and the other is the ISI_IEC—11801—2002. In accordance with these standards, Ethernet cabling has several limitations regarding permitted topologies and configurations. For example, the standards specify that the maximum number of allowed connectors (and hence the maximum number of allowed reflection points) between two links is limited to four.
A block diagram illustrating an example a 4-connector Ethernet cabling topology is shown in
To aid in illustrating the principles of the present invention, the canceller tap shutdown mechanism is described in the context of an echo canceller incorporated in an Ethernet transceiver. Note that it is not intended that the invention be limited to echo cancellers. It is appreciated by one skilled in the art that the invention can be applied to numerous other types of cancellers, such as NEXT, FEXT, etc., without departing from the spirit and scope of the present invention.
A block diagram illustrating an example communications transceiver incorporating the canceller tap shutdown scheme of the present invention is shown in
In operation, receivers #1, #2, #3 and #4 receive the appropriate NEXT and echo canceller signals from the NEXT blocks 38, 40, 42 and echo canceller blocks 44, respectively. For each receiver, corresponding to a twisted pair, the NEXT is calculated from the TX signals for the other three pairs. For example, the NEXT for receiver #1 (i.e. pair #1), is calculated from signals TX #2, TX #3 and TX #4.
The clock recovery block generates the timing control signal 68. Controller 32 communicates with a host (not shown) and provides administration, configuration and control to the transceiver via plurality of control signals 70.
The tap shutdown blocks 37, 45 in combination with the canceller blocks, implement the canceller tap shutdown mechanism of the present invention and are adapted to shutdown one or more canceller taps depending on particular criteria as described in more detail infra. In this example transceiver 30, the tap shutdown mechanism is applied to each of the NEXT cancellers 38, 40, 42 for each twisted pairs and to the echo canceller 44. It is appreciated that the invention can be applied to other types of cancellers as well and is not intended to be limited to NEXT and echo cancellers only.
A graph illustrating the echo coefficients of the topology of
The graph of
In accordance with the present invention, the goal of the canceller tap shutdown mechanism is to disable or completely shutdown very small echo taps that have little influence on the echo mean squared error (MSE) and hence little influence on the total MSE. By disabling or completely disabling these taps, the power consumption of the transceiver circuit can be significantly reduced. A further advantage of the shutting down very low valued canceller taps is that the least mean square (LMS) noise caused by the jittering of the smaller taps of the echo canceller is also significantly reduced.
With reference to
Thus, the mechanism of the present invention is operative to shutdown canceller tap coefficients that do not or substantially do not contribute to a reduction in echo. In other words, canceller taps that do not have to handle any significant reflections in the time domain are shut down. The mechanism of the invention is thus operative to shut down canceller taps that converge to a value of zero or approximately zero. The invention provides five methods of shutting down canceller taps as described herein below.
In this method, a tap is shut down if its absolute value is less than a threshold as expressed below.
if{|echo_canceller[n]|<THecho_canceller[n]=0 (8)
The advantage of this method is that it is a relatively ‘inexpensive’ method. A disadvantage is that it suffers from sensitivity to tap jitter around the threshold value during adaptation. With this method, there is a potential risk that a tap will be shutdown that provides some contribution to interference cancellation but due to adaptation noise became close to zero value. The output of this method comprises a bit for each tap in the canceller indicating whether it is active or shutdown.
In this preferred method, a tap is shut down if its mean absolute value is less than a threshold as expressed below.
if{mean(|echo_canceller[n]|)<THecho_canceller[n]=0 (9)
The advantage of this method is that it does not suffer from the sensitivity problem associated with Method #1 supra since adaptation jitter is smoothed as a result of the averaging. The output of this method comprises a bit for each tap in the canceller indicating whether it is active or shutdown. This method utilizes a sliding window of a plurality of clock cycles (e.g., 1000 clock cycles) in which each tap is averages over the window size.
One possible way to calculate the mean is to preserve the historical values of all the taps for the duration of the window. A second and preferred way is to utilize an infinite impulse response (IIR) filter to avoid the requirement of storing the historical values of each tap for the duration of the window,
In this method, taps are shut down only if the sum of the absolute value of a certain number ‘X’ of sequential taps is less than X times a threshold as expressed below.
This method is operative to shutdown X taps at a time. A number of X sequential taps are shutdown only if a sequence of X taps can be found that do not contribute to interference cancellation. The advantage of this method is that it provides a higher confidence level when taps are shut down. Disabling an entire sequence of taps saves a large amount of power. In addition, the method is less sensitive to the jitter effect. A disadvantage, however, is that it reduces the total number of taps that can be shut down since the probability of finding X sequential taps that can be shut down is lower. The number of taps in a group can be set in accordance with the particular application, e.g., 5 to 10 taps per group. This method also is operative to avoid shutting down taps that are near large valued groups of taps since they will likely be summed with the larger adjacent taps. This method is more robust to the tap jitter effect (also known as timing jitter). This is due to the fact that the jitter effect causes the reflection ‘seen’ and cancelled by each tap to constantly shift. Therefore, a tap that does not contribute to the actual filtering at one point in time may be essential at a later point in time. Thus, shutting down only sequential taps that are close to zero reduces the effect of the jitter.
In this method, ‘X’ sequential taps are shut down only if the sum of the absolute value of the averaged taps value is below a predefined threshold as expressed below.
This method is similar to Method #2 described supra combined with the sequential tap feature of Method #3. Similar to Method #3, it is operative to shutdown X taps at a time. The method averages the values of the taps within a group. A group may comprise any number of taps, e.g., 5 to 10, depending on the particular application. This method is the least sensitive to jitter compared to the other four methods.
This method encompasses Methods #1 through #4 described supra with the difference being that the actual filtered output of the canceller is used rather than the canceller filter tap values. Depending on the particular implementation, it may be easier to monitor the filtered output energy rather than the actual tap values. Thus, all four methods described above are applicable to examining the filtered output. In this method, the filtered output is compared to the same thresholds used in Methods #1 through #4 after they are normalized using the canceller input signal energy.
Regardless of the method used to determine the tap to shutdown, the shutdown method can be performed either once during startup, periodically or continuously during the actual active link. Thus, depending on the implementation, a determination of which taps to shutdown and which to activate can be made (1) periodically; (2) continuously; (3) at any time or (4) can be performed in accordance with dynamic changes in the channel.
An example canceller with tap shutdown mechanism of the present invention will now be described. A block diagram illustrating an example canceller with tap shutdown constructed in accordance with the present invention is shown in
The canceller 100 comprises a plurality of N registers 102 (e.g., D-flip flops D0 to DN-1) for storing input data coupled to multipliers 106. The output of each register is coupled to a multiplier whose second input is the output of a 2 to 1 multiplexer 108. The input of each multiplexer comprises a canceller tap coefficient 104 and zero. Each tap coefficient is compared with the threshold stored in a register 110 via comparator 114. The results of the comparisons are stored in the shutdown register 116. Depending on the value of the shutdown bit, either the tap coefficient or a zero value is multiplied with the input data. A value of zero effectively shuts down a tap as a multiplication is not necessary. The outputs of the multipliers are summed via adder 118, the output of which is the filtered output of the canceller. Thus, depending on the threshold value, only a portion of the coefficients h0 through hN-1 are used by the canceller. This example canceller implements Method #1 described above where each tap is compared to a threshold.
The canceller 100 also implements preferred Method #2 with the incorporation of the optional accumulators 112 placed before each comparator. The accumulators function to calculate a moving average of each individual canceller tap value. This greatly reduces the effects of tap jitter caused by the value of a tap jittering around the value of the threshold from clock cycle to clock cycle.
The thresholds used in the comparisons can be determined empirically by simulation or by trial and error. If simulation is used, the thresholds determined are not dynamic, i.e. they are calculated a priori. Preferably, several channel model are used including the use of actual cables in real topologies. For each cable topology, simulations are performed to determine the threshold. For each possible threshold, the number of taps shutdown is observed including the tradeoffs associated with that number. For each topology an optimum threshold can be found. In general, the more taps that are shutdown, the greater the reduction in power consumption. The tradeoff, however, is increased noise levels.
Several graphs illustrating the performance of the canceller tap shutdown mechanism for different numbers of taps shutdown and different thresholds will now be presented. In each graph, the starred data points represent the number of taps omitted as indicated by a shutdown counter (right axis) as the threshold is increased (x-axis). The circled data points represent the echo MSE in units of dB (left axis). Sets of graphs are provided for Methods #1, #2 and #4. Each set comprises three graphs, each corresponding to three different channels A, B, C.
The graphs are used to optimize the parameters for each topology. Each graph defines a threshold level that has trade offs associated with it. On the one hand, power consumption is reduced by closing more taps when a higher threshold is used but with an increase in echo noise since the channel is modeled less and less accurately as the number of taps in reduced.
Graphs illustrating the echo tap shutdown versus change in performance for Method #1 are shown in
Graphs illustrating the echo tap shutdown versus change in performance for Method #2 are shown in
The level of the echo noise (as measured by the echo power) represents how much the echo influences the received signal. In each figure, the number of taps (as represented by the circle in each Figure) is taken as the number of taps corresponding to the same echo noise when all taps are active. The graphs show that as the number of taps shutdown increases, the MSE decreases to a certain level and then begins increasing as the number of taps shutdown increases. At some point, too many taps are shutdown and the echo noise becomes worse than with all taps on. It is not desirable to go beyond this point because performance begins to drop. Thus, better performance than with all taps active can be achieved or the same performance can be achieved using fewer taps.
As an example, considering
Graphs illustrating the echo tap shutdown versus change in performance for Method #4 are shown in
Considering channel A in
It is intended that the appended claims cover all such features and advantages of the invention that fall within the spirit and scope of the present invention. As numerous modifications and changes will readily occur to those skilled in the art, it is intended that the invention not be limited to the limited number of embodiments described herein. Accordingly, it will be appreciated that all suitable variations, modifications and equivalents may be resorted to, falling within the spirit and scope of the present invention.