BACKGROUND OF THE INVENTION
The present invention relates to the analog waveform display
of a serial digital data stream, and more particularly to a serial data cursor for
providing content information about the serial digital data stream from the analog
waveform display.
As the world moves more and more to serial busses, such
as RS-232, Firewire, USB, etc., the need for people to observe and comprehend what
is being transported over these busses is increasing. Logic analyzers are the traditional
instrument for analyzing what digital data is being transported over parallel busses,
but do not provide an analog waveform display of the data signal. Rather logic analyzers
provide grouped data words. One type of cursor for interpreting displays of grouped
data words is described in
U.S. Patent No. 6,107,989 issued August 22, 2000
. This patent describes an adaptive cursor that highlights on the binary
display of grouped data words those bits that correspond to particular segments
of a predefined protocol, i.e., when the cursor is placed at one bit position in
the grouped data words, all bits that relate to the segment in which the cursor
is located are highlighted and the corresponding name and value of the segment may
be alphanumerically displayed. However there is no comparable ability provided for
analyzing analog waveforms of serial digital data streams.
Oscilloscopes do a fine job of capturing and displaying
analog waveforms representing what is occurring at the physical layer, but do little
to assist with the understanding of what information is being transported over digital
data busses. Oscilloscopes now are incorporating hardware that triggers on specific
serial analog patterns in a serial digital data stream, such as that disclosed in
U.S. Patent No. 5,214,784 issued May 25, 1993
entitled "Sequence of Events Detector for Serial Digital Data Which Selectively
Outputs Match Signal in the Series Which Defines Detected Sequence." This hardware
provides a way to continuously monitor serial digital data in analog form and precisely
define the behavior that it must exhibit in order to qualify as the sequence of
events that a user wants to detect. When a sequence in the serial digital data stream
matches the user specified sequence, then a trigger is generated and the serial
digital data stream is captured for processing/display as an analog waveform. However
there is no information provided above the physical layer as to the information
content of the serial digital data stream represented by such captured analog waveform.
What is desired is a serial data cursor that assists a
user in understanding from an analog waveform display what information content is
being represented by a corresponding serial digital data stream.
US Patent No. 4,991,581
discusses an apparatus for recording and processing body sounds for diagnostic
purposes. A 'shorter waveform' option allows the blanking out of the beginning and
the end of a captured waveform. In this mode, a cursor position control is used
to set the desired beginning of the sample of interest, and a cursor control sets
the length for the sample of interest.
BRIEF SUMMARY OF THE INVENTION
According to a first aspect of the invention, there is
provided a serial data cursor generating apparatus as claimed in claim 1.
According to a second aspect of the invention, there is
provided a method of using a serial data cursor for extracting content from the
analog waveform of a serial digital data stream as claimed in claim 4.
In an embodiment, the serial digital data stream is input
to a trigger/acquisition module and a clock recovery module to capture data from
the analog waveform and generate a recovered clock. The serial digital data stream
may also be input to a protocol analysis module together with the recovered clock
to convert the serial digital data into a binary data stream in order to identify
a framing data word from the binary data stream and generate a trigger for the trigger/acquisition
module as an alternative trigger source. In any event the recovered clock is input
to a cursor generator together with a word size parameter for the protocol represented
by the serial digital data stream to generate the serial data cursor. The captured
analog waveform and the serial data cursor are processed by a display processor
for presentation on an appropriate display device, and the captured analog waveform
and recovered clock are input to the protocol analysis module to decode the data
word indicated by the serial data cursor. The serial data cursor may be represented
by a highlighted box or a linear bar laid over, under or above the displayed analog
waveform, and has a horizontal length in time equal to one "word-time" determined
by the protocol and the recovered clock for the serial digital data stream.
The objects, advantages and other novel features of the
present invention are apparent from the following detailed description when read
in conjunction with the appended claims and attached drawing.
BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING
Fig. 1 is a block diagram view of a device using a serial
data cursor according to the present invention.
Fig. 2 is a flow diagram view illustrating the use of a
serial data cursor according to the present invention.
Fig. 3 is a plan view of a display screen illustrating
a serial data cursor with an analog waveform display according to the present invention.
DETAILED DESCRIPTION OF THE INVENTION
Referring now to Fig. 1 a serial digital data stream is
input to a trigger/acquisition module 12 which includes a capture memory
16 and to a clock recovery module 14 that provides a recovered clock.
The serial digital data stream may also be input to a protocol analysis module
18 together with the recovered clock. Output from the trigger/acquisition
module 12 is the captured analog waveform data which is provided to the protocol
analysis module 18 and to a display processor 20. The protocol analysis
module 18 also provides decoded data in human readable form, such as binary,
hexadecimal, alpha-numeric, etc., to the display processor 20. The recovered
clock is input to a cursor generator 22 that provides a serial data cursor
to the display processor 20. The display processor 20 provides the
combination of the captured analog waveform data, the decoded data and the serial
data cursor to a display device 24 having a display screen 26. A controller
28 provides protocol parameters to the protocol analysis module
18 and the cursor generator 22 as well as serial data cursor position
relative to the captured analog waveform data.
As shown in Fig. 2 a method of providing information about
the content of the serial data stream from the captured analog waveform data display
is shown which includes loading (30) into the protocol analysis module
18 by the controller 28 a protocol that has parameters which describe
the serial data stream being observed, such as the encoding, number of bits, framing,
data rate, word size, etc. The cursor generator 22 from the recovered clock
and the word size then creates (32) as the serial data cursor a representation
for the display, such as a box or linear bar, whose horizontal length in time is
proportional to one "word-time" in the serial data stream. For example, for eight-bit
words where the bit period from the recovered clock is 100 nanoseconds, the serial
data cursor representation has a length of 800 nanoseconds. The serial data cursor
may be displayed (34) to encompass, underline, overline, etc. the captured
analog waveform data being displayed on the display screen 26, and the portion
of the displayed analog waveform data delimited by the serial data cursor is decoded
(36) by the protocol analysis module 18 with the resulting bit pattern
being displayed (38) in a form that is friendly to the user, such as binary,
hexadecimal, ASCII (American Standard Code for Information Interchange), etc., and
interpreted according to the protocol. As the user changes (40) the serial
data cursor position, the serial data cursor traverses the displayed analog waveform
data and the decoded information at each position is displayed. Using a trigger
(42) based on a serial data pattern representing a framing word according
to the applicable protocol, derived either from the protocol analysis module
18 from the serial digital data stream and recovered clock or as an analog
pattern according to
U.S. Patent No. 5,214,784
referenced above, the process follows path 1 through the switches SW1,
SW2 and SW3 so that the serial digital data stream may be captured (44) in
the capture memory 16
starting with the first "word-time" for a frame of the serial digital data stream.
The serial data cursor is initially located at the first "word-time" and, as the
serial data cursor is moved, it moves correspondingly in either one "word-time"
or "bit-time" increments and the corresponding decoded data from the protocol analysis
module 18 for the portion of the displayed analog waveform data delimited
by the cursor is displayed.
Alternatively where other types of triggers are used, the
path indicated by the numeral 2 in the switches SW1, SW2 and SW3 is followed. The
serial digital data stream is captured and displayed (44) in response to
a regular trigger, such as edge (rising or falling) for example, and the serial
data cursor is overlaid (34) and the corresponding captured analog waveform
data is converted (36) to binary by the protocol analysis module
18. The binary is compared (46) with a frame start pattern by the
protocol analysis module 18 according to the protocol. If the frame start
is not detected (48), the serial data cursor may be moved (50) bit-time
by bit-time along the displayed analog waveform data until a known information content
is recognized, either manually or automatically, such as the start of the frame
for the serial digital data stream. Then the serial data cursor may be moved
(52) one "word-time" to get to the start of the data after the frame start.
The serial data cursor then may be moved (40) in "word-time" or "bit-time"
increments to interpret the information content of the serial digital data stream
as described above.
As shown on Fig. 3 the display screen 26 has an
analog waveform 56 of the serial data stream which is a series of sample
points upon which the serial data cursor, in this case a highlighted area in the
form of a box 58, is overlaid to encompass a portion of the displayed analog
waveform data corresponding to one data word according to the protocol. An alternative
form for the serial data cursor may be in the form of a linear bar 59 either
below (as shown) or above the displayed analog waveform data 56. The box
58 at position A has a decoded binary value as displayed, which could
be displayed as an octal, hexadecimal or alpha-numeric value as desired with a content
label (not shown) according to the protocol. The box 58 may be incremented
by one "bit-time" to position B, or by one "word-time" to position
C, with the resulting decoded result shown in binary, for this illustration,
on the display screen 26. The decoding of the serial digital data stream
into a binary representation may be accomplished by the protocol analysis module
18 using well-known techniques.
Thus the present invention provides a serial data cursor
for use on a waveform instrument that has a length equal to one "word-time" of a
serial digital data stream according to a specified protocol, the analog waveform
delimited by the serial data cursor being decoded to provide content information
from the serial data stream in human readable form.