# Patent

## Title
Method and system for decoding multilevel signals

## Abstract

A multilevel optical receiver can comprise a plurality of comparators that generally correspond with the number of levels in a multilevel data stream. Each comparator can be individually controlled and fed a decision threshold in order to decode a multilevel signal. The multilevel optical receiver can generate a statistical characterization of the received symbols in the form of a marginal cumulative distribution function (CDF) or probability density function (pdf). This characterization can be used to produce a set of ε-support estimates from which conditional pdfs are derived for each of the transmission symbols. These conditional pdfs may then be used to determine decision thresholds for decoding the received signal. The conditional pdfs may further be used to continuously estimate the fidelity or error rate of the received signal without the transmission of a testing sequence. The ε-supports may further be used to automatically control the gain on the receiver.

## Background
CROSS REFERENCE TO RELATED APPLICATIONS
The present application claims priority under 35 U.S.C. § 119(e) to U.S. Provisional Application Ser. No. 60/281,526 entitled, “Automatic Threshold Tracking and Digitization Method for Multilevel Signals,” filed on Apr. 4, 2001 in the name of Hietala et al. The entire contents of which are hereby incorporated by reference. This application is also related to U.S. Non-provisional application Ser. No. 10/032,586 entitled, “Increasing Data Throughput in Optical Fiber Transmission Systems,” filed on Dec. 21, 2001.


FIELD OF THE INVENTION
The present invention relates to optical fiber communication systems and increasing the throughput of data transmission over an optical fiber communication system through the use of multilevel modulation. Specifically, the present invention relates to a method and system for demodulating multilevel signals.
BACKGROUND OF THE INVENTION
The use of multilevel signals in an optical network architecture increases channel data throughput rates without requiring replacement of the existing optical fiber in a link (i.e., the optical fiber plant). While multilevel signals can offer this advantage of increased channel data throughput rates to an optical network architecture, conventional hardware and software used to decode the multilevel signal often cannot achieve this advantage because of difficulties in establishing thresholds by receivers for a multilevel signal. These thresholds are needed by the receiver to decode the multilevel signal into the one or more symbols that make up the multilevel signal.
The difficulties in establishing the thresholds are associated with reliably characterizing the noise that is present within a multilevel signal. Further, conventional hardware and software do not address multilevel signals comprising greater than two-level data streams. That is, the conventional art only provides methods for automatically controlling the threshold or decision points for traditional two-level data streams.
The voltage detection thresholds or decision points of multilevel receivers are usually centered in a statistical center of each of the troughs of a graphical representation of a marginal probability density function (pdf) that corresponds to the “eyes” of an “eye diagram” for a multilevel signal in order to minimize the number of decoding errors. Since the troughs or “eyes” of a pdf are usually not uniformly distributed in voltage, a simple conventional direct analog-to-digital conversion (ADC) at a minimum number of bits is not adequate for decoding a multilevel signal.
Conventional receivers for decoding two-level multilevel signals frequently assume additive noise with parametric noise distributions such as a Gaussian distribution. Conventional receivers for decoding two-level multilevel signals also usually assume simple linear dependencies on the transmitted two-level multilevel signal.
However, the noise in optical channels of a multilevel signal may have distributions that are non-Gaussian. Further, the distortion of multilevel signals may be nonlinear in nature resulting in asymmetric or multi-modal pdfs for the received signal.
In addition to the problems associated with estimating noise distributions in a multilevel signal, another problem exists in the conventional art with respect to reliably determining the fidelity of a received multilevel signal without the explicit transmission of a “testing” data sequence that is already known to the receiver. Conventional performance monitors can generally be categorized into one of two sets.
The first set are those that use a secondary threshold (or sampling phase) to approximately determine how often a received symbol is near to the primary threshold (or sampling phase) used for decoding. When the detected sample from this second threshold differs from the primary sample, a pseudo-error is said to have occurred. The link is then characterized with the pseudo-error rate. This class of approaches, however, neglects the fact that under optimal filtering, the primary and secondary samples will be heavily statistically correlated, and thus, misrepresents the link performance.
The second set of performance monitors of the conventional art are those that rely on acquiring statistics from an error correction module. Specifically, forward error correction coding is used at the transmitter to allow the receiver to correct a small number of errors. If the true number of errors incurred during transmission is sufficiently small, then the receiver can correct all of the errors and report the rate at which errors occur. This class of performance monitors, however, suffers two significant drawbacks.
First, these methods require the use of an error correction code so that errors can be detected. The second drawback is that transmission errors must occur in order to acquire statistics regarding their frequency of occurrence. By the very nature of the high quality of the link, these errors will rarely occur, and thus, the performance monitor requires a significant amount of time to reliably report the error rate.
In view of the foregoing, there exists a need in the art for a multilevel signal receiver that does not assume a particular noise distribution in a received multilevel signal. That is, a need exists in the art for a multilevel signal receiver that employs robust estimates of noise distributions in order to process complex signal distortions that may be present in a multilevel signal while maintaining high performance for classic Gaussian noise distributions that may also be present in a multilevel signal. Aspects include the need in the art for (1) a method and system for automatically selecting the decision thresholds for a multilevel signal receiver on an adaptive basis, (2) a multilevel signal receiver that can process multi-modal conditional probability density functions, and (3) a method and system for decoding multilevel signals that can provide a reliable fidelity measure of the received signal without the transmission of explicit error testing sequences known to the receiver. In other words, a need exists in the art for a complete statistical characterization of link noise to reliably establish decision thresholds and infer error rates without suffering from the aforementioned drawbacks of the conventional art.
SUMMARY OF THE INVENTION
The present invention solves the aforementioned problems by providing a system and method for decoding multilevel signals. More specifically, the present invention is generally drawn to a method and system for selecting an optimal set of decision thresholds that can be used by an optical receiver in order to decode a multilevel optical signal. In one exemplary embodiment, the multilevel optical receiver can comprise a plurality of comparators that generally correspond with the number of levels in a multilevel data stream. Each comparator can be individually controlled and fed a decision threshold in order to decode a particular channel from a multilevel signal.
Unlike conventional optical receivers, the present invention can automatically control the thresholds or decision points for comparators of multilevel optical receivers that process multilevel data streams, where the noise corrupting the received signal is not necessarily Gaussian, signal independent, nor time-invariant. In other words, multilevel data streams can be distorted by noise where the noise follows a non-Gaussian probability distribution whose parameters depend on the transmitted signal values and vary with time. However, the present invention can still effectively process multilevel signals that have Gaussian, time-invariance, or signal-independence characteristics.
According to one aspect of the present invention, a multilevel optical receiver can comprise a plurality of voltage comparators, a decoder, a latch, an analog low-pass filter coupled to the latch, and a low-speed high resolution analog-to-digital converter coupled to the low-pass filter. With such structure, the multilevel optical receiver can generate an estimate of a cumulative distribution function (CDF) based on the received multilevel data signal.
The CDF can completely characterize the received multilevel data signal. From the CDF, the optical receiver can further generate an equivalent marginal probability density function (pdf) which is used to determine a near-optimal set of decision thresholds. A marginal pdf can be defined as an “overall” pdf characterizing the received signal when random symbols are transmitted. A marginal pdf can comprise one or more conditional pdfs. A conditional pdf is the pdf for an individual symbol of a multilevel signal, i.e. the pdf of the received signal conditioned on a particular symbol being transmitted.
Instead of using the calculated pdf to determine an optimal set of thresholds, the CDF function itself in one exemplary embodiment can be used to determine the decision thresholds as it conveys the same information as the pdf but in a less intuitive form. In either case, the invention can assist with centering the voltage detection thresholds for each of the plurality of comparators. In the pdf exemplary embodiment, the invention can center the voltage detection thresholds at the troughs or local minima of the pdf (or equivalently at the points of inflection of the CDF) which correspond to near-optimal decision thresholds for the received signal. In this way, the probability of error in the detection of the individual symbols that make-up multilevel signal can be minimized.
The centering of voltage detection thresholds based upon the calculated pdfs can involve several different steps. In one exemplary embodiment, a first step can comprise calculating an initial set of ε-support estimates corresponding to ranges of received voltages of significant probability for receiving a particular symbol. Next, the ε-support regions are combined until there is a 1-to-1 correspondence between the transmitted symbol levels and the ε-support regions. Possible threshold candidates can then be determined by establishing the threshold between the ε-support regions.
According to another aspect of the present invention, a multilevel optical receiver can comprise a plurality of voltage comparators, an analog low-pass filter, and a low-speed high resolution analog-to-digital converter coupled to the low-pass filter. According to this exemplary aspect, a latch that can be coupled to the low-pass filter has been removed. The removal of this latch can change the region of the signal that is being characterized. Specifically, latching the comparator output focuses the CDF/pdf characterization to the portion of the signal synchronized with the system clock and decision output. By removing the latch, the statistical characterization applies to the entire received signal and not just that portion which is used for the decision output.
For an alternative exemplary embodiment of the present invention, the CDF and pdf can be generated in a digital fashion (rather than the analog fashion described above) by using a track-and-hold circuit or a sample-and-hold circuit. The track-and-hold circuit or the sample-and-hold circuit can sample an input multilevel data signal and accumulate the samples over time. These samples can then be digitally processed to provide either a marginal pdf or CDF. As before, the CDF or pdf may then be used to determine the decision threshold voltages.
According to another alternative exemplary embodiment of the present invention, a high-resolution analog-to-digital converter (ADC) can measure the voltage of the received multilevel signal. The digitized multilevel signal can be provided to a digital signal processor (DSP) which computes the pdf and decision thresholds. The DSP can then use the computed thresholds to decode subsequent symbols digitized from the multilevel signal.
Those skilled in the art will recognize that different hardware or software or both can be substituted for the exemplary embodiments described herein without departing from the scope and spirit of the present invention. Specifically, as long as the hardware or software (or both) performs the functions described herein, then those skilled in the art will appreciate that the present invention would be embodied in such alternative hardware or software or both.
A further aspect of the invention can include calculating the fidelity of a multilevel signal based upon an estimated marginal pdf. Specifically, the marginal pdf can be used to estimate a set of conditional pdfs (one for each candidate symbol of a multilevel signal). These conditional pdfs can then be used to estimate the probability of error for each symbol and hence the system as a whole. This aspect of the invention allows for error performance to be measured without explicit error tests that require testing sequences (known to the receiver) to be transmitted.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a bock diagram of a fiber optic link constructed in accordance with an exemplary multilevel optical signal system.
FIG. 2 is a block diagram of an exemplary multilevel optical receiver according to an exemplary embodiment of the present invention.
FIG. 3A is a diagram showing a representative example of an ideal 16-level signal.
FIG. 3B is an exemplary simulated received signal displaying the signal in FIG. 3A transmitted through 80 km of optical fiber.
FIG. 3C illustrates an exemplary Eye-diagram for 4,096 simulated symbols received through 80 km of optical fiber.
FIG. 4 illustrates a block diagram of an exemplary embodiment for a 16-level multilevel optical receiver.
FIG. 5A illustrates a block diagram of another exemplary embodiment for a 16-level multilevel optical receiver.
FIG. 5B illustrates a block diagram of yet another exemplary embodiment for a 16-level multilevel optical receiver.
FIG. 5C illustrates a block diagram of yet a further exemplary embodiment for a 16-level multilevel optical receiver.
FIG. 6A illustrates an exemplary cumulative distribution function (CDF) for the received signal of FIG. 3C sampled at the horizontal eye-center.
FIG. 6B illustrates an exemplary marginal probability density function (pdf) for the received signal of FIG. 3C sampled at the horizontal eye-center.
FIG. 7 illustrates a block diagram of alternative exemplary embodiment for a 16-level multilevel optical receiver.
FIG. 8A illustrates another exemplary eye diagram for simulated data of a 16-level transmission.
FIG. 8B illustrates a histogram of the data shown in FIG. 8A.
FIG. 9 is an exemplary logic flow diagram illustrating a method for decoding a multilevel signal.
FIG. 10 is an exemplary logic flow diagram illustrating a sub-method of FIG. 9 for calculating a cumulative distribution function according to an exemplary embodiment of the present invention.
FIG. 11 is an exemplary logic flow diagram illustrating a sub-method of FIG. 9 for calculating a marginal probability density function according to an exemplary embodiment of the present invention.
FIG. 12 is an exemplary logic flow diagram illustrating a sub-method of FIG. 9 for calculating a marginal probability density function according to alternate exemplary embodiment of the present invention.
FIG. 13 is an exemplary logic flow diagram illustrating a sub-method of FIG. 9 for calculating one or more decision thresholds according to an exemplary embodiment of the present invention.
FIG. 14 is an exemplary logic flow diagram illustrating a sub-method of FIG. 9 for calculating the fidelity of a multilevel signal according to an exemplary embodiment of the present invention.
FIG. 15 illustrates a graph of an exemplary measured pdf for an N=16 level multilevel signal according to an exemplary embodiment of the present invention.
FIG. 16 illustrates a graph of an exemplary initial pdf estimate for an N=16 level multilevel signal according to an exemplary embodiment of the present invention.
FIG. 17 illustrates a graph of an exemplary revised pdf estimate for an N=16 level multilevel signal according to an exemplary embodiment of the present invention.
FIG. 18 illustrates a graph of the log-likelihood ratio of an exemplary initial pdf estimate over the measured pdf for an N=16 level multilevel signal according to an exemplary embodiment of the present invention.
FIG. 19 illustrates a graph of the log-likelihood ratio of an exemplary revised pdf estimate over the measured pdf for an N=16 level multilevel signal according to an exemplary embodiment of the present invention.
FIG. 20 illustrates a graph with a measured pdf along with decision thresholds and fidelity characterizations for an N=16 level multilevel signal according to an exemplary embodiment of the present invention.



