Global Sources
EE Times-Asia
Stay in touch with EE Times Asia
EE Times-Asia > EDA/IP

Overcome challenges in FPGA-based prototyping

Posted: 14 Apr 2014 ?? ?Print Version ?Bookmark and Share

Keywords:system-on-chip? FPGA? prototype? RTL? debugging?

Software has come to rule system-on-chip (SoC) development. It is increasingly common for the software effort to be on the critical path of the project schedule. Only FPGA-based prototyping provides both the speed and accuracy necessary to develop and validate complex software integration prior to silicon. The exciting benefits of an FPGA-based prototype are:
???Quick fine tuning of hardware/software integration and software validation pre-silicon
???In-system device validation with real-time interfaces and in end application
???Extended register transfer level (RTL) testing and debugging

Prototyping next-generation SoCs, which contain more functionality than the capacity offered by a single FPGA, means spreading that functionality across multiple FPGAs, leading to challenging partitioning and timing closure issues. Traditional prototyping solutions manage device under test (DUT) partitioning either at the RTL level or at the gate level, but they fail to offer a predictable and efficient flow that would allow the FPGA-based SoC prototype to be brought up quickly.

This article examines FPGA-based prototyping challenges and presents an innovative methodology unifying the benefits of gate-level partitioning and RTL partitioning, providing a short, automated, and predictable path to prototype.

Figure 1: Gate-level flow vs. RTL flow.

Multi-FPGA partitioning challenges
Multi-FPGA partitioning is a complex optimisation problem that must handle multiple constraints and concurrent objectives. The partitioning challenges that have to be overcome to make FPGA-based prototyping effective are:
???Heterogeneous FPGA logic resources management
???Unbalanced interconnect management and pin multiplexing
???Timing closure issues and timing constraints generation
???Incremental flow for fast turnaround
???Full system verification and simulation
???Bug hunting methodologies

In figure 1, we compare the two traditional methodologies for multi-FPGA partitioning. Gate-level partitioning takes a full-chip synthesised netlist as input and therefore has the advantage of providing accurate logic and timing information that lets you run optimised partitioning automatically.

However, as shown in the table below, generating netlist partitions at the gate level complicates the partitioned DUT simulation, reduces debugging capabilities, and prevents incremental updates when the RTL DUT changes locally.

1???2???3???4???5???6???7?Next Page?Last Page

Article Comments - Overcome challenges in FPGA-based pr...
*? You can enter [0] more charecters.
*Verify code:


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

Back to Top