Git Product home page Git Product logo

Comments (9)

berkkis avatar berkkis commented on May 7, 2024

Details:
The following code works with vcs but it is not working for questa.

Under "dv_defines.svh" there are the related macros:


...
`ifndef DV_CHECK_FATAL
  `define DV_CHECK_FATAL(T_, MSG_="", ID_=`gfn, WITH_C_=) \
    `DV_CHECK(T_, MSG_, fatal, ID_, WITH_C_)
`endif

// Shorthand for common foo.randomize() + fatal check
`ifndef DV_CHECK_RANDOMIZE_FATAL
  `define DV_CHECK_RANDOMIZE_FATAL(VAR_, MSG_="Randomization failed!", ID_=`gfn) \
    `DV_CHECK_FATAL(VAR_.randomize(), MSG_, ID_)
`
endif
...

It seems the error comes from here. The "DV_CHECK_RANDOMIZE_FATAL" macro has 3 variables passed to "DV_CHECK_FATAL" but "DV_CHECK_FATAL" macro expects 4.

from riscv-dv.

scottj97 avatar scottj97 commented on May 7, 2024

This seems related to my change 187796b (part of #41) to fix compile warnings from Questa. I'll investigate.

from riscv-dv.

scottj97 avatar scottj97 commented on May 7, 2024

I am unable to recreate with Questa 2019.01. On the latest master (6b126d9) I ran the following, per README:

python3 run.py --test riscv_arithmetic_basic_test --simulator questa

And it ran successfully. My compile log shows:

QuestaSim-64 vlog 2019.1 Compiler 2019.01 Jan  1 2019
Start time: 11:05:55 on Aug 20,2019
vlog -64 -access=rwc -f /home/sjohnson/riscv-dv/files.f -sv -mfcu -cuname design_cuname "+define+UVM_REGEX_NO_DPI" -writetoplevels /home/sjohnson/riscv-dv/out_2019-08-20/top.list -l /home/sjohnson/riscv-dv/out_2019-08-20/compile.log
-- Compiling package riscv_instr_pkg
-- Importing package mtiUvm.uvm_pkg (uvm-1.2 Built-in)
** Note: (vlog-2286) ./src/riscv_instr_pkg.sv(21): Using implicit +incdir+/d1/cad/tools/mentor/questa/2019.1/questasim/uvm-1.2/../verilog_src/uvm-1.2/src from import uvm_pkg
-- Compiling package riscv_instr_test_pkg
-- Importing package riscv_instr_pkg
-- Compiling module riscv_instr_gen_tb_top
-- Importing package riscv_instr_test_pkg

Top level modules:
        riscv_instr_gen_tb_top
End time: 11:05:56 on Aug 20,2019, Elapsed time: 0:00:01
Errors: 0, Warnings: 0

I suspect the problem is your old version of Questa.

I don't see any issue with the macros in question. There are 4 formal arguments to DV_CHECK_FATAL, but the 2nd, 3rd, and 4th all have defaults specified. It is therefore legal to call it with 1, 2, 3, or 4 actual arguments.

from riscv-dv.

danghai avatar danghai commented on May 7, 2024

It works for me 2019.1 version.

from riscv-dv.

berkkis avatar berkkis commented on May 7, 2024

Thank you I will look into this.

from riscv-dv.

tejasmal56 avatar tejasmal56 commented on May 7, 2024

Hi,
Can we reopen this issue, i have a query related to this.
I am trying to generate binary file from the assembly test file.
I am getting the below error(link is attached) when i try to make use of make gen command.
error_log.
As you mentioned in your comments above regarding the questa version, the version I am using here is vsim 10.7c, simulator 2018.08. Does it depend on the questa version we use.
So, I tried using the alternate method you had provided that is using the command as below:
python3 run.py --test riscv_arithmetic_basic_test --simulator questa
But even after using this command I am getting the following error .(link is attached
error for binary file
).
Can you please help me with this.

from riscv-dv.

scottj97 avatar scottj97 commented on May 7, 2024

That looks like the exact same error message as @berkkis had with 2016.02. I assume a newer Questa version fixed the issue for him.

Can you try with 2019.1 or later? They're up to 2020.2 now.

from riscv-dv.

tejasmal56 avatar tejasmal56 commented on May 7, 2024

from riscv-dv.

danghai avatar danghai commented on May 7, 2024

@tejasmal56 . You can try qrun from Questa. version (> 2019) has this feature. Let me know if you have any issues relating to it

from riscv-dv.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.