一种基于FPGA的多采样率通道同步系统及方法与流程

文档序号:32897311发布日期:2023-01-13 00:44阅读:36来源:国知局
一种基于FPGA的多采样率通道同步系统及方法与流程
一种基于fpga的多采样率通道同步系统及方法
技术领域
1.本发明涉及软件无线电技术领域,尤其涉及一种基于fpga的多采样率通道同步系统及方法。


背景技术:

2.软件无线电是具有可重配置硬件平台的无线设备,可以跨越多种通信标准。因为具有更低的成本、更大的灵活性和更高的性能,软件无线电已迅速成为军事、公共安全和商用无线领域的事实标准。软件无线电的信号处理通常需要fpga,而fpga实现大量计算量的信号处理数据通道和控制,让系统延迟最小。当需要从一种标准切换至另一种标准时,fpga的可重配置的能力也可以根据需要完全重新配置,实现特定标准的数据通道。
3.多速率信号处理是软件无线电实现信号处理数字化的关键。提高采样速率可提高采样量化的信噪比,但采样后的数据流速率很高导致后续的信号处理速度跟不上。特别是对有些同步解调算法,其计算量很大,数据吞吐率太高很难满足实时性要求。所以很有必要对da芯片后的数据流进行降速处理。多速率信号处理技术为这种降速处理的实现提供了理论依据。而在进行多速率信号处理中就涉及到了一个同步的问题:不同采样率的信号之间的同步。
4.一般情况下,多速率信号之间是完全独立互不影响的。而这样会由于采样率的不同、调制方式的不同、处理器处理延迟的不同、路径延迟的不同导致不同信号之间延迟差异明显。而对于这种情况,目前是通过预估一个最大延迟将其余的信号先出的数据丢掉,最后和最大延迟的信号一起输出。但这样做随之而来的有两个问题:1.丢数据带来失真;2.最大延迟是预估的,而每次调整采样率、调制方式都会带来延迟的变化,因此延迟需要按照最大来预留,这又会导致数据更大的失真。因此亟需一种既能保证零延迟又能保证零失真的方法。


技术实现要素:

5.鉴于上述的分析,本发明实施例旨在提供一种基于fpga的多采样通道同步系统及方法,用以解决现有无需消耗额外的硬件资源即可达到输出零失真零延迟到目的问题。
6.一方面,本发明实施例提供了一种基于fpga的多采样率通道同步系统包括:上位机、dsp、fpga、da芯片;
7.上位机,用于通过人机交互界面获取用户输入的目标参数信息和基带信号信息并下发待同步的至少两路基带信号;
8.dsp,用于基于所述基带信号信息对至少两路所述基带信号进行调制得到调制信号,并基于所述fpga反馈的延迟时间信号对至少两路基带信号进行相应的延迟形成至少两路初始同步信号;
9.fpga,用于根据所述调制信号得到至少两路所述基带信号之间的延迟时间信号;以及基于所述目标参数信息对至少两路所述初始同步信号进行调整,得到至少两路目标同
步信号并进行信号合成;
10.da芯片,用于将合成后得到的信号转换为模拟信号后输出。
11.在上述方案的基础上,本发明实施例还做了如下改进:
12.可选地,所述基带信号信息包括基带信号的调制方式信息;
13.所述dsp执行下述流程,用于基于所述基带信号信息对至少两路所述基带信号进行调制得到调制信号:
14.分别从至少两路所述基带信号中任取一小段得到微秒级信号;
15.基于所述调制方式信息对相应任取一小段得到的微秒级信号进行调制得到所述调制信号。
16.可选地,所述fpga执行下述流程,用于基于所述调制信号得到至少两路所述基带信号之间的延迟时间信号,具体包括:
17.fpga在接收到第1路信号的第1个点开始计时,在接收到第2路信号的第1个点时停止计时,并将结果进行锁存,得到第1路和第2路的时间差t2,1;
18.在收到第i-1路信号的第1个点开始计时,在接收到第i路信号的第1个点时停止计时,得到第i路和第i-1路的时间差;其中,i取2到n,n为基带信号的数量;
19.基于所述时间差,利用公式计算第路信号的延迟时间;
20.其中,第1、2、
……
、i、
……
、n路信号根据fpga接收到调制信号第1个点的时间先后排序得到。
21.可选地,所述dsp执行下述流程,用于基于所述fpga反馈的延迟时间信号对至少两路基带信号进行相应的延迟形成至少两路初始同步信号,具体包括:
22.dsp根据第1路信号对应的基带信号直接生成第1路初始同步信号;
23.基于第i路信号的延迟时间对第i路信号对应的基带信号进行相应时间的延迟,得到第i路初始同步信号。
24.可选地,所述目标参数信息包括:目标采样率;所述目标采样率与所述da芯片的固定采样率一致;
25.所述fpga执行下述流程,用于基于所述目标参数信息对至少两路所述初始同步信号进行调整:
26.根据所述调制信号的初始采样率和所述目标采样率,得到插值倍数;
27.利用所述插值倍数对所述初始同步信号进行插值滤波。
28.可选地,插值倍数=目标采样率
÷
初始采样率。
29.可选地,所述目标参数信息还包括目标幅度和目标频率;
30.所述fpga执行下述流程,用于基于所述目标参数信息对至少两路所述初始同步信号进行调整:
31.基于所述目标幅度和所述目标频率分别对插值滤波后的各路信号进行频移和调幅,得到至少两路所述目标同步信号,并将得到的目标同步信号进行合成。
32.另一方面,本发明实施例还提供了一种基于fpga的多采样率通道同步方法,具体包括:
33.s1:检查电路正常运行情况以及fpga芯片的运行状况,并通过上位机获取目标参数信息和基带信号信息,通过上位机下发待同步的至少两路基带信号和上述信息至dsp;
34.s2:dsp对至少两路基带信号进行调制得到各路调制信号;并将各路调制信号以及接收到的目标参数信息下发给fpga;
35.s3:fpga基于上述各路调制信号进行差值计算得到延迟时间;
36.s4:dsp基于上述各路延迟时间和至少两路基带信号生成初始同步信号;
37.s5:fpga基于目标参数信息对初始同步信号进行调整得到目标同步信号,并将目标同步信号合成一路;
38.s6:da芯片输出信号。
39.可选地,所述fpga执行下述流程,用于基于所述调制信号得到至少两路所述基带信号之间的延迟时间信号,具体包括:
40.fpga在接收到第1路信号的第1个点开始计时,在接收到第2路信号的第1个点时停止计时,并将结果进行锁存,得到第1路和第2路的时间差t2,1;
41.在收到第i-1路信号的第1个点开始计时,在接收到第i路信号的第1个点时停止计时,得到第i路和第i-1路的时间差;其中,i取2到n,n为基带信号的数量;
42.基于所述时间差,利用公式计算第路信号的延迟时间;
43.其中,第1、2、
……
、i、
……
、n路信号根据fpga接收到调制信号第1个点的时间先后排序得到。
44.可选地,所述目标参数信息包括目标采样率;所述s5中基于所述目标参数信息对初始同步信号进行调整,包括:
45.根据所述调制信号的初始采样率和所述目标采样率,得到插值倍数;
46.利用所述插值倍数对所述初始同步信号进行插值滤波;
47.其中,插值倍数=目标采样率
÷
初始采样率。
48.与现有技术相比,本发明至少可实现如下有益效果之一:
49.1、仅通过fpga就可以实现差值计算和插值滤波,不需要消耗处理器的计算资源也不需要消耗额外的硬件资源。
50.2、通过对选取的至少两路基带信号中的一小段信号(微秒级)进行调制等信息处理,各路调制信号较短,能够保证fpga在较短的时间内计算得到延迟时间信号,节省了计算时间和计算资源,进而达到了输出零失真零延迟到目的。
51.3、通过接收各路调制信号第一个点的时间差计算得到延迟,计算方式简单,效率较高。
52.本发明中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过说明书以及附图中所特别指出的内容中来实现和获得。
附图说明
53.附图仅用于示出具体实施例的目的,而并不认为是对本发明的限制,在整个附图中,相同的参考符号表示相同的部件。
54.图1为现有技术系统结构图;
55.图2为现有技术信号处理流程图;
56.图3为本发明一个实施例的基于fpga的多采样率通道同步系统的结构示意图。
具体实施方式
57.下面结合附图来具体描述本发明的优选实施例,其中,附图构成本技术一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
58.如图1-2所示,现有技术中系统结构图和现有技术中信号处理流程图。
59.本发明的一个具体实施例,公开了一种基于fpga的多采样率通道同步系统,如图3所示。具体包括:上位机、数字信号处理器、fpga、da芯片。其中,
60.上位机,通过人机交互界面获取用户输入的目标参数信息和基带信号信息并下发待同步的至少两路基带信号至dsp。具体地,用户输入的目标参数信息包括目标采样率、目标幅度和目标频率;基带信号信息包括基带信号对应的调制方式。目标采样率与da芯片的固定采样率一致。目标幅度指信号同步后的幅度,目标频率指信号同步后的频率;基带信号对应的调制方式可以有很多种,例如调幅、调相、调频,任何一种调制方式均可适用。上述至少两路基带信号的初始采样率一般小于100m,对于dsp,这个采样率越低越好,因为采样率越高,dsp调制就越慢,需要消耗的资源就越多;一般所需的目标采样率较高,此处初始采样率远小于目标采样率,初始采样率为基带信号的采样率。
61.dsp(数字信号处理器,digital singnal processor),用于根据上位机下发的基带信号和调制方式对每路基带信号中的一小段信号进行相应的调制,得到调制后的各路信号即各路调制信号。
62.具体地,对于下发的待同步的至少两路的基带信号来说,只需要选取各路信号中的一小段基带信号(微秒级)进行调制即可,因为dsp处理全部信号需要很长时间,进而选取一小段基带信号就足够。
63.dsp还用于下发各路调制信号、目标采样率、目标幅度和目标频率至fpga;下发各路调制信号用于fpga计算得到延迟时间信号;各路调制信号较短,能够保证fpga在较短的时间内计算得到延迟时间信号,节省了计算时间和计算资源。
64.dsp以及用于在接收到fpga反馈的延迟时间信号后,基于至少两路基带信号生成初始同步信号下发给fpga。其中,延迟时间信号是由fpga基于接收到的各路信号的时间差计算得到。
65.fpga,用于根据接收到的各路调制信号的时间差进行差值计算,得到延迟时间信号反馈给dsp。
66.具体地,fpga在进行差值计算时,需要知道fpga系统时钟的频率t
max
为系统时钟的周期;同时还需要知道各路信号之间的时间差,然后利用公式ti=t
i,i-1
×fmax
计算得到延迟时间;其中,ti指第i路信号的延迟时间,t
i,i-1
为第i路和第i-1路信号之间的时间差,i从2取到n,n为基带信号的总数;第i路和第i-1路信号之间的时间差的计算方式为:fpga接收到任何一路信号的第1个点开始计时,并将该第1个点对应的信号作为第1路信号;收到第2路信号的第1个点时将计数器停止,并将结果进行锁存,此为第1路和第2路的时间差,以此类推,有n路信号就有n-1个信号时间差。
67.将延迟时间信号反馈给dsp,dsp直接生成第1路信号,因为新生成的信号均以第1
路信号为基础,因此第1路信号不具有延迟,即新生成的第1路信号为原始基带信号。
68.第2路开始具有时间延迟,根据第2路和第1路之间的时间差以及系统时钟的频率生成第2至第n路信号,计算方式为:ti=t
i,i-1
×fmax
,基于此依次生成第3路-第5路延迟信号,此时,生成的n路信号之间是同步的,即为上述的初始同步信号。
69.fpga,还用于接收dsp下发的目标采样率、目标幅度、目标频率以及初始同步信号,对所述初始同步信号进行调整,得到目标同步信号。此时目标同步信号的采样率、幅度、频率均与用户输入的目标采样率、目标幅度、目标频率一致。
70.具体的,由于初始采样率与目标采样率相差很多,因此要对上述初始同步信号进行插值滤波计算,插值倍数根据下式计算得到:
71.值得注意的是:因为最终目标采样率是固定的,所以目标采样率多少决定了da芯片的选取。
72.得到插值后的n路同步信号后,再根据目标幅度和目标频率对上述信号进行微调,通过微调得到幅度和频率满足用户初始要求的n路目标同步信号。然后将n路目标同步信号进行合成,合成一路信号传输给da芯片,合成的原因在于da芯片只有一个输入和输出,最后da芯片用于将信号转化为模拟信号并输出。
73.具体来说,若目标采样率为3ghz,则选取采样率为3ghz的da芯片,若dsp调制后的低采样率信号为10m采样率,则需要进行300倍的插值滤波。fpga将插值之后的n路同步信号根据目标频率和目标幅度进行移频和调幅,将移频和调幅后的n路目标同步信号合成一路信号输出给da芯片,da芯片将信号转化为模拟信号并输出。
74.示例性地,以5路信号为例,fpga在接收到dsp调制后的5路信号后开始进行计数,具体地,收到这5路信号的第1路(5路信号中的任一路先到达均可)第一个点后开始计数,当收到第2路信号的第一个点时将计数器的结果a锁存,当收到第3路信号的第一个点时将计数器的结果b锁存,以此类推,5路信号可以得到a、b、c、d四个计数器结果,即5路信号得到4个时间间隔。
75.在得到了四个计数器结果后,对5路信号进行延迟计算,具体地,假设fpga系统时钟为100mhz,那么计数器一个点就代表10ns。也就得到了5路信号之间延迟的时间差:第一路和第二路信号时间相差ax10ns;第二路和第三路信号时间相差(b-a)x10ns;第三路和第四路相差(c-b)x10ns;第四路和第五路相差(d-c)x10ns。
76.反馈延迟信号是将经过fpga计算后得到的延迟信号反馈给dsp。dsp接收到fpga反馈回来的延迟信号后立即生成第1路信号,再根据第1路信号和第2路信号时间差ax10ns生成新的第2路信号,同理延迟(b-a)x10ns生成新的第3路信号,延迟(c-b)x10ns生成新的第4路信号,延迟(d-c)x10ns生成新的第5路信号。
77.生成5路初始同步信号后在根据上位机下发的频率以及幅度值进行调整,在将调整过频率和幅度后的5路目标同步信号合成一路信号,并输出给da芯片。
78.在通过da芯片后将5路目标同步信号由数字信号转化为模拟信号最后进行输出。
79.本发明的另一个实施例,公开了一种基于fpga的多采样率通道同步方法,具体包括:
80.s1:检查电路正常运行情况以及fpga芯片的运行状况,并通过上位机获取目标参数信息和基带信号信息,通过上位机下发待同步的至少两路基带信号和上述信息至dsp。
81.上位机通过人机交互界面获取用户输入的目标参数信息和基带信号信息并下发待同步的至少两路基带信号至dsp。具体地,用户输入的目标参数信息包括目标采样率、目标幅度和目标频率;基带信号信息包括基带信号对应的调制方式。目标采样率与da芯片的固定采样率一致。目标幅度指信号同步后的幅度,目标频率指信号同步后的频率;基带信号对应的调制方式可以有很多种,例如调幅、调相、调频,任何一种调制方式均可适用。上述至少两路基带信号的初始采样率一般小于100m,对于dsp,这个采样率越低越好,因为采样率越高,dsp调制就越慢,需要消耗的资源就越多;一般所需的目标采样率较高,此处初始采样率远小于目标采样率,初始采样率为基带信号的采样率。
82.s2:dsp对至少两路基带信号进行调制得到各路调制信号;并将各路调制信号以及接收到的目标参数信息下发给fpga。
83.dsp根据上位机下发的基带信号和调制方式对每路基带信号中的一小段信号进行相应的调制,得到调制后的各路信号即各路调制信号。
84.具体地,对于下发的带同步的至少两路的基带信号来说,只需要选取各路信号中的一小段基带信号(微秒级)进行调制即可,因为dsp处理全部信号需要很长时间,进而选取一小段基带信号就足够。
85.dsp还用于下发各路调制信号、目标采样率、目标幅度和目标频率至fpga;
86.s3:fpga基于上述各路调制信号进行差值计算得到延迟时间。
87.fpga,用于根据接收到的各路调制信号的时间差进行差值计算,得到延迟时间信号反馈给dsp。
88.具体地,fpga在进行差值计算时,需要知道fpga系统时钟的频率t
max
为系统时钟的周期;同时还需要知道各路信号之间的时间差,ti=t
i,i-1
×fmax
其中,ti指第i路信号的延迟时间,t
i,i-1
为第i路和第i-1路信号之间的时间差,i从2取到n,n为基带信号的总数;第i路和第i-1路信号之间的时间差的计算方式为:fpga接收到任何一路信号第1个点为开始计时,收到第2路信号的第1个点时将计数器停止,并将结果进行锁存,此为第1路和第2路的时间差,以此类推,有n路信号就有n-1个信号时间差。
89.s4:dsp基于上述各路延迟时间和至少两路基带信号生成初始同步信号。
90.dsp以及在接收到反馈的延迟时间信号后,基于至少两路基带信号生成初始同步信号下发给fpga。
91.将延迟时间信号反馈给dsp,dsp直接生成第1路信号,因为新生成的信号均以第1路信号为基础,因此第1路信号不具有延迟,即新生成的第1路信号为原始基带信号。
92.第2路开始具有时间延迟,根据第2路和第1路之间的时间差以及系统时钟的频率生成第2至第n路信号,计算方式为:ti=t
i,i-1
×fmax
,基于此依次生成第3路-第5路延迟信号,此时,生成的n路信号之间同步,为初始同步信号。
93.s5:fpga基于目标参数信息对初始同步信号进行插值滤波并调整得到目标同步信号,并将目标同步信号合成为一路。上述调整包括根据目标采样率、目标频率和目标幅度进行的插值滤波、频移和调幅。
94.fpga得到dsp下发的初始同步信号,但由于初始采样率与目标采样率相差很多,因此要对上述初始同步信号进行插值滤波计算,插值倍数根据下式计算得到:
95.插值倍数=da芯片的固定采样率
÷
初始采样率
96.值得注意的是:因为最终目标采样率是固定的,所以目标采样率多少决定了da芯片的选取。
97.得到插值后的n路同步信号后,再根据目标幅度和目标频率对上述信号进行微调,通过微调得到幅度和频率满足用户初始要求的n路目标同步信号。
98.由于da芯片只有一个输入和输出,因此,将微调后的n路目标同步信号进行合成,合成一路信号后再传输给da芯片,
99.s6:da芯片输出信号。
100.最后da芯片用于将信号转化为模拟信号并输出。
101.上述实施例中,dsp预先调制得到微秒级的基带信号,即可计算得到各路延迟时间,这样就实现了不同采样率信号的自动对齐功能,节省了计算时间和计算资源,同时在基带信号初始同步后还能根据预设的目标采样率、目标频率和目标幅度进行自动调整。本发明仅仅需要在fpga初始化时消耗微秒级的时间根据不同信号计算出不同的延迟,这是完全可以忽略不计的。
102.其次,我们最终要达到的采样率是固定的,但是我们初始采样率是不固定的,所以根据实际应用过程中需求的不同,dsp会生成不同采样率的信号,在做差值滤波时要根据初始采样率进行相应倍数的插值。在插值过程中间插的具体的值,一般来说是插0,插值多少倍就插多少0,插值完后再过一个滤波器将镜像滤掉,就完成了最终采样率的变换。(插的值也可以插平均数等别的数,常规做法就是插0)。
103.与现有技术相比,因为同一个系统中不同速率的信号是有其不同的延迟的,如果不同步就会先后输出,导致系统输出的不同步,例如同时传几路话音、文本、图像信号等输出,本来是同步输入系统的,但是由于这几种信号用的不同的调制方式(am、fm、ask等等),导致输出不同步,进而本实施例提供的一种基于fpga的多采样率通道同步方法,在基于fpga进行多采样率信号处理中不同采样率信号情况下提供了一种信号间的同步方法,不需要丢数据,不需要消耗处理器计算资源也不需要消耗额外的硬件资源,完成了不同采样率之间的自动化同步方法,输出零失真零延迟,仅仅在初始化中增加了微秒级的额外时间。本方法消耗硬件资源少,实现简单,可移植性强。
104.为了得到不同采样频率的信号同步,本发明具体涉及基于fpga对多采样率信号中不同采样率信号同步输出的系统。在多采样率信号处理应用中,不同采样率信号的处理延迟是不同的,若不处理的话就会导致输出信号的延迟差异明显,处理的话就会产生失真或者带来大量的资源消耗。在本发明中,fpga自动计算出每种采样率信号的延迟并将该延迟反馈给处理器,而在调制方式改变了或者采样率改变了导致延迟变化了的情况下,本发明也能同样将改变后的延迟计算出来并反馈,而处理器根据fpga反馈的延迟可以简单的对不同信号做一个延迟就能达到输出各采样率信号之间零延迟并且零失真,同时也避免了使用大量的硬件资源。
105.本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
106.以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,
任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1