Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

/earth is 98% full ... please delete anyone you can.


devel / comp.lang.forth / Re: Forth CPU on an FPGA Wanted

SubjectAuthor
* Forth CPU on an FPGA WantedChristopher Lozinski
+- Re: Forth CPU on an FPGA WantedJames Brakefield
+* Re: Forth CPU on an FPGA WantedPaul Rubin
|`* Re: Forth CPU on an FPGA WantedJames Brakefield
| +* Re: Forth CPU on an FPGA WantedPaul Rubin
| |+* Re: Forth CPU on an FPGA WantedJames Brakefield
| ||`* Re: Forth CPU on an FPGA WantedPaul Rubin
| || +- Re: Forth CPU on an FPGA Wanteddxforth
| || `* Re: Forth CPU on an FPGA WantedJames Brakefield
| ||  `* Re: Forth CPU on an FPGA WantedPaul Rubin
| ||   +* Re: Forth CPU on an FPGA WantedJames Brakefield
| ||   |`* Re: Forth CPU on an FPGA WantedPaul Rubin
| ||   | `* Re: Forth CPU on an FPGA WantedStephen Pelc
| ||   |  `- Re: Forth CPU on an FPGA WantedPaul Rubin
| ||   +* Re: Forth CPU on an FPGA WantedAnton Ertl
| ||   |+* Re: Forth CPU on an FPGA WantedPaul Rubin
| ||   ||+- Re: Forth CPU on an FPGA Wantednone
| ||   ||`- Re: Forth CPU on an FPGA WantedAnton Ertl
| ||   |`* Re: Forth CPU on an FPGA Wantedminf...@arcor.de
| ||   | +* Re: Forth CPU on an FPGA Wantednone
| ||   | |`* Re: Forth CPU on an FPGA WantedPaul Rubin
| ||   | | `* Re: Forth CPU on an FPGA Wantednone
| ||   | |  `- Re: Forth CPU on an FPGA WantedPaul Rubin
| ||   | `* Re: Forth CPU on an FPGA WantedAnton Ertl
| ||   |  `* Re: Forth CPU on an FPGA WantedJames Brakefield
| ||   |   +- Re: Forth CPU on an FPGA WantedJurgen Pitaske
| ||   |   +* Re: Forth CPU on an FPGA WantedJon Nicoll
| ||   |   |+* Re: Forth CPU on an FPGA Wantedminf...@arcor.de
| ||   |   ||`- Re: Forth CPU on an FPGA WantedJurgen Pitaske
| ||   |   |+- Re: Forth CPU on an FPGA WantedJurgen Pitaske
| ||   |   |`- Re: Forth CPU on an FPGA WantedAlexander Wegel
| ||   |   +- Re: Forth CPU on an FPGA Wantedminf...@arcor.de
| ||   |   +* Re: Forth CPU on an FPGA WantedBrian Fox
| ||   |   |`- Re: Forth CPU on an FPGA Wanteddxforth
| ||   |   `- Re: Forth CPU on an FPGA WantedMe Unknown
| ||   `* Re: Forth CPU on an FPGA WantedRick C
| ||    `* Re: Forth CPU on an FPGA WantedPaul Rubin
| ||     +* Re: Forth CPU on an FPGA Wanteddxforth
| ||     |`* Re: Forth CPU on an FPGA WantedPaul Rubin
| ||     | +- Re: Forth CPU on an FPGA Wanteddxforth
| ||     | `* Re: Forth CPU on an FPGA WantedAnton Ertl
| ||     |  `* Re: Forth CPU on an FPGA Wanteddxforth
| ||     |   +* Re: Forth CPU on an FPGA WantedStephen Pelc
| ||     |   |`* Re: Forth CPU on an FPGA WantedMarcel Hendrix
| ||     |   | +- Re: Forth CPU on an FPGA Wanteddxforth
| ||     |   | `* Re: Forth CPU on an FPGA WantedAndy Valencia
| ||     |   |  +- Re: Forth CPU on an FPGA WantedPaul Rubin
| ||     |   |  +* Re: Forth CPU on an FPGA WantedPaul Rubin
| ||     |   |  |+* Re: Forth CPU on an FPGA Wanteddxforth
| ||     |   |  ||`* Re: Forth CPU on an FPGA WantedKrishna Myneni
| ||     |   |  || `- Re: Forth CPU on an FPGA Wanteddxforth
| ||     |   |  |`- Re: Forth CPU on an FPGA WantedS Jack
| ||     |   |  `* Re: Forth CPU on an FPGA WantedAndy Valencia
| ||     |   |   `- Re: Forth CPU on an FPGA WantedPaul Rubin
| ||     |   `* Re: Forth CPU on an FPGA WantedAnton Ertl
| ||     |    `- Re: Forth CPU on an FPGA Wanteddxforth
| ||     +- Re: Forth CPU on an FPGA Wantednone
| ||     `* Re: Forth CPU on an FPGA WantedRick C
| ||      `* Re: Forth CPU on an FPGA WantedPaul Rubin
| ||       `* Re: Forth CPU on an FPGA WantedRick C
| ||        `- Re: Forth CPU on an FPGA WantedPaul Rubin
| |`* Re: Forth CPU on an FPGA WantedRick C
| | `* Re: Forth CPU on an FPGA WantedPaul Rubin
| |  `* Re: Forth CPU on an FPGA WantedRick C
| |   `* Re: Forth CPU on an FPGA WantedPaul Rubin
| |    `* Re: Forth CPU on an FPGA WantedRick C
| |     `- Re: Forth CPU on an FPGA WantedPaul Rubin
| +- Re: Forth CPU on an FPGA WantedMatthias Koch
| `- Re: Forth CPU on an FPGA WantedRick C
+- Re: Forth CPU on an FPGA WantedBrad Eckert
+- Re: Forth CPU on an FPGA WantedIlya Tarasov
+- Re: Forth CPU on an FPGA WantedBob Edwards
`* Re: Forth CPU on an FPGA WantedMatthias Koch
 `* Re: Forth CPU on an FPGA WantedMatthias Koch
  `- Re: Forth CPU on an FPGA WantedPaul Rubin

Pages:123
Forth CPU on an FPGA Wanted

<4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13722&group=comp.lang.forth#13722

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:7b58:: with SMTP id m24mr5647047qtu.268.1624553080314;
Thu, 24 Jun 2021 09:44:40 -0700 (PDT)
X-Received: by 2002:ac8:67d5:: with SMTP id r21mr5633271qtp.92.1624553080072;
Thu, 24 Jun 2021 09:44:40 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Thu, 24 Jun 2021 09:44:39 -0700 (PDT)
Injection-Info: google-groups.googlegroups.com; posting-host=46.134.40.42; posting-account=qOvlJAoAAAALKIuQXXxAY1xxkFpdJUbI
NNTP-Posting-Host: 46.134.40.42
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
Subject: Forth CPU on an FPGA Wanted
From: calozin...@gmail.com (Christopher Lozinski)
Injection-Date: Thu, 24 Jun 2021 16:44:40 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Christopher Lozinski - Thu, 24 Jun 2021 16:44 UTC

I am looking for a Forth CPU on an FPGA.
I am currently considering the EP32 and EP16.
The EP 16 has gorgeous documentation, very carefully written.
I can buy the IP for the EP32 on Amazon. I bet that is also carefully written.
One buyer reviewed it. A pain to get working, but he did get it to work! They even produced some EP32 chips. That means a ton of engineering went into validation.

There is the J1. A bit too stripped down fo rrme. No interrupts for example. The H1 is interesting. Newer so not many users.

There are some C programmable stack machines. Maybe best to use a chip designed for Forth.

Any advice? My dream would be to buy a board, and flash it, but I fear it will not be so easy. Sadly I am not an electrical engineer.

Re: Forth CPU on an FPGA Wanted

<1573e2d2-5ebc-459c-bf28-cefdb8123191n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13724&group=comp.lang.forth#13724

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:91c:: with SMTP id v28mr7386165qkv.249.1624563589077;
Thu, 24 Jun 2021 12:39:49 -0700 (PDT)
X-Received: by 2002:a37:46c2:: with SMTP id t185mr7566555qka.466.1624563588904;
Thu, 24 Jun 2021 12:39:48 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.snarked.org!border2.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Thu, 24 Jun 2021 12:39:48 -0700 (PDT)
In-Reply-To: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:a0d0:9f90:4ca9:3924:a1b1:3bbc;
posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 2600:1700:a0d0:9f90:4ca9:3924:a1b1:3bbc
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <1573e2d2-5ebc-459c-bf28-cefdb8123191n@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: jim.brak...@ieee.org (James Brakefield)
Injection-Date: Thu, 24 Jun 2021 19:39:49 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 21
 by: James Brakefield - Thu, 24 Jun 2021 19:39 UTC

On Thursday, June 24, 2021 at 11:44:41 AM UTC-5, caloz...@gmail.com wrote:
> I am looking for a Forth CPU on an FPGA.
> I am currently considering the EP32 and EP16.
> The EP 16 has gorgeous documentation, very carefully written.
> I can buy the IP for the EP32 on Amazon. I bet that is also carefully written.
> One buyer reviewed it. A pain to get working, but he did get it to work! They even produced some EP32 chips. That means a ton of engineering went into validation.
>
> There is the J1. A bit too stripped down fo rrme. No interrupts for example. The H1 is interesting. Newer so not many users.
>
> There are some C programmable stack machines. Maybe best to use a chip designed for Forth.
>
> Any advice? My dream would be to buy a board, and flash it, but I fear it will not be so easy. Sadly I am not an electrical engineer.

|>> I am looking for a Forth CPU on an FPGA.

Look in downloads at https://opencores.org/projects/up_core_list
Last entry is "Sorted by Style-Clone" PDF file
In column H: "stack" or "forth" category

A slightly more current version of these files is at https://github.com/jimbrake/cpu_soft_cores

Enjoy

Re: Forth CPU on an FPGA Wanted

<87wnqjnie9.fsf@nightsong.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13727&group=comp.lang.forth#13727

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: no.em...@nospam.invalid (Paul Rubin)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Thu, 24 Jun 2021 12:59:26 -0700
Organization: A noiseless patient Spider
Lines: 18
Message-ID: <87wnqjnie9.fsf@nightsong.com>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="0a7c733484c3acdb34baa69b8ae812bc";
logging-data="26897"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19SX5pFe3La3iCfnYiY+DbI"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Cancel-Lock: sha1:7GUHP+3Ae9v1b1cqusRwrEUxueQ=
sha1:Vk5voSAaHOVUWVdEVv+THbzqBOA=
 by: Paul Rubin - Thu, 24 Jun 2021 19:59 UTC

Christopher Lozinski <calozinski@gmail.com> writes:
> I am looking for a Forth CPU on an FPGA.
> Any advice? My dream would be to buy a board, and flash it, but I
> fear it will not be so easy. Sadly I am not an electrical engineer.

If you're not an electrical engineer, why do you want a Forth CPU on an
FPGA? What do you plan to do with it? Say you get your cpu in the form
of some FPGA board, maybe even already flashed. How do you use it?
What do you think it do for you, that a software Forth on a conventional
cpu won't?

FPGA's are good for all sorts of things, but being able to to use them
sort of makes you an electrical engineer, just like being able to write
Forth programs makes you a Forth programmer.

If you just want a board to run Forth on, I'd start with either a Linux
based Raspberry Pi running Gforth, or a Raspberry Pi Pico running
Mecrisp, depending on whether you want a high level or low level system.

Re: Forth CPU on an FPGA Wanted

<4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13742&group=comp.lang.forth#13742

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:4cd0:: with SMTP id l16mr7447328qtv.54.1624652466100; Fri, 25 Jun 2021 13:21:06 -0700 (PDT)
X-Received: by 2002:a05:620a:1030:: with SMTP id a16mr13664337qkk.217.1624652465940; Fri, 25 Jun 2021 13:21:05 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!4.us.feeder.erje.net!2.eu.feeder.erje.net!feeder.erje.net!newsfeed.xs4all.nl!newsfeed7.news.xs4all.nl!tr3.eu1.usenetexpress.com!feeder.usenetexpress.com!tr2.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Fri, 25 Jun 2021 13:21:05 -0700 (PDT)
In-Reply-To: <87wnqjnie9.fsf@nightsong.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:a0d0:9f90:9d33:b01:9111:7eb3; posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 2600:1700:a0d0:9f90:9d33:b01:9111:7eb3
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com> <87wnqjnie9.fsf@nightsong.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: jim.brak...@ieee.org (James Brakefield)
Injection-Date: Fri, 25 Jun 2021 20:21:06 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 23
 by: James Brakefield - Fri, 25 Jun 2021 20:21 UTC

On Thursday, June 24, 2021 at 2:59:27 PM UTC-5, Paul Rubin wrote:
> Christopher Lozinski <caloz...@gmail.com> writes:
> > I am looking for a Forth CPU on an FPGA.
> > Any advice? My dream would be to buy a board, and flash it, but I
> > fear it will not be so easy. Sadly I am not an electrical engineer.
> If you're not an electrical engineer, why do you want a Forth CPU on an
> FPGA? What do you plan to do with it? Say you get your cpu in the form
> of some FPGA board, maybe even already flashed. How do you use it?
> What do you think it do for you, that a software Forth on a conventional
> cpu won't?
>
> FPGA's are good for all sorts of things, but being able to to use them
> sort of makes you an electrical engineer, just like being able to write
> Forth programs makes you a Forth programmer.
>
> If you just want a board to run Forth on, I'd start with either a Linux
> based Raspberry Pi running Gforth, or a Raspberry Pi Pico running
> Mecrisp, depending on whether you want a high level or low level system.

Not a good answer. Forth community should jump at the chance to
provide a starter FPGA & Forth-firmware solution.
Using FPGAs is like building from nuts, bolts and screws. Very much
in the Forth tradition. FPGAs probably have a harder and longer
learning curve than software development.

Re: Forth CPU on an FPGA Wanted

<87lf6xskde.fsf@nightsong.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13744&group=comp.lang.forth#13744

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: no.em...@nospam.invalid (Paul Rubin)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Fri, 25 Jun 2021 14:30:05 -0700
Organization: A noiseless patient Spider
Lines: 50
Message-ID: <87lf6xskde.fsf@nightsong.com>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com>
<4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="ce805302910a38283520ec293d584986";
logging-data="12234"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18VRPVTXy82kTIBZ4EmhQ3b"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Cancel-Lock: sha1:59wGUGqSnenelKNGO/fp46+1IdU=
sha1:531BUCKjIm7r6hBiPiaBuHmWuVw=
 by: Paul Rubin - Fri, 25 Jun 2021 21:30 UTC

James Brakefield <jim.brakefield@ieee.org> writes:
> Not a good answer. Forth community should jump at the chance to
> provide a starter FPGA & Forth-firmware solution.

Well I think there are a bunch already: look on Opencores? What would
you even want a Forth FPGA to do? What would you do with one if you had
it? Have you looked at Philip Koopman's book on stack machines?

> Using FPGAs is like building from nuts, bolts and screws. Very much
> in the Forth tradition.

