home .. forth .. misc mail list archive ..

Re: questions (about x21)


The big picture is that we really have two systems we need to address:
Hardware(the chip) and software(Forth running on the chip).  How many
instructions, what instructions, and how much of the Forth architecture do
you move to silicon?

The Forth system will be in PROM(memory) written in the Forth machine code
instructions implemented on the Forth Processor.  The Forth Processor has 16
data stack levels and the return stack has 16 levels currently.  These can
easily be changed as the Forth Processor that I am working on uses a
generic(read CONSTANT) to set the depth size in VHDL code.  Also, the Forth
Processor executes a error condition if the stack would overflow which the
Forth Software would then trigger a process to spill the stack into memory.
So limiting the onboard chip stack depth is not really limiting the actual
stack depth for the Forth software.

Forth is really a virtual machine anyway, and it has been implemented on
many processors that were never optimized for it.  Very few processors have
two distinct on-chip stacks to use when implementing Forth.  This is an
effort to build an optimized chip(engine) for the Forth Software to run on.
You Forth system writers jump in here....

I am working on a simple one instruction per cycle VHDL Forth Processor that
will fit on about half of a Xilinx 4005 leaving the rest of the gates for
special purpose I/O processing.  Dr. Ting is working on
multi-instruction/cycle VHDL Forth Processor that resembles an F21/P21?
without the video co-processors and such.  The nice thing about VHDL, is you
can buy the Xilinx Foundation software that includes a XC4005 PC Board for
less than $150.  The 4005 is reprogramable so you can keep tweaking the
design without any additional costs at all (except for time).

Don


----- Original Message -----
From: "erikc" <firewevr@insync.net>
To: <:misc@pisa.rockefeller.edu>
Sent: Monday, June 05, 2000 2:00 PM
Subject: Re: questions (about x21)


>
> -----Original Message-----
> From: Don Golding <angelus@ix.netcom.com>
> To: misc@pisa.rockefeller.edu <misc@pisa.rockefeller.edu>; Jeff Fox
> <fox@UltraTechnology.com>
> Date: Monday, June 05, 2000 16:28
> Subject: Re: questions (about x21)
>
>
> >I agree wholheartedly that 18 stack levels are more than sufficient for
> good
> >Forth programming.  I have been programming in Forth for over 10 years
and
> I
> >never have used more than four Items on the stack.  98% of the time there
> >are no more than three Items with one or two more typical for most
> >applications.  Keeping stack operations to a minimum is the best way to
use
> >Forth.  If you have three or more items on the stack you need to factor
the
> >definition more.  Anyone who thinks they need alot of stack space needs
to
> >read "Thinking Forth" again...
> >
> >Don Golding
>
>
> I presume you are talking about the data/parameter stack.  My question
would
> be how large to make the return stack.  It seems to me that since Forth
> words get nested pretty deep, you would want a sizable return stack, maybe
> even bigger than the data stack.
>
> I'm a newbie to Forth, so no flames please.
>
> erikc
> firewevr@insync.net
>
>