Test and measurement instrument, and calibration method of transmitter, and calibration method of transmitter

JP2025010062APending Publication Date: 2025-01-20TEKTRONIX INC
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2024105988
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-26
Filing Date
2024-07-01
Publication Date
2025-01-20

Smart Images

  • Figure 2025010062000001_ABST
    Figure 2025010062000001_ABST
Patent Text Reader

Abstract

To effectively optimize an SNDR value of a transmitter.SOLUTION: A test and measurement instrument 10 has a port 13 to receive a signal from a device under test (DUT) 14, and one or more processors. The one or more processors acquire a waveform from the signal, derive a pattern waveform from the waveform using one of either hardware or software clock recovery, perform linear fit pulse response (LFPR) extractions on the pattern waveform to extract more than one LFPRs, determine a reference pulse response from more than one LFPRs, compare at least one of the LFPRs to the reference pulse response to determine a difference, and adjust the DUT to reduce the difference. A program is configured to make the one or more processors perform such processing.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] This disclosure relates to test and measurement apparatus and methods, and more particularly to the extraction and use of multi-pulse signals in transmitter calibration, measurement and equalization. [Background technology]

[0002] As next generation high speed communication systems are designed and deployed and signal speeds increase, the requirements for signal integrity become more stringent. As bit rates increase, the time allocation decreases, resulting in smaller unit intervals (UI). When the signaling format changes from non-return-to-zero (NRZ) to four-level pulse amplitude modulation (PAM4), the vertical eye margin decreases by a factor of three. To improve the performance of the communication link, accurate calibration of the transmitter (Tx) is required. For PAM4 electrical signals, the transmitter is characterized by measuring the signal-to-noise-and-distortion ratio (SNDR). An optimal transmitter calibration results in the highest transmitter SNDR. SNDR has become an important measurement for evaluating transmitter characteristics for high speed serial standards such as PCIe (Peripheral Component Interconnect Express) Gen6 and Gen7, 400 Gb / s Ethernet, IEEE 802.3cd, and IEEE 802.3ck, all of which are available at http: / / www.ieee802.org / 3 / and are incorporated by reference in their entireties.

[0003] The SNDR measurement is defined as follows:

number

[0004] The extracted LFPR has other uses as well. U.S. Patent Application Publication No. 2023 / 0408558 describes a method for using the LFPR and other data representations of a waveform provided to a machine learning network to predict measurements of a waveform received from a device under test (DUT), the contents of which are incorporated herein by reference in their entirety. Improving the speed and accuracy of these predictions would have many advantages. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] US Patent Publication No. 2023 / 0408558 [Patent Document 2] US Patent Publication No. 2022 / 0373598 [Patent Document 3] U.S. Patent No. 11765002 [Patent Document 4] JP 2024-1002 A [Patent Document 5] JP 2022-179459 A [Patent Document 6] JP 2022-183142 A [Non-patent literature]

[0006] [Non-Patent Document 1] "Tektronix oscilloscope" introduction site, Tektronix, [online], [searched June 28, 2024], Internet<https: / / www.tek.com / ja / products / oscilloscopes> Summary of the Invention [Problem to be solved by the invention]

[0007] As mentioned above, signal integrity requirements are becoming increasingly stringent, so more efficient methods for optimizing transmitter performance are needed. [Means for solving the problem]

[0008] The present embodiment includes a novel technique for extracting multiple pulses, rather than a single pulse, from a signal generated by a device under test (DUT) or communications device. In one embodiment, the DUT includes a transmitter (Tx), and the embodiment uses multiple pulses to calibrate the transmitter to optimize its SNDR value. The embodiment uses linear fit pulse response related terms, in particular the SNDR distortion term σ mentioned above. e Focus on. [Brief description of the drawings]

[0009] [Figure 1] FIG. 1 shows an embodiment of a test and measurement device. [Diagram 2] Figure 2 shows the eye diagram of a PAM4 waveform. [Diagram 3] FIG. 3 shows a pattern waveform of the PAM4 waveform in FIG. [Figure 4] FIG. 4 shows an overall view of a single linear fitted pulse response (LFPR) extracted from the pattern waveform of FIG. [Diagram 5] FIG. 5 shows an overview and a zoomed-in view of extracted even and odd LFPR embodiments and the differences between them. [Figure 6]FIG. 6 shows the four normalized LFPRs of the four symbols. [Figure 7] FIG. 7 shows the unnormalized LFPR of FIG. [Figure 8] FIG. 8 shows an overview and a zoomed-in view of the eight normalized LFPRs. [Figure 9] FIG. 9 shows the difference between a single LFPR and the average LFPR. [Figure 10] FIG. 10 shows an example of a PAM4 pattern waveform. [Figure 11] Figure 11 shows the eye diagram for the PAM4 pattern waveform in Figure 10. [Figure 12] FIG. 12 shows one pulse extracted from the pattern waveform of FIG. [Figure 13] FIG. 13 shows four non-normalized linear fitted pulse responses (LFPRs) for the pattern waveform of FIG. [Figure 14] FIG. 14 shows the four LFPRs normalized based on FIG. [Figure 15] FIG. 15 shows a vertical histogram of the waveform of FIG. [Figure 16] FIG. 16 shows a two-dimensional image created from the pattern waveform of FIG. 10 to be presented to a machine learning network. [Figure 17] FIG. 17 shows the 2D images created to be presented to the machine learning network for four different signals with various LFPRs and vertical histograms. [Figure 18] Figure 18 shows an embodiment of a convolutional neural network that can use multiple pulses. [Figure 19] Figure 19 shows an embodiment of an eye diagram with identified vertical and horizontal histogram positions. [Figure 20] FIG. 20 shows an example of a conventional decision feedback equalizer (DFE) structure. [Figure 21]FIG. 21 shows an embodiment of a Multiple Pulse-based Decision Feedback Equalizer (MPDFE) structure. [Figure 22] FIG. 22 shows a diagram of an embodiment for selecting MPDFE tap values ​​based on the symbol at the delay line position. [Figure 23] FIG. 23 shows a PAM4 pattern waveform. [Figure 24] Figure 24 shows a PAM4 eye diagram. [Diagram 25] FIG. 25 shows one LFPR based on the waveform of FIG. [Figure 26] FIG. 26 shows a comparison with LFPR after applying a conventional DFE. [Figure 27] FIG. 27 shows four unnormalized LFPRs from the pattern waveforms of FIG. [Figure 28] FIG. 28 shows four normalized LFPRs based on FIG. [Figure 29] FIG. 29 shows the results for PAM4 symbol 2 and symbol 3 after applying a conventional DFE. [Diagram 30] FIG. 30 shows the results for PAM4 symbol 2 and symbol 3 after applying MPDFE. [Diagram 31] Figure 31 shows the eye diagram of the PAM4 pattern waveform in Figure 23 after applying a conventional DFE. [Diagram 32] Figure 32 shows the eye diagram of the PAM4 pattern waveform in Figure 23 after applying MPDFE. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0010] The multi-pulse extraction process will start there, as some of the same definitions and operations are used for a single LFPR. The IEEE standard 802.3ba mentioned above describes the single pulse extraction process. The terms "pulse", "pulse response" and "linear fit pulse response" as used in this application all refer to the resulting pulse, which is shown in several figures. The pulse response (pulse response or multiple pulse responses) results from the process of linear approximation. Linear approximation is a method of obtaining a pulse. Fitting allows the pulse to be obtained from the pattern waveform, so it is fair to say that fitting extracts the pulse from the pattern waveform.

