[comp.sys.amiga.advocacy] '040 and '882

skipper@motaus.sps.mot.com (Skipper Smith) (04/04/91)

In article <12391@pasteur.Berkeley.EDU> navas@cory.Berkeley.EDU writes:
>In article <2602@ria.ccs.uwo.ca> ptoper@obelix (Andy Nagy) writes:
>>	Is it possible for the 68040 to use the 68882 the same way that the
>>68030 to do the transcendentals?
>
>
>I'm a software guy, but wasn't the co-processor line taken out of the 68040?
>
>David Navas                                   navas@cory.berkeley.edu
>	2.0 :: "You can't have your cake and eat it too."
>Also try c186br@holden, c260-ay@ara and c184-ap@torus

Yes, the coprocessor interface was removed from the '040.  What would be  
necessary would be to do the handshake in software in the exact same fashion
as the 68000 would with a 68881.  However, as the 68040 can emulate, in       
software, all of the trancendentals (and some of the more complicated data 
types- or should I say less used- like BCD) at least as fast as a 33 MHz 68882.
Although it might be slightly slower in some parts then a 50 MHz '882 the 
software handshake would kill any advantage to using a 50 MHz '030 and the fact
that the instructions that are totally run in hardware run about 5 times faster
than the 50 MHz '882 would mean that you wouldn't want to use the external
coprocessor all the time.  All in all, it just isn't worth the trouble I would
expect.
If you really feel the need for heavy duty FP, you shouldn't be using the 
68040 or an '882, anyway.  The '882 at 25 MHz is only about .5-.6 MFLOPS and
the '040 (on hardware-only instructions) is about 3.2-3.5 MHz.  Somebody should
be designing a 96002 board for the Amiga- it cooks along at 60 MFLOPS@40 MHz
(and 40 MFLOPS @ 25 MHz)- and updating software to use it.
 

-- 
Skipper Smith                             | skipper@motaus.sps.mot.com
Motorola Technical Training               | 8945 Guilford Rd  Ste 145  
All opinions are my own, not my employers | Columbia, MD 21046

daveh@cbmvax.commodore.com (Dave Haynie) (04/05/91)

In article <1991Apr3.225839.11602@motaus.sps.mot.com> skipper@motaus.sps.mot.com (Skipper Smith) writes:

>If you really feel the need for heavy duty FP, you shouldn't be using the 
>68040 or an '882, anyway.  The '882 at 25 MHz is only about .5-.6 MFLOPS and
>the '040 (on hardware-only instructions) is about 3.2-3.5 MHz.  

Which also points out that, even given what looks to me like some real 
speedups in instruction emulation on the '040 vs. the '030, especially for
floating point, if your compiler has an '040 switch for floating point math,
you may get better results than running plain '882 code.  Lots of things can
be in-lined more efficiently than trapped, at a slight code size increase.

>Somebody should be designing a 96002 board for the Amiga- it cooks along at 
>60 MFLOPS@40 MHz (and 40 MFLOPS @ 25 MHz)- and updating software to use it.

Dedicated renders and other real heavyweight floating point programs would 
find such a board a _real_ nice home.  However, what the Amiga really needs
is a high level math server, which lots of relatively complex floating point
functions supported.  The idea here is that the cost of a server dispatch is
minor when compared to the function's execution time on the floating point
board.  And because of the intelligent server, you could dispatch any given
function to any free FPU board that can perform the function, even if they're
different animals -- even a mix of 96002s and i860s could work (wouldn't that
make the SPARCs fly....).

>Skipper Smith                             | skipper@motaus.sps.mot.com

-- 
Dave Haynie Commodore-Amiga (Amiga 3000) "The Crew That Never Rests"
   {uunet|pyramid|rutgers}!cbmvax!daveh      PLINK: hazy     BIX: hazy
      "That's me in the corner, that's me in the spotlight" -R.E.M.