DETAILED DESCRIPTION OF EXEMPLARY EMBODIMENTS
The present invention can select a near-optimal set of decision thresholds that can be used by an optical receiver in order to decode a multilevel optical signal. The multilevel optical receiver can comprise a plurality of comparators that generally correspond with the number of levels in a multilevel data stream. Each comparator can be individually controlled and fed a decision threshold in order to decode a particular symbol from a multilevel signal. Alternatively, a high-resolution analog-to-digital converter (ADC) can measure the voltage of the received multilevel signal. The digitized multilevel signal can be provided to a digital signal processor (DSP) which computes the pdf and decision thresholds. The DSP can then use the computed thresholds to decode subsequent digitized symbols from the multilevel signal.
The present invention typically does not require the assumption of Gaussianity, time-invariance, signal-independence, or binary signaling. Contrary to the conventional art, the invention is designed to perform well when these assumptions do not hold. However, the present invention can also perform well if the assumptions do hold or are valid.
A CDF can completely characterize the received multilevel signal data. From the CDF, the optical receiver can further generate an equivalent marginal probability density function (pdf) which is used to determine an optimal set of decision thresholds. A marginal pdf can be defined as an “overall” pdf characterizing the received signal when the symbol transmitted is unknown. A marginal pdf can comprise one or more conditional pdfs. A conditional pdf is the pdf for an individual symbol of a multilevel signal, i.e. the pdf of the received signal conditioned on a particular symbol being transmitted.
The determining of voltage detection thresholds based upon the calculated pdfs can involve several different steps. In one exemplary embodiment, a first step can comprise calculating an initial set of ε-support estimates that comprise ranges of received voltages. Next, the ε-support regions are combined until there is a 1-to-1 correspondence between the transmitted symbol levels and the ε-support regions. Possible threshold candidates can then be determined by establishing the threshold between the ε-support regions.
Referring now to the drawings, in which like numerals represent like elements throughout the several Figures, aspects of the present invention and the illustrative operating environment will be described.
FIG. 1 is a functional block diagram illustrating an exemplary optical network architecture 100 according to the present invention. The exemplary optical network architecture 100 comprises a transmitter 110 that includes the circuitry necessary to modulate the light source 120 with the incoming multiple channel digital data input stream. The light source 120 is usually a laser in the form of a laser diode or an externally modulated laser source such as a Mach-Zehnder, or Electro-Absorptive modulator. The transmitter 110 takes a set of n high-speed digital binary inputs or channels and converts them to a single multilevel digital signal comprising 2n levels at the same symbol rate (and thus an n times faster data rate) as the input data channels.
The exemplary optical network architecture 100 further comprises an optical waveguide 130 that can include one or more spans of optical fiber. The optical waveguide 130 couples the light source 120 to an optical detector 140. The optical detector 140 can be coupled to a receiver 150 that is responsible for decoding the multilevel signal into one or more channels of digital data output. The receiver 150 takes a single multilevel digital signal comprising 2n levels at the same symbol rate and converts the multilevel signal into a set of n high-speed digital binary inputs or channels. The receiver 150 typically comprises all circuitry required to operate a corresponding optical detector 140 and to amplify the detected signal. Further details of the receiver 150 will be discussed below with respect to FIG. 2.
Referring now to FIG. 2, this figure illustrates a block diagram of an exemplary multilevel receiver 150 according to an exemplary embodiment of the present invention that can also be referred to as a desymbolizer. The receiver 150 can comprise an optical detector and TransImpedance Amplifier (TIA) circuitry 140. Usually, the TransImpedance Amplifier takes a very small electrical current output by the optical detector and converts it to a proportional voltage with a moderate intensity (“moderate” in the sense that it may still need further amplification). As noted above, the optical detector 140 coverts an optical signal into an electrical signal. The optical detector 140 is coupled to an amplifier 210 that feeds its output into a signal conditioning filter 215. The gain of the amplifier 210 can be controlled by a signal integrity unit (SIU) 220.
The optional signal conditioning filter 215 can comprise one or more programmable analog signal processing modules such as equalizers and filters. The signal conditioning filter 215 is also coupled to and controlled by the SIU 220. The SIU 220 can determine the decision or voltage thresholds that are used to decode the multilevel signal. Further details of various exemplary embodiments of the SIU 220 will be discussed below with respect to FIGS. 4, 5, and 7.
A clock recovery unit 225 can be coupled to the output of the amplifier 210 or an optional signal conditional filter 215. The clock recovery unit 225 can generate a timing signal that is used to operate an optional holding circuit 230 and an analog-to-digital converter (ADC) 235. The holding circuit 230 is not required for each of the exemplary embodiments. The holding circuit 230 can comprise one of a track-and-hold circuit or a sample-and-hold circuit as known to those skilled in the art. The holding circuit 230 is coupled to the output of the signal conditioning filter 215.
Coupled to the output of the optional holding circuit 230 is the ADC 235 which decodes the multilevel signal. The ADC 235 can convert a 2n-level signal into n binary data streams. Further details of various exemplary embodiments of the ADC 235 will be discussed below with respect to FIGS. 4, 5, and 7. The ADC 235 having a decoder 410 (not shown in FIG. 2) can convert a coded n-bit word each clock cycle into the corresponding n-bit word that was initially input into the transmitter 110. All of these functional blocks, less the optical detector and TIA circuitry 140 can be integrated into one circuit or on a multi-chip module.
Background on Multilevel Signals
FIG. 3A is a graph 300 depicting time versus voltage of an exemplary multilevel amplitude shift keying (ASK) signal 305 that combines four bits into a single transmitted pulse, or symbol, possessing one of 16 possible amplitude levels. While the present invention contemplates ASK signals, other modulation techniques are not beyond the scope of the present invention. Other modulation techniques include, but are not limited to, frequency shift keying (FSK), phase shift keying (PSK), quadrature amplitude modulation (QAM), and other like modulation techniques.
In FIG. 3A, five different amplitude values 310, 315, 320, 325, and 330 are shown. Associated with each amplitude value can be a unique n=4 bit word. For example, the amplitudes 310, 315, 320, 325, and 330 could be associated with the words “0010”, “0101”, “0111”, “0001”, and “0110”. Specifically, associated with the first amplitude value 310 can be the four bit word of “0010.” Associated with the second amplitude value 315, which is higher in voltage than the first value 310, can be the four bit word of “0101.” Associated with the third amplitude value 320, which is higher in voltage than the second value 315, can be the four bit word of “0111.” Associated with the fourth amplitude value 325, which is the lowest value out of all the values, can be the four bit word of “0001.” And lastly, associated with the fifth amplitude value 330, which is between the second and third values 315 and 320, can be the four bit word of “0110.” Those skilled in the art will appreciate that other words or assignments can be made for each amplitude value of a multilevel signal without departing from the scope and spirit of the present invention.
A multilevel signal allows for more than one bit to be transmitted per clock cycle, thereby improving the spectral efficiency of the transmitted signal. For multilevel optical transmission, some characteristic (i.e., signal property) of a transmitted pulse (such as amplitude, phase, frequency, etc.) is modulated over 2n levels in order to encode n bits into the single pulse, thereby improving the spectral efficiency of the transmitted pulse. Multilevel modulation can increase aggregate channel throughput by combining n OOK data streams (each with bit rate, B, in bits/s) into one 2n-level signal (with a symbol rate, B, in symbols/s) for an aggregate throughput (in bits/s) that is n times greater than B. The aggregate data rate of the 16-level signal shown in FIG. 3 is four times greater than a corresponding OOK signal with a bit rate equal to the multilevel symbol rate. As the simplest case, OOK can be regarded as a two level multilevel signal where the symbol rate and bit rate are equal.
As a specific example, the assumption may be made that the 16-level signal in FIG. 3 has a symbol rate of 2.5 Gsym/s. That is, a pulse e.g., with one of 16 possible amplitudes (e.g. 310, 315, 320, 325, and 330) is transmitted at a rate of 2.5 Gigapulses/s. Therefore, the aggregate data rate of the 16-level signal is actually 10 Gb/s (4×2.5 Gb/s) because each pulse (i.e., symbol) can represent a distinct value of four bits. The optical components required to transmit and receive a 16-level 2.5 Gsym/s signal are nearly identical to those required for transmitting and receiving an OOK 2.5 Gb/s signal.
Exemplary Portion of a Simulated Received Multilevel Signal
Referring now to FIG. 3B, this figure is a graph 350 of time versus voltage depicting an exemplary simulated received 16-level multilevel signal 355 that was propagated through 80 kilometers of optical fiber. The received 16-level multilevel signal 355 shown in FIG. 3B is an illustration of a segment covering eight symbols of the simulated waveform. The simulated waveform is based on 80 kilometers of fiber and an Avalanche PhotoDiode (APD). An APD can convert the optical signal to an electrical current whose amplitude is proportional to the received optical power. The simulated received multilevel signal 355 illustrates the challenge of directly determining the levels of each data stream contained in the signal.
Exemplary Eye-diagram for Received Multilevel Signal
Referring now to FIG. 3C, this figure is a graph 360 of time versus voltage depicting an exemplary “Eye”-diagram 365 for all 4,096 received symbols corresponding to the transmitted signal 305 of FIG. 3A. Eye diagram 365 comprises the complete data set with all symbol periods overlaid on one another. An Eye diagram/Eye pattern comprises the received signal displayed on an oscilloscope to show how distinct the received levels are. Often, an “open” eye 370 shows a good quality signal with clear differences between levels. A “closed” eye means that some levels could be confused for other levels, and therefore is a sign of a poor transmission system.
Eye diagram 365 illustrates the difficulty in determining the thresholds for multilevel data streams. From this simulation, it is apparent that the noise is signal dependent. Specifically, larger signal levels usually have a larger associated noise variance as is evidenced by the thickening of the eye-lids towards the top of the eye-diagram 365. It is desired to have voltage detection thresholds centered in the statistical center of each of the 15 “eyes” 370. Furthermore, the eyes 370 are no longer uniformly distributed in voltage because the transmitter (with prior knowledge of the signal dependent noise variance) spaces the transmitted levels in a nonuniform manner in order to minimize the susceptibility to the noise and hence minimize the probability of error.
Because the transmitted levels are not uniformly spaced, a simple conventional direct ADC 235 at the minimum number of bits (log2(16)=4 in this case) is not adequate. Hypothetically, the received voltage signal could be digitized at a higher resolution (additional bits) and signal processing applied to determine the correct level. Unfortunately, at the targeted symbol rates of many optical systems (i.e. OC-192 at 10 Gb/s), this would require order-of-magnitude speed improvements of readily available ADC and signal processing technologies.
Exemplary Embodiments for Analog-To-Digital Converters (ADCs) and Signal Integrity Units (SIUs)
Referring now to FIG. 4, this figure illustrates the details of an exemplary ADC 235 and a SIU 220. The ADC 235 may comprise a plurality of first comparators 405 connected in parallel to a decoder 410. The ADC 235 may be characterized as a high-speed low-resolution ADC that converts the received multilevel signal (symbols) into the associated transmitted data words or data channels. The threshold voltages of the comparators 405 are controlled by one or more digital-to-analog converters 415. The decoder 410 is coupled to an exemplary first latch 420 that may be four bit latch type. A second comparator 425 is connected in parallel with the first comparators 405. However, the second comparator 425 does not feed its output to the decoder 410. Instead, the output of the second comparator 425 is fed into a second optional latch 430 which is controlled by the clock signal. The subcircuit comprising the second comparator 425 and the optional latch 430 is referred to as the event-detection circuit (EDC), as illustrated in FIG. 4, since it produces a binary signal indicating if a particular event (in this case the event is whether vrv exceeds vin as discussed later) has occurred.
The comparator 425 used in the EDC should ideally be identical to and in the same environment as the first comparators 405. This will allow for the SIU to accurately determine threshold settings of the ADC with a one-to-one voltage correspondence. Assuming that the ADC 235 is in the form of an integrated circuit (IC), the first comparators 405 and the second comparator 425 should be realized with the same basic circuitry and located in the same region of the IC to provide good thermal matching. In other words, the first comparators 405 and the second comparator 425 in this exemplary embodiment are manufactured on or within the same integrated circuit in order to improve thermal matching.
The output of the second optional latch 430 is fed into a filter 435 that is part of the signal integrity unit 220. The output of the second optional latch 430 is called Event Detection (ED). After low-pass filtering by the LPF 435, the DC component remains and is termed the event monitor voltage vem and is an analog probability estimate for the controlled reference voltage vrv exceeding the received signal vin where vrv is generated by the digital-to-analog converters 415. Further details of the analog probability estimate vem and the controlled reference voltage vrv will be discussed below.
The output of the second optional latch 430 can be fed to a second analog-to-digital converter 440 that is part of the signal integrity unit 220. Opposite to first ADC 235, the second ADC 440 may be characterized as a low-speed high-resolution ADC that measures the averaged event-detector output representing the CDF value. Specifically, the reference voltage vrv is swept over a range of voltage levels while the second ADC 440 samples the voltage vem from the filter 435 to produce an estimate of the CDF.
More specifically, pseudo-code to construct the CDF could comprise one or more of the following steps: Step 1: Set the reference voltage vrv to the minimum value of interest, i.e. lowest possible received voltage. This could be referred to as the start of the sweep. Step 2: Measure the averaged event-detector output voltage vem and take that value as the CDF value for the set reference voltage. Step 3: Increment the reference voltage. Step 4: If the reference voltage is above the maximum value of interest, a “sweep” has been completed and then the reference voltage is reset and the process returns to Step 1. Otherwise, the process of “sweeping” continues and returns to Step 2. It is noted that a single point of the CDF (step 2) is obtained for each value of the reference voltage.
Therefore, the SIU 220 sets vrv to a fixed value and then measures the averaged ED output. The SIU 220 then sets vrv to a different fixed value and measures another point of the CDF. This process is completed until the CDF curve is formed.
The second ADC 440 feeds its output to a microcontroller 445. Microcontroller 445 processes the cumulative distribution function (CDF) to determine threshold voltage values for the first comparators 405. Further details of the microcontroller's processing of the CDF will be discussed below with respect to FIGS. 6A, 6B, and 9. The microcontroller 445 is responsible for feeding the threshold voltage values to the first comparators 405 for decoding the multilevel signal.
FIG. 4 illustrates a portion of a 16 level receiver 150, but it should be obvious to one skilled in the art that this circuit can be readily extended to any number of levels. For 16-levels (N=16) there is necessarily 15 (or N−1) voltage decision levels.
Through the use of the second optional latch 430 in FIG. 4, the portion of the signal analyzed can be restricted to the eye-opening sampled once each clock period. In this case, the resulting estimated cumulative distribution function (CDF) reports the distribution of received analog signal values at the sampling point used in the decision circuitry in the receiver 150, i.e. the signal timing used by the first comparators 405 is the same as that used by the EDC. This synchronization prevents other regions of the signal from corrupting the estimation process.
Although the data rate of the received signal can be very high (e.g. on the order of tens of gigabits per second), receiver 150 of the present invention does need not sample the signal at this high rate to analyze the signal. The receiver 150 avoids this impediment by using the simple high-speed second comparator 425 that indicates whether a controlled reference voltage exceeds the received signal at the clocked sample time. The resulting binary signal can then be averaged in time with the analog low-pass filter 435 to estimate the probability that the reference voltage exceeds the received signal. This probability estimate is a slowly-varying (ideally a constant) function and can thus be sampled with a high-resolution low-speed ADC 440.
Referring now to FIG. 5A, this figure illustrates another exemplary embodiment for an analog-to-digital converter (ADC) 235′ and SIU 220. Only the differences between FIG. 4 and FIG. 5A will be discussed below. According to this exemplary embodiment, the second optional latch 430 that can be coupled to the low-pass filter 435 has been removed. The removal of this latch can change the region of the signal that is being analyzed. Specifically, referring back to FIG. 4, latching the output of the second comparator 425 focuses the CDF characterization to the portion of the signal synchronized with the system clock and decision output. By removing the latch as illustrated in FIG. 5A, the statistical characterization applies to the entire received signal and not just that portion which is used for the decision output.
Referring now to FIG. 5B, this figure illustrates another alternative and exemplary embodiment for a multilevel receiver according to the present invention. In this exemplary embodiment, a high-resolution analog-to-digital converter (ADC) 440′ can measure the voltage of the received multilevel signal. The digitized multilevel signal can then be provided to a digital signal processor (DSP) 505. The DSP 505 can generate a CDF of the data in software using the digitized samples. Furthermore, the DSP 505 can incorporate the operation of the controller 445 in the SIU 220 to determine the decision thresholds. Then, instead of using the first comparators 405, decoder 410, and latch 420, the DSP 505 can perform the equivalent operations in software to identify each symbol of the multilevel signal.
Referring now to FIG. 5C, this figure illustrates another alternative and exemplary embodiment for a multilevel receiver according to the present invention. Only the differences between FIG. 5C and FIG. 4 will be discussed. FIG. 5C differs from FIG. 4 in the contents of the EDC. For the embodiment of FIG. 5C, the event that the EDC detects corresponds to the received signal being between vrv−Δ and vrv+Δ. Thus, for small values of Δ, the average of the EDC output corresponds to a pdf estimate. The embodiment in FIG. 5C consequently bypasses the estimation of the CDF and directly estimates the pdf in the analog circuitry. The EDC in this exemplary embodiment comprises a pair of second comparators 574, 576 coupled to an AND gate 578. The EDC further comprises a second latch 430. As in FIG. 5A, the optional latch may be removed from FIG. 5C to pose another alternative embodiment (not shown or described herein).
Exemplary Cumulative Distribution Function of Simulated Received Multilevel Signal
Referring now to FIG. 6A, this figure illustrates a graph 600 of an empirical cumulative distribution function (CDF) 605 for the received multilevel signal sampled at the eye openings 370 of FIG. 3C. The CDF 605 is generated by taking the received signal vin(t) and comparing it (with second comparator 425) to a controlled reference voltage vrv to produce a binary signal that indicates whether the sampled signal is less than the set reference voltage. This binary signal may then be latched (through second optional latch 430) so that only eye-opening statistics are considered. The binary signal is then low-pass filtered (with filter 435) which corresponds to averaging in time. Thus, the low-pass filtered signal conveys the fraction of time (i.e. probability) that the received signal is less than the reference voltage.
Generating this probability estimate over a range of reference voltages produces CDF 605 that can completely characterize the received signal. In particular, the estimated noise distribution (and hence threshold selection method) is free from restrictive assumptions such as Gaussianity and symmetry that, while commonly used, can be detrimental in some circumstances when dealing with multilevel data. But it is noted that the present invention can also function when Gaussian and symmetry conditions hold.
Exemplary Probability Density Function (pdf) Derived from the CDF
Referring now to FIG. 6B, this figure illustrates a graph 610 of a probability density function (pdf) 615 that can be derived from the CDF 605 of FIG. 6A. The microcontroller 445 of the signal integrity unit 220 can calculate this marginal pdf 615 as will be discussed below with respect to the method illustrated in FIGS. 9–14. As is evident from pdf 615, the noise incurred in transmission is signal dependent, e.g. the modes 620 of the pdf become shorter and wider as signal intensity increases. For such situations involving signal dependent noise, optimal transmission levels can be adapted to the noise in the channel to minimize the probability of error. This adaptation can be made by the transmitter 110.
Referring now to both FIGS. 6A and 6B, the minimum number of required sample points of the pdf is 2N−1 where N is the number of symbols that can be transmitted. Specifically, at least 2N−1 reference voltages would be required to describe the N peaks in the pdf (one peak for each of the candidate symbols) and the N−1 troughs (one for each pair of adjacent symbols). However, sufficiency of this minimal number of reference voltages generally requires that (i) the true underlying pdf be composed of symmetric and signal independent noise distributions, (ii) the transmission levels be uniformly spaced, and (iii) the estimation process be noise-free. None of these conditions are likely to be satisfied in practice, but their importance is vastly diminished as the number of reference voltages used is increased. In current practice, ADC technology is readily available to allow for high fidelity quantization (in excess of 14 bits or equivalently 4096 reference levels) for the sampling speeds required for the present invention.
Alternate Exemplary Embodiment for ADC and SIU of FIG. 7
Referring now to FIG. 7, another alternate exemplary embodiment for the ADC 235′′ and SIU 220′′ is illustrated. Only the differences between FIG. 4 and FIG. 7 will be discussed below. In this embodiment, the second comparator 425, latch 430, and low-pass filter 435 have been replaced with a holding circuit 705.
In this exemplary embodiment, the CDF 605 and pdf 615 can be measured in a digital fashion (rather than the analog fashion described above) by using a holding circuit 705. The holding circuit 705 can comprise a track-and-hold circuit or a sample-and-hold circuit. The track-and-hold circuit or the sample-and-hold circuit of holding circuit 705 can sample an input multilevel data signal and accumulate the samples over time. These samples can then be digitally processed to provide either a marginal pdf 605 or CDF 615. As before, the CDF 605 or marginal pdf 615 may then be used by the microcontroller 445 to determine the optimal decision threshold voltages for the comparators 405.
Additional Eye Diagram and Corresponding Digitally Processed Histogram
Referring now to FIGS. 8A and 8B, FIG. 8A illustrates a graph 800 of time versus voltage depicting an exemplary “Eye”-diagram 805 for all 4,096 received symbols corresponding to a transmitted signal that could be similar to the transmitted signal 305 of FIG. 3A. Eye diagram 805 comprises the complete data set with all symbol periods overlaid on one another. Meanwhile, FIG. 8B illustrates a histogram 810 of measured voltages for the received analog multilevel signal that is sampled at random points in time. This histogram 810 is an example of a pdf estimate. This histogram 810 is comprised of a finite number of the most recent “n” samples taken by the holding circuit 705. As a new sample is determined, the oldest is removed from the sample set.
Ideally samples would occur at times centered temporally in the high-speed data stream's eyes. This would require critical timing requirements and therefore not be expected to be cost effective. Instead, the voltage samples can be easily made at random times thereby allowing for the elimination of all critical timing circuitry. The result of random signal voltage sample times is similar to the ideal sampling case due to the smaller probability of sampling during a signal transition. While not dominant, samples do occur during a signal transition which results in a data “floor” in the histogram, which can be removed during subsequent signal processing.
Random sampling for this application means random to the high-speed data rate. This can be achieved by using a periodic sample rate, which is not harmonically related to the high-speed data rate. The actual average sample rate of the random voltage samples is dictated by the threshold update speed desired. If the communication channel is expected to vary quickly with time, the sample rate must be correspondingly high. As an example, assuming that the channel varies with a 10 ms characteristic time and 1000 samples forms the histogram; average conversion speed only need be 100,000 samples per second.
To produce the histogram 810 of FIG. 8B, the microcontroller 445 can sample the received analog voltage of the multilevel signal by triggering the holding circuit 705 at some time random in relation to the received data stream. The holding circuit 705 will necessarily have a capture bandwidth commensurate with the high-speed data stream, but will only need to be able to sample at rate much lower than that of the high-speed data stream. The microcontroller 445 would then trigger the second ADC 440 conversion and record the resulting voltage. The microcontroller 445 can continue this process until adequate statistic information can be gathered to determine the appropriate decision levels.
Method For Decoding a Multilevel Signal
Referring now to FIG. 9, this figure is an exemplary logic flow diagram that illustrates a method 900 for decoding a multilevel signal according to the embodiment illustrated by FIGS. 2 and 4. Differences in implementation and operation compared to other embodiments are described after the full operation of the embodiment in FIGS. 2 and 4 is discussed. Certain steps in the processes described below must naturally precede others for the present invention to function as described. However, the present invention is not limited to the order of the steps described if such order or sequence does not alter the functionality of the present invention. That is, it is recognized that some steps may be performed before, after, or in parallel with other steps without departing from the scope and spirit of the present invention.
The method 900 starts with step 905 in which a multilevel signal is received by the first comparator 405 of a multilevel receiver 150. In step 907, the received multilevel signal is continuously sampled. Step 907 basically describes an approach where the multilevel signal is continuously observed in order to decode the received data. In other words, step 907 may describe a loop where the multilevel signal is continuously sampled while the remaining steps of FIG. 9 are performed in parallel relative to the continuous sampling carried out in step 907.
Next in routine 910, a cumulative distribution function (CDF) based upon previous symbols in the multilevel signal is calculated by the microcontroller 445 of the signal integrity unit 220. Further details of routine 910 will be discussed below with respect to FIG. 10.
Next, in optional routine 915, a marginal probability density function (pdf) is calculated by the microcontroller 445 based upon the CDF calculated in routine 910. As noted above, a marginal pdf can be defined as an “overall” pdf that results from random symbols being received. A marginal pdf can comprise one or more conditional pdfs. A conditional pdf is a pdf associated or corresponding to an individual symbol of a multilevel signal. Routine 915 is optional since decision thresholds can be calculated from the CDF alone. Further details of routine 915 will be discussed below with respect to FIGS. 11 and 12.
In routine 920, one or more decision thresholds based on at least one of the CDF and pdf can be determined. As mentioned previously, since the calculation of the pdf is optional, decision thresholds can be determined from a calculated CDF alone. The microcontroller 445 is usually responsible for performing routine 920. Further details of routine 920 will be discussed below with respect to FIG. 13.
In step 925, the microcontroller 445 associates a threshold voltage level with each determined decision threshold calculated in routine 920. The microcontroller 445 forwards these voltage levels to the one or more first comparators 405 of the first analog-to-digital converter (ADC) 235.
Next, in step 930, each first comparator 405 compares the received multilevel signal with the one or more threshold voltages supplied by the microcontroller 445. In step 935, the decoder 410 of the first ADC 235 decodes the multilevel signal into one or more data streams based upon the comparisons.
In routine 940, the microcontroller estimates the fidelity of the received multilevel signal. Further details of routine 940 will be discussed below with respect to FIG. 14.
In step 945, the operation of the programmable analog signal processors located in the signal conditioning filter 215 can be adjusted by the microcontroller 445 of the signal integrity unit 220 based upon the calculated fidelity in routine 940. For example, the weighting coefficients of a programmable delay line equalization filter could be adjusted to minimize the estimated probability of error inferred from this fidelity measure. Similarly, a controllable delay on the clock timing may be adjusted to maximize the fidelity measure.
Next in step 950, the gain of the entire system can be adjusted based on the range of received signal values inferred from the pdf as is discussed later.
Exemplary Embodiment of Sub-Method for Calculating Cumulative Distribution Function (CDF)
Referring now to FIG. 10, this figure illustrates exemplary steps for routine 910 of FIG. 9 that calculates a CDF according to the exemplary embodiment of the invention illustrated in FIG. 4. Routine 910 starts with step 1005 in which a reference voltage is swept over a range of feasible voltage levels by the microcontroller 445 of FIG. 4. During step 1005, the second comparator 425 and low-pass filter 435 generate an analog probability estimate vem for a controlled reference voltage vrv. In other words, while sweeping vrv, vem is measured. The measurement estimates the probability that the reference voltage exceeds the received signal.
To understand why this occurs, consider the reference vrv held at a constant voltage. The output of the second comparator 425 is a binary value equal to one if vin≦vrv and equal to 0 otherwise. This output can thus be written as the indicator function 1(vin≦vrv). The low-pass filter 435 (labeled LPF) then averages this function over time, i.e. it approximates the fraction of the time that vin is less than vrv, or in other words, it approximates the probability P(vin≦vrv). More precisely,




  
    
      
        
          
            
              
                v
                
                  e
                  ⁢
                  
                    
                  
                  ⁢
                  m
                
              
              =
              
              ⁢
              
                
                  v
                  ol
                
                +
                
                  
                    K
                    ·
                    A
                  
                  ⁢
                  
                    
                  
                  ⁢
                  v
                  ⁢
                  
                    
                  
                  ⁢
                  
                    g
                    ⁡
                    
                      [
                      
                        1
                        ⁢
                        
                          (
                          
                            
                              v
                              in
                            
                            ≤
                            
                              v
                              
                                r
                                ⁢
                                
                                  
                                
                                ⁢
                                v
                              
                            
                          
                          )
                        
                      
                      ]
                    
                  
                
              
            
          
        
        
          
            
              ≈
              
              ⁢
              
                
                  v
                  ol
                
                +
                
                  K
                  ·
                  
                    
                      ∫
                      
                        -
                        ∞
                      
                      ∞
                    
                    ⁢
                    
                      1
                      ⁢
                      
                        (
                        
                          
                            v
                            in
                          
                          ≤
                          
                            v
                            
                              r
                              ⁢
                              
                                
                              
                              ⁢
                              v
                            
                          
                        
                        )
                      
                      ⁢
                      
                        p
                        ⁡
                        
                          (
                          
                            v
                            in
                          
                          )
                        
                      
                      ⁢
                      
                        d
                        
                          v
                          in
                        
                      
                    
                  
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                
                  v
                  ol
                
                +
                
                  
                    ∫
                    
                      -
                      ∞
                    
                    
                      V
                      ⁢
                      
                        
                      
                      ⁢
                      r
                      ⁢
                      
                        
                      
                      ⁢
                      v
                    
                  
                  ⁢
                  
                    
                      p
                      ⁡
                      
                        (
                        
                          v
                          
                            i
                            ⁢
                            
                              
                            
                            ⁢
                            n
                          
                        
                        )
                      
                    
                    ⁢
                    
                      d
                      
                        v
                        in
                      
                    
                  
                
              
            
          
        
        
          
            
              =
              
              ⁢
              
                
                  v
                  ol
                
                +
                
                  K
                  ·
                  
                    P
                    ⁡
                    
                      (
                      
                        
                          v
                          in
                        
                        ≤
                        
                          v
                          
                            r
                            ⁢
                            
                              
                            
                            ⁢
                            v
                          
                        
                      
                      )
                    
                  
                
              
            
          
        
      
    
    
      
        (
        1
        )
      
    
  




