GithubHelp home page GithubHelp logo

no vcd trace about riscv-formal HOT 6 CLOSED

towoe avatar towoe commented on July 30, 2024
no vcd trace

from riscv-formal.

Comments (6)

towoe avatar towoe commented on July 30, 2024

I created a pull request in YosysHQ/sby#18.
It works for me, but might not be the correct solution.

from riscv-formal.

cliffordwolf avatar cliffordwolf commented on July 30, 2024

I don't know what "exercise 1" refers to. But I'm certain YosysHQ/sby#18. just breaks the tool and doesn't help in any way.

from riscv-formal.

cliffordwolf avatar cliffordwolf commented on July 30, 2024

Ah, apparently "exercise 1" refers to the quickstart guide.

Since you did not post anything that would allow me to reproduce whatever you are seeing, I can only assume that the check passed (because either you didn't change the core, or changed it in a way that had no negative effect), and a passing test of course doesn't produce a counter example trace.

from riscv-formal.

towoe avatar towoe commented on July 30, 2024

Thanks for the quick reply. Yes, I was referring to the quickstart guide, sorry for not mentioning this.
I did change the core and one test failed.
I changed the core now at a different point and now the trace is generated. This difference is that in the previous failed test, it already stopped at "Warmup failed!". I guess this is a point where there are no traces which can be generated.

from riscv-formal.

cliffordwolf avatar cliffordwolf commented on July 30, 2024

it already stopped at "Warmup failed!". I guess this is a point where there are no traces which can be generated.

yes. I don't know which check exactly failed for you and why of course, but the general idea behind "Warmup failed" is like this: Say you have a check that makes sure that the addi instruction does the right thing. Now you make a change that entirely prevents the core from every handling an addi instruction. This will make the check fail, but there is no counter-example trace showing that the addi instruction is handled incorrectly because there is not even any trace that has the core retiring an addi instructions, correctly or incorrectly.

In more formal terms: If the "warmup check" is enabled (which is the case by default in smt-based symbiyosys flows), then "warmup failed" indicates that no trace satisfying the assumptions exists. (Without the "warump check" those tests pass because the assertions are trivially true if there is a contradiction in your assumptions.)

from riscv-formal.

towoe avatar towoe commented on July 30, 2024

Now you make a change that entirely prevents the core from every handling an addi instruction.

That is exactly what I did at first. Thanks a lot for the thorough explanation!

from riscv-formal.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.