This project is part of the CS1050 Computer Architecture module, where we developed a nanoprocessor using VHDL on a Basys 3 board.
The nanoprocessor is capable of executing the following four instructions:
- Move
- Add
- Jump
- Negate
- Program ROM: Instructions are hard-coded into the Program ROM.
- Instruction Decoder: Decodes the instructions for execution.
- Adder/Subtractor: A 4-bit unit connected through separate data buses to the register bank through two 8-way 4-bit Multiplexers.
- Multiplexers: Used to select appropriate data inputs.
- Program Counter: Keeps track of the instruction sequence.
- Register Bank: Acts as temporary memory storage.
Each component of the nanoprocessor was tested separately using timing diagrams to ensure proper functionality.
This repository contains the VHDL code for the nanoprocessor. To run the project on a Basys 3 board, follow these steps:
- Clone the repository.
- Open the project in Vivado Xilinx.
- Synthesize the design.
- Program the Basys 3 board with the synthesized bitstream.
-
S.M.A.N.A. Manchanayake - 210373G
Department of Computer Science & Engineering
Faculty of Engineering
University of Moratuwa -
K.C.K. Manawathilake - 210372D
Department of Computer Science & Engineering
Faculty of Engineering
University of Moratuwa