[0011] A device under test (DUT) generates a waveform and a test and measurement instrument captures this waveform. FIG. 1 illustrates an embodiment of such an instrument. FIG. 1 illustrates an embodiment of a test setup for an example test and measurement instrument measuring or testing a DUT 14. The test setup may include a test and measurement instrument 10, such as an oscilloscope. The test and measurement instrument 10 receives signals from the DUT 14 directly or through an instrument probe 16. For an optical transmitter DUT, the probe typically includes a test fiber coupled to an optical-to-electrical converter, not shown, which provides signals to the test and measurement instrument through one or more ports 13. Two ports may be used for differential signaling and one port for single-ended signaling. The signal is sampled and digitized by the test and measurement instrument into a waveform. A clock recovery unit (CRU) 20 may recover a clock signal from the data signal if the test and measurement instrument 10 includes, for example, a sampling oscilloscope. Real-time oscilloscopes can use software clock recovery.

[0012] The test and measurement instrument includes one or more processors, represented by processor 12, a memory 22, and a user interface 26. The memory may include executable instructions stored in the form of code that, when executed by the processor, causes the processor to perform tasks. The test and measurement instrument's user interface 26 allows a user to interactively operate the instrument 10, such as entering settings, configuring tests, etc. The test and measurement instrument may also include a reference equalizer and analysis module 24.

[0013] Embodiments of the present application utilize machine learning in the form of a machine learning network 30, such as a deep learning network. The machine learning network includes a processor that is part of the test and measurement instrument or that the test and measurement instrument has access to, programmed with the machine learning network. As test instrument capabilities and processors evolve, one or more processors (such as 12) may include both of these processors. The machine learning system may take the form of programmed models running on one or more processors.

[0014] The process to extract one LFPR is as follows: When the waveform is acquired from the DUT, the test and measurement instrument can use hardware or software clock recovery to resample the acquired waveform to have M samples per UI (unit interval). The resampled and averaged pattern waveform is denoted as y(k). x(n), which represents multiple symbols, is aligned with y(k) such that the first M samples of y(k) correspond to the first symbol of the test pattern x(n), the second M samples of y(k) correspond to the second symbol, and so on. If the pattern length is N, then the M×N waveform matrix Y is defined as follows:

number

[0015] The process then proceeds to generate a specific pulse delay D p Just rotate the symbol vector x and delay the symbol vector x r Generate. [Number 3] x r =[x(D p +1) x(D p +2) … x(N) x(1) … x(ND p )]

[0016] D p is the pulse delay in unit intervals (UI). This pulse delay determines the number of pre-cursors included in the extracted pulse. N p is the length of the pulse in UI. N p If is 600, then the extracted pulse spans 600 UI.

[0017] As shown in Equation 4, the symbol matrix X is expressed as x r It is defined as an N×N symbol matrix derived from

number

[0018] Subset symbol matrix X 1 the first N rows of X concatenated with one row vector of length N p Then, we define M×(N p +1) type coefficient matrix is ​​defined by Equation 5. The superscript “T” denotes the matrix transpose operator.

number

[0019] Next, the error waveform e(k) is read out column-wise from the components of E as shown in Equation 6.

number

[0020] The distortion term (also called the fitting error) σ e is defined as the root-mean-square (RMS) value of the error waveform e(k).

[0021] As shown in Equation 7, the first N p The subset coefficient matrix P consists of columns 1 Next, the linear approximation pulse response p(k) is defined as P 1 The components are read column-wise from

number

[0022] For a PAM4 signal with the eye diagram shown in Figure 2 and the averaged pattern waveform shown in Figure 3, a single pulse extracted using the current linear approximation pulse response extraction method is shown in Figure 4. For a PAM4 signal, symbols 0, 1, 2, and 3 are represented as values ​​of [-1 -1 / 3 1 / 3 1].

[0023] Instead of the prior art using a single pulse to approximate a pattern waveform, embodiments of the present application use multiple pulses to approximate a pattern waveform. Various examples of multiple pulses are described, according to various embodiments of the present disclosure.

[0024] The process may use an even pulse and an odd pulse. These two pulses represent the pulses in the even and odd UIs. The process may use this model to find the difference between the even and odd pulses caused by duty cycle error (also called even-odd jitter), where the timing is different between the even and odd UIs. To maintain the even and odd sequence, if the pattern length is odd, then twice the odd pattern length is used to calculate the averaged pattern waveform y(k) and the aligned symbols x(n). This pattern length used to calculate the even and odd pulses is twice the original odd pattern length. If the original pattern length is even, then the process uses the original pattern length to calculate the even and odd pulses.

[0025] To get two pulses representing an even pulse and an odd pulse, use the first N of X in Equation 4. p X is a row Np Furthermore, in this process, the following two N p Define a ×N switch matrix.

[0026] A switch matrix, when combined with another matrix by a dot product, turns on and off elements in another matrix. Turning an element "on" means that the element's value is preserved, and turning an element "off" means that the element is set to 0.

[0027] The switch matrix for odd UI is defined as follows:

number

[0028] In this case, the first row starts with 1 and alternates between 0 and 1. The second row starts with 0 and alternates between 0 and 1. The switch matrix for even UI is defined in Equation 9, and W odd is complementary to.

number

[0029] This means the following:

number

[0030] Here, "·" denotes the dot product operator, and ones(1,N) denotes a row vector of length 1.

[0031] Calculating the following formula, the following P even_odd

number

[0032] P odd P even_odd The first N of p Let P even P even_odd Next N p columns, the linear approximation pulse response p odd (k) is P odd The components are read out column-wise from the even UI linear approximation pulse response p even (k) is P even The components are read out column-wise starting from

[0033] For the waveform shown in Figure 3, Figure 5 shows the even pulses, odd pulses and their difference obtained using this procedure, both in full view and in a zoomed-in view. In the zoomed-in view on the right, the difference between the even and odd pulses is shown in a little more detail, and in particular the peaks in the pulse response shown by circles 40 in the full view and in the odd and even pulses are noteworthy.

[0034] A PAM4 signal has four symbols, symbols 0, 1, 2, and 3. To check the linearity, the levels of symbols 0 and 3 are commonly used as the reference levels, and check whether the levels of symbols 1 and 2 are equally spaced between the reference levels. In the multi-pulse extraction of a PAM4 symbol, three pulses are extracted: one normalized pulse representing both symbol 0 and symbol 3, one normalized pulse for symbol 1, and one normalized pulse for symbol 2. In this process, for the three normalized pulses, three N pulses are extracted as follows: p Define a ×N switch matrix. [Number 13] W sym0_3 =(X Np ==-1) or (X Np ==1) W sym1 =(X Np ==-1 / 3) W sym2 =(X Np ==1 / 3) Here, the "==" operation returns a Boolean value. If the Boolean value of the element in the matrix is ​​true (the "==" condition is met), then W sym The corresponding component in is set to 1. If the Boolean value is false (the "==" condition is not met), then W sym The components inside are set to zero.

[0035] This means the following:

number

[0036] Calculating the following formula, P sym Get

number

[0037] P sym0_3 P sym The first N of p columns, then P sym1 P sym Next N p columns, and P sym2 P sym The next N p The normalized linear approximation pulse response p sym0_3 (k) is P sym0_3 The normalized linear approximation pulse response p of symbol 1 is read out column-wise from the components of sym1 (k) is P sym1 The normalized linear approximation pulse response p of symbol 2 is read out column-wise from the components of sym2 (k) is P sym2 The components are read out column-wise starting from

[0038] Figure 6 shows full and close-up views of several pulses extracted from the waveform shown in Figure 3. In the close-up on the right, the differences between the symbols can be seen, with the pulse of symbol 1 overlapping almost perfectly with the pulse of symbol 3.

[0039] The normalized pulses for all symbols are similar to each other as shown in Figure 6, making it easy to compare pulses of the same scale. The normalized pulses may be de-normalized. [Number 17] p sym0_un_normalized =-p sym0_3 p sym1_un_normalized =-(1 / 3)p sym1 p sym2_un_normalized =(1 / 3)p sym2 p sym3_un_normalized =p sym0_3 FIG. 7 shows the unnormalized pulses.

[0040] The details of the PAM4 signal can be obtained by approximating the PAM4 symbol with multiple pulses in even and odd UIs. This is a combination of the even and odd pulses embodiment and the four-pulse embodiment described above. In this embodiment, each PAM4 symbol is represented by two pulses, one for odd UIs and one for even UIs. The symbol 0 and 3 levels are typically used as reference levels to check whether the symbol 1 and 2 levels are equally spaced between the reference levels. In the multiple pulse extraction of the PAM4 symbol in even and odd UIs, six pulses are extracted: one normalized pulse for both symbol 0 and symbol 3, one for even UIs and one for odd UIs; one normalized pulse for symbol 1, one for even UIs and one for odd UIs; and one normalized pulse for symbol 2, one for even UIs and one for odd UIs. For the six pulses, the following six N pulses are extracted: p Define a ×N switch matrix. [Number 18] W sym0_3_odd =W sym0_3 ·W odd W sym0_3_even =W sym0_3 ·W even W sym1_odd =W sym1 ·W odd W sym1_even =W sym1 ·W even W sym2_odd =W sym2 ·W odd W sym2_even =W sym2 ·W even In this case, the switch matrix on the right side of the equation is defined for the first two cases of multiple pulses.

[0041] This means the following:

number

[0042] Calculating the following formula, P sym_even_odd get.

number

[0043] P sym0_3_odd P sym_even_odd The first N of p columns, then P sym0_3_even P sym_even_odd Next N p Let P be a sequence of sym1_odd , P sym1_even , P sym2_odd , P sym2_even The normalized linear approximation pulse response p for symbols 0 and 3 for odd UIs is sym0_3_odd (k) is P sym0_3_odd The normalized linear approximation pulse response p for symbol 0 and symbol 3 for even UIs is sym0_3_even (k) is P sym0_3_even The remaining four pulses are read out in the same manner.

[0044] Matrix X in Equation 10 even_odd , the matrix X in Eq. sym and the matrix X of Equation 19 sym_even_odd are called “extended symbol” matrices. They are based on the symbol matrix X and various switch matrices. Similarly, the various P matrices are related to the coefficient matrix P.

[0045] Figure 8 shows the normalized symbol pulses in even and odd UI obtained for the waveform in Figure 3, in full and zoomed views.

[0046] In one embodiment, the multi-pulse linear approximation process starts with acquiring a waveform from the DUT, which may be a transmitter (Tx). The process then performs software or hardware clock recovery. It then calculates an averaged data pattern waveform as shown in FIG. 3. The test and measurement instrument may then obtain the data pattern sequence by pattern detection or may obtain a known pattern sequence. This allows the pattern sequence and the pattern waveform to be aligned.

[0047] Then, based on the data pattern sequence and the pattern waveform, the symbol matrix X Np Then we construct the waveform matrix Y and the switch matrix for the multi-pulse approximation, X Np and the switch matrix. The process then calculates the coefficient matrix P, which contains the pulse information, and the error matrix E. pulse_i (k) is read out from the matrix P, and the error waveform e(k) is read out from the matrix E.

[0048] The approximation errors for the waveform shown in Figure 2 using single and multi-pulse as well as (averaged) pulse peak values ​​are summarized in Table 1. Approximation error comparison [Table 1]

[0049] Note that the multi-pulse approximation process reveals the normalized differences between the pulses. If multiple pulses are available in the approximation process, the approximation error δ e decreases. The (averaged) p max The values ​​are almost the same for the single-pulse approximation process and the multi-pulse approximation process.

[0050] When there is a mismatch between multiple pulses, the single-pulse approximation produces a larger approximation error than the multi-pulse approximation. The larger the approximation error, the more of a penalty there is in transmitter measurements such as SNDR. To improve transmitter performance, the multi-pulse approximation can be used as a tool to calibrate the transmitter to better match the multiple pulses.

[0051] The averaged pulse is constructed from the average of all the pulses to be calibrated, as shown in Figure 9. For example, the averaged pulse could be the average of the even and odd pulses. Each pulse is compared to the averaged pulse, and any non-zero difference, as shown in the plot, indicates a mismatch.

[0052] An example of a transmitter calibration process, according to some embodiments of the present disclosure, is described as follows: A test and measurement instrument acquires a waveform from a transmitter. One or more processors then perform the multi-pulse approximation process described above. The selection of pulses depends on the characteristics of the transmitter and the goal of the calibration. For example, if the transmitter has even and odd timing errors, an even-odd pulse approximation process may be selected. The process then calculates an averaged pulse. The averaged pulse is calculated using the normalized pulse. Tuning the transmitter involves selecting one or a few normalized pulses, comparing them to the averaged pulse, and tuning the transmitter to reduce the difference. This process may be repeated until the discrepancy between the pulses is minimized.

[0053] Instead of using an averaging pulse, two or more normalized pulses may be compared directly. To encompass both options, the averaging pulse includes an embodiment of a reference pulse. When comparing two normalized pulses directly, one of the normalized pulses serves as the reference pulse.

[0054] Calibrating the transmitter may use multiple pulses of various types, for example by first adjusting the even-odd pulse mismatch to reduce the mismatch between even and odd UIs as described for the even-odd pulse above, and then adjusting the symbol level linearity mismatch using the symbol embodiment described above, or by directly adjusting the symbols in the even and odd UIs in the even-odd symbol embodiment described above.

[0055] In this discussion, we have described the multi-pulse approximation process and its calibration method using PAM4, but the method can be generalized to other PAMn modulations (where n can have other values ​​besides n=4).

[0056] We have described a new multi-pulse approximation method that introduces a switch matrix for the selection of various multi-pulses. Multi-pulse approximation, also called multi-pulse extraction, reveals the pulse details hidden in the data waveform. The pulse details can be used for device debugging and calibration. Multi-pulse approximation returns numerically stable and accurate results because the approximation routine uses the entire waveform. For calibration, higher accuracy can be achieved by using the accurate multiple pulses obtained from the approximation algorithm.

[0057] Now that we have discussed the methodology of how the multi-pulse extraction process is performed, we will explore various uses and applications of the multi-pulse extraction process, including using multi-pulses in machine learning for measurements.

[0058] U.S. Patent Publication No. 2023 / 048558, published Dec. 21, 2023 (the "'558 Application," the contents of which are incorporated herein by reference), introduces machine learning-based measurements using single pulses extracted from a waveform. Other forms of data have also been considered for machine learning-based measurements. For example, eye diagrams of signals have been used to obtain machine learning measurements. S. Varughese, A. Melgar, VA Thomas, P. Zivny, S. Hazzard and SE Ralph, "Accelerating Assessments of Optical Components Using Machine Learning: TDECQ as Demonstration Example," Journal of Lightwave Technology, vol.39, no.1, pp.64-72,2021, hereinafter "Varughese."

[0059] The whole or part of the pattern waveform is also used for machine learning for the measurement. U.S. Patent Publication No. 2022 / 0373598, published on November 24, 2022 (hereinafter the "'598 application", the contents of which are incorporated herein by reference), introduces a short pattern waveform database or machine learning based measurement. Instead of extracting a single linear approximation pulse response from a waveform, the above introduces a new method that can extract multiple linear approximation pulse responses from a waveform. Multiple pulses contain more information of the signal. Here, an embodiment using multiple pulses (multi-pulses) for machine learning based measurement is described. Machine learning techniques can significantly improve the speed of complex measurements. The increased measurement speed leads to increased production throughput.

