一种基于5G大频偏相位补偿的FPGA实现方法与流程

文档序号:24631556发布日期:2021-04-09 20:41阅读:528来源:国知局
一种基于5G大频偏相位补偿的FPGA实现方法与流程

本发明涉及基站下行权值计算方案处理方法,具体涉及一种基于5g大频偏相位补偿的fpga实现方法。



背景技术:

5gnr(newradio)中3gpp38.2115.4协议新增符号间相位补偿。基站侧和ue(userequipment)补偿公式如下:

基站侧需要补偿因子:

ue侧需要补偿的因子:

其中,f0、f1表示基站和ue的射频频点,单位hz,l表示符号系数,取值范围1~l,l表示1ms内的符号个数,n表示fft点数,fs表示采样率,单位hz,ncp包含当前符号以及该符号之前所有符号的cp长度之和。为了实现协议需求,需要寻找一种满足nr常用频率范围(0.45g~5g)而且适合硬件fpga实现的灵活的实现方案。



技术实现要素:

针对5gnr中大频偏范围相位补偿,本发明提出了一种基于5g大频偏相位补偿的fpga实现方法,本发明是一种精度和资源可控的fpga实现方案,易于实现硬件fpga,有效解决了协议中新增大频偏相位补偿问题。

本发明采用的技术方案如下:

一种基于5g大频偏相位补偿的fpga实现方法,包括如下步骤:

s1,生成正弦sin_t待查表和余弦cos_t待查表;

s2,根据基站侧补偿因子以及ue侧补偿的因子中符号系数l的取值,计算基站侧补偿因子以及ue侧补偿的因子的指数部分,得到基站侧补偿因子以及ue侧补偿的因子的指数部分的定标值;

s3,根据基站侧补偿因子以及ue侧补偿的因子的指数部分的定标值,计算正弦sin_t待查表和余弦cos_t待查表的查表索引tdex,tdex为指数部分定标值低x比特对应值,其中x=log2(tn),tn为表长度;

s4,根据查表索引tdex查正弦sin_t待查表和余弦cos_t待查表得到需要的相位值。

优选的:正弦sin_t待查表和余弦cos_t待查表,表内复数定标q(16,15)。

优选的:s1中,正弦sin_t待查表生成公式如下:

floor(sin(0:2*π/tn:2*π*(tn-1)/tn)*(215-1))

式中,floor()表示向下取整,tn为表长度。

优选的:s1中,余弦cos_t待查表生成公式如下:

floor(cos(0:2*π/tn:2*π*(tn-1)/tn)*(215-1))

式中,floor()表示向下取整,tn,为表长度。

优选的:s2中,获取基站侧补偿因子以及ue侧补偿的因子的指数部分的定标值的过程包括如下步骤:

s2.1,令基站侧补偿因子以及ue侧补偿的因子指数部分的

其中,fk为子载波间隔,ncp1为长cp长度,ncp2为短cp长度;

s2.2,对进行标定处理,令标定后的定标值为

定标q(22+x,x),其中x=log2(tn),tn为表长度。

优选的:s3中,若需要补偿的相位为ue侧,则tdex保持不变。

优选的:s3中,若为需要补偿的相位为基站侧,对tdex进行修正,修正方式如下:

tdex大于等于tn/2时,令tdex=tn-tdex,否则tdex=tdex+tn/2。

优选的:根据查表索引tdex查表得到需要的相位值得到的基站侧补偿因子以及ue侧补偿的因子thetavalue(l)的表达式如下:

thetavalue(l)=cos_t(tdex+1)+j*sin_t(tdex+1)。

优选的:基站侧补偿因子表达式如下:

其中,f0表示基站的射频频点,l表示符号系数,取值范围1~l,l表示1ms内的符号个数,n表示fft点数,fs表示采样率,ncp包含当前符号以及该符号之前所有符号的cp长度之和。

本发明具有如下有益效果:

本方法能有效解决基站侧和ue侧大频偏相位补偿问题,精度和资源灵活可控,所得的基站侧补偿因子以及ue侧补偿的因子的指数部分的定标值中的量化比特越大精度越高,资源占用越大,反之比特越少,精度越低,资源占用越少,便于fpga实现,有效解决了协议中新增大频偏相位补偿问题。

附图说明

图1为本处理方案得到的相位值与理论值之间evm。

具体实施方式

下面结合附图和实施例来对本发明做进一步的说明。

本发明基于5g大频偏相位补偿的fpga实现方法,包括如下步骤:

步骤1、生成正弦sin_t待查表和余弦cos_t待查表,表长度为tn,表内复数定标q(16,15):

余弦cos_t待查表和正弦sin_t待查表生成公式如下:

floor(cos(0:2*π/tn:2*π*(tn-1)/tn)*(215-1))

floor(sin(0:2*π/tn:2*π*(tn-1)/tn)*(215-1))

其中floor()表示向下取整;

步骤2、为了得到步骤1中查表索引值,根据表示符号系数l的取值计算补偿因子(基站侧补偿因子以及ue侧补偿的因子)的指数部分,定标处理包括如下步骤:

2.1令指数部分的f0(ncp+(l-1)*n)/fs等于c,公式拆开并简化如下:

其中fk为子载波间隔,单位hz,ncp1长cp长度,ncp2短cp长度。

2.2对简化后的c进行定标处理,令定标后的标定值为d,定标q(22+x,x),其中x=log2(tn),量化比特x越大精度越高,资源占用越大,反之比特越少,精度越低,资源占用越少,便于fpga实现。

根据目前nr常用的频点范围以及采样率,可以预估c的有效位宽不会超过22+x比特,则标定值d如下:

步骤3、根据步骤2得到的指数部分定标值d,计算查表索引tdex:

tdex为d的低x比特,其中x=log2(tn),tn为表长度,需要根据待补偿的相位的正负,得到最终的tdex,具体的:

若需要补偿的相位为正数(ue侧)时,则tdex保持不变;

若需要补偿的相位为负值(基站侧)时,需要对tdex进行修正,修正方式如下:

当tdex大于等于tn/2时,tdex=tn-tdex,否则tdex=tdex+tn/2

步骤4、根据查表索引tdex查表得到需要的相位值。

补偿因子thetavalue(l)=cos_t(tdex+1)+j*sin_t(tdex+1)

实施例

为了举例验证本方法的优越性,搭建仿真平台,模拟定点查表出来的相位值和浮点真实值之间差异。本实施例中,f1取3.5ghz,tn取4096,x即12,fs取值122.88m,fft点数n为4096点,l符号取值2,fk为30khz子载波间隔,按照本发明的上述方法,d计算值为511466666,tdex计算值3242,thetavalue(2)计算得到8448-j*31660,对应浮点值0.2578-j*0.9662,计算与浮点真实值0.2588-j*0.9659的evm为0.1040%,满足fpga实现要求。

进一步遍历nr目前常用频段0.45g~5g,evm仿真结果如图1所示,整个频段满足fpga实现要求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1