基于RNN网络的动态X参数核计算方法与流程

文档序号:27126981发布日期:2021-10-27 20:18阅读:286来源:国知局
基于RNN网络的动态X参数核计算方法与流程
基于rnn网络的动态x参数核计算方法
技术领域
1.本发明涉及非线性器件建模技术领域,尤其涉及一种基于rnn网络在低分辨率下动态x参数核计算方法。


背景技术:

2.随着通信技术的不断发展,我们的生活发生了翻天覆地的变化。在蓬勃发展的通信技术背后是以半导体材料为代表的技术的不断推进。更高质量,更可靠的电子通信系统成为了热门的话题和研究方向。工程师们也逐渐面临越来越苛刻的器件性能的设计标准。
3.在射频领域的众多可靠性因素中,无源器件的非线性效应是其中一个尤为重要的话题。它表现在,在高输入功率下,由于组成无源器件的场效应管的寄生传导效应,自热效应等原因,器件会产生输入信号中不存在的谐波分量,影响各器件的正常工作。比如,产生的高功率谐波信号会干扰低噪声放大器,天线等核心部件,使得有效带宽下降。此外,产生的谐波信号会在链路中进行无源互调,严重恶化接收机的性能。这一影响在工程方面是不可忽视的。手机设计完毕时必须要通过非线性效应相关的检测方可投入市场。
4.另一方面,非线性效应也为模型的建立带来了麻烦。传统的小信号s参数理论描述的是输出输入同频的线性系统,因此不适用于谐波分析的情况。移动终端的设计成本远远低于大规模制造成本,因此,寻找高精度,周期短,应用范围广的非线性器件表征模型成为了一个亟待解决的问题。只有得到了非线性器件表征模型,才能在设计阶段不断优化移动终端的谐波性能,避免在测试时浪费过多时间成本和经济成本。
5.2008年,安捷伦公司(是得公司的前身)在统一了s参数和phd模型的基础上提出了x参数模型,并且研发了一套非线性矢量网络分析仪(nvna),对应于非线性系统中的矢量网络分析仪(vna)。该测试系统目前已经成为行业通用的非线性器件建模标准,具有很强的通用性。
6.x参数模型采用频域的黑匣子建模技术,只需要确定该系统从激励信号到响应信号的转换函数即可完成该系统的建模。显然,黑匣子建模技术是一种纯粹的数学建模方法,它摒弃了一切与系统相关的物理工艺、电路结构的因素,单纯地建立输出信号与输入信号的一种函数映射关系,因此能够很好的保护知识产权,利于商业保密化使用。
7.尽管如此,x参数模型在提出伊始也并不是完美的。比如,一些高功率的射频器件往往存在着所谓的“记忆效应”。在时域上记忆效应表现为,器件过去时刻的输入不仅决定该时刻的输出,并且对于该时刻之后的输出也存在着影响。记忆效应的存在是广泛的,而传统x参数的频域定义明显没有考虑到这一问题。因此,phd模型的发明人j.verspecht博士提出了包络域内的动态x参数模型,针对器件在时域上存在的动态记忆效应进行了拓展。在学术界的推动下,目前x参数模型的应用范围已经可以覆盖动态记忆系统的非线性问题研究。
8.动态x参数具有如下的特性:即在包络域的时域采样率趋近于无穷时,动态x参数的精度将趋近于100%。这是因为,动态x参数模型所需要的x参数核实质上是输入方波包络信号在高电平和低电平之间的卷积核。在利用x参数核预测器件的输出包络时,卷积计算所
有对当前时刻输出有影响的过去时刻的输入和他们的卷积核,得到的输出包络便会包含所有“过去时刻输入”的影响。
9.然而,在实际的工程中,不可能存在无穷的时域采样率。也就是说,对于器件包络域的测量往往存在着低分辨率的特征,因此该动态x参数模型具有一定的系统误差,这对于动态x参数的预测精度提出了很大的挑战。
10.rnn(recurrent neural network,循环神经网络)是一类用于处理时间序列数据的神经网络。与动态x参数的时域包络预测不同,rnn网络在低分辨率的时域上具有更为优异的性能。这是因为,rnn网络充分考虑了输出输入信号相邻时刻间包含的时间信息,因此更擅长处理反映某一事物、现象等随时间的变化状态或程度的数据。rnn由于具有精度较高,完善的反向传播算法等特性,应用越来越普遍。


