一种对称fir算法的并行化二维分割方法及其硬件结构的制作方法

文档序号:6640202阅读:274来源:国知局
一种对称fir算法的并行化二维分割方法及其硬件结构的制作方法
【专利摘要】本发明涉及一种对称FIR算法的并行化二维分割方法,包括设定对称FIR算法的参数:源向量点数,滤波系数长度;2)采用支持四路并行运算的乘法器、加法器通过对称FIR算法处理源数据;3)根据源数据长度,采用不同的算法完成DMA搬运阶段。有益效果为:解决了DMA搬运阶段基于并行化设计的数据细粒度分割、数据存放问题,以及向量长度过大而内存容量受限,需要作多次DMA搬入、处理、搬出,由此带来的源数据粗粒度分割问题。
【专利说明】-种对称FIR算法的并行化二维分割方法及其硬件结构

【技术领域】
[0001] 本发明涉及基于固定资源的硬件系统的对称FIR算法及其硬件实现,尤其涉及一 种对称FIR算法的并行化二维分割方法及其硬件架构。

【背景技术】
[0002] 数字信号处理技术广泛应用于多媒体、数据通信、雷达成像、地质探测、航空航天 等工程【技术领域】,近年来又成为人工智能、模式识别、神经网络等新兴学科的理论基础之 一,涉及范围非常广泛。而随着半导体工艺技术的不断提升,为大批量数据的实时处理提供 了可能。
[0003] 对称系数FIR滤波器,最为重要的数字信号处理方法,常用于相位失真要求较高 的场合。例如希尔伯特变化器,高保真音响系统。基于不同的应用需求W及侧重点,对称 FIR算法有不同的设计架构。设计方法上有基本的串、并行乘累加器,同时也可采用傅里叶 重建技术,麦克米兰方法等。


【发明内容】

