United Business Media EE Times


Search

HOMEMARKET INTELLIGENCE UNITFORUMSDESIGNNEW PRODUCTSCAREERSBLOGSCONTACTEVENTSSIGN UP!RSSMost Popular contentTrusted Sources

 


For SoC design with C++, success lies in the details
Print this article Email this article Reprints RSS Digital Edition

EE Times


>As a consultant on the use of Verilog and VHDL for electronic design, I've observed firsthand the ever-increasing challenges designers face to implement system-on-chip (SoC) designs with current HDL-based flows and software tools. As the industry explores options to extend existing languages and develop new tools, we need to review design-flow details to ensure we gain the full benefit of any new capability.

It has been common practice to use only register-transfer-level (RTL) models written in Verilog or VHDL. HDL-based flows and tools are used to further define and debug designs. However, the challenge of accurately implementing SoC designs on schedule has increased significantly with their growing size and complexity.

There's an active debate under way on how to best bridge the gap between system-level design and hardware implementation. Efforts to extend capabilities of existing HDLs to better define and verify the architectural level of designs is an obvious benefit for the many engineers well-versed in using HDLs.

Alternatively, since SoC designs typically contain a significant software component, it has become critical for complete and consistent models to ensure that hardware and software elements ultimately match. Expanding C++ to support hardware design concepts, like concurrency and time, would address the need for higher-level models and enable system architects to better examine trade-offs between software and hardware implementations.

At first glance, one could simply map tools that support C++ to an existing HDL-based design flow. There are numerous free or inexpensive simulation tools available to simulate designs, and lint tools to check C++ language syntax.

But specialized rule checking is needed to support code refinement when the design proceeds from the architectural to the behavioral and RT levels.

Lint tools prove insufficient, since a designer can write syntactically correct C++ code (so that it compiles without errors) while semantics needed for hardware design are not recognized. Those errors are found at run-time, with resultant behavior ranging from run-time error messages to a hung simulation or core dumps. All of that is unacceptable.

This issue does not exist in an HDL-based flow. Verilog and VHDL were created specifically for hardware design-the semantics are "built in."

Expanding C++ for SoC design shows great promise. But let's not overlook the details. There's a need for robust rule checking that includes coverage for hardware simulation semantics and synthesis rule sets. The tedious task of reviewing code could quickly deter any designer from reaping the benefits a flow based on C++ may provide.

MIke Baird is President of Willamette HDL Inc. (Beaverton, Ore.).





The views and opinions expressed in this column are strictly those of the author and should not be taken as an editorial position of EE Times or any of its other editors, publications or Web sites.


  Free Subscription to EE Times
First Name Last Name
Company Name Title
Email address
  Click here for your Free Subscription to EETimes Europe
 
CAREER CENTER
Looking for a new job?
SEARCH JOBS
SPONSOR

RECENT JOB POSTINGS
CAREER NEWS
Engineers take a bad year in stride
According to the findings of the 2009 EE Times Global Salary & Opinion Survey, generally, engineers are satisfied with their career choices.

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


All White Papers »   

 
Education and
Learning


Learn Now:












Home | About | Editorial Calendar | Feedback | Subscriptions | Newsletter | Media Kit | Contact | Reprints|  RSS|   Digital|  Mobile
Network Websites
International
Network Features




All materials on this site Copyright © 2009 TechInsights, a Division of United Business Media LLC All rights reserved.
Privacy Statement | Terms of Service | About