Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > VHDL > Code Coverage in Verification..IMP

Reply
Thread Tools

Code Coverage in Verification..IMP

 
 
Abs
Guest
Posts: n/a
 
      03-06-2006
hi,
i need to clear some doubts out here, n i hope the brains out here come
of real help, n thanks in advance,
well my doubt is, i have to verify VHDL designs (codes written in
VHDl/VERILOG), to do so, i need to write a TCL Script, and do
functionality testing which is over. NOw to proceed with testing each
line, step by step, is it possible to do in TCL Script, like using the
command "STEP". To check for buggs free code, to check for all the
cases, all teh loops, every statement in a code is executed or not, i
have to do Code Coverage. So my actual doubt is is code coverage a part
of TCL Script or a Tool used to check the correctness of a design and
is a part of verification. Should i provide inputs, rare input data,
and check for this input any case staement is left unexecuted, or of
the same kind. To write TCL Script and to carry on Code Coverage i'am
using MOdelSIm PE. i hope i have made things clear and lucid.

THANK YOU VERY MUCH..

And i guess, many people around will ahev the same problem, and lets
just get it better for every1 out here..

REGARDS...

 
Reply With Quote
 
 
 
 
Thomas Stanka
Guest
Posts: n/a
 
      03-06-2006
Hi,

Abs schrieb:
> well my doubt is, i have to verify VHDL designs (codes written in
> VHDl/VERILOG), to do so, i need to write a TCL Script, and do
> functionality testing which is over. NOw to proceed with testing each
> line, step by step, is it possible to do in TCL Script, like using the
> command "STEP". To check for buggs free code, to check for all the
> cases, all teh loops, every statement in a code is executed or not, i
> have to do Code Coverage. So my actual doubt is is code coverage a part
> of TCL Script or a Tool used to check the correctness of a design and
> is a part of verification.


Code coverage is a metric. The tool "code coverage" allows you to say
something about the quality of your tests. But the code coverage alone
won't help you in testing a design.

You can use the modelsim code coverage (stm, branch, toggle,..) to
learn which parts of your code are executed and where you need to
extend test cases in order to execute each statement.
You should be aware, the number alone has nothing to say without
understanding how to use code coverage. 100% Coverage means, that
everything is executed, _not_ that everything is tested. A module with
active inputs and inactive outputs is easy executed, but hardly tested.


bye Thomas

 
Reply With Quote
 
 
 
 
Abs
Guest
Posts: n/a
 
      03-06-2006
hi,
thanks, got some of it. understood most of it.
so how do i give the inputs, i have a test vector, for which i want to
test wheather all teh statements are executed well, i get 99%, how do i
provide the input vector. should i use TCL Script or Testbenches. There
are commands actually used to do code/state/branch coverage, are those
TCL commands. should i write a TCL Script to do all that.
Please clear my doubt.

Thanks

 
Reply With Quote
 
Mike Treseler
Guest
Posts: n/a
 
      03-06-2006
Abs wrote:

> so how do i give the inputs, i have a test vector, for which i want to
> test wheather all teh statements are executed well, i get 99%, how do i
> provide the input vector. should i use TCL Script or Testbenches.


I prefer to use a procedural vhdl testbench to
provide stimulus and verification, like the one here:
http://home.comcast.net/~mike_treseler/

> There
> are commands actually used to do code/state/branch coverage, are those
> TCL commands. should i write a TCL Script to do all that.


Coverage is icing on the cake.
You need cake first.
Modelsim SE has an automatic interface to do coverage
testing for you, once you have working uut and testbench code.

-- Mike Treseler
 
Reply With Quote
 
Ajeetha
Guest
Posts: n/a
 
      03-07-2006
Hi,
You are mixing several things here. Stimulus generation, debugging,
progress monitoring and checking.

Stimulus generation - best handled via testbenches in HDL/HDVL etc. TCL
is OK for small designs

Debugging - is where you use STEP etc.

Progr. Monitor - This is what code coverage does for you.

Checking - often the tougher part, best done using HDL/HDVL/HVL or some
golden reference models.

Regards
Ajeetha
www.noveldv.com

 
Reply With Quote
 
Abs
Guest
Posts: n/a
 
      03-07-2006
hi..
thanks to you 2. i have developed a testbench, simulated the design and
got a coverage report for the same. i have written a testbench for it,
and have to attain close to 99% for a good performance. It all depends
on how well the testbench has been written. i should provide input to
the design so max portion of the design to be executed.
I'am using modelsim PE. is this a good tool for this application.

Thanks agian for your sincere help..
cheers!!

 
Reply With Quote
 
Abs
Guest
Posts: n/a
 
      03-07-2006
i have one more doubt, i have to write just one testbench that should
get max coverage that can be obtained. so i need just one testbench and
should be well written.so it covers all the possible input values.

 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Code coverage to Python code Hussein B Python 6 01-05-2009 07:56 AM
Coverage checker: Coverage.py or pycover or ? python@bdurham.com Python 0 05-25-2008 01:20 PM
Code coverage & Functional coverage tutorials Raj VHDL 4 02-21-2008 12:32 PM
coverage.py: "Statement coverage is the weakest measure of code coverage" Ben Finney Python 7 10-30-2007 01:43 PM
source code analysis/code coverage tool experience bill turner Java 2 07-19-2005 03:02 PM



Advertisments