In this project is to enhance the architecture of the simple "Hack Microprocessor". The goal is not to simply duplicate the data path but to put a lot of thought on the control path and architectural planning to allow the implementation of an optimal architecture. Some challenges include efficient resolution of hazards and branch handling.

The Hack processor is a very simple processer which is presented in the following website:
https://www.nand2tetris.org/
The hack processor has two basic commands which are executed in pairs. The purpose of this project is to have the possibility to execute them in parallel.
In this project, the goal is not to simply duplicate the data path but to put a lot of thought on the control path and architectural planning to allow the implementation of an optimal architecture. Some challenges include efficient resolution of hazards and branch handling.
The project stage include architectural design, RTL implementation and simulation, synthesis and physical design.
Prerequisites: Digital Systems and Computer Structure – 044252