FONT SIZE : AAA
There are numerous options for designers in selecting a hardware platform for custom electronics designs, ranging from embedded processors, application specific integrated circuits (ASICs), programmable microprocessors (PICs), FPGAs to programmable logic devices (PLDs). The decision to choose a specific technology such as an FPGA should depend primarily on the design requirements rather than a personal preference for one technique over another. For example, if the design requires a programmable device with many design changes, and algorithms using complex operations such as multiplications and looping, then it may make more sense to use a dedicated signal processor device such as a DSP that can be programmed and reprogrammed easily using C or some other high level language. If the speed requirements are not particularly stringent and a compact cheap platform is required, then a general purpose microprocessor such as a PIC, AVR, or MBED would be an ideal choice. Finally, if the hardware requirements require a higher level of performance, say up to several hundred megahertz operation, then an FPGA offers a suitable level of performance, while still retaining the flexibility and reusability of programmable logic.
Other issues to consider are the level of optimization in the hardware design required. For example, a simple software program can be written in C and then a microprocessor programmed, but the performance may be limited by the inability of the processor to offer parallel operation of key functions. This can be implemented much more directly in an FPGA using parallelism and pipelining to achieve much greater throughput than would be possible using a microprocessor. A general rule of thumb when choosing a hardware platform is to identify both the design requirements and the possible hardware options and then select a suitable platform based on those considerations. For example, if the design requires a basic clock speed of up to 1GHz then an FPGA would be a suitable platform. If the clock speed could be 3-4MHz, then the FPGA may be an expensive (overkill) option. If the design requires a flexible processor option, although the FPGAs available today support embedded processors, it probably makes sense to use a DSP or microprocessor. If the design requires dedicated hardware functionality, then an FPGA is the route to take.
If the design requires specific hardware functions such as multiplication and addition, then a DSP may well be the best route, but if custom hardware design is required, then an FPGA would be the appropriate choice. If the design requires small simple hardware blocks, then a PLD or CPLD may be the best option (compact, simple programmable logic); however, if the design has multiple functions, or a combination of complex controller and specific hardware functions, then the FPGA is the route to take. Examples of this kind of decision can be dependent on the complexity of the hardware involved. For example, a high performance signal processor with multiple parallel tasks will probably require an FPGA rather than a PLD device, simply due to the complexity of the hardware involved. Another related issue is that of flexibility and programmability. If an FPGA is used, and the resources are not used up on a specific device (say up to 60% for example), if a communications protocol changes, or is updated, then the device may well have enough headroom to support additional features, or updates, in the future.
Finally, the cost of manufacture will be important for products in the field, as well as where the device is deployed (in terms of the overall weight, power requirements, footprint, and volume). Also, the need for upgrading firmware may mandate an FPGA to allow this to be done easily. The use of an FPGA also allows much higher performance, particularly on high speed links or memory, enabling the design to be somewhat tolerant of future changes.
Manufacturer:Xilinx
Product Categories: CPLDs
Lifecycle:Active Active
RoHS:
Manufacturer:Xilinx
Product Categories:
Lifecycle:Obsolete -
RoHS:
Manufacturer:Xilinx
Product Categories: Embedded - FPGAs (Field Programmable Gate Array)
Lifecycle:Active Active
RoHS:
Manufacturer:Xilinx
Product Categories: FPGAs
Lifecycle:Active Active
RoHS:
Manufacturer:Xilinx
Product Categories:
Lifecycle:Any -
RoHS: -
Support