Article 273 of comp.sys.amiga.reviews:
Path: menudo.uh.edu!usenet
From: dcc@dcs.ed.ac.uk (David Crooke)
Newsgroups: comp.sys.amiga.reviews
Subject: REVIEW: PPI Mercury 68040 accelerator for A3000
Followup-To: comp.sys.amiga.hardware
Date: 3 May 1993 14:51:18 GMT
Organization: The Amiga Online Review Column - ed. Daniel Barrett
Lines: 419
Sender: amiga-reviews@math.uh.edu (comp.sys.amiga.reviews moderator)
Approved: barrett@math.uh.edu
Distribution: world
Message-ID: <1s3bh6$ooa@menudo.uh.edu>
Reply-To: dcc@dcs.ed.ac.uk (David Crooke)
NNTP-Posting-Host: karazm.math.uh.edu
Keywords: hardware, A3000, A3000T, accelerator, 68040, commercial


PRODUCT NAME

	Progressive Peripherals Inc. Mercury 68040 accelerator for the Amiga
3000.


BRIEF DESCRIPTION

	The Mercury is a board which provides a fast Motorola 68040
processor and some memory expansion capabilities.  It fits in the A3000's
FastSlot, located at the right front of the motherboard.  This enhances the
performance of the A3000 in processor-intensive applications like compiling
and ray-tracing.  Fallback to the 68030 is possible with software provided,
although only on the 3000/25.  This is not as useful as 68000 fallback on
A500/A2000 accelerators, but comes in handy for the odd, semi-awkward game
(Lemmings II!).

	The board is available in 28MHz and 35MHz versions with 0-32 MB of
RAM.


AUTHOR/COMPANY INFORMATION

		[MODERATOR'S NOTE:  This address is out of date.  I'm
		working on getting a correct one.  - Dan]

	Name:		Progressive Peripherals Inc
	Address:	938 Quail St.
			Lakewood, CO  80215-5513
			USA

	Telephone:	(303) 238-5555


PRICE

	I purchased my board from Creative Computers.  The test
configuration (28MHz Mercury with no RAM) was priced at $579.00 (US) plus
shipping (shipping to Europe by air (DHL) was $80 US).  VAT (17.5%) and duty
(3.4%) were payable on import to the UK.

	This price was due to a "special offer" recently given by PPI, but
stock at this price may still be available from some dealers.  Other prices
quoted by Creative were $879.00 for the Mercury 35MHz with no RAM, and
$499.00 for the 3000/040 board (25MHz, no memory expansion, fits A3000/25
only), so I chose the Mercury 28 as the best price/performance/capabilities
choice. Other dealers were more competitive on the Mercury 35 but more
expensive on the Mercury 28 and 3000/040, and on shipping.

	I strongly advise UK readers to import products like accelerators
from the US themselves.  I have done this several times, and the savings are
substantial over UK dealer mark-ups.


HARDWARE AND SOFTWARE PREREQUISITES

	HARDWARE

		Commodore Amiga A3000 or A3000T, with ROM Kickstart version
		2.04 or later.  (You can use other Kickstarts from disk with
		appropriate software, but you must have at least 2.0 in ROM.)

		The reason that 2.0 Kickstart ROMs are needed is that the
		SoftKick A3000 (with 1.4 ROMs, which loads
		"wb_2.x:devs/Kickstart" from disk) uses the 68030's MMU to
		map the disk loaded Kickstart.  Since the 68040's MMU is
		incompatible with the 68030's, this would fail.

	SOFTWARE

		None, but AmigaDOS 2.04 or above is strongly recommended.


MACHINE USED FOR TESTING

	The version of the Mercury tested was the 28MHz one with no on-board
memory. 
 
	The test machine was an A3000/25 (normal desktop version) with 2
internal floppies, 2 internal hard disks, and 8MB of static column Fast RAM.
This machine did not have 2.04 ROMs, and so they were installed at the same
time as the Mercury.

	All performance figures are with all caches on, Kickstart in RAM,
etc.  The PD "Ramsey" program was used to enhance performance for "68030
mode" comparisons.


COMPONENTS SUPPLIED IN PACKAGE

	Mercury board with 68040 processor chip fitted
	Floppy Disk (DS/DD 837K AmigaDOS) with PPI and CBM support software
	1Mx4 80ns page mode ZIP DRAM chip
	4-pin floppy drive power lead
	4 mounting bolts
	Go-faster sticker with Motorola "04!0" logo
	40 page A5 size handbook


PHYSICAL DESCRIPTION (TECHNICAL)

	The board is about 7 inches square, and when installed covers the
