条件概率比特电路、M-H采样方法、装置、设备及介质

文档序号:32658819发布日期:2022-12-23 22:47阅读:92来源:国知局
条件概率比特电路、M-H采样方法、装置、设备及介质
条件概率比特电路、m-h采样方法、装置、设备及介质
技术领域
1.本发明涉及采样技术领域,尤其涉及一种条件概率比特电路、m-h采样方法、装置、设备及介质。


背景技术:

2.在现有技术中,传统数字计算机可以利用确定性算法产生的伪随机数实现对于采样、搜索、优化等问题的求解。然而,伪随机数由于具有周期性、相干性以及生成的大量数字分布不均匀、产生速度慢,能耗大等缺陷,导致传统数字计算机对采样、搜索、优化等问题的求解速度慢、能耗高、精度低,使得精准问题求解难以实现。为此,需要提供作为实现求解上述问题的高速、能耗低的有效解决方案。


技术实现要素:

3.本发明的主要目的在于提供一种条件概率比特电路、m-h(metropolis-hasting)采样方法、装置、设备及介质,以解决上述至少一个技术问题。
4.为实现上述目的,本发明实施例第一方面提供一种条件概率比特电路,包括:多个基本单元,每个所述基本单元为一个概率比特单元,每个所述概率比特单元包括第一晶体管、第二晶体管和自旋轨道矩磁隧道结,所述第一晶体管、第二晶体管和自旋轨道矩磁隧道结之间通过多条电路连线连接,多个所述概率比特单元的相同信号端之间通过同一所述电路连线连接。
5.在本发明一实施例中,所述多条电路连线包括第一电路连线、第二电路连线、第三电路连线、第四电路连线和第五电路连线;
6.所述第一电路连线,与所述第一晶体管的栅极连接,用于控制所述第一晶体管的栅极电压输入;
7.所述第二电路连线,与所述第一晶体管的源极连接,用于控制所述第一晶体管的源极电压输入;
8.所述第三电路连线,与所述第二晶体管的源极连接,用于控制所述第二晶体管的源极电压输入;
9.所述第四电路连线,与所述自旋轨道矩磁隧道结的输出端连接,用于输出列单元信号或作为概率翻转时写入信号的接地端;
10.所述第五电路连线,与所述第二晶体管的栅极连接,用于控制所述第二晶体管的栅极电压输入。
11.在本发明一实施例中,所述自旋轨道矩磁隧道结包括保护层、钉扎层、绝缘层、自由层和自旋轨道矩层;
12.所述自由层的磁化状态包括向上状态和向下状态,在所述自旋轨道矩层施加电流的情况下产生自旋轨道耦合效应,通过所述自旋轨道耦合效应转化成的自旋流传导到所述自由层中,使所述自由层的磁化方向发生随机翻转;
13.所述随机翻转的方向由所述自由层的初始磁化状态和在所述自旋轨道矩层施加的所述电流的大小中的至少一个决定,与所述电流的方向无关。
14.在本发明一实施例中,在施加给所述自旋轨道矩磁隧道结的自旋轨道矩层的电流小于阈值i0时,施加所述电流后的所述自旋轨道矩磁隧道结的自由层的磁化状态为向下状态的概率既取决于所述电流的大小和所述自由层的初始磁化状态,当所述电流大于等于所述阈值i0时,施加所述电流后所述自由层的磁化状态为向下状态的概率近似为0.5,与所述自由层的初始磁化状态无关。
15.本发明实施例第二方面提供一种m-h采样方法,应用于第一方面所述的条件概率比特电路,所述方法包括:
16.s1,设定目标平稳分布π,自由层磁化状态转移次数阈值n1,需要样本数n2;
17.s2,用一列包括的n个mtj器件的自由层磁化状态表示浮点数s2,用一列包括的n个mtj器件的自由层磁化状态表示浮点数其中,q1+q2=n,且q1,q2均为正整数,q1和q2分别代表浮点数二进制表示的小数位数和整数位数,用q编码浮点数中权值为2q的mtj器件,m
it
=0或1,m
it
=0代表第i个器件自由层磁化状态为向上状态,m
it
=1代表自由层磁化状态为向下状态,m
it
表示第i个mtj器件在第t次迭代后的自由层磁化状态,其中,q1》q>-q2,且q为整数;
18.s3,对所述n个mtj器件的自旋轨道矩层施加电流i,使得自由层的磁化状态为向上状态或向下状态的概率均近似为0.5,所述n个mtj器件的自由层磁化状态所表示的浮点数x
t
近似为区域的均匀采样,其中,i>i0;
19.s4,在第1次迭代到第n1+n
2-1次迭代中,令1≤t≤n1+n
2-1;
20.s5,记录以表示目标平稳分布π。
21.在本发明一实施例中,s4具体包括:
22.s41,读取第q2个器件的自由层磁化状态
23.s42,记录当前浮点数x
t
,记录当前读取的器件编号为q,取浮点数,记录当前读取的器件编号为q,取浮点数计算接受率向第q个mtj器件施加电流i,使得第q个器件从态m
qt
成为态(1-m
qt
)的概率为α,π(x
*
)表示目标平衡分布π下的浮点数x
*
的概率密度,π(x
t
)表示目标平衡分布π下的浮点数x
t
的概率密度,m
qt
表示第q个mtj器件再第t次迭代后的自由层磁化状态;
24.s43,读取第q-1个器件,重复步骤s42,直到q-1<-q2。
25.本发明实施例第三方面提供了一种电子设备,包括:
26.存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现本发明实施例第二方面提供的m-h采样方法。
27.本发明实施例第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本发明实施例第二方面提供的m-h采样方法。
附图说明
28.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
29.图1为本发明一实施例提供的概率比特单元的示意图;
30.图2为本发明一实施例提供的条件概率比特电路的示意图;
31.图3为本发明一实施例提供的自旋轨道矩磁隧道结的示意图;
32.图4为本发明一实施例提供的为自旋轨道矩磁隧道结施加电流的结果示意图;
33.图5示出了一种基于条件概率比特电路优化mh算法的系统结构图;
34.图6示出了一种电子设备的硬件结构示意图。
具体实施方式
35.为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而非全部实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
36.图1为本发明一实施例提供的概率比特单元的示意图,图2为本发明一实施例提供的条件概率比特电路的示意图。
37.请参阅图1和图2,本发明提供的条件概率比特电路包括:多个基本单元,每个该基本单元为一个概率比特单元,每个该概率比特单元包括第一晶体管

、第二晶体管

和自旋轨道矩磁隧道结sot-mtj,该第一晶体管

、第二晶体管

和自旋轨道矩磁隧道结sot-mtj之间通过多条电路连线连接,多个该概率比特单元的相同信号端之间通过同一该电路连线连接。
38.在本发明一实施例中,该多条电路连线包括第一电路连线a、第二电路连线b、第三电路连线c、第四电路连线d和第五电路连线e。该第一电路连线a,与该第一晶体管

的栅极连接,用于控制该第一晶体管

的栅极电压输入。该第二电路连线b,与该第一晶体管

的源极连接,用于控制该第一晶体管

的源极电压输入。该第三电路连线c,与该第二晶体管

的源极连接,用于控制该第二晶体管

的源极电压输入。该第四电路连线d,与该自旋轨道矩磁隧道结sot-mtj的输出端连接,用于输出列单元信号或作为概率翻转时写入信号的接地端。该第五电路连线e,与该第二晶体管

的栅极连接,用于控制该第二晶体管

的栅极电压输入。
39.在本发明一实施例中,如图3所示,该自旋轨道矩磁隧道结sot-mtj包括保护层31、钉扎层32、绝缘层33、自由层34和自旋轨道矩层(sot层)35。其中,钉扎层32和自由层34分别各自包含至少一层铁磁层,该铁磁层的材料可以是co、cofeb等铁磁性材料中至少之一。钉扎层32和自由层34之间还包括绝缘层33,绝缘层33的材料可以是mgo、mgo、al2o3、bn等绝缘体材料中至少之一。sot层35的材料可以是重金属、合金、拓扑绝缘体等自旋轨道耦合效应较大的材料中至少之一。其中,保护层31位于器件结构顶层。
40.在如图3所示器件结构中,钉扎层32的磁化方向利用人工反铁磁结构或者反铁磁层的交换偏置作用固定,而底层的自由层34中铁磁层的磁化方向不固定。在sot层305施加电流的情况下产生自旋轨道耦合效应,通过自旋轨道耦合效应转化成的自旋流传导到自由层34中,使自由层34的磁化方向发生随机翻转。
41.该自由层的磁化状态包括向上状态和向下状态,在该自旋轨道矩层施加电流的情况下产生自旋轨道耦合效应,通过该自旋轨道耦合效应转化成的自旋流传导到该自由层中,使该自由层的磁化方向发生随机翻转。该随机翻转的方向由该自由层的初始磁化状态和在该自旋轨道矩层施加的该电流的大小中的至少一个决定,与该电流的方向无关。
42.在本发明一实施例中,如图4所示,在施加给该自旋轨道矩磁隧道结sot-mtj的自旋轨道矩层的电流小于阈值i0时,施加该电流后的该自旋轨道矩磁隧道结sot-mtj的自由层的磁化状态为向下状态的概率既取决于该电流的大小和该自由层的初始磁化状态,当该电流大于等于该阈值i0时,施加该电流后该自由层的磁化状态为向下状态的概率近似为0.5,与该自由层的初始磁化状态无关。
43.本发明还提供了一种应用于如图2所示的条件概率比特电路的m-h采样方法,该方法主要包括以下步骤:
44.s1,设定目标平稳分布π,自由层磁化状态转移次数阈值n1,需要样本数n2;
45.s2,用一列包括的n个sot-mtj器件的自由层磁化状态表示浮点数mtj器件的自由层磁化状态表示浮点数其中,q1+q2=n,且q1,q2均为正整数,q1和q2分别代表浮点数二进制表示的小数位数和整数位数,用q(q1>q>-q2,且q为整数)编码浮点数中权值为2q的mtj器件,m
it
=0或1,m
it
=0代表自由层磁化状态为向上状态,m
it
=1代表自由层磁化状态为向下状态,m
it
表示第i个sot-mtj器件在第t次迭代后的自由层磁化状态;
46.s3,对该n个sot-mtj器件的自旋轨道矩层施加电流i,使得自由层的磁化状态为向上状态或向下状态的概率均近似为0.5,该n个sot-mtj器件的自由层磁化状态所表示的浮点数x
t
近似为区域的均匀采样,其中,i》i0;
47.s4,在第1次迭代到第n1+n
2-1次迭代中,令1≤t≤n1+n
2-1;
48.s5,记录以表示目标平稳分布π。
49.在本发明中,对于图1所示的概率比特单元进行读操作:第一电路连线a通低电平,第五电路连线e通高电平,第二晶体管

