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

C++ verification class library rolls for SystemC

Posted: 23 Feb 2007 ?? ?Print Version ?Bookmark and Share

Keywords:SystemC? C++? SCV? Jeda? verification?

Filling what it sees as missing capabilities in the SystemC verification environment, Jeda Technologies Inc. is introducing NSCv, a C++ verification class library for SystemC. The offering supplements the open-source SystemC Verification Library (SCV) with functional data coverage, dynamic threading and memory management capabilities.

NSCv is designed to address fundamental weaknesses of SystemC-based functional verification. "We're adding advanced capabilities," said Steve Pollock, VP of marketing and sales, "and we're building upon SCV with a much more complete superset."

Jeda once had its own verification language, but turned its attention to SystemC during the past two years. About a year ago, Jeda rolled out NSCa, a solution that adds signal-level assertions and transaction-level assertions to SystemC. NSCv can complement NSCa but doesn't require it, Pollock said.

Available for free
As an open-source offering, SCV is available free. But "it's commercially not supported," Pollock said. "We're helping to evolve it and bring in more verification components." While SystemC itself is open-source, Pollock noted, all the major EDA vendors have commercially supported versions of SystemC.

Functional data coverage helps users instrument their designs so the designs can be controlled and observed, said Pollock. It lets designers collect and analyze user-specified metrics to gain better insight into models and testbenches. It can point out functional weaknesses in models that cannot be covered with C++ code coverage tools, and it provides metrics for measuring testbench quality.

The NSCv functional data coverage solution includes range coverage, which gauges whether a range of values is covered for a group of signals, as well as cross coverage, transition coverage and group coverage, which checks the coverage for a collection of coverage points.

Dynamic threading
Dynamic threading is important, Pollock said, because today's hardware and software involve multithreading environments. NSCv claims an advanced dynamic threading capability with a shared pointer implementation that simplifies the ability to describe concurrency. Three new constructs allow finer-grained control over fork-join processes. Finally, NSCv offers memory management and garbage collection capabilities that support dynamic threading.

NSCv is available today. Jeda declined to state a price.

- Richard Goering
EE Times

Article Comments - C++ verification class library rolls...
*? 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