Here we have a video that goes through a technical overview of how our 8-bit ALU works.
Included topics:
ALU Slice overview
Technical 8-bit ALU overview
How to operate ALU through control interface
Here above can be seen our ALU Bit-Slice that we built in minecraft. It is the component that makes up our 8-bits of the ALU and allows calculations to be preformed.
These include, in order of the select 0 to 7 for the Multiplexer(Mux):
OR
NOR
NAND
AND
SLT
XOR
SUB
ADD
One important thing to note, is that we did not wish to make a blatant control for any operation that might need a carry-in, instead we used logic from our select to send a signal if the operation chosen was one that requires a carry-in.
Here above we can see the full 8-bit ALU. It is compromised of two inputs, A&B, a select system for the MUX, a wall with corresponding select values to the desired operations, and an output wall fitted with and overflow bit plus the 8-bit output.
KEY:
Another thing to note, is that the ALU is outfitted with different color wool blocks. These each represent different sections of the ALU, and demonstrate a helpful strategy of using different wool colors as visual indicators to differentiate between sections.
INPUTS:
For out inputs we decided to use a set of levers in Minecraft to choose our inputs for A(left) and B(right). As seen below the block above the levers is called a "Redstone Lamp" and allows for representation of on/off states, or in our case, 1's and 0's. On being 1 and Off being 0.
MUX Select System:
We again are using the same lever and redstone lamp system to represent S1,S2, & S3 for the MUX
Functions:
On this board we placed our functions with the corresponding select inputs for the mux, so one can see the desired output on the output wall.
Output Wall
For the output, we decided to represent the 1's and 0's again with redstone lamps, and even accounted for overflow that might result in a 9th bit being needed.
We also marked it clearly with signs dictating the Least Significant and Most Significant Bit, Output, and Overflow