• DocumentCode
    2997718
  • Title

    Hardware Index to Permutation Converter

  • Author

    Butler, J.T. ; Sasao, T.

  • Author_Institution
    Dept. of Electr. & Comput. Eng., Naval Postgrad. Sch., Monterey, CA, USA
  • fYear
    2012
  • fDate
    21-25 May 2012
  • Firstpage
    431
  • Lastpage
    436
  • Abstract
    We demonstrate a circuit that generates a permutation in response to an index. Since there are n! n-element permutations, the index ranges from 0 to n! - 1. Such a circuit is needed in the hardware implementation of unique-permutation hash functions to specify how parallel machines interact through a shared memory. Such a circuit is also needed in cryptographic applications. The circuit is based on the factorial number system. Here, each non-negative integer is uniquely represented as sn-1(n - 1)! + sn-2(n - 2)! +. . . + s11!, where 1 ≤ si ≤ i. That is, the permutation is produced by generating the digits si in the factorial number system representation of the index. The circuit is combinational and is easily pipelined to produce one permutation per clock period. We give experimental results that show the efficiency of our designs. For example. we show that the rate of production of permutations on the SRC-6 reconfigurable computer is 1,820 times faster than a program on a conventional microprocessor in the case of 10-element permutations. We also show an efficient reconfigurable computer implementation that produces random permutations using the Knuth shuffle algorithm. This is useful in Monte Carlo simulations. For both circuits, the complexity is O(n2), and the delay is O(n).
  • Keywords
    Monte Carlo methods; combinational circuits; cryptography; Knuth shuffle algorithm; Monte Carlo simulations; SRC-6 reconfigurable computer; combinational circuit; cryptographic applications; factorial number system representation; hardware index; microprocessor; n-element permutations; nonnegative integer; parallel machines; permutation converter; reconfigurable computer implementation; shared memory; unique-permutation hash functions; Clocks; Computers; Generators; Hardware; Indexes; Microprocessors; Vectors; Knuth shuffle; combinatorial objects; factorial number system; index to permutation generator; random permutation generator; reconfigurable computer;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2012 IEEE 26th International
  • Conference_Location
    Shanghai
  • Print_ISBN
    978-1-4673-0974-5
  • Type

    conf

  • DOI
    10.1109/IPDPSW.2012.55
  • Filename
    6270674