The subject invention generally concerns the field of word recognizers for use in test and measurement instruments, such as logic analyzers, and the like, and specifically concerns word recognizer that may be reloaded during an acquisition of data.
A logic analyzer is a test and measurement instrument having multiple input channels for acquiring digital data words for processing and display. Logic analyzers contain Word Recognizers, which are programmed with a reference value for comparison with incoming acquired data. Because the user wishes to trigger on a condition in which the reference value matches the value of the incoming data, the “reference value” of the Word Recognizer is preprogrammed before data acquisition is begun, and is not changed while data is being acquired. It is noted that Word Recognizers also have the ability to mask, or disable selected channels, which allow these channels to be ignored while comparing the acquired data and reference data.
However, currently available Word Recognizers cannot provide a solution to the following problem. In a Random Access Memory (RAM) diagnostic routine, a data pattern is written to all locations of the RAM, and then the data is read from each of the locations. The routine then reports the results (i.e. whether the RAM passed the check) and the process is repeated with the next pattern. If an error is detected, it is unknown whether the problem occurred when the data was written to the RAM, or when the data was read from the RAM. Because the RAM has been overwritten, the RAM cannot be examined to determine if it contains the correct value. One would like to write a trigger program to verify that data written to the RAM is the same as what is read back from the RAM and to trigger the Logic Analyzer when the data is not the same. With current logic analyzers this is not possible because the data pattern is changing, which means it is not possible to preprogram the “Reference Value” of the Word Recognizer with a meaningful value.
The subject invention concerns a test and measurement instrument such as a logic analyzer, or the like, having at least one Reloadable Word Recognizer whose reference value can be loaded by a trigger machine with a current acquired data sample while data is being acquired. In a second embodiment useful for performing memory testing, the reloadable word recognizer is used in cooperation with two conventional word recognizers. In a third embodiment, a delay unit is employed to provide delayed input data words as reference words. In a fourth embodiment, an offset register and adder are used to modify the data words before storing them. A fifth embodiment provides for substantially immediate use of base addresses of relocatable subroutines and stack-based variables recovered from a data stream acquired from a system under test.
Referring to
An output signal of Event Circuit 120 is applied to a Trigger Machine (or Trigger Circuit) 130. Trigger Circuit 130 determines when to trigger, store, etc, and when to load a Reloadable Word Recognizer (to be described below with reference to
In contrast, Word Rec 2220 is a reloadable Word Recognizer. Like Word Rec 1210, Word REC 2220 compares incoming data against a value held in its respective Reference Block 225. However, the respective “Reference Value” of each of reference blocks 215 and 225 is different from the other, except for cases where the data values coincidentally happen to be the same.
Operation of the subject invention is described with reference to
With respect to the problem set forth above with respect to the RAM diagnostics routine, such problem is solved by use of another embodiment 300 of the subject invention, employing a Reloadable Word Recognizer 320 with associated Reference Block 325 and two conventional Word Recognizers 310 and 350, as shown in
In operation, when a write to specified RAM address occurs, the output of word recognizer WR 0310 becomes true and causes Reloadable Word Recognizer 320 to be loaded with the data value that was written to this specific RAM address. Later, when a read from memory operation occurs from this same address the output of word recognizer WR 1350 becomes true. If the output of Reloadable Word Recognizer RWR 320 is true, then nothing happens until the next read or write operation to this address. When the output of Reloadable Word Recognizer RWR 320 goes false, trigger machine 130 triggers. Note that as long as all outputs of the word recognizers are true, then Reloadable Word Recognizer RWR 320 can be reloaded with a new value over and over again.
There are two enhancements to the above-described invention that are deemed to lie within the bounds of the invention.
The second enhancement 500 is shown in
A Word Recognizer Reload State Machine 660 monitors the pipeline bus for the occurrence of a predetermined data word. Upon detection of the predetermined data word at the output of flip-flop 620b, Word Recognizer Reload State Machine 660 acquires a reference word and loads it into a Reloadable Base/Offset Word Recognizer 670. In this way, Reloadable Base/Offset Word Recognizer 670 can use the new reference word substantially immediately (i.e., as early as the next clock cycle). Reloadable Base/Offset Word Recognizer 670 applies data word detection signals to Trigger Machine 680 in the conventional fashion. The combination of Word Recognizer Reload State Machine 660 and Reloadable Base/Offset Word Recognizer 670 produces a “real time” “hardware” relocation of all word recognizer values.
It is important to note that the arrangement of
Although a hardware environment was used to describe the subject invention, one skilled in the art will realize that the hardware maybe performed by software, or by a combination of hardware and software, and all such modifications are deemed to lie within the scope of the following claims.
The Subject application claims priority from U.S. Provisional Application Ser. No. 60/326,503 now expired and entitled RELOADABLE WORD RECOGNIZER FOR LOGIC ANALYZER (Holaday, et al.) filed 1 Oct. 2001.
Number | Name | Date | Kind |
---|---|---|---|
2950437 | Stahl | Aug 1960 | A |
3082374 | Buuck | Mar 1963 | A |
4791357 | Hyduke | Dec 1988 | A |
5864658 | Theobald | Jan 1999 | A |
6028439 | Arkin et al. | Feb 2000 | A |
6101622 | Lesmeister | Aug 2000 | A |
6122757 | Kelley | Sep 2000 | A |
6370661 | Miner | Apr 2002 | B1 |
6894308 | Whetsel et al. | May 2005 | B2 |
20030065500 | Holaday et al. | Apr 2003 | A1 |
20070061637 | Ward et al. | Mar 2007 | A1 |
20070100586 | Cheng et al. | May 2007 | A1 |
Number | Date | Country | |
---|---|---|---|
20030065500 A1 | Apr 2003 | US |
Number | Date | Country | |
---|---|---|---|
60326503 | Oct 2001 | US |