This disclosure relates to test and measurement systems, and more particularly to systems for component tuning and performance measurements.
Machine learning techniques can significantly improve the speed of complex measurements, such as Transmitter Dispersion Eye Closure Quaternary (TDECQ) measurements, for example. The measurement speed improvements translate to the improvement of production throughput on a manufacturing line, for example.
Saving time on the manufacturing line for testing and validation of the performance of devices under test (DUT) can save tens of thousands of dollars.
Testing a device under test (DUT) using machine learning may involve an iterative process in which the DUT receives a set of tuning parameters. When the DUT operates using that set of tuning parameters, it produces results for measurement against a value or range of values that determine if the device passes or fails. The below discussion may employ examples of tuning and testing an optical transmitter or transceiver to provide a contextual example. The embodiments here apply to any DUT that undergoes a testing process to determine whether the DUT operates as needed to pass.
Alternatively, or in addition to, the user interface on the test and measurement instrument, the user interface 34 on the test automation platform 30 may allow the user to configure the test and measurement instrument, as well as provide settings and other information for the test automation platform and the overall system. The test automation platform may comprise a piece of testing equipment or other computing device. While the platform may reside on a manufacturer's production line, no limitation to any particular location or use in any particular situation is intended nor should be implied. The test automation platform may also include one or more processors represented by 32 and a memory 36. As discussed in more detail further, the one or more processors 12 on the test and measurement device 10, and the one or more processors 32 on the test automation platform 30, may work in concert to distribute tasks, or one or the other device's processor(s) may perform all of the tasks. The machine learning network discussed below may take the form of one of these processors being configured to operate one or more of the machine learning networks.
Embodiments of the disclosure may comprise a configuration implemented into a standalone software application, referred to in the following discussion as “ML Tools.” The test automation system operates a test automation application as the primary system controller in the loop. It sends operating, or tuning, parameters to the DUT and controls the temperature. In the instance of the DUT being an optical transceiver, the parameters comprise transmission parameters. This approach may be found in U.S. patent application Ser. No. 17/701,186, “TRANSCEIVER TUNING USING MACHINE LEARNING,” filed Mar. 22, 2022, incorporated here by reference in its entirety. The test automation application also synchronizes the instrument waveform acquisition with the transmission/operating parameter update. In addition, it provides the transmission/operating parameter values to the ML Tools software, and it reads next guess parameter values back from the neural network. The neural network estimates results based on the waveform acquired from the scope.
The machine learning assisted parameter tuning system has two modes of operation: training and runtime. During the training process, the test automation application sends a set of parameters to the DUT and acquires a resulting waveform. The user will be sweeping the parameters to allow the machine to learn what waveforms look like for all parameter settings. The test automation block then feeds a large set of waveforms and parameters to the ML Tools as datasets for training the machines, which also may be referred to as machine learning networks.
During runtime, the trained machines create an estimate for optimized equalization filter taps, usually Feed-Forward Equalization (FFE) taps for the waveform, and for creating an observed parameter set. Application of the FFE taps equalize the input waveform. The TDECQ computation process then uses the equalized waveform as an input. The TDECQ process will typically not use machine learning to obtain TDECQ, but rather computes it using existing measurement processes.
The TDECQ process will typically use existing methods for measuring TDECQ. It takes an input waveform and equalizes it with the optimized taps. It then performs the necessary steps internally to measure TDECQ and output that value. It returns that value to the test automation application for evaluation as to pass/fail.
Runtime has the objective to tune the optical transmitters, in this example, on a test automation platform. As discussed above, this may comprise a manufacturing test automation platform running on manufacturer's production line. The test automation application controls the overall system, sets up the DUT with parameters, and sets up a test and measurement instrument to acquire the DUT waveform. The test automation application sends the waveform and parameters over to the tuning system. The system observes the waveform and determines if that set of parameters resulted in an optimal waveform that passes limits on the TDECQ value. If it does not, then the system feeds back a new set of parameters to the test automation application that loads them into the DUT for another try. DUTs that have values for TDECQ that are within the desired parameters pass and are considered optimized.
An advantage of this system that combines TDECQ speed up and tuning parameter determination lies in the need for the waveform tensor generator to run only one time. Another advantage results from only needing one trained neural network for both TX tuning and TDECQ observation. This system offers a better-engineered design and a better user experience than using a separate third-party TDECQ measurement requiring separate training procedures for the tuning procedure and the TDECQ measurement.
Aspects of the disclosure may operate on a particularly created hardware, on firmware, digital signal processors, or on a specially programmed general purpose computer including a processor operating according to programmed instructions. The terms controller or processor as used herein are intended to include microprocessors, microcomputers, Application Specific Integrated Circuits (ASICs), and dedicated hardware controllers. One or more aspects of the disclosure may be embodied in computer-usable data and computer-executable instructions, such as in one or more program modules, executed by one or more computers (including monitoring modules), or other devices. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device. The computer executable instructions may be stored on a non-transitory computer readable medium such as a hard disk, optical disk, removable storage media, solid state memory, Random Access Memory (RAM), etc. As will be appreciated by one of skill in the art, the functionality of the program modules may be combined or distributed as desired in various aspects. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, FPGA, and the like. Particular data structures may be used to more effectively implement one or more aspects of the disclosure, and such data structures are contemplated within the scope of computer executable instructions and computer-usable data described herein.
The disclosed aspects may be implemented, in some cases, 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 or non-transitory computer-readable media, which may be read and executed by one or more processors. Such instructions may be referred to as a computer program product. Computer-readable media, as discussed herein, means any media that can be accessed by a computing device. By way of example, and not limitation, computer-readable media may comprise computer storage media and communication media.
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 RAM, ROM, Electrically Erasable Programmable Read-Only Memory (EEPROM), flash memory or other memory technology, Compact Disc 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 nonvolatile, removable or non-removable media implemented in any technology. Computer storage media excludes signals per se and transitory forms of signal transmission.
Communication media means any media that can be used for the communication of computer-readable information. By way of example, and not limitation, communication media may include coaxial cables, fiber-optic cables, air, or any other media suitable for the communication of electrical, optical, Radio Frequency (RF), infrared, acoustic or other types of signals.
Additionally, this written description makes reference to particular features. It is to be understood that the disclosure in this specification includes all possible combinations of those particular features. For example, where a particular feature is disclosed in the context of a particular aspect, that feature can also be used, to the extent possible, in the context of other aspects.
Also, when reference is made in this application to a method having two or more defined steps or operations, the defined steps or operations can be carried out in any order or simultaneously, unless the context excludes those possibilities.
All features disclosed in the specification, including the claims, abstract, and drawings, and all the steps in any method or process disclosed, may be combined in any combination, except combinations where at least some of such features and/or steps are mutually exclusive. Each feature disclosed in the specification, including the claims, abstract, and drawings, can be replaced by alternative features serving the same, equivalent, or similar purpose, unless expressly stated otherwise.
Illustrative examples of the disclosed technologies are provided below. An embodiment of the technologies may include one or more, and any combination of, the examples described below.
Example 1 is test and measurement system, comprising: a test and measurement instrument; a test automation platform; and one or more processors, the one or more processors configured to execute code that causes the one or more processors to: receive a waveform created by operation of a device under test; generate one or more tensor arrays; apply machine learning to a first tensor array of the one or more tensor arrays to produce equalizer tap values; apply machine learning to a second tensor array of the one of the one or more tensor arrays to produce predicted tuning parameters for the device under test; use the equalizer tap values to produce a Transmitter and Dispersion Eye Closure Quaternary (TDECQ) value; and provide the TDECQ value and the predicted tuning parameters to the test automation platform.
Example 2 is the test and measurement system of Example 1, wherein the first tensor array comprises a plurality of tensor images, each tensor image in the tensor array having one waveform.
Example 3 is the test and measurement system of either of Examples 1 or 2, wherein the second tensor array comprises a plurality of tensor images, each tensor image in the tensor array having three or more waveforms.
Example 4 is the test and measurement system of any of Examples 1 through 3, wherein the code that causes the one or more processors to apply machine learning to the first tensor array and the code that causes the one or more processors to apply machine learning to the second tensor array operates within a same machine learning network.
Example 5 is the test and measurement system of any of Examples 1 through 4, wherein the code that causes the one or more processors to apply machine learning to the first tensor array and the code that causes the one or more processors to apply machine learning to the second tensor array operates in separate machine learning networks for each tensor array.
Example 6 is the test and measurement system of Examples 1 through 5, wherein the one or more processors are further configured to execute code to cause the one or more processors to train one or more machine learning networks, the code to cause the one or more processors to: receive a training waveform; use the training waveform to produce training equalizer tap values; generate one or more training tensor arrays from the training waveform; and provide the one or more training tensor arrays, the training equalizer taps, and tuning parameters associated with the training waveform to the one or more machine learning networks as a training data set.
Example 7 is the test and measurement system of Example 6, wherein the one or more machine learning networks comprises two machine learning networks, a first machine learning network trainable to produce the equalizer tap values and a second machine learning network trainable to produce the predicted tuning parameters.
Example 8 is the test and measurement system of Example 7, wherein the one or more processors are further configured to execute code to cause the one or more processors to train the first machine learning network, the code to cause the one or more processors to: receive a training waveform; use the training waveform to produce training equalizer tap values; generate one training tensor array from the training waveform, each tensor image in the training tensor array having one waveform; and provide the training tensor array, and the training equalizer taps to the first machine learning network as a training data set.
Example 9 is the test and measurement system of Example 7, wherein the one or more processors are further configured to execute code to cause the one or more processors to train the second machine learning network, the code to cause the one or more processors to: receive a training waveform; generate one training tensor array from the training waveform, each tensor image in the training tensor array having three or more waveforms; and provide the training tensor array and tuning parameters associated with the training waveform to the second machine learning network as a training data set.
Example 10 is the test and measurement system of any of Examples 1 through 9, wherein the one or more processors comprise one or more processors that reside in at least one of the test and measurement instrument and the test automation platform.
Example 11 is the test and measurement system of any of Examples 1 through 10, wherein the device under test comprises an optical transceiver or an optical transmitter.
Example 12 is the test and measurement system of Example 11, further comprising a probe comprising an optical fiber to receive an optical signal and an optical to electrical converter to generate an electrical signal from the optical signal, the electrical signal to be converted into the waveform.
Example 13 is a method of testing a device under test, comprising: receiving a waveform created by operation of a device under test; generating one or more tensor arrays; applying machine learning to a first tensor array of the one or more tensor arrays to produce equalizer tap values; applying machine learning to a second tensor array of the one or more tensor arrays to produce predicted tuning parameters for the device under test; using the equalizer tap values to produce a Transmitter Dispersion Eye Closure Quaternary (TDECQ) value; and providing the TDECQ value and the predicted tuning parameters to a test automation platform.
Example 14 is the method of Example 13, wherein the first tensor array comprises a plurality of tensor images, each tensor image in the tensor array having one waveform.
Example 15 is the method of either of Examples 13 or 14, wherein the second tensor array comprises a plurality of tensor images, each tensor image in the tensor array having three waveforms.
Example 16 is the method of any of Examples 13 through 15, wherein the applying machine to the first tensor array and applying machine learning to the second tensor array comprises applying machine learning by one machine learning network.
Example 17 is the method of any of Examples 13 through 15, wherein applying machine learning to the first tensor array comprises applying machine learning using a first machine learning network, and applying machine learning to the second tensor array comprises applying machine learning using a second machine learning network.
Example 18 is the method of any of Examples 13 through 17, further comprising training one or more machine learning networks, the training comprising: receiving a training waveform;
using the training waveform to produce training equalizer tap values; generating one or more training tensor arrays from the training waveform; and providing the one or more training tensor arrays, the training equalizer tap values, and tuning parameters associated with the training waveform to the one or more machine learning networks as a training data set.
Example 19 is the method of Example 18, wherein training one or more machine networks comprises training a first machine learning network and a second machine learning network, the training comprising: using the training waveform to produce training equalizer tap values; generating a first training tensor array from the training waveform, each tensor image in the first training tensor array having one waveform image; generating a second training tensor array, each tensor image in the second training tensor array having three or more waveform images; providing the first training tensor array, and the training equalizer taps to the first machine learning network as a training data set; and providing the second training tensor arrays and tuning parameters associated with the training waveform to the second machine learning network as a training data set.
Example 20 is the method of any of Examples 13 through 19, wherein receiving a waveform signal resulting from operation of a DUT comprises receiving an optical signal from the DUT and converting the optical signal into an electrical signal to be converted to the waveform.
Although specific aspects of the disclosure have been illustrated and described for purposes of illustration, it will be understood that various modifications may be made without departing from the spirit and scope of the disclosure. Accordingly, the disclosure should not be limited except as by the appended claims.
This disclosure claims benefit of U.S. Provisional Application No. 63/232,378, titled “COMBINED TDECQ AND TRANSMITTER TUNING MACHINE LEARNING SYSTEM,” filed on Aug. 12, 2021, the disclosure of which is incorporated herein by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
5272723 | Kimoto | Dec 1993 | A |
5397981 | Wiggers | Mar 1995 | A |
5594655 | Berchin | Jan 1997 | A |
7181146 | Yorks | Feb 2007 | B1 |
7298463 | French | Nov 2007 | B2 |
8583395 | Dybsetter | Nov 2013 | B2 |
8861578 | Lusted | Oct 2014 | B1 |
9059803 | Detofsky | Jun 2015 | B2 |
9337993 | Lugthart | May 2016 | B1 |
9548858 | Cirit | Jan 2017 | B1 |
9699009 | Ainspan | Jul 2017 | B1 |
10171161 | Cote | Jan 2019 | B1 |
10236982 | Zhuge | Mar 2019 | B1 |
10270527 | Mentovich | Apr 2019 | B1 |
10396897 | Malave | Aug 2019 | B1 |
10585121 | Absher | Mar 2020 | B2 |
10727973 | Kumar | Jul 2020 | B1 |
10852323 | Schaefer | Dec 2020 | B2 |
10863255 | Zhang | Dec 2020 | B2 |
11005697 | Liston | May 2021 | B2 |
11040169 | Jung | Jun 2021 | B2 |
11095314 | Medard | Aug 2021 | B2 |
11177986 | Ganesan | Nov 2021 | B1 |
11233561 | O'Shea | Jan 2022 | B1 |
11237190 | Rule | Feb 2022 | B2 |
11336378 | Buttoni | May 2022 | B2 |
11388081 | Sommers | Jul 2022 | B1 |
11476967 | Geng | Oct 2022 | B2 |
11646863 | Balan | May 2023 | B2 |
11695601 | Sudhakaran | Jul 2023 | B2 |
20020063553 | Jungerman | May 2002 | A1 |
20030053170 | Levinson | Mar 2003 | A1 |
20030220753 | Pickerd | Nov 2003 | A1 |
20040032889 | Hikada | Feb 2004 | A1 |
20040121733 | Peng | Jun 2004 | A1 |
20040131365 | Lee | Jul 2004 | A1 |
20040136422 | Mahowald | Jul 2004 | A1 |
20040165622 | Lu | Aug 2004 | A1 |
20040236527 | Felps | Nov 2004 | A1 |
20050222789 | West | Oct 2005 | A1 |
20050246601 | Waschura | Nov 2005 | A1 |
20050249252 | Sanchez | Nov 2005 | A1 |
20060120720 | Hauenschild | Jun 2006 | A1 |
20210111794 | Huang | Jun 2006 | A1 |
20080126001 | Murray | May 2008 | A1 |
20080159737 | Noble | Jul 2008 | A1 |
20080212979 | Ota | Sep 2008 | A1 |
20090040335 | Ito | Feb 2009 | A1 |
20110085793 | Oomori | Apr 2011 | A1 |
20110161738 | Zhang | Jun 2011 | A1 |
20110286506 | Libby | Nov 2011 | A1 |
20130046805 | Smith | Feb 2013 | A1 |
20140093233 | Gao | Apr 2014 | A1 |
20140343883 | Libby | Nov 2014 | A1 |
20150003505 | Lusted | Jan 2015 | A1 |
20150055694 | Juenemann | Feb 2015 | A1 |
20150207574 | Schoen | Jul 2015 | A1 |
20160191168 | Huang | Jun 2016 | A1 |
20160328501 | Chase | Nov 2016 | A1 |
20180006721 | Ishizaka | Jan 2018 | A1 |
20180074096 | Absher | Mar 2018 | A1 |
20180204117 | Brevdo | Jul 2018 | A1 |
20190038387 | Chu | Feb 2019 | A1 |
20190278500 | Lakshmi | Sep 2019 | A1 |
20190332941 | Towal | Oct 2019 | A1 |
20190370158 | Rivoir | Dec 2019 | A1 |
20190370631 | Fais | Dec 2019 | A1 |
20200035665 | Chuang | Jan 2020 | A1 |
20200057824 | Yeh | Feb 2020 | A1 |
20200166546 | O'Brien | May 2020 | A1 |
20200195353 | Ye | Jun 2020 | A1 |
20200229206 | Badic | Jul 2020 | A1 |
20200313999 | Lee | Oct 2020 | A1 |
20200335029 | Gao | Oct 2020 | A1 |
20210041499 | Ghosal | Feb 2021 | A1 |
20210105548 | Ye | Apr 2021 | A1 |
20210160109 | Seol | May 2021 | A1 |
20210167864 | Razzell | Jun 2021 | A1 |
20210314081 | Shattil | Oct 2021 | A1 |
20210389373 | Pickerd | Dec 2021 | A1 |
20210390456 | Pickerd | Dec 2021 | A1 |
20220070040 | Namgoong | Mar 2022 | A1 |
20220076715 | Lee | Mar 2022 | A1 |
20220121388 | Woo | Apr 2022 | A1 |
20220182139 | Zhang | Jun 2022 | A1 |
20220199126 | Lee | Jun 2022 | A1 |
20220200712 | Lillie | Jun 2022 | A1 |
20220215865 | Woo | Jul 2022 | A1 |
20220236326 | Schaefer | Jul 2022 | A1 |
20220239371 | Xu | Jul 2022 | A1 |
20220247648 | Pickerd | Aug 2022 | A1 |
20220311513 | Pickerd | Sep 2022 | A1 |
20220311514 | Smith | Sep 2022 | A1 |
20220334180 | Pickerd | Oct 2022 | A1 |
20220373597 | Agoston | Nov 2022 | A1 |
20220373598 | Tan | Nov 2022 | A1 |
20220385374 | Arikawa | Dec 2022 | A1 |
20220390515 | Pickerd | Dec 2022 | A1 |
20220407595 | Varughese | Dec 2022 | A1 |
20230050162 | Tan | Feb 2023 | A1 |
20230052588 | Sudhakaran | Feb 2023 | A1 |
20230088409 | Parsons | Mar 2023 | A1 |
20230098379 | Smith | Mar 2023 | A1 |
20230228803 | Sun | Jul 2023 | A1 |
20230306578 | Pickerd | Sep 2023 | A1 |
Number | Date | Country |
---|---|---|
107342810 | Nov 2019 | CN |
2743710 | Sep 2018 | EP |
3936877 | Jan 2022 | EP |
6560793 | Aug 2019 | JP |
2021092156 | May 2021 | WO |
2022171645 | Aug 2022 | WO |
2022189613 | Sep 2022 | WO |
Entry |
---|
S. Varughese, A. Melgar, V. A. Thomas, P. Zivny, S. Hazzard and S. E. Ralph, “Accelerating Assessments of Optical Components Using Machine Learning: TDECQ as Demonstrated Example,” in Journal of Lightwave Technology, vol. 39, No. 1, pp. 64-72, 1 Jan. 1, 2021 (Year: 2021). |
Varughese, Siddarth, et al., Accelerating Assessments of Optical Components Using Machine Learning: TDECQ as Demonstrated Example, Journal of Lightwave Technology, Jan. 1, 2021, pp. 64-72, vol. 39, No. 1, IEEE. |
Varughese, Siddarth, et al., Accelerating TDECQ Assessments using Convolutional Neural Networks, OFC, Mar. 2020, 3 pages, The Optical Society (OSA). |
Watts et al., “Performance of Single-Mode Fiber Links Using Electronic Feed-Forward and Decision Feedback Equalizers”, 2005, IEEE Photonics Techology Letters, vol. 17, No. 10, pp. 2206-2208 (Year: 2005). |
Echeverri-Chacon et al., “Transmitter and Dispersion Eye Closure Quaternary (TDECQ) and Its Sensitivity to Impairments in PAM4 Waveforms”, 2019, Journal of Lightwave Technology, vol. 37, No. 3, pp. 852-860 (Year: 2019). |
Wang et al., “Intelligent Constellation Diagram Analyzer Using Convolutional Neural Network-Based Deep Learning,” Optics Express, Jul. 24, 2017, vol. 25, No. 15. |
Number | Date | Country | |
---|---|---|---|
20230050303 A1 | Feb 2023 | US |
Number | Date | Country | |
---|---|---|---|
63232378 | Aug 2021 | US |