掌桥专利:专业的专利平台
掌桥专利
首页

一种增强数字预失真稳定性的方法及装置

文献发布时间:2024-04-18 19:52:40


一种增强数字预失真稳定性的方法及装置

技术领域

本发明涉及无线通信技术领域,具体而言,涉及一种增强数字预失真稳定性的方法及装置。

背景技术

有源器件引入的非线性在无线通信系统中很常见。数字预失真是一种非常有效的解决方案,它能实现在输入到非线性器件之前实现预失真功能。目前常见的系统结构分为2种:开环系统和闭环系统。闭环系统是目前最为常见的形式,主要代表算法最小均方(LMS)和最小二乘(LS)。最小二乘(LS)算法存在较为复杂的计算量问题,而LMS由于其易于实现和惊人的鲁棒性而在实时应用中是首选。然而,LMS易受输入的不良调节或不充分激励的影响,导致训练结构不能稳定。

工程实现当中,解决LMS算法稳定性问题,采取过很多措施,比如Leakge方式应用在系数上,提升系数高精度要求下的稳定性;比如通过调整迭代步长,来提升LMS收敛的稳定性。以上这些措施对LMS算法系数结果的稳定性起到了主导调整作用,这些是可以通过数学公式的分析可以得出有效的结果。而我们在实际工程中面临的问题是不能用数学公式分析出来的,是实际逻辑开发过程中不可避免的问题,如图1所示中,数据流是被规律性打断,等效为等间隔抽样。LMS算法从数学公式要求将训练样本无遗漏都要在一定时间内或者长期周期内被用来训练系数,如果出现数据遗漏,特殊异常数据可能会导致系数收敛异常,进而导致烧坏有源器件。

逻辑实现LMS算法系数解算步骤中,需要先对解算需要的数据进行有效长度的数据段锁数,该锁存的数据被拿去进行LMS系数迭代,逻辑迭代计算系数需要消耗固定的样点时间,但是该消耗的样点时间过程中,信号数据流还在流动,那当前次解算系数完成,再进行下一次锁数,新锁数结果与上一次锁存的数据不连续,中间一段数据因为流失没有被LMS进行训练,从长期看,每次锁数处理的数据其实是对业务数据等间隔连续抽样。根据LMS理论,样本训练不充分,LMS存在发散风险。

因此,如何提供一种能增强数字预失真稳定性的方法,是目前亟待解决的问题。

发明内容

为了改善上述问题,本发明提供了一种增强数字预失真稳定性的方法及装置。

本发明实施例的第一方面,提供了一种增强数字预失真稳定性的方法,所述方法包括:

用LMS算法实现数字预失真结构;

通过随机序列产生器基于当前信号时刻产生随机指示信号;

根据所述随机指示信号对数字预失真建模信号和误差信号锁数,锁数深度与数字预失真建模信号的最长记忆深度相等;

将锁存的数据用LMS算法进行LMS解算系数计算;

重复上述过程,持续迭代到LMS解算系数收敛。

可选地,所述随机序列产生器基于当前信号时刻产生随机指示信号的方法为:

随机序列产生器指示时刻t与当前信号时刻tn的关系是

其中,N为数字预失真建模信号的最长记忆深度。

可选地,所述将锁存的数据用LMS算法进行LMS解算系数计算的方法为:

通过以下公式计算LMS解算系数

其中,x(n)是数字预失真的理想发射信号,f(x(n))是数字预失真建模信号,fb(n)是PA环回到反馈的信号,y(n)是预失真输出信号,w(n)是预失真系数,误差信号e(n)是发射信号x(n)与反馈信号fb(n)的差。

可选地,所述根据所述随机指示信号对数字预失真建模信号和误差信号锁数的步骤,具体包括:

对数字预失真建模信号连续锁数15个数据;

对误差信号锁数1个数据。

可选地,每次迭代计算LMS解算系数后,输出flag指示;

所述flag指示用于重新触发随机序列产生器生成随机指示信号。

可选地,所述随机序列产生器按照设定的时延具体值生成随机指示信号。

可选地,所述随机序列产生器由伪随机序列发生器和异或门组成。

本发明实施例的第二方面,提供了一种增强数字预失真稳定性的装置,所述装置包括:

结构实现单元,用LMS算法实现数字预失真结构;

随机生成单元,用于通过随机序列产生器基于当前信号时刻产生随机指示信号;

随机锁数单元,用于根据所述随机指示信号对数字预失真建模信号和误差信号锁数,锁数深度与数字预失真建模信号的最长记忆深度相等;

系数计算单元,用于将锁存的数据用LMS算法进行LMS解算系数计算;

迭代控制单元,用于重复上述过程,持续迭代到LMS解算系数收敛。

