【技术实现步骤摘要】
本专利技术涉及数字信号处理的卷积和相关计算领域,尤其针对有限长度的循环卷积和相关的无乘法计算领域及其VLSI (超大规模集成电路)设计。
技术介绍
卷积运算和相关函数运算均是数字信号处理中最基本、常用的计算,由于它们的计算复杂度高,一定程度上影响了信号实时处理的性能。因此,如何在保持低功耗的同时提高其运算速度、减少硬件资源需求,在数字信号处理中具有十分重要的理论和实用价值。现有的高效算法和硬件结构大致可分为以下四类(I)基于快速傅里叶变换的计算方法由于傅里叶变换存在各种快速计算方法,而时域的卷积运算与其对应的频域乘积运算等价,因此可将待卷积的数据先进行快速傅里叶变换,再将变换后的两组数据对应相乘,最后进行反傅里叶变换,得到卷积结果。该方法借助于快速傅里叶变换(FFT)的计算优势,与直接进行卷积计算相比,大大提高了计算速度。缺点增加傅里叶变换环节后引入了三角函数和复数的计算,且经过正反两次傅里叶变换对数据产生的截断误差降低了最终结果的精确性;计算过程中仍存在大量乘法,复杂度较高;各种快速傅里叶变换算法对卷积长度有相应要求,缺乏通用性。(2)基于数论变换、多项式分解和矩阵分解的计算方法应用数论变换和多项式中国剩余定理,如短循环卷积算法,Agarwal-Cooley嵌套卷积算法和分裂嵌套循环卷积算法等,将两个长数列的卷积转化成若干较短数列的卷积,或将大的卷积矩阵分块并行计算,避免了三角函数和复数的引入,能较快地完成卷积计算。缺点这些计算过程中仍存在大量乘法操作;计算结构复杂;大部分结构只能针对数据长度能分解成特定值乘积的情况,缺乏通用性。(3)基于脉动阵列结构 ...
【技术保护点】
一种卷积器,包括第一寄存器cnt1、递减器cnt2、第二寄存器cnt3、两行累加器组acc[1],acc[2]以及M+1行寄存器组reg[0],reg[1],…,reg[M],M是卷积长度N用二进制表示的比特数目;每一行寄存器组由N个寄存器构成,每一行累加器组由N个累加器构成;reg[0]由输入序列{x(n)}赋值,n=0,1,2,…,N?1;第一寄存器cnt1由输入序列{q(n)}赋值,cnt1的每个比特位cnt1[m],m=0,1,…M?1经过m个周期的延时后分别控制第m行的寄存器组赋值即ROR{x(n)}m表示对序列{x(n)}右循环m个位置;经过M个时钟周期后,寄存器reg[M]的值为序列ROR{x(n)}q(n);递减器cnt2由输入序列{p(i)},i=0,1,2,…,2L?1赋值,L为数据位宽;当cnt2为0时,i=i?1,递减器cnt2被更新赋值即cnt2=p(i),否则,n=n?1,寄存器cnt1被更新赋值即cnt1=q(n);第二寄存器cnt3由递减器cnt2延时M个时钟周期后对其赋值,当cnt3不为0,则acc[1]=acc[1]+reg[M],当cnt3为0,则 ...
【技术特征摘要】
1.一种卷积器,包括第一寄存器cntl、递减器cnt2、第二寄存器cnt3、两行累加器组acc[l], acc[2]以及 M+1 行寄存器组 reg, reg[l], ···, reg[M], M 是卷积长度 N 用二进制表示的比特数目;每一行寄存器组由N个寄存器构成,每一行累加器组由N个累加器构成;reg由输入序列{χ (η)}赋值,η = 0,1,2, ···, N-1 ; 第一寄存器cntl由输入序列{q(n)}赋值,cntl的每个比特位cntl [m],m = O,1,…M-1经过m个周期的延时后分别控制第m行的寄存器组赋值即[reg[m -1-1] = ROR(reg[m))r, 匆\:^cnt\[m]=l一2.根据权利要求1所述的卷积器,其特征在于,包括多个卷积器和一个加法器组,其中该加法器组包含N个加法器;将卷积核{h(n)}中的数据二进制化后拆分为多个子卷积核,针对每一个子卷积核设置一个卷积器,...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。