This section is additional information for users that want to do a customized installation or get deeper information in some issues.
All Simics packages are installed separately, in
different directories. This makes it easy to upgrade or remove a
package without touching the rest of the installation. Each Simics
installation keeps its own list of paths to add-on packages, called
the add-on package list. It makes them available to the Simics engine
at run-time. This list can be printed and configured using
the addon-manager
program.
Here are a few examples of what the addon-manager
can do:
To print out the add-on packages configured in a given installation of Simics, do the following:
joe@computer$ [simics]/bin/addon-manager Simics 6 Add-on Package Manager ================================= This script will configure this Simics installation to use optional Simics add-on packages. Default alternatives are enclosed in square brackets ([ ]). === Using the package list in Simics installation(/opt/simics/simics-6/simics-6.0.0) === Configured add-on packages: QSP-x86 6.0.0 (linux64) ../simics-QSP-x86-6.0.0
If there are any add-on packages that are invalid (the directory does not exist
anymore, or the necessary information files are invalid),
addon-manager
will ask you if they can be removed. Refer to the
paragraph below describing how to remove add-on packages that have been
uninstalled.
To add an installed add-on package to the list, do the following:
joe@computer$ [simics]/bin/addon-manager -s /opt/[...]/simics-x86-440bx-6.0.0 [...] Configured add-on packages: QSP-x86 6.0.0 (linux64) ../simics-QSP-x86-6.0.0 The following operations will be performed: -> Add X86-440BX 6.0.0 (linux64) ../simics-x86-440bx-6.0.0 New package list: QSP-x86 6.0.0 (linux64) ../simics-QSP-x86-6.0.0 X86-440BX 6.0.0 (linux64) ../simics-x86-440bx-6.0.0 Do you want to update the package list? (y/n) [y] <ENTER>
Whenever you install a new add-on package, the installer will suggest to register it to the most likely Simics installation found, so this step will often be unnecessary.
To remove an add-on package from the list, do the following:
joe@computer$ [simics]/bin/addon-manager -d /opt/[...]/simics-x86-440bx-6.0.0/ [...] Configured add-on packages: QSP-x86 6.0.0 (linux64) ../simics-QSP-x86-6.0.0 X86-440BX 6.0.0 (linux64) ../simics-x86-440bx-6.0.0 The following operations will be performed: -> Remove X86-440BX 6.0.0 (linux64) ../simics-x86-440bx-6.0.0 New package list: QSP-x86 6.0.0 (linux64) ../simics-QSP-x86-6.0.0 Do you want to update the package list? (y/n) [y] <ENTER>
addon-manager
will automatically propose to remove add-on packages
that are not valid (the path does not exist, or the necessary information files
are not present). In that case, you just need to accept to update the
configuration.
joe@computer$ [simics]/bin/addon-manager [...] Configured add-on packages: QSP-x86 6.0.0 (linux64) ../simics-QSP-x86-6.0.0 (invalid: missing) ../simics-x86-440bx-6.0.0 The following operations will be performed: -> Remove (invalid: missing) ../simics-x86-440bx-6.0.0 New package list: QSP-x86 6.0.0 (linux64) ../simics-QSP-x86-6.0.0 Do you want to update the package list? (y/n) [y] <ENTER>
When installing a newer version of Simics, you may want to re-use the same add-on packages you used to have in the previous version. This is done by upgrading from the previous installation:
joe@computer$ /opt/[...]/simics-6.1/bin/addon-manager-u /opt/[...]/simics-6.0.0/ [...] Package list successfully updated from '/opt/[...]/simics-6.0.0/'. The previous package list has been saved as
'/opt/[...]/simics-6.1/.package-list.backup'. Configured add-on packages: X86-440BX 6.0.0 linux64 ../simics-x86-440bx-6.0.0 joe@computer$
If the installer finds that a previous Simics version is installed, it will suggest an automatic upgrade to the newer version.
All Simics packages are installed separately, in different
directories. This makes it easy to upgrade or remove a package without touching
the rest of the installation. Each Simics installation keeps its own list of
paths to add-on packages, called the add-on package list. It
makes them available to the Simics engine at run-time. This list can be printed
and configured using the addon-manager
program. Unfortunately, this
program is currently only available from the command line, so you
have to run it from a cmd.exe
window.
addon-manager.bat
in a Cygwin terminal, you may
have problems with paths including spaces, even when quoting them
properly. This is a Cygwin-specific problem. You can work-around the problem by
using cmd.exe
for that specific command, or by installing Simics
in a directory that does not contain spaces.addon-manager
can do:
To print out the add-on packages configured in a given installation of Simics, do the following:
C:\>cd "C:\Program Files\Simics\Simics 6\Simics 6.0.0" C:\... 6.0.0>bin\addon-manager.bat Simics 6 Add-on Package Manager =============================== This script will configure this Simics installation to use optional Simics add-on packages. Default alternatives are enclosed in square brackets ([ ]). === Using the package list in Simics installation (C:\Program Files\Simics\Simics 6\Simics 6.0.0) === Configured add-on packages: QSP-x86 6.0.0 (win64) ..\model library quick start platform for x86 6.0.0
If there are any add-on packages that are invalid (the directory does not exist
anymore, or the necessary information files are invalid),
addon-manager
will ask if they can be removed. Refer to the paragraph
below describing how to remove add-on packages that have been uninstalled.
To add an installed add-on package to the list, do the following:
C:\>cd "C:\Program Files\Simics\Simics 6\Simics 6.0.0" C:\... 6.0.0>bin\addon-manager.bat -s "..\Platform Intel 440BX-based x86 PC 6.0.0" [...] Configured add-on packages: QSP-x86 6.0.0 (win64) ..\model library quick start platform for x86 6.0.0 The following operations will be performed: -> Add x86-440BX 6.0.0 (win64) ..\model library intel 440bx-based x86 pc 6.0.0 New package list: QSP-x86 6.0.0 (win64) ..\model library quick start platform for x86 6.0.0 X86-440BX 6.0.0 (win64) ..\model library intel 440bx-based x86 pc 6.0.0 Do you want to update the configuration? (y, n) [y]: <ENTER> Package list updated
Whenever you install a new add-on package, the installer will propose to register it to the most likely Simics installation found, so this step will often be unnecessary.
To remove an add-on package from the list, do the following:
C:\>cd "C:\Program Files\Simics\Simics 6\Simics 6.0.0" C:\... 6.0.0>bin\addon-manager.bat -d "..\model library intel 440bx-based x86 pc 6.0.0" [...] Configured add-on packages: QSP-x86 6.0.0 (win64) ..\model library quick start platform for x86 6.0.0 X86-440BX 6.0.0 (win64) ..\model library intel 440bx-based x86 pc 6.0.0 The following operations will be performed: -> Remove x86-440BX 6.0.0 (win64) ..\model library intel 440bx-based x86 pc 6.0.0 New package list: QSP-x86 6.0.0 (win64) ..\model library quick start platform for x86 6.0.0 Do you want to update the configuration? (y, n) [y]: <ENTER>
Package list updated
The addon-manager
will automatically propose to remove add-on packages
that are not valid (the path does not exist, or the necessary information files
are not present). In that case, you just need to accept to update the
configuration.
C:\>cd "C:\Program Files\Simics\Simics 6\Simics 6.0.0" C:\... 6.0.0>bin\addon-manager.bat [...] Configured add-on packages: QSP-x86 6.0.0 (win64) ..\model library quick start platform for x86 6.0.0 (invalid: missing) ..\model library intel 440bx-based x86 pc 6.0.0 The following operations will be performed: -> Remove (invalid: missing) ..\model library intel 440bx-based x86 pc 6.0.0 New package list: QSP-x86 6.0.0 (win64) ..\model library quick start platform for x86 6.0.0 Do you want to update the configuration? (y, n) [y]: <ENTER>
Package list updated
When installing a newer version of Simics, the installer will find any previous Simics version installed and it will propose you to re-use an existing package list. Otherwise you may want to re-use the same add-on packages you used to have in the previous version. This is done by upgrading from the previous installation:
C:\>cd "C:\Program Files\Simics\Simics 6\Simics 6.0.1" C:\... 6.0.1>bin\addon-manager.bat -u "..\Simics 6.0.0" [...] Package list successfully updated from 'C:\Program Files\[...]6.0.0'. The previous package list has been saved as 'C:\Program Files\[...]6.0.1\.package-list.backup'. === Using the package list in Simics installation (C:\Program Files\Simics\Simics 6\Simics 6.0.1) === Configured add-on packages: QSP-x86 6.0.0 (win64) ..\model library quick start platform for x86 6.0.0
Simics automatically recognizes modules that are located in the current project, in any of the configured add-on packages, and in the base installation. When confronted with several versions of the same modules, it applies the following selection rules:
SIMICS_EXTRA_LIB
environment variable, or
the add-module-directory command.When the same module is found in several locations, user modules are always chosen in preference to packaged modules: if you recompile a module provided as source code in your project, the project version will always be chosen first, as long as it is possible to load it into Simics.
Within the same group of modules, priority is given to the newest module, according to the build date that is compiled in the module at link time. For example, when two add-on packages provide the same module, Simics will always load the newest one.
Some functionality in Simics requires third-party products. These are: OpenVPN TAP driver, MinGW and any software that can set up virtual COM ports.
Simics requires the OpenVPN TAP driver to access a real network using bridges or host connections. The port-forwarding kind of real network connection, included in Simics, does not require any third party software. To learn more about the different real network connection types available, read the Ethernet Networking technology guide.
If you plan to create new models in Simics, you will need the MinGW tools to compile your models.
The project-setup
script will search in C:\
and
in the parent folder of the Simics Base installation for a directory
named mingw64
, which must contain the prebuilt MinGW. However,
MinGW can be put anywhere if project-setup
is used with
the --mingw-dir option.
By default, Simics is organized so that the installed packages can be left read-only; users work in a project, as described in our manuals, or in an appropriate work area. This makes it easy to share a Simics installation since the packages can be simply installed in a common location accessible to all users. In this case, all of them will share the same combination of add-on packages, essentially the exact same Simics installation.
Simics can be installed so that add-on package configuration is done on a per-user basis. Each user will configure the specific add-on packages it wishes to use. This configuration can be stored in a project (the easiest alternative) or in a separate file. Per-user configuration lets you install Simics in a read-only location while giving users full freedom to configure and run with the add-on packages of their choice.
By default a project inherits the package associations of the main
installation: When a package is installed in the main installation,
this affects Simics when invoked from the project. When per-user
configuration is used, a project instead manages add-on packages
independently of the main installation, via
the addon-manager
script located in the project. The
project will not be affected by the package associations of the main
installation. In order to enable per-user configuration in a
project, run the addon-manager
script located in that
project, with the -c or -C option.
With -c, the initial project-local configuration will
have no package associations; with -C, it will be based on
the set of packages currently configured in the main installation.
Local configuration is done with further invocations of
the addon-manager
script in the project.
The add-on package configuration can also be stored in a specific file, by
using the -f option of the addon-manager
script. Configuration is identical to the other cases, but Simics must be
informed explicitly of the existence of the file via its own command line
argument -package-file.
If the Simics packages are imported in a configuration management system such as ClearCase or CVS, different options are available:
Currently, Simics packages are meant to be installed per machine. User installation is not supported. Simics packages can be installed side by side without risks, as each release of a given package is independent from all others.
Packages are installed read-only, and all the instructions above can be followed to create global or per-user configurations.
The Simics installer script provides command line options to directly specify the packages to install and the way it should be done. When command line options are provided, the corresponding questions in the interactive installation are skipped automatically.
It is possible to run the installer in batch mode, by passing the -b switch.
The installation script creates a log file called install.log
in
the current directory. If something goes wrong during the installation,
the log file can be used to examine the situation.
See Simics Reference Manual for the full list of command line
arguments for install-simics.pl
.
The Simics Add-on Manager is provided with your Simics
installation. You will find it at
[simics]
/bin/addon-manager
, or at
[project]
/bin/addon-manager
. The addon-manager script
found in the project will associate packages with the project,
while the script in the base package will associate packages with the
main Simics installation.
By default, a project inherits the package associations of the main installation. If you want to make package associations locally in a project, you must first run addon-manager once with the -C or -c switch, in order to override this default.
In all cases, the addon-manager
script creates a log file called
addon-manager.log
in the current directory. This log file can, if
necessary, be used to debug and understand any errors that occurred.
It is possible to run the addon-manager in batch mode, by passing the -b switch.
See Simics Reference Manual for the full list of command line
arguments that can be given to addon-manager
.