This repository contains one code for the Single Cycle Processor, subsequent testbenches to test each instruction individually and a few questions on the topic.
The best way to check if the single cycle code correctly implements an instruction is to update the instruction memory (ie. machine code) to use that particular operation before storing the result at a particular location in the data memory. Then, we use the testbench to cross-check the value stored at that address with the expected result of the instruction. If they match, the instruction has executed properly and the program will print 'Simulation succeeded'.
-
Modify the given Single Cycle Processor code to include the Andi, Ori and Xori instructions.
-
Modify the given Single Cycle Processor code to include the Jr (Jump Register) instruction.