in which vol is the output voltage low state of the D-FF and K is a proportionality constant identical to the voltage swing from the D-FF (K=voh−vol where voh is the output voltage high).

Next in step 1010, the microcontroller 445 measures the resulting probability estimate in order to generate the CDF 605 illustrated in FIG. 6A (which can be converted to a more intuitive pdf as discussed with respect to FIG. 12 below). The sub-method then returns to routine 915 of FIG. 9.
Exemplary Embodiment of Sub-Method for Calculating a Probability Density Function
Referring now to FIG. 12, this figure illustrates exemplary steps for routine 915 of FIG. 9 that calculates a pdf according to the exemplary embodiment of FIG. 4. Routine 915 starts with step 1205 in which a first difference is calculated for the CDF 605 determined in routine 910. The first difference is generally the discrete time equivalent of a derivative. Specifically, for a sequence x[n], the first difference is the sequence x[n]−x[n−1]. The result is the histogram h(vrv) (not shown).
Unless a very large number of samples are used for each of the CDF points, there will be a considerable amount of statistical noise in the resulting pdf. Thus, step 1215 smoothes the histogram h(vrv) (not shown) by filtering the histogram along the reference voltage. Specifically, h(vrv) is convolved with a boxcar function to filter the histogram along vrv to produce the smoothed pdf g(vrv). This operation is motivated by regularity assumptions on the underlying noise distribution. Furthermore, the application of the differentiation (step 1205) and convolution to the CDF can be combined into one step, i.e.




  
    
      
        
          g
          ⁡
          
            (
            
              
                
                  v
                  k
                
                +
                
                  v
                  
                    k
                    +
                    1
                  
                
              
              2
            
            )
          
        
        =
        
          
            1
            
              
                (
                
                  
                    2
                    ⁢
                    R
                  
                  +
                  1
                
                )
              
              ⁢
              
                Δ
                v
              
            
          
          ⁡
          
            [
            
              
                P
                ⁡
                
                  (
                  
                    v
                    
                      k
                      +
                      R
                      +
                      1
                    
                  
                  )
                
              
              -
              
                P
                ⁡
                
                  (
                  
                    v
                    
                      k
                      -
                      R
                    
                  
                  )
                
              
            
            ]
          
        
      
    
    
      
        (
        2
        )
      
    
  




