This disclosure relates to test and measurement systems, and more particularly to test and measurement systems that operate in a parallel fashion.
An automated test system including a test and measurement instrument, such as an oscilloscope (“scope”), often cannot compute measurements fast enough for the needs of the user. Some measurements require significant processing time. This is a significant problem in environments such as manufacturing test, where reduction of test time and maximization of throughput are important objectives. Some have proposed parallel/pipeline waveform processing in a cloud computing environment or additional PCs or other processing devices. But, there is presently no way to coordinate and operate multiple test devices that each run independently. This problem grows with the increasing precision and speed of modern test and measurement equipment, which include input signal sampling rates up to billions or trillions of times per second.
Embodiments of this disclosure address these and other deficiencies in the state of the art.
Embodiments of the disclosure generally include a test system architecture for improving the speed of an automated test system.
In general, the test and measurement system described herein includes a primary instrument for acquiring a test signal from a Device Under Test (DUT), and one or more secondary instruments that perform various measurements on the acquired test signal. If present, a master test controller, as described below, drives coordination between all of the devices in the test system, and provides a display that simultaneously presents the output of all of the devices in a single display. If the master controller is not present, the primary instrument may include the functionality to drive the testing system. Further, a user interface allows the user to control any or all of the coupled devices from a single control panel.
Although this disclosure describes an embodiment of the architecture that includes one or more oscilloscopes as the primary test and measurement instrument, one of ordinary skill in the art will recognize that embodiments according to the disclosure may include and/or be used with many other types of signal analysis instruments, in addition to oscilloscopes, that require significant measurement computation and/or processing time.
The primary instrument 110 may also send control signals to the secondary instruments 150 through a control line 114. In some embodiments, such as the ones described below, a master test controller 130 is primarily responsible for sending the control signals on the control line 114. In other embodiments both the master test controller 130 and the primary instrument 110 may send the control signals. In any case, the control signals carried on the control line 114 control the operation of the secondary instruments 150. Further description herein describes the control signals coming from the master test controller 130, although embodiments of the invention are not required to use the master test controller, and instead such functionality may be performed by the primary instrument 110. In some embodiments, the master test controller 130 may be implemented as software running on the primary instrument 110, or on other hardware. Also, although only a single primary instrument 110 is illustrated in
In some embodiments, one or more additional instruments, different from the primary instrument 110 and the secondary instruments 150, may be used in the system. The example test system 100 of
In general, the user will set up the various secondary instruments 150 to each perform different measurements or perform other analysis on the test waveforms. Then, output from the secondary instruments 150 is sent back to the master test controller 130, or even to the primary instrument 110, where it is viewed on a user interface that shows the output from each of the secondary instruments 150, as described and illustrated below.
The master test controller 200 itself may operate on a specific hardware device, such as a computer. The computer includes one or more processors 290, as well as memory 292 used to store one or more programs to operate the master test controller 200. The memory 292 may additionally store data or other information relevant to the master test controller 200.
The master controller 200 may include multiple displays for viewing outputs from the various devices in the test and measurement system 100 of
Control and setup of the various primary and secondary instruments is performed through interfaces 240, 250, of the master test controller 200. The interfaces 240, 250 of the test controller 200 of
A graphical interface 250 may be used instead of, or in addition to, the programmatic interface 240. An example graphical interface is described with reference to
Either or both of the programmatic interface 240 and graphical interface 250 may use various functions to control the operation of the test system 100. A scheduler 260 may be a collection of particular operations or functions that operate on the processor 290 to schedule operation of the test system 100. For example, the scheduler 260 may be used to set up and initiate particular operations of the secondary instruments 150. A synchronizer 270 may be used to ensure all the primary instrument 110 and secondary instruments 150 are operating on the same portion of the test waveform, so all of the output displays in the array 230 are synchronized to one another. The synchronizer 270 may send periodic signals to the secondary instruments 150 to keep them in alignment, for example. Or, the synchronizer 270 may specify that the testing of the test waveform is to begin at a particular portion of the test waveform, such as 15.3000 seconds. Then each of the connected instruments 110, 150, and any other instrument of the test system 100 sets its starting point for analysis at the exact specified time. When initiated by a start or run command, all of the secondary instruments operate on their local copy of the test waveform and produce their individual test results, which are then sent back to the master controller 200 for viewing on the array 230 of displays. The synchronizer 270 may send signals periodically to the primary instrument 110 and secondary instruments 150 during the testing to ensure each instrument continues to operate synchronously.
In some embodiments the synchronizer 270 is used to implement a debug feature, where each of the secondary instruments 150 operate for a specified or pre-determined time and then simultaneously stop operating and are placed in a wait state, while the operator analyzes the output of the secondary instruments 150 in the array 230 of displays. Then, the operator may execute a command, such as by pressing a ‘step’ button on the master test controller 130, to cause the primary instrument 110 and all the secondary instruments 150 to proceed again, for the specified time, and again enter a wait state. The specified time may be very short, measured in fractions of a second. In other embodiments the next debug state is determined by features of the waveform itself, rather than being limited by time. In other embodiments the primary instrument 110 or master controller 200 may be configured to detect a triggering event at which time a ‘stop’ command is sent to all of the secondary instruments 150. This ensures the secondary instruments remain synchronized when they again start measuring the test waveform. Such fine time, event, and trigger control allows the user to evaluate many facets of the test waveform quickly and simultaneously by evaluating the output of all of the primary instrument 110 and secondary instruments 150 at the same time. The master test controller 130 generates the commands to control the simultaneous operation of all of the secondary instruments 150.
A task manager 280 may further be used by either or both the programmatic interface 240 and graphical interface 250 to coordinate various operations between and amongst the primary instrument 110 and secondary instruments 150, as described below.
The output of the programmatic interface 240 and/or graphical interface 250, and any or all of the scheduler 260, synchronizer 270, and task manager 280 is sent to the primary instrument 110 and secondary instruments 150 through the control line, such as the control line 114 of
The primary test instrument 300 accepts an input signal from the DUT and may perform typical waveform processing in a waveform processor 320. Such processing may include generating samples from the input signal to create a waveform, filtering, extracting a clock signal, or converting the input signals from analog to digital signals, for instance. In other embodiments little or no processing is done to the input signal, and instead the signal is received and stored in its raw state. A waveform duplicator 330 selects a desired portion of the input signal and creates copies of the waveform to be sent to the secondary instruments 150 (
The primary instrument 300 may include a programmatic interface 340 and/or a graphical user interface 350, through which the user may set up and operate the primary instrument. In embodiments of the invention that do not include a separate master controller, such as the master test controller 130, all of the functionality described above with respect to the master controller may instead be performed by the primary instrument 300. In those embodiments that do include a master test controller 130, the primary instrument 300 may accept control signals from the master controller. The control signals may be received at either of the interfaces 340 or 350, for instance. Additionally, synchronization signals may be received from the master test controller 130 to a task manager 380, which may control the primary instrument 300 performing certain tasks, or may control the synchronization of the primary instrument so that it stays synchronous with the secondary instruments, as described above. Although illustrated separately, in some embodiments the control signals and synchronizing signals may be received by the primary instrument 300 through a single control line.
The primary instrument 300 further includes a local output display 360, which may be separate from the graphical user interface 350. In either case, a copy of the output display 360 is sent to the master test controller 130 for display on the primary instrument display of such controller, as described above with reference to
A main function of the primary instrument 300 is to accept the signal or signals from the DUT and produce a waveform for analysis. In some embodiments, only the functionality of accepting the test signal and producing copies of the waveform, or otherwise making them available to one or more secondary test instruments 150, is performed by the primary instrument 300. In this embodiment, instead of using the primary instrument 300 to accept the input signals, a signal receiver may accept the signal for analysis, make the signal available to other instruments in the system, but not perform any analysis or even generate local output of the waveform. In the signal receiver embodiment, the output display 360 as well as the interfaces 340 or 350, or both, may be omitted from the primary instrument 300. These functions may instead be performed by a Personal Computer (PC) that runs software capable of implementing such functions. In such an embodiment, the signal receiver is structured to gather the signals for testing, while the master controller, such as the master test controller 200 of
The secondary instrument 400 operates on a device controlled by one or more processors 410 and associated memory 412. In some embodiments, and differently than the primary instrument 400, the secondary instrument 400 lacks the ability to accept a test signal directly from a DUT. Such ability to receive a test signal typically includes specialized hardware, such as an input port and acquisition circuitry, and/or software, as described above with reference to the primary instrument 300. Since the secondary instrument 400 lacks this functionality, it can generally be produced much more inexpensively than the primary instrument 300. In some embodiments the secondary instrument 400 may be a completely virtual instrument that includes no specialized hardware at all, and may instead be operated by software running on a general purpose or special purpose processor. Such an example is illustrated with reference to
The secondary instrument 400 includes an input for accepting one or more test waveforms from the primary instrument, such as the primary instrument 110 of
The secondary instrument 400 may include a programmatic interface 440 and a graphic interface 450. In some embodiments only the programmatic interface 440 is present in the secondary instrument. The programmatic interface 440 and/or graphic interface, if present, receives program and control signals from an external source, such as from the primary instrument 100 and/or master test controller 130 of
Synchronizing signals may be received at a task manger 480. As described above with reference to the primary controller 300, the synchronization signals control synchronization of the primary instrument to each of the secondary instruments 400 so that they stay synchronous to the primary instrument 110 and all of the other secondary instruments in the test system 100. Also as described above, in some embodiments the control signals and synchronizing signals may be received by the secondary instrument 400 through a single control line.
In operation, the master test controller 130 controls all of the secondary instruments 400 in the test system 100 to perform measurements or other analysis on the test waveform at exactly the same time. Output of each of the secondary instruments 400 may be shown on a local display 460, or the output may be sent externally, to the master test controller 130. Example output may include specific waveforms or other output typically generated by test devices. Especially for secondary instruments 400 operating in locations remote from an operator, which embodiments of the invention easily allow, the local display 460 may be purposely turned off to speed operation of the secondary instrument. This action of turning off the local display 460 may save computing resources.
By including multiple secondary instruments 400 in the test system 100, embodiments of the invention enable waveform processing measurement acceleration using a parallel/pipelined process.
Embodiments of the invention provide multiple improvements over previous test and measurement systems. One improvement is that a unified menu control system, such as the programmatic interface 240 and graphical interface 250 of
In some embodiments the test system 100 may include a mix of secondary instruments 400 and virtual secondary instruments 410. Reference herein to one or more secondary instruments 400 may also be interpreted as references made to one or more virtual secondary instruments 410, as the functionality of the secondary instruments 400, 410 may be the same no matter if they are hardware copies or virtualized copies.
The user interface 600 includes a primary instrument control panel 610 for controlling a primary instrument, such as the primary instrument 300 of
The user interface 600 further includes a secondary instrument control panel 620 for controlling any or all of the secondary instruments, such as the secondary instrument 400 of
A routing section 630 provides the user with an ability to connect the secondary instruments 400, 410 to any of the input channels of the primary instrument 300, as described above. Typically, a primary instrument 300 includes multiple input channels, which may be connected to different inputs from the DUT. With reference to
Other features of the user interface 600 include a setup panel 660, which allows the user to create, store, and recall setups that are used often. This alleviates the necessity to set up the system individually for each testing sequence. A panel 680 allows the user to selectively turn on or off the displays for any or all of the secondary instruments 400. Various reports may be configured through a configuration panel 640. Further, the user may configure a dashboard, such as illustrated in
Linked menus, such as the user interface 600, allows the user to view and set up all of the secondary instruments simultaneously by operating only a single control, which speeds the initial programming of the test system 100, rather than setting up all of the devices individually.
Other advantages of embodiments of the invention include being able to operate with test instruments from different manufacturers. For example, the primary instrument 300 may be one manufacture's product, while the secondary instruments 400, 410 may be produced from another manufacturer. Flexibility in the programming and control of the connected components allows for such interoperability.
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.
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 a test and measurement system including a primary instrument having an input for receiving a test signal for measurement or analysis from a Device Under Test (DUT) and generating a test waveform from the test signal, and a duplicator for sending a copy of the test waveform to one or more secondary instruments. The one or more secondary instruments are each structured to access the copy of the test waveform for analysis, and each of the one or more secondary instruments includes a receiver structured to receive a command related to measurement or analysis of the copy of the test waveform one or more processes for executing the received command, and an output for sending results of the executed command to be displayed on a user interface that is separate from any user interface of the one or more secondary instruments.
Example 2 is a test and measurement system according to Example 1, further comprising a master controller coupled to the output of the one or more secondary instruments, and the master controller having a user interface with a window to display the output of each of the one or more secondary instruments.
Example 3 is a test and measurement system according to any of the previous Examples, in which the user interface of the master controller further includes an input for controlling the primary instrument and selected ones of the one or more secondary instruments.
Example 4 is a test and measurement system according to any of the previous Examples, in which in which each of the one or more secondary instruments is structured to execute its received command substantially simultaneously.
Example 5 is a test and measurement system according to any of the previous Examples, in which in which the test waveform includes multiple segments, and in which each of the one or more secondary instruments is structured to operate on the same of the multiple segments substantially simultaneously.
Example 6 is a test and measurement system according to any of the previous Examples, in which in which the master controller is structured to send synchronization information to the one or more secondary instruments.
Example 7 is a test and measurement system according to any of the previous Examples, in which in which at least one of the one or more secondary instruments operate as a virtual computer process.
Example 8 is a test and measurement system according to any of the previous Examples, in which, in which each of the one or more secondary instruments lacks any input for receiving the test signal from the DUT.
Example 9 is a test and measurement system according to any of the previous Examples, in which, in which each of the one or more secondary instruments is structured to, after receiving a stop command, stop execution and remain in a wait state.
Example 10 is a test and measurement system according to Example 9, in which each of the one or more secondary instruments is structured to simultaneously restart execution upon receipt of another command.
Example 11 is a test and measurement system according to Example 9, in which each of the one or more secondary instruments is structured to execute for a pre-defined time prior to stopping execution.
Example 12 is a test and measurement system including a signal receiver in a primary instrument including an input for receiving a test signal for measurement or analysis from a Device Under Test (DUT) from which a test waveform is generated, a master controller coupled to the signal receiver and structured to make a copy of the test waveform available to one or more secondary instruments, in which the one or more secondary instruments each structured to access the copy of the test waveform for analysis, and each of the one or more secondary instruments includes a receiver structured to receive a command related to measurement or analysis of the copy of the test waveform from the master controller, one or more processes for executing the received command, and an output for sending results of the executed command to the master controller.
Example 13 is a test and measurement system according to Example 12, in which the master controller is structured to simultaneously display the output of each of the one or more secondary instruments.
Example 14 is a method of operating a test and measurement system, including receiving a test signal for measurement or analysis from a Device Under Test (DUT) at a first device, generating a test waveform from the test signal, selectively routing a copy of the test waveform to one or more test devices and, at the one or more test devices, receiving a command related to measurement or analysis of the copy of the test waveform, executing the received command, and sending an output of the executed command to a user interface that is separate from the one or more test devices.
Example 15 is a method according to Example 13, further comprising, at each of the one or more test devices, storing the copy of the test waveform as a local copy of the test waveform.
Example 16 is a method according to any of the previous Example methods, in which the test and measurement system includes a master controller, the method further comprising displaying the output from the one or more test devices on a user interface of the master controller.
Example 17 is a method according to any of the previous Example methods, further comprising sending a control command from the master controller to fewer than all of the one or more test devices.
Example 18 is a method according to any of the previous Example methods, further comprising accepting a selection of which of the one or more test devices to send the control command from a user.
Example 19 is a method according to any of the previous Example methods, in which the test waveform includes multiple segments, the method further comprising identifying a selected one of the multiple segments for routing to the one or more test devices.
Example 20 is a method according to any of the previous Example methods, further comprising sending synchronization information to the one or more test devices.
Example 21 is a method according to any of the previous Example methods, further comprising sending a stop command to the one or more test devices to simultaneously stop execution of the received command.
Example 22 is a method according to any of the previous Example methods, further comprising sending a restart command to the one or more test devices to restart execution of the received command for a pre-determined time, and then to stop execution of the received command.
Example 23 is a method according to any of the previous Example methods, further comprising sending a restart command to the one or more test devices to restart execution of the received command until a pre-determined event occurs, and then to stop execution of the received command.
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.
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 is a non-provisional of and claims benefit from U.S. Provisional Patent Application 63/153,933, titled “TEST AND MEASUREMENT SYSTEM,” filed Feb. 25, 2021, the disclosure of which is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
63153933 | Feb 2021 | US |