cocotb_xcelium_sim

Rules

cocotb_xcelium_sim

load("@rules_cocotb//cocotb:cocotb_xcelium_sim.bzl", "cocotb_xcelium_sim")

cocotb_xcelium_sim(name, env, xrun)

A simulator configuration for running Cadence Xcelium (and the older Incisive — cocotb uses the same xcelium runner for both) simulations in cocotb tests.

Status

Infrastructure only. Xcelium/Incisive is commercial, with no BCR module and no redistributable binary; rules_cocotb cannot validate this rule in CI. Wire it up downstream by pointing xrun at your own install and registering a cocotb_toolchain that routes sim = "xcelium" through this rule. Cocotb's runner handles the actual build/sim via Runner.build / Runner.test.

Notes

Xcelium accepts both Verilog/SystemVerilog (VerilogInfo) and VHDL (VhdlInfo) modules. The xrun driver dispatches to the appropriate compiler internally, so only the one binary attr is needed.

ATTRIBUTES

NameDescriptionTypeMandatoryDefault
nameA unique name for this target.Namerequired
envEnvironment variables to set when the cocotb runner invokes this simulator at test time (license-server pointers, install root vars, …). Precedence: toolchain env < sim env < rule-level cocotb_test(env = ...).Dictionary: String -> Stringoptional{}
xrunThe xrun driver binary.Labelrequired