Tags
Language
Tags
December 2024
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 1 2 3 4

Mentor Graphics QuestaSim 2021.1

Posted By: scutter
Mentor Graphics QuestaSim 2021.1

Mentor Graphics QuestaSim 2021.1 | 689.3 mb

Mentor, a Siemens business, is pleased to announce the availability of QuestaSim 2021.1 comprehensive platform for verification complex designs. Questa is built on a core simulation and debug engine providing the industry’s most complete native support of Verilog, SystemVerilog, VHDL, SystemC, PSL and UPF.

General Defects Repaired in 2021.1
QSIM-55060 - Running vopt to re-generate an existing optimized design after the work library had been moved in the file system would sometimes produce an error message involving the original file pathnames. The behavior has been fixed, and vopt will now re-generate the optimized design.
QSIM-68141 - (results) Some VCD files contain extended (VHDL) identifiers. The vcd2wlf and vcd2qwave tools did not always read these identifiers correctly. This has been corrected.

SystemVerilog Defects Repaired in 2021.1
QSIM-62161 - (results) In some rare cases, randomize() would incorrectly evaluate a constraint involving a dist/inside/unique construct with an indexed multi-dimensional array (where the index is random) on the RHS. This issue has been fixed.
QSIM-62470 - In some rare cases, a randomize() call with an in-line constraint that references a static class field would cause vopt to crash. This issue has been fixed.
QSIM-62421 - In some rare cases, many repeated calls to randomize() on a class with a 'rand' class field that toggles between NULL and non-NULL would cause vsim to crash. This issue has been fixed.
QSIM-62298 - (results) In some rare cases, randomize() would produce an invalid solution when evaluating a constraint involving a dist/inside/unique where the RHS is a non-random unpacked array. This issue has been fixed.
QSIM-62271 - In some rare cases, randomize() would cause vsim to crash when evaluating a constraint involving a dist/inside/unique where the RHS is a non-random unpacked array. This issue has been fixed.
QSIM-62382 - In some rare cases, randomize() would trigger a spurious error (vsim-7066: Index out of bounds) when evaluating constraints involving indexed arrays. This issue has been fixed.
QSIM-62229 - (results) In some cases, randomize() would incorrectly evaluate iterative (foreach) constraints on multi-dimensional arrays, where one or more array dimensions are dynamic, if the array is specified using non-LRM compliant syntax (e.g. "foreach(a[0](i))"). This issue has been fixed.
QSIM-62312 - In some rare cases, randomize() would cause vsim to crash when evaluating a constraint involving an associative array with a random index. This issue has been fixed.
(nodvtid) - Vsim could sometimes give this error when declaring an out-of-body class function where the return type referenced another parameterized class using "classname::"

Error: foo.sv(12): Questa has encountered an unexpected internal error: ../../src/vlog/vgencode.c(225).

QSIM-62117 - In some rare cases, an internal error would occur when randomize() is evaluating a 'dist' constraint with a non-random LHS. This issue has been fixed.

QSIM-62480 - Significantly improved performance for some randomize() calls involving if/else constraints where the implicate (condition is true) and alternate (condition is false) constraints are equivalent (but not identical).
QSIM-62633 - In some rare cases, randomize() would select an invalid solution for a scenario involving a '!inside' constraint where a non-random unpacked array is specified on the RHS of the 'inside' operator. This issue has been fixed.
QSIM-62967 - In some cases, randomize() would incorrectly evaluate a scenario involving a random unpacked array of unpacked elements if the array is declared with descending indices. This issue has been fixed.

QSIM-63224 - In some rare cases, randomize() would issue an internal error or crash when -solvefaildebug=2 is enabled. This issue has been fixed.
QSIM-63296 - In some rare cases, randomize() would select an invalid solution when evaluating a constraint expression involving an arithmetic shift-right operator. This issue has been fixed.
QSIM-63333 - In some rare cases, randomize() would trigger a SIGFPE or SIVSEGV crash. This issue has been fixed.

