This article presents an electron tunneling noise programmable random variate accelerator for accelerating the sampling stage of Monte Carlo simulations. We used the LiteX framework to generate a Petitbateau FemtoRV RISC-V instruction set soft processor and deploy it on a Digilent Arty-100T FPGA development board. The RISC-V soft processor augmented with our programmable random variate accelerator achieves an average speedup of 8.70 times and a median speedup of 8.68 times for a suite of twelve different benchmark applications when compared to GNU Scientific Library software random number generation. These speedups are achievable because the benchmarks spend an average of 90.0 % of their execution time generating random samples. The results of the Monte Carlo benchmark programs run over the programmable random variate accelerator have an average Wasserstein distance of 1.48 times and a median Wasserstein distance of 1.41 times$that of the results produced by the GNU Scientific Library random number generators. The soft processor samples the electron tunneling noise source using the hardened XADC block in the FPGA. The flexibility of the LiteX framework allows for the deployment of any LiteX-supported soft processor with an electron tunneling noise programmable random variate accelerator on any LiteX-supported development board that contains an FPGA with an XADC.
翻译:本文提出了一种基于电子隧穿噪声的可编程随机变量加速器,用于加速蒙特卡洛模拟中的采样阶段。我们利用LiteX框架生成了Petitbateau FemtoRV RISC-V指令集软处理器,并将其部署于Digilent Arty-100T FPGA开发板上。与GNU科学库软件随机数生成相比,该RISC-V软处理器搭载我们的可编程随机变量加速器后,在十二个不同基准测试应用中实现了平均8.70倍、中位数8.68倍的加速比。这些加速效果的实现得益于基准程序平均将90.0%的执行时间用于生成随机样本。通过可编程随机变量加速器运行的蒙特卡洛基准程序结果,与GNU科学库随机数生成器产生的结果相比,其Wasserstein距离平均为1.48倍、中位数为1.41倍。该软处理器通过FPGA中的硬核XADC模块对电子隧穿噪声源进行采样。LiteX框架的灵活性使得任何支持LiteX的软处理器均可与电子隧穿噪声可编程随机变量加速器组合,部署于任何包含XADC的FPGA且支持LiteX的开发板上。