Performing advanced bit manipulations efficiently in general-purpose processors

Yedidya Hilewitz, Ruby B. Lee

Research output: Chapter in Book/Report/Conference proceedingConference contribution

4 Scopus citations

Abstract

This paper describes a new basis for the implementation of a shifter functional unit. We present a design based on the inverse butterfly and butterfly datapath circuits that performs the standard shift and rotate operations, as well as more advanced extract, deposit and mix operations found in some processors. Additionally, it also supports important new classes of even more advanced bit manipulation instructions recently proposed: these include arbitrary bit permutations, bit scatter and bit gather instructions. The new functional unit's datapath is comparable in latency to that of the classic barrel shifter. It replaces two existing functional units - shifter and mix - with a much more powerful one.

Original languageEnglish (US)
Title of host publicationProceedings - 18th IEEE Symposium on Computer Arithmetic, ARITH 18
Pages251-260
Number of pages10
DOIs
StatePublished - Nov 16 2007
Event18th IEEE Symposium on Computer Arithmetic, ARITH 18 - Montpellier, France
Duration: Jun 25 2007Jun 27 2007

Publication series

NameProceedings - Symposium on Computer Arithmetic

Other

Other18th IEEE Symposium on Computer Arithmetic, ARITH 18
CountryFrance
CityMontpellier
Period6/25/076/27/07

All Science Journal Classification (ASJC) codes

  • Software
  • Theoretical Computer Science
  • Hardware and Architecture

Keywords

  • Arithmetic
  • Bit manipulations
  • Permutations
  • Processor
  • Rotations
  • Shifter

Fingerprint Dive into the research topics of 'Performing advanced bit manipulations efficiently in general-purpose processors'. Together they form a unique fingerprint.

  • Cite this

    Hilewitz, Y., & Lee, R. B. (2007). Performing advanced bit manipulations efficiently in general-purpose processors. In Proceedings - 18th IEEE Symposium on Computer Arithmetic, ARITH 18 (pp. 251-260). [4272872] (Proceedings - Symposium on Computer Arithmetic). https://doi.org/10.1109/ARITH.2007.27