QSIM-63742 - In some rare cases, randomize() would cause vsim to crash when evaluating a constraint containing an array.sum() expression involving a non-random dynamic array. This issue has been fixed.
QSIM-63225 - In some rare cases, randomize() would cause vsim to crash when evaluating constraints involving function calls. This issue has been fixed.
QSIM-63080 - In some rare cases, randomize() call would cause vsim to crash when evaluating randsets with the BDD solver engine. This issue has been fixed.
QSIM-63716 - Significantly improved the performance of some complex randomize() calls involving array.sum() constraints. Some randomize() scenarios that would previously timeout are now able to be successfully solved.
QSIM-63802 - In some rare cases, randomize() would cause vsim to crash when evaluating constraints involving a non-random class field of the randomized class. This issue has been fixed.
QSIM-63738 - In some rare cases, randomize() would cause vsim to crash when evaluating complex constraints involving multiplication and cast expressions. This issue has been fixed.
QSIM-63610 - In some rare cases, a randomize() failure due to a constraint contradiction would generate a testcase (when -solvefailtestcase is enabled) that would not reproduce the contradiction. This issue has been fixed.
QSIM-64086 - In some rare cases, randomize() would incorrectly report a no-solution failure (constraint contradiction) when no actual contradiction exists. This issue has been fixed.
QSIM-62783 - (source) Vlog and vopt handled cases where a class had the same name as a package incorrectly in some cases. Given this example:<code>
package P ;
typedef logic type1_t;
class P;
typedef logic type2_t;
endclass
endpackage
import P::*; // Import in $unit scope makes class named "P" potentially visible
module top;
P::type1_t i; // This should be an error because "P" should reference the class
P::type2_t j; // This should resolve to the type in class "P"
endmodule
</code>
The correct behavior is to report an error for P::type1_t and accept P::type2_t, but previous releases reversed that behavior.
QSIM-62590 - (source) In some cases, a randomize() call with in-line constraints, if the constraint symbol is not declared, it would insert dummy symbol instead, this now flags an error.
QSIM-64826 - In some rare cases, randomize() would generate a solution violating a constraint involving an element of a virtual interface. This issue has been fixed.
QSIM-64538 - In some rare cases, randomize() would crash when evaluating a randset with the BDD solve engine. This issue has been fixed.
QSIM-64417 - In some rare cases, randomize() would generate a solution violating an in-line constraint involving a local automatic variable. This issue has been fixed.
QSIM-64644 - In some rare cases, randomize() would encounter an internal error when evaluating scenarios involving random variables of packed struct type. This issue has been fixed.
QSIM-64586 - In some rare cases, randomize() would incorrectly interpret a 'unique' constraint within an if/else or 'soft' context as a non-conditional, 'hard' constraint. This issue has been fixed.
QSIM-64319 - In some rare cases, randomize() would generate a solution violating a constraint of the form "!(rand_var inside { const_array })". This issue has been fixed.
QSIM-64316 - In some rare cases, a randomize() call would crash when evaluating a constraint involving a non-random unpacked array. This issue has been fixed.
QSIM-64243 - In some rare cases, randomize() would trigger an internal error when evaluating a 'dist' constraint with values on the RHS that are outside of the domain of the target (LHS) type. This issue has been fixed.
QSIM-64160 - In some rare cases, during compilation, a package containing a randomize() call will trigger a spurious (vlog-2944) "Illegal randomize() function call in random constraint" error. This issue has been fixed.

QSIM-64132 - Vlog sometimes gave incorrect errors like:
** Error: while parsing file test.sv(50): Failed to find the name 'get_type' in scope 'tpkg'
For names like 'pkg::typename::get_type() where "typename" is a typedef name resolving to a class.
QSIM-64922 - Vlog reported the error:
** Error: test.sv(7) Illegal reference to an interface type C::Intf in implements clause.
In cases where "C" was a parameterized class type and 'Intf" was a typedef name referenceing an interface class.
QSIM-66018 - In some rare cases, randomize() would report a spurious (vsim-7090) error (Invalid X or Z in a state expression value within a constraint) when evaluating a function call in a constraint. This issue has been fixed.

