Section A.3. Increasing Processor Performance

A.3. Increasing Processor Performance

Some embedded designers get frustrated when the performance of their selected FPGA embedded processor is half or less of what was expected based on published performance numbers. In some cases, a designer is unable to duplicate the manufacturer's published results for a benchmark. The reason often lies with the designer's lack of understanding of how these benchmarks are produced, but it can also reflect a lack of experience with the specific processor being used and the available techniques for enhancing processor performance.

Manufacturers' Benchmarks

The industry standard benchmark for FPGA embedded processors is Dhry-stone millions of instructions per second (DMIPs). Both Altera and Xilinx quote DMIPs for most, if not all, of the available embedded processors.

The achieved DMIPs reported by the manufacturers are based on several things that maximize the benchmark results:

  • Optimal compiler optimization level

  • Fastest available device family (unless otherwise noted)

  • Fastest speed grade in that device family

  • Executing from the fastest, lowest-latency memory, typically on-chip

  • Optimization of the processor's parameterizable features

Because of all these interrelated factors, meeting the published benchmark numbers can be a challenge for designers.

Performance-Enhancing Techniques

Achieved performance might be lacking because the designer has not taken advantage of all of the performance-enhancing techniques available to FPGA embedded processors. The manufacturers obviously know what must be done to get the most out of their chips, and they take full advantage of every possible enhancement when benchmarking. Embedded designers, who are familiar with standard microprocessor performance optimization, need to learn which software optimization techniques apply to FPGA embedded processors. Designers must also learn performance-enhancing techniques that apply specifically to FPGAs.

The design landscape is certainly more complicated with an FPGA embedded processor. The incredible advantages gained with this type of design are not without trade-offs. Specifically, the increased design complexity is overwhelming to many, including experienced embedded or FPGA designers. Manufacturers and their partners put significant effort into training and providing support to designers experimenting with this technology. Taking advantage of a local field applications engineer is therefore essential to FPGA embedded processor design success.

As an introduction to this type of design, a few performance-enhancing techniques are highlighted in the following sections. Specific references are based on research of Xilinx FPGAs and tools, although users of Altera processors are likely to have access to similar features and techniques.

    Practical FPGA Programming in C
    Practical FPGA Programming in C
    ISBN: 0131543180
    EAN: 2147483647
    Year: 2005
    Pages: 208

    Similar book on Amazon © 2008-2017.
    If you may any questions please contact us: