Breaking The Three Laws


FPGA-based Prototyping: the Key to Virtual Platforms

Sunplus SNUG presentation on Hybrid Prototyping with Synopsys

I read an article recently which stated that emulation is the key to Virtual Prototypes, I would like to ride the theme wave and extend the horizon to include FPGA-based prototyping. Back in 2012, Synopsys introduced the first integrated Hybrid Prototyping solution, the combination of Virtualizer Virtual Prototypes and HAPS FPGA-based Prototypes. Our customers recognized a long time ago that the combination accelerates system bring-up by using virtual prototyping for new design blocks or CPU subsystems and FPGA-based prototyping for existing logic.

There was a presentation at SNUG Taiwan delivered by Sunplus on their highly successful use of Synopsys’ Hybrid Prototyping. Their goal was to enable an early firmware/software development platform with reduced effort and far higher performance over their existing flows. Their design under test was a mobile Audio processing DSP. Sunplus decided to create a Hybrid Prototype to accelerate the bring up of a SoC prototype. In the diagram below you can see the partition split between available RTL and the CPU subsystem. The Audio DSP in RTL on HAPS and the CPU subsystem modeled in SystemC and handled in Virtualizer.

SNUG Sunplus Design Under Test with Virtual/FPGA-based prototyping partition

Sunplus used the available HAPS transactors, pre-built transaction based bridges, between Virtualizer and HAPS to quickly interface the two environments. Each section can be tested standalone to ensure they are operational before they are bought together creating the Hybrid Prototype. It’s a very flexible setup and the CPU subsystem can be used as the generic building block for all similar setups. The RTL side is also built in a generic way where IP can be swapped in and out or expanded to larger subsystems.

Sunplus use of HAPS Hybrid Transactors

This environment enables a large amount of software to be run. This is software that is almost identical to the final SoC’s software.

Software stack to be run on Hybrid Prototype

The results speak for themselves. Boot up in less than a minute and per frame processing in seconds vs. hours!!!!

Sunplus results using Hybrid Prototype

Typically I am asked what the different between Hybrid Emulation and Hybrid Prototyping is… The answer is that Hybrid Prototyping supports real world interfaces. For example, have a look at the Hybrid IP Prototyping Kits. These uses a pre-built Virtualizer CPU subsystem to drive the DesignWare IP on HAPS which includes interfacing across a real world interface such as USB 3.0. I should point out that the design on HAPS is the actual design, not a speed bridge or buffered design. The advantage of Hybrid Prototyping is that it builds of the benefits of FPGA-based prototyping and that’s the ability to run at speed supporting high performance real world interfaces.

Hybrid IP Prototyping Kits:

The DesignWare Hybrid IP Prototyping Kits accelerate IP prototyping and software development:

  • Linux® software stack and drivers as well as a pre-verified DesignWare IP reference design      accelerate hardware and software development and allow the user to start implementing and validating IP in an SoC context in minutes
  • The VDK enables efficient non-intrusive debug control and visibility. It is compatible      with the industry’s most popular software development tools including the ARM DS-5 Development Studio, Lauterbach TRACE32® and GNU GDB
  • The IP Prototyping Kit enables designers to accelerate the integration of IP into      their target SoC, optimize the IP configuration and develop drivers and software applications with real world I/Os and hardware

Finally, sadly HAPS-80 with ProtoCompiler did not win the ARM TechCon Innovation Challenge, but we did rank highly. Here you can see me presenting a demo session at the ARM Techcon exhibit hall.

Mick Posner presents at ARM Tech Con

To SUBSCRIBE use the Subscribe link in the left hand navigation bar.

Another option to subscribe is as follows:

• Go into Outlook

• Right click on “RSS Feeds”

• Click on “Add a new RSS Feed”

• Paste in the following “”

• Click on “Accept” or “Yes” or whatever the dialogue box says.

  • Print
  • Digg
  • StumbleUpon
  • Facebook
  • Twitter
  • Google Bookmarks
  • LinkedIn