Serial buses, such as the Universal Serial Bus (USB), are widely used to connect systems of devices. For example, USB is used to connect devices in automotive applications. In such applications, USB data signals may be routed over relatively long lengths of cabling (e.g., >5 meters).
A serial bus equalization trim circuit is disclosed herein. In one example, a serial bus equalization trim circuit includes a first data input terminal, a second data input terminal, a delay circuit, and a flip-flop. The delay circuit includes a data input, a trim input, and an output. The data input is coupled the first data input terminal. The flip-flop includes a data input, a clock input, and an output. The data input is coupled to the output of the delay circuit. The clock input is coupled to the second data input terminal. The output of the flip-flop is coupled to the trim input of the delay circuit.
In another example, a serial bus repeater circuit includes a receiver circuit and a serial bus equalization trim circuit. The receiver circuit includes an equalizer circuit and an amplifier. The equalizer circuit includes a trim input. The amplifier is coupled to the equalizer circuit. The amplifier includes a first output and a second output. The serial bus equalization trim circuit includes a first data input terminal, a second data input terminal, and an output. The first data input terminal is coupled to the first output of the amplifier. The second data input terminal is coupled to the second output of the amplifier. The output of the serial bus equalization trim circuit is coupled to the trim input of the equalizer circuit. Some implementations of the serial bus repeater circuit include a transmitter circuit that includes a first input, a second input, and a trim input. The first input of the transmitter circuit is coupled to the first output of the amplifier. The second input of the transmitter circuit is coupled to the second output of the amplifier. The trim input is coupled to the output of the serial bus equalization trim circuit to control a width of post cursor emphasis.
In a further example, a serial bus signal conditioner circuit includes a first serial bus terminal, a second serial bus terminal, an edge detector circuit, a booster circuit, and a serial bus equalization trim circuit. The edge detector circuit includes a first input, a second input, a first output, and a second output. The first input is coupled to the first serial bus terminal. The second input is coupled to the second serial bus terminal. The booster circuit includes a first input, a second input, a first output, a second output, and a trim input. The first input of the booster circuit is coupled to the first output of the edge detector circuit. The second input of the booster circuit is coupled to the second output of the edge detector circuit. The first output of the booster circuit is coupled to the first serial bus terminal. The second output of the booster circuit is coupled to the second serial bus terminal. The serial bus equalization trim circuit includes a first data input terminal, a second data input terminal, and an output. The first data input terminal is coupled to the first output of the edge detector circuit. The second data input terminal is coupled to the second output of the edge detector circuit. The output of the serial bus equalization trim circuit is coupled to the trim input of the booster circuit.
For a detailed description of various examples, reference will now be made to the accompanying drawings in which:
Serial bus systems, such as universal serial bus (USB) systems, use clock-less repeaters and/or signal conditioners to compensate for channel loss.
Signal conditioners re-drive high-speed serial bus signals.
To improve performance and reduce cost of serial bus repeaters and signal conditioners, the serial bus equalization trim circuit described herein provides for run-time adjustment of R*C delays that allows serial bus repeaters and signal conditioners to maintain constant equalization over process and temperature.
In serial protocols, such as USB 2.0, each packet begins with a synchronization (SYNC) field, which is a coded sequence that generates a maximum edge transition density.
The receiver circuit 402 includes an equalizer circuit 408 and an amplifier 410. The equalizer circuit 408 is a continuous time linear equalizer in some implementations of the equalizer circuit 408. The equalizer circuit 408 compensates for inter-symbol interference (ISI) due to the cable segment 108. The amount of equalization provided by the equalizer circuit 408 is directly proportional to R*C product which varies over process and temperature. The equalizer circuit 408 includes trim circuitry 418 that allows for adjustment of capacitance and/or resistance for equalization trim. The equalizer circuit 408 includes a trim input 408A for receiving a trim control signal 420 generated by the serial bus equalization trim circuit 404 to adjust the equalization provided by the equalizer circuit 408.
The amplifier 410 is coupled to the equalizer circuit 408, and applies gain to the equalized signal received from the equalizer circuit 408. The amplifier 410 includes an output 410A and an output 4106.
The serial bus equalization trim circuit 404 is coupled to the amplifier 410, and controls equalization in the serial bus repeater circuit 400 based on the amplified output of the equalizer circuit 408 received from the amplifier 410. The serial bus equalization trim circuit 404 includes a data input terminal 404A coupled to the output 410A of the amplifier 410, and a data input terminal 404B coupled to the output 410B of the amplifier 410. An output 404C of the serial bus equalization trim circuit 404 is coupled to the trim input 408A of the equalizer circuit 408.
The transmitter circuit 406 is coupled to the receiver circuit 402 and the serial bus equalization trim circuit 404. The transmitter circuit 406 applies post-cursor emphasis to compensate for ISI on the cable segment 110. The amount of equalization provided by the transmitter circuit 406 is directly proportional to R*C product which varies over process and temperature. The transmitter circuit 406 includes a driver circuit 412, a post-cursor emphasis (PE) circuit 414, a PE delay trim circuit 416. An input 406A of the transmitter circuit 406 is coupled to the output 410A of the amplifier 410, and an input 406B of the transmitter circuit 406 is coupled to the output 410B of the amplifier 410. A trim input 406C of the transmitter circuit 406 is coupled to the output 404C of the serial bus equalization trim circuit 404 for receipt of the trim control signal 420. The PE delay trim circuit 416 provides adjustable delay that is controllable by the trim control signal 420 to adjust the delay and set the width of post-cursor emphasis provided by the transmitter circuit 406.
The serial bus equalization trim circuit 404 is coupled to the amplifier 410, the PE delay trim circuit 416, and the trim circuitry 418. The serial bus equalization trim circuit 404 controls equalization in the serial bus repeater circuit 400 based on the amplified output of the equalizer circuit 408 received from the amplifier 410. The serial bus equalization trim circuit 404 includes a data input terminal 404A coupled to the output 410A of the amplifier 410, and a data input terminal 404B coupled to the output 410B of the amplifier 410. An output 404C of the serial bus equalization trim circuit 404 is coupled to the trim input 408A of the equalizer circuit 408 and the trim input 406C of the transmitter circuit 406. Further explanation of the serial bus equalization trim circuit 404 is provided with reference to
The booster circuit 504 includes a data input terminal 504A coupled to an output 502C of the edge detector circuit 502, and a data input terminal 504B coupled to an output 502D of the edge detector circuit 502. An output 504C of the booster circuit 504 is coupled to the serial bus terminal 500A, and an output 504D of the booster circuit 504 is coupled to the serial bus terminal 500B. The booster circuit 504 includes current pulse generators 510 that generate and apply current pulses to the cable 208 based on the edges detected by the edge detector circuit 502. The current pulse generators 510 includes delay circuits 512 that set the width of the current pulses. A trim input 504E of the booster circuit 504 provides the trim control signal 420 to an input 512A of the delay circuits 512 for controlling the delay of the delay circuits 512, thereby setting the width of the current pulses.
The serial bus equalization trim circuit 404 is coupled to the edge detector circuit 502 and the booster circuit 504. The serial bus equalization trim circuit 404 generates the trim control signal 420 based on the transitions of the signal received at the serial bus terminal 500A and the serial bus terminal 500B as identified by the edge detector circuit 502. The data input terminal 404A of the serial bus equalization trim circuit 404 is coupled to the output 502C of the edge detector circuit 502, and the data input terminal 404B of the serial bus equalization trim circuit 404 is coupled to the output 502D of the edge detector circuit 502. The output 404C of the serial bus equalization trim circuit 404 is coupled to the trim input 504E of the booster circuit 504.
The flip-flop 604 is coupled to the delay circuit 602. A data input 604D of the flip-flop 604 is coupled to the output 602C of the delay circuit 602 for receipt of the delayed signal generated by the delay circuit 602. A clock input 604C of the flip-flop 604 is coupled to the data input terminal 404B. The delayed signal generated by the delay circuit 602 is clocked into the flip-flop 604 by the signal at the data input terminal 404B. The signals at the data input terminal 404A (D1)and the data input terminal 404B (D2) correspond to the complementary signals of the SYNC field shown in
Ideally, the delay circuit 602 delays the signal D1 by one-half cycle so that the rising edge of the delayed signal D1 output by the delay circuit 602 aligns with the rising edge of the signal D2 received at the data input terminal 404B. If the delay provided by the delay circuit 602 is greater than one-half cycle, then the Trim<n> signal provided at the output 604Q of the flip-flop 604 is a low signal. If the delay provided by the delay circuit 602 is less than one-half cycle, then the Trim<n> signal provided at the output 604Q of the flip-flop 604 is a logic high signal. Thus, the Trim<n> signal (delay direction signal) provided at the 604Q defines the direction of delay adjustment applied in the delay circuit 602. For example, if Trim<n> is a logic low signal, then the delay of the delay circuit 602 too great and is to be reduced, and if the Trim<n> is a logic high signal, then the delay of the delay circuit 602 is too small and the delay is to be increased.
Returning to
The reset circuit 608 is coupled to the counter circuit 606, and resets the counter circuit 606 when the flip-flop 604 changes state during the SYNC field. That is, as the delay of the delay circuit 602 is adjusted, the edge of the delayed signal D1 crosses the edge of the signal D2 and the signal Trim<n> output by the flip-flop 604 changes state.
When the signal Trim<n> changes state, the reset circuit 608 detects the transition and resets the counter circuit 606. The reset circuit 608 includes an input 608A coupled to the 604Q of the flip-flop 604, and an output 608B coupled to the reset input 606C of the counter circuit 606.
The trim storage register 610 is coupled to the counter circuit 606. The trim storage register 610 stores the Trim<(n-1):0> bits generated by the counter circuit 606. More specifically, the trim storage register 610 stores, as a final trim value, the highest value of Trim<(n-1):0> (the highest count value output) produced by the counter circuit 606 during a calibration cycle (a SYNC field) (i.e., the highest value produced by the counter circuit 606 prior to being reset by the reset circuit 608). The value of Trim<(n-1):0> stored in the trim storage register 610 and the value of Trim<n> prior to the state change form the trim control signal 420 applied to trim the equalizer circuit 408, the PE delay trim circuit 416, or the delay circuits 512. The trim storage register 610 includes an input 610A coupled to the count output 606B of the 606 and a final trim output 610B coupled to the output 404C.
In block 1002, if a SYNC field is not being received by the serial bus equalization trim circuit 600, then the trim control signal 420 is unchanged and the serial bus equalization trim circuit 600 awaits reception of a synchronization field. If a SYNC field is being received, trim is initiated in block 1004.
In block 1004, the delayed signal D1 produced by the delay circuit 602 is clocked into the flip-flop 604 at a rising edge of the signal D2 to set the direction of delay adjustment (direction of delay change). For example, if the delay applied in the delay circuit 602 is too small, then the Trim<n> signal provided at the output 604Q of the flip-flop 604 is a logic high, and if the delay applied in the delay circuit 602 is too great, then the Trim<n> signal provided at the output 604Q of the flip-flop 604 is a logic low.
In block 1006, the delay value Trim<n-1:0> is incremented by incrementing the counter circuit 606 at the rising edge of D2. Trim<n:0> is provided to the delay circuit 602 to change the delay applied to the signal D1.
In block 1008, if the output of the flip-flop 604 (the signal at the output 604Q of the flip-flop 604) has not changed state relative to the state of the signal produced in block 1004, then delay adjustment continues in block 1006. If the signal at the output 604Q of the flip-flop 604 has changed state relative to the state produced in block 1004, then delay adjustment is complete.
In block 1010, delay adjustment is complete and the value of Trim<n:0> at the rising edge of D2 that caused the change in state of Trim<n> is stored in the trim storage register 610 for use in trimming equalization.
In block 1012, the value of Trim<n:0> stored in the trim storage register 610 is applied to trim the delay circuits 512 or to trim the equalizer circuit 408 and the PE delay trim circuit 416.
The term “couple” is used throughout the specification. The term may cover connections, communications, or signal paths that enable a functional relationship consistent with the description of the present disclosure. For example, if device A generates a signal to control device B to perform an action, in a first example device A is coupled to device B, or in a second example device A is coupled to device B through intervening component C if intervening component C does not substantially alter the functional relationship between device A and device B such that device B is controlled by device A via the control signal generated by device A.
Modifications are possible in the described embodiments, and other embodiments are possible, within the scope of the claims.