Abstract:
A physical layer device includes first, second, third and fourth twisted pairs. First, second, third and fourth hybrid devices communicate with the first, second, third and fourth twisted pairs, respectively. First, second, third and fourth cable testers communicate with the first, second, third and fourth hybrid devices, respectively. Each of the cable testers tests the first, second, third and fourth twisted pairs and determines a cable status of the first, second, third and fourth twisted pairs during first, second, third and fourth periods, respectively. At least one of the first, second, third and fourth periods overlaps another of the first, second, third and fourth periods.A cable testing system and method tests cable and determines status, cable length and reflection amplitude. The test module includes a pretest state machine that senses activity on the cable and enables testing if activity is not detected for a first period. A test state machine is enabled by the pretest state machine, transmits a test pulse on the cable, measures a reflection amplitude and calculates a cable length. The test module determines the status based on the measured amplitude and the calculated cable length. A lookup table includes a plurality of sets of reflection amplitudes as a function of cable length. The test module determines the status using the lookup table, the reflection amplitude and the cable length.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
   This application is a divisional of U.S. patent application Ser. No. 10/165,467 filed on Jun. 7, 2002 now U.S. Pat. No. 6,825,672. The disclosure of the above application is incorporated herein by reference. 

   FIELD OF THE INVENTION 
   The present invention relates to electronic diagnostic systems, and more particularly to testing equipment for cable used in a network. 
   BACKGROUND OF THE INVENTION 
   One goal of a network manager is to control total cost of ownership of the network. Cabling problems can cause a significant amount of network downtime and can require troubleshooting resources, which increase the total cost of ownership. Providing tools that help solve cabling problems more quickly will increase network uptime and reduce the total cost ownership. 
   Referring now to  FIG. 1 , conventional cable testers  10  are frequently used to isolate cabling problems. The cable testers  10  are coupled by a connector  12  (such as an RJ-45 or other connector) to a cable  14 . A connector  15  connects the cable to a load  16 . Conventional cable testers typically require the load  16  to be a remote node terminator or a loop back module. Conventional cable tests may generate inaccurate results when the cable is terminated by an active link partner that is generating link pulses during a test. The cable tester  10  performs cable analysis and is able to detect a short, an open, a crossed pair, or a reversed pair. The cable tester  10  can also determine a cable length to a short or open. 
   A short condition occurs when two or more lines are short-circuited together. An open condition occurs when there is a lack of continuity between ends at both ends of a cable. A crossed pair occurs when a pair is connected to different pins at each end. For example, a first pair is connected to pins  1  and  2  at one end and pins  3  and  6  at the other end. A reversed pair occurs when two ends in a pair are connected to opposite pins at each end of the cable. For example, a line on pin  1  is connected to pin  2  at the other end. A line on pin  2  is connected to pin  1  at the other end. 
   The cable tester  10  employs time domain reflection (TDR), which is based on transmission line theory, to troubleshoot cable faults. The cable tester  10  transmits a pulse  17  on the cable  14  and measures an elapsed time until a reflection  18  is received. Using the elapsed time and a cable propagation constant, a cable distance can be estimated and a fault can be identified. Two waves propagate through the cable  14 . A forward wave propagates from a transmitter in the cable tester  10  towards the load  16  or fault. A return wave propagates from the load  16  or fault to the cable tester  10 . 
   A perfectly terminated line has no attenuation and an impedance that is matched to a source impedance. The load is equal to the line impedance. The return wave is zero for a perfectly terminated line because the load receives all of the forward wave energy. For open circuits, the return wave has an amplitude that is approximately equal to the forward wave. For short circuits, the return wave has a negative amplitude is also approximately equal to the forward wave. 
   In transmission line theory, a reflection coefficient is defined as: 
             T   L     =       R_wave   F_wave     =         V   -       V   +       =         Z   L     -     Z   O           Z   L     +     Z   O                   
Where Z L  is the load impedance and Z O  is the cable impedance. The return loss in (dB) is defined as:
 
               R   L     ⁢           ⁢     (   db   )       =       20   ⁢           ⁢     LOG   10     ⁢           ⁢          1     T   L              =     20   ⁢     LOG   10     ⁢           ⁢              Z   L     +     Z   O           Z   L     -     Z   O                        
