Global Sources
EE Times-India
Stay in touch with EE Times India
EE Times-India > FPGAs/PLDs

Fundamentals of core-based FPGA design (Part 1)

Posted: 22 Aug 2011     Print Version  Bookmark and Share

Keywords:RISC  SRAM  FPGA 

Altera Corp.'s Nios-II and Xilinx Inc.'s MicroBlaze processors are examples of firm processor cores. Hard cores are a fixed-function gate-level IP within the FPGA fabric. Xilinx's Virtex-II Pro and Virtex-4 405 PowerPC core are examples of a hard processor core. Figure 14.2 above shows a hard and soft processor example.

The following lists present a generalized summary of the advantages and disadvantages for each of the FPGA processor core types (soft, firm and hard).

Soft core pros and cons
– Generally a much higher level of portability
– Generally most affordable
– More low-cost/free sources due to easier implementation
– Relatively easy to target to specific architectures
– Relatively easy to modify

– Possibility of portability between architectures
– Much lower level of optimisation resulting in: lower performance levels, higher resource utilisation
– May require more design effort
– Likely less extensive simulation results for specific architectures
– Likely less documentation for specific architectures
– Differences in tool sets used for design implementation can affect results significantly and are not always predictable

Soft core pros and cons
– Likely well-optimised for targeted architecture
– Relatively easy to modify
– Performance, resource utilisation and power consumption information generally well-characterized
– Generally provide a high level of confidence in functionality / performance
– Design already fielded and verified
– Easy to test in target environment
– Access to some level of simulation resources (testbenches and results)
– Some level of documentation available
– Potential access to design expertise

– There are limited incentives for manufacturer-developed firm cores to be highly portable
– Level of documentation, design configurability, simulation support and access to original design team may be variable
– Access to advance design assistance from IP source may be fee-for-service depending on the negotiated terms

Soft core pros and cons
– Well documented, highly-optimised, high-performance, reliable fixed implementation
– Similar to purchase of a standard IC component
– No delay, immediate access to functionality
– High level of confidence in functionality, known errata
– Measured and well-characterized
– Functionality
– Performance
– Power consumption

– Generally so highly-optimised and fine tuned, difficult to port to other targets with equivalent performance or at an affordable price point
– Strong incentive for provider to try to strongly tie to their architecture and make it less attractive to port to alternative architectures
– Fixed implementation, unable to modify core implementation or add additional instances if required without switching devices within the family

Many factors influence the decision to implement the processor functionality of a design within an FPGA. A critical factor affecting FPGA processor implementation is the ability to reuse or port existing baseline code. The design team may have existing investments in software, tool sets and processor architecture familiarity.

It is a common practice for a software team to leverage both knowledge and reuse from design to design. There will need to be compelling technical or cost advantages for switching processor cores when significant changes in software are required.

A common design situation involves migrating an existing design that was implemented with a discrete processor and an FPGA in the same system to an implementation based on a processor embedded within the FPGA.

If the same processor core can be implemented within the FPGA as was implemented in the discrete processor design, significant design leverage can occur. The advantages of implementing an embedded FPGA processor in this situation includes access to existing well-defined functional requirements, well-known processor performance requirements and existing processor architecture.

For example, if the current discrete processor is a PowerPC-based processor, then the FPGA embedded processor may be able to be implemented within a hard core 405 PowerPC within Xilinx's Virtex family. Even if the FPGA processor core is different from the discrete processor core there may still be adequate justification for switching cores.

A potential reason for switching to an FPGA embedded processor is a need to achieve tighter integration between the software and hardware design elements. An implementation of an FPGA embedded processor may be able to reduce system cost and potentially increase performance. The potential for increased performance is a direct result of being able to optimise the design implementation to meet the specific system requirements with an optimised architecture.

An important potential benefit of implementing a design with an FPGA embedded processor is the ability to reduce risk of obsolescence. Traditionally, discrete processors are subject to end-of-life when the component technology becomes too old or the volume of sales drops below a certain threshold.

 First Page Previous Page 1 • 2 • 3 Next Page Last Page

Comment on "Fundamentals of core-based FPGA desi..."
*  You can enter [0] more charecters.
*Verify code:


Visit Asia Webinars to learn about the latest in technology and get practical design tips.


Go to top             Connect on Facebook      Follow us on Twitter      Follow us on Orkut

Back to Top