Digitalker, SP0256, and SC-01 speech chips

Chuck Guzis cclist at sydex.com
Fri Feb 15 13:01:19 CST 2008


> Date: Fri, 15 Feb 2008 12:54:01 -0500
> From: Dave McGuire 

> > As one who has had the extreme displeasure of programming both the
> > 8X300 and an 8X305,
> 
>    Are they really that bad?  How so?

Brain-dead in the extreme, although the model might be interesting 
for the "1900 Computer" thread.  You had 8 registers, a shifter and 
an ALU.  R0 was the implied source for binary operations, but not 
implied as an accumulator.  The instruction set was 8 instructions:

1.  Move between the register file and the I/O bus
2.  Add using R0 betweeen the register file and the I/O bus
3.  AND as in (2)
4.  XOR as in (2)
5.  XMIT - a "Load Immediate" (8 bits to register file, but only 4 
bits to I/O bus.
6.  XEC - Execute instruction at the location formed by adding the 8-
bit immediate field and the contents of a register.
7.  NZT - replace the low order 8 bits (or 4 bits if I/O bus is being 
tested) of the program counter with a literal value if the specified 
register is nonzero.
8.  JMP - unconditionally jump to the 13 bit immediate address.

That's it.  Thee were some strange conventions with the I/O 
registers, being designated as "right" and "left" bank which 
restricted their use in operations.  There was one status flag--
overflow--addressable as regiser 8.

No interrupts, unless you were fortunate enough to have an 8x310 ICC, 
which gave you a 4-level stack and 3 interrupts.  The 8x310 also gave 
you some new instructions, implemented by decoding "do nothing" move 
instructions.  You got a PUSH (current PC+2), a RETURN, SET and CLEAR 
interrupt mask and a clear pending interrupt status.  You could use 
the 310 to implement a CALL by using a PUSH followed by a JMP.  But 
8x310s were rarely seen.

By any measure, the PIC1640 was miles ahead in terms of ease of 
programming.

AFAIK, the relay-based Mark I was the first Harvard architecture 
machine.  Was the 8x300 the first microprocess (maybe too strong a 
word) to employ Harvard architure?  I don't know, but it was an early 
design.

It's interesting to me that, although the PIC claims to have Harvard 
architure, the model has been violated somewhat in the more advanced 
PICs.  So, for example, members of the PIC18xx series allow for 
fetching of data values from program memory (TBL instruction) and 
modifying and re-flashing program memory under program control.

Cheers,
Chuck




More information about the cctech mailing list