[0060] As signal speeds increase, equalizers are widely used in transmitters and receivers to improve system performance. For example, PCIe Gen 6 receivers have a 16-tap DFE in addition to a continuous time linear equalizer (CTLE). When a receiver has an equalizer, some of the measurements are performed on the equalized signal. For example, in PCIe Gen 6, eye height and eye width measurements are defined based on the eye diagram of the equalized waveform. In another example, the IEEE 802.3 standard for 100G / 400G specifies transmitter and dispersion eye closure (TDECQ) measurements as key pass / fail criteria for 26Gbaud and 53Gbaud PAM4 optical signaling. The TDECQ measurement includes a 5-tap FFE.

[0061] For complex and time-consuming measurements, machine learning techniques can be used to significantly improve measurement speed. The information contained in the data used in machine learning affects the results of machine learning. The '598 application describes data containing short pattern waveforms for machine learning. The advantage is that the data contains time series information. However, the selected short pattern only appears in a portion of the entire data pattern. In certain conditions, a long waveform needs to be processed to ensure that the selected short pattern appears in sufficient numbers. The linear approximate pulse response approach, as described in the '558 application, is more efficient in obtaining the data required for machine learning. Instead of extracting a single pulse from the waveform, the above method extends the process of extracting a single pulse to extracting multiple pulses. Multiple pulses contain more information of the signal. For example, for a PAM4 signal, four pulses can better represent four symbols. The more information the neural network sees, the more accurate the measurement results can be obtained from machine learning.

[0062] For more accurate measurement results, especially for measurements that require an equalizer, the input data to the neural network must contain time sequence information. This is because the equalizer operates on time-sequenced samples. In normal eye diagram data, the time sequence information between symbols is lost. In the entire pattern waveform, the large size can slow down the neural network training. A data set of short pattern waveforms uses only a portion of the waveform, ignoring the unused parts of the waveform, but still contains signal information.

[0063] The extraction of a single linear approximation pulse response has been used for measurement and equalizer adaptation. The linear approximation pulse contains time sequence information that is common to all data. The time sequence information is useful for analyzing inter-symbol interference. The time sequence information can be used to determine equalization parameters such as FFE (feed forward equalizer) taps, DFE taps, and CTLE.

[0064] Multiple extracted pulses allow a better representation of the signal, as discussed above. For example, Figure 10 shows the waveform of a PAM4 signal, and Figure 11 shows the eye diagram of this signal, where the eye is completely closed due to the large channel loss.

[0065] Figure 12 shows a single linearly fitted pulse response extracted from the waveform. Even though the eye diagram is closed due to channel loss, the linear approximation pulse response extraction process successfully extracts the pulse.

[0066] Figure 13 shows four symbols [0 1 2 3] of a PAM4 signal extracted from a waveform using the multi-pulse extraction algorithm described above. In this example, even though the eye diagram is completely closed, the multi-pulse extraction algorithm still successfully extracts the pulses.

[0067] The four pulses can be normalized by multiplying them by [-1, -1 / 3, 1 / 3, 1] to obtain the normalized pulses shown in Figure 14. A superimposed plot of the four normalized pulses shows that there are differences in the four symbols in addition to the nominal scaling factor of [-1 -1 / 3 1 / 3 1]. In Figure 14, the differences are most noticeable at the peaks of the pulses, indicated by circle 42. These differences constitute additional characterization information about the signal compared to the representation of a single pulse.

[0068] Depending on the measurement requirements, other data may be used for machine learning along with multiple pulses, such as a vertical histogram of the entire waveform or a vertical histogram of the center of the eye. A vertical histogram of the entire waveform is shown in Figure 15.

[0069] As an alternative to machine learning techniques, the multiple pulses and vertical histogram can be arranged in a suitable format. For example, the multiple pulses and vertical histogram are each one-dimensional vectors, so they can be treated as a one-dimensional data set and fed into a neural network that processes one-dimensional data. Examples include recurrent neural networks (RNNs), long short-term memory (LSTMs), and one-dimensional convolutional neural networks (CNNs). The data set can also be structured as tabular data. Another embodiment puts the data into a two-dimensional image and uses a two-dimensional CNN model.

[0070] Figure 16 shows a number of pulses extracted from a waveform such as that shown in Figure 13, represented at the bottom by a number of grey lines (such as 44), where darker colours are associated with larger amplitudes of the linear approximation pulses. The vertical histogram shown in Figure 15 is represented at the top by grey line 46, where darker colours are associated with a greater number of hits.

[0071] The longer the duration of the pulse response, the more likely each pulse will be represented by multiple lines in a two-dimensional image.

[0072] Training a CNN requires a large training data set. In one embodiment, this data set is obtained from lab testing using a BERT (Bit Error Rate Tester), a board with different channels, and a real-time oscilloscope. The images shown in Figure 17 represent four acquired signals with different linear approximation pulses and different vertical histograms. These images cover the same characteristics as the images in Figure 16.

[0073] 18 shows an embodiment of a CNN model that uses multiple pulses as input to input layer 41. The CNN can have multiple hidden layers (such as 43) and produces tuning parameters or test results at output layer 45. Many existing deep learning CNN models can be used for measurement, transmitter tuning and receiver equalizer adaptation.

[0074] An embodiment of the process of using the extracted multiple pulses for machine learning measurements begins with acquiring a waveform with a real-time (RT) or equivalent time (ET) oscilloscope or other test and measurement instrument. The test and measurement instrument then performs software or hardware clock recovery to obtain the pattern waveform. The multi-pulse extraction approximation process described above is used to extract multiple pulses from the waveform. To improve speed, the approximation process may use only a portion of the waveform, for example, a portion covering approximately 10,000 symbols. Because the approximation process uses all symbols, 10,000 symbols provides enough data to obtain an accurate linear approximation pulse. Other portions covering many symbols may also be used.

[0075] Other data formats that provide information relevant to the measurement may be selected in this process. For example, a vertical histogram in the center of the UI is selected for signal-to-noise ratio (SNR) measurement. Two vertical histograms near the center of the UI are selected for TDECQ measurement. A horizontal histogram is used at the edge crossing level for jitter measurement. Multiple vertical histograms, multiple horizontal histograms, and combinations of vertical and horizontal histograms may also be considered and used in various embodiments. Figure 19 shows an example of an optical signal with the positions of the various histograms identified by lines.

[0076] After selecting the data format, it is necessary to select a suitable data representation for the machine learning neural network. For example, the extracted linear approximation pulse and vertical histogram are represented by a two-dimensional image shown in Figure 16. The extracted linear approximation pulse and one-dimensional histogram can also be represented by a one-dimensional data set. The neural network can have various structures. Using a pre-trained deep learning network model, transfer learning can be performed. In transfer learning, only the last fully connected layer is trained on the data set with the linear approximation pulse. The data set input to the neural network is normalized. The results are then de-normalized. For example, the label values ​​are normalized for training the neural network. Once the neural network is trained and predictions are performed, the prediction results are de-normalized, which is the inverse mapping of normalization.

[0077] Other modifications and variations exist. In addition to the linearly approximated pulse response, other linear responses such as impulse responses or step responses can also be extracted from the captured pattern waveforms and used as inputs to the machine learning model.

[0078] The linearly approximated pulse data set can be combined with a selected short pattern waveform data set for machine learning purposes, as described in the '598 application.

[0079] A PAM4 signal is used to illustrate multiple pulses for machine learning. As mentioned above, the multi-pulse algorithm can be applied to other PAMn signals, such as n=3 for PAM3 and n=6 for PAM6.

[0080] Other parameters may also be incorporated into the two-dimensional image, for example the noise value of an oscilloscope may be represented by a line or bar in the image.

[0081] The above described embodiments describe a novel input data selection for machine learning using multiple extracted linear pulses to improve the speed and accuracy of machine learning based measurements. This technique allows important information of the signal to be stored in a compact form and fed into a neural network for machine learning.

