fault icon indicating copy to clipboard operation
fault copied to clipboard

A Python package for testing hardware (part of the magma ecosystem)

Results 72 fault issues
Sort by recently updated
recently updated
newest added

If we expect an SInt(3) to be a value, and it's wrong. The assertion error will fail on the first bit that is wrong because it recursively descends to check...

Currently used (and tested) via garnet, we should have some standalone tests, see https://coveralls.io/builds/19037966/source?filename=fault%2Faction_generators.py Also, this needs to be ported to the new action API https://coveralls.io/builds/19037966/source?filename=fault%2Ftest_vector_generator.py (and covered)

Our current test vector interface compiles a new harness every time we generate a new set of testvectors because the test vectors are inline into the harness. Instead, I propose...

enhancement

Instead of ``` tester.poke(circ.I, 0) tester.expect(circ.O, 0) ``` it would be convenient to say ``` tester.I = 0 tester.O.expect(0) ```

Should only descend into tuple/array if there's a nested clock type, otherwise skip (avoids lazy children elaboration when possible).

The hack to poke an internal verilog signal corresponding to a coreir register no longer works: https://github.com/leonardt/fault/blob/master/fault/wrapper.py#L141-L147 Need to refer to the generated MLIR name (could insert a name in...

Related issue #327

Fault fails with wrong circt version. ``` def circt_opt_version() -> str: circt_home = _circt_home() circt_opt_binary = _circt_opt_binary(circt_home) ostream = io.TextIOWrapper(io.BytesIO()) returncode = _run_subprocess( [circt_opt_binary, "--version"], stdin=io.BytesIO(), stdout=ostream.buffer, ) ostream.seek(0) version...

Fault breaks when a protocol is used an output type on account of missing `debug_name` and `len` See: #326