aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2021-09-02Describe purpose of FIOM mechanismAndrew Waterman2-0/+45
2021-09-02Pedantically clarify behavior of writing lo/hi parts of countersAndrew Waterman1-4/+5
Writing the low part does not disturb the high part and vice versa.
2021-09-01Remove errant preface entryAndrew Waterman1-1/+0
2021-09-01Clarify widths of privileged CSRs (#728)John Hauser3-44/+49
When different privilege modes have different values for XLEN, the terms _RV32_ and _RV64_ are not sufficient to indicate the width of a privileged CSR that is accessed from a more-privileged mode (e.g. when 32-bit vsatp is accessed from 64-bit HS mode). Where needed, replace "RV32" and "RV64" with more specific references to the correct XLEN.
2021-09-01FIOM may optionally not exist in M/U systemsAndrew Waterman1-0/+2
2021-08-30Revert "Replace "EEI" with "execution environment" (#723)"Andrew Waterman4-49/+33
This reverts commit 8551bd20be39c27f9cead6231c6b6858ec8c2232 at @kasanovic's request.
2021-08-30Fix constraint on existence of menvcfg[h]/FIOMAndrew Waterman1-2/+3
2021-08-29FIOM affects aq/rl, tooAndrew Waterman3-0/+16
2021-08-29Add henvcfg/senvcfg CSRsAndrew Waterman3-0/+165
2021-08-29Minor changes to JohnH's henvcfg specAndrew Waterman1-30/+36
2021-08-29Add *envcfg CSR allocationsAndrew Waterman1-0/+11
2021-08-29Add CSRs henvcfg/henvcfgh to hypervisor extensionJohn Hauser1-2/+88
2021-08-29Add mseccfg CSRAndrew Waterman3-0/+56
2021-08-29Add preface entryAndrew Waterman1-0/+2
2021-08-29Designate some of SYSTEM opcode for custom useAndrew Waterman1-0/+40
2021-08-28Add mconfigptr CSR (#697)Andrew Waterman3-0/+49
* Add Smdisc extension (i.e. mconfigptr CSR) * mconfigptr may be hardwired to zero * Add changelog entry for mconfigptr * Fix mconfigptr preface entry "points to the address of" implies an extra level of indirection. Should be "points to" or "contains the address of"
2021-08-28Replace "EEI" with "execution environment" (#723)John Hauser4-33/+49
Make the manual more correct and consistent by dropping the term _execution environment interface_ and its abbreviation _EEI_ and replacing them everywhere with just _execution environment_.
2021-08-27Fix (again) non-normative CSR side-effect textAndrew Waterman1-2/+1
CLIC will add unprivileged CSRs with write side effects, so remove the soon-to-be-incorrect clause. See https://github.com/riscv/riscv-fast-interrupt/issues/166
2021-08-25Remove historical remark on MRET definitionAndrew Waterman1-9/+0
Since the N extension is gone, the comment is largely irrelevant. The virtualization comment still partially applies, because we wish to be able to virtualize M/HS inside S/VS, but has also become less relevant because of the TSR feature in mstatus.
2021-08-24Fix non-normative text about CSR ordering (#720)Andrew Waterman1-9/+12
The non-normative text erroneously suggested that only accesses to time/cycle/mcycle need be ordered by FENCEs. In fact, other CSR accesses are also visible to other harts, including interrupt-pending CSRs. (The preceding normative text has no such deficiency.)
2021-08-24Add marchid for Hummingbirdv2 E203 (#664)hucan71-1/+1
2021-08-18Update H chapter table of synchronous exception priorities (#717)John Hauser1-20/+19
2021-08-18Tweak table of synchronous exception priorities (#716)John Hauser1-5/+6
2021-08-17Make explicit the priorities of synch. exceptions of H extension (#711)John Hauser1-0/+53
* Make explicit the priorities of synch. exceptions of H extension * "page guest-fault" -> "guest-page fault"
2021-08-17Clarify priorities of synchronous exceptions (#715)John Hauser1-14/+30
2021-08-16stval already cannot be zero on breakpoints, misaligned addresses (#714)John Hauser1-5/+2
2021-08-16VS mode should not see exception code 10 (#712)John Hauser1-0/+1
2021-08-16Merge branch 'jhauser-us-jhauser-2021-HBaseI'Andrew Waterman1-0/+5
2021-08-16Insert missing commaAndrew Waterman1-1/+1
2021-08-16State additional dependencies of hypervisor extensionJohn Hauser1-0/+5
2021-08-16Corrections to mstatus in hypervisor chapter (#710)John Hauser1-2/+2
1. For RV32, mstatush is now always required to exist. 2. mstatus.MPP is not just one bit.
2021-08-16Minor improvements to text for virtual instruction exceptions (#709)John Hauser1-2/+5
2021-08-13Clarify when mstatus.FS may be hardwired zero (#707)John Hauser1-3/+5
2021-08-11Interrupt conditions are also evaluated on falling edgesAndrew Waterman2-2/+4
2021-08-11Generalize interrupt trap condition evaluation conditions (#705)Andrew Waterman2-2/+5
This approach is more extensible, and now implicitly includes writes to sstatus.SIE / mstatus.MIE, as it should.
2021-08-11Clarify that RV64 accesses to mtime[cmp] are atomicAndrew Waterman1-1/+1
As stated clearly by the preceding text, the baroque sequence for updating mtimecmp is for RV32. RV64 simply uses aligned loads and stores. Closes #639
2021-08-11State that misa.F does not affect mstatus.FSAndrew Waterman1-2/+13
Closes #534
2021-08-08Improve rules for virtual instruction exceptions, again (#703)John Hauser1-19/+66
One, clarify the rules for virtual instruction exceptions by adding the concept of _HS-qualified_; and two, make a special case for accesses to 32-bit high-half CSRs like cycleh and htimedeltah. Also, when WFI is attempted in VU mode, the exception depends on mstatus.TW.
2021-08-06Clarify mepc invalid address conversionAndrew Waterman2-8/+12
If any addresses are invalid, mepc must be able to hold at least one of them.
2021-08-05Improve description of interrupt traps (#701)Andrew Waterman3-28/+41
Supersedes #590
2021-08-02Merge branch 'jhauser-us-jhauser-2021-extStats'Andrew Waterman17-125/+1200
2021-08-02Ratified Zihintpause is version 2.0Andrew Waterman2-2/+2
2021-08-02Fix format for ratified Zihintpause in preface table, part 2John Hauser1-1/+1
2021-08-02Fix format for ratified Zihintpause in preface tableJohn Hauser1-1/+1
2021-08-02Zihintpause is ratifiedJohn Hauser1-1/+1
2021-08-02Update status of various extensionsJohn Hauser2-1/+16
2021-08-02change verison number and add spec state (#698)Tariq Kurd1-1/+6
2021-08-02Drop NaN boxing from ZfinxAndrew Waterman1-7/+14
See new non-normative text for explanation
2021-08-02Made clear chapter is defining four extensions for different precisions.Krste Asanovic1-31/+34
Reordered sections to remove forward references.
2021-08-02Removed "baseline" from description of F extension in comment.Krste Asanovic1-3/+2