MultiStage ASIC implementation of the Mersenne Twister pseudorandom number generator

T. Le, Sricharan Narayanan
{"title":"MultiStage ASIC implementation of the Mersenne Twister pseudorandom number generator","authors":"T. Le, Sricharan Narayanan","doi":"10.1109/CCE.2014.6916725","DOIUrl":null,"url":null,"abstract":"The development of cluster and parallel computers has increased the popularity of implementing the Monte Carlo (MC) computational method in medical and scientific applications. However, having access to these high-performance systems is not easy and a reasonable size system is not yet able to solve many popular Monte Carlo problems near real-time. The Field Programmable Gate Arrays (FPGAs) have been proved to be useful in speeding up the Monte Carlo algorithm since they are able to execute the problem with a high degree of parallelism. As the FPGA and ASIC are being applied for speeding up Monte Carlo simulations as well as for reducing energy consumption, the generation of pseudorandom number (PRN) by hardware becomes one of major developments. The speed in generating the random numbers and the quality of these numbers are main factors in enhancing the performance and accuracy of the method. In this paper, we present the design and implementation of a multistage pipelining-style Mersenne Twister (MT), one of the most widely used pseudorandom number generation method. By implementing the operations in 4 stages, our design is able to achieve throughput of 178 million, 228 million, and 338 million random numbers per second on 0.25 μm, 0.14 μm, and 90 nm processes, respectively. In theory, the implementation can be scaled up to 208 stages and so the throughput can be up to 18 billion random numbers per second.","PeriodicalId":377853,"journal":{"name":"2014 IEEE Fifth International Conference on Communications and Electronics (ICCE)","volume":"45 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2014-10-07","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2014 IEEE Fifth International Conference on Communications and Electronics (ICCE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CCE.2014.6916725","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

Abstract

The development of cluster and parallel computers has increased the popularity of implementing the Monte Carlo (MC) computational method in medical and scientific applications. However, having access to these high-performance systems is not easy and a reasonable size system is not yet able to solve many popular Monte Carlo problems near real-time. The Field Programmable Gate Arrays (FPGAs) have been proved to be useful in speeding up the Monte Carlo algorithm since they are able to execute the problem with a high degree of parallelism. As the FPGA and ASIC are being applied for speeding up Monte Carlo simulations as well as for reducing energy consumption, the generation of pseudorandom number (PRN) by hardware becomes one of major developments. The speed in generating the random numbers and the quality of these numbers are main factors in enhancing the performance and accuracy of the method. In this paper, we present the design and implementation of a multistage pipelining-style Mersenne Twister (MT), one of the most widely used pseudorandom number generation method. By implementing the operations in 4 stages, our design is able to achieve throughput of 178 million, 228 million, and 338 million random numbers per second on 0.25 μm, 0.14 μm, and 90 nm processes, respectively. In theory, the implementation can be scaled up to 208 stages and so the throughput can be up to 18 billion random numbers per second.
MultiStage ASIC实现的Mersenne Twister伪随机数生成器
随着集群计算机和并行计算机的发展,Monte Carlo (MC)计算方法在医学和科学领域的应用越来越广泛。然而,要访问这些高性能系统并不容易,而且一个合理大小的系统还不能接近实时地解决许多流行的蒙特卡罗问题。现场可编程门阵列(fpga)在加速蒙特卡罗算法方面已被证明是有用的,因为它们能够以高度并行的方式执行问题。随着FPGA和ASIC在加速蒙特卡罗模拟和降低能耗方面的应用,硬件生成伪随机数(PRN)成为主要发展方向之一。随机数的生成速度和随机数的质量是提高该方法性能和精度的主要因素。本文设计并实现了一种多级流水线式Mersenne Twister (MT)算法,这是目前应用最广泛的伪随机数生成方法之一。在0.25 μm、0.14 μm和90 nm制程上,我们的设计可以分别实现每秒1.78亿、2.28亿和3.38亿随机数的吞吐量。理论上,实现可以扩展到208个阶段,因此吞吐量可以达到每秒180亿个随机数。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信