I didn't. I said it is a DSP with large memory, which it is.
You first give a part, the C5535, as the chip with big memory, then it
becomes the C5532 which is less memory and less expensive. I can't tell
what you are talking about when the subject changes.
The fact that most FPGA don't have flash is fine ... but ... there must
be a decent bootloader inside. In one of the upcoming projects it must
be able to bootload via USB. So the device must wake up with a certain
minimum in brain functionality to handle the USB stuff. With FPGA that
can become a challenge unless you provide a serial memory device (which
adds cost).
No, you won't find any FPGAs which can wake up talking over USB. But
you will find FPGAs with internal Flash if you wish to design a USB
bootloader.
Both of the ones I gave you are $3. The DSP costs $3.02 and the MSP430
is $3.09. These are over-the-counter no-haggle prices. Can a $3 iCE40
device emulate a TMS320 or a big MSP430? I can't tell because I don't
know this Lattice series and I am not an FPGA expert. But it sure looks
like they'd have a hard time.
No, the C5535 part is not $3. That is what I mean by two part numbers.
Because you wrote yesterday, quote "For $3 however, you can get a chip
large enough for a CPU (with math) and room for your special logic".
I said "a CPU" not "any CPU". I never said it would duplicate a
commercial device. I'm talking about function.
As I said, I do not have any hammered out ones yet but it'll come. This
was just about you $3 claim. So I gave some examples of devices that
cost $3.
Yes, and there are FPGAs in that price range which can be used to
implement a CPU plus other logic.
Yup. Hence the need for availability of local programmer talent. Less
local availability means potential problems. That is because (where
possible) I like to use architectures I am familiar with.
Programmer talent means longterm. For example, if a client has an issue
with an 8051 design long after the original programmer has moved on I
could find programmers within a 10-mile radius. Try that with an FPGA.
In San Jose it may be possible but not out here.
I can't speak of your environment. I know my friend of many years
stayed away from FPGAs in spite of the fact that he is a very capable
designer. He finally paid me for a week of FPGA design work which I
then turned over to him and helped him get started with HDL. It's not
hard at all. You don't really need anyone special. That is the sort of
thinking I am trying to dispel.
Another example. A software designer came to a newsgroup looking for
info on programming FPGAs. He used the mindset of a software guy and
wanted to do a "hello world" program. We tried to explain to him that
hardware isn't software and HDL isn't C. But he persisted and I gave
him advice over a week or so. I tried to turn it into a consulting gig
but his bosses didn't want to pay the bucks. He ended up doing just
fine with his software mindset and convinced his boss to pay me $500
over my protests. I cashed the check when it came.
The point is that FPGAs are not so hard that you need a unique talent to
design them. That may have been true 10+ years ago, but they are very
mainstream now and much easier to work with. I bet even *you* could do
an FPGA design, lol.
I don't care where you are located, if you can't find an FPGA designer,
you aren't looking very hard.
Ok. I have no complaints on prices. Their lead time can be a problem.
I had a conversation, disti, manufacturers guy and me. I was
complaining about a 14 week lead time and he bragged that a 14 week lead
time was *good*. I give my customers a 10 week lead time... see the
problem? Digikey sell them now so it is not such an issue. I even
ended up speaking with a buyer or planner who was coordinating the
shipment of an order last spring. Once you reach them they are very nice.
Mostly I need 40-50ksps. But 20 is often ok.
I haven't done 12 bits at 50 ksps, but I expect it is doable. Just
cross the t's and dot the i's.
If you can keep substrate noise in check it could work. Try to remain
fully differential as much as you can. Not sure if FPGA design suites
still let you hand-place blocks so you can avoid making a big racket
right next to the ADC area.
*Everything* in an FPGA makes noise, it's all digital. Yes you can hand
place logic if you want. That is the sort of thing best done at the end
if possible when you are ready to finalize the chip. But what would you
have in an FPGA design that makes more noise than anything else? Each
logic block is very small and has a pretty low power consumption. It
would be the I/O that has significant power spikes and you have total
control over that.
In most of my apps I need much of the functionality that a decent uC
affords, like the $3 device from the MSP430 series I mentioned.
If you need 256 kB of memory then you won't reach a $3 price tag. If
you need something more like the low end processor you mentioned that
might be doable in the low end FPGAs. They have block RAM, but it
scales with the size of the chip. When you have a specific requirement
we can look and see what matches.
Sometimes it would also be ok if there were similar pre-cooked FPGA
routines (I/Q signal processing, non-linear filters et cetera).
There are design tools that will generate function blocks, filters, etc.
I have not had to deal with them. The DSP stuff I have done I just
coded up in HDL.
No disagreement there, programables have come a long way since the days
of GALs. Which I never used because they were expensive power guzzlers.
One other challenge that needs to be met in most of my cases is
longevity of the design. A FPGA would have to remain available for more
than just a few years. For example, one of my uC-based designs from the
mid 90's is still in production. Since I kind of had a hunch that this
would happen I used an 8051 family uC. Is there something similar in the
world of FPGA?
That is typically not a problem, but pick a device that is relatively
new to start with. The vendors are *all* about their latest and
greatest products. I guess they need a critical mass of design wins up
front which they get revenue from over the life of the part. So they
push the newest stuff and let you ask about the older parts.
I don't think there is anything like the 8051 other than the 22V10
perhaps. The 8051 is an anomaly in the MCU world. You won't see a DSP
equivalent for example. So far users typically want more, more, more
from FPGAs. So a stationary design would not have a market. Even
though there are ever larger markets for low end parts, they keep
redesigning them to make them cheaper. When they do that they add
incompatibility because it doesn't affect the bulk of the users,
recompile and you are good to go. But pin compatibility, no, that just
doesn't exist other than within a single family. Fortunately product
life is typically not an issue.