打开,第一晶体管

关闭,在c线上施加电压u,在d上可读到电流变化其中r为sot-mtj结区电阻,大小和自由层与钉扎层的相对磁化方向有关。当两个磁性层磁化方向相同,隧道结为低阻态;而当两个磁性层的磁化方向相反时,隧道结为高阻态,其中r
ap
>r
p

50.在本发明中,对于图1所示的概率比特单元进行写操作:第一电路连线a通高电平,第五电路连线e通低电平,第一晶体管

打开,第二晶体管

关闭,在第一电路连线a上施加电流i,电流大小与自由层磁化状态情况如图4所示。
51.在本发明中,对于图2所示的条件概率比特电路进行读操作:第五电路连线e打开,使第m列的第二晶体管

打开,从第一列到最后一列分别向第二电路连线b加电压,且上一行电压为下一行电压的2倍,设第一行电压为u0,则第m列下侧电阻上读出的电压为其中其中r
im
只有两个取值分别为r
p
和r
ap
从而g
im
有两个取值,通过模数转换器可以将a
×gim
转换成0或1,如图5所示,得到电压u所代表的浮点数其中x
tm
表示第t次迭代时第m列
电压所表示的浮点数。
52.在本发明中,对于图2所示的条件概率比特电路进行写操作:第一电路连线a通高电平,第五电路连线e通低电平,第一晶体管

打开,第二晶体管

关闭,在第一电路连线a上施加电流i,电流大小与自由层磁化状态情况如图4所示。
53.m-h算法中,为满足细致平衡条件引入了接受率α,并使得一侧α进行了归一化处理,使得接受率从而增加了接受概率。但在传统计算机运行该算法的过程中,读取状态i以及计算随机数的过程速度和能耗均较大,难以提升。本发明中所设计的条件概率比特电路可以集存储状态和计算随机数过程于一体,突破冯诺依曼架构瓶颈,从而提升计算速度,降低计算能耗。
54.下面对传统的m-h算法以及用本发明所设计的条件概率比特电路实现m-h算法的过程做一个阐述:
55.传统m-h算法实现采样的过程:
56.a)输入任意给定的马尔科夫链状态转移矩阵q,目标平稳分布π,设定状态转移次数阈值n1,需要样本数n2;
57.b)从任意简单概率分布得到初始状态中x0;
58.c)在第1次迭代到第n1+n
2-1次迭代中,设每一次迭代的状态为x
t
(1≤t≤n1+n
2-1):
59.i)从条件分布概率q(x|x
t
)中得到样本x
*

