1. About This Document
2. Intel® Simics® Simulator and Virtual Platforms
3. Intel® Simics® Simulator for Intel® FPGAs Device Portfolio
4. Installing the Intel® Simics® Simulator for Intel® FPGAs
5. Getting Started with Intel® Simics® Simulator
6. Debugging Target Software
7. Networking with the Simulated Target System
8. Intel® Simics® Scripting
9. Software Debug Examples with Intel® Simics® Simulator
10. Document Revision History for Intel® Simics® Simulator for Intel FPGAs User Guide
A. Intel® Simics® Simulator Command Reference
5.3.1. Version of the Intel® Simics® Simulator for Intel FPGAs Software
5.3.2. Simulation Run Control from CLI
5.3.3. Intel® Simics® Simulator Command Scope
5.3.4. Intel® Simics® Simulator CLI Variables and Operations
5.3.5. Intel® Simics® Simulator CLI Command Completion and Command History
5.3.6. Intel® Simics® Command-Line Interface Help
5.3.7. Capture of CLI Session to a File
5.3.8. Intel® Simics® Simulator File Location and Intel® Simics® Search Path
5.3.7. Capture of CLI Session to a File
Intel® Simics® simulator provides the ability to redirect the output of the CLI to a file in the host PC file system. This is helpful when you want to remember or track the commands that were entered in an Intel® Simics® simulation session for repeatability purposes. This is also helpful for debug purposes when you increase the log verbosity of the session (using the log-level command), and you want to send this to someone else for analysis.
Intel® Simics® simulator provides the ability to access the file system of the host PC from the CLI. This can be verified using the pwd, ls or cd commands. The functionality of these commands is equivalent to the same commands that Linux provides. By default, the CLI session runs in the same file system path in which the Intel® Simics® project was created. This path is returned when the pwd command is called. The ls command shows the items in the current path while the cd command allows to switch to a different directory. An example of these operations is as follows:
# Intel Simics simulator CLI simics> pwd Current directory is /home/simicsUser/SimicsInstallDir/project-1 simics> ls .cproject .settings compiler.mk modules simics-gui .modcache GNUmakefile config.mk myImages targets .project artifactory doc simics .project-properties bin documentation simics-riscfree simics> cd targets simics> pwd Current directory is /home/simicsUser/SimicsInstallDir/project-1/targets simics> cd .. simics> pwd Current directory is /home/simicsUser/SimicsInstallDir/project-1
Now, the commands used to capture the CLI output to a file are start-command-line-capture and stop-command-line-capture. As the name of the command indicates, the first command defines the moment in which the capture starts while the second one defines the moment in which the capture finishes. The syntax for these commands is the following.
start-command-line-capture <filename> [-overwrite] [-append] [-timestamp] stop-command-line-capture <filename>
For the start command, the file is not overwritten unless you specify the -overwrite flag. The -append flag allows the output to be appended to the specified file. An optional time stamp showing wall-clock time can be added at the start of each line, enabled with the -timestamp flag.
The following capture shows an example of this. Here, it can be seen that the SimicsCLI.log file was created.
# Intel Simics simulator CLI simics> start-command-line-capture simicsCLI.log Output captured to '/root/simicsUser/SimicsInstallDir/project-1/simicsCLI.log' simics> help-search "breakpoint" The text 'breakpoint' appears in the documentation for the following items: Command <bank_instrumentation_subscribe>.bp-break-bank Command <bank_instrumentation_subscribe>.bp-run-until-bank Command <bank_instrumentation_subscribe>.bp-trace-bank Command <bank_instrumentation_subscribe>.bp-wait-for-bank Command <bp-manager.bank>.break : Hap Core_Breakpoint_Memop Hap Core_Disable_Breakpoints simics> stop-command-line-capture simicsCLI.log simics> pwd Current directory is /root/simicsUser/SimicsInstallDir/project-1 simics> ls .cproject .settings compiler.mk modules simics-gui .modcache GNUmakefile config.mk myImages simicsCLI.log .project artifactory doc simics targets .project-properties bin documentation simics-eclipse
By reviewing the contents of the new log file ( SimicsCLI.log), you can confirm that the CLI was captured correctly from the time it started to the time it was stopped:
# Host Terminal $ cat simicsCLI.log Output captured to '/root/simicsUser/SimicsInstallDir/project-1/simicsCLI.log' simics> help-search "breakpoint" The text 'breakpoint' appears in the documentation for the following items: Command <bank_instrumentation_subscribe>.bp-break-bank Command <bank_instrumentation_subscribe>.bp-run-until-bank Command <bank_instrumentation_subscribe>.bp-trace-bank Command <bank_instrumentation_subscribe>.bp-wait-for-bank : Hap Core_Breakpoint_Memop Hap Core_Disable_Breakpoints simics> stop-command-line-capture simicsCLI.log