Synopsys: Silver¶
Vendor information
Vendor |
Web page |
Product name |
Version |
|---|---|---|---|
Synopsys |
Silver |
from S-2021.06 |
Categories
MDL 🛈 |
APL 🛈 |
BAN 🛈 |
BMA 🛈 |
SVC 🛈 |
DGN 🛈 |
FIU 🛈 |
EES 🛈 |
FCT 🛈 |
DBG 🛈 |
IMG 🛈 |
AUDIO 🛈 |
ENVSIM 🛈 |
ENVCOM 🛈 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
✓ |
✓ |
✓ |
Signal recordings 🛈
File format |
Comment |
|---|---|
*.mdf, *.mf4 |
Platform
Operating system |
Support |
|---|---|
Windows |
✓ |
Linux |
Ports¶
Specifics¶
Setup
By default the required environment variables are set during the installation of Silver. If Silver was installed with another user, the environment variables
SILVER_HOME and
SNPSLMD_LICENSE_FILE
may need to be set manually for the current user.
Info
Using the APL-Port together with an A2L file only works properly, if the renaming feature in SILVER is not used. The variables names have to be unmodified, otherwise ecu.test is not able to access the correct values.
Simulation time modes
In continuous or stepwise simulation time mode (see simulation time modes), using the tool jobs to influence the simulation (start, stop, pause, reset) is explicitly not recommended. Using them in one of these modes will lead to wrong timestamps at the test steps in the report and possibly to incorrect behavior.
ecu.test/SILVER configuration file (*.esi)
SILVER solely offers complex data structures like vectors or matrices by their child elements in
the model, e.g. VectorA is represented by the elements VectorA[0], VectorA[1], VectorA[2] and
VectorA[3]. To simplify working with complex data structures so-called *.esi files
can be created and finally added to the test configuration as Additional Files.
These files are model specific and have to be created for every new model by hand. Afterwards
vectors and matrices can be read and written directly. However recording these complex signals
is currently only supported as MDF3 (*.mdf).
The syntax is shown in the following example:
# ecu.test + SILVER configuration file
# This file lists all in SILVER available variables of type vector and matrix that have to
# be written by ecu.test
# VECTOR
# Syntax: SILVERname[firstIndex:lastIndex|*]
# Example intern ABF counter:
# Abf_EventCounter[0], Abf_EventCounter[1], ..., Abf_EventCounter[19]
Abf_EventCounter[0:19]
# Example VectorA with four elements:
VectorA[0:3]
# Example Vector[1] (in this case, [1] ist part of the name) with 18 elements:
# Vector[1][3], Vector[1][4], ..., Vector[1][20]
Vector[1][3:20]
# Example dynamic VectorD. Its length is fixed only at runtime.
# VectorD[0], ...
VectorD[0:*]
Vector[1][3:20]
# MATRIX
# Syntax: SILVERname[firstRowIndex:lastRowIndex|*][firstColumnIndex:lastColumnIndex|*]
# Example data buffer:
# Data_Buffer_ABW_NEw1[0][0], Data_Buffer_ABW_NEw1[0][1], ..., Data_Buffer_ABW_NEw1[0][19],
# Data_Buffer_ABW_NEw1[1][0], Data_Buffer_ABW_NEw1[1][1], ..., Data_Buffer_ABW_NEw1[1][19],
# ...
# Data_Buffer_ABW_NEw1[12][0], Data_Buffer_ABW_NEw1[12][1], ..., Data_Buffer_ABW_NEw1[12][19],
Data_Buffer_ABW_NEw1[0:12][0:19]
# Example dynamic Table. Its column count is fixed only at runtime.
# Matrix[0][0], ...
# Matrix[1][0], ...
Table[0:1][0:*]
Info
Indices do not have to start with 0.
Info
Only last indices can be declared as dynamic (*). For matrices, row and column count may both be declared as dynamic at once, too.
Info
In SILVER variable names often end with squared brackets, that has to be mentioned as a part of the name in the configuration file.
Properties 🛈¶
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
Project file |
string |
Path to the Silver project file (*.sil). Absolute or relative to the path set in the SILVER_HOME environment variable |
|||
Sampling rate ❲1/second❳ for playing stimuli |
100 |
int |
When stimulated, the STI file is translated into a list of timestamps. This setting determines how many entries should be created per second. |
||
Command line parameters |
string |
Command line parameters that are passed to Silver. If a project file is specified, it is passed automatically, otherwise it is started with “-e”. |
|||
Lock Silver-GUI |
☐ |
bool |
Possibility to lock the Silver-GUI during test execution (Not possible in all versions of Silver) |
||
Recording format |
‘MDF4 (*.mf4)’ |
[‘MDF4 (*.mf4)’, ‘MDF3 (*.mdf) (legacy)’] |
string |
Data format in which Silver should create recordings. |
|
Simulation engine |
‘Silver 2’ |
[‘Silver 2’, ‘Silver 3’] Display values:
|
string |
Type of SILVER’s internal simulation engine to be used. |
|
Timeout for tool call ❲in sec.❳ |
‘600’ |
string |
Timeout after which a tool call is aborted. |
Jobs 🛈¶
HiLPauseSimulation¶
Pauses simulation in SILVER.
Attention:
The use of this job is explicitly intended only for the time mode “real-time”. Using it in combination with any other time mode may result in wrong time stamps in the report and possibly in further incorrect behavior.
HiLStartSimulation¶
Starts simulation in SILVER.
Attention:
The use of this job is explicitly intended only for the time mode “real-time”. Using it in combination with any other time mode may result in wrong timestamps in the report and possibly in further incorrect behavior.
HiLStopSimulation¶
Stops simulation in SILVER.
Attention:
The use of this job is explicitly intended only for the time mode “real-time”. Using it in combination with any other time mode may result in wrong timestamps in the report and possibly in further incorrect behavior.
IsSimulationRunning¶
Returns True if the simulation is running, else False
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
result |
[False, True] |
bool |
ResetSimulation¶
Resets the simulation.
Attention:
Running recordings are terminated during the reset. It is no longer possible to start new recordings in the running test case after the reset.
Attention:
The use of this job is explicitly intended only for the time mode “real-time”. Using it in combination with any other time mode may result in wrong timestamps in the report and possibly in further incorrect behavior.