QSIM-65455 - In some rare cases, randomize() would incorrectly return 0 (no solutions) for a randomization scenario involving a negated "inside" constraint where a constant unpacked array appeared as an operand on the RHS (when the solution set contained valid solutions). This issue has been fixed.
QSIM-65052 - (results) In some rare cases, randomize() would avoid selecting specific valid solutions from the solution space when evaluating a randomization scenario involving array.sum() constraints. This issue has been fixed.
QSIM-64985 - Fixed an internal error in vopt that would occur in some cases involving a constraint expression containing a net (wire).
QSIM-65623 - Fixed an issue which would cause randomize() to incorrectly evaluate constraints involving random variables that are/contain unpacked unions.
QSIM-66481 - (results) In some rare cases, randomize() would incorrectly evaluate constraints involving the queue-end expression ($) when specified within an iterative constraint. This issue has been fixed.
QSIM-66347 - In some rare cases, randomize() would incorrectly evaluate constraints involving function calls to "associative_array.num()". This issue has been fixed.
QSIM-65870 - (source) In some rare cases involving parameterized classes, a call to class::randomize() with an invalid argument that is not a field of the randomized class will not elicit an error during compile time. During simulation, the call with the illegal argument would also incorrectly be allowed to proceed without any error. The simulation time behavior has been changed to check and enforce the legality of arguments to class::randomize(). Any argument that is not a field of the randomized class will trigger a (vsim-7210) error. Note that this new error is suppressible, if the old (broken) behavior is desired.

QSIM-65753 - Significantly improved the performance (simulation cpu time) of randomize() calls involving constraints with containing exponentiation expressions having a base value that is a power of 2.
QSIM-66870 - Vopt would generate an error like:

** Error: test.sv(51): Questa has encountered an unexpected internal error: ../../src/vlog/vgencode.c(99).

When a derived class referenced the name of a class that is nested in the superclass.
QSIM-66663 - User will start getting error if array pattern key is not constant expression in assignment pattern.
QSIM-67239 - In some rare cases, a randomize() call would elicit an internal error after multiple repeating invocations. This issue has been fixed.
QSIM-67108 - In some rare cases, a randomize() call involving the BDD solver engine would cause simulation to crash with a SIGABRT. This issue has been fixed.

QSIM-67010 - In some rare cases, randomize() would incorrectly evaluate an equality constraint where the signed-ness of the LHS and RHS mismatch. This issue has been fixed.
QSIM-67739 - The value of the "SolveArrayResizeMax" [vsim] variable in modelsim.ini has been capped at 10000000 (10 million). Previously, this variable had no limit, and setting it to 0 was equivalent to specifying an unlimited value. Now, if this variable is set to 0 or a value greater than 10 million, the value will be reset to the maximum value (10 million). This change was made to prevent hanging and out-of-memory crashes when randomize() is used to resize random dynamic arrays/queues in an unconstrained fashion.
QSIM-67503 - In some rare cases, randomize() would trigger an internal error when evaluating 'string' type random variables. This issue has been fixed.
QSIM-67392 - In some rare cases, randomize() would cause simulation to crash during a call to post_randomize() if a prior post_randomize() call caused the de-allocation of a random class object. This issue has been fixed.
QSIM-67450 - An error is now reported when a virtual method of an object or built-in method are used in event control expressions. An error is also now reported when a wait statement's return type is non-singular. These changes reflect LRM 9.4.2.
QSIM-67530 - Changed the behavior of the vsim -solvefailseverity switch with regard to error messages emitted during a randomize() call. Previously, the -solvefailseverity switch would only affect the severity of randomize() failures due to constraint contradictions – all other errors encountered during randomize() would be unaffected. The behavior of this switch has been changed to elevate the severity of all error messages emitted during a randomize() call that could cause randomize() to return a 0 result (if a severity level of 3 or 4 is specified).
QSIM-68137 - In some rare cases, a randomize() call will trigger a spurious (vsim-7209) error (randomize() succeeded but there was an intermediate solve failure due to an internal error). This issue has been fixed.
QSIM-68074 - In some rare cases, a randomize() call would cause simulation to crash when evaluating a scenario involving random dynamic arrays/queues. This issue has been fixed.
QSIM-68067 - In some rare cases, randomize() would generate an invalid solution when evaluating a scenario involving a constraint on a packed struct. This issue has been fixed.
QSIM-59853 - Fixed an issue with the constraint contradiction report generated when randomize() fails due to a constraint contradiction – the reported constraints would sometimes include constraints that did not directly contribute to the contradiction. This issue has been fixed.
QSIM-67432 - Iterative constraints on integer_atom_type variables (byte, shortint, int, integer, time, etc.) are now supported.

VHDL Defects Repaired in 2021.1
QSIM-62149 - Using VHDL-2008, vopt would crash if an array of whose element subtype is not fully constrained is sliced. This would occur if the value of the slice is needed for elaboration.
QSIM-61842 - For some specific cases of load elab flow when combined with restart flow , Vsim used to crash. This has been fixed
QSIM-62768 - When using the -skip or -just option, comments that are followed by an empty line, would cause vcom to start processing a design unit's source early. This could result in compile time errors.
QSIM-62097 - In certain cases of records used inside procedures the value reflected was incorrect. This has been fixed.
QSIM-62848 - Aggregate association of array elements resulted in an error when choice elements were record members. This has been fixed.
QSIM-62889 - Having protected type variable definition inside subprogram caused an error during optimization. This has been fixed.
QSIM-56034 - In certain situations forcing a VHDL port signal from SystemVerilog resulted in a crash. This has been fixed.
QSIM-63590 - Vopt could crash if concatenation occur on an array type whose elements are unconstrained.
QSIM-65962 - During compilation with the -autoorder and -quiet switches, if semantic errors were encountered during the refresh phase, the errors would not be printed. This behavior is incorrect, and now all errors are printed, though other compilation logging messages are suppressed.
QSIM-66278 - Large data structures that take over 2Gbytes of space would crash if default initialization is used. For this to happen the default value for all fields in the data structure must be 0 or NULL. Explicitly initializing the object will work around the issue.
QSIM-63680 - In some case where vhdl files were compiled with different VHDL versions, some logical operations were producing an internal error. This has been fixed
[nodvtid] - (source) Fixed a bug where modifications to aliases were not affecting the original object.
[nodvtid] - (source, results) Refactored how -g / -G values are handled, now doing proper size checking to prevent unexpected errors where the value doesn't match the target object. Will now throw a warning if the value doesn't fit the constraints of the target object.
QSIM-64689 - In some specific cases of detecting infinite loop in the rtl code, vsim used to crash. This has been fixed.
QSIM-60378 - For some specific cases of vhdl packages containing unconstrained record subtypes compiled with mixedsvvh and being used in sv design. error should have come in the compilation as unconstrained record cannot be used in sv but we used to error out in vsim, This has been fixed
QSIM-67012 - Generic maps on subprogram instantiation declarations could associate non-object values with generics representing objects without emitting warning 1049. This warning is emitted in generic maps of all other instantiation forms, however. The compiler has been fixed to emit warnings when non-object values are associated with objects in generics maps of subprogram instantiation declarations.
QSIM-66946 - For some specific cases of mixed language design where scalar Vhdl signal is connected to Verilog vector port of size 1, vsim used to give incorrect error. This has been fixed.
QSIM-66232 - Fixed the crash in vsim by fixing an error in slicing of signal
QSIM-67598 - (source) Added error number 1624 to vcom and vopt to warn the user if a generic map is present on a component instantiation where the component has no generic list. Previous versions silently ignored the generic map. A warning is now generated by default. This should really be an error but for compatibility with previous releases it is only a warning an the generic map is still ignored.
QSIM-67153 - Simulation of a VHDL-2008 design containing instantiation of a package in which there is a declaration of a protected type within just the package body could cause a crash, due to incorrect code generation by the compiler. When the simulator crash occurs, it will happen during the design elaboration phase of simulation. There are no compiler or simulation switches that can inhibit this error. The compiler has been fixed to correctly generate code in this situation.

Mixed Language Defects Repaired in 2021.1
QSIM-62637 - A VHDL configuration binding a VHDL component to a Verilog module located the initial work library could cause vopt to crash or machine code not to be found at simulation time.
QSIM-64244 - When Verilog instantiates a VHDL design unit, processing for connectivity analysis under the -rnm vopt switch did not correctly handle ports associated by-name.
QSIM-60379 - For some specific cases of mixed language design where vhdl package containing record subtypes is compiled with mixedsvvh option and also being used in sv, vsim used to give incorrect error. This has been fixed.
QSIM-67008 - (results) VHDL external names now do case insensitive name look up in System Verilog scopes. Previously it used the case of the identifiers that was in the VHDL code, which is incorrect. Because of this external names may resolve differently if names only differed in case.

Verification Management Defects Repaired in 2021.1
[nodvtid] - (results) Modified VRM to truncate coverage numbers (as opposed to rounding) in order to match the other coverage reporting tools.
QSIM-64409 - Fixed problem in VRM where tests whose UCDBs get merged prior to the merging of the testplan would never report a testplan coverage value to the GUI or to any reports. Also fixed a benign side-effect where the merging of the testplan could, under some circumstances, get postponed to the end of the regression run.
VM-5083 - Fixed bug in VRM testlist parser resulting in illegal testname strings being flagged as errors in some cases and warnings in others.
VM-13602 - Fixed syntax in viq-util (VIQ) to support Python 2.6.

