Branch Prediction in Hardcaml for a RISC-V 32im CPU
Alex Saveau

TL;DR
This paper presents a hardware implementation of branch prediction for a RISC-V 32im CPU using Hardcaml, demonstrating static decode predictions and BATAGE, highlighting the integration of functional programming in hardware design.
Contribution
It introduces a novel hardware branch prediction approach for RV32IM CPUs implemented in Hardcaml, combining static and BATAGE techniques.
Findings
Effective branch prediction improves instruction throughput
Hardcaml facilitates hardware design in OCaml
Implementation details of BATAGE in RISC-V CPU
Abstract
Accurate branch prediction is a critical part of high performance instruction stream processing. In this paper, I present a hardware implementation of branch prediction for a RV32IM CPU, starting with static decode stage predictions and culminating in the use of BATAGE. In addition, I detail my experience writing the RTL in Hardcaml, a hardware description library for the functional programming language OCaml.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsParallel Computing and Optimization Techniques · Advanced Data Storage Technologies · Distributed and Parallel Computing Systems
