[发明专利]基于信号分组采样与硬件加速器的低功耗FFT实现方法在审
申请号: | 202310149905.4 | 申请日: | 2023-02-16 |
公开(公告)号: | CN116166174A | 公开(公告)日: | 2023-05-26 |
发明(设计)人: | 邵春莉;杨双龙;顾亚磊;陈远;黄泽霞 | 申请(专利权)人: | 安徽大学 |
主分类号: | G06F3/05 | 分类号: | G06F3/05;H03M1/12;G06F17/14 |
代理公司: | 合肥金安专利事务所(普通合伙企业) 34114 | 代理人: | 彭超 |
地址: | 230601 安徽省*** | 国省代码: | 安徽;34 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 信号 分组 采样 硬件 加速器 功耗 fft 实现 方法 | ||
1.基于信号分组采样与硬件加速器的低功耗FFT实现方法,以集成低功耗数字信号处理加速器和多通道模数转换器的单片机为信号采样和处理核心,采用信号分组采样、硬件加速计算和软件合成技术实现多点数、低功耗FFT运算,以在提升低功耗嵌入式FFT运算性能的同时进一步降低系统功耗;以下,简称低功耗数字信号处理加速器为LEA,简称模数转换器为ADC;方法技术流程为硬件分组采样→FFT硬件加速计算→FFT结果软件合成,由单片机上集成的多通道ADC、LEA、CPU协同完成,其特征在于:
针对多点数FFT运算需求,先由单片机控制多通道ADC对信号进行硬件分组采样,即对信号进行多通道硬件分组等间隔连续循环顺序采样,通过硬件分组采样的方式自动实现将信号按照时间奇偶方式分成多组少点数采样序列;然后,将少点数采样序列逐组送入单片机上的LEA进行FFT硬件加速计算,得到各组少点数采样序列的FFT结果;最后,由单片机上的CPU通过软件程序计算方式对多组少点数采样序列的FFT结果进行软件合成,获得信号的多点数FFT结果。
2.如权利要求1所述的基于信号分组采样与硬件加速器的低功耗FFT实现方法,其特征在于:硬件分组采样,即为由单片机上的多通道ADC对接入到ADC的模拟通道上的信号x进行多通道硬件分组采样;分组数Q=N/M,N为要对信号x进行FFT运算的序列总长度,M为单片机中LEA支持的单次实数FFT运算的点数或单次复数FFT运算点数的两倍,N、Q、M均为2的整数次幂,Q≥1;分组数Q优选为使得M等于LEA支持的单次实数FFT运算点数和单次复数FFT运算点数两倍中的较大值,以减少分组数并降低FFT结果软件合成的运算量;依据不同单片机上多通道ADC工作原理的不同,在下述方案上二选一实现对信号的硬件分组采样:
硬件分组采样方案1:硬件上将要分析的模拟信号x接入到单片机的多通道ADC的Q个模拟输入通道上,由单片机控制多通道ADC对信号x接入的Q个模拟输入通道进行等间隔连续循环顺序采样,实现对信号x的硬件分组采样;
硬件分组采样方案2:硬件上将要分析的模拟信号x只接入到单片机的多通道ADC的1个模拟输入通道上,由单片机软件配置将其多通道ADC的Q个转换通道均选择绑定信号x接入的同一个模拟输入通道;单片机通过控制对多通道ADC的Q个转换通道进行等间隔连续循环顺序采样从而实现对信号x的硬件分组采样;此方案为优选方案,不额外占用ADC的模拟输入通道,且分组数Q配置灵活可变,对信号源的阻抗匹配要求较低,适用于支持此种工作方式的单片机;
上述等间隔连续循环顺序采样方式,即为对Q个通道的信号按照通道0→通道1→通道2→…→通道Q-1→通道0→通道1→通道2→…→通道Q-1→通道0→通道1→通道2→…的连续循环方式进行等间隔采样,通道间的采样间隔时间Ts即为模拟信号x的采样周期,fs=1/Ts即为模拟信号x的采样率;
基于上述分组采样方案,依次得到信号x的Q组长度均为M的实数采样序列x0(m)、x1(m)、x2(m)……xQ-1(m),m=0,1,2,3,…,M-1。
3.如权利要求1所述的基于信号分组采样与硬件加速器的低功耗FFT实现方法,其特征在于:FFT硬件加速计算,即为将信号x的Q组采样序列x0(m)、x1(m)、x2(m)……xQ-1(m)依次送入单片机上LEA进行FFT运算;若序列长度M等于LEA支持的单次实数FFT运算点数,则LEA优选实数FFT运算、也可选择复数FFT运算;若序列长度M超过LEA支持的单次实数FFT运算点数但等于LEA支持的单次复数FFT运算点数的两倍,则LEA选择复数FFT运算来计算实数FFT;根据LEA的FFT运算结果直接分别获取Q组采样序列x0(m)、x1(m)、x2(m)……xQ-1(m)的FFT结果X0(k)、X1(k)、X2(k)……XQ-1(k)的前一半,即k=0,1,2,3,…,M/2-1。
4.如权利要求1所述的基于信号分组采样与硬件加速器的低功耗FFT实现方法,其特征在于:FFT结果软件合成,即为在单片机的CPU中通过软件对Q组采样序列的FFT运算结果X0(k)、X1(k)、X2(k)……XQ-1(k)进行R级的逐级合成,R=log2Q,即Q=2R,得到信号x在采样率为fs情况下的N点序列的FFT结果X(k),k=0,1,2,3,…,N-1;合成步骤如下:
步骤一:针对每组采样序列的FFT结果Xq(k),计算
步骤二:令r=R;
步骤三:位倒序分组排序,令Xri(k)=Xq(k);i,q=0,1,2,…,Q-1,i与q符合二进制位倒序的关系,从而获得Xr0(k)、Xr1(k)、Xr2(k)……Xr(Q-1)(k),k=0,1,2,3,…,M/2;
步骤四:根据第r级各组序列的FFT结果合成计算第r-1级序列的FFT结果:
其中,i为第r-1级的序列分组序号,i=0,1,2,…,2r-1-1;L为第r级分组的每组序列长度,L=N/2r,r=R时,L=M;U=N/2r-1,符号“j”表示复数虚部,符号“*”表示共轭;
步骤五:令r=r-1,循环至步骤四;直至r=1,得出X00(k),k=0,1,2,3,…N/2;
步骤六:基于步骤五的合成结果X00(k)和实序列FFT结果的圆周共轭特性获取信号x在采样率为fs情况下的N点实数序列的FFT结果X(k):
在实数信号频谱分析中,则只需X(k)的前N/2点,无需根据上式计算X(k)的后一半点值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安徽大学,未经安徽大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310149905.4/1.html,转载请声明来源钻瓜专利网。