技术实现要素:

11.本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的一个目的在于提出一种基于rnn网络的动态x参数核计算方法,可以在较低分辨率采样率及任意输入方波包络信号下计算出输出信号包络。
12.本发明的技术方案如下:
13.一种基于rnn网络的动态x参数核计算方法,可通过单次的rnn网络训练和预测进行卷积核提取计算,包括如下步骤:
14.过程一、包络仿真构建一非线性器件,给与该器件输入信号并在包络域中获取输入波形包络a、输出波形包络b;
15.过程二、对过程一中器件的输入波形包络a、输出波形包络b进行训练得到rnn网络;
16.过程三、通过过程二中的rnn网络计算器件的动态x参数核。
17.进一步的,过程一包括如下步骤:
18.步骤1、在仿真软件数据库中选择一易产生记忆效应的仿真模型最为仿真器件;
19.步骤2、设置步骤1中器件的仿真类型为包络域仿真,并设定适当的中心频率、阶数与仿真区间使得仿真器件具有较强的非线性;
20.步骤3、选择适当波型的输入载波ac;
21.步骤4、选择若干组输入方波as的直流值vdc和方波的峰均值vpeak,得到对应组的(vdc,vpeak)包络信号,并控制所有组的方波的峰值(vdc+vpeak/2)在射频放大器的1db增益压缩点内,控制方波频率需要远小于载波ac的频率,将对应组的(vdc,vpeak)包络信号与步骤3中的载波ac一同进行相乘,作为输入信号a0;
22.步骤5、利用任意一组(vdc,vpeak)得到的输入波形包络a和输出波形包络b,从仿真软件中提取得到器件的基波相位偏移p。
23.进一步的,过程一的具体步骤如下:
24.步骤1、在ads案例库中下载一工作频率在935ghz附近的c类射频放大器作为仿真器件;
25.步骤2、设置步骤1中器件的仿真类型为包络域仿真,并设定中心频率为1ghz,阶数为五阶,仿真区间为[0,4000ns],间隔为10ns;
[0026]
步骤3、设置输入载波ac的频率为1ghz,幅度为1v,相位为π/4;
[0027]
步骤4、设置若干组输入方波as的直流值vdc和方波的峰均值vpeak,得到对应组的(vdc,vpeak)包络信号,方波as频率选取为1mhz,方波as的上升沿时间和下降沿时间选取为10ns,将对应组的(vdc,vpeak)包络信号并与步骤3中的载波ac一同进行处理相乘,作为输入信号a0;
[0028]
步骤5、利用任意一组(vdc,vpeak)得到的输入波形包络a和输出波形包络b,从ads案例库中提取得到器件的基波相位偏移p。
[0029]
进一步的,过程一中步骤4中,方波as中共选择了24组不同高低电平的(vdc,vpeak)。
[0030]
进一步的,过程一中步骤4中,包括如下处理步骤:
[0031]
步骤4.1对输入载波ac和输入方波as相乘,得到输入a0;
[0032]
步骤4.2对该器件进行仿真,得到输入波形的包络a,输出波形的包络b;
[0033]
步骤4.3将上述波形数据导出;
[0034]
以上得到的载波ac,方波as,输入波形包络a和输出波形包络b都是长度为401的向量。
[0035]
进一步的,过程二包括如下步骤:
[0036]
步骤1、将得到的过程一中导出的文件导入到python的编译环境spyder中;
[0037]
步骤2、对不同组别下(vdc,vpeak)的输入波形包络a和输出波形包络b,将单点的每个值重复五次,得到对应该组的输入长包络a1,输出长包络b1:
[0038][0039]
其中g(n)表示大于等于n的最小整数;
[0040]
步骤3、在上述(vdc,vpeak)中,随机选取2个作为验证集sv,剩余的作为训练集st;
[0041]
步骤4、将上述验证集sv中的a1,b1拼接为一个长输入向量av和长输出向量bv;
[0042]
步骤5、将上述训练集st中的a1,b1拼接为一个长输入向量at和长输出向量bt;
[0043]
步骤6、设置rnn的训练参数:时间步长为1,隐藏层长度为8,隐藏层数量为1,输入长度为1,学习率为0.01;设置rnn的优化器为adam,损失函数为mse;
[0044]
步骤7、将at作为输入,bt作为输出,训练该rnn。
[0045]
进一步的,过程三包括如下步骤:
[0046]
步骤1、利用训练得到的rnn,输入验证集中的av,得到预测的输出数据bv1;
[0047]
步骤2、在ads中提取得到bv1的基波分量bv
11
,二次谐波分量bv
12
,三次谐波分量bv
13

