cocotb_vcs_sim

Rules

cocotb_vcs_sim

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

cocotb_vcs_sim(name, env, vcs)

A simulator configuration for running Synopsys VCS simulations in cocotb tests.

Status

Infrastructure only. VCS is commercial, with no BCR module and no redistributable binary; rules_cocotb cannot validate this rule in CI. Wire it up downstream by pointing vcs at your own install and registering a cocotb_toolchain that routes sim = "vcs" through this rule. Cocotb's runner handles the actual build/sim (cocotb's VCS runner produces a simv binary and executes it for the run).

Notes

VCS accepts Verilog/SystemVerilog (VerilogInfo) modules. The cocotb runner internally manages vcs's build flow and the simv output binary, so only the vcs compiler binary is needed as a rule attribute.

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{}
vcsThe vcs compiler binary.Labelrequired