一种实现正数域、实数域矩阵压缩感知还原的LCA算法电路

文档序号:32306153发布日期:2022-11-23 10:03阅读:70来源:国知局
一种实现正数域、实数域矩阵压缩感知还原的LCA算法电路
一种实现正数域、实数域矩阵压缩感知还原的lca算法电路
技术领域
1.本发明属于半导体(semiconductor)、模拟计算(analog computing)和集成电路(integrated circuit)领域,涉及一种实现压缩感知还原算法的模拟矩阵计算电路,具体涉及一种基于可变电阻器件(如阻变存储器、相变存储器、磁存储器、铁电存储器等)的模拟计算电路设计。


背景技术:

2.压缩感知可以打破奈奎斯特采样定律。若原始信号稀疏或者在某个变换域稀疏,通过采集矩阵采集少量的信号便可以通过非线性还原算法很好地重建出原始信号。自2004年被提出以来,压缩感知理论迅速被应用于核磁共振成像、图像分类、目标检测、信道估计、单像素相机、心电图等领域。压缩感知还原算法一般比较复杂,基于凸函数优化的算法时间复杂度为o(n3),其中n是矩阵的规模,且涉及到的大量矩阵计算会对传统的数字计算机在数据计算、存储和搬运等方面产生巨大的负担,从而增加计算时间和功耗。
3.基于可变电阻器件(如阻变存储器、相变存储器、磁随机存储器和铁电存储器)的交叉阵列可以用于加速矩阵-向量乘法,为加速压缩感知还原算法提供了一种可行的方法。但是,目前该方法仅限于利用可变电阻阵列加速迭代算法中的矩阵-向量乘法运算,而其它一些非线性操作、输入/输出的数据转换与搬运等操作需要与数字系统交互才可以完成,这将带来额外的操作和硬件的开销。此外,还原算法中涉及到的矩阵-矩阵-向量(mmvm)操作也没有一种紧凑、高效的解决方案。因此,研究一种快速计算压缩感知还原的电路系统十分必要。相比于离散的迭代算法,连续时间域的模拟电路可以减少操作步骤和数据搬运,从而实现低功耗、低硬件开销的压缩感知还原。


技术实现要素:

