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

f21 (or better) Code


Dear MISC readers:

>From: Me <deah@home.net>
>
>Why not make the VHDL or whatever is used, available to download, so we
>could make f21's with our existing FPGA's and PAL's? They wouldn't be as
>fast, of course, but they would be faster than software emulation, and
>allow
>for some degree of hardware prototyping. It would also allow us to better
>understand how the damn thing really works (and if it really does).
>
>Open Source the f21 project!!!!

It is pretty close to that now since Dr. Ting published the 
schematic design of his P16 in FPGA in the last issue of More
on Forth Engines and since there is also a sort of open source 
VHDL MISC project on the web.  (I have a couple of links at
my site but they are hard to find and not very recent.)

However the most advanced versions are commercial not public domain.
If you want integrated systems with hardware you can contact iTV
but it is commercial stuff not PD or hobbiest designs.

It is an interesting field because once armed with a CPU core
(which can be small) you can customize it with special features for
a special project or add a coprocessor that is optimized to do as
much of the job as possible with programmable hardware.  If you
build something that makes money you are going to be liable for
some royaltees to those with Forth chip and microprocessor and
transistor patents etc. but it has not appeared to be an issue
for those wanting to learn.

For experimentation and understanding experimenting with Forth chips
in FPGA or with VHDL where you can also compile for custom VLSI
silicon the MISC idea has some nice features. I was able to
attend some of John Rible's UCSC Extension courses in VLSI Design
where the students worked in groups to make design changes to his
QS (QuickSand) 4 or 5.

However IMHO even though there is a very cheap and fast turn around
with FPGA and an expensive and terribly slow, or terribly expensive
and slow process with VLSI there will still be an importantance to
a great deal of simulation of designs.  I say this because in John's
class it was obvious that to really do something with the silicon
you compile you need test code and testing scripts and they work
best if they are debugged ahead of time on a simulator. 

I have also enjoyed working with hardware and software simulations
of systems. And since they are just software they are fun and don't
have the same headaches as real hardware.

You can learn a lot from just simulating the chips with FPGA or
VLSI design software without actually burning chips. It is one 
level of understanding of the whole process although it is not
one for everyone.

You can get a Novix knock off on the web and you can get a
variant of Ting's P16 in schematic form and coming in VHDL.  It
is interesting to see what contraints are added to the designs
by the brand and version of the design software.  Ting was
willing to let people make a copy, but he could not separate
the P16 components from the rest of the library in the
software so the 400MB file complicated giving away copies.

Many people ask Chuck if he is doing this and if it would be
interesting.  He says that it was interesting for him to use
the conventional tools when he did the first generation Forth
chip, the Novix, but that after more than ten years of going
down the road that he has been going down it would not be
productive for him to go back to the design approaches he was
using fifteen years ago now that he has all these tools to
do it the way he wants to.  He has some interesting stories
about those days.

I was very interested in the Novix in those days and really wanted a 
chip with built in analog, video, and network interfaces to build
things that could do what PCs were used for and that could be connected
for parallel processing.  For a few years I made designs based on
the Novix or RTX chips.  I figured if I made a product and sold
lots of the that someday I could move up to custom VLSI for a
really super Forth chip.

Chuck became very excited about the possibility of switching from
PGA or standard cell to custom VLSI because it would do what he
has always used Forth to do, to get to the lowest level of access
available to do his design, as close to the hardware as 
possible.  What caught my attention was his statements that
what interested him in going in this direction was that the
chips could be 100x cheaper to manufacture and 100x lower power
and 100x faster if he could get at this stuff.  

This impressed me because the Novix and RTX could already beat
the stuffings out of Intel chips that were 100x bigger on many
real-time problems.  In particular my interests in AI had led
me to discover the idea that Phil Koopman explains so well
in his online book about how LISP, Prolog, and clever Expert
Systems can compile very close to the metal on Forth Machines
and make them look like super cheap super fast LISP, Prolog,
Forth, and Expert System machines.  In this niche these
Forth Machines were showing an advantage around 10^5 in
performance/price and Chuck was talking about how he could
get _another_ 10^4 by going to custom VLSI.  These were the
ideas behind F21.  It took a long time to work out the bugs
in design software and fab processes to get chips working,
it wasn't just a matter of giving a high level description
of a chip to automated design software like in VHDL.