Return loss performance is determined by the transmitter return loss, the cable characteristic impedance and return loss, and the receiver return loss. IEEE section 802.3, which is hereby incorporated by reference, specifies receiver and transmitter minimum return loss for various frequencies. Additional factors that may affect the accuracy of the return loss measurement include connectors and patch panels. Cable impedance can also vary, for example CAT5 UTP cable impedance can vary ±15 Ohms.
 
   SUMMARY OF THE INVENTION 
   A cable testing system and method according to the present invention tests cable and determines status. The test module includes a pretest state machine that senses activity on the cable and enables testing if activity is not detected for a first period. A test state machine is enabled by the pretest state machine, transmits a test pulse on the cable, measures a reflection amplitude and calculates a cable length. The test module determines the cable status based on the measured amplitude and the calculated cable length. 
   In other features, the pretest state machine enables testing if, during the first period, activity is detected and is subsequently not detected for a second period after the activity is detected. A lookup table includes a plurality of sets of reflection amplitudes as a function of cable length. The test module determines the cable status using the lookup table, the reflection amplitude and the cable length. 
   In yet other features, the sets of reflection amplitudes define a plurality of windows. Three windows are defined by first and second thresholds. The first threshold is based on a first set of reflection amplitudes that are measured as a function of length when the test cable type is terminated using a first impedance having a first impedance value. The second threshold is based on a second set of reflection amplitudes that are measured as a function of length when the test cable type is terminated using a second impedance having a second impedance value. 
   In still other features, the cable is declared an open circuit when the reflection amplitude is within the first window for the calculated cable length. The cable is declared a short circuit when the reflection amplitude is within the second window for the calculated cable length. The cable is declared normal when the reflection amplitude is within the third window for the calculated cable length. 
   In still other features, when testing cable that transmits and receives on different wires, the test module transmits the test pulse, measures offset, subtracts the offset from the reflection amplitude, and detects peaks. If a second peak is not detected after a first peak and the reflection amplitude of the first peak is greater than a first threshold, the test module transmits a second test pulse having a second amplitude that is less than a first amplitude of the first test pulse. If the reflection amplitude of a first peak after transmitting the second test pulse is greater than a second threshold, the test module declares a close open status. If the first peak is detected after a predetermined period after transmitting the second test pulse, the test module declares an open status. If the first peak is less than a predetermined threshold within the predetermined period after transmitting the second test pulse, the test module declares a perfectly terminated status. 
   Further areas of applicability of the present invention will become apparent from the detailed description provided hereinafter. It should be understood that the detailed description and specific examples, while indicating the preferred embodiment of the invention, are intended for purposes of illustration only and are not intended to limit the scope of the invention. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     The present invention will become more fully understood from the detailed description and the accompanying drawings, wherein: 
       FIG. 1  is a functional block diagram of a cable tester according to the prior art; 
       FIG. 2  is a functional block diagram of a cable tester according to the present invention; 
       FIG. 3  is a state diagram of a pretest state machine; 
       FIG. 4  is a state diagram of a first test state machine for a cable tester for a media that transmits and receives on the same wire; 
       FIG. 5  is a state diagram of a second test state machine for a cable tester for a media that does not transmit and receive on the same wire; 
       FIG. 6  is a waveform diagram illustrating a time-based receiver floor; and 
       FIG. 7  is an exemplary cable reflection amplitude vs. cable length relationship for a first type of cable. 
   

   DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
   The following description of the preferred embodiment(s) is merely exemplary in nature and is in no way intended to limit the invention, its application, or uses. For purposes of clarity, the same reference numbers will be used in the drawings to identify the same elements. 
   Referring now to  FIG. 2 , a cable tester  20  according to the present invention is shown. The cable tester  20  is capable of testing 10/100BaseT cable, 1000BaseT cable, and/or other cable media. For example, 10/100BaseT includes two pairs of twisted pair wires and 1000BaseT cable includes four pairs of twisted pair wires. A transmitter  28  and a receiver  30  are coupled to the I/O interface  26 . A test module  32  includes state machines for testing a media  34  such as cable. The test module  32  can be implemented in combinatorial logic, using discrete circuits, and/or using a processor and memory that executes testing software. 
   The test module  32  includes a pretest state machine  50 . The test module  32  also includes a first test state machine  52  and/or a second test state machine  54 . One or more lookup tables  56  containing cable empirical data are also provided as will be described below. The cable tester  20  may also include a display  58  for presenting fault status, cable length and/or reflection amplitude data. A cancellation circuit  59  cancels the test pulse when testing on media that transmits and receives on the same wire such as 1000BaseT. The cancellation circuit  59  is not used when testing media that transmits and receives on different wires such as in 10/100BaseT. The cancellation circuit  59  can be a hybrid circuit. 
   Referring now to  FIG. 3 , the pretest state machine  50  is illustrated in further detail. On reset, the pretest state machine  50  moves to a wait enable state  100 . Pair is set equal to zero and testover is set equal to one. When a test enabled signal is received, the pretest state machine  50  transitions to a wait powerdown state  102 . A powerdown timer is incremented and test_over is set equal to zero. The powerdown timer should have a period that is sufficient to bring a link down. When the powerdown timer exceeds a first period P 1 , the pretest state machine  50  transitions to a first timer start state  104 . 
   A first timer is set equal to zero and a blind timer is incremented. The blind timer waits for a blind timer period to allow a sufficient amount of time for transitions between pairs. Typically several clock cycles are sufficient. When wire_activity is high, the pretest state machine  50  transitions to a signal find state  106  and resets a second timer. Wire_activity is present when a signal on the wire is above a predetermined threshold. 
   When wire_activity is low in the signal find state  106 , the pretest state machine  50  transitions back to the signal find state  106  and resets the second timer. If the second timer is greater than a second period P 2 , the pretest state machine  50  transitions to a test state  110 . Tdrwrstart is set equal to one. If a test pass signal is received, the pretest state machine  50  transitions to a test over state  114 . Pair is incremented, tdrwrstart is set equal to zero, and the register is recorded. 
   If pair is less than 4 for 1000BaseT operation or 2 for 10/100BaseT operation, the pretest state machine  50  transitions from the test over state  114  to the first timer start state  104 . If pair is equal to 4 for 1000BaseT operation or 2 for 10/100BaseT operation, the pretest state machine  50  transitions from the test over state  114  to the wait enable state  100 . 
   In the first timer start state  104 , the pretest state machine  50  transitions to the test state  110  if the first timer is greater than a third period P 3 . In the signal find state  106 , the pretest state machine  50  transitions to the test over state  114  if the first timer is greater than the third period P 3 . 
   In a preferred embodiment, the first period P 1  is preferably 1.5 s, the second period P 2  is equal to 5 ms, and the third period is equal to 125 ms. Skilled artisans will appreciate that the first, second and third periods P 1 , P 2  and P 3 , respectively, may be varied. The P 3  is preferably selected based on a worst case spacing of link pulses. P 2  is preferably selected to allow testing between fast link pulses (FLP). FLP bursts have a length of 2 ms and a spacing of 16 ms. By setting P 2 =5 ms, the delay is a total of 7 ms, which is approximately half way between FLPs. P 1  may be longer than 1.5 seconds if required to bring the link down. 
   Referring now to  FIG. 4 , the first test state machine  52  for media that transmits and receives on the same wire is shown. The cancellation circuit  59  cancels the transmit test pulse. On reset, the first test state machine  52  transitions to a wait start state  150 . Peak is set equal to zero and cutoff is set equal to peak/2. When tdrwr_start_r rising edge is received from the pretest state machine  50 , the first test state machine  52  transitions to a detect offset state  154 . tdr_sel_pulse is set equal to 1 to generate a pulse and start a timer. The pulse is preferably a 128 ns pulse having a 2V amplitude. 
   After an offset is subtracted from tdr_in, the first test state machine  52  transitions to a detect peak state  158 . Peak stores the current value of tdr_in. If tdr_in is less than or equal to peak/2, the first test state machine  52  transitions to a detect cutoff state  162  where distance is set equal to a counter. If tdr_in is greater than peak, the first test state machine  52  transitions to state  158  and peak is replaced by a new tdr_in. If a timer is greater than a fifth period P 5 , the first test state machine  52  transitions to a test over state  166  where peak/distance is calculated, tdr_pass is set equal to 1, and tdr_sel_pulse is set equal to 0. 
   While in the detect cutoff state  162 , the first test state machine  52  transitions to the detect peak state  158  if tdr_in&gt;peak. While in the detect peak state  158 , the first state machine  52  transitions to the test over state  166  if the timer is greater than the fifth period P 5 . In a preferred embodiment, P 5  is equal to 5 μs. 
   Referring now to  FIG. 5 , the second test state machine  54  is shown in further detail. On reset, the second test state machine  54  transitions to a wait start state  200 . Peak is set equal to zero, cutoff is set equal to peak/2, and distance is set equal to 0. When tdrwr_start_r rising edge is received from the pretest state machine  50 , the second test state machine  54  transitions to a detect offset state  204  where tdr_in =filtered magnitude and tdr_sel_pulse is set equal to 1. The second test state machine  54  transitions to a first detect peak state  208  where peak 1  is set equal to max of tdr_in. 
   If tdr_in is less than peak 1 / 2 , the second test state machine  54  transitions to a second detect peak state  212  and sets peak 2  equal to maximum of tdr_in. If tdr_in is less than peak 2 / 2 , the second test state machine  54  transitions to a detect cutoff state  216 . Distance is set equal to a counter. If a fourth timer is greater than a fourth period P 4 , the second test state machine  54  transitions to a test over state  220 . Peak/distance is calculated, tdr_pass is set equal to 1, and tdr_sel_pulse is set equal to 0. 
   In the detect cutoff state  216 , if tdr_in is greater than peak 2 , the second test state machine  54  transitions to the second peak detect state  212 . In the second detect peak state  212 , if the fourth timer is greater than P 4 , peak 2  is equal to 0 and peak 1  is greater than a threshold, the second test state machine  54  transitions to a second test state  224 . In the second test state  224 , tdr_sel_half_pulse is set equal to 1 to send a half pulse. The second test state machine  54  transitions from the second test state  224  to the test over state  220 . 
   In the first detect peak state  208 , if the fourth timer is greater than P 4 , the second test state machine  54  transitions to the test over state  220 . In the second detect peak state  212 , if the fourth timer is greater than P 4 , peak 2 =0, and peak 1  is less than or equal to a second threshold, the second test state machine  54  transitions to the test over state  220 . 
   The link is brought down and the pretest state machine  50  waits until the line is quiet. For each pair, the cable tester  20  generates a TDR pulse and measures the reflection. In 10/100BaseT media, after the test is enabled, the pretest state machine  50  waits until the line is quiet. A pulse is generated and the reflection is measured. The status receiver and transmitter pairs are determined sequentially. For the first pair, the receiver is preferably in MDIX mode and the transmitter is preferably in MDI mode. For the second pair, the receiver is preferably in MDI mode and transmitter is preferably in MDIX mode. 
   The pretest state machine  50  ensures that the line is quiet before the pulse is transmitted. After the test is enabled, the pretest state machine  50  waits P 1  (such as 1.5 seconds or longer) to make sure that the link is brought down. The pretest state machine  50  determines whether there is activity on a first pair (MDI+/−[0] for 1000BaseT network devices and RX for 10/100BaseT products). 
   In a preferred embodiment, activity is found when activity minus systemic offset such as a noise floor that is calculated in states  154  and  204  is greater than a predetermined threshold. If there is no activity for P 2  (such as 125 ms), the pretest state machine  50  proceeds to the test state and sends a pulse on the selected pair. If there is activity on the pair and the line is quiet for 5 ms afterwards, the pretest state machine proceeds to the test state. The test fail state is reached and a test failure declared if the line has not been quiet for more than 5 ms during a 125 ms period. If a test failure is declared on the first pair or the TDR test is completed for the pair, the same procedure is conducted on MDI+/−[1], MDI+/−[2], MDI+/−[3] sequentially for 1000BaseT devices and the TX pair for 10/100BaseT devices. 
   In 1000BaseT devices, the original 128 ns test pulse is cancelled by the cancellation circuit  59 . The pulse received at the ADC output is the reflection. The test pulse preferably has 2V swing. Before testing, the offset on the line is measured and is subtracted from the received ADC value. 
   Referring now to  FIG. 6 , the cancellation circuit  59 , which can be an analog hybrid circuit, does not perfectly cancel the test pulse. To prevent false reflection identification, a 250 mv floor within 32 clock cycles (125 Mhz clock) and a 62.5 mv floor after 32 clock cycles are used to allow a residual of cancellation of the test pulse and noise to be filtered. The peak value on the line is detected for 5 μs. The amplitude of reflection is the maximum magnitude that is detected. The amplitude is adjusted according to the sign of the reflection. The distance to the reflection is located at 50% of the peak. 
   The cable status is determined by comparing the amplitude and the calculated cable length to the lookup table  56  for the type of cable being tested. The measured reflection amplitude falls into a window. There are two adjustable thresholds for open circuit and short circuit cables. The open threshold is preferably based on experimental data, which can be produced by refection amplitudes for CAT3 and CAT5 cable that is terminated with a first impedance value such as 333 Ohms. 
   The default short circuit threshold is based on experimental data of refection amplitudes for CAT3 and CAT5 cable that is terminated with a second impedance value such as a 33 Ohms. As can be appreciated, the lookup table  56  may contain data for other cable types. Other impedance values may be used to generate the thresholds. 
   If measured amplitude falls between open and short circuit thresholds, the cable status is declared normal. If the amplitude is above the open threshold, the cable status is declared an open circuit. If the amplitude is below a short circuit threshold, the cable status is declared a short circuit. The cable status, reflection amplitude and cable distance are stored and/or displayed. 
   In the second test state machine, the original test pulse is not cancelled. Both the original pulse and the reflection are monitored. When an open circuit is located near the cable tester, the two pulses may be overlapping, which may cause saturation in the ADC. The test state machine preferably sends out a 128 ns pulse that has a 1V swing. The offset on the line is measured and subtracted from the received ADC value. A 250 mv floor is used within 32 clock cycles (125 Mhz clock) and a 62.5 mv floor is used after 32 clock cycles so that the residual of cancellation and noise can be filtered. Signals below the floor are considered to be 0. The peak value on the line is detected for 5 μs. As can be appreciated, the test pulse can have longer or shorter durations and amplitudes. 
   The first peak that is observed should be the test pulse. The amplitude of reflection is the maximum magnitude detected after the test pulse is detected. The distance of reflection is at 50% cutoff of the peak. If another pulse is not detected after the test pulse and the magnitude of the test pulse is greater than a preset threshold, the cable tester identifies an open cable that is located relatively close. A second test transmits a second test pulse that has one-half of the magnitude of the first test pulse. 
   If the maximum magnitude on the line is greater than ¾ of the original pulse, there is an open circuit that is located relatively close. Otherwise, if the first peak is detected after 26 clock cycles, the cable tester  20  declares an open circuit. If the first peak is within 26 clock cycles, the cable tester  20  declares a perfectly terminated cable. 
   The cable status is determined by comparing the amplitude and distance of reflection to the lookup table  56  based on the type of cable being tested. There are two adjustable thresholds for open and short circuit cables. The default open threshold is from the experimental data of refection amplitudes for CAT3 and CAT5 cable terminated with a first impedance value such as 333 Ohms. The default short circuit threshold is from the experimental data of refection amplitude of CAT3 and CAT5 cable that is terminated with a second impedance value such as 33 Ohms. Other impedance values may be employed for generating thresholds. 
   If the measured amplitude falls between open and short circuit thresholds, the cable status is declared normal. If the amplitude is above the open circuit threshold, the cable status is declared an open circuit. If the amplitude is below a short circuit threshold, the cable status is declared a short circuit. The cable status, reflection amplitude and cable length are stored and/or displayed. 
   Those skilled in the art can now appreciate from the foregoing description that the broad teachings of the present invention can be implemented in a variety of forms. Therefore, while this invention has been described in connection with particular examples thereof, the true scope of the invention should not be so limited since other modifications will become apparent to the skilled practitioner upon a study of the drawings, the specification and the following claims.