[0082] As signal speeds increase, equalizers are widely used in transmitters and receivers to improve system performance. For example, as shown in Table 2, for multiple generations of PCIe, as the transmission speed increases from 8GT / s to 64GT / s, the number of taps in the Decision Feedback Equalizer (DFE) increases from 1 in the 3rd generation to 16 in the 6th generation, and the signal modulation method changes from NRZ in generations before the 6th generation to PAM4 in the 6th generation. DFE for PCIe [Table 2]

[0083] A conventional DFE structure is shown in Figure 20. In Figure 20, x k is the input signal to the DFE 50, and y kis the input signal to decision function 52, also called a slicer. The decision function detects the symbols in a digital sense. For NRZ signals, its output will be -1, 1 representing bit 0 and bit 1, and for PAM4 signals, its output will be -1, -1 / 3, 1 / 3 representing symbol 0, symbol 1, symbol 2, symbol 3. The output of the decision function is then fed along a delay line to a delay block (such as 54), the output of which is the DFE tap d i and fed back to the summing node to obtain the input signal x k N is the number of DFE taps. For PCIe Gen 3, N=1. For PCIe Gen 6, N=16.

[0084] U.S. Patent No. 11,765,002, issued Sep. 19, 2023, discloses an explicit solution for finding optimal DFE taps based on a single linear approximate pulse response (LFPR), and is incorporated by reference in its entirety into this application.

[0085] In a PAM4 signal, the normalized pulses for symbols 0, 1, 2, and 3 are often different, as discussed above. The multiple linear approximated pulse response (LFPR) method discussed above, which is incorporated by reference into this disclosure, can be used to extract multiple LFPRs for multiple symbols. Multiple LFPRs capture more signal detail than a single LFPR, providing an opportunity to improve the DFE design, which may improve equalizer performance.

[0086] The conventional DFE structure shown in Figure 20 uses one set of multiple tap values. A new DFE structure called MPDFE (Multiple Pulse DFE) is described in Figure 21, which uses a set of multiple tap values ​​for each DFE tap d i,mi is selected from a set of predefined tap values ​​based on the symbol detected after passing through a delay block. Index i is the tap number and index mi is the symbol "number" based on the signal.

[0087] For example, as shown in FIG. 21, there are four possible tap values ​​for the PAM4 signal at each position of the delay line. i,mi has two indices, the first index representing the delay line position corresponding to the tap, and the second index representing the symbol, as described above. An example is shown in Figure 22. For example, for the first delay line position 54 in Figure 21, i=1,m1={0,1,2,3}. If the symbol is 2, then m1=2, and for the first delay line position, the tap value d 1,2 If the next symbol is 0, then m1=0 and for the first delay line position, the tap value d 1,0 are selected. The tap values ​​are selected in the same manner for all of the multiple delay line positions. At the next clock cycle, the detected symbol moves through the delay blocks along the delay line and the tap value selection is updated based on the updated symbol at the corresponding delay line position. In one embodiment, the filter may use multipliers such as (-1, -1 / 3, 1 / 3, 1) for PAM4 symbols 0, 1, 2, and 3, where (-1, -1 / 3, 1 / 3, 1) are the multipliers for the tap values ​​(d 1,1 ,d 1,2 ,…,d i,mi ) (e.g., in multiplier 58 of FIG. 21). The product of the tap value and the multiplier could be stored in a lookup table, and the filter would access values ​​based on this table based on the symbol.

[0088] The process of determining the tap values ​​of MPDFE is explained with a numerical example. A PAM4 signal with a pattern waveform shown in Figure 23 has a closed eye diagram shown in Figure 24. A single LFPR extracted from the pattern waveform is shown in Figure 25.

[0089] The taps of a conventional DFE are determined to minimize the amplitude of the post-cursor samples in the center of the unit interval (UI). As shown in FIG. 26, curve 70 shows the LFPR before applying the DFE, and curve 72 shows the LFPR after applying the DFE. As shown, the DFE minimizes the amplitude of the samples in the center of the UI to zero for the post-cursor. In this example, a 40-tap DFE was used.

[0090] However, for PAM4 signals, the normalized pulses of all symbols are not necessarily the same. Multiple pulses of multiple symbols can be extracted according to the method described above. The unnormalized pulses are shown in Figure 27 and the normalized pulses in Figure 28. The unnormalized pulses represent the actual size of the pulses of the symbols, while the normalized pulses are scaled with values ​​represented as -1, -1 / 3, 1 / 3, 1 in the pattern based on the symbols 0, 1, 2, 3.

[0091] While some of the normalized pulses are very similar to each other, most notably at the top of the pulses as shown in Figure 28, not all of the normalized pulses of a symbol are the same. When applying one set of DFE taps based on one LFPR to each of the normalized pulses, the DFE cannot minimize the center UI samples of all of the pulses to zero if the pulses are not all the same at the center of the UI. In this numerical example, applying DFE taps determined from one LFPR to the pulses of the unnormalized symbol results in a non-zero residual in the center of the UI of the pulses after DFE of symbol 3 and symbol 2 as shown in Figure 29. Looking at circle 80, we can see that the residual is not zero at 2, which is the center of the UI interval, between 1.5 and 2.5.

[0092] In the multiple LFPR extraction process, the tap value d j,k where j=0,1,2,3 represents the four symbols, and k=1,2,...,L represents the length of the MPDFE. For each symbol j, the tap value d j,kis optimized to minimize the post-cursor residual at the center of the UI. The explicit solution described above can be applied to each pulse. In this numerical example, applying the MPDFE taps to the symbol pulses results in zero residual at the center of the UI for the pulses after DFE for unnormalized Symbol 3 and Symbol 2 as shown in Figure 30. You can see that in the center of the UI highlighted by circle 80, the pulse is zero unlike that in Figure 29.

[0093] Once the DFE taps are determined for every symbol, the Multi-Pulse DFE (MPDFE) can be implemented as shown in Figures 21 and 22. As an example to aid in understanding, a 40-tap DFE filter has 40 tap values. Taking the MPDFE approach for PAM4 as an example, there are 4 values ​​for each of the 40 taps, for a total of 160 values. For example, when a symbol enters the first delay position, the MPDFE approach produces the tap value for that symbol at that tap.

[0094] For comparison, Figure 31 shows the eye diagram after applying a traditional DFE. Figure 32 shows the eye diagram after applying MPDFE. Both techniques apply a DFE to open up the eye, so the difference is subtle, but if you look at region 82 in Figure 31 and compare it to region 84 in Figure 32, you can see that the area between the open eyes in Figure 31 is larger because the eye is not as open. The eye diagram after MPDFE shown in Figure 32 has a wider eye opening than the eye diagram after the traditional DFE shown in Figure 31, demonstrating the improvement of MPDFE over the traditional DFE.

[0095] The maximum-likelihood sequence estimation equalizer (MLSE) provides optimal equalization when the channel characteristics are known or accurately estimated. However, the MLSE equalizer has a higher computational complexity than a conventional DFE. When the channel characteristics are known or accurately estimated, the MLSE equalizer can completely cover the range of the channel response. The computational complexity of the MLSE is M L where M is the number of symbols and L is the length of the equalizer. Because it is an exponential function, L cannot be made too large to make MLSE feasible to implement. For example, MATLAB® has a 2 20 There is an upper limit of 2 20 is 4 10 Since , , this means that MATLAB®'s MLSE cannot fully cover channel responses that last longer than 10 UI. In this numerical example, the channel response lasts for more than 20 UI, as shown in Figures 26 and 28. Note that when a high-speed signal doubles the symbol rate, the number of UIs in a given time also doubles. The more complex the MLSE is computationally, the higher the implementation cost, which limits its application.

[0096] A comparison of the computational complexity of traditional DFE, MPDFE, and MLSE is summarized in Table 3. Computational Complexity Formula [Table 3] Table 4 shows the computational complexity figures for three equalizer configurations for M=4 and L=10, 20, and 40. Computational complexity figures for M=4 [Table 4]

