| # Copyright lowRISC contributors. |
| # Licensed under the Apache License, Version 2.0, see LICENSE for details. |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| # Ibex configurations files, holds the parameter sets that are tested under CI. |
| # Each configuration must specify the same set of parameters |
| |
| # Two-stage pipeline without additional branch target ALU and 3 cycle multiplier |
| # (4 cycles for mulh), resulting in 2 stall cycles for mul (3 for mulh) |
| small: |
| RV32E : 0 |
| RV32M : 1 |
| RV32B : 0 |
| BranchTargetALU : 0 |
| WritebackStage : 0 |
| MultiplierImplementation : "fast" |
| PMPEnable : 0 |
| PMPGranularity : 0 |
| PMPNumRegions : 4 |
| |
| # =============================== |
| # * EXPERIMENTAL CONFIGURATIONS * |
| # =============================== |
| |
| # Three-stage pipeline with additional branch traget ALU and 1 cycle multiplier |
| # (2 cycles for mulh) so mul does not stall (mulh stall 1 cycles). This is the |
| # maximum performance configuration. PMP is enabled with 16 regions. |
| experimental-maxperf-pmp: |
| RV32E : 0 |
| RV32M : 1 |
| RV32B : 0 |
| BranchTargetALU : 1 |
| WritebackStage : 1 |
| MultiplierImplementation : "single-cycle" |
| PMPEnable : 1 |
| PMPGranularity : 0 |
| PMPNumRegions : 16 |
| |
| # experimental-maxperf-pmp config above with bitmanip extension |
| experimental-maxperf-pmp-bm: |
| RV32E : 0 |
| RV32M : 1 |
| RV32B : 1 |
| BranchTargetALU : 1 |
| WritebackStage : 1 |
| MultiplierImplementation : "single-cycle" |
| PMPEnable : 1 |
| PMPGranularity : 0 |
| PMPNumRegions : 16 |