BDTI High-Level Synthesis Tool Certification Program™
|
||
| HOME << FREE INFO << |
|
|
BDTI Certified™ Results for the Synfora PICO High-Level Synthesis ToolUsed in Conjunction with a Xilinx Spartan-3A DSP 3400 FPGA and the Xilinx ISE and EDK Tools
About Synfora PICOSynfora’s PICO is a high-level synthesis (“HLS”) tool that takes C as its input and generates device-specific RTL for FPGAs or ASICs. BDTI used PICO in conjunction with Xilinx’s ISE and EDK tool chain to implement two example applications (“workloads”) on a Xilinx Spartan-3A DSP 3400 FPGA. PICO was used to go from C code to RTL, and Xilinx’s ISE and EDK tool chain was used to convert the resulting RTL to the final bitstream that was used to program the FPGA. About the BDTI High-Level Synthesis Tool Certification Program™For details of the methodology of the BDTI High-Level Synthesis Tool Certification Program, click here. Quality of Results MetricsThe tables below show the BDTI High-Level Synthesis Tools Certification Program quality of results metrics for the Synfora PICO HLS tool used in combination with the Xilinx RTL tools to target a Spartan-3A DSP 3400 FPGA. (Usability metrics are covered in the next section.) The workload implementations used to obtain the quality of results metrics were developed as follows:
Quality of Results Metrics for the BDTI Optical Flow WorkloadThere are two Operating Points associated with the BDTI Optical Flow Workload, each of which uses the same algorithm:
BDTI High-Level Synthesis Tool Certification Program
Results
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Platform |
Chip Unit Cost (Quantity 10,000) |
Chip Resource
Utilization |
|
Synfora PICO plus Xilinx RTL tools targeting the Xilinx XC3SD3400A FPGA |
$26.65 |
39.6% |
|
Texas Instruments software development tools targeting the TMS320DM6437 DSP processor |
$21.25 |
N/A (a minimum of 12 DSPs would be required to meet this operating point) |
|
Platform |
Chip Unit Cost(quantity 10,000) |
Maximum Frames per Second (FPS) |
Cost per FPS |
|
Synfora PICO plus Xilinx RTL tools targeting the Xilinx XC3SD3400A FPGA |
$26.65 |
204 fps |
$0.13 |
|
Texas Instruments software development tools targeting the TMS320DM6437 DSP processor |
$21.25 |
5.1 fps |
$4.16 |
The BDTI DQPSK Receiver is a fixed workload with a single Operating Point defined as processing an input stream of complex modulated data at 18.75 Msamples/second with the receiver chain clocked at 75 MHz. The corresponding DQPSK demodulated output bitstream is 4.6875 Mbits/second. The objective for this workload is to minimize the resource utilization required to achieve the specified throughput.
|
Platform |
Chip Resource Utilization |
|
Synfora PICO plus Xilinx RTL tools targeting the Xilinx XC3SD3400A FPGA |
6.4% |
|
Hand-written RTL code using Xilinx RTL tools targeting the Xilinx XC3SD3400A FPGA |
5.9% |
The following tables show usability metrics results for PICO from the BDTI High-Level Synthesis Tool Certification Program. The usability metrics assess ease of use and productivity aspects of the Synfora PICO high-level synthesis tool used in combination with the Xilinx RTL tools, in comparison with the DSP processor software development tools. These are assessed in a qualitative manner, and for each aspect one of the following scores is assigned by BDTI:
For the DSP processor, since a single TI-provided tool chain is used, a single score is provided for each usability metric. In contrast, since PICO was used with the Xilinx RTL tools, three scores are provided:
In its usability analysis, BDTI considers the overall design process for a complete project flow starting with a C language algorithm reference implementation and ending with a real-time implementation on a processing platform (either an FPGA or DSP processor). The scores provided are primarily based on BDTI’s experience in implementing the BDTI Optical Flow Workload on the DSP and FPGA platforms.
As part of BDTI’s evaluation of PICO, a team of experienced DSP software engineers spent multiple engineer-months learning and using PICO, designing an independent BDTI Optical Flow Workload implementation from the ground up, integrating the BDTI Optical Flow application into an FPGA (including connecting to external memory and video I/O), and testing the independent implementation. The BDTI engineers who worked with PICO are experienced “hardware-aware” DSP software engineers (meaning that they understand hardware architecture concepts such as pipelining and latency), but they have limited knowledge of FPGA RTL design and no previous experience with HLS tools for FPGAs. In other words, the BDTI engineers who worked on the PICO FPGA design had to learn to use PICO by taking Synfora provided training and reading the documentation.
BDTI engaged an experienced FPGA engineer to assist with the aspects of the PICO based FPGA implementation involving the Xilinx FPGA tools and RTL design (e.g., using the RTL output generated by HLS tool and integrating it onto the FPGA). Because an FPGA engineer experienced in both RTL design and Xilinx tools completed this effort, BDTI did not assess learning to use the Xilinx tools as part of the usability metrics. However, the Xilinx tools installation was performed by a DSP software engineer, thus Out-of-the-Box Experience was assessed and given a score.
Similarly, because experienced DSP software engineers developed the DSP processor implementation, BDTI did not assess learning to use the DSP tool chain as part of the usability metrics.
Usability metrics related to the effort required to implement the application and modification of the reference code will vary by application (sometimes significantly). In particular, the BDTI Optical Flow Workload requires unusually extensive structural modifications for optimized performance on the DSP processor. The choice of application will have the most impact on the following metrics:
A description of the individual usability metrics follows.
BDTI considers factors such as: the number of changes, the extent to which the tools automate implementing these changes, the level of difficulty for the developer in incorporating the changes and the level of difficulty in debugging and testing the changes.
|
Platform |
Required Skill Set |
|
Synfora PICO high-level synthesis tool |
|
|
Xilinx RTL tools |
|
|
TI DSP tools |
|
The above table summarizes the skills required to effectively use the PICO high-level synthesis tool and Xilinx RTL tools for FPGA implementations, and the DSP tools for DSP processor implementation.
|
|
Out-of-Box Experience |
Ease of Use |
Completeness of Capabilities |
Quality of
Documentation |
|
Combined Synfora PICO plus Xilinx RTL tools rating¹ |
Fair |
Good |
Good |
Very Good |
|
Texas Instruments software development tools rating² |
Good |
Very Good |
Very Good |
Very Good |
¹Synfora PICO plus Xilinx RTL tools targeting a Xilinx XC3SD3400A FPGA
²Texas Instruments software development tools targeting a TMS320DM6437 DSP processor
The above table provides qualitative productivity metric scores for the Synfora PICO high-level synthesis tool. Note that Synfora PICO tools include an overall score (in bold) followed in parenthesis by:
Since the DSP processor implementation used a single tool chain throughout the entire flow, a single score is provided.
|
Productivity Metric |
Efficiency of Design Methodology |
Extent of Modifications Required to Reference Code |
|||
|
Learning to use the Tool |
Design & Implementation (First Compiling Version) |
Design & Implementation (Final Optimized Version) |
Platform Infrastructure Development |
||
|
Combined Synfora PICO plus Xilinx RTL tools rating¹ |
Good |
Good |
Good |
Good |
Good |
|
Texas Instruments software development tools rating³ |
NA; |
Excellent |
Good |
Good |
Fair |
¹Synfora PICO plus Xilinx RTL tools targeting a Xilinx XC3SD3400A FPGA
²NA = Not Applicable
³Texas Instruments software development tools targeting a TMS320DM6437 DSP processor
The above table provides the qualitative productivity metric scores for the Synfora PICO high-level synthesis tool. Note that Synfora PICO tools include an overall score (in bold) followed in parenthesis by:
Since the DSP processor implementation used a single tool chain throughout the entire flow, a single score is provided.
The Certification Program uses the Xilinx XC3SD3400A (Spartan-3A DSP 3400) FPGA combined with Xilinx ISE and EDK tools version 10.1.3 and the Xilinx XtremeDSP Video Starter Kit. The Synfora PICO high-level synthesis tool version PICO Extreme FPGA 09.03-1 was used in conjunction with the Xilinx ISE and EDK tools to target this FPGA platform.
Spartan-3A DSPs are based on Xilinx’s low-cost Spartan-3A family, but have a number of enhancements to accelerate digital signal processing. Spartan-3A DSP chips have double the block RAM (“BRAM”) memory of other Spartan devices and incorporate hard-wired DSP data paths, called “DSP48A slices.” Each DSP48A slice contains an 18x18 multiplier with pre-adders and an accumulator, among other features. The XC3SD3400A includes 126 DSP48A slices that can be clocked at up to 250 MHz, and roughly 54,000 logic cells.
The target DSP platform was a Texas Instruments DM6437 DSP processor combined with TI Code Composer Studio tools suite version 3.3.83.13, Code Generation Tool version 6.1.9 and the TI Digital Video Evaluation Module. The Texas Instruments DM6437 includes a 594 MHz TMS320C64x+ DSP core along with a video processing subsystem (i.e., video hardware accelerators). The hardware accelerators would not be of benefit in implementing the BDTI Optical Flow Workload, and thus were not used by BDTI.
|
|