History log of /XiangShan/src/main/scala/xiangshan/backend/fu/NewCSR/HypervisorLevel.scala (Results 1 – 25 of 40)
Revision Date Author Comments
# 7768a97d 08-Apr-2025 Tang Haojin <[email protected]>

fix(CSR): use GEILEN from IMSICParams (#4520)


# e733b25b 13-Jan-2025 linzhida <[email protected]>

fix(aia): add the missing AIA-related permission checks

Along the same lines, when hstatus.VGEIN is not the number of an implemented guest external
interrupt, attempts from M-mode or HS-mode to acce

fix(aia): add the missing AIA-related permission checks

Along the same lines, when hstatus.VGEIN is not the number of an implemented guest external
interrupt, attempts from M-mode or HS-mode to access CSR vstopei raise an illegal instruction
exception, and attempts from VS-mode to access stopei raise a virtual instruction exception.

show more ...


# 23767fc3 08-Jan-2025 Zhaoyang You <[email protected]>

feat(CSR): set init 0 for htimedelta csr (#4145)


# fc89b31e 20-Dec-2024 linzhida <[email protected]>

fix(hideleg): fix the read value of the LCOFI bit of hideleg.

For bits of mideleg that are zero, the corresponding bits in
hideleg, hip, and hie are read-only zeros.

The VSSIP, VSTIP, VSEIP in mide

fix(hideleg): fix the read value of the LCOFI bit of hideleg.

For bits of mideleg that are zero, the corresponding bits in
hideleg, hip, and hie are read-only zeros.

The VSSIP, VSTIP, VSEIP in mideleg are read-only ones
when the H extension is implemented.

When the hypervisor extension is implemented, if a bit is zero in
the same position in both mideleg and mvien, then that bit is
read-only zero in hideleg (in addition to being read-only zero in
sip, sie, hip, and hie). But if a bit for one of interrupts 13-63
is a one in either mideleg or mvien, then the same bit in hideleg
may be writable or may be read-only zero, depending on the
implementation. No bits in hideleg are ever read-only ones. The
RISC-V Privileged Architecture further constrains bits 12:0 of
hideleg.

show more ...


# 189833a1 05-Dec-2024 Haoyuan Feng <[email protected]>

feat(pointer masking): support Ssnpm & Smnpm & Smmpm (#3921)

feat(pointer masking): support Ssnpm & Smnpm & Smmpm


# 8256cd00 13-Nov-2024 sinceforYy <[email protected]>

fix(aia): fix hviprio bundle


# 6808b803 29-Oct-2024 Zehao Liu <[email protected]>

feat(Ss/Smdbltrp) : Support RISC-V Ss/Smdbltrp Extension (#3789)

* NEMU commit: 066cb1f1c61feb21153399c26ca393dfb3a560d7
* NEMU configs:
* riscv64-xs-ref_defconfig
* riscv64-dual-xs-ref_defco

feat(Ss/Smdbltrp) : Support RISC-V Ss/Smdbltrp Extension (#3789)

* NEMU commit: 066cb1f1c61feb21153399c26ca393dfb3a560d7
* NEMU configs:
* riscv64-xs-ref_defconfig
* riscv64-dual-xs-ref_defconfig

Including:
* fix(format): adjust code format and add one config (OpenXiangShan/NEMU#603)
* fix(vfredusum): set xstatus.fs and xstatus.vs dirty (OpenXiangShan/NEMU#605)
* fix(vf): do not set dirtyFs for some instructions (OpenXiangShan/NEMU#606)
* feat(trigger): add trigger support for rva.
* configs(xs): open Sm/sdbltrp extension and add MDT_INIT config (OpenXiangShan/NEMU#604)

---

* spike commit: c0b18d3913d8ceac83743a053a7dbd2fb8716c83
* spike config: CPU=XIANGSHAN

Including:
* fix(rva, trigger): For rva instr, raise BP from trigger prior to misaligned.
* fix(Makefile): Increase maxdepth for finding .h files.
* fix(tdata1): CPU_XIANGSHAN do not implement hit bit in tdata1.
* fix(icount): place the read before the return of the detect_icount_match.

show more ...


# ca0aa835 28-Sep-2024 Xuan Hu <[email protected]>

feat(CSR): add No.16,18 and 19 exceptions (#3640)


# 5860cb70 21-Sep-2024 Zhaoyang You <[email protected]>

fix(csr): fix trap inst update when CSRR insts raise trap and remove useless io (#3620)

This PR fix trap inst update.
Because of CSRR inst is out of order insts, trap inst should select the
oldest

fix(csr): fix trap inst update when CSRR insts raise trap and remove useless io (#3620)

This PR fix trap inst update.
Because of CSRR inst is out of order insts, trap inst should select the
oldest trap inst when CSRR inst raise trap.

---------

Co-authored-by: Xuan Hu <[email protected]>

show more ...


# 39db506b 13-Sep-2024 Xuan Hu <[email protected]>

fix(Svpbmt): let PBMTEs in [mh]envcfg be RW and have reset value 0 (#3558)


# dd286b6a 11-Sep-2024 Yanqin Li <[email protected]>

feat(pbmt): support PBMTE in MMU (#3521)

Co-authored-by: Xuan Hu <[email protected]>


# 8dd837d8 27-Aug-2024 sinceforYy <[email protected]>

NewCSR: when STCE in menvcfg is zero, STCE in henvcfg is read-only zero


# e3da8bad 22-Jul-2024 Tang Haojin <[email protected]>

build: purge chisel 3 and add deprecation check (#3250)


# 499d09b3 16-Jul-2024 sinceforYy <[email protected]>

NewCSR: set legal init value to WARL Field


# 61f6ab51 18-Jul-2024 Zhaoyang You <[email protected]>

NewCSR: set local interrupt is RO while LCOFI is RW and reset 0 in hideleg CSR (#3222)


# acddddb6 03-Jul-2024 sinceforYy <[email protected]>

NewCSR: fix xtopi priority select and iprio bundle

* unused interrupt field is read only 0 in Iprio Bundle


# 89bb2535 28-Jun-2024 Xuan Hu <[email protected]>

NewCSR,AIA: connect external interrupt pending to xip CSR

* Connect meip produced by imsic to `mip.regOut.MEIP`.
* Connect seip produced by imsic to `mip.rdata.SEIP`.
* Connect vseip produced by ims

NewCSR,AIA: connect external interrupt pending to xip CSR

* Connect meip produced by imsic to `mip.regOut.MEIP`.
* Connect seip produced by imsic to `mip.rdata.SEIP`.
* Connect vseip produced by imsic to `hgeip.regOut[63:1]`

show more ...


# 26033c52 26-Jun-2024 chengguanghui <[email protected]>

Support smstateen/ssstateen extension, add stateen0 CSRs


# 9c0fd28f 18-Jun-2024 Xuan Hu <[email protected]>

NewCSR: fix atp CSRs PPN mask

* The writable length of satp is `PAddrBits - PageOffsetWidth`.
* The writable length of vsatp varies with hgatp.MODE.
* When hgatp.MODE is `Bare`, it's `PAddrBits -

NewCSR: fix atp CSRs PPN mask

* The writable length of satp is `PAddrBits - PageOffsetWidth`.
* The writable length of vsatp varies with hgatp.MODE.
* When hgatp.MODE is `Bare`, it's `PAddrBits - PageOffsetWidth`.
* When hgatp.MODE is `Sv39x4`, it's `41 - PageOffsetWidth`.
* The writable length of hgatp is `PAddrBits - PageOffsetWidth`. Since the root page table is 16 KiB and must be aligned to a 16-KiB boundary, the lowest two bits of the physical page number (PPN) in hgatp always read as zeros.
* A write to hgatp with an unsupported MODE value is not ignored as it is for satp.
* Instead, the fields of hgatp are WARL in the normal way, when so indicated.

show more ...


# 94895e77 07-Jun-2024 Xuan Hu <[email protected]>

NewCSR: fix rdata when VS mode access VS CSRs by address of S mode


# 4df1e462 06-Jun-2024 Xuan Hu <[email protected]>

NewCSR: set accessibility of `htinst` to RW


# 2c054816 04-Jun-2024 sinceforYy <[email protected]>

NewCSR: use rocketchip's CSR addr


# d0b87b97 03-Jun-2024 Xuan Hu <[email protected]>

NewCSR: use runtime reflect to call CSRFieldXXBits instead of compile reflect


# 1d192ad8 02-Jun-2024 Xuan Hu <[email protected]>

NewCSR: support AIA extension Interrupt Pending and Enable


# 8fafb45a 30-May-2024 sinceforYy <[email protected]>

NewCSR: update henvcfg CSR

* Henvcfg.STCE is read-only zero when menvcfg.STCE=0 && access stimecmp/vstimecmp in Non-M mode


12