riscv-admin / riscv-ovpsim

60 stars 7 forks source link

Bitmanip Extension Enabling #19

Open subhajit26 opened 3 years ago

subhajit26 commented 3 years ago

Hi, I need help in clearing one of my doubt regarding Bitmanipulation extension. Do we need to specify the version after enabling the extension. Can someone please tell the use of doing the same and I would also like to know after enabling B extension how to check the version.

jstraus59 commented 3 years ago

The Readme.md states:

RISCV Extension B (Bit Manipulation) Run command: riscvOVPsim.exe --override riscvOVPsim/cpu/add_Extensions=B --showoverrides When B extension is active, parameter 'bitmanip_version' can be used to specify the required version.

The output from the above command includes the following:

--override riscvOVPsim/cpu/bitmanip_version=0.92 (Enumeration) (default=0.92) (default) Specify required Bit Manipulation Architecture version

so if you do not specify a version you will get the default version which is 0.92.

FYI, a handy way to find out what the allowed values are is to specify an invalid value:

$ ./bin/Linux64/riscvOVPsim.exe --variant RV32I --override riscvOVPsim/cpu/add_Extensions=B --override riscvOVPsim/cpu/bitmanip_version=0.xx --program examples/bitmanip/bdep.elf Imperas riscvOVPsim

CpuManagerFixedPlatform (64-Bit) v20200708.0 Open Virtual Platform simulator from www.IMPERAS.com. Copyright (c) 2005-2020 Imperas Software Ltd. Contains Imperas Proprietary Information. Licensed Software, All Rights Reserved. Visit www.IMPERAS.com for multicore debug, verification and analysis solutions.

CpuManagerFixedPlatform started: Wed Nov 4 16:18:23 2020

Error (OP_IU) Setting enumerated parameter 'riscvOVPsim/cpu/bitmanip_version' to the illegal value '0.xx'. Legal values are: 0.90 0.91 0.92 0.93

subhajit26 commented 3 years ago

Hi, Thank you very much clearing the doubt. That works and I am also able to run elf file with RV32I variant but I am not being able to run the same elf file with RV32E variant despite the fact that list of processor variant shows RV32E and I need that variant for baseline customization of Ibex core. Any kind of suggestion with resources or commands will be of great help.

eroom1966 commented 3 years ago

Please describe exactly what will not run, this description is not detailed enough -error messages ? -unexpected behaviour ? Thx Lee