60.ii)从均匀分布中采样u~[0,1];
[0061]
iii)如果u<α(x
t
,x
*
),则接受x
t+1
=x
*

[0062]
iv)否则不接受转移,t=max{t-1,0};
[0063]
d)记录即为目标平稳分布π。
[0064]
本发明利用图2所示的条件概率比特电路实现m-h算法采样的过程:
[0065]
a)目标平稳分布π,设定状态转移次数阈值n1,需要样本数n2;
[0066]
b)打开所有概率比特单元的第一晶体管

,在所有概率比特单元的第一电路连线a(每一行概率比特单元公用一个a线)施加电流i>i0,使得自由层的磁化状态为上或下的概率均近似为0.5,第m列对应的浮点数为概率均近似为0.5,第m列对应的浮点数为x
t
近似为区域的均匀采样;
[0067]
c)在第1次迭代到第n1+n
2-1次迭代中,设每一次迭代的状态为x
t
(1≤t≤n1+n
2-1,t为迭代次数)且阵列只有一列,即m=1:
[0068]
i)读取第q2个器件的状态m
q2

[0069]
ii)记录此时的总状态x
t
,读取的器件编号为q,取浮点数,读取的器件编号为q,取浮点数此时q(x|x
t
)=x
t
+(随机1,-1)
×2q
,计算接受率并根据图2向第q个器件施加电流i,使得第q个器件从态m
qt
成为态(1-m
qt
)的概率为α,π(x
*
)表示目标平衡分布π下的浮点数x
*
的概率密度,π(x
t
)表示目标平衡分布π下的浮点数x
t
的概率密度,m
qt
表示第q个mtj器件再第t次迭代后的自由层磁化状态;
[0070]
iii)读取第q-1个器件,重复步骤ii),直到q-1<-q2;
[0071]
d)记录即为目标平稳分布π。
[0072]
e)当分布π为高维分布时,m>1,只需将c)中步骤对每一列执行一次,并在计算接受率α时考虑到其他列的状态即可,即其中x表示不包含第m列的所有其他列所表示的浮点数。
[0073]
请参见图5,图5示出了一种基于条件概率比特电路优化mh算法的系统结构图。其中包括比特电路(虚线框内),多路复用器mux、模数转换器adc、处理器、数模转换器dac以及多路分配器demux。条件概率比特电路用于运行m-h算法;多路复用器mux用于输出从条件概率比特电路读取的多个信号;模数转换器adc用于将多路复用器输出的多个信号转换为数字信号;处理器用于对模数转换器转换的数字信号进行处理以确定接受率,数模转换器dac用于将处理器获取的翻转概率值转换为模拟信号;多路分配器demux用于跟进数模转换器转换的模拟信号进行条件概率比特的读写操作。
[0074]
请参见图6,图6示出了一种电子设备的硬件结构图。
[0075]
本实施例中所描述的电子设备,包括:
[0076]
存储器61、处理器62及存储在存储器61上并可在处理器上运行的计算机程序,处理器执行该程序时实现前述图1所示实施例中描述的m-h采样方法。
[0077]
进一步地,该电子设备还包括:
[0078]
至少一个输入设备63;至少一个输出设备64。
[0079]
上述存储器61、处理器62输入设备63和输出设备64通过总线65连接。
[0080]
其中,输入设备63具体可为摄像头、触控面板、物理按键或者鼠标等等。输出设备64具体可为显示屏。
[0081]
存储器61可以是高速随机存取记忆体(ram,random access memory)存储器,也可为非易失性的存储器(non-volatile memory),例如磁盘存储器。存储器61用于存储一组可执行程序代码,处理器62与存储器61耦合。
[0082]
进一步地,本发明实施例还提供了一种计算机可读存储介质,该计算机可读存储介质可以是设置于上述各实施例中的电子设备中,该计算机可读存储介质可以是前述图6所示实施例中的电子设备。该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现前述图1所示实施例中描述的m-h采样方法。进一步地,该计算机可存储介质还可以是u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0083]
需要说明的是,在本发明各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
[0084]
该集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来。
[0085]
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知
悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明所必须的。
[0086]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0087]
以上为对本发明所提供的一种条件概率比特电路、m-h采样方法、装置、设备及介质的描述,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本发明的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1