- May 30, 2024
-
-
akifejaz authored
-
- May 28, 2024
-
-
akifejaz authored
-
- Feb 19, 2024
-
-
Katharina authored
Add missing prerequisite libboost-regex-dev Signed-off-by:Katharina <KatCe@users.noreply.github.com>
-
- Feb 03, 2024
-
-
YenHaoChen authored
The number of triggers is configurable since https://github.com/riscv-software-src/riscv-isa-sim/pull/1219 . The trigger description was for the limited implementation when developing the extension. All trigger types are supported now. The information isn't very useful anymore. Signed-off-by:
YenHaoChen <39526191+YenHaoChen@users.noreply.github.com>
-
- Oct 20, 2023
-
-
brs authored
-
- Jun 18, 2023
-
-
Andrew Waterman authored
-
- May 29, 2023
-
-
Weiwei Li authored
-
- Mar 21, 2023
-
-
- Jan 30, 2023
-
-
YenHaoChen authored
-
- Jan 12, 2023
-
-
Tim Newsome authored
Addresses #1221
-
- Dec 28, 2022
-
-
Tim Newsome authored
PR #889 put a UART at 0x10000000, which conflicts with the old address. Fixes #1179.
-
- Dec 21, 2022
-
-
YenHaoChen authored
-
- Dec 01, 2022
-
-
YenHaoChen authored
-
YenHaoChen authored
add module_t::trap_taking_match and trigger_t::trap_taking_match for checking itrigger after taking traps
-
- Nov 30, 2022
-
-
YenHaoChen authored
-
- Nov 18, 2022
-
-
Weiwei Li authored
-
- Nov 17, 2022
-
-
Scott Johnson authored
-
- Oct 20, 2022
-
-
Weiwei Li authored
-
- Aug 09, 2022
-
-
Weiwei Li authored
-
- Aug 04, 2022
-
-
liweiwei authored
Update README
-
- Jul 09, 2022
-
-
Weiwei Li authored
-
- May 13, 2022
-
-
Andrew Waterman authored
-
- May 05, 2022
-
-
soberl authored
-
- Feb 18, 2022
-
-
Rupert Swarbrick authored
Before this patch, spike just had an "Xbitmanip" extension which covered everything in the proposed bitmanip extension that hadn't been ratified. The problem is that if you want to model (or verify) a processor that targetted just some of the proposed bitmanip extension, you couldn't configure Spike to do that. For example, the lowRISC Ibex processor has several different configurations. The "balanced" configuration targetted Zba, Zbb, Zbs, Zbf and Zbt of the 0.92 spec. With the Zba, Zbb and Zbs ratified, we'll now be able to use an ISA string like rv32imc_Zba_Zbb_Zbs_XZbf_XZbt and Spike will correctly fail to decode instructions like 'bcompress', which would have been decoded with Xbitmanip. This patch adds a new custom extension name for each part of the extension that wasn't fully ratified. These have an 'X' prefix so, for example, the bit permutation instructions that were proposed as Zbp can be found under XZbp. Specifying "Xbitmanip" gets all of these extensions, so its behaviour should be unchanged. Note that the slo(i) / sro(i) instructions have been moved from the proposed Zbb to XZbp. This matches a comment in the Change History section of v0.93 of the bitmanip spec: it seems that the authors forgot to also move them in Table 2.1 (which gives the lists of instructions for each extension). This change won't break anything that currently exists, but it took quite a while to figure out what was going on so I thought I'd leave a breadcrumb trail for the next engineer! The bulk of the patch is just defining some more entries in the isa_extension_t enum and rewriting each of the instructions to depend on the relevant entry. This is mostly a straight textual replacement but it's slightly more complicated for things like the "pack" instruction that are defined by several different proposed extensions.
-
- Jan 30, 2022
-
-
liweiwei authored
-
- Jan 07, 2022
-
-
Andrew Waterman authored
-
- Dec 17, 2021
-
-
Andrew Waterman authored
-
- Nov 07, 2021
-
-
Mohit Singla authored
-
- Nov 03, 2021
-
-
Markku-Juhani O. Saarinen authored
Krypto 1.0 changes: Entropy source CSR, name. List scalar crypto instruction groupings, as there is no single K extension. Co-authored-by:Markku-Juhani O. Saarinen <mjos@mjos.fi>
-
- Sep 25, 2021
-
-
Andrew Waterman authored
-
- Sep 08, 2021
-
-
Andrew Waterman authored
-
- Jul 21, 2021
-
-
Daniel Lustig authored
* Priv virtual memory updates * Priv 1.12 requires page faults when the address translation process reaches a PTE with any reserved bit set * Svpbmt uses two PTE bits, but otherwise has no effect on Spike (since Spike is sequentially consistent and does not model PMAs) * Add Svinval instructions Even though I updated riscv-opcodes separately, I merged the new defines into riscv/encoding.h manually, because riscv-opcodes seems to be a step ahead of riscv-isa-sim for a few vector opcodes, causing conflicts when regenerating encoding.h... If that gets fixed, and encoding.h gets regenerated automatically, I can remove it from this PR to avoid conflicts. * Svinval: use #include rather than copying code ..for the Svinval functions that are implemented in ways that just mimic SFENCE/HFENCE instructions Thanks to @aswaterman for the suggestion
-
- May 11, 2021
-
-
ChunPing Chung authored
* rvp: add 8/16 bits add/sub simd instructions * rvp: add 8/16 bits shift simd instructions * rvp: add 8/16 bits compare simd instructions * rvp: add 8/16 bits multiply simd instructions * rvp: add 8/16 bits misc simd instructions * rvp: add 8 bits unpacking simd instructions * rvp: update suppported extention and add restriction * rvp: update encoding.h and riscv.mk.in * rvp: disasm: add simd instruction support * rvp: update readme for p-ext simd instructions * rvp: fix rvp support version * rvp: update encoding.h generated from riscv-opcode p-ext branch * rvp: rename some macro argument * rvp: add pk[bb,bt,tt,tb][16,32] instructions * rvp: add kadd32, [su]maqa[_su] instructions * rvp: fix missing initial value of pd * rvp: add msw 32x32 multiply & add instructions * rvp: change to use extract64 * rvp: add msw 32x16 multiply & add instructions * rvp: fix some style * rvp: change reduction marcro definition * rvp: add signed 16x32 add/subtract instructions * rvp: use stdint to replace hardcode max/minimum * rvp: refactor some p-ext macro code * rvp: add partial simd miscellaneous instructions * rvp: add signed 16 x 64 add/subtract Instructions * rvp: add 64-bit add & sub instructions * rvp: add 32-bit mul with 64-bit add/sub instructions * rvp: add 16-bit mul with 64-bit add/sub instructions * rvp: disasm: add 64 bit profile instruction support * rvp: add Q15 saturation instructions * rvp: fix kmar64/kmsr64 saturation behavior * rvp: add 32-bit computation instructions * rvp: add rdov/clrov and fix khm16 behavior of setting OV flag * rvp: add non simd miscellaneous instructions * rvp: add Q31 saturation instructions * rvp: disasm: add non-simd instruction support * rvp: add 32 bits add/sub simd instructions * rvp: fix left shift saturation bug * rvp: add 32 bits shift simd instructions * rvp: add rv64 only Q15 simd instructions * rvp: add rv64 only 32-bit multiply instructions * rvp: add rv64 only 32-bit miscellaneous instructions * rvp: add rv64 only 32-bit mul & add instructions * rvp: add rv64 only 32-bit parallel mul & add instructions * rvp: add rv64 only non-simd 32-bit shift instructions * rvp: disasm: remove redundant tab * rvp: disasm: add rv64 only instructions support * rvp: change ov csr to ucode to match v0.5.2 spec * rvp: update readme for p-ext 0.5.2 * rvp: update to p-ext v0.9.1 * rvp: update to p-ext v0.9.2 * rvp: update readme for p-ext 0.9.2 * rvp: fix macro for PKxx16 & PKxx32 commands. * rvp: fix missing for in PKxxdd macro * Sign-extension for p-ext insns * * Fixed uclipNN insns while sh >> 64 is an UB. * Added missing OV * Added missing sext_xlen * Remove unused macroses * Sign extension for RD_PAIR macro * rvp: remove lost tab Co-authored-by:Mark Fedorov <mark.fedorov@cloudbear.ru>
-
- Feb 25, 2021
-
-
Chih-Min Chao authored
Signed-off-by:Chih-Min Chao <chihmin.chao@sifive.com>
-
- Feb 09, 2021
-
-
Daniel Lustig authored
-
- Jan 23, 2021
-
-
Ben Marshall authored
Brief: - This commit adds spike support for the scalar cryptography extension. See the riscv-crypto repository (https://github.com/riscv/riscv-crypto) for more information on this extension. - It is based on the experimental patch which has so far been kept in the riscv-crypto repository. Now that scalar crypto is nearly at the "freeze" stage and entering opcode consistency review, it makes sense to start upstreaming our experimental version. - In terms of compiler support - we are using an experimental patch in the riscv-crypto repository at the moment, others are working on an upstream appropriate version. Details: - Add support for dedicated scalar crypto instructions. - Add very basic support for the entropy source (entropy_source.h). Much of the behaviour of this is implementation specific. This model aims to provide the bare minimum of functionality which can be used to quickly develop software. It uses /dev/urandom as its entropy source for now. - Scalar crypto is unique in that it _borrows_ instructions from the Bitmanipulation extension. This is currently _not_ encoded in the patch, as I didn't want to damage anything in Bitmanip which is currently under review. However, I've added a macro in riscv/decode.h called "require_either_extension(A,B)", which allows instructions to be valid opcodes iff they are in one or both extensions. On branch scalar-crypto Changes to be committed: modified: README.md modified: riscv/decode.h modified: riscv/encoding.h new file: riscv/entropy_source.h new file: riscv/insns/aes64im.h new file: riscv/insns/aes64ks1i.h new file: riscv/insns/aes64ks2.h new file: riscv/insns/aes_common.h new file: riscv/insns/aesds.h new file: riscv/insns/aesdsm.h new file: riscv/insns/aeses.h new file: riscv/insns/aesesm.h new file: riscv/insns/sha256sig0.h new file: riscv/insns/sha256sig1.h new file: riscv/insns/sha256sum0.h new file: riscv/insns/sha256sum1.h new file: riscv/insns/sha512sig0.h new file: riscv/insns/sha512sig0h.h new file: riscv/insns/sha512sig0l.h new file: riscv/insns/sha512sig1.h new file: riscv/insns/sha512sig1h.h new file: riscv/insns/sha512sig1l.h new file: riscv/insns/sha512sum0.h new file: riscv/insns/sha512sum0r.h new file: riscv/insns/sha512sum1.h new file: riscv/insns/sha512sum1r.h new file: riscv/insns/sm3p0.h new file: riscv/insns/sm3p1.h new file: riscv/insns/sm4_common.h new file: riscv/insns/sm4ed.h new file: riscv/insns/sm4ks.h modified: riscv/processor.cc modified: riscv/processor.h modified: riscv/riscv.mk.in
-
- Jan 15, 2021
-
-
Andrew Waterman authored
Resolves #628
-
- Jan 12, 2021
-
-
Andrew Waterman authored
Resolves #625
-
- Nov 19, 2020
-
-
Andrew Waterman authored
h/t @daniellustig
-
- Nov 10, 2020
-
-
Andrew Waterman authored
-