3385 Scott Blvd., Santa Clara, CA 95054
Tel: +1/408.727.6600
Fax: +1/408.727.6622
Voyager™ USB 3.0 Exerciser
Generation Script Language
Reference Manual
Manual Version 1.91
For USB Protocol Suite Software Version 4.75 and above
October 2013
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
Document Disclaimer
The information contained in this document has been carefully checked and is believed to be
reliable. However, no responsibility can be assumed for inaccuracies that may not have been
detected.
Teledyne LeCroy reserves the right to revise the information presented in this document without
notice or penalty.
Trademarks and Servicemarks
CATC Trace, Voyager M3, Voyager ReadyLink, USB Protocol Suite, and BusEngine are
trademarks of Teledyne LeCroy.
All other trademarks are property of their respective companies.
Local instruction .......................................................................................................................................... 93
Main procedure ............................................................................................................................................. 3
preprocessor If directive ............................................................................................................................ 111
Set instruction ............................................................................................................................................. 29
viii
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
1 Introduction
The Voyager USB 3.0 Exerciser Generation Script Language allows you to create USB3 traffic
generation scenarios for Voyager USB 3.0 Exerciser devices.
The Generation Script Language provides rich language and preprocessor capabilities and allows
you to implement even complicated generation scenarios.
Typically, Generation Script Language constructions do not require special separation symbols
(such as the semicolon in C languages) to distinguish between different constructions. Where
possible, script parsing uses "context-dependency" rather than separation symbols, thus
simplifying writing of generation scripts.
Also, Generation Script Language constructions are not case-sensitive.
This document describes the commands and syntax of the Voyager USB 3.0 Exerciser
Generation Script Language.
You can start the Voyager USB 3.0 Exerciser script editor by clicking that button in the
USB Protocol Suite application to display an editor user interface, in which you can create and
edit generation script files, as well as reuse codes.
Each running module must have at least one function named Main, which starts and ends the
generation script.
Voyager ReadyLink™ Emulation
The Teledyne LeCroy Voyager USB 3.0 Exerciser features ReadyLink Emulation Mode. The
ReadyLink feature handles all USB 3.0 link training and link flow control, allowing the emulator to
operate at full line rate and respond to the DUT as defined by the specification. The ReadyLink
Emulation Mode helps simplify development of USB 3.0 test scenarios.
By default, ReadyLink Emulation Mode automatically manages:
Header Packet Acknowledgements (L_GOOD_n)
Buffer Credit (L_CRD_x)
SKIPs at required intervals (SKP)
Link Synchronization
Responds to LFPS (Polling.LFPS)
Responds to polling sequence (Polling.RxEQ)
Responds to TS1 / TS2 handshaking sequence
Responds to SS.Inactive (with RX.Detect)
Power Management Link Commands
Responds to LGO_Un (with LAU)
Responds to LAU (with LMPA)
1
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
Test scripts can customize ReadyLink Emulation Mode to include error scenarios, such as:
Header LBADs
Invalid link commands
8B10B / CRC Error
Running Disparity Error
Corrupt Link Commands
Corrupt Flow Control (Wrong L_CRD_x, Wrong L_GOOD_n, Drop L_Good_n)
Corrupt Header Packet acknowledgement (Send LBAD, LRTY)
Corrupt Packet Framing (SHP, SDP, END)
At the packet level, you can send customized data payloads anywhere within the stream to insert
logic errors, perform corner-case, or do stress testing. Commands, such as the Set
ErrWrongLCRD command, allow link-layer error injection anywhere within the script.
1.1 Declaration Conventions
1.1.1 Parentheses
In declarations and descriptions of Generation Script Language instructions,
the format "(" ")" specifies a list of keywords that have the same value and can replace
each other. The declaration
( Packet | Struct ) Template_Name …
specifies that you can use the "Packet", "Packet", or "Struct" keyword for template name
declarations.
1.1.2 Brackets
In declarations and descriptions of Generation Script Language instructions,
the format "[" "]" specifies optional parts of declarations or instruction parameters. The declaration
specifies that the listed ancestors and attribute lists are optional for template name declarations.
1.2 Script Example Highlighting
Generation Script Language examples in this document show syntax highlighting similar to that in
the Voyager USB 3.0 Exerciser Generation Script Editor.
2
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
2 Script Language Structure
2.1 Generation Script Structure
Typically, a generation script has the following structure:
Parser directives
Declarations
o Constants
o Data patterns
o Global generation settings
o Packet/structure templates
o Global numeric variables
o Global structure variables (declare a template for a variable before declaring a variable)
o Aliases
Generation procedures
o List of generation instructions
o Global declarations (constants, data patterns, templates, aliases)
Note: The parser can use previously declared objects in later declarations. In generation
procedures, the parser can use global objects before their declaration as long as such objects are
finally declared outside of generation procedures.
Reminder: The generation parser is NOT case-sensitive.
2.2 Main Procedure and Other Procedures
Although you can create many generation procedures, the major execution entry point is a
procedure with the name Main. Therefore, you must have a generation procedure named Main.
You can invoke the other generation procedures in the Main generation procedure using the
Call directive.
The Call directive makes a "dynamic" insertion, in which the included procedure is re-parsed
using the new parser variable values and the latest values of global variables.
3
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
3 Comments
Comments instruct the script parser to exclude the commented parts of the script file from
parsing.
3.1 Line Comment
To comment a line, start the line with the symbol #.
To comment the end of a line, put the symbol # before the comment. The parser ignores the rest
of the line after the # symbol.
Example
SomeStuff # The text after the # symbol is not parsed.
3.2 Block Comment
To comment a block of text, start with the symbol pair /* and end with the symbol pair */. The
parser ignores the part of the file inside the comment block.
Example
/*
Example of a block of comments
All text between '/' '*' and '*' '/' is ignored.
*/
4
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
4 File-Including Directives
To include a file in a generation parsing stream, use the %inline or %include directive.
4.1 Inline Directive
The %inline directive instructs the script parser to insert the content of the named file into the
parsing stream when the parser sees this directive, even if the file is already inserted.
Examples
%inline "SomeInc1.inc" # Includes the 'SomeInc1.inc' file.
%inline "SomeInc1.inc" # Includes the 'SomeInc1.inc' file again.
4.2 Include Directive
The %include directive instructs the script parser to insert the content of the named file into the
parsing stream only ONCE, the first time the parser sees the directive with the specified file
name.
Examples
%include "SomeInc1.inc" # Includes the 'SomeInc1.inc' file.
%include "SomeInc1.inc" # Does nothing.
Note:For details on how the script parser resolves file names, see the Include Path Directive
topic.
5
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
5 Constant Declarations
You can declare numeric script constants to use later in assignments or arithmetic operations.
The limits of values of constants are from 0 to 0xFFFFFFFF (4294967295 decimal).
Constants are DWORD (unsigned integer) values only.
5.1 Predefined Constants
For information about the predefined constants, see the genconstants.ginc file in the
Generation\Include folder in the Application directory.
5.2 Constant Definition Examples
Examples
Const SOME_HEX_DATA = 0xAABBFFEE# Define a hexadecimal constant.
Const SOME_DEC_DATA = 12# Define a decimal constant.
Const "SOME DEC DATA" = 64# Define a decimal constant.
Const SOME_BIN_DATA = _11110000# Define a binary constant.
Const "Some Hex Data" = 0xCDCDBEBE
Const LMP_PORT_CFG_ACK = 6
# The parser can use arithmetic operations in constant definitions.
Const TX_PAYLOAD_OFFSET = 16 * 8# Payload offset(in bits) for
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
6 Data Pattern Declarations
Data pattern declarations declare named byte strings to use where you use byte vectors. Data
pattern declaration starts with the DataPattern keyword.
DataPatternPattern_Name = { hex_stream}
Example
# Declare a data pattern containing the byte string:
# AA BB CC DD DD EE FF 11 22 33 44 55
DataPatternPATTERN_1 = { AA BB CC DD EE FF 11 22 33 44 55 }
# or
DataPatternPATTERN_1 = { AA BB CC DD EE _11111111 11 22 33 44 55 }
6.1 Constants and Data Patterns in Declarations
You can use constants and previously defined data patterns in data pattern declarations. Place
constants and data patterns inside a [] block. (You can omit a [] block for constant insertion,
but for code clarity it is recommended that you use a [] block.)
Note: When inserting constants into a data pattern, the script parser uses only the least
significant byte of the constant. For example, if constant 0xAABBCCDD is inserted, only the
0xDD is put into the data pattern.
Examples
Const MY_CONST = 0xCC
Const "MY CONST" = 0xDD
# Declare a data pattern containing the byte string:
# AA AA BB BB CC CC DD DD
DataPatternPATTERN_1 = { AA AA BB BB [MY_CONST] CC DD ["MY CONST"] }
# Declare a data pattern containing the byte string:
# 11 AA AA BB BB CC CC DD DD 88
DataPatternPATTERN_2 = { 11 [ PATTERN_1 ] 88 }
6.2 Leading Zeroes
For bytes less than 0x10, it is not necessary to add a leading 0.
Example
DataPattern PATTERN_4 = { B B 6 B B } # Is the same as 0B 0B 06 0B 0B.
7
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
Setting
Description
Mode
Specifies the mode that the Exerciser uses when it performs link
management and high-level traffic management.
For link-layer-level mode, “Host” means that the Exerciser port is set
as “upstream” port and link direction is “downstream”.
“Device” means that the Exerciser port is set as “downstream” port
and link direction is “upstream”.
The Exerciser must perform all actions for each direction, as the USB
3.0 specification requires.
Example: Set Mode = HOST (0)
Possible values are 0 = HOST or 1 = DEVICE.
Default value: HOST
UseMMCXConnectors
Specifies whether the Exerciser uses MMCX connectors or regular
USB 3.0 connectors.
Example: Set UseMMCXConnectors = 1
Possible values are:
0 # Use regular USB 3.0 connectors.
1 # Use MMCX connectors,
Default value: 0 (Use regular USB 3.0 connectors.)
7 Global Generation Settings
A generation script can define global parameters, called "generation settings," that affect aspects
of script compilation and execution. You set generation settings using the Set script keyword.
First, you can initialize values for some settings like Mode. You can use an instruction like this:
Set Mode = HOST; # HOST is a constant equal to 0.
After typing the keyword Set, get the list of all available settings and set the required value.
For some settings, after the keyword = (equals sign), the interface shows fixed constants from
which you can select. For example, after typing Set RxInvertPolarity, you can select one of the
three constants Yes, No, or Auto.
Settings are DWORD (unsigned integer) values only. Unless otherwise noted, the limits of values
used for settings are from 0 to 0xFFFFFFFF (4294967295 decimal). If values used for a setting
are outside the limits prescribed by the USB 3.0 Specification, you are cautioned that unexpected
behavior may result.
7.1 Device Mode Settings
This setting specifies the mode that the Voyager USB 3.0 Exerciser uses when it performs
link management and high-level traffic management.
8
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
Setting
Description
TxScramble
Specifies whether the Exerciser performs scrambling on the
Tx channel.
Example: Set TxScramble = YES
Possible values are Yes (1) or No (0).
Default value: No (0)
Applicable Mode: HOST, DEVICE
RxDescramble
Specifies whether the Exerciser performs scrambling on the
Rx channel.
Example: Set RxDescramble = YES
Possible values are Yes (1), No (0), or Auto (0xFFFFFFFF).
Default value: Auto (set automatically based on the training
sequences passed on the link)
Applicable Mode: HOST, DEVICE
TxInvertPolarity
Specifies whether the Exerciser inverts polarity on the Tx channel.
Example: Set TxInvertPolarity = YES
Possible values are Yes (1) or No (0).
Default value: No
Applicable Mode: HOST, DEVICE
RxInvertPolarity
Specifies whether the Exerciser inverts polarity on the Rx channel.
Example: Set RxInvertPolarity = YES
Possible values are Yes (1), No (0), or Auto (0xFFFFFFFF).
Default value: Auto (Receiver detects the Rx polarity automatically
through the training sequences.)
Applicable Mode: HOST, DEVICE
SkipTimer
Specifies a periodic timer that controls sending of SKP ordered sets
at specific intervals.
Example: Set SkipTimer = 4700
Example: Set SkipTimer = AUTO
Possible values are an integer number of nanoseconds or
Auto (0xFFFFFFFF).
Default value: Auto (use automatic timing for SKP intervals)
Applicable Mode: HOST, DEVICE
NOTE: The current skip timer resolution is 6.667 ns, so skip time
values are rounded to that resolution.
SkipPendingCount
Specifies the number of pending SKP requests before sending a
SKP sequence.
Example: Set SkipPendingCount = 1
Possible values: 0 to 3
Default value: 0
Applicable Mode: HOST, DEVICE
7.2 Link Configuration Settings
These settings specify the USB 3.0 Link Configuration settings that the Voyager USB 3.0
Exerciser uses for link management.
9
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
PortCfgAck
Specifies whether the Exerciser responds to Port Config LMPs or not.
Example: Set PortCfgAck = 0
Possible values are:
0 # Do not respond to PortConfig LMPs.
1 # Automatically respond to PortConfig LMPs.
Default value: 1
Applicable Mode: HOST, DEVICE
LTSSMSettings
LTSSM Setting flags.
Example: Set LTSSMSettings = CUSTOM_TS1
Possible values are any combinations of the following flags:
0 # AUTO.
DISABLE_LFPS = 0x1 # Disable Polling.LFPS detection.
CUSTOM_TSEQ = 0x2 # Send specified number of TSEQ
(TSEQNumber setting), then go to the next state.
CUSTOM_TS1 = 0x4 # Send TS1 for specified period of time
(TS1Time setting), then go to the next state.
CUSTOM_TS2 = 0x8 # Send TS2 for specified period of time
(TS2Time setting), then go to the next state.
DISABLE_IDLE = 0x10 # Disable Logical Idle handshake, so LTSSM
jumps over relevant sub-state.
Specifies number of TSEQ Ordered Sets to be sent in Polling.RxEQ
sub-state. Applies only if CUSTOM_TSEQ bit is set in the
LTSSMSettings setting.
Example: Set TSEQNumber = 64000
Possible values are any values from 0 to 65535 (0xFFFF).
Default value: 65535
Applicable Mode: DEVICE, HOST
TS1Time
Specifies the time in nanoseconds to stay in the Polling.Active or
Recovery.Active sub-states, regardless of received pattern. Applies
only if bit CUSTOM_TS1 of the LTSSMSettings is set.
Example: Set TS1Time = 2000
Possible values are from 0 to 5000000 (5 ms). It is recommended not
to use values < 267 ns (required time for sending 8 TS1s)
Default value: 1000 (1 us)
Applicable Mode: DEVICE, HOST
TS2Time
Specifies the time to stay in the Polling.Active or Recovery.Active
sub-states, regardless of received pattern. Applies only if bit
CUSTOM_TS2 of the LTSSMSettings is set.
Example: Set TS2Time = 1000
Possible values are from 0 to 5000000 (5 ms). It is recommended not
to use values < 267 ns (required time for sending 8 TS2s)
Default value: 1000 (1 us)
Applicable Mode: DEVICE, HOST
10
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
LUPInterval
Controls the timing schedule of LUP generation.
Example: Set LUPInterval = 80
Possible values are:
number of nanoseconds for the LUP interval.
0xFFFFFFFF # AUTO (as defined by spec)
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE
LDNInterval
Controls the timing schedule of LDN generation.
Example: Set LDNInterval = 80
Possible values are:
number of nanoseconds for the LDN interval.
0xFFFFFFFF # AUTO (as defined by spec)
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: HOST
LUPDetectTimeout
Controls the timeout of receiving LUP. If the time passes without any
LUP received, an error is raised, and LTSSM is directed to the
Recovery state.
Example: Set LUPDetectTimeout = 20
Possible values are:
positive integer # number of nanoseconds for LUP Detect timeout.
0xFFFFFFFF # AUTO (as defined by spec)
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: HOST
LDNDetectTimeout
Controls the timeout of receiving LDN. If the time passes without any
LDN received, an error is raised, and LTSSM is directed to the
Recovery state.
Example: Set LDNDetectTimeout = 20
Possible values are:
positive integer # number of nanoseconds for LDN Detect timeout.
0xFFFFFFFF # AUTO (as defined by spec)
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE
DisableLUPTimeout
Specifies whether the Exerciser raises an error if the LUP is not
received during specified timeout (the connected device port does not
indicate its presence in the U0 Link state as part of transition to the
U0 state), in the Exerciser link layer.
Example: Set DisableLUPTimeout = 0
Possible values are:
0 # Enables error raising.
1 # Disables error raising and assumes that Link partner is present.
Default value: 0
Applicable Mode: HOST
11
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
DisableLDNTimeout
Specifies whether the Exerciser raises an error if the LDN is not
received during specified timeout (the connected device port does not
indicate its presence in the U0 Link state as part of transition to the
U0 state), in the Exerciser link layer.
Example: Set DisableLDNTimeout = 0
Possible values are:
0 # Enables error raising.
1 # Disables error raising and assumes that Link partner is present.
Default value: 0
Applicable Mode: DEVICE
DisableLUP
Specifies whether the Exerciser should disable LUP generation.
Example: Set DisableLUP = 0
Possible values are:
Custom USB 3.0 link flow control flags.
Example: Set CustomFlowControl = NO_LCRD_DETECT
Possible values are combinations of the following flags:
0 # Automatic link flow control
NO_LGOOD_DETECT = _0001 # LGOOD/LBAD detection is disabled, so any packet is sent immediately.
NO_LCRD_DETECT = _0010 # The Exerciser assumes that the Link
partner always has enough credits for receiving packets.
NO_LGOOD_GENERATION = _0100 # The Exerciser ignores any
error checking and assumes that all received packets are good
packets, without sending LGOOD.
NO_LCRD_GENERATION = _1000 # The Exerciser ignores
Rx buffer space check and also does not respond with LCRD.
NO_FLOW_CTRL = _1111 # Combination of all flags.
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
DelayLGOOD
Allows adding a specific delay to the response time of LGOODn.
Note that the requested time is added to the normal (minimum)
response time of the system.
Also note that time delay currently has 100 ns granularity.
Example: Set DelayLGOOD = 200
Possible values are:
delay in nanoseconds # delay to add.
0 # no delay
Default value: 0
Applicable Mode: DEVICE, HOST
DelayLGOODCnt
Specifies number of times to add DelayLGOOD.
Example: Set DelayLGOODCnt = 4
Possible values are:
positive integer # number of times to apply.
0 # no adding
0xFFFFFFFF # Apply this setting an infinite number of times.
Default value: 0
Applicable Mode: DEVICE, HOST
DelayLBAD
Allows adding a specific delay to the response time of LBADn.
Note that the requested time is added to the normal (minimum)
response time of the system.
Also note that time delay currently has 100 ns granularity.
Example: Set DelayLBAD = 300
Possible values are:
delay in nanoseconds # delay to add.
0 # no delay
Default value: 0
Applicable Mode: DEVICE, HOST
DelayLBADCnt
Specifies number of times to add DelayLBAD.
Example: Set DelayLBADCnt = 7
Possible values are:
positive integer # number of times to apply.
0 # no adding
0xFFFFFFFF # Apply this setting an infinite number of times.
Default value: 0
Applicable Mode: DEVICE, HOST
7.3 Link Delay Settings
These settings specify delays that the Voyager USB 3.0 Exerciser adds when it performs
link management and packet transmission.
13
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
DelayLCRD
Allows adding a specific delay to the response time of LCRDn.
Note that the requested time is added to the normal (minimum)
response time of the system.
Also note that time delay currently has 100 ns granularity.
Example: Set DelayLCRD = 100
Possible values are:
delay in nanoseconds # delay to add.
0 # no delay
Default value: 0
Applicable Mode: DEVICE, HOST
DelayLCRDCnt
Specifies number of times to add DelayLCRD.
Example: Set DelayLCRDCnt = 4
Possible values are:
positive integer # number of times to apply.
0 # no adding
0xFFFFFFFF # Apply this setting an infinite number of times.
Default value: 0
Applicable Mode: DEVICE, HOST
14
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
PwrStateAccept
Specifies how the Exerciser replies in response to a
Power Management states entry request in power state change link
commands (LGO_U1, LGO_U2, and LGO_U3).
Bit 0 specifies that the Exerciser replies with the LAU link command
on LGO_U1. Otherwise, it replies with the LXU link command.
Bit 1 specifies that the Exerciser replies with the LAU link command
on LGO_U2. Otherwise, it replies with the LXU link command.
Bit 2 specifies that the Exerciser replies with the LAU link command
on LGO_U3. Otherwise, it replies with the LXU link command.
Example: Set PwrStateAccept = AU1
Possible values are any combination of the following flags:
AU1 = 0x1 # Accept the request of entering U1 by sending LAU.
AU2 = 0x2 # Accept the request of entering U2 by sending LAU.
AU3 = 0x4 # Accept the request of entering U3 by sending LAU.
AU_ALL = (AU1 | AU2 | AU3)
AU_AUTO = 0x7 # AUTO mode. Reply to LGO_U1, LGO_U2, or
LGO_U3 based on the configured value through LMPs.
Default value: AUTO (0x7), so that the Exerciser accepts all power
state change requests.
Applicable Mode: HOST, DEVICE
DisableLPMA
Specifies whether the Exerciser responds with the LPMA link
command in response to LAU link commands. (This command is
used in conjunction with LGO_Ux and LAU handshakes to guarantee
that both ports are in the same state.)
Example: Set DisableLPMA = 0
Possible values are:
0 # Disables sending of LPMA in response to LAU.
1 # Enables sending of LPMA in response to LAU.
Default value: 1
Applicable Mode: HOST, DEVICE
DisablePMLCTimeout
Specifies whether the Exerciser link layer raises an error if the
PM Link command is not received during specified timeout.
Example: Set DisablePMLCTimeout = 1
Possible values are:
0 # Enables detection of timeout on receiving response to PM Link
command.
1 # Disables detection of timeout on receiving response to PM Link
command.
Default value: 0
Applicable Mode: HOST
7.4 Link Power Management Settings
These settings specify the USB 3.0 Link settings that the Voyager USB 3.0 Exerciser uses for
link power management.
15
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
PMLCTimeout
Controls the timeout of receiving LC response during PM entry
handshake, which is the time between LGO_U1, LGO_U2, or
LGO_U3 to LAU or LXU and the time between LAU to LPMA.
Example: Set PMLCTimeout = 40
Possible values are:
number of nanoseconds for PMLC timeout.
0xFFFFFFFF # AUTO (as defined by spec)
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
16
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
LFPSDutyCycle
LFPS duty cycle flags.
Example: Set LFPSDutyCycle = DC_60_PERCENT
Possible values are:
Specifies the value of tBurst of Polling.LFPS in nanoseconds.
Note that time value for this setting currently has 8 ns granularity.
Example: Set LFPSPollingTBurst = 64
Possible values are:
number of nanoseconds for tBurst of Polling.LFPS
0xFFFFFFFF # AUTO. Use the spec value.
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
LFPSPollingTRepeat
Specifies the value of tRepeat of Polling.LFPS in nanoseconds.
Note that time value for this setting currently has 8 ns granularity.
Example: Set LFPSPollingTRepeat = 128
Possible values are:
number of nanoseconds for tRepeat of Polling.LFPS
0xFFFFFFFF # AUTO. Use the spec value.
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
7.5 LFPS Settings
These settings specify LFPS parameters that the Voyager USB 3.0 Exerciser uses when it
performs LFPS signaling.
17
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
LFPSPingTBurst
Specifies the value of tBurst of Ping.LFPS in nanoseconds.
Note that time value for this setting currently has 8 ns granularity.
Example: Set LFPSPingTBurst = 256
Possible values are:
number of nanoseconds for tBurst of Ping.LFPS
0xFFFFFFFF # AUTO. Use the spec value.
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
LFPSPingTRepeat
Specifies the value of tRepeat of Ping.LFPS in nanoseconds.
Note that time value for this setting currently has 8 ns granularity.
Example: Set LFPSPingTRepeat = 4000
Possible values are:
number of nanoseconds for tBurst of Ping.LFPS
0xFFFFFFFF # AUTO. Use the spec value.
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
LFPSWarmResetTBurst
Specifies the value of tBurst of WarmReset.
Note that time value for this setting currently has 8 ns granularity.
Example: Set LFPSWarmResetTBurst = 625
Possible values are:
number of nanoseconds for tBurst of WarmReset
0xFFFFFFFF # AUTO. Use the spec value.
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
LFPSU1ExitTBurst
Specifies the value of tBurst of U1 Exit.
Note that time value for this setting currently has 8 ns granularity.
Example: Set LFPSU1ExitTBurst = 8
Possible values are:
number of nanoseconds for tBurst of U1 Exit
0xFFFFFFFF # AUTO. Use the spec value.
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
LFPSU2ExitTBurst
Specifies the value of tBurst of U2 Exit.
Note that time value for this setting currently has 8 ns granularity.
Example: Set LFPSU2ExitTBurst = 16
Possible values are:
number of nanoseconds for tBurst of U2 Exit
0xFFFFFFFF # AUTO. Use the spec value.
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
LFPSU3ExitTBurst
Specifies the value of tBurst of U3 Exit.
Note that time value for this setting currently has 8 ns granularity.
Example: Set LFPSU3ExitTBurst = 24
Possible values are:
number of nanoseconds for tBurst of U3 Exit
0xFFFFFFFF # AUTO. Use the spec value.
Default value: AUTO (0xFFFFFFFF)
Applicable Mode: DEVICE, HOST
18
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
19
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
ErrLostLGOOD
Specifies that the Exerciser does not reply with an LGOODn
link command when it receives the next Header Packet (HP).
Example: Set ErrLostLGOOD = 15
Possible values are Disabled (0), number of times (1 to 255),
or Infinite (0xFFFFFFFF).
Default value: Disabled (0)
Applicable Mode: HOST, DEVICE
Note: This setting is NOT applicable during link
advertisement stages.
ErrWrongLGOOD
Specifies that the Exerciser replies with a wrong LGOODn
link command when it receives the next Header Packet (HP).
Example: Set ErrWrongLGOOD = 15
Possible values are Disabled (0), number of times (1 to 255),
or Infinite (0xFFFFFFFF).
Default value: Disabled (0)
Applicable Mode: HOST, DEVICE
Note: This setting is NOT applicable during link
advertisement stages.
ErrLostLCRD
Specifies that the Exerciser does not reply with an LCRDn
link command when it receives the next Header Packet (HP).
Example: Set ErrLostLCRD = 15
Possible values are Disabled (0), number of times (1 to 255),
or Infinite (0xFFFFFFFF).
Default value: Disabled (0)
Applicable Mode: HOST, DEVICE
Note: This setting is NOT applicable during link
advertisement stages.
ErrWrongLCRD
Specifies that the Exerciser replies with a wrong LCRDn link
command when it receives the next Header Packet (HP).
Example: Set ErrWrongLCRD = 15
Possible values are Disabled (0), number of times (1 to 255),
or Infinite (0xFFFFFFFF).
Default value: Disabled (0)
Applicable Mode: HOST, DEVICE
Note: This setting is NOT applicable during link
advertisement stages.
7.6 Link Error Settings
These settings specify the USB 3.0 link error injection options that the Voyager USB 3.0
Exerciser uses when it performs link management and packet transmission.
20
Teledyne LeCroyVoyager USB 3.0 Exerciser Generation Script Language Reference Manual
ErrCorruptLinkCmd
Specifies that the Exerciser sends Link Commands with
wrong
CRC-5.
Example: Set ErrCorruptLinkCmd = 15
Possible values are Disabled (0), number of times (1 to 255),
or Infinite (0xFFFFFFFF).
Default value: Disabled (0)
Applicable Mode: HOST, DEVICE
Note: This setting is NOT applicable during link
advertisement stages.
ErrCorruptLinkCmdLCRDOnly
Specifies that the Link Command corruption setting should
be applied to LCRD Link Commands only.
Example: Set ErrCorruptLinkCmdLCRDOnly = 1
Possible values: 0 or 1
Default value: 0
Applicable Mode: HOST, DEVICE
ErrCorruptLMP
Specifies that the Exerciser sends Link Management Packets
(LMP) Commands with wrong CRC-16.
Example: Set ErrCorruptLMP = 15
Possible values are Disabled (0), number of times (1 to 255),
Specifies that LMP packets sent by the Exerciser should
include a wrong CRC5 value. The number of times to apply
this error is specified by the CRC5ErrRtryCnt Setting.
Example: Set ErrCorruptLMPCRC5 = 1
Possible values: 0 or 1
Default value: 0
Applicable Mode: HOST, DEVICE
ErrCorruptLMPCRC16
Specifies that LMP packets sent by the Exerciser should
include a wrong CRC16 value. The number of times to apply
this error is specified by the CRC16ErrRtryCnt Setting.
Example: Set ErrCorruptLMPCRC16 = 1
Possible values: 0 or 1
Default value: 0
Applicable Mode: HOST, DEVICE
ErrCorruptLMPHSN
Specifies that LMP packets sent by the Exerciser should
include a wrong Header Sequence Number value. The
number of times to apply this error is specified by the
HSNErrRtryCnt Setting.
Example: Set ErrCorruptLMPHSN = 1
Possible values: 0 or 1
Default value: 0
Applicable Mode: HOST, DEVICE
ErrCorruptLMPNoCap
Specifies that the Exerciser should not send the
LMP Capability packet during link initialization.
Example: Set ErrCorruptLMPNoCap = 1
Possible values: 0 or 1
Default value: 0
Applicable Mode: HOST, DEVICE
21
Loading...
+ 137 hidden pages
You need points to download manuals.
1 point = 1 manual.
You can buy points or you can get point for every manual you upload.