[Libre-soc-dev] we need two XLENs
Luke Kenneth Casson Leighton
lkcl at lkcl.net
Sat Sep 10 12:54:30 BST 2022
crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68
On Fri, Sep 9, 2022 at 3:57 PM Richard Wilbur <richard.wilbur at gmail.com> wrote:
> The infamous double round?
not a problem: as i said, the function which implements the
FP operation is hidden and may perform the necessary
rounding without poisoning the specification pseudocode.
please see the pseudocode
fadds FRT,FRA,FRB (Rc=0)
fadds. FRT,FRA,FRB (Rc=1)
FRT <- FPADD32(FRA, FRB)
this is first redefined to FPADDHALF and it is the function FPADDHALF
that becomes directly responsible for performing the correct and required
rounding *BEHIND THE SCENES*.
we absolutely cannot have
IF XLEN==64 then do one thing
ELSE IF XLEN == 32 then do something else
ELSE IF OTHER BULLSHIT
the ISA WG will freak out. *hiding* the overridden meanings
behind functions on the other hand will keep simplicity for
Scalar implementors especially those not in the least bit
interested in XLEN.
More information about the Libre-soc-dev