c

vexiiriscv.memory

PmpStorageParameter

case class PmpStorageParameter(slots: Int) extends Product with Serializable

Reading the RISC-V spec to figure out all the flags/details of the PMP is just too tricky. A good way to figure things out is to loook at spike (software implementation) : - https://github.com/riscv-software-src/riscv-isa-sim/blob/2c67071743d4b55719cee22fdb319df2a0756db7/riscv/mmu.cc#L348 - https://github.com/riscv-software-src/riscv-isa-sim/blob/2c67071743d4b55719cee22fdb319df2a0756db7/riscv/csrs.cc#L183 - https://github.com/riscv-software-src/riscv-isa-sim/blob/2c67071743d4b55719cee22fdb319df2a0756db7/riscv/mmu.cc#L348

In particular, one tricky thing with the PMP is how the PMPADDRx LSB bits are handled in regard of the granularity. Their value change depending the PMPCFGx XD

Linear Supertypes
Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. PmpStorageParameter
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. AnyRef
  7. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new PmpStorageParameter(slots: Int)

Value Members

  1. val slots: Int