Newsletter

Timing-driven Simulink FPGA synthesis

The latest Simulink blocksets take in top-level system timing constraints to achieve a level of performance previously achievable only with hand coded HDL

Page 1 of 3

Courtesy of DSP DesignLine

Simulink is popular among DSP designers, and FPGA vendors have taken note. These vendors have created blockset libraries that enable Simulink designs to be synthesized to an FPGA implementation. While these blocksets are useful, DSP designers have lacked an optimized method to transform the Simulink design into an FPGA platform.

Until now, the creation of an optimized HDL netlist has been a largely manual process, usually done by a different person than the algorithm designer. This hardware designer must make sure that the design meets timing requirements, is time division multiplexed (TDM) to maximally utilize resources, and has the control plane logic necessary to move data in and out of the data path.

What is needed is a tool that understands both the underlying FPGA architecture and the top-level system constraints. A tool that can automatically implement pipelining, register insertion , time-division multiplexing of scarce MAC resources, and other optimizations necessary for truly optimized HDL.. Such a tool would enable designers to make system-level modifications by editing high-level constraints, and synthesize optimized HDL with the click of a button.

The second generation of system design tools developed by FPGA vendors are beginning to incorporate such functionality. The remainder of this article illustrates the design productivity advantages of using such tools. As an example, we use a multi-channel, complex filter with changing design specs. This example can be extended to other applications such as FFTs, digital up and down conversion, and other common processing-intensive DSP applications.

Building a multi-channel, complex FIR filter using Simulink
A FIR filter is the workhorse of many DSP designs. We use it here to explore the productivity benefits afforded by the next generation of Simulink synthesis tools. Figure 1 illustrates a FIR filter in the DSP Builder advanced blockset library.


(Click to enlarge)

Figure 1. Building a FIR Filter using DSP Builder advanced blockset library.

To build a filter, the designer, the designer drags the filter block from the blockset library. The filter parameters are set in the filter GUI. Within Simulink, it is easy to add virtual sources, like sine wave sources, modulated sources, or even noise-like signal. Output signals can be terminated with virtual oscilloscopes and spectrum analyzers to view both time and frequency domain responses. In this example, the circuits surrounding the filter block are sinusoidal signal generation blocks, along with virtual oscilloscopes to view in input and output.

Generally, the first step in the design process is to simulate the frequency response within Simulink, as illustrated in Figure 2. After Simulink simulation, the design is ready to be implemented in hardware.


(Click to enlarge)

Figure 2. Simulating the frequency response of a filter within Simulink.

This is where the Simulink synthesis tools provided by FPGA vendors come into play. These tools take the Simulink representation of the design and convert that description to either HDL or a programming bit-stream for a particular FPGA.

This design flow is well understood and accepted by the DSP design community. However, it does not allow the designer to set system level constraints such as clock speed, number of filter channels, etc. at the Simulink level. Also missing has been the ability to automatically TDM the requested number of channels, insert pipeline registers to meet clock rate requirements, and incorporate control plane logic. This is still largely a manual process.



Page 2: Fast design space exploration  

Page 1 | 2 | 3







Related Content

WEBINAR
1. Achieve greater productivity and ease of use with Targeted Design Platforms enabled by Virtex-6 and Spartan-6 FPGAs

TECH PAPER
2. Simulating Vector Controlled Induction Motors Using Space Vector Modulation

TECH PAPER
3. Synthesizing Algorithms from MATLAB and Model-based Descriptions

TECH PAPER
4. AUTOSAR and FlexRay: A Tale of Two Standards

 


 Featured Jobs
Ascension Health seeking Solutions Development Analyst in St. Louis, MO

National Semiconductor seeking Principal IC Design Engineer in Santa Clara, CA

Taylor Guitars seeking Sr. Web Designer in El Cajon, CA

Covidien seeking Hardware Manager in Boulder, CO

Sierra Nevada seeking Software Engineer in Hagerstown, MD

More jobs on EETimesCareers
 Sponsor
 CAREER CENTER
Ready to take that job and shove it?
SEARCH JOBS:

 SPONSOR

 RECENT JOB POSTINGS
For more great jobs, career related news, features and services, please visit EETimes' Career Center.