[0097] The MPDFE concept can be applied to the even and odd pulses mentioned above, as well as to other multi-pulse cases of various modulation schemes, e.g. PAM8 signaling.

[0098] The present embodiment provides a new DFE structure, Multi-Pulse DFE (MPDFE), which improves the performance of the equalization process without increasing the computational complexity and implementation cost. Advances in semiconductors enable a new generation of receivers with higher computational power at lower power consumption and lower cost. Increasing signal rates (e.g., from 400G to 800G) and more complex modulation formats (e.g., from NRZ to PAM4, PAM8) impose more challenges for receivers to successfully compensate for signal impairments. MPDFE is an attractive approach to improve receiver performance without increasing cost.

[0099] In one embodiment, a computing device includes a port that enables the computing device to receive a signal from a device under test (DUT) and one or more processors configured to execute a program that causes the one or more processors to perform the following operations: acquire a waveform from the signal; derive a pattern waveform from the signal using either hardware or software clock recovery, the pattern waveform including a number of symbols based on a format of the signal; perform a linear fit pulse response (LFPR) extraction process on the pattern waveform to extract two or more pulse responses; extract the pulse responses for each of the symbols; define a multi-pulse decision feedback equalizer (MPDFE) having multiple taps; use the pulse responses for each of the symbols to determine a set of coefficients for MPDFE taps for each of the symbols; and apply the coefficients for the given symbol at each delay position of the MPDFE structure as the given symbol moves through a delay line of the MPDFE structure.

[0100] In another embodiment, the computing device includes a program that causes the one or more processors to extract a pulse response for each of the symbols, the program causing the one or more processors to extract either a linearly approximated pulse response (LFPR), an impulse response, or a step response.

[0101] In another embodiment, the computing device includes a program that causes the one or more processors to use the pulse response of each of the symbols to determine a set of DFE taps for each of the symbols, the program causing the one or more processors to select a set of DFE tap values ​​that minimizes an amplitude of a post-cursor sample at a center of a unit interval for each of the symbols.

[0102] In another embodiment, the computing device includes a program that causes the one or more processors to perform a process of determining the DFE tap values ​​using normalized pulses for each of the symbols.

[0103] Another embodiment is the computing device, wherein the port is connected to a high speed communications link.

[0104] Another embodiment is the computing device, wherein the computing device comprises a test and measurement instrument.

[0105] Another embodiment is the computing device as described above, wherein the signal is in the form of either a PAM4 signal or a PAM8 signal.

[0106] Another embodiment is the computing device described above, wherein the number of taps is sixteen.

[0107] In another embodiment, in the computing device, the program that causes the one or more processors to apply a coefficient for the given symbol at each delay position of the MPDFE structure as the given symbol moves through a delay line of the MPDFE structure includes a program that multiplies the symbol by the coefficient and a symbol multiplier based on the symbol.

[0108] In another embodiment, in the computing device, the program that causes the one or more processors to multiply the symbol based on the symbol by the coefficient and a symbol multiplier includes a program that causes the one or more processors to access a lookup table that stores products of the multipliers of each of the symbols at each of the delay positions to obtain a product based on the symbol.

[0109] In another embodiment, the computing device is further configured to execute a program that causes the one or more processors to average multiple repetitions of the pattern waveform to generate a single averaged pattern waveform as the pattern waveform.

[0110] Another embodiment is a method of optimizing an equalizer for a communications link, comprising receiving a signal from a device under test (DUT) and acquiring a waveform from the signal; deriving a pattern waveform from the waveform, using either hardware or software clock recovery, the pattern waveform having a number of symbols based on a type of the signal; performing a linear approximated pulse response (LFPR) extraction process on the pattern waveform to extract two or more LFPRs; extracting a pulse response for each of the symbols; defining a multi-pulse decision feedback equalizer (MPDFE) having a number of taps; using the pulse response for each of the symbols to determine a set of tap values ​​for each of the symbols; and applying coefficients for the given symbol at each delay position of the MPDFE structure as the given symbol moves through a delay line of the MPDFE structure.

[0111] Another embodiment is the method as described above, wherein extracting a pulse response for each of the symbols comprises extracting one of a linearly approximated pulse response (LFPR), an impulse response or a step response.

[0112] In another embodiment, the method further comprises determining a set of tap values ​​for each of the symbols, the tap values ​​minimizing an amplitude of a post-cursor sample at a center of a unit interval for each of the symbols.

[0113] Another embodiment is the above method, further comprising determining the taps using a normalized pulse of each of the symbols.

[0114] Another embodiment is the method as described above, wherein the signal is in the form of either a PAM4 signal or a PAM8 signal.

[0115] Another embodiment is the method as described above, wherein the signal is in the form of a PCIe (Peripheral Component Interconnect Express) signal conforming to PCIe Generation 6.

[0116] Another embodiment is the above method, wherein the number of taps is sixteen.

[0117] Another embodiment is the above method, wherein the process of applying a coefficient for a given symbol at each delay position of the MPDFE structure as the given symbol moves through a delay line of the MPDFE structure comprises a process of multiplying the symbol by the coefficient and a symbol multiplier based on the symbol.

[0118] In another embodiment, the method as described above, multiplying the symbol by the coefficient and a symbol multiplier includes accessing a lookup table that stores products of the multipliers for each of the symbols at each of the delay positions to obtain a product based on the symbol.

[0119] In another embodiment, the method further comprises averaging multiple repetitions of the pattern waveform to generate a single averaged pattern waveform for the pattern waveform.

[0120] Aspects of the disclosed technology can operate on specially created hardware, firmware, digital signal processors, or specially programmed general-purpose computers, including processors that operate according to programmed instructions. The term "controller" or "processor" in this application contemplates microprocessors, microcomputers, ASICs, and dedicated hardware controllers, among others. Aspects of the disclosed technology can be implemented in computer-available data and computer-executable instructions, such as one or more program modules, executed by one or more computers (including a monitoring module) or other devices. Generally, program modules include routines, programs, objects, components, data structures, and the like, which, when executed by a processor in a computer or other device, perform particular tasks or implement particular abstract data formats. The computer-executable instructions may be stored in computer-readable storage media, such as hard disks, optical disks, removable storage media, solid-state memory, RAM, and the like. As will be appreciated by those skilled in the art, the functionality of the program modules may be combined or distributed as desired in various embodiments. Furthermore, such functionality may be embodied in whole or in part in firmware or hardware equivalents, such as integrated circuits, field programmable gate arrays (FPGAs), etc. Certain data structures may be used to more effectively implement one or more aspects of the disclosed techniques, and such data structures are considered to be within the scope of the computer-executable instructions and computer-usable data described herein.

[0121] The disclosed aspects may, in some cases, be implemented in hardware, firmware, software, or any combination thereof. The disclosed aspects may also be implemented as instructions carried by or stored on one or more computer-readable media that may be read and executed by one or more processors. Such instructions may be referred to as computer program products. A computer-readable medium as described herein means any medium that can be accessed by a computing device. By way of example, and not limitation, computer-readable media may include computer storage media and communication media.

[0122] Computer storage media means any medium that can be used to store computer-readable information. By way of example and not limitation, computer storage media may include random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, compact disk read-only memory (CD-ROM), digital video disc (DVD) or other optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, and any other volatile or non-volatile removable or non-removable media implemented in any technology. Computer storage media excludes signals themselves and transitory forms of signal transmission.

[0123] A communication medium refers to any medium capable of communicating computer readable information. By way of example, and not limitation, communication media may include coaxial cables, fiber optic cables, air, or any other medium suitable for communicating electrical, optical, radio frequency (RF), infrared, acoustic, or other types of signals. Working Example

