Cellular Automata-Based Parallel Random Number Generators Using FPGAs

Cellular computing represents a new paradigm for implementing high-speed massively parallel machines. Cellular automata (CA), which consist of an array of locally connected processing elements, are a basic form of a cellular-based architecture. The use of field programmable gate arrays (FPGAs) for i...

Full description

Saved in:
Bibliographic Details
Main Authors: David H. K. Hoe, Jonathan M. Comer, Juan C. Cerda, Chris D. Martinez, Mukul V. Shirvaikar
Format: Article
Language:English
Published: Wiley 2012-01-01
Series:International Journal of Reconfigurable Computing
Online Access:http://dx.doi.org/10.1155/2012/219028
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1849304545614626816
author David H. K. Hoe
Jonathan M. Comer
Juan C. Cerda
Chris D. Martinez
Mukul V. Shirvaikar
author_facet David H. K. Hoe
Jonathan M. Comer
Juan C. Cerda
Chris D. Martinez
Mukul V. Shirvaikar
author_sort David H. K. Hoe
collection DOAJ
description Cellular computing represents a new paradigm for implementing high-speed massively parallel machines. Cellular automata (CA), which consist of an array of locally connected processing elements, are a basic form of a cellular-based architecture. The use of field programmable gate arrays (FPGAs) for implementing CA accelerators has shown promising results. This paper investigates the design of CA-based pseudo-random number generators (PRNGs) using an FPGA platform. To improve the quality of the random numbers that are generated, the basic CA structure is enhanced in two ways. First, the addition of a superrule to each CA cell is considered. The resulting self-programmable CA (SPCA) uses the superrule to determine when to make a dynamic rule change in each CA cell. The superrule takes its inputs from neighboring cells and can be considered itself a second CA working in parallel with the main CA. When implemented on an FPGA, the use of lookup tables in each logic cell removes any restrictions on how the super-rules should be defined. Second, a hybrid configuration is formed by combining a CA with a linear feedback shift register (LFSR). This is advantageous for FPGA designs due to the compactness of the LFSR implementations. A standard software package for statistically evaluating the quality of random number sequences known as Diehard is used to validate the results. Both the SPCA and the hybrid CA/LFSR were found to pass all the Diehard tests.
format Article
id doaj-art-3be80c65332f4edf96a0fa636aa2beb4
institution Kabale University
issn 1687-7195
1687-7209
language English
publishDate 2012-01-01
publisher Wiley
record_format Article
series International Journal of Reconfigurable Computing
spelling doaj-art-3be80c65332f4edf96a0fa636aa2beb42025-08-20T03:55:41ZengWileyInternational Journal of Reconfigurable Computing1687-71951687-72092012-01-01201210.1155/2012/219028219028Cellular Automata-Based Parallel Random Number Generators Using FPGAsDavid H. K. Hoe0Jonathan M. Comer1Juan C. Cerda2Chris D. Martinez3Mukul V. Shirvaikar4Department of Electrical Engineering, The University of Texas at Tyler, TX 75799, USADepartment of Electrical Engineering, The University of Texas at Tyler, TX 75799, USADepartment of Electrical Engineering, The University of Texas at Tyler, TX 75799, USADepartment of Electrical Engineering, The University of Texas at Tyler, TX 75799, USADepartment of Electrical Engineering, The University of Texas at Tyler, TX 75799, USACellular computing represents a new paradigm for implementing high-speed massively parallel machines. Cellular automata (CA), which consist of an array of locally connected processing elements, are a basic form of a cellular-based architecture. The use of field programmable gate arrays (FPGAs) for implementing CA accelerators has shown promising results. This paper investigates the design of CA-based pseudo-random number generators (PRNGs) using an FPGA platform. To improve the quality of the random numbers that are generated, the basic CA structure is enhanced in two ways. First, the addition of a superrule to each CA cell is considered. The resulting self-programmable CA (SPCA) uses the superrule to determine when to make a dynamic rule change in each CA cell. The superrule takes its inputs from neighboring cells and can be considered itself a second CA working in parallel with the main CA. When implemented on an FPGA, the use of lookup tables in each logic cell removes any restrictions on how the super-rules should be defined. Second, a hybrid configuration is formed by combining a CA with a linear feedback shift register (LFSR). This is advantageous for FPGA designs due to the compactness of the LFSR implementations. A standard software package for statistically evaluating the quality of random number sequences known as Diehard is used to validate the results. Both the SPCA and the hybrid CA/LFSR were found to pass all the Diehard tests.http://dx.doi.org/10.1155/2012/219028
spellingShingle David H. K. Hoe
Jonathan M. Comer
Juan C. Cerda
Chris D. Martinez
Mukul V. Shirvaikar
Cellular Automata-Based Parallel Random Number Generators Using FPGAs
International Journal of Reconfigurable Computing
title Cellular Automata-Based Parallel Random Number Generators Using FPGAs
title_full Cellular Automata-Based Parallel Random Number Generators Using FPGAs
title_fullStr Cellular Automata-Based Parallel Random Number Generators Using FPGAs
title_full_unstemmed Cellular Automata-Based Parallel Random Number Generators Using FPGAs
title_short Cellular Automata-Based Parallel Random Number Generators Using FPGAs
title_sort cellular automata based parallel random number generators using fpgas
url http://dx.doi.org/10.1155/2012/219028
work_keys_str_mv AT davidhkhoe cellularautomatabasedparallelrandomnumbergeneratorsusingfpgas
AT jonathanmcomer cellularautomatabasedparallelrandomnumbergeneratorsusingfpgas
AT juanccerda cellularautomatabasedparallelrandomnumbergeneratorsusingfpgas
AT chrisdmartinez cellularautomatabasedparallelrandomnumbergeneratorsusingfpgas
AT mukulvshirvaikar cellularautomatabasedparallelrandomnumbergeneratorsusingfpgas