Since the last update I've soldered , assembled and tested two new boards -- one containing multiple functions, and other - barrel rotator, which performs arbitrary bit rotations of 16-bit words.
Miscellaneous components board
Here is overall scheme of ALU, with components on the Misc board are in shaded area:
The components take from 3 (zero detector) to 7 (shifter) chips, so all of them were possible to place on single board.
Here is the board itself:
Barrel Rotator board
The barrel rotator performs word rotations to the left by an amount ranging from 0 to 15 bits, in one clock cycle. This module is useful for operations like swapping bytes in the word, or for speed-up of operations involving floating point numbers.
It is constructed as 4 levels of 16-bit 2-to-1 multiplexers, each level multiplexing increasingly disparate bits, here is the schematic:
and the actual board looks like this:
___________________________________________________________________________
For ALU completion, only one board is left to be completed -- the 16-bit 8-to-1 multiplexer, which will select one of the outputs from previously created boards.
After that I'll start working on the Register File, and beginnings of the control module.
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.