On Sat, 2011-03-05 at 02:36 -0500, V G wrote: > Just out of curiosity. >=20 > I've been reading the wikipedia pages, as well as some other websites on = the > topic of PAL/CPLD/FPGA, but I still don't understand the following: >=20 > 1. What are they? Think of them as user configurable digital asics. > 2. How do they work? Depends on which one. Google has lots of references. > 3. Why are they used? Because they fulfill the requirements of a particular design (as with any other part). > 4. How are they used? Really there are 2 main uses for programmable logic: 1) Prototyping digital designs - being user reconfigurable you can put your prototype HDL design into these parts and debug any problems. It's a step above simulation, and allows you to catch problems that sims are not that great at catching. 2) Implementing designs where going to an ASIC isn't financially viable. This means either R&D type products, where the company only needs say 100 parts, or commercial products that are "niche" enough not to justify putting it in an ASIC (another case is if the turnaround time of spinning the ASIC is too long/costly). Examples of this are broadcast video. Alot of their widgets use FPGAs, since they don't need that many of them, and the profit margins are so high as to warrant use of an FPGA. > 5. I've seen the term "parallel processing" mentioned a lot. How does thi= s > tie in with PAL/CPLD/FPGA? Well, it's digital logic, digital logic tends to be very parallel (since if your work task doesn't require the parallel benefits you'd just use a CPU/MCU and software to solve the problem). > 6. What is the difference between PAL, CPLD, and FPGA and under what > circumstances would you use each of them in? PALs are mostly dead, I wouldn't bother looking into them. CPLDs CAN be thought of as "small" FPGAs, so if your design fits in a CPLD you'd probably go with that. Otherwise go with an FPGA. That said, FPGAs have REALLY encroached the CPLD space, so much so that most designers just skip over CPLDs these days (you can buy a tiny FPGA for just a buck or 2 in quantity). > 7. Why not use a microcontroller such a PIC to do the work? Because the task at hand wouldn't either be possible or would be 2 slow in a CPU/MCU. For example, implementing a MP3 decoder that operates in real time can be very easily and cheaply implemented on a very small FPGA, doing the same in a CPU/MCU would require alot more horsepower. Decryption is another area where the inherently parallel nature of FPGAs trumps CPU/MCUs. > 8. How does each one of them compare to a microcontroller, let's say PIC3= 2, > in terms of cost, processing power, complexity, etc? Apples and oranges. That's like comparing op-amps and SRAM. > 9. Are simple development boards for them expensive? I'm interested in > messing around with them. How is programming done? No, there's lots out there that are less then $100. Google search turns up several. TTYL --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .