[Libre-soc-dev] div fsm pipeline
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Wed Aug 5 11:13:57 BST 2020
On Wed, Aug 5, 2020 at 5:03 AM Jacob Lifshay <programmerjake at gmail.com> wrote:
>
> Posting to libre-soc-dev since we should finally get around to moving
> over.
true.
> I'm going to try to post to libre-soc-dev instead of
> libre-riscv-dev whenever I start a conversation.
a way to fix that is to put the other list into read-only mode
> today:
> Attended the openpower virtual coffee meeting which has been moved to tuesdays.
> Finally fixed the final bugs in the FSM-based div pipeline, all tests
> pass so I declare it completed!
hurrah. let's take a look, and run it through synth, and through
test_issuer.py. i've initiated the coriolis2 synth (it'll take 90+
minutes with my laptop speed-limited to not overheat)
one thing i notice that's missing - and is the reason why i referred
you (twice) to the microwatt div FSM - is that the microwatt FSM spots
opportunities for dropping 8 bytes of zeros in a cycle. that's a
*lot* of unnecessary cycles dropped which could save a lot of
completion time.
> Found the cause of the mysterious test failures:
> https://bugs.libre-soc.org/show_bug.cgi?id=449
ah fantastic.
> Luke, what do you think is appropriate payment for the div pipeline?
well... you're not going to like it: it's been 3(?) months however
NLNet's budget allocations are based on productivity, not "time".
however the program_instruction_analyser was / is an extremely useful
additional dependency that was a key integral part of that, so should
definitely have a separate bugreport and budget allocation for it.
(btw about pia: it occurred to me that if taken further it could
actually become the basis of a cycle-accurate PowerISA simulator at
some point)
the div pipeline itself is not "wasted code" - we'll likely need it
later (although we have a decision to make on that: it may be better
to lay down multiple FSMs).
it's complicated in other words: we'll have to go through it.
l.
More information about the Libre-soc-dev
mailing list