sample-pcie-ats-prs-dma sample-pcie-external-connection
Simics Reference Manual  /  5 Classes  / 

sample-pcie-device

Description

A sample PCIe endpoint with a BAR mapped register bank that contains a register that when written sends an MSI-X interrupt after 0.1 seconds. It has 3 PCIe capabilities that are mandatory for an endpoint. While it uses MSI-X for interrupts but MSI could be used also/instead.

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.bar_mapped_bank
sample-pcie-device.bar_mapped_bank
bank.msix_data
sample-pcie-device.msix_data
bank.pcie_config
sample-pcie-device.pcie_config
port.HRESET
sample-pcie-device.HRESET
port.phy
sample-pcie-device.phy
port.upstream_ingress
sample-pcie-device.upstream_ingress
upstream_ingress_targets
sample-pcie-device.upstream_ingress_targets

Commands for this class

Provided By

sample-pcie-device

sample-pcie-device.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.

sample-pcie-device.bar_mapped_bank

Interfaces Implemented

conf_object, log_object, bank_instrumentation_subscribe, instrumentation_order, register_view, register_view_catalog, 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

sample-pcie-device.msix_data

Interfaces Implemented

conf_object, log_object, bank_instrumentation_subscribe, instrumentation_order, register_view, register_view_catalog, 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

sample-pcie-device.pcie_config

Interfaces Implemented

conf_object, log_object, bank_instrumentation_subscribe, instrumentation_order, pcie_function_info, register_view, register_view_catalog, 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 pcie_function_info

Commands for interface transaction

Attributes

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

sample-pcie-device.phy

Interfaces Implemented

conf_object, log_object, pcie_link_readiness, 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

sample-pcie-device.upstream_ingress

Interfaces Implemented

conf_object, log_object, pcie_ingress_handling, transaction_translator, translation_flush

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_translator

sample-pcie-device.upstream_ingress_targets

Interfaces Implemented

conf_object, log_object

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.

Port Objects

config
memory-space – Instances of the memory-space class provide linear address spaces into which devices and memory can be mapped.
io
memory-space – Instances of the memory-space class provide linear address spaces into which devices and memory can be mapped.
memory
memory-space – Instances of the memory-space class provide linear address spaces into which devices and memory can be mapped.
message
memory-space – Instances of the memory-space class provide linear address spaces into which devices and memory can be mapped.
port.broadcast
sample-pcie-device.upstream_ingress_targets.broadcast

sample-pcie-device.upstream_ingress_targets.broadcast

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

sample-pcie-ats-prs-dma sample-pcie-external-connection