12-04-2013, 03:35 AM
(This post was last modified: 12-04-2013, 04:43 AM by Kernul_Sanders.)
Where are shift registers hooked up to ALUs? If there are multiple possible spots, then what is the best one?
12-04-2013, 03:35 AM
(This post was last modified: 12-04-2013, 04:43 AM by Kernul_Sanders.)
Where are shift registers hooked up to ALUs? If there are multiple possible spots, then what is the best one?
12-04-2013, 09:39 AM
At the end of the ALU
12-04-2013, 02:55 PM
I personally recommend not using a shift register, and instead using a bit shifter (same thing minus the memory)
12-04-2013, 04:11 PM
ow yeah, definitely that ^ (didnt pay that much attention with my first post). Also, one thing to note is you really only need a right shifter, since left shifting can be done easily adding 2 numbers together. Example; 4 + 4 =8 (0100 + 0100 = 1000) <- Bit just shifted 1 position to the left. This can be done extremely easy by using dual read registers.
12-04-2013, 05:31 PM
^ Indeed
12-04-2013, 07:27 PM
(This post was last modified: 12-04-2013, 07:28 PM by Kernul_Sanders.)
Ah, okay thanks. I'll stick with the bi directional bit shifter I have, it's 2x3x8 per bit, I'm sure I can compact it though.
Unless someone can show me how to do what evil explained.
12-05-2013, 03:12 AM
I can if i'm ever on the same time as you XD
12-11-2013, 05:22 PM
Barrel shifters are quite nice because they don't save data they can shift it as many time as you want! I have a bi-directional barrel shifter designed for my cle alu CPU. It was made by lorddecapo. /warp computerplot and go to the floating CPU that is color coded. The purple thing is the barrel shifter. Red is up. Black is down. Can shift up to 7 times.
12-11-2013, 08:42 PM
The reason why barrel shifters are stupid is because their simply unnecessary. I presume you are going to hook that thing up to your IS, Clock etc. So with each clock cycle, you can shift all of your bits to the left / right. Okay, cool. Which program did you ever encounter that you needed to shift 5 bits to the left? At least i haven't seen something like that. And if i do need to somehow shift my bits 2 positions to the left, i'll just use my shift command twice. I find that more effectively than slowing down your ALU, and having that much extra space taken by a device that will probably never shift more than 1 time.
12-14-2013, 08:19 PM
(This post was last modified: 12-14-2013, 08:19 PM by greatgamer34.)
Im going to use it in my multiplication program to cut the program size down.
12-14-2013, 11:57 PM
12-15-2013, 11:27 PM
It should be really nice haha
|
|