[libre-riscv-dev] [Bug 313] Create Branch Pipeline for POWER9

bugzilla-daemon at libre-soc.org bugzilla-daemon at libre-soc.org
Fri May 15 20:33:31 BST 2020


--- Comment #8 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
(In reply to Michael Nolan from comment #6)
> (In reply to Luke Kenneth Casson Leighton from comment #5)
> > oink.  you *removed* NIA :)  well... we will probably need CompBROpSubset
> > anyway.
> Yep, since nothing but the branch unit used it

good call.

> > hum hum, don't know.  oh.  right.  NIA is *next* instruction address, not an
> > input.
> > ok so i think we need something called "cia" - current instruction address -
> > in
> > CompBROpSubset.
> I added CIA to the branch unit's input data because it wasn't one of the
> things output by the decoder (well NIA is, but it's defaulted to 0),

as it's an output - and the CompBROpSubset is intended as as *input* to
the pipeline - yes NIA definitely goes.

> and I needed to set it from the testbench.


we need cia however.  hmm hmm... it's not a "register" - there's no delay
in fetching it: the branch unit will receive the current PC right there,
because that (like the insn) is "known information".

yep, it needs to be added to CompBROpSubset.  will do that now...

commit 4e88a5d7027d5c60093925d38da9b1e63b77f743 (HEAD -> master, origin/master)
Author: Luke Kenneth Casson Leighton <lkcl at lkcl.net>
Date:   Fri May 15 20:33:15 2020 +0100

    add cia to CompBROpSubset, remove data_len

You are receiving this mail because:
You are on the CC list for the bug.

More information about the libre-riscv-dev mailing list