Skip to content
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

Three zbkb instructions misreported by ImperasDV #379

Open
davidharrishmc opened this issue Dec 19, 2024 · 9 comments
Open

Three zbkb instructions misreported by ImperasDV #379

davidharrishmc opened this issue Dec 19, 2024 · 9 comments

Comments

@davidharrishmc
Copy link
Collaborator

davidharrishmc commented Dec 19, 2024

brev8, zip, and unzip are reported by ImperasDV as grevi, shfli, and unshfli so they are not hit during coverage tests. See the following examples of machine language instructions that are misreported.

# Info 5: 'refRoot/cpu', 0x0000000080000010(rvtest_entry_point+10): Machine 68705193 grevi   x3,x0,7

brev8: inst_name = grevi disass = 68705193 grevi x3,x0,7
zip: inst_name = shfli disass = 08f01293 shfli x5,x0,15
unzip: inst_name = unshfli disass = 08f05293 unshfli x5,x0,15

@davidharrishmc
Copy link
Collaborator Author

davidharrishmc commented Dec 19, 2024

And here is a sample file that has brev8 instructions getting misreported.

WALLY-COV-brev8.elf.gz

Here is the objdump
80000010: 68705193 brev8 gp,zero

And the corresponding —lockstepverbose listing
Info 5: 'refRoot/cpu', 0x0000000080000010(rvtest_entry_point+10): Machine 68705193 grevi x3,x0,7

@eroom1966
Copy link

@davidharrishmc is this a disassembly issue, or does the result cause a miscompare ?
If there is a miscompare can I get a full trace of the RVVI logging and the instruction trace

@davidharrishmc
Copy link
Collaborator Author

Just a disassembly issue. No miscompare.

@eroom1966
Copy link

OK, can I also get a copy of the configuration file containing the overrides you are using, or a pointer into the repository where it exists

@davidharrishmc
Copy link
Collaborator Author

davidharrishmc commented Dec 19, 2024 via email

@eroom1966
Copy link

Fixed in 20241213

@davidharrishmc
Copy link
Collaborator Author

davidharrishmc commented Dec 19, 2024 via email

@davidharrishmc
Copy link
Collaborator Author

We installed 20241213, but are still getting the same disassembly problem for these three instructions.

# Info 563: 'refRoot/cpu', 0x00000000800008c8(rvtest_entry_point+8c8): Machine 68755493 grevi   x9,x10,7

@davidharrishmc
Copy link
Collaborator Author

# 
# ImperasDVasync (64-Bit)
# Version V-2023.09 veng.20241213.0
...
# Info (IDV) ImperasDV INITIALISED
# Info (IDV)    Program: /home/harris/cvw/addins/cvw-arch-verif/tests/rv32/Zbkb/WALLY-COV-brev8.elf
# Info (IDV)    Vendor : riscv.ovpworld.org
# Info (IDV)    Variant: RV32GCK+B
...
# Info (IDV) ImperasDV CONFIGURATION SETTINGS
# Info (IDV)    IDV_CONFIG_MODEL_VENDOR                 : 'riscv.ovpworld.org' 
# Info (IDV)    IDV_CONFIG_MODEL_VARIANT                : 'RV64GCK' 
# Info (IDV)    IDV_CONFIG_MAX_NET_LATENCY_CYCLES       : 0x0 (disabled)
# Info (IDV)    IDV_CONFIG_MAX_NET_LATENCY_RETIREMENTS  : 0x6 
# Info (IDV)    IDV_CONFIG_REDIRECT_STDOUT              : 0x1 (enabled)
# Info (IDV)    IDV_CONFIG_MODEL_NAME                   : 'riscv' 
# Info (IDV)    IDV_CONFIG_MODEL_VERSION                : '1.0' 
# Info (IDV)    IDV_CONFIG_MODEL_ADDRESS_BUS_WIDTH      : 0x22 
# Info (IDV)    IDV_CONFIG_RESUMPTION_CHECK_LEVEL       : 0x0 (ignored)
# Info (IDV)    IDV_CONFIG_SYNC_HEARTBEAT               : 0x0 (disabled)
# Info (IDV)    IDV_CONFIG_SYNC_ITERATION_LIMIT         : 0x100000 
# Info (IDV)    IDV_CONFIG_SYNC_FULL_COMPARISON         : 0x0 (disabled)
# Info (IDV)    IDV_CONFIG_RECONVERGE_ON_MISMATCH_ASYNC : 0x0 

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants