• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Functional Verification
  3. Tutorial on NCsim

Stats

  • Locked Locked
  • Replies 5
  • Subscribers 65
  • Views 34031
  • Members are here 0
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Tutorial on NCsim

ReubenMijares
ReubenMijares over 9 years ago

Hi,


I'm learning how to use ncsim and I have done so many research on Google. But what I found out was that most of the blogs are complicated to understand. For most of them, there are pre-requisites before you can totally understand what's happening.


So, I would like to ask if you have a "step-by-step" tutorial on how to simulate using NCsim? I would like to know on these particular topics:

- Waveform Dumping

- Functional Coverage report and merging

For the functional coverage report, I placed a -coverage all as options, just like what the blogs I read did. But what happens to my regression is that it runs very very slow! Usually it only takes 30 minutes. But now it takes 24 hours.

So, do you have a step-by-step tutorial on running NCsim?

Thank you.


Regards,

Reuben

  • Cancel
Parents
  • StephenH
    StephenH over 9 years ago

    By the way, regarding your coverage simulation performance, I would not expect such a big increase in run time so it would be very interesting to know more about your design and what coverage you're enabling. It might be best to do that 1:1 via the Cadence support system rather than broadcasting your design information here in public. :) However what I would request is a bit of info on the exact tool version you're using (quote the output from "irun -version" and the headline figures for how much coverage you have, gained from the first line of the report from this IMC command:

    imc -load cov_work/scope/test -execcmd 'report -summary -cumulative on -inst -local off'

    (change cov_work/scope/test to point to one of your actual coverage results if you haven't used the default naming)

    For example:

    % imc -load cov_work/scope/test -execcmd 'report -summary -cumulative on -inst -local off'
    IMC(64): 14.21-s070: (c) Copyright 1995-2016 Cadence Design Systems Inc
    *I,RUNLD: Successfully loaded run cov_work/scope/test.
    Starting batch mode
    Legend: Metric* means cumulative e.g. Block* means Cumulative Block Coverage
    name Overall* Average Overall* Covered Code* Average Code* Covered Fsm* Average Fsm* Covered Functional* Average Functional* Covered
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    tb 100.00% 100.00% (2/2) n/a n/a n/a n/a 100.00% 100.00% (2/2)

    The numbers in parentheses tell us how many items are being covered for each type of coverage. It would be interesting to know if one of these is sky-high. E.g. if you're doing toggle coverage of a huge gate-level design.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Reply
  • StephenH
    StephenH over 9 years ago

    By the way, regarding your coverage simulation performance, I would not expect such a big increase in run time so it would be very interesting to know more about your design and what coverage you're enabling. It might be best to do that 1:1 via the Cadence support system rather than broadcasting your design information here in public. :) However what I would request is a bit of info on the exact tool version you're using (quote the output from "irun -version" and the headline figures for how much coverage you have, gained from the first line of the report from this IMC command:

    imc -load cov_work/scope/test -execcmd 'report -summary -cumulative on -inst -local off'

    (change cov_work/scope/test to point to one of your actual coverage results if you haven't used the default naming)

    For example:

    % imc -load cov_work/scope/test -execcmd 'report -summary -cumulative on -inst -local off'
    IMC(64): 14.21-s070: (c) Copyright 1995-2016 Cadence Design Systems Inc
    *I,RUNLD: Successfully loaded run cov_work/scope/test.
    Starting batch mode
    Legend: Metric* means cumulative e.g. Block* means Cumulative Block Coverage
    name Overall* Average Overall* Covered Code* Average Code* Covered Fsm* Average Fsm* Covered Functional* Average Functional* Covered
    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    tb 100.00% 100.00% (2/2) n/a n/a n/a n/a 100.00% 100.00% (2/2)

    The numbers in parentheses tell us how many items are being covered for each type of coverage. It would be interesting to know if one of these is sky-high. E.g. if you're doing toggle coverage of a huge gate-level design.

    • Cancel
    • Vote Up 0 Vote Down
    • Cancel
Children
No Data

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information