General Enhancements in 2021.1
QSIM-65779 - (source) Added suppressible error messages for the case where uvm_hdl_check_path returns FALSE in -qfd mode. This change may cause some existing customer testcases to give these error messages. They may be suppressed the messages using the vsim option -suppress 16126.

SystemVerilog Enhancements in 2021.1
QSIM-62297 - In the past, randomize() calls involving a constraint having a function call with a non-random unpacked array argument would elicit an error at compile time. The restriction on unpacked arrays as arguments to a function calls in a constraints has been eased – these constructs are now allowed and evaluated.

QSIM-60165 - (results) The output of the -solvefaildebug constraint contradiction report has been improved when outputting information about variables/constraints involving packed structs. In the past, individual fields of packed structs were displayed as part-selects by the constraint contradiction report. The report now displays these as field names (where possible) improving the readability of the report.
QSIM-62655 - Significantly improved the performance of randomize() calls for scenarios involving constraints that refer to non-random indexed unpacked arrays.
QSIM-62009 - Improved usability of the RNG trace feature:
- Allow POSIX-style regular expressions with -rngtraceprocessfilter and -rngtraceclassfilter (note: not supported on Windows platforms)
- Show only 'class' operations when when -rngtraceclassfilter is specified
- RNG trace reports changes to RNG state due to class::srandom() and class::set_randstate() as 'process' operations (instead of 'class' operations)
- Support qualifying a breakpoint with a randstate value via the "-randstate <string>" option for the vsim bp (breakpoint) command

See section "RNG Trace" of the user manual for additional details.

QSIM-62010 - Improved usability of the Solver record and replay feature:
- Support additional SystemVerilog random constructs: $urandom, $urandom_range, array::shuffle(), randcase, randsequence
- Support real-type random variables (requires 'svrnm' license feature)
- Option to validate randomize() call during replay as being identical to the randomize() call as recorded (via "-solvereplayopt=+validate")

See section "Solver Record and Replay" in the user's manual for additional details.
QSIM-63295 - Support for $countbits system function calls with a random control-bit arguments are now supported in constraints.
QSIM-64441 - Implemented several enhancements to the RNG trace feature to improve usability for large testcases:
1. Filter out non-random class initialization operations from RNG trace output (enabled by default). Specify vsim command line option "-rngtraceopt=+shownonrandclass" to instruct RNG trace to preserve these operations.
2. Filter out set_randstate() calls that do not effectively change the randstate from RNG trace output (enabled by default). Specify vsim command line option "-rngtraceopt=+showtrivialset" to instruct RNG trace to preserve these operations.
3. Filter out thread initialization operations from RNG trace output (enabled by default). Specify vsim command line option "-rngtraceopt=+showthreadinit" to instruct RNG trace to preserve these operations.
4. To facilitate RNG analysis for testbenches that generate large RNG trace files:
- Specify "-rngtraceskip=<value>" to instruct RNG trace to skip recording the first <value> RNG operations in the trace file.
- Specify "-rngtracemax=<value> to instruct RNG trace to stop recording after <value> operations have been written to the trace file.
QSIM-63337 - Improved the readability of the -solvefaildebug constraint contradiction report generated by randomize() calls with no solutions. Constraints of the form "my_var inside { random_array }" are now printed as-is, instead of being printed as the expansion of the elements of "random_array".
QSIM-63338 - Improved the readability of the -solvefaildebug constraint contradiction report generated by randomize() calls with no solutions. Constraints involving constant variables now display the name of the constant variable (where possible) instead of an obfuscated name (such as "#var#id") for -solvefaildebug=1 (previously, constant variable names were only preserved with -solvefaildebug=2).

QSIM-63339 - Implemented a new SystemVerilog constrained-random language extension "-svrandext=purecheck". When the "purecheck" extension is enabled, calls to class::randomize(null) will not invoke pre_randomize() and post_randomize() functions associated with the class on which randomize() is invoked. This extension is disabled by default.
QSIM-62843 - Implemented a new SystemVerilog constrained-random language extension "-svrandext=prerandfirst". When the "prerandfirst" extension is enabled, the pre_randomize() functions of rand dynamic array/queues of class handles will be executed prior to registering the constraints of the containing (parent) class (normal behavior is from the constraints of the parent class to be registered first). This extension is disabled by default.
QSIM-64620 - Significantly improved the performance of some randomize() calls involving random dynamic arrays/queues that are not resized during randomization.

QSIM-64439 - Significantly improved the performance of some randomize() calls involving constraints that refer to non-random unpacked arrays.

QSIM-65542 - Significantly improved the performance (reduced simulation cpu time) and memory usage (reduced simulation peak memory usage) for randomize() calls evaluating solve/before constraints specifying a large number of high-prioirty and low-priority variables.
QSIM-66910 - Constraint expressions containing system function calls are now generally supported if the argument(s) to the system function call are non-random.
QSIM-63510 - (results) Improved the behavior of solver replay (vsim -solvereplay) such that the behavior of simulation after a replay file has been exhausted will match the behavior of the same simulation (with the same seed) without replay.
QSIM-66609 - (results) Implemented a new vsim SystemVerilog constrained-random language extension "impvecindex" (specfiy "vsim -svrandext=+impvecindex" to enable), which will instruct Questa to inject constraints on random indices of 2-state packed vectors/arrays such that the indices' values are within the bounds of the specified vector/array.

The updated behavior of random index expressions on packed vectors/arrays (within constraint contexts) is as follows:
If the packed array is a 4-state type (i.e. logic) then an implicit constraint on the random index is injected - which means that the value of the random index must be in-bounds (if there are constraints on the random index that would require it to be out-of-bounds, a constraint contradiction would occur). In this case, it is not possible for randomize() to generate an out-of-bounds value for the random index.
If the packed array is a 2-state type (i.e. bit) then an implicit constraint on the random index is not injected, and it is possible for the random index to be evaluated to a value that is out-of-bounds - in such a case, the value of out-of-bound bits are equal to zero. A warning is displayed if the index is evaluated to an out-of-bounds value. Specifying vsim -svrandext=+impvecindex will instruct Questa to inject constraints that will require the random index to be in-bounds.

VHDL Enhancements in 2021.1
QSIM-61007 - (results) It is not legal to connect ports in a port map with sub-element association to OPEN, even if all sub-elements are OPEN. This enhancement allows for unconstrained ports to be associated with sub-elements as long as all sub-elements associated to OPEN.
This is to allow the unconstrained port to be given a constraint. Statements like

PORT MAP( OUT(1) => OPEN) – Constrains out to (1 to 1)
PORT MAP( OUT(1 to 2) => OPEN) – Constrains out to ( 1 to 2)

Note that the direction of the unconstrained port is the direction of the index range subtype and is usually TO not DOWNTO.

Power Aware Enhancements in 2021.1
QSIM-56976 - Enhanced the waiver mechanism / exclusion support for PA dynamic Checks. More ways to control the PA dynamic checks at vopt/vsim.

Mentor Graphics QuestaSim 2021.1

Mentor Graphics QuestaSim 2021.1

QuestaSim is part of the Questa Advanced Functional Verification Platform and is the latest tool in Mentor Graphics tool suite for Functional Verification. The tool provides simulation support for latest standards of SystemC, SystemVerilog, Verilog 2001 standard and VHDL. This tool is an advancement over Modelsim in its support for advanced Verification features like coverage databases, coverage driven verification, working with assertions, SystemVerilog constrained-random functionality.

A demonstration of compiling, simulating, and debugging SystemVerilog code with Mentor's Questa simulator


Mentor Graphics is a technology leader in electronic design automation (EDA), providing software and hardware design solutions that enable companies to develop better electronic products faster and more cost-effectively. The company offers innovative products and solutions that help engineers overcome the design challenges they face in the increasingly complex worlds of board and chip design. Mentor Graphics has the broadest industry portfolio of best-in-class products and is the only EDA company with an embedded software solution.

Product: Mentor Graphics QuestaSim
Version: 2021.1
Supported Architectures: x64
Website Home Page : www.mentor.com
Language: english
System Requirements: PC *
Size: 689.3 mb

Base Product Specifications in 2021.1

Supported Platforms
- Windows 10 x86/x64

It is expected that you have a standard installation of the operating system that you are going to use to install Questa SIM. Where applicable, this includes libraries recommended by operating system vendors to enable 32-bit applications to run on a 64-bit installation.

Please visit my blog

Added by 3% of the overall size of the archive of information for the restoration

No mirrors please


Mentor Graphics QuestaSim 2021.1