Path: utzoo!utgpu!jarvis.csri.toronto.edu!cs.utexas.edu!usc!rutgers!cbmvax!daveh From: daveh@cbmvax.commodore.com (Dave Haynie) Newsgroups: comp.sys.amiga.hardware Subject: Re: (A) Amy 500 -> 2000? (B) 68040 vs. gfx coprocessor Message-ID: <9589@cbmvax.commodore.com> Date: 2 Feb 90 23:03:01 GMT References: <633@xdos.UUCP> <9527@cbmvax.commodore.com> <640@xdos.UUCP> <9574@cbmvax.commodore.com> Reply-To: daveh@cbmvax.cbm.commodore.com (Dave Haynie) Organization: Commodore, West Chester, PA Lines: 34 In article <9574@cbmvax.commodore.com> mks@cbmvax.cbm.commodore.com (Michael Sinz - CATS) writes: >ahh, but the 68040 also is on the bus *LESS* than the 030. That is due >to the way the cache and pipeline works inside the 040. (Like caching >both directions of a branch just in case and even starting the pipeline >with both...) Some engineers say as much as a 40% reduction of ON-BUS >time with the 040. (Well, Moto says more, but they quote BEST performance >and not real-world) It is probably about what it says in the BYTE article and the Motorola announcements. The '040 has many things in its favor, bus-bandwidth speaking. The 68000 used somewhere around 80%-90% of the available memory bandwidth when running full-out, so most coprocessors like Agnus worked best with interleaved memory. Since the 68020 and 68030 came along, CPUs have been running too fast for their own good, and it's no longer possible to build a memory system that's essentially twice the speed of the CPU, as on the chip bus. So you may instead count on a CPU's good nature; the '020 uses something more than 50%, the '030 something less than 50% of the bandwidth on a 32 bit bus. A large part of this is due to caching. The main problem, however, is that you don't know which 50% -- any coprocessor device that shares the bus (a DMA driven hard disk drive is the most common example of this) requests the bus when it needs it, gets the bus as soon as the '030 is ready to give it away, does its stuff, and gives the bus back. The '030 could be running out of cache during the DMA transfer, but there's no way the DMA device can tell when the '030 wants the bus, so its always assumed the '030 would use it if available. For a hard disk, this is pretty acceptable, but for a more everpresent coprocessor, this would be bad. The '040 solves the problem by hanging off the bus in its normal state, only asking for bus access when it really needs bus access. -- Dave Haynie Commodore-Amiga (Systems Engineering) "The Crew That Never Rests" {uunet|pyramid|rutgers}!cbmvax!daveh PLINK: hazy BIX: hazy Too much of everything is just enough