For my computer architecture class, we had a semester long project where we implemented popular principles of processor developlment to a simulated ARM processor. Throughout the semester I implemented piplining, forwarding paths, and a cache for the simulated processor. Towards the end of the semester we started to researh and apply multithreading to the processor. This is still a class project that is taught at the university so my repository containing the code on github is private, but I can produce code and talk extensively about it in regards to interviews if requested.