Libre RISC-V Mailing list Archives (accessible via public-inbox)
 help / color / Atom feed
From: Luke Kenneth Casson Leighton <lkcl@lkcl.net>
To: Libre-RISCV General Development <libre-riscv-dev@lists.libre-riscv.org>
Subject: Re: [libre-riscv-dev] daily kan-ban update 08mar2020
Date: Fri, 8 May 2020 16:25:55 +0100
Message-ID: <CAPweEDxBon96+0GaFutee0JHoqGw_m07aEQAE7CF21rjBoMqHA@mail.gmail.com> (raw)
In-Reply-To: <175BEA4F-5971-47BE-B5CE-2821BF430AE2@gmail.com>

On Fri, May 8, 2020 at 3:03 PM Michael N <mtnolan2640@gmail.com> wrote:

> > On May 8, 2020, at 9:28 AM, Michael Nolan <mtnolan2640@gmail.com> wrote:
> >
> > Now that I have branches working in the simulator, I was thinking of starting work on the integer ALU. Taking a look at alu_hier.py, I think I'll keep the interface but replace the implementation with a pipelined one.
> >
> > --Michael
> >
> I noticed alu_hier was nicely broken up into different function units (adder, branch unit, multiplier, etc.).

yes, with an "op" - which in our case will basically be "decoder.InternalOp"

> Is there a nice way you know of to do that with the nmutil pipeline stages?

yyyess.... except it's too complicated to explain right just this
minute.  raise the question in the bugreport.

> Like a way to merge stage 1 of the adder pipe with stage one of the branch pipe to get the stage 1 of the alu?

ok if you are talking about *outside* of ReservationStations, you are
mixing "purposes".  the Branch pipeline *does not* interact - at all -
with the ALU pipeline.

can you look again at Mitch's ScoreBoard Mechanics1.pdf

damnit this needs to be on the bugreport, i haven't got time, 10m until meeting

see page 8, diagram at the top.

Those 4 batches of Function Units are *completely separate*.  they do
*NOT* interact.

basically, the first ALU, do it entirely as combinatorial just as in
alu_hier.py and assume only one clock cycle.  leave out MUL and DIV
because those i believe need to be minimum 2 stages for MUL and a
*lot* for DIV.

actually you know what, screw it: make separate ones for MUL and DIV,
pretty much exactly like in that diagram on p8.  we're doing a
radically different design as a proof-of-concept.

* add sub neg compare logical shift all go in their own
Reservation-Station-style FunctionUnit
* MUL in its own separate RS/FU
* DIV likewise

l.

_______________________________________________
libre-riscv-dev mailing list
libre-riscv-dev@lists.libre-riscv.org
http://lists.libre-riscv.org/mailman/listinfo/libre-riscv-dev

  reply index

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-08 10:56 Luke Kenneth Casson Leighton
2020-05-08 10:59 ` Luke Kenneth Casson Leighton
2020-05-08 13:51   ` Yehowshua
2020-05-08 15:16     ` Luke Kenneth Casson Leighton
2020-05-08 17:25   ` Staf Verhaegen
2020-05-08 22:23     ` Luke Kenneth Casson Leighton
2020-05-08 13:28 ` Michael Nolan
2020-05-08 14:03   ` Michael N
2020-05-08 15:25     ` Luke Kenneth Casson Leighton [this message]
2020-05-08 20:47       ` Michael Nolan
2020-05-08 22:48         ` Luke Kenneth Casson Leighton
2020-05-08 15:10   ` Luke Kenneth Casson Leighton
2020-05-08 15:21     ` Michael Nolan
2020-05-08 15:27       ` Luke Kenneth Casson Leighton
2020-05-08 20:27 ` Yehowshua
2020-05-08 21:39   ` Jacob Lifshay
2020-05-08 22:34     ` [libre-riscv-dev] daily kan-ban update 08may2020 Jacob Lifshay
2020-05-08 23:09       ` Luke Kenneth Casson Leighton
2020-05-09  0:31       ` Yehowshua
2020-05-09  8:25         ` Luke Kenneth Casson Leighton
2020-05-09 14:33           ` Yehowshua
2020-05-08 22:45     ` [libre-riscv-dev] daily kan-ban update 08mar2020 Luke Kenneth Casson Leighton
2020-05-08 22:41   ` Luke Kenneth Casson Leighton
2020-05-08 20:38 Alain D D Williams
2020-05-08 20:47 ` Luke Kenneth Casson Leighton

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAPweEDxBon96+0GaFutee0JHoqGw_m07aEQAE7CF21rjBoMqHA@mail.gmail.com \
    --to=lkcl@lkcl.net \
    --cc=libre-riscv-dev@lists.libre-riscv.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Libre RISC-V Mailing list Archives (accessible via public-inbox)

Archives are clonable: git clone --mirror https://inbox.libre-soc.org/libre-riscv-dev

Example config snippet for mirrors


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git