<aside> ✅ Before the lab
If you are behind, download the starter design as in step 1 below. Otherwise follow 2 and 3. The starter design has already implemented tasks 1 & 2 (16 bit conversion of EEP1) so if you use this you must read these tasks but do not need to implement them. The conversion is a mechanical process but one you need to do to use your own EEP1 design.
Note: I am going ahead with EEP2starter instead of modifying my EEP1 as it is too time-consuming to change all challenge features like CMP and LSL Rb to a new format that I haven’t gone through yet.
Task 1-2 skipped
<aside> ✅ Task 3 Use the code in EEP2 tests alu.ram (assembler EEP2 tests alu.txt) to check that you have correctly changed EEP1 into a 16 bit databus. These tests terminate with PC = 1 (pass) or PC=2 (fail). You can check the last few instructions before PC=2 to find the failing test.
EEP2 needs a small addition to the EEP1 instruction set to cope with a consequence of extending the datapath and PC width to 16 bits. This is delivered by the ext16 sheet and tested in the next section.
</aside>
Termination on PC = 1
EXT
to generate 16 bit immediate constantsEEP1 instructions on 16 bit EEP2– there is a problem where Imm8 can nolonger genereate all possible data values or address values.