[0124] In the following, examples useful for understanding the technology disclosed in the present application are presented. The embodiment of the technology may include one or more of the examples described below and any combination thereof.

[0125] Example 1 is a test and measurement apparatus comprising a port that enables the test and measurement apparatus to receive a signal from a device under test (DUT) and one or more processors, the one or more processors being configured to execute a program that causes the one or more processors to perform the following processes: acquiring a waveform from the signal (acquisition: acquiring waveform data); deriving a pattern waveform from the waveform using either hardware or software clock recovery; performing a linear fit pulse response (LFPR) extraction process on the pattern waveform to extract two or more LFPRs; determining a reference pulse response from the two or more LFPRs; comparing at least one of the LFPRs with the reference pulse response to determine a difference; and tuning the DUT to reduce the difference.

[0126] Example 2 is the test and measurement device of Example 1, wherein the program that causes the one or more processors to perform an LFPR extraction process to extract two or more LFPRs includes a program that causes the one or more processors to perform any one of a process of extracting an LFPR for pulses in even unit intervals and odd unit intervals, a process of extracting an LFPR for symbol pulses, or a process of extracting an LFPR for symbol pulses in even unit intervals and odd unit intervals.

[0127] Example 3 is the test and measurement instrument of example 2, wherein the symbol pulses originate from PAM4 symbols.

[0128] Example 4 is the test and measurement instrument of example 2, wherein the symbol pulses originate from a signal having n symbol pulses.

[0129] Example 5 is a test and measurement instrument according to any one of Examples 1 to 4, wherein the program causing the one or more processors to perform a process for obtaining the reference pulse response includes a program causing the one or more processors to perform a process for obtaining an average pattern waveform.

[0130] Example 6 is the test and measurement instrument of Example 1, wherein the program that causes the one or more processors to perform the process of determining the reference pulse response includes a program that causes the one or more processors to perform a process of normalizing two or more LFPRs, a process of determining an average pulse, and a process of using the average pulse as the reference pulse.

[0131] Example 7 is the test and measurement instrument of any of Examples 1 to 6, wherein the program that causes the one or more processors to perform processing to obtain the reference pulse response includes a program that causes the one or more processors to compare two or more LFPRs, one of which functions as the reference pulse.

[0132] Example 8 is the test and measurement instrument of any of Examples 1 to 7, wherein the one or more processors are further configured to cause the one or more processors to repeat the processes of acquiring the waveform, deriving the pattern waveform, extracting an LFPR, determining the reference pulse response, comparing with the reference pulse response, and tuning the DUT until the difference is minimized.

[0133] A ninth embodiment is the test and measurement device of any one of the first to eighth embodiments, wherein the program for causing the one or more processors to perform the process of performing LFPR and extracting two or more LFPRs is a symbol matrix X based on successive data patterns and pattern waveforms. Np and constructing a waveform matrix Y and a switch matrix based on the type of multi-pulse used; and Npa process of generating an extended symbol matrix using the extended symbol matrix, a process of obtaining a coefficient matrix from the extended symbol matrix, and a process of reading pulse samples of each pulse from the coefficient matrix to obtain the two or more LFPRs.

[0134] Example 10 is the test and measurement apparatus of Example 9, wherein the one or more processors are further configured to cause the one or more processors to perform a process of obtaining a matrix multiplication of the coefficient matrix and the extended symbol matrix and then subtracting the waveform matrix Y to construct an error matrix E.

[0135] Example 11 is the test and measurement device of any of Examples 1 to 10, wherein the one or more processors are further configured to execute a program that causes the one or more processors to perform a process of averaging multiple repetitions of the pattern waveform to generate an averaged pattern waveform as the pattern waveform.

[0136] Example 12 is a method of calibrating a transmitter, comprising: obtaining a waveform from a signal received from the transmitter; deriving a pattern waveform from the waveform using either hardware or software clock recovery; performing a linear approximated pulse response (LFPR) extraction process on the pattern waveform to extract two or more LFPRs; determining a reference pulse response from the two or more LFPRs; comparing at least one LFPR with the reference pulse response to determine a difference; and tuning the transmitter to reduce the difference.

[0137] Example 13 is the method of example 12, wherein the process of performing the LFPR extraction process to extract two or more LFPRs includes any one of a process of extracting pulses from even unit intervals and odd unit intervals, a process of extracting symbol pulses, or a process of extracting symbol pulses from even unit intervals and odd unit intervals.

[0138] Example 14 is the method of any of Examples 12 or 13, wherein the process of determining the reference pulse response includes a process of determining an average pulse, and the process of determining the reference pulse includes a process of normalizing two or more LFPRs, a process of calculating the average pulse, and a process of using the average pulse as the reference pulse.

[0139] Example 15 is the method of any of Examples 12 to 14, wherein the process of obtaining the reference pulse response includes a process of comparing two or more LFPRs, one of which serves as the reference pulse.

[0140] Example 16 is the method of any one of Examples 12 to 15, further comprising repeating the processes of acquiring the waveform, deriving the pattern waveform, extracting an LFPR, determining the reference pulse response, comparing with the reference pulse response, and tuning the DUT until the difference is minimized.

[0141] Example 17 is the method of any of examples 12 to 16, further comprising averaging multiple repetitions of the pattern waveform to generate the averaged pattern waveform as the pattern waveform.

[0142] Example 18 is a test and measurement apparatus comprising one or more ports configured to receive signals from one or more devices under test (DUTs) and one or more processors configured to execute a program that causes the one or more processors to perform the following processes: acquire a waveform from the signal; derive a pattern waveform from the waveform using either hardware or software clock recovery; perform a linear approximated pulse response (LFPR) extraction process on the pattern waveform to extract two or more pulse responses from the pattern waveform; provide one or more data representations including a data representation of the two or more pulse responses to a machine learning network to generate a measurement prediction value of the DUT; and receive the measurement prediction value of the DUT from the machine learning network.

[0143] Example 19 is the test and measurement instrument of Example 18, wherein the one or more data representations include one or more of a vertical histogram of the entire pattern waveform, a vertical histogram at the center of a unit interval of the eye diagram representation of the pattern waveform, two vertical histograms near the center of a unit interval of the eye diagram, and a horizontal histogram at an edge of a crossing level of the eye diagram.

[0144] Example 20 is the test and measurement instrument of any of Examples 18 or 19, wherein the machine learning network employs a neural network for processing one-dimensional data, and the program for causing the one or more processors to process the one or more data representations includes a program for causing the one or more processors to process the one or more data representations to provide a one-dimensional data set including a vertical histogram at the center of the eye of an eye diagram representation of the waveform.

[0145] Example 21 is a test and measurement instrument of any of Examples 18 to 20, wherein the machine learning network employs a neural network for processing two-dimensional data, and the program for causing the one or more processors to perform processing to provide the one or more data representations includes a program for causing the one or more processors to perform processing to provide a two-dimensional data set including two or more extracted pulse responses and at least one histogram.

[0146] Example 22 is the test and measurement instrument of example 21, wherein the two-dimensional data includes pixels having a darkness corresponding to either the amplitude of the extracted pulse response or the number of hits in a histogram.

[0147] Example 23 is a test and measurement device of any of Examples 18 to 22, wherein the program that causes the one or more processors to perform a process of providing the one or more data representations to the machine learning network causes the one or more processors to perform a process of normalizing the one or more data representations before providing the one or more data representations to the machine learning network, and a process of de-normalizing a predicted value of a measurement value received from the machine learning network.

[0148] Example 24 is a test and measurement device of any of Examples 18 to 23, wherein the program that causes the one or more processors to process the one or more data representations of two or more pulse responses to the machine learning network includes a program that causes the one or more processors to process the one or more data representations to provide the machine learning network with data representations relating to measurements including one or more of a noise distortion ratio (SNDR), a signal-to-noise ratio (SNR), jitter, and a transmitter dispersion eye closure quaternary (TDECQ).