[0048]
步骤3、对于组成av的两个状态s=(vdc,vpeak),分别找到bv
11
,bv
12
,bv
13
中对应的一段预测输出,根据以下公式计算基波记忆核x
g1
(s,t),二次谐波记忆核x
g2
(s,t),三次谐波记忆核x
g3
(s,t):
[0049]
x
gn
(s,t)=[bv
1n
(s,t

1)

bv
1n
(s,t)]
·
p

n
,n=1,2,3;
[0050]
步骤4、在bv1的这一段预测输出中,选取t使得从方波的每一个周期开始算起,经过时间t之后,bv1的值趋于稳定,此时可以认为过去时刻的输入不再影响该时刻以及之后
时刻的输出。把此时的bv1的值记作x
cw

[0051]
x
cw
(s)=bv1(s,t);
[0052]
步骤5、计算最终预测输出bf(s,t):
[0053][0054]
其中t表示包络域信号在一个周期内的采样点数。
[0055]
进一步的,上述动态x参数核的计算方法适应于低分辨率的采样率及任意高

低方波包络的输入信号。
[0056]
本发明的创新点:该计算方法结合了rnn和x参数模型的优势,既继承了传统动态x参数高速,低复杂度的特性,又具有rnn网络物理含义明确,低分辨率不敏感等效果,通过单次的rnn网络训练和预测进行卷积核提取计算;同时,不同于传统x参数模型只能预测指定幅值的输入包络型号的限制,应用本发明所得到的动态x参数核可以接收任意“高

低电平”的方波包络输入信号,极大拓宽了模型的应用范围。
[0057]
本发明中的有益效果:利用rnn网络的低分辨率不敏感特性,对于任意“高

低电平”的方波包络输入信号,可以快速得到高精度的动态x参数的记忆核。
[0058]
对于指定型号的射频器件,得到上述记忆核后,仅需一次计算,便可以预测对应任意“高

低电平”的方波包络输入信号的输出包络;基于此,器件设计厂家可以直接应用本发明方法提取其系列产品的动态x参数核,有利于缩短其设计周期,具有一定的产业化应用价值。
附图说明
[0059]
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
[0060]
图1为本发明提出的基于rnn网络的动态x参数核计算方法流程图;
[0061]
图2为设计的功率放大器的电路原理图;
[0062]
图3为于训练的(vdc,vpeak)的24个取值点的示意图;
[0063]
图4为(vdc,vpeak)=(2.5v,1.5v)时的输入包络a、输出包络b示意图;
[0064]
图5为(vdc,vpeak)=(2.5v,1.5v)时提取到的记忆核x
g
的实部示意图;
[0065]
图6为rnn训练过程精度示意图;
[0066]
图7为基于rnn的动态x参数核预测效果图;
[0067]
图8为本发明中采用的rnn网络的结构示意图。
具体实施方式
[0068]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
[0069]
所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
[0070]
参照图1,一种基于rnn网络的动态x参数核计算方法,具体过程如下:
[0071]
过程一、包络仿真构建一非线性器件,给与该器件输入信号并在包络域中获取输入波形包络a、输出波形包络b;
[0072]
过程二、对过程一中器件的输入波形包络a、输出波形包络b进行训练得到rnn网络;
[0073]
过程三、通过过程二中的rnn网络计算器件的动态x参数核。
[0074]
上述该动态x参数核的计算方法适应于低分辨率的采样率及任意高