The nature of the contracts between UltraTechnology (my company)
and Computer Cowboys (Chuck's old company with contract in place) 
and as it has evolved iTV (Chuck's present company) preclude
offering the actual design of the F21 into the public domain.
Except for fabricating chips it wouldn't be of much value
anyway since commerical VLSI design software won't be able
to simulate it and will not be able to predict that it can
run.  The point being that it is tweaked about 10x as much
as those tools can cope with.  It would need a version of
OKAD with documentation etc. and it is not PD either.

Since I have these F21 that are expensive to make in small quantity
but which could be manufactured for next to nothing in quantity
I have little interest in going back (as I see it) ten or fifteen
years to do it in VHDL.  Well I have enough interest to have
been a lab assistant in John's class to get some exposure to 
some very expensive design tools and learn some basics.

I can understand other people wanting to experiment themselves
with new chips in things like FPGA or VHDL simulator or even
custom silicon compiled in VHDL.  I can tell you that it already
is a sort of open project on the web.  however I am not 
running it or documenting it etc. and not the best person to
ask for help on that project.

The design specs for the .8u VLSI process we were using at Mosis
said that it was sufficiently fast to compile a 75Mhz flip-flop.
This is a lot slower than the 10Gig custom circuits that Chuck
engineered in that process.  So to me a 50Mhz or so Forth engine
in FPGA doesn't sound fast or cheap. It sounds like it would
be 10x slower and at least 10x more expensive in quantity.  But
for other people designing their own chips it is a very impressive
thing and I don't mean to belittle it.  Certainly for some
custom application with some custom I/O hardware an FPGA Forth
chip might be 1000x faster than F21!

My own personal interests are more along the lines of getting F21
manufactured in quantity and place in countless widgets.  The F21
in a mouse was simply meant to demonstrate the chip is a little
bit like a workstation on a chip and a little bit like the processor
that was in the mouse before.  For size, cost, complexity, it is
like the processor that was in the mouse, only 1000x faster.  It
is also very much like a PC running Windows only 100x cheaper. (it
is of course not compatible with the original mouse, is not also
programmed to operate like a microsoft mouse on your pc, is not
the latest optical or trackball mouse, and does not run PC 
software. ;-)

Mike said:

>Chuck has said that he plans to release a PC-compatible version of his Color
>Forth software for free. I speculate that Chuck could make a fair amount of
>money by publishing as a book a contrarian critique of the current hardware
>and software industry... along the lines of Cliff Stoll's _Silicon Snake
>Oil_ or Jef Raskin's _The Humane Interface_. The book could contain a
>Color-Forth system diskette/CD-ROM with email and a web browser to show how
>much can be done with a tiny amount of code. With a good editor and a big
>publisher behind him, he could probably sell 100,000 books or more, and have
>some money for further MISC hardware R&D. I don't know if he wants to do
>something like this, however.

Interesting idea isn't it. ;-)

Chuck has said that he had planned to donate OKAD to the PD when
he decided to move on.  I don't know if his legal contracts will
preclude that.  But I do like the idea of that book.

Of course I also like the idea that it could include a workstation
in a mouse and custom VLSI design software and chip design along
with the book and make it understandable for grade school children.
(some of them anyway.)

Chuck has been letting other people provide the funding so he
can focus on chip design.  It would be big change to do what you
suggested but he might enjoy that too. :-)  Things do change.

>such designs. There are videos for a silicon design class by John Rible (I
>think?) available form Ultra Technology. Others in this list may be able to
>describe such designs and may be willing to share them.

I removed the videos from the store last month as circumstances had
made it difficult to make copies and fill orders with my work
schedule.  The page does say that some videos may be avialable
in the future.  People might understand that I was just not able
to continue to donate my time and money making copies of tapes
and shipping them at prices that almost covered the costs.  I think
someone in this group might make copies of old tapes
that they have if someone asked nicely.  people are free to make
copies of those tapes and give them away if they want to.  They
can also transcribe the one's I didn't transcribe if they want
but it is a lot of work...

But as for VHDL etc.,
If one is interested in playing with the stuff one might
look into the Novix in Sweden and the P16 variants etc. available
on the web.  I think one included a video generator similar to 
MuP21 for Ting's P16. It is fun stuff, education and might have 
a future in it.

From my personal point of view I am interested in the whole process
that Chuck used as I saw his approach as being applicable in the
future to new technologies when they reach the stage of medium to
large scale integration. Building simulation and design tools to
port a simple computer design to a new technology seems pretty simple
the way Chuck has done it.

My plans will be to get a production F21 and get it out into 
some products.  Having gone down the PGA and custom silicon
Forth machine routes I am interested in applying the approach
to new technologies.  It is not too hard to imagine a very 
tiny very fast Forth chip in some new technology.  Chuck has
been approached by people working with diamond semiconductor
and optical stuff (that I know of, perhaps others) that makes 
silicon look downright ancient. I like the idea of an extra 
x10^6 here and there, they do add up (well multiply actually ;-).

Jeff Fox