~ruther/verilog-riscv-semestral-project

ref: 7581533cf757a3434d732348b90205ff6be3b404 verilog-riscv-semestral-project/src d---------
fix: temporarily turn off switching fetch valid

The instruction is always valid, since
for now jumps are calculated right away,
not one cycle after decode. That means
that next instruction is not fetched!

This is fine for simulation,
but when synthesized I think this
would slow down the processor as there
has to be the register file read performed
along with alu operation in one cycle.

First this should be changed, then uncomment
this line, to make the fetched pc+4 instruction
invalid when jumping.
Merge pull request #1 from Rutherther/feat/pipeline

Implement pipeline
docs: better document the stage code, organize it better
chore: import cpu types in stages
chore: recover singlecycle version
aeab4038 — Rutherther 2 years ago
feat: add forwarding signal for better debugging
89310129 — Rutherther 2 years ago
feat: implement pipeline
c5e322db — Rutherther 2 years ago
fix: use reg for procedural assignments
df876b38 — Rutherther 2 years ago
chore: extend memory
308a1462 — Rutherther 2 years ago
tests: add register dump, printing
38e84297 — Rutherther 2 years ago
fix: shift left only by 5 bits
740085c8 — Rutherther 2 years ago
fix: lui, force rs1 zero, always add
51842d38 — Rutherther 2 years ago
feat: add support for official tests
37437a00 — Rutherther 2 years ago
chore: remove first unused register
32388b78 — Rutherther 2 years ago
feat: add support for loading and saving ram from disk
ee0204c8 — Rutherther 2 years ago
feat: pass program to execute by parameter
c682cc06 — Rutherther 2 years ago
feat: implement ebreak

Breaks the processor, can
exit the testcase
a400aceb — Rutherther 2 years ago
feat: make RAM word aligned, add byte_enable

Support sb, sh, lb, lh using byte enable
instead of non-word aligned reads and writes.
9f4ac4dc — Rutherther 2 years ago
fix: jump according to zero flag, not LSB zero!!
ca9604e2 — Rutherther 2 years ago
fix: offset ram by bytes, not bits
Next