0% found this document useful (0 votes)
119 views4 pages

Software Assisted Hardware Verification: About Coverify

Coverify is a group of verification engineers who specialize in hardware verification using modern methodologies. They have expertise in various domains including verification methodologies, EDA tools, hardware architectures, and programming languages. Coverify develops verification IP, system level testbenches, and custom verification solutions to help clients boost verification coverage. They also created Vlang, an open source verification language based on D that supports UVM and enables efficient multicore verification.

Uploaded by

puneetScheme
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
119 views4 pages

Software Assisted Hardware Verification: About Coverify

Coverify is a group of verification engineers who specialize in hardware verification using modern methodologies. They have expertise in various domains including verification methodologies, EDA tools, hardware architectures, and programming languages. Coverify develops verification IP, system level testbenches, and custom verification solutions to help clients boost verification coverage. They also created Vlang, an open source verification language based on D that supports UVM and enables efficient multicore verification.

Uploaded by

puneetScheme
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 4

o

C verify

Software Assisted
Hardware Verification

About Coverify
We are a group of Verification Engineers
accepting challenges from designers
and challenging them back everyday.
Experting in modern test & verification
methodologies, when needed, we invent verification languages like Vlang.
Founded in 2010, we are a healthy mix
of young and veteran RTL & System
Level Verification professionals.

Domain Expertise
Verification Methodologies: UVM,
VMM

OVM,

EDA Expertise: PLI, VPI, VHPI, TCL, Discrete


Event Simulators, Virtual Platforms,
Coverification
Abstraction Expertise: RTL, TLM, ESL, Heterogeneous
Architecture Expertise: ARM, MIPS, Xtensa,
Xilinx, Altera, NoC
Hardware Protocols: AMBA, Wishbone, Ethernet, HDMI, SONET/SDH, Fiber Channel, Home Networking
Software Expertise: Object
Oriented
Programming, Functional Programming, Metaprogramming, Concurrent
Programming,
Generic/Generative
Programming
Language Expertise: C/C++, SystemC, SystemVerilog, Vlang, VHDL, Python, Ruby

o
C verify

F you need Verification and ESL professionals with strong


hardware background as well as software expertise, we will
not let you down. You can rely on us for creating Verification Infrastructure, integrating your software stack with
hardware verification and for boosting your Verification Coverage.

Test Bench Development:


Test bench is a software and at Coverify, we keep that in mind and develop our methodologies around that objective. This primary objective
enabled us in mastering:
Heterogeneous TB Development: Modernized verification environments are complex and aspired towards reuse of components
designed at various levels of abstraction and languages of choice.
At Coverify, we master heterogeneous test bench development
where tools and languages like MATLAB, C, C++, SystemC, SystemVerilog, VHDL, Vlang etc are seamlessly integrated resulting in
a productive test bench.
System Level TB Development: Coverify is a system level verification
company and exactly understand the business of verification. We
develop complete system models (a car door behavior as an example) to provide better verifiability and use case verification on
your SoC.
Explorative TB Development: If you want to perform a design space
exploration on your ESL model or RTL we are there to develop
a verification environment which will enable exploration for you
which will result an optimized and cost eective design.

Custom Verification IP Development:


The software nature of the test bench provides pleasurable experience
of coding and without reference models, this experience will be full of
glitches. At Coverify we provide Verification IPs exactly for this reason.
Optimized, fast, abstract and excellently planned VIPs will never steal
you pleasure of coding.
Standard Reference Model Development: Starting from abstract objects down to bus functional models and expanding from modern
object orientation down to traditional, we design standard reference models according to your taste and need.

http://coverify.com

+91-124-4086612

[email protected]

Why Coverify?

k
k
k
k
k
k
k

We bring multidisciplinary expertise at