Fast RAM and CPU area on the front right of the A3000 motherboard, under the
drive platform.  The majority of the minor chips are surface-mounted, while
the large memory control chips are in PLCC (?) sockets, and the 68040 is a
large PGA.  Eight angled sockets for byte-wide SIMMs are provided,
accommodating standard PC-compatible 1Mx8 or 4Mx8 (or x9) SIMMs in groups of
four, allowing configurations of 4, 8, 16, 20 or 32 Megabytes (in addition
to the 18Mb on the Amiga motherboard) -- this memory option was not tested.
A miniature muffin fan is mounted on a sloping bracket above the 68040,
blowing air down onto and across the chip from the front to the back of the
Amiga (desktop A3000).  A 200-pin mini edge connector on the underside mates
with the FastSlot.  Holes meet up with the mounting posts on the motherboard,
for securing the board with the bolts provided.  Floppy-style 4-pin power
connectors are provided for routing power through the board.  The build
quality is high.


SOFTWARE INSTALLATION

	It is prudent to install the software first so that the system is
68040-aware on its first power-up with the accelerator.

	An install utility is provided; and despite a custom setup, I used
it, after a careful walkthrough on the "Pretend to Install" option.  The
installation was successful and I made no changes, other than to "Leave Out"
the "Switch" program icon in the Workbench window.


HARDWARE INSTALLATION

	All notes refer to the desktop A3000, with differences noted.

	As with the installation of Fast RAM, access to the right side of the
motherboard requires a major disassembly of the A3000 including removal of
the drive platform, as described in the small installation handbook supplied
with the 3000.  If the machine is fitted with static column Fast RAM, the
first memory chip, whether DIP or ZIP, must be removed, and the supplied
page mode chip fitted to the ZIP socket (U850).  This circumvents a bug in
the A3000's memory controller (Ramsey) and allows the PPI board to do burst
transactions.  The board is then fitted to the FastSlot and bolted in
place.  The second floppy drive power lead is routed down to the board, and
the lead supplied runs back up to power the second drive.  If the machine is
an A3000/16, the motherboard must be jumpered to 25MHz operation, and 68030
fallback mode will be unavailable.  

	The mounting bolts supplied do not fit in the A3000T which does not
normally have mounting posts fitted, but the makers claim the board is
secure without them as long as the machine is not transported.  

	It is prudent to reassemble the machine partially and test it before
full reassembly, and between installation of the Kickstart ROMs and the
board if doing the two upgrades simultaneously.

	The manual states that if the machine has low density memory
(256Kx4's) in the Fast RAM area, a 256Kx4 paged mode ZIP should be purchased,
but I can't see why the 1Mx4 one supplied wouldn't do.


PRINCIPLE OF OPERATION

	The accelerator accesses the system bus through the FastSlot, and
supplants the motherboard 68030 and 68881/2 with the 68040.  Since the
68040's "RISC style" FPU does not support the full 68881 instruction set,
the remaining functions are emulated in software by the supplied
"68040.library", which is loaded by the "Init040" program placed in the
startup-sequence by the installer.  Due to the extremely fast implementation
of the FPU instructions which are provided in hardware, in all cases the
software emulation on a 28MHz 68040 exceeds the performance of the same
instruction in hardware on a 33MHz 68882.  General use, with predominantly
simple instructions, is much faster.

	"Init040" also configures the accelerator memory and can map
Kickstart into it if present.  In a 25MHz machine, the 68040 part of the
accelerator can be turned off from software with a warm boot, leaving the
expansion memory available, and powerup in 68030 or 68040 mode can be
selected with a jumper.  


SOFTWARE OPERATION

	The only software day-to-day users need is the "Switch" program,
which switches between 68040 and 68030/88x, with a warm reboot (Ctrl-A-A).
It is Intuition-based.  The primary use I have found for this is to fall
back to 68030 mode for speed comparisons, and to play Lemmings II.  The CPU
choice persists through multiple warm boots until changed or until the
machine is power-cycled.

	There is also an Intuition-based program for manipulating the caches
called "CPU040".  There is nothing wrong with this, but old habits die hard
and I still use Commodore's "CPU" command from the CLI.  Also, you can use
"CPU" to write scripts which automagically detect which processor is
running, which you can't do with "CPU040".

	Version 37.34 of Commodore's "SetPatch" is provided.  This is a 2.04
version with some 68040 fixes.  Version 37.4 of 68040.library is provided.

	More enthusiastic users will want to use other PD and Commodore
software to enhance the board's use (see RECOMMENDATIONS, below).


COMPATIBILITY

	The hardware is designed only for the A3000 series machines,
although (in theory at least) it could work in an A4000 as a replacement CPU
board if there is physical space for it.  Users intending to buy a 4000/030
and boost it should contact PPI!

	For compatibility purposes, most Amiga software falls into one of
two categories, at least as far as hardware is concerned: (i) Old game, only
works properly on 16-bit systems (ii) Productivity software or newer game,
works on anything with enough memory.  This implies that almost anything
which will work with the A3000 and 2.0 to start with will work with the
68040 as well.

	One class of exceptions to this are programs which use self
modifying code (including special loaders and self-unpacking executables).
the 68040 has much larger caches than the 68030, and has a "CopyBack" (write
only when necessary) mode on the data cache.  The combination of these can
tip some bad code over the brink, but the CopyBack mode and the caches
themselves can be disabled from software, using Commodore's "CPU" command.

	The more important incompatibility is in the Memory Management
Processor (MMU).  The 68030 one is largely compatible with the old 68851,
but the 68040 one is quite different.  Things like Kickstart remappers ("CPU
FastROM", "SetCPU KickROM") and virtual memory systems ("HDMem", "GigaMem")
often do not support it, but 68040 versions or equivalents are becoming
available.  In particular, the Commodore Amix (Unix) system on the A3000UX
does not support the 68040, but I think "Enforcer" now does.

	These are all minor complaints; and for most general productivity and
programming use, the 68040 works seamlessly with the rest of the system.
Apart from the speed increase, you'd never know it was there.


PERFORMANCE

	Using the A3000's own memory (80ns Static Column) with burst modes,
caches and CopyBack enabled, and Kickstart in RAM, the 28MHz board delivers
20,200 Dhrystones according to SysInfo 3.15.  This is 4.3 times the speed of
the same A3000/25 in 68030/68882 mode, 38 times the speed of a ChipRAM A600,
and 10% faster than an A4000/040.  All of these are integer-only.  Floating
point performance is over 5 MFlops, as compared to 0.66 MFlops for the 25MHz
68882.

	General use shows performance improvements from none, with graphics
or disk intensive operations, to well over three times with large C++
compilations, as compared to the A3000/25.  The LaTeX batch typesetting
system (with an optimised FPU-using executable) shows around a 70% speedup
over a range of documents.

	Tests using the "C" version of Dhrystone 1.1, compiled to use the
FPU, weigh the 28MHz Mercury in at around 29,500 Dhrystones.  This compares
with 7,400 for the 25MHz 68030/68882, 31,000 for a Sun 4 SPARCstation ELC,
and around 1,200 for an 7MHz 68000-based Amiga with (non-trapdoor) Fast RAM
(the latter with no FPU, of course).
 

MEMORY EXPANSION SYSTEM

	I did not test the memory expansion capability, but I believe the
details given are correct.

	The board has 8 sockets for industry standard PC-clone style SIMMs,
and accepts 1Mx8 (or 1Mx9) and/or 4Mx8 (or x9) SIMMs in two groups of 4,
allowing 4, 8, 16, 20 or 32 MB.  This memory is in addition to the 18MB
capacity of the motherboard and CAN be used in 68030 mode as well.  Memory
speeds supported are 100ns, 80ns and 60ns for the 28MHz version, and 80ns,
60ns and 40ns for the 35MHz version.  The preferred choice is the middle one
in each case.  Since the board supports the memory CAS signal, burst mode
memory access can be achieved with the cheaper page mode SIMMs as well as
static column.  (The A3000's built-in Ramsey controller does not supply CAS,
and needs Static Column mode RAM for bursting.)


WARRANTY

	The board has a standard return-to-company warranty.


SUPPORT

	PPI have a Tech Support phone line as well as a BBS.  At the time I
bought the board, they were very busy, and it was widely known that they
would take a few days to respond to a call at that time.  I don't know if
the situation has improved.  I did try to call them once (over the EC thing,
see DISLIKES below) and I got a machine ("For this, press 1," etc.).  As I
was calling from a rural area, I did not have a pushbutton phone.  I tried
playing tone dial from a modem speaker down the line, which should have
worked, so I suspect they might have nobbled the answering machine!  No
human ever came on the line.

	I also called Creative Computers about the EC040.  Their customer
service guy was very helpful, and said that he would warn other customers
and get on to PPI about it.  He also offered to buy the board back if I
wanted, but I declined.


BUGS

	The only bug found is an occasional tendency to boot in 68030 mode,
despite 68040 being selected by the jumper.  The software processor
selection is 100% reliable.


PARTICULAR GOOD POINTS

- The performance is all you could demand from the hardware;
  there are no design flaws in this area.  In particular, unlike
  A500/A2000/A1200 accelerators, there is no need to get 
  additional RAM to realise the full benefit of the speedup.

- The memory system uses cheap SIMMs, and is fairly flexible
  (e.g., if you have 4MB, you can put in 4 4x8's and have 20MB,
  and not have to dispose of the 1x8's).

- The cooling fan probably prolongs CPU life (but see below).

- The power arrangements ensure it does not suck too much current
  through the FastSlot

- The kit provides *all* you need (except possibly Kickstart ROMs
  and a screwdriver!).


DISLIKES AND MISFEATURES

- The boards overclock the 68040's - the 28MHz one uses a 68040/25, and the
  35MHz a 68040/33.  PPI claim that these small margins are safe, given the
  extra cooling provided, and they are probably right (I have had no
  problems).

- Contrary to the picture on the box, the CPU clock crystal is soldered to
  the board.  I had toyed with the idea of replacing it (56MHz) with a 50MHz
  one to bring the CPU back down into its specified range, but this put me
  off :-)

- The 68040 supplied was not a production chip, but was designated
  "XC68EC040RC25".  Contrary to my first angry conclusion, this chip DOES
  have a full 68040 with MMU and FPU inside, but it has the less advanced
  bus system of the 68EC040.  Also, the "XC" designation means it has at
  least one minor bug (in the design), and is therefore only for prototyping
  purposes.  I have, however, had no problems with it, and it performs in
  every way like a full MC68040.

- The software supplied is lacking in one major respect:  it will remap
  Kickstart only into the board's onboard RAM, if present, and not to the
  motherboard Fast RAM.  Also, when it does so, it takes a full 1MB, and not
  just 512K.  This problem is exacerbated by the fact that Commodore's "CPU"
  command (even the AmigaDOS 3.0 version) does not support the "FastROM"
  option for 68040's.

- The software supplied assumes you will be running AmigaDOS 2.04, which
  could be irritating when (if ever) a 3.x upgrade puts in an appearance.  I
  suspect that 3.0 will have its own 68040.library and proper 68040 support
  in Kickstart, however.  The case for 2.1 compatibility is less clear (and I
  don't have it to try).  I am in the process of acquiring a developer's
  release of 3.0, so contact me by e-mail to find out how that works out.

- The on board memory, when fitted, is not contiguous with the Fast RAM on
  the motherboard, leaving a dilemma as to which to upgrade.  Some
  applications only use the largest *contiguous* block of free memory, and
  so would not fully benefit from e.g., a 3000 with 4MB of Fast RAM and
  another 4MB on the Mercury.  This is not PPI's fault and is dictated by
  the A3000's design, but they could have provided MMU software to get round
  the problem.

- The use of the page mode ZIP reduces performance in 68030 mode by about 3%
  against static column RAM.  Not a major worry.

- As mentioned, 68030 fallback is not supported on an A3000/16.


RECOMMENDATIONS

	Any A3000 owner considering upgrading to a 4000/040, but not
particularly worried about AGA graphics, is strongly encouraged to snap one
of these up if it can be obtained cheaply, as the cost saving is
considerable (and you get to keep that nice fast 1GB SCSI hard disk ;-)).
Beware that the resale value of the upgraded A3000 machine is depressed by
A4000/040 in the same way that the base machine has been knocked down by the
A4000/030.

	Anyone who has a PPI Mercury is recommended to get the "Set040"
program by Nic Wilson, which is shareware.  I plead guilty in that I have
yet to register, but I'm waiting to find a source of Aussie currency/cheques
without the bank's massive fees.  "Set040" remaps Kickstart (to any RAM) and
can load "soft" Kickstarts, and picks up the slack.


MY PLANS FOR THE SYSTEM

	When the Amiga port of Linux (PD Unix) is more advanced, I intend to
complete the system with a larger hard disk, Linux, and a high resolution
graphics card for which I will obtain or write X windows drivers.  This will
result in a fully modern, high performance Unix workstation, while still
retaining Amiga compatibility, for a total cost of around L2000.00 UK,
including the second-hand A3000.  The other option would have been to buy a
486 PC clone and keep my old A500/030 system, but this would have cost a bit
more and would be ideologically unsound. ;-)


SUMMARY

	Apart from the graphics, the performance of the A3000 with Mercury
exceeds that of the A4000/040 in all areas, and I can completely recommend
the Mercury to prospective purchasers.  The only thing which lets it down a
tiny bit is the MMU software, but there are third party utilities available
which fulfill most needs.


David Crooke
dcc@dcs.ed.ac.uk
3-May-1993

---

   Daniel Barrett, Moderator, comp.sys.amiga.reviews
   Send reviews to:	amiga-reviews-submissions@math.uh.edu
   Request information:	amiga-reviews-requests@math.uh.edu
   Moderator mail:	amiga-reviews@math.uh.edu