where P(vk) represents the CDF measured at voltage vk, R is the “radius” of the boxcar kernel, and Δv is the spacing between voltage samples. Note that the calculation in Eq. (2) is no more computationally intensive than taking a first difference (step 1205).

In step 1220, the histogram g(vrv) (not shown) can be smoothed along the time domain. Specifically, the histogram is smoothed along the time domain because should the pdf's vary slowly with time (if at all), by smoothing in time, more samples are being used (in an iterative framework) to estimate the probabilities without having to acquire many samples to generate each probability estimate. In essence, measurements of vem are being recycled to estimate the pdf. To be more precise, first consider the pdf evaluated for a particular voltage v, i.e. consider the pdf on a pointwise basis. For each iteration n, a pdf value gn(v) (i.e. the pdf smoothed along voltage) is measured providing a noisy measurement of the true pdf value pn(v) at time n, i.e. the observation model is

gn(v)=pn(v)+wn(v)  (3)

where wn(v) is sample noise which is assumed to be white, i.e. the inner product of wn(v) with wm(v) is a Dirac function. The evolution of the true pdf is modeled by the independent increments (and thus Markov) process

pn(v)=pn−1(v)+un(v)  (4)

where un(v) is another white noise process independent of wn(v). The optimal estimator for the system given by the state dynamics in Eqs. (3) and (4) is the recursive estimator





  
    
      
        
          
            q
            n
          
          ⁡
          
            (
            v
            )
          
        
        =
        
          
            α
            ⁡
            
              [
              
                
                  
                    g
                    n
                  
                  ⁡
                  
                    (
                    v
                    )
                  
                
                -
                
                  
                    q
                    
                      n
                      -
                      1
                    
                  
                  ⁡
                  
                    (
                    v
                    )
                  
                
              
              ]
            
          
          +
          
            
              q
              
                n
                -
                1
              
            
            ⁡
            
              (
              v
              )
            
          
        
      
    
    
      
        (
        
          5
          ⁢
          a
        
        )
      
    
  
  
    
      
        
          
        
        ⁢
        
          =
          
            
              
                (
                
                  1
                  -
                  α
                
                )
              
              ⁢
              
                
                  q
                  
                    n
                    -
                    1
                  
                
                ⁡
                
                  (
                  v
                  )
                
              
            
            +
            
              α
              ⁢
              
                
              
              ⁢
              
                
                  g
                  n
                
                ⁡
                
                  (
                  v
                  )
                
              
            
          
        
      
    
    
      
        (
        
          5
          ⁢
          b
        
        )
      
    
  




where qn(v) denotes the pdf estimate at iteration n. Eq. (5a) is written in the form of a trivial Kalman filter (with Kalman gain α). Eq. (5b) is the Kalman filter rewritten in a form which makes the exponential memory decay of the process more explicit.

The reader may wonder why using Eq. (5) is preferable to simply using more samples to generate each gn(v). Although both approaches can be used to provide an estimate with high statistical significance, the brute force method of simply using more samples requires an associated larger amount of time to acquire those samples. The state-space approach in Eq. (2.4) recycles information so that the time required to generate each gn(v) can be considerably reduced. Eqs. (2) and (5) provide a smoothed (in both voltage and time) pdf 615 from the CDF provided through vem. The smoothing (in either voltage or time) steps 1215 and 1220 are optional and may not be required if adequate statistical significance can be achieved in a reasonable amount of time. After generating and optionally smoothing the pdf 615, the process then returns to routine 920 of FIG. 9.
Exemplary Embodiment of Sub-Method for Calculating Decision Thresholds
Referring now to FIG. 13, this figure illustrates exemplary steps for routine 920 of FIG. 9 that determines the one or more decision thresholds according to an exemplary embodiment of the present invention. To motivate the proposed methodology, the underlying analysis is presented here. It starts with a model of the received N-level signal. For each transmitted signal level x=An (nε{0, . . . , N−1}), the received symbol y has an associated conditional pdf p(y|x=An). This conditional pdf is the pdf for the received symbol conditioned on transmitting a particular level An. When the transmitted level is not known (as is the case in realistic settings), the pdf characterizing the received symbol is the marginal pdf




  
    
      
        
          p
          ⁡
          
            (
            y
            )
          
        
        =
        
          
            1
            N
          
          ⁢
          
            
              ∑
              
                n
                =
                0
              
              
                N
                -
                1
              
            
            ⁢
            
              p
              ⁡
              
                (
                
                  
                    y
                    |
                    x
                  
                  =
                  
                    A
                    n
                  
                
                )
              
            
          
        
      
    
    
      
        (
        6
        )
      
    
  




