Vector ISA
summary
RISC-V adds 32 vector registers V0–V31, a programmable VL register that limits active elements, and a V-config that selects register count and element width and V-config returns max VL for that configuration. Loads/stores support unit/strided/indexed access, there is scalar-in-vector support plus V0 low bit mask predication, splat/slide/merge ops, and FP16 as a vector datatype. Example loop adds a scalar to a 17,214-element array using 8-element VL chunks with no prologue/epilogue, handling the final 5-element tail.
AI-written summary · about
chapters (8)
- 0:00Introduction and spec status
- 1:48Why vector extensions matter
- 3:35RISC-V vector ISA basics
- 9:18Vector addition example
- 14:07Full vector instruction set
- 19:26Vectorizing a simple loop
- 32:46Loop assembly walkthrough
- 33:07Vector masking explained
related talks
11mSimulate, trace, and evaluate a RISC-V system leveraging very long vectors
21mRISC-V ISA & Foundation Overview
14mRISC-V Grows Up and Goes Big!
20mBoosting AI on Semidynamics RISC-V Cores with Custom Tensor Instr...
14mExtending RISC-V with SCAIE-V
02mRISC-V Welcome
28mAn Efficient Implementation of TensorFlow Lite for RISC-V Vectors
14mLow-Cost SIMD Module for ML Acceleration
