一种软件无线电系统中任意倍数采样率转换的方法技术方案

技术编号:38855310 阅读:7 留言:0更新日期:2023-09-17 10:01
本发明专利技术公开一种软件无线电系统中任意倍数采样率转换的方法,属于无线通信的技术领域,包括以下步骤:在准备阶段,首先根据符号速率确定信号分段长度、根据计算量要求确定滤波器的截短长度以及截短所使用的窗函数,然后计算并存储每个新采样时刻对应的重构滤波器的系数和滤波器输入数据所对应的旧采样时刻;在信号实时处理阶段,调用已知的重构滤波器系数对旧采样率下的输入数据进行时变滤波运算,得到新采样率下的信号。本发明专利技术方法在通用处理器上实现时,能够以很低的复杂度实现信号在任意采样率之间的转换。采样率之间的转换。采样率之间的转换。

【技术实现步骤摘要】
一种软件无线电系统中任意倍数采样率转换的方法


[0001]本专利技术涉及一种软件无线电系统中任意倍数采样率转换的方法,属于无线通信的


技术介绍

[0002]在传统无线电产品开发思路中,射频和基带处理都由专用芯片中的模拟和数字电路来实现,信号参数和处理过程都是固定的。当有新技术出现或版本需要升级时,必须开发新的专用芯片来支持。而在软件无线电通信系统中,模数和数模转换(AD/DA)尽可能向天线端推移,信号发生、调制/解调、信道编译码等信号处理过程以及协议栈均由软件实现,不再需要硬件电路支持。由于软件无线电具有可重配置的特性,给产品开发和科学研究带来了很大的灵活性。
[0003]不同的通信系统或空口协议具有不同的传输速率,对应着不同的符号速率或主时钟速率。如果每次重新配置无线电时都要更换主晶振,这显然是不可接受的。因此在软件无线电系统中,往往会固定AD/DA的采样频率,然后通过数字采样率转换的方法,由软件计算出所需要的特定采样率的数据。在接收端,一般是把数据从AD的原始采样率转换为符号速率的整数倍,然后再进行解调处理。在发射端,数字调制生成的数据往往是符号率的整数倍,要把这个数据转换为DA的采样率再送去射频单元处理和发射。
[0004]如果新采样率是AD/DA采样频率的整数倍或整数分之一,数字信号处理中常用的增采样(内插)和减采样(抽取)就可以完成采样率转换。如果新旧采样率之间的关系为两个简单整数的比,例如3/5,则可以通过先增采样3倍再降采样5倍的方法来实现采样率转换。但如果新旧采样率之比是一个复杂的有理数,如1.117,则先增采样1117倍再降采样1000倍是非常低效的实现方式。更进一步的是,如果新旧采样率之比是无理数,如倍,则这种增减采样组合的方法就完全不再适用了。
[0005]对于任意倍数的采样率转换问题,目前常用的方法是使用Farrow结构的时变低通滤波器进行重采样。即根据每一个新采样时刻,实时计算所需的重构滤波器的系数,然后与旧采样率下的数据进行卷积运算,得出新采样时刻下的内插数据。为了降低计算量,Farrow结构使用分段多项式拟合来近似表示重构滤波器的时域响应,并且采用嵌套计算的方法来降低幂运算的复杂度。这样当采用N阶多项式来拟合重构滤波器时,重采样的计算量大约是普通低通滤波器的N倍。
[0006]对于数字电路实现的采样率转换系统,Farrow结构是一个不错的选择,只需要增加N倍的乘加单元,通过并行处理即可以完成实时计算,不会增加处理时间。但是对于软件实现的采样率转换系统,所有的计算都是在CPU或GPU中完成的,N倍计算量的增加就会导致N倍处理时间的增加。
[0007]基于通用处理器的软件无线电平台采用商用CPU/GPU服务器或普通个人电脑作为信号处理平台,可采用通用的高级语言(如C/C++)进行软件开发,具有更高的灵活性。虽然通用处理器的计算资源受限,但一般具有较大的存储资源(计算机内存或GPU显存),可以牺
牲存储效率来提高计算效率,这一点是与硬件处理设计思想上的根本不同。

技术实现思路

[0008]针对上述问题,本专利技术提出一种软件无线电系统中任意倍数采样率转换的方法,可实现一个信号任意两种采样率之间的实时数字转换。
[0009]本专利技术软件无线电系统中任意倍数采样率转换的方法,包括数据准备阶段与信号实时处理阶段,具体为:
[0010]所述准备阶段包括:
[0011]建立第一存储表,用于存储每个新采样时刻对应的重构滤波器的系数。
[0012]建立第二存储表,用于存储重构滤波器输入数据对应的旧采样时刻。
[0013]所述信号实时处理阶段:
[0014]对旧采样率下的输入数据流,按周期T进行分段;对信号周期内每一个新采样时刻,根据两张存储表读取对应的重构滤波器系数和对应的旧采样时刻,读取旧采样率下的输入数据,计算新采样率下的输出数据。
[0015]使用两张存储表,对所有分段进行上述处理,获得重采样后的信号。
[0016]本专利技术的优点在于:
[0017]1、本专利技术软件无线电系统中任意倍数采样率转换的方法,将信号分段处理,根据分段后数据块的长度,提前算好数据块内每一个新采样时刻所需要的重构滤波器的系数以及滤波器输入所涉及的旧采样时刻,将它们存储起来,后续所有的数据块都重复使用这两个数组进行滤波运算。因为滤波器系数已知,时变系数重采样滤波的计算复杂度与普通时不变低通滤波器的计算复杂度相当,只有Farrow结构重采样滤波器的1/N。而其所增加的存储空间对于现代计算机而言是完全可以承受的。
[0018]2、本专利技术软件无线电系统中任意倍数采样率转换的方法,可以以很低的复杂度实现一种采样率到另外任意一种采样率的转换,从而满足软件无线电系统中实时处理的要求。
附图说明
[0019]图1为本专利技术软件无线电系统中任意倍数采样率转换的方法流程图;
[0020]图2是本专利技术实施例中矩形窗截短与Blackman窗截短时的滤波器系数对比;
[0021]图3是本专利技术实施例中降采样前后信号波形和频谱;
[0022]图4是本专利技术实施例中升采样前后信号波形和频谱;
[0023]图5是本专利技术实施例中减少滤波器截短点数后的重采样效果;
[0024]图6是本专利技术实施例中增加滤波器截短点数后的重采样效果;
[0025]图7是本专利技术实施例中对滤波器冲激响应加Blackman窗后的重采样效果;
[0026]图8是本专利技术实施例中无理数倍采样率转换效果。
具体实施例
[0027]下面结合附图对本专利技术做进一步详细说明。
[0028]对一个数字信号而言,要想从一种采样率f
s
转换得到另一种采样率f
s

,可以先把
数字信号经过采样率为f
s
的DA得到模拟信号,然后再经过采样率为f
s

的AD得到新的数字信号。但是这种操作因为需要硬件AD/DA(以及背后的时钟控制等)的参与,实现复杂度很高。所以一般在软件无线电系统中使用纯数字处理的方法进行采样率转换。
[0029]使用纯数字处理的方法进行采样率转换的思想也是先把一种采样率下的数字信号重构为模拟信号,然后再以另一种采样率对重构的模拟信号进行采样。但是把两步操作合并处理后会发现并不需要真的把数字信号变为模拟信号,而是可以将旧采样率下的数字信号通过一个时变系数的数字重构滤波器直接计算出新采样率下的数字信号。
[0030]假设旧采样率f
s
=1/T
s
下的离散时间数字信号为x[n],利用下面的冲激串信号x
s
(t)来恢复连续时间信号,
[0031][0032]式中,T
s
为旧采样周期;n为离散时间数字信号x[n]的索引,只取整数;t为连续时间;δ(
·
)为冲激函数。
[0033]重构滤波器为连续时本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件无线电系统中任意倍数采样率转换的方法,其特征在于:包括准备阶段与信号实时处理阶段;所述准备阶段包括:建立第一存储表,用于存储每个新采样时刻对应的重构滤波器的系数;建立第二存储表,用于存储重构滤波器输入数据对应的旧采样时刻;所述信号实时处理阶段:对旧采样率下的输入数据流,按周期T进行分段;对信号周期内每一个新采样时刻,根据两张存储表读取对应的重构滤波器系数和对应的旧采样时刻,读取旧采样率下的输入数据,计算新采样率下的输出数据;使用两张存储表,对所有分段进行上述处理。2.如权利要求1所述一种软件无线电系统中任意倍数采样率转换的方法,其特征在于:第一存储表的建立方法为:以T为周期对输入信号x[n]进行分段,旧采样率下共有P=T/T
s
个采样点,新采样率下共有P

=T/T
s

个采样点;针对每一个新采样时刻mT
s

,计算并存储2L+1个滤波器系数式中,m为新采样率数据的索引,m是取值为1,2,3,4

P

的整数;T
s
为旧采样周期;T
s

为新采样周期;r为采样率转换因子,n为信号x[n]的索引;w(
·
)表示窗函数,符号表示向下取整;L为人为根据计算...

【专利技术属性】
技术研发人员:田亚飞王宇新
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1