US20140186027A1 - Testing of Transmitters for Communication Links by Software Simulation of Reference Channel and/or Reference Receiver - Google Patents

Testing of Transmitters for Communication Links by Software Simulation of Reference Channel and/or Reference Receiver Download PDF

Info

Publication number
US20140186027A1
US20140186027A1 US14/134,997 US201314134997A US2014186027A1 US 20140186027 A1 US20140186027 A1 US 20140186027A1 US 201314134997 A US201314134997 A US 201314134997A US 2014186027 A1 US2014186027 A1 US 2014186027A1
Authority
US
United States
Prior art keywords
waveform
transmitter
oma
receiver
equalizer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US14/134,997
Inventor
Thomas A. Lindsay
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Clariphy Communications Inc
Original Assignee
Clariphy Communications Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/316,115 external-priority patent/US7643752B2/en
Application filed by Clariphy Communications Inc filed Critical Clariphy Communications Inc
Priority to US14/134,997 priority Critical patent/US20140186027A1/en
Publication of US20140186027A1 publication Critical patent/US20140186027A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/07Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems
    • H04B10/073Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an out-of-service signal
    • H04B10/0731Testing or characterisation of optical devices, e.g. amplifiers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B10/00Transmission systems employing electromagnetic waves other than radio-waves, e.g. infrared, visible or ultraviolet light, or employing corpuscular radiation, e.g. quantum communication
    • H04B10/07Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems
    • H04B10/075Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an in-service signal
    • H04B10/079Arrangements for monitoring or testing transmission systems; Arrangements for fault measurement of transmission systems using an in-service signal using measurements of the data signal
    • H04B10/0799Monitoring line transmitter or line receiver equipment

