超声波瓶体厚度检测及其材料分类的研究,保障公共安全
2.重点模块实现算法介绍
2.1 位串分布处理算法(DA算法)简介
DA算法是distributed arithmetic算法的简称。中文译为分布式算法。小波滤波器的实现采用分布式算法实现。分布式算法作为一项数字信号处理算法,广泛应用于计算乘积和运算,与传统的乘积和结构相比,DA算法具有并行处理的高效性特点。若采用分布式算法实现小波滤波器,则它在FPGA中的工作速度只与输入数据的宽度B有关,与滤波器的阶数N无关,阶数只影响FPGA资源的使用量。
位串分布的分布式算法是先从最低位开始的,将所有输入数据的最低位组合在一起当作查表的地址,对查找表进行寻址,得到了一个查表后的结果,然后将查表结果与右移一位的寄存器值进行相加或相减运算,将运算的结果放到寄存器当中,然后输入数据的所有次低位开始对查找表寻址得到另一个查表后的结果,所得到的结果与右移一位的寄存器的结果即上一个存储在寄存器的结果相加,如此重复进行下去,直到将所有的位数都进行完运算。特别注意,对于有符号数,在最高位进行查表运算后得到的值应该与右移一位的寄存器的结果相减,并且负数是用补码的形式表达的。
位串分布乘法器的基本结构,如图5所示::
分成m段的L比特的位宽,将这m段分解后的数同时进行查表运算,这样可以提高数据的运算速度。其结构如图7所示:
图7 数据位分段FIR滤波器的示意图
若同时对DA算法的这两个方面进行改进,我们就提出了改进的DA算法,与此同时,我们提出了一种基于改进DA算法的64阶低通滤波器的实现方案。
评论