[libre-riscv-dev] Libre RISC-V Requirements Specification document

Luke Kenneth Casson Leighton lkcl at lkcl.net
Tue Jan 8 09:25:03 GMT 2019


https://libre-riscv.org/3d_gpu/requirements_specification/

i added a bit about exceeding the requirements "just because we can",
just for the hell of it :)

we need a document that synthesises the design requirements in one
place, such that it becomes clear what needs to be implemented, based
on the analysis done over the past.... mm.... couple of months (ish).

i'm going to augment it with diagrams from mitch alsup's book,
specifically and definitely the ones on how to do branch speculation
and the way to do memory hazards that involve the TLB table.

i'm *not* going to rush ahead with this (like i would have done in the
past): i'm experimenting with this project to run it along "unanimous"
decision-making lines.

so that means that all of us have to be happy with what's proposed (or
explicitly say "yep the rest of you decide that one").

now, i know i won't be able to cope with the hardware design on my own
- not even with migen/nmigen.  in that regard, this definitely has to
be a joint effort.  i *may* be able to focus full-time once it is "off
the ground" so to speak.  i have a rough strategy for getting to at
least the point where some of the obscure design features may be
tested (which involves *not* adding RISC-V instruction decode,
initially, or even branches).

daniel: given that you're on this part-time, once we've agreed that
migen/nmigen is ok - or not - (jacob's fine with it, i'm fine with
it), it *may* be a good idea to find a suitable self-contained
"needed-in-the-future" task that you could do, which would not hold up
the main development / iteration.

candidates that i can immediately think of include a L1/L2 SMP-aware
cache, a TLB table (virtual memory), a 64/32/16-bit IEEE754
Floating-Point ALU (or at least starting one) - there's probably
plenty of others that we can think of along the way (integer
multiplier unit for example, for compliance with the optional RV "M"
in "IMAFD").

thoughts appreciated.

l.



More information about the libre-riscv-dev mailing list