[comp.sys.amiga.hardware] A500 Co-processor options

riley@castor (WILLIAM KEN RILEY) (02/01/91)

Is there an option to add a 68881 math co-processor to my A500? Would any 
commercial products (Turbo-Silver,Imagine, etc.) recognize the beastie?
I would like to speed up these computationally intensive programs without
breaking my very limited bank account. Am I alone in wanting this?
Any info would be appreciated,
Ken Riley

riley@castor.cs.uga.edu

goddard@ste.dyn.bae.co.uk (Steve Goddard) (02/04/91)

In message <9102010153.AA22652@castor>, riley@castor (WILLIAM KEN RILEY) writes:
>Is there an option to add a 68881 math co-processor to my A500? Would any 
>commercial products (Turbo-Silver,Imagine, etc.) recognize the beastie?
>I would like to speed up these computationally intensive programs without
>breaking my very limited bank account. Am I alone in wanting this?
>Any info would be appreciated,
>Ken Riley

The 68881 was designed to operate with any 680x0 device. However, it only
works well with >=68020. For these latter processors, the 68881 acts like
it is part of the main processor, and in-line code works nicely. For us
68000/68010 owners, the 68881 has to be used as a peripheral, with the
processor sending data to it, waiting for responses, etc., which is a fair
bit slower. This sending/waiting procedure has to be coded into the program,
and so in-line coprocessor instructions don`t directly work. If you want to
run in-line instructions, you can write a software emulation that catches the
F-line traps, and passes the information on to the 68881. However, IMHO (and
I will probably get flamed for this, as I haven`t tried it), to emulate ALL
of the addressing modes would not be much, if any faster than doing the
whole lot in software. For further info, check out Application not AN947
from motorola, which discusses this in more detail, with some code examples.
   As for myself, I have a CMI accelerator board (usual disclaimers about
not working for them). It runs the 68000 at 14MHz and has a slot for a 68881.
About a month ago I plugged one in. CMI provide some software that allows
any proggies that use the WB IEEE math routines to automatically use the 68881.
Unfortunately, most math-intensive software comes in two versions: one software
maths, and one with in-line 68881 code. *sigh* My experiments show that using
these libs, ordinary maths is slower than FFP software routines (although
they are of course at double res. Transcendental functions, though (sin, cos
logs, etc) run a lot faster than any software.
   The bottom line is this (IMHO). Adding a 68881 is a simple platform PCB
job. Using it, however, means either custom compiling your own code, or
writing a non-trivial emulation library.
   Hope this is of some help,

>riley@castor.cs.uga.edu

Steve the G. (Steve Goddard)