I'm sure this has been beaten to death by now, but I need to kick the
dead horse a few more times. :)
On Nov 8, 2007 7:22 PM, Al Kossow <aek at bitsavers.org> wrote:
If a processor
has 16 bit registers, 16 bit math and address
calculation, and a 16 bit address bus, but it's ALU is only 8 bit and
its internal data bus is 8 bits, it's an 8 bit processor. Right?
wrong
The Z80 is a 16 bit processor?
People are confusing architecture with implementation.
I would argue that we are discussing implementation. (And there is
also confusion between architecture and programming model). You could
implement SPARC with a single AMD2901 some SRAM and lots control
logic, but, IMHO, you wouldn't have a 32 bit processor when you were
done.
The 360/30 /40 and /50 are all considered members of
the same 32 bit
architecture, and have 8, 16 and 32 bit data paths, respectively.
I don't know enough about the 360 to know what you refer to when
talking about data path (ALU, CPU internal data paths, external data
bus, etc.)
An 80386/SX is not considered a 16 bit processor
because it has a 16
bit data bus.
I agree, but the 80386/SX is a 32 bit processor by both architecture
and implementation. Multiplexing an 80386 core onto a 16 bit data
bus doesn't turn it into a 16 bit implementation. If they had build
the /SX using 16bit internal data paths, that would have made it into
a 16 implementation, and, IMHO, a 16 bit processor.
Is a PDP-8/S a one bit processor because it implements
arithmetic serially?
Depending upon the details of the implementation, I might consider it to be one.
Back to the MC68000, let's add some specificity. It's a 16-bit
implementation of a 16-bit architecture that happens to have a 32 bit
programming model available. The MC68020 is a 32-bit implementation
of a 32-bit architecture with a 32 bit programming model.
--
Eric