The ALU is a complex part of the Juno and all the components will not fit on a single PCB board therefore it is broken down into seperate boards as follows
- ALU (bits 0 - 3)
- ALU (bits 4 - 7)
- Shifter and flag logic
ALU (bits 0 -3)
The following schematic shows the design for the ALU (bits 0 -3).Control
There are 8 control inputs- C0 - Combined with C1 used to select ALU operation to output; 00 = AND, 01=OR, 10=XOR, 11=ADDER
- C1 - see above
- CIN - Carry input from the Control Register
- LBUSINPUTSELECT - select between the external left bus (L) or hardcoded zero (H) for the ALU's left input
- RBUSINPUTSELECT - select between the external right bus (L) or hardcoded zero (H) for the ALU's right input
- CINPUTSEL0 - combined with CINPUTSEL1to select the carry input into the adder; 00 = 0, 01=1, 10 = CIN, 11 = 0
- CINPUTSEL1 - see above
- INVB - If enabled (H) inverts the ALU's right input. Used for performing subtraction.
Input
There are two bus data inputs consisting of 4 bits each, bits 0 to 3.- L_0 - left bus bit 0
- L_1 - left bus bit 1
- L_2 - left bus bit 2
- L_3 - left but bit 3
- R_0 - right bus bit 0
- R_1 - right bus bit 1
- R_2 - right bus bit 2
- R_3 - right bus bit 3
Ouput
The output consists of 4 output bits plus the carry out from the adder which is fed into the ALU board for bits 4 to 7.- Z0 - output bus bit 0
- Z1 - output bus bit 1
- Z2 - output bus bit 2
- Z3 - output bus bit 3
- ADDERCOUT - carry out from the adder
No comments:
Post a Comment