where it is assumed that all the symbols are equally likely to have been transmitted. To illustrate the structure of such a marginal pdf, FIG. 15 illustrates the marginal pdf (as a measured histogram) for an 16-level signal transmitted through 25 km of fiber. There are N=16 clearly identifiable modes of the pdf associated with the N transmission levels. There will always be at least N such distinct modes in situations where signal detection is possible. This property will be exploited for the operation of the SIU.

The manner in which the pdf's structure is exploited will be through the use of what this detailed description refers to as “ε-supports”. The support of a function ƒ(x) is mathematically defined to be the set {x|ƒ(x)>0}, i.e. where the function is strictly positive. This is generalized to define the ε-support of a pdf as

Sε={y|p(y)>ε}  (7)

i.e. the ε-support conveys the range of values of y that are likely to be observed. Furthermore, if the received signal is of reasonable fidelity (i.e. if the received symbols can be correctly detected with a low probability of error), then the ε-supports for the each of the transmitted symbols do not overlap. Thus, a unique ε-support is identified with each conditional pdf, i.e.

Sn,ε={y|p(y|x=An)>ε}  (8)

that conveys the range of values of y that are likely to be observed when transmitting level An.

In practice, the conditional pdf's are usually unknown. However, an estimate {circumflex over (p)}(y) of the marginal pdf can be obtained from the low-pass filtered event-detector output. Because the modes of the pdf are well separated (as in FIG. 15), for links of reasonable quality, reliable estimates can be obtained of the conditional ε-supports by taking them as the N regions composing the marginal ε-support Sε. Specifically, the following three steps can be taken to obtain estimates of Sn,ε

    
    
        1. In step 1305, the observed pdf {circumflex over (p)}(y) is normalized to have a peak value of 1, i.e. define
    
    






  
    
      
        
          
            q
            ^
          
          ⁡
          
            (
            y
            )
          
        
        =
        
          
            
              p
              ^
            
            ⁡
            
              (
              y
              )
            
          
          
            
              max
              y
            
            ⁢
            
              {
              
                
                  p
                  ^
                
                ⁡
                
                  (
                  y
                  )
                
              
              }
            
          
        
      
    
    
      
        (
        9
        )
      
    
  




    
    
        2. Next, in step 1310, {circumflex over (q)}(y) is thresholded against ε (which is normalized to the range 0<ε<1), i.e. estimate Sε as

Ŝε={y|q(y)>ε}  (10)

where the resulting Ŝε is a set of intervals or “regions”.

        3. In step 1315, if there are more than N connected intervals composing Ŝε, then iteratively merge the two regions that are “closest” together until only N regions remain, where the measure of “closeness” is given by the function:
    
    






  
    
      
        
          d
          ⁡
          
            (
            
              A
              ,
              B
            
            )
          
        
        =
        
          
            min
            
              
                a
                ∈
                A
              
              ,
              
                b
                ∈
                B
              
            
          
          ⁢
          
            |
            
              
                a
                -
                b
              
              
                
                  λ
                  A
                
                +
                
                  λ
                  B
                
              
            
            |
          
        
      
    
    
      
        (
        11
        )
      
    
  




for any two regions A,BεŜε where λA and λB are the lengths (i.e. Lebesgue measure) of A and B, respectively. By “merging” regions A and B, it means to take the convex hull of their union (i.e. if A=[alow, ahigh], B=[blow, bhigh], and ahigh<blow, then the merger is taken as [alow, bhigh]).

Note that one skilled in the art will understand that a variety of functions can be used in place of Eq. (11) and still yield the desired result. All that is required is that the chosen function conveys a notion of the distance between sets. It should also be noted that step 1315 above has the additional benefit that if the data exhibits multiple eye-lids or multiple-rails for a single transmitted symbol, then the merging will associate the multiple eye-lids according to their underlying common transmitted symbol. Specifically, link characteristics such as nonlinearities and intersymbol interference result in signal distortions that manifest themselves as multi-modal conditional pdf's (or equivalently multiple eye-lids when the data is viewed as an eye-diagram). The multiple modes result in extra, but closely spaced, regions in Ŝε. The merging in step 1315 combines these multiple modes according to the underlying transmitted symbol.
In step 1320, possible threshold candidates are determined based upon the combined remaining regions of the ε-supports. Specifically, having estimated N ε-supports (each associated with one of the possible signal levels An), the following describes how the thresholds are set between the regions. First, each of the conditional pdf's p(y|x=An) are modeled as a Gaussian (more to be said about the Gaussian modeling and application to non-Gaussian noise at the end of this subsection). In particular, for each transmitted signal level x=An (nε{(0, . . . , N−1}), the received symbol y is modeled with the conditional pdf

p(y|x=An)=φ(y; μn, σn)  (12)

where φ(y; μn, σn) is the Gaussian pdf with mean μn and standard deviation σn, i.e.





  
    
      
        
          φ
          ⁡
          
            (
            
              
                y
                ;
                
                  μ
                  n
                
              
              ,
              
                σ
                n
              
            
            )
          
        
        =
        
          
            1
            
              
                
                  2
                  ⁢
                  π
                
              
              ⁢
              
                σ
                n
              
            
          
          ⁢
          
            
              exp
              ⁡
              
                [
                
                  
                    -
                    
                      
                        (
                        
                          y
                          -
                          
                            μ
                            n
                          
                        
                        )
                      
                      2
                    
                  
                  
                    2
                    ⁢
                    
                      σ
                      n
                      2
                    
                  
                
                ]
              
            
            .
          
        
      
    
    
      
        (
        13
        )
      
    
  




Because each conditional pdf is assumed to be Gaussian, it is characterized by the conditional mean μn and standard deviation σn. These two parameters are unknown quantities which must be estimated from the received data. To do this, the observed marginal pdf {circumflex over (p)}(y) and the ε-supports Ŝn,ε are used. Specifically, step 1320 can comprise the following substeps:

    
    
        1. Compute the empirical mean and standard deviation based on {circumflex over (p)}(y) but restricted to the domain where y is in Ŝn,ε, i.e.
    
    






  
    
      
        
          
            μ
            _
          
          n
        
        =
        
          
            
              ∫
              
                
                  S
                  ^
                
                
                  n
                  ,
                  ɛ
                
              
            
            ⁢
            
              y
              ⁢
              
                
              
              ⁢
              
                
                  p
                  ^
                
                ⁡
                
                  (
                  y
                  )
                
              
              ⁢
              
                d
                y
              
            
          
          
            
              ∫
              
                
                  S
                  ^
                
                
                  n
                  ,
                  ɛ
                
              
            
            ⁢
            
              
            
            ⁢
            
              
                
                  p
                  ^
                
                ⁡
                
                  (
                  y
                  )
                
              
              ⁢
              
                d
                y
              
            
          
        
      
    
    
      
        (
        14
        )
      
    
  
  
    
      
        
          σ
          _
        
        =
        
          
            
              
                ∫
                
                  
                    S
                    ^
                  
                  
                    n
                    ,
                    ɛ
                  
                
              
              ⁢
              
                
                  
                    (
                    
                      y
                      ⁢
                      
                        
                      
                      -
                      
                        
                          μ
                          _
                        
                        n
                      
                    
                    )
                  
                  2
                
                ⁢
                
                  
                    p
                    ^
                  
                  ⁡
                  
                    (
                    y
                    )
                  
                
                ⁢
                
                  d
                  y
                
              
            
            
              
                ∫
                
                  
                    S
                    ^
                  
                  
                    n
                    ,
                    ɛ
                  
                
              
              ⁢
              
                
              
              ⁢
              
                
                  
                    p
                    ^
                  
                  ⁡
                  
                    (
                    y
                    )
                  
                
                ⁢
                
                  d
                  y
                
              
            
          
        
      
    
    
      
        (
        15
        )
      
    
  




    
    
        2. The quantities μn and σn correspond to the mean and standard deviation of y conditioned on the events that (i) level An was transmitted and (ii) the received value y lies in the set Ŝn,ε. However, the parameters μn and σn that are desired are the mean and standard deviation conditioned only on the event that level An was transmitted (i.e. the range of y is not restricted). To obtain this quantity, μn and σn are scaled appropriately with the set Ŝn,ε to unbias the estimates. Using the appropriate normalization, this produces potential estimates of μn and σn as
    
    






  
    
      
        
          
            μ
            ^
          
          n
        
        =
        
          
            μ
            _
          
          n
        
      
    
    
      
        (
        16
        )
      
    
  
  
    
      
        
          
            σ
            ^
          
          n
          2
        
        =
        
          
            
              σ
              _
            
            n
            2
          
          
            1
            -
            
              
                2
                ⁢
                ɛ
                ⁢
                
                  
                    ln
                    ⁡
                    
                      (
                      
                        1
                        /
                        ɛ
                      
                      )
                    
                  
                
              
              
                
                  π
                
                ⁢
                e
                ⁢
                
                  
                
                ⁢
                r
                ⁢
                
                  
                
                ⁢
                
                  f
                  ⁡
                  
                    (
                    
                      
                        ln
                        ⁡
                        
                          (
                          
                            1
                            /
                            ɛ
                          
                          )
                        
                      
                    
                    )
                  
                
              
            
          
        
      
    
    
      
        (
        17
        )
      
    
  




where Eq. (16) implies that μn is already appropriately normalized. However, the estimate given by Eq. (17) is not used as it is written for the following reason. Even though ε is a user-specified parameter, its use in Eq. (17) is not quite correct. Specifically, recall that the threshold ε is applied to the marginal pdf in contrast to the conditional pdf for level An. Because the true standard deviation σn will likely vary among the different levels, the specified ε is correctly normalized only for the conditional pdf with the largest peak (i.e. smallest σn), and the use of this value of ε for all n, is inappropriate. To correct for this level dependent fluctuation in ε, the value of ε is estimated for each level An from the empirical probability measure of the associated ε-support region. One skilled in the art can calculate this revised value of ε as

εn=exp[−erfinv(N∫Ŝn,ε{circumflex over (p)}(y)dy)2].  (18)

Thus, in computing σn, εn is used as defined by Eq. (18) instead of the user-specified ε.
These steps provide {circumflex over (μ)}n and {circumflex over (σ)}n for all n, and thus, a characterization of all the conditional pdf's.
FIGS. 16–17 (for a 16-level signal) show the results of this procedure on the data in FIG. 15. The measured pdf is shown in the solid curve. The difference between the measured pdf and the Gaussian mixture model (i.e. the modeling error) is shown with the dotted curve. FIG. 16 shows the modeling error for the Gaussian model when the parameter estimates are given by Eqs. (16) and (17) without the correction for ε; FIG. 17 shows the error when the parameter estimates include the ε correction in Eq. (18). The improvement from using εn is negligible for larger values of vin (since ε is already approximately correct), but the improvement is significant for smaller value of vin where there are large differences among the σn, and hence ε.
FIGS. 18–19 show the log-likelihood ratio (LLR) of the measured pdf to the modeled pdf. The information content is the same as that in FIGS. 16 and 17, but because the LLR is used in place of the difference, the plot emphasizes the goodness of fit in the tails of the distribution. From FIGS. 18–19, it is seen that the Gaussian model does provide an accurate fit in the tails of the distribution down to the floor associated with the limited amount of data.
Referring back to FIG. 13, as an alternative approach to estimating μn and σn, instead of using an approach based on the empirical statistics in Eqs. (14) through (17), the parameters can be estimated directly from the location and length of the ε-support Ŝn,ε. Specifically, denoting Ŝn,ε as the closed interval [a, b], the conditional mean can be taken as

{circumflex over (μ)}n=(a+b)/2   (19)

and the conditional standard deviation as





  
    
      
        
          
            σ
            ^
          
          n
        
        =
        
          
            b
            -
            a
          
          
            2
            ⁢
            
              
                2
                ⁢
                
                  ln
                  ⁡
                  
                    (
                    
                      1
                      /
                      ɛ
                    
                    )
                  
                
              
            
          
        
      
    
    
      
        (
        20
        )
      
    
  




As with Eq. (17), the estimate in Eq. (20) can be improved by using εn from Eq. (18) in place of ε.

