History log of /XiangShan/src/main/scala/xiangshan/backend/fu/NewCSR/CSREvents/TrapEntryVSEvent.scala (Results 1 – 20 of 20)
Revision Date Author Comments
# 21e8685b 21-Feb-2025 Zhaoyang You <[email protected]>

fix(xtval): fix xtval when raise intr (#4307)


# cfa16394 15-Nov-2024 chengguanghui <[email protected]>

fix(xtval): fix selection of tval for trap


# be29197c 15-Nov-2024 chengguanghui <[email protected]>

fix(vstval): update vstval when trigger generate breakpoint exception


# 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 ...


# fe52823c 18-Oct-2024 Xuan Hu <[email protected]>

fix(Breakpoint): memory trigger set {m|s|vs}tval with faulting address (#3762)

* This commit fix the value of {m|s|vs}tval when load/store/atomic
trigger fire. The faulting address should be writte

fix(Breakpoint): memory trigger set {m|s|vs}tval with faulting address (#3762)

* This commit fix the value of {m|s|vs}tval when load/store/atomic
trigger fire. The faulting address should be written to tval.

show more ...


# cb36ac0f 20-Sep-2024 Xuan Hu <[email protected]>

fix(CSR): Add legalization code for mstatus.MPP, mnstatus.MNPP and dcsr.PRV (#3577)


# db6cfb5a 19-Sep-2024 Haoyuan Feng <[email protected]>

fix(exception): check high address bits of lsu (#3596)

In previous implementation, we simply truncated the higher bits of jump
target or load & store address, which made it impossible to raise
exc

fix(exception): check high address bits of lsu (#3596)

In previous implementation, we simply truncated the higher bits of jump
target or load & store address, which made it impossible to raise
exceptions in such cases.

Commit
https://github.com/OpenXiangShan/XiangShan/commit/c1b28b66879239a5b3a44741376f3b002e8ac834
has already fixed high address bits checking of jump target. This commit
fixes lsu part, checking full address in tlb and passing full address
directly to csr.

show more ...


# c1b28b66 09-Sep-2024 Tang Haojin <[email protected]>

fix(exception): check high address bits of jump target (#3003)

This commit contains high address bits checking of jump target. In
previous implementation, we simply truncated the higher bits of jump

fix(exception): check high address bits of jump target (#3003)

This commit contains high address bits checking of jump target. In
previous implementation, we simply truncated the higher bits of jump
target address, which made it impossible to raise exceptions in such
cases.

To resolve this problem, we detect the invalid jump target in
jump/branch/CSR and, this information to frontend and store the complete
invalid target in a single register in backend. The frontend will then
raise an exception to backend and backend will also use the invalid
target in the register to write xtval and mepc.

---------

Co-authored-by: Muzi <[email protected]>
Co-authored-by: ngc7331 <[email protected]>

show more ...


# 9205730d 04-Sep-2024 sinceforYy <[email protected]>

fix(csr): add support virtual interrupt for hvictl csr injection


# 37e0d55e 29-Aug-2024 sinceforYy <[email protected]>

fix(csr): fix assert condition when interrupt entry VS event


# 92c61038 16-Aug-2024 Xuan Hu <[email protected]>

Frontend,Backend: add xxtvala support

* utils
* Add checkInputWidth function in NamedUInt to check if the UInt arg passed in has the same width as it defined.
* Frontend
* Pass the unexpanded in

Frontend,Backend: add xxtvala support

* utils
* Add checkInputWidth function in NamedUInt to check if the UInt arg passed in has the same width as it defined.
* Frontend
* Pass the unexpanded instruciton to IBuffer if the C extension 16 bits instruction is illegal.
* No need to use bypass illBuf, since the origin 16 bits instruction will be passed in the ctrlflow bundle.
* IBuffer
* Merge exceptionType and crossPageIPFFix into 3bit field, which type is IBufferExceptionType.
* IBufferExceptionType can hold illegal instruction exception.
* Backend
* CSROpType.ro is removed, since we can use rs1 and rd passed in imm field to distinguish CSRR and CSRW in CSR module.
* Create TrapInstMod to store the trap instruction and handle its update.

show more ...


# e0bc5040 08-Jul-2024 lewislzh <[email protected]>

Backend: fix s/shvstvala, updata xtvala when EX_VI


# fa16cf81 15-Aug-2024 lewislzh <[email protected]>

Backend: support Shvstvala and Sstvala extension


# 3e8a0170 25-Jul-2024 Xuan Hu <[email protected]>

ROB: clear flushPipe when the enq uop has exception (#3281)


# 56f793a7 27-Jun-2024 lewislzh <[email protected]>

NewCSR: fix VS level interrupt map


# 73e616de 11-Jun-2024 Xuan Hu <[email protected]>

NewCSR: VS level interrupt should map as VS level in higher privilege


# ba9c5bff 21-May-2024 Xuan Hu <[email protected]>

NewCSR: fix trapPC in trapEntryHS/VSEvent


# 260a087d 20-May-2024 Xuan Hu <[email protected]>

NewCSR: correct the produce of exception virtual address

* As specified by RISC-V specification, there are 3 different length of virtual address. They are `Bare`, `Sv39` and `Sv39x4`.
* The CSR mepc

NewCSR: correct the produce of exception virtual address

* As specified by RISC-V specification, there are 3 different length of virtual address. They are `Bare`, `Sv39` and `Sv39x4`.
* The CSR mepc and mtval use `Bare` address when the privilege mode is M mode or the satp.MODE is Bare.
* The CSR mepc and mtval use `Sv39` address when the privilege mode is S/U mode and the satp.MODE is Sv39 and when the privilege mode is VS/VU mode and the vsatp.MODE is Sv39.
* The CSR mepc and mtval use `Sv39x4` address when then privilege mode is VS/VU and the hgatp.MODE is Sv39x4 and the vsatp.MODE is Bare.
* The `Sv48` and `Sv48x4` support are provided partly in CSREvent for future usage.

show more ...


# 0c2ba7ae 15-Apr-2024 Xuan Hu <[email protected]>

NewCSR: fix target pc of trap entry event


# 237d4cfd 07-Apr-2024 Xuan Hu <[email protected]>

NewCSR: add CSR events