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

RE: Recent dialog and old initiatives




-----Original Message-----
From: Ben Franchuk <bfranchuk@jetnet.ab.ca> 
Sent: Friday, November 03, 2000 2:36 PM
Cc: MISC@pisa.rockefeller.edu
Subject: Re: Recent dialog and old initiatives


Myron Plichota wrote:
> 
> Ben,
> 
> I enjoyed checking out your website. It looks like you are a fan of the
> PDP-8 and Nova CPUs. I think they are kind of cool too. From what I can
your
> goal is not to produce a Forth chip. I am sometimes torn between a pure
> Forth and a more general-purpose approach, but I always seem to come back
to
> Forth, or at least some kind of stack machine.

My goal is to produce a General Purpose TTL based computer. Since TTL
is hard to come by nowadays I am using FPGA chip and TTL macros.
Unfortunately
I have been hard pressed to find room for the minimum Forth instructions:
CALL
and 0Branch. My other goal is to keep things 'lite' and Forth machines have
a
lot of good idea's here.
 

A real Forth machine which has both stacks implemented
> on-chip as shift registers yields very fast execution of fundamental Forth
> stack operators with a minimum of transistors but at the price of making
> stack indexing or re-ordering operators such as PICK very inefficient and
to
> be avoided at all costs.

This is true with any implementation of Forth. The General purpose machines
also have a hard time with the large amount of subroutine calls in Forth
as the Cache keeps getting reloaded.


>I have not yet had the pleasure of running a real Forth
> machine yet, but I now write Forth on my PC in a style heavily influenced
by
> x21 precepts. There are so many good general-purpose architecture CPUs
> available that I am not very interested in building my own.

That is a matter of often long debate, of what is a good cpu architecture.
RISC machines to me use too much memory bandwidth.

> Also, it's usually quicker to
> simply type " x <= a and not b;" then to browse for the equivalent
schematic
> symbol (and create it if it doesn't exist), and then point and click all
> over the place to establish its place in the design.

At the moment using a 74382 alu macro is a simpler than figuring out the
VHDL code for a ALU.Once I get a working schematic version then I will
rewrite for a high level language.

========================================

You might want to check out the ALU schematics found in old 
TTL books if you need ALU implimentation details.

M. Simon