This class manages the downstream address spaces and connected devices for PCIe switches and Root Complexes
conf_object, log_object, pcie_map, pcie_port_control, transaction, translator
- 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
- cfg_space
-
memory-space
– downstream Config space
- io_space
-
memory-space
– downstream I/O space
- mem_space
-
memory-space
– downstream Memory space
- msg_space
-
memory-space
– downstream Message space
- port.HOT_RESET
-
pcie-downstream-port.HOT_RESET
- port.broadcast
-
pcie-downstream-port.broadcast
- port.cfg
-
pcie-downstream-port.cfg
– access point into downstream Config space
- port.downstream
-
pcie-downstream-port.downstream
– access point into downstream PCIe space
- port.ecam
-
pcie-downstream-port.ecam
– ECAM configuration space
- port.io
-
pcie-downstream-port.io
– access point into downstream I/O space
- port.mem
-
pcie-downstream-port.mem
– access point into downstream Memory space
- port.msg
-
pcie-downstream-port.msg
– access point into downstream Message space
- port.phy
-
pcie-downstream-port.phy
-
info
– print information about the object
-
status
– print status of the object
-
wait-for-get
– issue an inquiry read transaction and wait for it to complete
-
wait-for-read
– issue a read transaction and wait for it to complete
-
wait-for-set
– issue an inquiry write transaction and wait for it to complete
-
wait-for-write
– issue a write transaction and wait for it to complete
-
devices
-
Optional attribute;
read/write access; type:
[[iio]|[io]|o*]
Connected PCIe devices. Format is (device_number, function_number, object)*). The device_number can be omitted, in which case function_number is an 8-bit or 16-bit number. In the case of a 16-bit number, the bus number (bits 8 through 15) is hardcoded for this device, even though it is physically connected to whatever bus this downstream port is configured to. The object must implement the pcie_device interface. Note that after being connected, devices must add their functions through the pcie_map interface, no transactions will be forwarded to the device by default. If both device_number and function_number are omitted, the object does not correspond to a physical device on this bus, but will receive the same calls as any other device. This is useful for transparent bridges to other buses.
-
sec_bus_num
-
Optional attribute;
read/write access; type:
i
Secondary Bus Number
-
transparent_enabled
-
Optional attribute;
read/write access; type:
b
If TRUE, this bus operates in transparent mode, all ranges mapped by devices on this bus will be mapped in the upstream target of this bus. The sec_bus_num will be claimed in the upstream config and message space.
-
upstream_target
-
Optional attribute;
read/write access; type:
o|[os]|n
Target receiving all upstream transactions
pcie-downstream-port
conf_object, log_object, signal
- 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.
conf_object, log_object, transaction
- 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.
-
wait-for-get
– issue an inquiry read transaction and wait for it to complete
-
wait-for-read
– issue a read transaction and wait for it to complete
-
wait-for-set
– issue an inquiry write transaction and wait for it to complete
-
wait-for-write
– issue a write transaction and wait for it to complete
access point into downstream Config space
conf_object, log_object, transaction_translator, translation_flush
- 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.
access point into downstream PCIe space
conf_object, log_object, pcie_device, pcie_port_control, transaction, transaction_translator, translation_flush
- 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.
-
wait-for-get
– issue an inquiry read transaction and wait for it to complete
-
wait-for-read
– issue a read transaction and wait for it to complete
-
wait-for-set
– issue an inquiry write transaction and wait for it to complete
-
wait-for-write
– issue a write transaction and wait for it to complete
ECAM configuration space
conf_object, log_object, translator
- 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.
access point into downstream I/O space
conf_object, log_object, transaction_translator, translation_flush
- 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.
access point into downstream Memory space
conf_object, log_object, transaction_translator, translation_flush
- 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.
access point into downstream Message space
conf_object, log_object, transaction_translator, translation_flush
- 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.
conf_object, log_object, translator
- 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.