Prism
Operation Manual Issue 2.00
Page 7.12
JUMP(@label)
or
JMP(@label)
Unconditional
JUMP_IF_EQUAL(value, @label)
or
JE(..
if result = value
JUMP_IF_NOT_EQUAL(value, @label)
or
JNE(..
if result
g
value
JUMP_IF_GREATER_THAN(value, @label)
or
JG(..
if result > value
JUMP_IF_LESS_THAN(value, @label)
or
JL(..
if result < value
JUMP_IF_GREATER_OR_EQUAL(value, @label)
or
JGE(..
if result
value
JUMP_IF_LESS_OR_EQUAL(value, @label)
or
JLE(..
if result
value
JUMP_IF_ZERO(@label)
or
JZ(..
if result = 0
JUMP_IF_NOT_ZERO(@label)
or
JNZ(..
if result
g
0
JUMP_IF_MASKED(value, @label)
or
JMASKZ(..
if (result AND
value) = 0
JUMP_IF_NOT_MASKED(value, @label)
or
JMASKNZ(..
if (result AND
value)
g
0
The @label parameter must begin with a '@' character. Note that labels when referred
to in a
JUMP_
.. instruction do not have a following colon (':') character. Jumps may be
made backwards or forwards.
The
JMASKZ
and
JMASKNZ
instructions are most useful for testing Channel Status
fields.
Notes on the 'value' parameter:
The value parameter can be expressed in a variety of units depending on what type of
result is being tested. Usually there is a 'user-friendly' unit which requires the use of a
suffix. Omitting the suffix causes the DSA-1's internal 'raw' units to be used:
Time (
MEAS_FS_JITTER, MEAS_DATA_JITTER, MEAS_EYE_NARROW
)
Use units of nanoseconds, with the suffix
'ns'
;
Raw DSA-1 units are multiples of 1/64th of a nanosecond;
JUMP_IF_GREATER( 6.5ns, @bad_jitter )
is equivalent to
JUMP_IF_GREATER( 4160, @bad_jitter )