simics-uefi simicsfs_server
Simics Reference Manual  /  5 Classes  / 

simics_nvme_controller

Description

A generic NVMe I/O controller over PCIe with support multiple namespaces. Implements all mandatory features, commands and registers with the following limitations:The following optional registers are implemented:

Interfaces Implemented

conf_object, log_object, pcie_device

Notifiers

cell-change
Notifier that is triggered after the object's cell was changed.
object-delete
Notifier that is triggered just before Simics object is deleted.
queue-change
Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.
state-change
Notifier on potential DML state change

Port Objects

bank.msix_data
simics_nvme_controller.msix_data
bank.pcie_config
simics_nvme_controller.pcie_config
bank.properties
simics_nvme_controller.properties
port.HRESET
simics_nvme_controller.HRESET
port.SRESET
simics_nvme_controller.SRESET
port.phy
simics_nvme_controller.phy

Commands for this class

Attributes

SN
Optional attribute; read/write access; type: s
The serial number for the NVM subsystem as an ASCII string.
bandwidth
Optional attribute; read/write access; type: i
The read/write speed of the NVMe disk, provided in MB/s. 0 means instant read/write:s, which is the default value
disk_size
Optional attribute; read/write access; type: i
The total size of the NVMe disk
images
Optional attribute; read/write access; type: [o|[os]|n{0:1024}]
Namespace images

Required interfaces: image.

namespace_sizes
Optional attribute; read/write access; type: [i*]
Size of the respective namespaces

Provided By

simics-nvme-controller

simics_nvme_controller.HRESET

Interfaces Implemented

conf_object, log_object, signal

Notifiers

cell-change
Notifier that is triggered after the object's cell was changed.
object-delete
Notifier that is triggered just before Simics object is deleted.
queue-change
Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.

simics_nvme_controller.SRESET

Interfaces Implemented

conf_object, log_object, signal

Notifiers

cell-change
Notifier that is triggered after the object's cell was changed.
object-delete
Notifier that is triggered just before Simics object is deleted.
queue-change
Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.

simics_nvme_controller.msix_data

Interfaces Implemented

conf_object, log_object, bank_instrumentation_subscribe, instrumentation_order, io_memory, register_view, register_view_read_only

Notifiers

cell-change
Notifier that is triggered after the object's cell was changed.
object-delete
Notifier that is triggered just before Simics object is deleted.
queue-change
Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.

Commands for interface bank_instrumentation_subscribe

Commands for interface instrumentation_order

simics_nvme_controller.pcie_config

Interfaces Implemented

conf_object, log_object, bank_instrumentation_subscribe, instrumentation_order, register_view, register_view_read_only, transaction

Notifiers

cell-change
Notifier that is triggered after the object's cell was changed.
object-delete
Notifier that is triggered just before Simics object is deleted.
queue-change
Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.

Commands for interface bank_instrumentation_subscribe

Commands for interface instrumentation_order

Commands for interface transaction

Attributes

function_number
Pseudo attribute; read-only access; type: i
PCIe function number of this bank

simics_nvme_controller.phy

Interfaces Implemented

conf_object, log_object, transaction

Notifiers

cell-change
Notifier that is triggered after the object's cell was changed.
object-delete
Notifier that is triggered just before Simics object is deleted.
queue-change
Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.

Commands for interface transaction

simics_nvme_controller.properties

Interfaces Implemented

conf_object, log_object, bank_instrumentation_subscribe, instrumentation_order, io_memory, register_view, register_view_read_only

Notifiers

cell-change
Notifier that is triggered after the object's cell was changed.
object-delete
Notifier that is triggered just before Simics object is deleted.
queue-change
Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.

Commands for interface bank_instrumentation_subscribe

Commands for interface instrumentation_order

simics-uefi simicsfs_server