Path: utzoo!mnetor!uunet!husc6!mailrus!ames!ubvax!smegma!mdg
From: mdg@smegma.UUCP (Marc de Groot)
Newsgroups: comp.lang.forth
Subject: Re: Novix chip with Computer Cowboys software by Calvin Moore
Message-ID: <385@smegma.UUCP>
Date: 9 May 88 07:49:09 GMT
References: <17430@glacier.STANFORD.EDU> <460@ghidrah.tessi.UUCP>
Reply-To: mdg@smegma.UUCP (Marc de Groot)
Organization: A moving point in 4-space
Lines: 73

In article <460@ghidrah.tessi.UUCP> bobl@ghidrah.UUCP (Bob Lewis) writes:
>In article <17430@glacier.STANFORD.EDU> jbn@glacier.STANFORD.EDU (John B. Nagle) writes:
>>
>>      I just saw the Novix chip running under the control of the silliest
>>user interface I have ever encountered.

This interface is Chuck Moore's personal research effort. Chuck (who I cannot
really speak for) has some very particular ideas about Forth, being its in-
ventor, and is not particularly concerned with popular acceptance of hid
ideas, even within the Forth community. I would postulate that this is one
reason his company is called Computer Cowboys; he is a "cowboy", an
individualist.

>>      The Forth implementation lacks DO and LOOP.  There's an absolutely
>>hysterical bug: multiply only works for even multipliers.  This is documented;
>>the documentation claims that "most multipliers are even", you see.

(Sigh) Whoever wrote this is no marketing person, and clearly did not
understand or did not care that the remark would have a VERY negative effect
on those who did not understand the background of the chip.
The chip's development was stopped one iteration short of being totally
debugged: the silicon for sale right now is buggy, and in my opinion
should be taken as an indication of what this technology *might* do,
someday, 'cuz what it's doing now is not very professional.

>I suppose that in most cases one could use (forgive me if my FORTH is a
>little rusty):
>
>	: *SAFE 2* * 2/ ;
>

Yes, this works, but the top number on the stack is only a 15-bit signed
integer.

I suppose I am qualified to make some statements about the chip, being
the author of SC-Forth, sold by Silicon Composers of Palo Alto.

1) The NC4000 has some truly unique, RISC-ish characteristics. There are
   many lessons to be learned from its design.

2) Like so many things about Forth, the NC4000 is an unprofessional
   presentation of some profound concepts about computer architecture.
   Many people see no further than the lack of polish.

3) The chip, at very least, proves that it is possible to construct a
   hardware Forth processor which is capable of very high power and speed.

4) This processor *is* usable for compute-bound applications (ray-tracing,
   etc) and is being used in obscure circles as a super-computer solution
   at relatively low cost.

Heck, I like the thing. What do I like?

1) 16-bit processor, where clock speed in MHz = number of MIPS, up to
   6 or 7 MIPS.

2) 4000 gates is all it took!

3) What other chip does a subroutine call in 1 clock tick? (The return
   happens in parallel with the last instruction in most routines.)

4) OK, the interrupt hardware is broken, but if it was bug-free, the
   interrupt latency would be 1 clock tick because the context is *already*
   saved on a stack!

More next time.


-- 
Marc de Groot (KG6KF)
UUCP: {hplabs, sun, ucbvax}!amdcad!uport!smegma!mdg
AMATEUR PACKET RADIO: KG6KF @ KB6IRS 
"Look, he's mounting a tape!" "Quick, throw cold water on him!"