Skip to content

Commit

Permalink
configs(gem5-ref): update gem5 ref config (#784)
Browse files Browse the repository at this point in the history
- Enable Zcb, Zihpm, Zicntr RISC-V extensions
- Enable CSR_TIME
- Set reservation set size to 2^6
  • Loading branch information
eastonman authored Jan 16, 2025
1 parent c7ab69d commit 68c3db2
Show file tree
Hide file tree
Showing 2 changed files with 111 additions and 26 deletions.
67 changes: 55 additions & 12 deletions configs/riscv64-gem5-multicore-ref_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -13,23 +13,34 @@ CONFIG_ISA64=y
#
# ISA-dependent Options for riscv64
#
CONFIG_HAS_CLINT=y
CONFIG_CLINT_MMIO=0x38000000
CONFIG_WFI_TIMEOUT_TICKS=8192
CONFIG_MULTICORE_DIFF=y
CONFIG_RVB=y
# CONFIG_RV_CBO is not set
CONFIG_RVK=y
CONFIG_RV_ZICOND=y
# CONFIG_RV_ZFH is not set
CONFIG_RV_ZFH_MIN=y
# CONFIG_RV_ZFA is not set
CONFIG_RVV=y
CONFIG_RV_ZVFH_MIN=y
CONFIG_RV_ZVFH=y
CONFIG_RV_DEBUG=y
CONFIG_RVH=y
CONFIG_RV_ZICNTR=n
# CONFIG_RV_CSR_TIME is not set
CONFIG_RV_ZIHPM=n

# CONFIG_RV_SDEXT is not set
# CONFIG_RV_SDTRIG is not set
# CONFIG_TDATA1_MCONTROL6 is not set
# CONFIG_TDATA1_ICOUNT is not set
# CONFIG_TDATA1_ITRIGGER is not set
# CONFIG_TDATA1_ETRIGGER is not set
# CONFIG_RV_AIA is not set
# CONFIG_RV_SSTC is not set
# CONFIG_RV_SMRNMI is not set
CONFIG_RV_ZICNTR=y
CONFIG_RV_CSR_TIME=y
CONFIG_RV_ZIHINTPAUSE=y
CONFIG_RV_ZIHPM=y
CONFIG_RV_CSR_MCOUNTINHIBIT=y
CONFIG_RV_CSR_MCOUNTINHIBIT_CNTR=y
CONFIG_RV_CSR_MCOUNTINHIBIT_HPM=y
# CONFIG_RV_PMP_ENTRY_0 is not set
CONFIG_RV_PMP_ENTRY_16=y
# CONFIG_RV_PMP_ENTRY_64 is not set
Expand All @@ -39,11 +50,26 @@ CONFIG_RV_PMP_ACTIVE_NUM=16
CONFIG_PMP_GRANULARITY=12
CONFIG_RV_PMP_CHECK=y
CONFIG_RV_SVINVAL=y
CONFIG_RV_SV39=y
# CONFIG_RV_SV48 is not set
# CONFIG_RV_SSNPM is not set
# CONFIG_RV_SMNPM is not set
# CONFIG_RV_SMMPM is not set
# CONFIG_RV_SVNAPOT is not set
# CONFIG_RV_SVPBMT is not set
# CONFIG_RV_SSCOFPMF is not set
# CONFIG_RV_SMSTATEEN is not set
CONFIG_MISA_UNCHANGEABLE=y
CONFIG_XTVEC_VECTORED_MODE=y
# CONFIG_TVAL_EX_II is not set
CONFIG_FS_CLEAN_STATE=y
CONFIG_USE_XS_ARCH_CSRS=y
CONFIG_RVV_AGNOSTIC=y
# CONFIG_RV_ZCMOP is not set
# CONFIG_RV_ZIMOP is not set
CONFIG_RV_ZCB=y
CONFIG_RESERVATION_SET_WIDTH=6
# CONFIG_RV_ZACAS is not set
# end of ISA-dependent Options for riscv64

CONFIG_ENGINE_INTERPRETER=y
Expand All @@ -63,6 +89,7 @@ CONFIG_CC="gcc"
CONFIG_CC_O2=y
# CONFIG_CC_O3 is not set
CONFIG_CC_OPT="-O2"
# CONFIG_CC_NATIVE_ARCH is not set
# CONFIG_CC_LTO is not set
# CONFIG_CC_DEBUG is not set
# CONFIG_CC_ASAN is not set
Expand All @@ -72,33 +99,41 @@ CONFIG_CC_OPT="-O2"
# Testing and Debugging
#
# CONFIG_DEBUG is not set
# CONFIG_SIMPLE_LOG is not set
# CONFIG_SHARE_OUTPUT_LOG_TO_FILE is not set
CONFIG_DIFFTEST_STORE_COMMIT=y
CONFIG_DIFFTEST_REF_PATH="none"
CONFIG_DIFFTEST_REF_NAME="none"
# CONFIG_DETERMINISTIC is not set
# CONFIG_IQUEUE is not set
# CONFIG_MEMLOG is not set
# CONFIG_TRANSLOG is not set
# CONFIG_EXITLOG is not set
# CONFIG_TRACE_INST is not set
# CONFIG_TRACE_BB is not set
# CONFIG_SIMPOINT_LOG is not set
# CONFIG_BR_LOG is not set
# CONFIG_BR_LOG_OUTPUT is not set
# end of Testing and Debugging

#
# Memory Configuration
#
CONFIG_MBASE=0x80000000
# CONFIG_USE_SPARSEMM is not set
CONFIG_MSIZE=0x200000000
CONFIG_PADDRBITS=36
CONFIG_STORE_LOG=y
# CONFIG_BR_LOG is not set
CONFIG_STORE_LOG_SIZE=80000
# CONFIG_LIGHTQS is not set
CONFIG_BBL_OFFSET_WITH_CPT=0x100000
CONFIG_RESET_FROM_MMIO=y
CONFIG_PC_RESET_OFFSET=0x0
CONFIG_MMIO_RESET_VECTOR=0x10000000
# CONFIG_USE_MMAP is not set
CONFIG_ENABLE_MEM_DEDUP=y
# CONFIG_MEM_RANDOM is not set
# CONFIG_MEM_COMPRESS is not set
CONFIG_ENABLE_CONFIG_MMIO_SPACE=y
CONFIG_MMIO_SPACE_RANGE="0x0, 0x7FFFFFFF"
# end of Memory Configuration

CONFIG_DEVICE=y
Expand All @@ -115,25 +150,33 @@ CONFIG_FPU_SOFT=y
# CONFIG_AC_HOST is not set
CONFIG_AC_SOFT=y
# CONFIG_AC_NONE is not set
CONFIG_VECTOR_AC_SOFT=y
CONFIG_MMIO_AC_SOFT=y
CONFIG_AMO_AC_SOFT=y

#
# Processor difftest reference config
#
CONFIG_SHARE=y
CONFIG_DIFFTEST_STORE_COMMIT=y
CONFIG_DIFFTEST_REF_FOR_GEM5=y
# CONFIG_DIFFTEST_STORE_COMMIT_AMO is not set
CONFIG_DIFFTEST_STORE_QUEUE_SIZE=64
CONFIG_GUIDED_EXEC=y
# CONFIG_GUIDED_TVAL is not set
CONFIG_QUERY_REF=y
CONFIG_LARGE_COPY=y
# CONFIG_PANIC_ON_UNIMP_CSR is not set
# CONFIG_REF_STATUS is not set
# end of Processor difftest reference config

#
# Miscellaneous
#
CONFIG_TIMER_GETTIMEOFDAY=y
# CONFIG_TIMER_CLOCK_GETTIME is not set
# CONFIG_DETERMINISTIC is not set
CONFIG_DISABLE_HOST_ALARM=y
# CONFIG_MEMORY_REGION_ANALYSIS is not set
# CONFIG_REPORT_ILLEGAL_INSTR is not set
CONFIG_RT_CHECK=y
CONFIG_INSTR_CNT_BY_INSTR_NORMAL=y
Expand Down
70 changes: 56 additions & 14 deletions configs/riscv64-gem5-ref_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -13,24 +13,34 @@ CONFIG_ISA64=y
#
# ISA-dependent Options for riscv64
#
CONFIG_HAS_CLINT=y
CONFIG_CLINT_MMIO=0x38000000
CONFIG_WFI_TIMEOUT_TICKS=8192
# CONFIG_MULTICORE_DIFF is not set
CONFIG_RVB=y
# CONFIG_RV_CBO is not set
CONFIG_RVK=y
CONFIG_RV_ZICOND=y
# CONFIG_RV_ZFH is not set
CONFIG_RV_ZFH_MIN=y
# CONFIG_RV_ZFA is not set
CONFIG_RVV=y
CONFIG_RV_ZVFH_MIN=y
CONFIG_RV_ZVFH=y
CONFIG_RV_DEBUG=y
CONFIG_RVH =y

CONFIG_RV_ZICNTR=n
# CONFIG_RV_CSR_TIME is not set
CONFIG_RV_ZIHPM=n

CONFIG_RVH=y
# CONFIG_RV_SDEXT is not set
# CONFIG_RV_SDTRIG is not set
# CONFIG_TDATA1_MCONTROL6 is not set
# CONFIG_TDATA1_ICOUNT is not set
# CONFIG_TDATA1_ITRIGGER is not set
# CONFIG_TDATA1_ETRIGGER is not set
# CONFIG_RV_AIA is not set
# CONFIG_RV_SSTC is not set
# CONFIG_RV_SMRNMI is not set
CONFIG_RV_ZICNTR=y
CONFIG_RV_CSR_TIME=y
CONFIG_RV_ZIHINTPAUSE=y
CONFIG_RV_ZIHPM=y
CONFIG_RV_CSR_MCOUNTINHIBIT=y
CONFIG_RV_CSR_MCOUNTINHIBIT_CNTR=y
CONFIG_RV_CSR_MCOUNTINHIBIT_HPM=y
# CONFIG_RV_PMP_ENTRY_0 is not set
CONFIG_RV_PMP_ENTRY_16=y
# CONFIG_RV_PMP_ENTRY_64 is not set
Expand All @@ -40,11 +50,26 @@ CONFIG_RV_PMP_ACTIVE_NUM=16
CONFIG_PMP_GRANULARITY=12
CONFIG_RV_PMP_CHECK=y
CONFIG_RV_SVINVAL=y
CONFIG_RV_SV39=y
# CONFIG_RV_SV48 is not set
# CONFIG_RV_SSNPM is not set
# CONFIG_RV_SMNPM is not set
# CONFIG_RV_SMMPM is not set
# CONFIG_RV_SVNAPOT is not set
# CONFIG_RV_SVPBMT is not set
# CONFIG_RV_SSCOFPMF is not set
# CONFIG_RV_SMSTATEEN is not set
CONFIG_MISA_UNCHANGEABLE=y
CONFIG_XTVEC_VECTORED_MODE=y
# CONFIG_TVAL_EX_II is not set
CONFIG_FS_CLEAN_STATE=y
CONFIG_USE_XS_ARCH_CSRS=y
CONFIG_RVV_AGNOSTIC=y
# CONFIG_RV_ZCMOP is not set
# CONFIG_RV_ZIMOP is not set
CONFIG_RV_ZCB=y
CONFIG_RESERVATION_SET_WIDTH=6
# CONFIG_RV_ZACAS is not set
# end of ISA-dependent Options for riscv64

CONFIG_ENGINE_INTERPRETER=y
Expand All @@ -64,6 +89,7 @@ CONFIG_CC="gcc"
CONFIG_CC_O2=y
# CONFIG_CC_O3 is not set
CONFIG_CC_OPT="-O2"
# CONFIG_CC_NATIVE_ARCH is not set
# CONFIG_CC_LTO is not set
# CONFIG_CC_DEBUG is not set
# CONFIG_CC_ASAN is not set
Expand All @@ -73,32 +99,40 @@ CONFIG_CC_OPT="-O2"
# Testing and Debugging
#
# CONFIG_DEBUG is not set
# CONFIG_SIMPLE_LOG is not set
# CONFIG_SHARE_OUTPUT_LOG_TO_FILE is not set
CONFIG_DIFFTEST_STORE_COMMIT=y
CONFIG_DIFFTEST_REF_PATH="none"
CONFIG_DIFFTEST_REF_NAME="none"
# CONFIG_DETERMINISTIC is not set
# CONFIG_IQUEUE is not set
# CONFIG_MEMLOG is not set
# CONFIG_TRANSLOG is not set
# CONFIG_EXITLOG is not set
# CONFIG_TRACE_INST is not set
# CONFIG_TRACE_BB is not set
# CONFIG_SIMPOINT_LOG is not set
# CONFIG_BR_LOG is not set
# CONFIG_BR_LOG_OUTPUT is not set
# end of Testing and Debugging

#
# Memory Configuration
#
CONFIG_MBASE=0x80000000
# CONFIG_USE_SPARSEMM is not set
CONFIG_MSIZE=0x200000000
CONFIG_PADDRBITS=36
CONFIG_STORE_LOG=y
# CONFIG_BR_LOG is not set
CONFIG_STORE_LOG_SIZE=80000
# CONFIG_LIGHTQS is not set
CONFIG_BBL_OFFSET_WITH_CPT=0x100000
CONFIG_RESET_FROM_MMIO=y
CONFIG_PC_RESET_OFFSET=0x0
CONFIG_MMIO_RESET_VECTOR=0x10000000
CONFIG_USE_MMAP=y
# CONFIG_MEM_RANDOM is not set
# CONFIG_MEM_COMPRESS is not set
CONFIG_ENABLE_CONFIG_MMIO_SPACE=y
CONFIG_MMIO_SPACE_RANGE="0x0, 0x7FFFFFFF"
# end of Memory Configuration

CONFIG_DEVICE=y
Expand All @@ -115,25 +149,33 @@ CONFIG_FPU_SOFT=y
# CONFIG_AC_HOST is not set
CONFIG_AC_SOFT=y
# CONFIG_AC_NONE is not set
CONFIG_VECTOR_AC_SOFT=y
CONFIG_MMIO_AC_SOFT=y
CONFIG_AMO_AC_SOFT=y

#
# Processor difftest reference config
#
CONFIG_SHARE=y
CONFIG_DIFFTEST_STORE_COMMIT=y
CONFIG_DIFFTEST_REF_FOR_GEM5=y
# CONFIG_DIFFTEST_STORE_COMMIT_AMO is not set
CONFIG_DIFFTEST_STORE_QUEUE_SIZE=64
CONFIG_GUIDED_EXEC=y
# CONFIG_GUIDED_TVAL is not set
CONFIG_QUERY_REF=y
CONFIG_LARGE_COPY=y
# CONFIG_PANIC_ON_UNIMP_CSR is not set
# CONFIG_REF_STATUS is not set
# end of Processor difftest reference config

#
# Miscellaneous
#
CONFIG_TIMER_GETTIMEOFDAY=y
# CONFIG_TIMER_CLOCK_GETTIME is not set
# CONFIG_DETERMINISTIC is not set
CONFIG_DISABLE_HOST_ALARM=y
# CONFIG_MEMORY_REGION_ANALYSIS is not set
# CONFIG_REPORT_ILLEGAL_INSTR is not set
CONFIG_RT_CHECK=y
CONFIG_INSTR_CNT_BY_INSTR_NORMAL=y
Expand Down

0 comments on commit 68c3db2

Please sign in to comment.