68000 fp?

jcp%brl-bmd at sri-unix.UUCP jcp%brl-bmd at sri-unix.UUCP
Thu Jun 16 10:54:53 AEST 1983


From:      J. C. Pistritto <jcp at brl-bmd>

I have experience with the Motorola 68000 FFP 'Fast Floating Point' Package.

We use this package as part of a process control system where all of the
primary control elements are in floating point.  The trick with this package
is the special 'FFP' format that floating numbers are stored in.  (Routines
are provided to go back and forth to IEEE standard floating point).  Also,
only single precision (7.5 digits) is available.  The add and subtract
times are minimal (say 10microseconds or so), and the multiply is about
60, divide about 80 or so).  (These are worst case times on an 8Mhz 68000)

We use a cpu board that allows on-board ROM memory chips, and we run the
floating point out of on-board ROM (for speed).  We find performance to
be not quite what you could get with an 8086/8087 pair, but the processor
is MUCH nicer to program, (instruction set wise).  By the way, when comparing
the 68000 times against what the Intel salesman will tell you, remember to
include time for loading/unloading the 8087 internal registers.  (These use
special instructions).

If the application is being done in 'C' or 'Pascal' or some such high level
language, I would STRONGLY reccomment the Motorola processor, (having used
both 8086 and 68000 at assembly language and 'C' levels for more than two
years), simply because it executes a given 'C' construction in many fewer
instructions.  (due to the generality of the register set, and the added
number of registers).  For instance, current 'C' implementations for the
8086 give NONE or ONE register variables, whereas 68000 implementations
typically support the same THREE as the PDP-11, or occasionally more.

Consider the difference in performance THAT could make.  (I have seen code
run TEN times faster when register variables are used...)

						-JCP-
						CPRC Inc.



More information about the Comp.unix.wizards mailing list