面向加速粒子输运随机模拟的概率可调真随机数生成器
doi: 10.11887/j.issn.1001-2486.25040001
傅思清 , 黎铁军 , 吴利舟 , 张春元 , 马胜 , 张建民 , 任睿轩
国防科技大学 计算机学院, 湖南 长沙 410073
基金项目: 国家自然科学基金资助项目(62304257,62472435,62172430) ; 湖南省科技创新计划资助项目(2022RC3066,2022RC3065)
Probability tunable random number generator for random simulation of accelerated particle transport
FU Siqing , LI Tiejun , WU Lizhou , ZHANG Chunyuan , MA Sheng , ZHANG Jianmin , REN Ruixuan
College of Computer Science and Technology, National University of Defense Technology, Changsha 410073 , China
摘要
粒子输运问题的随机模拟在传统冯·诺依曼架构上面临随机事件分支和不规则访存带来的挑战,其根源在于随机算法与确定性硬件之间的不匹配。为此,设计了一种基于自旋和铁电器件的概率可调真随机数生成器。基于自旋器件的物理随机性,为架构提供物理随机源,并通过优化的控制逻辑和写入机制提高随机比特吞吐率;基于铁电器件的忆阻特性,设计了可编程和具有非易失连续存储权重的概率可调突触。实验表明,该设计求解示例输运问题时性能相比通用处理器提高171~1028倍。进一步地,相较现有的基于自旋转移矩磁隧道结的真随机数生成器,其不仅唯一具有生成可调概率随机采样的能力,且产生均匀分布随机序列时吞吐率达到303 Mbit/s,具有更高的随机比特吞吐率。
Abstract
Particle transport simulations using stochastic methods face significant challenges on conventional von Neumann architectures, particularly due to random branching events and irregular memory access patterns. These limitations stem from the fundamental mismatch between probabilistic algorithms and deterministic computing paradigms. To bridge the gap between architecture and algorithms, a probabilistically tunable true random number generator was developed based on spintronic and ferroelectric devices. The physical randomness of spintronic devices was leveraged to provide a physical random source for the architecture, and the throughput of random bits was enhanced through optimized control logic and writing mechanisms. Next, programmable synapses were designed based on the memristive properties of ferroelectric devices, enabling non-volatile continuous weight storage with tunable probabilities. The experimental results indicate that the proposed approach achieves performance improvements ranging from 171 to 1028 times compared to a general-purpose CPU when solving a sample transport problem. Furthermore, compared to existing spin-transfer torque magnetic tunnel junction based true random number generators, the developed method not only enables tunable probability random sampling but also achieves a throughput of 303 Mbit/s when generating uniformly distributed random sequences.
粒子输运问题的广泛应用涵盖从原子能物理学和天体物理学到材料科学和放射医学工程等多个学科领域,是现代科学与工程计算的重要组成部分[1]。由于输运问题的非线性、高维度等特点,随机模拟即蒙特卡罗(Monte Carlo,MC)方法是在高性能计算(high performance computing,HPC)系统上求解粒子输运问题时使用最广泛的方法[2]
然而,传统的基于冯·诺依曼架构的HPC系统在执行MC模拟时效率低下。MC粒子输运程序中跟踪粒子过程的随机分支,引起了粒子截面数据的不规则访存,这是在HPC上求解粒子输运问题的主要瓶颈[3]。而从架构上看,指令控制的确定性程序执行以及存算分离设计直接导致上述问题,归根到底是确定性计算架构与随机模拟算法不匹配带来的问题。近十年来众核处理器和图形处理器(graphics processing unit,GPU)的进步,使MC方法的潜在并行性得到利用,计算效率和可扩展性得到了显著提升[4-5],但其核心挑战,也就是用确定性计算架构执行非确定随机算法带来的不确定分支、访存开销问题仍然没有得到本质解决[6]
在架构层面,超越冯·诺依曼架构的随机模拟求解加速早期以现场可编程门阵列(field-programmable gate array,FPGA)为主,但片上资源限制和硬件伪随机特点限制其实际推广。近十年来,神经形态计算用于求解科学计算问题的前景已开始得到研究[7-10]。Smith等[9]利用Loihi和TrueNorth芯片上的随机游走求解包括粒子输运问题在内的多个领域的随机模拟问题,评估了在神经形态架构上求解MC问题的显著功耗优势。但由于使用的计算平台仍然是基于互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)的确定性架构,并没有获得性能优势。随着材料科学的进步,具有物理随机性的新兴器件的出现为开发随机计算架构提供了机会[11]。磁隧道结(magnetic tunnel junction,MTJ)具有两种非易失自旋状态,并可通过自旋转移矩[12](spin-transfer torque,STT)和自旋轨道矩[13](spin orbit torque,SOT)等方式驱动状态翻转。由于热扰动的存在,MTJ的动态翻转过程存在物理随机性,目前基于自旋器件设计的真随机数生成器(true random number generator,TRNG)已经得到广泛研究,但大都仅限于生成均匀分布随机序列[14-20]
为进一步耦合硬件与随机算法,设计了用于加速粒子输运随机模拟的自旋电子学体系结构。首先,利用铁电隧道结(ferroelectric tunnel junction,FTJ)的非易失存储特性实现输出概率调控,通过写电压幅值精确控制MTJ翻转概率,避免了传统均匀采样TRNG所需的后处理开销。然后,设计了TRNG的双向概率读写和反馈机制,优化随机比特生成周期,同时延长器件寿命。最后,以一个粒子输运问题为例,评估TRNG加速粒子输运模拟的能力。
1 随机模拟方法与新兴器件原理
1.1 粒子输运的随机游走求解方法
玻耳兹曼(Bolzmann)方程描述高能粒子在介质中的输运过程。定义t时处于位置x,运动方向Ω的粒子角通量密度Φ:=ΦtxΩ)满足玻耳兹曼粒子输运方程:
(1)
式中:
Σt(x,Ω)=Σa(x,Ω)+Σs(x,Ω)
(2)
其中,ΣaΣs分别为粒子吸收和散射速率的函数,R为粒子源项,v为粒子速度,σsxΩ′→Ω)为微分散射截面。
解输运方程的随机游走方法[21]通过Feynman-Kac公式[22]建立偏微分方程(3)与随机微分方程(4)之间的联系。
ut+μ(x,t)ux+12σ2(x,t)2ux2+f(x,t)u=0
(3)
式中,u=uxt)是要解的函数,μxt)和σxt)是漂移和扩散项,fxt)是一个给定的函数。
对应的随机微分方程如方程(4)所示:
u(x,t)=EϕXtXt=x
(4)
式中,Xt 表示从时间t开始的布朗运动,条件期望表示终止条件下对所有可能随机轨迹的数学平均。用于执行随机游走的马尔可夫链如图1所示,定义一个包含N个离散位置的有限一维空间,间距为Δx,粒子状态空间为S={X1X2,···,XN}。Pijj=i-1,ii+1)规定了从状态i转移到j的概率:
(5)
通过在马尔可夫链上执行随机游走,模拟随机微分方程,可以得到近似方程(3)的解。
1用于执行随机游走的马尔可夫链
Fig.1Markov chain for random walks
1.2 自旋磁隧道结和铁电隧道结
MTJ作为一种新兴自旋电子学器件,已经开始得到广泛研究[2023]。MTJ具有固定层(pinned layer,PL)、隧穿势垒(tunnel barrier,TB)层以及自由层(free layer,FL)结构。PL磁化方向固定,而FL磁化方向可以与PL的磁化方向平行(parallel,P)或反平行(anti-parallel,AP),分别代表逻辑“0”和“1”。图2描述了热扰动下STT翻转及其动态概率翻转过程。在AP状态下,自旋极化电流IAP→P将电子从固定层导向自由层,进入自由层的极化电子的磁矩诱导其磁化翻转。同样,在P状态下,自旋极化电流IP→AP诱导反向的磁化翻转。在适当的电流幅值和作用时间下,将由随机动态翻转主导翻转结果。在幅度为I、持续时间为t的偏置电流下,MTJ的翻转概率为:
P(I,t)=1-exp-tττ=τ0expΔ1-IIc02
(6)
其中,τ代表平均翻转时间,τ0是尝试时间因子,Δ是温度相关的热稳定因子,Ic0是在0 K时的临界翻转电流。
2STT翻转及其动态概率翻转过程
Fig.2STT switching and dynamic probability switching
最近的研究在FTJ中发现了忆阻行为,铁电极化翻转可以引起电阻的连续变化[24]。典型的FTJ结构由两个电极层和它们之间的超薄铁电势垒层组成,如图3中由Co、BaTiO3(BTO)、LSMO组成的FTJ。施加电压可以诱导BTO铁电层的极化翻转,改变电子的隧穿概率,从而导致电阻发生变化。在完全向上极化的铁电薄膜中,施加正向编程电压会引发向下极化畴的成核和拓展,进而导致连续的电阻变化,即图3中从左向右的过程。反向电压则驱动向上极化畴的成核与拓展。利用FTJ的忆阻特性,可以将其编程到稳定阻值,从而实现非易失且连续编码TRNG写入电压,以实现TRNG输出概率可调。需要说明的是,极化阻值可能受到温度以及势垒层尺寸等参数影响,但本文重点考虑自旋切换过程,因此通过对MTJ引入电压偏差来考虑FTJ工艺偏差。
2 电路设计
所提出的设计将粒子输运求解过程的粒子跟踪阶段卸载到硬件TRNG电路,以避免CPU体系结构在随机跟踪过程中产生分支延迟和访存瓶颈。系统框架如图4所示。
3编程电压诱导下FTJ极化畴成核和拓展的过程
Fig.3Domain nucleation and propagation in FTJ under programming voltage
4求解粒子输运的系统框架
Fig.4Computational system frameworks for particle transport
2.1 总体架构设计
基于MTJ的TRNG的基本控制逻辑[14-1719]图5所示。每个控制周期首先重置MTJ状态,然后进行随机写入,最后读出写入的随机比特。相比读延迟,自旋器件具有更高的写延迟。因此控制周期的两次写入操作限制了随机比特生成速度。所提出的设计如图6所示,MTJ的初始状态首先被读出,随后将反相值反馈作为写驱动器的写入值。在第二阶段,写驱动器执行随机写入操作。这让TRNG在每个周期只执行一次写入操作,而不需进行重置,缩短了控制周期。
5基于MTJ的TRNG的控制逻辑
Fig.5Control logic for MTJ-based TRNG
电路架构设计如图7所示。当Rd信号被启用时,感测放大器[25](sense amplifier,SA)读出MTJ的逻辑状态(标记为Out)及其反相值 Out ¯。随后, Out ¯信号作为输入Data_in反馈给写驱动器[20]。当Wr信号被触发时,写驱动器将Data_in写入MTJ。对于固定的写入周期,MTJ的翻转概率由电流幅值控制,即由概率调节突触S1和S2保存的权值控制。
6可调概率TRNG的控制逻辑
Fig.6Control logic for tunable probability TRNG
7可调概率TRNG的电路设计
Fig.7Circuit design for a tunable probability TRNG
2.2 概率调节突触设计
图8展示了基于FTJ的概率调节突触结构。突触有编程模式和写驱动模式。在编程模式下,当晶体管P0的栅极信号V0g置为低电平时,晶体管开启,从而允许编程电压Vprog被施加到FTJ上。Vin表示概率调节突触输入电压。在写驱动模式下,当晶体管P1的栅极信号V1g置为低电平时,晶体管开启,输出电压Vout根据当前FTJ的电阻值RFTJ进行调节,如式(7)所示。
Vout =RFTJRFTJ+RVin
(7)
较低的写驱动电压不会改变铁电薄膜的极化状态,这使得它能够作为突触稳定的保留权重。
2.3 PVT容忍设计
图7中写驱动电路由两组突触后点位分别控制两个方向写入电流的幅值。当写控制信号Wr被启用并且Data_in上的写数据为“1”时,激发从位线(bit line,BL)流向源线(source line,SL)的写入电流。电流的幅度和持续时间决定了MTJ被设置为状态“1”的概率,在固定写入时间下,概率由Vout1控制也就是突触S1的FTJ阻值控制。同样,当Data_in为“0”时,电路将输出相反方向的写入电流。
8基于FTJ的概率调节突触结构
Fig.8Structure of tunable probability synapse based on FTJ
下面考虑对工艺-电压-温度(process-voltage-temperature,PVT)偏差的容忍情况。MTJ器件初始可能处于P状态(概率为PP)或AP状态(概率为PAP)。当MTJ处于P状态时,设在写入电流作用下翻转到AP状态的概率为P1。当MTJ处于AP状态时,在相反方向的写入电流作用下翻转到P状态的概率为P2。即有:
(8)
设每个TRNG单元输出比特“1”的概率为Pout 1,则其可以表示为:
Pout 1=PAP=P1P1+P2
(9)
图9展示了式(9)中Pout 1的变化情况,其中X轴代表P2Y轴代表P1。当P1P2理想上都等于50%时,随机数生成单元输出“1”的概率也是50%。PVT偏差可能导致P1P2偏离。当P1P2在同一方向上以相同的幅度移动时,Pout 1仍然可以保持在50%,如图中黑色实线所示。实际上,可能会影响输出概率的几种偏差来源(例如环境温度)确实倾向于造成P1P2沿同一方向移动。所提出的电路设计使得TRNG能够对这类偏差保持容忍。
9P1P2控制下TRNG输出“1”的概率
Fig.9Probability of TRNG outputting “1” under the control of P1 and P2
3 实验评估
3.1 实验验证方法概述
在实验中,构建从底层器件特性、电路功能到系统应用的全栈验证体系。在器件层面,通过集成电路仿真程序(simulation program with integrated circuit emphasis,SPICE)仿真验证FTJ突触的阻值连续可调特性,以时间-阻值曲线为指标,预期实现不同编程电压驱动下的阻值变化。电路层面重点评估TRNG的随机序列质量,采用NIST SP800-22随机数测试集测试通过率和熵值指标,通过与传统三阶段控制逻辑的对比实验,验证反馈写入机制、随机比特质量和PVT容忍性优势。系统层面以粒子输运问题为验证案例,对比软件模拟与硬件实现的精度差异,预期实现软硬件一致的平方误差。
3.2 实验设置
电路级模拟使用Cadence Virtuoso工具完成,采用MTJ[23]和FTJ[26]的紧凑模型以及Cadence 通用工艺设计套件(generic process design kit,GPDK)45 nm工艺库。关键的MTJ参数列于表1,主要的FTJ参数与模型[26]预设值一致。除讨论温度偏差外,所有电路级的模拟均在300 K(约27℃)温度下进行。系统模拟器使用Python 3.7开发,在使用Ubuntu 20.04.1的Intel i9-12900 CPU上运行。
1MTJ紧凑模型的关键参数
Tab.1Key device parameters for MTJ compact model
3.3 电路仿真
3.3.1 概率存储
图10展示了基于FTJ的概率调节突触的SPICE仿真结果。图中从上到下分别为: 编程电压Vprog、概率调节突触输入电压Vin、FTJ畴壁中向下极化畴所占比例rdomain以及FTJ的电阻RFTJ
10对概率调节突触进行的概率存储仿真
Fig.10Probabilistic storage simulation of the tunable probability synapse
首先,对编程模式,在5~15 ns之间,一个负向Vprog脉冲将FTJ的铁电层设定为完全向上极化状态。随后,在25~35 ns期间,正向Vprog脉冲激发畴壁成核和拓展,这一过程通过畴极化方向的变化体现。紧接着,在45~55 ns及65~75 ns这两个时间段内,两次正向脉冲对FTJ进行编程,促使畴连续增长。之后,在85~95 ns,一个负向Vprog脉冲重置畴壁方向。而在105~115 ns,正向脉冲再次引发畴的生长。整个过程中,畴在编程脉冲的控制下双向生长,展现了FTJ的忆阻特性。
接下来描述写驱动模式。在编程间隙,即分别在20 ns、40 ns、60 ns和80 ns时刻,输入写驱动脉冲Vin,较小的幅值并不会改变畴的极化状态,表明了忆阻器件的稳定性。不同极化畴状态宏观上表现为不同的电阻值,使得每次读取脉冲都能够读取到FTJ的不同阻值状态。
3.3.2 反馈写入
图11展示了对图8电路进行瞬态仿真的结果。图中从上至下为SA使能信号Rd、写驱动使能信号Wr、MTJ状态以及图7中Out和 Out ¯处的读出电压VOutV Out ¯。每个随机比特生成周期包含读取和写入(twr)两个阶段; 读取阶段进一步细分为预充电(tpre)和读出(trd)。
11TRNG执行反馈写入仿真
Fig.11Simulation of feedback write operation in TRNG
在读取阶段,Wr和Rd信号均被设定为低电平。SA完成预充电后,Rd信号会被拉高。读取阶段结束,当前的MTJ状态便能在点Out处读出。在写入阶段Wr信号被拉高,以设定概率向MTJ写入独处的相反值,在本节实验中设定FTJ阻值使MTJ在两个方向都以50%的概率翻转。可以看到,MTJ在设定周期内发生翻转。瞬态仿真表明,对于翻转概率为50%的TRNG,tpretrd均为0.2 ns,twr设定为2.9 ns可正常工作,总的随机比特生成周期低至3.3 ns。
3.3.3 MC模拟与随机性检验
NIST测试(SP 800-22 rev.1a)[27]用于检验二进制比特序列是否满足统计随机性,常用来检测随机数生成器的随机数生成质量。通过SPICE级的MC仿真,在考虑MTJ随机性和器件工艺偏差的情况下,为NIST测试生成了1×106个随机比特。测试结果如表2所示。可以看出, NIST测试中每一项检测P值均超过阈值0.000 1,通过了表中所有的测试模块,这表明所设计的可调概率TRNG生成的比特流具有良好的统计随机性。
2随机比特流NIST测试结果
Tab.2NIST test results for the random bit stream
3.3.4 偏差容忍
器件工艺偏差已经由MC仿真引入,因此这里进一步考虑电压和温度偏差。本节TRNG翻转概率也固定在50%。输出比特序列统计随机性引入输出熵量化。对于任意离散随机变量X,其香农熵HShannon由式(10)定义。对于每个比特,它有两个状态“0”和“1”,当其分布概率各为50%时,香农熵的最大值为“1”。同样地,对于这样的X,其最小熵HMin由式(10)定义,描述最坏情况下的序列随机性。它的范围也在[0,log2m]之间,其中mX可能出现的状态数目。
(10)
实验组采用了图6的控制逻辑,而对照组则使用单向概率写入,采用图5的控制逻辑,通过从AP到P和从P到AP的翻转过程控制随机比特生成。调节施加电流的大小,使得MTJ的翻转概率偏离50%,电压偏差下不同配置TRNG的香农熵和最小熵比较如图12所示。对于受双向概率写入控制的TRNG电路,两个方向的翻转概率变化保持一致。可以看出,在电压偏差下对于受双向概率写入控制的MTJ单元而言,其香农熵和最小熵均能维持更接近“1”的水平。而受单向电流控制的随机翻转TRNG电路在电压偏差下香农熵和最小熵均显著下降。
12电压偏差下不同配置TRNG的香农熵和最小熵比较
Fig.12Comparison of Shannon and minimum entropy for TRNG control logics under voltage variation
接下来考虑环境温度偏差,结果如图13所示,实验测量了从7~47℃的温度偏差引起的输出熵的变化。可以看出,在温度升高时,受双向概率写入控制的TRNG电路具有更高的最小熵,但温度降低时,MTJ在从P到AP的翻转过程的输出概率受到更大影响。因此,受双向概率写入控制的TRNG电路抵御高温偏差的能力强,这表明硬件电路适合集成到计算机系统中作为硬件加速器。
13温度偏差下不同配置TRNG香农熵和最小熵比较
Fig.13Comparison of Shannon and minimum entropy for TRNG control logics under temperature variation
3.4 系统仿真
3.4.1 问题描述
考虑一个粒子角通量密度问题,粒子状态只依赖于方向Ω而不依赖于空间,即方程(1)只考虑散射和吸收项的形式。假设一个粒子,它有两个方向状态: Ω=1和Ω=-1,粒子可以发生散射,即按泊松过程均匀地选择一个新的方向,也可以按照第二泊松过程被吸收,粒子发生散射和吸收事件的速率分别由常数ΣaΣs控制。设定v=1,散射后,粒子从状态i变为状态j的概率Pij=1/2。粒子群的角通量密度服从玻耳兹曼输运方程:
(11)
该玻耳兹曼输运方程的解析解为:
(12)
接下来通过概率表示构造马尔可夫过程拟合的解析解。如1.1节所描述的方法,将玻耳兹曼方程描述为随机过程的期望,如式(4)的形式。粒子群的角通量密度的概率表示为:
(13)
随机过程Xt)表示粒子在t时刻的方向,粒子从初态Ω=1或Ω=-1开始,在泊松过程Pt)发生时触发方向变化,吸收过程则由式(13)中的指数项表示。构造并跟踪表示泊松过程Pt)的马尔可夫链,假设泊松事件发生的概率为q1。不发生的概率为1-q1Pij定义与式(5)一致,则马尔可夫转移矩阵为:
(14)
对于所设计的可调概率TRNG,可以设定其转移概率,使其中MTJ的状态转移矩阵与式(14)保持一致,由此即构建了通过所设计的概率可调TRNG构造马尔可夫链求解粒子输运问题的方法,Smith等[9]对这个问题给出更详细的推导。
进一步设定散射截面的Σs=25.926,吸收截面的Σa=0.5,Δt=0.01。由于:
q1=ΣsΔte-ΣsΔt
(15)
则马尔可夫转移矩阵计算为:
(16)
编程概率调节突触的阻值使得P1outP2均为0.9,即完成构建模拟马尔可夫链的TRNG。系统模拟器以SPICE仿真获得的随机序列作为粒子散射历史,在多核CPU上完成对跟踪历史的合并计算,通过式(13)计算期望得到系统中角通量密度随时间的变化。
3.4.2 效果和性能
通过在TRNG上执行大量随机比特生成跟踪粒子散射事件。考虑t∈[0 s,1 s],设定跟踪粒子数W=500,以平衡仿真开销和求解精度。这里进行了三组系统仿真。
1)软件方法: 通过软件生成随机序列,为模拟器提供粒子散射历史。
2)包含工艺偏差的模拟硬件方法: 通过SPICE仿真生成随机序列,对每个粒子的跟踪从中取出长度为100的子序列作为粒子散射历史。工艺偏差由电路的MC仿真引入。
3)包含工艺和电压偏差的模拟硬件方法: 相比上一种方法,在SPICE仿真中对MTJ翻转驱动电压,即图8中的Vout引入3σ=10%的正态分布偏差,为模拟器提供粒子散射历史。
图14展示了三种方法执行随机游走获得的方程(11)的解与解析解的对比。
14模拟器通过不同跟踪方法求得的输运方程解的对比
Fig.14Comparison of transport equation solutions using different tracking methods in the simulator
图14(a)表示通过软件生成随机数求得的解。横坐标为时间,上半部分纵坐标为粒子角通量密度ΦtΩ),解析解由虚线表示,分别对应Ω=1和Ω=-1两种不同的初始情况。与解析解相同颜色的实线表示对应初始情况下通过随机游走近似的解。可以看到,软件生成随机数获得的游走历史求得的数值解能够很好地拟合解析解,它们之间的差异由图中下半部分表示,平方误差计算为:
σ2=Crm(t)-Can(t)2
(17)
式中,Crmt)为时间t时的随机游走解,Cant)为时间ti时的解析解。在当前模拟粒子规模下,软件方法的平方误差可以控制在1×10-2以下。
图14(b)展示的是包含器件工艺偏差的模拟硬件方法,表示粒子散射历史的随机比特序列来源于SPICE仿真,器件工艺偏差由MC仿真引入。可见所设计的概率可调TRNG能够执行对粒子输运问题的求解,解的平方误差也控制在1×10-2以下,与软件方法基本一致,说明所设计的电路在求解粒子输运问题时与理论算法有一致的效果。
为进一步评估电路在电压偏差下解方程的能力,图14(c)展示3σ=10%的电压偏差下模拟硬件求解粒子输运的结果,引入的电压偏差被模拟随机游走所需的大量随机比特生成操作隐藏,因此没有造成求解精度的显著下降。另外,虽然MTJ翻转概率随电压变化并不是线性的,但是在引起MTJ概率翻转的较小的电压变化范围内,概率变化是近似线性的,因此电压的正态偏差不会使概率的期望显著偏离,这也体现了所设计的TRNG抵抗偏差的能力。
性能方面。考虑一次随机比特生成时间,所设计概率可调TRNG跟踪操作的执行时间由设计周期决定,包含0.4 ns读取操作和1 ns概率写操作。在通用CPU上通过软件生成随机序列,随机数生成方法分别采用random库的random,os库的urandom以及secrets库的randbelow三种方法,平均时间分别为0.24 μs、0.49 μs和1.44 μs。因此TRNG相比CPU上的软件实现,性能提升约171~1 028倍。需要说明的是,具有3 584 CUDA核的GPU求解输运问题相较CPU仅获得55.6倍的加速比[28],因而CPU作为比较基准,代表具有最高串行性能的通用处理器。相较非冯·诺依曼架构,神经形态处理器TrueNorth的单次输运跟踪时间为484 μs[8],远低于具有物理随机性的自旋硬件方法。
这个输运问题作为粒子输运MC仿真的概率计算原语,构建了从器件特性到算法求解的映射。为了充分发挥MC方法在高维问题的优势,多个TRNG单元可协同工作以跟踪复合概率事件,为构建高维概率计算阵列提供了硬件基础。以求解随机微分方程的随机游走模型[9]为例,一维粒子运动跟踪可通过分别跟踪泊松事件触发和随机游走方向的两组TRNG实现,更多维度则由独立变量的张量积获得。
4 自旋TRNG关键参数对比与分析
表3对比了本文TRNG与现有自旋TRNG的吞吐率、功耗和面积。通过Cadence Virtuoso仿真和GPDK 45 nm布局,在MTJ翻转概率为50%的条件下,本文设计随机比特吞吐率达到303 Mbit/s、功耗为2.99 pJ/bit、单元面积为9.79 μm2。在现有基于STT-MTJ的TRNG设计中,本文提出的方案凭借铁电概率突触实现了独特的概率可调特性,同时通过简化控制逻辑和消除重置阶段获得了最优的随机比特生成速度。尽管受限于45 nm工艺节点,该设计在面积和功耗方面仍保持可接受的性能水平。Zhang等[29]提出的基于SOT-MTJ的可调概率TRNG设计,其随机写脉冲为300 ps,未给出读取时间和外围电路的面积、功耗情况,且缺乏对PVT容忍的相关评估。虽然SOT-MTJ同样具有设计概率可调TRNG的潜力,但作为三端器件,电路设计具有更高的复杂性,不利于进一步设计粒子输运加速器,这也是考虑使用STT-MTJ器件进行设计的主要原因。未来的性能改进将受益于与先进CMOS工艺的集成以及具有更快切换响应的自旋器件工艺等。
3与自旋TRNG的对比
Tab.3Comparison with spin-based TRNGs
5 结论
本文提出了一种概率可调TRNG。该电路利用自旋器件的物理随机性作为熵源,通过铁电器件的忆阻特性实现输出概率可调,并结合电路逻辑设计缩短随机比特生成周期,展现出对PVT偏差的容忍性。相较于产生均匀分布的TRNG,所提出的设计避免了后处理带来的运算和访存开销。特别在加速粒子输运问题求解中,相比在通用CPU上的执行,所提出硬件设计获得171~1 028倍的性能加速,展示了概率可调TRNG加速粒子输运计算的显著优势。这项工作揭示了自旋电子器件在推动随机概率计算加速系统设计方面的巨大潜力。未来的工作将集中提高设计的通用性,包括基于当前架构,通过增加TRNG单元数量并按维度需求进行拓扑连接,配合相应的概率参数映射策略,可直接扩展至高维问题求解。
1用于执行随机游走的马尔可夫链
Fig.1Markov chain for random walks
2STT翻转及其动态概率翻转过程
Fig.2STT switching and dynamic probability switching
3编程电压诱导下FTJ极化畴成核和拓展的过程
Fig.3Domain nucleation and propagation in FTJ under programming voltage
4求解粒子输运的系统框架
Fig.4Computational system frameworks for particle transport
5基于MTJ的TRNG的控制逻辑
Fig.5Control logic for MTJ-based TRNG
6可调概率TRNG的控制逻辑
Fig.6Control logic for tunable probability TRNG
7可调概率TRNG的电路设计
Fig.7Circuit design for a tunable probability TRNG
8基于FTJ的概率调节突触结构
Fig.8Structure of tunable probability synapse based on FTJ
9P1P2控制下TRNG输出“1”的概率
Fig.9Probability of TRNG outputting “1” under the control of P1 and P2
10对概率调节突触进行的概率存储仿真
Fig.10Probabilistic storage simulation of the tunable probability synapse
11TRNG执行反馈写入仿真
Fig.11Simulation of feedback write operation in TRNG
12电压偏差下不同配置TRNG的香农熵和最小熵比较
Fig.12Comparison of Shannon and minimum entropy for TRNG control logics under voltage variation
13温度偏差下不同配置TRNG香农熵和最小熵比较
Fig.13Comparison of Shannon and minimum entropy for TRNG control logics under temperature variation
14模拟器通过不同跟踪方法求得的输运方程解的对比
Fig.14Comparison of transport equation solutions using different tracking methods in the simulator
1MTJ紧凑模型的关键参数
Tab.1Key device parameters for MTJ compact model
2随机比特流NIST测试结果
Tab.2NIST test results for the random bit stream
3与自旋TRNG的对比
Tab.3Comparison with spin-based TRNGs
WHITE R D, ROBSON R E, DUJKO S,et al. Recent advances in the application of Boltzmann equation and fluid equation methods to charged particle transport in non-equilibrium plasmas[J]. Journal of Physics D: Applied Physics,2009,42(19):194001.
邓力, 李刚, 张宝印, 等. 蒙特卡罗粒子输运方法及应用研究[J]. 核动力工程,2025,46(3):1-17.DENG L, LI G, ZHANG B Y,et al. Study on Monte Carlo particle transport method and application[J]. Nuclear Power Engineering,2025,46(3):1-17.(in Chinese)
MA D H, YANG B, ZHANG Q Y,et al. Evaluation of single-node performance of parallel algorithms for multigroup Monte Carlo particle transport methods[J]. Frontiers in Energy Research,2021,9:705823.
TRAMM J, ALLEN B, YOSHII K,et al. Efficient algorithms for Monte Carlo particle transport on AI accelerator hardware[J]. Computer Physics Communications,2024,298:109072.
张建民, 刘津津, 许炜康, 等. 符合粒子输运模拟的专用加速器体系结构[J]. 国防科技大学学报,2025,47(2):155-164.ZHANG J M, LIU J J, XU W K,et al. Specific accelerator architecture conforming to particle transport simulation[J]. Journal of National University of Defense Technology,2025,47(2):155-164.(in Chinese)
FU S Q, LI T J, ZHANG J M,et al. MiniMCTAD:minimalist Monte Carlo transport architecture design[C]//Proceedings of IEEE International Conference on Parallel & Distributed Processing with Applications, Big Data & Cloud Computing, Sustainable Computing & Communications, Social Computing & Networking,2021:1-10.
SEVERA W, LEHOUCQ R, PAREKH O,et al. Spiking neural algorithms for Markov process random walk[C]//Proceedings of International Joint Conference on Neural Networks(IJCNN),2018:1-8.
SMITH J D, SEVERA W, HILL A J,et al. Solving a steady-state PDE using spiking networks and neuromorphic hardware[C]//Proceedings of the International Conference on Neuromorphic Systems,2020:1-8.
SMITH J D, HILL A J, REEDER L E,et al. Neuromorphic scaling advantages for energy-efficient random walk computations[J]. Nature Electronics,2022,5(2):102-112.
MISRA S, BLAND L C, CARDWELL S G,et al. Probabilistic neural computing with stochastic devices[J]. Advanced Materials,2023,35(37):2370264.
王亚迪, 郭杭闻, 沈健. 基于磁隧道结的概率计算研究进展[J/OL]. 中国科学: 物理学力学天文学,2025:1-17(2025-06-11)[2025-06-24].https://kns.cnki.net/kcms/detail/11.5848. N.20250611.1122.002.html.WANG Y D, GUO H W, SHEN J. Probabilistic computing based on magnetic tunnel junction[J/OL]. Scientia Sinica(Physica, Mechanica & Astronomica),2025:1-17(2025-06-11)[2025-06-24].https://kns.cnki.net/kcms/detail/11.5848. N.20250611.1122.002.html.(in Chinese)
GALLAGHER W J, CHIEN E, CHIANG T W,et al.22 nm STT-MRAM for reflow and automotive uses with high yield,reliability,and magnetic immunity and with performance and shielding options[C]//Proceedings of the IEEE International Electron Devices Meeting(IEDM),2019:2.7.1-2.7.4.
SATO N, ALLEN G A, BENSON W P,et al. CMOS compatible process integration of SOT-MRAM with heavy-metal bi-layer bottom electrode and 10 ns field-free SOT switching with STT assist[C]//Proceedings of IEEE Symposium on VLSI Technology,2020.
AMIRANY A, JAFARI K, MOAIYERI M H. True random number generator for reliable hardware security modules based on a neuromorphic variation-tolerant spintronic structure[J]. IEEE Transactions on Nanotechnology,2020,19:784-791.
PERACH B, KVATINSKY S. An asynchronous and low-power true random number generator using STT-MTJ[J]. IEEE Transactions on Very Large Scale Integration(VLSI)Systems,2019,27(11):2473-2484.
VATAJELU E I, DI NATALE G. High-entropy STT-MTJ-based TRNG[J]. IEEE Transactions on Very Large Scale Integration(VLSI)Systems,2019,27(2):491-495.
QU Y Z, HAN J, COCKBURN B F,et al. A true random number generator based on parallel STT-MTJs[C]//Proceedings of the Design, Automation & Test in Europe Conference & Exhibition(DATE),2017:606-609.
QU Y Z, COCKBURN B F, HUANG Z,et al. Variation-resilient true random number generators based on multiple STT-MTJs[J]. IEEE Transactions on Nanotechnology,2018,17(6):1270-1281.
MORSALI M, MOAIYERI M H, RAJAEI R. A process variation resilient spintronic true random number generator for highly reliable hardware security applications[J]. Microelectronics Journal,2022,129:105606.
FU S Q, LI T J, ZHANG C Y,et al. RHS-TRNG:a resilient high-speed true random number generator based on STT-MTJ device[J]. IEEE Transactions on Very Large Scale Integration(VLSI)Systems,2023,31(10):1578-1591.
MASUDA N, PORTER M A, LAMBIOTTE R. Random walks and diffusion on networks[J]. Physics Reports,2017,716:1-58.
HU Y Z. Some recent progress on stochastic heat equations[J]. Acta Mathematica Scientia,2019,39(3):874-914.
WU L Z, RAO S, TAOUIL M,et al. MFA-MTJ model:magnetic-field-aware compact model of pMTJ for robust STT-MRAM design[J]. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,2022,41(11):4991-5004.
FANG H, WANG J, NIE F,et al. Giantelectroresistance in ferroelectric tunnel junctions via high-throughput designs:toward high-performance neuromorphic computing[J]. ACS Applied Materials & Interfaces,2024,16(1):1015-1024.
ZHAO W S, CHAPPERT C, JAVERLIAC V,et al. High speed,high stability and low power sensing amplifier for MTJ/CMOS hybrid logic circuits[J]. IEEE Transactions on Magnetics,2009,45(10):3784-3787.
WANG Z H, ZHAO W S, KANG W,et al. Compact modelling of ferroelectric tunnel memristor and its use for neuromorphic simulation[J]. Applied Physics Letters,2014,104(5):053505.
RUKHIN A, SOTO J, NECHVATAL J,et al. A statistical test suite for random and pseudorandom number generators for cryptographic applications[R]. Gaithersburg: National Institute of Standards & Technology,2010.
SONG P T, ZHANG Z J, LIANG L,et al. Implementation and performance analysis of the massively parallel method of characteristics based on GPU[J]. Annals of Nuclear Energy,2019,131:257-272.
ZHANG R, LI X H, ZHAO M K,et al. Probability-distribution-configurable true random number generators based on spin-orbit torque magnetic tunnel junctions[J]. Advanced Science,2024,11(23):2402182.