The invention generally relates in one or more of its embodiments to signal processing techniques, and more particularly to a system and method for controlling equalization in a communications system.
Communication links are susceptible to noise and other influences which degrade signal quality at the receiver. Various techniques have been used to improve link performance. In mobile communication systems, one technique known as equalization compensates for inter-symbol interference (ISI) caused by the transmission medium in band-limited (frequency selective) time dispersive channels. ISI occurs when the modulation bandwidth exceeds the coherence bandwidth of the radio channel. This results in distorting the transmitted signal, causing bit errors at the receiver.
Equalization is a processing operation which minimizes ISI. As long as margins allow, transmitter-based equalization is a simpler and preferred process (compared to receiver-based equalization) in terms of circuit complexity and power dissipation. The process involves compensating for the average range of expected channel amplitude and delay characteristics. Because of the inherent properties of mobile channels, equalizers must track the time varying characteristics of the channel and therefore are said to be adaptive in nature.
Adaptive equalization is performed in multiple modes. During a training mode, a known fixed-length training sequence is sent by the transmitter so that the receiver equalizer may average to a proper setting. The training sequence is typically a pseudorandom binary signal or a fixed, prescribed bit pattern.
Immediately following the training sequence, the user data (which may or may not include coding bits) is sent and the equalizer at the receiver utilizes a recursive algorithm to evaluate the channel and estimate filter coefficients to compensate for the channel. The training sequence is designed to permit the equalizer to acquire the proper filter coefficients under the worst possible channel conditions, so that when the training sequence is finished the filter coefficients are near optimal values for reception of user data. As the user data is received, the adaptive algorithm of the equalizer tracks the changing channel conditions. The equalizer, thus, continually changes its filter characteristics over time to reduce ISI and thus improve the overall quality of data reception.
Many equalizers use fixed taps (PCI Express, Memory Interface, etc.) or component strapped values (XAUI). PCI Express is a serial I/O technology that is expected to be featured in PC's across all market segments in the near future. XAUI is another serial I/O interface which is commonly used for 10 Gbps optical Ethernet applications. In existing systems, both equalizer topologies are fixed at design time and cannot thereafter be adjusted. This is disadvantageous for a number of reasons. For example, the number of taps and filter-coefficient settings for one medium or channel may not be optimal for or may not even work for another channel. To overcome these inconsistencies, users of existing systems would manually vary certain parameters of the filter to make the link work for different channels, taking into consideration bit-rate as well as other variables. This not only proved to be time inefficient but also undermined system flexibility and adaptability.
FIGS. 10(a) and 10(b) are graphs showing a relationship between multi-tap coefficients and link losst that may be used in accordance with one or more embodiments of the present invention.
The equalizer includes a memory 6 which stores a tap coefficient lookup table which is described in greater detail below. Preferably, the core logic that receives data from a loopback channel 7 between the transmitter and receiver also passes that data to the block that computes the coefficients output from the lookup table. A forward clock channel 8 is also included between the transmitter and receiver for reasons that will become apparent below. The forward clock and loopback channels may have the same architecture as that used for the general data channels 31 and 32. The forward clock channel may not require equalization (e.g., it may send only binary bit patterns 101010 . . . ). The loopback channel may be another data channel used to send data at low frequency back to the original transmitter bit. Also, while the equalizer is shown within the transmitter, the equalizer may also be placed outside the transmitter.
The receiver includes a demodulator and de-skew circuit. In the demodulator, data is received by a sampling amplifier 21 at the input and demodulated using sampling clock signals generated by an interpolator 22. The interpolator receives the clock signals from a delay locked loop (DLL) 23. The interpolator is controlled using a tracking loop 24, which keeps on tracking the relative phase of the data with respect to a clock output from a phase-locked loop 25. The de-skew circuit 27 and sync circuit 28 synchronizes the data received from all the bits of the port together. Also, a multiplexer 29 may be included for selecting the clock signals to be input into the delay-locked loop. The de-skew and sync blocks are considered optional since the equalization coefficients may be adjusted on a per-lane basis as will be described in greater detail.
The transmitter and receiver may receive the same reference clock for driving their respective phase-locked loop circuits. Also, a forward clock channel may be established between the transmitter and receiver. The adaptive equalizer reduces ISI interference in the received signal for improving signal quality.
In accordance with at least one embodiment of the present invention, a response/feedback channel may be used for each channel being calibrated. To reduce overhead of extra channels, tap coefficients and/or other equalization settings may be automatically determined (auto-calibration may be performed) for one channel at a time. However, it is possible to use regular data channels as feedback channels. In this case, tap coefficients may be simultaneously determined for more than one transmitting channel, e.g., multi-link auto-calibration may be performed.
A multi-tap equalizer as shown in
During a link initialization procedure, the amount of loss is preferably determined for each link between the transmitter and receiver. (Block 100). This may be achieved in accordance with a handshaking and loop-back procedure performed between two chips which respectively include the transmitter and receiver. This procedure ensures that the chips are ready to participate in the equalization setting process. In calibrating each link/channel, different links may have different channel losses (different lengths, etc.). Accordingly, each channel may be calibrated individually.
Transmitter 10 sends a differential signal that includes a predetermined clock pattern to the receiver 20, whose input is offset calibrated (illustratively shown as an adjustable voltage source Voffset). The receiver sweeps the offset to determine the amplitude of the received signal preferably within one least significant bit (LSB) error. This amplitude measurement is preferably performed at a front-end sampling amplifier of the receiver. After the measurement is taken, the receiver sends a signal indicative of the received signal amplitude back to the transmitter, preferably along a dedicated channel.
Because the magnitude of the voltage offset calibration (VOC) can vary as a result of pressure, voltage, and temperature (PVT), dynamic adjustments may be performed to account for this variation. This may be accomplished using a DC pattern in a way which avoids non-linearity in voltage offset calibration ranges. For example, VOC may be performed by sending a clock pattern (e.g., a steady stream of DC “1” signals 106) from the transmitter to the receiver. The signal may be sent with a known (externally calibrated) swing, with the receiver termination open to ensure that no DC loss occurs. The receiver sweeps the offset and records the number of steps (NDC) required for determining the swing.
Determining this step count (NDC) may be performed as follows. First, the offset is calibrated to record the zero position(s), i.e., the position at which the VOC offset is completely cancelled. This detection of zero position preferably occurs during initialization, when the VOC offset is swept by the offset canceller (e.g., it may be a block that is included in the sampling amplifier of
Once step count NDC has been determined, the receiver sends this information 108 back to the transmitter preferably at a reduced frequency using a loop-back channel. Once the transmitter side receives this information, the transmitter sends an acknowledgment (ACK) signal to the receiver, which then stops the transmission. (See
By virtue of design optimization, VOC is most linear around the common mode. For a single-ended swing of 500 mV, the common mode is about 250 mV. Usually, linearity is good for about 200 mV, i.e., 100 mV around the common mode. Therefore, for DC calibration to determine NDC, a two-tap equalized DC signal may be used.
As shown in
Once the transmitter sends the clock pattern signal at full swing to the receiver, the receiver again sweeps the offset and records the number of steps (NAC) required for determining the clock amplitude of the signal. This clock amplitude is the amplitude of the clock signals, e.g., the amplitude of the 101010 . . . pattern that is being sent. The number of steps (NAC) corresponds to the number of bit setting increases that the offset controller had to perform. This step count determination may be made in the same manner as discussed for NDC, e.g., NAC is the number of steps beyond the “zero position” of the VOC offset controller. The term “AC” in NAC means an AC pattern, which, for example, may be 101010 . . . which is commonly referred to as a clock pattern in signaling terminology. (The actual clock amplitude of the 1011010 . . . pattern is not necessarily required because the system ultimately computes the ratio of NAC to NDC).
Information including NAC is fed back from the receiver to the transmitter through the loop-back channel until an acknowledgment signal (ACK) is received from the transmitter. (Block 110). All exchanges of information between the transmitter and receiver over the link preferably occur at a frequency low enough that makes equalization of the information exchange unnecessary.
Notably, under conditions of reasonably close nearest lane-to-lane skew requirements, the information fed back between the transmitter and receiver may not even be necessary. For example, when the swing is constant and the same for both sides, the NAC computed by the receiver of chip B (
The transmitter computes loss in the link based on the information related to the link loss from the receiver. (Block 120). The loss may be computed, for example, as a ratio of the received transmitted clock pattern signal amplitudes. More specifically, the loss may be calculated based on a ratio of the number of VOC steps for DC and AC patterns (thereby eliminating PVT variation of step size in VOC), given by the following equation:
Loss(dB)=−20 log((NAC/NDC)×(Vdc
Returning to
To determine the values of the multi-tap coefficients, first, the computed link loss value is located on the horizontal axis. This value is then related to the P3 and P5 curves and their corresponding coefficients are determined on the vertical axis. These coefficients are preferably selected to reduce ISI distortion (e.g., to achieve optimal signal-to-noise ratio) in the associated channel. Optimal filter coefficients may, for example, correspond to those which maximize the voltage (and time) margins at the receiver. In other cases, non-optimal values may be used.
One way in which the equalization coefficients may be stored in advance is in the form of a look-up table. This table may be stored, for example, in a memory of the transmitter. Determining coefficients using the look-up table may be accomplished in various ways. For example, the look-up table may be searched to locate coefficients for two-tap based equalization. Alternatively, the look-up table may be searched to locate coefficients for multi-tap (e.g., more than two-tap) equalization, whichever is applicable to the given implementation.
In Equation (1), a division of NAC and NDC is performed to determine link loss (Loss dB). If the division cannot be simply performed, a user may insert a two-dimensional look-up table of NAC and NDC versus equalization settings. A look-up table of this type may be simplified and made smaller by tabulating only realistic ranges of NAC and NDC.
A variety of methods may be used to generate the equalization coefficients in the look-up table. As previously mentioned, these coefficients are preferably determined to maximize the received voltage, which may be accomplished by minimizing ISI distortion in the link. In other cases, the coefficients may be computed to achieve a different level of performance.
To determine the equalization coefficients stored in the look-up table, different combinations of links operating at the same loss may be chosen. Equalization coefficients for each link combination are then optimized using, for example, a peak-distortion analysis. In optimizing the coefficients, a predetermined standard may be observed, e.g., the coefficients must exist within a specific modeling error and one LSB. In one simulation, this was performed for two- and five-tap based equalization for three magnitudes of loss.
FIGS. 10(a) and 10(b) are graphs showing some of the coefficients obtained from a simulation performed for the five-tap equalization case. These coefficients may be included in a look-up table for use in optimally setting equalization in the transmitter in accordance with one or more of the embodiments described herein.
In
In
After the equalization coefficients have been determined, the transmitter adjusts its equalization registers (e.g., FIR filters) and begins sending patterns at the equalized settings. These patterns may include actual data, the nature of which may be unknown and unpredictable. For example, the patterns may include any sequence of 1's and 0's and hence maybe regarded as random data (as opposed to the calibration interval, where deterministic patterns such as DC=1 or . . . 10100 . . . are sent out).
An optional stage involves fine tuning the setting by measuring the voltage and timing margins of the eye at the receiver pad. An on-die method of determining the “eye” seen at the pad is one method that may be used for fine-tuning. In this method, the sampling clocks out of the interpolator are made to sweep over various bit settings and the settings at which a failure occurs to detect the data correctly are noted. A measure of the extent of the timing margin is obtained as a result.
The VOC offset is then made to sweep over various settings to determine the extent of the voltage margin using a similar algorithm. This method of determining the timing and voltage margin is repeated in an automated fashion over two or three equalization settings to determine which setting is the most optimum point, thereby determining an optimum equalization setting. It is expected that this method of fine tuning will provide about 3-8% increase in eye.
Optionally, the loss information can be used to select the filter taps and coefficients to adjust terminations and transmitter drive settings. A tradeoff may exist, however, between eye size and power dissipation
By performing a non-iterative one-shot determination of the equalization settings, one or more of the embodiments described herein significantly shorten the amount of time for determining the optimal equalization settings at the receiver. This may only require a few thousand UI or about nsec and no extra hardware compared to other approaches which have been taken for determining equalization settings.
In addition to spread-spectrum systems, the embodiments of the present invention described herein may also be used in other types of communication systems including but not limited to ones utilizing copper inter-connects (SMA cables, printed circuit boards using FR-4 etc.).
In accordance with another embodiment of the present invention, a computer-readable medium storing a program which includes code sections for performing all or a portion of the functional blocks of the methods described herein. The computer-readable medium may be an integrated circuit memory formed on a same chip as and electrically coupled to the equalizer, or the medium may be another type of storage medium or device. A controller such as a CPU or other processor circuit may be used to execute the program for searching the look-up table and adjusting the equalization settings based on the search results as previously described.
In any of the aforementioned embodiments, the equalizer may perform the search of the look-up table or the search may be performed by a controller or processing circuit that is either resident on the board or chip containing the equalizer or off-board or off-chip.
Any reference in this specification to an “embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the invention. The appearances of such phrases in various places in the specification are not necessarily all referring to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with any embodiment, it is submitted that it is within the purview of one skilled in the art to effect such feature, structure, or characteristic in connection with other ones of the embodiments.
Furthermore, for ease of understanding, certain functional blocks may have been delineated as separate blocks; however, these separately delineated blocks should not necessarily be construed as being in the order in which they are discussed or otherwise presented herein. For example, some blocks may be able to be performed in an alternative ordering, simultaneously, etc.
Although the present invention has been described herein with reference to a number of illustrative embodiments, it should be understood that numerous other modifications and embodiments can be devised by those skilled in the art that will fall within the spirit and scope of the principles of this invention. More particularly, reasonable variations and modifications are possible in the component parts and/or arrangements of the subject combination arrangement within the scope of the foregoing disclosure, the drawings and the appended claims without departing from the spirit of the embodiments of the invention. In addition to variations and modifications in the component parts and/or arrangements, alternative uses will also be apparent.