It seems the opposite to me. Using an FPGA normally means using a
proprietary high-tech toolchain to compile HDL to an undocumented
bitstream format which then gets loaded into a device whose architecture
is substantially mysterious (the routing, not the CLB's).

> FPGAs probably have a harder and longer learning curve than software
> development.

Probably true, but that doesn't seem in the Forth tradition either.
Forth imho is supposed to be built of very simple components whose
workings are very easy to learn, though putting the components together
might take a lot of work. Building a Forth cpu from TTL gates might
qualify. An FPGA is the opposite of that. A serious Verilog compiler
is probably as complicated as GCC. I wouldn't even know where to begin
studying how such a thing works. At least for GCC, the source code is
available and there are tons of compiler books. For HDL, I suspect that
the essential knowledge is locked up inside corporations.

Maybe it would be more interesting to skip FPGA's altogether and make a
completely custom chip, like Chuck Moore did several times. He used
completely Forth design tools (OKAD etc.) that let him lay out
rectangles on the screen 1980s-style, and that was enough to design
simple Forth cpus while bypassing the megabuck CAD vendors. He used
fairly low tech, inexpensive fab processes (the GreenArrays chips are in
180nm) and got quite good chip performance given the fab technology.
But, I think you are asking for much fancier capabilities and the
approach gets more cumbersome.

Still, what is the point? What is gained? Is the idea to have an
exercise in FPGA design (nothing wrong with that), or to develop
something useful? If the former, then fine. If the latter, who would
use it?

I could imagine using an FPGA Forth core as part of a larger FPGA
project, but I would only be doing an FPGA project if I were a hardware
guy, which I'm not. And if I were using a Forth core, it would probably
be a very simple one like the b16. If I needed something fancier I'd
probably just drop in a Risc-V or similar core. Maybe those will even
start appearing as hard macros on cheap FPGA's soon.

Re: Forth CPU on an FPGA Wanted

<67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13748&group=comp.lang.forth#13748

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:149:: with SMTP id v9mr12586715qtw.144.1624677583852;
Fri, 25 Jun 2021 20:19:43 -0700 (PDT)
X-Received: by 2002:ac8:ece:: with SMTP id w14mr12515478qti.5.1624677583595;
Fri, 25 Jun 2021 20:19:43 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Fri, 25 Jun 2021 20:19:43 -0700 (PDT)
In-Reply-To: <87lf6xskde.fsf@nightsong.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:a0d0:9f90:9d33:b01:9111:7eb3;
posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 2600:1700:a0d0:9f90:9d33:b01:9111:7eb3
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
<87lf6xskde.fsf@nightsong.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: jim.brak...@ieee.org (James Brakefield)
Injection-Date: Sat, 26 Jun 2021 03:19:43 +0000
Content-Type: text/plain; charset="UTF-8"
 by: James Brakefield - Sat, 26 Jun 2021 03:19 UTC

On Friday, June 25, 2021 at 4:30:10 PM UTC-5, Paul Rubin wrote:
> James Brakefield <jim.bra...@ieee.org> writes:
> > Not a good answer. Forth community should jump at the chance to
> > provide a starter FPGA & Forth-firmware solution.
> Well I think there are a bunch already: look on Opencores? What would
> you even want a Forth FPGA to do? What would you do with one if you had
> it? Have you looked at Philip Koopman's book on stack machines?
> > Using FPGAs is like building from nuts, bolts and screws. Very much
> > in the Forth tradition.
> It seems the opposite to me. Using an FPGA normally means using a
> proprietary high-tech toolchain to compile HDL to an undocumented
> bitstream format which then gets loaded into a device whose architecture
> is substantially mysterious (the routing, not the CLB's).
> > FPGAs probably have a harder and longer learning curve than software
> > development.
> Probably true, but that doesn't seem in the Forth tradition either.
> Forth imho is supposed to be built of very simple components whose
> workings are very easy to learn, though putting the components together
> might take a lot of work. Building a Forth cpu from TTL gates might
> qualify. An FPGA is the opposite of that. A serious Verilog compiler
> is probably as complicated as GCC. I wouldn't even know where to begin
> studying how such a thing works. At least for GCC, the source code is
> available and there are tons of compiler books. For HDL, I suspect that
> the essential knowledge is locked up inside corporations.
>
> Maybe it would be more interesting to skip FPGA's altogether and make a
> completely custom chip, like Chuck Moore did several times. He used
> completely Forth design tools (OKAD etc.) that let him lay out
> rectangles on the screen 1980s-style, and that was enough to design
> simple Forth cpus while bypassing the megabuck CAD vendors. He used
> fairly low tech, inexpensive fab processes (the GreenArrays chips are in
> 180nm) and got quite good chip performance given the fab technology.
> But, I think you are asking for much fancier capabilities and the
> approach gets more cumbersome.
>
> Still, what is the point? What is gained? Is the idea to have an
> exercise in FPGA design (nothing wrong with that), or to develop
> something useful? If the former, then fine. If the latter, who would
> use it?
>
> I could imagine using an FPGA Forth core as part of a larger FPGA
> project, but I would only be doing an FPGA project if I were a hardware
> guy, which I'm not. And if I were using a Forth core, it would probably
> be a very simple one like the b16. If I needed something fancier I'd
> probably just drop in a Risc-V or similar core. Maybe those will even
> start appearing as hard macros on cheap FPGA's soon.

I'm not trying to sell anything including Forth
And I'm not a world class authority on any of these fields
Perhaps I'm over zealous about FPGAs?

|> Well I think there are a bunch already: look on Opencores?
This list includes other designs as well as those at opencores.
Opencores is perhaps the first place to look.
For others recommend searching to include "github" term.

|> proprietary high-tech toolchain to compile HDL to an undocumented
|> bitstream format which then gets loaded into a device whose architecture
|> is substantially mysterious (the routing, not the CLB's).
Check out https://symbiflow.github.io/
Personally happy to use vendor's free "webpack" tools
Except Intel/Altera webpack tools don't support latest semiconductor
process nodes

|>A serious Verilog compiler is probably as complicated as GCC.
One does not need to understand the Verilog compiler to use Verilog
to design with FPGAs. It helps to understand how your Verilog gets
mapped into LUTs, FFs, carry chains, block RAM, etc.

|> Maybe it would be more interesting to skip FPGA's altogether and make a
|> completely custom chip
Look into open source ASIC design tools, from all appearances they are adequate.
Think there are fabs that will do a single wafer run or batch several designs
onto a single wafer? Not free.

|> I could imagine using an FPGA Forth core as part of a larger FPGA
|> project, but I would only be doing an FPGA project if I were a hardware
|> guy
A large FPGA project utilizes a dozen or more people with a variety of skills:
Architect, project leads, hardware types especially for debug,
software types for C, RTOS, communications software, integration & test;
other tasks: prototype, PCB design, parts selection ...

|>Maybe those will even start appearing as hard macros on cheap FPGA's soon.
Several FPGA families include hard core microprocessors (ARM, PPC, RISC-V)
and their tool chains. The FPGA vendors also support proprietary soft core RISC
processors with complete tool chains (NIOS-II, MicroBlaze, PicoBlaze).

Re: Forth CPU on an FPGA Wanted

<9a6de784-f1a1-4b91-b9c8-2adf64fae97en@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13749&group=comp.lang.forth#13749

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a0c:eb0c:: with SMTP id j12mr15722726qvp.3.1624706048557;
Sat, 26 Jun 2021 04:14:08 -0700 (PDT)
X-Received: by 2002:ac8:4e85:: with SMTP id 5mr13256190qtp.286.1624706048391;
Sat, 26 Jun 2021 04:14:08 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sat, 26 Jun 2021 04:14:08 -0700 (PDT)
In-Reply-To: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:8800:1600:ae2:b143:10f5:91de:5f76;
posting-account=6GCGIQoAAAAyO8IjR_VTwqiqLwx0Q_G8
NNTP-Posting-Host: 2600:8800:1600:ae2:b143:10f5:91de:5f76
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9a6de784-f1a1-4b91-b9c8-2adf64fae97en@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: hwfw...@gmail.com (Brad Eckert)
Injection-Date: Sat, 26 Jun 2021 11:14:08 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Brad Eckert - Sat, 26 Jun 2021 11:14 UTC

On Thursday, June 24, 2021 at 9:44:41 AM UTC-7, caloz...@gmail.com wrote:
> I am looking for a Forth CPU on an FPGA.

There's https://github.com/bradleyeckert/chad which I wrote.
The idea was to integrate the simulator into the Forth (which is built on C99) because cross-compilers
that don't simulate their own targets overly complexify things.
There's a lot you can do without running on an FPGA. I did run it on an Arty7 board.
It would be interesting to port it to a Muse Lab iCESugar-Pro FPGA board, which set me back $70 on AliExpress.
https://www.aliexpress.com/item/1005002270742248.html, $47 for the FPGA module and $13 for a carrier board.

It's not quite ready for prime time since I want to get multitasking and code-on-demand working.
The code-on-demand idea is to load seldom-used code into RAM as needed, execute it, and free the RAM.
That's to let small code RAM support big apps. SPI flash is very roomy.
Will it work? I think so. It's a bit like the old Europay, which loaded tokenized Forth applets
in the age of dial-up MODEMs. It's kind of like manually-managed caching.

The CPU is J1-like. It handles interrupts by executing them only when a RET is encountered.
Interrupt logic loads an interrupt vector into the PC instead of popping the PC from the return stack.
So it's like Forth's multitasking paradigm, with tasks replaced by ISRs and time-critical interrupts replaced by hardware.
This has the advantage that you don't have to disable interrupts in critical sections. Just don't put a RET in there.
It also simplifies verification since asynchronous interrupts require more sophisticated testing.
I like the idea of interrupt chaining, which occurs when multiple interrupts are pending.
It's a lot more deterministic. Just make sure long loops have a RET somewhere, which is
reminiscent of PAUSE.

Anyway, I built it for a real-world ASIC so it's not as simple as I would like it.
That ASIC would ideally have a CPU die and a flash memory die in one package, or external SPI flash.
Either way, the wires are assumed to be accessible with perhaps the proper application of fuming nitric acid.
So, the flash contents are encrypted. A tiny stream cipher decrypts flash on the fly.
Headers, code, and message strings (dot-quote, etc.) are all encrypted.
I'm sure a C-based system could do that, in a strap-rockets-on-a-pig kind of way.

Re: Forth CPU on an FPGA Wanted

<95b5ea30-acb7-47da-a525-1ed99cdab620n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13750&group=comp.lang.forth#13750

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:ed3:: with SMTP id x19mr12573045qkm.296.1624715613130;
Sat, 26 Jun 2021 06:53:33 -0700 (PDT)
X-Received: by 2002:ac8:1285:: with SMTP id y5mr14187110qti.322.1624715612955;
Sat, 26 Jun 2021 06:53:32 -0700 (PDT)
Path: i2pn2.org!i2pn.org!news.niel.me!usenet.pasdenom.info!usenet-fr.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sat, 26 Jun 2021 06:53:32 -0700 (PDT)
In-Reply-To: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=79.172.89.118; posting-account=1qVL5woAAABqIkvU7Nz8Hn6p94_dJQrA
NNTP-Posting-Host: 79.172.89.118
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <95b5ea30-acb7-47da-a525-1ed99cdab620n@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: ilya74.t...@gmail.com (Ilya Tarasov)
Injection-Date: Sat, 26 Jun 2021 13:53:33 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Ilya Tarasov - Sat, 26 Jun 2021 13:53 UTC

http://fforum.winglion.ru/viewtopic.php?f=3&t=3309

Four different kind of Forth CPU cores in one FPGA.
> Any advice? My dream would be to buy a board, and flash it, but I fear it will not be so easy. Sadly I am not an electrical engineer.

VHDL/Verilog + CAD tools (license from major vendors is free for starting level). 2000 cells in FPGA is enough.

Re: Forth CPU on an FPGA Wanted

<0fc805fa-6837-414b-8218-8ab57ed90593n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13751&group=comp.lang.forth#13751

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:20ef:: with SMTP id 15mr1690849qvk.58.1624719916065;
Sat, 26 Jun 2021 08:05:16 -0700 (PDT)
X-Received: by 2002:a05:620a:1487:: with SMTP id w7mr7552787qkj.128.1624719915862;
Sat, 26 Jun 2021 08:05:15 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer02.ams4!peer.am4.highwinds-media.com!peer03.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sat, 26 Jun 2021 08:05:15 -0700 (PDT)
In-Reply-To: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=84.69.13.144; posting-account=Ezpi-AoAAACnpDq5zHmarnK1WTaVVnG7
NNTP-Posting-Host: 84.69.13.144
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <0fc805fa-6837-414b-8218-8ab57ed90593n@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: bob.wedw...@gmail.com (Bob Edwards)
Injection-Date: Sat, 26 Jun 2021 15:05:16 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1442
 by: Bob Edwards - Sat, 26 Jun 2021 15:05 UTC

< My dream would be to buy a board, and flash it, but I fear it will not be so easy. Sadly I am not an electrical engineer >
The NIGE machine fills your requirement, is very well documented and runs fast, I've tried it. https://github.com/Anding/N.I.G.E.-Machine regards, Bob G4BBY

Re: Forth CPU on an FPGA Wanted

<sb9rpt$j3t$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13759&group=comp.lang.forth#13759

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: m.c...@gmx.net (Matthias Koch)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Sun, 27 Jun 2021 14:43:40 +0200
Organization: A noiseless patient Spider
Lines: 9
Message-ID: <sb9rpt$j3t$1@dont-email.me>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 27 Jun 2021 12:43:41 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="a0f548ada84a1a50bddd7006b0490924";
logging-data="19581"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18o98sseUXROOIWJKMvPMLe"
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:rqp11L3MKff/Up9Ug0EC+6CHGvU=
In-Reply-To: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
Content-Language: de-DE
 by: Matthias Koch - Sun, 27 Jun 2021 12:43 UTC

Hi Christopher,

I enhanced the J1a CPU by James Bowman with fixed two cycles latency interrupt handling, barrel shifters and single cycle multiply, released as Mecrisp-Ice http://mecrisp.sourceforge.net/

Also there is Mecrisp-Quintus, which uses the FemtoRV32 CPU designed by Bruno Levy and me, implementing RV32I or RV32IM: https://github.com/BrunoLevy/learn-fpga Also see the classic open source RISC-V implementation PicoRV32.

If this is your first dive into FPGAs, my recommendation is that you start with https://1bitsquared.de/products/icebreaker board, using Lattice iCE40 UP5K FPGA.

Matthias

Re: Forth CPU on an FPGA Wanted

<sb9u4k$222$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13760&group=comp.lang.forth#13760

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: m.c...@gmx.net (Matthias Koch)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Sun, 27 Jun 2021 15:23:31 +0200
Organization: A noiseless patient Spider
Lines: 6
Message-ID: <sb9u4k$222$1@dont-email.me>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com>
<4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 27 Jun 2021 13:23:32 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="a0f548ada84a1a50bddd7006b0490924";
logging-data="2114"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19nNnFtbENsW/sWQ55Yiv3X"
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Cancel-Lock: sha1:MiI5HVVbb4NRJiwppDrZ0dq3WRM=
In-Reply-To: <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
Content-Language: de-DE
 by: Matthias Koch - Sun, 27 Jun 2021 13:23 UTC

> Forth community should jump at the chance to provide a starter FPGA & Forth-firmware solution.

Already done, pick one of the supported boards like Icestick (HX1K) or Icebreaker (UP5K) and flash Mecrisp-Ice (stack processor) or Mecrisp-Quintus (RISC-V processor).

Using Yosys, NextPNR and Icestorm, the FOSS toolchain is rock solid.

Re: Forth CPU on an FPGA Wanted

<cb1cdfa6-44f9-4ada-9a4a-db1ab50eb2b0n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13763&group=comp.lang.forth#13763

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:57d1:: with SMTP id w17mr18212360qta.149.1624807373863;
Sun, 27 Jun 2021 08:22:53 -0700 (PDT)
X-Received: by 2002:a05:622a:1491:: with SMTP id t17mr18105636qtx.367.1624807373719;
Sun, 27 Jun 2021 08:22:53 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sun, 27 Jun 2021 08:22:53 -0700 (PDT)
In-Reply-To: <87lf6xskde.fsf@nightsong.com>
Injection-Info: google-groups.googlegroups.com; posting-host=64.237.228.236; posting-account=I-_H_woAAAA9zzro6crtEpUAyIvzd19b
NNTP-Posting-Host: 64.237.228.236
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
<87lf6xskde.fsf@nightsong.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <cb1cdfa6-44f9-4ada-9a4a-db1ab50eb2b0n@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: gnuarm.d...@gmail.com (Rick C)
Injection-Date: Sun, 27 Jun 2021 15:22:53 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Rick C - Sun, 27 Jun 2021 15:22 UTC

On Friday, June 25, 2021 at 5:30:10 PM UTC-4, Paul Rubin wrote:
> James Brakefield <jim.bra...@ieee.org> writes:
> > Not a good answer. Forth community should jump at the chance to
> > provide a starter FPGA & Forth-firmware solution.
> Well I think there are a bunch already: look on Opencores? What would
> you even want a Forth FPGA to do? What would you do with one if you had
> it? Have you looked at Philip Koopman's book on stack machines?
> > Using FPGAs is like building from nuts, bolts and screws. Very much
> > in the Forth tradition.
> It seems the opposite to me. Using an FPGA normally means using a
> proprietary high-tech toolchain to compile HDL to an undocumented
> bitstream format which then gets loaded into a device whose architecture
> is substantially mysterious (the routing, not the CLB's).

Using a proprietary hardware platform with a CPU, keyboard, display, mass storage, etc., none of which is open source.

It's not a question of using open source tools or not, it's just a question of where you draw the line. Silly people take issue with issues that don't matter. In this case proprietary tools do the job just fine if you simply want to get work done. If you want to make a fuss about it, then use the various open source tools available. They are there if you are a masochist.

> > FPGAs probably have a harder and longer learning curve than software
> > development.
> Probably true, but that doesn't seem in the Forth tradition either.

It's only longer and harder if you have already been trained on CPU software tools. If you start from the FPGA perspective coding for sequential processors is much harder in my opinion. Trying to fake an application into looking like it is running multiple processes is not always so easy, certainly not as easy as actually running every process on its own hardware.

> Forth imho is supposed to be built of very simple components whose
> workings are very easy to learn, though putting the components together
> might take a lot of work. Building a Forth cpu from TTL gates might
> qualify. An FPGA is the opposite of that. A serious Verilog compiler
> is probably as complicated as GCC. I wouldn't even know where to begin
> studying how such a thing works. At least for GCC, the source code is
> available and there are tons of compiler books. For HDL, I suspect that
> the essential knowledge is locked up inside corporations.

Only to those who choose to be blind. HDL design is inherently more simple than coding the processor you are designing. That's a natural fact.

> Maybe it would be more interesting to skip FPGA's altogether and make a
> completely custom chip, like Chuck Moore did several times. He used
> completely Forth design tools (OKAD etc.) that let him lay out
> rectangles on the screen 1980s-style, and that was enough to design
> simple Forth cpus while bypassing the megabuck CAD vendors. He used
> fairly low tech, inexpensive fab processes (the GreenArrays chips are in
> 180nm) and got quite good chip performance given the fab technology.
> But, I think you are asking for much fancier capabilities and the
> approach gets more cumbersome.

Yes, I think you should design a Forth CPU and have the chip made without ever prototyping it in an FPGA. ;)

> Still, what is the point? What is gained? Is the idea to have an
> exercise in FPGA design (nothing wrong with that), or to develop
> something useful? If the former, then fine. If the latter, who would
> use it?
>
> I could imagine using an FPGA Forth core as part of a larger FPGA
> project, but I would only be doing an FPGA project if I were a hardware
> guy, which I'm not. And if I were using a Forth core, it would probably
> be a very simple one like the b16. If I needed something fancier I'd
> probably just drop in a Risc-V or similar core. Maybe those will even
> start appearing as hard macros on cheap FPGA's soon.

Many people start a CPU design because it seems like a cool thing to do, but have no real requirements. I've rolled a couple of small stack processors to do specific jobs and they worked well. I was working on another one to do floating point math for an open source project, but got a large contract, so no longer have the time to worry with it. It would have been fun. Turns out you can use the FPGA multipliers as barrel shifters for floating point adds. The multiply/add structures work a charm! Very forthish.

--

Rick C.

- Get 1,000 miles of free Supercharging
- Tesla referral code - https://ts.la/richard11209

Re: Forth CPU on an FPGA Wanted

<139b28d2-8bef-4597-bca5-87b465c4e5f8n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13764&group=comp.lang.forth#13764

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:518e:: with SMTP id kl14mr11476112qvb.48.1624807642102;
Sun, 27 Jun 2021 08:27:22 -0700 (PDT)
X-Received: by 2002:ac8:4803:: with SMTP id g3mr18001763qtq.176.1624807641974;
Sun, 27 Jun 2021 08:27:21 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Sun, 27 Jun 2021 08:27:21 -0700 (PDT)
In-Reply-To: <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=64.237.228.236; posting-account=I-_H_woAAAA9zzro6crtEpUAyIvzd19b
NNTP-Posting-Host: 64.237.228.236
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <139b28d2-8bef-4597-bca5-87b465c4e5f8n@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: gnuarm.d...@gmail.com (Rick C)
Injection-Date: Sun, 27 Jun 2021 15:27:22 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Rick C - Sun, 27 Jun 2021 15:27 UTC

On Friday, June 25, 2021 at 4:21:07 PM UTC-4, James Brakefield wrote:
> On Thursday, June 24, 2021 at 2:59:27 PM UTC-5, Paul Rubin wrote:
> > Christopher Lozinski <caloz...@gmail.com> writes:
> > > I am looking for a Forth CPU on an FPGA.
> > > Any advice? My dream would be to buy a board, and flash it, but I
> > > fear it will not be so easy. Sadly I am not an electrical engineer.
> > If you're not an electrical engineer, why do you want a Forth CPU on an
> > FPGA? What do you plan to do with it? Say you get your cpu in the form
> > of some FPGA board, maybe even already flashed. How do you use it?
> > What do you think it do for you, that a software Forth on a conventional
> > cpu won't?
> >
> > FPGA's are good for all sorts of things, but being able to to use them
> > sort of makes you an electrical engineer, just like being able to write
> > Forth programs makes you a Forth programmer.
> >
> > If you just want a board to run Forth on, I'd start with either a Linux
> > based Raspberry Pi running Gforth, or a Raspberry Pi Pico running
> > Mecrisp, depending on whether you want a high level or low level system..
> Not a good answer. Forth community should jump at the chance to
> provide a starter FPGA & Forth-firmware solution.
> Using FPGAs is like building from nuts, bolts and screws. Very much
> in the Forth tradition. FPGAs probably have a harder and longer
> learning curve than software development.

I've been looking at designing a Forth CPU oriented FPGA module, but I can't find a common set of features that many people agree on. There are some very inexpensive FPGA boards available. Lychee Tang Nano is one with an LCD interface if I'm recalling the name correctly. The FPGA only has 1k LUTs however. Still, that's not bad for <$10.

--

Rick C.

+ Get 1,000 miles of free Supercharging
+ Tesla referral code - https://ts.la/richard11209

Re: Forth CPU on an FPGA Wanted

<87mtrawurn.fsf@nightsong.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13768&group=comp.lang.forth#13768

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: no.em...@nospam.invalid (Paul Rubin)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Sun, 27 Jun 2021 20:08:44 -0700
Organization: A noiseless patient Spider
Lines: 40
Message-ID: <87mtrawurn.fsf@nightsong.com>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com>
<4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
<87lf6xskde.fsf@nightsong.com>
<67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="0e9db18af6b16ac14e8a1a062a130c61";
logging-data="32234"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/PF33JKXVSt9fL8YcDfkhg"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Cancel-Lock: sha1:MDyp3zJ6J4P9/IxoABCh94pMPMI=
sha1:w6pbFeW+4DYvZSlf2/HNpq1ZmBc=
 by: Paul Rubin - Mon, 28 Jun 2021 03:08 UTC

James Brakefield <jim.brakefield@ieee.org> writes:
> |>A serious Verilog compiler is probably as complicated as GCC.
> One does not need to understand the Verilog compiler to use Verilog
> to design with FPGAs. It helps to understand how your Verilog gets
> mapped into LUTs, FFs, carry chains, block RAM, etc.

Well, you still haven't told me what you want from a Forth cpu, or from
Forth itself for that matter. One thing lots (I guess not all) Forthers
value is something I'll call surveyability: the ability for a user to
understand every part of the tool chain. If Verilog is involved that
makes things a lot harder. FOSS helps but it's not decisive: GCC is
FOSS but it's not understandable without enormous effort compared with
understanding a traditional Forth.

> Look into open source ASIC design tools, from all appearances they are
> adequate.

Yes, unlike FPGA tools afaict. That's the point of suggesting ASIC
instead of FPGA.

> Think there are fabs that will do a single wafer run or batch several
> designs onto a single wafer? Not free.

https://www.eenewsanalog.com/news/free-chips-courtesy-google-skywater-efabless

has been around for a while and is free. Entertainingly (I didn't
realize this), you get a RISC-V core on every chip. That actually seems
odd to me, that they put it there instead of just making it available as
a macro that you can put there yourself if you want it.

If you don't require free, commercial MPW fab of small designs seems to
start at about $3k per run (cmp.fr when I looked a few years ago), which
is accessible to a low budget professional or high budget hobby project.

> |> FPGA Forth core as part of a larger FPGA project
> A large FPGA project utilizes a dozen or more people with a variety of
> skills:

I just mean "larger than just a Forth core", not large in absolute
terms.

Re: Forth CPU on an FPGA Wanted

<sbbifn$147c$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13769&group=comp.lang.forth#13769

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!aioe.org!xrnZ5uanw3pSzK+Ytx4Jfg.user.gioia.aioe.org.POSTED!not-for-mail
From: dxfo...@gmail.com (dxforth)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Mon, 28 Jun 2021 14:16:55 +1000
Organization: Aioe.org NNTP Server
Lines: 10
Message-ID: <sbbifn$147c$1@gioia.aioe.org>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com>
<4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
<87lf6xskde.fsf@nightsong.com>
<67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com>
<87mtrawurn.fsf@nightsong.com>
NNTP-Posting-Host: xrnZ5uanw3pSzK+Ytx4Jfg.user.gioia.aioe.org
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 7bit
X-Complaints-To: abuse@aioe.org
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101
Thunderbird/78.11.0
Content-Language: en-GB
X-Notice: Filtered by postfilter v. 0.9.2
 by: dxforth - Mon, 28 Jun 2021 04:16 UTC

On 28/06/2021 13:08, Paul Rubin wrote:
> ...
> FOSS helps but it's not decisive: GCC is
> FOSS but it's not understandable without enormous effort compared with
> understanding a traditional Forth.

As an aside, Forth has become less understandable too. What user wants
to understand the details of how VFX' optimizer or dual-xt implementation
works. That they may need to because other forths work differently is
unfortunate both for them and forth in general.

Re: Forth CPU on an FPGA Wanted

<e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13770&group=comp.lang.forth#13770

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:5e12:: with SMTP id h18mr22213410qtx.253.1624894684268;
Mon, 28 Jun 2021 08:38:04 -0700 (PDT)
X-Received: by 2002:ad4:580c:: with SMTP id dd12mr25842571qvb.2.1624894684083;
Mon, 28 Jun 2021 08:38:04 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Mon, 28 Jun 2021 08:38:03 -0700 (PDT)
In-Reply-To: <87mtrawurn.fsf@nightsong.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:a0d0:9f90:e0ee:1ac4:aef0:869c;
posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 2600:1700:a0d0:9f90:e0ee:1ac4:aef0:869c
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
<87lf6xskde.fsf@nightsong.com> <67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com>
<87mtrawurn.fsf@nightsong.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: jim.brak...@ieee.org (James Brakefield)
Injection-Date: Mon, 28 Jun 2021 15:38:04 +0000
Content-Type: text/plain; charset="UTF-8"
 by: James Brakefield - Mon, 28 Jun 2021 15:38 UTC

On Sunday, June 27, 2021 at 10:08:47 PM UTC-5, Paul Rubin wrote:
> James Brakefield <jim.bra...@ieee.org> writes:
> > |>A serious Verilog compiler is probably as complicated as GCC.
> > One does not need to understand the Verilog compiler to use Verilog
> > to design with FPGAs. It helps to understand how your Verilog gets
> > mapped into LUTs, FFs, carry chains, block RAM, etc.
> Well, you still haven't told me what you want from a Forth cpu, or from
> Forth itself for that matter. One thing lots (I guess not all) Forthers
> value is something I'll call surveyability: the ability for a user to
> understand every part of the tool chain. If Verilog is involved that
> makes things a lot harder. FOSS helps but it's not decisive: GCC is
> FOSS but it's not understandable without enormous effort compared with
> understanding a traditional Forth.
> > Look into open source ASIC design tools, from all appearances they are
> > adequate.
> Yes, unlike FPGA tools afaict. That's the point of suggesting ASIC
> instead of FPGA.
> > Think there are fabs that will do a single wafer run or batch several
> > designs onto a single wafer? Not free.
> https://www.eenewsanalog.com/news/free-chips-courtesy-google-skywater-efabless
>
> has been around for a while and is free. Entertainingly (I didn't
> realize this), you get a RISC-V core on every chip. That actually seems
> odd to me, that they put it there instead of just making it available as
> a macro that you can put there yourself if you want it.
>
> If you don't require free, commercial MPW fab of small designs seems to
> start at about $3k per run (cmp.fr when I looked a few years ago), which
> is accessible to a low budget professional or high budget hobby project.
> > |> FPGA Forth core as part of a larger FPGA project
> > A large FPGA project utilizes a dozen or more people with a variety of
> > skills:
> I just mean "larger than just a Forth core", not large in absolute
> terms.

Not sure of your background?
I employ hardware and software with equal skill.

|>you still haven't told me what you want from a Forth cpu
Not so much a Forth CPU, rather the code density the goes with it.
And have often used direct threaded code when doing low level C or assembler.
Rarely did enough code to need a full Forth environment.

|>Forthers value is something I'll call surveyability: the ability for a user to
|> understand every part of the tool chain.
At one time the VHDL and Verilog compilers would report the numbers and type
of simple gates. The vendor's tools would then map the gates into device
primitives (LUTs, various kinds of flip-flops). The ASIC tools probably do this,
and the result might be EDIF or the VHDL or Verilog equivalent?
I've always understood digital computers as an assembly of flip-flops and
combinatorial logic.

A standard education these days will sequence through solid state physics,
transistors, gates, ALU components, state machines and programmable state machines.

Have never needed to understand in detail the inner workings of a high performance CPU.
Likewise one doesn't need to understand the workings of an optimizing Forth compiler
as long as meaning is preserved.

Re: Forth CPU on an FPGA Wanted

<87tulggrhe.fsf@nightsong.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13771&group=comp.lang.forth#13771

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: no.em...@nospam.invalid (Paul Rubin)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Tue, 29 Jun 2021 16:50:53 -0700
Organization: A noiseless patient Spider
Lines: 58
Message-ID: <87tulggrhe.fsf@nightsong.com>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com>
<4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
<87lf6xskde.fsf@nightsong.com>
<67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com>
<87mtrawurn.fsf@nightsong.com>
<e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="0fa4b3ab711f8883dca2157b2609bd0b";
logging-data="19795"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/3O16pbDajqaFVd50wcc0+"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Cancel-Lock: sha1:s1xlHfcXkCaRPi18B+QlkgWapN0=
sha1:PMMZcRQ+19gbRKST10J/b3unj7o=
 by: Paul Rubin - Tue, 29 Jun 2021 23:50 UTC

James Brakefield <jim.brakefield@ieee.org> writes:
>> I just mean "larger than just a Forth core", not large in absolute
>> terms.
>
> Not sure of your background? I employ hardware and software with
> equal skill.

I mostly write web server backend code in real life these days, and have
done some large-ish 32-bit embedded stuff. I dabble in hardware and
smaller MCU's at a hobbyist level at most. But, "large FPGA project" is
no different than "large software project" afaict. Yes some are large
enough to need dozens of people, yet plenty can be done by 1 person.

> Not so much a Forth CPU, rather the code density the goes with it.

Koopman's book may have some comparisons of of code density between a
Forth and traditional CPUs. I'll look when I get a chance. I doubt
that Forth wins by all that much, if it wins at all. Yes you get short
single opcodes for things like addition, but you also have to deal with
stack juggling, get more stuff from memory, etc.

Is a small difference in code density even that much of an advantage
these days?

> And have often used direct threaded code when doing low level C or
> assembler.

Hmm, not sure how the DTC concept would apply in those cases, unless you
mean old microcomputer compilers. I think these days, compilers produce
native code.

> At one time the VHDL and Verilog compilers would report the numbers
> and type of simple gates.... I've always understood digital computers
> as an assembly of flip-flops and combinatorial logic.

Maybe they still do, just like fancy compilers produce assembly code
that you can inspect. But inspecting the assembly code is different
from understanding the compiler, and some people want to understand the
compiler.

> Likewise one doesn't need to understand the workings of an optimizing
> Forth compiler as long as meaning is preserved.

Yes, it's up to the user. It does seem to me that some Forthers choose
to not use optimizing Forth compilers, instead preferring tools whose
workings they understand. Others might be drawn to Forth because they
can understand a simple Forth compiler, and then be willing to use an
optimizing compiler since as you say, meaning is preserved.

I can see that myself: I can understand (or in principle write) a simple
Forth compiler or a simple C compiler. So I'm willing to use GCC even
though it is complex and I can't understand it. Same goes for certain
low level VLSI tools.

But, at least at the moment, I don't know of such a thing as a simple
Verilog compiler. I have no idea how I would go about writing one. So
the FPGA process is mysterious, and therefore imho unappealing to the
particular Forth sensibility that calls for understanding things.

Re: Forth CPU on an FPGA Wanted

<7be66fa2-5a9d-4ec9-9dd7-c1b4b7ff253an@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13772&group=comp.lang.forth#13772

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a37:a2cb:: with SMTP id l194mr4367129qke.190.1625019856375; Tue, 29 Jun 2021 19:24:16 -0700 (PDT)
X-Received: by 2002:ac8:7d4c:: with SMTP id h12mr13387600qtb.322.1625019856179; Tue, 29 Jun 2021 19:24:16 -0700 (PDT)
Path: i2pn2.org!i2pn.org!news.swapon.de!news.uzoreto.com!tr2.eu1.usenetexpress.com!feeder.usenetexpress.com!tr1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Tue, 29 Jun 2021 19:24:15 -0700 (PDT)
In-Reply-To: <87tulggrhe.fsf@nightsong.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:a0d0:9f90:3cf8:a16f:eede:ca0c; posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 2600:1700:a0d0:9f90:3cf8:a16f:eede:ca0c
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com> <87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com> <87lf6xskde.fsf@nightsong.com> <67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com> <87mtrawurn.fsf@nightsong.com> <e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com> <87tulggrhe.fsf@nightsong.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <7be66fa2-5a9d-4ec9-9dd7-c1b4b7ff253an@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: jim.brak...@ieee.org (James Brakefield)
Injection-Date: Wed, 30 Jun 2021 02:24:16 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 76
 by: James Brakefield - Wed, 30 Jun 2021 02:24 UTC

On Tuesday, June 29, 2021 at 6:50:55 PM UTC-5, Paul Rubin wrote:
> James Brakefield <jim.bra...@ieee.org> writes:
> >> I just mean "larger than just a Forth core", not large in absolute
> >> terms.
> >
> > Not sure of your background? I employ hardware and software with
> > equal skill.
> I mostly write web server backend code in real life these days, and have
> done some large-ish 32-bit embedded stuff. I dabble in hardware and
> smaller MCU's at a hobbyist level at most. But, "large FPGA project" is
> no different than "large software project" afaict. Yes some are large
> enough to need dozens of people, yet plenty can be done by 1 person.
> > Not so much a Forth CPU, rather the code density the goes with it.
> Koopman's book may have some comparisons of of code density between a

Ugh, Koopman hasn't done anything stack computer related in 30 years!

> Forth and traditional CPUs. I'll look when I get a chance. I doubt
> that Forth wins by all that much, if it wins at all. Yes you get short
> single opcodes for things like addition, but you also have to deal with
> stack juggling, get more stuff from memory, etc.
>
> Is a small difference in code density even that much of an advantage
> these days?

These days the instruction processing is pipelined, and changing the
pipe source (e.g. branch, call, return) is slow. Therefore as much
in-lining of subroutines as practical is favored. Forth derives much of
its code density from deep factoring into short subroutines.

> > And have often used direct threaded code when doing low level C or
> > assembler.
> Hmm, not sure how the DTC concept would apply in those cases, unless you
> mean old microcomputer compilers. I think these days, compilers produce
> native code.

It is now common terminology to use the terms direct threaded code, indirect
threaded code, byte code, subroutine threaded code and in-lined code with
respect to different Forth compilation techniques.
Wonder I was first to observe this (Talk on interpreters, March 1982 DECUS
meeting; Address space unification, Feb. 1983 IEEE Computer Open Channel;
Address space unification and Forth, Rochester Forth Conference 1984) ?

> > At one time the VHDL and Verilog compilers would report the numbers
> > and type of simple gates.... I've always understood digital computers
> > as an assembly of flip-flops and combinatorial logic.
> Maybe they still do, just like fancy compilers produce assembly code
> that you can inspect. But inspecting the assembly code is different
> from understanding the compiler, and some people want to understand the
> compiler.
> > Likewise one doesn't need to understand the workings of an optimizing
> > Forth compiler as long as meaning is preserved.
> Yes, it's up to the user. It does seem to me that some Forthers choose
> to not use optimizing Forth compilers, instead preferring tools whose
> workings they understand. Others might be drawn to Forth because they
> can understand a simple Forth compiler, and then be willing to use an
> optimizing compiler since as you say, meaning is preserved.
>
> I can see that myself: I can understand (or in principle write) a simple
> Forth compiler or a simple C compiler. So I'm willing to use GCC even
> though it is complex and I can't understand it. Same goes for certain
> low level VLSI tools.
>
> But, at least at the moment, I don't know of such a thing as a simple
> Verilog compiler. I have no idea how I would go about writing one. So

My knowledge of building ALUs, shifters, multipliers out of gates predates
my knowledge of VHDL and Verilog. There are tools which simplify Boolean
logic. So a Verilog compiler does a rough translation to some templates
of basic functions (including muxes, priority encoders and decoders) and
lets the optimizer reduce and simplify the translation. That's my guess.

> the FPGA process is mysterious, and therefore imho unappealing to the
> particular Forth sensibility that calls for understanding things.

I grew up on tinker toys and erector sets. The knack for building things
out of small standard parts is necessary (take for instance music).

Re: Forth CPU on an FPGA Wanted

<2021Jun30.084236@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13773&group=comp.lang.forth#13773

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Wed, 30 Jun 2021 06:42:36 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 19
Message-ID: <2021Jun30.084236@mips.complang.tuwien.ac.at>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com> <87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com> <87lf6xskde.fsf@nightsong.com> <67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com> <87mtrawurn.fsf@nightsong.com> <e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com> <87tulggrhe.fsf@nightsong.com>
Injection-Info: reader02.eternal-september.org; posting-host="1b9e8b2bbbdc17f5066d3066d862c9ac";
logging-data="30599"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/i8m2igRIwygxlJVCVeQWL"
Cancel-Lock: sha1:Jcov7QBfpqv2owfmrWJN1rK90vQ=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Wed, 30 Jun 2021 06:42 UTC

Paul Rubin <no.email@nospam.invalid> writes:
>Others might be drawn to Forth because they
>can understand a simple Forth compiler, and then be willing to use an
>optimizing compiler since as you say, meaning is preserved.
>
>I can see that myself: I can understand (or in principle write) a simple
>Forth compiler or a simple C compiler. So I'm willing to use GCC even
>though it is complex and I can't understand it.

But the GCC maintainers do not preserve the meaning and do not want
to. When you report their breakage, they reject the bug report as
invalid. Examples: gcc bugs 65709, 66804 and 66875.

- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2021: https://euro.theforth.net/2021

Re: Forth CPU on an FPGA Wanted

<87pmw3hl3x.fsf@nightsong.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13774&group=comp.lang.forth#13774

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: no.em...@nospam.invalid (Paul Rubin)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Wed, 30 Jun 2021 00:23:14 -0700
Organization: A noiseless patient Spider
Lines: 9
Message-ID: <87pmw3hl3x.fsf@nightsong.com>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com>
<4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
<87lf6xskde.fsf@nightsong.com>
<67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com>
<87mtrawurn.fsf@nightsong.com>
<e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com>
<87tulggrhe.fsf@nightsong.com>
<2021Jun30.084236@mips.complang.tuwien.ac.at>
Mime-Version: 1.0
Content-Type: text/plain
Injection-Info: reader02.eternal-september.org; posting-host="0fa4b3ab711f8883dca2157b2609bd0b";
logging-data="27327"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19RPX98WrBB/bVHfnA6bxcm"
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.1 (gnu/linux)
Cancel-Lock: sha1:NQDwnsGQKFYzzM4G0BB6ig2i38Q=
sha1:Kx8vOJ2Lz9JTQ6GzRc5zUw0lXN4=
 by: Paul Rubin - Wed, 30 Jun 2021 07:23 UTC

anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:
> But the GCC maintainers do not preserve the meaning and do not want
> to. When you report their breakage, they reject the bug report as
> invalid. Examples: gcc bugs 65709, 66804 and 66875.

As far as I can tell, GCC preserves the meaning when the program has a
meaning according to the standard. If the program does something like
trigger UB, then of course it is meaningless, so there is no meaning to
preserve.

Re: Forth CPU on an FPGA Wanted

<99bded93-cc59-4311-bb9d-f6e76670556fn@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13775&group=comp.lang.forth#13775

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a37:6f05:: with SMTP id k5mr34399725qkc.497.1625040274757;
Wed, 30 Jun 2021 01:04:34 -0700 (PDT)
X-Received: by 2002:ad4:450a:: with SMTP id k10mr35389184qvu.25.1625040274631;
Wed, 30 Jun 2021 01:04:34 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.lang.forth
Date: Wed, 30 Jun 2021 01:04:34 -0700 (PDT)
In-Reply-To: <2021Jun30.084236@mips.complang.tuwien.ac.at>
Injection-Info: google-groups.googlegroups.com; posting-host=79.224.105.219; posting-account=AqNUYgoAAADmkK2pN-RKms8sww57W0Iw
NNTP-Posting-Host: 79.224.105.219
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com>
<87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com>
<87lf6xskde.fsf@nightsong.com> <67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com>
<87mtrawurn.fsf@nightsong.com> <e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com>
<87tulggrhe.fsf@nightsong.com> <2021Jun30.084236@mips.complang.tuwien.ac.at>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <99bded93-cc59-4311-bb9d-f6e76670556fn@googlegroups.com>
Subject: Re: Forth CPU on an FPGA Wanted
From: minfo...@arcor.de (minf...@arcor.de)
Injection-Date: Wed, 30 Jun 2021 08:04:34 +0000
Content-Type: text/plain; charset="UTF-8"
 by: minf...@arcor.de - Wed, 30 Jun 2021 08:04 UTC

Anton Ertl schrieb am Mittwoch, 30. Juni 2021 um 08:50:28 UTC+2:
> Paul Rubin <no.e...@nospam.invalid> writes:
> >Others might be drawn to Forth because they
> >can understand a simple Forth compiler, and then be willing to use an
> >optimizing compiler since as you say, meaning is preserved.
> >
> >I can see that myself: I can understand (or in principle write) a simple
> >Forth compiler or a simple C compiler. So I'm willing to use GCC even
> >though it is complex and I can't understand it.
> But the GCC maintainers do not preserve the meaning and do not want
> to. When you report their breakage, they reject the bug report as
> invalid. Examples: gcc bugs 65709, 66804 and 66875.
>

If this is so important, why are there no Ada-based Forths around?

Re: Forth CPU on an FPGA Wanted

<60dc47b7$0$23424$e4fe514c@newszilla.xs4all.nl>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13776&group=comp.lang.forth#13776

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsfeed.xs4all.nl!newsfeed9.news.xs4all.nl!newsgate.cistron.nl!nzgate1.xs4all.net!nzpost2.xs4all.net!not-for-mail
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com> <87tulggrhe.fsf@nightsong.com> <2021Jun30.084236@mips.complang.tuwien.ac.at> <87pmw3hl3x.fsf@nightsong.com>
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: alb...@cherry (none)
Originator: albert@cherry.(none) (albert)
Date: 30 Jun 2021 10:30:15 GMT
Lines: 22
Message-ID: <60dc47b7$0$23424$e4fe514c@newszilla.xs4all.nl>
NNTP-Posting-Host: cfe214f0.newszilla.xs4all.nl
X-Trace: G=btUOv+iL,C=U2FsdGVkX1/fFxUK6la667VseUNqlGHigSidl/jyShDv/1v/voaIlB+qHZrAzU2VLiPEj8h8iHIbNxqFWeHzcHgNsuXzL9V1j6rYzCOL5qi3f0ZY5L2Xr+Kwx1x+6xdVAQIH3cBADqGKa/VQ/8xeuQ==
X-Complaints-To: abuse@xs4all.nl
 by: none - Wed, 30 Jun 2021 10:30 UTC

In article <87pmw3hl3x.fsf@nightsong.com>,
Paul Rubin <no.email@nospam.invalid> wrote:
>anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:
>> But the GCC maintainers do not preserve the meaning and do not want
>> to. When you report their breakage, they reject the bug report as
>> invalid. Examples: gcc bugs 65709, 66804 and 66875.
>
>As far as I can tell, GCC preserves the meaning when the program has a
>meaning according to the standard. If the program does something like
>trigger UB, then of course it is meaningless, so there is no meaning to
>preserve.

There is a middle ground here. It is no good to violate traditional
assumptions, based on a legalistic interpretation of the specific
formulation of a standard that is currently extant.

Groetjes Albert
--
"in our communism country Viet Nam, people are forced to be
alive and in the western country like US, people are free to
die from Covid 19 lol" duc ha
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

Re: Forth CPU on an FPGA Wanted

<2021Jun30.122846@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13777&group=comp.lang.forth#13777

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Wed, 30 Jun 2021 10:28:46 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 28
Message-ID: <2021Jun30.122846@mips.complang.tuwien.ac.at>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com> <87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com> <87lf6xskde.fsf@nightsong.com> <67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com> <87mtrawurn.fsf@nightsong.com> <e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com> <87tulggrhe.fsf@nightsong.com> <2021Jun30.084236@mips.complang.tuwien.ac.at> <87pmw3hl3x.fsf@nightsong.com>
Injection-Info: reader02.eternal-september.org; posting-host="1b9e8b2bbbdc17f5066d3066d862c9ac";
logging-data="29401"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX193pstCC0+r2B9cLksEMgaA"
Cancel-Lock: sha1:UsVRHWd3GmKyznSyMEILgRap7+o=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Wed, 30 Jun 2021 10:28 UTC

Paul Rubin <no.email@nospam.invalid> writes:
>anton@mips.complang.tuwien.ac.at (Anton Ertl) writes:
>> But the GCC maintainers do not preserve the meaning and do not want
>> to. When you report their breakage, they reject the bug report as
>> invalid. Examples: gcc bugs 65709, 66804 and 66875.
>
>As far as I can tell, GCC preserves the meaning when the program has a
>meaning according to the standard.

That would mean that it preserves the meaning of roughly 0% of
production programs.

>If the program does something like
>trigger UB, then of course it is meaningless, so there is no meaning to
>preserve.

The meaning to preserve is the meaning that the earlier gcc version
has implemented. You started by claiming that you understand what a
simple C compiler does, and that gcc preserves the meaning of that.
It does not. It does not even preserve the meaning of earlier gcc
versions.

- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2021: https://euro.theforth.net/2021

Re: Forth CPU on an FPGA Wanted

<60dc4924$0$23424$e4fe514c@newszilla.xs4all.nl>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13778&group=comp.lang.forth#13778

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsfeed.xs4all.nl!newsfeed9.news.xs4all.nl!nzpost2.xs4all.net!not-for-mail
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com> <87tulggrhe.fsf@nightsong.com> <2021Jun30.084236@mips.complang.tuwien.ac.at> <99bded93-cc59-4311-bb9d-f6e76670556fn@googlegroups.com>
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: alb...@cherry (none)
Originator: albert@cherry.(none) (albert)
Date: 30 Jun 2021 10:36:20 GMT
Lines: 32
Message-ID: <60dc4924$0$23424$e4fe514c@newszilla.xs4all.nl>
NNTP-Posting-Host: cfe214f0.newszilla.xs4all.nl
X-Trace: G=btUOv+iL,C=U2FsdGVkX1/EiS6HjnfN9LnZlEFSxx4NBiEjhWFN6tWiLUGKcBuNNYSeQ1MgFQQHu8ei8qXNX5qc2aO1mVd9YuKqCsnGbQPSt5SHAv7LoR/oZoZF0A8m1O8XVUniHQswK6PT8cQUIZ5oFvFLrM3lTA==
X-Complaints-To: abuse@xs4all.nl
 by: none - Wed, 30 Jun 2021 10:36 UTC

In article <99bded93-cc59-4311-bb9d-f6e76670556fn@googlegroups.com>,
minf...@arcor.de <minforth@arcor.de> wrote:
>Anton Ertl schrieb am Mittwoch, 30. Juni 2021 um 08:50:28 UTC+2:
>> Paul Rubin <no.e...@nospam.invalid> writes:
>> >Others might be drawn to Forth because they
>> >can understand a simple Forth compiler, and then be willing to use an
>> >optimizing compiler since as you say, meaning is preserved.
>> >
>> >I can see that myself: I can understand (or in principle write) a simple
>> >Forth compiler or a simple C compiler. So I'm willing to use GCC even
>> >though it is complex and I can't understand it.
>> But the GCC maintainers do not preserve the meaning and do not want
>> to. When you report their breakage, they reject the bug report as
>> invalid. Examples: gcc bugs 65709, 66804 and 66875.
>>
>
>If this is so important, why are there no Ada-based Forths around?

Who says there isn't?

Also I hate the trash talk that GCC cannot be understood.
It is complex and a comprehensive understanding is quite an undertaking.
However because it has a reasonable architecture and is reasonably
documented, I managed to modify it in behalf of a customer.
That is what matters.

Groetjes Albert
--
"in our communism country Viet Nam, people are forced to be
alive and in the western country like US, people are free to
die from Covid 19 lol" duc ha
albert@spe&ar&c.xs4all.nl &=n http://home.hccnet.nl/a.w.m.van.der.horst

Re: Forth CPU on an FPGA Wanted

<2021Jun30.123352@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=13779&group=comp.lang.forth#13779

  copy link   Newsgroups: comp.lang.forth
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.lang.forth
Subject: Re: Forth CPU on an FPGA Wanted
Date: Wed, 30 Jun 2021 10:33:52 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 11
Message-ID: <2021Jun30.123352@mips.complang.tuwien.ac.at>
References: <4984e733-6372-43cc-8218-3d1c3d291a58n@googlegroups.com> <87wnqjnie9.fsf@nightsong.com> <4f0e5e87-72d0-45e9-b257-7d4fac2bfc8an@googlegroups.com> <87lf6xskde.fsf@nightsong.com> <67693a3b-bf4b-4599-b978-4d198165b15fn@googlegroups.com> <87mtrawurn.fsf@nightsong.com> <e70ef9ff-b468-4487-9a54-07369f638240n@googlegroups.com> <87tulggrhe.fsf@nightsong.com> <2021Jun30.084236@mips.complang.tuwien.ac.at> <99bded93-cc59-4311-bb9d-f6e76670556fn@googlegroups.com>
Injection-Info: reader02.eternal-september.org; posting-host="1b9e8b2bbbdc17f5066d3066d862c9ac";
logging-data="29401"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18EwzFhBaf452BjHjquKF7i"
Cancel-Lock: sha1:7nWpdy7KZR/zMNHWcjnypQEq64A=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Wed, 30 Jun 2021 10:33 UTC

"minf...@arcor.de" <minforth@arcor.de> writes:
>If this is so important, why are there no Ada-based Forths around?

Why should there be?

- anton
--
M. Anton Ertl http://www.complang.tuwien.ac.at/anton/home.html
comp.lang.forth FAQs: http://www.complang.tuwien.ac.at/forth/faq/toc.html
New standard: http://www.forth200x.org/forth200x.html
EuroForth 2021: https://euro.theforth.net/2021

Pages:123
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor