-
Notifications
You must be signed in to change notification settings - Fork 578
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
Error while installing spike simulator #2011
Comments
Hi there, I'm sorry, but I can't actually find that SHA in either Ibex or our spike clone (riscv-isa-sim). Please could you reply with a description of what exactly you were building? Thanks! |
Hi @rswarbrick, I have been able to build it. However, I have used the following commands to configure the spike. ../configure --prefix=/home/rmasumda/projects/spike_cosim --enable-commitlog --enable-misaligned --without-boost --without-boost-asio --without-boost-regex One of my colleague was recommended to use this command instead of the one mentioned in the README. After using this command to build the spike simulator and carrying out the next steps, which I was successful at. I am seeing some other problems while running the DV sims. These are the errors I am seeing while running the following command to run the DV sim. make --keep-going IBEX_CONFIG=opentitan SIMULATOR=vcs ISS=spike ITERATIONS=1 SEED=1 TEST=riscv_rand_jump_test WAVES=0 COV=1 And the error that I am seeing is : Generating core configuration file I cannot see tb.compile.stamp being generated and also instr.gen.build.stamp. & when I go on to take a look at the instr_gen compile.log, I am seeing : Error-[SV-EEM-SRE] Scope resolution error & this is what I am seeing in tb/compile_tb.log Error-[UM] Undefined macro What have I done wrong here? |
Hmm, this is odd. It might be that the problem is only shown by VCS (we mostly use Xcelium for our testing). This is a bit silly, but could you try hacking the |
@rswarbrick, that did work! thanks! However, I could still see the other error I mentioned above. There are some `defines used and I cannot see them being defined anywhere. Is there a file missing ? Error-[UM] Undefined macro |
I also tried to run the sims with Xcelium and its complaining about a totally different file. make[1]: *** [out/metadata/tb.compile.stamp] Error 1 & the following is the error from compile_tb.log
xmvlog: *E,NOTCLM (/home/rmasumda/projects/ibex_riscv/dv/uvm/core_ibex/common/ibex_mem_intf_agent/ibex_mem_intf_response_seq_lib.sv,180|25): addr_exists is not a class item. These are the first 2 error messages followed by
|
Ah, well the missing macro is also caused by an ordering problem. I think VCS is internally concatenating files in a different order from what Xcelium happens to choose. That this causes a problem is a bug in our code! :-D Fortunately, the fix is easy. If you look at e.g.
If that fixes things, we should take both changes that we've found so far! For the other error, I'm a bit confused. The message looks like it's saying that it doesn't know that So I'm sorry that I haven't properly fixed things for you with Xcelium. If you're still finding issues there, is there any chance you could give a step-by-step sequence for us to reproduce the error? Thanks! |
Hi @rswarbrick, Thanks for the response. That definitely helped me get over the first issue I was seeing. However, I wasn't able to solve the issue with mem_model call. I also forgot to mention, I was seeing an error related to the DPI calls in ibex_if_stage.sv file (that I suspect is a DPI call related to icache?) before I saw this error I mentioned above & since we are not using icache at this moment I thought of commenting it out. Thats when I saw the issue I mentioned above related to m_mem_model. So that brings me to my question - what could possibly be causing an issue there ? Also, I pulled the latest yesterday and I don't remember the commit number in which I was seeing those errors. Hence, I am seeing totally new set of errors now. This is what I am currently seeing with VCS as the simulator: ( @GregAC ) Error-[FCIWCS] Invalid 'with' clause specification Syntactically it looks fine, however I don't see definition of some of the enum data type variables. I am not sure if that is really the issue, I am only suspecting here. The reason being, greping the variable 'PRIV_LVL_M' in 'dv' only shows me the instances where it is used and not the actual definition (if at all the error is actually related to this variable and not something else). Would really appreciate if you can give me some insight into how to solve this issue. I have also been wondering, if I am supposed to be pulling a certain commit that is clean and tested and not do so randomly. If you do recommend to take in the new updates that is clean and tested then is there a way to know what and when to pull in those updates? Thanks! |
Hi there! It turns out that I also spent some time last week getting stuff working with VCS. I think that PR #2037 should get everything working for you again. It'll probably be merged soonish, but it's not quite in yet. Note that the VCS error that you've pasted above actually seems to be VCS getting confused! My "fix" in that PR is basically rewriting things in an equivalent way that VCS happens to understand. Sigh... Would you mind trying again with the version at the tip of that PR? I'm sorry for the slow reply. |
Hi @rswarbrick, Sorry for the delay on this issue. I have been busy with some other engagements. Thank you for your response and fixing errors seen with VCS. Those errors are gone. However, I have been seeing some new errors now. First of all, I saw errors related to spike simulator. It was complaining about line 79 of compile_tb.py script, that it isn't able to find riscv-riscv and riscv-fdt in the pkgconfig directory in lib of my spike installation directory. I therefore removed those two and added riscv-fesvr (since riscv-fesvr and riscv-disasm were the only two files I was able to see there). After making changes there, that error then changed to this : In file included from /home/rmasumda/projects/IBEX_DV/riscv_ibex_dv/dv/uvm/core_ibex/common/ibex_cosim_agent/spike_cosim_dpi.cc:10:0: \ /home/rmasumda/projects/IBEX_DV/riscv_ibex_dv/dv/cosim/spike_cosim.h:16:10: fatal /home/rmasumda/projects/IBEX_DV/riscv_ibex_dv/dv/cosim/spike_cosim.h:16:10: fatal Would really appreciate you helping me fix those issues. Does it have to do with spike simulators installation or what am I missing here. I have been using the following command to run the simulation. make --keep-going IBEX_CONFIG=opentitan SIMULATOR=vcs ISS=spike ITERATIONS=1 SEED=1 TEST=riscv_arithmetic_basic_test WAVES=0 COV=0 COSIM=1 I pulled in master since I figured this (#2037 ) commit must have been merged and must have become stable by now. Looking forward to learning soon from you. Thanks, |
Hi there! It sounds like things aren't properly installed. In particular, |
I am trying to run the verification for the core. I have installed the toolchain as instructed. However, while trying to install and build spike simulator. I am seeing these issues. I have gone through the same steps that have been mentioned on the README for https://github.com/lowRISC/riscv-isa-sim
the command I used to configure the tool was
../configure --enable-commitlog --enable-misaligned --prefix=/home/rmasumda/projects/spike_cosim
and then I ran make and that is when I encountered that error.
My Environment
I am using 15fbd5680e44da699f828c67db15345822a47ef6 version of the IBEX. I am using 2017.12-1 version of Synopsys VCS, 3.900 version of Verilator, 7.2.0 version of GCC and 3.7.3 version of python
The Linux is CentOS, version 7.
Can you please tell me what the problem is and how can it be fixed?
The text was updated successfully, but these errors were encountered: