Home > Community > Blogs > Functional Verification > tech tip avoiding quot error integer overflow quot with incisive simulator
 
Login with a Cadence account.
Not a member yet?
Create a permanent login account to make interactions with Cadence more conveniennt.

Register | Membership benefits
Get email delivery of the Functional Verification blog (individual posts).
 

Share

  • Email
  • Social Web
* Required Fields

Recipients email * (separate multiple addresses with commas)

Your name *

Your email *

Message *

Contact Us

* Required Fields
First Name *

Last Name *

Email *

Company / Institution *

Comments: *

Tech Tip: Avoiding "Error! Integer Overflow" With Incisive Simulator

Comments(0)Filed under: Functional Verification, IES, Incisive Enterprise Simulator (IES), NCVHDL

While simulating a VHDL design with Incisive Simulator, if an integer overflow is detected, the simulation stops with the following error message:

Error! integer overflow

File: ./test.vhd, line = 13, pos = 11

Scope: :$PROCESS_000

Time: 10 FS + 0

./test.vhd:13 i := i - 1;

Incisive is probably the only simulator to report such error condition. The only other popular VHDL simulator was not able to catch/report this condition, when I last faced it. So a user who is not using Incisive Simulator will not be able to know that his design has VHDL integer variables that overflow, which is usually not the real intent.

Ideally, the VHDL code should be fixed this overflow problem, but in many cases the value (integer overflow) of VHDL integer variables is don't care up to certain simulation time or state of simulation. For such cases, the users simply want to ignore this check in Incisive simulator as well.

How to Ignore "Integer Overflow" in Incisive Simulator 

The NCVHDL engine in Incisive Enterprise Simulator also allows flexibility to continue running the simulation even when it detects an integer overflow by setting a pre-defined tcl variable - "intovf_severity_level".

The default value of this variable is ERROR, i.e. stop the simulation at integer overflow. The other values of intovf_severity_level are WARNING and IGNORE.

The value of the intovf_severity_level variable can be changed in Simvision GUI. Select Simulation -> Show Variables menu. Select the intovf_severity_level variable and the value associated with this variable. Change the value to IGNORE (or WARNING). The console window echoes the command.

The easiest way to achieve in batch or regression mode is to add "set intovf_severity_level IGNORE" command in a Tcl input file, before the simulation "run" command.

 

Comments(0)

Leave a Comment


Name
E-mail (will not be published)
Comment
 I have read and agree to the Terms of use and Community Guidelines.
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.