English | 中文
xcomm is a C++20 library for hardware simulation, providing four-state signals, port collections, clocks, expressions, temporal events, and functional coverage. Install the Python distribution as uc-xcomm and import it as xspcomm; bindings are also available for Java, Scala, Go, Lua, and JavaScript.
After installation, create and read a wide signal:
import xspcomm as xs
signal = xs.XData(128, xs.XData.InOut)
signal.value = (1 << 96) + 3
print(hex(signal.value))The output is 0x1000000000000000000000003. Continue with the tutorial to advance a clock and wait for an event.
English documentation · 完整中文文档
- Use the library: events and coverage, typed expressions.
- Look up an interface: API index, language bindings, migration, troubleshooting.
- Develop the library: architecture, performance, tests, documentation and Wiki.
Report issues and suggestions through GitHub Issues. See LICENSE for licensing.