低方波包络的输入信号。
[0075]
其中,
[0076]
过程一包括如下步骤:
[0077]
步骤1、如图2所示,为ads案例库中的c类射频放大器。其中的相关参数均为ads中默认选取,属于本领域的常规选择,该电路的结构如下:调制方波信号注入到场效应管的栅极,在直流信号的驱动下,经漏极的谐振电路后放大输出。在本实施例中,不同的输入信号(对应输入波形包络a)改变的是图中左侧方波源src40的vpeak与vdc,提取得到的是右侧阻抗器件term1两端的电压输出波形包络b;
[0078]
具体的,本实施中是一工作频率在935ghz附近的c类射频放大器作为仿真器件,选择该器件的原因是较小幅度的输入信号便能产生明显的记忆效应,对于动态x参数核的提取非常有利。
[0079]
步骤2、设置步骤1中器件的仿真任务为包络域仿真,中心频率为1ghz,阶数为五阶,仿真区间为[0,4000ns],间隔为10ns;实际工作中,可根据所选择的非线性器件的不同设定中心频率、阶数与仿真区间,一般来说,应当选取合适的参数使得在该条件下器件具有较强的非线性,即从时域上看,较早时刻的输入会影响之后时刻的输出。
[0080]
步骤3、设置输入载波ac的频率为1ghz,幅度为1v,相位为π/4。
[0081]
步骤4、设置若干组输入方波as的直流值vdc和方波的峰均值vpeak,得到对应组的(vdc,vpeak)包络信号,一般来说,需要控制所有组的方波的峰值(vdc+vpeak/2)在射频放大器的1db增益压缩点内,此时仿真的精度较高,方波频率也需要远小于载波ac的频率,以满足包络域仿真的要求;并与步骤3中的载波一同进行处理作为输入信号a0;如图3,本实施中,方波as中共选择了24组不同高低电平的(vdc,vpeak),方波频率as选取为1mhz,方波的上升沿时间和下降沿时间选取为10ns;并按照如下步骤进行处理:
[0082]
步骤4.1对输入载波ac和输入方波as相乘,得到输入a0
[0083]
步骤4.2对该器件进行仿真,得到输入波形的包络a,输出波形的包络b
[0084]
步骤4.3将上述波形数据导出。
[0085]
步骤5、利用任意一组(vdc,vpeak)得到的输入波形包络a和输出波形包络b,从ads案例库中提取得到器件的基波相位偏移p。
[0086]
以上得到的ac,as,a和b都是长度为401的向量。向量的长度由包络域仿真的时间区间决定,如过程一步骤2中所述,选取时间区间为[0,4000ns],间隔为10ns,因此所有的输入输出信号向量的长度都为401。
[0087]
如图4,从包络域看,s=(2.5v,1.5v)时的输入信号a和输出信号b;其中,带点的曲线为输入信号a,不带点曲线为输出信号b。通过设定不同的s提取24组数据(如图3)。
[0088]
过程二包括如下步骤:
[0089]
步骤1、将得到的过程一中导出的文件导入到python的编译环境spyder中;
[0090]
步骤2、对不同组别下(vdc,vpeak)的输入波形包络a和输出波形包络b,将单点的每个值重复五次,得到对应该组的输入长包络a1,输出长包络b1:
[0091][0092]
其中g(n)表示大于等于n的最小整数;
[0093]
步骤3、在上述(vdc,vpeak)中,随机选取2个作为验证集sv,剩余的作为训练集st;
[0094]
步骤4、将上述验证集sv中的a1,b1拼接为一个长输入向量av和长输出向量bv;av,bv的长度为a,b长度的10倍;由于在过程二步骤2和步骤3中,选取了2组(vdc,vpeak)作为验证集sv,其中每组的单点的每个值做了重复五次处理,因此av,bv长度拓展为10倍,为4010;
[0095]
步骤5、将上述训练集st中的a1,b1拼接为一个长输入向量at和长输出向量bt;at,bt的长度为a,b长度的110倍;由于在过程二步骤2和步骤3中,选取了22组(vdc,vpeak)作为训练集st,其中每组的单点的每个值做了重复五次处理,因此at,bt长度拓展为110倍,为44110;
[0096]
步骤6、rnn训练模型如图8所示,其中的每一个箭头代表着相连神经元之间的权值,为矩阵或者向量。图中h为隐层单元,o代表输出,y为训练集中的正确的器件输出标签,l代表损失函数。以时刻t而言,其输入x(t)与u相乘,与前一时刻的h(t

1)与w相乘的结果共同影响当前时刻的状态h(t)。h(t)再与v相乘得到输出o(t)和l(t)。反向传播时,不断调整v,w,u的值,使得在设定的优化器下损失函数会得到最小值。在本例中,x,y分别为仿真中得到的av和bv。训练rnn时,遍历av,bv中的4010个时间点,对于某时刻t,取出av(t)通过以上网络计算出l(t),根据l(t)的值修正v,w,u的值。4010个时间点全部处理完毕后,算法结束并保存v,w,u。
[0097]
设置rnn的训练参数:时间步长为1,隐藏层长度为8,隐藏层数量为1,输入长度为1,学习率为0.01;设置rnn的优化器为adam,损失函数为mse;
[0098]
rnn训练参数的选取要综合考虑训练时间和训练精度,在本例中的隐藏层数量和学习率下,既能反应非线性器件的动态效应,又具有较快的训练速度。
[0099]
步骤7、将at作为输入,bt作为输出,训练该rnn;
[0100]
如图6,展示了在spyder中的利用at,bt训练rnn的实时输出。如前文所述at,bt长度为44110。为了显示方便,只取前5000个点的数据展示结果。v_trained为rnn网络的实时预测结果。可以看到,随着训练点数的增加,误差不断反向传播使得v_load_trained与bt越来越接近,模型不断精确。
[0101]
过程三包括如下步骤:
[0102]
步骤1、利用训练得到的rnn,输入验证集中的av,得到预测的输出数据bv1;
[0103]
步骤2、在ads中提取得到bv1的基波分量bv
11
,二次谐波分量bv
12
,三次谐波分量bv
13

