brianw@microsoft.UUCP (Brian Willoughby) (11/11/89)
In article <8910281058.AA26023@trout.nosc.mil> philip@pro-generic.cts.com (Philip McDunnough) writes: >Could we have a definitive answer to the following:Is the data path between >something called a FPE and the cpu of a GS 8 OR 16 bits? While we're at it, >does the GS qualify as a 16 bit processor in the sense of fetching data >from memory 16 bits at a time? Thanks. > > Philip McDunnough There is no 16 bit data bus 65C8xx processor (WDC, I'm waiting...) No comment on the FPE. BUT, there is a difference between 8 bit and 16 bit peripherals on the GS, even though it is true that the bus is physically 8 bits wide. I began pondering this when I read AE's claim that their Vulcan drive is a 16 bit peripheral. While that is not true from one viewpoint, there are ways to arrange the I/O so that higher speed is realized during 16 bit accesses. The important fact is that the software is running faster if the hardware is correctly designed for 16 bits. An example: The old Disk ][ is an 8 bit peripheral. Data comes in 8 bit groups - and the 65x02 executes an 8 bit read. You cannot execute a 16 bit read with the Disk ][ (even if you put a 16 bit 65C802 in a non-GS II), because what would actually occur is TWO 8 bit accesses where the second access is one address higher than the first. If a hardware designer (like AE) were to place two 8 bit ports at sequential addresses in the card's I/O, then a 16 bit access would see the lower 8 bits of the value at, say, $C080, and the upper 8 at $C081. On an eight bit peripheral, the following code is necessary to fetch a 16 bit value (this is just one possible instruction sequence): LDA $C080 ;upper 8 bits XBA LDA $C080 ;lower 8 bits This takes 10 to 12 cycles (look it up, if you're picky). On a peripheral designed to take advantage of 16 bit 65C8xx processors, the following code will suffice: LDA $C080 This takes 5 or 6 cycles (look this up, too, if you want). I am assuming that the M bit is set to 8 or 16 bit transfers before the code is run, so I didn't count the cycles for setup. IF the FPE is 16 bit, then it will be faster than any standard 8 bit design, but not as fast as a yet-to-be-designed full 16 bit Apple would be (if anyone ever tries to build such a thing, they'll need a 16 bit bus version of the 65C816, and WDC doesn't make one [yet]).. Brian Willoughby UUCP: ...!{tikal, sun, uunet, elwood}!microsoft!brianw InterNet: microsoft!brianw@uunet.UU.NET or: microsoft!brianw@Sun.COM Bitnet brianw@microsoft.UUCP