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
| Name | Description | Type | Mandatory | Default |
|---|---|---|---|---|
| name | A unique name for this target. | Name | required | |
| env | Environment 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 -> String | optional | {} |
| xrun | The xrun driver binary. | Label | required |