Skip to main content

dau sim

dau simulator

Build Status codecov License PyPI

Overview

dau-sim simulates digital hardware designs using csp's reactive stream processing engine. Hardware signals become CSP time-series edges, combinational logic becomes CSP nodes, and clock domains become CSP clock processes — giving you cycle-accurate simulation with deterministic event scheduling and multi-clock support.

Supported inputs:

Output formats: VCD (IEEE 1364-2001) waveform files, with FST and live streaming planned.

Installation

pip install dau-sim

For development:

git clone https://github.com/dau-dev/dau-sim.git
cd dau-sim
pip install -e ".[develop]"

Quick Start

from amaranth.lib import wiring
from amaranth.lib.wiring import In, Out
from amaranth.hdl import Module

from dau_sim.frontends import from_amaranth
from dau_sim.compiler import compile_module


class Counter(wiring.Component):
    en: In(1)
    count: Out(8)

    def elaborate(self, platform):
        m = Module()
        with m.If(self.en):
            m.d.sync += self.count.eq(self.count + 1)
        return m


cm = compile_module(from_amaranth(Counter()))
traces = cm.run(cycles=20, inputs={"en": 1})
cm.write_vcd("counter.vcd", traces)

Documentation

Topic Description
Amaranth Simulating Amaranth HDL designs
Verilog / SystemVerilog Simulating SV/V designs and hand-built IR
cocotb Running cocotb testbenches against dau-sim
CLI Command-line interface reference
Architecture Pipeline and internal design
API Reference Full API tables
Benchmarks Performance numbers and execution modes

License

This project is licensed under the Apache 2.0 License — see LICENSE for details.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dau_sim-0.2.0.tar.gz (155.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dau_sim-0.2.0-py3-none-any.whl (156.1 kB view details)

Uploaded Python 3

File details

Details for the file dau_sim-0.2.0.tar.gz.

File metadata

  • Download URL: dau_sim-0.2.0.tar.gz
  • Upload date:
  • Size: 155.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for dau_sim-0.2.0.tar.gz
Algorithm Hash digest
SHA256 cb548b4dd9174af31aeebb6ea67c6bc43b6e66529d4d9bb1c5d951cc7256bb05
MD5 4a6fd385086f83400298004abf062f39
BLAKE2b-256 db48d9aea64f05d10e0ea8bcd754842beb2d37f495a514fec4a434232a141e20

See more details on using hashes here.

File details

Details for the file dau_sim-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: dau_sim-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 156.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for dau_sim-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ab9b9203e406dbc35c7b5d81e7c63109ee38862cbf884b6ee26b160bb32c4ed4
MD5 c504bebec35fb493598ead0a63e7d1f5
BLAKE2b-256 c93918e4aa142b4428ca93387ae4eefa0e7ac73b96bb2e30ff385141848aa76b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page