[0149] Example 25 is a test and measurement device of any of Examples 18 to 24, wherein the one or more processors are further configured to execute a program that causes the one or more processors to perform a process to train the machine learning network on selected measurements.

[0150] Example 26 is a test and measurement device of any of Examples 18 to 25, wherein the program for causing the one or more processors to perform a process to extract the two or more pulse responses includes a program for causing the one or more processors to perform a process to extract any one of a linear fit pulse response (LFPR), an impulse response, and a step response.

[0151] Example 27 is a test and measurement instrument of any of Examples 18 to 27, wherein the one or more processors are further configured to execute a program that causes the one or more processors to perform a process of averaging multiple repetitions of the pattern waveform to generate an averaged pattern waveform as the pattern waveform.

[0152] In addition, the present description refers to specific features. It should be understood that the disclosure herein includes all possible combinations of those specific features. When a specific feature is disclosed in connection with a particular aspect or embodiment, that feature can also be used in connection with other aspects and embodiments, to the extent possible.

[0153] Furthermore, when the application refers to a method having two or more defined steps or processes, those defined steps or processes may be performed in any order or simultaneously, unless the context precludes such a possibility.

[0154] All features disclosed in the specification, claims, abstract and drawings, and all steps in any disclosed method or process, may be combined in any combination, except where at least some of such features or steps are mutually exclusive combinations. Each feature disclosed in the specification, abstract, claims and drawings may be replaced by an alternative feature serving the same, equivalent or similar purpose, unless expressly stated otherwise.

[0155] For purposes of illustration, specific embodiments of the invention have been illustrated and described, but it will be understood that various modifications can be made without departing from the spirit and scope of the invention. Accordingly, the invention should not be limited, except as by the appended claims. [Explanation of symbols]

[0156] 10 Test and measurement equipment 12 One or more processors 13 One or more ports 14 Device Under Test (DUT) 16 Measuring device probe 20 Clock Recovery Unit (CRU) 22 Memory 24 Reference Equalizer and Analysis Module 26 User Interface 30 Machine Learning Networks 41 Input Layer 43 Hidden Layer 45 Output layer

Claims

1. 1. A test and measurement device comprising: a port that enables the test and measurement instrument to receive signals from a device under test (DUT); One or more processors Equipped with the one or more processors obtaining a waveform from the signal; deriving a pattern waveform from the waveform using either hardware or software clock recovery; performing a linear fit pulse response (LFPR) extraction process on the pattern waveform to extract two or more LFPRs; determining a reference pulse response from the two or more LFPRs; comparing at least one of the LFPRs to the reference pulse response to determine a difference; tuning the DUT to reduce the difference; and a test and measurement instrument configured to execute a program that causes the one or more processors to:

2. 2. The test and measurement instrument of claim 1, wherein the program for causing the one or more processors to perform an LFPR extraction process to extract two or more LFPRs includes a program for causing the one or more processors to perform any one of a process of extracting LFPRs for pulses in even unit intervals and odd unit intervals, a process of extracting LFPRs for pulses of a symbol, or a process of extracting LFPRs for pulses of a symbol in even unit intervals and odd unit intervals.

3. a program for causing the one or more processors to perform a process for determining the reference pulse response, normalizing the two or more LFPRs; A process for determining an average pulse; using said average pulse as said reference pulse; 2. The test and measurement instrument of claim 1, further comprising a program for causing said one or more processors to:

4. 2. The test and measurement instrument of claim 1, further configured to cause one or more processors to repeat the processes of acquiring the waveform, deriving the pattern waveform, extracting the LFPR, determining the reference pulse response, comparing with the reference pulse response, and tuning the DUT until the difference is minimized.

5. A program for causing the one or more processors to perform a process of performing LFPR and extracting two or more LFPRs, A symbol matrix X is generated based on the continuous data pattern and the pattern waveform. Np and constructing a waveform matrix Y; constructing a switch matrix based on the type of multi-pulse being used; The switch matrix and X Np and creating an extended symbol matrix using A process of obtaining a coefficient matrix from the extended symbol matrix; reading pulse samples for each of the pulses from the coefficient matrix to obtain the two or more LFPRs; 2. The test and measurement instrument of claim 1, further comprising a program for causing said one or more processors to:

6. the one or more processors 6. The test and measurement instrument of claim 5, further configured to cause the one or more processors to perform a matrix multiplication of the coefficient matrix and the extended symbol matrix and then subtract the waveform matrix Y to construct an error matrix E.

7. 1. A method of calibrating a transmitter, comprising: obtaining a waveform from a signal received from the transmitter; deriving a pattern waveform from said waveform using either hardware or software clock recovery; performing a linear fit pulse response (LFPR) extraction process on the pattern waveform to extract two or more LFPRs; determining a reference pulse response from the two or more LFPRs; Comparing at least one LFPR to the reference pulse response to determine a difference; tuning said transmitter to reduce said difference; A method for calibrating a transmitter comprising:

8. 8. The method of calibrating a transmitter as recited in claim 7, wherein performing an LFPR extraction process to extract two or more LFPRs includes any one of a process of extracting pulses from even and odd unit intervals, a process of extracting symbol pulses, or a process of extracting symbol pulses from even and odd unit intervals.

9. The process of determining the reference pulse response includes a process of determining an average pulse, and the process of determining the reference pulse includes: normalizing the two or more LFPRs; A process of calculating the average pulse; using said average pulse as said reference pulse; 8. The method of claim 7, comprising:

10. 1. A test and measurement device comprising: one or more ports configured to receive signals from one or more devices under test (DUTs); One or more processors Equipped with The one or more processors obtaining a waveform from the signal; deriving a pattern waveform from said waveform using either hardware or software clock recovery; performing a linear fit pulse response (LFPR) extraction process on the pattern waveform to extract two or more pulse responses from the pattern waveform; providing one or more data representations, including the data representations of the two or more pulse responses, to a machine learning network to generate a measurement prediction for the DUT; receiving the measurement predictions of the DUT from the machine learning network; a test and measurement instrument configured to execute a program that causes the one or more processors to perform the steps of:

11. 11. The test and measurement instrument of claim 10, wherein the one or more data representations include one or more of a vertical histogram of the entire pattern waveform, a vertical histogram at the center of a unit interval of the eye diagram representation of the pattern waveform, two vertical histograms near the center of a unit interval of the eye diagram, and a horizontal histogram at an edge of a crossing level of the eye diagram.

12. 11. The test and measurement instrument of claim 10, wherein the machine learning network employs a neural network for processing one-dimensional data, and wherein the program causing the one or more processors to process to provide the one or more data representations comprises program causing the one or more processors to process to provide a one-dimensional data set comprising a vertical histogram of a center of an eye of an eye diagram representation of the waveform.

13. 11. The test and measurement instrument of claim 10, wherein the machine learning network employs a neural network for processing two-dimensional data, and wherein the program for causing the one or more processors to process the one or more data representations includes a program for causing the one or more processors to process the one or more data representations to provide a two-dimensional data set including two or more extracted pulse responses and at least one histogram.

14. The test and measurement instrument of claim 10, wherein the program that causes the one or more processors to perform a process of providing the one or more data representations to the machine learning network causes the one or more processors to perform a process of normalizing the one or more data representations before providing the one or more data representations to the machine learning network, and a process of de-normalizing measurement prediction values ​​received from the machine learning network.

Citation Information

Patent Citations

  • Measurement method and test and measurement system

    JP2022179459A

  • Communication link equalization process, computing device, and equalizer optimization method

    JP2022183142A

  • Test and measurement instrument and measuring method

    JP2024001002A

  • Explicit solution for DFE optimization with constraints

    US11765002B2

  • Short pattern waveform database based machine learning for measurement

    US20220373598A1