[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [f-cpu] Re: Floating-Point?
Hi. This is my first post to this list. My background is as a hardware
technician, not a chip designer so bear with me.
On Thursday 16 August 2001 03:41, you wrote:
> Michael Riepe a écrit :
>
> In sparc, there is no 80 bits float but 128 bits (2 registers used in
> the same time). We don't need 1 cycle multiplication so it could be done
> for the fcpu.
I am thinking that taking the two-register approach might be
over-complicating matters. Since F-CPU is intended to later be scaled above
64 bits, if someone wanted 128-bit floats in the future they would impliment
a 128-bit F-CPU. Especially for the FC-0 and probably for the FC-1, KISS
(Keep It Simple for us Stupid people).
BTW: I am wondering about the reasons for having endian-ness encoded in the
instruction. How often do you need to change endinianness. I am thinking a SR
for endinian would free up that bit as well as allowing other endiniannesses
as well as big and little (Not in popular usage at present but I can think of
several other bizaar ways to re-arrange the bits in a word that may be useful
in some obscure application).
I'd be inclined to use that bit to extend the addressing size from 4
addressing widths to eight as follows:
000 - 1 bit
001 - 2 bits
010 - 4 bits
011 - 8 bits (mandatory)
100 - 16 bits (mandatory)
101 - 32 bits (mandatory)
110 - 64 bits (mandatory)
111 - maxWidth (the maximum avaliable width)
I'm not sure about the merits of the first three widths but they are nice and
neat. Since you don't want a bank select line for every bit, sub-byte writes
would have to be implimented as a read-alter-write, wasting at least one
memory bus cycle. I make no claims as to whether this is worth it. You would
also need to address each bit instead of each byte, chopping 3 effective bits
off your maximum memory size. Crazy idea, I know.
An alternative might be:
000 - 8 bits (mandatory)
001 - 16 bits (mandatory)
010 - 32 bits (mandatory)
011 - 64 bits (mandatory)
100 - 128 bits
101 - 256 bits
110 - application defined
111 - maxWidth (the maximum avaliable width)
256-bit floats anyone?
--------------------------------------------------------
Glenn Alexander - The man with no surname and a silly hat.
(B.Teach, B.Ed Major IT Education, University of Wollongong Australia)
(Now avaliable in China!)
http://members.ozemail.com.au/~glenalec (last update: 2001.07.29)
I use GNU/Linux: http://www.linux.org
from Debian: http://www.debian.org
and KDE : http://www.kde.org
--------------------------------------------------------
Fight software piracy: Use GNU ( www.gnu.org )
--------------------------------------------------------
The above message was bought to you by 'sigrot'
*************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe f-cpu in the body. http://f-cpu.seul.org/