Issue No.08 - August (2009 vol.58)
Yedidya Hilewitz , Intel Corporation, Hudson
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TC.2008.219
This paper describes a new basis for the implementation of the shifter functional unit in microprocessors that can implement new advanced bit manipulations as well as standard shifter operations. Our design is based on the inverse butterfly and butterfly data path circuits, rather than the barrel shifter or log-shifter designs currently used. We show how this new shifter can implement the standard shift and rotate operations, as well as more advanced extract, deposit, and mix operations found in some processors. Furthermore, it can perform important new classes of even more advanced bit manipulation instructions like arbitrary bit permutations, bit gather (or parallel extract), and bit scatter (or parallel deposit) instructions. Thus, our new functional unit performs the functionality of three functional units—the basic shifter, the multimedia-mix unit, and the advanced bit manipulation functional unit, while having a latency only slightly longer than that of the log-shifter. For performing only the existing functions of a shifter, it has significantly smaller area.
Shifter, rotation, shift, permutation, butterfly, inverse butterfly, bit manipulation, bit gather, bit scatter, microprocessor, instruction set architecture, processor architecture, circuit design, extract, deposit, mix, multimedia, arithmetic, parallel operations.
Yedidya Hilewitz, "A New Basis for Shifters in General-Purpose Processors for Existing and Advanced Bit Manipulations", IEEE Transactions on Computers, vol.58, no. 8, pp. 1035-1048, August 2009, doi:10.1109/TC.2008.219