On 14 Dec 2008 at 10:33, bfranchuk at jetnet.ab.ca wrote:
99% of the code I have seen assumes 8 bit bytes.
I have decided to a 20 bit cpu ... 10 bit bytes. So far every thing
seems to fit in the CPLD's I can get, but it is not done until
I get all the bugs checking done, as right now it is more hacking
as I go with the logic.
Is there any need for any "byte-edness" at all? Stick with a
convenient word size, make it easy to shift and mask out subfields
and forget about "bytes". You get the benefit of being able to
address more memory with fewer bits if you stick to word addressing.
The IBM marketing people used to propogate the notion that the high-
end CDC mainframes were only good for "scientific" applications
(read: "written in FORTRAN), where the S/360 architecture with its
rich memory-to-memory byte and BCD manipulation instruction
repertoire would smoke the competition in "commercial" applications
(read: "written in COBOL").
In fact, for a time, CDC had one of the fastest COBOLs on the planet,
S/360 notwithstanding. When you can do things 60 bits at a time fast
enough to keep memory busy, you don't need a fancy "commercial
instruction set" option. Seymour Cray was no idiot.
I submit that the details of any instruction set over another hardly
matters, so long as an instruction set is complete (i.e., there's no
"you can't get there from here" situation) and is executed
efficiently.
Cheers,
Chuck