线性相位数字滤波器和实现该滤波器的滤波器系数的方法技术

技术编号:3665940 阅读:208 留言:0更新日期:2012-04-11 18:40
一种将用给定位数的CSD(规范带符号数字)码字表达的CSD滤波器系数用作延迟线的抽头上的滤波器系数的线性相位数字滤波器,包括:一个与数据输入端相连接的垂直公共子表达式发生器,用于在相邻滤波器系数的相应CSD码字具有多个垂直公共CSD码字时,将处在垂直公共CSD码字的最高级位中的垂直公共CSD码字设置为垂直公共子表达式;一个移位寄存器,包括多个移位器,每个移位器将所述垂直公共子表达式发生器的输出移动彼此不同的预定位数;多个加法器,每个加法器与所述移位器中的一个相连接;以及多个延迟器,每个延迟器可替换地与多个所述加法器的相应一个加法器的输出端相连接,用于将相应一个加法器的输出延迟一个单位时间。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术涉及数字滤波器,尤其涉及利用垂直公共子表达式的低功率CSD(规范带符号数字)线性相位FIR(有限脉冲响应)滤波器结构及其滤波器设计方法。
技术介绍
诸如蜂窝式电话之类的移动无线电通信系统需要利用CMOS技术的低功率和高速线性相位有限脉冲响应(FIR)滤波器。当前,这样的低功率和高速FIR滤波器是利用CSD型系数作为滤波器系数设计的。CSD型系数被表达为从2的补数型系数中减去1的二进制数字。诸如数字降频转换器(DFDC)之类的无线收发器的中频(IF)处理终端需要高速抽选滤波器。最好,高速/低功率滤波器只利用加法器(包括减法器)和延迟器件进行相乘运算。高速/低功率滤波器可以利用CSD型系数更有效地进行相乘运算。CSD型系数利用如下公式表达Σi=0N-1ai2-i]]>其中,当i>0时,如果a0=0或-1,和ai=0或1,那么,数字a0、a1、a2、......、aN-1是2的补数型系数。如果每个bi是0、+1或-1,和没有两个连续的bi是非零的,那么,数字b0、b1、b2、......、bN-1是CSD型系数。在技术上,CSD型系数通过从“1”中减去2的补数型系数来表达。例如,如果2的补数型系数是“01111”,那么,CSD型系数可以表达为“1-00001”。从现在开始,为了方便起见,将“-1”表达为“n”。也就是说,当“-1”被表达为“n”时,2的补数型系数“01111”被表达为CSD型系数“1000n”。这样,可以容易地将所有2的补数型系数转换为CSD型系数。由于与2的补数型系数相比,没有一个CSD型系数含有多于(N+1)/2个非零位,因此,利用加法器进行相乘的滤波器将CSD型系数用作滤波器系数时将要求加法器的个数减少。滤波器系数的相乘是利用加法器和移位器进行的。因为通过将移位器设计为硬连线逻辑电路,可以降低滤波器的成本,所以,最好减少加法器的个数以降低滤波器的成本。表1列出了表达为2的补数型数字和相应CSD型数字的4-位滤波器系数。如表1所示,2的补数型系数含有32个数字“1”,CSD型系数含有23个数字“1”。也就是说,CSD型系数含有比2的补数型系数少9个数字“1”的数字“1”的个数。表1.CSD码建立数字2的补数CSD型 表2示出了含有11个抽头的线性相位FIR滤波器的CSD型系数。当数字“1”或数字“n”的总数是m时,需要(m-1)个加法器来实现这些系数。在表2中,由于m=17,因此,需要16个加法器来实现这些系数。通过用公共子表达式方法设计线性相位FIR滤波器,可以减少加法器的个数。在表2中,系数h0、h1、h2、h3、h4的每一个与系数h10、h9、h8、h7、h6的每一个是对称的,致使线性相位FIR滤波器具有两个公共子表达式。表2.11-抽头线性相位FIR滤波器的CSD系数 在表2中,省略了数字“0”。FIR滤波器的输出信号(y)用如下公式y表达y=Σi=0N-1Σj=0M-1aij(xn-1>>j)=Σi=0N-1Σj=0M-1aijXij]]>其中,由于aij具有数字“1、0或-1”,因此,输出信号被表达为输入信号(x)的各种移位和延迟形式的和。每行Xij表示输入信号(x)的“延迟”,和每列Xij表示输入信号(x)的“移位”。第i行、第j列中的表目±1被表达为±x1>>j,和第1行(h0)和第1列(2^-1)由不带i和j的“x1”定义,并且被确定为参考点。这里,(2^-1)表示2的-1次方(即,2-1=0.5),和(2^-2)表示2的-2次方(即,2-2)。另一种可选的是,可以利用传统水平公共子表达式共享方法设计表2中的线性相位FIR滤波器,以减少加法器的个数。如表2所述,“n0n”、“n001”、和“n01”的公共子表达式的个数是2。可以将每个水平公共子表达式表达如下。x2=-x1-x1>>2第一公共子表达式x3=-x1+x1>>3第二公共子表达式x4=-x1+x1>>2第三公共子表达式其中,x2表示“n0n”的公共子表达式,x3表示“n001”的公共子表达式,以及x4表示“n01”的公共子表达式。符号“>>”表示输入信号(x)沿着最低级位(LSB)方向的“移位”。例如,如果公共子表达式是“n0n”和x1=1,那么,n0n当中的最高级位(MSB)是“-x1”,n0n当中的LSB是向右方向移动了2个位的-x1,于是“n0n”被表达为这些结果之和,即,“-x1-x1>>2”。因此,x2被定义为“n0n”的水平公共子表达式。与“n0n”的公共子表达式类似,“n001”的水平公共子表达式被定义为“x3”,即“-x1+x1>>3”。如公式所示,需要3个加法器来实现3个公共子表达式。利用水平公共子表达式共享方法的滤波器的输出信号(y)由如下方程式表达。y=x1>>8+x2>>6+x3>>3+x4>>1+x1>>1+x1+x1>>1+x4>>1+x3>>3+x2>>6+x1>>8其中,“x1>>8”表示表2中,第1行(h0)、第9列(2^-9)中的“1”。它的意思是将“x1=1”向右方向移动8个位。第1行(h0)、第9列(2^-9)中的数字“1”不利用水平公共子表达式实现。公式“x2>>6”的意思是将第一水平公共子表达式“x2”沿着垂直方向延迟一个时钟周期(即,1个抽头),并且向右方向移动6个位。例如,在表2中,如果将位于第1行(h0)与第1、2和3列(2^-1、2^-2、2^-3)的交叉点上的“n0n”表达为“x2”,那么,位于第2行与第7、8和9列(2^-7、2^-8、2^-9)的交叉点上的“n0n”就是被延迟和移位了的“x2”(沿着垂直方向延迟“1”,并且向右方向移动6个位)。在上面的公式中,由于需要10次相加才能获得输出信号(y),以及需要3次相加才能实现3个水平公共子表达式(n0n、n001、n01),因此,需要13个加法器才能实现表2中的滤波器。当利用转置直接格式(Transposed DirectForm)实现滤波器时,该滤波器具有图1所示的结构。参照图1,符号Ai(“i”是大于1的自然数)表示与抽头线T1到T6相连接的加法器,符号Di表示延迟器,x表示输入信号,和y表示输出信号。抽头线旁边的数字表示要移动的位数。例如,抽头线T1旁边的数字“9”表示将要滤波的数字输入信号(x)向LSB方向移动9个位。在图1的结构中应用移位寄存器响应时钟信号,通过移位输入信号来进行相乘运算。在其输入端上具有符号“-”的加法器Ai进行负相加,即相减。应该注意到,在本公开中使用的“加法器”术语包括进行正相加的相加功能,以及进行负相加的相减功能。再参照图1,由于移动了9个位的输入信号(x)被施加到抽头线T1上,因此,在抽头线T1上实现了表2中的系数h0。也就是说,利用移位寄存器实现了“x1>>8”。水平公共子表达式x2由移位寄存器和与抽头线T2相连接的加法器A1计算,每个寄存器移动输入信号(x)1个位和3个位。“x2>>6”由加法器A4来实现,其中加法器A4将与抽头线T2相连接的移位寄存器的输出(移动了6个位)和延迟器D1(将抽头线T1的输本文档来自技高网...

【技术保护点】
一种在线性相位数字滤波器中,实现滤波器系数的方法,其中,CSD(规范带符号数字)滤波器系数被用作滤波器系数,所述CSD滤波器系数用预定位数的CSD码字表达,该方法包括下列步骤:在相邻滤波器系数的相应CSD码字之间确定垂直公共CSD码字, 其中,处在最高级位中的垂直公共CSD码字被设置为垂直公共子表达式;通过移位和延迟所述垂直公共子表达式,用所述垂直公共子表达式表达每个滤波器系数的CSD码字当中的垂直公共CSD码字;以及合成所表达的滤波器系数的所述垂直公共CSD码字。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:张永钒梁世定
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:KR[韩国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利