• 6 Core Mecrisp Forth CPU

    From Christopher Lozinski@21:1/5 to All on Tue Aug 8 05:09:16 2023
    I am very interested in large numbers of tiny Forth cores working together. The GA144 has 144 cores, but it has too little memory, and problems with communications. It is good to start small. My plan is to start by building a 6 core Mecrisp Forth CPU on
    the PicoIce board. $35.
    https://tinyvision.ai/products/pico-ice

    It will have:

    RP2040 (133Mhz)
    -two Mecrisp 32 bit cores each with 33K 32 bit words of SRAM
    - Wifi
    -Bluetooth
    - 2 UARTs
    - 2 SPI controllers
    - 2 I2C controllers
    - 16 PWM channels
    - USB 1.1 controller and PHY, with host and device support
    - 8 PIO state machines

    Lattice Semiconductor iCE40UP5K FPGA (80Mhz?)
    - four 16 bit Mecrisp cores (16K 16 bit words of SPRAM each).
    - One 18/16 bit hard core multiply in each Forth core.
    - One shared pipelined 32 bit multiply. (Built out of 4*18 bit multiplies).

    It will be a competitor to the Propeller Parallax II, which runs at 80 Mhz,
    - $130, ($40 more for the wifi board)
    - 8 cores each with 1024 32 bit words of memory,
    - shared 512 KBytes RAM.
    - shared 54 clock cycle cordic
    - 64 Smart I/O Pins

    I am not sure what topology I will use to connect the cores. There is an 8 bit wire connecting the FPGA and the RP2040. I could add additional connections using the GPIO pins. I could even imagine eventually building a new board to support the required
    topology.

    The obvious applications are in real time control, where one can dedicate one core to each device to be controlled, and not worry about interrupts and timing, and developing in verilog. Just download the bitstream and write some Forth programs. Much
    easier.

    Comments?
    Christopher Lozinski

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From minforth@21:1/5 to Christopher Lozinski on Tue Aug 8 05:43:04 2023
    Christopher Lozinski schrieb am Dienstag, 8. August 2023 um 14:09:19 UTC+2:
    I am very interested in large numbers of tiny Forth cores working together. The GA144 has 144 cores, but it has too little memory, and problems with communications. It is good to start small. My plan is to start by building a 6 core Mecrisp Forth CPU
    on the PicoIce board. $35.
    https://tinyvision.ai/products/pico-ice
    Comments?

    Milliwatt footprint estimate?

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Zbig@21:1/5 to All on Tue Aug 8 05:38:35 2023
    The obvious applications are in real time control, where one can dedicate one core to each device to be controlled, and not worry about interrupts and timing, and developing in verilog. Just download the bitstream and write some Forth programs. Much
    easier.

    Comments?

    I may be wrong, but I believe dedicating the whole board — they are cheap nowadays (ESP32-based less than 10 USD) — to each device to be controlled (instead of struggling with multicore environment) would be even easier.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Christopher Lozinski@21:1/5 to All on Tue Aug 8 08:04:44 2023
    I may be wrong, but I believe dedicating the whole board — they are cheap nowadays (ESP32-based less than 10 USD) — to each device to be controlled (instead of struggling with multicore environment) would be even easier.

    That is a really good point. I have also heard that it is often easier to run all of the controlls off of a single cpu.


    Milliwatt footprint estimate?

    Another really good point. Which is why people like just using a microcontroller and not an FPGA.

    Maybe there is no need for many core forth cpus. Which is why there are none.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jurgen Pitaske@21:1/5 to Christopher Lozinski on Tue Aug 8 08:33:09 2023
    On Tuesday, 8 August 2023 at 16:04:47 UTC+1, Christopher Lozinski wrote:
    I may be wrong, but I believe dedicating the whole board — they are cheap nowadays (ESP32-based less than 10 USD) — to each device to be controlled (instead of struggling with multicore environment) would be even easier.
    That is a really good point. I have also heard that it is often easier to run all of the controlls off of a single cpu.


    Milliwatt footprint estimate?

    Another really good point. Which is why people like just using a microcontroller and not an FPGA.

    Maybe there is no need for many core forth cpus. Which is why there are none.

    Well, it seems it makes sense as the 2040 shows with 2 cores.

    And even if 6 cores are not really impotant - see it as an excecise to evaluate the potential.
    In performance and in power consumption, and complexity, and how to program.

    For me this is definitely something new and more interesting than 20 to 100 different Forths ...
    But here as well - we all can spend our time as we wish.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Zbig@21:1/5 to All on Tue Aug 8 11:27:03 2023
    I may be wrong, but I believe dedicating the whole board — they are cheap nowadays (ESP32-based less than 10 USD) — to each device to be controlled (instead of struggling with multicore environment) would be even easier.
    That is a really good point. I have also heard that it is often easier to run all of the controlls off of a single cpu.


    Milliwatt footprint estimate?

    Another really good point. Which is why people like just using a microcontroller and not an FPGA.

    Maybe there is no need for many core forth cpus. Which is why there are none.

    You know: if in a need for communication among that devices — one can use I2C.
    If you mean longer distance — WiFi/BT to the rescue. There is ESP32forth that works
    nicely on cheap boards — so actually it depends whether you need to handle some
    specific application case, or rather you're looking for a challenge (indeed Forth on
    multicore will be more challenging).

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lorem Ipsum@21:1/5 to Christopher Lozinski on Tue Aug 8 12:32:30 2023
    On Tuesday, August 8, 2023 at 11:04:47 AM UTC-4, Christopher Lozinski wrote:
    I may be wrong, but I believe dedicating the whole board — they are cheap nowadays (ESP32-based less than 10 USD) — to each device to be controlled (instead of struggling with multicore environment) would be even easier.
    That is a really good point. I have also heard that it is often easier to run all of the controlls off of a single cpu.


    Milliwatt footprint estimate?

    Another really good point. Which is why people like just using a microcontroller and not an FPGA.

    That's a falsehood. FPGAs can be more power efficient than MCUs. It depends on how good the designer is. You also need to use an FPGA designed for low power. The iCE40 devices are intended for low power, both static and dynamic. The EPC5 line is not.
    But you need to structure your code so the parts that are not doing useful work are not operating.


    Maybe there is no need for many core forth cpus. Which is why there are none.

    The main issues are memory bandwidth and processor communications. But, you are wrong that they do not exist. Virtually every PC has a graphics processor which is pretty much what you are describing. They burn a lot of heat, because there's no way
    around that when running many CPUs at GHz rates. They are optimized for graphics processing, which may or may not fit your needs, since you have never indicated what your needs are.

    --

    Rick C.

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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Anton Ertl@21:1/5 to Christopher Lozinski on Tue Aug 8 20:06:30 2023
    Christopher Lozinski <calozinski@gmail.com> writes:
    Maybe there is no need for many core forth cpus. Which is why there are no= >ne.=20

    You don't count the GA144 as many-core Forth CPU?

    Of course, it existence is not proof of the need for such a CPU.

    - 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: https://forth-standard.org/
    EuroForth 2023: https://euro.theforth.net/2023

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Jurgen Pitaske@21:1/5 to Anton Ertl on Tue Aug 8 13:18:34 2023
    On Tuesday, 8 August 2023 at 21:08:10 UTC+1, Anton Ertl wrote:
    Christopher Lozinski <caloz...@gmail.com> writes:
    Maybe there is no need for many core forth cpus. Which is why there are no= >ne.=20

    You don't count the GA144 as many-core Forth CPU?

    Of course, it existence is not proof of the need for such a CPU.

    - 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: https://forth-standard.org/
    EuroForth 2023: https://euro.theforth.net/2023

    I wonder, how many projects have been done over the last 10 years using this chip.
    I still see it as a Chuck Moore test chip as memory seems to be very limited. Any multicore FPGA solution would be more flexible and adaptible to the application requirements.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lorem Ipsum@21:1/5 to Anton Ertl on Tue Aug 8 19:13:11 2023
    On Tuesday, August 8, 2023 at 4:08:10 PM UTC-4, Anton Ertl wrote:
    Christopher Lozinski <caloz...@gmail.com> writes:
    Maybe there is no need for many core forth cpus. Which is why there are no= >ne.=20

    You don't count the GA144 as many-core Forth CPU?

    It is in theory. But, it comes under the heading of, "If a processor runs in a forest with no one around, is it actually running... forth?"


    Of course, it existence is not proof of the need for such a CPU.

    Bingo! It's existence is actually immaterial, unless it gets used for something.

    I would be curious to find where the GA144 ranks in the list of MCUs. It's very likely much like Forth, in that it's so far down the list, they don't publish that end of it.

    For that matter, I wonder how many MCUs are on the tail end of that list? I recall someone made an async processor once (truly async) like the 8051 if I recall. I don't know if it ever got used for anything!

    There was(is) a company who started out designing async FPGAs. They were more focused on providing IP so you could include their circuitry in your chip, rather than selling chips. I think they are still around, but have been bought by someone big and
    still pushing the IP. Asynctronix or something like that.

    --

    Rick C.

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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From none) (albert@21:1/5 to jpitaske@gmail.com on Wed Aug 9 12:00:44 2023
    In article <eee52c1b-06d2-4d34-9bdb-8bc2820d0a55n@googlegroups.com>,
    Jurgen Pitaske <jpitaske@gmail.com> wrote:
    On Tuesday, 8 August 2023 at 16:04:47 UTC+1, Christopher Lozinski wrote:
    I may be wrong, but I believe dedicating the whole board — they
    are cheap nowadays (ESP32-based less than 10 USD) — to each device to
    be controlled (instead of struggling with multicore environment) would
    be even easier.
    That is a really good point. I have also heard that it is often easier
    to run all of the controlls off of a single cpu.


    Milliwatt footprint estimate?

    Another really good point. Which is why people like just using a >microcontroller and not an FPGA.

    Maybe there is no need for many core forth cpus. Which is why there are none.

    Well, it seems it makes sense as the 2040 shows with 2 cores.

    August 12th we have a workshop running two noforth's om the RP2040.
    This doesn't make the RP2040 a Forth processor.
    I have run a Forth prime counting program parallel on 7 cores on the
    AMD Athlon.
    That doesn't make the Athlon a Forth processor.
    <SNIP>
    But here as well - we all can spend our time as we wish.
    It is hard to make use of parallel processing power, e.g.
    Dual Xeon with 56 threads in total.

    Groetjes Albert
    --
    Don't praise the day before the evening. One swallow doesn't make spring.
    You must not say "hey" before you have crossed the bridge. Don't sell the
    hide of the bear until you shot it. Better one bird in the hand than ten in
    the air. First gain is a cat spinning. - the Wise from Antrim -

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Zbig@21:1/5 to All on Wed Aug 9 09:11:26 2023
    It is hard to make use of parallel processing power, e.g.
    Dual Xeon with 56 threads in total.

    Indeed: https://lwn.net/Articles/573436/

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andy Valencia@21:1/5 to Lorem Ipsum on Fri Aug 11 07:16:27 2023
    Lorem Ipsum <gnuarm.deletethisbit@gmail.com> writes:
    You don't count the GA144 as many-core Forth CPU?
    It is in theory. But, it comes under the heading of, "If a processor runs
    in a forest with no one around, is it actually running... forth?"

    Reductio ad absurdam for the GA144 claim is to put 1M oscillators on a piece
    of silicon, run them at 1Ghz, then claim you have a a terahertz CPU.

    There are flashes of genius in the GA144 design, but for whatever reason they never coalesced into anything concrete. IMHO.

    Andy Valencia
    Home page: https://www.vsta.org/andy/
    To contact me: https://www.vsta.org/contact/andy.html

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lorem Ipsum@21:1/5 to Andy Valencia on Fri Aug 11 08:46:23 2023
    On Friday, August 11, 2023 at 10:20:29 AM UTC-4, Andy Valencia wrote:
    Lorem Ipsum <gnuarm.del...@gmail.com> writes:
    You don't count the GA144 as many-core Forth CPU?
    It is in theory. But, it comes under the heading of, "If a processor runs in a forest with no one around, is it actually running... forth?"
    Reductio ad absurdam for the GA144 claim is to put 1M oscillators on a piece of silicon, run them at 1Ghz, then claim you have a a terahertz CPU.

    There are flashes of genius in the GA144 design, but for whatever reason they
    never coalesced into anything concrete. IMHO.

    The GA144 failed for the same reason many other "Forth" processors failed, it had no intended market when designed. So it is good at... nothing much. The only applications I could find for it, were DSP tasks where the processing could be broken into
    multiple, serial processes, each requiring little memory. There are various filters that this is suitable for. I was never able to partition an FFT across a GA144, but I didn't spend much time with that task. The problem there is the data is addressed
    in one way, and the coefficients are addressed in another. It's hard to get them aligned. Also, the data has to be repartitioned with each pass, that's particularly problematic, unless you are happy with the high percentage of the time spent shipping
    data around. Since the multiply is stepwise, maybe the data handling time is not such a big deal.

    Yeah, the double whammy of poor comms and limited memory is a tough one to overcome.

    --

    Rick C.

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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Christopher Lozinski@21:1/5 to All on Mon Aug 21 04:01:52 2023
    Here is the website for the many core Forth processor. https://forth.pythonlinks.info/
    Comments apprecited.
    Now I just have to build it.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Lorem Ipsum@21:1/5 to Christopher Lozinski on Mon Aug 21 10:27:44 2023
    On Monday, August 21, 2023 at 7:01:55 AM UTC-4, Christopher Lozinski wrote:
    Here is the website for the many core Forth processor. https://forth.pythonlinks.info/
    Comments apprecited.
    Now I just have to build it.

    Indeed. Let us know how it goes.

    One suggestion is to rethink the text colors on your web site. They should be easy to read.

    --

    Rick C.

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

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)