In short the first 6 bits of the bidirection IO is A, then bits 7 and 7 of the bidirectional and bits 0 to 3 of the single way input are B and the last 4 bits are the ALU opcode (based on RISCV) Values get outputted in 8bit from the single way output bus
Setting the inputs and testing the outputs for certain opcodes
None at the moment... Could attach LEDs for testing
# | Input | Output | Bidirectional |
---|---|---|---|
0 | Bit 2 of ALU Input B | Bit 0 of ALU Output | Bit 0 of ALU Input A |
1 | Bit 3 of ALU Input B | Bit 1 of ALU Output | Bit 1 of ALU Input A |
2 | Bit 4 of ALU Input B | Bit 2 of ALU Output | Bit 2 of ALU Input A |
3 | Bit 5 of ALU Input B | Bit 3 of ALU Output | Bit 3 of ALU Input A |
4 | Bit 0 of ALU OpCode | Bit 4 of ALU Output | Bit 4 of ALU Input A |
5 | Bit 1 of ALU Opcode | Bit 5 of ALU Output | Bit 5 of ALU Input A |
6 | Bit 2 of ALU OpCode | Bit 6 of ALU Output | Bit 0 of ALU Input B |
7 | Bit 3 of ALU OpCode | Bit 7 of ALU Output | Bit 1 of ALU Input B |