CommonEvaluationPlatform / CEP

The Common Evaluation Platform (CEP), based on UCB's Chipyard Framework, is an SoC design that contains only license-unencumbered, freely available components.
BSD 3-Clause "New" or "Revised" License
21 stars 7 forks source link

Possible QuestaSim work-around? #19

Closed c-posada closed 1 year ago

c-posada commented 1 year ago

I've tried to get around the recommended QuestaSim for co-simulation by instead using ModelSim 2019.1 and replacing the QuestSim path with my ModelSim 2019.1 path. I've strayed from the recommended QuestaSim installation as my academic institution currently does not have active licenses for QuestaSim. I've tried to make it work with the free 'alternative', but I seem to have run into an issue when running the Makefile in CEP/sims/cep_cosim.

It appears to be trying to invoke a vlog executable that does not exist in my current ModelSim installation directory (see screenshot attached.) My assumption is that this directory most likely exists in QuestaSim, but not in ModelSim. Would there be any possible workarounds for this and any future problems that I could run into by using ModelSim instead of QuestaSim? Thanks in advance.

image

bchetwynd commented 1 year ago

From a quick search, Modelsim should support Verilog and SystemVerilog, but I am not sure if all of the verification capabilities of the CEP co-simulation environment is supported.

I would do some searching and ensure your PATH is setup correctly. vlog should be there somewhere.

c-posada commented 1 year ago

vlog exists in /home/cposada/intelFPGA/19.1/modelsim_ase/linux, but not in /linux_x86_64pe/ as the error suggests. The /linux_x86_64pe/ directory doesn't exist in my modelsim install directory, and vlog is within my PATH as well.

bchetwynd commented 1 year ago

Update (or override) the QUESTASIM_PATH variable as defined in ./sims/cep_cosim/cep_buildHW.make to point to where your modelsim executables are installed.

c-posada commented 1 year ago

Yessir I did that before I posted this discussion, but the -64 flag seems to invoke some alternate vlog binary that is located in the aforementioned /linux_x86_64pe/ directory. I've tried removing the -64 flag in the Makefile for the vlog command, which allows the make to run further than it did previously. However, it seems to lead to similar errors saying it cannot find the vlib binary and it points to a directory that does not exist within my modelsim install directory. Attached is a screenshot of the QUESTASIM_PATH variable I modified to point to my modelsim binaries.

image

bchetwynd commented 1 year ago

Hello. It seems like you have done due diligence. I don't have that specific version of the tool installed, but could you attach the log when you remove the -64bit flag?

What happens if you try to run your modelsim manually with the -64 flag?

c-posada commented 1 year ago

Attached is a screenshot of the change I made to cep_buildHW.make (just removing the -64 flag from COSIM_VLOG_ARGS), a screenshot of the error it returns, and the log itself. When I try to run vsim -64 manually, it returns a similar to what we saw previously saying how those specific binaries do not exist:

Failed to open executable /home/cposada/intelFPGA/19.1/modelsim_ase/bin/../linux/../linux_x86_64pe/vish in execute mode needed for the option -64.

execv: No such file or directory

** Fatal: Unable to exec the GUI /home/cposada/intelFPGA/19.1/modelsim_ase/bin/../linux/../linux_x86_64pe/vish.

image image cep_error_log.txt

bchetwynd commented 1 year ago

Hello. Unfortunately, I don't have the exact tool you are attempting to run with and thus am not able to reproduce your situation. Please feel free to leave the issue open and I will try to find the tool and install when I can.