-
Notifications
You must be signed in to change notification settings - Fork 250
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add 'questa' to list of supported simulators (VUNIT_SIMULATOR) #834
Comments
Would the enhancement include supporting Context: Lines 102 to 127 in fbb46c6
QuestaSim is explicitly supported. However, the procedure is as you guessed. |
I guess so in order to keep it consistent with others. |
@umarcor There are also some other considerations, example:
|
I wonder if Modelsim will be discontinued in a near future and be replaced with Questasim? see this reddit thread If that's the case, maybe it would be better to change all modelsim reference in the code to questasim, and to make modelsim an alias of questasim? Do you know if modelsim.ini is also named like this with Questasim? or if it's named questasim.ini? |
@std-max as far as my experience goes. with Questa-Intel FPGA Edition, the file is still called If I compare the
|
From a maintenance point of view the simplest solution is to just call it modelsim everywhere in the code and very clearly show, in documentation, that it includes Questa as well. Is there something we can do to make this clearer? |
Agree with you @LarsAsplund |
Currently all my (minor) issues can be solved with workarounds. But I am wondering if we are delaying something that might need to be done in the future. At the moment, I have a Makefile that allows me to change the simulator (modelsim, questa and ghdl) using a switch. This switch is also used for Vivado to compile the Xilinx libraries where Vivado distinguishes between Modelsim ( At the moment, one of the workarounds in if args.simulator == 'questa':
environ["VUNIT_SIMULATOR"] = 'modelsim'
else:
environ["VUNIT_SIMULATOR"] = args.simulator One main difference between Questa and Modelsim, is that Questa has optimizations turned on by default. If you try to disable them, you even get a (suppressible) compilation error that your simulation will run very slowly, etc.. The point is because optimizations are on, if you debug your DUT in GUI mode many internal signals are optimized out and not visible so you need to add some flags to vsim in order to preserve visibility for debugging. Also, comparing the help menu of |
@tasgomes Can you share some of the flags that are different? Just to get a feel for how "useful" they are. Some weeks ago a new colleague tried to install free ModelSim from Intel to use that with VUnit. He found out that the free simulator in Quartus is now a variant of Questa which he didn't manage to install. Not sure if it wasn't free after all. Anyway, it was solved by using an older version of Quartus to get access to the free ModelSim. If there actually is a free Questa from Intel it means that it will be easier for us to verify Questa and also support it as a simulator different from ModelSim. Anyone having experience with this new Questa version? |
@LarsAsplund Although there are now new flags in Questa, currently there is none that I used that only exists in one of them. But since I started using Questa, I had to add this one to preserve signal visibility when doing debug activities in GUI mode:
I use Questa Intel FPGA Edition. I believe when you are installing it, you can select the free "Starter Edition" option. |
@tasgomes If there are no strong reasons in support of differentiating between the two I suggest we postpone it until we find such reasons. Reduces maintenance. Only make the Questa and ModelSim relation very clear in the docs. In general one cannot not avoid that users have to take special steps to handle their different licenses. For example, you can have several vendor versions of ModelSim installed and VUNIT_SIMULATOR alone cannot be used to differentiate between the two. Turning off optimization is also something that you have to do with other simulators, for example Riviera-PRO. Looks like we did something wrong when installing Intel Questa then. Good to know. I should give it another try. |
Currently, if
VUNIT_SIMULATOR
is set to 'questa' the following error occurs:However, both Questa and Modelsim call
vsim
to run the simulations. In fact, if I setVUNIT_SIMULATOR='modelsim'
andVUNIT_MODELSIM_PATH=<path to questa install directory>
, I can execute VUnit testbenches with Questa without any problem.Would it be possible to add the name 'questa' to the current list of supported simulators?
or is there any limitation?
The text was updated successfully, but these errors were encountered: