CN109086225B - 基于pktdma的fftc输出去除直流载波和输出分段移位的数据处理方法 - Google Patents

基于pktdma的fftc输出去除直流载波和输出分段移位的数据处理方法 Download PDF

Info

Publication number
CN109086225B
CN109086225B CN201810814397.6A CN201810814397A CN109086225B CN 109086225 B CN109086225 B CN 109086225B CN 201810814397 A CN201810814397 A CN 201810814397A CN 109086225 B CN109086225 B CN 109086225B
Authority
CN
China
Prior art keywords
data
receiving
fftc
queue
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201810814397.6A
Other languages
English (en)
Other versions
CN109086225A (zh
Inventor
陈聪
刘玉珠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Huiruisitong Technology Co Ltd
Original Assignee
Guangzhou Huiruisitong Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangzhou Huiruisitong Information Technology Co Ltd filed Critical Guangzhou Huiruisitong Information Technology Co Ltd
Priority to CN201810814397.6A priority Critical patent/CN109086225B/zh
Publication of CN109086225A publication Critical patent/CN109086225A/zh
Application granted granted Critical
Publication of CN109086225B publication Critical patent/CN109086225B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches

Abstract

本发明提供一种基于PKTDMA的FFTC输出去除直流载波和输出分段移位的数据处理方法。通过申请两块接收数据内存,以及合理配置FFTC加速器中的接收PKTDMA子模块的描述符,能保证FFTC的输出数据不含直流载波和对输出分段移位,这样能把原本输出有效数据不连续的内存段,通过分段移位实现输出有效数据内存段的连续拼接,并去除输出中的直流载波,减少CPU对输出数据额外申请内存进行拼接操作带来的内存和执行时间的开销,进而提升系统的整体性能。

Description

基于PKTDMA的FFTC输出去除直流载波和输出分段移位的数据 处理方法
技术领域
本发明涉及通信技术领域,具体涉及一种基于PKTDMA的FFTC输出去除直流载波和输出分段移位的数据处理方法。
背景技术
随着计算机技术的发展,DFT(Discrete Fourier Transform,离散傅里叶变换)的出现使得傅里叶变换在工程中进入实际应用阶段。信号的相关、滤波、频谱估计等都可以通过DFT来实现,但实际系统实现时必须减少它的运算量,才能在工程计算中具有实用价值。所以FFT(Fast Fourier Transform,快速傅里叶变换)的出现提高了它的实用价值,使得FFT在移动通信各领域具有广泛的应用。而在通信领域,移动通信系统中普遍使用的DSP芯片都具备丰富的外设资源,FFT作为数字信号处理的关键技术,被各类DSP芯片集成到外部加速器中并作为DSP芯片内的外设资源使用,通过使用加速器,能减少CPU(CentralProcessUnit,中央处理单元)的计算处理时间,提升系统的并行处理能力。目前LTE在全球也得到大范围的商用,而处理LTE系统使用的DSP芯片大多数都集成了FFT加速器处理单元,如何配置好加速器并充分利用外设资源成了提升系统性能的一个重要设计因素。
在现有技术中,根据FFTC的硬件配置,FFTC加速器系统中集成了PKTDMA子模块,在初始化FFTC时需要先初始化PKTDMA,然后再进行FFTC的正常数据处理。FFTC加速器正常的处理数据流程如下:以LTE的20M带宽1200个子载波做2048点FFT为例。LTE通常会有一个直流载波在中间,直流载波的数值为0,导致有效数据组成格式如图2所示,输入有效数据被分为左边600个序列A,右边600个序列B。做完FFT输出后,数据格式如图3所示。直流载波最先输出,然后是序列B的600个值,再者就是插入的847个0序列,最后输出的是序列A的600个值。通常配置接收PKTDMA的接收描述符就是指定一片大小为2048个字的连续内存来存放输出数据,输出数据就按照FFT的输出格式存储。而实际CPU想处理输出的数据期望的内存存放如图4所示。故通常还需要重新分配一块1200个字大小的内存,先将序列A中的600个字内容搬移过去,然后再将序列B中的600个字内容搬移过去,这样就能对这片连续数据进行处理,如图5所示。但这种方法存在2个缺点,缺点1:需要再额外申请一块内存用于存储1200个字大小有效输出数据;缺点2:需要进行数据的搬移,而无论是通过CPU进行内存拷贝还是通过DMA搬移,都需要消耗系统时间和CPU资源或者DMA资源,影响系统的整体性能。
发明内容
针对现有技术中存在的技术问题,本发明的目的是:提供一种基于PKTDMA的FFTC输出去除直流载波和输出分段移位的数据处理方法,能保证FFTC的输出数据不含直流载波和对输出分段移位,这样能把原本输出有效数据不连续的内存段,通过分段移位实现输出有效数据内存段的连续拼接,并去除输出中的直流载波,减少CPU对输出数据额外申请内存进行拼接操作带来的内存和执行时间的开销,进而提升系统的整体性能。
为了达到上述目的,本发明至少采用如下技术方案:
一种基于PKTDMA的FFTC输出去除之列载波和输出分段移位的数据处理方法,其包括以下步骤:
多核Navigator初始化步骤;
收发队列初始化步骤;
FFTC加速器初始化步骤;
准备FFTC的输入数据以及提交FFTC加速器处理,以输出有效数据的步骤,其中接收数据内存为两块,分别命名为缓存1和缓存2。
进一步的,所述两块接收数据内存中,所述缓存1用于存储直流载波和无效的数据,所述缓存2用于存储有效的输出数据。
进一步的,所述准备FFTC的输入数据以及提交FFTC加速器处理,以输出有效数据的步骤中,包括以下步骤:准备FFTC输入数据的步骤;配置接收内存的步骤;配置发送数据,启动FFTC的步骤;以及等待完成处理输出数据的步骤。
进一步的,将所述缓存1的起始地址对应于接收队列的第1个接收描述符,并指定所述描述符的长度,用于接收直流子载波的数据。
进一步的,将所述缓存2中的起始地址偏600个字的地址对应于接收队列中的第2个描述符,并指定该描述符的长度,用于接收B序列,
进一步的,将缓存1偏1个字的地址对应于接收队列中的第3个描述符,并指定该描述符接收数据的长度,用于接收插入的无效数据,最后再将缓存2的地址挂接在第4个描述符上,并指定长度,用于接收A序列。
进一步的,所述收发队列初始化步骤包括:申请接收队列步骤;申请发送队列步骤。
进一步的,所述申请接收队列步骤具体为,根据系统需求绑定每个队列空闲描述符的个数,所述个数至少为4个。
进一步的,所述申请发送队列步骤具体为,根据系统需求绑定每个队列空闲描述符的个数,所述个数至少为1个。
进一步的,所述多核Navigator的初始化步骤具体包括,QMSS子系统的初始化步骤;收发PKTDMA的初始化步骤。
总的说来,本发明至少具有如下优点:
本发明提供的优化配置FFTC加速器的处理数据方法,通过合理配置FFTC加速器中的接收PKTDMA子模块的描述符,能保证FFTC的输出数据不含直流载波和对输出分段移位,从而保证输出的有效数据在内存中的连续性,避免后续处理频域数据时CPU的拼接处理时间以及额外内存消耗,进而提升系统的整体性能。
附图说明
图1是现有技术中1200个子载波加1个位于中心的直流子载波的输入数据格式示意图。
图2是现有技术中正常配置下FFTC输出的数据格式示意图。
图3是现有技术中FFT输出后实际CPU在处理这段数据需要的存放格式示意图。
图4是现有技术中FFTC处理后的搬移方式示意图。
图5是本发明Host描述符与输出缓存之间的映射关系图。
图6是本发明实施例的数据处理流程图。
具体实施方式
下面来对本发明做进一步详细的说明。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清晰、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提出了一种基于PKTDMA的FFTC输出去除直流载波和输出分段移位的数据处理方法,参见图5及图6,包括如下步骤:
步骤1:多核Navigator初始化步骤,其具体包括,
a.QMSS子系统的初始化,其包括对QMSS的RAM空间进行初始化、描述符内存初始化以及QMSS相关寄存器的初始化等;
b.完成QMSS子系统的初始化之后,完成收发PKTDMA的初始化,其主要完成收发PKTDMA使能,对应收发通道的映射。
步骤2:收发队列的初始化步骤,其具体包括,
a.申请接收队列步骤,其根据系统需求绑定每个队列空闲描述符的个数,做一次FFT提交需要4个接收描述符,所以初始化时最少需要申请4个描述符放入接收队列中;
b.申请发送队列步骤,其根据系统需求绑定每个队列空闲描述符的个数,这里做一次FFT提交需要1个发送描述符,所以初始化时最少需要申请1个描述符放入发送队列中。
步骤3:FFTC加速器初始化步骤,其具体包括,
配置FFTC接收指令集Flow,用于指示接收PKTDMA对接收到数据包后的处理,通过配置接收flow中的目的队列指向接收队列,接收PKTDMA将FFTC硬件引擎处理完的数据按照指定的地址和长度完成数据的搬移。
步骤4:准备FFTC的输入数据以及提交FFTC加速器处理,以输出有效数据的步骤,其具体包括,
a.准备FFTC输入数据步骤,具体的,申请两块接收数据内存,分别命名为缓存1和缓存2,在该实施例中,缓存1的大小为1201个字,缓存2的大小为848个字,缓存1用于存放直流载波和无效的数据,其中直流载波占用1个字,无效的数据占用847个字;缓存2用来存放有效的输出数据;
b.配置接收内存步骤,具体的,从接收队列中依次弹出4个Host描述符,第一个描述符初始化接收缓存地址为缓存1,长度为1个字;第二个描述符初始化接收缓存地址为缓存2加600个字偏移地址,第三个描述符初始化地址为缓存1加1个字偏移地址,长度为847个字;第四个描述符初始化接收缓存地址为缓存2,长度为600个字。然后依次将四个描述符压入至接收队列中,设置压入的方式为新压入的描述符放到队列的尾部,保证第一个描述符优先弹出;
c.配置发送数据,启动FFTC步骤,具体的,从发送队列中弹出1个Host描述符,将FFTC输入数据的地址和长度填入该描述符,然后压入到发送队列触发FFTC处理;
d.待FFTC完成处理后直接读取缓存2中的FFTC输出有效数据进行相关计算即可。
本实施例中申请了两块接收数据内存,充分利用了PKTDMA中接收Host描述符的特点,通过指定接收缓存的位置来实现FFTC输出去除直流载波和输出分段移位的功能,保证了接收数据的连续性,减少CPU拼接处理额外带来的系统开销和内存开销,提升了系统的整体性能,保障了通信系统的实时性。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (8)

1.一种基于PKTDMA的FFTC输出去除直流 载波和输出分段移位的数据处理方法,其包括以下步骤:
多核Navigator初始化步骤;
收发队列初始化步骤;
FFTC加速器初始化步骤;
准备FFTC的输入数据以及提交FFTC加速器处理,以输出有效数据的步骤,包括以下步骤:准备FFTC输入数据的步骤;配置接收数据内存的步骤;配置发送数据,启动FFTC的步骤;以及等待完成处理输出数据的步骤;在准备FFTC输入数据的步骤中,申请两块接收数据内存,分别命名为缓存1和缓存2,所述缓存1用于存储直流载波和无效的数据,所述缓存2用于存储有效的输出数据。
2.根据权利要求1所述的数据处理方法,其特征在于:将所述缓存1的起始地址对应于接收队列的第1个接收描述符,并指定所述描述符的长度,用于接收直流子载波的数据。
3.根据权利要求2所述的数据处理方法,其特征在于:将所述缓存2中的起始地址偏600个字的地址对应于接收队列中的第2个描述符,并指定该描述符的长度,用于接收B序列。
4.根据权利要求3所述的数据处理方法,其特征在于:将缓存1偏1个字的地址对应于接收队列中的第3个描述符,并指定该描述符接收数据的长度,用于接收插入的无效数据,最后再将缓存2的地址挂接在第4个描述符上,并指定长度,用于接收A序列。
5.根据权利要求1所述的数据处理方法,其特征在于:所述收发队列初始化步骤包括:申请接收队列步骤;申请发送队列步骤。
6.根据权利要求5所述的数据处理方法,其特征在于:所述申请接收队列步骤具体为,根据系统需求绑定每个队列空闲描述符的个数,所述个数至少为4个。
7.根据权利要求5所述的数据处理方法,其特征在于:所述申请发送队列步骤具体为,根据系统需求绑定每个队列空闲描述符的个数,所述个数至少为1个。
8.根据权利要求1所述的数据处理方法,其特征在于:所述多核Navigator的初始化步骤具体包括,QMSS子系统的初始化步骤;收发PKTDMA的初始化步骤。
CN201810814397.6A 2018-07-23 2018-07-23 基于pktdma的fftc输出去除直流载波和输出分段移位的数据处理方法 Active CN109086225B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810814397.6A CN109086225B (zh) 2018-07-23 2018-07-23 基于pktdma的fftc输出去除直流载波和输出分段移位的数据处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810814397.6A CN109086225B (zh) 2018-07-23 2018-07-23 基于pktdma的fftc输出去除直流载波和输出分段移位的数据处理方法

Publications (2)

Publication Number Publication Date
CN109086225A CN109086225A (zh) 2018-12-25
CN109086225B true CN109086225B (zh) 2021-06-04

Family

ID=64838096

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810814397.6A Active CN109086225B (zh) 2018-07-23 2018-07-23 基于pktdma的fftc输出去除直流载波和输出分段移位的数据处理方法

Country Status (1)

Country Link
CN (1) CN109086225B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101227449A (zh) * 2007-01-19 2008-07-23 西安西芯微电子有限公司 Cofdm信道解码器的设计方法
CN101510860A (zh) * 2009-03-24 2009-08-19 南京擎天科技有限公司 多载波系统中的均衡方法
CN107643986A (zh) * 2017-09-11 2018-01-30 广州慧睿思通信息科技有限公司 一种使用环形Buffer和自动回收描述符的AIF接收数据处理方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060259692A1 (en) * 2005-05-16 2006-11-16 Texas Instruments Incorporated Writing to a specified cache
CN101810021A (zh) * 2007-09-26 2010-08-18 松下电器产业株式会社 无线通信系统、无线基站装置、以及发送控制方法
CN101478525B (zh) * 2009-02-04 2011-03-30 北京天碁科技有限公司 一种多载波分离的方法及多载波分离装置
KR101811297B1 (ko) * 2011-03-15 2017-12-27 삼성전자주식회사 불휘발성 메모리를 제어하는 메모리 컨트롤러
US9300578B2 (en) * 2013-02-21 2016-03-29 Applied Micro Circuits Corporation Large receive offload functionality for a system on chip
CN108134657B (zh) * 2016-12-01 2020-05-05 维沃移动通信有限公司 一种同步信号的处理方法、网络设备及终端设备
CN107425865A (zh) * 2017-04-18 2017-12-01 中国电子科技集团公司第四十研究所 一种lte‑a终端信号的接收装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101227449A (zh) * 2007-01-19 2008-07-23 西安西芯微电子有限公司 Cofdm信道解码器的设计方法
CN101510860A (zh) * 2009-03-24 2009-08-19 南京擎天科技有限公司 多载波系统中的均衡方法
CN107643986A (zh) * 2017-09-11 2018-01-30 广州慧睿思通信息科技有限公司 一种使用环形Buffer和自动回收描述符的AIF接收数据处理方法

Also Published As

Publication number Publication date
CN109086225A (zh) 2018-12-25

Similar Documents

Publication Publication Date Title
CN113485822A (zh) 内存管理方法、系统、客户端、服务器及存储介质
CN114356223B (zh) 存储器的访问方法及装置、芯片、电子设备
CN115840620B (zh) 一种数据通路构建方法、设备及介质
CN112214313A (zh) 内存分配方法及相关设备
CN115357416A (zh) 一种跨系统进行数据处理的方法及装置
WO2022100578A1 (zh) 5g系统中ofdm变换方法及相关产品
US20130339648A1 (en) Method, apparatus, and computer program product for fast context switching of application specific processors
CN113590364B (zh) 一种基于分布式共享内存系统的数据处理方法和装置
EP3316543B1 (en) Device and method of enhancing item access bandwidth and atomic operation
CN109857553B (zh) 内存管理方法及装置
CN109086225B (zh) 基于pktdma的fftc输出去除直流载波和输出分段移位的数据处理方法
WO2022100584A1 (zh) 二次fft和ifft变换方法及相关产品
CN113328948B (zh) 资源管理方法、装置、网络设备及计算机可读存储介质
CN112153722B (zh) 频点处理方法、装置、相关设备及存储介质
CN111708715B (zh) 内存分配方法、内存分配装置及终端设备
WO2021073632A1 (zh) 物理随机接入信道的数据合并方法、装置及存储介质
CN114924794A (zh) 一种存储部件的发射队列的地址存储、调度方法和装置
CN115129709A (zh) 一种数据处理方法、服务端及系统
CN113422792A (zh) 数据传输方法、装置、电子设备及计算机存储介质
CN112817534B (zh) 提高ssd读写性能的方法、装置、计算机设备及存储介质
CN112269538B (zh) 一种数据读取方法、装置、设备及介质
CN109474543B (zh) 一种队列资源管理方法、装置及存储介质
CN112699069A (zh) 一种基于PCIe接口的高速数据传输方法及系统
CN115391027A (zh) 数据处理方法、装置、电子设备及存储介质
JP2002051087A (ja) 情報処理システム及びデータ受信方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 510000 no.2-8, North Street, Nancun Town, Panyu District, Guangzhou City, Guangdong Province

Patentee after: Guangzhou huiruisitong Technology Co.,Ltd.

Address before: 605, No.8, 2nd Street, Ping'an 2nd Road, Xianzhuang, lirendong village, Nancun Town, Panyu District, Guangzhou City, Guangdong Province 511442

Patentee before: GUANGZHOU HUIRUI SITONG INFORMATION TECHNOLOGY Co.,Ltd.

CP03 Change of name, title or address
PP01 Preservation of patent right

Effective date of registration: 20230207

Granted publication date: 20210604

PP01 Preservation of patent right
PD01 Discharge of preservation of patent

Date of cancellation: 20240402

Granted publication date: 20210604