Using the Gaussian model and estimated parameters {circumflex over (μ)}n and {circumflex over (σ)}n the decision thresholds can now be proposed. The nature of noise in communications channels is that the noise perturbations are usually small rather than large. Not only is this the case for the Gaussian noise model, but for many other noise models as well. For this reason, in this and the following section, we consider only symbol errors associated with an adjacent level. These types of errors dominate the link performance characterization. Thus, it is sufficient to consider each pair of adjacent transmissions in a conventional on-off keying (OOK) context. In particular, the optimal threshold to differentiate levels An and An+1 is well approximated by




  
    
      
        
          T
          
            n
            ,
            
              n
              +
              1
            
          
        
        =
        
          
            
              
                
                  μ
                  ^
                
                n
              
              ⁢
              
                
                  σ
                  ^
                
                
                  n
                  +
                  1
                
              
            
            +
            
              
                
                  μ
                  ^
                
                
                  n
                  +
                  1
                
              
              ⁢
              
                
                  σ
                  ^
                
                n
              
            
          
          
            
              
                σ
                ^
              
              n
            
            +
            
              
                σ
                ^
              
              
                n
                +
                1
              
            
          
        
      
    
    
      
        (
        21
        )
      
    
  




which has an associated probability of error of





  
    
      
        
          
            
              
                
                  
                    
                      
                        Pr
                        (
                        
                          error
                          ⁢
                          
                            
                          
                          ⁢
                          between
                          ⁢
                          
                            
                          
                          ⁢
                          symbols
                          ⁢
                          
                            
                          
                          ⁢
                          n
                        
                      
                    
                  
                  
                    
                      
                        
                          
                            
                              
                                and
                                ⁢
                                
                                  
                                
                                ⁢
                                n
                              
                              +
                              1
                            
                            |
                            x
                          
                          =
                          
                            A
                            n
                          
                        
                        )
                      
                    
                  
                
                =
                
                ⁢
                
                  
                    
                      
                        Pr
                        (
                        
                          error
                          ⁢
                          
                            
                          
                          ⁢
                          between
                          ⁢
                          
                            
                          
                          ⁢
                          symbols
                          ⁢
                          
                            
                          
                          ⁢
                          n
                        
                      
                    
                  
                  
                    
                      
                        
                          
                            
                              
                                and
                                ⁢
                                
                                  
                                
                                ⁢
                                n
                              
                              +
                              1
                            
                            |
                            x
                          
                          =
                          
                            A
                            
                              n
                              +
                              1
                            
                          
                        
                        )
                      
                    
                  
                
              
            
          
          
            
              
                =
                
                ⁢
                
                  
                    1
                    2
                  
                  ⁢
                  
                    erfc
                    ⁡
                    
                      (
                      
                        
                          Q
                          
                            n
                            ,
                            
                              n
                              +
                              1
                            
                          
                        
                        
                          2
                        
                      
                      )
                    
                  
                
              
            
          
        
         
      
    
    
      
        (
        22
        )
      
    
  




where Qn,n+1 is the traditional Q-factor estimate





  
    
      
        
          Q
          
            n
            ,
            
              n
              +
              1
            
          
        
        =
        
          
            
              
                
                  μ
                  ^
                
                
                  n
                  +
                  1
                
              
              -
              
                
                  μ
                  ^
                
                n
              
            
            
              
                
                  σ
                  ^
                
                n
              
              +
              
                
                  σ
                  ^
                
                
                  n
                  +
                  1
                
              
            
          
          .
        
      
    
    
      
        (
        23
        )
      
    
  




The statistical analysis of routine 920 will usually be continually performed; thereby adjusting the decision levels in real time to compensate for time varying distortion/noise of the received signal. After routine 1320, the process for the current iteration returns to step 925 of FIG. 9.
Prior to moving onto the next subsection, the robustness of the Gaussian model is discussed. Like much of the conventional art, the conditional pdfs are modeled as Gaussian. However, because of the use of the ε-supports to estimate the parameters of the Gaussian pdfs, the method still performs well in situations where the data is not Gaussian distributed. Specifically, recall that the first step of the analysis is to compute N ε-support regions to characterize the region of significant probability for the conditional pdfs. Thus, if the ε-supports are correctly associated with the conditional pdfs, then the thresholds will be established in the tails of the pdfs thus producing a low-probability of error. Fortunately, the method proposed in Eqs. (9)–(11), and the surrounding text, should easily and correctly determine the ε-supports because the modes of the pdfs will be well separated in realistic communications systems. Thus, even though a Gaussian model is used to establish the thresholds in this sub-section, the use of the ε-supports to determine the parameters still allow for non-Gaussian distributions (such as multi-modal distributions) to be handled as well.
Exemplary Embodiment of Sub-Method for Estimating Link Fidelity
Referring now to FIG. 14, this figure illustrates exemplary steps for routine 940 of FIG. 9 that estimates the fidelity of a multilevel signal according to an exemplary embodiment of the present invention. Routine 940 starts with step 1405 in which a conditional probability density function (pdf) is estimated for each symbol of the multilevel signal. Next, in step 1410, the probability of error for the entire system can be calculated. Specifically, the “wellness” of the data may be output as a voltage vfid that conveys signal fidelity to analog signal conditioning circuits to provide an improved eye opening for reduced error rate.
This sub-method allows for error performance to be gauged without explicit data error tests that can only be performed in artificial settings where the transmitted values are known. Specifically, using the above statistical characterization of the received data, the performance of the link can be estimated using random data. Efforts in the conventional art usually estimate the error rate of the link by transmitting a testing sequence of data (already known to the receiver) which is detected by the receiver. The receiver of the conventional art then counts how many decoding errors were encountered.
The proposed method, in contrast, leverages the probabilistic modeling of the system to estimate link error rates without the transmission of a predetermined testing sequence. In particular, the error rate can be estimated while receiving random data during real-world operation by exploiting Eq. (22). Specifically, the overall link symbol error rate can be obtained by averaging the probability of symbol error conditioned on a given transmitted symbol yielding:




  
    
      
        
          
            
              
                
                  Pr
                  ⁡
                  
                    (
                    error
                    )
                  
                
                =
                
                ⁢
                
                  
                    1
                    N
                  
                  ⁢
                  
                    
                      ∑
                      
                        n
                        =
                        0
                      
                      
                        N
                        -
                        1
                      
                    
                    ⁢
                    
                      Pr
                      ⁡
                      
                        (
                        
                          error
                          |
                          
                            A
                            n
                          
                        
                        )
                      
                    
                  
                
              
            
          
          
            
              
                =
                
                ⁢
                
                  
                    1
                    N
                  
                  ⁡
                  
                    [
                    
                      
                        Pr
                        ⁡
                        
                          (
                          
                            error
                            |
                            
                              A
                              0
                            
                          
                          )
                        
                      
                      +
                      
                        Pr
                        ⁡
                        
                          (
                          
                            error
                            |
                            
                              A
                              
                                N
                                -
                                1
                              
                            
                          
                          )
                        
                      
                      +
                      
                        
                          ∑
                          
                            n
                            =
                            1
                          
                          
                            N
                            -
                            2
                          
                        
                        ⁢
                        
                          Pr
                          ⁡
                          
                            (
                            
                              error
                              |
                              
                                A
                                n
                              
                            
                            )
                          
                        
                      
                    
                    ]
                  
                
              
            
          
          
            
              
                =
                
                ⁢
                
                  
                    1
                    
                      2
                      ⁢
                      N
                    
                  
                  ⁢
                  
                    {
                    
                      
                        erfc
                        ⁡
                        
                          (
                          
                            
                              Q
                              
                                0
                                ,
                                1
                              
                            
                            
                              2
                            
                          
                          )
                        
                      
                      +
                      
                        erfc
                        ⁡
                        
                          (
                          
                            
                              Q
                              
                                
                                  N
                                  -
                                  2
                                
                                ,
                                
                                  N
                                  -
                                  1
                                
                              
                            
                            
                              2
                            
                          
                          )
                        
                      
                      +
                    
                  
                
              
            
          
          
            
              
                 
                ⁢
                
                  
                    ∑
                    
                      n
                      =
                      1
                    
                    
                      N
                      -
                      2
                    
                  
                  ⁢
                  
                    
                      [
                      
                        
                          erfc
                          ⁡
                          
                            (
                            
                              
                                Q
                                
                                  
                                    n
                                    -
                                    1
                                  
                                  ,
                                  n
                                
                              
                              
                                2
                              
                            
                            )
                          
                        
                        +
                        
                          erfc
                          ⁡
                          
                            (
                            
                              
                                Q
                                
                                  n
                                  ,
                                  
                                    n
                                    +
                                    1
                                  
                                
                              
                              
                                2
                              
                            
                            )
                          
                        
                      
                      ]
                    
                    }
                  
                
              
            
          
          
            
              
                =
                
                ⁢
                
                  
                    1
                    N
                  
                  ⁢
                  
                    
                      ∑
                      
                        i
                        =
                        0
                      
                      
                        N
                        -
                        2
                      
                    
                    ⁢
                    
                      erfc
                      ⁡
                      
                        (
                        
                          
                            Q
                            
                              n
                              ,
                              
                                n
                                +
                                1
                              
                            
                          
                          
                            2
                          
                        
                        )
                      
                    
                  
                
              
            
          
        
         
      
    
    
      
        (
        24
        )
      
    
  




Eq. (24) provides the symbol error probability. If desired, one can convert this to a bit error probability. Specifically, if a Gray-coding scheme is used for the binary representation of the data, then each symbol error between adjacent levels produces a single bit error. Considering that signals composed of N levels require to log2 N bits for their binary representation, this yields a bit error probability of





  
    
      
        
          
            
              
                
                  P
                  ⁡
                  
                    (
                    
                      bit
                      ⁢
                      
                        
                      
                      ⁢
                      error
                    
                    )
                  
                
                =
                
                  
                    P
                    ⁡
                    
                      (
                      
                        symbol
                        ⁢
                        
                          
                        
                        ⁢
                        error
                      
                      )
                    
                  
                  
                    
                      log
                      2
                    
                    ⁢
                    N
                  
                
              
            
          
          
            
              
                =
                
                  
                    1
                    
                      N
                      ⁢
                      
                        
                      
                      ⁢
                      
                        log
                        2
                      
                      ⁢
                      N
                    
                  
                  ⁢
                  
                    
                      ∑
                      
                        i
                        =
                        0
                      
                      
                        N
                        -
                        2
                      
                    
                    ⁢
                    
                      
                        erfc
                        ⁡
                        
                          (
                          
                            
                              Q
                              
                                n
                                ,
                                
                                  n
                                  +
                                  1
                                
                              
                            
                            
                              2
                            
                          
                          )
                        
                      
                      .
                    
                  
                
              
            
          
        
         
      
    
    
      
        (
        25
        )
      
    
  




This bit error probability can then be converted into an “effective” Q-factor (i.e. the Q value of an OOK system that has the same bit error rate as the multi-level system) via





  
    
      
        
          
            
              
                
                  Q
                  eff
                
                =
                
                  
                    
                      2
                      ⁢
                      
                        
                      
                    
                  
                  ⁢
                  e
                  ⁢
                  
                    
                  
                  ⁢
                  r
                  ⁢
                  
                    
                  
                  ⁢
                  f
                  ⁢
                  
                    
                  
                  ⁢
                  c
                  ⁢
                  
                    
                      
                    
                    ⁢
                    
                      
                    
                  
                  ⁢
                  i
                  ⁢
                  
                    
                  
                  ⁢
                  n
                  ⁢
                  
                    
                  
                  ⁢
                  
                    v
                    ⁡
                    
                      (
                      
                        2
                        ⁢
                        P
                        ⁢
                        
                          
                        
                        ⁢
                        r
                        ⁢
                        
                          
                        
                        ⁢
                        
                          (
                          
                            b
                            ⁢
                            
                              
                            
                            ⁢
                            i
                            ⁢
                            
                              
                            
                            ⁢
                            t
                            ⁢
                            
                              
                            
                            ⁢
                            e
                            ⁢
                            
                              
                            
                            ⁢
                            r
                            ⁢
                            
                              
                            
                            ⁢
                            r
                            ⁢
                            
                              
                            
                            ⁢
                            o
                            ⁢
                            
                              
                            
                            ⁢
                            r
                          
                          )
                        
                      
                      )
                    
                  
                
              
            
          
          
            
              
                =
                
                  
                    2
                  
                  ⁢
                  e
                  ⁢
                  
                    
                  
                  ⁢
                  rfc
                  ⁢
                  
                    
                  
                  ⁢
                  i
                  ⁢
                  
                    
                  
                  ⁢
                  n
                  ⁢
                  
                    
                  
                  ⁢
                  
                    
                      v
                      ⁡
                      
                        (
                        
                          
                            2
                            
                              N
                              ⁢
                              
                                
                              
                              ⁢
                              
                                log
                                2
                              
                              ⁢
                              N
                            
                          
                          ⁢
                          
                            
                              ∑
                              
                                n
                                =
                                0
                              
                              
                                N
                                -
                                2
                              
                            
                            ⁢
                            
                              erfc
                              ⁡
                              
                                (
                                
                                  
                                    Q
                                    
                                      n
                                      ,
                                      
                                        n
                                        +
                                        1
                                      
                                    
                                  
                                  /
                                  
                                    2
                                  
                                
                                )
                              
                            
                          
                        
                        )
                      
                    
                    .
                  
                
              
            
          
        
         
      
    
    
      
        (
        26
        )
      
    
  




