lowRISC / lowRISC/ibex

make run-simple-system failure

Open
#2,288 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Type:Bug
Dominant language
SystemVerilog
Stars
2.1k
Forks
810
Avg merge
5d 23h
Merged PRs (30d)
9

Description

## Observed Behavior
make run-simple-system fails to compile simple program

ibex/examples/sw/simple_system/common/simple_system_common.c:40: Error: unrecognized opcode `csrw minstret,x0', extension `zicsr' required

## Expected Behavior

make run-simple-system compiles simple program

## Steps to reproduce the issue
### Setup virtual environment

1. python -m venv ~/.ibex-eda/
2. . ~/.ibex-eda/bin/activate
3. pip install mako
4. pip install packaging

### build system

1. . ~/.ibex-eda/bin/activate
2. git clone https://github.com/olofk/edalize.git
3. cd edalize
4. pip install .
5. cd ..
6. git clone https://github.com/lowRISC/fusesoc.git
7. cd fusesoc
8. pip install .
9. cd ..
11. git clone https://github.com/lowRISC/ibex.git
12. ./util/ibex_config.py small fusesoc_opts

`--RV32E=0 --RV32M=ibex_pkg::RV32MFast --RV32B=ibex_pkg::RV32BNone --RegFile=ibex_pkg::RegFileFF --BranchTargetALU=0 --WritebackStage=0 --ICache=0 --ICacheECC=0 --ICacheScramble=0 --BranchPredictor=0 --DbgTriggerEn=0 --SecureIbex=0 --PMPEnable=0 --PMPGranularity=0 --PMPNumRegions=4 --MHPMCounterNum=0 --MHPMCounterWidth=40`

13. ./util/check_tool_requirements.py
`INFO: Tool verilator present: Sufficiently recent version (found 5.028; needed 4.210)
INFO: Tool edalize present: Sufficiently recent version (found 0.6.2.dev2+g1eedb7f; needed 0.2.0)`

14. make build-simple-system
15. make run-simple-system

As a quick aside having the above steps would be helpful in the documentation.

No modifications to any sources.
No parameters set.

## My Environment
Nothing special
riscv32-unknown-elf-gcc: gcc version 15.1.0 (Gentoo 15.1.0 p55)

Using Ibex as a micro controller in an FPGA

**EDA tool and version:**
Xilinx Vivado 2025.1

**Operating system:**
Gentoo

**Version of the Ibex source code:**
git master db07ab174e336d6feb82c96249539badd19f0d6c

no modifications to source

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the make run-simple-system target and ibex/examples/sw/simple_system/common/simple_system_common.c:40, then review the reported compiler error and the tool versions from check_tool_requirements.py. Reproduce the failure using the documented setup and determine what change is needed for the simple system to compile with the reported toolchain.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, embedded-iot
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.