rv32g-core

Pipelined, synthesizable, and fabricable RISC-V core in SystemVerilog+Yosys+OpenROAD
Log | Files | Refs | LICENSE

DateCommit messageAuthorFiles+-
2026-08-21 23:46update README with current milestoneVineet Kumar1+8-1
2026-08-21 23:31remove addi to nop decoding because of comparisonVineet Kumar1+1-8
2026-08-21 22:55remove expensive redundant name-based opcode decodingVineet Kumar3+48-184
2026-08-11 11:40split memop into loadop and storeopVineet Kumar5+65-55
2026-08-09 11:24import riscv-tests' license and readme fileVineet Kumar2+208-0
2026-08-07 09:10fold i-cache tag+valid into BSRAM to cut critical pathVineet Kumar1+34-27
2026-08-07 07:01increase cache_size to 2K words from 256 to better use BSRAMVineet Kumar1+1-1
2026-08-06 17:32reduce pipeline critical path delayVineet Kumar7+229-194
2026-08-06 15:47fix pipeline by handling hazards, aligning data-memory, and registered readsVineet Kumar6+176-85
2026-08-06 13:25remove the unused result address from test casesVineet Kumar1+0-10
2026-08-05 09:12print the unmodified failed test numberVineet Kumar2+10-6
2026-08-05 09:12test only for rv32ui right nowVineet Kumar1+2-1
2026-08-04 12:42fix test running and remove rv64-specific testsVineet Kumar36+87-1862
2026-08-04 10:11vendor riscv-tests with using result address instead of zicsrVineet Kumar109+8497-17
2026-08-04 10:02remove github:riscv-software-src/riscv-tests submoduleVineet Kumar2+0-4
2026-07-26 10:57pipeline register reset's pc should use BASE_ADDR constVineet Kumar1+3-2
2026-07-26 10:57fix wrong pipeline register being used in next_pc calculationVineet Kumar1+2-2
2026-07-26 10:56stop using I-cache until I fix pipeliningVineet Kumar1+2-1
2026-07-26 10:56exit sim on a 32'b0 after any real instVineet Kumar1+7-1
2026-07-24 08:44remove erroneous basic pipelining complete mention in readmeVineet Kumar1+0-3
2026-07-24 08:44switch pipeline registers to sync resetVineet Kumar1+22-22
2026-07-24 08:17remove zicsr extension for now due to issuesVineet Kumar7+11-432
2026-07-14 07:59move $display() messages to tbVineet Kumar3+34-32
2026-07-14 07:56properly latch the pipeline registersVineet Kumar4+67-48
2026-07-13 04:42remove tb prematurely exiting on ecall/ebreakVineet Kumar1+1-7
2026-07-13 04:42insert stall after csr regfile registered readVineet Kumar4+53-20
2026-07-12 15:40optimize csr address decoding from priv spec 2.1Vineet Kumar2+105-87
2026-07-12 09:35fix readme's claim about zicsr+mret having identical performance and usageVineet Kumar1+2-3
2026-07-12 06:46fix csr regfile memory inferenceVineet Kumar5+15-4
2026-07-11 13:00make unified memory have registered reads againVineet Kumar1+6-9
2026-07-11 13:00fix synth errorsVineet Kumar2+12-5
2026-07-11 12:46make pnr make target depend on synthVineet Kumar1+1-1
2026-07-11 09:26ignore rom.txt in .gitignoreVineet Kumar1+1-0
2026-07-11 09:25do initial pipeliningVineet Kumar8+255-106
2026-07-08 09:41implement privileged MRET instructionVineet Kumar5+63-12
2026-07-06 12:10stop simulation when illegal instruction encounteredVineet Kumar1+3-1
2026-07-06 12:10implement ZicsrVineet Kumar6+350-18
2026-07-03 15:49exit simulation on EXC_ILL_INST againVineet Kumar1+3-2
2026-06-18 20:58increase icache depth to 8K wordsVineet Kumar1+2-2
2026-06-12 04:42update readme with current progressVineet Kumar1+20-4
2026-06-12 04:41add librelaneVineet Kumar3+17-0
2026-06-11 20:52make it easy to enable/disable i-cache when fetching (synth-time)Vineet Kumar1+10-0
2026-06-11 01:20temporarily decrease cache depth to 64 wordsVineet Kumar1+2-1
2026-06-11 01:11add pnr makefile targetVineet Kumar2+8-0
2026-06-11 00:45comment out unused async resets in hart to remove comb. rst LUTsVineet Kumar1+17-21
2026-06-11 00:44make fpga temp. top module and add dmem_valid output to unified_memoryVineet Kumar6+52-6
2026-06-10 18:41check if pass and fail functions exist in test, print if notVineet Kumar1+3-1
2026-06-10 00:20fix shamt to be combinational assign, not initialVineet Kumar1+3-1
2026-06-09 23:01write data memory according to the byte locationVineet Kumar1+24-8
2026-06-09 22:44try fixing the icache's aliasingVineet Kumar1+13-6
2026-06-09 22:44implement better testing infrastructureVineet Kumar7+85-313
2026-06-09 18:45move unified memory read to be combinational for single-cycleVineet Kumar1+5-1
2026-06-09 18:45change finish condition of testbench to include '0 instVineet Kumar1+6-1
2026-06-09 04:31implement a sort of modified harvard arch. and icache flushingVineet Kumar7+129-44
2026-06-09 04:29update makefileVineet Kumar1+18-2
2026-06-08 21:45implement Zifencei as a nopVineet Kumar2+12-4
2026-06-08 21:40add rv32 toolchain to manifest.scmVineet Kumar1+3-1
2026-06-08 20:14increase tb imem to 1K and dmem to 4KVineet Kumar1+2-2
2026-06-08 20:14remove the temporary inst opcode decoding debug messageVineet Kumar1+0-2
2026-06-08 19:07fix faulty nop detection in decodingVineet Kumar1+3-3
2026-06-08 18:53fix instruction decoding in decoding logic to not use initial assignmentVineet Kumar1+13-6
2026-06-08 18:53update rom.txt to be rv32ui-p-addi and increase rom size to 1024 wordsVineet Kumar2+288-3
2026-06-08 18:52output better loggingVineet Kumar2+17-5
2026-06-07 22:57print current cycleVineet Kumar1+14-2
2026-06-07 21:56add very basic testbenchVineet Kumar5+71-3
2026-06-04 22:33replace casez with case insideVineet Kumar1+1-1
2026-06-03 20:06add resources and LLM disclosure to READMEVineet Kumar1+52-25
2026-06-03 17:19use gowin-specific synthesis flowVineet Kumar1+1-1
2026-06-03 02:03add makefile for linting and synthesisVineet Kumar2+24-0
2026-06-03 01:54fix synthesis issuesVineet Kumar2+11-8
2026-06-02 18:58add .gitignoreVineet Kumar1+2-0
2026-06-02 18:58add nopVineet Kumar1+10-1
2026-06-02 18:58replace writeback for loop with foreachVineet Kumar1+1-1
2026-06-02 02:57move remaining decode typedefs to pkg for easier debugging access laterVineet Kumar2+89-89
2026-06-02 02:57add stubs for unused signals in hart's top-levelVineet Kumar1+16-1
2026-06-02 01:19add writeback stageVineet Kumar2+29-1
2026-06-02 00:14add memory stageVineet Kumar2+82-5
2026-06-01 22:01add execute stageVineet Kumar4+123-22
2026-06-01 19:53group control signals together when decoding based on major opcodeVineet Kumar1+55-193
2026-06-01 19:40make a package for user-defined typesVineet Kumar3+103-96
2026-06-01 19:24add basic exception signalsVineet Kumar1+21-14
2026-06-01 14:59l'anthorpic fisheVineet Kumar1+1-0
2026-06-01 01:48assign control signals for all non-SYSTEM RV32I instructionsVineet Kumar1+246-2
2026-05-31 23:04define control signalsVineet Kumar1+78-4
2026-05-31 21:26parse instructions into names to generate control signalsVineet Kumar1+80-12
2026-05-31 20:48switch decoding to using major opcode enumVineet Kumar1+47-12
2026-05-31 19:58start working on decoding logicVineet Kumar2+116-4
2026-05-30 19:21fix regfile declaration to be an unpacked arrayVineet Kumar1+5-5
2026-05-29 06:07add fetching support but needs testsVineet Kumar2+31-8
2026-05-29 03:01add skeleton hart's top-level module with regfileVineet Kumar1+31-0
2026-05-27 20:39initial payloadVineet Kumar2+254-0