Rocksolid Light

Welcome to Rocksolid Light

mail  files  register  newsreader  groups  login

Message-ID:  

Klingon phaser attack from front!!!!! 100% Damage to life support!!!!


devel / comp.lang.forth / Re: Programmable Forth Audio Processor

SubjectAuthor
* Programmable Forth Audio ProcessorChristopher Lozinski
+- Re: Programmable Forth Audio ProcessorLorem Ipsum
+- Re: Programmable Forth Audio ProcessorHeinrich Hohl
+* Re: Programmable Forth Audio ProcessorZbig
|`* Re: Programmable Forth Audio ProcessorChristopher Lozinski
| +* Re: Programmable Forth Audio ProcessorZbig
| |`* Re: Programmable Forth Audio ProcessorChristopher Lozinski
| | `- Re: Programmable Forth Audio ProcessorZbig
| `* Re: Programmable Forth Audio ProcessorLorem Ipsum
|  +* Re: Programmable Forth Audio ProcessorSpainHackForth
|  |`* Re: Programmable Forth Audio Processornone
|  | `- Re: Programmable Forth Audio ProcessorSpainHackForth
|  `* Re: Programmable Forth Audio ProcessorChristopher Lozinski
|   `- Re: Programmable Forth Audio ProcessorSpainHackForth
+- Re: Programmable Forth Audio ProcessorMyron Plichota
`- Re: Programmable Forth Audio ProcessorS

1
Programmable Forth Audio Processor

<fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24222&group=comp.lang.forth#24222

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a37:b843:0:b0:768:2bf3:95cc with SMTP id i64-20020a37b843000000b007682bf395ccmr13829qkf.3.1691651847188;
Thu, 10 Aug 2023 00:17:27 -0700 (PDT)
X-Received: by 2002:a05:6a00:1908:b0:66a:4525:8264 with SMTP id
y8-20020a056a00190800b0066a45258264mr818608pfi.1.1691651846570; Thu, 10 Aug
2023 00:17:26 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.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: Thu, 10 Aug 2023 00:17:25 -0700 (PDT)
Injection-Info: google-groups.googlegroups.com; posting-host=46.134.17.194; posting-account=qOvlJAoAAAALKIuQXXxAY1xxkFpdJUbI
NNTP-Posting-Host: 46.134.17.194
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
Subject: Programmable Forth Audio Processor
From: calozinski@gmail.com (Christopher Lozinski)
Injection-Date: Thu, 10 Aug 2023 07:17:27 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 4380
 by: Christopher Lozinski - Thu, 10 Aug 2023 07:17 UTC

Thanks to all of you, my understanding of the technology and the market continues to improve. 16 bit Forth machines are very space and memory efficient, but the problem is that real time control applications use more than 16 bits of accuracy’s and you really do not want to be doing stack operations on doubles. Dup is two deep, Over is 4 deep, but rot is 6 deep. Sure at 60Mhz there is enough time, but it is just ugly. So I need an application which uses 16 bit data or less. AFAIK, the only data which is 16 bits wide is audio quality CD, so my focus is now on an audio processor for musicians, hearing aids, and echolocation. There are a lot of older Forth developers who need hearing aids, and in the US, they are no longer regulated. 

Here is the $35 board I am targeting.

https://tinyvision.ai/products/pico-ice

This board, can happily fit 8 * 16 bit stack machines.
Each will have a hard core multiplier and 128Kbits of memory. That is 8K 16bit words. If needed, I can even go t0 16 processors, 8 with hard core multipliers.

This processor will be very different from the J1 and Mecrisp processors. They are optimized to be as small as possible, with only 16 instructions. Each one only takes 160 LUT’s, but I have 5260 LUTs on this board. With all of that logic fabric, I can happily have 32 instructions instead of the J1’s 16. That makes this closer to Ting’s eForth EP16/24/32. Of course Ting had 3 different code bases, but with modern tools like Python’s Amaranth, or Java’s SpinalHDL, I should be able to generate 16, 24 and 32 bit cpus all from the same code base.

The J1 depends on dual port memory. It can read or write to memory at the same time that it is fetching the next instruction. And one needs that to be able to edit code. Sadly the inexpensive Lattice boards are mostly single port memory. So I have to use a Harvard architecture, where code and memory are separate. MicroCore does this. I suspect Ting also did this.

I will also need some logic dedicated to audio processing. I am not yet sure what it will be. There may need to be a shift register to store some history from two or three microphones for cross-correlation and edge detection. There may need to be some flags for when the next bit of audio becomes available.

So I see a family of many core eForth CPU’s, all in Amaranth, taking the best ideas from many of the existing Forth cpus. Initially my focus will be on 16 bits for audio, later on 24 bits for video. If someone actually needs a 32 bit processor, I will release that as well.

Particular thanks to @Lorum Ipsum for pointing out that the low end Lattice boards are also low power. Thanks to Juergen Pintaske for connecting me to the Facebook Forth group, and to a real time control expert who pointed out that they need 32 bit data. Thanks to the the Mecrisp-Ice author for pointing out that the Lattice Ice40 boards are single port. Thanks to the Core-1 lead for all of his great advice. Thanks to the 22 people on Facebook who like this idea, and to the one person who already wants to buy my many core Forth cpu!

Re: Programmable Forth Audio Processor

<b0cf4b7e-1a5c-4875-a716-e831d9ad139cn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24226&group=comp.lang.forth#24226

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:1d0c:b0:76d:1e66:cb0c with SMTP id dl12-20020a05620a1d0c00b0076d1e66cb0cmr13917qkb.5.1691652998030;
Thu, 10 Aug 2023 00:36:38 -0700 (PDT)
X-Received: by 2002:a65:6c02:0:b0:55b:ddd5:9b57 with SMTP id
y2-20020a656c02000000b0055bddd59b57mr172324pgu.1.1691652997355; Thu, 10 Aug
2023 00:36:37 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!1.us.feeder.erje.net!feeder.erje.net!border-1.nntp.ord.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, 10 Aug 2023 00:36:36 -0700 (PDT)
In-Reply-To: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=63.114.57.174; posting-account=I-_H_woAAAA9zzro6crtEpUAyIvzd19b
NNTP-Posting-Host: 63.114.57.174
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b0cf4b7e-1a5c-4875-a716-e831d9ad139cn@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: gnuarm.deletethisbit@gmail.com (Lorem Ipsum)
Injection-Date: Thu, 10 Aug 2023 07:36:38 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Lines: 111
 by: Lorem Ipsum - Thu, 10 Aug 2023 07:36 UTC

On Thursday, August 10, 2023 at 3:17:28 AM UTC-4, Christopher Lozinski wrote:
> Thanks to all of you, my understanding of the technology and the market continues to improve. 16 bit Forth machines are very space and memory efficient, but the problem is that real time control applications use more than 16 bits of accuracy’s and you really do not want to be doing stack operations on doubles. Dup is two deep, Over is 4 deep, but rot is 6 deep. Sure at 60Mhz there is enough time, but it is just ugly. So I need an application which uses 16 bit data or less.

You've lost me. Rather than designing a CPU for an applicatiion, you want to design an application for a CPU??? What???

> AFAIK, the only data which is 16 bits wide is audio quality CD, so my focus is now on an audio processor for musicians, hearing aids, and echolocation. There are a lot of older Forth developers who need hearing aids, and in the US, they are no longer regulated. 

Here is the $35 board I am targeting.
>
> https://tinyvision.ai/products/pico-ice
>
> This board, can happily fit 8 * 16 bit stack machines.
> Each will have a hard core multiplier and 128Kbits of memory. That is 8K 16bit words. If needed, I can even go t0 16 processors, 8 with hard core multipliers.

Why are you locked into 16 bits? Audio actually needs more than 16 bits, because the calculations need to use more bits, in order to not lose precision in the process. It is very common to use 24 bits in the data and ALU paths for audio work. Any musician is going to drop a 16 bit device in the trash, because the artifacts will be audible.

> This processor will be very different from the J1 and Mecrisp processors. They are optimized to be as small as possible, with only 16 instructions. Each one only takes 160 LUT’s, but I have 5260 LUTs on this board. With all of that logic fabric, I can happily have 32 instructions instead of the J1’s 16. That makes this closer to Ting’s eForth EP16/24/32. Of course Ting had 3 different code bases, but with modern tools like Python’s Amaranth, or Java’s SpinalHDL, I should be able to generate 16, 24 and 32 bit cpus all from the same code base.

Why do you want more instructions? Not only will more instructions use more resources, they will make the processor slower. You can counter this by using long instruction words, to reduce or eliminate decoding, but there will be a limit. You will also improve speed by limiting all instructions to 1 clock cycle. When you need multiple clock cycles, you have to then have a counter, which becomes part of the instruction for decode purposes.

There is a reason why most people designing CPUs for Forth, don't call them Forth processors. They call them MISC (Minimal Instruction Set Computer). The use of Forth as the language for writing code is irrelevant. Minimizing the CPU and instruction sizes gains speed.

This is why I tell people to work on paper first. Once you write some code for your processor, you will find your additional instructions are seldom used and actually slow the processor overall.

> The J1 depends on dual port memory. It can read or write to memory at the same time that it is fetching the next instruction. And one needs that to be able to edit code. Sadly the inexpensive Lattice boards are mostly single port memory. So I have to use a Harvard architecture, where code and memory are separate. MicroCore does this. I suspect Ting also did this.

??? Are you talking about memory external to the CPU?

Harvard is good for stack machines. The instruction memory is seldom accessed, other than when loading. You can put constants in the data memory. The dual port memory is internal to an FPGA and is available in nearly every device that is still in production.

> I will also need some logic dedicated to audio processing. I am not yet sure what it will be. There may need to be a shift register to store some history from two or three microphones for cross-correlation and edge detection. There may need to be some flags for when the next bit of audio becomes available.

You are trying to optimize your code, not only before you've written the code, but before you've designed the CPU. It will be so much better if you don't try to do everything at once. Just try designing a stack processor and see where the issues are. First, you will need to figure out how to find logic paths slowing your clock cycle. Then write some code to do something useful. Run it in the simulator and get some timing data. No need for hardware even. Get some experience and learn what areas you need to come up to speed in.

> So I see a family of many core eForth CPU’s, all in Amaranth, taking the best ideas from many of the existing Forth cpus. Initially my focus will be on 16 bits for audio, later on 24 bits for video. If someone actually needs a 32 bit processor, I will release that as well.
>
> Particular thanks to @Lorum Ipsum for pointing out that the low end Lattice boards are also low power. Thanks to Juergen Pintaske for connecting me to the Facebook Forth group, and to a real time control expert who pointed out that they need 32 bit data. Thanks to the the Mecrisp-Ice author for pointing out that the Lattice Ice40 boards are single port. Thanks to the Core-1 lead for all of his great advice. Thanks to the 22 people on Facebook who like this idea, and to the one person who already wants to buy my many core Forth cpu!

Good luck.

--

Rick C.

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

Re: Programmable Forth Audio Processor

<9b990c3c-af38-47ad-bb60-84e07e9ed986n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24228&group=comp.lang.forth#24228

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:22e6:b0:765:a9f8:959b with SMTP id p6-20020a05620a22e600b00765a9f8959bmr12393qki.13.1691653463696;
Thu, 10 Aug 2023 00:44:23 -0700 (PDT)
X-Received: by 2002:a17:90a:d248:b0:269:4286:3496 with SMTP id
o8-20020a17090ad24800b0026942863496mr411551pjw.9.1691653463438; Thu, 10 Aug
2023 00:44:23 -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, 10 Aug 2023 00:44:22 -0700 (PDT)
In-Reply-To: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2003:ed:a70e:e801:9922:6001:cda8:e5ca;
posting-account=mrP5kgoAAADXISqI3e5f4EXLUinHClBq
NNTP-Posting-Host: 2003:ed:a70e:e801:9922:6001:cda8:e5ca
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9b990c3c-af38-47ad-bb60-84e07e9ed986n@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: hheinrich.hohl@gmail.com (Heinrich Hohl)
Injection-Date: Thu, 10 Aug 2023 07:44:23 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Heinrich Hohl - Thu, 10 Aug 2023 07:44 UTC

On Thursday, August 10, 2023 at 9:17:28 AM UTC+2, Christopher Lozinski wrote:
> AFAIK, the only data which is 16 bits wide is audio quality CD, so my focus is now on an audio processor
> for musicians, hearing aids, and echolocation.

I don't think that this will work out well.

In the field of audio DSP (digital signal processing), we usually record audio with a
bit depth of 24 bits.

In the DAW (digital audio workstation), the audio signal is converted to 32-bit FP or 64-bit FP.
Most DAWs and audio plugins nowadays use 64-bit floating point format for processing.

Only after all audio processing has been completed, the audio signal is dithered and then
truncated to 16 bits. And only if the audio is intended for an audio CD.

Re: Programmable Forth Audio Processor

<7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24229&group=comp.lang.forth#24229

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:6214:926:b0:63c:e9df:a46b with SMTP id dk6-20020a056214092600b0063ce9dfa46bmr17415qvb.3.1691655937460;
Thu, 10 Aug 2023 01:25:37 -0700 (PDT)
X-Received: by 2002:a63:aa4f:0:b0:564:538f:5683 with SMTP id
x15-20020a63aa4f000000b00564538f5683mr387226pgo.4.1691655936913; Thu, 10 Aug
2023 01:25:36 -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, 10 Aug 2023 01:25:36 -0700 (PDT)
In-Reply-To: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=83.22.135.138; posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 83.22.135.138
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: zbigniew2011@gmail.com (Zbig)
Injection-Date: Thu, 10 Aug 2023 08:25:37 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Zbig - Thu, 10 Aug 2023 08:25 UTC

But why you insist on that board?
For $31.50 you can have Teensy 4.1 ( https://www.pjrc.com/store/teensy41.html )
— clocked at 600 MHz and with ARM Cortex-M7. Still not powerful enough?
As I already wrote: boards featuring ESP32 are even much cheaper.

Re: Programmable Forth Audio Processor

<96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24233&group=comp.lang.forth#24233

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:598d:0:b0:401:dfc4:6f8f with SMTP id e13-20020ac8598d000000b00401dfc46f8fmr19027qte.13.1691661537973;
Thu, 10 Aug 2023 02:58:57 -0700 (PDT)
X-Received: by 2002:a17:902:ea02:b0:1b8:a134:6fcb with SMTP id
s2-20020a170902ea0200b001b8a1346fcbmr654883plg.7.1691661537592; Thu, 10 Aug
2023 02:58:57 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.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: Thu, 10 Aug 2023 02:58:56 -0700 (PDT)
In-Reply-To: <7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=46.134.17.194; posting-account=qOvlJAoAAAALKIuQXXxAY1xxkFpdJUbI
NNTP-Posting-Host: 46.134.17.194
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com> <7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: calozinski@gmail.com (Christopher Lozinski)
Injection-Date: Thu, 10 Aug 2023 09:58:57 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 4094
 by: Christopher Lozinski - Thu, 10 Aug 2023 09:58 UTC

Lorum Ipsum wrote:
> Any musician is going to drop a 16 bit device in the trash, because the artifacts will be audible.

Thank you. I will drop music from the target market. Simplifies life.

But digital telephony is at 8 bits, so I should be able to do a hearing aid at 16 bits.

As for echo location, the number of bits is not nearly as important as the timing.

Why am I focused on small, low cost, efficient and many core?
This video from the recent open source conference will explain the issues with climate change, limits to growth and planetary boundaries.
https://peertube.f-si.org/videos/watch/73680ce5-dd9e-483c-b6dd-88abcda548c4
If you understand climate change,, you can skip to 26:30.
And of course FPGA's are just the first step.

I generally think of soft core processors on FPGA's as 10 times slower and 10 times larger than competing hard core cpus. If I have a 16bit soft core, it is half as wide, and half as tall, and so maybe 1/4 the size of a 32 bit soft core cpu, so it is only 2.5 times larger and slower than a 32 bit hard core cpu. Certainly levels the playing field a lot. A lot easier to be competitive in the market.

Why am I doing stack machines instead of register machines?
Register machines and C compilers are too complex for innovation. The Gnu C compiler is some 16 million lines of code. Impossible to innovate there.. Stack machines allow me to do all kinds of interesting and needed things quite quickly and easily.

Why do I want more instructions? My instinct is that the additional 16 instructions that the Ting CPU provides would each take so many clock cycles to implement in the 16 instructions that the J1 provides, that although the ting cpu may half as fast, the application will run twice as fast. Supporting evidence is that the MicroCore with about 86 instructions, the author said he never needed a faster cpu.

Why do I use the term Forth processor? To distinguish it in my mind from a C processor.

> The dual port memory is internal to an FPGA and is available in nearly every device that is still in production.

Thank you. So I checked again. Turns out we both got it wrong. From the "iCE40 SPRAM Usage Guide"
The iCE40 devices offer four embedded memory blocks of SPRAM(Single Port RAM).... The iCE40 family has four 256 kb memory blocks available, that is a total of 1024 kb of Single Port memory. Each of these blocks can be configured only in 16K x 16 mode.
So the ICE40 family will not meet my needs for an audio processor. I will need to upgrade to the ECP5 boards. Tons of dual port memory, and more LUTs than I know what to do with. Great! Sadly not low power.

Warm Regards
Christopher Lozinski

Re: Programmable Forth Audio Processor

<9814d5c9-89b2-4b0f-8fbf-be9417307305n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24234&group=comp.lang.forth#24234

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a37:b6c3:0:b0:76c:a8e1:fde1 with SMTP id g186-20020a37b6c3000000b0076ca8e1fde1mr17840qkf.11.1691665178879;
Thu, 10 Aug 2023 03:59:38 -0700 (PDT)
X-Received: by 2002:a05:6a00:1d0d:b0:666:8f6c:c8ad with SMTP id
a13-20020a056a001d0d00b006668f6cc8admr463923pfx.2.1691664235040; Thu, 10 Aug
2023 03:43:55 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.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: Thu, 10 Aug 2023 03:43:54 -0700 (PDT)
In-Reply-To: <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=83.22.135.138; posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 83.22.135.138
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
<7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com> <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9814d5c9-89b2-4b0f-8fbf-be9417307305n@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: zbigniew2011@gmail.com (Zbig)
Injection-Date: Thu, 10 Aug 2023 10:59:38 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 1618
 by: Zbig - Thu, 10 Aug 2023 10:43 UTC

> Why am I focused on small, low cost, efficient and many core?
> This video from the recent open source conference will explain the issues with climate change, limits to growth and planetary boundaries.

Ah, so you're fighting the climate and planetary boundaries — and that requires multicore. :) Finally got it.

Re: Programmable Forth Audio Processor

<91210f36-e9fe-464c-aa7c-5885ef123d03n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24235&group=comp.lang.forth#24235

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:1994:b0:40c:8ba5:33e7 with SMTP id u20-20020a05622a199400b0040c8ba533e7mr31362qtc.1.1691666812895;
Thu, 10 Aug 2023 04:26:52 -0700 (PDT)
X-Received: by 2002:a63:a745:0:b0:563:e825:7f3a with SMTP id
w5-20020a63a745000000b00563e8257f3amr455712pgo.11.1691666812300; Thu, 10 Aug
2023 04:26:52 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.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: Thu, 10 Aug 2023 04:26:51 -0700 (PDT)
In-Reply-To: <9814d5c9-89b2-4b0f-8fbf-be9417307305n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=46.134.17.194; posting-account=qOvlJAoAAAALKIuQXXxAY1xxkFpdJUbI
NNTP-Posting-Host: 46.134.17.194
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
<7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com> <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
<9814d5c9-89b2-4b0f-8fbf-be9417307305n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <91210f36-e9fe-464c-aa7c-5885ef123d03n@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: calozinski@gmail.com (Christopher Lozinski)
Injection-Date: Thu, 10 Aug 2023 11:26:52 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 2448
 by: Christopher Lozinski - Thu, 10 Aug 2023 11:26 UTC

On Thursday, August 10, 2023 at 12:59:40 PM UTC+2, Zbig wrote:
> > Why am I focused on small, low cost, efficient and many core?
> > This video from the recent open source conference will explain the issues with climate change, limits to growth and planetary boundaries.
> Ah, so you're fighting the climate and planetary boundaries — and that requires multicore. :) Finally got it.
Not quite correct. I am mindful of the climate and planetary boundaries, and that tells me which direction the world is going.

My efforts to fight climate change are at the followinglink. You can watch 84 excellent videos about climate change, curated by numerous individuals.
https://uncensorednews.us/climate-change?query=&type=video&recommended=recommended&category=climate-change

The good news is that at least now people know that something is wrong with the climate. Generally, because of censorship, they still do not know how bad it already is, nor how much worse it is about to get.

Warm Regards
Christopher Lozinski

Re: Programmable Forth Audio Processor

<83fe36f6-c489-4ffa-915f-4602d6120c15n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24238&group=comp.lang.forth#24238

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:620a:9486:b0:767:420d:cec2 with SMTP id sn6-20020a05620a948600b00767420dcec2mr23602qkn.5.1691674886841;
Thu, 10 Aug 2023 06:41:26 -0700 (PDT)
X-Received: by 2002:a17:90b:a0a:b0:268:38e3:34e6 with SMTP id
gg10-20020a17090b0a0a00b0026838e334e6mr533757pjb.8.1691674886544; Thu, 10 Aug
2023 06:41:26 -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, 10 Aug 2023 06:41:25 -0700 (PDT)
In-Reply-To: <91210f36-e9fe-464c-aa7c-5885ef123d03n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=83.22.135.138; posting-account=cxuXKwoAAABQpPOMD55A9IPz7pPrw6ml
NNTP-Posting-Host: 83.22.135.138
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
<7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com> <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
<9814d5c9-89b2-4b0f-8fbf-be9417307305n@googlegroups.com> <91210f36-e9fe-464c-aa7c-5885ef123d03n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <83fe36f6-c489-4ffa-915f-4602d6120c15n@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: zbigniew2011@gmail.com (Zbig)
Injection-Date: Thu, 10 Aug 2023 13:41:26 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Zbig - Thu, 10 Aug 2023 13:41 UTC

czwartek, 10 sierpnia 2023 o 13:26:54 UTC+2 Christopher Lozinski napisał(a):
> On Thursday, August 10, 2023 at 12:59:40 PM UTC+2, Zbig wrote:
> > > Why am I focused on small, low cost, efficient and many core?
> > > This video from the recent open source conference will explain the issues with climate change, limits to growth and planetary boundaries.
> > Ah, so you're fighting the climate and planetary boundaries — and that requires multicore. :) Finally got it.
> Not quite correct. I am mindful of the climate and planetary boundaries, and that tells me which direction the world is going.
>
> My efforts to fight climate change are at the followinglink. You can watch 84 excellent videos about climate change, curated by numerous individuals..
> https://uncensorednews.us/climate-change?query=&type=video&recommended=recommended&category=climate-change
>
> The good news is that at least now people know that something is wrong with the climate. Generally, because of censorship, they still do not know how bad it already is, nor how much worse it is about to get.

Yeah, „all people contribute to climate change” (e.g. video #13) etc.
In fact YOU are the carbon they want to reduce. ;)

Warm(ing) Regards,
Z.

Re: Programmable Forth Audio Processor

<27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24239&group=comp.lang.forth#24239

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ac8:5c06:0:b0:403:996b:1390 with SMTP id i6-20020ac85c06000000b00403996b1390mr33435qti.11.1691680269701;
Thu, 10 Aug 2023 08:11:09 -0700 (PDT)
X-Received: by 2002:a17:902:d511:b0:1bc:66ab:3481 with SMTP id
b17-20020a170902d51100b001bc66ab3481mr919369plg.13.1691680269089; Thu, 10 Aug
2023 08:11:09 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer01.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: Thu, 10 Aug 2023 08:11:08 -0700 (PDT)
In-Reply-To: <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=65.207.89.54; posting-account=I-_H_woAAAA9zzro6crtEpUAyIvzd19b
NNTP-Posting-Host: 65.207.89.54
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
<7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com> <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: gnuarm.deletethisbit@gmail.com (Lorem Ipsum)
Injection-Date: Thu, 10 Aug 2023 15:11:09 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 6107
 by: Lorem Ipsum - Thu, 10 Aug 2023 15:11 UTC

On Thursday, August 10, 2023 at 5:58:59 AM UTC-4, Christopher Lozinski wrote:
> Lorum Ipsum wrote:
> > Any musician is going to drop a 16 bit device in the trash, because the artifacts will be audible.
> Thank you. I will drop music from the target market. Simplifies life.
>
> But digital telephony is at 8 bits, so I should be able to do a hearing aid at 16 bits.
>
> As for echo location, the number of bits is not nearly as important as the timing.
>
> Why am I focused on small, low cost, efficient and many core?
> This video from the recent open source conference will explain the issues with climate change, limits to growth and planetary boundaries.
> https://peertube.f-si.org/videos/watch/73680ce5-dd9e-483c-b6dd-88abcda548c4
> If you understand climate change,, you can skip to 26:30.
> And of course FPGA's are just the first step.

"Climate change"??? Can't you just tell me what you are trying to do? At this point, I'm pretty confident you actually have no specific goals in mind and are just looking for a CPU idea to play with.

> I generally think of soft core processors on FPGA's as 10 times slower and 10 times larger than competing hard core cpus. If I have a 16bit soft core, it is half as wide, and half as tall, and so maybe 1/4 the size of a 32 bit soft core cpu, so it is only 2.5 times larger and slower than a 32 bit hard core cpu. Certainly levels the playing field a lot. A lot easier to be competitive in the market.

What market???

> Why am I doing stack machines instead of register machines?
> Register machines and C compilers are too complex for innovation. The Gnu C compiler is some 16 million lines of code. Impossible to innovate there. Stack machines allow me to do all kinds of interesting and needed things quite quickly and easily.

Stack processors are no more suited for innovation. There's nothing you can do with a stack machine that you can't do with a register machine. But you seem to be saying you think you can "innovate" with stack designs. Do you have any idea what these "innovations" would be???

> Why do I want more instructions? My instinct is that the additional 16 instructions that the Ting CPU provides would each take so many clock cycles to implement in the 16 instructions that the J1 provides, that although the ting cpu may half as fast, the application will run twice as fast. Supporting evidence is that the MicroCore with about 86 instructions, the author said he never needed a faster cpu.

I have to laugh at that a bit. I think this shows you are running with scissors. Rather than having a goal in mind, you want to design something that is "fast", without defining what "fast" means.

I've already explained that adding instructions can slow down the processor.. You don't seem to have given that much attention.

> Why do I use the term Forth processor? To distinguish it in my mind from a C processor.

Forth doesn't specify a processor, other than the virtual machine. You could call it "Fred" and it would be distinguished from a register processor. To the best of my knowledge, there's no such thing as a C processor.

> > The dual port memory is internal to an FPGA and is available in nearly every device that is still in production.
> Thank you. So I checked again. Turns out we both got it wrong. From the "iCE40 SPRAM Usage Guide"
> The iCE40 devices offer four embedded memory blocks of SPRAM(Single Port RAM)....

Not sure what you are talking about here. Are you referring to the tiny memory in the 4 input LUTs? Actually, the iCE40 parts may not have those. The original designers of this line (the iCE65) removed a lot of functionality in their quest to reduce power.

> The iCE40 family has four 256 kb memory blocks available, that is a total of 1024 kb of Single Port memory. Each of these blocks can be configured only in 16K x 16 mode.

Every device I've looked at in the iCE40 families has multiple RAM blocks. Why do you say there are only four??? I think maybe you are looking at the SPRAM in the UltraPlus parts.

> So the ICE40 family will not meet my needs for an audio processor. I will need to upgrade to the ECP5 boards. Tons of dual port memory, and more LUTs than I know what to do with. Great! Sadly not low power.

Why the ECP5 parts? There are many FPGA providers. Have you looked at Gowin, Efinix, Xilinx(AMD), Altera(Intel)? Gowin and Efinix have good supply and prices.

--

Rick C.

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

Re: Programmable Forth Audio Processor

<d617ced0-7d37-4967-9486-d48c5112ebedn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24240&group=comp.lang.forth#24240

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ad4:57ca:0:b0:63c:fc43:fd51 with SMTP id y10-20020ad457ca000000b0063cfc43fd51mr37417qvx.11.1691682001769;
Thu, 10 Aug 2023 08:40:01 -0700 (PDT)
X-Received: by 2002:a05:6a00:2d8d:b0:687:4ed6:ec12 with SMTP id
fb13-20020a056a002d8d00b006874ed6ec12mr1195586pfb.3.1691682001124; Thu, 10
Aug 2023 08:40:01 -0700 (PDT)
Path: i2pn2.org!i2pn.org!news.niel.me!glou.org!news.glou.org!fdn.fr!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, 10 Aug 2023 08:40:00 -0700 (PDT)
In-Reply-To: <27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=84.125.86.147; posting-account=oUnEFAoAAADoKEMDaPmswUef8xS_aFfv
NNTP-Posting-Host: 84.125.86.147
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
<7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com> <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
<27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d617ced0-7d37-4967-9486-d48c5112ebedn@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: jemo07@gmail.com (SpainHackForth)
Injection-Date: Thu, 10 Aug 2023 15:40:01 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: SpainHackForth - Thu, 10 Aug 2023 15:40 UTC

Well, since it was asked, here are three areas of possible innovation with a hardware dual-stack CPU (similar to Forth’s design) and their potential use cases:

- Real-time Systems and Embedded Applications:
**Innovation Area:
* Utilizing the dual-stack architecture for real-time systems and embedded applications can lead to precise and predictable execution of tasks, making it suitable for robotics, industrial automation, and control systems..
** Use Cases;
* Robotics Control- The architecture’s deterministic execution can ensure accurate control of robotic movements, enhancing safety and efficiency in tasks like manufacturing, assembly, and exploration.
* Industrial Automation- Dual-stack CPUs can power real-time automation systems, controlling processes with precise timing and responsiveness in industries such as manufacturing and logistics.
* IoT Devices- In IoT applications, the architecture can enable real-time monitoring and control of smart devices, ensuring rapid response to events and minimizing latency.
- Secure and Reliable Systems.
** Innovation Area:
* Leveraging the dual-stack architecture for secure and reliable systems can enhance software resilience, isolate critical components, and provide a strong foundation for secure computing environments.
** Use Cases:
* Cybersecurity: Dual-stack CPUs can facilitate secure booting, code integrity checks, and cryptographic operations. These features enhance system security, protect sensitive data, and defend against cyber threats.
* Safety-Critical Systems: The architecture’s isolation of control flow and data can be critical in safety-critical applications such as aerospace, automotive, and medical devices, minimizing the risk of software failures.
* Secure Transactions: For finncial and transactional systems, the dual-stack architecture can support secure execution of encryption algorithms and authentication protocols, safeguarding sensitive transactions.
- Advanced Algorithm Development.
** Innovation Area:
* The dual-stack architecture can inspire the development of novel algorithms and data structures that leverage the separation of data and control stacks, leading to improved computational efficiency and performance.
** Use Cases:
* Data Analytics: Developing algorithmsn for data processing, analysis, and transformation can benefit from the architecture’s ability to manage data separately from control flow, leading to optimized data-driven insights.
* Signal Processing: The architecture’s parallel processing capabilities can be harnessed for real-time signal processing tasks, such as audio and image processing, enabling faster and more accurate results.
*Scientific Computing: Dual-stack CPUs can accelerate complex scientific simulations by optimizing data manipulation and parallel computations, advancing research in various domains.

Personally, I believe that a hardware dual-stack CPU architecture, resembling Forth’s design, can drive many areas of innovation. The architecture’s predictable execution, separation of stacks, and parallel processing capabilities offer opportunities to create efficient and reliable solutions for various industries and applications.

Cheers and I look forward to positive contribution from all in the community.

JoseM

Re: Programmable Forth Audio Processor

<ba872e4f-1d16-48bb-87e4-ce7ec852d13dn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24241&group=comp.lang.forth#24241

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ad4:558f:0:b0:640:14ce:85a5 with SMTP id f15-20020ad4558f000000b0064014ce85a5mr28996qvx.12.1691683007334;
Thu, 10 Aug 2023 08:56:47 -0700 (PDT)
X-Received: by 2002:a17:90a:c782:b0:268:38e3:34f0 with SMTP id
gn2-20020a17090ac78200b0026838e334f0mr557985pjb.2.1691683006425; Thu, 10 Aug
2023 08:56:46 -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, 10 Aug 2023 08:56:45 -0700 (PDT)
In-Reply-To: <27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=46.134.145.105; posting-account=qOvlJAoAAAALKIuQXXxAY1xxkFpdJUbI
NNTP-Posting-Host: 46.134.145.105
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
<7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com> <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
<27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <ba872e4f-1d16-48bb-87e4-ce7ec852d13dn@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: calozinski@gmail.com (Christopher Lozinski)
Injection-Date: Thu, 10 Aug 2023 15:56:47 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: Christopher Lozinski - Thu, 10 Aug 2023 15:56 UTC

@SpainHackForth, thank you for the list of potential applications. Can you say more about this area which is of particular interest to me.
> Signal Processing: The architecture’s parallel processing capabilities can be harnessed for real-time signal processing tasks, such as audio and image processing, enabling faster and more accurate results.

@Lorum Ipsum
> Have you looked at Gowin, Efinix, Xilinx(AMD), Altera(Intel)? Gowin and Efinix have good supply and prices.

Thank you once again. No I have not, but I will.

As for all of your other questions, in due course they will be answered. For now you can think of me as a person playing with multiple Forth cores. And in particular Micromouse needs 4 * 24 bit Forth cores connected by 24 bit wires ending with 4 word FIFO's. That would make their development so much easier than developing on a not perfectly documented two core Microcontroller. In due course other innovations will also appear.

I still think that you are too goal oriented. What is the goal of a CPU? To run Linux? A many core Forth cpu can run many different applications. Slowly the range of applications are becoming more visible to me. As have the required customization. I believe I stated hearing aids, and echo location that are particularly interesting to me. Eventually vision, if I can find an FPGA with enough memory and reasonably priced. In particular assistance for the vision impaired.

> Yeah, „all people contribute to climate change”
Some contribute more than others.

"Top 1 Percent of Emitters Responsible for One Quarter of Emissions Since 1990"
https://e360.yale.edu/digest/carbon-emissions-inequality
"From 1990 to 2019, the bottom half of emitters was responsible for just 16 percent of emissions."

Warm Regards
Christopher Lozinski

Re: Programmable Forth Audio Processor

<197834fb-92ac-4019-9f47-bea04ada1ebdn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24242&group=comp.lang.forth#24242

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:5ce:b0:403:3683:62a2 with SMTP id d14-20020a05622a05ce00b00403368362a2mr39986qtb.11.1691684969901;
Thu, 10 Aug 2023 09:29:29 -0700 (PDT)
X-Received: by 2002:a05:6a00:b8d:b0:687:a657:e11d with SMTP id
g13-20020a056a000b8d00b00687a657e11dmr993417pfj.1.1691684969530; Thu, 10 Aug
2023 09:29:29 -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!peer01.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: Thu, 10 Aug 2023 09:29:28 -0700 (PDT)
In-Reply-To: <ba872e4f-1d16-48bb-87e4-ce7ec852d13dn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=84.125.86.147; posting-account=oUnEFAoAAADoKEMDaPmswUef8xS_aFfv
NNTP-Posting-Host: 84.125.86.147
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
<7ab4e4df-ebf5-4fbc-9e17-006f9478e8d9n@googlegroups.com> <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com>
<27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com> <ba872e4f-1d16-48bb-87e4-ce7ec852d13dn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <197834fb-92ac-4019-9f47-bea04ada1ebdn@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: jemo07@gmail.com (SpainHackForth)
Injection-Date: Thu, 10 Aug 2023 16:29:29 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 4470
 by: SpainHackForth - Thu, 10 Aug 2023 16:29 UTC

On Thursday, August 10, 2023 at 5:56:48 PM UTC+2, Christopher Lozinski wrote:
> @SpainHackForth, thank you for the list of potential applications. Can you say more about this area which is of particular interest to me.
> > Signal Processing: The architecture’s parallel processing capabilities can be harnessed for real-time signal processing tasks, such as audio and image processing, enabling faster and more accurate results.

> Christopher Lozinski

Certainly, parallel processing is a powerful technique that involves performing multiple computational tasks simultaneously to achieve faster and more efficient data processing. In the context of signal processing, a dual-stack CPU architecture can leverage parallel processing to enhance the speed and accuracy of various signal analysis and manipulation tasks. These often involve applying the same operation to multiple data points or elements. With a dual-stack architecture, you can efficiently perform these operations in parallel by pushing the data onto the data stack and executing the operation concurrently for each element. This is particularly useful for tasks like applying filters, transformations, or mathematical operations to a large dataset.

This is also true for sequential operations. A dual-stack architecture can implement a pipeline structure, where each stage of the pipeline corresponds to a specific signal processing operation. The architecture can process multiple data elements simultaneously at different stages of the pipeline, increasing throughput.

Consider FFT and convolution, which are fundamental operations in signal processing. These operations can be highly parallelized using a dual-stack architecture. For example, a dual-stack CPU can split the input signal into multiple segments and perform FFT on each segment concurrently.

Fundamentally, I have been looking at Dual Stack CPU’s for some time now, trying to consider where the current needs for AI might apply, and I believe that there is a strong future and opportunities in this space, not as a means to win over a general purpose CPU, but on the contrary, be very diligent in specializing in a area of growth.

I have posted a longer conversation on this here… https://www.facebook.com/groups/1304548976637542/posts/1728121244280311/?comment_id=1728208484271587&reply_comment_id=1728259154266520&notif_id=1691601270071388&notif_t=group_comment_mention If you are interested in following that sort of topic.

Honestly, I initially approached stack CPUs and Forth FPGA implementations with skepticism, viewing them as technologies without clear objectives. However, after delving into the discussions, I’ve emerged more convinced than ever that when applied to specific use cases, these technologies hold significant potential and are worth leveraging.

Re: Programmable Forth Audio Processor

<nnd$60a02209$472638b8@2e390c1dc5d4035f>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24247&group=comp.lang.forth#24247

  copy link   Newsgroups: comp.lang.forth
Newsgroups: comp.lang.forth
Subject: Re: Programmable Forth Audio Processor
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com> <96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com> <27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com> <d617ced0-7d37-4967-9486-d48c5112ebedn@googlegroups.com>
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
From: albert@cherry (none)
Originator: albert@cherry.(none) (albert)
Message-ID: <nnd$60a02209$472638b8@2e390c1dc5d4035f>
Organization: KPN B.V.
Date: Fri, 11 Aug 2023 13:34:26 +0200
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!feeder1.feed.usenet.farm!feed.usenet.farm!peer03.ams4!peer.am4.highwinds-media.com!news.highwinds-media.com!feed.abavia.com!abe006.abavia.com!abp001.abavia.com!news.kpn.nl!not-for-mail
Lines: 79
Injection-Date: Fri, 11 Aug 2023 13:34:26 +0200
Injection-Info: news.kpn.nl; mail-complaints-to="abuse@kpn.com"
X-Received-Bytes: 4848
 by: none - Fri, 11 Aug 2023 11:34 UTC

In article <d617ced0-7d37-4967-9486-d48c5112ebedn@googlegroups.com>,
SpainHackForth <jemo07@gmail.com> wrote:
>Well, since it was asked, here are three areas of possible innovation
>with a hardware dual-stack CPU (similar to Forth’s design) and their
>potential use cases:
>
>- Real-time Systems and Embedded Applications:
>**Innovation Area:
> * Utilizing the dual-stack architecture for real-time systems and
>embedded applications can lead to precise and predictable execution of
>tasks, making it suitable for robotics, industrial automation, and
>control systems.
>** Use Cases;
> * Robotics Control- The architecture’s deterministic execution
>can ensure accurate control of robotic movements, enhancing safety and
>efficiency in tasks like manufacturing, assembly, and exploration.
> * Industrial Automation- Dual-stack CPUs can power real-time automation
>systems, controlling processes with precise timing and responsiveness in
>industries such as manufacturing and logistics.
> * IoT Devices- In IoT applications, the architecture can enable
>real-time monitoring and control of smart devices, ensuring rapid
>response to events and minimizing latency.
>- Secure and Reliable Systems.
>** Innovation Area:
> * Leveraging the dual-stack architecture for secure and reliable
>systems can enhance software resilience, isolate critical components,
>and provide a strong foundation for secure computing environments.
>** Use Cases:
> * Cybersecurity: Dual-stack CPUs can facilitate secure booting, code
>integrity checks, and cryptographic operations. These features enhance
>system security, protect sensitive data, and defend against cyber
>threats.
> * Safety-Critical Systems: The architecture’s isolation of control
>flow and data can be critical in safety-critical applications such as
>aerospace, automotive, and medical devices, minimizing the risk of
>software failures.
> * Secure Transactions: For finncial and transactional systems, the
>dual-stack architecture can support secure execution of encryption
>algorithms and authentication protocols, safeguarding sensitive
>transactions.
>- Advanced Algorithm Development.
>** Innovation Area:
> * The dual-stack architecture can inspire the development of
>novel algorithms and data structures that leverage the separation of
>data and control stacks, leading to improved computational efficiency
>and performance.
>** Use Cases:
> * Data Analytics: Developing algorithmsn for data processing, analysis,
>and transformation can benefit from the architecture’s ability to
>manage data separately from control flow, leading to optimized
>data-driven insights.
> * Signal Processing: The architecture’s parallel processing
>capabilities can be harnessed for real-time signal processing tasks,
>such as audio and image processing, enabling faster and more accurate
>results.
> *Scientific Computing: Dual-stack CPUs can accelerate complex
>scientific simulations by optimizing data manipulation and parallel
>computations, advancing research in various domains.
>
>Personally, I believe that a hardware dual-stack CPU architecture,
>resembling Forth’s design, can drive many areas of innovation. The
>architecture’s predictable execution, separation of stacks, and
>parallel processing capabilities offer opportunities to create efficient
>and reliable solutions for various industries and applications.
>
>Cheers and I look forward to positive contribution from all in the community.

I have the suspicion that post was generated by AI.
The content is reminiscient of China's "People Review" in the 60's.
Basically devoid of content.

>
>JoseM
--
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 -

Re: Programmable Forth Audio Processor

<ab1d6252-1cde-405c-9694-04f718c6773bn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24275&group=comp.lang.forth#24275

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ad4:4e42:0:b0:63c:f717:356 with SMTP id eb2-20020ad44e42000000b0063cf7170356mr132523qvb.2.1692049032398;
Mon, 14 Aug 2023 14:37:12 -0700 (PDT)
X-Received: by 2002:a17:902:db06:b0:1ba:a36d:f82c with SMTP id
m6-20020a170902db0600b001baa36df82cmr4419544plx.7.1692049031601; Mon, 14 Aug
2023 14:37:11 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.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: Mon, 14 Aug 2023 14:37:10 -0700 (PDT)
In-Reply-To: <nnd$60a02209$472638b8@2e390c1dc5d4035f>
Injection-Info: google-groups.googlegroups.com; posting-host=47.58.188.92; posting-account=oUnEFAoAAADoKEMDaPmswUef8xS_aFfv
NNTP-Posting-Host: 47.58.188.92
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
<96d754f4-851e-4c50-8249-e0955d52ebf6n@googlegroups.com> <27882031-3b4d-4cfa-9087-bb0c7426ccc1n@googlegroups.com>
<d617ced0-7d37-4967-9486-d48c5112ebedn@googlegroups.com> <nnd$60a02209$472638b8@2e390c1dc5d4035f>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <ab1d6252-1cde-405c-9694-04f718c6773bn@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: jemo07@gmail.com (SpainHackForth)
Injection-Date: Mon, 14 Aug 2023 21:37:12 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 6600
 by: SpainHackForth - Mon, 14 Aug 2023 21:37 UTC

On Friday, August 11, 2023 at 1:34:31 PM UTC+2, none albert wrote:
> In article <d617ced0-7d37-4967...@googlegroups.com>,
> SpainHackForth <jem...@gmail.com> wrote:
> >Well, since it was asked, here are three areas of possible innovation
> >with a hardware dual-stack CPU (similar to Forth’s design) and their
> >potential use cases:
> >
> >- Real-time Systems and Embedded Applications:
> >**Innovation Area:
> > * Utilizing the dual-stack architecture for real-time systems and
> >embedded applications can lead to precise and predictable execution of
> >tasks, making it suitable for robotics, industrial automation, and
> >control systems.
> >** Use Cases;
> > * Robotics Control- The architecture’s deterministic execution
> >can ensure accurate control of robotic movements, enhancing safety and
> >efficiency in tasks like manufacturing, assembly, and exploration.
> > * Industrial Automation- Dual-stack CPUs can power real-time automation
> >systems, controlling processes with precise timing and responsiveness in
> >industries such as manufacturing and logistics.
> > * IoT Devices- In IoT applications, the architecture can enable
> >real-time monitoring and control of smart devices, ensuring rapid
> >response to events and minimizing latency.
> >- Secure and Reliable Systems.
> >** Innovation Area:
> > * Leveraging the dual-stack architecture for secure and reliable
> >systems can enhance software resilience, isolate critical components,
> >and provide a strong foundation for secure computing environments.
> >** Use Cases:
> > * Cybersecurity: Dual-stack CPUs can facilitate secure booting, code
> >integrity checks, and cryptographic operations. These features enhance
> >system security, protect sensitive data, and defend against cyber
> >threats.
> > * Safety-Critical Systems: The architecture’s isolation of control
> >flow and data can be critical in safety-critical applications such as
> >aerospace, automotive, and medical devices, minimizing the risk of
> >software failures.
> > * Secure Transactions: For finncial and transactional systems, the
> >dual-stack architecture can support secure execution of encryption
> >algorithms and authentication protocols, safeguarding sensitive
> >transactions.
> >- Advanced Algorithm Development.
> >** Innovation Area:
> > * The dual-stack architecture can inspire the development of
> >novel algorithms and data structures that leverage the separation of
> >data and control stacks, leading to improved computational efficiency
> >and performance.
> >** Use Cases:
> > * Data Analytics: Developing algorithmsn for data processing, analysis,
> >and transformation can benefit from the architecture’s ability to
> >manage data separately from control flow, leading to optimized
> >data-driven insights.
> > * Signal Processing: The architecture’s parallel processing
> >capabilities can be harnessed for real-time signal processing tasks,
> >such as audio and image processing, enabling faster and more accurate
> >results.
> > *Scientific Computing: Dual-stack CPUs can accelerate complex
> >scientific simulations by optimizing data manipulation and parallel
> >computations, advancing research in various domains.
> >
> >Personally, I believe that a hardware dual-stack CPU architecture,
> >resembling Forth’s design, can drive many areas of innovation. The
> >architecture’s predictable execution, separation of stacks, and
> >parallel processing capabilities offer opportunities to create efficient
> >and reliable solutions for various industries and applications.
> >
> >Cheers and I look forward to positive contribution from all in the community.
> I have the suspicion that post was generated by AI.
> The content is reminiscient of China's "People Review" in the 60's.
> Basically devoid of content.
>
> >
> >JoseM
> --
> 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 -

Was that intended as a compliment? Thank you!

By examining my other conversations, you'd notice my distinct approach: I often condense the dialogue, highlighting pertinent details that may otherwise be overlooked.

The terms I use offer a personal perspective on this specific architecture.

My emphasis has always been on the potential of AI in this architectural realm. Given the importance of data flow parallelization in computational pipelines, the movement of data is paramount. Most of my discourse revolves around this. However, to truly grasp the depth of my contribution, I'd suggest checking the provided link. This was my sincere effort to add value for the original poster.

Re: Programmable Forth Audio Processor

<31c8b9b3-0739-4350-a148-3257cf7e59bdn@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24320&group=comp.lang.forth#24320

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:ad4:5a50:0:b0:641:8834:a25d with SMTP id ej16-20020ad45a50000000b006418834a25dmr9019qvb.4.1692447705373;
Sat, 19 Aug 2023 05:21:45 -0700 (PDT)
X-Received: by 2002:a05:6a00:139a:b0:686:6234:5537 with SMTP id
t26-20020a056a00139a00b0068662345537mr1232561pfg.1.1692447705043; Sat, 19 Aug
2023 05:21:45 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!diablo1.usenet.blueworldhosting.com!peer02.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, 19 Aug 2023 05:21:44 -0700 (PDT)
In-Reply-To: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=199.48.66.218; posting-account=zkoivgoAAABqROvHfKJPu3S9NWXITnSr
NNTP-Posting-Host: 199.48.66.218
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <31c8b9b3-0739-4350-a148-3257cf7e59bdn@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: myronplichota@gmail.com (Myron Plichota)
Injection-Date: Sat, 19 Aug 2023 12:21:45 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1330
 by: Myron Plichota - Sat, 19 Aug 2023 12:21 UTC

You might be interested in the BugsBoard single-core implementation.

https://drive.google.com/file/d/14iPt_j_lmINSs4cte3_MneA6D4UCBjZi/view?usp=sharing

If you are, please email me one-on-one.

Re: Programmable Forth Audio Processor

<811094ac-8424-4395-80b5-e21630270897n@googlegroups.com>

  copy mid

https://news.novabbs.org/devel/article-flat.php?id=24377&group=comp.lang.forth#24377

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a05:622a:1309:b0:40d:b839:b5bb with SMTP id v9-20020a05622a130900b0040db839b5bbmr96004qtk.2.1692688373379;
Tue, 22 Aug 2023 00:12:53 -0700 (PDT)
X-Received: by 2002:a17:902:e746:b0:1bc:95bf:bdc9 with SMTP id
p6-20020a170902e74600b001bc95bfbdc9mr3979427plf.13.1692688372044; Tue, 22 Aug
2023 00:12:52 -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: Tue, 22 Aug 2023 00:12:51 -0700 (PDT)
In-Reply-To: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=49.197.230.31; posting-account=WyLDIgoAAAAL9-lKxDxWp0Afty5A1XnH
NNTP-Posting-Host: 49.197.230.31
References: <fed018f0-abe2-4505-a300-14fcaaa6d3f8n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <811094ac-8424-4395-80b5-e21630270897n@googlegroups.com>
Subject: Re: Programmable Forth Audio Processor
From: waynemorellini@gmail.com (S)
Injection-Date: Tue, 22 Aug 2023 07:12:53 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: S - Tue, 22 Aug 2023 07:12 UTC

On Thursday, August 10, 2023 at 5:17:28 PM UTC+10, Christopher Lozinski wrote:
> Thanks to all of you, my understanding of the technology and the market continues to improve. 16 bit Forth machines are very space and memory efficient, but the problem is that real time control applications use more than 16 bits of accuracy’s and you really do not want to be doing stack operations on doubles. Dup is two deep, Over is 4 deep, but rot is 6 deep. Sure at 60Mhz there is enough time, but it is just ugly. So I need an application which uses 16 bit data or less. AFAIK, the only data which is 16 bits wide is audio quality CD, so my focus is now on an audio processor for musicians, hearing aids, and echolocation. There are a lot of older Forth developers who need hearing aids, and in the US, they are no longer regulated. 

Here is the $35 board I am targeting.
>
> https://tinyvision.ai/products/pico-ice
>
> This board, can happily fit 8 * 16 bit stack machines.
> Each will have a hard core multiplier and 128Kbits of memory. That is 8K 16bit words. If needed, I can even go t0 16 processors, 8 with hard core multipliers.
>
> This processor will be very different from the J1 and Mecrisp processors. They are optimized to be as small as possible, with only 16 instructions. Each one only takes 160 LUT’s, but I have 5260 LUTs on this board. With all of that logic fabric, I can happily have 32 instructions instead of the J1’s 16. That makes this closer to Ting’s eForth EP16/24/32. Of course Ting had 3 different code bases, but with modern tools like Python’s Amaranth, or Java’s SpinalHDL, I should be able to generate 16, 24 and 32 bit cpus all from the same code base.
>
> The J1 depends on dual port memory. It can read or write to memory at the same time that it is fetching the next instruction. And one needs that to be able to edit code. Sadly the inexpensive Lattice boards are mostly single port memory. So I have to use a Harvard architecture, where code and memory are separate. MicroCore does this. I suspect Ting also did this.
>
> I will also need some logic dedicated to audio processing. I am not yet sure what it will be. There may need to be a shift register to store some history from two or three microphones for cross-correlation and edge detection. There may need to be some flags for when the next bit of audio becomes available.
>
> So I see a family of many core eForth CPU’s, all in Amaranth, taking the best ideas from many of the existing Forth cpus. Initially my focus will be on 16 bits for audio, later on 24 bits for video. If someone actually needs a 32 bit processor, I will release that as well.
>
> Particular thanks to @Lorum Ipsum for pointing out that the low end Lattice boards are also low power. Thanks to Juergen Pintaske for connecting me to the Facebook Forth group, and to a real time control expert who pointed out that they need 32 bit data. Thanks to the the Mecrisp-Ice author for pointing out that the Lattice Ice40 boards are single port. Thanks to the Core-1 lead for all of his great advice. Thanks to the 22 people on Facebook who like this idea, and to the one person who already wants to buy my many core Forth cpu!

I probably posted the lightest boards around, and an alternative FPGA supplier with anti-fuse products as well. There was one little one that fits inside a USB slot. I can't remember other ones, but seed studio tries to do really small boards cheap, with heaps of prototyping/manufacture service for products and parts. Pretty, that word for forward thinking and covering basis. But, is there any fpga or other, I can run full steam at 1mw or less for ultra low power applications.

I think GA, is better off selling a more advanced low core large memory execute design to an FPGA manufacturer. Would hardly take up space or energy on most FPGAs, and a lot less than a soft cpu. But, I guess the b16 or J1 etc might do that. FPGA manufacturers probably would do a lot of funding for that, particularly something which offered C code acceleration, like Chuck's shboom did. Which you could also plug into circuits used for IO on Arm, which the FPGA manufacturers likely already has. I would just use the thing and turn the FPGA section off unless I wanted to use it. Low energy is a deficiency in FPGA they have a hard time competing with, mixed misc fpga parts where you can power down anything section not used, means they can do it all. I wonder why nobody put this together in the past. Misc is not competition to FPGA, but complimentary. 10,000 transistors for a CPU with basic control panel graphics, running at fractions or a mw 1Ghz (presuming with the low energy processes they have) it's virtually crazy not to.

Any of the record extra ultra low energy features that people have a problem with, can be replaced with faster simpler ultra low powered versions for no net penality on an constantly running performance system..

1
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor