Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
03/20/07 16:42
Read: times


 
Msg Score: +1
 +1 Informative
#135411 - different feature sets, among other differences
Responding to: ???'s previous message
FPGA's are essentially RAMs with feedback. On powerup they have to be programmed, which is generally accomplished with a dedicated prom that "talks" a specific protocol the mating hardware to which is built into the FPGA in order to effect boot-up. FPGA's are typically built around logic cells based on RAM lookup tables that are used to generate logic functions. Other RAM elements are used to control routing, and the remaining RAM resources can actually be used as distributed RAM. There are often also RAM blocks for use as, ...well... RAM. FPGA's have LOTS of logic cells, hence, LOTS of registers, which facilitates synchronous design. They can be said to be register-rich, and logic-poor, though that's quite relative. Timing can be quite variable due to routing and resource concatenation delays. This can impact pinout, or, pinout can effect final timing results, which can be annoying. FPGA's have, generally, MUCH more logic than CPLD's, and therefore require much closer and more careful planning than CPLD's. Cost per "gate" (a much debated metric) is generally very low, but minimal gate counts are generally quite high, in some cases approaching 10 million gates. Unfortunately, the marketing department determines the relative gate-count.

CPLD's have electrically programmable nonvolatile memory to control their configuration and hard logic, typically configured as arrays of what amounts to a quite-large (often 16-18-inputs) AND array feeding an OR array of as many as 18 inputs, which in some cases is also programmable, and that feeding a macrocell consisting of multiplexers and buffers with a flipflop at its core. That flipflop can be configured to be used or not in the macrocell, thereby producing a combinatorial or a registered output. Macrocells can be direct outputs, or buried. They can drive pins or the input logic array, via feedback. CPLD's can be said to be logic-rich and register poor, as their register count seldom exceed their I/O pin count by much more than two. One of their strengths is that their timing is entirely deterministic and therefore, generall, though there are exceptions, their pinout is entirely deterministic as well. CPLD's allow the board design to proceed when the pinout is assigned, and, unlike FPGA's, changes in the internal logic seldom affect pinout or timing. Cost per gate is high relative to FPGA's, but the device size in gates is quite a bit smaller than even the smallest commercially interesting FPGA's.

Designing a small CPLD, e.g. 64 Macrocells, typically takes about two hours from inception to programming once requirements analysis is complete. It can take quite a bit longer, though. A very small FPGA, of 100K-gates can take a whole day, and often takes a week, depending on lots of variables.

FPGA's, being RAM-based have the advantage of faster technology than CPLD's, as integrating nonvolatile memory to hold configuration abetween power cycles makes them slower.

There is lots of IP available for incorporation in FPGA, which costs money but saves lots of time. These IP products are generally quite straightforward to implement, though there's "many a slip 'twixt cup and lip." YMMV!

RE




List of 61 messages in thread
TopicAuthorDate
FPGA            01/01/70 00:00      
   Why on EARTH would you ask that stuff here?            01/01/70 00:00      
   Triscend, Zylogic, Actel            01/01/70 00:00      
      Triscend\'s gone quiet ... is that permanent?            01/01/70 00:00      
         Triscend is dead - now it's Zylogic            01/01/70 00:00      
            re soft-cores            01/01/70 00:00      
               So far, I've not encountered one that works at all            01/01/70 00:00      
         Published ?            01/01/70 00:00      
            Published => open source=> free, as in free beer            01/01/70 00:00      
      Actel Core8051 and Core8051s - "free"            01/01/70 00:00      
         Everyone I know refuses to use actel FPGAs            01/01/70 00:00      
            A good word for Actels            01/01/70 00:00      
            Good question            01/01/70 00:00      
               what we used to do when we gave out evaluation            01/01/70 00:00      
   VHDL Tutorial            01/01/70 00:00      
      Thanks,            01/01/70 00:00      
   Don't forget to read my extremely wonderous            01/01/70 00:00      
      ... and this thread, from a few months ago ...            01/01/70 00:00      
         so ... what did you ever do?            01/01/70 00:00      
            Not really, things change            01/01/70 00:00      
               sounds like '1553            01/01/70 00:00      
                  Yep and the optical version            01/01/70 00:00      
            I got a job!            01/01/70 00:00      
               Good for You!            01/01/70 00:00      
   related question            01/01/70 00:00      
      CPLD and FPGA            01/01/70 00:00      
         I'm not so sure ...            01/01/70 00:00      
      different feature sets, among other differences            01/01/70 00:00      
         I know the differences, thus my question            01/01/70 00:00      
      what happened?            01/01/70 00:00      
         Numbers ... what are the numbers?            01/01/70 00:00      
            Think of a number            01/01/70 00:00      
               FPGA with built-in config flash?            01/01/70 00:00      
                  RAM and Chips            01/01/70 00:00      
                     Maybe, but my needs are "different"            01/01/70 00:00      
                        you need to rethink your bga figures            01/01/70 00:00      
                           It\'s a culture thing ...            01/01/70 00:00      
                              Ive had a design reverse engineered            01/01/70 00:00      
                                 Comments and FPGAs            01/01/70 00:00      
                                 I've had one outright stolen ...            01/01/70 00:00      
                                    Design Security            01/01/70 00:00      
                                       do you report them            01/01/70 00:00      
                                          Reporting Crooks            01/01/70 00:00      
                  huh?            01/01/70 00:00      
                     last I heard xilinx still liked DLLs            01/01/70 00:00      
                        Unfortunately, they're useless as PLL's            01/01/70 00:00      
                           ba humbug!!            01/01/70 00:00      
                              not quite sure what happend there            01/01/70 00:00      
                              not so fast, Jez            01/01/70 00:00      
                     Maybe it\\\'s not so odd ...            01/01/70 00:00      
                        your application requirements are odd!            01/01/70 00:00      
                           I don't recommend against 'em            01/01/70 00:00      
                              evidently "my world' is unreal            01/01/70 00:00      
                                 Perhaps it is            01/01/70 00:00      
                              DLLs and locking            01/01/70 00:00      
                                 I considered that ...            01/01/70 00:00      
                                    re: I considered that ...            01/01/70 00:00      
                                       Consistent with my prior statement            01/01/70 00:00      
                                          you should try using a costas loop            01/01/70 00:00      
                                             That\\\'s for suppressed carrier, isn\\\'t it?            01/01/70 00:00      
   did u refered altera            01/01/70 00:00      

Back to Subject List