Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

The value of a program is proportional to the weight of its output.


devel / comp.lang.forth / Re: FPGA4th

Re: FPGA4th

<c1720c64-6805-4bf0-978a-953661455ad7n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.lang.forth
X-Received: by 2002:a37:9144:0:b0:6cf:5dc3:417c with SMTP id t65-20020a379144000000b006cf5dc3417cmr5731528qkd.213.1665966751634;
Sun, 16 Oct 2022 17:32:31 -0700 (PDT)
X-Received: by 2002:a25:da08:0:b0:6be:34b9:55e with SMTP id
n8-20020a25da08000000b006be34b9055emr7051599ybf.308.1665966751410; Sun, 16
Oct 2022 17:32:31 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.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: Sun, 16 Oct 2022 17:32:31 -0700 (PDT)
In-Reply-To: <08437c48-ed29-4e31-bb08-2d2a69b2a044n@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: <4f7ef896-47e5-40a0-9e11-85156f006cben@googlegroups.com>
<75ae819b-6e7a-4aa3-b38c-1a4e507ced3cn@googlegroups.com> <1a464fd0-5bf1-423b-b1e7-3e69a1583859n@googlegroups.com>
<430c23fb-eafc-4c77-8af2-47b8046d07a5n@googlegroups.com> <990840c6-b5e9-4cf1-9efe-1579f2416a84n@googlegroups.com>
<9c3b4410-3892-480d-bb83-8e7ee0781ecbn@googlegroups.com> <bf4b358b-b552-4612-990f-881568cee5f8n@googlegroups.com>
<6b96fb46-c93f-44bc-8304-79f15ab39054n@googlegroups.com> <5bb33b61-50fc-4239-a898-155a40355171n@googlegroups.com>
<b9bea4b5-f959-4ffc-8739-e2871c815e59n@googlegroups.com> <c39f3402-836f-45d6-979a-821d048c46ban@googlegroups.com>
<6babb188-6413-4082-a78e-c0cf8bb383f2n@googlegroups.com> <e33ebe6f-37a6-4d77-83bd-734e7e2c9bbfn@googlegroups.com>
<5fcf07b6-104f-48a9-8b5a-9552f6c23e66n@googlegroups.com> <2b2521c6-13c1-4e7a-b8ad-a763ec43754cn@googlegroups.com>
<a6bcb59b-28f8-40b6-8c7c-6f4b807f7668n@googlegroups.com> <2f87bd04-8226-469d-aa18-9f35d3529d6fn@googlegroups.com>
<a73e757f-904d-459a-be62-d86737d7f43bn@googlegroups.com> <08437c48-ed29-4e31-bb08-2d2a69b2a044n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <c1720c64-6805-4bf0-978a-953661455ad7n@googlegroups.com>
Subject: Re: FPGA4th
From: gnuarm.d...@gmail.com (Lorem Ipsum)
Injection-Date: Mon, 17 Oct 2022 00:32:31 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 11087
 by: Lorem Ipsum - Mon, 17 Oct 2022 00:32 UTC

On Sunday, October 16, 2022 at 4:22:36 PM UTC-4, johnro...@gmail.com wrote:
> \ Op Code File for MFX. Generated by MAKE-OPS v13
> <clip>
> > > > > > > > > > > > > > > The Logic Compiler is working and the modules for the processor are done and tested. After the mem interface module is complete we'll be ready to put the design into the fpga. We're using a X02-7000 but the design will work in any equivalent part.
> <clip>
> > > > > > > > > > > > Sorry, I don't follow. What are you describing by, "use VHDL on an FPGA to write to it directly in Forth"?
> > > > > > > > > > > > If you are talking about a stack CPU, written in VHDL, running on an FPGA, that has been done
> > > > > > > > > > > > many, many times, some published, many not published. It would seem to be a trivial exercise.
> > > > > > > > > > > > Rick C.
>
> Verilog, NOT VHDL. I found it to be too verbose.

If you think Verilog is verbose, don't even bother trying VHDL. Perhaps is it not you, but someone in the thread is using VHDL to stand for something other than its traditional meaning of VHSIC Hardware Description Language. This gets to be very confusing.

> And if you have a trivial solution to computer optimization, please post it!

Not sure what you are referring to.

