Hi guys,
Thanks for the shout on this thread. I've been asked to provide some altram figures at 16MHz -- which I can probably do by digging out some old firmware -- but I think there's a problem with posting Falcon "Fast RAM" stats:
On the Falcon, the onboard CPU, as wired, is theoretically capable of a read performance of 16 bits bytes per three cycles. Using a fast enough board and a Magnum type expansion (ie, reducing ST RAM to 4Mb because on the Falcon not even the address bus is 32 bit!), you could
theoretically achieve 10.7MB/s, ignoring caches*. This would not stress 120ns RAM.
Now, on a genuinely 32 bit system (which the A1200 isn't quite, see below), the theoretical read performance is not 22MB/s, as you might expect from doubling the figure for 16 bits, above, but it's actually 32 bits every
two bus cycles (synchronous mode) which works out at 32MB/s for 16MHz. That's 120ns, but in only two cycles you'd probably want your 60ns RAM at this point. Again ignoring cache -- which now becomes a big thing, by the way*.
Now, the A1200's trapdoor provides 32 bits of data bus but
doesn't support synchronous mode, so that figure comes down to 32 bits every three cycles again and, as each cycle is just over 14MHz, theoretical read rate is 18.7MB/s.
So, you
could actually build a FastRAM card for the A1200 which would clock around to 18MB/s, but you could only build a Falcon expansion card which would clock at 10MB/s.
Once you start offloading the CPU (either for the A1200 or the Falcon), you're no longer measuring the Falcon or the A1200 any more. You're measuring the card and that can do all sorts of clever tricks.
...which is all just a very long way of saying my figures won't be worth the bits they're typed with because they're not testing the Falcon.
BW.
* Cache is important. Even if you only read one byte on the Falcon, it reads two and the second one goes in the cache. On the A1200 that will be three bytes cached for a single one read -- very significant in the 'feel' of the OS.
** When you work in synchronous mode, cache is even more important than above. You have the option, (at the expenditure of an additional three cycles per bus access) to read and cache not one, not three but
15 extra bytes. Sometimes that trade off is worth it, sometimes it's not. It tends to be better for general use than for benchmarks. All good*** CPU replacement cards for both A1200 and Falcon use this technique.
*** So obviously
mine doesn't yet -- I'm inept at HDL!
