The Vtalk core represents those features common to both versaTest/NSK and VersaTest/MP environment. These have been extended within this release to provide even greater compatiblity between the two environments, by enhancing the NSK environment with features introduced initially in the MP environment. The following MP features are now also available in NSK:
Compound logical operators.
The logical operators AND, OR, NOT are now allowed in logical expressions. This is a long-requested feature, and will considerably simplify script layout.
Complex expressions in assignment operations Vtalk variables, context variables and message fields can now be referenced. Numeric expressions can include arithmetic and logical terms.
Vcom/MP's WAITFOR, GETEXCMDS and GETVARS commands implemented.
Import Lists no longer need to be compiled, and can instead now be loaded at Vpro runtime
These features are mainly improvements to the Vtalk language improving the ease with which scripts can be developed. They include:
True procedural operation
This is probably the single biggest change ever to the Vtalk language. The operation of EX and ACTION constructs has changed to use real procedures which can take call-by-value parameters, have local variables, and return a result. This enables much more modular and re-usable scripts to be developed.
A source-file tracing capability has been added, and script-related errors now include the original source location and thread history to enable easier post-mortem analysis.
Concatenation of strings
String expressions now allow the concatenation operator to enable easy building of strings. This operates in a very similar manner to the OUTPUT action, even allowing the automatic conversion of numeric terms to minimum-width strings.
New BIT operations
Another often requested feature, this one allows the user to manipulate numbers at the bit-level. New operators include boolean operations (LAND, LOR, XOR, LNOT) and bit-shifting operations (<< and >>)
Improved string handling:
New string searching and substitution actions have been added using POSIX-compatible regular expressions.
A new keyword 'ALL' can be specified when specifying the FOR of a string, enabling the entire string to be processed without the script developer having to continually track the length of the string.
In string comparisons the length can now be specified on both the left-hand-side and right-hand-side of the comparison operator, enabling a more accurate comparison.
Improved LIST handling:
Quoted data values are now allowed, facilitating greater interoperability with other programs such as Microsoft's Excel.
The list size limit of 32767 has been removed for regular LISTs and context lists
Previous limitations on the use of dynamic context lists have been removed
New data types
Two new classes of data types have been intoduced:
INTn_IVAR operates the same as INTn_VAR, with the exception that the length in the control field is INCLUSIVE of the control field length;
BCDn_VAR operates the same as INTn_VAR, with the exception that the length in the control field is encoded as BCD.
Users with data streams that use these types of data representation no longer need to use User Exits to handle them.
Increased the limits of many items.
By way of example, the number of context list entries is now limited only by physical memory.
Maximum Vtalk program size no longer has to be pre-determined
It will now grow automatically to the maximum physically allowed by Guardian.
These new features will improve the ease with which scripts can be deployed, and re-used. They include:
Parameterized EX's (User commands)
The new parameterized EX's are accessible from both the Vwin GUI and Vcom command-line interpreter. This will greatly increase the ease of use experienced by the user when using properly
Improved installation and re-installation
The NSK installation program will now offer more choices and capabilities during product installation, including the provision of local support for encryption, and locally customized installations. Choices made by the operator will be remembered for subsequent re-installs.
Hiding of development-level script information
For test operators, that is people not familiar with the internals of a test, all of the internal Vtalk variables and EX commands were previously visible from the user interface. This prompted negative reactions from less technical users who were overwhelmed with the level of information. This information can now be hidden within a Vtalk script, allowing the script developer to by default only see the minimum needed to externally operate the simulator.
Improved command-line operation
The VCOM command-line is used both for interactive and programmatic operation. Up until now programmatic operation of Vpro on NSK was difficult because results were returned separately through the log interface. This operation has now been changed along with other improvements:
Vcom CLI commands have been changed to be waited, and will normally only complete once the requested action has finished. For example if an EX which contains a WAITFOR action is PERFORMed from Vcom, then Vcom will by default not complete until the EX completes
Vpro will return its Vcom command responses to Vcom, which will display them on its OUTFILE
Vcom allows commands to be read from its INFILE, enabling more options for programmatic operation.
New command-line syntax help.
VCOM can now obtain the internal state of VREG, displaying, for example, port usage of active Vmon's.
Extended Vpro's startup processing options
To allow easier programmatic startup of Vpro, it will now additionally read startup configuration information provided through its INFILE.
Runtime LIST loading
Import Lists no longer need to be compiled, and can instead now be loaded at Vpro runtime, so avoiding compilation overheads.
Reduced memory footprint
Both the file size of compiled scripts, and the run-time memory of the Vpro & Vcomp have been signicantly reduced.
Mileage will vary, but by way of example the compiled size of Tutorial 3 has been reduced from 154k to 25k.