The reliability measures in Eqs. (24)–(26) are all equivalent, and thus, any of these three can serve as a fidelity measure of the channel reliability. However, the effective Q-factor of Eq. (26) is more practical for implementation because it is less susceptible to circuit noise. Specifically, the error rate of the link is expected to be near zero, and if either the bit or symbol error probability were used as the fidelity measure, then a small amount of noise in the circuitry would drown out the fidelity measure signal. The process then returns to step 945 of FIG. 9.

Referring now to FIG. 20, this figure illustrates the measured pdf for N=16 level data received through 25 km of fiber. The line 2400 slicing through the pdf in FIG. 20 denotes the value of ε used to determine the ε-supports (i.e. the regions where the pdf exceeds ε). Thresholds (obtained from Eq. (21)) are shown as vertical dashed lines with the associated Q-factor (from Eq. (22)) for each pair of adjacent levels. The effective Q-factor (from Eq. (26)) for the multi-level system is 3.1.
The validity of Eqs (22)–(26) is strongly dependent on the Gaussian model. If the noise is not Gaussian, then the Q-factor does not give the probability of error as stated. However, in the non-Gaussian case, the method still supplies an intuitive quantification of the fidelity of the received signal which is related to the probability of decoding error. Thus, while the numerical value provided by the fidelity measure may not exactly relate to detection error probability, it still characterizes the fidelity of the link, i.e. large numerical values indicate better signal fidelity.
Exemplary Embodiment of Sub-Method for Gain Control
Referring back to step 950, because the ε-support regions calculated in routine 920 represent all the voltage ranges where a candidate symbol is likely to be received, the ε-supports can be used to determine an appropriate gain normalization factor for the received signal. In particular, the largest and smallest voltages among all of the ε-support regions represents the largest and smallest voltage likely to be received for a symbol transmission. These extreme values can thus be used to provide appropriate gain to scale the received signal such that the entire voltage swing of the system is utilized.
Specifically, the automatic gain voltage Vagc can be taken as the reciprocal of the size of the convex hull of all of the ε-support regions, i.e.




  
    
      
        
          V
          
            a
            ⁢
            
              
            
            ⁢
            g
            ⁢
            
              
            
            ⁢
            c
          
        
        =
        
          1
          
            
              
                max
                A
              
              ⁢
              
                {
                
                  
                    max
                    
                      a
                      ∈
                      A
                    
                  
                  ⁢
                  
                    {
                    a
                    }
                  
                
                }
              
            
            -
            
              
                min
                A
              
              ⁢
              
                {
                
                  
                    min
                    
                      a
                      ∈
                      A
                    
                  
                  ⁢
                  
                    {
                    a
                    }
                  
                
                }
              
            
          
        
      
    
    
      
        (
        27
        )
      
    
  




where A represents the various ε-supports associated with each level, and thus the denominator represents the peak-to-peak voltage of the received signal.

Alternative Exemplary Embodiment of Method for Decoding Multilevel Signals of FIG. 5A

Having given a detailed description of the embodiment illustrated by FIGS. 2 and 4, the embodiment given by the use of FIG. 5A in place of FIG. 4 is now discussed. The operation and implementation of this embodiment follows exactly as for FIG. 4 except that the second latch 430 is removed. Thus the statistical characterization upon which all the analysis is based covers the entire time span of the signal and not just the portion synchronized with the first plurality of comparators 405.
Alternative Exemplary Embodiment of Method for Decoding Multilevel Signals of FIG. 5B
The embodiment given by the use of FIG. 5B in place of FIG. 4 is now discussed. This embodiment differs from that illustrated in FIG. 4 in the following manner. First, step 910 is omitted as the alternative embodiment directly can calculate the pdf. This is done by sampling the signal with the ADC 440′ which passes the samples onto the DSP. ADC 440′ samples at the symbol rate with a high resolution. These samples are used both to decode the received symbol and produce the statistical characterization in the DSP. The DSP collects the data samples and can digitally generate the pdf estimate. The remaining steps 920–950 can also be absorbed into the DSP thereby obviating the need for the controller 445 in the SIU 220.
Alternative Exemplary Embodiment of Method for Decoding Multilevel Signals of FIG. 5C
The embodiment given by the use of FIG. 5C in place of FIG. 4 is now discussed. The operation and implementation of this embodiment is identical to that for FIG. 4 except that the filtered ED output vem produces an estimate of the marginal pdf rather than the CDF. To see why this occurs, note that the only difference between FIGS. 4 and 5C are in the EDC. For FIG. 5C, the pair of second comparators 574, 576 produce as outputs the indicator functions 1(vrv−Δ<vin) and 1(vin<vrv+Δ). Thus, the quantity going into the low-pass filter 435 is the binary function 1(vrv−Δ<vin<vrv+Δ). Averaging this function over time produces the probability estimate P(vrv−Δ<vin<vrv+Δ) which is approximately proportional to the pdf p(vin) for small values of Δ. Thus, step 910 is omitted for this embodiment and the embodiment is the same as that for FIG. 4 in all other respects.
Alternative Exemplary Embodiment of Method for Decoding Multilevel Signals of FIGS. 7 and 11
Referring now to FIG. 11, this figure illustrates exemplary steps for routine 915 of FIG. 9 that calculates a pdf according to the alternate exemplary embodiment associated with FIG. 7. The steps of routine 915 correspond with the action taken by the ADC 235′′ and track-and-hold 705 illustrated in FIG. 7. It is noted that step 910 of FIG. 9 for the exemplary embodiment of FIG. 7 may be omitted.
Routine 915 starts with step 1105 in which the holding circuit 705 in combination with the ADC 220′′ measure the voltage of the received multilevel signal. Specifically, microcontroller 445 can sample the received analog voltage of the multilevel signal by triggering the holding circuit 705 at some time random in relation to the received data stream. The holding circuit 705 will necessarily have a capture bandwidth commensurate with the high-speed data stream, but will only need to be able to sample at rate much lower than that of the high-speed data stream.
Next in step 1110, the microcontroller 445 would then trigger the second ADC 440 conversion and record the resulting voltage. In step 1115, the microcontroller 445 can collect the digitized measurements of the voltages and obtain the histogram 810 of measured voltages as illustrated in FIG. 8B. Histogram 810 is an instance of a pdf estimate. The microcontroller 445 can continue this process until adequate statistic information can be gathered to determine the appropriate decision levels. The process then returns to routine 915 of FIG. 9.
CONCLUSION
The present invention uses a robust approach to setting the decision thresholds that assumes neither unimodality nor symmetry of the noise distributions but can also operate even if these assumptions hold. The invention exploits the estimated pdf and localized nature of the noise to detect regions of significant probability. Each of these regions should correspond to where a candidate symbol i should be declared in the decision process, i.e. each region determines the support of the conditional pdfs composing the observed marginal pdf. In cases where the number of regions exceeds the number of symbols (as may occur due to multi-modal noise distributions and estimation errors), the invention systematically merges regions based on prior knowledge that (i) redundant eyelids are spaced very close together (relative to the spacing between eye-lids associated with differing symbols) and (ii) the number of candidate symbols is a known system parameter.
Further, the voltage decision thresholds produced by the algorithm are used by the fifteen high-speed comparators, which are followed by combinational logic to properly decode the levels back to the encoded data streams. The fifteen comparators and combinational logic are closely related to a traditional flash ADC with the exception of optimal threshold control (as per present invention) and decoding methods more amenable to communication systems other than binary. The receiver 150 converts the 16-level input into properly decoded data streams.
As noted previously, it should be obvious to one skilled in the art that the simple circuits illustrated in FIGS. 4, 5, and 7 can be expanded to N-level transmissions by incorporating N−1 high-speed comparators, adapting the decoding logic, and a higher resolution low-speed ADC for statistic signal sampling.
One skilled in the art can appreciate that the methods described here can be applied to other modulation schemes other than N-PAM. Examples of such modulation schemes are phase shift keying, frequency shift keying, and combinations methods such as quadrature amplitude modulation. The extension of the proposed method simply involves the appropriate change of the control variable in the CDF/pdf estimation. Because no restrictive form the noise distribution is assumed, the present invention will adapt to the different data distribution associated with other modulation schemes, which the conventional art cannot.
While it is contemplated that the present invention is very suitable for optical networking environments, it can be appreciated that the present invention could be easily employed in fields involving lower-speed communications. For example, lower-speed communication fields can include, but are not limited to, wireless applications, and applications utilizing modems such as telephone, digital subscriber lines (DSL), and analog or digital cable.
It should be understood that the foregoing relates only to illustrate the embodiments of the present invention, and that numerous changes may be made therein without departing from the scope and spirit of the invention as defined by the following claims.

## Claims

1. An optical receiver for receiving and decoding a multilevel optical communication signal, comprising:
a plurality of first comparators for estimating a transmitted level based on the received multilevel signal;
a decoder coupled to the first comparators;
a second comparator connected in parallel with the first comparators, for indicating when the received signal exceeds a voltage;
a filter coupled to the second comparator, for calculating a cumulative distribution function for the received multilevel signal;
an analog-to-digital converter coupled to the filter for sampling a cumulative distribution function; and
a microcontroller for processing the cumulative distribution function to determine threshold voltage values, for feeding the threshold voltage values to the first comparators for decoding the multilevel signal.

2. The optical receiver of claim 1, wherein the multilevel signal comprises at least two levels.

3. The optical receiver of claim 1, further comprising a latch coupled between the second comparator and the filter, the latch passing a portion of the thresholded signal to the filter, the portion of the signal being synchronized with a clock and the plurality of first comparators.

4. The optical receiver of claim 1, wherein the first comparators and the second comparator are manufactured on a single integrated circuit chip.

5. The optical receiver of claim 1, wherein the microcontroller further calculates a probability density function based on the cumulative distribution function.

6. The optical receiver of claim 1, wherein the microcontroller further estimates a conditional probability density function associated with each symbol of the multilevel signal based on an associated ε-support region and determines a probability of error for the channel based upon the conditional probability density functions and decision thresholds.

7. The optical receiver of claim 6, further comprising programmable analog signal processing modules that process the multilevel signal prior to the comparators, where the microcontroller selects an operating point of the programmable analog signal processing modules based upon the determination of the fidelity measure of the multilevel signal.

8. The optical receiver of claim 7, wherein the analog signal processing modules comprise one of an equalizer and signal conditioning filter.

9. The optical receiver of claim 7, wherein the analog signal processing modules comprise a clock recovery circuit.

10. The optical receiver of claim 1, wherein the filter averages the output of the second comparator over time.

11. The optical receiver of claim 1, wherein the microcontroller iteratively sets a reference voltage and samples the voltage from the filter, wherein the microcontroller sweeps the reference voltage over a range of voltage levels in order to generate the cumulative distribution function.

12. An optical receiver for receiving and decoding a multilevel optical communication signal, comprising:
a plurality of first comparators for estimating a transmitted level based on the received multilevel signal;
a decoder coupled to the first comparators;
a pair of second comparators connected in parallel with the first comparators, to indicate when the received signal falls within controlled voltage ranges;
a logic circuit coupled to the second comparators, to indicate when the received signal is in the intersection of the two controlled voltage ranges;
a filter coupled to the logic circuit, for calculating a probability density function for the received multilevel signal;
an analog-to-digital converter coupled to the filter for sampling a probability density function; and
a microcontroller for processing the probability density function to determine threshold voltage values, for feeding the threshold voltage values to the first comparators for decoding the multilevel signal.

13. The optical receiver of claim 12, wherein the multilevel signal comprises at least two levels.

