This is my solution for the first 6 chapters of the project-centered course "Build a Modern Computer from First Principles: From Nand to Tetris" offered by Coursera. I did this in my second year of college when learning about Computer Architecture. This is a very fun project from which I have learnt about some VHDL basics and how the computer is built.
You can learn more about Nand2Tetris from Coursera and its official companion website
You may want to finish the course before reading my solution to get the best experience.