[0004] 本发明目的在于克服W上现有技术之不足,提供一种对称FIR算法的并行化二维 分割方法,具体有W下技术方案实现: 所述对称FIR算法的并行化二维分割方法,包括 1) 对称FIR算法的参数设定为源向量点数;firjiumber,滤波系数长度;fir_orde;r ; 2) 采用支持四路并行运算的乘法器、加法器通过对称FIR算法处理源数据; 3) 若源数据长度较小,W至于现有的内存容量可W支持一次性完成所有处理时,按照 基于结果数量的平均划分或者基于运算量的平均划分,转入步骤4);若当需要处理的源数 据是个很大的向量,即给定参数fir_number较大,W致源数据无法一次性导入内存,将源 数据进行分割,转入步骤5); 4) 在DMA搬运阶段,依次把每一部分的数据写入到指定的bank中,把第一部分的源数 写入之前,需要预先写入fir_order-l个零,紧接着导入源数据,在最后一路源数据写入之 后,需写入fir_〇rde;r-l个零至相应bank,最终形成的r_numer+fi;r_orde;r-l)个结果; 5) 设定bank的容量为8K,W 30K为临界区间,当点数在30 (n-1) K?30nK之间时,共 需n次DMA数据搬运操作,得到fir_number+ fir_orde;r -1-30 (n-l)K个结果,其中n为 任意正整数。
[0005] 所述对称FIR算法的并行化二维分割方法的进一步设计在于,所述乘法器采用4 个单精度浮点复数乘法器,16个单精度浮点加法器。
[0006] 所述对称FIR算法的并行化二维分割方法的进一步设计在于,所述步骤4)中 第一路到第四路实际运算得到的结果数量分别对应的CTL代码分别为(fir_numer+fir_ order-1)>>2, ((fir_numer+fir_order-l)〉〉1) - ((fir_numer+fir_order-l)〉〉2), (fir_numer+fir_order-l)〉〉2 W 及(fir_numer+fir_order-l) - ((fir_numer+fir_ order-1)>>1)- ((fir_numer+fir_order-l)〉〉2)。
[0007] 所述对称FIR算法的并行化二维分割方法的进一步设计在于,所述步骤4)与步骤 5)中的DMA数据搬运操作中通过采用兵兵操作存取源数据及结果数据,源数据及结果数据 的存取仅使用了总内存容量的一半。
[0008] 如上述对称FIR算法的并行化二维分割方法提供一种硬件结构,包括两路数据存 储单元与四路乘累加器,所述两路数据存储单元分别与所述累加器通信连接,所述每路存 储单元分别包括源操作数存储模块与结果存储模块,所述源操作数存储模块包括八个地址 连续的源操作数存储块与一个系数存储块;所述结果存储模块包括四个地址连续的结果数 存储块。
[0009] 所述的硬件结构的进一步设计在于,每个存储块的深度为8化。
[0010] 所述的硬件结构的进一步设计在于,所述乘累加器包括一级乘法器、第一级加法 器输入选择单元、第一级加法器、第一级加法器结果寄存单元、第二级加法器输入选择单 元、第二加法器W及第二级加法器结果寄存单元,所述一级乘法器、第一级加法器输入选择 单元、第一级加法器、第一级加法器结果寄存单元、第二级加法器输入选择单元、第二加法 器W及第二级加法器结果寄存单元依次通信连接。
[0011] 所述的硬件结构的进一步设计在于,所述第一级加法器输入选择单元为第一多路 选择器,所述第二级加法器输入选择单元由第二多路选择器与第H多路选择器并接组成, 所述第一级加法器结果寄存单元由第一寄存区间与第二寄存区间串接组成,每个寄存区间 又由两个寄存器串接组成,所述第二级加法器结果寄存单元为一个寄存器,所述两个个寄 存区间的输入端、输出端分别连接所述第H多路选择器,所述第一多路选择器的一输入端 与第一寄存区间的输入端连接,所述第H多路选择器的的一输入端与第二级加法器结果寄 存单元连接。
[0012] 所述的硬件结构的进一步设计在于,所述乘累加器设有H个输入端分别为第一源 操作数输入端、第二源操作数输入端W及系数输入端,所述乘累加器分别通过第一源操作 数输入端、第二源操作数输入端与源操作数存储块通信连接,通过所述系数输入端与系数 存储块通信连接。
[0013] 本发明的优点如下: 本发明基于运算资源、存储资源固定的硬件系统,充分研究对称FIR算法的乘累加结 构特点,给出对称FIR算法的并行化"二维分割"方法,实现了硬件并行化及对任意向量点 数的覆盖。该方法解决了 DMA搬运阶段基于并行化设计的数据细粒度分割、数据存放问题, W及向量长度过大而内存容量受限,需要作多次DMA搬入、处理、搬出,由此带来的源数据 粗粒度分割问题。

【专利附图】

【附图说明】
[0014] 图1是对称FIR算法补零及滑窗不意图。
[0015] 图2是对称FIR算法并行设计划分图示。
[0016] 图3是对称FIR算法乘累加器内部结构示意图。
[0017] 图4是对称FIR算法硬件顶层模块互联示意图。

【具体实施方式】
[0018] 下面结合附图对本发明方案进行详细说明。
[0019] 对称系数FIR滤波器,最为重要的数字信号处理方法,常用于相位失真要求较高 的场合。例如希尔伯特变化器,高保真音响系统。基于不同的应用需求W及侧重点,对称 FIR算法有不同的设计架构。设计方法上有基本的串、并行乘累加器,同时也可采用傅里叶 重建技术,麦克米兰方法等。
[0020] 对于N阶数字FIR滤波器,滤波器系数为,其中,。对于信号,FIR滤波器输出为:

【权利要求】
1. 一种对称FIR算法的并行化二维分割方法,其特征在于包括 1) 对称FIR算法的参数设定为源向量点数:fir_number,滤波系数长度:fir_order ; 2) 采用支持四路并行运算的乘法器、加法器通过对称FIR算法处理源数据; 3) 若源数据长度较小,以至于现有的内存容量可以支持一次性完成所有处理时,按照 基于结果数量的平均划分或者基于运算量的平均划分,转入步骤4);若当需要处理的源数 据是个很大的向量,即给定参数fir_nUmber较大,以致源数据无法一次性导入内存,将源 数据进行分割,转入步骤5); 4) 在DMA搬运阶段,依次把每一部分的数据写入到指定的bank中,把第一部分的源数 写入之前,需要预先写入fir_〇rder-l个零,紧接着导入源数据,在最后一路源数据写入之 后,需写入fir_order_l个零至相应bank,最终形成(fir_numer+fir_order-l)个结果; 5) 设定bank的容量为8K,以30K为临界区间,当点数在30 (n-1) K~30nK之间时,共 需n次DMA数据搬运操作,得到fir_number+ fir_order -1-30 (n-l)K个结果,其中n为 任意正整数。
2. 根据权利要求1所述的对称FIR算法的并行化二维分割方法,其特征在于所述乘法 器采用4个单精度浮点复数乘法器,16个单精度浮点加法器。
3. 根据权利要求1所述的对称FIR算法的并行化二维分割方法,其特征在于所述 步骤4)中第一路到第四路实际运算得到的结果数量分别对应的RTL代码分别为(fir_ numer+fir_order-l) >>2, ((f ir_numer+f ir_order-l) >>1) - ((f ir_numer+f ir_ order-1) >>2), (fir_numer+fir_order_l) >>2 以及(fir_numer+fir_order_l) - ((fir_ numer+fir_order-l)>>1)- ((fir_numer+fir_order_l)>>2)〇
4. 根据权利要求1所述的对称FIR算法的并行化二维分割方法,其特征在于所述步骤 4)与步骤5)中的DMA数据搬运操作中通过采用乒乓操作存取源数据及结果数据,源数据及 结果数据的存取仅使用了总内存容量的一半。
5. 根据权利要求1-4所述的对称FIR算法的并行化二维分割方法提供一种硬件结构, 其特征在于包括两路数据存储单元与四路乘累加器,所述两路数据存储单元分别与所述累 加器通信连接,所述每路存储单元分别包括源操作数存储模块与结果存储模块,所述源操 作数存储模块包括八个地址连续的源操作数存储块与一个系数存储块;所述结果存储模块 包括四个地址连续的结果数存储块。
6. 根据权利要求5所述的硬件结构,其特征在于,每个存储块的深度为8kb。
7. 根据权利要求5所述的硬件结构,其特征在于所述乘累加器包括一级乘法器、第一 级加法器输入选择单元、第一级加法器、第一级加法器结果寄存单元、第二级加法器输入选 择单元、第二加法器以及第二级加法器结果寄存单元,所述一级乘法器、第一级加法器输入 选择单元、第一级加法器、第一级加法器结果寄存单元、第二级加法器输入选择单元、第二 加法器以及第二级加法器结果寄存单元依次通信连接。
8. 根据权利要求7所述的硬件结构,其特征在于所述第一级加法器输入选择单元为第 一多路选择器,所述第二级加法器输入选择单元由第二多路选择器与第三多路选择器并接 组成,所述第一级加法器结果寄存单元由第一寄存区间与第二寄存区间串接组成,每个寄 存区间又由两个寄存器串接组成,所述第二级加法器结果寄存单元为一个寄存器,所述两 个个寄存区间的输入端、输出端分别连接所述第三多路选择器,所述第一多路选择器的一 输入端与第一寄存区间的输入端连接,所述第三多路选择器的的一输入端与第二级加法器 结果寄存单元连接。
9.根据权利要求7所述的硬件结构,其特征在于所述乘累加器设有三个输入端分别为 第一源操作数输入端、第二源操作数输入端以及系数输入端,所述乘累加器分别通过第一 源操作数输入端、第二源操作数输入端与源操作数存储块通信连接,通过所述系数输入端 与系数存储块通信连接。
【文档编号】G06F17/50GK104504205SQ201410827960
【公开日】2015年4月8日 申请日期:2014年12月29日 优先权日:2014年12月29日
【发明者】潘红兵, 李丽, 黄炎, 陈铠, 周海斌, 何书专, 李伟, 沙金 申请人:南京大学, 中国电子科技集团公司第十四研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1