[0104]
步骤3、对于组成av的两个状态s=(vdc,vpeak),分别找到bv
11
,bv
12
,bv
13
中对应的一段预测输出,根据以下公式计算基波记忆核x
g1
(s,t),二次谐波记忆核x
g2
(s,t),三次谐波记忆核x
g3
(s,t):
[0105]
x
gn
(s,t)=[bv
1n
(s,t

1)

bv
1n
(s,t)]
·
p

n
,n=1,2,3;
[0106]
如图5所示,为s=(2.5v,1.5v)时,按照前述公式提取得到的的x
g11
的实部图;
[0107]
步骤4、在bv1的这一段预测输出中,选取t使得从方波的每一个周期开始算起,经过时间t之后,bv1的值趋于稳定,此时可以认为过去时刻的输入不再影响该时刻以及之后时刻的输出。把此时的bv1的值记作x
cw

[0108]
x
cw
(s)=bv1(s,t);
[0109]
步骤5、计算最终预测输出bf(s,t):
[0110][0111]
其中t表示包络域信号在一个周期内的采样点数。
[0112]
对于所有不同组输入(vdc,vpeak)的训练过程中,其精度如图6所示,展开描述下,解释说明下附图。
[0113]
参照图7,展示了利用本技术中的方法训练的rnn模型,输入av,将得到的bv1与器件的bv进行比较的结果。如前文所述av,bv长度为4010。从图中可以看出,利用本文所述方法训练的模型具有较好的精度。
[0114]
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1