14. The optical receiver of claim 12, further comprising a latch coupled between the second pair of comparators and the filter, the latch passing a portion of the thresholded signal to the filter, the portion of the signal being synchronized with a clock and the plurality of first comparators.

15. The optical receiver of claim 12, wherein the microcontroller further estimates a conditional probability density function associated with each symbol of the multilevel signal based on an associated ε-support region and determines a probability of error for the channel based upon the conditional probability density functions and decision thresholds.

16. The optical receiver of claim 15, further comprising programmable analog signal processing modules that process the multilevel signal prior to the comparators, where the microcontroller selects an operating point of the programmable analog signal processing modules based upon the determination of the fidelity measure of the multilevel signal.

17. The optical receiver of claim 16, wherein the analog signal processing modules comprise one of an equalizer and signal conditioning filter.

18. The optical receiver of claim 16, wherein the analog signal processing modules comprise a clock recovery circuit.

19. The optical receiver of claim 12, wherein the filter averages the output of the logic circuit over time.

20. The optical receiver of claim 12, wherein the microcontroller iteratively sets a reference voltage and samples the voltage from the filter, wherein the microcontroller sweeps the reference voltage over a range of voltage levels in order to generate the probability density function.

21. A desymbolizer for receiving and decoding a multilevel optical communication signal, comprising:
an analog-to-digital converter for receiving and decoding the multilevel signal;
a signal integrity unit coupled to the analog-to-digital converter for calculating and controlling one or more threshold voltages supplied to the analog-to-digital converter, for calculating at least one of a cumulative distribution function and a probability density function derived from the multilevel signal and associated with the one or more threshold voltages;
wherein the analog-to-digital converter is a first analog-digital converter, and the signal integrity unit further comprises:
a digital-to-analog controller coupled to inputs of respective comparators located in the first analog-to-digital converter;
a microcontroller coupled to the digital-to-analog controller for controlling a threshold voltage of each comparator located in the first analog-to-digital controller;
a second analog-to-digital converter coupled to the first analog-to-digital controller and microcontroller of the signal integrity unit, for converting the signals received from the first digital-to-analog controller and for feeding the converted signals to the microcontroller for statistical analysis.

22. The desymbolizer of claim 21, wherein the analog-to-digital converter comprises:
a plurality of comparators for receiving the multilevel signal; and
a decoder coupled to the outputs of the first comparators.

23. The desymbolizer of claim 21, wherein the output of the first analog-to-digital converter is coupled to a low-pass filter and the output of the low-pass filter is coupled to the second analog-to-digital converter.

24. The desymbolizer of claim 21, wherein the holding circuit comprises one of a track-and-hold circuit and a sample-and-hold circuit.

25. A desymbolizer for receiving and decoding a multilevel optical communication signal, comprising:
an analog-to-digital converter for receiving and decoding the multilevel signal;
a signal integrity unit coupled to the analog-to-digital converter for calculating and controlling one or more threshold voltages supplied to the analog-to-digital converter, for calculating at least one of a cumulative distribution function and a probability density function derived from the multilevel signal and associated with the one or more threshold voltages, wherein the analog-to-digital converter comprises a holding circuit for sampling the multilevel signal in response to control signals generated by the signal integrity unit, and wherein the holding circuit samples the multilevel signal at random intervals.

26. The desymbolizer of claim 21, wherein the holding circuit samples the multilevel signal at a periodic sampling rate wherein the period is an integer multiple of the symbol period.

27. A desymbolizer for receiving and decoding a multilevel optical communication signal, comprising:
an analog-to-digital converter for receiving and decoding the multilevel signal;
a signal integrity unit coupled to the analog-to-digital converter for calculating and controlling one or more threshold voltages supplied to the analog-to-digital converter, for calculating at least one of a cumulative distribution function and a probability density function derived from the multilevel signal and associated with the one or more threshold voltages, wherein the analog-to-digital converter comprises a holding circuit for sampling the multilevel signal in response to control signals generated by the signal integrity unit and wherein the holding circuit samples the multilevel signal at a periodic sample rate that is not harmonically related to a data rate of the multilevel signal.

28. A desymbolizer for receiving and decoding a multilevel optical communication signal, comprising:
an analog-to-digital converter for receiving and decoding the multilevel signal;
a signal integrity unit coupled to the analog-to-digital converter for calculating and controlling one or more threshold voltages supplied to the analog-to-digital converter, for calculating at least one of a cumulative distribution function and a probability density function derived from the multilevel signal and associated with the one or more threshold voltages, wherein the signal integrity unit further calculates a conditional probability density function for each symbol of the multilevel signal based ε-support estimates, wherein each ε-support estimate comprises one or more values in which a marginal probability density function is positive.

29. The desymbolizer of claim 28, wherein the signal integrity unit further determines a probability of error for a channel based upon the conditional probability density function and threshold levels.

30. A desymbolizer for receiving and decoding a multilevel optical communication signal, comprising:
an analog-to-digital converter for receiving and decoding the multilevel signal;
a signal integrity unit counted to the analog-to-digital converter for calculating and controlling one or more threshold voltages supplied to the analog-to-digital converter, for calculating at least one of a cumulative distribution function and a probability density function derived from the multilevel signal and associated with the one or more threshold voltages; and
programmable analog signal processing modules that equalizes and optimally filters the multilevel signal prior to the analog-to-digital converter, where the signal integrity unit selects an operating point of the programmable analog signal processing modules based upon the determination of the fidelity of the multilevel signal.

31. The desymbolizer of claim 30, wherein the analog signal processing modules comprise at least one of an equalizer and signal conditioning filter.

32. The desymbolizer of claim 30, where the analog signal processing modules comprise at least one clock recovery circuit.

33. A method for receiving and converting a multilevel signal into a plurality of data streams, comprising the steps of:
receiving a multilevel signal;
calculating one of a cumulative distribution function and a probability density function based on the received multilevel signal;
determining one or more decision thresholds based upon one of the cumulative distribution function and probability density function;
associating one or more threshold voltage levels based on the decision thresholds;
comparing the multilevel signal with the threshold voltage levels;
estimating a conditional probability density function for each symbol of the multilevel signal;
determining a probability of error for the multilevel signal based upon the conditional probability density function of each symbol and the decision levels; and
decoding the multilevel symbol into one or more bits based on the comparison of the multilevel signal with the threshold voltage levels.

34. The method of claim 33, further comprising the step of calculating both a cumulative distribution function and probability density function, the probability density function being derived from the calculated cumulative distribution function.

35. The method of claim 33, further comprising the step of determining one or more decision thresholds positioned at local minima in a calculated probability density function.

36. The method of claim 33, further comprising the step of selecting an operating point of programmable analog signal processing modules based upon the determination of the probability of error for the multilevel signal.

37. The method of claim 33, further comprising the step of assigning threshold voltage levels to respective comparators of a plurality of comparators.

38. The method of claim 33, wherein the step of receiving a multilevel signal further comprises receiving a multilevel signal where the level corresponds to one of an amplitude, phase, or frequency that has been modulated according to the transmitted symbol.

39. A method for determining threshold voltages of comparators in a multilevel signal receiver system, comprising the steps of:
estimating a probability density function, wherein the step of estimating the probability density function comprises directly computing the probability density function from the received multilevel signal by collecting sampling voltage levels of the multilevel signal at random time intervals;
determining one or more statistical centers positioned on local minima that are present in the probability density function; and
associating one or more threshold voltage levels based on the one or more statistical centers positioned according to the local minima.

40. The method of claim 39, further comprising the step of estimating a cumulative distribution function based on a received multilevel signal.

41. The method of claim 40, wherein the step of estimating a cumulative distribution function further comprises sampling voltages with a periodic sample rate.

42. A method for receiving and converting a multilevel signal into a plurality of data streams, comprising the steps of:
receiving a multilevel signal;
determining one or more decision thresholds by calculating an initial set of ε-support estimates, wherein determining one or more decision thresholds further comprises combining ε-supports, wherein each ε-support estimate comprises one or more values in which a marginal probability density function is positive;
associating one or more threshold voltage levels based on the decision thresholds;
comparing the multilevel signal with the threshold voltage levels; and
decoding the multilevel symbol into one or more bits based on the comparison of the multilevel signal with the threshold voltage levels.

43. The method of claim 42, where in the determining one or more decision thresholds further comprises normalizing a cumulative distribution function.

44. The method of claim 42, further comprising calculating a cumulative distribution function based on the received multilevel signal.

45. A method for determining a set of decoding thresholds from a marginal probability density function comprising the steps of:
thresholding the probability density function to obtain an initial set of intervals conveying regions of significant probability for received signal;
calculating ε-support regions by merging intervals until the number of regions is substantially equal to the number of candidate symbol transmission levels;
associating each ε-support region with a mode of a conditional probability density function corresponding to a transmission level, wherein each ε-support region comprises one or more values in which a marginal probability density function is positive; and
computing a decision threshold based on the conditional probability density functions.

46. The method of claim 45, wherein the step of calculating ε-support regions comprises iteratively merging intervals wherein a pair of closest intervals is merged and a measure of closeness conveys a notion of distance between sets.

47. The method of claim 46, wherein closeness is defined by the minimum distance between any two points in the set, the distance between two sets A and B being defined as




  
    d
    ⁢
    
      (
      
        A
        ,
        B
      
      )
    
  
  =
  
    
      min
      
        
          a
          ∈
          A
        
        ,
        
          b
          ∈
          B
        
      
    
    ⁢
    
      |
      
        
          a
          -
          b
        
        ⁢
        
          |
          .

48. The method of claim 46, wherein closeness is defined by a minimum weighted-distance between any two points in the set, the weighted-distance between two sets A and B being defined as




  
    d
    ⁢
    
      (
      
        A
        ,
        B
      
      )
    
  
  =
  
    
      min
      
        
          a
          ∈
          A
        
        ,
        
          b
          ∈
          B
        
      
    
    ⁢
    
      |
      
        
          a
          -
          b
        
        
          
            λ
            A
          
          +
          
            λ
            B
          
        
      
      |
    
  




where λA and λB comprise lengths or Lebesgue measures of A and B, respectively.

49. The method of claim 45, wherein the step of calculating ε-support regions further comprises merging any two regions A and B by taking a convex hull of their union.

50. The method of claim 45, further comprising the step of associating each ε-support with a Gaussian conditional probability density function.

51. The method of claim 45, wherein the step of computing a decision threshold comprises determining a midpoint between ε-support regions.

52. The method of claim 45, wherein the step of computing a decision threshold comprises determining a weighted midpoint between ε-support regions.

53. The method of claim 45, further comprising the step of calculating an error rate for each transmitted symbol by using the calculated conditional probability density functions and the determined thresholds.

54. The method of claim 45, further comprising the step of estimating an aggregate error rate for a communication link based upon each error rate calculated for each of the symbols.

55. The method of claim 45, further comprising the step of determining a gain control to be applied to the received signal based upon calculated ε-supports.

56. The method of claim 54, further comprising the step of determining an automatic gain voltage Vagc, the automatic gain voltage Vagc comprising a reciprocal of a size of a convex hull of all of the ε-support regions calculated wherein:




  
    V
    
      a
      ⁢
      
        
      
      ⁢
      g
      ⁢
      
        
      
      ⁢
      c
    
  
  =
  
    1
    
      
        
          max
          A
        
        ⁢
        
          {
          
            
              max
              
                a
                ∈
                A
              
            
            ⁢
            
              {
              a
              }
            
          
          }
        
      
      -
      
        
          min
          A
        
        ⁢
        
          {
          
            
              min
              
                a
                ∈
                A
              
            
            ⁢
            
              {
              a
              }
            
          
          }
        
      
    
  




and where A represents ε-supports.

57. A system for receiving and converting a multilevel signal into a plurality of data streams comprising:
means for determining one or more decision thresholds by calculating an initial set of ε-support estimates, wherein each ε-support estimate comprises one or more values in which a marginal probability density function is positive;
means for associating one or more threshold voltage levels based on the decision thresholds;
means for comparing the multilevel signal with the threshold voltage levels; and
means for decoding the multilevel symbol into one or more bits based on the comparison of the multilevel signal with the threshold voltage levels.

58. The system of claim 57, wherein the means for determining one or more decision thresholds further comprises means for normalizing a cumulative distribution function.

59. The system of claim 57, wherein the means for determining one or more decision thresholds further comprises means for combining ε-supports.

60. The system of claim 57, further comprising means for calculating a cumulative distribution function based on the received multilevel signal.

61. The optical receiver of claim 12, wherein the first comparators and the second comparators are manufactured on a single integrated circuit chip.