The subject invention concerns the fields of test and measurement instruments in general, and specifically concerns a novel user interface for use in a Logic Analyzer.
A logic analyzer is a test and measurement instrument that is extremely useful for troubleshooting digital circuits involving numerous signals. Like an oscilloscope, a logic analyzer captures signals from a System Under Test (SUT) and displays a representation of those signals on a display screen. Unlike an oscilloscope, which typically has up to four input channels, a logic analyzer may have 32, 64, 128 or more input channels. Oscilloscopes acquire signal data representative of analog characteristics of the signal, such as specific amplitude values, rise times, fall times, etc. A logic analyzer is concerned with logic levels (0 and 1) and timing relationships between the signals.
Data records acquired by a logic analyzer can be very long, for example up to 64 Meg samples on each channel. While the ability to capture such a large amount of data is certainly a desirable feature for a logic analyzer, identifying specific data within a long data record is often a daunting task for a user. For example, a user may need to know how many occurrences (counts) of specific characteristics of digital data have been recorded. Alternatively, users may want to average certain data values, or compute statistics on their data sets using measurement capabilities similar to those in digital oscilloscopes.
Currently, such a user must export digital data sets to an external computer and use a statistical spreadsheet type package (e.g., Microsoft Excel® software), or some custom program, to calculate these counts, averages and other statistics on these data sets. Exporting such large data sets, and then operating on them to produce the desired results is a time consuming process. What is needed is a fast and efficient method and apparatus for producing analog-type measurements, such as, counts, averages, and statistical results, on already-acquired deep memory data records of a logic analyzer.
A logic analyzer that performs analog-type measurements on digital data includes circuitry in its acquisition system that is programmable to search through acquired data to detect analog-type signal characteristics. In a first embodiment, the logic analyzer includes a graphical user interface employing a drag-and-drop operation to apply one or more selected analog-type measurements to selected portions of the digital data record. In a second embodiment, a user may designate a particular waveform or data listing by means of a mouse-click. Each of the choices of analog-type measurements can be represented by an icon, or text, or both icon and text. Some of the analog-type measurements, among others, are pulse width, duty cycle, period, frequency, period jitter, and cycle-to-cycle jitter.
a, 4b, 4c, and 4d show enlarged views of a portion of the screen display of
Logic analyzer 100 includes processor 102, system memory 104, input/output (I/O) cards 106, and data storage units 112, such as a hard disk drive, floppy disk drive, and so on. Logic analyzer 100 may also include one or more user input/output devices, such as keyboard 108, pointing device 110 and display unit 115. System memory 104 comprises Random Access Memory (RAM) and is typically used for storage of program instructions and/or data. Display unit 115 may include a cathode ray display, plasma, LCD, and/or other type of display, and may be logically and/or physically divided into an array of picture elements or pixels. Input/output (I/O) cards 106 may include modem cards, network interface cards, graphics cards, audio cards and/or other types of I/O cards.
Processor 102 may be any one of a number of commercially available processors, including a PA-RISC processor available from Hewlett-Packard Corporation, Palo Alto, California, or a Pentium® processor, or a Pentium® M-type processor, available from Intel Corporation, Santa Clara, California; other examples include a PowerPC® processor or a 68000 series processor, both available from Freescale Semiconductor Inc., Austin, Texas; or any combinations thereof. Processor 102 executes instructions of its associated operating system 114, and implements and controls a graphical user interface (GUI) 116 for facilitating various data processing operations for ultimate display on display unit 115. Processor 102 and operating system 114, may generally define a computing platform shown by dashed block 101, for which application programs in high level programming languages may be written. As illustrated in
Signals are acquired from a System Under Test (SUT) 118 by Acquisition System 122 operating under control of processor 102. Acquisition System 122 includes hardware, firmware, and software, necessary to acquire data samples at appropriate times. Acquisition system 122 receives logic signals from system under test 118 via data channels 124. The logic signals are acquired by acquisition system 122 by sampling the signals to determine their logic level. That is, a sampler 125 of acquisition system 122 can be thought of as a one-bit per channel analog-to-digital (A/D) converter, which determines whether each of the signal samples exhibits a logic level high, or a logic level low state. The sampled and digitized representation of signals 128 are continually stored in acquisition memory 129b of an Acquisition Memory System 129 until a trigger event is detected by a trigger circuit 126, which causes generation of a trigger signal 127. At that point, in response to trigger signal 127, the writing of data to acquisition memory 129b is stopped and the acquired data in acquisition memory 129b is transferred elsewhere within logic analyzer 100 for further processing. For an explanation of a novel drag and drop apparatus and method for setting up acquisition triggering for a logic analyzer, see copending U.S. patent application Ser. No. 11,437,243, entitled DRAG AND DROP LOGIC ANALYZER TRIGGER, filed on May 19, 2007, and assigned to the same assignee as the subject application. Logic analyzer 100 may also include video display controller 130 for controlling the display on display unit 115, video display controller 130 being under control of computing platform 101 using standard Windows® applications program interfaces (APIs). Acquisition Memory System 129 also includes a Pattern Recognition and Search Control Circuitry portion 129a, the function of which will be explained below.
As mentioned above, a user may need to know how many occurrences (counts) of specific characteristics of digital data have been recorded. Alternatively, the user may want to average certain data values, or perform other statistics from their data sets. Such analog-type counts and average measurements are frequently used on oscilloscopes, but heretofore have not existed on any logic analyzer for operations on digital data.
If a user were to manually attempt to set up a logic analyzer to acquire the data needed to create a file for export from the logic analyzer application to another application for analysis necessary to produce the desired counts and average values, he would need to execute a rather complex four step process. The user must first identify a specific subset of data to which the measurement should be applied, for example, which probe channel is to be selected. The user must then “gate” the selected channel data (i.e., define a relevant time segment of, or number of samples of, the selected channel data over which the measurement should be calculated). Third, the user must export the acquired data from the logic analyzer application to another application for processing and analysis, and finally, the user must communicate to the other application the type of measurement that is desired. If the user wants to aggregate measurements, then steps 3 and 4 would have to be repeated. In that case, the user must also specify whether the desired measurement will be carried out for a single data acquisition or for repeated data acquisitions.
The subject invention provides a much easier way for a user to make measurements automatically on a logic analyzer, thus removing complexity and saving a great amount of time for the user.
There are only two built-in digital data measurements in use in currently available logic analyzer products. The first is a delta time, or a delta sample, measurement, provided in logic analyzers manufactured by Agilent Technologies, Inc. of Palo Alto, Calif. and by Tektronix, Inc. of Beaverton, Oreg.
The subject invention will now be described with further reference to
As noted above, each of these analog-type measurements is set up by simply dragging its corresponding icon into waveform display portion 205 and dropping the icon onto a particular one of displayed waveforms 208. As an aid to the user, a text box 209 is displayed to provide additional instruction to the user when an icon is moved into waveform portion 205. The identification of the selected data channel and other relevant information required for the set up of the desired data measurement are thereafter automatically derived from the drop point on the waveform. It is herein recognized that such measurements can be applied more than once to different digital data channels, and that the measurements can be aggregated to calculate statistics over repeated data acquisitions. One skilled in the art will recognize that statistics can also be computed on multiple samples of a single acquisition.
In operation, information regarding the selected measurement type, the identification of the selected data channel, and the other relevant information required for the set up of the desired data measurement are automatically derived from the drop point on the waveform, and all such information is transferred to processor 102. In response, processor 102 programs Pattern Recognizer and Search Control Circuitry 129a of acquisition memory system 129 to scan the relevant data stored in acquisition memory 129b for waveform characteristics corresponding to the desired analog-type measurement. Acquisition memory system 129 alerts processor 102 each time it detects waveform characteristics corresponding to the desired analog-type measurement, and processor 102 updates its statistics accordingly. By using acquisition memory system 129 for this new purpose, a considerable time saving may be realized in that there is no need to export the data to an external computer for analysis. Moreover, additional time savings are also realized in that operations do not have to be performed on the entire data set, but rather only that data identified by the user.
It is herein recognized that this new automatic analog-type measurement capability can be applied to two data views: the Waveform view, as described above, which shows graphical digital data, and also to a Listing view, which shows tabular digital data.
Returning to
It is herein recognized that an iconic representation for each of the analog-type measurements, such as shown in
It should become apparent from the foregoing description that embodiments disclosed herein may be implemented in any one of a variety of possible forms, such as, but not limited to: hardware, such as custom integrated circuits or ASICs; firmware, such as flash memory; or software, such as special purpose or general purpose programs.
The use of the word “or” in the following claims is intended to be in the inclusive (i.e., Boolean) sense, meaning one, or the other, or both. Moreover, the use of the word “or” does not imply that both alternatives must be present; it is sufficient if either alternative is present alone, but both alternatives may be present, as well.
Number | Name | Date | Kind |
---|---|---|---|
4072851 | Rose | Feb 1978 | A |
4099240 | Rode et al. | Jul 1978 | A |
4104725 | Rose et al. | Aug 1978 | A |
4162531 | Rode et al. | Jul 1979 | A |
4812996 | Stubbs | Mar 1989 | A |
4868785 | Jordan et al. | Sep 1989 | A |
4974181 | Sinderson et al. | Nov 1990 | A |
5155836 | Jordan et al. | Oct 1992 | A |
5594663 | Messaros et al. | Jan 1997 | A |
5646521 | Rosenthal et al. | Jul 1997 | A |
5748124 | Rosenthal et al. | May 1998 | A |
5939877 | Alexander | Aug 1999 | A |
5953009 | Alexander | Sep 1999 | A |
6054984 | Alexander | Apr 2000 | A |
6201384 | Alexander | Mar 2001 | B1 |
6246408 | Alexander | Jun 2001 | B1 |
6326986 | Alexander | Dec 2001 | B1 |
6326987 | Alexander | Dec 2001 | B2 |
6407756 | Sontag et al. | Jun 2002 | B1 |
6466006 | Alexander | Oct 2002 | B2 |
6570592 | Sajdak et al. | May 2003 | B1 |
6615369 | Beck et al. | Sep 2003 | B1 |
6624829 | Beck et al. | Sep 2003 | B1 |
6690398 | Beck et al. | Feb 2004 | B1 |
7225359 | Beck et al. | May 2007 | B2 |
7257509 | Pauly et al. | Aug 2007 | B2 |
20010000964 | Alexander | May 2001 | A1 |
20010001137 | Alexander | May 2001 | A1 |
20040125139 | Beck et al. | Jul 2004 | A1 |
20040225924 | Beck et al. | Nov 2004 | A1 |
20050240852 | Inaba et al. | Oct 2005 | A1 |
20070061629 | Thums et al. | Mar 2007 | A1 |
20070088529 | Nygaard, Jr. | Apr 2007 | A1 |
Number | Date | Country | |
---|---|---|---|
20070271067 A1 | Nov 2007 | US |