Skip to content

Add script to generate custom configuration

Created by: Gchauvon

Hello,

I have written a python script to generate custom configuration from one of the existing four ( cv32_...._config_pkg, etc...).

This script allows us at Thales to run regression on specific configuration to make sure new commits do not break features which are not in our four configuration. Examples: Check that we can still disable X-interface or FPU in 64 bits, activate user bits etc...

Each parameter can be modified ( in the limit of possible values ) except for the xlen parameter. A mandatory --isa parameter is required to make sure code is compiled with the right ISA. If FPU is disable, the CVA6 should not run a code with F or D extension. Note: --isa is not used to create new configuration but is returned by the script to be used to compile code. It is necessary to compile any test from core-v-verif repositories.

Example of command to disable FPU, X-interface and C extension from the 64 bits configuration:

python3 config_pkg_generator.py --default_config=cv64a6_imafdc_sv39 --isa=rv64ima --fpu=0 --cvxif=0 --c_ext=0

It will generate core/include/gen64_config_pkg.sv and core/Flist.gen64 ( gen32... if default configuration is 32 bits ). Change the target parameter in the Makefile to gen32 or gen64 to build the CVA6 with the generated configuration.

Guillaume

Merge request reports

Loading