your doorstep.
Having ported the complete UVM
platform to Vlang, we understand the
strengths and pitfalls of UVM better
than others.
We have a vast set of homegrown tools
to help achieve very high verification
coverage in a short duration.
We develop your reference models in
C++. That is the best way to ensure that
your IP will not get outdated for a long
period of time.
We can help you enable concurrency in
your Verification and ESL platforms.
We deliver incredible service. When you
interact with Coverify, you are interacting with experienced developers. No
flu! No bullshit!!
We deliver awesome code, and we
do not hide our code in the obscurity of code encryption. Check our
github repository at http://github
.com/coverify

Collaborate with Coverify

k
k
k

The ever widening Verification Gap and


the advent of Concurrency in software are
elephants in the drawing room that require immediate attention.
We believe the way forward is to collaborate and create open source solution.
We invite you to Fork us on Github.
http://github.com/coverify

UVM Testbench Architecture Development: We develop the UVM architecture of the testbench with a focus on the object oriented nature of each component.
System Level Model Development : System Level TB needs system
level reference models. Be it a car door, wheel, steering, mobile
channel model et.al., we are expert in modelling natural world.

The Verification & The Methodology:


Every verification concept exploited in modern SoC verification is directly derived from modern software engineering and embedded system
testing. That is the most dominant reason behind why you want your
test bench to be a software - answer is because you want to use novel
methodologies from software engineering. At Coverify we expertise this
- customizing a unique verification methodology from modern Software
Engineering, which is perfect for your product line, your expertise and
more importantly you.

Methodologies
Model Based Verification: Whether there is an explicit reference model
in your TB or not, every verification is model based. Coverify understands this methodological aspect very well and enable this using Standard Reference Model or UVM. At Coverify, we take full advantage of software nature of TB and reference models to implement dierent identified aspects of design functionalities at various levels of abstraction and use cases. These aspects are made
easily available through dierent soft access layer which allows
the verification engineer to attack the RTL barbarically.
System Level Verification: System Level verification becomes important when you are architecting your system or verifying architecture use cases. Coverify enables System Level verification methodology through heterogeneous verification environment development and environment modelling.
Design of Experiments: Design of experiment is a compulsory modern
trend in safety critical application in which to prove or to disprove
some assumption, experiments are designed and performed on
the device using system level test environment. We expertise in
design of experiments to prove or disprove certain hypotheses for
the SoC.

r
Fo
e
m

Connect with Coverify

on

http://www.linkedin.com/company/coverify
http://twitter.com/coverify
+91 124 4086612

Skype ID

coverify

Address

ub

http://coverification.com

Tel

tH

Blog
Twitter

Gi

http://coverify.com

Linkedin

o
C verify

Website

A-238, South City I, Gurgaon, India - 122007

http://coverify.com

+91-124-4086612

[email protected]

lang
Open Source Verification Language
with UVM and MULTICORE Support

About Vlang

Moore's law is dead! Long live Amdahl's law!!

Vlang is an open source, high productivity, high


performance, multi-paradigm verification language built on top of D programming language.

Does your Verification IP Scale?


Till year 2005 (thanks to the good health of Moore's Law back then), processor speed would double every year and a half. As a result you did not
have to do anything to get a faster verification environment for your next
(bigger) chip. But since then, processors have stopped running faster.
Instead processor companies are putting more processor cores in the
servers. In another couple of years, servers running your functional regression are projected to have more than a hundred processor cores.
And if you do not change the way you verify, you will be utilizing precisely one of these hundred processors.
You want to change that? Give Vlang a try

Documentation
http://vlang.org

Development
http://github.com/coverify/vlang
http://github.com/coverify/vlang-uvm

Maintainer
Puneet Goel <[email protected]>

o
C verify

Verification with Vlang


Even as the chip complexity keeps increasing, we continue to rely on
same old RTL methodology to design our chips. As a result the abstraction gap between the design and the specification is increasing exponentially.
Vlang attempts to bridge this gap by providing you a high productivity
and high performance verification environment.

SystemC

Verilog

VLANG

SystemVerilog

COVERAGE

Multicore Vlang enables concurrent programming. End user can fine-tune the number
of concurrently running threads at module
level. Vlang also enables concurrency at
a higher abstraction by allowing multiple
simulators running in parallel.
Constrained Randomization Full blown and eicient. Concurrency enabled.
UVM Compliance Word-to-word translation of
SystemVerilog UVM. More eicient and
user-friendly due to generic programming.
Object Oriented Programming Support for function/operator overloading.
Safety and Productivity Automatic Garbage Collection. Exception Handling. Unittests.
Systems Programming Allows low level access to
hardware resources. Allows embedded assembly language.
Interface with other Languages Full blown C++
interface. VHPI/VPI bindings with VHDL and
SystemVerilog.
Licensing Provided free under open source boost
license. Vlang UVM library is available under
Apache2 license.

PERFORMANCE

Vlang Features at a Glance

Higher Productivity
helps you start
early

Higher Performance
helps you cover
faster

VHDL
PRODUCTIVITY & SAFETY

TIME & EFFORT

Higher Productivity means that you take less time in building your verification infrastructure and higher performance means that your regression runs much faster.
If you have ESL as part of your SoC development flow, there are additional reasons that you should use Vlang to verify your ESL models. Vlang
supports much better integration with C++ compared to SystemVerilog.
Vlang is ABI compatible with C/C++. Vlang also allows you to call any
method (including virtual methods) on C++ objects right from Vlang
without any boilerplate code. In comparison SystemVerilog DPI interface is limited to C language. As a result any interface between SystemC
and SystemVerilog tends to be highly ineicient.
Yet another advantage is that Vlang is free and open source just like your
SystemC simulator.

http://coverify.com

+91-124-4086612

[email protected]

Vlang Features
Feature

Vlang

SystemSystemC Remarks
Verilog

Performance Enablers
Concurrent Threads

Yes

No

No

Use -version=MULTICORE to enable

Multiple Concurrent Simulators

Yes

No

No

Native Compilation

Yes

No

Yes

Generic Library Support

Yes

No

Yes

Fastest

Slow

Fast

Incremental Compile

Yes

Partial

Yes

Pointer-less Programming

Yes

Yes

No

Automatic Garbage Collection

Yes

Yes

No

Every significant language born after year 2000


provides for a decent GC

User-friendly Containers

Yes

Yes

No

Associative arrays vs C++ std::map<>


[][] vs multi-dimensional vectors in C++

Array Bound Check

Yes

No

No

Check for Integral Overflow

Yes

No

No

builtin

library

library

Exception Handling

Yes

No

Yes

Contract-based Programming

Yes

No

No

Low level hardware/device access

Yes

No

Yes

Custom memory allocation

Yes

No

Yes

Eicient File IO

Yes

No

Yes

Parsing tools/libraries

Yes

No

Yes

Embedded Assembly Code

Yes

No

Yes

No standard library for SV

Coding Productivity
Compile Time

Huge elaboration time for SV

Runtime Safety

Support for Unittests

Vlang supports localized Unittests.

Systems Programming Features


Essential for Virtual Platforms and Coverification

SV can not parse even XML by itself

Reflections and Generative Programming


Support for Data Introspection
and Reflections

Yes

No

No

Generative and Metaprogramming Support

Yes

No

Limited

Base Class Libraries

Yes

Yes

Yes

Support for Sequences

Yes

Yes

Limited

Register Abstraction Layer

No

Yes

No

TLM1 Support

Yes

Yes

Yes

TLM2 Support

No

Yes

Yes

Transaction Randomization

Yes

Yes

Limited

Sequence Randomization

Yes

Yes

No

Coverage Support

No

Yes

No

Very useful for UVM automation

UVM Support
SystemC lacks randomize with
RAL package for Vlang is under development
TLM2 support in SystemVerilog is limited
Support for Vlang TLM2 in the works

Verification Features

o
C verify

http://coverify.com

SystemC relies on external constraint libraries,


none of which is user friendly
Coverage will be available in next release of
Vlang

+91-124-4086612

[email protected]

You might also like