Implementation of RISC-V base ISA, RV32I.
Goal:
- Comparison of different implementation (uArch) and its effects on performance, power comsumption, and area.
- Reference material for learning computer architecture and chip design. The implementation will be documented with different levels of specification so people can challenge themselves and learn from it. For example, people can start from implementing the ISA and then add features such as pipelining, branch predictors, virtual memory, etc. Each different implementation will be documented with different level of details, giving guided challenges for students to learn.
General Design Questions of Implementation
- Harvard Architecture or Von Neumann - Both architecture would be implemented to compare. Initially, Harvard Architecture will be implemented.
- Choice of functional units - Ripple carry adder, carry-lookahead adder, or better adders or any computational units will be choosed and compared.
- Number of pipelining - No pipelining, 3-stage pipelining, N-stage pipelining.
- Branch Predictors - No branch predictors, saturating counter, novel ideas from research (research from Dr. Yale Patt from UT Austin).
- PIM - Efforts to reduce the memory latency. and more will be added in the future as I work on the project.
Currently in-progress.