Al Grant <
algra...@gmail.com> wrote:
> Can you prove equivalence of the Sail and BSV specifications?
Not in a formal sense. I think that would also first need a specification
of the semantics of BSV.
> I'd expect that defining a specific implementation - as a pipeline,
> possibly with out of order execution etc. - would need a lot
> of creative input and design tradeoffs, and that the challenge is
> to prove equivalence with the original ISA spec throughout this
> process. As opposed to generating an out-of-order superscalar
> core mechanically from an ISA spec.
This isn't intended for a performant implementation. It generates 'an'
implementation - one that functions and can be synthesised. You can then
use that as a golden model and run it in tandem verification with your
superscalar core.
Being simpler and (to some degree) automatically generated makes it less
error prone than writing your golden model by hand. However you would still
need to tandem verify your golden model against the specification since your
automatic generation could also be faulty.
> > I'm sure there are others out there...
>
> There's ARM's Architecture Specification Language.
Are there any backend tools to generate implementations for that?
(Sail can consume it, but it doesn't generate RTL)
Theo