Visible to Intel only — GUID: kyk1679234701251
Ixiasoft
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
Visible to Intel only — GUID: kyk1679234701251
Ixiasoft
5.4.1. Listing Objects in the Target System
In Intel® Simics® simulator environment, the virtual hardware platform is presented in a tree hierarchy of namespace and objects. Each namespace can be expanded down to its sublevel objects as all hardware in an Intel® Simics® target machine is simulated as an object. The first method to inspect hardware is to list objects using the list-objects command as shown below:
list-objects ["iface"] ["class"] [namespace] ["substr"] [-n] [-a] [-all] [-recursive] [-tree]
Command | Description |
---|---|
["iface"] | Only lists objects with a particular interface. |
["class"] | Only lists objects of a particular class. |
[namespace] | Lists all objects inside the given namespace. |
["substr"] | Lists all objects containing the given substring – especially useful with –all. |
-n | Sorts by name instead of by class. |
-all | Lists objects anywhere in the configuration. |
-recursive | Lists objects in the current namespace and below. |
-tree | Prints a tree structure similar to the view in the System Editor. |
In the Intel® Simics® simulator CLI, enter the list-objects command. You see that the namespace agilex (which is an object by itself) is defined in the class sm_hps_board. The agilex is the namespace for the target board HPS hardware system. Other name spaces are ethernet_switch0, fpga0, and service_node_cmp0. Names might vary on different systems.
# Intel Simics simulator CLI # You can use “list-objects” with or without stopping simics. simics> list-objects ------------------------------------------ Component Class Object ------------------------------------------ <fm_hps_board> agilex <ethernet_switch> ethernet_switch0 <fm_fpga_base_board> fpga0 <service_node_comp> service_node_cmp0 ------------------------------------------ ------------------------------------------ Class Object ------------------------------------------ <bp-manager> bp <breakpoints-old> breakpoints <sync_domain> default_sync_domain <script-params> params <preferences> prefs <sim> sim ------------------------------------------
You can inspect the objects under system.board.fpga by entering list-object namespace = system.board.fpga. This returns a list of all objects. The output list can be very long.
# Intel Simics simulator CLI simics> list-objects namespace = agilex ------------------------------------------ Component Class Object ------------------------------------------ <txt_console_comp> agilex.console0 <fm_hps_comp> agilex.hps <fm_hps_nand_flash_comp> agilex.nand_image <spi_flash_comp> agilex.qspi_slave <sd_comp> agilex.sd_card ------------------------------------------ ------------------------------------------ Class Object ------------------------------------------ <crypto_engine_aes> agilex.aes_engine <frequency_bus> agilex.boot_clk <fm_hps_ccu> agilex.ccu <cell> agilex.cell <fm_hps_i2c_0> agilex.i2c0 : : : : <fm_hps_sysmgr> agilex.sysmgr <fm_hps_uart0> agilex.uart0 <fm_hps_uart1> agilex.uart1 <fm_hps_wdt0> agilex.wdt0 <fm_hps_wdt1> agilex.wdt1 ------------------------------------------
To further inspect the details of an object, enter command list-objects namespace = [namespace].[object]. Use the -tree option to view the object connections as a hierarchy. To view the table and tree representation of the HPS hardware system, enter commands as follows.
# Intel Simics simulator CLI # using object “agilex.hps” as an example simics> list-objects namespace = agilex.hps ------------------------------------------------- Class Object ------------------------------------------------- <arm_broadcast_bus> agilex.hps.broadcast_bus <bitmask-translator> agilex.hps.bt <arm-cortex-a53> agilex.hps.core[0] <arm-cortex-a53> agilex.hps.core[1] <arm-cortex-a53> agilex.hps.core[2] <arm-cortex-a53> agilex.hps.core[3] <memory-space> agilex.hps.cpu_mem[0] <memory-space> agilex.hps.cpu_mem[1] <memory-space> agilex.hps.cpu_mem[2] <memory-space> agilex.hps.cpu_mem[3] <fm_hps_gic> agilex.hps.gic <memory-space> agilex.hps.gic_mem[0] <memory-space> agilex.hps.gic_mem[1] <memory-space> agilex.hps.gic_mem[2] <memory-space> agilex.hps.gic_mem[3] <memory-space> agilex.hps.gic_mem_ns[0] <memory-space> agilex.hps.gic_mem_ns[1] <memory-space> agilex.hps.gic_mem_ns[2] <memory-space> agilex.hps.gic_mem_ns[3] <signal-bus> agilex.hps.l2reset_n_bus <memory-space> agilex.hps.phys_mem <arm_generic_timer> agilex.hps.timer[0] <arm_generic_timer> agilex.hps.timer[1] <arm_generic_timer> agilex.hps.timer[2] <arm_generic_timer> agilex.hps.timer[3] ------------------------------------------------- simics> list-objects namespace = agilex.hps -tree
![](/content/dam/docs/us/en/784383/23-4/ltq1683746941151.png)
To list out every namespace and object available in an Intel® Simics® simulator environment, use the following commands:
- list-objects namespace -all : Lists all objects of the main namespace.
- list-namespaces : Lists all namespaces and sublevel objects.