本发明实施例的第三方面,提供了一种电子设备,其特征在于,包括:

一个或多个处理器;存储器;一个或多个应用程序,其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行如第一方面所述的方法。

本发明实施例的第四方面,提供了一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序代码,所述程序代码可被处理器调用执行如第一方面所述的方法。

综上所述,本发明提供了一种增强数字预失真稳定性的方法、装置、电子设备及存储介质,通过增加随机锁数指示,控制随机锁数起点和终点范围大于LMS计算系数逻辑处理时间,且每次锁数起点随机,这样就打破了等间隔抽样问题且能在长期时间内覆盖整个业务数据,使得LMS训练系数时能将所有的输入数据理论上长期可以完全被覆盖掉,从根本上解决由于不可避免的工程实现方法导致的系数不稳定性问题。实际产品中如果采用方法,能够大大降低逻辑设计难度,且对大规模常态化逻辑链路开发带来方便,为ASIC芯片化降低面积功耗带来优势。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为现有的的无随机锁数的锁数行为示意图;

图2为本发明实施例的增强数字预失真稳定性的方法流程图;

图3为本发明实施例的随机序列发生器的结构示意图;

图4为本发明实施例的锁数控制逻辑示意图;

图5为本发明实施例的在指示信号指示下的锁数行为示意图。

图6为本发明实施例的采用了随机锁数的LMS算法应用DPD预失真校正后结果示意图;

图7为本发明实施例采用了随机锁数的LMS算法的随机锁数指示结果值示意图;

图8为本发明实施例的增强数字预失真稳定性的装置的功能模块框图;

图9为本发明实施例的用于执行根据本申请实施例的增强数字预失真稳定性的方法的电子设备的结构框图。

图10是本发明实施例的用于保存或者携带实现根据本申请实施例的增强数字预失真稳定性的方法的程序代码的计算机可读存储介质的结构框图。

附图标记:

结构实现单元110;随机生成单元120;随机锁数单元130;系数计算单元140;迭代控制单元150;电子设备300;处理器310;存储器320;计算机可读存储介质400;程序代码410。

具体实施方式

有源器件引入的非线性在无线通信系统中很常见。数字预失真是一种非常有效的解决方案,它能实现在输入到非线性器件之前实现预失真功能。目前常见的系统结构分为2种:开环系统和闭环系统。闭环系统是目前最为常见的形式,主要代表算法最小均方(LMS)和最小二乘(LS)。最小二乘(LS)算法存在较为复杂的计算量问题,而LMS由于其易于实现和惊人的鲁棒性而在实时应用中是首选。然而,LMS易受输入的不良调节或不充分激励的影响,导致训练结构不能稳定。

工程实现当中,解决LMS算法稳定性问题,采取过很多措施,比如Leakge方式应用在系数上,提升系数高精度要求下的稳定性;比如通过调整迭代步长,来提升LMS收敛的稳定性。以上这些措施对LMS算法系数结果的稳定性起到了主导调整作用,这些是可以通过数学公式的分析可以得出有效的结果。而我们在实际工程中面临的问题是不能用数学公式分析出来的,是实际逻辑开发过程中不可避免的问题,如图1所示中,数据流是被规律性打断,等效为等间隔抽样。LMS算法从数学公式要求将训练样本无遗漏都要在一定时间内或者长期周期内被用来训练系数,如果出现数据遗漏,特殊异常数据可能会导致系数收敛异常,进而导致烧坏有源器件。

逻辑实现LMS算法系数解算步骤中,需要先对解算需要的数据进行有效长度的数据段锁数,该锁存的数据被拿去进行LMS系数迭代,逻辑迭代计算系数需要消耗固定的样点时间,但是该消耗的样点时间过程中,信号数据流还在流动,那当前次解算系数完成,再进行下一次锁数,新锁数结果与上一次锁存的数据不连续,中间一段数据因为流失没有被LMS进行训练,从长期看,每次锁数处理的数据其实是对业务数据等间隔连续抽样。根据LMS理论,样本训练不充分,LMS存在发散风险。

因此,如何提供一种能增强数字预失真稳定性的方法,是目前亟待解决的问题。

鉴于此,本发明一种增强数字预失真稳定性的方法,就是用来克服实际逻辑工程实现中不可避免的等间隔周期抽样数据训练问题,进而会导致LMS算法解算系数结果异常。通过增加随机锁数指示,LMS训练系数时能将所有的输入数据理论上长期可以完全被覆盖掉,这就从根本上解决由于不可避免的工程实现方法导致的系数不稳定性问题。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

在本发明的描述中,需要说明的是,术语“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。

本发明是解决理论数学公式在实际工程应用中遇到的问题矛盾,由于逻辑实现LMS算法是数据流处理,且存在由于固定逻辑处理延迟,导致实际解算的数据是被固定间隔抽取后的信号,无法实现对所有信号数据训练预失真系数,进而影响LMS算法系数不满足性能要求。

此外,在实际工程长期测试时(一般小时起)发明人发现,LMS算法还存在定期发散的现象,后经过理论分析发现通信系统的10ms周期数据与LMS收敛周期成整倍数,就会导致LMS收敛平衡被打破。为了彻底解决这些问题,并提升LMS算法长期不稳定,引入随机锁数行为来破坏进行计算系数的数据周期。

基于此,为了解决逻辑实现中不可避免逻辑延迟导致数据被抽样进而影响LMS算法稳定性,请参阅图2,本发明提供一种增强数字预失真稳定性的方法,该方法包括:

步骤S101,用LMS算法实现数字预失真结构。

针对具体的应用场景,采用LMS定点实现数字预失真结构。

在本实施例中,具体的数字预失真结构为:

上式中,x(n)是数字预失真的理想发射信号,f(x(n))是数字预失真建模信号,fb(n)是PA环回到反馈的信号,y(n)是预失真输出信号,w(n)是预失真系数,误差信号e(n)是发射信号x(n)与反馈信号fb(n)的差。

步骤S102,通过随机序列产生器基于当前信号时刻产生随机指示信号。

其中,随机序列产生器基于当前信号时刻产生随机指示信号的方法为:

随机序列产生器指示时刻t与当前信号时刻t

其中,N为数字预失真建模信号的最长记忆深度。

具体地,如图3所示,随机序列产生器由伪随机序列发生器和异或门组成。工作时,伪随机序列发生器时时刻刻进行移位,且在移位的基础上加上异或门,这就相当于每进行一次移位,寄存器中的值会发生改变,一直移动,一直改变,就形成了伪随机数。

以32位移位寄存器为例,异或门多项式设计为[101000011],对应x

步骤S103,根据所述随机指示信号对数字预失真建模信号和误差信号锁数,锁数深度与数字预失真建模信号的最长记忆深度相等。

为了保证随机起点锁数数据从长期看能覆盖全部数据,锁数深度与数字预失真建模信号的最长记忆深度N相等。

具体的锁数方法包括:

对数字预失真建模信号f(x(n))连续锁数15个数据;

对误差信号x(n)锁数1个数据。

步骤S104,将锁存的数据用LMS算法进行LMS解算系数计算。

基于锁存的数据即可进行LMS解算系数计算了,基于上述的数字预失真结构,将锁存的数据待机以下公式计算,进行迭代。

w(n+1)=w(n)+μ·e(n)·f

w(n)是预失真系数。

每次迭代计算LMS解算系数后,执行步骤S105,判断LMS解算系数是否收敛。如果未收敛,则返回步骤S102,进行下一次的迭代。

作为本发明的实施例的优选实施方式,每次迭代计算LMS解算系数后,输出flag指示;所述flag指示用于重新触发随机序列产生器生成随机指示信号,用于触发开始下一次的迭代。

作为本发明的实施例的其他实施方式,在进行迭代时,也可以使所述随机序列产生器按照设定的时延具体值生成随机指示信号。其中时延具体值对应每次迭代的时间。

基于以上描述,本发明的实施例的增强数字预失真稳定性的方法中,迭代执行逻辑如下:

(1)配置移位序列触发器初始值,使得移位寄存器循环工作;

(2)时时刻刻流入数据流f(x(n))和e(n),等待(1)中的锁数信号指示;

(3)当(1)中锁数指示信号拉高,输出锁数延迟值[0~6],逻辑根据延迟具体时刻值连续锁数f(x(n))15个数据,同时锁数e(n)1个数据;

(4)采用(3)中的锁数结果值输入下述公式中进行系数迭代,系数迭代需要消耗一定的逻辑时延;

w(n+1)=w(n)+μ·e(n)·f

(5)完成步骤(4)后,循环(2)~(4)步骤。

下面通过一个具体的例子来对本发明的实施例的增强数字预失真稳定性的方法中的随机锁数进行具体说明:

本案例中的测试信号是NR100M,测试下行频点是2.6G,载波频点是2.6GHz,Transceiver芯片是白泽20。

实施方法包括S1:搭建定点LMS算法实现链路实现DPD(数字预失真)工程,搭建外部环回模拟链路;S2:发射10ms小区业务数据,进行有效测试,使能随机锁数单元,设置记忆深度为15,随机序列发生器取余7;S3:观察随机锁数输出规律和范围大小,观察解算系数的长期稳定性和数字预失真校正性能。

S1中搭建的DPD预失真链路数学公式是,其中基带信号x(n)是NR100M信号,f(x(n))是DPD的建模信号,y(n)是数字预失真信号,w(n)是预失真系数,fb(n)是系统经过PA环回后外接衰减器进入白泽20ORX通道的数据:

/>

在执行过程中,每完成一次迭代都使能触发随机序列产生器,输出信号指示,持续迭代到LMS解算系数收敛的输出结果,通过观察随机锁数指示值,以及解算性能和系数收敛趋势,证明本发明提供的增强数字预失真稳定性的方法的有效性。

通过随机序列产生器进行锁数结果如图5中展示,可以看到由于锁数起点不再是固定起点,且锁数数据长度是大于逻辑处理延迟的,那就保证随机起点锁数数据从长期看能覆盖全部数据。随机锁数发生器产生的结果分布是高斯白噪声分布。

图6显示数字预失真校正之后的性能,以及补偿系数的随时间的变化。可以明显看到引入随机锁数能有效保证LMS算法性能以及系数长期稳定性。图7显示对应图6中某部分时刻随机锁数输出指示,可以看到不同时刻随机锁数的起点值不一样。

综上,本发明提供了一种增强数字预失真稳定性的方法,通过增加随机锁数指示,控制随机锁数起点和终点范围大于LMS计算系数逻辑处理时间,且每次锁数起点随机,这样就打破了等间隔抽样问题且能在长期时间内覆盖整个业务数据,使得LMS训练系数时能将所有的输入数据理论上长期可以完全被覆盖掉,从根本上解决由于不可避免的工程实现方法导致的系数不稳定性问题。实际产品中如果采用方法,能够大大降低逻辑设计难度,且对大规模常态化逻辑链路开发带来方便,为ASIC芯片化降低面积功耗带来优势。

如图5所示,本发明实施提供的增强数字预失真稳定性的装置,所述装置包括:

结构实现单元110,用LMS算法实现数字预失真结构;

随机生成单元120,用于通过随机序列产生器基于当前信号时刻产生随机指示信号;

随机锁数单元130,用于根据所述随机指示信号对数字预失真建模信号和误差信号锁数,锁数深度与数字预失真建模信号的最长记忆深度相等;

系数计算单元140,用于将锁存的数据用LMS算法进行LMS解算系数计算;

迭代控制单元150,用于重复上述过程,持续迭代到LMS解算系数收敛。

本发明实施例提供的增强数字预失真稳定性的装置,用于实现上述增强数字预失真稳定性的方法,因此具体实施方式与上述方法相同,在此不再赘述。

如图6所示,本发明实施例提供的一种电子设备300的结构框图。该电子设备300可以是智能手机、平板电脑、电子书等能够运行应用程序的电子设备300。本申请中的电子设备300可以包括一个或多个如下部件:处理器310、存储器320、以及一个或多个应用程序,其中一个或多个应用程序可以被存储在存储器320中并被配置为由一个或多个处理器310执行,一个或多个程序配置用于执行如前述方法实施例所描述的方法。

处理器310可以包括一个或者多个处理核。处理器310利用各种接口和线路连接整个电子设备300内的各个部分,通过运行或执行存储在存储器320内的指令、程序、代码集或指令集,以及调用存储在存储器320内的数据,执行电子设备300的各种功能和处理数据。可选地,处理器310可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器310可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器310中,单独通过一块通信芯片进行实现。

存储器320可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器320可用于存储指令、程序、代码、代码集或指令集。存储器320可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端在使用中所创建的数据(比如电话本、音视频数据、聊天记录数据)等。

如图7所示,本发明实施例提供的一种计算机可读存储介质400的结构框图。该计算机可读介质中存储有程序代码410,所述程序代码410可被处理器调用执行上述方法实施例中所描述的方法。

计算机可读存储介质400可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选地,计算机可读存储介质400包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质400具有执行上述方法中的任何方法步骤的程序代码410的存储空间。这些程序代码410可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码410可以例如以适当形式进行压缩。

综上所述,本发明提供了一种增强数字预失真稳定性的方法、装置、电子设备及存储介质,通过增加随机锁数指示,控制随机锁数起点和终点范围大于LMS计算系数逻辑处理时间,且每次锁数起点随机,这样就打破了等间隔抽样问题且能在长期时间内覆盖整个业务数据,使得LMS训练系数时能将所有的输入数据理论上长期可以完全被覆盖掉,从根本上解决由于不可避免的工程实现方法导致的系数不稳定性问题。实际产品中如果采用方法,能够大大降低逻辑设计难度,且对大规模常态化逻辑链路开发带来方便,为ASIC芯片化降低面积功耗带来优势。

在本申请所公开的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。

所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。

相关技术
  • 基于分段线性函数的双频功放数字预失真装置及方法
  • 数字预失真算法里增强运算稳定性的方法
  • 数字预失真算法里增强运算稳定性的方法
技术分类

06120116332916