[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [f-cpu] 2R2W SHL
On Mon, Oct 08, 2001 at 11:08:52AM +0200, whygee@club-internet.fr wrote:
> hello,
>
> IIRC michael is designing the SHL unit. I have a little
> suggestion : what about an instruction that does a 2R2W shift ?
> that is : one register gets the "normal" output of the shift,
> and the 2nd register gets the "shifted out" bits.
> the ROR/ROL instructions would be a OR of the two results.
That's the way I do rotates now -- I stuff the input vector with zeroes,
do a double-size shift, and OR the upper and lower half (it's a little
more complex when SIMD is involved, but that's it, basically).
The alternative approach is to use rotates as the basic element, and
mask the unused bits when you're doing a shift operation. In this case,
you can get the `double width shift' result with two separate masks.
BTW: did somebody synthesize the alternative SHL core (the Rotate64
entity) I postet on Sep 28? I'm still interested in some numbers...
> This is useful when a lot of bitblt is done, for graphics and
> bit string insertion/extraction... And there is no need to
> specify the shift direction because it is swapped when the destination
> registers are swapped :-)
But the interpretation of the shift count is also changed ;)
> any comment ?
Yep... I like the idea. How do we call it, dshiftl? shiftd? shiftx?
--
Michael "Tired" Riepe <Michael.Riepe@stud.uni-hannover.de>
"All I wanna do is have a little fun before I die"
*************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe f-cpu in the body. http://f-cpu.seul.org/