4.本发明的目的是基于局部竞争算法(lca)构建一种实现正数域、实数域矩阵的模拟矩阵计算电路,应用于不同场景下的压缩感知信号还原。
5.本发明提供的技术方案如下:
6.两种执行ψ
t
ψa矩阵-矩阵-向量乘法(mmvm)操作的模拟矩阵计算电路模块,分别可以实现正数域和实数域矩阵的mmvm操作,以及两种基于mmvm模块的lca算法电路,分别可以实现正数域和实数域矩阵的压缩感知还原。
7.本发明原理描述如下:
8.考虑一个欠定问题y=φx,φ是一个n
×
m(n<m)的矩阵,y和x分别是n
×
1和m
×
1的向量。在压缩感知中,φ是探测矩阵,x是原始信号,y是探测到的信号。如果原始信号在某个变换域稀疏x=aa,其中a(m
×
m)是稀疏变换域,a是x在a中的稀疏表示,则欠定问题可以转化为y=φx=φaa=ψa。其中ψ=φa是感知矩阵,压缩感知还原的过程便是利用探测信号y还原稀疏表示a,原始信号便可以通过x=aa得到。由于要兼顾求解信号的稀疏性和正确性,可以将问题抽象为:其中||a||n代表a的ln范数,求解该
最小化问题需要遍历所有稀疏度为k的解向量a的子空间,这个过程非常缓慢,是一个典型的np-hard问题。基追踪(bp)方法可以将最小化l0范数的问题转化为一个最小化l1范数的问题:从而将其转化为一个凸函数的优化问题。基于软阈值函数(stf)的lca算法正是通过最小化该式求解a,lca算法可以描述为下式:
[0009][0010]
a(t)=t
λ
(μ(t))=max(μ(t)-λ,0)
[0011]
其中t
λ
()是阈值为λ的软阈值函数,i是单位矩阵,μ是a的中间变量。
[0012]
本发明lca电路由m个tia、减法器、电压反相器以及mmvm电路构成。
[0013]
对于正数矩阵mmvm电路,若是一个n
×
m的矩阵,该mmvm电路由2m
×
n可变电阻阵列和1
×
n补偿电阻构成,将矩阵作为模拟电导值分别写入可变电阻阵列上半部分和下半部分中,即矩阵ψ
t
(m
×
n)分别映射为阵列上半部分和下半部分的模拟电导值,然后编程阵列列线上接地的补偿电阻的电导值(共n个补偿电阻),使得每个列线上所有电阻器件的电导值加和相等,在一半行线上施加电压a,则可以在接地的另一半行线上得到的输出电流,其中c是一个常数,电路工作时在下半部分的m条行线上输入电压向量,则在另外接地的m条行线上得到输出电流,即正数矩阵mmvm运算结果,lca电路中m个tia、反相器、减法器以及正数矩阵mmvm电路组成一个连续时间域的模拟电路,将cψ和补偿电阻映射到lca电路中的mmvm模块,在输入端输入探测信号y,则在减法器的输出端得到信号在a中的稀疏表示a,从而实现低功耗、低硬件开销的压缩感知还原操作,这n个补偿电阻也可以使用可变电阻器件实现。
[0014]
对于实数矩阵mmvm电路,若是一个n
×
m的含有负数元素的矩阵,mmvm电路由2个2m
×
n的可变电阻阵列、1
×
n补偿电阻、m个输出端串接电阻的tia和m个反相器构成,其中2个可变电阻阵列共享列线,行线分别通过m个电压反相器和m个串联输出电阻的跨阻放大器(tia)相接在一起,将原始矩阵转化为两个非负矩阵,再将它们作为可变电阻的模拟电导值写入阵列,在2个阵列中分别映射两个矩阵和两个矩阵,下半部分m条行线通过反相器相连,上半部分m条行线通过输出端串接电阻的tia相连,电路工作时,在下半部分的m条行线上输入电压向量,则在另外接地的m条行线上得到输出电流,即实数域mmvm运算结果,lca电路中m个tia、减法器以及实数矩阵mmvm电路组成一个连续时间域的模拟电路,将cψ1、cψ2和补偿电阻映射到lca电路中的mmvm模块,在输入端输入探测信号y,则在减法器的输出端得到稀疏表示a。值得注意的是,由于实数矩阵mmvm电路本身包含电压反相器,相应的lca电路不再需要额外的m个电压反相器。
[0015]
在利用减法器实现软阈值函数的电路中,m个集成运放的供电电压从0到v
dd
,且在减法器的反向输入端输入电压λ作为stf的阈值,tia的输出端与该减法器的正向输入端相连,作为μ,从而实现表现良好且可调节阈值大小的a=t
λ
(μ)功能。
[0016]
本发明的有益效果如下:
[0017]
本发明利用集成运算放大器和可变电阻器件(阻变存储器、相变存储器、磁随机存储器和铁电存储器)阵列实现了一步完成压缩感知还原功能的模拟电路,它是一个连续时
间域的计算系统。在电路的输入端输入直流电压,在电路的输出端即可得到相对应的稀疏信号,与其它实现类似功能的硬件系统相比,不需要迭代过程,也不要数据的转换和搬运,因此减少了额外的数字系统硬件开销,简化了操作过程并提高了计算的速度,同时,由于输出信号的稀疏特性,也减少了可变电阻阵列的功耗。
[0018]
本发明还提供了一种适用于mmvm操作的补偿电阻技术,可以不利用其它集成器件一步实现正数域和实数域的mmvm操作,减少了硬件的开销,降低了运算的功耗。
[0019]
此外,本发明还提供了一种利用集成运放实现可调节阈值的软阈值函数的方式,通过单电源供电运放构建的减法器,可以实现性能良好、阈值可调、符合lca算法要求的软阈值函数。
附图说明:
[0020]
图1是本发明中的正数矩阵mmvm电路;
[0021]
图2是本发明中的实数矩阵mmvm电路;
[0022]
图3是本发明的面向正数矩阵的lca电路;
[0023]
图4是本发明的面向实数矩阵的lca电路;
[0024]
图5是本发明应用于图片还原的效果示例。
具体实施方式:
[0025]
为了更加清楚地阐明本发明的目的、技术方案与优点,下面结合附图作进一步详细说明。此处的描述仅仅用以解释本发明,并不用于限定本发明。
[0026]
本发明基于lca算法提供了一种一步实现压缩感知还原的解决方案,包含执行正数矩阵和实数矩阵lca算法的模拟矩阵计算电路。该电路将可变电阻阵列与集成运放相结合,通过写入感知矩阵ψ、输入电压向量y,可以一步计算得到稀疏信号a。由于求解问题相同,该电路也可应用于稀疏编码。此外,该发明还提供了两种基于电导补偿原理的mmvm电路和基于减法器的软阈值函数实现方法。
[0027]
图1是正数矩阵mmvm电路,由2m
×
n可变电阻阵列和1
×
n补偿电阻构成,一步实现正数矩阵的mmvm操作。本发明中,约定单位电导g0=1,且描述中的i代表第i行,j代表第j列。将矩阵ψ
t
中的元素映射为阵列中可变电阻器件的模拟电导值,代表上半部分阵列或者下半部分阵列第i行第j列的电导值,将第j列接地补偿电阻的电导表示为g
c,j
,第i行的输入电压表示为ai,设第j列列线电压为v
bl,j
。根据基尔霍夫电流定律,流入第j列列线的电流等于流出第j列列线的电流,可以列出表达式流等于流出第j列列线的电流,可以列出表达式将表达式写成矩阵形式,可以得到ψa=u
1vbl
,其中u1矩阵是正数对角矩阵,其对角元素为若令u1中的对角元素都相等:即调整列线上的补偿电阻的电导值,使其满足则可以得到图1中的公式(1):
[0028]
[0029]
再根据基尔霍夫电流定律和欧姆定律,可以在接地的m个行线上得到输出电流,便是图1中的(2)式,这便实现了mmvm的操作。
[0030][0031]
图2是实数矩阵mmvm电路,包含两个大小为2m
×
n可变电阻阵列,m个电压反相器和m个与电阻串联的tia,该电路可以实现实数域mmvm操作。首先将包含负元素的矩阵ψ分解为ψ=ψ
1-ψ2,其中矩阵中的元素都是非负数。将矩阵分别映射为左侧阵列中的上半部分和下半部分的电导值,矩阵分别映射为右侧阵列中上半部分和下半部分的电导值。根据基尔霍夫电流定律,流入第j列的电流与流出第j列的电流相等,同时根据工作在线性放大区运算放大器“虚短、虚断”特性,运放输入端流入的电流近似为0,且运放的正向输入端和反向输入端电压近似相等,在这里其正向输入端都是虚地的,即电势近似为0,因此可以列出表达式,地的,即电势近似为0,因此可以列出表达式,将该表达式写成矩阵的形式,ψa=u
2vbl
,其中u2矩阵对角元为的对角矩阵,调节补偿电阻的电导值使得对角元素都相等,即则可以得到图2中的(3)式
[0032][0033]
再根据基尔霍夫电流定律和运放的“虚短、虚断”,可以得到图二中tia的输出电压为因此接地的行线上输出电流可以计算得到,即为图2中的(4)式。
[0034][0035]
图3是面向正数矩阵的lca电路,m个tia、反相器、减法器以及正数矩阵mmvm电路组成一个连续时间域的模拟电路系统,可以一步实现lca算法。其中,串接一列1
×
n大小为cg0=c的输入电导的mmvm电路可以实现-ψ
t
ψa+ψ
t
y操作,反相器实现-a的操作,单电源供电的减法器可以实现软阈值函数a=t
λ
(μ)的操作,tia实现核心微分功能与加和操作。当电路达到稳定状态时,利用运放的“虚短、虚断”特性,可以得到电路的静态方程,即为图3里的(5)式。
[0036]
μ=ψ
t
y-(ψ
t
ψ-i)a
ꢀꢀꢀꢀ
(5)
[0037]
a=t
λ
(μ)
[0038]
该静态方程就是lca中的时间一阶微分方程达到稳定的式子,其中μ是tia的输出电压,也是减法器的输入电压,a是减法器的输出电压,也是该电路求得的稀疏表示。以tia为核心去分析该电路的动态响应,在电路达到稳定之前,运放不能被认为是虚短的,即正反向输入端口的电压不能认为是一致的。将tia的反向输入端电压设为vi,反相器的反向输入端电压设为v
ii
,反相器的输出端电压设为v
iii
,则利用基尔霍夫电流定律,可以列出表达式,公式中等号左侧的第一项是mmvm电路提
供给tia的电流,第二项是反相器提供给tia的电流,等号右侧是流过tia反馈电导的电流。在动态情况下,串接输入电阻的mmvm电路列线电压可以表示为反相器的动态方程可以表示为,v
iii
=2v
ii-a,因此以tia为核心的基尔霍夫电流方程可以改写为,ψ
t
y+ψ
t
ψa-ψ
t
ψv
i-cu
3vi
+v
iii
=2v
i-μ,其中u3矩阵是对角元素为∑jψ
i,j
的对角矩阵,再将该式与运算放大器的开环传递函数联立,v
iii
,其中l0是运放的开环直流增益倍数,ω0是运放的3-db带宽,则可以得到,db带宽,则可以得到,由于式子中的l0数值很大,通常在105左右,因此省略相关小项,便可以得到电路在频域的动态方程,(2i+cu3+ψ
t
ψ)su-2sa=l0ω0[-μ+ψ
t
y-(ψ
t
ψ-i)a],再利用拉普拉斯反变换便可以得到电路的时域方程由于减法器的输入信号μ是tia的输出电压,不是一个阶跃信号,是随着时间以运算放大器的时间常数演变的模拟电压信号,因此假设减法器的输出a是紧随其输入μ变化的信号,即且a(t)=t
λ
(μ(t)),因此便可以得到整个电路的动态方程,也是图3中的(6)式,
[0039][0040]
这也是前文提到的lca时间一阶微分方程。
[0041]
图4是面向实数矩阵的lca电路,m个tia、减法器以及实数矩阵mmvm电路实现了求解实数域lca的连续时间模拟电路系统。压缩感知中比较常见的探测矩阵φ和稀疏基矩阵a都包含了负数元素,因此感知矩阵ψ一般也包含负数元素,将ψ分解为两个只包含非负数元素的矩阵ψ=ψ
1-ψ2,然后将cψ1和cψ2映射到电路中,经过与正数矩阵mmvm电路相同的操作,可以在接地的行线处得到实数矩阵mmvm结果。在输入端输入探测信号y,便可以在减法器的输出端得到稀疏表示a。
[0042]
图5是lca电路的典型应用展示,将原始图片使用观测矩阵进行50%采样,然后将矩阵cψ作为器件电导值写入可变电阻阵列,再调节补偿电阻的电导值,将探测信号转化为电压信号输入到lca电路中,即可得到信号在变换域a中的稀疏表示,再使用x=aa便可以还原出原始图片。图5的坐标图中,纵坐标为电路测量结果,横坐标为理想计算结果,可见二者具有比较高的一致性,尤其是插图中的半对数坐标图显示,理想输出为0的元素都具有很小的电路值,从而证明该电路正确求解了图片还原的稀疏表示。
[0043]
上面描述的实施例并非用于限定本发明,任何本领域的技术人员,在不脱离本发明的精神和范围内,可做各种的变换和修改,因此本发明的保护范围视权利要求范围所界定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1