Definitions

  • 60/707,282 “Method To Extract Square-Wave-Based Bias And Optical Modulation Amplitude For A Distorted Optical Waveform,” filed Aug. 10, 2005; Ser. No. 60/710,512, “Computation Of Optimal Offset For A Transmitter Waveform And Dispersion Penalty,” filed Aug. 22, 2005; and Ser. No. 60/713,867, “Transmitter Waveform And Dispersion Penalty Test Using A Short Equalizer, OMSD Normalization, And Optimal Offset Computation,” filed Sep. 1, 2005.
  • the subject matter of all of the foregoing are incorporated herein by reference in their entirety.
  • This invention relates generally to the use of software simulation (which is intended to include firmware simulation) in testing of transmitters used in communications links, for example the testing of transmitters used in optical fiber communications link by software simulation of a reference channel (i.e., a reference optical fiber link) and/or a reference receiver.
  • software simulation which is intended to include firmware simulation
  • Optical fiber is widely used as a communications medium in high speed digital networks, including local area networks (LANs), storage area networks (SANs), and wide area networks (WANs).
  • LANs local area networks
  • SANs storage area networks
  • WANs wide area networks
  • 10 Gbps 10 Gigabit
  • communications links invariably include a transmitter, a channel and a receiver.
  • the transmitter typically converts the digital data to be sent to an optical form suitable for transmission over the channel (i.e., the optical fiber).
  • the optical signal is transported from the transmitter to the receiver over the channel, possibly suffering channel impairments along the way, and the receiver then recovers the digital data from the received optical signal.
  • a typical 10 G optical fiber communications link 100 is shown in FIG. 1 .
  • the link 100 includes a transmitter 105 coupled through optical fiber 110 (the channel) to a receiver 120 .
  • a typical transmitter 105 may include a serializer, or parallel/serial converter (P/S) 106 for receiving 10 G data from a data source on a plurality of parallel lines and providing serial data to a 10 G laser driver 107 .
  • the driver 107 then drives a 10 G laser source 108 , which launches the optical waveform carrying the digital data on optical fiber 110 .
  • P/S parallel/serial converter
  • a typical receiver 120 includes a 10 G photodetector 111 for receiving and detecting data from the optical fiber 110 .
  • the detected data is typically processed through a 10 G transimpedance amplifier 112 , a 10 G limiting amplifier 113 , and a 10 G clock and data recovery unit 114 .
  • the recovered data may then be placed on a parallel data interface through a serial/parallel converter (S/P) 115 .
  • S/P serial/parallel converter
  • transmitters are tested based on the quality of their immediate output. For example, the signal to noise ratio (SNR), bit error rate, eye diagram or other performance metric may be measured at the output of the transmitter.
  • SNR signal to noise ratio
  • bit error rate bit error rate
  • eye diagram eye diagram or other performance metric
  • the optical fiber communications link is designed so that the receiver compensates for distortions or other impairments introduced by the channel or the transmitter, a direct measurement of the performance at the transmitter output may not accurately reflect this subsequent compensation.
  • a direct measurement of the performance at the transmitter output may not accurately reflect this subsequent compensation.
  • standards for transmitters used in more advanced systems may be based in part on their interaction with other components. For example, if the standard assumes a certain type of distortion mitigation in the receiver, the transmitter may be allowed a certain level of distortion that the receiver can compensate, but other types of distortion that the receiver cannot compensate should be limited. A transmitter test that cannot distinguish between the two types of distortion (an eye diagram, for example) will be an inadequate compliance test for this type of standard. Hence, a test of the transmitter alone may not be sufficient to determine whether the transmitter complies with the standard.
  • the IEEE 802.3ae standard includes a Transmitter and Dispersion Penalty (TDP) measurement.
  • TDP Transmitter and Dispersion Penalty
  • the TDP measurement was developed as a transmitter compliance test to ensure that a compliant transmitter will communicate with a compliant receiver over a compliant channel with acceptable performance.
  • the TDP measurement involves signal quality characteristics such as rise and fall times, eye pattern opening, jitter, and other distortion measurements. The intent is to insure that the signal received from a compliant transmitter can be detected to deliver a specified bit error rate.
  • the TDP measurement technique described in the 802.3ae standard involves a hardware test setup, including a hardware reference transmitter, the transmitter under test, a reference channel (i.e., actual length of fiber), and a hardware reference receiver.
  • the test proceeds as follows.
  • a reference link is established by connecting the reference transmitter to the reference receiver via the reference channel.
  • the performance of the reference link is measured.
  • a test link is established by connecting the transmitter under test to the reference receiver via the reference channel.
  • the performance of this link is also measured.
  • the performance of the reference link is compared with the performance of the test link to arrive at a value of TDP.
  • the reference transmitter and reference receiver are high-quality instrument-grade devices.
  • the test procedure involves several manual calibration and measurement steps. There are several disadvantages to this approach.
  • the reference transmitter, channel, and receiver have tightly defined characteristics and are therefore very expensive.
  • the reference transmitter has tight specifications on rise and fall times, optical eye horizontal and vertical closure, jitter, and relative intensity noise (RIN).
  • RIN relative intensity noise
  • different reference transmitters, channels, or reference receivers might yield different results due to parameter tolerances, environmental conditions (temperature, aging), and other differences. Therefore, the recommended measurement procedure involves a number of complex and sensitive calibration steps. The accuracy of the TDP measurement is sensitive to these time consuming and difficult calibration steps. Since these calibration steps all have tolerances, there may be significant variation in the results.
  • IEEE 802.3aq Another standards committee is IEEE 802.3aq, which is developing a standard (10 GBASE-LRM) for 10 G Ethernet over multi-mode fiber over distances of up to 220 meters using electronic dispersion compensation (EDC).
  • EDC electronic dispersion compensation
  • TDP is not an appropriate transmitter compliance test for 10 GBASE-LRM (EDC) systems because the reference receiver does not include equalization and does not accurately compensate for those distortions that a receiver using EDC can clean up.
  • EDC Evolved Digital
  • a suitable transmitter quality measure for an EDC system should measure the signal quality (or resulting bit error rate) achievable by a receiver with equalization.
  • a reference receiver for such a system probably would include a decision feedback equalizer (DFE) as an EDC technique.
  • DFE decision feedback equalizer
  • a reference grade equalizer in the hardware receiver would be very difficult to make. It would have its own limitations, such as finite length and finite precision and tolerances, and these limitations could conceal the properties of the signal being measured. The resulting measurements may not accurately indicate correctable versus non-correctable impairments.
  • OMA Optical Modulation Amplitude
  • the present invention overcomes the limitations of the prior art by using a (software—including firmware) simulation of a reference channel and/or a reference receiver to test transmitters.
  • a data test pattern also referred to as a data sequence
  • the resulting optical output is captured, for example by a sampling oscilloscope.
  • the captured waveform is subsequently processed by the software simulation, in order to simulate propagation of the optical signal through the reference channel and/or reference receiver.
  • a performance metric for the transmitter is calculated based on the processed waveform.
  • the performance metric is the transmitter waveform and dispersion penalty (TWDP).
  • TWDP is defined as the difference (in dB) between a reference signal to noise ratio (SNR), and the equivalent SNR at the slicer input of a reference decision feedback equalizer (DFE) receiver for the measured waveform from the transmitter under test after propagation through an optical fiber reference channel.
  • SNR reference signal to noise ratio
  • DFE reference decision feedback equalizer
  • a data test pattern is applied to the transmitter under test and the transmitter output is sampled using standard test equipment.
  • the captured waveform is processed through a software simulation of the reference optical fiber (i.e., reference channel) and the reference receiver (which includes an equalizer).
  • the use of a standard software simulation of the reference channel and the reference receiver avoids the difficulties inherent with a hardware receiver and allows a more accurate measurement of unequalizable signal impairments.
  • the need for a hardware reference transmitter, fiber, or reference receiver is eliminated, thus saving significant costs. In this way, TWDP can be measured for optical fiber communication systems using EDC.
  • the signal output from the transmitter under test is captured by a sampling oscilloscope, and the resulting sampled signal is processed by a software simulation (including firmware simulations) of a reference channel and reference receiver.
  • a software simulation including firmware simulations
  • the reference equalizing receiver is implemented using a MATLAB simulation or other equivalent software simulation.
  • Some or all of the software simulator may be integrated as part of the sampling oscilloscope (or other waveform capture device), provided as an add-on module to the sampling oscilloscope and/or implemented as a separate module.
  • the software simulator can also perform measurement of optical modulation amplitude (OMA) and waveform baseline.
  • OMA optical modulation amplitude
  • the computation of these quantities based on the captured waveform eliminates the inaccuracies inherent in separate or manual measurements.
  • these quantities can be computed from the raw digitized waveform captured by the waveform capture device, from the waveform after some pre-processing (e.g., after re-sampling, truncation and/or data alignment) or from waveforms after simulation of propagation. Techniques are disclosed that yield more accurate measurements for highly distorted signals.
  • temporal misalignment between a synthesized waveform, such as a square wave, and measurement windows capturing values for OMA calculation can be corrected, allowing time alignment of the synthesized waveform and the measurement windows.
  • TWDP depends strongly on OMA, and the accurate measurement of OMA may be very difficult for distorted transmit waveforms that, in spite of this distortion, are acceptable when EDC is used in the receiver.
  • Temporal alignment between the synthesized waveform and the measurement windows may also allow more accurate calculation of waveform and dispersion penalty (WDP) of optical or electrical signals at different locations within a system.
  • WDP waveform and dispersion penalty
  • the software automatically corrects for the optimal DC offset (bias) value. Since the TWDP value is sensitive to offset of the waveform, automatic offset optimization improves reproducibility of the measured TWDP. This can be accomplished by adding an extra tap to the feedforward filter of the equalizer.
  • the simulated receiver uses a very long equalizer that approximates the performance of an infinite length equalizer. This is useful to establish a performance bound on practical length equalizers.
  • a much shorter equalizer is used in the simulated receiver. The shorter equalizer more closely approximates the performance of a practically realizable receiver, but it requires additional optimization of equalizer delay and sampling phase, examples of which are also described herein.
  • FIG. 1 (prior art) is a block diagram of a 10 G optical fiber communications link.
  • FIG. 2 is a block diagram of a communications link suitable for use with the invention.
  • FIGS. 3 and 4 are block diagrams of a test system according to the invention.
  • FIG. 5 is a block diagram of a model of a test system according to the invention.
  • FIG. 6 is block diagram of a feedforward filter with a tap to adjust a constant offset.
  • FIGS. 7A and 7B are block diagrams of mathematically equivalent models for the sampler output.
  • FIG. 8 is a time plot illustrating calculation of optical modulation amplitude from a square wave that is time-aligned with an expected transition time.
  • FIGS. 9A and 9B are time plots illustrating miscalculation of optical modulation amplitude from square waves that are temporally misaligned with an expected transition time.
  • FIG. 9C is a time plot illustrating calculation of optical modulation amplitude from a square wave that is temporally aligned with an expected transition time.
  • FIG. 10 is a flow chart of a method according to the invention for temporally aligning a square wave synthesized from a captured waveform.
  • FIG. 2 is a block diagram of a communications link 300 suitable for use with the current invention.
  • the link 300 includes a transmitter 305 coupled through a channel 310 to a receiver 320 .
  • the overall system 300 may suffer from various impairments in transmitting data from the transmitter 305 to the receiver 320 .
  • the transmitters 305 , channels 310 and receivers 320 may be various types, depending on the end application. Microwave, RF, cable, and optical fiber are some examples of different media for the channel 310 . Different types of modulation may be used by the transmitter 305 . Some examples are on-off keying, QAM, PSK, and OFDM.
  • the receiver 315 can also take the various forms corresponding to these different modulation formats.
  • FIGS. 3 and 4 are block diagrams of a test system according to the current invention.
  • the purpose of the test system is to test the transmitter, for example for compliance with a specific standard.
  • a data test pattern 450 is applied to the transmitter under test 405 .
  • the transmitter 405 produces an output 460 , which is captured by a waveform capture device 465 , for example a sampling oscilloscope.
  • the captured waveform may be stored in some medium 467 , for subsequent retrieval.
  • a software simulator 470 accesses the stored waveform 462 .
  • the simulator 470 is designed to simulate the effects of a reference channel 472 and/or reference receiver 474 .
  • the software 470 processes the waveform 462 to simulate propagation of the waveform through the reference channel 472 and/or the reference receiver 474 .
  • a performance metric 476 is calculated based on the simulated propagation.
  • the data test pattern 450 may be used as an input to the software simulator 470 , for example in modeling the reference receiver/channel or in calculating the performance metric.
  • TWDP Transmitter Waveform and Dispersion Penalty
  • TWDP SNR REF ⁇ SNR TX (dBo) (1)
  • SNR REF is a reference signal to noise ratio (SNR), expressed in optical dB (dBo)
  • SNR TX is the equivalent SNR in dBo for the transmitter under test at the slicer input of a reference decision feedback equalizer (DFE) receiver for the measured waveform after propagation through a reference optical fiber channel.
  • DFE decision feedback equalizer
  • the reference SNR, SNR REF has a specific numeric value, and it is related to OMA RCV , T, and N 0 through
  • OMA RCV is the OMA of the signal at the input to the reference channel
  • N 0 is the one-sided power spectral density of the additive white Gaussian noise (AWGN) assumed for the reference DFE receiver
  • T is the bit duration, also called the unit interval.
  • AWGN additive white Gaussian noise
  • Eqn. (2) gives the SNR that would be realized by an ideal matched filter receiver if the received waveform were an ideal rectangular NRZ waveform with amplitude OMA RCV and the receiver had AWGN of spectral density N 0 .
  • This ideal received waveform would result, for example, if an ideal NRZ transmitter transmitted an optical signal of amplitude OMA RCV over a distortion-free, lossless optical fiber.
  • SNR REF The specific value of SNR REF is set equal to some margin in optical dB above SNR RQD , where SNR RQD is the SNR required for the ideal matched filter receiver to achieve a desired bit error rate (BER) for an ideal NRZ received waveform.
  • BER bit error rate
  • the desired BER is 10 ⁇ 12
  • SNR REF is set 6.5 dBo above SNR RQD to allow for 6.5 dB of optical power penalties related to dispersion.
  • the BER for a such a matched filter receiver with an ideal NRZ input waveform is given by
  • SNR REF determines a particular N 0 through Eqn. (2). Without loss of generality, OMA RCV is normalized to 1, and N 0 is set accordingly.
  • the SNR TX (and hence, also the TWDP) is calculated by MATLAB code as illustrated in FIG. 5 .
  • the data test pattern ⁇ x(n) ⁇ 550 driving the transmitter under test 505 is a periodic PRBS9 or similar data pattern.
  • the transmitter 505 outputs an optical waveform 560 , which is converted to an electrical signal by an optoelectronic converter 561 , filtered by a hardware reference filter 562 , and then digitized and captured 563 .
  • the optoelectronic conversion, hardware filtering, and digitization and capture are all performed by a sampling oscilloscope 565 with an appropriate optical head, though the functions may alternatively be performed by separate devices.
  • the oscilloscope is set to capture at least one complete cycle of the periodic signal 560 with at least seven samples per unit interval.
  • the number of samples per unit interval is not critical as long as the sampling rate is high enough to capture the high frequency content of the signal out of the hardware filter 562 without aliasing.
  • the hardware filter 562 has a fourth-order Bessel-Thomson response with 3 dB electrical bandwidth of 7.5 GHz to filter the incoming waveform before digitization.
  • the oscilloscope is set to average out noise in the waveform, thus producing the digitized waveform 566 which approximates a noiseless filtered version of the transmitter output 560 .
  • no hardware filter 562 is used. However, this alternate embodiment may lead to variation in measurement from one test setup to another depending of the inherent bandwidth of the optoelectronic conversion and subsequent digitization.
  • the inputs to the software simulator 570 include the following:
  • the captured waveform 568 is processed by the software simulator 570 , as follows:
  • the captured waveform 568 is normalized 571 .
  • the OMA and baseline (steady state zero level) of the waveform 568 are either measured separately and entered as inputs to the algorithm, or alternatively they are estimated from the captured waveform, as described more fully below.
  • the zero-level (baseline) is subtracted from the waveform 568 and the waveform is scaled such that the resulting OMA is 1.
  • the normalized waveform has a baseline of 0 and an OMA of 1.
  • N 0 is set such that SNR REF is 14.97 dBo, as described above.
  • Propagation of the normalized waveform through an optical fiber reference channel 572 is simulated.
  • the reference channel is represented by an impulse response.
  • An alternative embodiment can represent the reference channel by a frequency response, or by a lookup table, or by other mappings of input waveform to output waveform.
  • propagation is accomplished in the frequency domain. This is accomplished by performing Fourier transforms on the normalized waveform and fiber impulse response, multiplying the transforms together, and then performing an inverse Fourier transform back to the time domain.
  • An alternative embodiment accomplishes propagation in the time domain by convolving the normalized waveform with the fiber impulse response.
  • the OMA can alternatively be normalized after propagation through the fiber, depending on the performance metric desired. As long as the fiber model is normalized to preserve OMA, normalizing before or after propagation will give equivalent results.
  • the output from the reference channel 572 is passed through an antialiasing filter 573 .
  • a fourth-order Butterworth filter of bandwidth 7.5 GHz is used in this example.
  • An alternative embodiment would omit the antialiasing filter 573 but would instead filter the white Gaussian noise 577 before adding it to the reference fiber output 576 .
  • the output signal from the antialiasing filter 573 is sampled 574 at rate 2/T with sampling phase ⁇ .
  • An alternate embodiment using a matched filter and a rate 1/T sampler is described below.
  • the sampler output 575 is denoted y ⁇ (nT/2), which has a deterministic component and a random component given by
  • the sequence ⁇ r(n) ⁇ is the deterministic sampled version of the filtered output of the reference fiber; it is periodic with period 2N.
  • the sequence ⁇ (n) ⁇ is a discrete-time noise sequence which is obtained by passing the AWGN through the anti-aliasing filter and sampling.
  • the sampled signal is processed by a fractionally-spaced MMSE-DFE receiver 584 with N f feedforward taps (at T/2 spacing) 585 and N b feedback taps 586 .
  • N f can be set to 14 and N b can be set to 5.
  • the use of 14 feedforward taps and 5 feedback taps are example settings; the number of taps can be different depending on the desired capabilities of the reference DFE receiver.
  • the feedforward filter is optionally augmented with an extra (N f +1 th ) tap that adjusts to optimize a constant offset, as shown in FIG. 6 and described more fully below.
  • the feedforward and feedback tap coefficients are calculated using a least-squares approach that minimizes the mean-squared error at the slicer 578 input for the given captured waveform, assuming the noise power spectral density N 0 set according to Eqn. (2) as described above.
  • FIG. 5 shows the channel and equalizer model used for the least-squares calculation.
  • the reference DFE consists of a feedforward filter ⁇ W(0), . . . , W(N f ⁇ 1) ⁇ , an optional constant offset coefficient W(N f ) (as shown in FIG. 6 ), and a feedback filter ⁇ B(1), . . . , B(N b ) ⁇ .
  • a conventional DFE would feedback decisions ⁇ circumflex over (x) ⁇ (n) ⁇ . In this case, the decisions are assumed to be correct and the decided bits are therefore replaced with the transmitted bits ⁇ x(n) ⁇ . While a finite length equalizer is shown in this example, an alternate embodiment would include an infinite length equalizer, performance of which could be computed analytically.
  • the feedback filter 586 is symbol spaced and strictly causal, feeding back the N b bits prior to the current bit x(n).
  • the input sequence on which the slicer makes decisions is denoted ⁇ z (n) ⁇ , where
  • Eqn. (6) includes the term W(N f ), which is the optional constant offset coefficient for automated offset compensation; without offset compensation, W(N f ) would be absent (or set to 0).
  • D is an integer such that the number of anticausal T/2-spaced taps in the feedforward filter is 2D. While the feedforward filter is modeled as having anticausal taps, a practical equalizer would delay decisions by DT so that the overall system is causal. DT is referred to as the equalizer delay. Sometimes the equalizer delay is expressed as the number of feedforward anticausal taps, 2D.
  • the expectation operator, E refers to the random noise at the slicer input, which results from the additive white Gaussian noise 577 , filtered through the antialiasing filter 573 , sampled 574 , and filtered by the feedforward filter 585 .
  • MSE is actually N times the mean-squared error when averaged over the input sequence ⁇ x(n) ⁇ .
  • the algorithm finds the optimal W vector, B vector, and equalizer delay DT such that the mean-squared error is minimized in an efficient manner, for example as described in P. A. Voois, I. Lee, and J. M. Cioffi, “The effect of decision delay in finite-length decision feedback equalization,” IEEE Transactions on Information Theory, vol. 53, pp.
  • the optimal sampling phase ⁇ for the T/2 sampler is found by a brute-force search over the 16 sampling phases in the unit interval. Note that for a sufficiently long equalizer, that is, for N f and N b sufficiently large, the MSE is insensitive to sampling phase and equalizer delay. In that case, the number of anticausal taps 2D can be set to N f /2, for example, and optimization over D and ⁇ can be omitted. Further details of the mean squared error (MSE) minimization are given below.
  • MSE mean squared error
  • the bit-error rate is calculated by the semi-analytic method.
  • the slicer would make binary decisions on its input based on whether the input is greater than or less than the slicer threshold. The probability of making an error depends on the amplitude of the input signal, the statistics of the input noise, and the threshold of the slicer, which for this example is set to 1 ⁇ 2.
  • the overall bit-error rate is calculated as follows:
  • the TWDP for the simulated fiber reference channel 572 is equal to the difference (in optical dB) between SNR REF and the equivalent SNR TX , as shown in Eqn. (1) above.
  • the algorithm described above minimizes MSE at the slicer input, since that is how most practical equalizers are implemented.
  • the reference receiver could minimize bit error rate (BER) or some other performance metric to compute the transmitter penalty. Minimization of BER would not necessarily result in the same penalty as that computed by minimizing mean squared error.
  • the TWDP algorithm described above simulates propagation through a single optical fiber reference channel.
  • a number of optical fiber reference channels 572 may be simulated, each corresponding to a defined stressor that has been defined to represent a certain level of dispersion and a certain category of fiber response.
  • the normalized waveform is passed though each of these simulated reference channels 572 and the reference equalizing receiver to compute a “channel-specific” TWDP for each channel.
  • Transmitter compliance can be defined in terms of the collection of channel-specific TWDP values. For example, compliance can require that a certain percentage of the channel-specific TWDP values be below some threshold. In particular, one could require that all of the channel-specific TWDP values be below some limit.
  • Appendices A and B give examples of MATLAB code that illustrate various aspects of the algorithm described above. The following derivation details relate the above description to the code presented in the appendices.
  • the TWDP algorithm requires estimates of the optical modulation amplitude (OMA) and baseline (steady state zero level) of the waveform to normalize 571 the waveform. These values can be measured externally and input into the algorithm, which saves computation time, or the algorithm can estimate these quantities based on the input waveform.
  • OMA optical modulation amplitude
  • baseline steady state zero level
  • Method 1 One method of computing OMA and baseline, referred to as Method 1, is as follows.
  • the optical power output by a laser is commonly modulated in a binary fashion to send data over an optical fiber. Nominally, the optical power is high for the duration of a bit period to send a logical “1”, and low to send a logical “0”.
  • the difference in optical power between the nominal high level and the nominal low level is the OMA, and we refer to the nominal low level as the baseline (or sometimes, the steady-state zero level, or simply the zero level).
  • This type of modulation is commonly referred to as on-off-keying, where “on” means high laser power and “off” means low laser power.
  • NRZ nonreturn-to-zero
  • OMA can be defined as the difference between the steady state “on” or “high” power of the laser and the steady state “off” or “low” power of the laser. For this definition of OMA to be consistent with Eqn. (8), a train of pulses p(t) must sum to 1, or
  • a generalized NRZ modulation can be defined by allowing p(t) to be a filtered version of the rectangular pulse shape. Let h(t) be the impulse response of a filter normalized such that
  • Eqn. (14) can be used to estimate OMA by finding q(t), integrating, and dividing by T.
  • the pulse q(t) is referred to as the estimated pulse response of the transmitter or channel.
  • Q is a K by A+M+1 matrix with columns q ⁇ A through q M . Note that each column of Q consists of K successive samples of the continuous-time pulse response q(t).
  • the optimal Q* and b* can be found using a pseudo-inverse and the captured waveform matrix Y:
  • Eqn. (29) gives the same result as Eqn. (19) and Eqn. (22) for the periodic bias case.
  • OMA and baseline can then be estimated using Eqns. (29), (23), and (26).
  • Eqns. (29), (23), and (26) are the basis of the following example MATLAB code, which can be used in the implementation of TWDP calculation to estimate OMA (MeasuredOMA in the code) and the baseline (SteadyZeroPower in the code) from the input waveform 568 .
  • the variables ant and mem are the anticipation and memory, respectively, in bit periods. These parameters can be varied to fit the memory span of the intersymbol interference of the input waveform.
  • the accuracy of the OMA estimate is dependent on the choice of ant and mem. If ant and mem are set too low, the entire pulse response will not be contained within the span.
  • the 2 A+M+1 possible binary vectors of length A+M+1 will be sparsely represented in the data test pattern if the sequence is of length significantly less than 2 A+M+1 .
  • the expected values computed may be significantly different than the expectations taken over truly random data.
  • Method 1 for OMA and baseline estimation used a definition of OMA as the difference between the steady state “on” or “high” power of the laser and the steady state “off” or “low” power of the laser.
  • IEEE 802.3ae Clause 52.9.5 specifies a method of measuring OMA based on a transmitted square wave pattern that can result in an OMA measurement different from this definition. The reason is that the laser output may not reach its steady state “on” value or steady state “off” value during the half period of the square wave that the laser is respectively “on” or “off”.
  • the method described next, referred to as Method 2 results in an OMA value consistent with the measurement technique specified in IEEE 802.3ae Clause 52.9.5.
  • Method 2 performs a linear fit that finds the pulse response of the modulation that gives the best fit to the captured waveform. Instead of integrating that pulse response to estimate the OMA, Method 2 uses that pulse response to synthesize what the optical waveform would have been if a square wave of the appropriate frequency had been transmitted. The amplitude of the optical signal during measurement windows is then measured and used to determine OMA.
  • the amplitude of the optical signal at the center of the “on” or “high” portion of the square wave is measured by averaging the amplitude over a measurement window positioned at the center 20% of the “on” portion, and the amplitude of the optical signal at the center of the “off” or “low” portion of the square wave is similarly measured over a measurement windows positioned at the center 20% of the “off” portion.
  • the OMA estimate is then the difference between the “on” amplitude and the “off” amplitude, and the baseline estimate is the measurement of the “off” amplitude.
  • IEEE 802.3ae Clause 52.9.1.2 specifies that the data test pattern for the square wave may be “a pattern consisting of four to eleven consecutive ones followed by an equal run of zeros”.
  • a preferred embodiment uses a square wave comprising a repetitive pattern with eight consecutive ones followed by eight consecutive zeros, though other period lengths (for example, ten ones and ten zeros) could be used instead.
  • An example implementation of Method 2 for OMA and baseline estimation is included in the MATLAB code in Appendix B.
  • FIG. 8 shows an example calculation of OMA using Method 2.
  • the synthesized square waveform 810 includes eight consecutive zeros followed by eight consecutive ones.
  • the OMA of the synthesized waveform 810 is calculated as the difference between the average value of the synthesized square waveform 810 captured during measurement window 820 and the average value of the synthesized square waveform 810 captured during measurement window 830 .
  • Measurement windows 820 , 830 are aligned, respectively, with the central regions of the consecutive zeros and the consecutive ones. For example, measurement window 820 is aligned with the center of the eight consecutive zeros and measurement window 830 is aligned with the center of the eight consecutive ones.
  • the temporal position of the measurement windows 820 , 830 is specified assuming an ideal square wave transitioning from zero to one at a specified time.
  • the measurement windows 820 , 830 are temporally positioned based on an expected transition time from zero to one occurring at 8 unit intervals (UI).
  • UI unit intervals
  • the time when the ideal waveform transitions between different values determines the temporal position of the measurement windows 820 , 830 . Because waveforms associated with the direct output of the transmitter generally exhibit fast edge rates, the values of these waveforms typically are settled within the measurement windows 820 , 830 , as shown in FIG. 8 . While FIG.
  • OMA may be accurately calculated if the synthesized waveform 810 is aligned within 1 unit interval (UI) of the expected transition time assumed in temporal positioning of the measurement windows 820 , 830 .
  • UI unit interval
  • the synthesized waveform 810 shown in FIG. 8 has stable values, it is relatively insensitive to misalignment between the synthesized waveform and the measurement windows.
  • other synthesized waveforms may be very sensitive to timing misalignment.
  • OMA may be calculated after propagation through a channel having dispersive effects. The dispersive effects of the channel can result in a wider pulse response.
  • the corresponding synthesized waveform can have more gradually sloping edges, possibly consuming much or all of the run of consecutive zeros and/or the run of consecutive ones. In this case, a temporal misalignment between the synthesized waveform and measurement windows reduces accuracy of OMA calculation and the resulting TWDP calculation.
  • FIGS. 9A and 9B illustrate this effect.
  • the synthesized waveforms 910 A, 910 B are unsettled during the measurement windows 920 , 930 .
  • the synthesized waveform 910 A has not settled on a zero value during measurement window 920 and also has not settled on a one value during measurement window 930 . Rather, the waveform is still sloping within the measurement windows.
  • the synthesized square waveform 910 A is temporally misaligned with an expected transition time which temporally positions the measurement windows 920 , 930 . In the examples of FIGS.
  • the expected transition time is 8 unit intervals (UI), so the measurement windows 920 , 930 in FIG. 9A are centered at 4 and 12 UI.
  • FIG. 9C shows an example of a temporally aligned waveform 910 C having a zero crossing at 8 UI.
  • waveform 910 A has a zero crossing at approximately 7, exhibiting an approximately 1 UI misalignment.
  • This 1 UI misalignment also causes synthesized waveform 910 A to include an additional zero crossing at approximately 15 UI.
  • the temporal misalignment and unsettled waveform mean that the values within the measurement windows 920 , 930 are shifted up or down, resulting in errors in the values measured within the measurement windows 920 , 930 . These errors in turn can result in an error in the calculated OMA.
  • the temporally misaligned waveform 910 A in FIG. 9A produces a calculated OMA of 1.8801 rather than the true OMA of 1.7373 produced by the temporally aligned waveform 910 C shown in FIG. 9C .
  • a temporal misalignment of the synthesized waveform 910 B during the measurement windows 920 , 930 produces an OMA of 1.545 rather than the true OMA of 1.7373 calculated from the temporally aligned waveform 910 C.
  • temporal misalignment between an actual synthesized waveform and the expected timing of the synthesized waveform alters the values obtained within the measurement windows which decreases OMA calculation accuracy. For example, if the actual synthesized waveform transitions between logic levels at a time different than the expected transition time, the actual synthesized waveform is temporally misaligned with the measurement windows.
  • temporal misalignment between the synthesized waveform and its expected timing is corrected by time-shifting the synthesized received waveform relative to the measurement windows.
  • FIG. 10 is a flow diagram illustrating a method for temporally aligning the synthesized received waveform and the measurement windows.
  • the temporal alignment method described below may be used to calculate the OMA of a waveform captured before transmission through a physical channel or of a waveform captured at the output of a physical channel having dispersive effects.
  • a waveform is initially captured 1005 and a pulse response is derived 1020 from the captured waveform.
  • a transmitter generates a waveform corresponding to an applied data test pattern, such as a periodic PRBS 9 signal or similar data pattern and the generated waveform is captured 1005 either directly from a transmitter or after propagation through a channel.
  • the pulse response is then derived 1020 from the captured waveform.
  • the captured waveform is propagated through a simulated channel and the pulse response is derived 1020 from a waveform at the output of the simulated channel.
  • the derived pulse response is then applied to an ideal square wave to synthesize 1030 a waveform for OMA calculation.
  • the square wave is a sequence of eight consecutive zeros followed by eight consecutive ones.
  • the synthesized waveform may be temporally misaligned with the measurement windows, which are temporally positioned based on an expected transition time between logic levels. For example, the measurement windows shown in FIGS. 8 , 9 A, 9 B and 9 C are centered at 4 unit intervals (UI) and 12 UI based on an expected transition time of 8 UI. If the synthesized waveform has a different transition time, such as 9 UI, the synthesized waveform and measurement windows are misaligned.
  • a specific transition between a first logic level (such as a “zero”) and a second logic level (such as a “one”) is located 1040 in the synthesized waveform.
  • the synthesized waveform is AC-coupled, so the transition is initially approximated as the time when the waveform has a value of zero, simplifying transition location 1040 .
  • the synthesized waveform may be similarly modified so that transitions are initially approximated as the time when the waveform has a specific value.
  • certain transitions may be ignored. For example, in FIGS. 9A-9B , the desired specific transition is the central transition located near 8 UI.
  • transitions located within a specified interval, such as 2 UI, from the beginning and end of a waveform analysis region may be discarded so that the central transition is properly identified.
  • the temporal misalignment between the synthesized waveform and the measurement windows is determined by the misalignment between the waveform used to derive the pulse response and the reference data pattern.
  • the waveform used to derive 1020 the pulse response is aligned with the reference data pattern within 1 UI. This allows the timing of the synthesized waveform to match that of an ideally-timed waveform, such as the synthesized waveform 810 shown in FIG. 8 , within 1 UI.
  • the desired central transition occurs with 1 UI of its ideal location, allowing transitions occurring within 2 UI of the beginning and end of the waveform analysis region to be ignored. If the waveform is sampled, then the two samples that straddle the time the waveform has the specific value can be interpolated to more precisely locate 1040 the time when the waveform transitions between the first logic level and the second logic level.
  • the time when the identified 1040 transition between the first logic level and the second logic level occurred is compared 1050 to the expected transition time which was used to temporally position the measurement windows and the temporal offset between the transition in the synthesized waveform and the expected transition time is determined.
  • the synthesized waveform is temporally shifted 1060 by the determined temporal offset so the transition time of the synthesized waveform is aligned with the expected transition time, aligning the synthesized waveform with the measurement windows.
  • OMA can then be estimated based on the values obtained during the measurement windows and used to calculate TWDP.
  • the following example MATLAB code can be used to implement the method described above to take in the temporally misaligned synthesized waveform (Y0 in the code) to produce an aligned synthesized waveform (Yin the code).
  • the example MATLAB code can be used in an implementation of TWDP calculation to improve estimation of OMA.
  • Appendix C provides additional example MATLAB code implementing a TWDP calculation including the temporal alignment described above.
  • Y AlignY(Y0,SqWvPer,OverSampleRate) % Aligns the crossings of the xMA square waveform Y % to the first sample in the vector, etc.
  • Y Y0 ⁇ mean(Y0); % AC-couple so crossings are at 0.
  • % Look only for the approximate crossing in the % middle by ignoring any within ⁇ 2 UI from the % beginning. Due to possible misalignment of the % captured waveform, this is the only crossing that % is certain.
  • % Use linear interpolation to find a more exact % crossing point.
  • xinterp interp1([Y(x),Y(x+1)],[x,x+1],0); % Calculate the difference from the ideal crossing % time, then shift and re-sample to create the % aligned square waveform.
  • Y circshift(Y0,SqWvPer/2*OverSampleRate+1 ⁇ x);
  • Y interp1(Y, (1:length(Y))′+xinterp ⁇ x,′spline′);
  • the MATLAB code presented below describes an alternate implementation of the time alignment method shown in FIG. 10 to take in the temporally misaligned synthesized waveform (Y0 in the code) and produce an aligned synthesized waveform (Y in the code).
  • This example MATLAB provides an alternate technique for initially approximating the transition between low logic level and high logic level in the synthesized waveform.
  • Y Y0 ⁇ mean(Y0); % AC-couple so crossings are at 0.
  • tmp Y(1:end ⁇ 1).*Y(2:end);
  • xinterp x ⁇ Y(x)/(Y(x+1) ⁇ Y(x)); % Calculate the difference from the ideal crossing % time then shift and re-sample to create the % aligned square waveform.
  • xadj xinterp ⁇ (SqWvPer/2*OverSampleRate+1);
  • Y circshift(Y0, ⁇ floor(xadj));
  • Y interp1(Y, (1:length(Y))′′+xadj ⁇ floor(xadj),′spline′);
  • temporally aligning the synthesized waveform and measurement windows allows for more accurate calculation of OMA, particularly when the synthesized waveform is subject to distortion. Improving OMA calculation consequently enables more accurate evaluation of TWDP to better determine transmitter performance.
  • the method described above addresses temporal alignment for OMA calculation, the above method may also be used to improve calculation of modulation amplitude in a variety of units, such as Voltage Modulation Amplitude (VMA) calculation or Current Modulation Amplitude (CMA).
  • VMA Voltage Modulation Amplitude
  • CMA Current Modulation Amplitude
  • allowing the temporal alignment method also improve performance analysis, such as waveform and dispersion penalty (WDP), depending on modulation amplitude, at any point in a system, including a receiver.
  • WDP waveform and dispersion penalty
  • the TWDP algorithm corrects for inaccuracies in the estimated value of the baseline (or steady state zero level).
  • This automated offset method makes the reported TWDP value independent of estimation error in the baseline. In fact, it obviates the need to measure a baseline at all provided the ratio of baseline value to OMA is not unreasonably large.
  • the resulting normalized waveform has target signal values of “0” and “1”.
  • the slicer threshold for BER determination is set at 1 ⁇ 2. An error in baseline estimation such that the resulting waveform is improperly offset and not centered about 1 ⁇ 2 will result in a higher BER than if the offset were optimized.
  • This offset optimization can be alternatively viewed as a threshold optimization.
  • the automated offset optimization can be accomplished by extending the vector of feedforward equalizer tap coefficients by 1.
  • the additional tap is not fed by a delayed version of the received signal, but is instead fed by the constant 1.
  • FIG. 6 shows an example feedforward filter with N f regular taps and an extra (N f +1) th tap for offset optimization.
  • the MMSE tap coefficients are then calculated in the normal fashion, and the coefficient of the extra tap essentially gives the offset that minimizes mean squared error with the target signal values.
  • An alternate method extends the length of the feedback tap coefficient vector by one, feeding that extra feedback tap by the constant 1, and computing the offset as part of the feedback tap coefficient vector.
  • FIGS. 7A and 7B show mathematically equivalent models for generating the sampler output sequence y ⁇ (nT/2).
  • the anti-aliasing filters 573 are identical, as are the T/2 samplers 574 (identical sampling rate and phase).
  • the model in FIG. 7B shows explicitly the random noise component ⁇ (n) and the deterministic periodic component r(n) that comprise the sampler output y ⁇ (nT/2).
  • the actual values of the sequence ⁇ (n) ⁇ are not required for MSE minimization; only the second order statistics are required. This suggest an alternate embodiment where the noise sequence ⁇ (n) is described only in terms of its second order statistics, and AWGN 577 is not necessarily assumed in the model.
  • ⁇ z ( R + N ) ⁇ w - X ⁇ [ 0 b ] ⁇ ⁇ ⁇
  • v′ indicates the transpose of the vector or matrix v
  • P is the square matrix in the lower right corner of ⁇ tilde over (P) ⁇ that excludes the first column and first row of ⁇ tilde over (P) ⁇
  • p is the first column of ⁇ tilde over (P) ⁇ excluding the top element P 00
  • ⁇ tilde over (P) ⁇ is given by
  • the minimum MSE is given by
  • ⁇ 2 1 N ⁇ w ′ ⁇ C ⁇ ⁇ w ( 42 )
  • Appendix A includes sample MATLAB code that computes TWDP for a reference DFE receiver with 100 T/2-spaced feedforward taps, 50 feedback taps, and automated offset optimization.
  • the OMA and baseline of the signal are entered manually instead of estimated automatically.
  • the equalizer delay is 50 feedforward taps (25 T), and the equalizer is long enough that optimization over equalizer delay and sampling phase are not required.
  • the reference receiver 584 uses a very long equalizer, closely approximating performance of an ideal infinite length equalizer.
  • the use of 100 feedforward taps 585 (at T/2 spacing), 50 feedback taps 586 (at T spacing), and an equalizer delay of 50 feedforward taps (25 T) are representative values that approximate an infinite length equalizer for the optical fiber channels of interest. Because the longer T/2 spaced feedforward equalizer is insensitive to sample phase and exact value of equalizer delay, this embodiment has the advantage that it does not require optimization over these parameters. However, such a long equalizer may give overly optimistic results for certain channels and thus may not accurately reflect the equalizability of the waveform by a practical receiver that uses a conventional DFE architecture.
  • the receiver has a matched filter, matched to the shape of the received pulse, which allows the use of a T-spaced feedforward filter instead of a T/2-spaced filter.
  • the simulation algorithm estimates a channel pulse response based on the reference fiber output 576 .
  • the linear fit described above as Method 1 for OMA and baseline estimation can be used, for example, to estimate the pulse response.
  • the front end of the reference receiver then uses a matched filter matched to this pulse response. This matched filter replaces the antialiasing filter 573 .
  • the signal is passed through the matched filter and is sampled at integer multiples of T instead of T/2.
  • this embodiment has the disadvantage that the estimated pulse response may inaccurately model the true pulse shape due to nonlinearities in the transmitter and/or channel. This may result in suboptimal equalization and could underestimate the link performance with a real receiver based on a fractionally spaced equalizer.
  • This MATLAB code illustrates various aspects of the invention.
  • This version implements a very long DFE that does not require optimization of equalizer delay or sampling phase. It includes code for automatic offset optimization and requires external input of the OMA and steady-state zero level.
  • %%%%%%%%% MATLAB (R) script to compute TWDP %%%%%%%%%%%%%%%%%%%%%%%%% % % % %*** Includes modification to automatically compute optimal offset making %*** errors in SteadyZeroPower irrelevant.
  • %% The %% values given below for TxDataFile, MeasuredWaveformFile, MeasuredOMA, %% and SteadyZeroPower are examples and should be replaced by actual %% path ⁇ filenames and values for each waveform tested.
  • %% Transmit data file %% The transmit data sequence is one of the TWDP test patterns.
  • %% The file format is ASCII with a single column of %% chronological ones and zeros with no headers or footers.
  • TxDataFile ′prbs9_950.txt′; %% Measured waveform. The waveform consists of exactly K samples per unit %% interval T, where K is the oversampling rate.
  • the waveform must be %% circularly shifted to align with the data sequence.
  • the file format for %% the measured waveform is ASCII with a single column of chronological %% numerical samples, in optical power, with no headers or footers.
  • MeasuredWaveformFile ′preproc-1207-01.txt′; %% OMA and steady-state ZERO power must be entered.
  • %% FiberResp contains delays in row 1, corresponding power coefficients in %% the other three rows. Rows 2, 3, and 4 each correspond to a differenct %% fiber channel model. For this example, use the power coefficients in %% row 4.
  • the vector ′Delays′ contains the delays, and the vector 'PCoefs' %% contains the amplitudes.
  • FiberResp [. . . 0.000000 0.072727 0.145455 0.218182 0.158 0.176 0.499 0.167 0.000 0.513 0.000 0.487 0.254 0.453 0.155 0.138];
  • Delays FiberResp(1,:)′;
  • PCoefs FiberResp(4,:)′; %%
  • GHz Antialiasing filter bandwidth
  • W and B minimize the mean square error %% between the input to the slicer and the transmitted sequence due to %% residual ISI and Gaussian noise.
  • %% Compute the noise autocorrelation sequence at the output of the %% antialiasing filter and rate-2/T sampler.
  • N0 SymbolPeriod/ (2 * Q0 ⁇ circumflex over ( ) ⁇ 2 * 10 ⁇ circumflex over ( ) ⁇ (2*PAlloc/10));
  • Snn N0/2 * fftshift(abs(H_r). ⁇ circumflex over ( ) ⁇ 2) * 1/SymbolPeriod * OverSampleRate;
  • Rnn real(ifft(Snn));
  • Corr Rnn(1:OverSampleRate/2:end); %% Construct a Toeplitz autocorrelation matrix.
  • This MATLAB code illustrates various aspects of the invention.
  • This version implements a DFE with 14 feedforward taps and 5 feedback taps.
  • This code illustrates optimization of equalizer delay and sampling phase, where the optimization of equalizer delay is performed in an efficient manner.
  • This version includes code that implements Method 2 for automatically estimating OMA and baseline from the input waveform and it includes automatic offset optimization
  • This version computes TWDP for three different stressor channels, using the maximum of those as the reported TWDP value.
  • %%%%%%%%%%%%%% MATLAB (R) script to compute TWDP %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% TWDP inputs %%%
  • the values given below for TxDataFile and MeasuredWaveformFile are %% examples and should be replaced by actual path ⁇ filenames for each %% waveform tested.
  • %% Transmit data file The transmit data sequence is one of the TWDP test %% patterns.
  • the file format is ASCII with a single column of chronological %% ones and zeros with no headers or footers.
  • TxDataFile ′prbs9_950.txt′; %% Measured waveform: The waveform consists of exactly K samples per unit %% interval T, where K is the oversampling rate. The waveform must be %% circularly shifted to align with the data sequence.
  • the file format for %% the measured waveform is ASCII with a single column of chronological %% numerical samples, in optical power, with no headers or footers.
  • %% FiberResp contains delays in row 1, corresponding power coefficients in %% the other three rows. Rows 2, 3, and 4 each correspond to a differenct %% fiber channel model. For this example, a TWDP value is computed for %% each channel, and the TWDP reported is the maximum of the three TWDP %% values thus computed.
  • Each column % (except the last) is one bit period of the pulse response. The last % column is the bias.
  • the computed W %% and B minimize the mean squared error between the input to the %% slicer and the transmitted sequence due to residual ISI and Gaussian %% noise.
  • This MATLAB code illustrates an example of various aspects of the invention. This code implements Method 2 for automatically estimating OMA and baseline from the input waveform and includes temporal alignment of the synthesized square waveform and data test pattern used for OMA calculation.
  • function [xWDP,MeasuredxMA] SFF8431xWDP(WaveformFile,EqNf,EqNb, . . .
  • %% [xWDP,MeasuredxMA] SFF8431xWDP(′wavefile.txt′,14,5,10.3125, ′Optical_WDP′) %%%
  • the fields in the example above should be replaced by the actual values %% being used.
  • WaveformFile should be the path ⁇ filename for each waveform %% tested.
  • the waveform consists of N samples per unit interval T, where %% N is the oversampling rate.
  • the waveform is circularly shifted to align %% with the data sequence.
  • the file format for the measured waveform is ASCII %% with a single column of chronological numerical samples, in signal level, %% with no headers or footers.
  • %% EqNf is the # of T/2-spaced feedforward equalizer taps; EqNb is the # of %% T-spaced feedback equalizer taps.
  • %% SymbolRate is in gigabaud.
  • %% Options for Usage are ′Optical_WDP′, ′Copper_WDP′, and ′Copper_TWDP′.
  • %% ′Optical WDP′ is used in support of clause 3 for %% measuring WDPi at the output of an optical TP3 tester, %% measuring WDPo at C′ of a linear optical module receiver, and %% calibrating WDP at C′′ for testing a host for linear optical modules.
  • %% ′Copper WDP′ is used in support of Annex E for %% measuring WDPi and calibrating WDP at B′′ for a copper cable assembly, %% measuring WDPo at C′ of a copper cable assembly (C), and %% calibrating WDP at C′′ for testing a host for copper cable assemblies.
  • %% ′Copper TWDP′ is used for measuring TWDP at B of a host for copper %% cable assemblies.
  • Lower end %% of range is minimum channel delay.
  • Upper end of range is the sum of the %% lengths of the FFE and channel. Round up and add 5 to account for the %% antialiasing filter.
  • EqDelMin floor(min(Delays)/SymbolPeriod);
  • Each %% column (except the last) is one bit period of the pulse response.
  • the last %% column is the bias.
  • SqWvPer 16; % Even number; sets the period of the sq wave used to compute xMA
  • SqWv [zeros(SqWvPer/2,1);ones(SqWvPer/2,1)]; %
  • the computed W and B %% minimize the mean square error between the input to the slicer and the %% transmitted sequence due to residual ISI and Gaussian noise. Minimize MSE %% over 2/T sampling phase and FFE delay and determine BER.
  • Y Y0 ⁇ mean(Y0); % AC-couple so crossings are at 0.
  • % Look only for the approximate crossing in the middle by ignoring any % within ⁇ 2 UI from the beginning. Due to possible misalignment of the % captured waveform, this is the only crossing that is certain.
  • xinterp x-Y(x)/(Y(x+1) ⁇ Y(x)); % Calculate the difference from the ideal crossing time then shift and % re-sample to create the aligned square waveform.
  • xadj xinterp ⁇ (SqWvPer/2*OverSampleRate+1);
  • Y circshift(Y0, ⁇ floor(xadj));
  • Y interpl(Y, (1:length(Y))′+xadj ⁇ floor(xadj),′spline′); %% End of AlignY function

Abstract

A transmitter for a communications link is tested by using a (software) simulation of a reference channel and/or a reference receiver to test the transmitter. In one embodiment for optical fiber communications links, a data test pattern is applied to the transmitter under test and the resulting optical output is captured, for example by a sampling oscilloscope. The captured waveform is subsequently processed by the software simulation, in order to simulate propagation of the optical signal through the reference channel and/or reference receiver. A performance metric for the transmitter is calculated based on the processed waveform.

Description

    CROSS-REFERENCE TO RELATED APPLICATION(S)
  • This application is a continuation of U.S. application Ser. No. 13/367,234 filed Feb. 6, 2012 entitled “Testing of Transmitters for Communication Links by Software Simulation of Reference Channel and/or Reference Receiver,” which is a continuation of U.S. application Ser. No. 12/430,892 filed Apr. 27, 2009, entitled “Testing of Transmitters for Communication Links by Software Simulation of Reference Channel And/or Reference Receiver,” which claims priority under 35 U.S.C. §119(e) to U.S. Provisional Patent Application No. 61/048,063, “Alignment of Square Waveform in T/WDP Code for a More Accurate Measure of xMA,” filed Apr. 25, 2008. U.S. application Ser. No. 12/430,892 is also a continuation-in-part of U.S. patent application Ser. No. 11/316,115, “Testing of Transmitters for Communication Links by Software Simulation of Reference Channel and/or Reference Receiver,” filed on Dec. 21, 2005 which claims priority under 35 U.S.C. §119(e) to each of the following U.S. Provisional Patent Applications Ser. No. 60/638,788, “Proposed TP-2 Test Methodology,” filed Dec. 22, 2004; Ser. No. 60/641,834, “Proposed TP-2 Test Methodology,” filed Jan. 5, 2005; Ser. No. 60/643,234, “Proposed TP-2 Test Methodology with MATLAB Script,” filed Jan. 11, 2005; Ser. No. 60/677,911, “New Approach To Measure Tx Signal Strength And Penalty,” filed May 4, 2005; Ser. No. 60/690,190, “Improvements To Transmit Waveform And Dispersion Penalty Algorithm,” filed Jun. 13, 2005; Ser. No. 60/698,435, “Method To Accurately Measure Bias And Optical Modulation Amplitude For a Distorted Optical Waveform,” filed Jul. 11, 2005; Ser. No. 60/701,637, “Method To Extract Square-Wave-Based Bias And Optical Modulation Amplitude For A Distorted Optical Waveform,” filed Jul. 21, 2005; Ser. No. 60/707,282, “Method To Extract Square-Wave-Based Bias And Optical Modulation Amplitude For A Distorted Optical Waveform,” filed Aug. 10, 2005; Ser. No. 60/710,512, “Computation Of Optimal Offset For A Transmitter Waveform And Dispersion Penalty,” filed Aug. 22, 2005; and Ser. No. 60/713,867, “Transmitter Waveform And Dispersion Penalty Test Using A Short Equalizer, OMSD Normalization, And Optimal Offset Computation,” filed Sep. 1, 2005. The subject matter of all of the foregoing are incorporated herein by reference in their entirety.
  • BACKGROUND OF THE INVENTION
  • 1. Field of the Invention
  • This invention relates generally to the use of software simulation (which is intended to include firmware simulation) in testing of transmitters used in communications links, for example the testing of transmitters used in optical fiber communications link by software simulation of a reference channel (i.e., a reference optical fiber link) and/or a reference receiver.
  • 2. Description of the Related Art
  • Optical fiber is widely used as a communications medium in high speed digital networks, including local area networks (LANs), storage area networks (SANs), and wide area networks (WANs). There has been a trend in optical networking towards ever-increasing data rates. While 100 Mbps was once considered extremely fast for enterprise networking, attention has recently shifted to 10 Gbps, 100 times faster. As used in this application, 10 Gigabit (abbreviated as 10 G or 10 Gbps) systems are understood to include optical fiber communication systems that have data rates or line rates (i.e., bit rates including overhead) of approximately 10 Gigabits per second.
  • Regardless of the specific data rate, application or architecture, communications links (including optical fiber communications links) invariably include a transmitter, a channel and a receiver. In an optical fiber communications link, the transmitter typically converts the digital data to be sent to an optical form suitable for transmission over the channel (i.e., the optical fiber). The optical signal is transported from the transmitter to the receiver over the channel, possibly suffering channel impairments along the way, and the receiver then recovers the digital data from the received optical signal.
  • For example, a typical 10 G optical fiber communications link 100 is shown in FIG. 1. The link 100 includes a transmitter 105 coupled through optical fiber 110 (the channel) to a receiver 120. A typical transmitter 105 may include a serializer, or parallel/serial converter (P/S) 106 for receiving 10 G data from a data source on a plurality of parallel lines and providing serial data to a 10 G laser driver 107. The driver 107 then drives a 10 G laser source 108, which launches the optical waveform carrying the digital data on optical fiber 110.
  • On the receive side, a typical receiver 120 includes a 10 G photodetector 111 for receiving and detecting data from the optical fiber 110. The detected data is typically processed through a 10 G transimpedance amplifier 112, a 10 G limiting amplifier 113, and a 10 G clock and data recovery unit 114. The recovered data may then be placed on a parallel data interface through a serial/parallel converter (S/P) 115.
  • Standards play an important role in networking and communications. Since components in the network may come from different vendors, standards ensure that different components will interoperate with each other and that overall system performance metrics can be achieved even when components are sourced from different vendors. For example, standards for transmitters can be used to ensure that, when compliant transmitters are combined with a compliant channel and compliant receivers, the overall link will meet certain minimum performance levels. As a result, manufacturers of transmitters typically will want to test their transmitters for compliance with the relevant standards as part of their production process.
  • However, current testing approaches, which were developed for earlier generation optical fiber communications links, may not be suitable for the more advanced systems that are currently being developed and fielded. In one testing approach, transmitters are tested based on the quality of their immediate output. For example, the signal to noise ratio (SNR), bit error rate, eye diagram or other performance metric may be measured at the output of the transmitter. This approach ignores interactions between the transmitter and other components in the system (e.g., the optical fiber and the receiver) and, as a result, may be too simplistic to give an accurate assessment of the overall system performance achievable by the transmitter. For example, if the optical fiber communications link is designed so that the receiver compensates for distortions or other impairments introduced by the channel or the transmitter, a direct measurement of the performance at the transmitter output may not accurately reflect this subsequent compensation. In fact, in certain systems, it may be difficult to obtain an accurate assessment of the performance of the transmitter based only on its immediate output. Similarly, standards for transmitters used in more advanced systems may be based in part on their interaction with other components. For example, if the standard assumes a certain type of distortion mitigation in the receiver, the transmitter may be allowed a certain level of distortion that the receiver can compensate, but other types of distortion that the receiver cannot compensate should be limited. A transmitter test that cannot distinguish between the two types of distortion (an eye diagram, for example) will be an inadequate compliance test for this type of standard. Hence, a test of the transmitter alone may not be sufficient to determine whether the transmitter complies with the standard.
  • Another testing approach uses hardware reference components to emulate the overall optical fiber communications link. For example, there are a number of standards that relate to 10 G fiber networks. 10 G Ethernet over optical fiber is specified in IEEE Std 802.3ae-2002 Media Access Control (MAC) Parameters, Physical Layers, and Management Parameters for 10 Gb/s Operation (abbreviated herein as IEEE 802.3ae). The IEEE 802.3ae standard includes a Transmitter and Dispersion Penalty (TDP) measurement. The TDP measurement was developed as a transmitter compliance test to ensure that a compliant transmitter will communicate with a compliant receiver over a compliant channel with acceptable performance. The TDP measurement involves signal quality characteristics such as rise and fall times, eye pattern opening, jitter, and other distortion measurements. The intent is to insure that the signal received from a compliant transmitter can be detected to deliver a specified bit error rate.
  • The TDP measurement technique described in the 802.3ae standard involves a hardware test setup, including a hardware reference transmitter, the transmitter under test, a reference channel (i.e., actual length of fiber), and a hardware reference receiver. The test proceeds as follows. A reference link is established by connecting the reference transmitter to the reference receiver via the reference channel. The performance of the reference link is measured. A test link is established by connecting the transmitter under test to the reference receiver via the reference channel. The performance of this link is also measured. The performance of the reference link is compared with the performance of the test link to arrive at a value of TDP. The reference transmitter and reference receiver are high-quality instrument-grade devices. The test procedure involves several manual calibration and measurement steps. There are several disadvantages to this approach.
  • One disadvantage is the need for a hardware reference transmitter, a hardware reference channel, and a hardware reference receiver. The reference transmitter, channel, and receiver have tightly defined characteristics and are therefore very expensive. For example, the reference transmitter has tight specifications on rise and fall times, optical eye horizontal and vertical closure, jitter, and relative intensity noise (RIN). Furthermore, it is possible that different reference transmitters, channels, or reference receivers might yield different results due to parameter tolerances, environmental conditions (temperature, aging), and other differences. Therefore, the recommended measurement procedure involves a number of complex and sensitive calibration steps. The accuracy of the TDP measurement is sensitive to these time consuming and difficult calibration steps. Since these calibration steps all have tolerances, there may be significant variation in the results.
  • Another disadvantage is that the hardware approach is not easily extendible to other standards. Another standards committee is IEEE 802.3aq, which is developing a standard (10 GBASE-LRM) for 10 G Ethernet over multi-mode fiber over distances of up to 220 meters using electronic dispersion compensation (EDC). This standard is in a draft state, currently documented in IEEE Draft P802.3aq/D3.0, Draft amendment to: IEEE Standard for Information technology—Telecommunications and information exchange between systems—Local and metropolitan area networks—Specific requirements, Part 3: Carrier Sense Multiple Access with Collision Detection (CSMA/CD) Access Method and Physical Layer Specifications, Amendment: Physical Layer and Management Parameters for 10 Gb/s Operation, Type 10 GBASE-LRM, referred to herein as IEEE 802.3aq/D3.0. The use of EDC in the receiver allows communication over longer distances and/or use of lower cost components. Some of the added waveform distortions can be corrected in the EDC receiver. However, this leads to some problems in defining and measuring a metric for transmitter qualification.
  • For example, TDP is not an appropriate transmitter compliance test for 10 GBASE-LRM (EDC) systems because the reference receiver does not include equalization and does not accurately compensate for those distortions that a receiver using EDC can clean up. In general, there are certain signal impairments that can be corrected by an EDC receiver (such as most linear distortions), and there are other impairments that cannot normally be equalized (such as most nonlinear distortions). A suitable transmitter quality measure for an EDC system should measure the signal quality (or resulting bit error rate) achievable by a receiver with equalization. A reference receiver for such a system probably would include a decision feedback equalizer (DFE) as an EDC technique. However, a reference grade equalizer in the hardware receiver would be very difficult to make. It would have its own limitations, such as finite length and finite precision and tolerances, and these limitations could conceal the properties of the signal being measured. The resulting measurements may not accurately indicate correctable versus non-correctable impairments.
  • Another disadvantage with the use of TDP when applied to a transmitter intended for use on a link with an EDC receiver is the dependence of TDP on a measurement of Optical Modulation Amplitude (OMA). OMA is the difference in optical power for the nominal “1” and “0” levels of the optical signal. The measurement technique defined by 802.3ae is to capture samples of a test waveform using a sampling oscilloscope. The test waveform is the response of the transmitter to a square wave, which is a repetitive pattern of several consecutive 1's followed by an equal number of consecutive 0's. The mean optical power level of an optical 1 is measured over the center 20% of the time interval where the signal is high, and similarly for 0's when the signal is low. This is appropriate when the waveform is well-behaved in the sense that the levels during the measurement windows are constant and well-defined. However, a system that uses EDC in the receiver enables the use of lower cost transmitters that may result in distorted transmitted waveforms, for example as discussed further in U.S. patent application Ser. No. 11/033,457, “Use of Low-Speed Components in High-Speed Optical Fiber Transceivers,” filed Jan. 10, 2005. The response of the transmitter to a square wave input may differ dramatically from a well-behaved waveform due to bandlimiting, dispersion, and other distortions (such as ringing). This may make it difficult for an operator to accurately determine the true high and low levels. Since the value of TDP is sensitive to the measured OMA, this inaccuracy will directly affect the TDP measurement.
  • Thus, there is a need for improved transmitter testing techniques for communications links, including for example 10 G optical fiber communications links where the receiver includes EDC.
  • SUMMARY OF THE INVENTION
  • The present invention overcomes the limitations of the prior art by using a (software—including firmware) simulation of a reference channel and/or a reference receiver to test transmitters. In one embodiment for optical fiber communications links, a data test pattern (also referred to as a data sequence) is applied to the transmitter under test and the resulting optical output is captured, for example by a sampling oscilloscope. The captured waveform is subsequently processed by the software simulation, in order to simulate propagation of the optical signal through the reference channel and/or reference receiver. A performance metric for the transmitter is calculated based on the processed waveform.
  • In one embodiment, the performance metric is the transmitter waveform and dispersion penalty (TWDP). TWDP is defined as the difference (in dB) between a reference signal to noise ratio (SNR), and the equivalent SNR at the slicer input of a reference decision feedback equalizer (DFE) receiver for the measured waveform from the transmitter under test after propagation through an optical fiber reference channel.
  • In one approach, a data test pattern is applied to the transmitter under test and the transmitter output is sampled using standard test equipment. The captured waveform is processed through a software simulation of the reference optical fiber (i.e., reference channel) and the reference receiver (which includes an equalizer). The use of a standard software simulation of the reference channel and the reference receiver avoids the difficulties inherent with a hardware receiver and allows a more accurate measurement of unequalizable signal impairments. The need for a hardware reference transmitter, fiber, or reference receiver is eliminated, thus saving significant costs. In this way, TWDP can be measured for optical fiber communication systems using EDC.
  • This approach has advantages since using a hardware reference receiver has significant problems. For example, the IEEE 802.3aq committee adopted the definition of one reference receiver based on PIE-D (Penalty for Ideal Equalizer—DFE), which corresponds to an infinite length DFE and can be computed analytically. However, an EDC receiver that can be reasonably implemented in hardware will have a finite length equalizer with limited arithmetic precision. Therefore, the results from a hardware reference receiver will not fully reflect the theoretical TWDP results and may be strongly influenced by the actual reference receiver implementation.
  • In one aspect of the invention, the signal output from the transmitter under test is captured by a sampling oscilloscope, and the resulting sampled signal is processed by a software simulation (including firmware simulations) of a reference channel and reference receiver. This enables the TWDP measurement to be performed using standard test equipment, rather than a very expensive instrument grade receiver. In one implementation, the reference equalizing receiver is implemented using a MATLAB simulation or other equivalent software simulation. Some or all of the software simulator may be integrated as part of the sampling oscilloscope (or other waveform capture device), provided as an add-on module to the sampling oscilloscope and/or implemented as a separate module.
  • The software simulator can also perform measurement of optical modulation amplitude (OMA) and waveform baseline. The computation of these quantities based on the captured waveform (including earlier or later processed versions of the captured waveform) eliminates the inaccuracies inherent in separate or manual measurements. For example, these quantities can be computed from the raw digitized waveform captured by the waveform capture device, from the waveform after some pre-processing (e.g., after re-sampling, truncation and/or data alignment) or from waveforms after simulation of propagation. Techniques are disclosed that yield more accurate measurements for highly distorted signals. For example, temporal misalignment between a synthesized waveform, such as a square wave, and measurement windows capturing values for OMA calculation can be corrected, allowing time alignment of the synthesized waveform and the measurement windows. This is advantageous because TWDP depends strongly on OMA, and the accurate measurement of OMA may be very difficult for distorted transmit waveforms that, in spite of this distortion, are acceptable when EDC is used in the receiver. Temporal alignment between the synthesized waveform and the measurement windows may also allow more accurate calculation of waveform and dispersion penalty (WDP) of optical or electrical signals at different locations within a system. In another variation, the software automatically corrects for the optimal DC offset (bias) value. Since the TWDP value is sensitive to offset of the waveform, automatic offset optimization improves reproducibility of the measured TWDP. This can be accomplished by adding an extra tap to the feedforward filter of the equalizer.
  • In another aspect of the invention, the simulated receiver uses a very long equalizer that approximates the performance of an infinite length equalizer. This is useful to establish a performance bound on practical length equalizers. In yet another aspect of the invention, a much shorter equalizer is used in the simulated receiver. The shorter equalizer more closely approximates the performance of a practically realizable receiver, but it requires additional optimization of equalizer delay and sampling phase, examples of which are also described herein.
  • Other aspects of the invention include methods and devices corresponding to the techniques described above.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The invention has other advantages and features which will be more readily apparent from the following detailed description of the invention and the appended claims, when taken in conjunction with the accompanying drawings, in which:
  • FIG. 1 (prior art) is a block diagram of a 10 G optical fiber communications link.
  • FIG. 2 is a block diagram of a communications link suitable for use with the invention.
  • FIGS. 3 and 4 are block diagrams of a test system according to the invention.
  • FIG. 5 is a block diagram of a model of a test system according to the invention.
  • FIG. 6 is block diagram of a feedforward filter with a tap to adjust a constant offset.
  • FIGS. 7A and 7B are block diagrams of mathematically equivalent models for the sampler output.
  • FIG. 8 is a time plot illustrating calculation of optical modulation amplitude from a square wave that is time-aligned with an expected transition time.
  • FIGS. 9A and 9B are time plots illustrating miscalculation of optical modulation amplitude from square waves that are temporally misaligned with an expected transition time.
  • FIG. 9C is a time plot illustrating calculation of optical modulation amplitude from a square wave that is temporally aligned with an expected transition time.
  • FIG. 10 is a flow chart of a method according to the invention for temporally aligning a square wave synthesized from a captured waveform.
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • FIG. 2 is a block diagram of a communications link 300 suitable for use with the current invention. The link 300 includes a transmitter 305 coupled through a channel 310 to a receiver 320. The overall system 300 may suffer from various impairments in transmitting data from the transmitter 305 to the receiver 320. The transmitters 305, channels 310 and receivers 320 may be various types, depending on the end application. Microwave, RF, cable, and optical fiber are some examples of different media for the channel 310. Different types of modulation may be used by the transmitter 305. Some examples are on-off keying, QAM, PSK, and OFDM. Similarly, the receiver 315 can also take the various forms corresponding to these different modulation formats.
  • FIGS. 3 and 4 are block diagrams of a test system according to the current invention. The purpose of the test system is to test the transmitter, for example for compliance with a specific standard. In FIG. 3, a data test pattern 450 is applied to the transmitter under test 405. The transmitter 405 produces an output 460, which is captured by a waveform capture device 465, for example a sampling oscilloscope. The captured waveform may be stored in some medium 467, for subsequent retrieval.
  • In FIG. 4, a software simulator 470 accesses the stored waveform 462. The simulator 470 is designed to simulate the effects of a reference channel 472 and/or reference receiver 474. The software 470 processes the waveform 462 to simulate propagation of the waveform through the reference channel 472 and/or the reference receiver 474. A performance metric 476 is calculated based on the simulated propagation. The data test pattern 450 may be used as an input to the software simulator 470, for example in modeling the reference receiver/channel or in calculating the performance metric. By using this software simulator-based approach, the performance of the transmitter under test 405 can be predicted without requiring the use of hardware reference components.
  • Described below is a specific embodiment using the 10 GBASE-LRM system as a specific example. The following example describes a test methodology for measuring a performance metric known as the Transmitter Waveform and Dispersion Penalty (TWDP). TWDP is defined as

  • TWDP=SNRREF−SNRTX(dBo)   (1)
  • where SNRREF is a reference signal to noise ratio (SNR), expressed in optical dB (dBo), and SNRTX is the equivalent SNR in dBo for the transmitter under test at the slicer input of a reference decision feedback equalizer (DFE) receiver for the measured waveform after propagation through a reference optical fiber channel. The transmitter under test is compliant with the standard if its computed TWDP is less than the upper limit specified by the IEEE 802.3aq standard.
  • In this test, the reference SNR, SNRREF, has a specific numeric value, and it is related to OMARCV, T, and N0 through

  • SNRREF=OMARCV√{square root over (T/(2N 0))}

  • SNRREF(dBo)=10 log10(OMARCV√{square root over (T/(2N 0)))}  (2)
  • where OMARCV is the OMA of the signal at the input to the reference channel, N0 is the one-sided power spectral density of the additive white Gaussian noise (AWGN) assumed for the reference DFE receiver, and T is the bit duration, also called the unit interval.
  • Eqn. (2) gives the SNR that would be realized by an ideal matched filter receiver if the received waveform were an ideal rectangular NRZ waveform with amplitude OMARCV and the receiver had AWGN of spectral density N0. This ideal received waveform would result, for example, if an ideal NRZ transmitter transmitted an optical signal of amplitude OMARCV over a distortion-free, lossless optical fiber.
  • The specific value of SNRREF is set equal to some margin in optical dB above SNRRQD, where SNRRQD is the SNR required for the ideal matched filter receiver to achieve a desired bit error rate (BER) for an ideal NRZ received waveform. For the 10 GBASE-LRM example, the desired BER is 10−12, and SNRREF is set 6.5 dBo above SNRRQD to allow for 6.5 dB of optical power penalties related to dispersion. The BER for a such a matched filter receiver with an ideal NRZ input waveform is given by

  • BER=Q(SNRRQD)   (3)
  • where Q( ) is the Gaussian error probability function
  • Q ( y ) = y 1 2 π - x 2 2 x ( 4 )
  • For the 10 GBASE-LRM example, Eqns. (3) and (4) result in 10 log10(SNRRQD) equal to 8.47 dBo to achieve a BER of 10−12. Allowing for 6.5 dB of optical power penalties related to dispersion results in an SNRREF given by

  • SNRREF=8.47+6.5=14.97 dBo   (5)
  • For a given OMARCV, SNRREF determines a particular N0 through Eqn. (2). Without loss of generality, OMARCV is normalized to 1, and N0 is set accordingly.
  • Turning now to the transmitter under test, in a preferred embodiment, the SNRTX (and hence, also the TWDP) is calculated by MATLAB code as illustrated in FIG. 5. The data test pattern {x(n)} 550 driving the transmitter under test 505 is a periodic PRBS9 or similar data pattern. The transmitter 505 outputs an optical waveform 560, which is converted to an electrical signal by an optoelectronic converter 561, filtered by a hardware reference filter 562, and then digitized and captured 563. In one embodiment, the optoelectronic conversion, hardware filtering, and digitization and capture are all performed by a sampling oscilloscope 565 with an appropriate optical head, though the functions may alternatively be performed by separate devices. The oscilloscope is set to capture at least one complete cycle of the periodic signal 560 with at least seven samples per unit interval. The number of samples per unit interval is not critical as long as the sampling rate is high enough to capture the high frequency content of the signal out of the hardware filter 562 without aliasing. In a preferred embodiment, the hardware filter 562 has a fourth-order Bessel-Thomson response with 3 dB electrical bandwidth of 7.5 GHz to filter the incoming waveform before digitization. The oscilloscope is set to average out noise in the waveform, thus producing the digitized waveform 566 which approximates a noiseless filtered version of the transmitter output 560. In an alternate embodiment, no hardware filter 562 is used. However, this alternate embodiment may lead to variation in measurement from one test setup to another depending of the inherent bandwidth of the optoelectronic conversion and subsequent digitization.
  • The inputs to the software simulator 570 include the following:
      • The captured waveform 568, which, in this specific example, is one complete cycle of the digitized waveform 566 with an integer number of samples per bit period or unit interval—e.g., one complete cycle of the waveform resulting from a periodic PRBS9 data test pattern. In some cases, the digitized waveform 566 is pre-processed (e.g., re-sampled, truncated and/or aligned with the data test pattern, as necessary) to produce the captured waveform 568. In other cases, pre-processing may not be necessary and the digitized waveform 566 can be used directly as the captured waveform 568. In a preferred embodiment, the captured waveform 568 has 16 samples per unit interval. The number of samples per unit interval is not critical as long as the sampling rate is high enough to represent the high frequency content of the signal without aliasing.
      • One complete cycle of the data test pattern 550 used to generate the captured waveform 568. The data test pattern 550 and the captured waveform 568 are aligned (i.e., a rectangular pulse train based on the data test pattern 550 is aligned with the captured waveform 568 within one unit interval). The data test pattern 550 has period N (e.g., 511 for PRBS9) and one cycle is denoted {x(n)}, where 0≦n≦N-1.
        The preprocessing steps of re-sampling, truncation to one complete cycle, and alignment with the data test pattern are shown performed in block 567 outside the simulator 570 and outside the sampling oscilloscope 565. Alternatively, some or all of these steps may be performed as part of the simulator 570, or inside the sampling oscilloscope 565, or as part of the digitization and capture 563.
  • In a preferred embodiment, the captured waveform 568 is processed by the software simulator 570, as follows:
  • 1. The captured waveform 568 is normalized 571. The OMA and baseline (steady state zero level) of the waveform 568 are either measured separately and entered as inputs to the algorithm, or alternatively they are estimated from the captured waveform, as described more fully below. The zero-level (baseline) is subtracted from the waveform 568 and the waveform is scaled such that the resulting OMA is 1. Thus, the normalized waveform has a baseline of 0 and an OMA of 1. N0 is set such that SNRREF is 14.97 dBo, as described above.
  • 2. Propagation of the normalized waveform through an optical fiber reference channel 572 is simulated. In a preferred embodiment, the reference channel is represented by an impulse response. An alternative embodiment can represent the reference channel by a frequency response, or by a lookup table, or by other mappings of input waveform to output waveform. In a preferred embodiment, propagation is accomplished in the frequency domain. This is accomplished by performing Fourier transforms on the normalized waveform and fiber impulse response, multiplying the transforms together, and then performing an inverse Fourier transform back to the time domain. An alternative embodiment accomplishes propagation in the time domain by convolving the normalized waveform with the fiber impulse response.
  • Note that the OMA can alternatively be normalized after propagation through the fiber, depending on the performance metric desired. As long as the fiber model is normalized to preserve OMA, normalizing before or after propagation will give equivalent results.
  • 3. The output from the reference channel 572 is passed through an antialiasing filter 573. A fourth-order Butterworth filter of bandwidth 7.5 GHz is used in this example. An alternative embodiment would omit the antialiasing filter 573 but would instead filter the white Gaussian noise 577 before adding it to the reference fiber output 576.
  • 4. The output signal from the antialiasing filter 573 is sampled 574 at rate 2/T with sampling phase φ. An alternate embodiment using a matched filter and a rate 1/T sampler is described below. The sampler output 575 is denoted yφ(nT/2), which has a deterministic component and a random component given by

  • y φ(nT/2)=r(n)+η(n).
  • The sequence {r(n)} is the deterministic sampled version of the filtered output of the reference fiber; it is periodic with period 2N. The sequence {η(n)} is a discrete-time noise sequence which is obtained by passing the AWGN through the anti-aliasing filter and sampling.
  • 5. The sampled signal is processed by a fractionally-spaced MMSE-DFE receiver 584 with Nf feedforward taps (at T/2 spacing) 585 and Nb feedback taps 586. For example, Nf can be set to 14 and Nb can be set to 5. The use of 14 feedforward taps and 5 feedback taps are example settings; the number of taps can be different depending on the desired capabilities of the reference DFE receiver. The feedforward filter is optionally augmented with an extra (Nf+1th) tap that adjusts to optimize a constant offset, as shown in FIG. 6 and described more fully below. The feedforward and feedback tap coefficients are calculated using a least-squares approach that minimizes the mean-squared error at the slicer 578 input for the given captured waveform, assuming the noise power spectral density N0 set according to Eqn. (2) as described above.
  • FIG. 5 shows the channel and equalizer model used for the least-squares calculation. The reference DFE consists of a feedforward filter {W(0), . . . , W(Nf−1)}, an optional constant offset coefficient W(Nf) (as shown in FIG. 6), and a feedback filter {B(1), . . . , B(Nb)}. A conventional DFE would feedback decisions {{circumflex over (x)}(n)}. In this case, the decisions are assumed to be correct and the decided bits are therefore replaced with the transmitted bits {x(n)}. While a finite length equalizer is shown in this example, an alternate embodiment would include an infinite length equalizer, performance of which could be computed analytically.
  • The feedback filter 586 is symbol spaced and strictly causal, feeding back the Nb bits prior to the current bit x(n). The input sequence on which the slicer makes decisions is denoted {z (n)}, where
  • z ( n ) = k = 0 N f - 1 W ( k ) y φ ( n T + DT - kT / 2 ) + W ( N f ) - k = 1 N b B ( k ) x ( n - k ) = k = 0 N f - 1 W ( k ) ( r ( 2 n + 2 D - k ) + η ( 2 n + 2 D - k ) ) + W ( N f ) - k = 1 N b B ( k ) x ( n - k ) ( 6 )
  • Eqn. (6) includes the term W(Nf), which is the optional constant offset coefficient for automated offset compensation; without offset compensation, W(Nf) would be absent (or set to 0). In Eqn. (6), D is an integer such that the number of anticausal T/2-spaced taps in the feedforward filter is 2D. While the feedforward filter is modeled as having anticausal taps, a practical equalizer would delay decisions by DT so that the overall system is causal. DT is referred to as the equalizer delay. Sometimes the equalizer delay is expressed as the number of feedforward anticausal taps, 2D.
  • The least-squares solution for the feedforward and feedback filters minimizes the quantity
  • M S E = E [ n = 0 N - 1 ( z ( n ) - x ( n ) ) 2 ]
  • where the expectation operator, E, refers to the random noise at the slicer input, which results from the additive white Gaussian noise 577, filtered through the antialiasing filter 573, sampled 574, and filtered by the feedforward filter 585. (Here MSE is actually N times the mean-squared error when averaged over the input sequence {x(n)}.) The algorithm finds the optimal W vector, B vector, and equalizer delay DT such that the mean-squared error is minimized in an efficient manner, for example as described in P. A. Voois, I. Lee, and J. M. Cioffi, “The effect of decision delay in finite-length decision feedback equalization,” IEEE Transactions on Information Theory, vol. 53, pp. 618-621, March 1996, which is incorporated herein by reference. The optimal sampling phase φ for the T/2 sampler is found by a brute-force search over the 16 sampling phases in the unit interval. Note that for a sufficiently long equalizer, that is, for Nf and Nb sufficiently large, the MSE is insensitive to sampling phase and equalizer delay. In that case, the number of anticausal taps 2D can be set to Nf/2, for example, and optimization over D and φ can be omitted. Further details of the mean squared error (MSE) minimization are given below.
  • 6. Once the MSE is minimized by finding the optimal sampling phase, equalizer delay, and tap coefficients, the bit-error rate is calculated by the semi-analytic method. In an actual receiver, the slicer would make binary decisions on its input based on whether the input is greater than or less than the slicer threshold. The probability of making an error depends on the amplitude of the input signal, the statistics of the input noise, and the threshold of the slicer, which for this example is set to ½. The overall bit-error rate is calculated as follows:
      • a. The Gaussian noise variance at the input to the slicer 578 is calculated.
      • b. For each bit in the data test pattern, the equalized input signal to the slicer 578 is calculated and the probability of error calculated based on the amplitude of the input signal, the variance of the input noise, and the threshold value.
      • c. The probabilities of error are averaged over all bits in the data test pattern to compute a total probability of error BERTX.
  • 7. The equivalent SNR in optical dB is derived from the BERTX according to

  • SNRTX=10 log10(Q−1(BERTX)) (dBo)   (7)
  • 8. The TWDP for the simulated fiber reference channel 572 is equal to the difference (in optical dB) between SNRREF and the equivalent SNRTX, as shown in Eqn. (1) above.
  • There are additional alternate embodiments that are related to the example algorithm described above. For example, the algorithm described above minimizes MSE at the slicer input, since that is how most practical equalizers are implemented. Alternatively, the reference receiver could minimize bit error rate (BER) or some other performance metric to compute the transmitter penalty. Minimization of BER would not necessarily result in the same penalty as that computed by minimizing mean squared error.
  • As another example, the TWDP algorithm described above simulates propagation through a single optical fiber reference channel. Alternatively, a number of optical fiber reference channels 572 may be simulated, each corresponding to a defined stressor that has been defined to represent a certain level of dispersion and a certain category of fiber response. The normalized waveform is passed though each of these simulated reference channels 572 and the reference equalizing receiver to compute a “channel-specific” TWDP for each channel. Transmitter compliance can be defined in terms of the collection of channel-specific TWDP values. For example, compliance can require that a certain percentage of the channel-specific TWDP values be below some threshold. In particular, one could require that all of the channel-specific TWDP values be below some limit. This is equivalent to requiring that the maximum of the channel-specific TWDP values be below some limit. Or, a different limit could be defined for different reference channels or classes of reference channels. It will be readily apparent that many different compliance criteria can be defined, all of which should be considered within the scope of this invention.
  • Appendices A and B give examples of MATLAB code that illustrate various aspects of the algorithm described above. The following derivation details relate the above description to the code presented in the appendices.
  • As described above, the TWDP algorithm requires estimates of the optical modulation amplitude (OMA) and baseline (steady state zero level) of the waveform to normalize 571 the waveform. These values can be measured externally and input into the algorithm, which saves computation time, or the algorithm can estimate these quantities based on the input waveform. However, for distorted waveforms, such as those that might result from the use of lower cost optical transmitters, these values can be difficult to measure accurately using the traditional method of displaying a waveform on an oscilloscope. It is therefore advantageous for the algorithm to automatically compute estimates of the OMA and baseline from the input waveform 568 rather than relying on externally provided measurements.
  • One method of computing OMA and baseline, referred to as Method 1, is as follows. In an optical communications system, the optical power output by a laser is commonly modulated in a binary fashion to send data over an optical fiber. Nominally, the optical power is high for the duration of a bit period to send a logical “1”, and low to send a logical “0”. The difference in optical power between the nominal high level and the nominal low level is the OMA, and we refer to the nominal low level as the baseline (or sometimes, the steady-state zero level, or simply the zero level). This type of modulation is commonly referred to as on-off-keying, where “on” means high laser power and “off” means low laser power. This is also referred to as nonreturn-to-zero (NRZ) signaling when the output power stays at nominally the same level for an entire bit period. In actuality, the level is not constant for the entire bit period due to finite rise and fall times of the laser output. Also, the laser output experiences ringing when it transitions from high power to low power and from low power to high power. This ringing is referred to as relaxation oscillation. Nonetheless, a common feature of NRZ modulation is that a long string of zeros or a long string of ones will each result in a modulated output signal that tends to a constant steady state value.
  • A simple linear (strictly, affine) model of the laser output power y(t) is given by
  • y lin ( t ) = b + O M A n = - x ( n ) p ( t - nT ) ( 8 )
  • where b is a constant baseline value, xnε{0,1}, p(t) is the pulse shape output by the laser, and T is the bit period. OMA can be defined as the difference between the steady state “on” or “high” power of the laser and the steady state “off” or “low” power of the laser. For this definition of OMA to be consistent with Eqn. (8), a train of pulses p(t) must sum to 1, or
  • n = - p ( t - nT ) = 1 ( 9 )
  • If p(t) is the rectangular function ΠT(t), defined by
  • Π T ( t ) = { 1 t < T / 2 1 / 2 t = T / 2 0 t > T / 2 ( 10 )
  • then ylin(t) is ideal NRZ modulation.
  • A generalized NRZ modulation can be defined by allowing p(t) to be a filtered version of the rectangular pulse shape. Let h(t) be the impulse response of a filter normalized such that
  • - h ( t ) t = 1 ( 11 )
  • Let p(t)=ΠT(t)*h(t), where * denotes convolution. Then Eqn. (9) still holds, as can be seen by
  • n p ( t - nT ) = h ( t ) * n Π T ( t - nT ) = h ( t ) * 1 = - h ( t ) t = 1 ( 12 )
  • Also,
  • - p ( t ) t = - h ( t ) t - Π T ( t ) t = T .
  • This is easily shown in the frequency domain.
  • Let q(t)=OMA p(t). Then Eqn. (8) is rewritten as
  • y lin ( t ) = b + n = - x ( n ) q ( t - nT ) ( 13 )
  • Now
  • - q ( t ) t = OMA · T ( 14 )
  • Hence, Eqn. (14) can be used to estimate OMA by finding q(t), integrating, and dividing by T. The pulse q(t) is referred to as the estimated pulse response of the transmitter or channel.
  • The problem of estimating OMA can now be cast as finding the b and q(t) in Eqn. (13) such that ylin(t) approximates y(t). This problem is solved by finding the least-squares estimate that minimizes the mean squared error between y(t) and ylin(t). This solution can be approximated by transitioning to the discrete time domain and using linear algebra techniques.
  • Let t=mT+kΔ, where 0≦k≦K−1 and Δ=T/K Eqn. (13) can be generalized slightly by allowing b to be a periodic function of t with period T. From Eqn. (13),
  • y lin ( m T + k Δ ) = b ( k Δ ) + n = - x ( n ) q ( ( m - n ) T + k Δ ) = b ( k Δ ) + n = - x ( m - n ) q ( nT + k Δ ) ( 15 )
  • Assume that the pulse response is of finite duration such that q(t)=0 for t outside the interval [−AT,(M+1)T). Here A is the anticipation and M is the memory of the channel in bit periods.
  • Let y′m≡[y(mT) y(mT+Δ) . . . y(mT+(K−1)Δ], with similar definitions for qm and ylin,m. The notation v′ denotes the transpose of v. Let b′≡[b(0) . . . b((k−1)Δ)] and x′m≡[x(m+A) . . . x(m) . . . x(m−M)]. Eqn. (15) can be compactly expressed for all K sampling phases by
  • y lin , m = b + q - A x ( m + A ) + + q M x ( m - M ) = b + Qx m ( 16 )
  • where Q is a K by A+M+1 matrix with columns q−A through qM. Note that each column of Q consists of K successive samples of the continuous-time pulse response q(t).
  • Now find the b and Q that minimize E[|ε|2], where

  • ε≡y−ylin,m   (17)
  • |ε|2 is the magnitude squared of the vector ε, and E [□] indicates expected value. Treat x and y as random vectors and drop the m subscript. The orthogonality principle for least squares estimation implies that

  • E[(y−(b+Q*x))x′]=0   (18)
  • where Q* is the optimal Q for a given b. The least squares solution gives

  • Q*=ρR x −1 −bE[x′]R x −1   (19)

  • where

  • Rx≡E[xx′]  (20)

  • and

  • ρ≡E[yx′]  (21)
  • Using Eqn. (19) in the expression for E[|ε2|] and minimizing with respect to b gives the optimal b′as
  • b * = y _ - ρ R x - 1 x _ 1 - x _ R x - 1 x _ ( 22 )
  • where an overbar indicates expected value. Substituting b* for b in Eqn. (19) gives the optimal Q for a periodic baseline that is allowed to vary with sampling phase. To find the optimal Q for a baseline that is constant, set b′=b[1 1 . . . 1] for a scalar b. Using this b and Q* from Eqn. (19) in the expression for E[|ε2|] and minimizing with respect to b leads to the optimal b*
  • b * = 1 / K i = 1 K b i * ( 23 )
  • where b*i is the ith element of b*. Using b′=b*[1 1 . . . 1] in Eqn. (19) gives the optimal Q for the constant baseline b*.
  • Using whichever optimal Q* is preferred (constant baseline or periodic baseline), the samples of the continuous-time pulse response corresponding to this minimum mean squared error solution are given by

  • q((−A+m)T+kΔ)=Q* k+1,m+1 0≦k≦K−1; 0≦m≦A+M   (24)
  • The integral in Eqn. (14) is approximated by
  • - q ( t ) t Δ k = 1 K m = 1 A + M + 1 Q k , m * ( 25 )
  • With T=KΔ, Eqns. (14) and (25) give
  • OMA 1 K k = 1 K m = 1 A + M + 1 Q k , m * ( 26 )
  • It turns out that the estimate of OMA is identical whether the Q* based on constant baseline or periodic baseline is used in Eqn. (26). For the TWDP computation, the constant baseline is used as the estimated baseline.
  • The above results are now translated into MATLAB code to compute OMA for captured experimental data. Let ym be the captured samples as defined above, where each vector ym consists of K samples of a single bit period of the sampled waveform for a repetitive data test pattern of length N. Let xm also be defined as above, where xm is a vector consisting of A data bits preceding the “current” bit, the current bit x(m), and M data bits after the current bit. Form the matrices Y and X with columns ym and xm respectively, where m varies from 0 to N-1. With expectations taken over the N data vectors xm, each assumed equally likely, the expected values required for the least squares fit and OMA estimation above are given by
  • R x = 1 N X X ρ = 1 N Y X x _ = X 1 / N y _ = Y 1 / N ( 27 )
  • where 1 is an all-ones column vector of length N.
  • Eqn. (16) can be written compactly for all N bit periods as
  • Y lin = [ Q b ] [ X 1 ] ( 28 )
  • The optimal Q* and b* can be found using a pseudo-inverse and the captured waveform matrix Y:
  • [ Q * b * ] = Y [ X 1 ] [ [ X 1 ] [ X 1 ] ] - 1 ( 29 )
  • With some manipulation and making use of the relations in Eqn. (27), it can be shown that Eqn. (29) gives the same result as Eqn. (19) and Eqn. (22) for the periodic bias case. OMA and baseline can then be estimated using Eqns. (29), (23), and (26).
  • Eqns. (29), (23), and (26) are the basis of the following example MATLAB code, which can be used in the implementation of TWDP calculation to estimate OMA (MeasuredOMA in the code) and the baseline (SteadyZeroPower in the code) from the input waveform 568. The variables ant and mem are the anticipation and memory, respectively, in bit periods. These parameters can be varied to fit the memory span of the intersymbol interference of the input waveform. The accuracy of the OMA estimate is dependent on the choice of ant and mem. If ant and mem are set too low, the entire pulse response will not be contained within the span. On the other hand, if they are chosen very large, the 2A+M+1 possible binary vectors of length A+M+1 will be sparsely represented in the data test pattern if the sequence is of length significantly less than 2A+M+1. In that case, the expected values computed may be significantly different than the expectations taken over truly random data.
  • ant=4; mem=5;
    X=zeros(ant+mem+1,PRBSlength);
    Y=zeros(OverSampleRate,PRBSlength);
    X(1,:)=[XmitData(1+ant:end)′ XmitData(1:ant)′];
    for ind=2:ant+mem+1
     X(ind,:)=[X(ind−1,end) X(ind−1,1:end−1)];
    end
    X=[X;ones(1,PRBSlength)];
    for ind=1:OverSampleRate
     Y(ind,:)=yout0([0:PRBSlength−1]*OverSampleRate+ind)′;
    end
    Qmat=Y*X′*(X*X′){circumflex over ( )}(−1);
    SteadyZeroPower=mean(Qmat(:,ant+mem+2));
    Qmat=Qmat(:,1:ant+mem+1);
    MeasuredOMA=sum(Qmat(:))/OverSampleRate;
  • Method 1 for OMA and baseline estimation used a definition of OMA as the difference between the steady state “on” or “high” power of the laser and the steady state “off” or “low” power of the laser. However, IEEE 802.3ae Clause 52.9.5 specifies a method of measuring OMA based on a transmitted square wave pattern that can result in an OMA measurement different from this definition. The reason is that the laser output may not reach its steady state “on” value or steady state “off” value during the half period of the square wave that the laser is respectively “on” or “off”. The method described next, referred to as Method 2, results in an OMA value consistent with the measurement technique specified in IEEE 802.3ae Clause 52.9.5.
  • Like the method presented previously, Method 2 performs a linear fit that finds the pulse response of the modulation that gives the best fit to the captured waveform. Instead of integrating that pulse response to estimate the OMA, Method 2 uses that pulse response to synthesize what the optical waveform would have been if a square wave of the appropriate frequency had been transmitted. The amplitude of the optical signal during measurement windows is then measured and used to determine OMA. For example, the amplitude of the optical signal at the center of the “on” or “high” portion of the square wave is measured by averaging the amplitude over a measurement window positioned at the center 20% of the “on” portion, and the amplitude of the optical signal at the center of the “off” or “low” portion of the square wave is similarly measured over a measurement windows positioned at the center 20% of the “off” portion. The OMA estimate is then the difference between the “on” amplitude and the “off” amplitude, and the baseline estimate is the measurement of the “off” amplitude.
  • IEEE 802.3ae Clause 52.9.1.2 specifies that the data test pattern for the square wave may be “a pattern consisting of four to eleven consecutive ones followed by an equal run of zeros”. A preferred embodiment uses a square wave comprising a repetitive pattern with eight consecutive ones followed by eight consecutive zeros, though other period lengths (for example, ten ones and ten zeros) could be used instead. An example implementation of Method 2 for OMA and baseline estimation is included in the MATLAB code in Appendix B.
  • FIG. 8 shows an example calculation of OMA using Method 2. In FIG. 8, the synthesized square waveform 810 includes eight consecutive zeros followed by eight consecutive ones. The OMA of the synthesized waveform 810 is calculated as the difference between the average value of the synthesized square waveform 810 captured during measurement window 820 and the average value of the synthesized square waveform 810 captured during measurement window 830. Measurement windows 820, 830 are aligned, respectively, with the central regions of the consecutive zeros and the consecutive ones. For example, measurement window 820 is aligned with the center of the eight consecutive zeros and measurement window 830 is aligned with the center of the eight consecutive ones. In one embodiment, the temporal position of the measurement windows 820,830 is specified assuming an ideal square wave transitioning from zero to one at a specified time. In the example shown in FIG. 8, the measurement windows 820, 830 are temporally positioned based on an expected transition time from zero to one occurring at 8 unit intervals (UI). However, in other embodiments, the time when the ideal waveform transitions between different values determines the temporal position of the measurement windows 820, 830. Because waveforms associated with the direct output of the transmitter generally exhibit fast edge rates, the values of these waveforms typically are settled within the measurement windows 820, 830, as shown in FIG. 8. While FIG. 8 shows ideal temporal alignment of the synthesized square waveform 810, some temporal misalignment of the synthesized waveform 810 can be tolerated in certain implementations. For example, due to the fast settling times, OMA may be accurately calculated if the synthesized waveform 810 is aligned within 1 unit interval (UI) of the expected transition time assumed in temporal positioning of the measurement windows 820, 830.
  • Because the synthesized waveform 810 shown in FIG. 8 has stable values, it is relatively insensitive to misalignment between the synthesized waveform and the measurement windows. However, other synthesized waveforms may be very sensitive to timing misalignment. For example, OMA may be calculated after propagation through a channel having dispersive effects. The dispersive effects of the channel can result in a wider pulse response. The corresponding synthesized waveform can have more gradually sloping edges, possibly consuming much or all of the run of consecutive zeros and/or the run of consecutive ones. In this case, a temporal misalignment between the synthesized waveform and measurement windows reduces accuracy of OMA calculation and the resulting TWDP calculation.
  • FIGS. 9A and 9B illustrate this effect. In these examples, the synthesized waveforms 910A, 910B are unsettled during the measurement windows 920, 930. For example, in FIG. 9A, the synthesized waveform 910A has not settled on a zero value during measurement window 920 and also has not settled on a one value during measurement window 930. Rather, the waveform is still sloping within the measurement windows. Furthermore, the synthesized square waveform 910A is temporally misaligned with an expected transition time which temporally positions the measurement windows 920, 930. In the examples of FIGS. 8A and 9B, the expected transition time is 8 unit intervals (UI), so the measurement windows 920, 930 in FIG. 9A are centered at 4 and 12 UI. FIG. 9C shows an example of a temporally aligned waveform 910C having a zero crossing at 8 UI. However, waveform 910A has a zero crossing at approximately 7, exhibiting an approximately 1 UI misalignment. This 1 UI misalignment also causes synthesized waveform 910A to include an additional zero crossing at approximately 15 UI. The temporal misalignment and unsettled waveform mean that the values within the measurement windows 920, 930 are shifted up or down, resulting in errors in the values measured within the measurement windows 920, 930. These errors in turn can result in an error in the calculated OMA.
  • For example, the temporally misaligned waveform 910A in FIG. 9A produces a calculated OMA of 1.8801 rather than the true OMA of 1.7373 produced by the temporally aligned waveform 910C shown in FIG. 9C. Similarly, in FIG. 9B, a temporal misalignment of the synthesized waveform 910B during the measurement windows 920, 930 produces an OMA of 1.545 rather than the true OMA of 1.7373 calculated from the temporally aligned waveform 910C.
  • Because measurement windows are temporally positioned based on expected timing of a synthesized waveform, such as an expected transition time when the synthesized waveform transitions between logic levels, temporal misalignment between an actual synthesized waveform and the expected timing of the synthesized waveform alters the values obtained within the measurement windows which decreases OMA calculation accuracy. For example, if the actual synthesized waveform transitions between logic levels at a time different than the expected transition time, the actual synthesized waveform is temporally misaligned with the measurement windows. To improve OMA calculation accuracy and improve TWDP calculation, temporal misalignment between the synthesized waveform and its expected timing, such as the expected transition time, is corrected by time-shifting the synthesized received waveform relative to the measurement windows. FIG. 10 is a flow diagram illustrating a method for temporally aligning the synthesized received waveform and the measurement windows. The temporal alignment method described below may be used to calculate the OMA of a waveform captured before transmission through a physical channel or of a waveform captured at the output of a physical channel having dispersive effects.
  • A waveform is initially captured 1005 and a pulse response is derived 1020 from the captured waveform. For example, a transmitter generates a waveform corresponding to an applied data test pattern, such as a periodic PRBS 9 signal or similar data pattern and the generated waveform is captured 1005 either directly from a transmitter or after propagation through a channel. The pulse response is then derived 1020 from the captured waveform. In other implementations, the captured waveform is propagated through a simulated channel and the pulse response is derived 1020 from a waveform at the output of the simulated channel.
  • The derived pulse response is then applied to an ideal square wave to synthesize 1030 a waveform for OMA calculation. In one example, the square wave is a sequence of eight consecutive zeros followed by eight consecutive ones. The synthesized waveform may be temporally misaligned with the measurement windows, which are temporally positioned based on an expected transition time between logic levels. For example, the measurement windows shown in FIGS. 8, 9A, 9B and 9C are centered at 4 unit intervals (UI) and 12 UI based on an expected transition time of 8 UI. If the synthesized waveform has a different transition time, such as 9 UI, the synthesized waveform and measurement windows are misaligned.
  • To compensate for temporal misalignment, a specific transition between a first logic level (such as a “zero”) and a second logic level (such as a “one”) is located 1040 in the synthesized waveform. In one implementation, the synthesized waveform is AC-coupled, so the transition is initially approximated as the time when the waveform has a value of zero, simplifying transition location 1040. In other implementations, the synthesized waveform may be similarly modified so that transitions are initially approximated as the time when the waveform has a specific value. To locate 1040 a specific transition, certain transitions may be ignored. For example, in FIGS. 9A-9B, the desired specific transition is the central transition located near 8 UI. In this example, transitions located within a specified interval, such as 2 UI, from the beginning and end of a waveform analysis region may be discarded so that the central transition is properly identified. The temporal misalignment between the synthesized waveform and the measurement windows is determined by the misalignment between the waveform used to derive the pulse response and the reference data pattern. In the present example, the waveform used to derive 1020 the pulse response is aligned with the reference data pattern within 1 UI. This allows the timing of the synthesized waveform to match that of an ideally-timed waveform, such as the synthesized waveform 810 shown in FIG. 8, within 1 UI. With this constraint, the desired central transition occurs with 1 UI of its ideal location, allowing transitions occurring within 2 UI of the beginning and end of the waveform analysis region to be ignored. If the waveform is sampled, then the two samples that straddle the time the waveform has the specific value can be interpolated to more precisely locate 1040 the time when the waveform transitions between the first logic level and the second logic level.
  • The time when the identified 1040 transition between the first logic level and the second logic level occurred is compared 1050 to the expected transition time which was used to temporally position the measurement windows and the temporal offset between the transition in the synthesized waveform and the expected transition time is determined. The synthesized waveform is temporally shifted 1060 by the determined temporal offset so the transition time of the synthesized waveform is aligned with the expected transition time, aligning the synthesized waveform with the measurement windows. OMA can then be estimated based on the values obtained during the measurement windows and used to calculate TWDP.
  • The following example MATLAB code can be used to implement the method described above to take in the temporally misaligned synthesized waveform (Y0 in the code) to produce an aligned synthesized waveform (Yin the code). The example MATLAB code can be used in an implementation of TWDP calculation to improve estimation of OMA. Appendix C provides additional example MATLAB code implementing a TWDP calculation including the temporal alignment described above.
  • function Y = AlignY(Y0,SqWvPer,OverSampleRate)
    % Aligns the crossings of the xMA square waveform Y
    % to the first sample in the vector, etc. The first
    % sample is equivalent to time = 0.
    Y = Y0−mean(Y0); % AC-couple so crossings are at 0.
    % Look only for the approximate crossing in the
    % middle by ignoring any within ~2 UI from the
    % beginning. Due to possible misalignment of the
    % captured waveform, this is the only crossing that
    % is certain.
    x = find(sign(Y(2*OverSampleRate:end−1)) ~= . . .
    sign(Y(2*OverSampleRate+1:end)),1)+2*OverSampleRate−1;
    % Use linear interpolation to find a more exact
    % crossing point.
    xinterp = interp1([Y(x),Y(x+1)],[x,x+1],0);
    % Calculate the difference from the ideal crossing
    % time, then shift and re-sample to create the
    % aligned square waveform.
    Y = circshift(Y0,SqWvPer/2*OverSampleRate+1−x);
    Y = interp1(Y, (1:length(Y))′+xinterp−x,′spline′);
  • Alternatively, the MATLAB code presented below describes an alternate implementation of the time alignment method shown in FIG. 10 to take in the temporally misaligned synthesized waveform (Y0 in the code) and produce an aligned synthesized waveform (Y in the code). This example MATLAB provides an alternate technique for initially approximating the transition between low logic level and high logic level in the synthesized waveform.
  • Y = Y0−mean(Y0); % AC-couple so crossings are at 0.
    tmp = Y(1:end−1).*Y(2:end); % Crossings will be
    % where this vector is <=0. Look only for the
    % approximate crossing in the middle by ignoring any
    % within ~2 UI from the beginning. Due to possible
    % misalignment of the captured PRBS waveform, this
    % is the only crossing that is certain.
    x = find(tmp(2*OverSampleRate:end) <=0,1) +
    2*OverSampleRate−1;
    % Use linear interpolation to find a more exact
    % crossing point.
    xinterp = x−Y(x)/(Y(x+1)−Y(x));
    % Calculate the difference from the ideal crossing
    % time then shift and re-sample to create the
    % aligned square waveform.
    xadj = xinterp−(SqWvPer/2*OverSampleRate+1);
    Y = circshift(Y0,−floor(xadj));
    Y = interp1(Y, (1:length(Y))″+xadj−floor(xadj),′spline′);
  • Accordingly, temporally aligning the synthesized waveform and measurement windows allows for more accurate calculation of OMA, particularly when the synthesized waveform is subject to distortion. Improving OMA calculation consequently enables more accurate evaluation of TWDP to better determine transmitter performance. Although the method described above addresses temporal alignment for OMA calculation, the above method may also be used to improve calculation of modulation amplitude in a variety of units, such as Voltage Modulation Amplitude (VMA) calculation or Current Modulation Amplitude (CMA). Hence, allowing the temporal alignment method also improve performance analysis, such as waveform and dispersion penalty (WDP), depending on modulation amplitude, at any point in a system, including a receiver.
  • Automated offset optimization is now discussed in additional detail. While the offset optimization technique described here is presented in the context of a simulated reference receiver for a transmitter test, it can also be used in a real equalizing receiver to correct offset in the received waveform. In one embodiment, the TWDP algorithm corrects for inaccuracies in the estimated value of the baseline (or steady state zero level). This automated offset method makes the reported TWDP value independent of estimation error in the baseline. In fact, it obviates the need to measure a baseline at all provided the ratio of baseline value to OMA is not unreasonably large. After OMA normalization and subtraction of the estimated baseline, the resulting normalized waveform has target signal values of “0” and “1”. The slicer threshold for BER determination is set at ½. An error in baseline estimation such that the resulting waveform is improperly offset and not centered about ½ will result in a higher BER than if the offset were optimized. This offset optimization can be alternatively viewed as a threshold optimization.
  • The automated offset optimization can be accomplished by extending the vector of feedforward equalizer tap coefficients by 1. The additional tap is not fed by a delayed version of the received signal, but is instead fed by the constant 1. FIG. 6 shows an example feedforward filter with Nf regular taps and an extra (Nf+1)th tap for offset optimization. The MMSE tap coefficients are then calculated in the normal fashion, and the coefficient of the extra tap essentially gives the offset that minimizes mean squared error with the target signal values. An alternate method extends the length of the feedback tap coefficient vector by one, feeding that extra feedback tap by the constant 1, and computing the offset as part of the feedback tap coefficient vector.
  • A derivation of the MSE minimization and offset optimization is now provided that relates the mathematical description above to the sample MATLAB code in Appendices A and B. FIGS. 7A and 7B show mathematically equivalent models for generating the sampler output sequence yφ(nT/2). The anti-aliasing filters 573 are identical, as are the T/2 samplers 574 (identical sampling rate and phase). The model in FIG. 7B shows explicitly the random noise component η(n) and the deterministic periodic component r(n) that comprise the sampler output yφ(nT/2). The actual values of the sequence {η(n)} are not required for MSE minimization; only the second order statistics are required. This suggest an alternate embodiment where the noise sequence η(n) is described only in terms of its second order statistics, and AWGN 577 is not necessarily assumed in the model.
  • Assume that the AWGN 577 is mean zero, in which case {η(n)} is also mean zero. Denote the autocorrelation sequence for {η(n)} by {c(k)}.

  • c(k)≡E[η(n)η(n−k)]=c(−k)
  • The derivation for the case without offset optimization (W(Nf)=0) is described first. From Eqn. (6), the slicer input for deciding bit n is
  • z ( n ) = k = 0 N f - 1 W ( k ) ( r ( 2 n + 2 D - k ) + η ( 2 n + 2 D - k ) ) - k = 1 N b B ( k ) x ( n - k ) ( 30 )
  • This can be conveniently described in matrix notation for all values of n, 0≦n≦N-1, as
  • z = ( R + N ) w - X [ 0 b ] where ( 31 ) z [ z ( 0 ) z ( 1 ) z ( N - 1 ) ] ; w [ W ( 0 ) W ( 1 ) W ( N f - 1 ) ] ; b [ B ( 1 ) B ( 2 ) B ( N b ) ] ( 32 a ) R [ r ( 2 D ) r ( 2 D - 1 ) r ( 2 D - N f + 1 ) r ( 2 D + 2 ) r ( 2 D + 1 ) r ( 2 D - N f + 3 ) r ( 2 D + 2 ( N - 1 ) ) r ( 2 D + 2 N - 3 ) r ( 2 D + 2 ( N - 1 ) - N f + 1 ) ] ( 32 b ) N [ η ( 2 D ) η ( 2 D - 1 ) η ( 2 D - N f + 1 ) η ( 2 D + 2 ) η ( 2 D + 1 ) η ( 2 D - N f + 3 ) η ( 2 D + 2 ( N - 1 ) ) η ( 2 D + 2 N - 3 ) η ( 2 D + 2 ( N - 1 ) - N f + 1 ) ] ( 32 c ) X [ x ( 0 ) x ( - 1 ) x ( - N b ) x ( 1 ) x ( 0 ) x ( - N b + 1 ) x ( N - 1 ) x ( N - 2 ) x ( N - N b - 1 ) ] ( 32 d )
  • For a given equalizer delay DT and sampling phase φ, minimizing MSE requires finding the vectors w and b that minimize the quantity

  • MSE=E[|z−x| 2]  (33)
  • where |□|2 indicates the squared magnitude of the vector argument. Here x is the vector of N bits in the periodic sequence {x(n)}
  • x [ x ( 0 ) x ( 1 ) x ( N - 1 ) ] ( 34 )
  • Using the fact that E[N] is the all-zeroes matrix, it follows that

  • E[|z−x| 2 ]=w′(R′R+C η)w−2w′R′X{tilde over (b)}+{tilde over (b)}′X′X{tilde over (b)}  (35)
  • where v′ indicates the transpose of the vector or matrix v, and
  • C η E [ N N ] = N [ c ( 0 ) c ( 1 ) c ( N f - 1 ) c ( 1 ) c ( 0 ) c ( N f - 2 ) c ( N f - 1 ) c ( N f - 2 ) c ( 0 ) ] ( 36 )
  • Minimizing the MSE in Eqn. (35) with respect to w for a given {tilde over (b)} gives

  • w opt({tilde over (b)})=(R′R+C η)−1 R′X{tilde over (b)}  (37)
  • Note that this result gives the optimal weight vector for a feedforward only equalizer by setting Nb=0. In that case {tilde over (b)}=1 and X=x. This can be used in an alternate embodiment that uses a linear (feedforward only) equalizer instead of a DFE in the reference receiver.
  • Substituting the expression for wopt({tilde over (b)}) for w in Eqn. (35) gives
  • E [ z - x 2 ] = b ~ P ~ b ~ = [ 1 b ] [ P 00 p p P ] [ 1 b ] = P 00 + 2 p b + b P b ( 38 )
  • where

  • {tilde over (P)}≡X′X−X′R(R′R+Cη)−1R′X   (39)
  • Minimizing the resulting expression for MSE with respect to b gives

  • b MMSE =−P −1 p   (40)
  • Collecting the results for the final answer, the minimizing feedback vector b is

  • b MMSE =P −1 p   (41 a)
  • where P is the square matrix in the lower right corner of {tilde over (P)} that excludes the first column and first row of {tilde over (P)}, p is the first column of {tilde over (P)} excluding the top element P00, and {tilde over (P)} is given by

  • {tilde over (P)}≡X′X−X′R(R′R+Cη)−1R′X   (41b)
  • The minimizing feedforward vector w is given by
  • w MMSE = ( R R + C η ) - 1 R X [ 1 b MMSE ] ( 41 c )
  • The minimum MSE is given by
  • MMSE = P 00 + 2 p b MMSE + b MMSE P b MMSE = P 00 - p P - 1 p ( 41 d )
  • The variance of the Gaussian noise at the input to the slicer, used to compute the BER semianalytically, is given by
  • σ 2 = 1 N w C η w ( 42 )
  • Including the extra feedforward tap for automatic offset optimization requires a modification to the derivation above. Augment the feedforward vector w with an extra tap to give the new feedforward vector {tilde over (w)}
  • w ~ = [ w W ( N f ) ] ( 43 )
  • Augment the matrix of noiseless channel outputs R with an additional column of all ones, denoted as the column vector 1, to give the new matrix

  • {tilde over (R)}=[R 1]  (44)
  • Augment the matrix of noise samples N with an additional column of all zeros, denoted as the column vector 0, to give the new matrix

  • Ñ=[N 0]  (45)

  • Then
  • C ~ η E [ N ~ N ~ ] = [ C η 0 0 0 ] ( 46 )
  • The solution for the case with automated offset optimization is obtained by replacing w with {tilde over (w)}, R with {tilde over (R)}, and Cη with {tilde over (C)}η in Eqns. (41) and 42). Note that
  • ( R ~ R ~ + C ~ η ) - 1 = [ R R + C η R 1 1 R N ] - 1 ; w ~ C ~ η w ~ = w C η w ( 47 )
  • which are used in the example MATLAB code in the appendices.
  • The alternate embodiment mentioned above that extends the feedback filter instead of the feedforward filter can be implemented, for example, by extending the vector b by one element and appending a column of all ones to the matrix X in Eqns. (41a) through (41d).
  • Appendix A includes sample MATLAB code that computes TWDP for a reference DFE receiver with 100 T/2-spaced feedforward taps, 50 feedback taps, and automated offset optimization. The OMA and baseline of the signal are entered manually instead of estimated automatically. The equalizer delay is 50 feedforward taps (25 T), and the equalizer is long enough that optimization over equalizer delay and sampling phase are not required.
  • In the embodiment illustrated in Appendix A, the reference receiver 584 uses a very long equalizer, closely approximating performance of an ideal infinite length equalizer. The use of 100 feedforward taps 585 (at T/2 spacing), 50 feedback taps 586 (at T spacing), and an equalizer delay of 50 feedforward taps (25 T) are representative values that approximate an infinite length equalizer for the optical fiber channels of interest. Because the longer T/2 spaced feedforward equalizer is insensitive to sample phase and exact value of equalizer delay, this embodiment has the advantage that it does not require optimization over these parameters. However, such a long equalizer may give overly optimistic results for certain channels and thus may not accurately reflect the equalizability of the waveform by a practical receiver that uses a conventional DFE architecture. For example, because of the use of pseudo-random sequences, certain non-linear distortions will appear as delayed copies of the sequence added to the signal. If the delayed copy falls within the span of the very long equalizer, the reference DFE will appear to correct this distortion. With truly random data (instead of a PRBS), the nonlinear distortion would not be equalizable by a classic DFE. Since the delayed copy is more likely to fall outside the span of a shorter equalizer, use of the shorter equalizer in the reference receiver 584 is more likely to give a realistic indication of the equalizability of the signal in real receivers. Another example where the very long equalizer might give overly optimistic performance predictions is when distortions in the transmitted waveform include electrical reflections that are delayed so much that they fall outside the span of a practical length equalizer but are effectively equalized by the extremely long equalizer.
  • For these reasons, it is sometimes desirable to implement a much shorter DFE in the reference receiver, for example, an equalizer with 14 feedforward taps and 5 feedback taps. The embodiment with a short equalizer requires optimization of sampling phase and equalizer delay. This could be accomplished by setting the delay and phase to given values, minimizing MSE over w and b as described above, and then repeating the process in a brute force manner until the optimum settings for equalizer delay and sampling phase are found. However, it is sometimes possible to save computing time by performing an efficient optimization over equalizer delay, depending on the equalizer length and the search range for equalizer delay. One such method for efficient optimization of equalizer delay is described in P. A. Voois, I. Lee, and J. M. Cioffi, “The effect of decision delay in finite-length decision feedback equalization,” IEEE Transactions on Information Theory, vol. 53, pp. 618-621, March 1996. This method is illustrated in the sample MATLAB code in Appendix B.
  • In another alternative embodiment of the TWDP calculation, the receiver has a matched filter, matched to the shape of the received pulse, which allows the use of a T-spaced feedforward filter instead of a T/2-spaced filter. For this alternative, the simulation algorithm estimates a channel pulse response based on the reference fiber output 576. The linear fit described above as Method 1 for OMA and baseline estimation can be used, for example, to estimate the pulse response. The front end of the reference receiver then uses a matched filter matched to this pulse response. This matched filter replaces the antialiasing filter 573. The signal is passed through the matched filter and is sampled at integer multiples of T instead of T/2. However, this embodiment has the disadvantage that the estimated pulse response may inaccurately model the true pulse shape due to nonlinearities in the transmitter and/or channel. This may result in suboptimal equalization and could underestimate the link performance with a real receiver based on a fractionally spaced equalizer.
  • Although the detailed description contains many specifics, these should not be construed as limiting the scope of the invention but merely as illustrating different examples and aspects of the invention. It should be appreciated that the scope of the invention includes other embodiments not discussed in detail above. For example, a T-spaced equalizer without a matched filter could be used instead of a T/2-spaced equalizer if it is known that the simulated waveform entering the reference receiver will always have bandwidth less than 1/(2T). As further examples, the specific number of taps used for feedforward and feedback, and the anticipation and memory used in the linear fits should be considered exemplary and not in any way limiting the scope of the invention. Various other modifications, changes and variations which will be apparent to those skilled in the art may be made in the arrangement, operation and details of the method and apparatus of the present invention disclosed herein without departing from the spirit and scope of the invention as defined in the appended claims. Therefore, the scope of the invention should be determined by the appended claims and their legal equivalents.
  • APPENDIX A
    SAMPLE MATLAB CODE, EXAMPLE 1
    This MATLAB code illustrates various aspects of the invention. This version implements a very
    long DFE that does not require optimization of equalizer delay or sampling phase. It includes
    code for automatic offset optimization and requires external input of the OMA and steady-state
    zero level.
    %%%%%%% MATLAB (R) script to compute TWDP %%%%%%%%%%%%%%%%%%%%%%
    %
    %*** Includes modification to automatically compute optimal offset making
    %*** errors in SteadyZeroPower irrelevant.
    %% TWDP test inputs
    %% Units for all optical power values must match. The
    %% values given below for TxDataFile, MeasuredWaveformFile, MeasuredOMA,
    %% and SteadyZeroPower are examples and should be replaced by actual
    %% path\filenames and values for each waveform tested.
    %% Transmit data file:
    %% The transmit data sequence is one of the TWDP test patterns.
    %% The file format is ASCII with a single column of
    %% chronological ones and zeros with no headers or footers.
    TxDataFile = ′prbs9_950.txt′;
    %% Measured waveform. The waveform consists of exactly K samples per unit
    %% interval T, where K is the oversampling rate. The waveform must be
    %% circularly shifted to align with the data sequence. The file format for
    %% the measured waveform is ASCII with a single column of chronological
    %% numerical samples, in optical power, with no headers or footers.
    MeasuredWaveformFile = ′preproc-1207-01.txt′;
    %% OMA and steady-state ZERO power must be entered.
    MeasuredOMA = 6.6e−4; % Measured OMA, in optical power
    SteadyZeroPower = 2.76e−4; % Measured steady-state logic ZERO
    OverSampleRate = 16; % Oversampling rate
    %% Simulated fiber response, modeled as a set of ideal delta functions with
    %% specified amplitudes in optical power and delays in nanoseconds.
    %% FiberResp contains delays in row 1, corresponding power coefficients in
    %% the other three rows. Rows 2, 3, and 4 each correspond to a differenct
    %% fiber channel model. For this example, use the power coefficients in
    %% row 4. The vector ′Delays′ contains the delays, and the vector 'PCoefs'
    %% contains the amplitudes.
    FiberResp = [. . .
     0.000000 0.072727 0.145455 0.218182
     0.158 0.176 0.499 0.167
     0.000 0.513 0.000 0.487
     0.254 0.453 0.155 0.138];
    Delays = FiberResp(1,:)′;
    PCoefs = FiberResp(4,:)′;
    %% Program constants %%
    SymbolPeriod = 1/10.3125; % Symbol period (ns)
    EFilterBW = 7.5; % Antialiasing filter bandwidth (GHz)
    %% For this example, use a very long equalizer, so optimization of
    %% equalizer delay and sampling phase are not required. Set the equalizer
    %% delay to half the length of the feedforward filter
    EqNf = 100; % Number of feedforward filter taps
    EqNb = 50; % Number of feedback filter taps
    EqDel = ceil(EqNf/2); % Equalizer delay
    PAlloc = 6.5; % Allocated dispersion penalty (dBo)
    Q0 = 7.03; % BER = 10{circumflex over ( )}(−12)
    %% Load input waveforms
    XmitData = load(TxDataFile);
    yout0 = load(MeasuredWaveformFile);
    PtrnLength = length(XmitData);
    TotLen = PtrnLength*OverSampleRate;
    Fgrid = [−TotLen/2:TotLen/2-1].′/ (PtrnLength*SymbolPeriod);
    %% STEP 1 - Normalize OMA%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    yout0 = (yout0 - SteadyZeroPower) /MeasuredOMA;
    % Alternatively, we could just use yout0 = yout0/MeasuredOMA, since the
    % offset optimization below would correct for failing to subtract off the
    % steady state zero level as long as SteadyZeroPower is not unreasonably
    % large compared to MeasuredOMA
    %% STEP 2 - Process waveform through simulated fiber channel. Fiber
    %% frequency response is normalized to 1 at DC (sum(PCoefs) =1).
    ExpArg = −j*2*pi*Fgrid;
    Hsys = exp(ExpArg * Delays′) * PCoefs;
    Hx = fftshift(Hsys/sum(PCoefs));
    yout = real(ifft(fft(yout0).*Hx));
    %% STEP 3 - Process signal through front-end antialiasing filter
    %% Compute frequency response of front-end Butterworth filter
    [b,a] = butter(4, 2*pi*EFilterBW,′s′);
    H_r = freqs(b,a,2*pi*Fgrid);
    %% Process signal through front-end filter
    yout = real(ifft(fft(yout) .* fftshift(H_r)));
    %% STEP 4 - Sample at rate 2/T %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    yout = yout(1:OverSampleRate/2:end);
    %% STEP 5 - Compute MMSE-DFE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %% The MMSE-DFE filter coefficients computed below minimize mean-squared
    %% error at the slicer input. The derivation follows from the fact that the
    %% slicer input over the period of the data sequence can be expressed as
    %% Z = (R+N)*W − X*[0 B]′, where R and N are Toeplitz matrices constructed
    %% from the signal and noise components, respectively, at the sampled
    %% output of the antialiasing filter, W is the feedforward filter, X is a
    %% Toeplitz matrix constructed from the input data sequence, and B is the
    %% feedback filter. The computed W and B minimize the mean square error
    %% between the input to the slicer and the transmitted sequence due to
    %% residual ISI and Gaussian noise.
    %% Compute the noise autocorrelation sequence at the output of the
    %% antialiasing filter and rate-2/T sampler.
    N0 = SymbolPeriod/ (2 * Q0{circumflex over ( )}2 * 10{circumflex over ( )}(2*PAlloc/10));
    Snn = N0/2 * fftshift(abs(H_r).{circumflex over ( )}2) * 1/SymbolPeriod * OverSampleRate;
    Rnn = real(ifft(Snn));
    Corr = Rnn(1:OverSampleRate/2:end);
    %% Construct a Toeplitz autocorrelation matrix.
    C = toeplitz(Corr(1:EqNf));
    %% Construct Toeplitz matrix from input data sequence
    X = toeplitz(XmitData, [XmitData(1); XmitData(end:−1:end-EqNb+1)]);
    %% Construct Toeplitz matrix from signal at output of 2/T sampler. This
    %% sequence gets wrapped by equalizer delay
    R = toeplitz(yout, [yout(1); yout(end:−1:end-EqNf+2)]);
    R = [R(EqDel+1:end,:); R(1:EgDel, :)];
    R = R(1:2:end, :);
    %% Start of modifications to optimize offset
    ONE=ones(PtrnLength,1);
    %% Compute least-squares solution for filter coefficients
    RINV = inv([R′*R+PtrnLength*C R′*ONE;ONE′*R ONE′*ONE]);
    R= [R ONE]; % Add all-ones column to compute optimal offset
    P = X′*X − X′*R*RINV*R′*X;
    P01 = P(1,2:end);
    P11 = P(2:end,2:end);
    B = −inv(P11)*P01′; % Feedback filter
    W = RINV*R′*X*[1;B]; % Feedforward filter
    Z = R*W − X*[0;B]; % Input to slicer
    %% STEP 6 - Compute BER using semi-analytic method %%%%%%%%%%%%%%%%%%%%%%
    MseGaussian = W(1:end−1)′*C*W(1:end−1);
    %% End of modifications to optimize offset
    Ber = sum(0.5*erfc((abs(Z-0.5)/sqrt(MseGaussian))/sqrt(2)))/length(Z);
    %% STEP 7 - Compute equivalent SNR %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% This
    %% function computes the inverse of the Gaussian error probability
    %% function. The built-in function erfcinv( ) is not sensitive enough for
    %% the low probability of error case.
    Q = inf;
    if Ber>10{circumflex over ( )}(−12) Q = sqrt(2)*erfinv(1-2*Ber);
    elseif Ber>10{circumflex over ( )}(−300) Q = 2.1143*(−1.0658−log10(Ber)).{circumflex over ( )}0.5024;
    end
    %% STEP 8 - Compute penalty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    RefSNR = 10 * log10(Q0) + PAlloc;
    TWDP = RefSNR−10*log10(Q)
    % End of program
  • APPENDIX B
    SAMPLE MATLAB CODE, EXAMPLE 2
    This MATLAB code illustrates various aspects of the invention. This version implements a DFE
    with 14 feedforward taps and 5 feedback taps. This code illustrates optimization of equalizer
    delay and sampling phase, where the optimization of equalizer delay is performed in an efficient
    manner. This version includes code that implements Method 2 for automatically estimating
    OMA and baseline from the input waveform and it includes automatic offset optimization This
    version computes TWDP for three different stressor channels, using the maximum of those as the
    reported TWDP value.
    %%%%%%% MATLAB (R) script to compute TWDP %%%%%%%%%%%%%%%%%%%%%%
    %% TWDP inputs
    %% The values given below for TxDataFile and MeasuredWaveformFile are
    %% examples and should be replaced by actual path\filenames for each
    %% waveform tested.
    %% Transmit data file: The transmit data sequence is one of the TWDP test
    %% patterns. The file format is ASCII with a single column of chronological
    %% ones and zeros with no headers or footers.
    TxDataFile = ′prbs9_950.txt′;
    %% Measured waveform: The waveform consists of exactly K samples per unit
    %% interval T, where K is the oversampling rate. The waveform must be
    %% circularly shifted to align with the data sequence. The file format for
    %% the measured waveform is ASCII with a single column of chronological
    %% numerical samples, in optical power, with no headers or footers.
    MeasuredWaveformFile = ′preproc-1207-01.txt′;
    OverSampleRate = 16; % Oversampling rate, must be even
    %% Simulated fiber responses, modeled as a set of ideal delta functions
    %% with specified amplitudes in optical power and delays in nanoseconds.
    %% FiberResp contains delays in row 1, corresponding power coefficients in
    %% the other three rows. Rows 2, 3, and 4 each correspond to a differenct
    %% fiber channel model. For this example, a TWDP value is computed for
    %% each channel, and the TWDP reported is the maximum of the three TWDP
    %% values thus computed. The vector ‘Delays’ contains the delays.
    FiberResp = [. . .
     0.000000 0.072727 0.145455 0.218182
     0.158 0.176 0.499 0.167
     0.000 0.513 0.000 0.487
     0.254 0.453 0.155 0.138+;
    Delays = FiberResp(1,:)′;
    %% Program constants %%
    SymbolPeriod = 1/10.3125; % Symbol period (ns)
    EqNf = 14; EqNb = 5; % Number of feedforward and feedback equalizer taps
    % Set search range for equalizer delay, specified in symbol periods. Lower
    % end of range is minimum channel delay. Upper end of range is the sum of
    % the lengths of the FFE and channel. Round up and add 5 to account for the
    % antialiasing filter.
    EqDelMin = floor(min(Delays)/SymbolPeriod);
    EqDelMax = ceil(EqNf/2 + max(Delays)/SymbolPeriod)+5;
    EqDelVec = [EqDelMin:EqDelMax];
    PAlloc = 6.5; % Total allocated dispersion penalty (dBo)
    Q0 = 7.03; % BER = 10{circumflex over ( )}(−12)
    N0 = SymbolPeriod/2 / (Q0 * 10{circumflex over ( )}(PAlloc/10)){circumflex over ( )}2;
    EFilterBW = 7.5; % Antialiasing filter bandwidth (GHz)
    %% Load input waveform and data sequence, generate filter and other
    %% matrices
    yout0 = load(MeasuredWaveformFile);
    XmitData = load(TxDataFile);
    PtrnLength = length(XmitData);
    TotLen = PtrnLength*OverSampleRate;
    Fgrid = [−TotLen/2:TotLen/2-1].′/(PtrnLength*SymbolPeriod);
    % antialiasing filter
    [b,a] = butter(4, 2*pi*EFilterBW,′s′); H_r = freqs(b,a,2*pi*Fgrid);
    ExpArg = −j*2*pi*Fgrid;
    ONE=ones(PtrnLength,1);
    %% Normalize the received OMA to 1. Estimate the OMA of the captured
    %% waveform by using a linear fit to estimate a pulse response, sythesize a
    %% square wave, and calculate the OMA of the sythesized square wave per
    %% Clause 52.9.5
    ant=4; mem=40; %Anticipation and memory parameters for linear fit
    X=zeros(ant+mem+1,PtrnLength); %Size data matrix for linear fit
    Y=zeros(OverSampleRate,PtrnLength); %Size observation matrix for linear fit
    for ind=1:ant+mem+1
     X(ind,:)=circshift(XmitData,ind-ant−1)′;%Wrap appropriately for lin fit
    end
    X=[X;ones(1,PtrnLength)]; %The all-ones row is included to compute the bias
    %Each column of Y is one bit period
    for ind=1:OverSampleRate
     Y(ind,:)=yout0([0:PtrnLength−1]*OverSampleRate+ind)′;
    end
    Qmat=Y*X′*(X*X′){circumflex over ( )}(−1);
    % Qmat is the coefficient matrix resulting from linear fit. Each column
    % (except the last) is one bit period of the pulse response. The last
    % column is the bias.
    SqWvPer=16; %Even number; period of the square wave used to compute the OMA
    SqWv=[zeros(SqWvPer/2,1);ones(SqWvPer/2,1)]; %One period of sq wave(col)
    X=zeros(ant+mem+1,SqWvPer); %Size data matrix for synthesis
    for ind=1:ant+mem+1
     X(ind,:)=circshift(SqWv,ind-ant−1)′; %Wrap appropriately for synthesis
    end
    X=[X;ones(1,SqWvPer)]; %Include the baseline
    Y=Qmat*X;Y=Y(:); %Synthesize the modulated square wave, put into one column
    %Set position in square wave to average over
    avgpos=[.4*SqWvPer/2*OverSampleRate:.6*SqWvPer/2*OverSampleRate];
    ZeroLevel=mean(Y(round(avgpos),:)); %Average over middle 20% of ″zero″ run
    %Average over middle 20% of ″one″ run, compute OMA
    MeasuredOMA=mean(Y(round(SqWvPer/2*OverSampleRate+avgpos),:))−ZeroLevel;
    %% Subtract zero level and normalize OMA
    yout0 = (yout0-ZeroLevel)/MeasuredOMA;
    %% Compute the noise autocorrelation sequence at the output of the
    %% front-end antialiasing filter and rate-2/T sampler.
    Snn = N0/2 * fftshift(abs(H_r).{circumflex over ( )}2) * 1/SymbolPeriod * OverSampleRate;
    Rnn = real(ifft(Snn));
    Corr = Rnn(1:OverSampleRate/2:end);
    C = toeplitz(Corr(1:EqNf));
    %% Compute the minimum slicer MSE and corresponding TWDP for the
    %% three stressor fibers
    % X matrix used in MSE calculation
    X = toeplitz(XmitData, [XmitData(1); XmitData(end:−1:2)]);
    Rxx = X′*X; %Used in MSE calculation
    ChannelTWDP = [ ];
    for ii=1:3 %index for stressor fiber
     %% Propagate the waveform through fiber ii.
     %% The DC response of each fiber is normalized to 1 (sum(PCoefs)=1)
     PCoefs = FiberResp(ii+1,:)′;
     Hsys = exp(ExpArg * Delays′) * PCoefs; Hx = fftshift(Hsys/sum(PCoefs));
     yout = real(ifft(fft(yout0).*Hx));
     %% Process signal through front-end antialiasing filter %%%%%%%%%%%%%%%
     yout = real(ifft(fft(yout) .* fftshift(H_r)));
     %% Compute MMSE-DFE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     %% The MMSE-DFE filter coefficients computed below minimize
     %% mean-squared error at the slicer input. The derivation follows from
     %% the fact that the slicer input over the period of the data sequence
     %% can be expressed as Z = (R+N)*W − X*[0 B]′, where R and N are
     %% Toeplitz matrices constructed from the signal and noise components,
     %% respectively, at the sampled output of the antialiasing filter, W is
     %% the feedforward filter, X is a Toeplitz matrix constructed from the
     %% input data sequence, and B is the feedback filter. The computed W
     %% and B minimize the mean squared error between the input to the
     %% slicer and the transmitted sequence due to residual ISI and Gaussian
     %% noise. Minimize MSE over 2/T sampling phase and equalizer delay and
     %% determine BER
     MseOpt = Inf;
     % jj loop minimizes over sampling phase
     for jj= [0:OverSampleRate−1]−OverSampleRate/2
      %% Sample at rate 2/T with new phase (wrap around as required)
      yout_2overT = yout(mod([1:OverSampleRate/2:TotLen]+jj−1,TotLen)+1);
      Rout = toeplitz(yout_2overT, . . .
       [yout_2overT(1); yout_2overT(end:−1:end-EqNf+2)]);
      R = Rout(1:2:end, :);
      RINV = inv([R′*R+PtrnLength*C R′*ONE;ONE′*R PtrnLength]);
      R=[R ONE]; % Add all-ones column to compute optimal offset
      Rxr = X′*R; Px_r = Rxx - Rxr*RINV*Rxr′;
      %% kk loop minimizes MSE over equalizer delay, feedforward
      %% coefficients, and feedback coefficients
      for kk = 1:length(EqDelVec)
       EqDel = EqDelVec(kk);
       SubRange = [EqDel+1:EqDel+EqNb+1];
       SubRange = mod(SubRange−1, PtrnLength)+1;
       P = Px_r(SubRange,SubRange);
       P00 = P(1,1); P01 = P(1,2:end); P11 = P(2:end,2:end);
       Mse = P00 - P01*inv(P11)*P01′;
        if (Mse<MseOpt)
        MseOpt = Mse;
        B = −inv(P11)*P01′; % Feedback filter
        XSel = X(:,SubRange);
        W = RINV*R′*XSel*[1;B]; % Feedforward filter
        Z = R*W - XSel*[0;B]; % Input to slicer
        %% Compute BER using semi-analytic method %%%%%%%%%%%%%%%%%
        MseGaussian = W(1:end−1)′*C*W(1:end−1);
        Ber = mean(0.5*erfc((abs(Z-0.5)/sqrt(MseGaussian))/sqrt(2)));
       end
      end
     end
     %% Compute equivalent SNR %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     %% This function computes the inverse of the Gaussian error probability
     %% function. The built-in function erfcinv( ) is not sensitive enough
     %% for the low probability of error cases.
     if Ber>10{circumflex over ( )}(−12) Q = sqrt(2)*erfinv(1-2*Ber);
     elseif Ber>10{circumflex over ( )}(−323) Q = 2.1143*(−1.0658−log10(Ber)).{circumflex over ( )}0.5024;
     else Q = inf;
     end
     %% Compute penalty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
     RefSNR = 10 * log10(Q0) + PAlloc;
     ChannelTWDP(ii) = RefSNR−10*log10(Q);
    end
    %% Pick highest value due to the multiple fiber responses from ChannelTWDP.
    TWDP = max(ChannelTWDP)
    %% End of program
  • APPENDIX C
    SAMPLE MATLAB CODE, EXAMPLE 3
    This MATLAB code illustrates an example of various aspects of the invention. This code
    implements Method 2 for automatically estimating OMA and baseline from the input waveform
    and includes temporal alignment of the synthesized square waveform and data test pattern used
    for OMA calculation.
    function [xWDP,MeasuredxMA]=SFF8431xWDP(WaveformFile,EqNf,EqNb, . . .
    SymbolRate,Usage)
    %% Example calling syntax:
    %% [xWDP,MeasuredxMA]=SFF8431xWDP(′wavefile.txt′,14,5,10.3125, ′Optical_WDP′)
    %% The fields in the example above should be replaced by the actual values
    %% being used. WaveformFile should be the path\filename for each waveform
    %% tested. The waveform consists of N samples per unit interval T, where
    %% N is the oversampling rate. The waveform is circularly shifted to align
    %% with the data sequence. The file format for the measured waveform is ASCII
    %% with a single column of chronological numerical samples, in signal level,
    %% with no headers or footers.
    %% EqNf is the # of T/2-spaced feedforward equalizer taps; EqNb is the # of
    %% T-spaced feedback equalizer taps.
    %% SymbolRate is in gigabaud.
    %% Options for Usage are ′Optical_WDP′, ′Copper_WDP′, and ′Copper_TWDP′.
    %% ′Optical WDP′ is used in support of clause 3 for
    %% measuring WDPi at the output of an optical TP3 tester,
    %% measuring WDPo at C′ of a linear optical module receiver, and
    %% calibrating WDP at C″ for testing a host for linear optical modules.
    %% ′Copper WDP′ is used in support of Annex E for
    %% measuring WDPi and calibrating WDP at B″ for a copper cable assembly,
    %% measuring WDPo at C′ of a copper cable assembly (C), and
    %% calibrating WDP at C″ for testing a host for copper cable assemblies.
    %% ′Copper TWDP′ is used for measuring TWDP at B of a host for copper
    %% cable assemblies.
    %% Transmit data file: The transmit data sequence is 511 bit PRBS9 TWDP test
    %% patterns defined in Table 68-6. File format is ASCII with a single column
    %% of chronological ones and zeros with no headers or footers.
    TxDataFile = ′prbs9_950.txt′;
    %% Program constants %%
    OverSampleRate = 16; % Oversampling rate, must be even
    SymbolPeriod = 1/SymbolRate; % Symbol period is in ns
    Q0 = 7.03; % BER = 10{circumflex over ( )}(−12)
    %% Load input waveform and data sequence, generate filter and other matrices
    yout0 = load(WaveformFile);
    XmitData = load(TxDataFile);
    PtrnLength = length(XmitData);
    TotLen = PtrnLength*OverSampleRate;
    Fgrid = [−TotLen/2:TotLen/2−1].′/(PtrnLength*SymbolPeriod);
    %% Compute response of 7.5 GHz 4th order Butterworth antialiasing filter
    a = [1 123.1407 7581.811 273453.7 4931335]; % Denominator polynomial
    b = 4931335; % Numerator for frequency response
    ExpArg = −j*2*pi*Fgrid;
    H_r = b./polyval(a,−ExpArg);
    %% Get usage parameters for the application
    [H_chan,Delays,PAlloc] = GetParams(Usage,ExpArg);
    N0 = SymbolPeriod/2 / (Q0 * 10{circumflex over ( )}(PAlloc/10)){circumflex over ( )}2;
    %% Set search range for equalizer delay, in symbol periods. Lower end
    %% of range is minimum channel delay. Upper end of range is the sum of the
    %% lengths of the FFE and channel. Round up and add 5 to account for the
    %% antialiasing filter.
    EqDelMin = floor(min(Delays)/SymbolPeriod);
    EqDelMax = ceil(EqNf/2 + max(Delays)/SymbolPeriod);
    ONE=ones(PtrnLength,1);
    %% Normalize the received xMA (OMA or VMA) to 1. Estimate xMA of the captured
    %% waveform by using a linear fit to estimate a pulse response, synthesize a
    %% square wave, and calculate the xMA of the synthesized square wave per IEEE
    %% 802.3, clause 52.9.5.
    ant=4; mem=40; % Anticipation and memory parameters for linear fit
    X=zeros(ant+mem+1,PtrnLength); % Size data matrix for linear fit
    Y=zeros(OverSampleRate,PtrnLength); % Size observation matrix for linear fit
    for ind=1:ant+mem+1
     X(ind,:)=circshift(XmitData,ind-ant−1)′; % Wrap appropriately for lin fit
    end
    X=[X;ones(1,PtrnLength)]; % The all-ones row is included to compute the bias
    for ind=1:OverSampleRate
     Y(ind,:)=yout0([0:PtrnLength−1]*OverSampleRate+ind)′; % Each column is 1 bit
    end
    QmatY*X′*(X*X′){circumflex over ( )}(−1); % Coefficient matrix resulting from linear fit. Each
    %% column (except the last) is one bit period of the pulse response. The last
    %% column is the bias.
    SqWvPer=16; % Even number; sets the period of the sq wave used to compute xMA
    SqWv=[zeros(SqWvPer/2,1);ones(SqWvPer/2,1)]; % One period of sq wave (column)
    X=zeros(ant+mem+1,SqWvPer); % Size data matrix for synthesis
    for ind=1:ant+mem+1
     X(ind,:)=circshift(SqWv,ind-ant−1)′; % Wrap appropriately for synthesis
    end
    X=[X;ones(1,SqWvPer)]; % Include the bias
    Y=Qmat*X;Y=Y(:); % Synthesize the modulated square wave, put into one column
    Y=AlignY(Y,SqWvPer,OverSampleRate); %New subFunction in r1.2
    avgpos=[0.4*SqWvPer/2*OverSampleRate:0.6*SqWvPer/2*OverSampleRate];
    ZeroLevel=mean(Y(round(avgpos),:)); % Average over middle 20% of ″zero″ run
    % Average over middle 20% of ″one″ run, compute xMA
    MeasuredxMA=mean(Y(round(SqWvPer/2*OverSampleRate+avgpos),:))−ZeroLevel;
    %% Subtract zero level and normalize xMA
    yout0 = (yout0-ZeroLevel)/MeasuredxMA;
    %% Compute the noise autocorrelation sequence at the output of the front-end
    %% antialiasing filter and rate-2/T sampler.
    Snn = N0/2 * fftshift(abs(H_r).{circumflex over ( )}2) * 1/SymbolPeriod * OverSampleRate;
    Rnn = real(ifft(Snn));
    Corr = Rnn(1:OverSampleRate/2:end);
    C = toeplitz(Corr(1:EqNf));
    %% Compute the minimum slicer MSE and corresponding xWDP
    X = toeplitz(XmitData, [XmitData(1); XmitData(end:−1:end+1−EqNb)]);
    Xtil = toeplitz(circshift(XmitData,EqDelMin), . . .
     XmitData(mod(−EqDelMin:−1:−(EqDelMax+EqNb),PtrnLength)+1));
    Rxx = X′*X; % Used in MSE calculation
    %% Propagate the waveform through channel.
    yout = real(ifft(fft(yout0) .* fftshift(H chan)));
    %% Process signal through front-end antialiasing filter %%%%%%%%%%%%%%%%%%
    yout = real(ifft(fft(yout) .* fftshift(H_r)));
    %% Compute MMSE-DFE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %% The MMSE-DFE filter coefficients computed below minimize mean-squared error
    %% at the slicer input. The derivation follows from the fact that the slicer
    %% input over the period of data sequence can be expressed as Z = (R+N)*W −
    % X*[0 B]′, where R and N are Toeplitz matrices constructed from signal and
    %% noise components, respectively, at the sampled output of the antialiasing
    %% filter, W is the feedforward filter, X is Toeplitz matrix constructed from
    %% the input data sequence, and B is the feedback filter. The computed W and B
    %% minimize the mean square error between the input to the slicer and the
    %% transmitted sequence due to residual ISI and Gaussian noise. Minimize MSE
    %% over 2/T sampling phase and FFE delay and determine BER.
    MseOpt = Inf;
    for jj= [0:OverSampleRate−1]−OverSampleRate/2 % sampling phase
     %% Sample at rate 2/T with new phase (wrap around as required)
     yout_2overT = yout(mod([1:OverSampleRate/2:TotLen]+jj−1,TotLen)+1);
     Rout = toeplitz(yout_2overT, [yout_2overT(1); yout_2overT(end:−1:end−
    EqNf+2)]);
     R = Rout(1:2:end, :);
     RINV = inv([R′*R+PtrnLength*C R′*ONE;ONE′*R PtrnLength]);
     R=[R ONE]; % Add all-ones column to compute optimal offset
     Rxr = Xtil′*R; Px_r = Rxr*RINV*Rxr′;
     %% Minimize MSE over equalizer delay
     for kk = 1:EqDelMax−EqDelMin+1
      SubRange = [kk:kk+EqNb];
      SubRange = mod(SubRange−1, PtrnLength)+1;
      P = Rxx - Px_r(SubRange,SubRange);
      P00 = P(1,1); P01 = P(1,2:end); P11 = P(2:end,2:end);
      Mse = P00 - P01*inv(P11)*P01′;
      if (Mse<MseOpt)
       MseOpt = Mse;
       B = −inv(P11)*P01′; % Feedback filter
       XSel = Xtil(:,SubRange);
       W = RINV*R′*XSel*[1;B]; % Feedforward filter
       Z = R*W - XSel*[0;B]; % Input to slicer
       %% Compute BER using semi-analytic method %%%%%%%%%%%%%%%%%%
       MseGaussian = W(1:end−1)′*C*W(1:end−1);
       Ber = mean(0.5*erfc((abs(Z-0.5)/sqrt(MseGaussian))/sqrt(2)));
      end
     end
    end
    %% Compute equivalent SNR %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    %% This function computes the inverse of the Gaussian error probability
    %% function. The built-in function erfcinv( ) is not sensitive enough for low
    %% probability of error cases.
    if Ber>10{circumflex over ( )}(−12) Q = sqrt(2) *erfinv(1-2*Ber);
    elseif Ber>10{circumflex over ( )}(−323) Q = 2.1143*(−1.0658−log10(Ber)).{circumflex over ( )}0.5024;
    else Q = inf;
    end
    %% Compute penalty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    RefSNR = 10 * log10(Q0) + PAlloc;
    xWDP = RefSNR−10*log10(Q);
    %% End of main function
    %% GetParams subFunction
    function [H_chan,Delays,PAlloc] = GetParams(Usage,ExpArg);
     switch Usage
      case ′Optical_WDP′ % Identity channel for optical
       Delays = 0;
       H_Chan = 1;
       PAlloc = 6.5; % Total allocated dispersion penalty (dBo)
      case ′Copper_WDP′ % Identity channel for copper
       Delays = 0;
       H_Chan = 1;
       PAlloc = 7.5;
      case ′Copper_TWDP′ % Cu TWDP stressor
       ChanResp = [. . .
        .0 .04849 .09697 .14546 .19394 .24243 .29091 .33940 .38788, . . .
        .43637 .48485 .53334 .58182 .63031 .67879 .72728 .77576;
        .0 .01500 .08200 .18300 .22400 .16600 .09600 .06600 .04800, . . .
        .03000 .02200 .01900 .01700 .01200 .00800 .00800 .00700];
       Delays = ChanResp(1,:);
       PCoefs = ChanResp(2,:)′;
       H_chan = exp(ExpArg*Delays)*PCoefs/sum(PCoefs); %With normalization
       PAlloc = 7.5;
     end
    %% End of GetParams function
    %% AlignY subFunction
    function Y = AlignY(Y0,SqWvPer,OverSampleRate)
     % Aligns the crossings of the xMA square waveform Y to the first sample
     % in the vector, etc. The first sample is equivalent to time = 0.
     Y = Y0−mean(Y0); % AC-couple so crossings are at 0.
     tmp = Y(1:end−1).*Y(2:end); % Crossings will be where this vector is <=0.
     % Look only for the approximate crossing in the middle by ignoring any
     % within ~2 UI from the beginning. Due to possible misalignment of the
     % captured waveform, this is the only crossing that is certain.
     x = find(tmp(2*OverSampleRate:end)<=0,1)+2*OverSampleRate−1;
     % Use linear interpolation to find a more exact crossing point.
     xinterp = x-Y(x)/(Y(x+1)−Y(x));
     % Calculate the difference from the ideal crossing time then shift and
     % re-sample to create the aligned square waveform.
     xadj = xinterp−(SqWvPer/2*OverSampleRate+1);
     Y = circshift(Y0,−floor(xadj));
     Y = interpl(Y, (1:length(Y))′+xadj−floor(xadj),′spline′);
    %% End of AlignY function

Claims (1)

What is claimed is:
1. A method for testing a transmitter for an optical fiber communications link, the method comprising:
accessing a stored waveform for the transmitter under test, wherein the stored waveform represents an optical output generated by the transmitter in response to a data test pattern applied to the transmitter;
processing the waveform in software to simulate propagation of the waveform through a reference channel and/or a reference receiver to generate a synthesized waveform;
determining a temporal offset between logic transitions of the synthesized waveform and the data test pattern;
temporally shifting the synthesized waveform to generate an aligned synthesized waveform based on the temporal offset;
computing an optical modulation amplitude (OMA) based on the aligned synthesized waveform and the data test pattern; and
calculating a performance metric for the transmitter based on the OMA.
US14/134,997 2004-12-22 2013-12-19 Testing of Transmitters for Communication Links by Software Simulation of Reference Channel and/or Reference Receiver Abandoned US20140186027A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/134,997 US20140186027A1 (en) 2004-12-22 2013-12-19 Testing of Transmitters for Communication Links by Software Simulation of Reference Channel and/or Reference Receiver

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US63878804P 2004-12-22 2004-12-22
US64183405P 2005-01-05 2005-01-05
US64323405P 2005-01-11 2005-01-11
US67791105P 2005-05-04 2005-05-04
US69019005P 2005-06-13 2005-06-13
US69843505P 2005-07-11 2005-07-11
US70163705P 2005-07-21 2005-07-21
US70728205P 2005-08-10 2005-08-10
US71051205P 2005-08-22 2005-08-22
US71386705P 2005-09-01 2005-09-01
US11/316,115 US7643752B2 (en) 2004-12-22 2005-12-21 Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US4806308P 2008-04-25 2008-04-25
US12/430,892 US8111986B1 (en) 2004-12-22 2009-04-27 Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US13/367,234 US8639112B2 (en) 2004-12-22 2012-02-06 Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US14/134,997 US20140186027A1 (en) 2004-12-22 2013-12-19 Testing of Transmitters for Communication Links by Software Simulation of Reference Channel and/or Reference Receiver

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US13/367,234 Continuation US8639112B2 (en) 2004-12-22 2012-02-06 Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver

Publications (1)

Publication Number Publication Date
US20140186027A1 true US20140186027A1 (en) 2014-07-03

Family

ID=45532274

Family Applications (3)

Application Number Title Priority Date Filing Date
US12/430,892 Expired - Fee Related US8111986B1 (en) 2004-12-22 2009-04-27 Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US13/367,234 Active 2026-02-05 US8639112B2 (en) 2004-12-22 2012-02-06 Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US14/134,997 Abandoned US20140186027A1 (en) 2004-12-22 2013-12-19 Testing of Transmitters for Communication Links by Software Simulation of Reference Channel and/or Reference Receiver

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US12/430,892 Expired - Fee Related US8111986B1 (en) 2004-12-22 2009-04-27 Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US13/367,234 Active 2026-02-05 US8639112B2 (en) 2004-12-22 2012-02-06 Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver

Country Status (1)

Country Link
US (3) US8111986B1 (en)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7664394B2 (en) 2005-06-30 2010-02-16 Clariphy Communications, Inc. Testing of receivers with separate linear O/E module and host used in communication links
WO2011119897A2 (en) 2010-03-24 2011-09-29 Massachusetts Institute Of Technology Phase shift keyed optical communications
US10009115B2 (en) * 2011-05-02 2018-06-26 Massachusetts Institute Of Technology Optical receiver configurable to accommodate a variety of modulation formats
US8731413B1 (en) * 2012-01-23 2014-05-20 Viasat, Inc. DAC-based optical modulator and demodulator
EP2680029A1 (en) * 2012-06-27 2014-01-01 Leica Geosystems AG Distance measuring method and distance meter
CN104520818A (en) * 2012-08-13 2015-04-15 惠普发展公司,有限责任合伙企业 Performance tests in a continuous deployment pipeline
US9088368B2 (en) 2013-01-03 2015-07-21 Mellanox Technologies, Ltd. Methods and devices for active optical cable calibration
US9094132B1 (en) 2013-01-23 2015-07-28 Viasat, Inc. High data rate optical transport network using 8-PSK
US9553663B1 (en) * 2015-09-21 2017-01-24 Inphi Corporation System and method for calibration of an optical module
US10262092B1 (en) * 2017-05-08 2019-04-16 Cadence Design Systems, Inc. Interactive platform to predict mismatch variation and contribution when adjusting component parameters
CN108599867B (en) * 2018-03-29 2021-02-02 上海交通大学 Optical digital signal receiving device based on waveform matching
CN110417463B (en) 2018-04-27 2021-02-23 华为技术有限公司 Consistency test method, consistency test device and storage medium
JP7059903B2 (en) * 2018-11-14 2022-04-26 富士通株式会社 Communication device and communication method
US11616576B2 (en) 2021-07-07 2023-03-28 Credo Technology Group Ltd Onboard/co-packaged optics with transmit-side equalization

Citations (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5272723A (en) * 1990-04-26 1993-12-21 Fujitsu Limited Waveform equalizer using a neural network
US5652668A (en) * 1993-02-04 1997-07-29 International Business Machines Corporation Automated system, and corresponding method, for determining average optical output power of electro-optic modules
US5774242A (en) * 1996-05-28 1998-06-30 Northern Telecom Limited Eye mask for measurement of distortion in optical transmission systems
US6229631B1 (en) * 1997-04-25 2001-05-08 Oki Electric Industry Co., Ltd. Signal transmission system and method for supervising the same
US6233073B1 (en) * 1998-07-30 2001-05-15 International Business Machines Corporation Diagnostic injection of transmission errors in fiber optic networks
US6259543B1 (en) * 1999-02-17 2001-07-10 Tycom (Us) Inc. Efficient method for assessing the system performance of an optical transmission system while accounting for penalties arising from nonlinear interactions
US20010035997A1 (en) * 2000-01-17 2001-11-01 Agazzi Oscar E. High-speed transmission system for optical channels
US6314147B1 (en) * 1997-11-04 2001-11-06 The Board Of Trustees Of The Leland Stanford Junior University Two-stage CCI/ISI reduction with space-time processing in TDMA cellular networks
US6330381B1 (en) * 2000-06-30 2001-12-11 Nortel Networks Limited Methods, systems, media and signals for determining optimum pre-compensation and optimization of an optical system
US6377552B1 (en) * 1997-08-29 2002-04-23 Motorola, Inc. System, device, and method for evaluating dynamic range in a communication system
US6385552B1 (en) * 1999-08-10 2002-05-07 Tyco Telecommunications (Us) Inc. Method for collecting test measurements
US6477311B2 (en) * 2000-04-21 2002-11-05 Nec Corporation Method and device for selecting light source for optical communication
US6560720B1 (en) * 1999-09-09 2003-05-06 International Business Machines Corporation Error injection apparatus and method
US6580531B1 (en) * 1999-12-30 2003-06-17 Sycamore Networks, Inc. Method and apparatus for in circuit biasing and testing of a modulated laser and optical receiver in a wavelength division multiplexing optical transceiver board
US6768577B2 (en) * 2002-03-15 2004-07-27 Fitel Usa Corp. Tunable multimode laser diode module, tunable multimode wavelength division multiplex raman pump, and amplifier, and a system, method, and computer program product for controlling tunable multimode laser diodes, raman pumps, and raman amplifiers
US6865343B1 (en) * 1999-10-07 2005-03-08 Siemens Aktiengesellschaft Simulation of electro-optical connections that takes spatial direction into consideration
US20050191059A1 (en) * 2004-01-12 2005-09-01 Clariphy Use of low-speed components in high-speed optical fiber transceivers
US6956642B2 (en) * 2001-03-29 2005-10-18 Jorge Eduardo Franke Error function analysis of optical components
US20060069971A1 (en) * 2004-09-27 2006-03-30 Waschura Thomas E Method and apparatus for deferred decision signal quality analysis
US20060067688A1 (en) * 2004-09-24 2006-03-30 Inman Brad L Optical transceiver tester
US7095956B2 (en) * 2000-06-08 2006-08-22 Tellabs Operations, Inc. Method and apparatus for validating a path through a switched optical network
US7102739B2 (en) * 2002-03-25 2006-09-05 Sumitomo Electric Industries, Ltd. Method for selection of optical fiber and system for inspection of optical fiber
US7110449B2 (en) * 2002-04-16 2006-09-19 Thomson Licensing Decision feedback equalizer
US7154924B2 (en) * 2002-01-14 2006-12-26 Ceyx Technologies, Inc. Method for configuring a laser operating system
US20060291869A1 (en) * 2005-03-08 2006-12-28 Lindsay Thomas A Transmitter frequency peaking for optical fiber channels
US7161666B2 (en) * 2001-04-23 2007-01-09 Circadiant Systems, Inc. Automated system and method for determining the sensitivity of optical components
US20070036084A1 (en) * 2005-06-30 2007-02-15 Lindsay Thomas A Testing of Receivers with Separate Linear O/E Module and Host Used in Communication Links
US7181146B1 (en) * 2001-01-17 2007-02-20 Optical Communication Products, Inc. Self-adjusting data transmitter
US7187435B2 (en) * 2001-03-29 2007-03-06 Jorge Eduardo Franke Error function analysis of optical components
US20070064775A1 (en) * 2001-04-26 2007-03-22 Frederik Petre Wideband multiple access telecommunication method and apparatus
US7233962B2 (en) * 2001-10-10 2007-06-19 Vplsystems Pty Ltd Optical error simulation system
US7263287B2 (en) * 2003-03-21 2007-08-28 Agilent Technologies, Inc. Method and apparatus for assessing performance of optical systems
US7280765B2 (en) * 2003-05-20 2007-10-09 Lucent Technologies Inc. Low total excursion dispersion maps
US20080101794A9 (en) * 2004-12-22 2008-05-01 Swenson Norman L Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US7389470B2 (en) * 2002-04-16 2008-06-17 Thomson Licensing Concatenated equalizer/trellis decoder architecture for an HDTV receiver
US7389045B2 (en) * 2003-05-08 2008-06-17 Verizon Business Global Llc Apparatus and method for monitoring and compensating an optical signal

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4921347A (en) 1988-01-25 1990-05-01 Hewlett-Packard Company Method and apparatus for calibrating a lightwave component measurement system
US5475518A (en) 1991-05-10 1995-12-12 Olympus Optical Co., Ltd. Apparatus for optically transmitting data
JPH04345078A (en) 1991-05-22 1992-12-01 Sony Corp Laser light generating equipment
US5239481A (en) 1991-08-30 1993-08-24 International Business Machines Corporation Method for measuring pulse distortion
US6191854B1 (en) 1997-06-23 2001-02-20 Pirelli Cavi E Sistemi S.P.A. Optical telecommunications system
US6111675A (en) 1997-08-27 2000-08-29 Mciworldcom, Inc. System and method for bi-directional transmission of telemetry service signals using a single fiber
US6081509A (en) 1998-03-03 2000-06-27 Lucent Technologies Inc. Simulator for multiple network interface units
US6694104B1 (en) 1998-03-04 2004-02-17 Massachusetts Institute Of Technology Variable-rate communication system with optimal filtering
US7340183B2 (en) 1998-11-17 2008-03-04 Broadwing Corporation Optical communications systems, devices, and methods
US6272163B1 (en) 1999-02-24 2001-08-07 Agere Systems Inc. Method for fabricating high speed Fabry-Perot lasers for data communication
US6242979B1 (en) 2000-02-23 2001-06-05 Motorola, Inc. Linearization using parallel cancellation in linear power amplifier
US7933341B2 (en) 2000-02-28 2011-04-26 Broadcom Corporation System and method for high speed communications using digital signal processing
US7013257B1 (en) 2000-07-21 2006-03-14 Interdigital Technology Corporation Communication transmission impairment emulator
WO2002015416A2 (en) 2000-08-17 2002-02-21 Terabit Communications, L.L.C. High-speed communications system
US6480067B1 (en) 2000-11-27 2002-11-12 Sirenza Microdevices, Inc. Peaking control for wideband laser driver applications
US6590644B1 (en) 2001-01-12 2003-07-08 Ciena Corporation Optical module calibration system
GB2372830B (en) 2001-03-02 2003-05-21 Marconi Caswell Ltd Electro-optic gating arrangement with improved duty cycle
US20020172458A1 (en) 2001-04-06 2002-11-21 Downie John D. Optical system that improves spectrally distorted signals
US20020167703A1 (en) 2001-05-03 2002-11-14 Merritt Scott Andrew Tandem filters for reducing intersymbol interference in optical communications systems
US7035538B2 (en) 2001-07-09 2006-04-25 University Of Southern California Monitoring optical dispersion based on vestigial side band optical filtering
US20030058509A1 (en) 2001-09-24 2003-03-27 Ditech Communications Corporation Optical vestigial sideband (VSB) transmission
US7062166B2 (en) 2001-09-26 2006-06-13 International Business Machines Corporation First and second derivative processing of wavelength multiplexed optical signals
US6714344B2 (en) 2001-10-04 2004-03-30 Gazillion Bits, Inc. Reducing output noise in a ballast-powered semiconductor optical amplifier
US6829549B2 (en) 2001-12-17 2004-12-07 Nortel Networks Limited Implementation of a post detection chromatic dispersion compensation transfer function
US7366425B2 (en) 2002-03-15 2008-04-29 Mintera Corporation Methods and apparatus for spectrally efficient optical modulation
US7317769B2 (en) 2002-07-22 2008-01-08 Broadcom Corporation Bit stream conditioning circuit having adjustable input sensitivity
EP1394969B1 (en) 2002-08-30 2004-05-12 Alcatel Electronic equaliser for optical transmitter
US7496133B2 (en) 2002-11-01 2009-02-24 Broadcom Corporation Multi-rate on-chip OCN filter for a transceiver system
US7406266B2 (en) 2002-11-06 2008-07-29 Finisar Corporation Flat-topped chirp induced by optical filter edge
US7809280B2 (en) 2002-12-03 2010-10-05 Finisar Corporation Chirp-managed, electroabsorption-modulated laser
US7145924B2 (en) 2003-03-27 2006-12-05 Shimadzu Corporation Solid laser apparatus
US7283586B2 (en) 2003-05-06 2007-10-16 Northrop Grumman Corporation Adaptive equalizer matched filter error metric concept and apparatus
US7180918B2 (en) 2003-05-16 2007-02-20 Metal Improvement Company, Llc Self-seeded single-frequency solid-state ring laser and system using same
US7804760B2 (en) 2003-08-07 2010-09-28 Quellan, Inc. Method and system for signal emulation
GB2404992B (en) 2003-08-12 2006-12-27 Agilent Technologies Inc Electro-absorption modulation of optical signals
US7522847B2 (en) 2003-12-19 2009-04-21 Broadcom Corporation Continuous time filter-decision feedback equalizer architecture for optical channel equalization
US20050271394A1 (en) 2004-06-02 2005-12-08 James Whiteaway Filter to improve dispersion tolerance for optical transmission
US8254781B2 (en) 2005-06-30 2012-08-28 Clariphy Communications, Inc. Testing of receivers with separate linear O/E module and host used in communication links

Patent Citations (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5272723A (en) * 1990-04-26 1993-12-21 Fujitsu Limited Waveform equalizer using a neural network
US5652668A (en) * 1993-02-04 1997-07-29 International Business Machines Corporation Automated system, and corresponding method, for determining average optical output power of electro-optic modules
US5774242A (en) * 1996-05-28 1998-06-30 Northern Telecom Limited Eye mask for measurement of distortion in optical transmission systems
US6229631B1 (en) * 1997-04-25 2001-05-08 Oki Electric Industry Co., Ltd. Signal transmission system and method for supervising the same
US6377552B1 (en) * 1997-08-29 2002-04-23 Motorola, Inc. System, device, and method for evaluating dynamic range in a communication system
US6314147B1 (en) * 1997-11-04 2001-11-06 The Board Of Trustees Of The Leland Stanford Junior University Two-stage CCI/ISI reduction with space-time processing in TDMA cellular networks
US6233073B1 (en) * 1998-07-30 2001-05-15 International Business Machines Corporation Diagnostic injection of transmission errors in fiber optic networks
US6259543B1 (en) * 1999-02-17 2001-07-10 Tycom (Us) Inc. Efficient method for assessing the system performance of an optical transmission system while accounting for penalties arising from nonlinear interactions
US6385552B1 (en) * 1999-08-10 2002-05-07 Tyco Telecommunications (Us) Inc. Method for collecting test measurements
US6560720B1 (en) * 1999-09-09 2003-05-06 International Business Machines Corporation Error injection apparatus and method
US6865343B1 (en) * 1999-10-07 2005-03-08 Siemens Aktiengesellschaft Simulation of electro-optical connections that takes spatial direction into consideration
US6580531B1 (en) * 1999-12-30 2003-06-17 Sycamore Networks, Inc. Method and apparatus for in circuit biasing and testing of a modulated laser and optical receiver in a wavelength division multiplexing optical transceiver board
US20010035997A1 (en) * 2000-01-17 2001-11-01 Agazzi Oscar E. High-speed transmission system for optical channels
US6477311B2 (en) * 2000-04-21 2002-11-05 Nec Corporation Method and device for selecting light source for optical communication
US7095956B2 (en) * 2000-06-08 2006-08-22 Tellabs Operations, Inc. Method and apparatus for validating a path through a switched optical network
US6330381B1 (en) * 2000-06-30 2001-12-11 Nortel Networks Limited Methods, systems, media and signals for determining optimum pre-compensation and optimization of an optical system
US6832051B2 (en) * 2000-06-30 2004-12-14 Nortel Networks Limited Dispersion managed optical transmission links for wavelength division multiplexed systems
US7181146B1 (en) * 2001-01-17 2007-02-20 Optical Communication Products, Inc. Self-adjusting data transmitter
US6956642B2 (en) * 2001-03-29 2005-10-18 Jorge Eduardo Franke Error function analysis of optical components
US7187435B2 (en) * 2001-03-29 2007-03-06 Jorge Eduardo Franke Error function analysis of optical components
US7161666B2 (en) * 2001-04-23 2007-01-09 Circadiant Systems, Inc. Automated system and method for determining the sensitivity of optical components
US20070064775A1 (en) * 2001-04-26 2007-03-22 Frederik Petre Wideband multiple access telecommunication method and apparatus
US7233962B2 (en) * 2001-10-10 2007-06-19 Vplsystems Pty Ltd Optical error simulation system
US7154924B2 (en) * 2002-01-14 2006-12-26 Ceyx Technologies, Inc. Method for configuring a laser operating system
US6768577B2 (en) * 2002-03-15 2004-07-27 Fitel Usa Corp. Tunable multimode laser diode module, tunable multimode wavelength division multiplex raman pump, and amplifier, and a system, method, and computer program product for controlling tunable multimode laser diodes, raman pumps, and raman amplifiers
US7102739B2 (en) * 2002-03-25 2006-09-05 Sumitomo Electric Industries, Ltd. Method for selection of optical fiber and system for inspection of optical fiber
US7110449B2 (en) * 2002-04-16 2006-09-19 Thomson Licensing Decision feedback equalizer
US7389470B2 (en) * 2002-04-16 2008-06-17 Thomson Licensing Concatenated equalizer/trellis decoder architecture for an HDTV receiver
US7263287B2 (en) * 2003-03-21 2007-08-28 Agilent Technologies, Inc. Method and apparatus for assessing performance of optical systems
US7389045B2 (en) * 2003-05-08 2008-06-17 Verizon Business Global Llc Apparatus and method for monitoring and compensating an optical signal
US7280765B2 (en) * 2003-05-20 2007-10-09 Lucent Technologies Inc. Low total excursion dispersion maps
US20050191059A1 (en) * 2004-01-12 2005-09-01 Clariphy Use of low-speed components in high-speed optical fiber transceivers
US20060067688A1 (en) * 2004-09-24 2006-03-30 Inman Brad L Optical transceiver tester
US20060069971A1 (en) * 2004-09-27 2006-03-30 Waschura Thomas E Method and apparatus for deferred decision signal quality analysis
US7363562B2 (en) * 2004-09-27 2008-04-22 Synthesys Research Inc Method and apparatus for deferred decision signal quality analysis
US20080101794A9 (en) * 2004-12-22 2008-05-01 Swenson Norman L Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US20060291869A1 (en) * 2005-03-08 2006-12-28 Lindsay Thomas A Transmitter frequency peaking for optical fiber channels
US20070036084A1 (en) * 2005-06-30 2007-02-15 Lindsay Thomas A Testing of Receivers with Separate Linear O/E Module and Host Used in Communication Links

Also Published As

Publication number Publication date
US20120134665A1 (en) 2012-05-31
US8111986B1 (en) 2012-02-07
US8639112B2 (en) 2014-01-28

Similar Documents

Publication Publication Date Title
US8009981B2 (en) Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US8639112B2 (en) Testing of transmitters for communication links by software simulation of reference channel and/or reference receiver
US7664394B2 (en) Testing of receivers with separate linear O/E module and host used in communication links
JP3391800B2 (en) Method and apparatus for measuring strain in optical transmission system
US8254781B2 (en) Testing of receivers with separate linear O/E module and host used in communication links
US7853149B2 (en) Transmitter frequency peaking for optical fiber channels
US8929747B1 (en) Reducing pulse narrowing in the transmitter signal that drives a limiting E/O converter for optical fiber channels
US20080298801A1 (en) Electronic dispersion compensation systems and methods
Torres-Ferrera et al. Statistical analysis of 100 Gbps per wavelength SWDM VCSEL-MMF data center links on a large set of OM3 and OM4 fibers
US7039330B2 (en) Optical signal equalizer with adjustable linear filter
US8085837B2 (en) Characterizing non-compensable jitter in an electronic signal
CN116016059A (en) Equalization method and system for improving transmission performance of high-speed low-signal-to-noise ratio optical communication link
CN115412412A (en) Explicit solution for DFE optimization with constraints
US7657177B2 (en) Communications test receiver
Xi et al. A MAP equalizer for the optical communications channel
CN117728886A (en) TDEC (time domain reflectometry) testing method and related equipment
Khosla et al. Equalization of 10 GbE multimode fiber links
Swenson et al. Standards compliance testing of optical transmitters using a software-based equalizing reference receiver
Schanner et al. Impact of Deterministic and Random Jitter in a PDM-64QAM 64-GBd Coherent Transmission

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION