• DocumentCode
    757914
  • Title

    Architectural techniques for accelerating subword permutations with repetitions

  • Author

    McGregor, John P. ; Lee, Ruby B.

  • Author_Institution
    Dept. of Electr. Eng., Princeton Univ., NJ, USA
  • Volume
    11
  • Issue
    3
  • fYear
    2003
  • fDate
    6/1/2003 12:00:00 AM
  • Firstpage
    325
  • Lastpage
    335
  • Abstract
    We propose two new instructions, swperm and sieve, that can be used to efficiently complete an arbitrary bit-level permutation of an n-bit word with or without repetitions. Permutations with repetitions are rearrangements of an ordered set in which elements may replace other elements in the set; such permutations are useful in cryptographic algorithms. On a four-way superscalar processor, we can complete an arbitrary 64-bit permutation with repetitions of 1-bit subwords in 11 instructions and only four cycles using the two proposed instructions. For subwords of size 4 bits or greater, we can perform an arbitrary permutation with repetitions of a 64-bit register in a single cycle using a single swperm instruction. This improves upon previous results by requiring fewer instructions to permute 4-bit or larger subwords packed in a 64-bit register and fewer execution cycles for 1-bit subwords on wide superscalar processors. We also demonstrate that we can accelerate the performance of the popular DES block cipher using the proposed instructions. We obtain a DES performance improvement of at least 55% in constrained embedded environments and an improvement of 71% on a four-way superscalar processor when applying DES as a cryptographic hash function.
  • Keywords
    cryptography; instruction sets; microprocessor chips; parallel architectures; 64 bit; DES block cipher; cryptographic algorithm; hash function; microprocessor instruction set architecture; sieve instruction; subword permutation; superscalar processor; swperm instruction; Acceleration; Arithmetic; Computer architecture; Cryptography; Data security; Microprocessors; Registers; Software performance; Sun; Table lookup;
  • fLanguage
    English
  • Journal_Title
    Very Large Scale Integration (VLSI) Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1063-8210
  • Type

    jour

  • DOI
    10.1109/TVLSI.2003.812318
  • Filename
    1218207