> (edited for clarity)
> > > > > > > > > > > Designing logic with the Forth VHDL
> > > > > > > > > > > 1. Write a software simulation of the design. (Forth with local varables and a MAP extension)
> > > > > > > > > > > 2. Test the design. (test program, simple compiler and simulator written in Forth)
> > > > > > > > > > > 3. Convert the simulation into a hardware definition. (ED-MGEN, ED-CTRL, ED-DFRW, ED-DCDM, ED-DSEL)
> > > > > > > > > > > 4. Link instructions to modules. (EDIT-TRAN)
> > > > > > > > > > > 5. Compile the hardware definition into logic equations. (GEN-MAP, CTRL-MAP & DFRW-MAP programs}
> > > > > > > > > > > 6. Verify the logic equations work correctly. (EDIT-DISP, SIM-R32)
> > > > > > > > > > > 7. Assign the I/O pins. (ED-PINS, able to parse the csv pin file and combine it with the schematic foot print)
> > > > > > > > > > > 8. Fit the logic equations into the device. (Diamond from Lattice Semi does this, and there are universal ones)
> > > > > > > > > > > 9. Convert the routed design into a fusemap. (Diamond)
> > > > > > > > > > > 10. Compile the OS using the OP code definition file. (MAKE-OPS)
> <clip>
> > > > > > > > > > "Forth VHDL"??? You are talking about a VHDL synthesis tool written in Forth???
> > > > > > > > > > No, that doesn't fit the description of what is going on.
> > > > > > > > > > In fact, your description doesn't seem to relate to VHDL at all.
> > > > > > > > > > I can't tell what you are talking about from this description,
> > > > > > > > > > but it sounds like it is for CPLDs, rather than FPGAs.
> > > > > > > > > > Rick C.
> Our first CNC product had three 8032 processors. One for motion, One to process files, and one for I/O.
> We replaced the motion and file processors with the RACE, (Reduced Architecture Computation Engine)
> in our new controller realased in 2000. The RACE and 4 motor controllers fit into a 1048 CPLD from Lattice.
> In 2016 we moved the design to an X02-7000 and eliminated the 8032.
> The design wasn't optomized for a LUT based part and the OS was getting too large for the address space
> so it was obvious we needed to update the design.
>
> Using verilog tools and IP express, provided by Diamond, it took about two years to move our IP to the X02,
> I've designed a wide variety of IP from servo system to networks and developed tools along to way to
> assist in making such devices. For example the software from Lattice used for the RACE could only
> achieve 80% ultization, I devised a tool that allowed us to achieve 100%,

Silicon is relatively inexpensive, these days. A project has to be very, very high volume to justify such an effort of optimization. I'm currently working on a redesign because of component optimization and I'm happy with 100% overkill on a new part, because the chip cost is only $5 each. I could use a $3 part, but it is 4 kLUT and the previous design was using 90% of a 3 kLUT part. Since it is a change of not just family, but brand, I don't look forward to spending excessive time shoehorning a design into a device. That makes alterations in the design prohibitively expensive as well.

Still, with a volume of perhaps 50,000 pieces, I might go with the smaller chip as long as I can share the footprint with the larger part.

> Designing and debuging the software for rapid processor evolution was more difficult than anticipated, as
> usual, but necessary for a reconfigurable product that could be used by small business having to compete
> with large corporate monopolies that have gained control of the regulatory bodies and are using their
> power to crush competion!
>
> > > > > > > > Ah, so he's bastardizing the term VHDL. (there's a little bit of Hugh in everyone)
> > > > > > > > > They used it on a CPLD first, and on a Lattice FPGA 7k now.
> > > > > > > > > Hugh Aguilar was involved there.
> > > > > > > > > And with all of the knowledge and experience here or elsewhere
> > > > > > > > > it could probably be ported to
> > > > > > > > > other FPGA families.
> <clip>
> > > > > > One of my early jobs involved designing a microprogrammed DMA controller using an off the shelf sequencer chip. The other, similar designs in the company all used the same assembler tool. I added a few macros and opcodes, in order to give my design additional self-test capabilities. One of the managers said that was a bad idea because no one else would know how to use this "different" tool. I realized that there are many times when standardization is preferred over technical advantages, because technical advantages are of no use if they make the design hard to work with or modify.
> > > > > >
> > > > > > In this case, there is no real utility to this "special" design process and it actually appears to be much more complex and difficult to use.
> > > > > >
> <clip>
> > > > Trying to use Forth as the language to compose logic is solving a problem that doesn't exist. We have Verilog and VHDL as the mainstream languages for logic hardware design and they work well. There are efforts to use C for hardware logic design, which is seldom used. The main justification for using C is to have a common language for hardware and software, so the dividing line is easily moved, allowing one system design to be implemented in different ways with different performance levels. In reality, this is not at all simple to do. Hardware and software require interfaces. When you change the dividing line in the code for that interface and you have to redesign everything about that interface. So it is seldom used this way.
> > > >
> > > > I stand by my statement that using Forth for both software and hardware design is of little value. The fact that you found one guy, who, six years ago, worked on using Forth as a hardware description language, does not mean it is a good idea. If that were true, why has nothing happened with it in the last six years?
> > > >
> > > > People like to think that applying Forth to a problem, will make that problem simple to solve. Digital hardware logic design is not a simple task, not because of the tools used. The tools are complicated because the problem is complicated. The existing tools have simplified the work by hiding the complexity as much as possible. This works 99.9% of the time, allowing work to proceed with reasonable speed and accuracy. I can't see where Forth is going to help this at all.
> > > > Rick C.
> Each to their own. I've spent too much time on this, got to get back to work.
> > Verilog already describes *the desired behaviour of any number of parallel processes, clocked or flow-through*.
> >I don't see a need for an exotic "Forth" front end (to generate what?).
> I don't know. You tell me.

I haven't seen anything that would seem to be a Forth description of hardware in this thread, so I can't judge if it is better than one of the existing HDLs or not. But it would need to be pretty good to make it worth learning a new tool and then to try to get it to produce VHDL that commonly available tools can use optimally.

--

Rick C.

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

SubjectRepliesAuthor
o FPGA4th

By: John Hart on Thu, 25 Nov 2021

129John Hart
server_pubkey.txt

rocksolid light 0.9.8
clearnet tor